chapter_id_filter: Optional[int] = None
kp_id_filter: Optional[int] = None
right_times_filter: Optional[str] = None
+ stage_ids_filter: Optional[str] = None # 逗号分隔 stage id 列表(科目概要面板跳转用)
mode: str = "table" # table | preview
sort_col: str = "q.id"
sort_desc: bool = False
sql += " AND q.latest_status = 'right'"
elif req.right_times_filter == '=0':
sql += " AND (q.latest_status != 'right' OR q.latest_status IS NULL)"
+ elif req.right_times_filter == 'rt>0':
+ sql += " AND q.right_times > 0"
+ elif req.right_times_filter == 'rt=0':
+ sql += " AND (q.right_times = 0 OR q.right_times IS NULL)"
+
+ if req.stage_ids_filter:
+ _sids = [x.strip() for x in str(req.stage_ids_filter).split(',') if x.strip().isdigit()]
+ if _sids:
+ sql += f" AND q.stage_id IN ({','.join(_sids)})"
v_sub = f.get("subject")
if v_sub and v_sub != "全部":
--- /dev/null
+import{b as A,d as $,c as a,a as e,w as p,v as E,F as C,r as h,m as f,g as o,h as B,A as U,u as I,o as u,t as l}from"./index-DrsYg5hi.js";import{_ as M}from"./_plugin-vue_export-helper-DlAUqK2U.js";const F={class:"page-header"},K={class:"filter-panel"},G={class:"row"},L=["value"],N={class:"row"},P={class:"content-area"},Q={class:"card",style:{padding:"0",overflow:"auto"}},R={class:"data-table"},z=["onClick"],H={class:"center"},J={class:"center"},O={class:"center"},T=["onClick"],W=["onClick"],X=["onClick"],Y=["onClick"],Z={__name:"AnalysisChapters",setup(tt){const g=I(),x=o([]),_=o("全部"),v=o(""),y=o(""),k=o(""),b=o([]),r=o("not_correct_questions"),i=o("DESC"),D=[{key:"id",label:"ID"},{key:"subject",label:"科目"},{key:"volume_name",label:"册"},{key:"chapter_desc",label:"章节"},{key:"total_wrong_questions",label:"错题数量"},{key:"correct_questions",label:"已正确题目数"},{key:"not_correct_questions",label:"尚未正确题目数"}];function V(n){return n!==r.value?"":i.value==="ASC"?" ▲":" ▼"}function j(n){r.value===n?i.value=i.value==="ASC"?"DESC":"ASC":(r.value=n,i.value="ASC"),c()}function q(){return{subject:_.value,correct_count:v.value,not_correct_count:y.value,chapter_desc:k.value,sort_column:r.value,sort_direction:i.value}}async function c(){const n=await B("/analysis/chapters",q());b.value=n.rows}function w(n){g.push({path:"/analysis/knowledge",query:{chapter_id:n}})}function m(n,s){const t={chapter_id:n};s&&(t.right_times=s),g.push({path:"/questions",query:t})}async function S(){b.value.length&&await U("/analysis/chapters/export-excel",q())}return A(async()=>{const n=await $("/meta/subjects");x.value=n.subjects,await c()}),(n,s)=>(u(),a("div",null,[e("div",F,[s[5]||(s[5]=e("span",{class:"title"},"章节分析",-1)),e("button",{class:"btn",style:{"margin-left":"16px"},onClick:s[0]||(s[0]=t=>n.$router.push("/subject-portal"))},"返回科目首页"),e("button",{class:"btn orange",onClick:S},"📥 导出Excel")]),e("div",K,[e("div",G,[s[7]||(s[7]=e("label",null,"科目:",-1)),p(e("select",{"onUpdate:modelValue":s[1]||(s[1]=t=>_.value=t),onChange:c},[s[6]||(s[6]=e("option",null,"全部",-1)),(u(!0),a(C,null,h(x.value,t=>(u(),a("option",{key:t,value:t},l(t),9,L))),128))],544),[[E,_.value]]),s[8]||(s[8]=e("label",{style:{"margin-left":"10px"}},"已正确题目数:",-1)),p(e("input",{type:"text","onUpdate:modelValue":s[2]||(s[2]=t=>v.value=t),style:{width:"70px"}},null,512),[[f,v.value]]),s[9]||(s[9]=e("label",{style:{"margin-left":"10px"}},"尚未正确题目数:",-1)),p(e("input",{type:"text","onUpdate:modelValue":s[3]||(s[3]=t=>y.value=t),style:{width:"70px"}},null,512),[[f,y.value]])]),e("div",N,[s[10]||(s[10]=e("label",null,"章节名称:",-1)),p(e("input",{type:"text","onUpdate:modelValue":s[4]||(s[4]=t=>k.value=t),style:{width:"340px"}},null,512),[[f,k.value]]),e("button",{class:"btn primary",style:{"margin-left":"auto"},onClick:c},"🔍 开始搜索")])]),e("div",P,[e("div",Q,[e("table",R,[e("thead",null,[e("tr",null,[(u(),a(C,null,h(D,t=>e("th",{key:t.key,onClick:d=>j(t.key)},l(t.label)+l(V(t.key)),9,z)),64))])]),e("tbody",null,[(u(!0),a(C,null,h(b.value,t=>(u(),a("tr",{key:t.chapter_id},[e("td",H,l(t.chapter_id),1),e("td",J,l(t.subject),1),e("td",O,l(t.volume_name),1),e("td",{class:"link",onClick:d=>w(t.chapter_id)},l(t.chapter_desc),9,T),e("td",{class:"center link",onClick:d=>m(t.chapter_id,null)},l(t.total_wrong_questions),9,W),e("td",{class:"center link",onClick:d=>m(t.chapter_id,">=1")},l(t.correct_questions),9,X),e("td",{class:"center link",onClick:d=>m(t.chapter_id,"=0")},l(t.not_correct_questions),9,Y)]))),128))])])])])]))}},nt=M(Z,[["__scopeId","data-v-ecc11515"]]);export{nt as default};
--- /dev/null
+import{b as $,d as A,c as a,a as e,w as p,v as B,F as h,r as m,l as f,g as o,h as E,z as U,B as I,o as u,t as l}from"./index-JKSCyc76.js";import{_ as M}from"./_plugin-vue_export-helper-DlAUqK2U.js";const F={class:"page-header"},K={class:"filter-panel"},z={class:"row"},G=["value"],L={class:"row"},N={class:"content-area"},P={class:"card",style:{padding:"0",overflow:"auto"}},Q={class:"data-table"},R=["onClick"],H={class:"center"},J={class:"center"},O={class:"center"},T=["onClick"],W=["onClick"],X=["onClick"],Y=["onClick"],Z={__name:"AnalysisChapters",setup(tt){const g=I(),x=o([]),_=o("全部"),v=o(""),y=o(""),k=o(""),b=o([]),r=o("not_correct_questions"),i=o("DESC"),D=[{key:"id",label:"ID"},{key:"subject",label:"科目"},{key:"volume_name",label:"册"},{key:"chapter_desc",label:"章节"},{key:"total_wrong_questions",label:"错题数量"},{key:"correct_questions",label:"已正确题目数"},{key:"not_correct_questions",label:"尚未正确题目数"}];function V(n){return n!==r.value?"":i.value==="ASC"?" ▲":" ▼"}function j(n){r.value===n?i.value=i.value==="ASC"?"DESC":"ASC":(r.value=n,i.value="ASC"),c()}function q(){return{subject:_.value,correct_count:v.value,not_correct_count:y.value,chapter_desc:k.value,sort_column:r.value,sort_direction:i.value}}async function c(){const n=await E("/analysis/chapters",q());b.value=n.rows}function w(n){g.push({path:"/analysis/knowledge",query:{chapter_id:n}})}function C(n,s){const t={chapter_id:n};s&&(t.right_times=s),g.push({path:"/questions",query:t})}async function S(){b.value.length&&await U("/analysis/chapters/export-excel",q())}return $(async()=>{const n=await A("/meta/subjects");x.value=n.subjects,await c()}),(n,s)=>(u(),a("div",null,[e("div",F,[s[5]||(s[5]=e("span",{class:"title"},"章节分析",-1)),e("button",{class:"btn",style:{"margin-left":"16px"},onClick:s[0]||(s[0]=t=>n.$router.push("/subject-portal"))},"返回科目首页"),e("button",{class:"btn orange",onClick:S},"📥 导出Excel")]),e("div",K,[e("div",z,[s[7]||(s[7]=e("label",null,"科目:",-1)),p(e("select",{"onUpdate:modelValue":s[1]||(s[1]=t=>_.value=t),onChange:c},[s[6]||(s[6]=e("option",null,"全部",-1)),(u(!0),a(h,null,m(x.value,t=>(u(),a("option",{key:t,value:t},l(t),9,G))),128))],544),[[B,_.value]]),s[8]||(s[8]=e("label",{style:{"margin-left":"10px"}},"已正确题目数:",-1)),p(e("input",{type:"text","onUpdate:modelValue":s[2]||(s[2]=t=>v.value=t),style:{width:"70px"}},null,512),[[f,v.value]]),s[9]||(s[9]=e("label",{style:{"margin-left":"10px"}},"尚未正确题目数:",-1)),p(e("input",{type:"text","onUpdate:modelValue":s[3]||(s[3]=t=>y.value=t),style:{width:"70px"}},null,512),[[f,y.value]])]),e("div",L,[s[10]||(s[10]=e("label",null,"章节名称:",-1)),p(e("input",{type:"text","onUpdate:modelValue":s[4]||(s[4]=t=>k.value=t),style:{width:"340px"}},null,512),[[f,k.value]]),e("button",{class:"btn primary",style:{"margin-left":"auto"},onClick:c},"🔍 开始搜索")])]),e("div",N,[e("div",P,[e("table",Q,[e("thead",null,[e("tr",null,[(u(),a(h,null,m(D,t=>e("th",{key:t.key,onClick:d=>j(t.key)},l(t.label)+l(V(t.key)),9,R)),64))])]),e("tbody",null,[(u(!0),a(h,null,m(b.value,t=>(u(),a("tr",{key:t.chapter_id},[e("td",H,l(t.chapter_id),1),e("td",J,l(t.subject),1),e("td",O,l(t.volume_name),1),e("td",{class:"link",onClick:d=>w(t.chapter_id)},l(t.chapter_desc),9,T),e("td",{class:"center link",onClick:d=>C(t.chapter_id,null)},l(t.total_wrong_questions),9,W),e("td",{class:"center link",onClick:d=>C(t.chapter_id,">=1")},l(t.correct_questions),9,X),e("td",{class:"center link",onClick:d=>C(t.chapter_id,"=0")},l(t.not_correct_questions),9,Y)]))),128))])])])])]))}},nt=M(Z,[["__scopeId","data-v-ecc11515"]]);export{nt as default};
--- /dev/null
+import{b as $,d as A,c as a,a as e,w as p,v as B,F as h,r as m,l as f,g as o,h as E,z as U,B as I,o as u,t as l}from"./index-Bkq7kiH8.js";import{_ as M}from"./_plugin-vue_export-helper-DlAUqK2U.js";const F={class:"page-header"},K={class:"filter-panel"},z={class:"row"},G=["value"],L={class:"row"},N={class:"content-area"},P={class:"card",style:{padding:"0",overflow:"auto"}},Q={class:"data-table"},R=["onClick"],H={class:"center"},J={class:"center"},O={class:"center"},T=["onClick"],W=["onClick"],X=["onClick"],Y=["onClick"],Z={__name:"AnalysisChapters",setup(tt){const g=I(),x=o([]),_=o("全部"),v=o(""),y=o(""),k=o(""),b=o([]),r=o("not_correct_questions"),i=o("DESC"),D=[{key:"id",label:"ID"},{key:"subject",label:"科目"},{key:"volume_name",label:"册"},{key:"chapter_desc",label:"章节"},{key:"total_wrong_questions",label:"错题数量"},{key:"correct_questions",label:"已正确题目数"},{key:"not_correct_questions",label:"尚未正确题目数"}];function V(n){return n!==r.value?"":i.value==="ASC"?" ▲":" ▼"}function j(n){r.value===n?i.value=i.value==="ASC"?"DESC":"ASC":(r.value=n,i.value="ASC"),c()}function q(){return{subject:_.value,correct_count:v.value,not_correct_count:y.value,chapter_desc:k.value,sort_column:r.value,sort_direction:i.value}}async function c(){const n=await E("/analysis/chapters",q());b.value=n.rows}function w(n){g.push({path:"/analysis/knowledge",query:{chapter_id:n}})}function C(n,s){const t={chapter_id:n};s&&(t.right_times=s),g.push({path:"/questions",query:t})}async function S(){b.value.length&&await U("/analysis/chapters/export-excel",q())}return $(async()=>{const n=await A("/meta/subjects");x.value=n.subjects,await c()}),(n,s)=>(u(),a("div",null,[e("div",F,[s[5]||(s[5]=e("span",{class:"title"},"章节分析",-1)),e("button",{class:"btn",style:{"margin-left":"16px"},onClick:s[0]||(s[0]=t=>n.$router.push("/subject-portal"))},"返回科目首页"),e("button",{class:"btn orange",onClick:S},"📥 导出Excel")]),e("div",K,[e("div",z,[s[7]||(s[7]=e("label",null,"科目:",-1)),p(e("select",{"onUpdate:modelValue":s[1]||(s[1]=t=>_.value=t),onChange:c},[s[6]||(s[6]=e("option",null,"全部",-1)),(u(!0),a(h,null,m(x.value,t=>(u(),a("option",{key:t,value:t},l(t),9,G))),128))],544),[[B,_.value]]),s[8]||(s[8]=e("label",{style:{"margin-left":"10px"}},"已正确题目数:",-1)),p(e("input",{type:"text","onUpdate:modelValue":s[2]||(s[2]=t=>v.value=t),style:{width:"70px"}},null,512),[[f,v.value]]),s[9]||(s[9]=e("label",{style:{"margin-left":"10px"}},"尚未正确题目数:",-1)),p(e("input",{type:"text","onUpdate:modelValue":s[3]||(s[3]=t=>y.value=t),style:{width:"70px"}},null,512),[[f,y.value]])]),e("div",L,[s[10]||(s[10]=e("label",null,"章节名称:",-1)),p(e("input",{type:"text","onUpdate:modelValue":s[4]||(s[4]=t=>k.value=t),style:{width:"340px"}},null,512),[[f,k.value]]),e("button",{class:"btn primary",style:{"margin-left":"auto"},onClick:c},"🔍 开始搜索")])]),e("div",N,[e("div",P,[e("table",Q,[e("thead",null,[e("tr",null,[(u(),a(h,null,m(D,t=>e("th",{key:t.key,onClick:d=>j(t.key)},l(t.label)+l(V(t.key)),9,R)),64))])]),e("tbody",null,[(u(!0),a(h,null,m(b.value,t=>(u(),a("tr",{key:t.chapter_id},[e("td",H,l(t.chapter_id),1),e("td",J,l(t.subject),1),e("td",O,l(t.volume_name),1),e("td",{class:"link",onClick:d=>w(t.chapter_id)},l(t.chapter_desc),9,T),e("td",{class:"center link",onClick:d=>C(t.chapter_id,null)},l(t.total_wrong_questions),9,W),e("td",{class:"center link",onClick:d=>C(t.chapter_id,">=1")},l(t.correct_questions),9,X),e("td",{class:"center link",onClick:d=>C(t.chapter_id,"=0")},l(t.not_correct_questions),9,Y)]))),128))])])])])]))}},nt=M(Z,[["__scopeId","data-v-ecc11515"]]);export{nt as default};
--- /dev/null
+import{b as I,d as $,c as a,a as e,w as p,v as B,F as m,r as g,l as x,j as E,t as s,p as U,q as K,g as o,h as M,z as N,B as z,o as u}from"./index-JKSCyc76.js";import{_ as R}from"./_plugin-vue_export-helper-DlAUqK2U.js";const G={class:"page-header"},L={class:"filter-panel"},P={class:"row"},Q=["value"],T={class:"row"},H={key:0,class:"row",style:{color:"#1890FF","font-size":"13px"}},J={class:"content-area"},O={class:"card",style:{padding:"0",overflow:"auto"}},W={class:"data-table"},X=["onClick"],Y={class:"center"},Z={class:"center"},tt=["onClick"],et=["onClick"],lt=["onClick"],nt={__name:"AnalysisKnowledge",setup(st){const h=K(),V=z(),q=o([]),v=o("全部"),_=o(""),k=o(""),y=o(""),b=o([]),i=o(null),d=o("not_correct_questions"),r=o("DESC"),j=[{key:"id",label:"ID"},{key:"subject",label:"科目"},{key:"chapter_info",label:"章节"},{key:"knowledge_content",label:"知识点"},{key:"total_questions",label:"试题数量"},{key:"correct_questions",label:"已正确题目数"},{key:"not_correct_questions",label:"尚未正确题目数"}];function D(n){return n!==d.value?"":r.value==="ASC"?" ▲":" ▼"}function S(n){d.value===n?r.value=r.value==="ASC"?"DESC":"ASC":(d.value=n,r.value="ASC"),c()}function w(){return{subject:v.value,correct_count:_.value,not_correct_count:k.value,kp_content:y.value,chapter_id_filter:i.value,sort_column:d.value,sort_direction:r.value}}async function c(){const n=await M("/analysis/knowledge",w());b.value=n.rows}function A(){i.value=null,c()}function f(n,l){const t={kp_id:n};l&&(t.right_times=l),V.push({path:"/questions",query:t})}async function F(){b.value.length&&await N("/analysis/knowledge/export-excel",w())}return I(async()=>{h.query.chapter_id&&(i.value=parseInt(h.query.chapter_id));const n=await $("/meta/subjects");q.value=n.subjects,await c()}),(n,l)=>(u(),a("div",null,[e("div",G,[l[5]||(l[5]=e("span",{class:"title"},"科目知识列表",-1)),e("button",{class:"btn",style:{"margin-left":"16px"},onClick:l[0]||(l[0]=t=>n.$router.push("/subject-portal"))},"返回科目首页"),e("button",{class:"btn orange",onClick:F},"📥 导出Excel")]),e("div",L,[e("div",P,[l[7]||(l[7]=e("label",null,"科目:",-1)),p(e("select",{"onUpdate:modelValue":l[1]||(l[1]=t=>v.value=t),onChange:c},[l[6]||(l[6]=e("option",null,"全部",-1)),(u(!0),a(m,null,g(q.value,t=>(u(),a("option",{key:t,value:t},s(t),9,Q))),128))],544),[[B,v.value]]),l[8]||(l[8]=e("label",{style:{"margin-left":"10px"}},"已正确题目数:",-1)),p(e("input",{type:"text","onUpdate:modelValue":l[2]||(l[2]=t=>_.value=t),style:{width:"70px"}},null,512),[[x,_.value]]),l[9]||(l[9]=e("label",{style:{"margin-left":"10px"}},"尚未正确题目数:",-1)),p(e("input",{type:"text","onUpdate:modelValue":l[3]||(l[3]=t=>k.value=t),style:{width:"70px"}},null,512),[[x,k.value]])]),e("div",T,[l[10]||(l[10]=e("label",null,"知识点:",-1)),p(e("input",{type:"text","onUpdate:modelValue":l[4]||(l[4]=t=>y.value=t),style:{width:"340px"}},null,512),[[x,y.value]]),e("button",{class:"btn primary",style:{"margin-left":"auto"},onClick:c},"🔍 开始搜索")]),i.value?(u(),a("div",H,[E(" 当前按章节过滤:章节ID "+s(i.value)+" ",1),e("button",{class:"btn small",onClick:A},"清除章节过滤")])):U("",!0)]),e("div",J,[e("div",O,[e("table",W,[e("thead",null,[e("tr",null,[(u(),a(m,null,g(j,t=>e("th",{key:t.key,onClick:C=>S(t.key)},s(t.label)+s(D(t.key)),9,X)),64))])]),e("tbody",null,[(u(!0),a(m,null,g(b.value,t=>(u(),a("tr",{key:t.kp_id},[e("td",Y,s(t.kp_id),1),e("td",Z,s(t.subject),1),e("td",null,s(t.chapter_info),1),e("td",null,s(t.knowledge_content),1),e("td",{class:"center link",onClick:C=>f(t.kp_id,null)},s(t.total_questions),9,tt),e("td",{class:"center link",onClick:C=>f(t.kp_id,">=1")},s(t.correct_questions),9,et),e("td",{class:"center link",onClick:C=>f(t.kp_id,"=0")},s(t.not_correct_questions),9,lt)]))),128))])])])])]))}},ut=R(nt,[["__scopeId","data-v-2b42a9e8"]]);export{ut as default};
--- /dev/null
+import{b as I,d as $,c as a,a as e,w as p,v as E,F as m,r as g,m as x,j as B,t as s,q as U,s as K,g as o,h as M,A as N,u as R,o as u}from"./index-DrsYg5hi.js";import{_ as z}from"./_plugin-vue_export-helper-DlAUqK2U.js";const G={class:"page-header"},L={class:"filter-panel"},P={class:"row"},Q=["value"],T={class:"row"},H={key:0,class:"row",style:{color:"#1890FF","font-size":"13px"}},J={class:"content-area"},O={class:"card",style:{padding:"0",overflow:"auto"}},W={class:"data-table"},X=["onClick"],Y={class:"center"},Z={class:"center"},tt=["onClick"],et=["onClick"],lt=["onClick"],nt={__name:"AnalysisKnowledge",setup(st){const h=K(),V=R(),q=o([]),v=o("全部"),_=o(""),k=o(""),y=o(""),b=o([]),i=o(null),d=o("not_correct_questions"),r=o("DESC"),j=[{key:"id",label:"ID"},{key:"subject",label:"科目"},{key:"chapter_info",label:"章节"},{key:"knowledge_content",label:"知识点"},{key:"total_questions",label:"试题数量"},{key:"correct_questions",label:"已正确题目数"},{key:"not_correct_questions",label:"尚未正确题目数"}];function D(n){return n!==d.value?"":r.value==="ASC"?" ▲":" ▼"}function S(n){d.value===n?r.value=r.value==="ASC"?"DESC":"ASC":(d.value=n,r.value="ASC"),c()}function w(){return{subject:v.value,correct_count:_.value,not_correct_count:k.value,kp_content:y.value,chapter_id_filter:i.value,sort_column:d.value,sort_direction:r.value}}async function c(){const n=await M("/analysis/knowledge",w());b.value=n.rows}function A(){i.value=null,c()}function f(n,l){const t={kp_id:n};l&&(t.right_times=l),V.push({path:"/questions",query:t})}async function F(){b.value.length&&await N("/analysis/knowledge/export-excel",w())}return I(async()=>{h.query.chapter_id&&(i.value=parseInt(h.query.chapter_id));const n=await $("/meta/subjects");q.value=n.subjects,await c()}),(n,l)=>(u(),a("div",null,[e("div",G,[l[5]||(l[5]=e("span",{class:"title"},"科目知识列表",-1)),e("button",{class:"btn",style:{"margin-left":"16px"},onClick:l[0]||(l[0]=t=>n.$router.push("/subject-portal"))},"返回科目首页"),e("button",{class:"btn orange",onClick:F},"📥 导出Excel")]),e("div",L,[e("div",P,[l[7]||(l[7]=e("label",null,"科目:",-1)),p(e("select",{"onUpdate:modelValue":l[1]||(l[1]=t=>v.value=t),onChange:c},[l[6]||(l[6]=e("option",null,"全部",-1)),(u(!0),a(m,null,g(q.value,t=>(u(),a("option",{key:t,value:t},s(t),9,Q))),128))],544),[[E,v.value]]),l[8]||(l[8]=e("label",{style:{"margin-left":"10px"}},"已正确题目数:",-1)),p(e("input",{type:"text","onUpdate:modelValue":l[2]||(l[2]=t=>_.value=t),style:{width:"70px"}},null,512),[[x,_.value]]),l[9]||(l[9]=e("label",{style:{"margin-left":"10px"}},"尚未正确题目数:",-1)),p(e("input",{type:"text","onUpdate:modelValue":l[3]||(l[3]=t=>k.value=t),style:{width:"70px"}},null,512),[[x,k.value]])]),e("div",T,[l[10]||(l[10]=e("label",null,"知识点:",-1)),p(e("input",{type:"text","onUpdate:modelValue":l[4]||(l[4]=t=>y.value=t),style:{width:"340px"}},null,512),[[x,y.value]]),e("button",{class:"btn primary",style:{"margin-left":"auto"},onClick:c},"🔍 开始搜索")]),i.value?(u(),a("div",H,[B(" 当前按章节过滤:章节ID "+s(i.value)+" ",1),e("button",{class:"btn small",onClick:A},"清除章节过滤")])):U("",!0)]),e("div",J,[e("div",O,[e("table",W,[e("thead",null,[e("tr",null,[(u(),a(m,null,g(j,t=>e("th",{key:t.key,onClick:C=>S(t.key)},s(t.label)+s(D(t.key)),9,X)),64))])]),e("tbody",null,[(u(!0),a(m,null,g(b.value,t=>(u(),a("tr",{key:t.kp_id},[e("td",Y,s(t.kp_id),1),e("td",Z,s(t.subject),1),e("td",null,s(t.chapter_info),1),e("td",null,s(t.knowledge_content),1),e("td",{class:"center link",onClick:C=>f(t.kp_id,null)},s(t.total_questions),9,tt),e("td",{class:"center link",onClick:C=>f(t.kp_id,">=1")},s(t.correct_questions),9,et),e("td",{class:"center link",onClick:C=>f(t.kp_id,"=0")},s(t.not_correct_questions),9,lt)]))),128))])])])])]))}},ut=z(nt,[["__scopeId","data-v-2b42a9e8"]]);export{ut as default};
--- /dev/null
+import{b as I,d as $,c as a,a as e,w as p,v as B,F as m,r as g,l as x,j as E,t as s,p as U,q as K,g as o,h as M,z as N,B as z,o as u}from"./index-Bkq7kiH8.js";import{_ as R}from"./_plugin-vue_export-helper-DlAUqK2U.js";const G={class:"page-header"},L={class:"filter-panel"},P={class:"row"},Q=["value"],T={class:"row"},H={key:0,class:"row",style:{color:"#1890FF","font-size":"13px"}},J={class:"content-area"},O={class:"card",style:{padding:"0",overflow:"auto"}},W={class:"data-table"},X=["onClick"],Y={class:"center"},Z={class:"center"},tt=["onClick"],et=["onClick"],lt=["onClick"],nt={__name:"AnalysisKnowledge",setup(st){const h=K(),V=z(),q=o([]),v=o("全部"),_=o(""),k=o(""),y=o(""),b=o([]),i=o(null),d=o("not_correct_questions"),r=o("DESC"),j=[{key:"id",label:"ID"},{key:"subject",label:"科目"},{key:"chapter_info",label:"章节"},{key:"knowledge_content",label:"知识点"},{key:"total_questions",label:"试题数量"},{key:"correct_questions",label:"已正确题目数"},{key:"not_correct_questions",label:"尚未正确题目数"}];function D(n){return n!==d.value?"":r.value==="ASC"?" ▲":" ▼"}function S(n){d.value===n?r.value=r.value==="ASC"?"DESC":"ASC":(d.value=n,r.value="ASC"),c()}function w(){return{subject:v.value,correct_count:_.value,not_correct_count:k.value,kp_content:y.value,chapter_id_filter:i.value,sort_column:d.value,sort_direction:r.value}}async function c(){const n=await M("/analysis/knowledge",w());b.value=n.rows}function A(){i.value=null,c()}function f(n,l){const t={kp_id:n};l&&(t.right_times=l),V.push({path:"/questions",query:t})}async function F(){b.value.length&&await N("/analysis/knowledge/export-excel",w())}return I(async()=>{h.query.chapter_id&&(i.value=parseInt(h.query.chapter_id));const n=await $("/meta/subjects");q.value=n.subjects,await c()}),(n,l)=>(u(),a("div",null,[e("div",G,[l[5]||(l[5]=e("span",{class:"title"},"科目知识列表",-1)),e("button",{class:"btn",style:{"margin-left":"16px"},onClick:l[0]||(l[0]=t=>n.$router.push("/subject-portal"))},"返回科目首页"),e("button",{class:"btn orange",onClick:F},"📥 导出Excel")]),e("div",L,[e("div",P,[l[7]||(l[7]=e("label",null,"科目:",-1)),p(e("select",{"onUpdate:modelValue":l[1]||(l[1]=t=>v.value=t),onChange:c},[l[6]||(l[6]=e("option",null,"全部",-1)),(u(!0),a(m,null,g(q.value,t=>(u(),a("option",{key:t,value:t},s(t),9,Q))),128))],544),[[B,v.value]]),l[8]||(l[8]=e("label",{style:{"margin-left":"10px"}},"已正确题目数:",-1)),p(e("input",{type:"text","onUpdate:modelValue":l[2]||(l[2]=t=>_.value=t),style:{width:"70px"}},null,512),[[x,_.value]]),l[9]||(l[9]=e("label",{style:{"margin-left":"10px"}},"尚未正确题目数:",-1)),p(e("input",{type:"text","onUpdate:modelValue":l[3]||(l[3]=t=>k.value=t),style:{width:"70px"}},null,512),[[x,k.value]])]),e("div",T,[l[10]||(l[10]=e("label",null,"知识点:",-1)),p(e("input",{type:"text","onUpdate:modelValue":l[4]||(l[4]=t=>y.value=t),style:{width:"340px"}},null,512),[[x,y.value]]),e("button",{class:"btn primary",style:{"margin-left":"auto"},onClick:c},"🔍 开始搜索")]),i.value?(u(),a("div",H,[E(" 当前按章节过滤:章节ID "+s(i.value)+" ",1),e("button",{class:"btn small",onClick:A},"清除章节过滤")])):U("",!0)]),e("div",J,[e("div",O,[e("table",W,[e("thead",null,[e("tr",null,[(u(),a(m,null,g(j,t=>e("th",{key:t.key,onClick:C=>S(t.key)},s(t.label)+s(D(t.key)),9,X)),64))])]),e("tbody",null,[(u(!0),a(m,null,g(b.value,t=>(u(),a("tr",{key:t.kp_id},[e("td",Y,s(t.kp_id),1),e("td",Z,s(t.subject),1),e("td",null,s(t.chapter_info),1),e("td",null,s(t.knowledge_content),1),e("td",{class:"center link",onClick:C=>f(t.kp_id,null)},s(t.total_questions),9,tt),e("td",{class:"center link",onClick:C=>f(t.kp_id,">=1")},s(t.correct_questions),9,et),e("td",{class:"center link",onClick:C=>f(t.kp_id,"=0")},s(t.not_correct_questions),9,lt)]))),128))])])])])]))}},ut=R(nt,[["__scopeId","data-v-2b42a9e8"]]);export{ut as default};
--- /dev/null
+import{b as j,d as C,c as s,a as t,w as f,v as V,F as c,r as v,m as w,j as h,t as i,p as B,g as y,A as U,B as E,o as a}from"./index-JKSCyc76.js";import{_ as P}from"./_plugin-vue_export-helper-DlAUqK2U.js";const q={class:"page-header"},A={class:"filter-panel"},L=["value"],M={class:"content-area"},N={key:0,class:"card",style:{overflow:"auto",padding:"0"}},T={class:"data-table",style:{"min-width":"760px"}},D={class:"stage-cell"},F=["onClick"],R=["onClick"],G={class:"total-cell"},I=["onClick"],z={class:"paper-cell"},H=["onClick"],J=["onClick"],K={__name:"AnalysisPending",setup(O){const x=E(),g=y([]),p=y(""),r=y("legacy"),o=y(null),S=U(()=>o.value?["阶段",...o.value.subjects.map(u=>u.name),"总数"]:[]);async function b(){const u=new URLSearchParams({term:p.value,mode:r.value});o.value=await C("/analysis/pending?"+u.toString())}function m(u,l,e){const n={question_nature:"错题",term:p.value,status:"全部",archive_status:"全部"},d=o.value.subjects.find(k=>k.id===u);d&&(n.subject=d.name);const _=o.value.stages.find(k=>k.id===l);_&&(n.stage=_.name),e!=null&&(n.paper_count=e),r.value==="legacy"&&(n.right_times="=0"),x.push({path:"/questions",query:n})}async function $(){if(!o.value)return;const l="/StudyBase/api/analysis/pending/export-excel?"+new URLSearchParams({term:p.value,mode:r.value}).toString(),e=document.createElement("a");e.href=l,e.download="",document.body.appendChild(e),e.click(),e.remove()}return j(async()=>{const u=await C("/analysis/pending?mode=legacy");g.value=u.terms,p.value=u.current_term,o.value=u}),(u,l)=>(a(),s("div",null,[t("div",q,[l[5]||(l[5]=t("span",{class:"title"},"遗留分析汇总",-1)),t("button",{class:"btn",style:{"margin-left":"16px"},onClick:l[0]||(l[0]=e=>u.$router.push("/subject-portal"))},"返回科目首页"),t("button",{class:"btn orange",onClick:$},"📥 导出Excel")]),t("div",A,[l[8]||(l[8]=t("label",null,"选择学期:",-1)),f(t("select",{"onUpdate:modelValue":l[1]||(l[1]=e=>p.value=e),onChange:b},[(a(!0),s(c,null,v(g.value,e=>(a(),s("option",{key:e,value:e},i(e),9,L))),128))],544),[[V,p.value]]),l[9]||(l[9]=t("label",{style:{"margin-left":"25px"}},"统计范围:",-1)),t("label",null,[f(t("input",{type:"radio",value:"legacy","onUpdate:modelValue":l[2]||(l[2]=e=>r.value=e),onChange:b},null,544),[[w,r.value]]),l[6]||(l[6]=h(" 遗留错题",-1))]),t("label",null,[f(t("input",{type:"radio",value:"all","onUpdate:modelValue":l[3]||(l[3]=e=>r.value=e),onChange:b},null,544),[[w,r.value]]),l[7]||(l[7]=h(" 全部错题",-1))])]),t("div",M,[o.value?(a(),s("div",N,[t("table",T,[t("thead",null,[t("tr",null,[(a(!0),s(c,null,v(S.value,e=>(a(),s("th",{key:e},i(e),1))),128))])]),t("tbody",null,[(a(!0),s(c,null,v(o.value.stage_rows,e=>(a(),s("tr",{key:e.label},[t("td",D,i(e.label),1),(a(!0),s(c,null,v(e.cells,(n,d)=>(a(),s("td",{key:d,class:"link",onClick:_=>m(n.sub_id,n.st_id,null)},i(n.count),9,F))),128)),t("td",{class:"link bold",onClick:n=>m(null,e.cells[0]?e.cells[0].st_id:null,null)},i(e.sum),9,R)]))),128)),t("tr",null,[t("td",G,i(o.value.total_row.label),1),(a(!0),s(c,null,v(o.value.total_row.cells,(e,n)=>(a(),s("td",{key:n,class:"link total-cell bold",onClick:d=>m(e.sub_id,null,null)},i(e.count),9,I))),128)),t("td",{class:"link total-cell bold",onClick:l[4]||(l[4]=e=>m(null,null,null))},i(o.value.total_row.sum),1)]),(a(!0),s(c,null,v(o.value.paper_rows,e=>(a(),s("tr",{key:e.label},[t("td",z,i(e.label),1),(a(!0),s(c,null,v(e.cells,(n,d)=>(a(),s("td",{key:d,class:"link",onClick:_=>m(n.sub_id,null,e.paper_count)},i(n.count),9,H))),128)),t("td",{class:"link bold",onClick:n=>m(null,null,e.paper_count)},i(e.sum),9,J)]))),128))])])])):B("",!0)])]))}},X=P(K,[["__scopeId","data-v-9df751f3"]]);export{X as default};
--- /dev/null
+import{b as j,d as C,c as s,a as t,w as f,v as V,F as c,r as v,p as w,j as h,t as i,q as B,g as y,B as U,u as q,o as a}from"./index-DrsYg5hi.js";import{_ as E}from"./_plugin-vue_export-helper-DlAUqK2U.js";const P={class:"page-header"},L={class:"filter-panel"},M=["value"],N={class:"content-area"},T={key:0,class:"card",style:{overflow:"auto",padding:"0"}},A={class:"data-table",style:{"min-width":"760px"}},D={class:"stage-cell"},F=["onClick"],R=["onClick"],G={class:"total-cell"},I=["onClick"],z={class:"paper-cell"},H=["onClick"],J=["onClick"],K={__name:"AnalysisPending",setup(O){const x=q(),g=y([]),p=y(""),r=y("legacy"),o=y(null),S=U(()=>o.value?["阶段",...o.value.subjects.map(u=>u.name),"总数"]:[]);async function b(){const u=new URLSearchParams({term:p.value,mode:r.value});o.value=await C("/analysis/pending?"+u.toString())}function m(u,l,e){const n={question_nature:"错题",term:p.value,status:"全部",archive_status:"全部"},d=o.value.subjects.find(k=>k.id===u);d&&(n.subject=d.name);const _=o.value.stages.find(k=>k.id===l);_&&(n.stage=_.name),e!=null&&(n.paper_count=e),r.value==="legacy"&&(n.right_times="=0"),x.push({path:"/questions",query:n})}async function $(){if(!o.value)return;const l="/StudyBase/api/analysis/pending/export-excel?"+new URLSearchParams({term:p.value,mode:r.value}).toString(),e=document.createElement("a");e.href=l,e.download="",document.body.appendChild(e),e.click(),e.remove()}return j(async()=>{const u=await C("/analysis/pending?mode=legacy");g.value=u.terms,p.value=u.current_term,o.value=u}),(u,l)=>(a(),s("div",null,[t("div",P,[l[5]||(l[5]=t("span",{class:"title"},"遗留分析汇总",-1)),t("button",{class:"btn",style:{"margin-left":"16px"},onClick:l[0]||(l[0]=e=>u.$router.push("/subject-portal"))},"返回科目首页"),t("button",{class:"btn orange",onClick:$},"📥 导出Excel")]),t("div",L,[l[8]||(l[8]=t("label",null,"选择学期:",-1)),f(t("select",{"onUpdate:modelValue":l[1]||(l[1]=e=>p.value=e),onChange:b},[(a(!0),s(c,null,v(g.value,e=>(a(),s("option",{key:e,value:e},i(e),9,M))),128))],544),[[V,p.value]]),l[9]||(l[9]=t("label",{style:{"margin-left":"25px"}},"统计范围:",-1)),t("label",null,[f(t("input",{type:"radio",value:"legacy","onUpdate:modelValue":l[2]||(l[2]=e=>r.value=e),onChange:b},null,544),[[w,r.value]]),l[6]||(l[6]=h(" 遗留错题",-1))]),t("label",null,[f(t("input",{type:"radio",value:"all","onUpdate:modelValue":l[3]||(l[3]=e=>r.value=e),onChange:b},null,544),[[w,r.value]]),l[7]||(l[7]=h(" 全部错题",-1))])]),t("div",N,[o.value?(a(),s("div",T,[t("table",A,[t("thead",null,[t("tr",null,[(a(!0),s(c,null,v(S.value,e=>(a(),s("th",{key:e},i(e),1))),128))])]),t("tbody",null,[(a(!0),s(c,null,v(o.value.stage_rows,e=>(a(),s("tr",{key:e.label},[t("td",D,i(e.label),1),(a(!0),s(c,null,v(e.cells,(n,d)=>(a(),s("td",{key:d,class:"link",onClick:_=>m(n.sub_id,n.st_id,null)},i(n.count),9,F))),128)),t("td",{class:"link bold",onClick:n=>m(null,e.cells[0]?e.cells[0].st_id:null,null)},i(e.sum),9,R)]))),128)),t("tr",null,[t("td",G,i(o.value.total_row.label),1),(a(!0),s(c,null,v(o.value.total_row.cells,(e,n)=>(a(),s("td",{key:n,class:"link total-cell bold",onClick:d=>m(e.sub_id,null,null)},i(e.count),9,I))),128)),t("td",{class:"link total-cell bold",onClick:l[4]||(l[4]=e=>m(null,null,null))},i(o.value.total_row.sum),1)]),(a(!0),s(c,null,v(o.value.paper_rows,e=>(a(),s("tr",{key:e.label},[t("td",z,i(e.label),1),(a(!0),s(c,null,v(e.cells,(n,d)=>(a(),s("td",{key:d,class:"link",onClick:_=>m(n.sub_id,null,e.paper_count)},i(n.count),9,H))),128)),t("td",{class:"link bold",onClick:n=>m(null,null,e.paper_count)},i(e.sum),9,J)]))),128))])])])):B("",!0)])]))}},X=E(K,[["__scopeId","data-v-9df751f3"]]);export{X as default};
--- /dev/null
+import{b as j,d as C,c as s,a as t,w as f,v as V,F as c,r as v,m as w,j as h,t as i,p as B,g as y,A as U,B as E,o as a}from"./index-Bkq7kiH8.js";import{_ as P}from"./_plugin-vue_export-helper-DlAUqK2U.js";const q={class:"page-header"},A={class:"filter-panel"},L=["value"],M={class:"content-area"},N={key:0,class:"card",style:{overflow:"auto",padding:"0"}},T={class:"data-table",style:{"min-width":"760px"}},D={class:"stage-cell"},F=["onClick"],R=["onClick"],G={class:"total-cell"},I=["onClick"],z={class:"paper-cell"},H=["onClick"],J=["onClick"],K={__name:"AnalysisPending",setup(O){const x=E(),g=y([]),p=y(""),r=y("legacy"),o=y(null),S=U(()=>o.value?["阶段",...o.value.subjects.map(u=>u.name),"总数"]:[]);async function b(){const u=new URLSearchParams({term:p.value,mode:r.value});o.value=await C("/analysis/pending?"+u.toString())}function m(u,l,e){const n={question_nature:"错题",term:p.value,status:"全部",archive_status:"全部"},d=o.value.subjects.find(k=>k.id===u);d&&(n.subject=d.name);const _=o.value.stages.find(k=>k.id===l);_&&(n.stage=_.name),e!=null&&(n.paper_count=e),r.value==="legacy"&&(n.right_times="=0"),x.push({path:"/questions",query:n})}async function $(){if(!o.value)return;const l="/StudyBase/api/analysis/pending/export-excel?"+new URLSearchParams({term:p.value,mode:r.value}).toString(),e=document.createElement("a");e.href=l,e.download="",document.body.appendChild(e),e.click(),e.remove()}return j(async()=>{const u=await C("/analysis/pending?mode=legacy");g.value=u.terms,p.value=u.current_term,o.value=u}),(u,l)=>(a(),s("div",null,[t("div",q,[l[5]||(l[5]=t("span",{class:"title"},"遗留分析汇总",-1)),t("button",{class:"btn",style:{"margin-left":"16px"},onClick:l[0]||(l[0]=e=>u.$router.push("/subject-portal"))},"返回科目首页"),t("button",{class:"btn orange",onClick:$},"📥 导出Excel")]),t("div",A,[l[8]||(l[8]=t("label",null,"选择学期:",-1)),f(t("select",{"onUpdate:modelValue":l[1]||(l[1]=e=>p.value=e),onChange:b},[(a(!0),s(c,null,v(g.value,e=>(a(),s("option",{key:e,value:e},i(e),9,L))),128))],544),[[V,p.value]]),l[9]||(l[9]=t("label",{style:{"margin-left":"25px"}},"统计范围:",-1)),t("label",null,[f(t("input",{type:"radio",value:"legacy","onUpdate:modelValue":l[2]||(l[2]=e=>r.value=e),onChange:b},null,544),[[w,r.value]]),l[6]||(l[6]=h(" 遗留错题",-1))]),t("label",null,[f(t("input",{type:"radio",value:"all","onUpdate:modelValue":l[3]||(l[3]=e=>r.value=e),onChange:b},null,544),[[w,r.value]]),l[7]||(l[7]=h(" 全部错题",-1))])]),t("div",M,[o.value?(a(),s("div",N,[t("table",T,[t("thead",null,[t("tr",null,[(a(!0),s(c,null,v(S.value,e=>(a(),s("th",{key:e},i(e),1))),128))])]),t("tbody",null,[(a(!0),s(c,null,v(o.value.stage_rows,e=>(a(),s("tr",{key:e.label},[t("td",D,i(e.label),1),(a(!0),s(c,null,v(e.cells,(n,d)=>(a(),s("td",{key:d,class:"link",onClick:_=>m(n.sub_id,n.st_id,null)},i(n.count),9,F))),128)),t("td",{class:"link bold",onClick:n=>m(null,e.cells[0]?e.cells[0].st_id:null,null)},i(e.sum),9,R)]))),128)),t("tr",null,[t("td",G,i(o.value.total_row.label),1),(a(!0),s(c,null,v(o.value.total_row.cells,(e,n)=>(a(),s("td",{key:n,class:"link total-cell bold",onClick:d=>m(e.sub_id,null,null)},i(e.count),9,I))),128)),t("td",{class:"link total-cell bold",onClick:l[4]||(l[4]=e=>m(null,null,null))},i(o.value.total_row.sum),1)]),(a(!0),s(c,null,v(o.value.paper_rows,e=>(a(),s("tr",{key:e.label},[t("td",z,i(e.label),1),(a(!0),s(c,null,v(e.cells,(n,d)=>(a(),s("td",{key:d,class:"link",onClick:_=>m(n.sub_id,null,e.paper_count)},i(n.count),9,H))),128)),t("td",{class:"link bold",onClick:n=>m(null,null,e.paper_count)},i(e.sum),9,J)]))),128))])])])):B("",!0)])]))}},X=P(K,[["__scopeId","data-v-9df751f3"]]);export{X as default};
--- /dev/null
+import{b as oe,d as ue,c as r,a as l,w as m,v as S,F as D,r as j,j as ie,t as g,G as re,l as _,p as de,g as s,x as f,y as Z,h as K,H as ve,B as pe,o as d}from"./index-Bkq7kiH8.js";import{_ as me}from"./_plugin-vue_export-helper-DlAUqK2U.js";const fe={class:"content-area"},ce={class:"card"},ge={style:{display:"grid","grid-template-columns":"110px 240px 110px 240px",gap:"10px 14px","align-items":"center"}},ye=["value"],be=["value"],we=["value"],ke=["value"],xe=["value"],Se=["value"],$e={class:"card",style:{display:"flex",gap:"18px","align-items":"center","flex-wrap":"wrap"}},Ce=["disabled"],Te=["disabled"],Ve=["disabled"],De={key:0,class:"modal-mask"},je={class:"modal"},Ue={class:"modal-body"},qe={class:"form-row"},Ie={class:"form-row"},Ae={class:"form-row"},Ne={class:"form-row"},Be={class:"toolbar"},Ee={class:"toolbar"},Q="自组WORD范本.docx",Fe=`智学网文件解析请注意以下格式:
+!!请确定组卷网下载文件包括了【知识点】信息!!
+1. 题目开始格式:
+ 【错题】/【推题】【客观题】/【主观题】[题号]
+
+ 例如:
+ 【错题】【客观题】1.豌豆(雌雄同花)和玉米(雌雄同株异花)都是良好的遗传学材料。利用这两种材料进行遗传学实验时,操作正确的是( )
+
+2. 答案开始格式:
+ 【答案】[题号]
+
+ 例如:
+ 【答案】2.B
+ 【知识点】孟德尔一对相对性状的杂交实验
+ 【分析】孟德尔一对相对性状的杂交试验中,实现3:1的分离比必须同时满足的条件是:F1形成的配子数目相等且生活力相同,雌、雄配子结合的机会相等;F2不同的基因型的个体的存活率相等;等位基因间的显隐性关系是完全的;观察的子代样本数目足够多。
+
+请点击“确定”开始解析。
+`,Me={__name:"FileImport",setup(Oe){const X=pe(),h="/StudyBase/word-template.docx",v=s({subject:{options:[],default:""},source:{options:[],default:""},term:{options:[],default:""},stage:{options:[],default:""},origin:{options:[],default:""},type:{options:["错题","推题","补充提高"],default:"错题"}}),U=s(""),C=s(""),q=s("错题"),I=s(""),A=s(""),N=s(""),F=s(""),M=s(null),B=s(!1),p=s(null),O=s(!1),T=s(""),E=s("错题"),b=s(""),w=s(""),k=s(""),x=s(""),R=s(null),G=s(null),V=s(0),J=s("");function o(a){F.value+=`[${new Date().toTimeString().slice(0,8)}] ${a}
+`,ve(()=>{M.value&&(M.value.scrollTop=M.value.scrollHeight)})}function P(){return{subject:U.value,source:C.value,type:q.value,term:I.value,stage:A.value,origin:N.value}}function ee(){const a=P();if(!Object.values(a).every(Boolean)){f("请确保所有导入参数都已选择!");return}if(C.value==="组卷网"&&!Z(Fe))return;const e=document.createElement("input");e.type="file",e.accept=".docx",e.onchange=async()=>{const t=e.files[0];if(!t)return;F.value="",B.value=!0,p.value=null;const n=new FormData;n.append("file",t),n.append("subject",U.value),n.append("source",C.value),n.append("q_type",q.value),n.append("term",I.value),n.append("stage",A.value),n.append("origin",N.value);try{const u=await fetch("/StudyBase/api/import/parse",{method:"POST",body:n});if(!u.ok){let $=`HTTP ${u.status}`;try{const y=await u.json();typeof y.detail=="string"?$=y.detail:Array.isArray(y.detail)&&($=y.detail.map(L=>`${(L.loc||[]).slice(1).join(".")}: ${L.msg}`).join("; "))}catch{}o(`解析失败: ${$}`),p.value=null;return}const i=await u.json();for(const $ of i.log||[])o($.replace(/^\[\d{2}:\d{2}:\d{2}\]\s?/,""));i.error?p.value=null:i.questions?p.value=i.questions:p.value=null}catch(u){o(`解析过程中发生未预期错误: ${u.message}`),p.value=null}finally{B.value=!1}},e.click()}function te(){F.value="",o("正在手动添加试题..."),O.value=!0,T.value="",E.value="错题",b.value="",w.value="",k.value="",x.value="",V.value=0,J.value=new Date().toISOString().replace(/[-:TZ.]/g,"").slice(0,14)}function le(){const a=new Date,e=t=>String(t).padStart(2,"0");w.value=`${a.getFullYear()}-${e(a.getMonth()+1)}-${e(a.getDate())}`}async function ae(){if(!T.value){f("请先选择题目分类(客观题或主观题)。");return}if(!b.value.trim()){f("题目知识点为必填项。");return}if(!k.value.trim()){f("题干内容不能为空。");return}if(!x.value.trim()){f("答案解析不能为空。");return}const a=V.value+1;try{const e=await K("/import/manual-add",{category:T.value,q_type:E.value,kp_text:b.value.trim(),answer_time:w.value,stem_raw:k.value,analysis_raw:x.value,question_no:a,session_timestamp:J.value,meta:P()});c||(c=[]),c.push(e),V.value=a,o(`添加一条试题。当前已添加 ${V.value} 条。`),f("当前试题已保存,可以继续添加下一题。"),b.value="",w.value="",k.value="",x.value=""}catch(e){if(e.needConfirm){if(Z("答题时间格式不是标准日期(YYYY-MM-DD),仍要按原样保存吗?"))try{const t=await K("/import/manual-add",{category:T.value,q_type:E.value,kp_text:b.value.trim(),answer_time:w.value,stem_raw:k.value,analysis_raw:x.value,question_no:a,session_timestamp:J.value,meta:P(),force:!0});c.push(t),V.value=a,o(`添加一条试题。当前已添加 ${V.value} 条。`),f("当前试题已保存,可以继续添加下一题。"),b.value="",w.value="",k.value="",x.value=""}catch(t){f(t.message)}}else f(e.message)}}let c=[];function se(){o("手动添加试题窗口已关闭。"),O.value=!1,c&&c.length?(p.value=c,o(`手动添加已完成。共添加 ${c.length} 道题目。`),o(`
+--- 手动添加题目预览 ---`),o(JSON.stringify(c,null,4)),o(`--- 预览结束 ---
+`)):(p.value=null,o("手动添加已取消或未添加任何题目。")),c=[]}async function Y(a){const e=new FormData;e.append("file",a,a.name||"pasted.png");const t=await fetch("/StudyBase/api/import/upload-image",{method:"POST",body:e});if(!t.ok){let u="上传失败";try{u=(await t.json()).detail||u}catch{}throw new Error(u)}return(await t.json()).path}function W(a,e){if(a&&a.selectionStart!=null){const t=a.selectionStart,n=a.value;return a.value=n.slice(0,t)+e+n.slice(a.selectionEnd),a.value}return null}function z(a){const e=document.createElement("input");e.type="file",e.accept="image/png,image/jpeg,image/bmp,image/gif",e.onchange=async()=>{const t=e.files[0];if(t)try{const n=await Y(t),u=`[[IMG:${n}]]`,i=a;i&&(W(i,u),i.dispatchEvent(new Event("input"))),o(`已选取图片: ${n}`)}catch(n){f(n.message)}},e.click()}async function H(a,e){const t=a.clipboardData&&a.clipboardData.items;if(t){for(const n of t)if(n.type&&n.type.startsWith("image/")){a.preventDefault();const u=n.getAsFile();try{const i=await Y(u),$=`[[IMG:${i}]]`,y=e==="stem"?R.value:G.value;y&&(W(y,$),y.dispatchEvent(new Event("input"))),o(`从剪贴板插入图片: ${i}`)}catch(i){o(`保存剪贴板图片失败: ${i.message}`)}return}}}function ne(){p.value?(sessionStorage.setItem("sb_import_data",JSON.stringify(p.value)),sessionStorage.setItem("sb_import_meta",JSON.stringify({...P(),import_time:new Date().toLocaleString("sv-PR")})),X.push("/questions/import/preview")):f("请先解析文件或选择手动添加,没有可预览的数据。")}return oe(async()=>{v.value=await ue("/import/options"),U.value=v.value.subject.default,C.value=v.value.source.default,I.value=v.value.term.default,A.value=v.value.stage.default,N.value=v.value.origin.default,q.value=v.value.type.default}),(a,e)=>(d(),r("div",null,[e[35]||(e[35]=l("div",{class:"page-header"},[l("span",{class:"title"},"文件导入题目")],-1)),l("div",fe,[l("div",ce,[e[23]||(e[23]=l("div",{style:{"font-weight":"bold","margin-bottom":"10px"}},"导入参数设置",-1)),l("div",ge,[e[17]||(e[17]=l("label",null,"所属科目:",-1)),m(l("select",{"onUpdate:modelValue":e[0]||(e[0]=t=>U.value=t)},[(d(!0),r(D,null,j(v.value.subject.options,t=>(d(),r("option",{key:t,value:t},g(t),9,ye))),128))],512),[[S,U.value]]),e[18]||(e[18]=l("label",null,"学期:",-1)),m(l("select",{"onUpdate:modelValue":e[1]||(e[1]=t=>I.value=t)},[(d(!0),r(D,null,j(v.value.term.options,t=>(d(),r("option",{key:t,value:t},g(t),9,be))),128))],512),[[S,I.value]]),e[19]||(e[19]=l("label",null,"题目来源:",-1)),m(l("select",{"onUpdate:modelValue":e[2]||(e[2]=t=>C.value=t)},[(d(!0),r(D,null,j(v.value.source.options,t=>(d(),r("option",{key:t,value:t},g(t),9,we))),128))],512),[[S,C.value]]),e[20]||(e[20]=l("label",null,"阶段:",-1)),m(l("select",{"onUpdate:modelValue":e[3]||(e[3]=t=>A.value=t)},[(d(!0),r(D,null,j(v.value.stage.options,t=>(d(),r("option",{key:t,value:t},g(t),9,ke))),128))],512),[[S,A.value]]),e[21]||(e[21]=l("label",null,"题目类型:",-1)),m(l("select",{"onUpdate:modelValue":e[4]||(e[4]=t=>q.value=t)},[(d(!0),r(D,null,j(v.value.type.options,t=>(d(),r("option",{key:t,value:t},g(t),9,xe))),128))],512),[[S,q.value]]),e[22]||(e[22]=l("label",null,"题目出处:",-1)),m(l("select",{"onUpdate:modelValue":e[5]||(e[5]=t=>N.value=t)},[(d(!0),r(D,null,j(v.value.origin.options,t=>(d(),r("option",{key:t,value:t},g(t),9,Se))),128))],512),[[S,N.value]])])]),l("div",$e,[l("div",{style:{width:"100%","font-size":"13px",color:"#555","margin-bottom":"2px"}},[e[24]||(e[24]=ie(" 如需使用「自组 Word 模式」上传,请先下载模板并按格式填写: ",-1)),l("a",{href:h,download:Q,style:{color:"#4A90E2","text-decoration":"underline",cursor:"pointer"}},g(Q))]),l("button",{class:"btn",disabled:B.value,style:{"font-weight":"bold"},onClick:ee},g(B.value?"解析中...":"第一步:选择文件并解析"),9,Ce),l("button",{class:"btn orange",disabled:B.value,style:{"font-weight":"bold"},onClick:te},g(O.value?"手动添加中...":"第一步:手动添加试题"),9,Te),l("button",{class:"btn",disabled:!p.value,style:re([{"font-weight":"bold"},p.value?"":"color:#999;"]),onClick:ne}," 第二步:预览并确定导入 ",12,Ve),l("button",{class:"btn",style:{"margin-left":"auto"},onClick:e[6]||(e[6]=t=>a.$router.push("/questions"))},"返回")]),e[25]||(e[25]=l("div",{style:{"font-size":"13px",margin:"6px 2px"}},"解析进度与JSON预览:",-1)),l("div",{class:"log-box",ref_key:"logBox",ref:M},g(F.value),513)]),O.value?(d(),r("div",De,[l("div",je,[e[34]||(e[34]=l("div",{class:"modal-header"},"手动添加试题",-1)),l("div",Ue,[l("div",qe,[e[27]||(e[27]=l("label",null,"题目分类(必选):",-1)),m(l("select",{"onUpdate:modelValue":e[7]||(e[7]=t=>T.value=t)},[...e[26]||(e[26]=[l("option",{value:"",disabled:""},"请选择",-1),l("option",null,"客观题",-1),l("option",null,"主观题",-1)])],512),[[S,T.value]])]),l("div",Ie,[e[29]||(e[29]=l("label",null,"题目类型(必选):",-1)),m(l("select",{"onUpdate:modelValue":e[8]||(e[8]=t=>E.value=t)},[...e[28]||(e[28]=[l("option",null,"错题",-1),l("option",null,"推题",-1)])],512),[[S,E.value]])]),l("div",Ae,[e[30]||(e[30]=l("label",null,"题目知识点(必填):",-1)),m(l("input",{type:"text","onUpdate:modelValue":e[9]||(e[9]=t=>b.value=t),style:{width:"320px"}},null,512),[[_,b.value]])]),l("div",Ne,[e[31]||(e[31]=l("label",null,"答题时间(选填,例:2026-03-16):",-1)),m(l("input",{type:"text","onUpdate:modelValue":e[10]||(e[10]=t=>w.value=t),style:{width:"150px"}},null,512),[[_,w.value]]),l("button",{class:"btn small",onClick:le},"填入今天")]),e[32]||(e[32]=l("div",{class:"section-label"},"题干内容(必填,支持插入图片;可使用 Ctrl+V 粘贴)",-1)),l("div",Be,[l("button",{class:"btn small",onClick:e[11]||(e[11]=t=>z(R.value))},"从本地选择图片")]),m(l("textarea",{ref_key:"mStemRef",ref:R,"onUpdate:modelValue":e[12]||(e[12]=t=>k.value=t),rows:"6",style:{width:"100%"},onPaste:e[13]||(e[13]=t=>H(t,"stem"))},null,544),[[_,k.value]]),e[33]||(e[33]=l("div",{class:"section-label"},"答案解析(必填,支持插入图片;可使用 Ctrl+V 粘贴)",-1)),l("div",Ee,[l("button",{class:"btn small",onClick:e[14]||(e[14]=t=>z(G.value))},"从本地选择图片")]),m(l("textarea",{ref_key:"mAnalysisRef",ref:G,"onUpdate:modelValue":e[15]||(e[15]=t=>x.value=t),rows:"5",style:{width:"100%"},onPaste:e[16]||(e[16]=t=>H(t,"analysis"))},null,544),[[_,x.value]])]),l("div",{class:"modal-footer"},[l("button",{class:"btn",onClick:ae},"继续添加"),l("button",{class:"btn primary",onClick:se},"确定返回")])])])):de("",!0)]))}},Re=me(Me,[["__scopeId","data-v-dfda1b64"]]);export{Re as default};
--- /dev/null
+import{b as oe,d as ue,c as r,a as l,w as m,v as S,F as D,r as j,j as ie,t as g,G as re,l as _,p as de,g as s,x as f,y as Z,h as K,H as ve,B as pe,o as d}from"./index-JKSCyc76.js";import{_ as me}from"./_plugin-vue_export-helper-DlAUqK2U.js";const fe={class:"content-area"},ce={class:"card"},ge={style:{display:"grid","grid-template-columns":"110px 240px 110px 240px",gap:"10px 14px","align-items":"center"}},ye=["value"],be=["value"],we=["value"],ke=["value"],xe=["value"],Se=["value"],$e={class:"card",style:{display:"flex",gap:"18px","align-items":"center","flex-wrap":"wrap"}},Ce=["disabled"],Te=["disabled"],Ve=["disabled"],De={key:0,class:"modal-mask"},je={class:"modal"},Ue={class:"modal-body"},qe={class:"form-row"},Ie={class:"form-row"},Ae={class:"form-row"},Ne={class:"form-row"},Be={class:"toolbar"},Ee={class:"toolbar"},Q="自组WORD范本.docx",Fe=`智学网文件解析请注意以下格式:
+!!请确定组卷网下载文件包括了【知识点】信息!!
+1. 题目开始格式:
+ 【错题】/【推题】【客观题】/【主观题】[题号]
+
+ 例如:
+ 【错题】【客观题】1.豌豆(雌雄同花)和玉米(雌雄同株异花)都是良好的遗传学材料。利用这两种材料进行遗传学实验时,操作正确的是( )
+
+2. 答案开始格式:
+ 【答案】[题号]
+
+ 例如:
+ 【答案】2.B
+ 【知识点】孟德尔一对相对性状的杂交实验
+ 【分析】孟德尔一对相对性状的杂交试验中,实现3:1的分离比必须同时满足的条件是:F1形成的配子数目相等且生活力相同,雌、雄配子结合的机会相等;F2不同的基因型的个体的存活率相等;等位基因间的显隐性关系是完全的;观察的子代样本数目足够多。
+
+请点击“确定”开始解析。
+`,Me={__name:"FileImport",setup(Oe){const X=pe(),h="/StudyBase/word-template.docx",v=s({subject:{options:[],default:""},source:{options:[],default:""},term:{options:[],default:""},stage:{options:[],default:""},origin:{options:[],default:""},type:{options:["错题","推题","补充提高"],default:"错题"}}),U=s(""),C=s(""),q=s("错题"),I=s(""),A=s(""),N=s(""),F=s(""),M=s(null),B=s(!1),p=s(null),O=s(!1),T=s(""),E=s("错题"),b=s(""),w=s(""),k=s(""),x=s(""),R=s(null),G=s(null),V=s(0),J=s("");function o(a){F.value+=`[${new Date().toTimeString().slice(0,8)}] ${a}
+`,ve(()=>{M.value&&(M.value.scrollTop=M.value.scrollHeight)})}function P(){return{subject:U.value,source:C.value,type:q.value,term:I.value,stage:A.value,origin:N.value}}function ee(){const a=P();if(!Object.values(a).every(Boolean)){f("请确保所有导入参数都已选择!");return}if(C.value==="组卷网"&&!Z(Fe))return;const e=document.createElement("input");e.type="file",e.accept=".docx",e.onchange=async()=>{const t=e.files[0];if(!t)return;F.value="",B.value=!0,p.value=null;const n=new FormData;n.append("file",t),n.append("subject",U.value),n.append("source",C.value),n.append("q_type",q.value),n.append("term",I.value),n.append("stage",A.value),n.append("origin",N.value);try{const u=await fetch("/StudyBase/api/import/parse",{method:"POST",body:n});if(!u.ok){let $=`HTTP ${u.status}`;try{const y=await u.json();typeof y.detail=="string"?$=y.detail:Array.isArray(y.detail)&&($=y.detail.map(L=>`${(L.loc||[]).slice(1).join(".")}: ${L.msg}`).join("; "))}catch{}o(`解析失败: ${$}`),p.value=null;return}const i=await u.json();for(const $ of i.log||[])o($.replace(/^\[\d{2}:\d{2}:\d{2}\]\s?/,""));i.error?p.value=null:i.questions?p.value=i.questions:p.value=null}catch(u){o(`解析过程中发生未预期错误: ${u.message}`),p.value=null}finally{B.value=!1}},e.click()}function te(){F.value="",o("正在手动添加试题..."),O.value=!0,T.value="",E.value="错题",b.value="",w.value="",k.value="",x.value="",V.value=0,J.value=new Date().toISOString().replace(/[-:TZ.]/g,"").slice(0,14)}function le(){const a=new Date,e=t=>String(t).padStart(2,"0");w.value=`${a.getFullYear()}-${e(a.getMonth()+1)}-${e(a.getDate())}`}async function ae(){if(!T.value){f("请先选择题目分类(客观题或主观题)。");return}if(!b.value.trim()){f("题目知识点为必填项。");return}if(!k.value.trim()){f("题干内容不能为空。");return}if(!x.value.trim()){f("答案解析不能为空。");return}const a=V.value+1;try{const e=await K("/import/manual-add",{category:T.value,q_type:E.value,kp_text:b.value.trim(),answer_time:w.value,stem_raw:k.value,analysis_raw:x.value,question_no:a,session_timestamp:J.value,meta:P()});c||(c=[]),c.push(e),V.value=a,o(`添加一条试题。当前已添加 ${V.value} 条。`),f("当前试题已保存,可以继续添加下一题。"),b.value="",w.value="",k.value="",x.value=""}catch(e){if(e.needConfirm){if(Z("答题时间格式不是标准日期(YYYY-MM-DD),仍要按原样保存吗?"))try{const t=await K("/import/manual-add",{category:T.value,q_type:E.value,kp_text:b.value.trim(),answer_time:w.value,stem_raw:k.value,analysis_raw:x.value,question_no:a,session_timestamp:J.value,meta:P(),force:!0});c.push(t),V.value=a,o(`添加一条试题。当前已添加 ${V.value} 条。`),f("当前试题已保存,可以继续添加下一题。"),b.value="",w.value="",k.value="",x.value=""}catch(t){f(t.message)}}else f(e.message)}}let c=[];function se(){o("手动添加试题窗口已关闭。"),O.value=!1,c&&c.length?(p.value=c,o(`手动添加已完成。共添加 ${c.length} 道题目。`),o(`
+--- 手动添加题目预览 ---`),o(JSON.stringify(c,null,4)),o(`--- 预览结束 ---
+`)):(p.value=null,o("手动添加已取消或未添加任何题目。")),c=[]}async function Y(a){const e=new FormData;e.append("file",a,a.name||"pasted.png");const t=await fetch("/StudyBase/api/import/upload-image",{method:"POST",body:e});if(!t.ok){let u="上传失败";try{u=(await t.json()).detail||u}catch{}throw new Error(u)}return(await t.json()).path}function W(a,e){if(a&&a.selectionStart!=null){const t=a.selectionStart,n=a.value;return a.value=n.slice(0,t)+e+n.slice(a.selectionEnd),a.value}return null}function z(a){const e=document.createElement("input");e.type="file",e.accept="image/png,image/jpeg,image/bmp,image/gif",e.onchange=async()=>{const t=e.files[0];if(t)try{const n=await Y(t),u=`[[IMG:${n}]]`,i=a;i&&(W(i,u),i.dispatchEvent(new Event("input"))),o(`已选取图片: ${n}`)}catch(n){f(n.message)}},e.click()}async function H(a,e){const t=a.clipboardData&&a.clipboardData.items;if(t){for(const n of t)if(n.type&&n.type.startsWith("image/")){a.preventDefault();const u=n.getAsFile();try{const i=await Y(u),$=`[[IMG:${i}]]`,y=e==="stem"?R.value:G.value;y&&(W(y,$),y.dispatchEvent(new Event("input"))),o(`从剪贴板插入图片: ${i}`)}catch(i){o(`保存剪贴板图片失败: ${i.message}`)}return}}}function ne(){p.value?(sessionStorage.setItem("sb_import_data",JSON.stringify(p.value)),sessionStorage.setItem("sb_import_meta",JSON.stringify({...P(),import_time:new Date().toLocaleString("sv-PR")})),X.push("/questions/import/preview")):f("请先解析文件或选择手动添加,没有可预览的数据。")}return oe(async()=>{v.value=await ue("/import/options"),U.value=v.value.subject.default,C.value=v.value.source.default,I.value=v.value.term.default,A.value=v.value.stage.default,N.value=v.value.origin.default,q.value=v.value.type.default}),(a,e)=>(d(),r("div",null,[e[35]||(e[35]=l("div",{class:"page-header"},[l("span",{class:"title"},"文件导入题目")],-1)),l("div",fe,[l("div",ce,[e[23]||(e[23]=l("div",{style:{"font-weight":"bold","margin-bottom":"10px"}},"导入参数设置",-1)),l("div",ge,[e[17]||(e[17]=l("label",null,"所属科目:",-1)),m(l("select",{"onUpdate:modelValue":e[0]||(e[0]=t=>U.value=t)},[(d(!0),r(D,null,j(v.value.subject.options,t=>(d(),r("option",{key:t,value:t},g(t),9,ye))),128))],512),[[S,U.value]]),e[18]||(e[18]=l("label",null,"学期:",-1)),m(l("select",{"onUpdate:modelValue":e[1]||(e[1]=t=>I.value=t)},[(d(!0),r(D,null,j(v.value.term.options,t=>(d(),r("option",{key:t,value:t},g(t),9,be))),128))],512),[[S,I.value]]),e[19]||(e[19]=l("label",null,"题目来源:",-1)),m(l("select",{"onUpdate:modelValue":e[2]||(e[2]=t=>C.value=t)},[(d(!0),r(D,null,j(v.value.source.options,t=>(d(),r("option",{key:t,value:t},g(t),9,we))),128))],512),[[S,C.value]]),e[20]||(e[20]=l("label",null,"阶段:",-1)),m(l("select",{"onUpdate:modelValue":e[3]||(e[3]=t=>A.value=t)},[(d(!0),r(D,null,j(v.value.stage.options,t=>(d(),r("option",{key:t,value:t},g(t),9,ke))),128))],512),[[S,A.value]]),e[21]||(e[21]=l("label",null,"题目类型:",-1)),m(l("select",{"onUpdate:modelValue":e[4]||(e[4]=t=>q.value=t)},[(d(!0),r(D,null,j(v.value.type.options,t=>(d(),r("option",{key:t,value:t},g(t),9,xe))),128))],512),[[S,q.value]]),e[22]||(e[22]=l("label",null,"题目出处:",-1)),m(l("select",{"onUpdate:modelValue":e[5]||(e[5]=t=>N.value=t)},[(d(!0),r(D,null,j(v.value.origin.options,t=>(d(),r("option",{key:t,value:t},g(t),9,Se))),128))],512),[[S,N.value]])])]),l("div",$e,[l("div",{style:{width:"100%","font-size":"13px",color:"#555","margin-bottom":"2px"}},[e[24]||(e[24]=ie(" 如需使用「自组 Word 模式」上传,请先下载模板并按格式填写: ",-1)),l("a",{href:h,download:Q,style:{color:"#4A90E2","text-decoration":"underline",cursor:"pointer"}},g(Q))]),l("button",{class:"btn",disabled:B.value,style:{"font-weight":"bold"},onClick:ee},g(B.value?"解析中...":"第一步:选择文件并解析"),9,Ce),l("button",{class:"btn orange",disabled:B.value,style:{"font-weight":"bold"},onClick:te},g(O.value?"手动添加中...":"第一步:手动添加试题"),9,Te),l("button",{class:"btn",disabled:!p.value,style:re([{"font-weight":"bold"},p.value?"":"color:#999;"]),onClick:ne}," 第二步:预览并确定导入 ",12,Ve),l("button",{class:"btn",style:{"margin-left":"auto"},onClick:e[6]||(e[6]=t=>a.$router.push("/questions"))},"返回")]),e[25]||(e[25]=l("div",{style:{"font-size":"13px",margin:"6px 2px"}},"解析进度与JSON预览:",-1)),l("div",{class:"log-box",ref_key:"logBox",ref:M},g(F.value),513)]),O.value?(d(),r("div",De,[l("div",je,[e[34]||(e[34]=l("div",{class:"modal-header"},"手动添加试题",-1)),l("div",Ue,[l("div",qe,[e[27]||(e[27]=l("label",null,"题目分类(必选):",-1)),m(l("select",{"onUpdate:modelValue":e[7]||(e[7]=t=>T.value=t)},[...e[26]||(e[26]=[l("option",{value:"",disabled:""},"请选择",-1),l("option",null,"客观题",-1),l("option",null,"主观题",-1)])],512),[[S,T.value]])]),l("div",Ie,[e[29]||(e[29]=l("label",null,"题目类型(必选):",-1)),m(l("select",{"onUpdate:modelValue":e[8]||(e[8]=t=>E.value=t)},[...e[28]||(e[28]=[l("option",null,"错题",-1),l("option",null,"推题",-1)])],512),[[S,E.value]])]),l("div",Ae,[e[30]||(e[30]=l("label",null,"题目知识点(必填):",-1)),m(l("input",{type:"text","onUpdate:modelValue":e[9]||(e[9]=t=>b.value=t),style:{width:"320px"}},null,512),[[_,b.value]])]),l("div",Ne,[e[31]||(e[31]=l("label",null,"答题时间(选填,例:2026-03-16):",-1)),m(l("input",{type:"text","onUpdate:modelValue":e[10]||(e[10]=t=>w.value=t),style:{width:"150px"}},null,512),[[_,w.value]]),l("button",{class:"btn small",onClick:le},"填入今天")]),e[32]||(e[32]=l("div",{class:"section-label"},"题干内容(必填,支持插入图片;可使用 Ctrl+V 粘贴)",-1)),l("div",Be,[l("button",{class:"btn small",onClick:e[11]||(e[11]=t=>z(R.value))},"从本地选择图片")]),m(l("textarea",{ref_key:"mStemRef",ref:R,"onUpdate:modelValue":e[12]||(e[12]=t=>k.value=t),rows:"6",style:{width:"100%"},onPaste:e[13]||(e[13]=t=>H(t,"stem"))},null,544),[[_,k.value]]),e[33]||(e[33]=l("div",{class:"section-label"},"答案解析(必填,支持插入图片;可使用 Ctrl+V 粘贴)",-1)),l("div",Ee,[l("button",{class:"btn small",onClick:e[14]||(e[14]=t=>z(G.value))},"从本地选择图片")]),m(l("textarea",{ref_key:"mAnalysisRef",ref:G,"onUpdate:modelValue":e[15]||(e[15]=t=>x.value=t),rows:"5",style:{width:"100%"},onPaste:e[16]||(e[16]=t=>H(t,"analysis"))},null,544),[[_,x.value]])]),l("div",{class:"modal-footer"},[l("button",{class:"btn",onClick:ae},"继续添加"),l("button",{class:"btn primary",onClick:se},"确定返回")])])])):de("",!0)]))}},Re=me(Me,[["__scopeId","data-v-dfda1b64"]]);export{Re as default};
--- /dev/null
+import{b as oe,d as ue,c as r,a as l,w as m,v as S,F as D,r as j,j as ie,t as g,G as re,m as _,q as de,g as s,y as f,z as Z,h as K,H as ve,u as pe,o as d}from"./index-DrsYg5hi.js";import{_ as me}from"./_plugin-vue_export-helper-DlAUqK2U.js";const fe={class:"content-area"},ce={class:"card"},ge={style:{display:"grid","grid-template-columns":"110px 240px 110px 240px",gap:"10px 14px","align-items":"center"}},ye=["value"],be=["value"],we=["value"],ke=["value"],xe=["value"],Se=["value"],$e={class:"card",style:{display:"flex",gap:"18px","align-items":"center","flex-wrap":"wrap"}},Ce=["disabled"],Te=["disabled"],Ve=["disabled"],De={key:0,class:"modal-mask"},je={class:"modal"},Ue={class:"modal-body"},qe={class:"form-row"},Ie={class:"form-row"},Ae={class:"form-row"},Ne={class:"form-row"},Ee={class:"toolbar"},Fe={class:"toolbar"},Q="自组WORD范本.docx",Me=`智学网文件解析请注意以下格式:
+!!请确定组卷网下载文件包括了【知识点】信息!!
+1. 题目开始格式:
+ 【错题】/【推题】【客观题】/【主观题】[题号]
+
+ 例如:
+ 【错题】【客观题】1.豌豆(雌雄同花)和玉米(雌雄同株异花)都是良好的遗传学材料。利用这两种材料进行遗传学实验时,操作正确的是( )
+
+2. 答案开始格式:
+ 【答案】[题号]
+
+ 例如:
+ 【答案】2.B
+ 【知识点】孟德尔一对相对性状的杂交实验
+ 【分析】孟德尔一对相对性状的杂交试验中,实现3:1的分离比必须同时满足的条件是:F1形成的配子数目相等且生活力相同,雌、雄配子结合的机会相等;F2不同的基因型的个体的存活率相等;等位基因间的显隐性关系是完全的;观察的子代样本数目足够多。
+
+请点击“确定”开始解析。
+`,Oe={__name:"FileImport",setup(Be){const X=pe(),h="/StudyBase/word-template.docx",v=s({subject:{options:[],default:""},source:{options:[],default:""},term:{options:[],default:""},stage:{options:[],default:""},origin:{options:[],default:""},type:{options:["错题","推题","补充提高"],default:"错题"}}),U=s(""),C=s(""),q=s("错题"),I=s(""),A=s(""),N=s(""),M=s(""),O=s(null),E=s(!1),p=s(null),B=s(!1),T=s(""),F=s("错题"),b=s(""),w=s(""),k=s(""),x=s(""),R=s(null),G=s(null),V=s(0),J=s("");function o(a){M.value+=`[${new Date().toTimeString().slice(0,8)}] ${a}
+`,ve(()=>{O.value&&(O.value.scrollTop=O.value.scrollHeight)})}function P(){return{subject:U.value,source:C.value,type:q.value,term:I.value,stage:A.value,origin:N.value}}function ee(){const a=P();if(!Object.values(a).every(Boolean)){f("请确保所有导入参数都已选择!");return}if(C.value==="组卷网"&&!Z(Me))return;const e=document.createElement("input");e.type="file",e.accept=".docx",e.onchange=async()=>{const t=e.files[0];if(!t)return;M.value="",E.value=!0,p.value=null;const n=new FormData;n.append("file",t),n.append("subject",U.value),n.append("source",C.value),n.append("q_type",q.value),n.append("term",I.value),n.append("stage",A.value),n.append("origin",N.value);try{const u=await fetch("/StudyBase/api/import/parse",{method:"POST",body:n});if(!u.ok){let $=`HTTP ${u.status}`;try{const y=await u.json();typeof y.detail=="string"?$=y.detail:Array.isArray(y.detail)&&($=y.detail.map(L=>`${(L.loc||[]).slice(1).join(".")}: ${L.msg}`).join("; "))}catch{}o(`解析失败: ${$}`),p.value=null;return}const i=await u.json();for(const $ of i.log||[])o($.replace(/^\[\d{2}:\d{2}:\d{2}\]\s?/,""));i.error?p.value=null:i.questions?p.value=i.questions:p.value=null}catch(u){o(`解析过程中发生未预期错误: ${u.message}`),p.value=null}finally{E.value=!1}},e.click()}function te(){M.value="",o("正在手动添加试题..."),B.value=!0,T.value="",F.value="错题",b.value="",w.value="",k.value="",x.value="",V.value=0,J.value=new Date().toISOString().replace(/[-:TZ.]/g,"").slice(0,14)}function le(){const a=new Date,e=t=>String(t).padStart(2,"0");w.value=`${a.getFullYear()}-${e(a.getMonth()+1)}-${e(a.getDate())}`}async function ae(){if(!T.value){f("请先选择题目分类(客观题或主观题)。");return}if(!b.value.trim()){f("题目知识点为必填项。");return}if(!k.value.trim()){f("题干内容不能为空。");return}if(!x.value.trim()){f("答案解析不能为空。");return}const a=V.value+1;try{const e=await K("/import/manual-add",{category:T.value,q_type:F.value,kp_text:b.value.trim(),answer_time:w.value,stem_raw:k.value,analysis_raw:x.value,question_no:a,session_timestamp:J.value,meta:P()});c||(c=[]),c.push(e),V.value=a,o(`添加一条试题。当前已添加 ${V.value} 条。`),f("当前试题已保存,可以继续添加下一题。"),b.value="",w.value="",k.value="",x.value=""}catch(e){if(e.needConfirm){if(Z("答题时间格式不是标准日期(YYYY-MM-DD),仍要按原样保存吗?"))try{const t=await K("/import/manual-add",{category:T.value,q_type:F.value,kp_text:b.value.trim(),answer_time:w.value,stem_raw:k.value,analysis_raw:x.value,question_no:a,session_timestamp:J.value,meta:P(),force:!0});c.push(t),V.value=a,o(`添加一条试题。当前已添加 ${V.value} 条。`),f("当前试题已保存,可以继续添加下一题。"),b.value="",w.value="",k.value="",x.value=""}catch(t){f(t.message)}}else f(e.message)}}let c=[];function se(){o("手动添加试题窗口已关闭。"),B.value=!1,c&&c.length?(p.value=c,o(`手动添加已完成。共添加 ${c.length} 道题目。`),o(`
+--- 手动添加题目预览 ---`),o(JSON.stringify(c,null,4)),o(`--- 预览结束 ---
+`)):(p.value=null,o("手动添加已取消或未添加任何题目。")),c=[]}async function Y(a){const e=new FormData;e.append("file",a,a.name||"pasted.png");const t=await fetch("/StudyBase/api/import/upload-image",{method:"POST",body:e});if(!t.ok){let u="上传失败";try{u=(await t.json()).detail||u}catch{}throw new Error(u)}return(await t.json()).path}function z(a,e){if(a&&a.selectionStart!=null){const t=a.selectionStart,n=a.value;return a.value=n.slice(0,t)+e+n.slice(a.selectionEnd),a.value}return null}function W(a){const e=document.createElement("input");e.type="file",e.accept="image/png,image/jpeg,image/bmp,image/gif",e.onchange=async()=>{const t=e.files[0];if(t)try{const n=await Y(t),u=`[[IMG:${n}]]`,i=a;i&&(z(i,u),i.dispatchEvent(new Event("input"))),o(`已选取图片: ${n}`)}catch(n){f(n.message)}},e.click()}async function H(a,e){const t=a.clipboardData&&a.clipboardData.items;if(t){for(const n of t)if(n.type&&n.type.startsWith("image/")){a.preventDefault();const u=n.getAsFile();try{const i=await Y(u),$=`[[IMG:${i}]]`,y=e==="stem"?R.value:G.value;y&&(z(y,$),y.dispatchEvent(new Event("input"))),o(`从剪贴板插入图片: ${i}`)}catch(i){o(`保存剪贴板图片失败: ${i.message}`)}return}}}function ne(){p.value?(sessionStorage.setItem("sb_import_data",JSON.stringify(p.value)),sessionStorage.setItem("sb_import_meta",JSON.stringify({...P(),import_time:new Date().toLocaleString("sv-PR")})),X.push("/questions/import/preview")):f("请先解析文件或选择手动添加,没有可预览的数据。")}return oe(async()=>{v.value=await ue("/import/options"),U.value=v.value.subject.default,C.value=v.value.source.default,I.value=v.value.term.default,A.value=v.value.stage.default,N.value=v.value.origin.default,q.value=v.value.type.default}),(a,e)=>(d(),r("div",null,[e[35]||(e[35]=l("div",{class:"page-header"},[l("span",{class:"title"},"文件导入题目")],-1)),l("div",fe,[l("div",ce,[e[23]||(e[23]=l("div",{style:{"font-weight":"bold","margin-bottom":"10px"}},"导入参数设置",-1)),l("div",ge,[e[17]||(e[17]=l("label",null,"所属科目:",-1)),m(l("select",{"onUpdate:modelValue":e[0]||(e[0]=t=>U.value=t)},[(d(!0),r(D,null,j(v.value.subject.options,t=>(d(),r("option",{key:t,value:t},g(t),9,ye))),128))],512),[[S,U.value]]),e[18]||(e[18]=l("label",null,"学期:",-1)),m(l("select",{"onUpdate:modelValue":e[1]||(e[1]=t=>I.value=t)},[(d(!0),r(D,null,j(v.value.term.options,t=>(d(),r("option",{key:t,value:t},g(t),9,be))),128))],512),[[S,I.value]]),e[19]||(e[19]=l("label",null,"题目来源:",-1)),m(l("select",{"onUpdate:modelValue":e[2]||(e[2]=t=>C.value=t)},[(d(!0),r(D,null,j(v.value.source.options,t=>(d(),r("option",{key:t,value:t},g(t),9,we))),128))],512),[[S,C.value]]),e[20]||(e[20]=l("label",null,"阶段:",-1)),m(l("select",{"onUpdate:modelValue":e[3]||(e[3]=t=>A.value=t)},[(d(!0),r(D,null,j(v.value.stage.options,t=>(d(),r("option",{key:t,value:t},g(t),9,ke))),128))],512),[[S,A.value]]),e[21]||(e[21]=l("label",null,"题目类型:",-1)),m(l("select",{"onUpdate:modelValue":e[4]||(e[4]=t=>q.value=t)},[(d(!0),r(D,null,j(v.value.type.options,t=>(d(),r("option",{key:t,value:t},g(t),9,xe))),128))],512),[[S,q.value]]),e[22]||(e[22]=l("label",null,"题目出处:",-1)),m(l("select",{"onUpdate:modelValue":e[5]||(e[5]=t=>N.value=t)},[(d(!0),r(D,null,j(v.value.origin.options,t=>(d(),r("option",{key:t,value:t},g(t),9,Se))),128))],512),[[S,N.value]])])]),l("div",$e,[l("div",{style:{width:"100%","font-size":"13px",color:"#555","margin-bottom":"2px"}},[e[24]||(e[24]=ie(" 如需使用「自组 Word 模式」上传,请先下载模板并按格式填写: ",-1)),l("a",{href:h,download:Q,style:{color:"#4A90E2","text-decoration":"underline",cursor:"pointer"}},g(Q))]),l("button",{class:"btn",disabled:E.value,style:{"font-weight":"bold"},onClick:ee},g(E.value?"解析中...":"第一步:选择文件并解析"),9,Ce),l("button",{class:"btn orange",disabled:E.value,style:{"font-weight":"bold"},onClick:te},g(B.value?"手动添加中...":"第一步:手动添加试题"),9,Te),l("button",{class:"btn",disabled:!p.value,style:re([{"font-weight":"bold"},p.value?"":"color:#999;"]),onClick:ne}," 第二步:预览并确定导入 ",12,Ve),l("button",{class:"btn",style:{"margin-left":"auto"},onClick:e[6]||(e[6]=t=>a.$router.push("/questions"))},"返回")]),e[25]||(e[25]=l("div",{style:{"font-size":"13px",margin:"6px 2px"}},"解析进度与JSON预览:",-1)),l("div",{class:"log-box",ref_key:"logBox",ref:O},g(M.value),513)]),B.value?(d(),r("div",De,[l("div",je,[e[34]||(e[34]=l("div",{class:"modal-header"},"手动添加试题",-1)),l("div",Ue,[l("div",qe,[e[27]||(e[27]=l("label",null,"题目分类(必选):",-1)),m(l("select",{"onUpdate:modelValue":e[7]||(e[7]=t=>T.value=t)},[...e[26]||(e[26]=[l("option",{value:"",disabled:""},"请选择",-1),l("option",null,"客观题",-1),l("option",null,"主观题",-1)])],512),[[S,T.value]])]),l("div",Ie,[e[29]||(e[29]=l("label",null,"题目类型(必选):",-1)),m(l("select",{"onUpdate:modelValue":e[8]||(e[8]=t=>F.value=t)},[...e[28]||(e[28]=[l("option",null,"错题",-1),l("option",null,"推题",-1)])],512),[[S,F.value]])]),l("div",Ae,[e[30]||(e[30]=l("label",null,"题目知识点(必填):",-1)),m(l("input",{type:"text","onUpdate:modelValue":e[9]||(e[9]=t=>b.value=t),style:{width:"320px"}},null,512),[[_,b.value]])]),l("div",Ne,[e[31]||(e[31]=l("label",null,"答题时间(选填,例:2026-03-16):",-1)),m(l("input",{type:"text","onUpdate:modelValue":e[10]||(e[10]=t=>w.value=t),style:{width:"150px"}},null,512),[[_,w.value]]),l("button",{class:"btn small",onClick:le},"填入今天")]),e[32]||(e[32]=l("div",{class:"section-label"},"题干内容(必填,支持插入图片;可使用 Ctrl+V 粘贴)",-1)),l("div",Ee,[l("button",{class:"btn small",onClick:e[11]||(e[11]=t=>W(R.value))},"从本地选择图片")]),m(l("textarea",{ref_key:"mStemRef",ref:R,"onUpdate:modelValue":e[12]||(e[12]=t=>k.value=t),rows:"6",style:{width:"100%"},onPaste:e[13]||(e[13]=t=>H(t,"stem"))},null,544),[[_,k.value]]),e[33]||(e[33]=l("div",{class:"section-label"},"答案解析(必填,支持插入图片;可使用 Ctrl+V 粘贴)",-1)),l("div",Fe,[l("button",{class:"btn small",onClick:e[14]||(e[14]=t=>W(G.value))},"从本地选择图片")]),m(l("textarea",{ref_key:"mAnalysisRef",ref:G,"onUpdate:modelValue":e[15]||(e[15]=t=>x.value=t),rows:"5",style:{width:"100%"},onPaste:e[16]||(e[16]=t=>H(t,"analysis"))},null,544),[[_,x.value]])]),l("div",{class:"modal-footer"},[l("button",{class:"btn",onClick:ae},"继续添加"),l("button",{class:"btn primary",onClick:se},"确定返回")])])])):de("",!0)]))}},Re=me(Oe,[["__scopeId","data-v-dfda1b64"]]);export{Re as default};
--- /dev/null
+import{_ as n}from"./_plugin-vue_export-helper-DlAUqK2U.js";import{c as r,a as t,o as l}from"./index-Bkq7kiH8.js";const a={},i={class:"home"},u={class:"btn-frame"};function p(o,s){return l(),r("div",i,[s[4]||(s[4]=t("div",{class:"header"},[t("span",{class:"title"},"错题智能整理系统")],-1)),t("div",u,[t("button",{class:"main-btn",style:{color:"#1A73E8"},onClick:s[0]||(s[0]=e=>o.$router.push("/subject-portal"))},"① 科目面板"),t("button",{class:"main-btn",style:{color:"#28A745"},onClick:s[1]||(s[1]=e=>o.$router.push("/questions"))},"② 题目管理"),t("button",{class:"main-btn",style:{color:"#E67E22"},onClick:s[2]||(s[2]=e=>o.$router.push("/papers"))},"③ 试卷管理"),t("button",{class:"main-btn",style:{color:"#6C757D"},onClick:s[3]||(s[3]=e=>o.$router.push("/settings"))},"④ 系统设定")])])}const b=n(a,[["render",p],["__scopeId","data-v-0c1f45b2"]]);export{b as default};
--- /dev/null
+import{_ as n}from"./_plugin-vue_export-helper-DlAUqK2U.js";import{c as r,a as t,o as l}from"./index-JKSCyc76.js";const a={},i={class:"home"},u={class:"btn-frame"};function p(o,s){return l(),r("div",i,[s[4]||(s[4]=t("div",{class:"header"},[t("span",{class:"title"},"错题智能整理系统")],-1)),t("div",u,[t("button",{class:"main-btn",style:{color:"#1A73E8"},onClick:s[0]||(s[0]=e=>o.$router.push("/subject-portal"))},"① 科目面板"),t("button",{class:"main-btn",style:{color:"#28A745"},onClick:s[1]||(s[1]=e=>o.$router.push("/questions"))},"② 题目管理"),t("button",{class:"main-btn",style:{color:"#E67E22"},onClick:s[2]||(s[2]=e=>o.$router.push("/papers"))},"③ 试卷管理"),t("button",{class:"main-btn",style:{color:"#6C757D"},onClick:s[3]||(s[3]=e=>o.$router.push("/settings"))},"④ 系统设定")])])}const b=n(a,[["render",p],["__scopeId","data-v-0c1f45b2"]]);export{b as default};
--- /dev/null
+import{_ as n}from"./_plugin-vue_export-helper-DlAUqK2U.js";import{c as r,a as t,o as l}from"./index-DrsYg5hi.js";const a={},i={class:"home"},u={class:"btn-frame"};function p(o,s){return l(),r("div",i,[s[4]||(s[4]=t("div",{class:"header"},[t("span",{class:"title"},"错题智能整理系统")],-1)),t("div",u,[t("button",{class:"main-btn",style:{color:"#1A73E8"},onClick:s[0]||(s[0]=e=>o.$router.push("/subject-portal"))},"① 科目面板"),t("button",{class:"main-btn",style:{color:"#28A745"},onClick:s[1]||(s[1]=e=>o.$router.push("/questions"))},"② 题目管理"),t("button",{class:"main-btn",style:{color:"#E67E22"},onClick:s[2]||(s[2]=e=>o.$router.push("/papers"))},"③ 试卷管理"),t("button",{class:"main-btn",style:{color:"#6C757D"},onClick:s[3]||(s[3]=e=>o.$router.push("/settings"))},"④ 系统设定")])])}const b=n(a,[["render",p],["__scopeId","data-v-0c1f45b2"]]);export{b as default};
--- /dev/null
+import{b as C,c as l,a as t,p as c,F as I,r as N,t as n,g as v,y as b,x as _,h as S,B as V,o as r,w as f,l as y,E as x}from"./index-Bkq7kiH8.js";import{R as h}from"./RichContent-BjLjzWA-.js";import{_ as E}from"./_plugin-vue_export-helper-DlAUqK2U.js";const z={class:"content-area",style:{"padding-bottom":"90px"}},B={key:0,class:"card",style:{"text-align":"center",padding:"50px"}},D={style:{"font-weight":"bold",color:"#1976D2","font-size":"13px","border-bottom":"1px solid #E8E8E8","padding-bottom":"6px","margin-bottom":"8px"}},U={class:"meta-grid"},q={style:{display:"flex",gap:"8px","align-items":"flex-start",margin:"10px 0"}},P=["onUpdate:modelValue"],R={style:{background:"#FAFAFA",padding:"10px","border-radius":"3px",margin:"4px 0"}},$={key:0,style:{color:"#999"}},J={style:{background:"#FAFAFA",padding:"10px","border-radius":"3px",margin:"4px 0"}},M={key:0,style:{color:"#999"}},O={style:{display:"flex","align-items":"center",gap:"8px","margin-top":"10px"}},T=["onUpdate:modelValue"],L=["onClick"],Q=["onClick"],j={class:"bottom-bar"},G=["disabled"],H={key:0,class:"save-toast"},K={class:"save-text"},W={__name:"ImportPreview",setup(X){const m=V(),a=v([]),g=v({}),p=v({}),i=v(!1);C(()=>{try{a.value=JSON.parse(sessionStorage.getItem("sb_import_data")||"[]"),g.value=JSON.parse(sessionStorage.getItem("sb_import_meta")||"{}")}catch{a.value=[]}});function k(o){const s=(p.value[o]||"").trim();if(!s)return;const e=parseInt(s);if(isNaN(e)){_("请输入整数");return}a.value[o].是否有小题=e>0,a.value[o].小题个数=e,p.value[o]=""}function w(o){b("确定删除此题吗?")&&a.value.splice(o,1)}function F(){b("确定返回吗?所有未入库的修改将丢失!")&&m.push("/questions/import")}async function A(){if(!i.value){if(!a.value.length){_("没有题目可以入库。");return}i.value=!0;try{const o=await S("/import/save",{questions:a.value,meta:g.value});_(`成功入库 ${o.inserted} 道题目并建立知识点关联`),sessionStorage.removeItem("sb_import_data"),sessionStorage.removeItem("sb_import_meta"),m.push("/questions")}catch(o){_(o.message)}finally{i.value=!1}}}return(o,s)=>(r(),l("div",null,[s[5]||(s[5]=t("div",{class:"page-header"},[t("span",{class:"title"},"导入题目预览与确认")],-1)),t("div",z,[a.value.length?c("",!0):(r(),l("div",B,"暂无题目数据")),(r(!0),l(I,null,N(a.value,(e,d)=>(r(),l("div",{key:d,class:"card"},[t("div",D," 题号: "+n(e.题号),1),t("div",U,[t("span",null,"科目: "+n(e.科目),1),t("span",null,"类型: "+n(e.题目类型),1),t("span",null,"来源: "+n(e.题目来源),1),t("span",null,"答题时间: "+n(e.答题时间),1),t("span",null,"科目分类: "+n(e.题目分类),1),t("span",null,"输入时间: "+n(e.输入时间),1),t("span",null,"有无小题: "+n(e.是否有小题?"是":"否"),1),t("span",null,"小题个数: "+n(e.小题个数||0),1),t("span",null,"题目分值: "+n(e.分值!==void 0?e.分值:"未设置"),1)]),t("div",q,[s[0]||(s[0]=t("label",{style:{"font-weight":"bold","font-size":"13px","white-space":"nowrap","margin-top":"4px"}},"知识点:",-1)),f(t("textarea",{"onUpdate:modelValue":u=>e.题目知识点=u,rows:"2",style:{flex:"1",background:"#FAFAFA",border:"1px solid #eee"}},null,8,P),[[y,e.题目知识点]])]),s[2]||(s[2]=t("div",{style:{"font-weight":"bold","font-size":"13px"}},"【题干内容】",-1)),t("div",R,[x(h,{content:e.题干内容||"","max-width":750},null,8,["content"]),e.题干内容?c("",!0):(r(),l("div",$,"(无内容)"))]),s[3]||(s[3]=t("div",{style:{"font-weight":"bold","font-size":"13px",color:"#2E7D32"}},"【答案解析】",-1)),t("div",J,[x(h,{content:e.答案解析||"","max-width":750},null,8,["content"]),e.答案解析?c("",!0):(r(),l("div",M,"(无内容)"))]),t("div",O,[s[1]||(s[1]=t("label",{style:{"font-size":"13px"}},"小题个数:",-1)),f(t("input",{type:"text","onUpdate:modelValue":u=>p.value[d]=u,style:{width:"60px"}},null,8,T),[[y,p.value[d]]]),t("button",{class:"btn small",onClick:u=>k(d)},"确认修改",8,L),t("button",{class:"btn small",style:{color:"red"},onClick:u=>w(d)},"删除此题",8,Q)])]))),128))]),t("div",j,[t("button",{class:"btn",onClick:F},"返回修改"),t("button",{class:"btn primary",style:{"font-weight":"bold"},disabled:i.value,onClick:A},"确认全部入库",8,G)]),i.value?(r(),l("div",H,[s[4]||(s[4]=t("div",{class:"save-spinner"},null,-1)),t("div",K,n(a.value.length)+" 道试题正在入库中",1)])):c("",!0)]))}},et=E(W,[["__scopeId","data-v-cc70e3ae"]]);export{et as default};
--- /dev/null
+import{b as C,c as l,a as t,q as c,F as I,r as N,t as n,g as v,z as b,y as _,h as S,u as V,o as r,w as f,m as y,E as x}from"./index-DrsYg5hi.js";import{R as h}from"./RichContent-qk-bdTKE.js";import{_ as z}from"./_plugin-vue_export-helper-DlAUqK2U.js";const E={class:"content-area",style:{"padding-bottom":"90px"}},D={key:0,class:"card",style:{"text-align":"center",padding:"50px"}},q={style:{"font-weight":"bold",color:"#1976D2","font-size":"13px","border-bottom":"1px solid #E8E8E8","padding-bottom":"6px","margin-bottom":"8px"}},B={class:"meta-grid"},U={style:{display:"flex",gap:"8px","align-items":"flex-start",margin:"10px 0"}},P=["onUpdate:modelValue"],R={style:{background:"#FAFAFA",padding:"10px","border-radius":"3px",margin:"4px 0"}},$={key:0,style:{color:"#999"}},J={style:{background:"#FAFAFA",padding:"10px","border-radius":"3px",margin:"4px 0"}},M={key:0,style:{color:"#999"}},O={style:{display:"flex","align-items":"center",gap:"8px","margin-top":"10px"}},T=["onUpdate:modelValue"],L=["onClick"],Q=["onClick"],j={class:"bottom-bar"},G=["disabled"],H={key:0,class:"save-toast"},K={class:"save-text"},W={__name:"ImportPreview",setup(X){const m=V(),a=v([]),g=v({}),p=v({}),i=v(!1);C(()=>{try{a.value=JSON.parse(sessionStorage.getItem("sb_import_data")||"[]"),g.value=JSON.parse(sessionStorage.getItem("sb_import_meta")||"{}")}catch{a.value=[]}});function k(o){const s=(p.value[o]||"").trim();if(!s)return;const e=parseInt(s);if(isNaN(e)){_("请输入整数");return}a.value[o].是否有小题=e>0,a.value[o].小题个数=e,p.value[o]=""}function w(o){b("确定删除此题吗?")&&a.value.splice(o,1)}function F(){b("确定返回吗?所有未入库的修改将丢失!")&&m.push("/questions/import")}async function A(){if(!i.value){if(!a.value.length){_("没有题目可以入库。");return}i.value=!0;try{const o=await S("/import/save",{questions:a.value,meta:g.value});_(`成功入库 ${o.inserted} 道题目并建立知识点关联`),sessionStorage.removeItem("sb_import_data"),sessionStorage.removeItem("sb_import_meta"),m.push("/questions")}catch(o){_(o.message)}finally{i.value=!1}}}return(o,s)=>(r(),l("div",null,[s[5]||(s[5]=t("div",{class:"page-header"},[t("span",{class:"title"},"导入题目预览与确认")],-1)),t("div",E,[a.value.length?c("",!0):(r(),l("div",D,"暂无题目数据")),(r(!0),l(I,null,N(a.value,(e,d)=>(r(),l("div",{key:d,class:"card"},[t("div",q," 题号: "+n(e.题号),1),t("div",B,[t("span",null,"科目: "+n(e.科目),1),t("span",null,"类型: "+n(e.题目类型),1),t("span",null,"来源: "+n(e.题目来源),1),t("span",null,"答题时间: "+n(e.答题时间),1),t("span",null,"科目分类: "+n(e.题目分类),1),t("span",null,"输入时间: "+n(e.输入时间),1),t("span",null,"有无小题: "+n(e.是否有小题?"是":"否"),1),t("span",null,"小题个数: "+n(e.小题个数||0),1),t("span",null,"题目分值: "+n(e.分值!==void 0?e.分值:"未设置"),1)]),t("div",U,[s[0]||(s[0]=t("label",{style:{"font-weight":"bold","font-size":"13px","white-space":"nowrap","margin-top":"4px"}},"知识点:",-1)),f(t("textarea",{"onUpdate:modelValue":u=>e.题目知识点=u,rows:"2",style:{flex:"1",background:"#FAFAFA",border:"1px solid #eee"}},null,8,P),[[y,e.题目知识点]])]),s[2]||(s[2]=t("div",{style:{"font-weight":"bold","font-size":"13px"}},"【题干内容】",-1)),t("div",R,[x(h,{content:e.题干内容||"","max-width":750},null,8,["content"]),e.题干内容?c("",!0):(r(),l("div",$,"(无内容)"))]),s[3]||(s[3]=t("div",{style:{"font-weight":"bold","font-size":"13px",color:"#2E7D32"}},"【答案解析】",-1)),t("div",J,[x(h,{content:e.答案解析||"","max-width":750},null,8,["content"]),e.答案解析?c("",!0):(r(),l("div",M,"(无内容)"))]),t("div",O,[s[1]||(s[1]=t("label",{style:{"font-size":"13px"}},"小题个数:",-1)),f(t("input",{type:"text","onUpdate:modelValue":u=>p.value[d]=u,style:{width:"60px"}},null,8,T),[[y,p.value[d]]]),t("button",{class:"btn small",onClick:u=>k(d)},"确认修改",8,L),t("button",{class:"btn small",style:{color:"red"},onClick:u=>w(d)},"删除此题",8,Q)])]))),128))]),t("div",j,[t("button",{class:"btn",onClick:F},"返回修改"),t("button",{class:"btn primary",style:{"font-weight":"bold"},disabled:i.value,onClick:A},"确认全部入库",8,G)]),i.value?(r(),l("div",H,[s[4]||(s[4]=t("div",{class:"save-spinner"},null,-1)),t("div",K,n(a.value.length)+" 道试题正在入库中",1)])):c("",!0)]))}},et=z(W,[["__scopeId","data-v-cc70e3ae"]]);export{et as default};
--- /dev/null
+import{b as C,c as l,a as t,p as c,F as I,r as N,t as n,g as v,y as b,x as _,h as S,B as V,o as r,w as f,l as y,E as x}from"./index-JKSCyc76.js";import{R as h}from"./RichContent-rL8svEOV.js";import{_ as E}from"./_plugin-vue_export-helper-DlAUqK2U.js";const z={class:"content-area",style:{"padding-bottom":"90px"}},B={key:0,class:"card",style:{"text-align":"center",padding:"50px"}},D={style:{"font-weight":"bold",color:"#1976D2","font-size":"13px","border-bottom":"1px solid #E8E8E8","padding-bottom":"6px","margin-bottom":"8px"}},U={class:"meta-grid"},q={style:{display:"flex",gap:"8px","align-items":"flex-start",margin:"10px 0"}},P=["onUpdate:modelValue"],R={style:{background:"#FAFAFA",padding:"10px","border-radius":"3px",margin:"4px 0"}},$={key:0,style:{color:"#999"}},J={style:{background:"#FAFAFA",padding:"10px","border-radius":"3px",margin:"4px 0"}},M={key:0,style:{color:"#999"}},O={style:{display:"flex","align-items":"center",gap:"8px","margin-top":"10px"}},T=["onUpdate:modelValue"],L=["onClick"],Q=["onClick"],j={class:"bottom-bar"},G=["disabled"],H={key:0,class:"save-toast"},K={class:"save-text"},W={__name:"ImportPreview",setup(X){const m=V(),a=v([]),g=v({}),p=v({}),i=v(!1);C(()=>{try{a.value=JSON.parse(sessionStorage.getItem("sb_import_data")||"[]"),g.value=JSON.parse(sessionStorage.getItem("sb_import_meta")||"{}")}catch{a.value=[]}});function k(o){const s=(p.value[o]||"").trim();if(!s)return;const e=parseInt(s);if(isNaN(e)){_("请输入整数");return}a.value[o].是否有小题=e>0,a.value[o].小题个数=e,p.value[o]=""}function w(o){b("确定删除此题吗?")&&a.value.splice(o,1)}function F(){b("确定返回吗?所有未入库的修改将丢失!")&&m.push("/questions/import")}async function A(){if(!i.value){if(!a.value.length){_("没有题目可以入库。");return}i.value=!0;try{const o=await S("/import/save",{questions:a.value,meta:g.value});_(`成功入库 ${o.inserted} 道题目并建立知识点关联`),sessionStorage.removeItem("sb_import_data"),sessionStorage.removeItem("sb_import_meta"),m.push("/questions")}catch(o){_(o.message)}finally{i.value=!1}}}return(o,s)=>(r(),l("div",null,[s[5]||(s[5]=t("div",{class:"page-header"},[t("span",{class:"title"},"导入题目预览与确认")],-1)),t("div",z,[a.value.length?c("",!0):(r(),l("div",B,"暂无题目数据")),(r(!0),l(I,null,N(a.value,(e,d)=>(r(),l("div",{key:d,class:"card"},[t("div",D," 题号: "+n(e.题号),1),t("div",U,[t("span",null,"科目: "+n(e.科目),1),t("span",null,"类型: "+n(e.题目类型),1),t("span",null,"来源: "+n(e.题目来源),1),t("span",null,"答题时间: "+n(e.答题时间),1),t("span",null,"科目分类: "+n(e.题目分类),1),t("span",null,"输入时间: "+n(e.输入时间),1),t("span",null,"有无小题: "+n(e.是否有小题?"是":"否"),1),t("span",null,"小题个数: "+n(e.小题个数||0),1),t("span",null,"题目分值: "+n(e.分值!==void 0?e.分值:"未设置"),1)]),t("div",q,[s[0]||(s[0]=t("label",{style:{"font-weight":"bold","font-size":"13px","white-space":"nowrap","margin-top":"4px"}},"知识点:",-1)),f(t("textarea",{"onUpdate:modelValue":u=>e.题目知识点=u,rows:"2",style:{flex:"1",background:"#FAFAFA",border:"1px solid #eee"}},null,8,P),[[y,e.题目知识点]])]),s[2]||(s[2]=t("div",{style:{"font-weight":"bold","font-size":"13px"}},"【题干内容】",-1)),t("div",R,[x(h,{content:e.题干内容||"","max-width":750},null,8,["content"]),e.题干内容?c("",!0):(r(),l("div",$,"(无内容)"))]),s[3]||(s[3]=t("div",{style:{"font-weight":"bold","font-size":"13px",color:"#2E7D32"}},"【答案解析】",-1)),t("div",J,[x(h,{content:e.答案解析||"","max-width":750},null,8,["content"]),e.答案解析?c("",!0):(r(),l("div",M,"(无内容)"))]),t("div",O,[s[1]||(s[1]=t("label",{style:{"font-size":"13px"}},"小题个数:",-1)),f(t("input",{type:"text","onUpdate:modelValue":u=>p.value[d]=u,style:{width:"60px"}},null,8,T),[[y,p.value[d]]]),t("button",{class:"btn small",onClick:u=>k(d)},"确认修改",8,L),t("button",{class:"btn small",style:{color:"red"},onClick:u=>w(d)},"删除此题",8,Q)])]))),128))]),t("div",j,[t("button",{class:"btn",onClick:F},"返回修改"),t("button",{class:"btn primary",style:{"font-weight":"bold"},disabled:i.value,onClick:A},"确认全部入库",8,G)]),i.value?(r(),l("div",H,[s[4]||(s[4]=t("div",{class:"save-spinner"},null,-1)),t("div",K,n(a.value.length)+" 道试题正在入库中",1)])):c("",!0)]))}},et=E(W,[["__scopeId","data-v-cc70e3ae"]]);export{et as default};
--- /dev/null
+import{c as p,a as e,w as d,l as u,g as m,x as o,d as g,y as c,B as f,o as v}from"./index-Bkq7kiH8.js";const x={class:"page-header"},y={class:"content-area",style:{"padding-top":"16px"}},w={__name:"PapersCreateById",setup(I){const r=f(),i=m("");async function l(){const s=i.value.trim();if(!s){o("请输入至少一个试题ID。");return}let t;try{const n=new URLSearchParams({ids:s});t=await g("/questions/validate-ids?"+n.toString())}catch(n){o(n.message);return}const a=t.valid_ids;t.missing_ids.length&&!c(`部分试题ID (${t.missing_ids.join(", ")}) 不存在于数据库中,是否继续只使用有效ID生成试卷?`)||(sessionStorage.setItem("sb_selected_ids",JSON.stringify(a)),r.push("/papers/preview"))}return(s,t)=>(v(),p("div",null,[e("div",x,[t[2]||(t[2]=e("span",{class:"title"},"根据ID生成试卷",-1)),e("button",{class:"btn",style:{"margin-left":"16px"},onClick:t[0]||(t[0]=a=>s.$router.push("/papers"))},"返回")]),e("div",y,[t[3]||(t[3]=e("div",{style:{"margin-bottom":"10px","font-size":"14px"}},"请输入试题ID(多个ID请用逗号、空格或换行符分隔):",-1)),d(e("textarea",{"onUpdate:modelValue":t[1]||(t[1]=a=>i.value=a),style:{width:"100%",height:"320px","font-family":"Consolas,monospace","font-size":"13px"}},null,512),[[u,i.value]]),e("div",{style:{"margin-top":"16px"}},[e("button",{class:"btn green",style:{"font-weight":"bold","font-size":"14px",padding:"10px 22px"},onClick:l},"生成试卷")])])]))}};export{w as default};
--- /dev/null
+import{c as p,a as e,w as d,l as u,g as m,x as o,d as g,y as c,B as f,o as v}from"./index-JKSCyc76.js";const x={class:"page-header"},y={class:"content-area",style:{"padding-top":"16px"}},w={__name:"PapersCreateById",setup(I){const r=f(),i=m("");async function l(){const s=i.value.trim();if(!s){o("请输入至少一个试题ID。");return}let t;try{const n=new URLSearchParams({ids:s});t=await g("/questions/validate-ids?"+n.toString())}catch(n){o(n.message);return}const a=t.valid_ids;t.missing_ids.length&&!c(`部分试题ID (${t.missing_ids.join(", ")}) 不存在于数据库中,是否继续只使用有效ID生成试卷?`)||(sessionStorage.setItem("sb_selected_ids",JSON.stringify(a)),r.push("/papers/preview"))}return(s,t)=>(v(),p("div",null,[e("div",x,[t[2]||(t[2]=e("span",{class:"title"},"根据ID生成试卷",-1)),e("button",{class:"btn",style:{"margin-left":"16px"},onClick:t[0]||(t[0]=a=>s.$router.push("/papers"))},"返回")]),e("div",y,[t[3]||(t[3]=e("div",{style:{"margin-bottom":"10px","font-size":"14px"}},"请输入试题ID(多个ID请用逗号、空格或换行符分隔):",-1)),d(e("textarea",{"onUpdate:modelValue":t[1]||(t[1]=a=>i.value=a),style:{width:"100%",height:"320px","font-family":"Consolas,monospace","font-size":"13px"}},null,512),[[u,i.value]]),e("div",{style:{"margin-top":"16px"}},[e("button",{class:"btn green",style:{"font-weight":"bold","font-size":"14px",padding:"10px 22px"},onClick:l},"生成试卷")])])]))}};export{w as default};
--- /dev/null
+import{c as p,a as e,w as d,m as u,g as m,y as o,d as g,z as c,u as f,o as v}from"./index-DrsYg5hi.js";const x={class:"page-header"},y={class:"content-area",style:{"padding-top":"16px"}},w={__name:"PapersCreateById",setup(I){const r=f(),i=m("");async function l(){const s=i.value.trim();if(!s){o("请输入至少一个试题ID。");return}let t;try{const n=new URLSearchParams({ids:s});t=await g("/questions/validate-ids?"+n.toString())}catch(n){o(n.message);return}const a=t.valid_ids;t.missing_ids.length&&!c(`部分试题ID (${t.missing_ids.join(", ")}) 不存在于数据库中,是否继续只使用有效ID生成试卷?`)||(sessionStorage.setItem("sb_selected_ids",JSON.stringify(a)),r.push("/papers/preview"))}return(s,t)=>(v(),p("div",null,[e("div",x,[t[2]||(t[2]=e("span",{class:"title"},"根据ID生成试卷",-1)),e("button",{class:"btn",style:{"margin-left":"16px"},onClick:t[0]||(t[0]=a=>s.$router.push("/papers"))},"返回")]),e("div",y,[t[3]||(t[3]=e("div",{style:{"margin-bottom":"10px","font-size":"14px"}},"请输入试题ID(多个ID请用逗号、空格或换行符分隔):",-1)),d(e("textarea",{"onUpdate:modelValue":t[1]||(t[1]=a=>i.value=a),style:{width:"100%",height:"320px","font-family":"Consolas,monospace","font-size":"13px"}},null,512),[[u,i.value]]),e("div",{style:{"margin-top":"16px"}},[e("button",{class:"btn green",style:{"font-weight":"bold","font-size":"14px",padding:"10px 22px"},onClick:l},"生成试卷")])])]))}};export{w as default};
--- /dev/null
+import{b as r,d as i,c as l,a as t,t as d,u,q as c,g as m,o as g}from"./index-JKSCyc76.js";const x={class:"page-header"},b={class:"title"},v={class:"content-area",style:{"padding-top":"30px","text-align":"center"}},y={__name:"PapersDetail",setup(_){const p=c(),a=parseInt(p.params.id),n=m("未命名");return r(async()=>{const e=await i(`/papers/${a}/basic`);n.value=e.paper_name}),(e,s)=>(g(),l("div",null,[t("div",x,[t("span",b,"试卷详情: "+d(n.value),1)]),t("div",v,[s[2]||(s[2]=t("p",{style:{margin:"30px 0","font-size":"15px"}},"这里是试卷题目配置与执行区域",-1)),t("button",{class:"btn",style:{width:"200px",padding:"10px",margin:"10px"},onClick:s[0]||(s[0]=o=>e.$router.push(`/papers/${u(a)}/result`))},"生成并查看结果反馈"),t("button",{class:"btn",style:{width:"200px",padding:"10px",margin:"10px"},onClick:s[1]||(s[1]=o=>e.$router.push("/papers"))},"返回列表")])]))}};export{y as default};
--- /dev/null
+import{b as r,d as i,c as l,a as t,t as d,l as u,s as c,g as m,o as g}from"./index-DrsYg5hi.js";const x={class:"page-header"},b={class:"title"},v={class:"content-area",style:{"padding-top":"30px","text-align":"center"}},y={__name:"PapersDetail",setup(_){const p=c(),a=parseInt(p.params.id),n=m("未命名");return r(async()=>{const e=await i(`/papers/${a}/basic`);n.value=e.paper_name}),(e,s)=>(g(),l("div",null,[t("div",x,[t("span",b,"试卷详情: "+d(n.value),1)]),t("div",v,[s[2]||(s[2]=t("p",{style:{margin:"30px 0","font-size":"15px"}},"这里是试卷题目配置与执行区域",-1)),t("button",{class:"btn",style:{width:"200px",padding:"10px",margin:"10px"},onClick:s[0]||(s[0]=o=>e.$router.push(`/papers/${u(a)}/result`))},"生成并查看结果反馈"),t("button",{class:"btn",style:{width:"200px",padding:"10px",margin:"10px"},onClick:s[1]||(s[1]=o=>e.$router.push("/papers"))},"返回列表")])]))}};export{y as default};
--- /dev/null
+import{b as r,d as i,c as l,a as t,t as d,u,q as c,g as m,o as g}from"./index-Bkq7kiH8.js";const x={class:"page-header"},b={class:"title"},v={class:"content-area",style:{"padding-top":"30px","text-align":"center"}},y={__name:"PapersDetail",setup(_){const p=c(),a=parseInt(p.params.id),n=m("未命名");return r(async()=>{const e=await i(`/papers/${a}/basic`);n.value=e.paper_name}),(e,s)=>(g(),l("div",null,[t("div",x,[t("span",b,"试卷详情: "+d(n.value),1)]),t("div",v,[s[2]||(s[2]=t("p",{style:{margin:"30px 0","font-size":"15px"}},"这里是试卷题目配置与执行区域",-1)),t("button",{class:"btn",style:{width:"200px",padding:"10px",margin:"10px"},onClick:s[0]||(s[0]=o=>e.$router.push(`/papers/${u(a)}/result`))},"生成并查看结果反馈"),t("button",{class:"btn",style:{width:"200px",padding:"10px",margin:"10px"},onClick:s[1]||(s[1]=o=>e.$router.push("/papers"))},"返回列表")])]))}};export{y as default};
--- /dev/null
+import{b as q,c as d,a as t,w as f,v as A,l as B,J as V,F as k,r as y,d as _,g as c,x as C,z as F,B as L,o as b,t as l,y as M,K}from"./index-JKSCyc76.js";import{_ as U}from"./_plugin-vue_export-helper-DlAUqK2U.js";const j={class:"page-header"},R={class:"filter-panel"},z={class:"content-area"},G={class:"card",style:{padding:"0",overflow:"auto"}},J={class:"data-table"},N=["onClick"],T={class:"center"},H=["onDblclick"],O={class:"center"},Q={class:"center"},W={class:"center"},X={class:"center"},Y={class:"center nowrap"},Z=["onClick"],tt=["onClick"],et=["onClick"],st=["onClick"],nt={__name:"PapersList",setup(at){const m=L(),p=c("未完成"),r=c(""),v=c([]),u=c("p.create_time"),o=c("DESC"),$=[{key:"id",label:"ID",db:"p.id"},{key:"name",label:"试卷名称",db:"p.paper_name"},{key:"subject",label:"科目",db:"p.subject"},{key:"count",label:"题数",db:"question_count"},{key:"time",label:"创建时间",db:"p.create_time"},{key:"status",label:"状态",db:"ps.status_name"},{key:"actions",label:"操作",db:null}];function g(n){return!n||n!==u.value?"":o.value==="ASC"?" ▲":" ▼"}function h(n){u.value===n?o.value=o.value==="ASC"?"DESC":"ASC":(u.value=n,o.value="ASC"),i()}function D(){r.value="",i()}async function i(){const n=new URLSearchParams({status:p.value,paper_id:r.value,sort_col:u.value,sort_dir:o.value}),s=await _("/papers/list?"+n.toString());v.value=s.rows}function x(n){m.push("/papers/preview?paper_id="+n)}function I(n){m.push(`/papers/${n}/result`)}async function w(n){const s=await _(`/papers/${n}/basic`),e=s.question_ids,a=s.paper_name,E=`确定要永久删除该试卷吗?
+
+试卷ID:${n}
+试卷名称:${a}
+题目数量:${e.length} 道
+
+注意:删除后将同步扣减相关题目的组卷及对错统计次数!`;M(E)&&(await K(`/papers/${n}`),await i())}async function S(n){const s=await _(`/papers/${n}/basic`);if(!s.question_ids.length){C(`试卷 ${n} 暂无题目,无法下载。`);return}const e=`/StudyBase/api/papers/${n}/download`,a=document.createElement("a");a.href=e,a.download=`${s.paper_name}.docx`.replace(/[\\/:*?"<>|]/g,"_"),document.body.appendChild(a),a.click(),a.remove()}async function P(){if(!v.value.length){C("当前列表没有数据可以导出");return}await F("/papers/list/export-excel",{status:p.value,paper_id:r.value,sort_col:u.value,sort_dir:o.value})}return q(i),(n,s)=>(b(),d("div",null,[t("div",j,[s[5]||(s[5]=t("span",{class:"title"},"试卷管理列表",-1)),t("button",{class:"btn",onClick:s[0]||(s[0]=e=>n.$router.push("/"))},"返回主页"),t("button",{class:"btn orange",style:{"margin-left":"10px"},onClick:s[1]||(s[1]=e=>n.$router.push("/papers/create-by-id"))},"💡 根据ID生成试卷"),t("button",{class:"btn green",style:{"margin-left":"10px"},onClick:s[2]||(s[2]=e=>n.$router.push("/questions?from_paper_creation=1"))},"➕ 进入题目列表选题")]),t("div",R,[s[7]||(s[7]=t("label",null,"试卷状态:",-1)),f(t("select",{"onUpdate:modelValue":s[3]||(s[3]=e=>p.value=e),onChange:D},[...s[6]||(s[6]=[t("option",null,"全部",-1),t("option",null,"未完成",-1),t("option",null,"已完成",-1),t("option",null,"部分完成",-1),t("option",null,"归档",-1)])],544),[[A,p.value]]),s[8]||(s[8]=t("label",{style:{"margin-left":"20px"}},"试卷ID:",-1)),f(t("input",{type:"text","onUpdate:modelValue":s[4]||(s[4]=e=>r.value=e),style:{width:"150px"},onKeyup:V(i,["enter"])},null,544),[[B,r.value]]),t("button",{class:"btn primary",style:{"margin-left":"10px"},onClick:i},"🔍 搜索"),t("button",{class:"btn orange",style:{"margin-left":"6px"},onClick:P},"📥 导出Excel")]),t("div",z,[t("div",G,[t("table",J,[t("thead",null,[t("tr",null,[(b(),d(k,null,y($,e=>t("th",{key:e.key,onClick:a=>e.db&&h(e.db)},l(e.label)+l(g(e.db)),9,N)),64))])]),t("tbody",null,[(b(!0),d(k,null,y(v.value,e=>(b(),d("tr",{key:e.ID},[t("td",T,l(e.ID),1),t("td",{onDblclick:a=>n.$router.push(`/papers/${e.ID}/detail`),style:{cursor:"pointer"}},l(e.试卷名称),41,H),t("td",O,l(e.科目),1),t("td",Q,l(e.题数),1),t("td",W,l((e.创建时间||"").slice(0,10)||"-"),1),t("td",X,l(e.状态),1),t("td",Y,[t("button",{class:"btn small",onClick:a=>x(e.ID)},"预览",8,Z),t("button",{class:"btn small",onClick:a=>I(e.ID)},"反馈",8,tt),t("button",{class:"btn small",onClick:a=>w(e.ID)},"删除",8,et),t("button",{class:"btn small",onClick:a=>S(e.ID)},"下载",8,st)])]))),128))])])])])]))}},it=U(nt,[["__scopeId","data-v-f5f938f7"]]);export{it as default};
--- /dev/null
+import{b as E,c as d,a as t,w as f,v as q,m as V,J as B,F as k,r as y,d as _,g as c,y as C,A as F,u as L,o as b,t as l,z as M,K}from"./index-DrsYg5hi.js";import{_ as U}from"./_plugin-vue_export-helper-DlAUqK2U.js";const j={class:"page-header"},R={class:"filter-panel"},z={class:"content-area"},G={class:"card",style:{padding:"0",overflow:"auto"}},J={class:"data-table"},N=["onClick"],T={class:"center"},H=["onDblclick"],O={class:"center"},Q={class:"center"},W={class:"center"},X={class:"center"},Y={class:"center nowrap"},Z=["onClick"],tt=["onClick"],et=["onClick"],st=["onClick"],nt={__name:"PapersList",setup(at){const m=L(),p=c("未完成"),r=c(""),v=c([]),u=c("p.create_time"),o=c("DESC"),$=[{key:"id",label:"ID",db:"p.id"},{key:"name",label:"试卷名称",db:"p.paper_name"},{key:"subject",label:"科目",db:"p.subject"},{key:"count",label:"题数",db:"question_count"},{key:"time",label:"创建时间",db:"p.create_time"},{key:"status",label:"状态",db:"ps.status_name"},{key:"actions",label:"操作",db:null}];function g(n){return!n||n!==u.value?"":o.value==="ASC"?" ▲":" ▼"}function h(n){u.value===n?o.value=o.value==="ASC"?"DESC":"ASC":(u.value=n,o.value="ASC"),i()}function D(){r.value="",i()}async function i(){const n=new URLSearchParams({status:p.value,paper_id:r.value,sort_col:u.value,sort_dir:o.value}),s=await _("/papers/list?"+n.toString());v.value=s.rows}function I(n){m.push("/papers/preview?paper_id="+n)}function x(n){m.push(`/papers/${n}/result`)}async function w(n){const s=await _(`/papers/${n}/basic`),e=s.question_ids,a=s.paper_name,A=`确定要永久删除该试卷吗?
+
+试卷ID:${n}
+试卷名称:${a}
+题目数量:${e.length} 道
+
+注意:删除后将同步扣减相关题目的组卷及对错统计次数!`;M(A)&&(await K(`/papers/${n}`),await i())}async function S(n){const s=await _(`/papers/${n}/basic`);if(!s.question_ids.length){C(`试卷 ${n} 暂无题目,无法下载。`);return}const e=`/StudyBase/api/papers/${n}/download`,a=document.createElement("a");a.href=e,a.download=`${s.paper_name}.docx`.replace(/[\\/:*?"<>|]/g,"_"),document.body.appendChild(a),a.click(),a.remove()}async function P(){if(!v.value.length){C("当前列表没有数据可以导出");return}await F("/papers/list/export-excel",{status:p.value,paper_id:r.value,sort_col:u.value,sort_dir:o.value})}return E(i),(n,s)=>(b(),d("div",null,[t("div",j,[s[5]||(s[5]=t("span",{class:"title"},"试卷管理列表",-1)),t("button",{class:"btn",onClick:s[0]||(s[0]=e=>n.$router.push("/"))},"返回主页"),t("button",{class:"btn orange",style:{"margin-left":"10px"},onClick:s[1]||(s[1]=e=>n.$router.push("/papers/create-by-id"))},"💡 根据ID生成试卷"),t("button",{class:"btn green",style:{"margin-left":"10px"},onClick:s[2]||(s[2]=e=>n.$router.push("/questions?from_paper_creation=1"))},"➕ 进入题目列表选题")]),t("div",R,[s[7]||(s[7]=t("label",null,"试卷状态:",-1)),f(t("select",{"onUpdate:modelValue":s[3]||(s[3]=e=>p.value=e),onChange:D},[...s[6]||(s[6]=[t("option",null,"全部",-1),t("option",null,"未完成",-1),t("option",null,"已完成",-1),t("option",null,"部分完成",-1),t("option",null,"归档",-1)])],544),[[q,p.value]]),s[8]||(s[8]=t("label",{style:{"margin-left":"20px"}},"试卷ID:",-1)),f(t("input",{type:"text","onUpdate:modelValue":s[4]||(s[4]=e=>r.value=e),style:{width:"150px"},onKeyup:B(i,["enter"])},null,544),[[V,r.value]]),t("button",{class:"btn primary",style:{"margin-left":"10px"},onClick:i},"🔍 搜索"),t("button",{class:"btn orange",style:{"margin-left":"6px"},onClick:P},"📥 导出Excel")]),t("div",z,[t("div",G,[t("table",J,[t("thead",null,[t("tr",null,[(b(),d(k,null,y($,e=>t("th",{key:e.key,onClick:a=>e.db&&h(e.db)},l(e.label)+l(g(e.db)),9,N)),64))])]),t("tbody",null,[(b(!0),d(k,null,y(v.value,e=>(b(),d("tr",{key:e.ID},[t("td",T,l(e.ID),1),t("td",{onDblclick:a=>n.$router.push(`/papers/${e.ID}/detail`),style:{cursor:"pointer"}},l(e.试卷名称),41,H),t("td",O,l(e.科目),1),t("td",Q,l(e.题数),1),t("td",W,l((e.创建时间||"").slice(0,10)||"-"),1),t("td",X,l(e.状态),1),t("td",Y,[t("button",{class:"btn small",onClick:a=>I(e.ID)},"预览",8,Z),t("button",{class:"btn small",onClick:a=>x(e.ID)},"反馈",8,tt),t("button",{class:"btn small",onClick:a=>w(e.ID)},"删除",8,et),t("button",{class:"btn small",onClick:a=>S(e.ID)},"下载",8,st)])]))),128))])])])])]))}},it=U(nt,[["__scopeId","data-v-f5f938f7"]]);export{it as default};
--- /dev/null
+import{b as q,c as d,a as t,w as f,v as A,l as B,J as V,F as k,r as y,d as _,g as c,x as C,z as F,B as L,o as b,t as l,y as M,K}from"./index-Bkq7kiH8.js";import{_ as U}from"./_plugin-vue_export-helper-DlAUqK2U.js";const j={class:"page-header"},R={class:"filter-panel"},z={class:"content-area"},G={class:"card",style:{padding:"0",overflow:"auto"}},J={class:"data-table"},N=["onClick"],T={class:"center"},H=["onDblclick"],O={class:"center"},Q={class:"center"},W={class:"center"},X={class:"center"},Y={class:"center nowrap"},Z=["onClick"],tt=["onClick"],et=["onClick"],st=["onClick"],nt={__name:"PapersList",setup(at){const m=L(),p=c("未完成"),r=c(""),v=c([]),u=c("p.create_time"),o=c("DESC"),$=[{key:"id",label:"ID",db:"p.id"},{key:"name",label:"试卷名称",db:"p.paper_name"},{key:"subject",label:"科目",db:"p.subject"},{key:"count",label:"题数",db:"question_count"},{key:"time",label:"创建时间",db:"p.create_time"},{key:"status",label:"状态",db:"ps.status_name"},{key:"actions",label:"操作",db:null}];function g(n){return!n||n!==u.value?"":o.value==="ASC"?" ▲":" ▼"}function h(n){u.value===n?o.value=o.value==="ASC"?"DESC":"ASC":(u.value=n,o.value="ASC"),i()}function D(){r.value="",i()}async function i(){const n=new URLSearchParams({status:p.value,paper_id:r.value,sort_col:u.value,sort_dir:o.value}),s=await _("/papers/list?"+n.toString());v.value=s.rows}function x(n){m.push("/papers/preview?paper_id="+n)}function I(n){m.push(`/papers/${n}/result`)}async function w(n){const s=await _(`/papers/${n}/basic`),e=s.question_ids,a=s.paper_name,E=`确定要永久删除该试卷吗?
+
+试卷ID:${n}
+试卷名称:${a}
+题目数量:${e.length} 道
+
+注意:删除后将同步扣减相关题目的组卷及对错统计次数!`;M(E)&&(await K(`/papers/${n}`),await i())}async function S(n){const s=await _(`/papers/${n}/basic`);if(!s.question_ids.length){C(`试卷 ${n} 暂无题目,无法下载。`);return}const e=`/StudyBase/api/papers/${n}/download`,a=document.createElement("a");a.href=e,a.download=`${s.paper_name}.docx`.replace(/[\\/:*?"<>|]/g,"_"),document.body.appendChild(a),a.click(),a.remove()}async function P(){if(!v.value.length){C("当前列表没有数据可以导出");return}await F("/papers/list/export-excel",{status:p.value,paper_id:r.value,sort_col:u.value,sort_dir:o.value})}return q(i),(n,s)=>(b(),d("div",null,[t("div",j,[s[5]||(s[5]=t("span",{class:"title"},"试卷管理列表",-1)),t("button",{class:"btn",onClick:s[0]||(s[0]=e=>n.$router.push("/"))},"返回主页"),t("button",{class:"btn orange",style:{"margin-left":"10px"},onClick:s[1]||(s[1]=e=>n.$router.push("/papers/create-by-id"))},"💡 根据ID生成试卷"),t("button",{class:"btn green",style:{"margin-left":"10px"},onClick:s[2]||(s[2]=e=>n.$router.push("/questions?from_paper_creation=1"))},"➕ 进入题目列表选题")]),t("div",R,[s[7]||(s[7]=t("label",null,"试卷状态:",-1)),f(t("select",{"onUpdate:modelValue":s[3]||(s[3]=e=>p.value=e),onChange:D},[...s[6]||(s[6]=[t("option",null,"全部",-1),t("option",null,"未完成",-1),t("option",null,"已完成",-1),t("option",null,"部分完成",-1),t("option",null,"归档",-1)])],544),[[A,p.value]]),s[8]||(s[8]=t("label",{style:{"margin-left":"20px"}},"试卷ID:",-1)),f(t("input",{type:"text","onUpdate:modelValue":s[4]||(s[4]=e=>r.value=e),style:{width:"150px"},onKeyup:V(i,["enter"])},null,544),[[B,r.value]]),t("button",{class:"btn primary",style:{"margin-left":"10px"},onClick:i},"🔍 搜索"),t("button",{class:"btn orange",style:{"margin-left":"6px"},onClick:P},"📥 导出Excel")]),t("div",z,[t("div",G,[t("table",J,[t("thead",null,[t("tr",null,[(b(),d(k,null,y($,e=>t("th",{key:e.key,onClick:a=>e.db&&h(e.db)},l(e.label)+l(g(e.db)),9,N)),64))])]),t("tbody",null,[(b(!0),d(k,null,y(v.value,e=>(b(),d("tr",{key:e.ID},[t("td",T,l(e.ID),1),t("td",{onDblclick:a=>n.$router.push(`/papers/${e.ID}/detail`),style:{cursor:"pointer"}},l(e.试卷名称),41,H),t("td",O,l(e.科目),1),t("td",Q,l(e.题数),1),t("td",W,l((e.创建时间||"").slice(0,10)||"-"),1),t("td",X,l(e.状态),1),t("td",Y,[t("button",{class:"btn small",onClick:a=>x(e.ID)},"预览",8,Z),t("button",{class:"btn small",onClick:a=>I(e.ID)},"反馈",8,tt),t("button",{class:"btn small",onClick:a=>w(e.ID)},"删除",8,et),t("button",{class:"btn small",onClick:a=>S(e.ID)},"下载",8,st)])]))),128))])])])])]))}},it=U(nt,[["__scopeId","data-v-f5f938f7"]]);export{it as default};
--- /dev/null
+import{b as I,h as r,c as u,a as n,w as S,l as B,t as o,F as D,r as P,p as V,q as E,g as d,x as v,B as N,o as c,E as T}from"./index-JKSCyc76.js";import{R as j}from"./RichContent-rL8svEOV.js";import"./_plugin-vue_export-helper-DlAUqK2U.js";const Q={class:"page-header"},U=["disabled"],z={class:"content-area",style:{"padding-top":"12px"}},A={class:"card",style:{display:"flex","align-items":"center",gap:"8px"}},F={class:"card"},L={style:{"font-weight":"bold","margin-bottom":"8px"}},M={style:{"font-size":"12px",color:"#555","margin-bottom":"4px"}},G={key:0,style:{color:"#999"}},J={class:"log-box",style:{height:"120px"}},O={style:{display:"flex","justify-content":"flex-end",gap:"12px",margin:"12px 0 30px"}},H=["disabled"],Z={__name:"PapersPreview",setup(K){const _=E(),h=N(),i=d(null),s=d([]),l=d(""),p=d(""),g=d(!1),m=d([]);function f(){return new Date().toTimeString().slice(0,8)}function w(){h.push("/questions?from_paper_creation=1")}async function b(){if(!s.value.length){m.value=[];return}const t=await r("/questions/search",{filters:{},mode:"preview",id_input:s.value.join(" ")}),a={};for(const e of t.rows)a[e.id]=e;m.value=s.value.map(e=>a[e]).filter(Boolean)}async function y(){if(!s.value.length){p.value+=`[${f()}] 未选择题目,无法预览。
+`;return}try{const t=await r("/papers/preview-docx",{selected_ids:s.value,title:l.value,paper_id:i.value});p.value+=`[${f()}] 预览已生成:${t.path}
+`}catch(t){p.value+=`[${f()}] 生成预览失败: ${t.message}
+`}}async function x(){if(!s.value.length){v("未选择题目,无法生成复习卷。");return}try{const t=await r("/papers/review-docx",{selected_ids:s.value,title:l.value,paper_id:i.value});g.value=!0,p.value+=`[${f()}] 复习卷已生成:${t.path}
+`}catch(t){v("生成复习卷失败:"+t.message)}}function k(){const t=(l.value||"试卷").replace(/[\\/:*?"<>|]/g,"_"),a=`/StudyBase/api/papers/temp-file?name=preview&title=${encodeURIComponent(t)}`,e=document.createElement("a");e.href=a,e.download=`${t}.docx`,document.body.appendChild(e),e.click(),e.remove()}function $(){const t=((l.value||"复习卷")+"_复习卷").replace(/[\\/:*?"<>|]/g,"_"),a=`/StudyBase/api/papers/temp-file?name=review&title=${encodeURIComponent(t)}`,e=document.createElement("a");e.href=a,e.download=`${t}.docx`,document.body.appendChild(e),e.click(),e.remove()}async function C(){if(!s.value.length){v("未选择题目,无法生成试卷。");return}if(i.value===null)try{const t=await r("/papers/save",{selected_ids:s.value,title:l.value});i.value=t.paper_id,v(`试卷已成功保存!ID: ${t.paper_id}`),await y()}catch(t){v("保存失败:"+t.message)}}return I(async()=>{if(_.query.paper_id){i.value=parseInt(_.query.paper_id);const t=await r("/papers/preview-info",{paper_id:i.value});l.value=t.title,s.value=t.selected_ids}else{try{s.value=JSON.parse(sessionStorage.getItem("sb_selected_ids")||"[]")}catch{s.value=[]}const t=await r("/papers/preview-info",{selected_ids:s.value});l.value=t.title}await b(),await y()}),(t,a)=>(c(),u("div",null,[n("div",Q,[a[2]||(a[2]=n("span",{class:"title"},"试卷预览",-1)),i.value!==null?(c(),u("button",{key:0,class:"btn",style:{"margin-left":"16px"},onClick:a[0]||(a[0]=e=>t.$router.push("/papers"))},"返回试卷列表")):(c(),u("button",{key:1,class:"btn",style:{"margin-left":"16px"},onClick:w},"返回选题列表")),n("button",{class:"btn",onClick:k},"打开文档"),n("button",{class:"btn green",style:{"font-weight":"bold"},disabled:i.value!==null,onClick:C},"💾 确认生成试卷",8,U)]),n("div",z,[n("div",A,[a[3]||(a[3]=n("label",{style:{"font-weight":"bold"}},"试卷标题:",-1)),S(n("input",{type:"text","onUpdate:modelValue":a[1]||(a[1]=e=>l.value=e),style:{width:"420px"}},null,512),[[B,l.value]]),a[4]||(a[4]=n("span",{style:{color:"gray","font-size":"12px"}},"(可手动修改标题)",-1))]),n("div",F,[n("div",L,"试卷内容预览(共 "+o(s.value.length)+" 道题)",1),(c(!0),u(D,null,P(m.value,(e,R)=>(c(),u("div",{key:e.id,style:{"border-bottom":"1px solid #eee",padding:"10px 0"}},[n("div",M,o(R+1)+". ID:"+o(e.id)+" | "+o(e.question_type||"题目")+" | "+o(e.Subject)+" | "+o(e.source_description)+" | 组卷次数:"+o(e.paper_count)+" | 正确次数:"+o(e.right_times)+" | 错误次数:"+o(e.wrong_times)+" | 部分正确次数:"+o(e.half_right_times),1),T(j,{content:e.content,"max-width":800},null,8,["content"])]))),128)),m.value.length?V("",!0):(c(),u("div",G,"未选择题目,无法预览。"))]),n("div",J,o(p.value),1),n("div",O,[n("button",{class:"btn",disabled:!g.value,onClick:$},"打开复习卷",8,H),n("button",{class:"btn green",style:{"font-weight":"bold"},onClick:x},"生成复习卷")])])]))}};export{Z as default};
--- /dev/null
+import{b as I,h as r,c as u,a as n,w as S,l as B,t as o,F as D,r as P,p as V,q as E,g as d,x as v,B as N,o as c,E as T}from"./index-Bkq7kiH8.js";import{R as j}from"./RichContent-BjLjzWA-.js";import"./_plugin-vue_export-helper-DlAUqK2U.js";const Q={class:"page-header"},U=["disabled"],z={class:"content-area",style:{"padding-top":"12px"}},A={class:"card",style:{display:"flex","align-items":"center",gap:"8px"}},F={class:"card"},L={style:{"font-weight":"bold","margin-bottom":"8px"}},M={style:{"font-size":"12px",color:"#555","margin-bottom":"4px"}},G={key:0,style:{color:"#999"}},J={class:"log-box",style:{height:"120px"}},O={style:{display:"flex","justify-content":"flex-end",gap:"12px",margin:"12px 0 30px"}},H=["disabled"],Z={__name:"PapersPreview",setup(K){const _=E(),h=N(),i=d(null),s=d([]),l=d(""),p=d(""),g=d(!1),m=d([]);function f(){return new Date().toTimeString().slice(0,8)}function w(){h.push("/questions?from_paper_creation=1")}async function b(){if(!s.value.length){m.value=[];return}const t=await r("/questions/search",{filters:{},mode:"preview",id_input:s.value.join(" ")}),a={};for(const e of t.rows)a[e.id]=e;m.value=s.value.map(e=>a[e]).filter(Boolean)}async function y(){if(!s.value.length){p.value+=`[${f()}] 未选择题目,无法预览。
+`;return}try{const t=await r("/papers/preview-docx",{selected_ids:s.value,title:l.value,paper_id:i.value});p.value+=`[${f()}] 预览已生成:${t.path}
+`}catch(t){p.value+=`[${f()}] 生成预览失败: ${t.message}
+`}}async function x(){if(!s.value.length){v("未选择题目,无法生成复习卷。");return}try{const t=await r("/papers/review-docx",{selected_ids:s.value,title:l.value,paper_id:i.value});g.value=!0,p.value+=`[${f()}] 复习卷已生成:${t.path}
+`}catch(t){v("生成复习卷失败:"+t.message)}}function k(){const t=(l.value||"试卷").replace(/[\\/:*?"<>|]/g,"_"),a=`/StudyBase/api/papers/temp-file?name=preview&title=${encodeURIComponent(t)}`,e=document.createElement("a");e.href=a,e.download=`${t}.docx`,document.body.appendChild(e),e.click(),e.remove()}function $(){const t=((l.value||"复习卷")+"_复习卷").replace(/[\\/:*?"<>|]/g,"_"),a=`/StudyBase/api/papers/temp-file?name=review&title=${encodeURIComponent(t)}`,e=document.createElement("a");e.href=a,e.download=`${t}.docx`,document.body.appendChild(e),e.click(),e.remove()}async function C(){if(!s.value.length){v("未选择题目,无法生成试卷。");return}if(i.value===null)try{const t=await r("/papers/save",{selected_ids:s.value,title:l.value});i.value=t.paper_id,v(`试卷已成功保存!ID: ${t.paper_id}`),await y()}catch(t){v("保存失败:"+t.message)}}return I(async()=>{if(_.query.paper_id){i.value=parseInt(_.query.paper_id);const t=await r("/papers/preview-info",{paper_id:i.value});l.value=t.title,s.value=t.selected_ids}else{try{s.value=JSON.parse(sessionStorage.getItem("sb_selected_ids")||"[]")}catch{s.value=[]}const t=await r("/papers/preview-info",{selected_ids:s.value});l.value=t.title}await b(),await y()}),(t,a)=>(c(),u("div",null,[n("div",Q,[a[2]||(a[2]=n("span",{class:"title"},"试卷预览",-1)),i.value!==null?(c(),u("button",{key:0,class:"btn",style:{"margin-left":"16px"},onClick:a[0]||(a[0]=e=>t.$router.push("/papers"))},"返回试卷列表")):(c(),u("button",{key:1,class:"btn",style:{"margin-left":"16px"},onClick:w},"返回选题列表")),n("button",{class:"btn",onClick:k},"打开文档"),n("button",{class:"btn green",style:{"font-weight":"bold"},disabled:i.value!==null,onClick:C},"💾 确认生成试卷",8,U)]),n("div",z,[n("div",A,[a[3]||(a[3]=n("label",{style:{"font-weight":"bold"}},"试卷标题:",-1)),S(n("input",{type:"text","onUpdate:modelValue":a[1]||(a[1]=e=>l.value=e),style:{width:"420px"}},null,512),[[B,l.value]]),a[4]||(a[4]=n("span",{style:{color:"gray","font-size":"12px"}},"(可手动修改标题)",-1))]),n("div",F,[n("div",L,"试卷内容预览(共 "+o(s.value.length)+" 道题)",1),(c(!0),u(D,null,P(m.value,(e,R)=>(c(),u("div",{key:e.id,style:{"border-bottom":"1px solid #eee",padding:"10px 0"}},[n("div",M,o(R+1)+". ID:"+o(e.id)+" | "+o(e.question_type||"题目")+" | "+o(e.Subject)+" | "+o(e.source_description)+" | 组卷次数:"+o(e.paper_count)+" | 正确次数:"+o(e.right_times)+" | 错误次数:"+o(e.wrong_times)+" | 部分正确次数:"+o(e.half_right_times),1),T(j,{content:e.content,"max-width":800},null,8,["content"])]))),128)),m.value.length?V("",!0):(c(),u("div",G,"未选择题目,无法预览。"))]),n("div",J,o(p.value),1),n("div",O,[n("button",{class:"btn",disabled:!g.value,onClick:$},"打开复习卷",8,H),n("button",{class:"btn green",style:{"font-weight":"bold"},onClick:x},"生成复习卷")])])]))}};export{Z as default};
--- /dev/null
+import{b as I,h as r,c as u,a as s,w as S,m as D,t as o,F as B,r as P,q as V,s as E,g as d,y as v,u as N,o as c,E as T}from"./index-DrsYg5hi.js";import{R as j}from"./RichContent-qk-bdTKE.js";import"./_plugin-vue_export-helper-DlAUqK2U.js";const Q={class:"page-header"},U=["disabled"],z={class:"content-area",style:{"padding-top":"12px"}},A={class:"card",style:{display:"flex","align-items":"center",gap:"8px"}},F={class:"card"},L={style:{"font-weight":"bold","margin-bottom":"8px"}},M={style:{"font-size":"12px",color:"#555","margin-bottom":"4px"}},G={key:0,style:{color:"#999"}},J={class:"log-box",style:{height:"120px"}},O={style:{display:"flex","justify-content":"flex-end",gap:"12px",margin:"12px 0 30px"}},H=["disabled"],Z={__name:"PapersPreview",setup(K){const _=E(),h=N(),i=d(null),n=d([]),l=d(""),p=d(""),g=d(!1),m=d([]);function f(){return new Date().toTimeString().slice(0,8)}function w(){h.push("/questions?from_paper_creation=1")}async function b(){if(!n.value.length){m.value=[];return}const t=await r("/questions/search",{filters:{},mode:"preview",id_input:n.value.join(" ")}),a={};for(const e of t.rows)a[e.id]=e;m.value=n.value.map(e=>a[e]).filter(Boolean)}async function y(){if(!n.value.length){p.value+=`[${f()}] 未选择题目,无法预览。
+`;return}try{const t=await r("/papers/preview-docx",{selected_ids:n.value,title:l.value,paper_id:i.value});p.value+=`[${f()}] 预览已生成:${t.path}
+`}catch(t){p.value+=`[${f()}] 生成预览失败: ${t.message}
+`}}async function x(){if(!n.value.length){v("未选择题目,无法生成复习卷。");return}try{const t=await r("/papers/review-docx",{selected_ids:n.value,title:l.value,paper_id:i.value});g.value=!0,p.value+=`[${f()}] 复习卷已生成:${t.path}
+`}catch(t){v("生成复习卷失败:"+t.message)}}function k(){const t=(l.value||"试卷").replace(/[\\/:*?"<>|]/g,"_"),a=`/StudyBase/api/papers/temp-file?name=preview&title=${encodeURIComponent(t)}`,e=document.createElement("a");e.href=a,e.download=`${t}.docx`,document.body.appendChild(e),e.click(),e.remove()}function $(){const t=((l.value||"复习卷")+"_复习卷").replace(/[\\/:*?"<>|]/g,"_"),a=`/StudyBase/api/papers/temp-file?name=review&title=${encodeURIComponent(t)}`,e=document.createElement("a");e.href=a,e.download=`${t}.docx`,document.body.appendChild(e),e.click(),e.remove()}async function C(){if(!n.value.length){v("未选择题目,无法生成试卷。");return}if(i.value===null)try{const t=await r("/papers/save",{selected_ids:n.value,title:l.value});i.value=t.paper_id,v(`试卷已成功保存!ID: ${t.paper_id}`),await y()}catch(t){v("保存失败:"+t.message)}}return I(async()=>{if(_.query.paper_id){i.value=parseInt(_.query.paper_id);const t=await r("/papers/preview-info",{paper_id:i.value});l.value=t.title,n.value=t.selected_ids}else{try{n.value=JSON.parse(sessionStorage.getItem("sb_selected_ids")||"[]")}catch{n.value=[]}const t=await r("/papers/preview-info",{selected_ids:n.value});l.value=t.title}await b(),await y()}),(t,a)=>(c(),u("div",null,[s("div",Q,[a[2]||(a[2]=s("span",{class:"title"},"试卷预览",-1)),i.value!==null?(c(),u("button",{key:0,class:"btn",style:{"margin-left":"16px"},onClick:a[0]||(a[0]=e=>t.$router.push("/papers"))},"返回试卷列表")):(c(),u("button",{key:1,class:"btn",style:{"margin-left":"16px"},onClick:w},"返回选题列表")),s("button",{class:"btn",onClick:k},"打开文档"),s("button",{class:"btn green",style:{"font-weight":"bold"},disabled:i.value!==null,onClick:C},"💾 确认生成试卷",8,U)]),s("div",z,[s("div",A,[a[3]||(a[3]=s("label",{style:{"font-weight":"bold"}},"试卷标题:",-1)),S(s("input",{type:"text","onUpdate:modelValue":a[1]||(a[1]=e=>l.value=e),style:{width:"420px"}},null,512),[[D,l.value]]),a[4]||(a[4]=s("span",{style:{color:"gray","font-size":"12px"}},"(可手动修改标题)",-1))]),s("div",F,[s("div",L,"试卷内容预览(共 "+o(n.value.length)+" 道题)",1),(c(!0),u(B,null,P(m.value,(e,R)=>(c(),u("div",{key:e.id,style:{"border-bottom":"1px solid #eee",padding:"10px 0"}},[s("div",M,o(R+1)+". ID:"+o(e.id)+" | "+o(e.question_type||"题目")+" | "+o(e.Subject)+" | "+o(e.source_description)+" | 组卷次数:"+o(e.paper_count)+" | 正确次数:"+o(e.right_times)+" | 错误次数:"+o(e.wrong_times)+" | 部分正确次数:"+o(e.half_right_times),1),T(j,{content:e.content,"max-width":800},null,8,["content"])]))),128)),m.value.length?V("",!0):(c(),u("div",G,"未选择题目,无法预览。"))]),s("div",J,o(p.value),1),s("div",O,[s("button",{class:"btn",disabled:!g.value,onClick:$},"打开复习卷",8,H),s("button",{class:"btn green",style:{"font-weight":"bold"},onClick:x},"生成复习卷")])])]))}};export{Z as default};
--- /dev/null
+import{b as R,c as l,a as t,F as u,r as g,q as C,d as $,g as c,h as b,x as _,y as B,B as P,o,t as r,w as i,m as d,j as p,l as j,p as D}from"./index-Bkq7kiH8.js";const M={class:"content-area",style:{"padding-top":"16px"}},N={style:{"font-weight":"bold",color:"blue","font-size":"13px"}},T={style:{display:"flex","align-items":"center",gap:"14px","flex-wrap":"wrap",margin:"8px 0"}},F=["name","onUpdate:modelValue","value"],I={style:{display:"flex","align-items":"center",gap:"14px","flex-wrap":"wrap"}},A={style:{"font-size":"13px"}},E=["name","onUpdate:modelValue"],G={style:{"font-size":"13px"}},L=["name","onUpdate:modelValue"],S={style:{"font-size":"13px"}},H=["name","onUpdate:modelValue"],J={style:{"font-size":"13px"}},K=["name","onUpdate:modelValue"],O=["onUpdate:modelValue"],Q={style:{display:"flex","align-items":"center",gap:"8px",margin:"8px 0"}},W={style:{"font-size":"13px"}},X={style:{display:"flex","align-items":"center",gap:"8px"}},Y={style:{"font-size":"13px"}},Z={style:{display:"flex",gap:"12px","justify-content":"center",margin:"20px 0 40px"}},q=["disabled"],ee=["disabled"],ae={__name:"PapersResult",setup(te){const h=C(),x=P(),y=parseInt(h.params.id),m=c([]),v=c([]),f=c(!1);function w(a){return a===1?"正确":a===0?"未判定/未选择":a===2?"部分错误":a===3?"错误":""}async function V(){const a=await $(`/papers/${y}/result`);v.value=a.causes,f.value=a.has_pending,m.value=a.questions.map(s=>({...s,_result:"无",_error:"无",_partial:""}))}async function k(){const s=m.value.filter(e=>e.result_type===0).map(e=>({question_id:e.question_id,result:e._result,error_cause:e._error,partial_desc:e._partial}));try{await b(`/papers/${y}/result/confirm`,{results:s}),_("结果已保存到数据库中!"),x.push("/papers")}catch(e){_("保存失败:"+e.message)}}async function z(){if(B("确定要归档此试卷吗?"))try{await b(`/papers/${y}/archive`),_("试卷已归档!"),x.push("/papers")}catch(a){_("归档失败:"+a.message)}}return R(V),(a,s)=>(o(),l("div",null,[s[9]||(s[9]=t("div",{class:"page-header"},[t("span",{class:"title"},"试卷结果反馈")],-1)),t("div",M,[(o(!0),l(u,null,g(m.value,e=>(o(),l("div",{key:e.question_id,class:"card"},[t("div",N," 试题ID: "+r(e.question_id)+", 科目: "+r(e.subject),1),e.result_type===0?(o(),l(u,{key:0},[t("div",T,[s[1]||(s[1]=t("span",{style:{"font-weight":"bold","font-size":"13px"}},"错误原因反馈:",-1)),(o(!0),l(u,null,g(v.value,n=>(o(),l("label",{key:n,style:{"font-size":"13px"}},[i(t("input",{type:"radio",name:"err_"+e.question_id,"onUpdate:modelValue":U=>e._error=U,value:n},null,8,F),[[d,e._error]]),p(" "+r(n),1)]))),128))]),t("div",I,[s[6]||(s[6]=t("span",{style:{"font-weight":"bold","font-size":"13px"}},"试题结果:",-1)),t("label",A,[i(t("input",{type:"radio",name:"res_"+e.question_id,"onUpdate:modelValue":n=>e._result=n,value:"正确"},null,8,E),[[d,e._result]]),s[2]||(s[2]=p(" 正确",-1))]),t("label",G,[i(t("input",{type:"radio",name:"res_"+e.question_id,"onUpdate:modelValue":n=>e._result=n,value:"错误"},null,8,L),[[d,e._result]]),s[3]||(s[3]=p(" 错误",-1))]),t("label",S,[i(t("input",{type:"radio",name:"res_"+e.question_id,"onUpdate:modelValue":n=>e._result=n,value:"未完成"},null,8,H),[[d,e._result]]),s[4]||(s[4]=p(" 未完成",-1))]),t("label",J,[i(t("input",{type:"radio",name:"res_"+e.question_id,"onUpdate:modelValue":n=>e._result=n,value:"部分错误"},null,8,K),[[d,e._result]]),s[5]||(s[5]=p(" 部分错误",-1))]),e._result==="部分错误"?i((o(),l("input",{key:0,type:"text","onUpdate:modelValue":n=>e._partial=n,placeholder:"错误小题描述",style:{width:"260px"}},null,8,O)),[[j,e._partial]]):D("",!0)])],64)):(o(),l(u,{key:1},[t("div",Q,[s[7]||(s[7]=t("span",{style:{"font-weight":"bold","font-size":"13px"}},"错误原因反馈:",-1)),t("span",W,r(e.error_cause_text),1)]),t("div",X,[s[8]||(s[8]=t("span",{style:{"font-weight":"bold","font-size":"13px"}},"试题结果:",-1)),t("span",Y,r(w(e.result_type)),1)])],64))]))),128)),t("div",Z,[t("button",{class:"btn",style:{width:"130px"},disabled:!f.value,onClick:k},"确定结果",8,q),t("button",{class:"btn",style:{width:"130px"},disabled:!f.value,onClick:z},"试卷归档",8,ee),t("button",{class:"btn",style:{width:"130px"},onClick:s[0]||(s[0]=e=>a.$router.push("/papers"))},"返回试卷列表")])])]))}};export{ae as default};
--- /dev/null
+import{b as R,c as l,a as t,F as u,r as g,s as C,d as $,g as c,h as b,y as _,z as P,u as j,o,t as r,w as i,p as d,j as p,m as B,q as D}from"./index-DrsYg5hi.js";const M={class:"content-area",style:{"padding-top":"16px"}},N={style:{"font-weight":"bold",color:"blue","font-size":"13px"}},T={style:{display:"flex","align-items":"center",gap:"14px","flex-wrap":"wrap",margin:"8px 0"}},F=["name","onUpdate:modelValue","value"],I={style:{display:"flex","align-items":"center",gap:"14px","flex-wrap":"wrap"}},A={style:{"font-size":"13px"}},E=["name","onUpdate:modelValue"],G={style:{"font-size":"13px"}},L=["name","onUpdate:modelValue"],S={style:{"font-size":"13px"}},H=["name","onUpdate:modelValue"],J={style:{"font-size":"13px"}},K=["name","onUpdate:modelValue"],O=["onUpdate:modelValue"],Q={style:{display:"flex","align-items":"center",gap:"8px",margin:"8px 0"}},W={style:{"font-size":"13px"}},X={style:{display:"flex","align-items":"center",gap:"8px"}},Y={style:{"font-size":"13px"}},Z={style:{display:"flex",gap:"12px","justify-content":"center",margin:"20px 0 40px"}},q=["disabled"],ee=["disabled"],ae={__name:"PapersResult",setup(te){const h=C(),x=j(),y=parseInt(h.params.id),m=c([]),v=c([]),f=c(!1);function w(a){return a===1?"正确":a===0?"未判定/未选择":a===2?"部分错误":a===3?"错误":""}async function V(){const a=await $(`/papers/${y}/result`);v.value=a.causes,f.value=a.has_pending,m.value=a.questions.map(s=>({...s,_result:"无",_error:"无",_partial:""}))}async function z(){const s=m.value.filter(e=>e.result_type===0).map(e=>({question_id:e.question_id,result:e._result,error_cause:e._error,partial_desc:e._partial}));try{await b(`/papers/${y}/result/confirm`,{results:s}),_("结果已保存到数据库中!"),x.push("/papers")}catch(e){_("保存失败:"+e.message)}}async function k(){if(P("确定要归档此试卷吗?"))try{await b(`/papers/${y}/archive`),_("试卷已归档!"),x.push("/papers")}catch(a){_("归档失败:"+a.message)}}return R(V),(a,s)=>(o(),l("div",null,[s[9]||(s[9]=t("div",{class:"page-header"},[t("span",{class:"title"},"试卷结果反馈")],-1)),t("div",M,[(o(!0),l(u,null,g(m.value,e=>(o(),l("div",{key:e.question_id,class:"card"},[t("div",N," 试题ID: "+r(e.question_id)+", 科目: "+r(e.subject),1),e.result_type===0?(o(),l(u,{key:0},[t("div",T,[s[1]||(s[1]=t("span",{style:{"font-weight":"bold","font-size":"13px"}},"错误原因反馈:",-1)),(o(!0),l(u,null,g(v.value,n=>(o(),l("label",{key:n,style:{"font-size":"13px"}},[i(t("input",{type:"radio",name:"err_"+e.question_id,"onUpdate:modelValue":U=>e._error=U,value:n},null,8,F),[[d,e._error]]),p(" "+r(n),1)]))),128))]),t("div",I,[s[6]||(s[6]=t("span",{style:{"font-weight":"bold","font-size":"13px"}},"试题结果:",-1)),t("label",A,[i(t("input",{type:"radio",name:"res_"+e.question_id,"onUpdate:modelValue":n=>e._result=n,value:"正确"},null,8,E),[[d,e._result]]),s[2]||(s[2]=p(" 正确",-1))]),t("label",G,[i(t("input",{type:"radio",name:"res_"+e.question_id,"onUpdate:modelValue":n=>e._result=n,value:"错误"},null,8,L),[[d,e._result]]),s[3]||(s[3]=p(" 错误",-1))]),t("label",S,[i(t("input",{type:"radio",name:"res_"+e.question_id,"onUpdate:modelValue":n=>e._result=n,value:"未完成"},null,8,H),[[d,e._result]]),s[4]||(s[4]=p(" 未完成",-1))]),t("label",J,[i(t("input",{type:"radio",name:"res_"+e.question_id,"onUpdate:modelValue":n=>e._result=n,value:"部分错误"},null,8,K),[[d,e._result]]),s[5]||(s[5]=p(" 部分错误",-1))]),e._result==="部分错误"?i((o(),l("input",{key:0,type:"text","onUpdate:modelValue":n=>e._partial=n,placeholder:"错误小题描述",style:{width:"260px"}},null,8,O)),[[B,e._partial]]):D("",!0)])],64)):(o(),l(u,{key:1},[t("div",Q,[s[7]||(s[7]=t("span",{style:{"font-weight":"bold","font-size":"13px"}},"错误原因反馈:",-1)),t("span",W,r(e.error_cause_text),1)]),t("div",X,[s[8]||(s[8]=t("span",{style:{"font-weight":"bold","font-size":"13px"}},"试题结果:",-1)),t("span",Y,r(w(e.result_type)),1)])],64))]))),128)),t("div",Z,[t("button",{class:"btn",style:{width:"130px"},disabled:!f.value,onClick:z},"确定结果",8,q),t("button",{class:"btn",style:{width:"130px"},disabled:!f.value,onClick:k},"试卷归档",8,ee),t("button",{class:"btn",style:{width:"130px"},onClick:s[0]||(s[0]=e=>a.$router.push("/papers"))},"返回试卷列表")])])]))}};export{ae as default};
--- /dev/null
+import{b as R,c as l,a as t,F as u,r as g,q as C,d as $,g as c,h as b,x as _,y as B,B as P,o,t as r,w as i,m as d,j as p,l as j,p as D}from"./index-JKSCyc76.js";const M={class:"content-area",style:{"padding-top":"16px"}},N={style:{"font-weight":"bold",color:"blue","font-size":"13px"}},T={style:{display:"flex","align-items":"center",gap:"14px","flex-wrap":"wrap",margin:"8px 0"}},F=["name","onUpdate:modelValue","value"],I={style:{display:"flex","align-items":"center",gap:"14px","flex-wrap":"wrap"}},A={style:{"font-size":"13px"}},E=["name","onUpdate:modelValue"],G={style:{"font-size":"13px"}},L=["name","onUpdate:modelValue"],S={style:{"font-size":"13px"}},H=["name","onUpdate:modelValue"],J={style:{"font-size":"13px"}},K=["name","onUpdate:modelValue"],O=["onUpdate:modelValue"],Q={style:{display:"flex","align-items":"center",gap:"8px",margin:"8px 0"}},W={style:{"font-size":"13px"}},X={style:{display:"flex","align-items":"center",gap:"8px"}},Y={style:{"font-size":"13px"}},Z={style:{display:"flex",gap:"12px","justify-content":"center",margin:"20px 0 40px"}},q=["disabled"],ee=["disabled"],ae={__name:"PapersResult",setup(te){const h=C(),x=P(),y=parseInt(h.params.id),m=c([]),v=c([]),f=c(!1);function w(a){return a===1?"正确":a===0?"未判定/未选择":a===2?"部分错误":a===3?"错误":""}async function V(){const a=await $(`/papers/${y}/result`);v.value=a.causes,f.value=a.has_pending,m.value=a.questions.map(s=>({...s,_result:"无",_error:"无",_partial:""}))}async function k(){const s=m.value.filter(e=>e.result_type===0).map(e=>({question_id:e.question_id,result:e._result,error_cause:e._error,partial_desc:e._partial}));try{await b(`/papers/${y}/result/confirm`,{results:s}),_("结果已保存到数据库中!"),x.push("/papers")}catch(e){_("保存失败:"+e.message)}}async function z(){if(B("确定要归档此试卷吗?"))try{await b(`/papers/${y}/archive`),_("试卷已归档!"),x.push("/papers")}catch(a){_("归档失败:"+a.message)}}return R(V),(a,s)=>(o(),l("div",null,[s[9]||(s[9]=t("div",{class:"page-header"},[t("span",{class:"title"},"试卷结果反馈")],-1)),t("div",M,[(o(!0),l(u,null,g(m.value,e=>(o(),l("div",{key:e.question_id,class:"card"},[t("div",N," 试题ID: "+r(e.question_id)+", 科目: "+r(e.subject),1),e.result_type===0?(o(),l(u,{key:0},[t("div",T,[s[1]||(s[1]=t("span",{style:{"font-weight":"bold","font-size":"13px"}},"错误原因反馈:",-1)),(o(!0),l(u,null,g(v.value,n=>(o(),l("label",{key:n,style:{"font-size":"13px"}},[i(t("input",{type:"radio",name:"err_"+e.question_id,"onUpdate:modelValue":U=>e._error=U,value:n},null,8,F),[[d,e._error]]),p(" "+r(n),1)]))),128))]),t("div",I,[s[6]||(s[6]=t("span",{style:{"font-weight":"bold","font-size":"13px"}},"试题结果:",-1)),t("label",A,[i(t("input",{type:"radio",name:"res_"+e.question_id,"onUpdate:modelValue":n=>e._result=n,value:"正确"},null,8,E),[[d,e._result]]),s[2]||(s[2]=p(" 正确",-1))]),t("label",G,[i(t("input",{type:"radio",name:"res_"+e.question_id,"onUpdate:modelValue":n=>e._result=n,value:"错误"},null,8,L),[[d,e._result]]),s[3]||(s[3]=p(" 错误",-1))]),t("label",S,[i(t("input",{type:"radio",name:"res_"+e.question_id,"onUpdate:modelValue":n=>e._result=n,value:"未完成"},null,8,H),[[d,e._result]]),s[4]||(s[4]=p(" 未完成",-1))]),t("label",J,[i(t("input",{type:"radio",name:"res_"+e.question_id,"onUpdate:modelValue":n=>e._result=n,value:"部分错误"},null,8,K),[[d,e._result]]),s[5]||(s[5]=p(" 部分错误",-1))]),e._result==="部分错误"?i((o(),l("input",{key:0,type:"text","onUpdate:modelValue":n=>e._partial=n,placeholder:"错误小题描述",style:{width:"260px"}},null,8,O)),[[j,e._partial]]):D("",!0)])],64)):(o(),l(u,{key:1},[t("div",Q,[s[7]||(s[7]=t("span",{style:{"font-weight":"bold","font-size":"13px"}},"错误原因反馈:",-1)),t("span",W,r(e.error_cause_text),1)]),t("div",X,[s[8]||(s[8]=t("span",{style:{"font-weight":"bold","font-size":"13px"}},"试题结果:",-1)),t("span",Y,r(w(e.result_type)),1)])],64))]))),128)),t("div",Z,[t("button",{class:"btn",style:{width:"130px"},disabled:!f.value,onClick:k},"确定结果",8,q),t("button",{class:"btn",style:{width:"130px"},disabled:!f.value,onClick:z},"试卷归档",8,ee),t("button",{class:"btn",style:{width:"130px"},onClick:s[0]||(s[0]=e=>a.$router.push("/papers"))},"返回试卷列表")])])]))}};export{ae as default};
--- /dev/null
+import{_ as o}from"./_plugin-vue_export-helper-DlAUqK2U.js";import{c as i,a as t,o as l}from"./index-JKSCyc76.js";const d={},p={class:"nav-bar"},r={style:{padding:"20px"}},a={class:"card",style:{"max-width":"560px"}},u={style:{display:"flex","flex-direction":"column",gap:"14px","margin-top":"24px"}};function x(n,s){return l(),i("div",null,[t("div",p,[t("button",{class:"btn",onClick:s[0]||(s[0]=e=>n.$router.push("/questions"))},"< 返回"),s[3]||(s[3]=t("span",{class:"nav-title"},"新增题目",-1))]),t("div",r,[t("div",a,[s[4]||(s[4]=t("div",{style:{display:"flex","align-items":"center",gap:"10px",margin:"10px 0"}},[t("label",null,"题目内容:"),t("input",{type:"text",style:{flex:"1"}})],-1)),t("div",u,[t("button",{class:"btn",style:{background:"#E1E1E1",padding:"8px",width:"180px"},onClick:s[1]||(s[1]=e=>n.$router.push("/questions/import"))},"文件导入"),t("button",{class:"btn",style:{padding:"8px",width:"180px"},onClick:s[2]||(s[2]=e=>n.$router.push("/questions"))},"取消返回")])])])])}const v=o(d,[["render",x]]);export{v as default};
--- /dev/null
+import{_ as o}from"./_plugin-vue_export-helper-DlAUqK2U.js";import{c as i,a as t,o as l}from"./index-DrsYg5hi.js";const d={},p={class:"nav-bar"},r={style:{padding:"20px"}},a={class:"card",style:{"max-width":"560px"}},u={style:{display:"flex","flex-direction":"column",gap:"14px","margin-top":"24px"}};function x(n,s){return l(),i("div",null,[t("div",p,[t("button",{class:"btn",onClick:s[0]||(s[0]=e=>n.$router.push("/questions"))},"< 返回"),s[3]||(s[3]=t("span",{class:"nav-title"},"新增题目",-1))]),t("div",r,[t("div",a,[s[4]||(s[4]=t("div",{style:{display:"flex","align-items":"center",gap:"10px",margin:"10px 0"}},[t("label",null,"题目内容:"),t("input",{type:"text",style:{flex:"1"}})],-1)),t("div",u,[t("button",{class:"btn",style:{background:"#E1E1E1",padding:"8px",width:"180px"},onClick:s[1]||(s[1]=e=>n.$router.push("/questions/import"))},"文件导入"),t("button",{class:"btn",style:{padding:"8px",width:"180px"},onClick:s[2]||(s[2]=e=>n.$router.push("/questions"))},"取消返回")])])])])}const v=o(d,[["render",x]]);export{v as default};
--- /dev/null
+import{_ as o}from"./_plugin-vue_export-helper-DlAUqK2U.js";import{c as i,a as t,o as l}from"./index-Bkq7kiH8.js";const d={},p={class:"nav-bar"},r={style:{padding:"20px"}},a={class:"card",style:{"max-width":"560px"}},u={style:{display:"flex","flex-direction":"column",gap:"14px","margin-top":"24px"}};function x(n,s){return l(),i("div",null,[t("div",p,[t("button",{class:"btn",onClick:s[0]||(s[0]=e=>n.$router.push("/questions"))},"< 返回"),s[3]||(s[3]=t("span",{class:"nav-title"},"新增题目",-1))]),t("div",r,[t("div",a,[s[4]||(s[4]=t("div",{style:{display:"flex","align-items":"center",gap:"10px",margin:"10px 0"}},[t("label",null,"题目内容:"),t("input",{type:"text",style:{flex:"1"}})],-1)),t("div",u,[t("button",{class:"btn",style:{background:"#E1E1E1",padding:"8px",width:"180px"},onClick:s[1]||(s[1]=e=>n.$router.push("/questions/import"))},"文件导入"),t("button",{class:"btn",style:{padding:"8px",width:"180px"},onClick:s[2]||(s[2]=e=>n.$router.push("/questions"))},"取消返回")])])])])}const v=o(d,[["render",x]]);export{v as default};
--- /dev/null
+import{b as A,c as u,a as e,t as $,l as Q,w as i,v as j,F as C,r as z,m as b,E as h,q as L,s as O,d as W,g as a,y as g,z as Y,I as H,o as d}from"./index-DrsYg5hi.js";import{R as U}from"./RichContent-qk-bdTKE.js";import{_ as J}from"./_plugin-vue_export-helper-DlAUqK2U.js";const K={class:"page-header"},X={class:"title"},Z={class:"content-area",style:{"padding-top":"14px","max-width":"980px"}},tt={class:"card"},et={class:"form-row"},st=["disabled"],nt=["value"],lt={class:"form-row"},ot=["disabled"],at={class:"form-row"},it=["disabled"],ut={class:"form-row"},dt=["disabled"],rt={class:"form-row"},vt=["disabled"],pt=["disabled"],mt={class:"card"},ct={class:"card"},ft={class:"card"},yt={style:{"margin-bottom":"6px"}},bt={class:"card"},gt={style:{"margin-bottom":"6px"}},wt={style:{display:"flex","justify-content":"flex-end",gap:"10px",margin:"14px 0 30px"}},xt={__name:"QuestionDetail",setup(_t){const F=O(),w=parseInt(F.params.id),x=a({}),V=a([]),v=a(""),p=a("客观题"),m=a("错题"),c=a(""),r=a(""),f=a(""),y=a(""),o=a(!1),_=a(null),k=a(null);async function D(){const n=await W(`/questions/${w}`);x.value=n,V.value=n.subject_options||[],v.value=n.Subject||"",p.value=n.is_subjective===1?"主观题":"客观题",m.value=n.question_type||"错题",c.value=n.knowledge_points_desc||"",r.value=n.answer_time||"",f.value=n.content||"",y.value=n.analysis||""}function T(){o.value=!0}async function P(){Y("确定取消编辑吗?")&&(await D(),o.value=!1)}function B(){const n=new Date,t=s=>String(s).padStart(2,"0");r.value=`${n.getFullYear()}-${t(n.getMonth()+1)}-${t(n.getDate())}`}async function G(){try{await H(`/questions/${w}`,{subject:v.value,question_type:m.value,answer_time:r.value,is_subjective:p.value==="主观题",content_raw:f.value.trim(),analysis_raw:y.value.trim(),kp_text:c.value.trim()}),g("已更新!"),await D(),o.value=!1}catch(n){g("错误:"+n.message)}}async function R(n){const t=new FormData;t.append("file",n,n.name||"pasted.png");const s=await fetch("/StudyBase/api/import/upload-image",{method:"POST",body:t});if(!s.ok){let l="上传失败";try{l=(await s.json()).detail||l}catch{}throw new Error(l)}return(await s.json()).path}function S(n,t){if(n&&n.selectionStart!=null){const s=n.selectionStart,l=n.value;n.value=l.slice(0,s)+t+l.slice(n.selectionEnd),n.dispatchEvent(new Event("input"))}else n&&(n.value+=t,n.dispatchEvent(new Event("input")))}function q(n){const t=document.createElement("input");t.type="file",t.accept="image/png,image/jpeg,image/bmp,image/gif",t.onchange=async()=>{const s=t.files[0];if(s)try{const l=await R(s);S(n.value||n,`[[IMG:${l}]]`)}catch(l){g(l.message)}},t.click()}async function I(n,t){const s=n.clipboardData&&n.clipboardData.items;if(s){for(const l of s)if(l.type&&l.type.startsWith("image/")){n.preventDefault();const M=l.getAsFile();try{const E=await R(M),N=t==="stem"?_.value:k.value;S(N,`[[IMG:${E}]]`)}catch(E){g(E.message)}return}}}return A(D),(n,t)=>(d(),u("div",null,[e("div",K,[e("span",X,"修改题目信息 (ID: "+$(Q(w))+")",1)]),e("div",Z,[e("div",tt,[e("div",et,[t[13]||(t[13]=e("label",null,"所属科目:",-1)),i(e("select",{"onUpdate:modelValue":t[0]||(t[0]=s=>v.value=s),disabled:!o.value},[(d(!0),u(C,null,z(V.value,s=>(d(),u("option",{key:s,value:s},$(s),9,nt))),128))],8,st),[[j,v.value]])]),e("div",lt,[t[15]||(t[15]=e("label",null,"题目分类(必选):",-1)),i(e("select",{"onUpdate:modelValue":t[1]||(t[1]=s=>p.value=s),disabled:!o.value},[...t[14]||(t[14]=[e("option",null,"客观题",-1),e("option",null,"主观题",-1)])],8,ot),[[j,p.value]])]),e("div",at,[t[17]||(t[17]=e("label",null,"题目类型(必选):",-1)),i(e("select",{"onUpdate:modelValue":t[2]||(t[2]=s=>m.value=s),disabled:!o.value},[...t[16]||(t[16]=[e("option",null,"错题",-1),e("option",null,"推题",-1)])],8,it),[[j,m.value]])]),e("div",ut,[t[18]||(t[18]=e("label",null,"题目知识点(必填):",-1)),i(e("input",{type:"text","onUpdate:modelValue":t[3]||(t[3]=s=>c.value=s),style:{width:"420px"},disabled:!o.value},null,8,dt),[[b,c.value]])]),e("div",rt,[t[19]||(t[19]=e("label",null,"答题时间(选填,例:2026-03-16):",-1)),i(e("input",{type:"text","onUpdate:modelValue":t[4]||(t[4]=s=>r.value=s),style:{width:"150px"},disabled:!o.value},null,8,vt),[[b,r.value]]),e("button",{class:"btn small",disabled:!o.value,onClick:B},"填入今天",8,pt)])]),o.value?(d(),u(C,{key:1},[e("div",ft,[t[22]||(t[22]=e("div",{style:{"font-weight":"bold","margin-bottom":"6px"}},"题干内容",-1)),e("div",yt,[e("button",{class:"btn small",onClick:t[5]||(t[5]=s=>q(_.value))},"从本地选择图片")]),i(e("textarea",{ref_key:"stemRef",ref:_,"onUpdate:modelValue":t[6]||(t[6]=s=>f.value=s),rows:"8",style:{width:"100%"},onPaste:t[7]||(t[7]=s=>I(s,"stem"))},null,544),[[b,f.value]])]),e("div",bt,[t[23]||(t[23]=e("div",{style:{"font-weight":"bold","margin-bottom":"6px"}},"答案解析",-1)),e("div",gt,[e("button",{class:"btn small",onClick:t[8]||(t[8]=s=>q(k.value))},"从本地选择图片")]),i(e("textarea",{ref_key:"analysisRef",ref:k,"onUpdate:modelValue":t[9]||(t[9]=s=>y.value=s),rows:"6",style:{width:"100%"},onPaste:t[10]||(t[10]=s=>I(s,"analysis"))},null,544),[[b,y.value]])])],64)):(d(),u(C,{key:0},[e("div",mt,[t[20]||(t[20]=e("div",{style:{"font-weight":"bold","margin-bottom":"6px"}},"【题干】",-1)),h(U,{content:x.value.content,"max-width":850},null,8,["content"])]),e("div",ct,[t[21]||(t[21]=e("div",{style:{"font-weight":"bold","margin-bottom":"6px",color:"#2E7D32"}},"【答案解析】",-1)),h(U,{content:x.value.analysis,"max-width":850},null,8,["content"])])],64)),e("div",wt,[o.value?(d(),u("button",{key:0,class:"btn",onClick:P},"取消")):L("",!0),e("button",{class:"btn primary",onClick:t[11]||(t[11]=s=>o.value?G():T())},$(o.value?"确定保存":"编辑"),1),e("button",{class:"btn",onClick:t[12]||(t[12]=s=>n.$router.push("/questions"))},"返回列表")])])]))}},$t=J(xt,[["__scopeId","data-v-ea6d82d7"]]);export{$t as default};
--- /dev/null
+import{b as A,c as u,a as e,t as $,u as Q,w as i,v as j,F as C,r as L,l as b,E as h,p as O,q as W,d as Y,g as a,x as g,y as z,I as H,o as d}from"./index-JKSCyc76.js";import{R as U}from"./RichContent-rL8svEOV.js";import{_ as J}from"./_plugin-vue_export-helper-DlAUqK2U.js";const K={class:"page-header"},X={class:"title"},Z={class:"content-area",style:{"padding-top":"14px","max-width":"980px"}},tt={class:"card"},et={class:"form-row"},st=["disabled"],nt=["value"],lt={class:"form-row"},ot=["disabled"],at={class:"form-row"},it=["disabled"],ut={class:"form-row"},dt=["disabled"],rt={class:"form-row"},vt=["disabled"],pt=["disabled"],mt={class:"card"},ct={class:"card"},ft={class:"card"},yt={style:{"margin-bottom":"6px"}},bt={class:"card"},gt={style:{"margin-bottom":"6px"}},wt={style:{display:"flex","justify-content":"flex-end",gap:"10px",margin:"14px 0 30px"}},xt={__name:"QuestionDetail",setup(_t){const F=W(),w=parseInt(F.params.id),x=a({}),V=a([]),v=a(""),p=a("客观题"),m=a("错题"),c=a(""),r=a(""),f=a(""),y=a(""),o=a(!1),_=a(null),k=a(null);async function D(){const n=await Y(`/questions/${w}`);x.value=n,V.value=n.subject_options||[],v.value=n.Subject||"",p.value=n.is_subjective===1?"主观题":"客观题",m.value=n.question_type||"错题",c.value=n.knowledge_points_desc||"",r.value=n.answer_time||"",f.value=n.content||"",y.value=n.analysis||""}function T(){o.value=!0}async function P(){z("确定取消编辑吗?")&&(await D(),o.value=!1)}function B(){const n=new Date,t=s=>String(s).padStart(2,"0");r.value=`${n.getFullYear()}-${t(n.getMonth()+1)}-${t(n.getDate())}`}async function G(){try{await H(`/questions/${w}`,{subject:v.value,question_type:m.value,answer_time:r.value,is_subjective:p.value==="主观题",content_raw:f.value.trim(),analysis_raw:y.value.trim(),kp_text:c.value.trim()}),g("已更新!"),await D(),o.value=!1}catch(n){g("错误:"+n.message)}}async function R(n){const t=new FormData;t.append("file",n,n.name||"pasted.png");const s=await fetch("/StudyBase/api/import/upload-image",{method:"POST",body:t});if(!s.ok){let l="上传失败";try{l=(await s.json()).detail||l}catch{}throw new Error(l)}return(await s.json()).path}function S(n,t){if(n&&n.selectionStart!=null){const s=n.selectionStart,l=n.value;n.value=l.slice(0,s)+t+l.slice(n.selectionEnd),n.dispatchEvent(new Event("input"))}else n&&(n.value+=t,n.dispatchEvent(new Event("input")))}function q(n){const t=document.createElement("input");t.type="file",t.accept="image/png,image/jpeg,image/bmp,image/gif",t.onchange=async()=>{const s=t.files[0];if(s)try{const l=await R(s);S(n.value||n,`[[IMG:${l}]]`)}catch(l){g(l.message)}},t.click()}async function I(n,t){const s=n.clipboardData&&n.clipboardData.items;if(s){for(const l of s)if(l.type&&l.type.startsWith("image/")){n.preventDefault();const M=l.getAsFile();try{const E=await R(M),N=t==="stem"?_.value:k.value;S(N,`[[IMG:${E}]]`)}catch(E){g(E.message)}return}}}return A(D),(n,t)=>(d(),u("div",null,[e("div",K,[e("span",X,"修改题目信息 (ID: "+$(Q(w))+")",1)]),e("div",Z,[e("div",tt,[e("div",et,[t[13]||(t[13]=e("label",null,"所属科目:",-1)),i(e("select",{"onUpdate:modelValue":t[0]||(t[0]=s=>v.value=s),disabled:!o.value},[(d(!0),u(C,null,L(V.value,s=>(d(),u("option",{key:s,value:s},$(s),9,nt))),128))],8,st),[[j,v.value]])]),e("div",lt,[t[15]||(t[15]=e("label",null,"题目分类(必选):",-1)),i(e("select",{"onUpdate:modelValue":t[1]||(t[1]=s=>p.value=s),disabled:!o.value},[...t[14]||(t[14]=[e("option",null,"客观题",-1),e("option",null,"主观题",-1)])],8,ot),[[j,p.value]])]),e("div",at,[t[17]||(t[17]=e("label",null,"题目类型(必选):",-1)),i(e("select",{"onUpdate:modelValue":t[2]||(t[2]=s=>m.value=s),disabled:!o.value},[...t[16]||(t[16]=[e("option",null,"错题",-1),e("option",null,"推题",-1)])],8,it),[[j,m.value]])]),e("div",ut,[t[18]||(t[18]=e("label",null,"题目知识点(必填):",-1)),i(e("input",{type:"text","onUpdate:modelValue":t[3]||(t[3]=s=>c.value=s),style:{width:"420px"},disabled:!o.value},null,8,dt),[[b,c.value]])]),e("div",rt,[t[19]||(t[19]=e("label",null,"答题时间(选填,例:2026-03-16):",-1)),i(e("input",{type:"text","onUpdate:modelValue":t[4]||(t[4]=s=>r.value=s),style:{width:"150px"},disabled:!o.value},null,8,vt),[[b,r.value]]),e("button",{class:"btn small",disabled:!o.value,onClick:B},"填入今天",8,pt)])]),o.value?(d(),u(C,{key:1},[e("div",ft,[t[22]||(t[22]=e("div",{style:{"font-weight":"bold","margin-bottom":"6px"}},"题干内容",-1)),e("div",yt,[e("button",{class:"btn small",onClick:t[5]||(t[5]=s=>q(_.value))},"从本地选择图片")]),i(e("textarea",{ref_key:"stemRef",ref:_,"onUpdate:modelValue":t[6]||(t[6]=s=>f.value=s),rows:"8",style:{width:"100%"},onPaste:t[7]||(t[7]=s=>I(s,"stem"))},null,544),[[b,f.value]])]),e("div",bt,[t[23]||(t[23]=e("div",{style:{"font-weight":"bold","margin-bottom":"6px"}},"答案解析",-1)),e("div",gt,[e("button",{class:"btn small",onClick:t[8]||(t[8]=s=>q(k.value))},"从本地选择图片")]),i(e("textarea",{ref_key:"analysisRef",ref:k,"onUpdate:modelValue":t[9]||(t[9]=s=>y.value=s),rows:"6",style:{width:"100%"},onPaste:t[10]||(t[10]=s=>I(s,"analysis"))},null,544),[[b,y.value]])])],64)):(d(),u(C,{key:0},[e("div",mt,[t[20]||(t[20]=e("div",{style:{"font-weight":"bold","margin-bottom":"6px"}},"【题干】",-1)),h(U,{content:x.value.content,"max-width":850},null,8,["content"])]),e("div",ct,[t[21]||(t[21]=e("div",{style:{"font-weight":"bold","margin-bottom":"6px",color:"#2E7D32"}},"【答案解析】",-1)),h(U,{content:x.value.analysis,"max-width":850},null,8,["content"])])],64)),e("div",wt,[o.value?(d(),u("button",{key:0,class:"btn",onClick:P},"取消")):O("",!0),e("button",{class:"btn primary",onClick:t[11]||(t[11]=s=>o.value?G():T())},$(o.value?"确定保存":"编辑"),1),e("button",{class:"btn",onClick:t[12]||(t[12]=s=>n.$router.push("/questions"))},"返回列表")])])]))}},$t=J(xt,[["__scopeId","data-v-ea6d82d7"]]);export{$t as default};
--- /dev/null
+import{b as A,c as u,a as e,t as $,u as Q,w as i,v as j,F as C,r as L,l as b,E as h,p as O,q as W,d as Y,g as a,x as g,y as z,I as H,o as d}from"./index-Bkq7kiH8.js";import{R as U}from"./RichContent-BjLjzWA-.js";import{_ as J}from"./_plugin-vue_export-helper-DlAUqK2U.js";const K={class:"page-header"},X={class:"title"},Z={class:"content-area",style:{"padding-top":"14px","max-width":"980px"}},tt={class:"card"},et={class:"form-row"},st=["disabled"],nt=["value"],lt={class:"form-row"},ot=["disabled"],at={class:"form-row"},it=["disabled"],ut={class:"form-row"},dt=["disabled"],rt={class:"form-row"},vt=["disabled"],pt=["disabled"],mt={class:"card"},ct={class:"card"},ft={class:"card"},yt={style:{"margin-bottom":"6px"}},bt={class:"card"},gt={style:{"margin-bottom":"6px"}},wt={style:{display:"flex","justify-content":"flex-end",gap:"10px",margin:"14px 0 30px"}},xt={__name:"QuestionDetail",setup(_t){const F=W(),w=parseInt(F.params.id),x=a({}),V=a([]),v=a(""),p=a("客观题"),m=a("错题"),c=a(""),r=a(""),f=a(""),y=a(""),o=a(!1),_=a(null),k=a(null);async function D(){const n=await Y(`/questions/${w}`);x.value=n,V.value=n.subject_options||[],v.value=n.Subject||"",p.value=n.is_subjective===1?"主观题":"客观题",m.value=n.question_type||"错题",c.value=n.knowledge_points_desc||"",r.value=n.answer_time||"",f.value=n.content||"",y.value=n.analysis||""}function T(){o.value=!0}async function P(){z("确定取消编辑吗?")&&(await D(),o.value=!1)}function B(){const n=new Date,t=s=>String(s).padStart(2,"0");r.value=`${n.getFullYear()}-${t(n.getMonth()+1)}-${t(n.getDate())}`}async function G(){try{await H(`/questions/${w}`,{subject:v.value,question_type:m.value,answer_time:r.value,is_subjective:p.value==="主观题",content_raw:f.value.trim(),analysis_raw:y.value.trim(),kp_text:c.value.trim()}),g("已更新!"),await D(),o.value=!1}catch(n){g("错误:"+n.message)}}async function R(n){const t=new FormData;t.append("file",n,n.name||"pasted.png");const s=await fetch("/StudyBase/api/import/upload-image",{method:"POST",body:t});if(!s.ok){let l="上传失败";try{l=(await s.json()).detail||l}catch{}throw new Error(l)}return(await s.json()).path}function S(n,t){if(n&&n.selectionStart!=null){const s=n.selectionStart,l=n.value;n.value=l.slice(0,s)+t+l.slice(n.selectionEnd),n.dispatchEvent(new Event("input"))}else n&&(n.value+=t,n.dispatchEvent(new Event("input")))}function q(n){const t=document.createElement("input");t.type="file",t.accept="image/png,image/jpeg,image/bmp,image/gif",t.onchange=async()=>{const s=t.files[0];if(s)try{const l=await R(s);S(n.value||n,`[[IMG:${l}]]`)}catch(l){g(l.message)}},t.click()}async function I(n,t){const s=n.clipboardData&&n.clipboardData.items;if(s){for(const l of s)if(l.type&&l.type.startsWith("image/")){n.preventDefault();const M=l.getAsFile();try{const E=await R(M),N=t==="stem"?_.value:k.value;S(N,`[[IMG:${E}]]`)}catch(E){g(E.message)}return}}}return A(D),(n,t)=>(d(),u("div",null,[e("div",K,[e("span",X,"修改题目信息 (ID: "+$(Q(w))+")",1)]),e("div",Z,[e("div",tt,[e("div",et,[t[13]||(t[13]=e("label",null,"所属科目:",-1)),i(e("select",{"onUpdate:modelValue":t[0]||(t[0]=s=>v.value=s),disabled:!o.value},[(d(!0),u(C,null,L(V.value,s=>(d(),u("option",{key:s,value:s},$(s),9,nt))),128))],8,st),[[j,v.value]])]),e("div",lt,[t[15]||(t[15]=e("label",null,"题目分类(必选):",-1)),i(e("select",{"onUpdate:modelValue":t[1]||(t[1]=s=>p.value=s),disabled:!o.value},[...t[14]||(t[14]=[e("option",null,"客观题",-1),e("option",null,"主观题",-1)])],8,ot),[[j,p.value]])]),e("div",at,[t[17]||(t[17]=e("label",null,"题目类型(必选):",-1)),i(e("select",{"onUpdate:modelValue":t[2]||(t[2]=s=>m.value=s),disabled:!o.value},[...t[16]||(t[16]=[e("option",null,"错题",-1),e("option",null,"推题",-1)])],8,it),[[j,m.value]])]),e("div",ut,[t[18]||(t[18]=e("label",null,"题目知识点(必填):",-1)),i(e("input",{type:"text","onUpdate:modelValue":t[3]||(t[3]=s=>c.value=s),style:{width:"420px"},disabled:!o.value},null,8,dt),[[b,c.value]])]),e("div",rt,[t[19]||(t[19]=e("label",null,"答题时间(选填,例:2026-03-16):",-1)),i(e("input",{type:"text","onUpdate:modelValue":t[4]||(t[4]=s=>r.value=s),style:{width:"150px"},disabled:!o.value},null,8,vt),[[b,r.value]]),e("button",{class:"btn small",disabled:!o.value,onClick:B},"填入今天",8,pt)])]),o.value?(d(),u(C,{key:1},[e("div",ft,[t[22]||(t[22]=e("div",{style:{"font-weight":"bold","margin-bottom":"6px"}},"题干内容",-1)),e("div",yt,[e("button",{class:"btn small",onClick:t[5]||(t[5]=s=>q(_.value))},"从本地选择图片")]),i(e("textarea",{ref_key:"stemRef",ref:_,"onUpdate:modelValue":t[6]||(t[6]=s=>f.value=s),rows:"8",style:{width:"100%"},onPaste:t[7]||(t[7]=s=>I(s,"stem"))},null,544),[[b,f.value]])]),e("div",bt,[t[23]||(t[23]=e("div",{style:{"font-weight":"bold","margin-bottom":"6px"}},"答案解析",-1)),e("div",gt,[e("button",{class:"btn small",onClick:t[8]||(t[8]=s=>q(k.value))},"从本地选择图片")]),i(e("textarea",{ref_key:"analysisRef",ref:k,"onUpdate:modelValue":t[9]||(t[9]=s=>y.value=s),rows:"6",style:{width:"100%"},onPaste:t[10]||(t[10]=s=>I(s,"analysis"))},null,544),[[b,y.value]])])],64)):(d(),u(C,{key:0},[e("div",mt,[t[20]||(t[20]=e("div",{style:{"font-weight":"bold","margin-bottom":"6px"}},"【题干】",-1)),h(U,{content:x.value.content,"max-width":850},null,8,["content"])]),e("div",ct,[t[21]||(t[21]=e("div",{style:{"font-weight":"bold","margin-bottom":"6px",color:"#2E7D32"}},"【答案解析】",-1)),h(U,{content:x.value.analysis,"max-width":850},null,8,["content"])])],64)),e("div",wt,[o.value?(d(),u("button",{key:0,class:"btn",onClick:P},"取消")):O("",!0),e("button",{class:"btn primary",onClick:t[11]||(t[11]=s=>o.value?G():T())},$(o.value?"确定保存":"编辑"),1),e("button",{class:"btn",onClick:t[12]||(t[12]=s=>n.$router.push("/questions"))},"返回列表")])])]))}},$t=J(xt,[["__scopeId","data-v-ea6d82d7"]]);export{$t as default};
--- /dev/null
+import{b as be,d as ve,k as he,c,a as n,t as l,u as A,F as g,r as I,w as q,l as E,m as R,j as L,p as Q,q as me,s as M,g as b,h as U,x as y,y as T,z as ke,A as ge,B as xe,C as _,o as p,v as we,n as qe,D as Ce,i as Ie,E as G,f as je}from"./index-JKSCyc76.js";import{R as J}from"./RichContent-rL8svEOV.js";import{_ as Se}from"./_plugin-vue_export-helper-DlAUqK2U.js";const De={class:"page-header"},$e={class:"title"},Fe={class:"filter-panel"},Oe={class:"row"},Ve=["onUpdate:modelValue"],Me=["value"],Ue={class:"row"},ze={class:"row",style:{"justify-content":"space-between"}},Be={style:{display:"flex","align-items":"center",gap:"14px"}},Ne={style:{display:"flex","align-items":"center",gap:"10px"}},Pe={style:{color:"#E64A19","font-weight":"bold","font-size":"13px"}},Ae={class:"content-area"},Ee={key:0,class:"card",style:{padding:"0",overflow:"auto"}},Re={class:"data-table"},Le={style:{width:"36px"}},Qe=["checked"],Te=["onClick"],Ge=["onDblclick"],Je=["checked","onChange"],Ke={class:"center"},He={class:"center"},We={class:"center"},Xe={class:"center"},Ye={class:"center"},Ze={class:"center"},et={class:"center"},tt={class:"center"},st={class:"center"},nt={class:"center"},lt={class:"center"},it={class:"center"},ot={key:1},at={style:{display:"flex"}},ut={style:{display:"flex","flex-direction":"column","justify-content":"space-between","align-items":"center",padding:"0 10px"}},rt=["onUpdate:modelValue"],dt=["onClick"],ct={style:{flex:"1","min-width":"0"}},pt={style:{color:"#1890FF","font-weight":"bold","font-size":"13px","margin-bottom":"6px","word-break":"break-all"}},_t={__name:"QuestionList",setup(ft){const i=me(),K=xe(),H=i.query.from_paper_creation==="1"||i.query.from_paper_creation==="true",j=["全部","0","1","2","3","4次及以上"],z=[{key:"subject",label:"科目",type:"db"},{key:"status",label:"状态",type:"fixed",options:["全部","未完成","正确","错误","部分正确"]},{key:"archive_status",label:"归档",type:"fixed",options:["全部","未归档","已归档"]},{key:"cause",label:"原因",type:"db"},{key:"source",label:"来源",type:"db"},{key:"term",label:"学期",type:"db"},{key:"stage",label:"阶段",type:"db"},{key:"question_nature",label:"试题类型",type:"fixed",options:["全部","错题","推题"]},{key:"paper_count",label:"组卷次数",type:"fixed",options:j},{key:"right_times",label:"正确次数",type:"fixed",options:j},{key:"wrong_times",label:"错误次数",type:"fixed",options:j},{key:"half_right_times",label:"部分正确次数",type:"fixed",options:j}],W=z,o=M({});for(const s of z)o[s.key]="全部";o.archive_status="未归档";const X={subject:"subject",cause:"cause",source:"source",term:"term",stage:"stage",archive_status:"archiveStatus"};function Y(s){return s.type==="fixed"?s.options:["全部",...je[X[s.key]]||[]]}const x=b(""),w=b(""),f=b("table"),u=b([]),D=b(0),v=M({}),r=M(new Set),$=b(null),F=b(null),O=b(null),m=b("q.id"),h=b(!1),V=[{key:"subject",label:"科目",db:"subject_id"},{key:"id",label:"试题ID",db:"q.id"},{key:"latest_status",label:"掌握状态",db:"latest_status"},{key:"question_type",label:"题目类型",db:"question_type"},{key:"kp",label:"题目知识点",db:"knowledge_points_desc"},{key:"answer_time",label:"答题时间",db:"answer_time"},{key:"input_time",label:"录入时间",db:"input_time"},{key:"p_count",label:"组卷次数",db:"paper_count"},{key:"r_count",label:"正确次数",db:"right_times"},{key:"w_count",label:"错误次数",db:"wrong_times"},{key:"h_count",label:"部分正确次数",db:"half_right_times"},{key:"last_r_time",label:"最晚正确时间",db:"last_right_time"},{key:"paper_ids",label:"所属试卷ID",db:null}];function B(s){return{right:"正确",wrong:"错误",half_right:"部分正确"}[s]||"未完成"}function C(){return f.value==="table"&&typeof window<"u"?[...r]:Object.entries(v).filter(([,s])=>s).map(([s])=>parseInt(s))}function Z(s,e){e.target.checked?r.add(s):r.delete(s)}const ee=ge(()=>u.value.length>0&&u.value.every(s=>r.has(s.id)));function te(s){if(s.target.checked)for(const e of u.value)r.add(e.id);else r.clear()}function se(s){const e=V.find(t=>t.key===s);!e||!e.db||(m.value===e.db?h.value=!h.value:(m.value=e.db,h.value=!1),k())}function ne(s){const e=V.find(t=>t.key===s);return!e||e.db!==m.value?"":h.value?" ▼":" ▲"}async function k(){const s={filters:{...o},id_input:x.value,kp_input:w.value,chapter_id_filter:$.value,kp_id_filter:F.value,right_times_filter:O.value,mode:f.value,sort_col:m.value,sort_desc:h.value},e=await U("/questions/search",s);u.value=e.rows,D.value=e.count,r.clear();for(const t of Object.keys(v))delete v[t]}function le(){if(f.value==="table"&&typeof window<"u")for(const s of u.value)r.add(s.id);else for(const s of u.value)v[s.id]=!0}function ie(){if(f.value==="table"&&typeof window<"u")for(const s of u.value)r.has(s.id)?r.delete(s.id):r.add(s.id);else for(const s of u.value)v[s.id]=!v[s.id]}function oe(){const s=C();if(!s.length){y("请至少选择一道题目");return}sessionStorage.setItem("sb_selected_ids",JSON.stringify(s)),K.push("/papers/preview")}async function ae(){const s=C();if(!s.length){y("请勾选题目");return}const e=u.value.filter(a=>s.includes(a.id)),t=[...new Set(e.map(a=>a.Subject).filter(Boolean))],d=[...new Set(e.map(a=>a.stage_name).filter(Boolean))],N=new Set;for(const a of e){const S=(a.knowledge_points_desc||"").trim();if(S)for(const ye of S.split("、")){const P=ye.trim();P&&N.add(P)}}const pe=e.reduce((a,S)=>a+(Number(S.paper_count)||0),0),_e=e.filter(a=>(Number(a.paper_count)||0)>0).length,fe=[`即将从数据库删除 ${s.length} 道题目,删除后不可恢复:`,`科目:${t.join("、")||"未指定"}`,`阶段:${d.join("、")||"未指定"}`,`涉及知识点:${N.size} 个`,`组卷次数:共 ${pe} 次(其中 ${_e} 道已加入试卷)`].join(`
+`);if(T(fe+`
+
+确定删除吗?`))try{const a=await U("/questions/delete",{ids:s});y(`已成功删除 ${a.deleted!=null?a.deleted:s.length} 道题目。`),await k()}catch(a){y("删除失败:"+a.message)}}async function ue(){const s=C();if(!s.length){y("请选择要归档的题目");return}T("确定要将选中的题目归档吗?")&&(await U("/questions/bulk-archive",{ids:s}),y(`成功归档 ${s.length} 道题目。`),await k())}async function re(){const s=C();if(!s.length){y("请选择题目");return}try{await navigator.clipboard.writeText(s.join(",")),y("ID已复制到剪贴板")}catch(e){y("复制失败:"+e.message)}}function de(){const s=new Set(C());if(!s.size){y("请先选择要从列表中移除的题目");return}u.value=u.value.filter(e=>!s.has(e.id)),D.value=u.value.length,r.clear();for(const e of s)delete v[e]}async function ce(){if(!u.value.length){y("当前列表没有数据可以导出");return}await ke("/questions/export-excel",{filters:{...o},id_input:x.value,kp_input:w.value,chapter_id_filter:$.value,kp_id_filter:F.value,right_times_filter:O.value,mode:"table",sort_col:m.value,sort_desc:h.value})}return be(async()=>{i.query.chapter_id&&($.value=parseInt(i.query.chapter_id)),i.query.kp_id&&(F.value=parseInt(i.query.kp_id)),i.query.right_times&&(O.value=i.query.right_times);try{const t=await ve("/settings/default-params");t&&t.term&&t.term.default&&(o.term=t.term.default)}catch{}!!!(i.query.chapter_id||i.query.kp_id||i.query.right_times||i.query.subject||i.query.stage||i.query.term||i.query.status||i.query.archive_status||i.query.question_nature||i.query.paper_count)&&_.filters&&(Object.assign(o,_.filters),x.value=_.idInput,w.value=_.kpInput,f.value=_.viewMode,m.value=_.sortCol,h.value=_.sortDesc);const e=i.query;e.subject&&(o.subject=e.subject),e.stage&&(o.stage=e.stage),e.term&&(o.term=e.term),e.status&&(o.status=e.status),e.archive_status&&(o.archive_status=e.archive_status),e.question_nature&&(o.question_nature=e.question_nature),e.paper_count&&(o.paper_count=e.paper_count),await k()}),he(()=>{_.filters={...o},_.idInput=x.value,_.kpInput=w.value,_.viewMode=f.value,_.sortCol=m.value,_.sortDesc=h.value}),(s,e)=>(p(),c("div",null,[n("div",De,[n("span",$e,l(A(H)?"选择题目创建试卷":"题目列表管理"),1),n("button",{class:"btn",style:{"margin-left":"16px"},onClick:e[0]||(e[0]=t=>s.$router.push("/"))},"返回主页"),n("button",{class:"btn green",style:{"margin-left":"10px"},onClick:oe},"➕ 创建试卷"),n("button",{class:"btn green",style:{"margin-left":"10px"},onClick:e[1]||(e[1]=t=>s.$router.push("/questions/import"))},"➕ 新增题目")]),n("div",{style:{padding:"10px 20px 0",display:"flex",gap:"8px","align-items":"center","flex-wrap":"wrap"}},[n("button",{class:"btn small",onClick:le},"全选"),n("button",{class:"btn small",onClick:ie},"反选"),n("button",{class:"btn small",style:{color:"red","font-weight":"bold"},onClick:ae},"❗️ 从数据库中删除"),n("button",{class:"btn small",style:{color:"#F57C00","font-weight":"bold"},onClick:ue},"📦 批量归档"),n("button",{class:"btn small",style:{color:"#1890FF","font-weight":"bold"},onClick:re},"📋 复制选中题目ID"),n("button",{class:"btn small",style:{color:"#1b5e20","font-weight":"bold"},onClick:de},"❎ 从列表中移除")]),n("div",Fe,[n("div",Oe,[(p(!0),c(g,null,I(A(W),t=>(p(),c(g,{key:t.key},[n("label",null,l(t.label)+":",1),q(n("select",{"onUpdate:modelValue":d=>o[t.key]=d},[(p(!0),c(g,null,I(Y(t),d=>(p(),c("option",{key:d,value:d},l(d),9,Me))),128))],8,Ve),[[we,o[t.key]]])],64))),128))]),n("div",Ue,[e[7]||(e[7]=n("label",null,"ID:",-1)),q(n("input",{type:"text","onUpdate:modelValue":e[2]||(e[2]=t=>x.value=t),style:{width:"150px"}},null,512),[[E,x.value]]),e[8]||(e[8]=n("label",{style:{"margin-left":"10px"}},"知识点:",-1)),q(n("input",{type:"text","onUpdate:modelValue":e[3]||(e[3]=t=>w.value=t),style:{width:"200px"}},null,512),[[E,w.value]])]),n("div",ze,[n("div",Be,[n("label",null,[q(n("input",{type:"radio",value:"table","onUpdate:modelValue":e[4]||(e[4]=t=>f.value=t),onChange:k},null,544),[[R,f.value]]),e[9]||(e[9]=L(" 表格模式",-1))]),n("label",null,[q(n("input",{type:"radio",value:"preview","onUpdate:modelValue":e[5]||(e[5]=t=>f.value=t),onChange:k},null,544),[[R,f.value]]),e[10]||(e[10]=L(" 预览模式",-1))])]),n("div",Ne,[n("span",Pe,"共找到 "+l(D.value)+" 道题目",1),n("button",{class:"btn primary",onClick:k},"🔍 开始搜索"),f.value==="table"?(p(),c("button",{key:0,class:"btn orange",onClick:ce},"📥 导出Excel")):Q("",!0)])])]),n("div",Ae,[f.value==="table"?(p(),c("div",Ee,[n("table",Re,[n("thead",null,[n("tr",null,[n("th",Le,[n("input",{type:"checkbox",checked:ee.value,onChange:te,title:"全选"},null,40,Qe)]),(p(),c(g,null,I(V,t=>n("th",{key:t.key,onClick:d=>se(t.key)},l(t.label)+l(ne(t.key)),9,Te)),64))])]),n("tbody",null,[(p(!0),c(g,null,I(u.value,t=>(p(),c("tr",{key:t.id,class:qe(["clickable",{selected:r.has(t.id)}]),onDblclick:d=>s.$router.push("/questions/"+t.id)},[n("td",{class:"center",onClick:e[6]||(e[6]=Ce(()=>{},["stop"]))},[n("input",{type:"checkbox",checked:r.has(t.id),onChange:d=>Z(t.id,d)},null,40,Je)]),n("td",Ke,l(t.Subject),1),n("td",He,l(t.id),1),n("td",We,l(B(t.latest_status)),1),n("td",Xe,l(t.question_type),1),n("td",null,l(t.knowledge_points_desc),1),n("td",Ye,l(t.answer_time),1),n("td",Ze,l(t.input_time),1),n("td",et,l(t.paper_count),1),n("td",tt,l(t.right_times),1),n("td",st,l(t.wrong_times),1),n("td",nt,l(t.half_right_times),1),n("td",lt,l(t.last_right_time),1),n("td",it,l(t.paper_ids),1)],42,Ge))),128))])])])):(p(),c("div",ot,[(p(!0),c(g,null,I(u.value,t=>(p(),c("div",{class:"card",key:t.id},[n("div",at,[n("div",ut,[q(n("input",{type:"checkbox","onUpdate:modelValue":d=>v[t.id]=d},null,8,rt),[[Ie,v[t.id]]]),n("button",{class:"btn small",onClick:d=>s.$router.push("/questions/"+t.id)},"详情",8,dt)]),n("div",ct,[n("div",pt," ID: "+l(t.id)+" | 科目: "+l(t.Subject)+" | 状态: "+l(B(t.latest_status))+" | 归档: "+l(t.StatusName||"未归档")+" | 知识点: "+l(t.knowledge_points_desc),1),e[12]||(e[12]=n("div",{style:{"font-weight":"bold","font-size":"13px",margin:"4px 0 2px"}},"【题干】",-1)),G(J,{content:t.content,"max-width":800},null,8,["content"]),t.analysis?(p(),c(g,{key:0},[e[11]||(e[11]=n("div",{style:{"font-weight":"bold","font-size":"13px",margin:"6px 0 2px",color:"#2E7D32"}},"【解析】",-1)),G(J,{content:t.analysis,"max-width":800},null,8,["content"])],64)):Q("",!0)])])]))),128))]))])]))}},gt=Se(_t,[["__scopeId","data-v-fe13e58c"]]);export{gt as default};
--- /dev/null
+import{b as be,d as ve,k as he,c,a as n,t as l,u as A,F as g,r as I,w as q,l as E,m as R,j as L,p as Q,q as me,s as M,g as b,h as U,x as y,y as T,z as ke,A as ge,B as xe,C as _,o as p,v as we,n as qe,D as Ce,i as Ie,E as G,f as je}from"./index-Bkq7kiH8.js";import{R as J}from"./RichContent-BjLjzWA-.js";import{_ as Se}from"./_plugin-vue_export-helper-DlAUqK2U.js";const De={class:"page-header"},$e={class:"title"},Fe={class:"filter-panel"},Oe={class:"row"},Ve=["onUpdate:modelValue"],Me=["value"],Ue={class:"row"},ze={class:"row",style:{"justify-content":"space-between"}},Be={style:{display:"flex","align-items":"center",gap:"14px"}},Ne={style:{display:"flex","align-items":"center",gap:"10px"}},Pe={style:{color:"#E64A19","font-weight":"bold","font-size":"13px"}},Ae={class:"content-area"},Ee={key:0,class:"card",style:{padding:"0",overflow:"auto"}},Re={class:"data-table"},Le={style:{width:"36px"}},Qe=["checked"],Te=["onClick"],Ge=["onDblclick"],Je=["checked","onChange"],Ke={class:"center"},He={class:"center"},We={class:"center"},Xe={class:"center"},Ye={class:"center"},Ze={class:"center"},et={class:"center"},tt={class:"center"},st={class:"center"},nt={class:"center"},lt={class:"center"},it={class:"center"},ot={key:1},at={style:{display:"flex"}},ut={style:{display:"flex","flex-direction":"column","justify-content":"space-between","align-items":"center",padding:"0 10px"}},rt=["onUpdate:modelValue"],dt=["onClick"],ct={style:{flex:"1","min-width":"0"}},pt={style:{color:"#1890FF","font-weight":"bold","font-size":"13px","margin-bottom":"6px","word-break":"break-all"}},_t={__name:"QuestionList",setup(ft){const i=me(),K=xe(),H=i.query.from_paper_creation==="1"||i.query.from_paper_creation==="true",j=["全部","0","1","2","3","4次及以上"],z=[{key:"subject",label:"科目",type:"db"},{key:"status",label:"状态",type:"fixed",options:["全部","未完成","正确","错误","部分正确"]},{key:"archive_status",label:"归档",type:"fixed",options:["全部","未归档","已归档"]},{key:"cause",label:"原因",type:"db"},{key:"source",label:"来源",type:"db"},{key:"term",label:"学期",type:"db"},{key:"stage",label:"阶段",type:"db"},{key:"question_nature",label:"试题类型",type:"fixed",options:["全部","错题","推题"]},{key:"paper_count",label:"组卷次数",type:"fixed",options:j},{key:"right_times",label:"正确次数",type:"fixed",options:j},{key:"wrong_times",label:"错误次数",type:"fixed",options:j},{key:"half_right_times",label:"部分正确次数",type:"fixed",options:j}],W=z,o=M({});for(const s of z)o[s.key]="全部";o.archive_status="未归档";const X={subject:"subject",cause:"cause",source:"source",term:"term",stage:"stage",archive_status:"archiveStatus"};function Y(s){return s.type==="fixed"?s.options:["全部",...je[X[s.key]]||[]]}const x=b(""),w=b(""),f=b("table"),u=b([]),D=b(0),v=M({}),r=M(new Set),$=b(null),F=b(null),O=b(null),m=b("q.id"),h=b(!1),V=[{key:"subject",label:"科目",db:"subject_id"},{key:"id",label:"试题ID",db:"q.id"},{key:"latest_status",label:"掌握状态",db:"latest_status"},{key:"question_type",label:"题目类型",db:"question_type"},{key:"kp",label:"题目知识点",db:"knowledge_points_desc"},{key:"answer_time",label:"答题时间",db:"answer_time"},{key:"input_time",label:"录入时间",db:"input_time"},{key:"p_count",label:"组卷次数",db:"paper_count"},{key:"r_count",label:"正确次数",db:"right_times"},{key:"w_count",label:"错误次数",db:"wrong_times"},{key:"h_count",label:"部分正确次数",db:"half_right_times"},{key:"last_r_time",label:"最晚正确时间",db:"last_right_time"},{key:"paper_ids",label:"所属试卷ID",db:null}];function B(s){return{right:"正确",wrong:"错误",half_right:"部分正确"}[s]||"未完成"}function C(){return f.value==="table"&&typeof window<"u"?[...r]:Object.entries(v).filter(([,s])=>s).map(([s])=>parseInt(s))}function Z(s,e){e.target.checked?r.add(s):r.delete(s)}const ee=ge(()=>u.value.length>0&&u.value.every(s=>r.has(s.id)));function te(s){if(s.target.checked)for(const e of u.value)r.add(e.id);else r.clear()}function se(s){const e=V.find(t=>t.key===s);!e||!e.db||(m.value===e.db?h.value=!h.value:(m.value=e.db,h.value=!1),k())}function ne(s){const e=V.find(t=>t.key===s);return!e||e.db!==m.value?"":h.value?" ▼":" ▲"}async function k(){const s={filters:{...o},id_input:x.value,kp_input:w.value,chapter_id_filter:$.value,kp_id_filter:F.value,right_times_filter:O.value,mode:f.value,sort_col:m.value,sort_desc:h.value},e=await U("/questions/search",s);u.value=e.rows,D.value=e.count,r.clear();for(const t of Object.keys(v))delete v[t]}function le(){if(f.value==="table"&&typeof window<"u")for(const s of u.value)r.add(s.id);else for(const s of u.value)v[s.id]=!0}function ie(){if(f.value==="table"&&typeof window<"u")for(const s of u.value)r.has(s.id)?r.delete(s.id):r.add(s.id);else for(const s of u.value)v[s.id]=!v[s.id]}function oe(){const s=C();if(!s.length){y("请至少选择一道题目");return}sessionStorage.setItem("sb_selected_ids",JSON.stringify(s)),K.push("/papers/preview")}async function ae(){const s=C();if(!s.length){y("请勾选题目");return}const e=u.value.filter(a=>s.includes(a.id)),t=[...new Set(e.map(a=>a.Subject).filter(Boolean))],d=[...new Set(e.map(a=>a.stage_name).filter(Boolean))],N=new Set;for(const a of e){const S=(a.knowledge_points_desc||"").trim();if(S)for(const ye of S.split("、")){const P=ye.trim();P&&N.add(P)}}const pe=e.reduce((a,S)=>a+(Number(S.paper_count)||0),0),_e=e.filter(a=>(Number(a.paper_count)||0)>0).length,fe=[`即将从数据库删除 ${s.length} 道题目,删除后不可恢复:`,`科目:${t.join("、")||"未指定"}`,`阶段:${d.join("、")||"未指定"}`,`涉及知识点:${N.size} 个`,`组卷次数:共 ${pe} 次(其中 ${_e} 道已加入试卷)`].join(`
+`);if(T(fe+`
+
+确定删除吗?`))try{const a=await U("/questions/delete",{ids:s});y(`已成功删除 ${a.deleted!=null?a.deleted:s.length} 道题目。`),await k()}catch(a){y("删除失败:"+a.message)}}async function ue(){const s=C();if(!s.length){y("请选择要归档的题目");return}T("确定要将选中的题目归档吗?")&&(await U("/questions/bulk-archive",{ids:s}),y(`成功归档 ${s.length} 道题目。`),await k())}async function re(){const s=C();if(!s.length){y("请选择题目");return}try{await navigator.clipboard.writeText(s.join(",")),y("ID已复制到剪贴板")}catch(e){y("复制失败:"+e.message)}}function de(){const s=new Set(C());if(!s.size){y("请先选择要从列表中移除的题目");return}u.value=u.value.filter(e=>!s.has(e.id)),D.value=u.value.length,r.clear();for(const e of s)delete v[e]}async function ce(){if(!u.value.length){y("当前列表没有数据可以导出");return}await ke("/questions/export-excel",{filters:{...o},id_input:x.value,kp_input:w.value,chapter_id_filter:$.value,kp_id_filter:F.value,right_times_filter:O.value,mode:"table",sort_col:m.value,sort_desc:h.value})}return be(async()=>{i.query.chapter_id&&($.value=parseInt(i.query.chapter_id)),i.query.kp_id&&(F.value=parseInt(i.query.kp_id)),i.query.right_times&&(O.value=i.query.right_times);try{const t=await ve("/settings/default-params");t&&t.term&&t.term.default&&(o.term=t.term.default)}catch{}!!!(i.query.chapter_id||i.query.kp_id||i.query.right_times||i.query.subject||i.query.stage||i.query.term||i.query.status||i.query.archive_status||i.query.question_nature||i.query.paper_count)&&_.filters&&(Object.assign(o,_.filters),x.value=_.idInput,w.value=_.kpInput,f.value=_.viewMode,m.value=_.sortCol,h.value=_.sortDesc);const e=i.query;e.subject&&(o.subject=e.subject),e.stage&&(o.stage=e.stage),e.term&&(o.term=e.term),e.status&&(o.status=e.status),e.archive_status&&(o.archive_status=e.archive_status),e.question_nature&&(o.question_nature=e.question_nature),e.paper_count&&(o.paper_count=e.paper_count),await k()}),he(()=>{_.filters={...o},_.idInput=x.value,_.kpInput=w.value,_.viewMode=f.value,_.sortCol=m.value,_.sortDesc=h.value}),(s,e)=>(p(),c("div",null,[n("div",De,[n("span",$e,l(A(H)?"选择题目创建试卷":"题目列表管理"),1),n("button",{class:"btn",style:{"margin-left":"16px"},onClick:e[0]||(e[0]=t=>s.$router.push("/"))},"返回主页"),n("button",{class:"btn green",style:{"margin-left":"10px"},onClick:oe},"➕ 创建试卷"),n("button",{class:"btn green",style:{"margin-left":"10px"},onClick:e[1]||(e[1]=t=>s.$router.push("/questions/import"))},"➕ 新增题目")]),n("div",{style:{padding:"10px 20px 0",display:"flex",gap:"8px","align-items":"center","flex-wrap":"wrap"}},[n("button",{class:"btn small",onClick:le},"全选"),n("button",{class:"btn small",onClick:ie},"反选"),n("button",{class:"btn small",style:{color:"red","font-weight":"bold"},onClick:ae},"❗️ 从数据库中删除"),n("button",{class:"btn small",style:{color:"#F57C00","font-weight":"bold"},onClick:ue},"📦 批量归档"),n("button",{class:"btn small",style:{color:"#1890FF","font-weight":"bold"},onClick:re},"📋 复制选中题目ID"),n("button",{class:"btn small",style:{color:"#1b5e20","font-weight":"bold"},onClick:de},"❎ 从列表中移除")]),n("div",Fe,[n("div",Oe,[(p(!0),c(g,null,I(A(W),t=>(p(),c(g,{key:t.key},[n("label",null,l(t.label)+":",1),q(n("select",{"onUpdate:modelValue":d=>o[t.key]=d},[(p(!0),c(g,null,I(Y(t),d=>(p(),c("option",{key:d,value:d},l(d),9,Me))),128))],8,Ve),[[we,o[t.key]]])],64))),128))]),n("div",Ue,[e[7]||(e[7]=n("label",null,"ID:",-1)),q(n("input",{type:"text","onUpdate:modelValue":e[2]||(e[2]=t=>x.value=t),style:{width:"150px"}},null,512),[[E,x.value]]),e[8]||(e[8]=n("label",{style:{"margin-left":"10px"}},"知识点:",-1)),q(n("input",{type:"text","onUpdate:modelValue":e[3]||(e[3]=t=>w.value=t),style:{width:"200px"}},null,512),[[E,w.value]])]),n("div",ze,[n("div",Be,[n("label",null,[q(n("input",{type:"radio",value:"table","onUpdate:modelValue":e[4]||(e[4]=t=>f.value=t),onChange:k},null,544),[[R,f.value]]),e[9]||(e[9]=L(" 表格模式",-1))]),n("label",null,[q(n("input",{type:"radio",value:"preview","onUpdate:modelValue":e[5]||(e[5]=t=>f.value=t),onChange:k},null,544),[[R,f.value]]),e[10]||(e[10]=L(" 预览模式",-1))])]),n("div",Ne,[n("span",Pe,"共找到 "+l(D.value)+" 道题目",1),n("button",{class:"btn primary",onClick:k},"🔍 开始搜索"),f.value==="table"?(p(),c("button",{key:0,class:"btn orange",onClick:ce},"📥 导出Excel")):Q("",!0)])])]),n("div",Ae,[f.value==="table"?(p(),c("div",Ee,[n("table",Re,[n("thead",null,[n("tr",null,[n("th",Le,[n("input",{type:"checkbox",checked:ee.value,onChange:te,title:"全选"},null,40,Qe)]),(p(),c(g,null,I(V,t=>n("th",{key:t.key,onClick:d=>se(t.key)},l(t.label)+l(ne(t.key)),9,Te)),64))])]),n("tbody",null,[(p(!0),c(g,null,I(u.value,t=>(p(),c("tr",{key:t.id,class:qe(["clickable",{selected:r.has(t.id)}]),onDblclick:d=>s.$router.push("/questions/"+t.id)},[n("td",{class:"center",onClick:e[6]||(e[6]=Ce(()=>{},["stop"]))},[n("input",{type:"checkbox",checked:r.has(t.id),onChange:d=>Z(t.id,d)},null,40,Je)]),n("td",Ke,l(t.Subject),1),n("td",He,l(t.id),1),n("td",We,l(B(t.latest_status)),1),n("td",Xe,l(t.question_type),1),n("td",null,l(t.knowledge_points_desc),1),n("td",Ye,l(t.answer_time),1),n("td",Ze,l(t.input_time),1),n("td",et,l(t.paper_count),1),n("td",tt,l(t.right_times),1),n("td",st,l(t.wrong_times),1),n("td",nt,l(t.half_right_times),1),n("td",lt,l(t.last_right_time),1),n("td",it,l(t.paper_ids),1)],42,Ge))),128))])])])):(p(),c("div",ot,[(p(!0),c(g,null,I(u.value,t=>(p(),c("div",{class:"card",key:t.id},[n("div",at,[n("div",ut,[q(n("input",{type:"checkbox","onUpdate:modelValue":d=>v[t.id]=d},null,8,rt),[[Ie,v[t.id]]]),n("button",{class:"btn small",onClick:d=>s.$router.push("/questions/"+t.id)},"详情",8,dt)]),n("div",ct,[n("div",pt," ID: "+l(t.id)+" | 科目: "+l(t.Subject)+" | 状态: "+l(B(t.latest_status))+" | 归档: "+l(t.StatusName||"未归档")+" | 知识点: "+l(t.knowledge_points_desc),1),e[12]||(e[12]=n("div",{style:{"font-weight":"bold","font-size":"13px",margin:"4px 0 2px"}},"【题干】",-1)),G(J,{content:t.content,"max-width":800},null,8,["content"]),t.analysis?(p(),c(g,{key:0},[e[11]||(e[11]=n("div",{style:{"font-weight":"bold","font-size":"13px",margin:"6px 0 2px",color:"#2E7D32"}},"【解析】",-1)),G(J,{content:t.analysis,"max-width":800},null,8,["content"])],64)):Q("",!0)])])]))),128))]))])]))}},gt=Se(_t,[["__scopeId","data-v-fe13e58c"]]);export{gt as default};
--- /dev/null
+import{b as ve,d as he,k as me,c,a as n,t as l,l as E,F as g,r as I,w,m as R,p as L,j as Q,q as T,s as ke,x as U,g as y,h as z,y as b,z as G,A as ge,B as xe,u as qe,C as _,o as p,v as we,n as Ce,D as Ie,i as je,E as J,f as Se}from"./index-DrsYg5hi.js";import{R as K}from"./RichContent-qk-bdTKE.js";import{_ as De}from"./_plugin-vue_export-helper-DlAUqK2U.js";const $e={class:"page-header"},Fe={class:"title"},Oe={class:"filter-panel"},Ve={class:"row"},Me=["onUpdate:modelValue"],Ue=["value"],ze={class:"row"},Be={class:"row",style:{"justify-content":"space-between"}},Ne={style:{display:"flex","align-items":"center",gap:"14px"}},Pe={style:{display:"flex","align-items":"center",gap:"10px"}},Ae={style:{color:"#E64A19","font-weight":"bold","font-size":"13px"}},Ee={class:"content-area"},Re={key:0,class:"card",style:{padding:"0",overflow:"auto"}},Le={class:"data-table"},Qe={style:{width:"36px"}},Te=["checked"],Ge=["onClick"],Je=["onDblclick"],Ke=["checked","onChange"],He={class:"center"},We={class:"center"},Xe={class:"center"},Ye={class:"center"},Ze={class:"center"},et={class:"center"},tt={class:"center"},st={class:"center"},nt={class:"center"},lt={class:"center"},it={class:"center"},at={class:"center"},ot={key:1},ut={style:{display:"flex"}},rt={style:{display:"flex","flex-direction":"column","justify-content":"space-between","align-items":"center",padding:"0 10px"}},dt=["onUpdate:modelValue"],ct=["onClick"],pt={style:{flex:"1","min-width":"0"}},_t={style:{color:"#1890FF","font-weight":"bold","font-size":"13px","margin-bottom":"6px","word-break":"break-all"}},ft={__name:"QuestionList",setup(yt){const i=ke(),H=qe(),W=i.query.from_paper_creation==="1"||i.query.from_paper_creation==="true",j=["全部","0","1","2","3","4次及以上"],B=[{key:"subject",label:"科目",type:"db"},{key:"status",label:"状态",type:"fixed",options:["全部","未完成","正确","错误","部分正确"]},{key:"archive_status",label:"归档",type:"fixed",options:["全部","未归档","已归档"]},{key:"cause",label:"原因",type:"db"},{key:"source",label:"来源",type:"db"},{key:"term",label:"学期",type:"db"},{key:"stage",label:"阶段",type:"db"},{key:"question_nature",label:"试题类型",type:"fixed",options:["全部","错题","推题"]},{key:"paper_count",label:"组卷次数",type:"fixed",options:j},{key:"right_times",label:"正确次数",type:"fixed",options:j},{key:"wrong_times",label:"错误次数",type:"fixed",options:j},{key:"half_right_times",label:"部分正确次数",type:"fixed",options:j}],X=B,a=U({});for(const s of B)a[s.key]="全部";a.archive_status="未归档";const Y={subject:"subject",cause:"cause",source:"source",term:"term",stage:"stage",archive_status:"archiveStatus"};function Z(s){return s.type==="fixed"?s.options:["全部",...Se[Y[s.key]]||[]]}const x=y(""),q=y(""),f=y("table"),u=y([]),D=y(0),v=U({}),r=U(new Set),$=y(null),F=y(null),O=y(null),V=y(null),m=y("q.id"),h=y(!1),M=[{key:"subject",label:"科目",db:"subject_id"},{key:"id",label:"试题ID",db:"q.id"},{key:"latest_status",label:"掌握状态",db:"latest_status"},{key:"question_type",label:"题目类型",db:"question_type"},{key:"kp",label:"题目知识点",db:"knowledge_points_desc"},{key:"answer_time",label:"答题时间",db:"answer_time"},{key:"input_time",label:"录入时间",db:"input_time"},{key:"p_count",label:"组卷次数",db:"paper_count"},{key:"r_count",label:"正确次数",db:"right_times"},{key:"w_count",label:"错误次数",db:"wrong_times"},{key:"h_count",label:"部分正确次数",db:"half_right_times"},{key:"last_r_time",label:"最晚正确时间",db:"last_right_time"},{key:"paper_ids",label:"所属试卷ID",db:null}];function N(s){return{right:"正确",wrong:"错误",half_right:"部分正确"}[s]||"未完成"}function C(){return f.value==="table"&&typeof window<"u"?[...r]:Object.entries(v).filter(([,s])=>s).map(([s])=>parseInt(s))}function ee(s,e){e.target.checked?r.add(s):r.delete(s)}const te=xe(()=>u.value.length>0&&u.value.every(s=>r.has(s.id)));function se(s){if(s.target.checked)for(const e of u.value)r.add(e.id);else r.clear()}function ne(s){const e=M.find(t=>t.key===s);!e||!e.db||(m.value===e.db?h.value=!h.value:(m.value=e.db,h.value=!1),k())}function le(s){const e=M.find(t=>t.key===s);return!e||e.db!==m.value?"":h.value?" ▼":" ▲"}async function k(){const s={filters:{...a},id_input:x.value,kp_input:q.value,chapter_id_filter:$.value,kp_id_filter:F.value,right_times_filter:O.value,stage_ids_filter:V.value,mode:f.value,sort_col:m.value,sort_desc:h.value},e=await z("/questions/search",s);u.value=e.rows,D.value=e.count,r.clear();for(const t of Object.keys(v))delete v[t]}function ie(){if(f.value==="table"&&typeof window<"u")for(const s of u.value)r.add(s.id);else for(const s of u.value)v[s.id]=!0}function ae(){if(f.value==="table"&&typeof window<"u")for(const s of u.value)r.has(s.id)?r.delete(s.id):r.add(s.id);else for(const s of u.value)v[s.id]=!v[s.id]}function oe(){const s=C();if(!s.length){b("请至少选择一道题目");return}sessionStorage.setItem("sb_selected_ids",JSON.stringify(s)),H.push("/papers/preview")}async function ue(){const s=C();if(!s.length){b("请勾选题目");return}const e=u.value.filter(o=>s.includes(o.id)),t=[...new Set(e.map(o=>o.Subject).filter(Boolean))],d=[...new Set(e.map(o=>o.stage_name).filter(Boolean))],P=new Set;for(const o of e){const S=(o.knowledge_points_desc||"").trim();if(S)for(const be of S.split("、")){const A=be.trim();A&&P.add(A)}}const _e=e.reduce((o,S)=>o+(Number(S.paper_count)||0),0),fe=e.filter(o=>(Number(o.paper_count)||0)>0).length,ye=[`即将从数据库删除 ${s.length} 道题目,删除后不可恢复:`,`科目:${t.join("、")||"未指定"}`,`阶段:${d.join("、")||"未指定"}`,`涉及知识点:${P.size} 个`,`组卷次数:共 ${_e} 次(其中 ${fe} 道已加入试卷)`].join(`
+`);if(G(ye+`
+
+确定删除吗?`))try{const o=await z("/questions/delete",{ids:s});b(`已成功删除 ${o.deleted!=null?o.deleted:s.length} 道题目。`),await k()}catch(o){b("删除失败:"+o.message)}}async function re(){const s=C();if(!s.length){b("请选择要归档的题目");return}G("确定要将选中的题目归档吗?")&&(await z("/questions/bulk-archive",{ids:s}),b(`成功归档 ${s.length} 道题目。`),await k())}async function de(){const s=C();if(!s.length){b("请选择题目");return}try{await navigator.clipboard.writeText(s.join(",")),b("ID已复制到剪贴板")}catch(e){b("复制失败:"+e.message)}}function ce(){const s=new Set(C());if(!s.size){b("请先选择要从列表中移除的题目");return}u.value=u.value.filter(e=>!s.has(e.id)),D.value=u.value.length,r.clear();for(const e of s)delete v[e]}async function pe(){if(!u.value.length){b("当前列表没有数据可以导出");return}await ge("/questions/export-excel",{filters:{...a},id_input:x.value,kp_input:q.value,chapter_id_filter:$.value,kp_id_filter:F.value,right_times_filter:O.value,stage_ids_filter:V.value,mode:"table",sort_col:m.value,sort_desc:h.value})}return ve(async()=>{i.query.chapter_id&&($.value=parseInt(i.query.chapter_id)),i.query.kp_id&&(F.value=parseInt(i.query.kp_id)),i.query.right_times&&(O.value=i.query.right_times),i.query.stage_ids&&(V.value=String(i.query.stage_ids));try{const t=await he("/settings/default-params");t&&t.term&&t.term.default&&(a.term=t.term.default)}catch{}!!!(i.query.chapter_id||i.query.kp_id||i.query.right_times||i.query.stage_ids||i.query.subject||i.query.stage||i.query.term||i.query.status||i.query.archive_status||i.query.question_nature||i.query.paper_count)&&_.filters&&(Object.assign(a,_.filters),x.value=_.idInput,q.value=_.kpInput,f.value=_.viewMode,m.value=_.sortCol,h.value=_.sortDesc);const e=i.query;e.subject&&(a.subject=e.subject),e.stage&&(a.stage=e.stage),e.term&&(a.term=e.term),e.status&&(a.status=e.status),e.archive_status&&(a.archive_status=e.archive_status),e.question_nature&&(a.question_nature=e.question_nature),e.paper_count&&(a.paper_count=e.paper_count),await k()}),me(()=>{_.filters={...a},_.idInput=x.value,_.kpInput=q.value,_.viewMode=f.value,_.sortCol=m.value,_.sortDesc=h.value}),(s,e)=>(p(),c("div",null,[n("div",$e,[n("span",Fe,l(E(W)?"选择题目创建试卷":"题目列表管理"),1),n("button",{class:"btn",style:{"margin-left":"16px"},onClick:e[0]||(e[0]=t=>s.$router.push("/"))},"返回主页"),n("button",{class:"btn green",style:{"margin-left":"10px"},onClick:oe},"➕ 创建试卷"),n("button",{class:"btn green",style:{"margin-left":"10px"},onClick:e[1]||(e[1]=t=>s.$router.push("/questions/import"))},"➕ 新增题目")]),n("div",{style:{padding:"10px 20px 0",display:"flex",gap:"8px","align-items":"center","flex-wrap":"wrap"}},[n("button",{class:"btn small",onClick:ie},"全选"),n("button",{class:"btn small",onClick:ae},"反选"),n("button",{class:"btn small",style:{color:"red","font-weight":"bold"},onClick:ue},"❗️ 从数据库中删除"),n("button",{class:"btn small",style:{color:"#F57C00","font-weight":"bold"},onClick:re},"📦 批量归档"),n("button",{class:"btn small",style:{color:"#1890FF","font-weight":"bold"},onClick:de},"📋 复制选中题目ID"),n("button",{class:"btn small",style:{color:"#1b5e20","font-weight":"bold"},onClick:ce},"❎ 从列表中移除")]),n("div",Oe,[n("div",Ve,[(p(!0),c(g,null,I(E(X),t=>(p(),c(g,{key:t.key},[n("label",null,l(t.label)+":",1),w(n("select",{"onUpdate:modelValue":d=>a[t.key]=d},[(p(!0),c(g,null,I(Z(t),d=>(p(),c("option",{key:d,value:d},l(d),9,Ue))),128))],8,Me),[[we,a[t.key]]])],64))),128))]),n("div",ze,[e[7]||(e[7]=n("label",null,"ID:",-1)),w(n("input",{type:"text","onUpdate:modelValue":e[2]||(e[2]=t=>x.value=t),style:{width:"150px"}},null,512),[[R,x.value]]),e[8]||(e[8]=n("label",{style:{"margin-left":"10px"}},"知识点:",-1)),w(n("input",{type:"text","onUpdate:modelValue":e[3]||(e[3]=t=>q.value=t),style:{width:"200px"}},null,512),[[R,q.value]])]),n("div",Be,[n("div",Ne,[n("label",null,[w(n("input",{type:"radio",value:"table","onUpdate:modelValue":e[4]||(e[4]=t=>f.value=t),onChange:k},null,544),[[L,f.value]]),e[9]||(e[9]=Q(" 表格模式",-1))]),n("label",null,[w(n("input",{type:"radio",value:"preview","onUpdate:modelValue":e[5]||(e[5]=t=>f.value=t),onChange:k},null,544),[[L,f.value]]),e[10]||(e[10]=Q(" 预览模式",-1))])]),n("div",Pe,[n("span",Ae,"共找到 "+l(D.value)+" 道题目",1),n("button",{class:"btn primary",onClick:k},"🔍 开始搜索"),f.value==="table"?(p(),c("button",{key:0,class:"btn orange",onClick:pe},"📥 导出Excel")):T("",!0)])])]),n("div",Ee,[f.value==="table"?(p(),c("div",Re,[n("table",Le,[n("thead",null,[n("tr",null,[n("th",Qe,[n("input",{type:"checkbox",checked:te.value,onChange:se,title:"全选"},null,40,Te)]),(p(),c(g,null,I(M,t=>n("th",{key:t.key,onClick:d=>ne(t.key)},l(t.label)+l(le(t.key)),9,Ge)),64))])]),n("tbody",null,[(p(!0),c(g,null,I(u.value,t=>(p(),c("tr",{key:t.id,class:Ce(["clickable",{selected:r.has(t.id)}]),onDblclick:d=>s.$router.push("/questions/"+t.id)},[n("td",{class:"center",onClick:e[6]||(e[6]=Ie(()=>{},["stop"]))},[n("input",{type:"checkbox",checked:r.has(t.id),onChange:d=>ee(t.id,d)},null,40,Ke)]),n("td",He,l(t.Subject),1),n("td",We,l(t.id),1),n("td",Xe,l(N(t.latest_status)),1),n("td",Ye,l(t.question_type),1),n("td",null,l(t.knowledge_points_desc),1),n("td",Ze,l(t.answer_time),1),n("td",et,l(t.input_time),1),n("td",tt,l(t.paper_count),1),n("td",st,l(t.right_times),1),n("td",nt,l(t.wrong_times),1),n("td",lt,l(t.half_right_times),1),n("td",it,l(t.last_right_time),1),n("td",at,l(t.paper_ids),1)],42,Je))),128))])])])):(p(),c("div",ot,[(p(!0),c(g,null,I(u.value,t=>(p(),c("div",{class:"card",key:t.id},[n("div",ut,[n("div",rt,[w(n("input",{type:"checkbox","onUpdate:modelValue":d=>v[t.id]=d},null,8,dt),[[je,v[t.id]]]),n("button",{class:"btn small",onClick:d=>s.$router.push("/questions/"+t.id)},"详情",8,ct)]),n("div",pt,[n("div",_t," ID: "+l(t.id)+" | 科目: "+l(t.Subject)+" | 状态: "+l(N(t.latest_status))+" | 归档: "+l(t.StatusName||"未归档")+" | 知识点: "+l(t.knowledge_points_desc),1),e[12]||(e[12]=n("div",{style:{"font-weight":"bold","font-size":"13px",margin:"4px 0 2px"}},"【题干】",-1)),J(K,{content:t.content,"max-width":800},null,8,["content"]),t.analysis?(p(),c(g,{key:0},[e[11]||(e[11]=n("div",{style:{"font-weight":"bold","font-size":"13px",margin:"6px 0 2px",color:"#2E7D32"}},"【解析】",-1)),J(K,{content:t.analysis,"max-width":800},null,8,["content"])],64)):T("",!0)])])]))),128))]))])]))}},xt=De(ft,[["__scopeId","data-v-904fdc1f"]]);export{xt as default};
--- /dev/null
+.center[data-v-904fdc1f]{text-align:center}
--- /dev/null
+import{_ as k}from"./_plugin-vue_export-helper-DlAUqK2U.js";import{o as n,c as i,F as f,r as v,G as S,p as m,t as W,A as E,s as R}from"./index-Bkq7kiH8.js";const B={class:"rich-text"},C=["src","onError"],I={key:1,class:"img-error"},M={key:2},P={__name:"RichContent",props:{content:{type:String,default:""},maxWidth:{type:Number,default:800}},setup(h){const a=h;function _(p){const r=String(p||""),t=[],l=/!\[\]\s*\(\s*(.*?)\s*\)/g;let e=0,s;for(;(s=l.exec(r))!==null;){s.index>e&&t.push({type:"text",text:r.slice(e,s.index)});const d=s[1].trim();let o=d,u=null;if(d.includes("?")){const[g,w]=d.split("?",2);o=g;const x=w.match(/w=(\d+)/);x&&(u=parseInt(x[1]))}o=o.replace(/\\/g,"/").replace(/ /g,"");let c=null;u&&(c=Math.max(20,Math.round(u/9525)),c>a.maxWidth&&(c=a.maxWidth)),t.push(R({type:"img",src:"/StudyBase/"+encodeURI(o),width:c,failed:!1})),e=s.index+s[0].length}return e<r.length&&t.push({type:"text",text:r.slice(e)}),t}const y=E(()=>_(a.content));return(p,r)=>(n(),i("div",B,[(n(!0),i(f,null,v(y.value,(t,l)=>(n(),i(f,{key:l},[t.type==="img"&&!t.failed?(n(),i("img",{key:0,src:t.src,style:S({width:t.width?t.width+"px":void 0,maxWidth:h.maxWidth+"px"}),onError:e=>t.failed=!0},null,44,C)):m("",!0),t.type==="img"&&t.failed?(n(),i("span",I,"[图片加载错误]")):m("",!0),t.type==="text"?(n(),i("span",M,W(t.text),1)):m("",!0)],64))),128))]))}},b=k(P,[["__scopeId","data-v-d3039138"]]);export{b as R};
--- /dev/null
+import{_ as k}from"./_plugin-vue_export-helper-DlAUqK2U.js";import{o as n,c as i,F as f,r as v,G as S,q as m,t as W,B,x as E}from"./index-DrsYg5hi.js";const R={class:"rich-text"},C=["src","onError"],I={key:1,class:"img-error"},M={key:2},P={__name:"RichContent",props:{content:{type:String,default:""},maxWidth:{type:Number,default:800}},setup(h){const a=h;function _(p){const r=String(p||""),t=[],l=/!\[\]\s*\(\s*(.*?)\s*\)/g;let e=0,s;for(;(s=l.exec(r))!==null;){s.index>e&&t.push({type:"text",text:r.slice(e,s.index)});const d=s[1].trim();let o=d,u=null;if(d.includes("?")){const[g,w]=d.split("?",2);o=g;const x=w.match(/w=(\d+)/);x&&(u=parseInt(x[1]))}o=o.replace(/\\/g,"/").replace(/ /g,"");let c=null;u&&(c=Math.max(20,Math.round(u/9525)),c>a.maxWidth&&(c=a.maxWidth)),t.push(E({type:"img",src:"/StudyBase/"+encodeURI(o),width:c,failed:!1})),e=s.index+s[0].length}return e<r.length&&t.push({type:"text",text:r.slice(e)}),t}const y=B(()=>_(a.content));return(p,r)=>(n(),i("div",R,[(n(!0),i(f,null,v(y.value,(t,l)=>(n(),i(f,{key:l},[t.type==="img"&&!t.failed?(n(),i("img",{key:0,src:t.src,style:S({width:t.width?t.width+"px":void 0,maxWidth:h.maxWidth+"px"}),onError:e=>t.failed=!0},null,44,C)):m("",!0),t.type==="img"&&t.failed?(n(),i("span",I,"[图片加载错误]")):m("",!0),t.type==="text"?(n(),i("span",M,W(t.text),1)):m("",!0)],64))),128))]))}},b=k(P,[["__scopeId","data-v-d3039138"]]);export{b as R};
--- /dev/null
+import{_ as k}from"./_plugin-vue_export-helper-DlAUqK2U.js";import{o as n,c as i,F as f,r as v,G as S,p as m,t as W,A as E,s as R}from"./index-JKSCyc76.js";const B={class:"rich-text"},C=["src","onError"],I={key:1,class:"img-error"},M={key:2},P={__name:"RichContent",props:{content:{type:String,default:""},maxWidth:{type:Number,default:800}},setup(h){const a=h;function _(p){const r=String(p||""),t=[],l=/!\[\]\s*\(\s*(.*?)\s*\)/g;let e=0,s;for(;(s=l.exec(r))!==null;){s.index>e&&t.push({type:"text",text:r.slice(e,s.index)});const d=s[1].trim();let o=d,u=null;if(d.includes("?")){const[g,w]=d.split("?",2);o=g;const x=w.match(/w=(\d+)/);x&&(u=parseInt(x[1]))}o=o.replace(/\\/g,"/").replace(/ /g,"");let c=null;u&&(c=Math.max(20,Math.round(u/9525)),c>a.maxWidth&&(c=a.maxWidth)),t.push(R({type:"img",src:"/StudyBase/"+encodeURI(o),width:c,failed:!1})),e=s.index+s[0].length}return e<r.length&&t.push({type:"text",text:r.slice(e)}),t}const y=E(()=>_(a.content));return(p,r)=>(n(),i("div",B,[(n(!0),i(f,null,v(y.value,(t,l)=>(n(),i(f,{key:l},[t.type==="img"&&!t.failed?(n(),i("img",{key:0,src:t.src,style:S({width:t.width?t.width+"px":void 0,maxWidth:h.maxWidth+"px"}),onError:e=>t.failed=!0},null,44,C)):m("",!0),t.type==="img"&&t.failed?(n(),i("span",I,"[图片加载错误]")):m("",!0),t.type==="text"?(n(),i("span",M,W(t.text),1)):m("",!0)],64))),128))]))}},b=k(P,[["__scopeId","data-v-d3039138"]]);export{b as R};
--- /dev/null
+import{_ as e}from"./_plugin-vue_export-helper-DlAUqK2U.js";import{c as r,a as s,o as i}from"./index-Bkq7kiH8.js";const l={},d={class:"nav-bar"},u={class:"content-area",style:{padding:"26px 50px"}};function p(n,t){return i(),r("div",null,[s("div",d,[s("button",{class:"btn",onClick:t[0]||(t[0]=o=>n.$router.push("/"))},"< 返回主页"),t[5]||(t[5]=s("span",{class:"nav-title"},"系统设定",-1))]),s("div",u,[t[6]||(t[6]=s("div",{style:{"font-weight":"bold","font-size":"14px","margin-bottom":"14px"}},"基础数据管理",-1)),s("button",{class:"btn setting-btn",onClick:t[1]||(t[1]=o=>n.$router.push("/settings/subjects"))},"科目管理"),s("button",{class:"btn setting-btn",onClick:t[2]||(t[2]=o=>n.$router.push("/settings/error-causes"))},"错误原因管理"),s("button",{class:"btn setting-btn",onClick:t[3]||(t[3]=o=>n.$router.push("/settings/question-statuses"))},"题目状态管理"),t[7]||(t[7]=s("hr",{style:{border:"none","border-top":"1px solid #ddd",margin:"22px 0"}},null,-1)),t[8]||(t[8]=s("div",{style:{"font-weight":"bold","font-size":"14px","margin-bottom":"14px"}},"应用设定",-1)),s("button",{class:"btn setting-btn",onClick:t[4]||(t[4]=o=>n.$router.push("/settings/default-params"))},"默认参数设定")])])}const g=e(l,[["render",p],["__scopeId","data-v-dc043075"]]);export{g as default};
--- /dev/null
+import{_ as e}from"./_plugin-vue_export-helper-DlAUqK2U.js";import{c as r,a as s,o as i}from"./index-JKSCyc76.js";const l={},d={class:"nav-bar"},u={class:"content-area",style:{padding:"26px 50px"}};function p(n,t){return i(),r("div",null,[s("div",d,[s("button",{class:"btn",onClick:t[0]||(t[0]=o=>n.$router.push("/"))},"< 返回主页"),t[5]||(t[5]=s("span",{class:"nav-title"},"系统设定",-1))]),s("div",u,[t[6]||(t[6]=s("div",{style:{"font-weight":"bold","font-size":"14px","margin-bottom":"14px"}},"基础数据管理",-1)),s("button",{class:"btn setting-btn",onClick:t[1]||(t[1]=o=>n.$router.push("/settings/subjects"))},"科目管理"),s("button",{class:"btn setting-btn",onClick:t[2]||(t[2]=o=>n.$router.push("/settings/error-causes"))},"错误原因管理"),s("button",{class:"btn setting-btn",onClick:t[3]||(t[3]=o=>n.$router.push("/settings/question-statuses"))},"题目状态管理"),t[7]||(t[7]=s("hr",{style:{border:"none","border-top":"1px solid #ddd",margin:"22px 0"}},null,-1)),t[8]||(t[8]=s("div",{style:{"font-weight":"bold","font-size":"14px","margin-bottom":"14px"}},"应用设定",-1)),s("button",{class:"btn setting-btn",onClick:t[4]||(t[4]=o=>n.$router.push("/settings/default-params"))},"默认参数设定")])])}const g=e(l,[["render",p],["__scopeId","data-v-dc043075"]]);export{g as default};
--- /dev/null
+import{_ as e}from"./_plugin-vue_export-helper-DlAUqK2U.js";import{c as r,a as s,o as i}from"./index-DrsYg5hi.js";const l={},d={class:"nav-bar"},u={class:"content-area",style:{padding:"26px 50px"}};function p(n,t){return i(),r("div",null,[s("div",d,[s("button",{class:"btn",onClick:t[0]||(t[0]=o=>n.$router.push("/"))},"< 返回主页"),t[5]||(t[5]=s("span",{class:"nav-title"},"系统设定",-1))]),s("div",u,[t[6]||(t[6]=s("div",{style:{"font-weight":"bold","font-size":"14px","margin-bottom":"14px"}},"基础数据管理",-1)),s("button",{class:"btn setting-btn",onClick:t[1]||(t[1]=o=>n.$router.push("/settings/subjects"))},"科目管理"),s("button",{class:"btn setting-btn",onClick:t[2]||(t[2]=o=>n.$router.push("/settings/error-causes"))},"错误原因管理"),s("button",{class:"btn setting-btn",onClick:t[3]||(t[3]=o=>n.$router.push("/settings/question-statuses"))},"题目状态管理"),t[7]||(t[7]=s("hr",{style:{border:"none","border-top":"1px solid #ddd",margin:"22px 0"}},null,-1)),t[8]||(t[8]=s("div",{style:{"font-weight":"bold","font-size":"14px","margin-bottom":"14px"}},"应用设定",-1)),s("button",{class:"btn setting-btn",onClick:t[4]||(t[4]=o=>n.$router.push("/settings/default-params"))},"默认参数设定")])])}const g=e(l,[["render",p],["__scopeId","data-v-dc043075"]]);export{g as default};
--- /dev/null
+import{b as f,c as n,a as e,F as p,r as c,d as y,A as _,g as v,o,t as i,w as b,v as k,G as h,x as d,h as x}from"./index-Bkq7kiH8.js";const w={class:"nav-bar"},D={class:"content-area",style:{padding:"26px 40px","max-width":"760px"}},$={style:{"font-weight":"bold","margin-bottom":"10px"}},q={style:{display:"flex","align-items":"center",gap:"10px"}},S=["onUpdate:modelValue"],A=["value"],B=["onClick"],V={__name:"SettingsDefaultParams",setup(C){const r=v(null),m=_(()=>r.value?[{key:"term",table:"term",title:"默认学期设定",label:"默认学期"},{key:"stage",table:"stage",title:"默认阶段设定",label:"默认阶段"},{key:"question_origin",table:"question_origin",title:"默认题目出处设定",label:"默认出处"}].map(a=>{const t=r.value[a.key];return{...a,options:t.options,selected:t.default||t.options[0]||"",display:t.default_display,hasDefault:!!t.default}}):[]);async function u(){r.value=await y("/settings/default-params")}async function g(s){if(!s.selected){d("请选择一个选项!");return}const a={term:"默认term",stage:"默认stage",question_origin:"默认question_origin"};try{await x(`/settings/default-params/${s.table}`,{name:s.selected}),d(`成功:${a[s.table]}已设置为 '${s.selected}'`),await u()}catch(t){d(t.message)}}return f(u),(s,a)=>(o(),n("div",null,[e("div",w,[e("button",{class:"btn",onClick:a[0]||(a[0]=t=>s.$router.push("/settings"))},"< 返回系统设定"),a[1]||(a[1]=e("span",{class:"nav-title"},"默认参数设定",-1))]),e("div",D,[(o(!0),n(p,null,c(m.value,t=>(o(),n("div",{class:"card",key:t.key},[e("div",$,i(t.title),1),e("div",q,[e("label",null,"选择"+i(t.label)+":",1),b(e("select",{"onUpdate:modelValue":l=>t.selected=l,style:{flex:"1"}},[(o(!0),n(p,null,c(t.options,l=>(o(),n("option",{key:l,value:l},i(l),9,A))),128))],8,S),[[k,t.selected]]),e("button",{class:"btn",onClick:l=>g(t)},"确定",8,B)]),e("div",{style:h([{"margin-top":"10px","font-size":"13px"},{color:t.hasDefault?"green":"gray"}])}," 当前默认:"+i(t.display),5)]))),128))])]))}};export{V as default};
--- /dev/null
+import{b as f,c as n,a as e,F as p,r as c,d as y,A as _,g as v,o,t as i,w as b,v as k,G as h,x as d,h as x}from"./index-JKSCyc76.js";const w={class:"nav-bar"},D={class:"content-area",style:{padding:"26px 40px","max-width":"760px"}},$={style:{"font-weight":"bold","margin-bottom":"10px"}},q={style:{display:"flex","align-items":"center",gap:"10px"}},S=["onUpdate:modelValue"],A=["value"],B=["onClick"],V={__name:"SettingsDefaultParams",setup(C){const r=v(null),m=_(()=>r.value?[{key:"term",table:"term",title:"默认学期设定",label:"默认学期"},{key:"stage",table:"stage",title:"默认阶段设定",label:"默认阶段"},{key:"question_origin",table:"question_origin",title:"默认题目出处设定",label:"默认出处"}].map(a=>{const t=r.value[a.key];return{...a,options:t.options,selected:t.default||t.options[0]||"",display:t.default_display,hasDefault:!!t.default}}):[]);async function u(){r.value=await y("/settings/default-params")}async function g(s){if(!s.selected){d("请选择一个选项!");return}const a={term:"默认term",stage:"默认stage",question_origin:"默认question_origin"};try{await x(`/settings/default-params/${s.table}`,{name:s.selected}),d(`成功:${a[s.table]}已设置为 '${s.selected}'`),await u()}catch(t){d(t.message)}}return f(u),(s,a)=>(o(),n("div",null,[e("div",w,[e("button",{class:"btn",onClick:a[0]||(a[0]=t=>s.$router.push("/settings"))},"< 返回系统设定"),a[1]||(a[1]=e("span",{class:"nav-title"},"默认参数设定",-1))]),e("div",D,[(o(!0),n(p,null,c(m.value,t=>(o(),n("div",{class:"card",key:t.key},[e("div",$,i(t.title),1),e("div",q,[e("label",null,"选择"+i(t.label)+":",1),b(e("select",{"onUpdate:modelValue":l=>t.selected=l,style:{flex:"1"}},[(o(!0),n(p,null,c(t.options,l=>(o(),n("option",{key:l,value:l},i(l),9,A))),128))],8,S),[[k,t.selected]]),e("button",{class:"btn",onClick:l=>g(t)},"确定",8,B)]),e("div",{style:h([{"margin-top":"10px","font-size":"13px"},{color:t.hasDefault?"green":"gray"}])}," 当前默认:"+i(t.display),5)]))),128))])]))}};export{V as default};
--- /dev/null
+import{b as f,c as n,a as e,F as p,r as c,d as y,B as _,g as v,o,t as i,w as b,v as k,G as h,y as d,h as x}from"./index-DrsYg5hi.js";const w={class:"nav-bar"},D={class:"content-area",style:{padding:"26px 40px","max-width":"760px"}},$={style:{"font-weight":"bold","margin-bottom":"10px"}},q={style:{display:"flex","align-items":"center",gap:"10px"}},B=["onUpdate:modelValue"],S=["value"],C=["onClick"],z={__name:"SettingsDefaultParams",setup(M){const r=v(null),m=_(()=>r.value?[{key:"term",table:"term",title:"默认学期设定",label:"默认学期"},{key:"stage",table:"stage",title:"默认阶段设定",label:"默认阶段"},{key:"question_origin",table:"question_origin",title:"默认题目出处设定",label:"默认出处"}].map(a=>{const t=r.value[a.key];return{...a,options:t.options,selected:t.default||t.options[0]||"",display:t.default_display,hasDefault:!!t.default}}):[]);async function u(){r.value=await y("/settings/default-params")}async function g(s){if(!s.selected){d("请选择一个选项!");return}const a={term:"默认term",stage:"默认stage",question_origin:"默认question_origin"};try{await x(`/settings/default-params/${s.table}`,{name:s.selected}),d(`成功:${a[s.table]}已设置为 '${s.selected}'`),await u()}catch(t){d(t.message)}}return f(u),(s,a)=>(o(),n("div",null,[e("div",w,[e("button",{class:"btn",onClick:a[0]||(a[0]=t=>s.$router.push("/settings"))},"< 返回系统设定"),a[1]||(a[1]=e("span",{class:"nav-title"},"默认参数设定",-1))]),e("div",D,[(o(!0),n(p,null,c(m.value,t=>(o(),n("div",{class:"card",key:t.key},[e("div",$,i(t.title),1),e("div",q,[e("label",null,"选择"+i(t.label)+":",1),b(e("select",{"onUpdate:modelValue":l=>t.selected=l,style:{flex:"1"}},[(o(!0),n(p,null,c(t.options,l=>(o(),n("option",{key:l,value:l},i(l),9,S))),128))],8,B),[[k,t.selected]]),e("button",{class:"btn",onClick:l=>g(t)},"确定",8,C)]),e("div",{style:h([{"margin-top":"10px","font-size":"13px"},{color:t.hasDefault?"green":"gray"}])}," 当前默认:"+i(t.display),5)]))),128))])]))}};export{z as default};
--- /dev/null
+import{M as N,b as z,c as i,a as n,F as _,r as C,t as o,d as P,y as r,L as y,I as D,h as v,z as F,B as k,g as m,o as u,n as w,q as I}from"./index-DrsYg5hi.js";import{_ as L}from"./_plugin-vue_export-helper-DlAUqK2U.js";const M={class:"nav-bar"},V={class:"content-area",style:{padding:"20px",display:"flex",gap:"14px"}},q={class:"card",style:{flex:"1","min-height":"400px"}},A={class:"cause-tree"},G=["onClick"],R={key:0},T=["onClick"],j={style:{padding:"0 20px",color:"#555","font-size":"12px"}},H={__name:"SettingsErrorCauses",setup(J){const p=m([]),a=m(null),f=m("当前状态: -"),h=k(()=>{const t={},s=[];for(const e of p.value)e.parent_id===null?s.push(e):(t[e.parent_id]||(t[e.parent_id]=[]),t[e.parent_id].push(e));return s.map(e=>({...e,children:t[e.id]||[]}))}),d=k(()=>p.value.find(t=>t.id===a.value));function x(){const t=d.value;if(t){const s=t.parent_id===null?"顶级原因":"子原因";f.value=`选中: ${t.cause} | 类型: ${s} | 状态: ${t.enabled?"启用":"停用"}`}else f.value="当前状态: -"}async function c(){const t=await P("/settings/error-causes");p.value=t.rows}async function $(){await b(null)}async function S(){if(a.value===null){r("请先选择一个【顶级原因】作为父级。");return}const t=d.value;if(t.parent_id!==null){r(`最多只支持两级错误原因。
+您不能在子原因下继续添加。`);return}if(!t.enabled){r("该父级原因已停用,无法添加子原因。");return}await b(t.id)}async function b(t){const e=y(t===null?"新增顶级原因":"新增子原因","请输入原因名称 (最多5个中文字符):");if(e===null)return;const l=e.trim();if(l)try{await v("/settings/error-causes",{name:l,parent_id:t}),await c()}catch(g){r(g.message)}}async function B(){if(a.value===null)return;const t=d.value,s=y("编辑名称","修改名称:",t.cause);if(s===null)return;const e=s.trim();if(e)try{await D(`/settings/error-causes/${a.value}`,{name:e}),await c()}catch(l){r(l.message)}}async function E(){if(a.value===null)return;d.value.enabled;try{await v(`/settings/error-causes/${a.value}/toggle`),await c()}catch(s){s.needConfirm?F(s.message)&&(await v(`/settings/error-causes/${a.value}/toggle-force`),await c()):r(s.message)}}return N(a,x),z(c),(t,s)=>(u(),i("div",null,[n("div",M,[n("button",{class:"btn",onClick:s[0]||(s[0]=e=>t.$router.push("/settings"))},"< 返回设置"),s[1]||(s[1]=n("span",{class:"nav-title"},"错误原因管理",-1))]),n("div",V,[n("div",{style:{width:"180px","flex-shrink":"0"}},[s[2]||(s[2]=n("div",{style:{"font-weight":"bold","margin-bottom":"12px"}},"操作菜单",-1)),n("button",{class:"btn side-btn",onClick:$},"📂 新增顶级原因"),n("button",{class:"btn side-btn",onClick:S},"↳ 新增子原因"),s[3]||(s[3]=n("hr",{style:{border:"none","border-top":"1px solid #CCCCCC",margin:"14px 0"}},null,-1)),n("button",{class:"btn side-btn",onClick:B},"✎ 编辑名称"),n("button",{class:"btn side-btn",onClick:E},"✅ 启用/停用")]),n("div",q,[n("ul",A,[(u(!0),i(_,null,C(h.value,e=>(u(),i("li",{key:e.id},[n("div",{class:w(["node",{selected:a.value===e.id,disabled:!e.enabled}]),onClick:l=>a.value=e.id},o(e.parent_id===null?"📂":"📄")+" "+o(e.cause)+o(e.enabled?"":" (已停用)"),11,G),e.children&&e.children.length?(u(),i("ul",R,[(u(!0),i(_,null,C(e.children,l=>(u(),i("li",{key:l.id},[n("div",{class:w(["node",{selected:a.value===l.id,disabled:!l.enabled}]),onClick:g=>a.value=l.id}," 📄 "+o(l.cause)+o(l.enabled?"":" (已停用)"),11,T)]))),128))])):I("",!0)]))),128))])])]),n("div",j,o(f.value),1)]))}},Q=L(H,[["__scopeId","data-v-cd6f6757"]]);export{Q as default};
--- /dev/null
+import{M as B,b as P,c as i,a as n,F as _,r as C,t as o,d as z,x as r,L as y,I as A,h as v,y as D,A as k,g as m,o as u,n as w,p as F}from"./index-Bkq7kiH8.js";import{_ as I}from"./_plugin-vue_export-helper-DlAUqK2U.js";const L={class:"nav-bar"},M={class:"content-area",style:{padding:"20px",display:"flex",gap:"14px"}},V={class:"card",style:{flex:"1","min-height":"400px"}},G={class:"cause-tree"},R=["onClick"],T={key:0},j=["onClick"],q={style:{padding:"0 20px",color:"#555","font-size":"12px"}},H={__name:"SettingsErrorCauses",setup(J){const p=m([]),a=m(null),f=m("当前状态: -"),h=k(()=>{const t={},s=[];for(const e of p.value)e.parent_id===null?s.push(e):(t[e.parent_id]||(t[e.parent_id]=[]),t[e.parent_id].push(e));return s.map(e=>({...e,children:t[e.id]||[]}))}),d=k(()=>p.value.find(t=>t.id===a.value));function x(){const t=d.value;if(t){const s=t.parent_id===null?"顶级原因":"子原因";f.value=`选中: ${t.cause} | 类型: ${s} | 状态: ${t.enabled?"启用":"停用"}`}else f.value="当前状态: -"}async function c(){const t=await z("/settings/error-causes");p.value=t.rows}async function $(){await b(null)}async function S(){if(a.value===null){r("请先选择一个【顶级原因】作为父级。");return}const t=d.value;if(t.parent_id!==null){r(`最多只支持两级错误原因。
+您不能在子原因下继续添加。`);return}if(!t.enabled){r("该父级原因已停用,无法添加子原因。");return}await b(t.id)}async function b(t){const e=y(t===null?"新增顶级原因":"新增子原因","请输入原因名称 (最多5个中文字符):");if(e===null)return;const l=e.trim();if(l)try{await v("/settings/error-causes",{name:l,parent_id:t}),await c()}catch(g){r(g.message)}}async function E(){if(a.value===null)return;const t=d.value,s=y("编辑名称","修改名称:",t.cause);if(s===null)return;const e=s.trim();if(e)try{await A(`/settings/error-causes/${a.value}`,{name:e}),await c()}catch(l){r(l.message)}}async function N(){if(a.value===null)return;d.value.enabled;try{await v(`/settings/error-causes/${a.value}/toggle`),await c()}catch(s){s.needConfirm?D(s.message)&&(await v(`/settings/error-causes/${a.value}/toggle-force`),await c()):r(s.message)}}return B(a,x),P(c),(t,s)=>(u(),i("div",null,[n("div",L,[n("button",{class:"btn",onClick:s[0]||(s[0]=e=>t.$router.push("/settings"))},"< 返回设置"),s[1]||(s[1]=n("span",{class:"nav-title"},"错误原因管理",-1))]),n("div",M,[n("div",{style:{width:"180px","flex-shrink":"0"}},[s[2]||(s[2]=n("div",{style:{"font-weight":"bold","margin-bottom":"12px"}},"操作菜单",-1)),n("button",{class:"btn side-btn",onClick:$},"📂 新增顶级原因"),n("button",{class:"btn side-btn",onClick:S},"↳ 新增子原因"),s[3]||(s[3]=n("hr",{style:{border:"none","border-top":"1px solid #CCCCCC",margin:"14px 0"}},null,-1)),n("button",{class:"btn side-btn",onClick:E},"✎ 编辑名称"),n("button",{class:"btn side-btn",onClick:N},"✅ 启用/停用")]),n("div",V,[n("ul",G,[(u(!0),i(_,null,C(h.value,e=>(u(),i("li",{key:e.id},[n("div",{class:w(["node",{selected:a.value===e.id,disabled:!e.enabled}]),onClick:l=>a.value=e.id},o(e.parent_id===null?"📂":"📄")+" "+o(e.cause)+o(e.enabled?"":" (已停用)"),11,R),e.children&&e.children.length?(u(),i("ul",T,[(u(!0),i(_,null,C(e.children,l=>(u(),i("li",{key:l.id},[n("div",{class:w(["node",{selected:a.value===l.id,disabled:!l.enabled}]),onClick:g=>a.value=l.id}," 📄 "+o(l.cause)+o(l.enabled?"":" (已停用)"),11,j)]))),128))])):F("",!0)]))),128))])])]),n("div",q,o(f.value),1)]))}},Q=I(H,[["__scopeId","data-v-cd6f6757"]]);export{Q as default};
--- /dev/null
+import{M as B,b as P,c as i,a as n,F as _,r as C,t as o,d as z,x as r,L as y,I as A,h as v,y as D,A as k,g as m,o as u,n as w,p as F}from"./index-JKSCyc76.js";import{_ as I}from"./_plugin-vue_export-helper-DlAUqK2U.js";const L={class:"nav-bar"},M={class:"content-area",style:{padding:"20px",display:"flex",gap:"14px"}},V={class:"card",style:{flex:"1","min-height":"400px"}},G={class:"cause-tree"},R=["onClick"],T={key:0},j=["onClick"],q={style:{padding:"0 20px",color:"#555","font-size":"12px"}},H={__name:"SettingsErrorCauses",setup(J){const p=m([]),a=m(null),f=m("当前状态: -"),h=k(()=>{const t={},s=[];for(const e of p.value)e.parent_id===null?s.push(e):(t[e.parent_id]||(t[e.parent_id]=[]),t[e.parent_id].push(e));return s.map(e=>({...e,children:t[e.id]||[]}))}),d=k(()=>p.value.find(t=>t.id===a.value));function x(){const t=d.value;if(t){const s=t.parent_id===null?"顶级原因":"子原因";f.value=`选中: ${t.cause} | 类型: ${s} | 状态: ${t.enabled?"启用":"停用"}`}else f.value="当前状态: -"}async function c(){const t=await z("/settings/error-causes");p.value=t.rows}async function $(){await b(null)}async function S(){if(a.value===null){r("请先选择一个【顶级原因】作为父级。");return}const t=d.value;if(t.parent_id!==null){r(`最多只支持两级错误原因。
+您不能在子原因下继续添加。`);return}if(!t.enabled){r("该父级原因已停用,无法添加子原因。");return}await b(t.id)}async function b(t){const e=y(t===null?"新增顶级原因":"新增子原因","请输入原因名称 (最多5个中文字符):");if(e===null)return;const l=e.trim();if(l)try{await v("/settings/error-causes",{name:l,parent_id:t}),await c()}catch(g){r(g.message)}}async function E(){if(a.value===null)return;const t=d.value,s=y("编辑名称","修改名称:",t.cause);if(s===null)return;const e=s.trim();if(e)try{await A(`/settings/error-causes/${a.value}`,{name:e}),await c()}catch(l){r(l.message)}}async function N(){if(a.value===null)return;d.value.enabled;try{await v(`/settings/error-causes/${a.value}/toggle`),await c()}catch(s){s.needConfirm?D(s.message)&&(await v(`/settings/error-causes/${a.value}/toggle-force`),await c()):r(s.message)}}return B(a,x),P(c),(t,s)=>(u(),i("div",null,[n("div",L,[n("button",{class:"btn",onClick:s[0]||(s[0]=e=>t.$router.push("/settings"))},"< 返回设置"),s[1]||(s[1]=n("span",{class:"nav-title"},"错误原因管理",-1))]),n("div",M,[n("div",{style:{width:"180px","flex-shrink":"0"}},[s[2]||(s[2]=n("div",{style:{"font-weight":"bold","margin-bottom":"12px"}},"操作菜单",-1)),n("button",{class:"btn side-btn",onClick:$},"📂 新增顶级原因"),n("button",{class:"btn side-btn",onClick:S},"↳ 新增子原因"),s[3]||(s[3]=n("hr",{style:{border:"none","border-top":"1px solid #CCCCCC",margin:"14px 0"}},null,-1)),n("button",{class:"btn side-btn",onClick:E},"✎ 编辑名称"),n("button",{class:"btn side-btn",onClick:N},"✅ 启用/停用")]),n("div",V,[n("ul",G,[(u(!0),i(_,null,C(h.value,e=>(u(),i("li",{key:e.id},[n("div",{class:w(["node",{selected:a.value===e.id,disabled:!e.enabled}]),onClick:l=>a.value=e.id},o(e.parent_id===null?"📂":"📄")+" "+o(e.cause)+o(e.enabled?"":" (已停用)"),11,R),e.children&&e.children.length?(u(),i("ul",T,[(u(!0),i(_,null,C(e.children,l=>(u(),i("li",{key:l.id},[n("div",{class:w(["node",{selected:a.value===l.id,disabled:!l.enabled}]),onClick:g=>a.value=l.id}," 📄 "+o(l.cause)+o(l.enabled?"":" (已停用)"),11,j)]))),128))])):F("",!0)]))),128))])])]),n("div",q,o(f.value),1)]))}},Q=I(H,[["__scopeId","data-v-cd6f6757"]]);export{Q as default};
--- /dev/null
+import{b as $,c as f,a as t,F as S,r as D,t as i,w as g,m as _,q,d as I,y as o,z as V,h as x,g as d,I as z,o as b,n as B}from"./index-DrsYg5hi.js";import{_ as M}from"./_plugin-vue_export-helper-DlAUqK2U.js";const N={class:"nav-bar"},T={class:"content-area",style:{padding:"20px",display:"flex",gap:"14px"}},A={class:"card",style:{flex:"1"}},E={class:"data-table"},F=["onClick"],P={class:"center"},U={class:"center"},G={style:{padding:"0 20px",color:"#555","font-size":"12px"}},L={key:0,class:"modal-mask"},O={class:"modal"},j={class:"modal-header"},H={class:"modal-body"},J={class:"form-row"},K={class:"form-row"},Q={class:"modal-footer2"},R={__name:"SettingsStatuses",setup(W){const c=d([]),n=d(null),m=d("就绪"),r=d(!1),v=d("add"),l=d(""),u=d("");async function p(){const a=await I("/settings/question-statuses");c.value=a.rows}function w(){v.value="add",l.value="",u.value="",r.value=!0}async function k(){if(!l.value.trim()){o("状态名称不能为空");return}if(l.value.trim().length>20){o("状态名称过长(建议20字以内)");return}try{await x("/settings/question-statuses",{name:l.value.trim(),description:u.value.trim()}),r.value=!1,m.value=`成功添加状态: ${l.value.trim()}`,await p()}catch(a){o(a.message)}}function y(){if(n.value===null){o("请先选择一行数据");return}const a=c.value.find(e=>e.id===n.value);v.value="edit",l.value=a.name,u.value=a.description||"",r.value=!0}async function C(){if(!l.value.trim()){o("状态名称不能为空");return}try{await z(`/settings/question-statuses/${n.value}`,{name:l.value.trim(),description:u.value.trim()}),r.value=!1,m.value=`成功修改状态: ${l.value.trim()}`,await p()}catch(a){o(a.message)}}async function h(){if(n.value===null){o("请先选择一行数据");return}const a=c.value.find(s=>s.id===n.value),e=a.enabled?"停用":"启用";if(V(`确定要 ${e} 状态【${a.name}】吗?`))try{await x(`/settings/question-statuses/${n.value}/toggle`),m.value=`已${e}: ${a.name}`,await p()}catch(s){o(s.message)}}return $(p),(a,e)=>(b(),f("div",null,[t("div",N,[t("button",{class:"btn",onClick:e[0]||(e[0]=s=>a.$router.push("/settings"))},"< 返回设置"),e[4]||(e[4]=t("span",{class:"nav-title"},"题目状态管理",-1))]),t("div",T,[t("div",{style:{width:"180px","flex-shrink":"0"}},[e[5]||(e[5]=t("div",{style:{"font-weight":"bold","margin-bottom":"12px"}},"操作菜单",-1)),t("button",{class:"btn side-btn",onClick:w},"✚ 新增状态"),t("button",{class:"btn side-btn",onClick:y},"✎ 编辑选中"),e[6]||(e[6]=t("hr",{style:{border:"none","border-top":"1px solid #CCCCCC",margin:"14px 0"}},null,-1)),t("button",{class:"btn side-btn",onClick:h},"✅ 启用/停用")]),t("div",A,[t("table",E,[e[7]||(e[7]=t("thead",null,[t("tr",null,[t("th",{style:{cursor:"default"}},"ID"),t("th",{style:{cursor:"default"}},"状态名称"),t("th",{style:{cursor:"default"}},"状态描述"),t("th",{style:{cursor:"default"}},"当前状态")])],-1)),t("tbody",null,[(b(!0),f(S,null,D(c.value,s=>(b(),f("tr",{key:s.id,class:B(["clickable",{selected:n.value===s.id}]),onClick:X=>n.value=s.id,onDblclick:y},[t("td",P,i(s.id),1),t("td",null,i(s.name),1),t("td",null,i(s.description),1),t("td",U,i(s.enabled?"✅ 启用":"❌ 停用"),1)],42,F))),128))])])])]),t("div",G,i(m.value),1),r.value?(b(),f("div",L,[t("div",O,[t("div",j,i(v.value==="add"?"新增题目状态":"编辑题目状态"),1),t("div",H,[t("div",J,[e[8]||(e[8]=t("label",null,"状态名称:",-1)),g(t("input",{type:"text","onUpdate:modelValue":e[1]||(e[1]=s=>l.value=s),style:{width:"220px"}},null,512),[[_,l.value]])]),t("div",K,[e[9]||(e[9]=t("label",null,"状态描述:",-1)),g(t("input",{type:"text","onUpdate:modelValue":e[2]||(e[2]=s=>u.value=s),style:{width:"220px"}},null,512),[[_,u.value]])])]),t("div",Q,[t("button",{class:"btn primary",onClick:e[3]||(e[3]=s=>v.value==="add"?k():C())},i(v.value==="add"?"保存":"更新"),1)])])])):q("",!0)]))}},tt=M(R,[["__scopeId","data-v-f1401540"]]);export{tt as default};
--- /dev/null
+import{b as $,c as f,a as t,F as S,r as D,t as i,w as g,l as _,p as q,d as I,x as o,y as V,h as x,g as d,I as B,o as b,n as M}from"./index-Bkq7kiH8.js";import{_ as N}from"./_plugin-vue_export-helper-DlAUqK2U.js";const T={class:"nav-bar"},z={class:"content-area",style:{padding:"20px",display:"flex",gap:"14px"}},A={class:"card",style:{flex:"1"}},E={class:"data-table"},F=["onClick"],P={class:"center"},U={class:"center"},G={style:{padding:"0 20px",color:"#555","font-size":"12px"}},L={key:0,class:"modal-mask"},O={class:"modal"},j={class:"modal-header"},H={class:"modal-body"},J={class:"form-row"},K={class:"form-row"},Q={class:"modal-footer2"},R={__name:"SettingsStatuses",setup(W){const c=d([]),n=d(null),m=d("就绪"),r=d(!1),v=d("add"),l=d(""),u=d("");async function p(){const a=await I("/settings/question-statuses");c.value=a.rows}function w(){v.value="add",l.value="",u.value="",r.value=!0}async function k(){if(!l.value.trim()){o("状态名称不能为空");return}if(l.value.trim().length>20){o("状态名称过长(建议20字以内)");return}try{await x("/settings/question-statuses",{name:l.value.trim(),description:u.value.trim()}),r.value=!1,m.value=`成功添加状态: ${l.value.trim()}`,await p()}catch(a){o(a.message)}}function y(){if(n.value===null){o("请先选择一行数据");return}const a=c.value.find(e=>e.id===n.value);v.value="edit",l.value=a.name,u.value=a.description||"",r.value=!0}async function C(){if(!l.value.trim()){o("状态名称不能为空");return}try{await B(`/settings/question-statuses/${n.value}`,{name:l.value.trim(),description:u.value.trim()}),r.value=!1,m.value=`成功修改状态: ${l.value.trim()}`,await p()}catch(a){o(a.message)}}async function h(){if(n.value===null){o("请先选择一行数据");return}const a=c.value.find(s=>s.id===n.value),e=a.enabled?"停用":"启用";if(V(`确定要 ${e} 状态【${a.name}】吗?`))try{await x(`/settings/question-statuses/${n.value}/toggle`),m.value=`已${e}: ${a.name}`,await p()}catch(s){o(s.message)}}return $(p),(a,e)=>(b(),f("div",null,[t("div",T,[t("button",{class:"btn",onClick:e[0]||(e[0]=s=>a.$router.push("/settings"))},"< 返回设置"),e[4]||(e[4]=t("span",{class:"nav-title"},"题目状态管理",-1))]),t("div",z,[t("div",{style:{width:"180px","flex-shrink":"0"}},[e[5]||(e[5]=t("div",{style:{"font-weight":"bold","margin-bottom":"12px"}},"操作菜单",-1)),t("button",{class:"btn side-btn",onClick:w},"✚ 新增状态"),t("button",{class:"btn side-btn",onClick:y},"✎ 编辑选中"),e[6]||(e[6]=t("hr",{style:{border:"none","border-top":"1px solid #CCCCCC",margin:"14px 0"}},null,-1)),t("button",{class:"btn side-btn",onClick:h},"✅ 启用/停用")]),t("div",A,[t("table",E,[e[7]||(e[7]=t("thead",null,[t("tr",null,[t("th",{style:{cursor:"default"}},"ID"),t("th",{style:{cursor:"default"}},"状态名称"),t("th",{style:{cursor:"default"}},"状态描述"),t("th",{style:{cursor:"default"}},"当前状态")])],-1)),t("tbody",null,[(b(!0),f(S,null,D(c.value,s=>(b(),f("tr",{key:s.id,class:M(["clickable",{selected:n.value===s.id}]),onClick:X=>n.value=s.id,onDblclick:y},[t("td",P,i(s.id),1),t("td",null,i(s.name),1),t("td",null,i(s.description),1),t("td",U,i(s.enabled?"✅ 启用":"❌ 停用"),1)],42,F))),128))])])])]),t("div",G,i(m.value),1),r.value?(b(),f("div",L,[t("div",O,[t("div",j,i(v.value==="add"?"新增题目状态":"编辑题目状态"),1),t("div",H,[t("div",J,[e[8]||(e[8]=t("label",null,"状态名称:",-1)),g(t("input",{type:"text","onUpdate:modelValue":e[1]||(e[1]=s=>l.value=s),style:{width:"220px"}},null,512),[[_,l.value]])]),t("div",K,[e[9]||(e[9]=t("label",null,"状态描述:",-1)),g(t("input",{type:"text","onUpdate:modelValue":e[2]||(e[2]=s=>u.value=s),style:{width:"220px"}},null,512),[[_,u.value]])])]),t("div",Q,[t("button",{class:"btn primary",onClick:e[3]||(e[3]=s=>v.value==="add"?k():C())},i(v.value==="add"?"保存":"更新"),1)])])])):q("",!0)]))}},tt=N(R,[["__scopeId","data-v-f1401540"]]);export{tt as default};
--- /dev/null
+import{b as $,c as f,a as t,F as S,r as D,t as i,w as g,l as _,p as q,d as I,x as o,y as V,h as x,g as d,I as B,o as b,n as M}from"./index-JKSCyc76.js";import{_ as N}from"./_plugin-vue_export-helper-DlAUqK2U.js";const T={class:"nav-bar"},z={class:"content-area",style:{padding:"20px",display:"flex",gap:"14px"}},A={class:"card",style:{flex:"1"}},E={class:"data-table"},F=["onClick"],P={class:"center"},U={class:"center"},G={style:{padding:"0 20px",color:"#555","font-size":"12px"}},L={key:0,class:"modal-mask"},O={class:"modal"},j={class:"modal-header"},H={class:"modal-body"},J={class:"form-row"},K={class:"form-row"},Q={class:"modal-footer2"},R={__name:"SettingsStatuses",setup(W){const c=d([]),n=d(null),m=d("就绪"),r=d(!1),v=d("add"),l=d(""),u=d("");async function p(){const a=await I("/settings/question-statuses");c.value=a.rows}function w(){v.value="add",l.value="",u.value="",r.value=!0}async function k(){if(!l.value.trim()){o("状态名称不能为空");return}if(l.value.trim().length>20){o("状态名称过长(建议20字以内)");return}try{await x("/settings/question-statuses",{name:l.value.trim(),description:u.value.trim()}),r.value=!1,m.value=`成功添加状态: ${l.value.trim()}`,await p()}catch(a){o(a.message)}}function y(){if(n.value===null){o("请先选择一行数据");return}const a=c.value.find(e=>e.id===n.value);v.value="edit",l.value=a.name,u.value=a.description||"",r.value=!0}async function C(){if(!l.value.trim()){o("状态名称不能为空");return}try{await B(`/settings/question-statuses/${n.value}`,{name:l.value.trim(),description:u.value.trim()}),r.value=!1,m.value=`成功修改状态: ${l.value.trim()}`,await p()}catch(a){o(a.message)}}async function h(){if(n.value===null){o("请先选择一行数据");return}const a=c.value.find(s=>s.id===n.value),e=a.enabled?"停用":"启用";if(V(`确定要 ${e} 状态【${a.name}】吗?`))try{await x(`/settings/question-statuses/${n.value}/toggle`),m.value=`已${e}: ${a.name}`,await p()}catch(s){o(s.message)}}return $(p),(a,e)=>(b(),f("div",null,[t("div",T,[t("button",{class:"btn",onClick:e[0]||(e[0]=s=>a.$router.push("/settings"))},"< 返回设置"),e[4]||(e[4]=t("span",{class:"nav-title"},"题目状态管理",-1))]),t("div",z,[t("div",{style:{width:"180px","flex-shrink":"0"}},[e[5]||(e[5]=t("div",{style:{"font-weight":"bold","margin-bottom":"12px"}},"操作菜单",-1)),t("button",{class:"btn side-btn",onClick:w},"✚ 新增状态"),t("button",{class:"btn side-btn",onClick:y},"✎ 编辑选中"),e[6]||(e[6]=t("hr",{style:{border:"none","border-top":"1px solid #CCCCCC",margin:"14px 0"}},null,-1)),t("button",{class:"btn side-btn",onClick:h},"✅ 启用/停用")]),t("div",A,[t("table",E,[e[7]||(e[7]=t("thead",null,[t("tr",null,[t("th",{style:{cursor:"default"}},"ID"),t("th",{style:{cursor:"default"}},"状态名称"),t("th",{style:{cursor:"default"}},"状态描述"),t("th",{style:{cursor:"default"}},"当前状态")])],-1)),t("tbody",null,[(b(!0),f(S,null,D(c.value,s=>(b(),f("tr",{key:s.id,class:M(["clickable",{selected:n.value===s.id}]),onClick:X=>n.value=s.id,onDblclick:y},[t("td",P,i(s.id),1),t("td",null,i(s.name),1),t("td",null,i(s.description),1),t("td",U,i(s.enabled?"✅ 启用":"❌ 停用"),1)],42,F))),128))])])])]),t("div",G,i(m.value),1),r.value?(b(),f("div",L,[t("div",O,[t("div",j,i(v.value==="add"?"新增题目状态":"编辑题目状态"),1),t("div",H,[t("div",J,[e[8]||(e[8]=t("label",null,"状态名称:",-1)),g(t("input",{type:"text","onUpdate:modelValue":e[1]||(e[1]=s=>l.value=s),style:{width:"220px"}},null,512),[[_,l.value]])]),t("div",K,[e[9]||(e[9]=t("label",null,"状态描述:",-1)),g(t("input",{type:"text","onUpdate:modelValue":e[2]||(e[2]=s=>u.value=s),style:{width:"220px"}},null,512),[[_,u.value]])])]),t("div",Q,[t("button",{class:"btn primary",onClick:e[3]||(e[3]=s=>v.value==="add"?k():C())},i(v.value==="add"?"保存":"更新"),1)])])])):q("",!0)]))}},tt=N(R,[["__scopeId","data-v-f1401540"]]);export{tt as default};
--- /dev/null
+import{b as g,c as u,a as t,F as m,r as y,d as h,L as d,h as b,x as l,I as k,y as w,g as f,o as r,n as j,t as i}from"./index-JKSCyc76.js";import{_ as x}from"./_plugin-vue_export-helper-DlAUqK2U.js";const C={class:"nav-bar"},S={class:"content-area",style:{padding:"20px"}},$={class:"card"},I={class:"data-table"},B=["onClick"],D={class:"center"},P={class:"center"},F={class:"center"},L={__name:"SettingsSubjects",setup(N){const o=f([]),n=f(null);async function c(){const a=await h("/settings/subjects");o.value=a.rows}async function _(){const a=d("新增学科","请输入学科名称 (最多10字):");if(!(a===null||a===""))try{await b("/settings/subjects",{name:a}),await c()}catch(e){l(e.message)}}async function p(){if(n.value===null){l("请先选择一行数据");return}const a=o.value.find(s=>s.id===n.value),e=d("编辑学科","修改学科名称:",a.subject);if(!(e===null||e===""))try{await k(`/settings/subjects/${n.value}`,{name:e}),await c()}catch(s){l(s.message)}}async function v(){if(n.value===null){l("请先选择一行数据");return}const a=o.value.find(s=>s.id===n.value),e=a.enabled?"停用":"启用";if(w(`确定要 ${e} 学科【${a.subject}】吗?`))try{await b(`/settings/subjects/${n.value}/toggle`),await c()}catch(s){l(s.message)}}return g(c),(a,e)=>(r(),u("div",null,[t("div",C,[t("button",{class:"btn",onClick:e[0]||(e[0]=s=>a.$router.push("/settings"))},"< 返回设置"),e[1]||(e[1]=t("span",{class:"nav-title"},"学科管理",-1))]),t("div",S,[t("div",$,[t("div",{style:{display:"flex",gap:"10px","margin-bottom":"12px"}},[t("button",{class:"btn",onClick:_},"+ 新增学科"),t("button",{class:"btn",onClick:p},"编辑名称"),t("button",{class:"btn",onClick:v},"启用/停用")]),t("table",I,[e[2]||(e[2]=t("thead",null,[t("tr",null,[t("th",{style:{cursor:"default"}},"ID"),t("th",{style:{cursor:"default"}},"学科名称"),t("th",{style:{cursor:"default"}},"状态"),t("th",{style:{cursor:"default"}},"创建时间")])],-1)),t("tbody",null,[(r(!0),u(m,null,y(o.value,s=>(r(),u("tr",{key:s.id,class:j(["clickable",{selected:n.value===s.id}]),onClick:z=>n.value=s.id},[t("td",D,i(s.id),1),t("td",null,i(s.subject),1),t("td",P,i(s.enabled?"✅ 启用":"❌ 停用"),1),t("td",F,i(s.create_time),1)],10,B))),128))])])])])]))}},G=x(L,[["__scopeId","data-v-f827c0e4"]]);export{G as default};
--- /dev/null
+import{b as g,c as u,a as t,F as m,r as y,d as h,L as d,h as b,y as l,I as k,z as w,g as f,o as r,n as j,t as i}from"./index-DrsYg5hi.js";import{_ as C}from"./_plugin-vue_export-helper-DlAUqK2U.js";const S={class:"nav-bar"},x={class:"content-area",style:{padding:"20px"}},$={class:"card"},I={class:"data-table"},B=["onClick"],D={class:"center"},P={class:"center"},z={class:"center"},F={__name:"SettingsSubjects",setup(L){const o=f([]),n=f(null);async function c(){const a=await h("/settings/subjects");o.value=a.rows}async function _(){const a=d("新增学科","请输入学科名称 (最多10字):");if(!(a===null||a===""))try{await b("/settings/subjects",{name:a}),await c()}catch(e){l(e.message)}}async function p(){if(n.value===null){l("请先选择一行数据");return}const a=o.value.find(s=>s.id===n.value),e=d("编辑学科","修改学科名称:",a.subject);if(!(e===null||e===""))try{await k(`/settings/subjects/${n.value}`,{name:e}),await c()}catch(s){l(s.message)}}async function v(){if(n.value===null){l("请先选择一行数据");return}const a=o.value.find(s=>s.id===n.value),e=a.enabled?"停用":"启用";if(w(`确定要 ${e} 学科【${a.subject}】吗?`))try{await b(`/settings/subjects/${n.value}/toggle`),await c()}catch(s){l(s.message)}}return g(c),(a,e)=>(r(),u("div",null,[t("div",S,[t("button",{class:"btn",onClick:e[0]||(e[0]=s=>a.$router.push("/settings"))},"< 返回设置"),e[1]||(e[1]=t("span",{class:"nav-title"},"学科管理",-1))]),t("div",x,[t("div",$,[t("div",{style:{display:"flex",gap:"10px","margin-bottom":"12px"}},[t("button",{class:"btn",onClick:_},"+ 新增学科"),t("button",{class:"btn",onClick:p},"编辑名称"),t("button",{class:"btn",onClick:v},"启用/停用")]),t("table",I,[e[2]||(e[2]=t("thead",null,[t("tr",null,[t("th",{style:{cursor:"default"}},"ID"),t("th",{style:{cursor:"default"}},"学科名称"),t("th",{style:{cursor:"default"}},"状态"),t("th",{style:{cursor:"default"}},"创建时间")])],-1)),t("tbody",null,[(r(!0),u(m,null,y(o.value,s=>(r(),u("tr",{key:s.id,class:j(["clickable",{selected:n.value===s.id}]),onClick:N=>n.value=s.id},[t("td",D,i(s.id),1),t("td",null,i(s.subject),1),t("td",P,i(s.enabled?"✅ 启用":"❌ 停用"),1),t("td",z,i(s.create_time),1)],10,B))),128))])])])])]))}},G=C(F,[["__scopeId","data-v-f827c0e4"]]);export{G as default};
--- /dev/null
+import{b as g,c as u,a as t,F as m,r as y,d as h,L as d,h as b,x as l,I as k,y as w,g as f,o as r,n as j,t as i}from"./index-Bkq7kiH8.js";import{_ as x}from"./_plugin-vue_export-helper-DlAUqK2U.js";const C={class:"nav-bar"},S={class:"content-area",style:{padding:"20px"}},$={class:"card"},I={class:"data-table"},B=["onClick"],D={class:"center"},P={class:"center"},F={class:"center"},L={__name:"SettingsSubjects",setup(N){const o=f([]),n=f(null);async function c(){const a=await h("/settings/subjects");o.value=a.rows}async function _(){const a=d("新增学科","请输入学科名称 (最多10字):");if(!(a===null||a===""))try{await b("/settings/subjects",{name:a}),await c()}catch(e){l(e.message)}}async function p(){if(n.value===null){l("请先选择一行数据");return}const a=o.value.find(s=>s.id===n.value),e=d("编辑学科","修改学科名称:",a.subject);if(!(e===null||e===""))try{await k(`/settings/subjects/${n.value}`,{name:e}),await c()}catch(s){l(s.message)}}async function v(){if(n.value===null){l("请先选择一行数据");return}const a=o.value.find(s=>s.id===n.value),e=a.enabled?"停用":"启用";if(w(`确定要 ${e} 学科【${a.subject}】吗?`))try{await b(`/settings/subjects/${n.value}/toggle`),await c()}catch(s){l(s.message)}}return g(c),(a,e)=>(r(),u("div",null,[t("div",C,[t("button",{class:"btn",onClick:e[0]||(e[0]=s=>a.$router.push("/settings"))},"< 返回设置"),e[1]||(e[1]=t("span",{class:"nav-title"},"学科管理",-1))]),t("div",S,[t("div",$,[t("div",{style:{display:"flex",gap:"10px","margin-bottom":"12px"}},[t("button",{class:"btn",onClick:_},"+ 新增学科"),t("button",{class:"btn",onClick:p},"编辑名称"),t("button",{class:"btn",onClick:v},"启用/停用")]),t("table",I,[e[2]||(e[2]=t("thead",null,[t("tr",null,[t("th",{style:{cursor:"default"}},"ID"),t("th",{style:{cursor:"default"}},"学科名称"),t("th",{style:{cursor:"default"}},"状态"),t("th",{style:{cursor:"default"}},"创建时间")])],-1)),t("tbody",null,[(r(!0),u(m,null,y(o.value,s=>(r(),u("tr",{key:s.id,class:j(["clickable",{selected:n.value===s.id}]),onClick:z=>n.value=s.id},[t("td",D,i(s.id),1),t("td",null,i(s.subject),1),t("td",P,i(s.enabled?"✅ 启用":"❌ 停用"),1),t("td",F,i(s.create_time),1)],10,B))),128))])])])])]))}},G=x(L,[["__scopeId","data-v-f827c0e4"]]);export{G as default};
--- /dev/null
+.subject-grid[data-v-56d71146]{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:12px}@media (max-width: 900px){.subject-grid[data-v-56d71146]{grid-template-columns:1fr}}.subject-block[data-v-56d71146]{padding:12px 18px 8px;margin-bottom:0}.subject-title[data-v-56d71146]{font-size:21px;font-weight:700;margin-bottom:2px}.section-label[data-v-56d71146]{font-size:12px;color:#999;margin-bottom:4px}.stat-line[data-v-56d71146]{display:flex;align-items:center;justify-content:space-between;margin:7px 0}.stat-label[data-v-56d71146]{color:#555;font-size:13px}.stat-val[data-v-56d71146]{font-size:20px;font-weight:700;font-family:Helvetica,sans-serif}.stat-val.xl[data-v-56d71146]{font-size:28px}.subject-block.math[data-v-56d71146]{background:#e3f2fd;border-color:#bbdefb}.subject-block.math .subject-title[data-v-56d71146]{color:#1565c0}.subject-block.physics[data-v-56d71146]{background:#e0f7fa;border-color:#b2ebf2}.subject-block.physics .subject-title[data-v-56d71146]{color:#00838f}.subject-block.chemistry[data-v-56d71146]{background:#fff3e0;border-color:#ffe0b2}.subject-block.chemistry .subject-title[data-v-56d71146]{color:#ef6c00}.subject-block.biology[data-v-56d71146]{background:#e8f5e9;border-color:#c8e6c9}.subject-block.biology .subject-title[data-v-56d71146]{color:#2e7d32}.subject-block.purple[data-v-56d71146]{background:#f3e5f5;border-color:#e1bee7}.subject-block.purple .subject-title[data-v-56d71146]{color:#7b1fa2}.subject-block.pink[data-v-56d71146]{background:#fce4ec;border-color:#f8bbd0}.subject-block.pink .subject-title[data-v-56d71146]{color:#c2185b}
--- /dev/null
+.subject-grid[data-v-96014757]{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:12px}@media (max-width: 900px){.subject-grid[data-v-96014757]{grid-template-columns:1fr}}.subject-block[data-v-96014757]{padding:12px 18px 8px;margin-bottom:0}.subject-title[data-v-96014757]{font-size:21px;font-weight:700;margin-bottom:2px}.section-label[data-v-96014757]{font-size:12px;color:#999;margin-bottom:4px}.stat-line[data-v-96014757]{display:flex;align-items:center;gap:10px;margin:7px 0}.stat-label[data-v-96014757]{color:#555;font-size:13px}.stat-label.label-xl[data-v-96014757]{font-size:18px;font-weight:700;color:#333}.stat-val[data-v-96014757]{font-size:20px;font-weight:700;font-family:Helvetica,sans-serif}.stat-val.xl[data-v-96014757]{font-size:28px}.clickable[data-v-96014757]{cursor:pointer}.clickable[data-v-96014757]:hover{text-decoration:underline}.subject-block.math[data-v-96014757]{background:#e3f2fd;border-color:#bbdefb}.subject-block.math .subject-title[data-v-96014757]{color:#1565c0}.subject-block.physics[data-v-96014757]{background:#e0f7fa;border-color:#b2ebf2}.subject-block.physics .subject-title[data-v-96014757]{color:#00838f}.subject-block.chemistry[data-v-96014757]{background:#fff3e0;border-color:#ffe0b2}.subject-block.chemistry .subject-title[data-v-96014757]{color:#ef6c00}.subject-block.biology[data-v-96014757]{background:#e8f5e9;border-color:#c8e6c9}.subject-block.biology .subject-title[data-v-96014757]{color:#2e7d32}.subject-block.purple[data-v-96014757]{background:#f3e5f5;border-color:#e1bee7}.subject-block.purple .subject-title[data-v-96014757]{color:#7b1fa2}.subject-block.pink[data-v-96014757]{background:#fce4ec;border-color:#f8bbd0}.subject-block.pink .subject-title[data-v-96014757]{color:#c2185b}
--- /dev/null
+import{b as $,d as j,e as S,f as D,c as n,a as e,w,v as E,F as f,r as m,g as c,h as z,u as B,o as i,t as r,i as M,j as O,n as P}from"./index-DrsYg5hi.js";import{_ as T}from"./_plugin-vue_export-helper-DlAUqK2U.js";const V={class:"page-header"},q={class:"content-area"},L={class:"card"},U={class:"row",style:{display:"flex","align-items":"center",gap:"10px","flex-wrap":"wrap"}},A=["value"],I=["onUpdate:modelValue"],H={class:"subject-grid"},N={class:"subject-title"},G={class:"stat-line"},J=["onClick"],K={class:"stat-line"},R=["onClick"],Q={class:"stat-line"},W=["onClick"],X={class:"stat-line"},Y={class:"stat-val",style:{color:"#1976D2"}},Z={style:{display:"flex",gap:"15px","margin-top":"16px","justify-content":"center","flex-wrap":"wrap"}},tt={__name:"SubjectPortal",setup(st){const h=B(),p=c([]),y=c([]),d=c({}),o=c("全部"),_=c(["全部"]),v=c([]),C={数学:"math",物理:"physics",化学:"chemistry",生物:"biology"},k=["math","physics","chemistry","biology","purple","pink"];function F(a,s){return C[a]||k[s%k.length]}function x(){return{wrong_total:0,wrong_fixed:0,wrong_ratio:"0%",wrong_remained:0}}function b(a,s){const t={subject:s,question_nature:"错题",archive_status:"全部"};o.value&&o.value!=="全部"&&(t.term=o.value);const l=Object.entries(d.value).filter(([,u])=>u).map(([u])=>u);l.length&&(t.stage_ids=l.join(",")),a==="fixed"?t.right_times="rt>0":a==="remained"&&(t.right_times="rt=0"),h.push({path:"/questions",query:t})}async function g(){const a=Object.entries(d.value).filter(([,t])=>t).map(([t])=>parseInt(t));v.value=p.value.map(t=>({subject:t,stats:x()}));const s=await Promise.all(p.value.map(t=>z("/portal/stats",{subject:t,stage_ids:a,term:o.value}).catch(()=>x())));v.value=p.value.map((t,l)=>({subject:t,stats:s[l]}))}return $(async()=>{const a=await j("/portal/options");p.value=a.subjects,y.value=a.stages;const s={};for(const t of a.stages)s[t.id]=!0;d.value=s,await S(),_.value=["全部",...D.term];try{const t=await j("/settings/default-params");t&&t.term&&t.term.default&&(o.value=t.term.default)}catch{}await g()}),(a,s)=>(i(),n("div",null,[e("div",V,[s[5]||(s[5]=e("span",{class:"title"},"科目概要面板",-1)),e("button",{class:"btn",onClick:s[0]||(s[0]=t=>a.$router.push("/"))},"返回首页")]),e("div",q,[e("div",L,[e("div",U,[s[6]||(s[6]=e("label",null,"学期:",-1)),w(e("select",{"onUpdate:modelValue":s[1]||(s[1]=t=>o.value=t),onChange:g},[(i(!0),n(f,null,m(_.value,t=>(i(),n("option",{key:t,value:t},r(t),9,A))),128))],544),[[E,o.value]]),s[7]||(s[7]=e("label",{style:{"margin-left":"20px"}},"统计阶段:",-1)),(i(!0),n(f,null,m(y.value,t=>(i(),n("label",{key:t.id,style:{"font-size":"13px"}},[w(e("input",{type:"checkbox","onUpdate:modelValue":l=>d.value[t.id]=l},null,8,I),[[M,d.value[t.id]]]),O(" "+r(t.name),1)]))),128)),e("button",{class:"btn",onClick:g},"确定统计")])]),e("div",H,[(i(!0),n(f,null,m(v.value,(t,l)=>(i(),n("div",{key:t.subject,class:P(["card subject-block",F(t.subject,l)])},[e("div",N,r(t.subject),1),s[12]||(s[12]=e("div",{class:"section-label"},"错题情况回顾",-1)),e("div",G,[s[8]||(s[8]=e("span",{class:"stat-label label-xl"},"遗留题目数:",-1)),e("span",{class:"stat-val xl clickable",style:{color:"#D32F2F"},onClick:u=>b("remained",t.subject)},r(t.stats.wrong_remained),9,J)]),e("div",K,[s[9]||(s[9]=e("span",{class:"stat-label"},"错题总数:",-1)),e("span",{class:"stat-val clickable",style:{color:"#333"},onClick:u=>b("total",t.subject)},r(t.stats.wrong_total),9,R)]),e("div",Q,[s[10]||(s[10]=e("span",{class:"stat-label"},"已解决数:",-1)),e("span",{class:"stat-val clickable",style:{color:"#2E7D32"},onClick:u=>b("fixed",t.subject)},r(t.stats.wrong_fixed),9,W)]),e("div",X,[s[11]||(s[11]=e("span",{class:"stat-label"},"解决比例:",-1)),e("span",Y,r(t.stats.wrong_ratio),1)])],2))),128))]),e("div",Z,[e("button",{class:"btn",style:{background:"#FF4D4F",color:"#000","font-weight":"bold",padding:"10px 30px","font-size":"14px"},onClick:s[2]||(s[2]=t=>a.$router.push("/analysis/pending"))},"遗留分析"),e("button",{class:"btn",style:{background:"#1890FF",color:"#000","font-weight":"bold",padding:"10px 30px","font-size":"14px"},onClick:s[3]||(s[3]=t=>a.$router.push("/analysis/chapters"))},"章节分析"),e("button",{class:"btn",style:{background:"#52C41A",color:"#000","font-weight":"bold",padding:"10px 30px","font-size":"14px"},onClick:s[4]||(s[4]=t=>a.$router.push("/analysis/knowledge"))},"知识点分析")])])]))}},lt=T(tt,[["__scopeId","data-v-96014757"]]);export{lt as default};
--- /dev/null
+.subject-grid[data-v-ca3ad9ef]{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:12px}@media (max-width: 900px){.subject-grid[data-v-ca3ad9ef]{grid-template-columns:1fr}}.subject-block[data-v-ca3ad9ef]{padding:12px 18px 8px;margin-bottom:0}.subject-title[data-v-ca3ad9ef]{font-size:21px;font-weight:700;margin-bottom:2px}.section-label[data-v-ca3ad9ef]{font-size:12px;color:#999;margin-bottom:4px}.stat-line[data-v-ca3ad9ef]{display:flex;align-items:center;justify-content:space-between;margin:7px 0}.stat-label[data-v-ca3ad9ef]{color:#555;font-size:13px}.stat-val[data-v-ca3ad9ef]{font-size:20px;font-weight:700;font-family:Helvetica,sans-serif}.stat-val.big[data-v-ca3ad9ef]{font-size:26px}.subject-block.math[data-v-ca3ad9ef]{background:#e3f2fd;border-color:#bbdefb}.subject-block.math .subject-title[data-v-ca3ad9ef]{color:#1565c0}.subject-block.physics[data-v-ca3ad9ef]{background:#e0f7fa;border-color:#b2ebf2}.subject-block.physics .subject-title[data-v-ca3ad9ef]{color:#00838f}.subject-block.chemistry[data-v-ca3ad9ef]{background:#fff3e0;border-color:#ffe0b2}.subject-block.chemistry .subject-title[data-v-ca3ad9ef]{color:#ef6c00}.subject-block.biology[data-v-ca3ad9ef]{background:#e8f5e9;border-color:#c8e6c9}.subject-block.biology .subject-title[data-v-ca3ad9ef]{color:#2e7d32}.subject-block.purple[data-v-ca3ad9ef]{background:#f3e5f5;border-color:#e1bee7}.subject-block.purple .subject-title[data-v-ca3ad9ef]{color:#7b1fa2}.subject-block.pink[data-v-ca3ad9ef]{background:#fce4ec;border-color:#f8bbd0}.subject-block.pink .subject-title[data-v-ca3ad9ef]{color:#c2185b}
--- /dev/null
+import{b as h,d as w,e as C,f as F,c as l,a as e,w as x,v as S,F as b,r as g,g as i,h as $,o,t as n,i as D,j as E,n as z}from"./index-Bkq7kiH8.js";import{_ as B}from"./_plugin-vue_export-helper-DlAUqK2U.js";const M={class:"page-header"},P={class:"content-area"},T={class:"card"},V={class:"row",style:{display:"flex","align-items":"center",gap:"10px","flex-wrap":"wrap"}},O=["value"],U=["onUpdate:modelValue"],A={class:"subject-grid"},I={class:"subject-title"},L={class:"stat-line"},H={class:"stat-val xl",style:{color:"#D32F2F"}},N={class:"stat-line"},G={class:"stat-val",style:{color:"#333"}},J={class:"stat-line"},K={class:"stat-val",style:{color:"#2E7D32"}},q={class:"stat-line"},Q={class:"stat-val",style:{color:"#1976D2"}},R={style:{display:"flex",gap:"15px","margin-top":"16px","justify-content":"center","flex-wrap":"wrap"}},W={__name:"SubjectPortal",setup(X){const u=i([]),f=i([]),d=i({}),p=i("全部"),y=i(["全部"]),c=i([]),j={数学:"math",物理:"physics",化学:"chemistry",生物:"biology"},m=["math","physics","chemistry","biology","purple","pink"];function k(a,s){return j[a]||m[s%m.length]}function _(){return{wrong_total:0,wrong_fixed:0,wrong_ratio:"0%",wrong_remained:0}}async function v(){const a=Object.entries(d.value).filter(([,t])=>t).map(([t])=>parseInt(t));c.value=u.value.map(t=>({subject:t,stats:_()}));const s=await Promise.all(u.value.map(t=>$("/portal/stats",{subject:t,stage_ids:a,term:p.value}).catch(()=>_())));c.value=u.value.map((t,r)=>({subject:t,stats:s[r]}))}return h(async()=>{const a=await w("/portal/options");u.value=a.subjects,f.value=a.stages;const s={};for(const t of a.stages)s[t.id]=!0;d.value=s,await C(),y.value=["全部",...F.term];try{const t=await w("/settings/default-params");t&&t.term&&t.term.default&&(p.value=t.term.default)}catch{}await v()}),(a,s)=>(o(),l("div",null,[e("div",M,[s[5]||(s[5]=e("span",{class:"title"},"科目概要面板",-1)),e("button",{class:"btn",onClick:s[0]||(s[0]=t=>a.$router.push("/"))},"返回首页")]),e("div",P,[e("div",T,[e("div",V,[s[6]||(s[6]=e("label",null,"学期:",-1)),x(e("select",{"onUpdate:modelValue":s[1]||(s[1]=t=>p.value=t),onChange:v},[(o(!0),l(b,null,g(y.value,t=>(o(),l("option",{key:t,value:t},n(t),9,O))),128))],544),[[S,p.value]]),s[7]||(s[7]=e("label",{style:{"margin-left":"20px"}},"统计阶段:",-1)),(o(!0),l(b,null,g(f.value,t=>(o(),l("label",{key:t.id,style:{"font-size":"13px"}},[x(e("input",{type:"checkbox","onUpdate:modelValue":r=>d.value[t.id]=r},null,8,U),[[D,d.value[t.id]]]),E(" "+n(t.name),1)]))),128)),e("button",{class:"btn",onClick:v},"确定统计")])]),e("div",A,[(o(!0),l(b,null,g(c.value,(t,r)=>(o(),l("div",{key:t.subject,class:z(["card subject-block",k(t.subject,r)])},[e("div",I,n(t.subject),1),s[12]||(s[12]=e("div",{class:"section-label"},"错题情况回顾",-1)),e("div",L,[s[8]||(s[8]=e("span",{class:"stat-label"},"遗留题目数:",-1)),e("span",H,n(t.stats.wrong_remained),1)]),e("div",N,[s[9]||(s[9]=e("span",{class:"stat-label"},"错题总数:",-1)),e("span",G,n(t.stats.wrong_total),1)]),e("div",J,[s[10]||(s[10]=e("span",{class:"stat-label"},"已解决数:",-1)),e("span",K,n(t.stats.wrong_fixed),1)]),e("div",q,[s[11]||(s[11]=e("span",{class:"stat-label"},"解决比例:",-1)),e("span",Q,n(t.stats.wrong_ratio),1)])],2))),128))]),e("div",R,[e("button",{class:"btn",style:{background:"#FF4D4F",color:"#000","font-weight":"bold",padding:"10px 30px","font-size":"14px"},onClick:s[2]||(s[2]=t=>a.$router.push("/analysis/pending"))},"遗留分析"),e("button",{class:"btn",style:{background:"#1890FF",color:"#000","font-weight":"bold",padding:"10px 30px","font-size":"14px"},onClick:s[3]||(s[3]=t=>a.$router.push("/analysis/chapters"))},"章节分析"),e("button",{class:"btn",style:{background:"#52C41A",color:"#000","font-weight":"bold",padding:"10px 30px","font-size":"14px"},onClick:s[4]||(s[4]=t=>a.$router.push("/analysis/knowledge"))},"知识点分析")])])]))}},tt=B(W,[["__scopeId","data-v-56d71146"]]);export{tt as default};
--- /dev/null
+import{b as h,d as w,e as C,f as F,c as l,a as e,w as x,v as S,F as b,r as g,g as i,h as $,o,t as n,i as D,j as E,n as z}from"./index-JKSCyc76.js";import{_ as B}from"./_plugin-vue_export-helper-DlAUqK2U.js";const M={class:"page-header"},P={class:"content-area"},T={class:"card"},V={class:"row",style:{display:"flex","align-items":"center",gap:"10px","flex-wrap":"wrap"}},O=["value"],U=["onUpdate:modelValue"],A={class:"subject-grid"},I={class:"subject-title"},L={class:"stat-line"},H={class:"stat-val",style:{color:"#333"}},N={class:"stat-line"},G={class:"stat-val",style:{color:"#2E7D32"}},J={class:"stat-line"},K={class:"stat-val big",style:{color:"#1976D2"}},q={class:"stat-line"},Q={class:"stat-val",style:{color:"#D32F2F"}},R={style:{display:"flex",gap:"15px","margin-top":"16px","justify-content":"center","flex-wrap":"wrap"}},W={__name:"SubjectPortal",setup(X){const u=i([]),f=i([]),d=i({}),p=i("全部"),y=i(["全部"]),c=i([]),j={数学:"math",物理:"physics",化学:"chemistry",生物:"biology"},m=["math","physics","chemistry","biology","purple","pink"];function k(a,s){return j[a]||m[s%m.length]}function _(){return{wrong_total:0,wrong_fixed:0,wrong_ratio:"0%",wrong_remained:0}}async function v(){const a=Object.entries(d.value).filter(([,t])=>t).map(([t])=>parseInt(t));c.value=u.value.map(t=>({subject:t,stats:_()}));const s=await Promise.all(u.value.map(t=>$("/portal/stats",{subject:t,stage_ids:a,term:p.value}).catch(()=>_())));c.value=u.value.map((t,r)=>({subject:t,stats:s[r]}))}return h(async()=>{const a=await w("/portal/options");u.value=a.subjects,f.value=a.stages;const s={};for(const t of a.stages)s[t.id]=!0;d.value=s,await C(),y.value=["全部",...F.term];try{const t=await w("/settings/default-params");t&&t.term&&t.term.default&&(p.value=t.term.default)}catch{}await v()}),(a,s)=>(o(),l("div",null,[e("div",M,[s[5]||(s[5]=e("span",{class:"title"},"科目概要面板",-1)),e("button",{class:"btn",onClick:s[0]||(s[0]=t=>a.$router.push("/"))},"返回首页")]),e("div",P,[e("div",T,[e("div",V,[s[6]||(s[6]=e("label",null,"学期:",-1)),x(e("select",{"onUpdate:modelValue":s[1]||(s[1]=t=>p.value=t),onChange:v},[(o(!0),l(b,null,g(y.value,t=>(o(),l("option",{key:t,value:t},n(t),9,O))),128))],544),[[S,p.value]]),s[7]||(s[7]=e("label",{style:{"margin-left":"20px"}},"统计阶段:",-1)),(o(!0),l(b,null,g(f.value,t=>(o(),l("label",{key:t.id,style:{"font-size":"13px"}},[x(e("input",{type:"checkbox","onUpdate:modelValue":r=>d.value[t.id]=r},null,8,U),[[D,d.value[t.id]]]),E(" "+n(t.name),1)]))),128)),e("button",{class:"btn",onClick:v},"确定统计")])]),e("div",A,[(o(!0),l(b,null,g(c.value,(t,r)=>(o(),l("div",{key:t.subject,class:z(["card subject-block",k(t.subject,r)])},[e("div",I,n(t.subject),1),s[12]||(s[12]=e("div",{class:"section-label"},"错题情况回顾",-1)),e("div",L,[s[8]||(s[8]=e("span",{class:"stat-label"},"错题总数:",-1)),e("span",H,n(t.stats.wrong_total),1)]),e("div",N,[s[9]||(s[9]=e("span",{class:"stat-label"},"已解决数:",-1)),e("span",G,n(t.stats.wrong_fixed),1)]),e("div",J,[s[10]||(s[10]=e("span",{class:"stat-label"},"解决比例:",-1)),e("span",K,n(t.stats.wrong_ratio),1)]),e("div",q,[s[11]||(s[11]=e("span",{class:"stat-label"},"遗留题目数:",-1)),e("span",Q,n(t.stats.wrong_remained),1)])],2))),128))]),e("div",R,[e("button",{class:"btn",style:{background:"#FF4D4F",color:"#000","font-weight":"bold",padding:"10px 30px","font-size":"14px"},onClick:s[2]||(s[2]=t=>a.$router.push("/analysis/pending"))},"遗留分析"),e("button",{class:"btn",style:{background:"#1890FF",color:"#000","font-weight":"bold",padding:"10px 30px","font-size":"14px"},onClick:s[3]||(s[3]=t=>a.$router.push("/analysis/chapters"))},"章节分析"),e("button",{class:"btn",style:{background:"#52C41A",color:"#000","font-weight":"bold",padding:"10px 30px","font-size":"14px"},onClick:s[4]||(s[4]=t=>a.$router.push("/analysis/knowledge"))},"知识点分析")])])]))}},tt=B(W,[["__scopeId","data-v-ca3ad9ef"]]);export{tt as default};
--- /dev/null
+const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/Home-CU44J6Oq.js","assets/_plugin-vue_export-helper-DlAUqK2U.js","assets/Home-BS2dZmih.css","assets/SubjectPortal-Ci-W5Wu7.js","assets/SubjectPortal--2_NSOiv.css","assets/QuestionList-C0e9T1NX.js","assets/RichContent-BjLjzWA-.js","assets/RichContent-i88-frEH.css","assets/QuestionList-Bsgm7r51.css","assets/QuestionAdd-lnn0hhip.js","assets/FileImport-D8krUDMm.js","assets/FileImport-BnZT11gH.css","assets/ImportPreview-BVcw4E59.js","assets/ImportPreview-CVbloBt1.css","assets/QuestionDetail-DCCc806H.js","assets/QuestionDetail-C_Hr81KT.css","assets/PapersList-CNYCkk5-.js","assets/PapersList-CJuySWdY.css","assets/PapersPreview-BUPg1vVL.js","assets/AnalysisChapters-NYxjKhNB.js","assets/AnalysisChapters-DTn9LWoa.css","assets/AnalysisKnowledge-CTnCiLVh.js","assets/AnalysisKnowledge-5QPt6Ak_.css","assets/AnalysisPending-Dz1dSt5S.js","assets/AnalysisPending-C5SzviRH.css","assets/Settings-B3C_XWB2.js","assets/Settings-pzGFQctT.css","assets/SettingsSubjects-DZqkWHfQ.js","assets/SettingsSubjects-bGGsFjfA.css","assets/SettingsErrorCauses-DUT9gPGy.js","assets/SettingsErrorCauses-BA8Zr_cv.css","assets/SettingsStatuses-DNB6fRgS.js","assets/SettingsStatuses-XHEFsW5N.css"])))=>i.map(i=>d[i]);
+(function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const r of document.querySelectorAll('link[rel="modulepreload"]'))s(r);new MutationObserver(r=>{for(const i of r)if(i.type==="childList")for(const o of i.addedNodes)o.tagName==="LINK"&&o.rel==="modulepreload"&&s(o)}).observe(document,{childList:!0,subtree:!0});function n(r){const i={};return r.integrity&&(i.integrity=r.integrity),r.referrerPolicy&&(i.referrerPolicy=r.referrerPolicy),r.crossOrigin==="use-credentials"?i.credentials="include":r.crossOrigin==="anonymous"?i.credentials="omit":i.credentials="same-origin",i}function s(r){if(r.ep)return;r.ep=!0;const i=n(r);fetch(r.href,i)}})();const mo="modulepreload",_o=function(e){return"/StudyBase/"+e},Ys={},re=function(t,n,s){let r=Promise.resolve();if(n&&n.length>0){document.getElementsByTagName("link");const o=document.querySelector("meta[property=csp-nonce]"),l=(o==null?void 0:o.nonce)||(o==null?void 0:o.getAttribute("nonce"));r=Promise.allSettled(n.map(c=>{if(c=_o(c),c in Ys)return;Ys[c]=!0;const a=c.endsWith(".css"),f=a?'[rel="stylesheet"]':"";if(document.querySelector(`link[href="${c}"]${f}`))return;const h=document.createElement("link");if(h.rel=a?"stylesheet":mo,a||(h.as="script"),h.crossOrigin="",h.href=c,l&&h.setAttribute("nonce",l),document.head.appendChild(h),a)return new Promise((g,m)=>{h.addEventListener("load",g),h.addEventListener("error",()=>m(new Error(`Unable to preload CSS for ${c}`)))})}))}function i(o){const l=new Event("vite:preloadError",{cancelable:!0});if(l.payload=o,window.dispatchEvent(l),!l.defaultPrevented)throw o}return r.then(o=>{for(const l of o||[])l.status==="rejected"&&i(l.reason);return t().catch(i)})};/**
+* @vue/shared v3.5.42
+* (c) 2018-present Yuxi (Evan) You and Vue contributors
+* @license MIT
+**/function Cs(e){const t=Object.create(null);for(const n of e.split(","))t[n]=1;return n=>n in t}const X={},Mt=[],qe=()=>{},qr=()=>!1,Ln=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&(e.charCodeAt(2)>122||e.charCodeAt(2)<97),Vn=e=>e.startsWith("onUpdate:"),fe=Object.assign,Os=(e,t)=>{const n=e.indexOf(t);n>-1&&e.splice(n,1)},yo=Object.prototype.hasOwnProperty,q=(e,t)=>yo.call(e,t),L=Array.isArray,gt=e=>an(e)==="[object Map]",st=e=>an(e)==="[object Set]",Xs=e=>an(e)==="[object Date]",B=e=>typeof e=="function",ne=e=>typeof e=="string",$e=e=>typeof e=="symbol",$=e=>e!==null&&typeof e=="object",$r=e=>($(e)||B(e))&&B(e.then)&&B(e.catch),zr=Object.prototype.toString,an=e=>zr.call(e),vo=e=>an(e).slice(8,-1),Jr=e=>an(e)==="[object Object]",Ps=e=>ne(e)&&e!=="NaN"&&e[0]!=="-"&&""+parseInt(e,10)===e,Qt=Cs(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),jn=e=>{const t=Object.create(null);return n=>t[n]||(t[n]=e(n))},bo=/-\w/g,_e=jn(e=>e.replace(bo,t=>t.slice(1).toUpperCase())),Eo=/\B([A-Z])/g,_t=jn(e=>e.replace(Eo,"-$1").toLowerCase()),Fn=jn(e=>e.charAt(0).toUpperCase()+e.slice(1)),Qn=jn(e=>e?`on${Fn(e)}`:""),We=(e,t)=>!Object.is(e,t),An=(e,...t)=>{for(let n=0;n<e.length;n++)e[n](...t)},Qr=(e,t,n,s=!1)=>{Object.defineProperty(e,t,{configurable:!0,enumerable:!1,writable:s,value:n})},Hn=e=>{const t=parseFloat(e);return isNaN(t)?e:t};let Zs;const Bn=()=>Zs||(Zs=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{});function Ts(e){if(L(e)){const t={};for(let n=0;n<e.length;n++){const s=e[n],r=ne(s)?wo(s):Ts(s);if(r)for(const i in r)t[i]=r[i]}return t}else if(ne(e)||$(e))return e}const Ao=/;(?![^(]*\))/g,Ro=/:([^]+)/,xo=/\/\*[^]*?\*\//g;function wo(e){const t={};return e.replace(xo,"").split(Ao).forEach(n=>{if(n){const s=n.split(Ro);s.length>1&&(t[s[0].trim()]=s[1].trim())}}),t}function Is(e){let t="";if(ne(e))t=e;else if(L(e))for(let n=0;n<e.length;n++){const s=Is(e[n]);s&&(t+=s+" ")}else if($(e))for(const n in e)e[n]&&(t+=n+" ");return t.trim()}const So="itemscope,allowfullscreen,formnovalidate,ismap,nomodule,novalidate,readonly",Co=Cs(So);function Yr(e){return!!e||e===""}function Oo(e,t){if(e.length!==t.length)return!1;let n=!0;for(let s=0;n&&s<e.length;s++)n=Te(e[s],t[s]);return n}function er(e,t){if(e.size!==t.size)return!1;const n=Array.from(t),s=new Uint8Array(n.length);for(const r of e){let i=-1;for(let o=0;o<n.length;o++)if(!s[o]&&Te(r,n[o])){i=o;break}if(i<0)return!1;s[i]=1}return!0}function Te(e,t){if(e===t)return!0;let n=Xs(e),s=Xs(t);if(n||s)return n&&s?e.getTime()===t.getTime():!1;if(n=$e(e),s=$e(t),n||s)return e===t;if(n=L(e),s=L(t),n||s)return n&&s?Oo(e,t):!1;if(n=$(e),s=$(t),n||s){if(!n||!s)return!1;if(n=gt(e),s=gt(t),n||s||(n=st(e),s=st(t),n||s))return n&&s?er(e,t):!1;const r=Object.keys(e).length,i=Object.keys(t).length;if(r!==i)return!1;for(const o in e){const l=e.hasOwnProperty(o),c=t.hasOwnProperty(o);if(l&&!c||!l&&c||!Te(e[o],t[o]))return!1}}return String(e)===String(t)}function Ns(e,t){return e.findIndex(n=>Te(n,t))}const Xr=e=>!!(e&&e.__v_isRef===!0),Po=e=>ne(e)?e:e==null?"":L(e)||$(e)&&(e.toString===zr||!B(e.toString))?Xr(e)?Po(e.value):JSON.stringify(e,Zr,2):String(e),Zr=(e,t)=>Xr(t)?Zr(e,t.value):gt(t)?{[`Map(${t.size})`]:[...t.entries()].reduce((n,[s,r],i)=>(n[Yn(s,i)+" =>"]=r,n),{})}:st(t)?{[`Set(${t.size})`]:[...t.values()].map(n=>Yn(n))}:$e(t)?Yn(t):$(t)&&!L(t)&&!Jr(t)?String(t):t,Yn=(e,t="")=>{var n;return $e(e)?`Symbol(${(n=e.description)!=null?n:t})`:e};/**
+* @vue/reactivity v3.5.42
+* (c) 2018-present Yuxi (Evan) You and Vue contributors
+* @license MIT
+**/let ue;class To{constructor(t=!1){this.detached=t,this._active=!0,this._on=0,this.effects=[],this.cleanups=[],this._isPaused=!1,this._warnOnRun=!0,this.__v_skip=!0,!t&&ue&&(ue.active?(this.parent=ue,this.index=(ue.scopes||(ue.scopes=[])).push(this)-1):(this._active=!1,this._warnOnRun=!1))}get active(){return this._active}pause(){if(this._active){this._isPaused=!0;let t,n;if(this.scopes){const s=this.scopes.slice();for(t=0,n=s.length;t<n;t++)s[t].pause()}for(t=0,n=this.effects.length;t<n;t++)this.effects[t].pause()}}resume(){if(this._active&&this._isPaused){this._isPaused=!1;let t,n;if(this.scopes){const r=this.scopes.slice();for(t=0,n=r.length;t<n;t++)r[t].resume()}const s=this.effects.slice();for(t=0,n=s.length;t<n;t++)s[t].resume()}}run(t){if(this._active){const n=ue;try{return ue=this,t()}finally{ue=n}}}on(){++this._on===1&&(this.prevScope=ue,ue=this)}off(){if(this._on>0&&--this._on===0){if(ue===this)ue=this.prevScope;else{let t=ue;for(;t;){if(t.prevScope===this){t.prevScope=this.prevScope;break}t=t.prevScope}}this.prevScope=void 0}}stop(t){if(this._active){this._active=!1;let n,s;for(n=0,s=this.effects.length;n<s;n++)this.effects[n].stop();for(this.effects.length=0,n=0,s=this.cleanups.length;n<s;n++)this.cleanups[n]();if(this.cleanups.length=0,this.scopes){const r=this.scopes.slice();for(n=0,s=r.length;n<s;n++)r[n].stop(!0);this.scopes.length=0}if(!this.detached&&this.parent&&!t){const r=this.parent.scopes.pop();r&&r!==this&&(this.parent.scopes[this.index]=r,r.index=this.index)}this.parent=void 0}}}function Io(){return ue}let Z;const Xn=new WeakSet;class ei{constructor(t){this.fn=t,this.deps=void 0,this.depsTail=void 0,this.flags=5,this.next=void 0,this.cleanup=void 0,this.scheduler=void 0,ue&&(ue.active?ue.effects.push(this):this.flags&=-2)}pause(){this.flags|=64}resume(){this.flags&64&&(this.flags&=-65,Xn.has(this)&&(Xn.delete(this),this.trigger()))}notify(){this.flags&2&&!(this.flags&32)||this.flags&8||ni(this)}run(){if(!(this.flags&1))return this.fn();this.flags|=2,tr(this),si(this);const t=Z,n=Oe;Z=this,Oe=!0;try{return this.fn()}finally{ri(this),Z=t,Oe=n,this.flags&=-3}}stop(){if(this.flags&1){for(let t=this.deps;t;t=t.nextDep)Ls(t);this.deps=this.depsTail=void 0,tr(this),this.onStop&&this.onStop(),this.flags&=-2}}trigger(){this.flags&64?Xn.add(this):this.scheduler?this.scheduler():this.runIfDirty()}runIfDirty(){hs(this)&&this.run()}get dirty(){return hs(this)}}let ti=0,Yt,Xt;function ni(e,t=!1){if(e.flags|=8,t){e.next=Xt,Xt=e;return}e.next=Yt,Yt=e}function Ds(){ti++}function Ms(){if(--ti>0)return;if(Xt){let t=Xt;for(Xt=void 0;t;){const n=t.next;t.next=void 0,t.flags&=-9,t=n}}let e;for(;Yt;){let t=Yt;for(Yt=void 0;t;){const n=t.next;if(t.next=void 0,t.flags&=-9,t.flags&1)try{t.trigger()}catch(s){e||(e=s)}t=n}}if(e)throw e}function si(e){for(let t=e.deps;t;t=t.nextDep)t.version=-1,t.prevActiveLink=t.dep.activeLink,t.dep.activeLink=t}function ri(e){let t,n=e.depsTail,s=n;for(;s;){const r=s.prevDep;s.version===-1?(s===n&&(n=r),Ls(s),No(s)):t=s,s.dep.activeLink=s.prevActiveLink,s.prevActiveLink=void 0,s=r}e.deps=t,e.depsTail=n}function hs(e){for(let t=e.deps;t;t=t.nextDep)if(t.dep.version!==t.version||t.dep.computed&&(ii(t.dep.computed)||t.dep.version!==t.version))return!0;return!!e._dirty}function ii(e){if(e.flags&4&&!(e.flags&16)||(e.flags&=-17,e.globalVersion===sn)||(e.globalVersion=sn,!e.isSSR&&e.flags&128&&(!e.deps&&!e._dirty||!hs(e))))return;e.flags|=2;const t=e.dep,n=Z,s=Oe;Z=e,Oe=!0;try{si(e);const r=e.fn(e._value);(t.version===0||We(r,e._value))&&(e.flags|=128,e._value=r,t.version++)}catch(r){throw t.version++,r}finally{Z=n,Oe=s,ri(e),e.flags&=-3}}function Ls(e,t=!1){const{dep:n,prevSub:s,nextSub:r}=e;if(s&&(s.nextSub=r,e.prevSub=void 0),r&&(r.prevSub=s,e.nextSub=void 0),n.subs===e&&(n.subs=s,!s&&n.computed)){n.computed.flags&=-5;for(let i=n.computed.deps;i;i=i.nextDep)Ls(i,!0)}!t&&!--n.sc&&n.map&&n.map.delete(n.key)}function No(e){const{prevDep:t,nextDep:n}=e;t&&(t.nextDep=n,e.prevDep=void 0),n&&(n.prevDep=t,e.nextDep=void 0)}let Oe=!0;const oi=[];function rt(){oi.push(Oe),Oe=!1}function it(){const e=oi.pop();Oe=e===void 0?!0:e}function tr(e){const{cleanup:t}=e;if(e.cleanup=void 0,t){const n=Z;Z=void 0;try{t()}finally{Z=n}}}let sn=0;class Do{constructor(t,n){this.sub=t,this.dep=n,this.version=n.version,this.nextDep=this.prevDep=this.nextSub=this.prevSub=this.prevActiveLink=void 0}}class Vs{constructor(t){this.computed=t,this.version=0,this.activeLink=void 0,this.subs=void 0,this.map=void 0,this.key=void 0,this.sc=0,this.__v_skip=!0}track(t){if(!Z||!Oe||Z===this.computed)return;let n=this.activeLink;if(n===void 0||n.sub!==Z)n=this.activeLink=new Do(Z,this),Z.deps?(n.prevDep=Z.depsTail,Z.depsTail.nextDep=n,Z.depsTail=n):Z.deps=Z.depsTail=n,li(n);else if(n.version===-1&&(n.version=this.version,n.nextDep)){const s=n.nextDep;s.prevDep=n.prevDep,n.prevDep&&(n.prevDep.nextDep=s),n.prevDep=Z.depsTail,n.nextDep=void 0,Z.depsTail.nextDep=n,Z.depsTail=n,Z.deps===n&&(Z.deps=s)}return n}trigger(t){this.version++,sn++,this.notify(t)}notify(t){Ds();try{for(let n=this.subs;n;n=n.prevSub)n.sub.notify()&&n.sub.dep.notify()}finally{Ms()}}}function li(e){if(e.dep.sc++,e.sub.flags&4){const t=e.dep.computed;if(t&&!e.dep.subs){t.flags|=20;for(let s=t.deps;s;s=s.nextDep)li(s)}const n=e.dep.subs;n!==e&&(e.prevSub=n,n&&(n.nextSub=e)),e.dep.subs=e}}const ps=new WeakMap,wt=Symbol(""),gs=Symbol(""),rn=Symbol("");function ae(e,t,n){if(Oe&&Z){let s=ps.get(e);s||ps.set(e,s=new Map);let r=s.get(n);r||(s.set(n,r=new Vs),r.map=s,r.key=n),r.track()}}function et(e,t,n,s,r,i){const o=ps.get(e);if(!o){sn++;return}const l=c=>{c&&c.trigger()};if(Ds(),t==="clear")o.forEach(l);else{const c=L(e),a=c&&Ps(n);if(c&&n==="length"){const f=Number(s);o.forEach((h,g)=>{(g==="length"||g===rn||!$e(g)&&g>=f)&&l(h)})}else switch((n!==void 0||o.has(void 0))&&l(o.get(n)),a&&l(o.get(rn)),t){case"add":c?a&&l(o.get("length")):(l(o.get(wt)),gt(e)&&l(o.get(gs)));break;case"delete":c||(l(o.get(wt)),gt(e)&&l(o.get(gs)));break;case"set":gt(e)&&l(o.get(wt));break}}Ms()}function It(e){const t=W(e);return t===e?t:(ae(t,"iterate",rn),Se(e)?t:t.map(Ie))}function Un(e){return ae(e=W(e),"iterate",rn),e}function Ge(e,t){return ot(e)?Ft(St(e)?Ie(t):t):Ie(t)}const Mo={__proto__:null,[Symbol.iterator](){return Zn(this,Symbol.iterator,e=>Ge(this,e))},concat(...e){return It(this).concat(...e.map(t=>L(t)?It(t):t))},entries(){return Zn(this,"entries",e=>(e[1]=Ge(this,e[1]),e))},every(e,t){return Je(this,"every",e,t,void 0,arguments)},filter(e,t){return Je(this,"filter",e,t,n=>n.map(s=>Ge(this,s)),arguments)},find(e,t){return Je(this,"find",e,t,n=>Ge(this,n),arguments)},findIndex(e,t){return Je(this,"findIndex",e,t,void 0,arguments)},findLast(e,t){return Je(this,"findLast",e,t,n=>Ge(this,n),arguments)},findLastIndex(e,t){return Je(this,"findLastIndex",e,t,void 0,arguments)},forEach(e,t){return Je(this,"forEach",e,t,void 0,arguments)},includes(...e){return es(this,"includes",e)},indexOf(...e){return es(this,"indexOf",e)},join(e){return It(this).join(e)},lastIndexOf(...e){return es(this,"lastIndexOf",e)},map(e,t){return Je(this,"map",e,t,void 0,arguments)},pop(){return Wt(this,"pop")},push(...e){return Wt(this,"push",e)},reduce(e,...t){return nr(this,"reduce",e,t)},reduceRight(e,...t){return nr(this,"reduceRight",e,t)},shift(){return Wt(this,"shift")},some(e,t){return Je(this,"some",e,t,void 0,arguments)},splice(...e){return Wt(this,"splice",e)},toReversed(){return It(this).toReversed()},toSorted(e){return It(this).toSorted(e)},toSpliced(...e){return It(this).toSpliced(...e)},unshift(...e){return Wt(this,"unshift",e)},values(){return Zn(this,"values",e=>Ge(this,e))}};function Zn(e,t,n){const s=Un(e),r=s[t]();return s!==e&&!Se(e)&&(r._next=r.next,r.next=()=>{const i=r._next();return i.done||(i.value=n(i.value)),i}),r}const Lo=Array.prototype;function Je(e,t,n,s,r,i){const o=Un(e),l=o!==e&&!Se(e),c=o[t];if(c!==Lo[t]){const h=c.apply(e,i);return l?Ie(h):h}let a=n;o!==e&&(l?a=function(h,g){return n.call(this,Ge(e,h),g,e)}:n.length>2&&(a=function(h,g){return n.call(this,h,g,e)}));const f=c.call(o,a,s);return l&&r?r(f):f}function nr(e,t,n,s){const r=Un(e),i=r!==e&&!Se(e);let o=n,l=!1;r!==e&&(i?(l=s.length===0,o=function(a,f,h){return l&&(l=!1,a=Ge(e,a)),n.call(this,a,Ge(e,f),h,e)}):n.length>3&&(o=function(a,f,h){return n.call(this,a,f,h,e)}));const c=r[t](o,...s);return l?Ge(e,c):c}function es(e,t,n){const s=W(e);ae(s,"iterate",rn);const r=s[t](...n);return(r===-1||r===!1)&&Hs(n[0])?(n[0]=W(n[0]),s[t](...n)):r}function Wt(e,t,n=[]){rt(),Ds();const s=W(e)[t].apply(e,n);return Ms(),it(),s}const Vo=Cs("__proto__,__v_isRef,__isVue"),ci=new Set(Object.getOwnPropertyNames(Symbol).filter(e=>e!=="arguments"&&e!=="caller").map(e=>Symbol[e]).filter($e));function jo(e){$e(e)||(e=String(e));const t=W(this);return ae(t,"has",e),t.hasOwnProperty(e)}class ui{constructor(t=!1,n=!1){this._isReadonly=t,this._isShallow=n}get(t,n,s){if(n==="__v_skip")return t.__v_skip;const r=this._isReadonly,i=this._isShallow;if(n==="__v_isReactive")return!r;if(n==="__v_isReadonly")return r;if(n==="__v_isShallow")return i;if(n==="__v_raw")return s===(r?i?$o:hi:i?di:ai).get(t)||Object.getPrototypeOf(t)===Object.getPrototypeOf(s)?t:void 0;const o=L(t);if(!r){let c;if(o&&(c=Mo[n]))return c;if(n==="hasOwnProperty")return jo}const l=Reflect.get(t,n,he(t)?t:s);if(($e(n)?ci.has(n):Vo(n))||(r||ae(t,"get",n),i))return l;if(he(l)){const c=o&&Ps(n)?l:l.value;return r&&$(c)?_s(c):c}return $(l)?r?_s(l):dn(l):l}}class fi extends ui{constructor(t=!1){super(!1,t)}set(t,n,s,r){let i=t[n];const o=L(t)&&Ps(n);if(!this._isShallow){const a=ot(i);if(!Se(s)&&!ot(s)&&(i=W(i),s=W(s)),!o&&he(i)&&!he(s))return a||(i.value=s),!0}const l=o?Number(n)<t.length:q(t,n),c=Reflect.set(t,n,s,he(t)?t:r);return t===W(r)&&c&&(l?We(s,i)&&et(t,"set",n,s):et(t,"add",n,s)),c}deleteProperty(t,n){const s=q(t,n);t[n];const r=Reflect.deleteProperty(t,n);return r&&s&&et(t,"delete",n,void 0),r}has(t,n){const s=Reflect.has(t,n);return(!$e(n)||!ci.has(n))&&ae(t,"has",n),s}ownKeys(t){return ae(t,"iterate",L(t)?"length":wt),Reflect.ownKeys(t)}}class Fo extends ui{constructor(t=!1){super(!0,t)}set(t,n){return!0}deleteProperty(t,n){return!0}}const Ho=new fi,Bo=new Fo,Uo=new fi(!0);const ms=e=>e,_n=e=>Reflect.getPrototypeOf(e);function Ko(e,t,n){return function(...s){const r=this.__v_raw,i=W(r),o=gt(i),l=e==="entries"||e===Symbol.iterator&&o,c=e==="keys"&&o,a=r[e](...s),f=n?ms:t?Ft:Ie;return!t&&ae(i,"iterate",c?gs:wt),fe(Object.create(a),{next(){const{value:h,done:g}=a.next();return g?{value:h,done:g}:{value:l?[f(h[0]),f(h[1])]:f(h),done:g}}})}}function yn(e){return function(...t){return e==="delete"?!1:e==="clear"?void 0:this}}function Go(e,t){const n={get(r){const i=this.__v_raw,o=W(i),l=W(r);e||(We(r,l)&&ae(o,"get",r),ae(o,"get",l));const{has:c}=_n(o),a=t?ms:e?Ft:Ie;if(c.call(o,r))return a(i.get(r));if(c.call(o,l))return a(i.get(l));i!==o&&i.get(r)},get size(){const r=this.__v_raw;return!e&&ae(W(r),"iterate",wt),r.size},has(r){const i=this.__v_raw,o=W(i),l=W(r);return e||(We(r,l)&&ae(o,"has",r),ae(o,"has",l)),r===l?i.has(r):i.has(r)||i.has(l)},forEach(r,i){const o=this,l=o.__v_raw,c=W(l),a=t?ms:e?Ft:Ie;return!e&&ae(c,"iterate",wt),l.forEach((f,h)=>r.call(i,a(f),a(h),o))}};return fe(n,e?{add:yn("add"),set:yn("set"),delete:yn("delete"),clear:yn("clear")}:{add(r){const i=W(this),o=_n(i),l=W(r),c=!t&&!Se(r)&&!ot(r)?l:r;return o.has.call(i,c)||We(r,c)&&o.has.call(i,r)||We(l,c)&&o.has.call(i,l)||(i.add(c),et(i,"add",c,c)),this},set(r,i){!t&&!Se(i)&&!ot(i)&&(i=W(i));const o=W(this),{has:l,get:c}=_n(o);let a=l.call(o,r);a||(r=W(r),a=l.call(o,r));const f=c.call(o,r);return o.set(r,i),a?We(i,f)&&et(o,"set",r,i):et(o,"add",r,i),this},delete(r){const i=W(this),{has:o,get:l}=_n(i);let c=o.call(i,r);c||(r=W(r),c=o.call(i,r)),l&&l.call(i,r);const a=i.delete(r);return c&&et(i,"delete",r,void 0),a},clear(){const r=W(this),i=r.size!==0,o=r.clear();return i&&et(r,"clear",void 0,void 0),o}}),["keys","values","entries",Symbol.iterator].forEach(r=>{n[r]=Ko(r,e,t)}),n}function js(e,t){const n=Go(e,t);return(s,r,i)=>r==="__v_isReactive"?!e:r==="__v_isReadonly"?e:r==="__v_raw"?s:Reflect.get(q(n,r)&&r in s?n:s,r,i)}const ko={get:js(!1,!1)},Wo={get:js(!1,!0)},qo={get:js(!0,!1)};const ai=new WeakMap,di=new WeakMap,hi=new WeakMap,$o=new WeakMap;function zo(e){switch(e){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}function dn(e){return ot(e)?e:Fs(e,!1,Ho,ko,ai)}function pi(e){return Fs(e,!1,Uo,Wo,di)}function _s(e){return Fs(e,!0,Bo,qo,hi)}function Fs(e,t,n,s,r){if(!$(e)||e.__v_raw&&!(t&&e.__v_isReactive)||e.__v_skip||!Object.isExtensible(e))return e;const i=r.get(e);if(i)return i;const o=zo(vo(e));if(o===0)return e;const l=new Proxy(e,o===2?s:n);return r.set(e,l),l}function St(e){return ot(e)?St(e.__v_raw):!!(e&&e.__v_isReactive)}function ot(e){return!!(e&&e.__v_isReadonly)}function Se(e){return!!(e&&e.__v_isShallow)}function Hs(e){return e?!!e.__v_raw:!1}function W(e){const t=e&&e.__v_raw;return t?W(t):e}function Jo(e){return!q(e,"__v_skip")&&Object.isExtensible(e)&&Qr(e,"__v_skip",!0),e}const Ie=e=>$(e)?dn(e):e,Ft=e=>$(e)?_s(e):e;function he(e){return e?e.__v_isRef===!0:!1}function Qo(e){return gi(e,!1)}function Yo(e){return gi(e,!0)}function gi(e,t){return he(e)?e:new Xo(e,t)}class Xo{constructor(t,n){this.dep=new Vs,this.__v_isRef=!0,this.__v_isShallow=!1,this._rawValue=n?t:W(t),this._value=n?t:Ie(t),this.__v_isShallow=n}get value(){return this.dep.track(),this._value}set value(t){const n=this._rawValue,s=this.__v_isShallow||Se(t)||ot(t);t=s?t:W(t),We(t,n)&&(this._rawValue=t,this._value=s?t:Ie(t),this.dep.trigger())}}function Lt(e){return he(e)?e.value:e}const Zo={get:(e,t,n)=>t==="__v_raw"?e:Lt(Reflect.get(e,t,n)),set:(e,t,n,s)=>{const r=e[t];return he(r)&&!he(n)?(r.value=n,!0):Reflect.set(e,t,n,s)}};function mi(e){return St(e)?e:new Proxy(e,Zo)}class el{constructor(t,n,s){this.fn=t,this.setter=n,this._value=void 0,this.dep=new Vs(this),this.__v_isRef=!0,this.deps=void 0,this.depsTail=void 0,this.flags=16,this.globalVersion=sn-1,this.next=void 0,this.effect=this,this.__v_isReadonly=!n,this.isSSR=s}notify(){if(this.flags|=16,!(this.flags&8)&&Z!==this)return ni(this,!0),!0}get value(){const t=this.dep.track();return ii(this),t&&(t.version=this.dep.version),this._value}set value(t){this.setter&&this.setter(t)}}function tl(e,t,n=!1){let s,r;return B(e)?s=e:(s=e.get,r=e.set),new el(s,r,n)}const vn={},Sn=new WeakMap;let Rt;function nl(e,t=!1,n=Rt){if(n){let s=Sn.get(n);s||Sn.set(n,s=[]),s.push(e)}}function sl(e,t,n=X){const{immediate:s,deep:r,once:i,scheduler:o,augmentJob:l,call:c}=n,a=T=>r?T:Se(T)||r===!1||r===0?tt(T,1):tt(T);let f,h,g,m,I=!1,w=!1;if(he(e)?(h=()=>e.value,I=Se(e)):St(e)?(h=()=>a(e),I=!0):L(e)?(w=!0,I=e.some(T=>St(T)||Se(T)),h=()=>e.map(T=>{if(he(T))return T.value;if(St(T))return a(T);if(B(T))return c?c(T,2):T()})):B(e)?t?h=c?()=>c(e,2):e:h=()=>{if(g){rt();try{g()}finally{it()}}const T=Rt;Rt=f;try{return c?c(e,3,[m]):e(m)}finally{Rt=T}}:h=qe,t&&r){const T=h,Q=r===!0?1/0:r;h=()=>tt(T(),Q)}const H=Io(),j=()=>{f.stop(),H&&H.active&&Os(H.effects,f)};if(i&&t){const T=t;t=(...Q)=>{const ie=T(...Q);return j(),ie}}let O=w?new Array(e.length).fill(vn):vn;const N=T=>{if(!(!(f.flags&1)||!f.dirty&&!T))if(t){const Q=f.run();if(T||r||I||(w?Q.some((ie,ee)=>We(ie,O[ee])):We(Q,O))){g&&g();const ie=Rt;Rt=f;try{const ee=[Q,O===vn?void 0:w&&O[0]===vn?[]:O,m];O=Q,c?c(t,3,ee):t(...ee)}finally{Rt=ie}}}else f.run()};return l&&l(N),f=new ei(h),f.scheduler=o?()=>o(N,!1):N,m=T=>nl(T,!1,f),g=f.onStop=()=>{const T=Sn.get(f);if(T){if(c)c(T,4);else for(const Q of T)Q();Sn.delete(f)}},t?s?N(!0):O=f.run():o?o(N.bind(null,!0),!0):f.run(),j.pause=f.pause.bind(f),j.resume=f.resume.bind(f),j.stop=j,j}function tt(e,t=1/0,n){if(t<=0||!$(e)||e.__v_skip||(n=n||new Map,(n.get(e)||0)>=t))return e;if(n.set(e,t),t--,he(e))tt(e.value,t,n);else if(L(e))for(let s=0;s<e.length;s++)tt(e[s],t,n);else if(st(e)||gt(e))e.forEach(s=>{tt(s,t,n)});else if(Jr(e)){for(const s in e)tt(e[s],t,n);for(const s of Object.getOwnPropertySymbols(e))Object.prototype.propertyIsEnumerable.call(e,s)&&tt(e[s],t,n)}return e}/**
+* @vue/runtime-core v3.5.42
+* (c) 2018-present Yuxi (Evan) You and Vue contributors
+* @license MIT
+**/function hn(e,t,n,s){try{return s?e(...s):e()}catch(r){Kn(r,t,n)}}function Ne(e,t,n,s){if(B(e)){const r=hn(e,t,n,s);return r&&$r(r)&&r.catch(i=>{Kn(i,t,n)}),r}if(L(e)){const r=[];for(let i=0;i<e.length;i++)r.push(Ne(e[i],t,n,s));return r}}function Kn(e,t,n,s=!0){const r=t?t.vnode:null,{errorHandler:i,throwUnhandledErrorInProduction:o}=t&&t.appContext.config||X;if(t){let l=t.parent;const c=t.proxy,a=`https://vuejs.org/error-reference/#runtime-${n}`;for(;l;){const f=l.ec;if(f){for(let h=0;h<f.length;h++)if(f[h](e,c,a)===!1)return}l=l.parent}if(i){rt(),hn(i,null,10,[e,c,a]),it();return}}rl(e,n,r,s,o)}function rl(e,t,n,s=!0,r=!1){if(r)throw e;console.error(e)}const me=[];let Ke=-1;const Vt=[];let ht=null,Nt=0;const _i=Promise.resolve();let Cn=null;function Bs(e){const t=Cn||_i;return e?t.then(this?e.bind(this):e):t}function il(e){let t=Ke+1,n=me.length;for(;t<n;){const s=t+n>>>1,r=me[s],i=on(r);i<e||i===e&&r.flags&2?t=s+1:n=s}return t}function Us(e){if(!(e.flags&1)){const t=on(e),n=me[me.length-1];!n||!(e.flags&2)&&t>=on(n)?me.push(e):me.splice(il(t),0,e),e.flags|=1,yi()}}function yi(){Cn||(Cn=_i.then(bi))}function ol(e){if(!L(e))ht&&e.id===-1?ht.splice(Nt+1,0,e):e.flags&1||(Vt.push(e),e.flags|=1);else for(let t=0;t<e.length;t++)Vt.push(e[t]);yi()}function sr(e,t,n=Ke+1){for(;n<me.length;n++){const s=me[n];if(s&&s.flags&2){if(e&&s.id!==e.uid)continue;me.splice(n,1),n--,s.flags&4&&(s.flags&=-2),s(),s.flags&4||(s.flags&=-2)}}}function vi(e){if(Vt.length){const t=[...new Set(Vt)].sort((n,s)=>on(n)-on(s));if(Vt.length=0,ht){for(let n=0;n<t.length;n++)ht.push(t[n]);return}for(ht=t,Nt=0;Nt<ht.length;Nt++){const n=ht[Nt];n.flags&4&&(n.flags&=-2),n.flags&8||n(),n.flags&=-2}ht=null,Nt=0}}const on=e=>e.id==null?e.flags&2?-1:1/0:e.id;function bi(e){try{for(Ke=0;Ke<me.length;Ke++){const t=me[Ke];t&&!(t.flags&8)&&(t.flags&4&&(t.flags&=-2),hn(t,t.i,t.i?15:14),t.flags&4||(t.flags&=-2))}}finally{for(;Ke<me.length;Ke++){const t=me[Ke];t&&(t.flags&=-2)}Ke=-1,me.length=0,vi(),Cn=null,(me.length||Vt.length)&&bi()}}let Ee=null,Ei=null;function On(e){const t=Ee;return Ee=e,Ei=e&&e.type.__scopeId||null,t}function ll(e,t=Ee,n){if(!t||e._n)return e;const s=(...r)=>{s._d&&In(-1);const i=On(t),o=Ct.length;let l;try{l=e(...r)}finally{for(let c=Ct.length;c>o;c--)$i();On(i),s._d&&In(1)}return l};return s._n=!0,s._c=!0,s._d=!0,s}function of(e,t){if(Ee===null)return e;const n=$n(Ee),s=e.dirs||(e.dirs=[]);for(let r=0;r<t.length;r++){let[i,o,l,c=X]=t[r];i&&(B(i)&&(i={mounted:i,updated:i}),i.deep&&tt(o),s.push({dir:i,instance:n,value:o,oldValue:void 0,arg:l,modifiers:c}))}return e}function bt(e,t,n,s){const r=e.dirs,i=t&&t.dirs;for(let o=0;o<r.length;o++){const l=r[o];i&&(l.oldValue=i[o].value);let c=l.dir[s];c&&(rt(),Ne(c,n,8,[e.el,l,e,t]),it())}}function Rn(e,t){if(de){let n=de.provides;const s=de.parent&&de.parent.provides;s===n&&(n=de.provides=Object.create(s)),n[e]=t}}function Pe(e,t,n=!1){const s=cc();if(s||jt){let r=jt?jt._context.provides:s?s.parent==null||s.ce?s.vnode.appContext&&s.vnode.appContext.provides:s.parent.provides:void 0;if(r&&e in r)return r[e];if(arguments.length>1)return n&&B(t)?t.call(s&&s.proxy):t}}const cl=Symbol.for("v-scx"),ul=()=>Pe(cl);function xn(e,t,n){return Ai(e,t,n)}function Ai(e,t,n=X){const{immediate:s,deep:r,flush:i,once:o}=n,l=fe({},n),c=t&&s||!t&&i!=="post";let a;if(un){if(i==="sync"){const m=ul();a=m.__watcherHandles||(m.__watcherHandles=[])}else if(!c){const m=()=>{};return m.stop=qe,m.resume=qe,m.pause=qe,m}}const f=de;l.call=(m,I,w)=>Ne(m,f,I,w);let h=!1;i==="post"?l.scheduler=m=>{ve(m,f&&f.suspense)}:i!=="sync"&&(h=!0,l.scheduler=(m,I)=>{I?m():Us(m)}),l.augmentJob=m=>{t&&(m.flags|=4),h&&(m.flags|=2,f&&(m.id=f.uid,m.i=f))};const g=sl(e,t,l);return un&&(a?a.push(g):c&&g()),g}function fl(e,t,n){const s=this.proxy,r=ne(e)?e.includes(".")?Ri(s,e):()=>s[e]:e.bind(s,s);let i;B(t)?i=t:(i=t.handler,n=t);const o=pn(this),l=Ai(r,i.bind(s),n);return o(),l}function Ri(e,t){const n=t.split(".");return()=>{let s=e;for(let r=0;r<n.length&&s;r++)s=s[n[r]];return s}}const al=Symbol("_vte"),Gn=e=>e.__isTeleport,ts=Symbol("_leaveCb");function dl(e){let t=e[0];if(e.length>1){for(const n of e)if(n.type!==lt){t=n;break}}return t}function xi(e){if(!Gs(e))return Gn(e.type)&&e.children?dl(e.children):e;if(e.component)return e.component.subTree;const{shapeFlag:t,children:n}=e;if(n){if(t&16)return n[0];if(t&32&&B(n.default))return n.default()}}function Ks(e,t){if(e.shapeFlag&6&&e.component){e.transition=t;const n=e.component.subTree;Ks(Gn(n.type)&&xi(n)||n,t)}else e.shapeFlag&128?(e.ssContent.transition=t.clone(e.ssContent),e.ssFallback.transition=t.clone(e.ssFallback)):e.transition=t}function wi(e,t){return B(e)?fe({name:e.name},t,{setup:e}):e}function Si(e){e.ids=[e.ids[0]+e.ids[2]+++"-",0,0]}function rr(e,t){let n;return!!((n=Object.getOwnPropertyDescriptor(e,t))&&!n.configurable)}const Pn=new WeakMap;function Zt(e,t,n,s,r=!1){if(L(e)){e.forEach((w,H)=>Zt(w,t&&(L(t)?t[H]:t),n,s,r));return}if(en(s)&&!r){s.shapeFlag&512&&s.type.__asyncResolved&&s.component.subTree.component&&Zt(e,t,n,s.component.subTree);return}const i=s.shapeFlag&4?$n(s.component):s.el,o=r?null:i,{i:l,r:c}=e,a=t&&t.r,f=l.refs===X?l.refs={}:l.refs,h=l.setupState,g=W(h),m=h===X?qr:w=>rr(f,w)?!1:q(g,w),I=(w,H)=>!(H&&rr(f,H));if(a!=null&&a!==c){if(ir(t),ne(a))f[a]=null,m(a)&&(h[a]=null);else if(he(a)){const w=t;I(a,w.k)&&(a.value=null),w.k&&(f[w.k]=null)}}if(B(c))hn(c,l,12,[o,f]);else{const w=ne(c),H=he(c);if(w||H){const j=()=>{if(e.f){const O=w?m(c)?h[c]:f[c]:I()||!e.k?c.value:f[e.k];if(r)L(O)&&Os(O,i);else if(L(O))O.includes(i)||O.push(i);else if(w)f[c]=[i],m(c)&&(h[c]=f[c]);else{const N=[i];I(c,e.k)&&(c.value=N),e.k&&(f[e.k]=N)}}else w?(f[c]=o,m(c)&&(h[c]=o)):H&&(I(c,e.k)&&(c.value=o),e.k&&(f[e.k]=o))};if(o){const O=()=>{j(),Pn.delete(e)};O.id=-1,Pn.set(e,O),ve(O,n)}else ir(e),j()}}}function ir(e){const t=Pn.get(e);t&&(t.flags|=8,Pn.delete(e))}Bn().requestIdleCallback;Bn().cancelIdleCallback;const en=e=>!!e.type.__asyncLoader,Gs=e=>e.type.__isKeepAlive;function hl(e,t){Ci(e,"a",t)}function pl(e,t){Ci(e,"da",t)}function Ci(e,t,n=de){const s=e.__wdc||(e.__wdc=()=>{let r=n;for(;r;){if(r.isDeactivated)return;r=r.parent}return e()});if(kn(t,s,n),n){let r=n.parent;for(;r&&r.parent;)Gs(r.parent.vnode)&&gl(s,t,n,r),r=r.parent}}function gl(e,t,n,s){const r=kn(t,e,s,!0);Oi(()=>{Os(s[t],r)},n)}function kn(e,t,n=de,s=!1){if(n){const r=n[e]||(n[e]=[]),i=t.__weh||(t.__weh=(...o)=>{rt();const l=pn(n),c=Ne(t,n,e,o);return l(),it(),c});return s?r.unshift(i):r.push(i),i}}const ct=e=>(t,n=de)=>{(!un||e==="sp")&&kn(e,(...s)=>t(...s),n)},ml=ct("bm"),_l=ct("m"),yl=ct("bu"),vl=ct("u"),bl=ct("bum"),Oi=ct("um"),El=ct("sp"),Al=ct("rtg"),Rl=ct("rtc");function xl(e,t=de){kn("ec",e,t)}const wl="components";function Sl(e,t){return Ol(wl,e,!0,t)||e}const Cl=Symbol.for("v-ndc");function Ol(e,t,n=!0,s=!1){const r=Ee||de;if(r){const i=r.type;{const l=hc(i,!1);if(l&&(l===t||l===_e(t)||l===Fn(_e(t))))return i}const o=or(r[e]||i[e],t)||or(r.appContext[e],t);return!o&&s?i:o}}function or(e,t){return e&&(e[t]||e[_e(t)]||e[Fn(_e(t))])}function lf(e,t,n,s){let r;const i=n,o=L(e);if(o||ne(e)){const l=o&&St(e);let c=!1,a=!1;l&&(c=!Se(e),a=ot(e),e=Un(e)),r=new Array(e.length);for(let f=0,h=e.length;f<h;f++)r[f]=t(c?a?Ft(Ie(e[f])):Ie(e[f]):e[f],f,void 0,i)}else if(typeof e=="number"){r=new Array(e);for(let l=0;l<e;l++)r[l]=t(l+1,l,void 0,i)}else if($(e))if(e[Symbol.iterator])r=Array.from(e,(l,c)=>t(l,c,void 0,i));else{const l=Object.keys(e);r=new Array(l.length);for(let c=0,a=l.length;c<a;c++){const f=l[c];r[c]=t(e[f],f,c,i)}}else r=[];return r}const ys=e=>e?Xi(e)?$n(e):ys(e.parent):null,tn=fe(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=>ys(e.parent),$root:e=>ys(e.root),$host:e=>e.ce,$emit:e=>e.emit,$options:e=>Ti(e),$forceUpdate:e=>e.f||(e.f=()=>{Us(e.update)}),$nextTick:e=>e.n||(e.n=Bs.bind(e.proxy)),$watch:e=>fl.bind(e)}),ns=(e,t)=>e!==X&&!e.__isScriptSetup&&q(e,t),Pl={get({_:e},t){if(t==="__v_skip")return!0;const{ctx:n,setupState:s,data:r,props:i,accessCache:o,type:l,appContext:c}=e;if(t[0]!=="$"){const g=o[t];if(g!==void 0)switch(g){case 1:return s[t];case 2:return r[t];case 4:return n[t];case 3:return i[t]}else{if(ns(s,t))return o[t]=1,s[t];if(r!==X&&q(r,t))return o[t]=2,r[t];if(q(i,t))return o[t]=3,i[t];if(n!==X&&q(n,t))return o[t]=4,n[t];vs&&(o[t]=0)}}const a=tn[t];let f,h;if(a)return t==="$attrs"&&ae(e.attrs,"get",""),a(e);if((f=l.__cssModules)&&(f=f[t]))return f;if(n!==X&&q(n,t))return o[t]=4,n[t];if(h=c.config.globalProperties,q(h,t))return h[t]},set({_:e},t,n){const{data:s,setupState:r,ctx:i}=e;return ns(r,t)?(r[t]=n,!0):s!==X&&q(s,t)?(s[t]=n,!0):q(e.props,t)||t[0]==="$"&&t.slice(1)in e?!1:(i[t]=n,!0)},has({_:{data:e,setupState:t,accessCache:n,ctx:s,appContext:r,props:i,type:o}},l){let c;return!!(n[l]||e!==X&&l[0]!=="$"&&q(e,l)||ns(t,l)||q(i,l)||q(s,l)||q(tn,l)||q(r.config.globalProperties,l)||(c=o.__cssModules)&&c[l])},defineProperty(e,t,n){return n.get!=null?e._.accessCache[t]=0:q(n,"value")&&this.set(e,t,n.value,null),Reflect.defineProperty(e,t,n)}};function lr(e){return L(e)?e.reduce((t,n)=>(t[n]=null,t),{}):e}let vs=!0;function Tl(e){const t=Ti(e),n=e.proxy,s=e.ctx;vs=!1,t.beforeCreate&&cr(t.beforeCreate,e,"bc");const{data:r,computed:i,methods:o,watch:l,provide:c,inject:a,created:f,beforeMount:h,mounted:g,beforeUpdate:m,updated:I,activated:w,deactivated:H,beforeDestroy:j,beforeUnmount:O,destroyed:N,unmounted:T,render:Q,renderTracked:ie,renderTriggered:ee,errorCaptured:Me,serverPrefetch:ut,expose:Le,inheritAttrs:ft,components:yt,directives:Ve,filters:Gt}=t;if(a&&Il(a,s,null),o)for(const z in o){const G=o[z];B(G)&&(s[z]=G.bind(n))}if(r){const z=r.call(n,n);$(z)&&(e.data=dn(z))}if(vs=!0,i)for(const z in i){const G=i[z],ze=B(G)?G.bind(n,n):B(G.get)?G.get.bind(n,n):qe,at=!B(G)&&B(G.set)?G.set.bind(n):qe,je=Ce({get:ze,set:at});Object.defineProperty(s,z,{enumerable:!0,configurable:!0,get:()=>je.value,set:ye=>je.value=ye})}if(l)for(const z in l)Pi(l[z],s,n,z);if(c){const z=B(c)?c.call(n):c;Reflect.ownKeys(z).forEach(G=>{Rn(G,z[G])})}f&&cr(f,e,"c");function le(z,G){L(G)?G.forEach(ze=>z(ze.bind(n))):G&&z(G.bind(n))}if(le(ml,h),le(_l,g),le(yl,m),le(vl,I),le(hl,w),le(pl,H),le(xl,Me),le(Rl,ie),le(Al,ee),le(bl,O),le(Oi,T),le(El,ut),L(Le))if(Le.length){const z=e.exposed||(e.exposed={});Le.forEach(G=>{Object.defineProperty(z,G,{get:()=>n[G],set:ze=>n[G]=ze,enumerable:!0})})}else e.exposed||(e.exposed={});Q&&e.render===qe&&(e.render=Q),ft!=null&&(e.inheritAttrs=ft),yt&&(e.components=yt),Ve&&(e.directives=Ve),ut&&Si(e)}function Il(e,t,n=qe){L(e)&&(e=bs(e));for(const s in e){const r=e[s];let i;$(r)?"default"in r?i=Pe(r.from||s,r.default,!0):i=Pe(r.from||s):i=Pe(r),he(i)?Object.defineProperty(t,s,{enumerable:!0,configurable:!0,get:()=>i.value,set:o=>i.value=o}):t[s]=i}}function cr(e,t,n){Ne(L(e)?e.map(s=>s.bind(t.proxy)):e.bind(t.proxy),t,n)}function Pi(e,t,n,s){let r=s.includes(".")?Ri(n,s):()=>n[s];if(ne(e)){const i=t[e];B(i)&&xn(r,i)}else if(B(e))xn(r,e.bind(n));else if($(e))if(L(e))e.forEach(i=>Pi(i,t,n,s));else{const i=B(e.handler)?e.handler.bind(n):t[e.handler];B(i)&&xn(r,i,e)}}function Ti(e){const t=e.type,{mixins:n,extends:s}=t,{mixins:r,optionsCache:i,config:{optionMergeStrategies:o}}=e.appContext,l=i.get(t);let c;return l?c=l:!r.length&&!n&&!s?c=t:(c={},r.length&&r.forEach(a=>Tn(c,a,o,!0)),Tn(c,t,o)),$(t)&&i.set(t,c),c}function Tn(e,t,n,s=!1){const{mixins:r,extends:i}=t;i&&Tn(e,i,n,!0),r&&r.forEach(o=>Tn(e,o,n,!0));for(const o in t)if(!(s&&o==="expose")){const l=Nl[o]||n&&n[o];e[o]=l?l(e[o],t[o]):t[o]}return e}const Nl={data:ur,props:fr,emits:fr,methods:zt,computed:zt,beforeCreate:pe,created:pe,beforeMount:pe,mounted:pe,beforeUpdate:pe,updated:pe,beforeDestroy:pe,beforeUnmount:pe,destroyed:pe,unmounted:pe,activated:pe,deactivated:pe,errorCaptured:pe,serverPrefetch:pe,components:zt,directives:zt,watch:Ml,provide:ur,inject:Dl};function ur(e,t){return t?e?function(){return fe(B(e)?e.call(this,this):e,B(t)?t.call(this,this):t)}:t:e}function Dl(e,t){return zt(bs(e),bs(t))}function bs(e){if(L(e)){const t={};for(let n=0;n<e.length;n++)t[e[n]]=e[n];return t}return e}function pe(e,t){return e?[...new Set([].concat(e,t))]:t}function zt(e,t){return e?fe(Object.create(null),e,t):t}function fr(e,t){return e?L(e)&&L(t)?[...new Set([...e,...t])]:fe(Object.create(null),lr(e),lr(t??{})):t}function Ml(e,t){if(!e)return t;if(!t)return e;const n=fe(Object.create(null),e);for(const s in t)n[s]=pe(e[s],t[s]);return n}function Ii(){return{app:null,config:{isNativeTag:qr,performance:!1,globalProperties:{},optionMergeStrategies:{},errorHandler:void 0,warnHandler:void 0,compilerOptions:{}},mixins:[],components:{},directives:{},provides:Object.create(null),optionsCache:new WeakMap,propsCache:new WeakMap,emitsCache:new WeakMap}}let Ll=0;function Vl(e,t){return function(s,r=null){B(s)||(s=fe({},s)),r!=null&&!$(r)&&(r=null);const i=Ii(),o=new WeakSet,l=[];let c=!1;const a=i.app={_uid:Ll++,_component:s,_props:r,_container:null,_context:i,_instance:null,version:gc,get config(){return i.config},set config(f){},use(f,...h){return o.has(f)||(f&&B(f.install)?(o.add(f),f.install(a,...h)):B(f)&&(o.add(f),f(a,...h))),a},mixin(f){return i.mixins.includes(f)||i.mixins.push(f),a},component(f,h){return h?(i.components[f]=h,a):i.components[f]},directive(f,h){return h?(i.directives[f]=h,a):i.directives[f]},mount(f,h,g){if(!c){const m=a._ceVNode||Re(s,r);return m.appContext=i,g===!0?g="svg":g===!1&&(g=void 0),e(m,f,g),c=!0,a._container=f,f.__vue_app__=a,$n(m.component)}},onUnmount(f){l.push(f)},unmount(){c&&(Ne(l,a._instance,16),e(null,a._container),delete a._container.__vue_app__)},provide(f,h){return i.provides[f]=h,a},runWithContext(f){const h=jt;jt=a;try{return f()}finally{jt=h}}};return a}}let jt=null;const jl=(e,t)=>t==="modelValue"||t==="model-value"?e.modelModifiers:e[`${t}Modifiers`]||e[`${_e(t)}Modifiers`]||e[`${_t(t)}Modifiers`];function Fl(e,t,...n){if(e.isUnmounted)return;const s=e.vnode.props||X;let r=n;const i=t.startsWith("update:"),o=i&&jl(s,t.slice(7));o&&(o.trim&&(r=n.map(f=>ne(f)?f.trim():f)),o.number&&(r=r.map(Hn)));let l,c=s[l=Qn(t)]||s[l=Qn(_e(t))];!c&&i&&(c=s[l=Qn(_t(t))]),c&&Ne(c,e,6,r);const a=s[l+"Once"];if(a){if(!e.emitted)e.emitted={};else if(e.emitted[l])return;e.emitted[l]=!0,Ne(a,e,6,r)}}const Hl=new WeakMap;function Ni(e,t,n=!1){const s=n?Hl:t.emitsCache,r=s.get(e);if(r!==void 0)return r;const i=e.emits;let o={},l=!1;if(!B(e)){const c=a=>{const f=Ni(a,t,!0);f&&(l=!0,fe(o,f))};!n&&t.mixins.length&&t.mixins.forEach(c),e.extends&&c(e.extends),e.mixins&&e.mixins.forEach(c)}return!i&&!l?($(e)&&s.set(e,null),null):(L(i)?i.forEach(c=>o[c]=null):fe(o,i),$(e)&&s.set(e,o),o)}function Wn(e,t){return!e||!Ln(t)?!1:(t=t.slice(2),t=t==="Once"?t:t.replace(/Once$/,""),q(e,t[0].toLowerCase()+t.slice(1))||q(e,_t(t))||q(e,t))}function ar(e){const{type:t,vnode:n,proxy:s,withProxy:r,propsOptions:[i],slots:o,attrs:l,emit:c,render:a,renderCache:f,props:h,data:g,setupState:m,ctx:I,inheritAttrs:w}=e,H=On(e);let j,O;try{if(n.shapeFlag&4){const T=r||s,Q=T;j=ke(a.call(Q,T,f,h,m,g,I)),O=l}else{const T=t;j=ke(T.length>1?T(h,{attrs:l,slots:o,emit:c}):T(h,null)),O=t.props?l:Bl(l)}}catch(T){Ct.length=0,Kn(T,e,1),j=Re(lt)}let N=j;if(O&&w!==!1){const T=Object.keys(O),{shapeFlag:Q}=N;T.length&&Q&7&&(i&&T.some(Vn)&&(O=Ul(O,i)),N=Ht(N,O,!1,!0))}if(n.dirs&&(N=Ht(N,null,!1,!0),N.dirs=N.dirs?N.dirs.concat(n.dirs):n.dirs),n.transition){const T=Gn(N.type)&&xi(N)||N;Ks(T,n.transition)}return j=N,On(H),j}const Bl=e=>{let t;for(const n in e)(n==="class"||n==="style"||Ln(n))&&((t||(t={}))[n]=e[n]);return t},Ul=(e,t)=>{const n={};for(const s in e)(!Vn(s)||!(s.slice(9)in t))&&(n[s]=e[s]);return n};function Kl(e,t,n){const{props:s,children:r,component:i}=e,{props:o,children:l,patchFlag:c}=t,a=i.emitsOptions;if(t.dirs||t.transition)return!0;if(n&&c>=0){if(c&1024)return!0;if(c&16)return s?dr(s,o,a):!!o;if(c&8){const f=t.dynamicProps;for(let h=0;h<f.length;h++){const g=f[h];if(Di(o,s,g)&&!Wn(a,g))return!0}}}else return(r||l)&&(!l||!l.$stable)?!0:s===o?!1:s?o?dr(s,o,a):!0:!!o;return!1}function dr(e,t,n){const s=Object.keys(t);if(s.length!==Object.keys(e).length)return!0;for(let r=0;r<s.length;r++){const i=s[r];if(Di(t,e,i)&&!Wn(n,i))return!0}return!1}function Di(e,t,n){const s=e[n],r=t[n];return n==="style"&&$(s)&&$(r)?!Te(s,r):s!==r}function Gl({vnode:e,parent:t,suspense:n},s){for(;t;){const r=t.subTree;if(r.suspense&&r.suspense.activeBranch===e&&(r.suspense.vnode.el=r.el=s,e=r),r===e)(e=t.vnode).el=s,t=t.parent;else break}n&&n.activeBranch===e&&(n.vnode.el=s)}const Mi={},Li=()=>Object.create(Mi),Vi=e=>Object.getPrototypeOf(e)===Mi;function kl(e,t,n,s=!1){const r={},i=Li();e.propsDefaults=Object.create(null),ji(e,t,r,i);for(const o in e.propsOptions[0])o in r||(r[o]=void 0);n?e.props=s?r:pi(r):e.type.props?e.props=r:e.props=i,e.attrs=i}function Wl(e,t,n,s){const{props:r,attrs:i,vnode:{patchFlag:o}}=e,l=W(r),[c]=e.propsOptions;let a=!1;if((s||o>0)&&!(o&16)){if(o&8){const f=e.vnode.dynamicProps;for(let h=0;h<f.length;h++){let g=f[h];if(Wn(e.emitsOptions,g))continue;const m=t[g];if(c)if(q(i,g))m!==i[g]&&(i[g]=m,a=!0);else{const I=_e(g);r[I]=Es(c,l,I,m,e,!1)}else m!==i[g]&&(i[g]=m,a=!0)}}}else{ji(e,t,r,i)&&(a=!0);let f;for(const h in l)(!t||!q(t,h)&&((f=_t(h))===h||!q(t,f)))&&(c?n&&(n[h]!==void 0||n[f]!==void 0)&&(r[h]=Es(c,l,h,void 0,e,!0)):delete r[h]);if(i!==l)for(const h in i)(!t||!q(t,h))&&(delete i[h],a=!0)}a&&et(e.attrs,"set","")}function ji(e,t,n,s){const[r,i]=e.propsOptions;let o=!1,l;if(t)for(let c in t){if(Qt(c))continue;const a=t[c];let f;r&&q(r,f=_e(c))?!i||!i.includes(f)?n[f]=a:(l||(l={}))[f]=a:Wn(e.emitsOptions,c)||(!(c in s)||a!==s[c])&&(s[c]=a,o=!0)}if(i){const c=W(n),a=l||X;for(let f=0;f<i.length;f++){const h=i[f];n[h]=Es(r,c,h,a[h],e,!q(a,h))}}return o}function Es(e,t,n,s,r,i){const o=e[n];if(o!=null){const l=q(o,"default");if(l&&s===void 0){const c=o.default;if(o.type!==Function&&!o.skipFactory&&B(c)){const{propsDefaults:a}=r;if(n in a)s=a[n];else{const f=pn(r);s=a[n]=c.call(null,t),f()}}else s=c;r.ce&&r.ce._setProp(n,s)}o[0]&&(i&&!l?s=!1:o[1]&&(s===""||s===_t(n))&&(s=!0))}return s}const ql=new WeakMap;function Fi(e,t,n=!1){const s=n?ql:t.propsCache,r=s.get(e);if(r)return r;const i=e.props,o={},l=[];let c=!1;if(!B(e)){const f=h=>{c=!0;const[g,m]=Fi(h,t,!0);fe(o,g),m&&l.push(...m)};!n&&t.mixins.length&&t.mixins.forEach(f),e.extends&&f(e.extends),e.mixins&&e.mixins.forEach(f)}if(!i&&!c)return $(e)&&s.set(e,Mt),Mt;if(L(i))for(let f=0;f<i.length;f++){const h=_e(i[f]);hr(h)&&(o[h]=X)}else if(i)for(const f in i){const h=_e(f);if(hr(h)){const g=i[f],m=o[h]=L(g)||B(g)?{type:g}:fe({},g),I=m.type;let w=!1,H=!0;if(L(I))for(let j=0;j<I.length;++j){const O=I[j],N=B(O)&&O.name;if(N==="Boolean"){w=!0;break}else N==="String"&&(H=!1)}else w=B(I)&&I.name==="Boolean";m[0]=w,m[1]=H,(w||q(m,"default"))&&l.push(h)}}const a=[o,l];return $(e)&&s.set(e,a),a}function hr(e){return e[0]!=="$"&&!Qt(e)}const ks=e=>e==="_"||e==="_ctx"||e==="$stable",Ws=e=>L(e)?e.map(ke):[ke(e)],$l=(e,t,n)=>{if(t._n)return t;const s=ll((...r)=>Ws(t(...r)),n);return s._c=!1,s},Hi=(e,t,n)=>{const s=e._ctx;for(const r in e){if(ks(r))continue;const i=e[r];if(B(i))t[r]=$l(r,i,s);else if(i!=null){const o=Ws(i);t[r]=()=>o}}},Bi=(e,t)=>{const n=Ws(t);e.slots.default=()=>n},Ui=(e,t,n)=>{for(const s in t)(n||!ks(s))&&(e[s]=t[s])},zl=(e,t,n)=>{const s=e.slots=Li();if(e.vnode.shapeFlag&32){const r=t._;r?(Ui(s,t,n),n&&Qr(s,"_",r,!0)):Hi(t,s)}else t&&Bi(e,t)},Jl=(e,t,n)=>{const{vnode:s,slots:r}=e;let i=!0,o=X;if(s.shapeFlag&32){const l=t._;l?n&&l===1?i=!1:Ui(r,t,n):(i=!t.$stable,Hi(t,r)),o=t}else t&&(Bi(e,t),o={default:1});if(i)for(const l in r)!ks(l)&&o[l]==null&&delete r[l]},ve=ec;function Ql(e){return Yl(e)}function Yl(e,t){const n=Bn();n.__VUE__=!0;const{insert:s,remove:r,patchProp:i,createElement:o,createText:l,createComment:c,setText:a,setElementText:f,parentNode:h,nextSibling:g,setScopeId:m=qe,insertStaticContent:I}=e,w=(u,d,p,y=null,b=null,_=null,x=void 0,R=null,A=!!d.dynamicChildren)=>{if(u===d)return;u&&!qt(u,d)&&(y=v(u),ye(u,b,_,!0),u=null),d.patchFlag===-2&&(A=!1,d.dynamicChildren=null);const{type:E,ref:V,shapeFlag:C}=d;switch(E){case qn:H(u,d,p,y);break;case lt:j(u,d,p,y);break;case rs:u==null&&O(d,p,y,x);break;case Xe:yt(u,d,p,y,b,_,x,R,A);break;default:C&1?Q(u,d,p,y,b,_,x,R,A):C&6?Ve(u,d,p,y,b,_,x,R,A):(C&64||C&128)&&E.process(u,d,p,y,b,_,x,R,A,D)}V!=null&&b?Zt(V,u&&u.ref,_,d||u,!d):V==null&&u&&u.ref!=null&&Zt(u.ref,null,_,u,!0)},H=(u,d,p,y)=>{if(u==null)s(d.el=l(d.children),p,y);else{const b=d.el=u.el;d.children!==u.children&&a(b,d.children)}},j=(u,d,p,y)=>{u==null?s(d.el=c(d.children||""),p,y):d.el=u.el},O=(u,d,p,y)=>{[u.el,u.anchor]=I(u.children,d,p,y,u.el,u.anchor)},N=({el:u,anchor:d},p,y)=>{let b;for(;u&&u!==d;)b=g(u),s(u,p,y),u=b;s(d,p,y)},T=({el:u,anchor:d})=>{let p;for(;u&&u!==d;)p=g(u),r(u),u=p;r(d)},Q=(u,d,p,y,b,_,x,R,A)=>{if(d.type==="svg"?x="svg":d.type==="math"&&(x="mathml"),u==null)ie(d,p,y,b,_,x,R,A);else{const E=u.el&&u.el._isVueCE?u.el:null;try{E&&E._beginPatch(),ut(u,d,b,_,x,R,A)}finally{E&&E._endPatch()}}},ie=(u,d,p,y,b,_,x,R)=>{let A,E;const{props:V,shapeFlag:C,transition:M,dirs:F}=u;if(A=u.el=o(u.type,_,V&&V.is,V),C&8?f(A,u.children):C&16&&Me(u.children,A,null,y,b,ss(u,_),x,R),F&&bt(u,null,y,"created"),ee(A,u,u.scopeId,x,y),V){for(const Y in V)Y!=="value"&&!Qt(Y)&&i(A,Y,null,V[Y],_,y);"value"in V&&i(A,"value",null,V.value,_),(E=V.onVnodeBeforeMount)&&Ue(E,y,u)}F&&bt(u,null,y,"beforeMount");const K=Xl(b,M);K&&M.beforeEnter(A),s(A,d,p),((E=V&&V.onVnodeMounted)||K||F)&&ve(()=>{try{E&&Ue(E,y,u),K&&M.enter(A),F&&bt(u,null,y,"mounted")}finally{}},b)},ee=(u,d,p,y,b)=>{if(p&&m(u,p),y)for(let _=0;_<y.length;_++)m(u,y[_]);if(b){let _=b.subTree;if(d===_||Wi(_.type)&&(_.ssContent===d||_.ssFallback===d)){const x=b.vnode;ee(u,x,x.scopeId,x.slotScopeIds,b.parent)}}},Me=(u,d,p,y,b,_,x,R,A=0)=>{for(let E=A;E<u.length;E++){const V=u[E]=R?Ze(u[E]):ke(u[E]);w(null,V,d,p,y,b,_,x,R)}},ut=(u,d,p,y,b,_,x)=>{const R=d.el=u.el;let{patchFlag:A,dynamicChildren:E,dirs:V}=d;A|=u.patchFlag&16;const C=u.props||X,M=d.props||X;let F;if(p&&Et(p,!1),(F=M.onVnodeBeforeUpdate)&&Ue(F,p,d,u),V&&bt(d,u,p,"beforeUpdate"),p&&Et(p,!0),E&&(!u.dynamicChildren||u.dynamicChildren.length!==E.length)&&(A=0,x=!1,E=null),(C.innerHTML&&M.innerHTML==null||C.textContent&&M.textContent==null)&&f(R,""),E?Le(u.dynamicChildren,E,R,p,y,ss(d,b),_):x||G(u,d,R,null,p,y,ss(d,b),_,!1),A>0){if(A&16)ft(R,C,M,p,b);else if(A&2&&C.class!==M.class&&i(R,"class",null,M.class,b),A&4&&i(R,"style",C.style,M.style,b),A&8){const K=d.dynamicProps;for(let Y=0;Y<K.length;Y++){const J=K[Y],se=C[J],ce=M[J];(ce!==se||J==="value")&&i(R,J,se,ce,b,p)}}A&1&&u.children!==d.children&&f(R,d.children)}else!x&&E==null&&ft(R,C,M,p,b);((F=M.onVnodeUpdated)||V)&&ve(()=>{F&&Ue(F,p,d,u),V&&bt(d,u,p,"updated")},y)},Le=(u,d,p,y,b,_,x)=>{for(let R=0;R<d.length;R++){const A=u[R],E=d[R],V=A.el&&(A.type===Xe||!qt(A,E)||A.shapeFlag&198)?h(A.el):p;w(A,E,V,null,y,b,_,x,!0)}},ft=(u,d,p,y,b)=>{if(d!==p){if(d!==X)for(const _ in d)!Qt(_)&&!(_ in p)&&i(u,_,d[_],null,b,y);for(const _ in p){if(Qt(_))continue;const x=p[_],R=d[_];x!==R&&_!=="value"&&i(u,_,R,x,b,y)}"value"in p&&i(u,"value",d.value,p.value,b)}},yt=(u,d,p,y,b,_,x,R,A)=>{const E=d.el=u?u.el:l(""),V=d.anchor=u?u.anchor:l("");let{patchFlag:C,dynamicChildren:M,slotScopeIds:F}=d;F&&(R=R?R.concat(F):F),u==null?(s(E,p,y),s(V,p,y),Me(d.children||[],p,V,b,_,x,R,A)):C>0&&C&64&&M&&u.dynamicChildren&&u.dynamicChildren.length===M.length?(Le(u.dynamicChildren,M,p,b,_,x,R),(d.key!=null||b&&d===b.subTree)&&Ki(u,d,!0)):G(u,d,p,V,b,_,x,R,A)},Ve=(u,d,p,y,b,_,x,R,A)=>{d.slotScopeIds=R,u==null?d.shapeFlag&512?b.ctx.activate(d,p,y,x,A):Gt(d,p,y,b,_,x,A):Ot(u,d,A)},Gt=(u,d,p,y,b,_,x)=>{const R=u.component=lc(u,y,b);if(Gs(u)&&(R.ctx.renderer=D),uc(R,!1,x),R.asyncDep){if(b&&b.registerDep(R,le,x),!u.el){const A=R.subTree=Re(lt);j(null,A,d,p),u.placeholder=A.el}}else le(R,u,d,p,b,_,x)},Ot=(u,d,p)=>{const y=d.component=u.component;if(Kl(u,d,p))if(y.asyncDep&&!y.asyncResolved){z(y,d,p);return}else y.next=d,y.update();else d.el=u.el,y.vnode=d},le=(u,d,p,y,b,_,x)=>{const R=()=>{if(u.isMounted){let{next:C,bu:M,u:F,parent:K,vnode:Y}=u;{const He=Gi(u);if(He){C&&(C.el=Y.el,z(u,C,x)),He.asyncDep.then(()=>{ve(()=>{u.isUnmounted||E()},b)});return}}let J=C,se;Et(u,!1),C?(C.el=Y.el,z(u,C,x)):C=Y,M&&An(M),(se=C.props&&C.props.onVnodeBeforeUpdate)&&Ue(se,K,C,Y),Et(u,!0);const ce=ar(u),Fe=u.subTree;u.subTree=ce,w(Fe,ce,h(Fe.el),v(Fe),u,b,_),C.el=ce.el,J===null&&Gl(u,ce.el),F&&ve(F,b),(se=C.props&&C.props.onVnodeUpdated)&&ve(()=>Ue(se,K,C,Y),b)}else{let C;const{el:M,props:F}=d,{bm:K,m:Y,parent:J,root:se,type:ce}=u,Fe=en(d);Et(u,!1),K&&An(K),!Fe&&(C=F&&F.onVnodeBeforeMount)&&Ue(C,J,d),Et(u,!0);{se.ce&&se.ce._hasShadowRoot()&&se.ce._injectChildStyle(ce,u.parent?u.parent.type:void 0);const He=u.subTree=ar(u);w(null,He,p,y,u,b,_),d.el=He.el}if(Y&&ve(Y,b),!Fe&&(C=F&&F.onVnodeMounted)){const He=d;ve(()=>Ue(C,J,He),b)}(d.shapeFlag&256||J&&en(J.vnode)&&J.vnode.shapeFlag&256)&&u.a&&ve(u.a,b),u.isMounted=!0,d=p=y=null}};u.scope.on();const A=u.effect=new ei(R);u.scope.off();const E=u.update=A.run.bind(A),V=u.job=A.runIfDirty.bind(A);V.i=u,V.id=u.uid,A.scheduler=()=>Us(V),Et(u,!0),E()},z=(u,d,p)=>{d.component=u;const y=u.vnode.props;u.vnode=d,u.next=null,Wl(u,d.props,y,p),Jl(u,d.children,p),rt(),sr(u),it()},G=(u,d,p,y,b,_,x,R,A=!1)=>{const E=u&&u.children,V=u?u.shapeFlag:0,C=d.children,{patchFlag:M,shapeFlag:F}=d;if(M>0){if(M&128){at(E,C,p,y,b,_,x,R,A);return}else if(M&256){ze(E,C,p,y,b,_,x,R,A);return}}F&8?(V&16&&we(E,b,_),C!==E&&f(p,C)):V&16?F&16?at(E,C,p,y,b,_,x,R,A):we(E,b,_,!0):(V&8&&f(p,""),F&16&&Me(C,p,y,b,_,x,R,A))},ze=(u,d,p,y,b,_,x,R,A)=>{u=u||Mt,d=d||Mt;const E=u.length,V=d.length,C=Math.min(E,V);let M;for(M=0;M<C;M++){const F=d[M]=A?Ze(d[M]):ke(d[M]);w(u[M],F,p,null,b,_,x,R,A)}E>V?we(u,b,_,!0,!1,C):Me(d,p,y,b,_,x,R,A,C)},at=(u,d,p,y,b,_,x,R,A)=>{let E=0;const V=d.length;let C=u.length-1,M=V-1;for(;E<=C&&E<=M;){const F=u[E],K=d[E]=A?Ze(d[E]):ke(d[E]);if(qt(F,K))w(F,K,p,null,b,_,x,R,A);else break;E++}for(;E<=C&&E<=M;){const F=u[C],K=d[M]=A?Ze(d[M]):ke(d[M]);if(qt(F,K))w(F,K,p,null,b,_,x,R,A);else break;C--,M--}if(E>C){if(E<=M){const F=M+1,K=F<V?d[F].el:y;for(;E<=M;)w(null,d[E]=A?Ze(d[E]):ke(d[E]),p,K,b,_,x,R,A),E++}}else if(E>M)for(;E<=C;)ye(u[E],b,_,!0),E++;else{const F=E,K=E,Y=new Map;for(E=K;E<=M;E++){const be=d[E]=A?Ze(d[E]):ke(d[E]);be.key!=null&&Y.set(be.key,E)}let J,se=0;const ce=M-K+1;let Fe=!1,He=0;const kt=new Array(ce);for(E=0;E<ce;E++)kt[E]=0;for(E=F;E<=C;E++){const be=u[E];if(se>=ce){ye(be,b,_,!0);continue}let Be;if(be.key!=null)Be=Y.get(be.key);else for(J=K;J<=M;J++)if(kt[J-K]===0&&qt(be,d[J])){Be=J;break}Be===void 0?ye(be,b,_,!0):(kt[Be-K]=E+1,Be>=He?He=Be:Fe=!0,w(be,d[Be],p,null,b,_,x,R,A),se++)}const zs=Fe?Zl(kt):Mt;for(J=zs.length-1,E=ce-1;E>=0;E--){const be=K+E,Be=d[be],Js=d[be+1],Qs=be+1<V?Js.el||ki(Js):y;kt[E]===0?w(null,Be,p,Qs,b,_,x,R,A):Fe&&(J<0||E!==zs[J]?je(Be,p,Qs,2):J--)}}},je=(u,d,p,y,b=null)=>{const{el:_,type:x,transition:R,children:A,shapeFlag:E}=u;if(E&6){je(u.component.subTree,d,p,y);return}if(E&128){u.suspense.move(d,p,y);return}if(E&64){x.move(u,d,p,D);return}if(x===Xe){s(_,d,p);for(let C=0;C<A.length;C++)je(A[C],d,p,y);s(u.anchor,d,p);return}if(x===rs){N(u,d,p);return}if(y!==2&&E&1&&R)if(y===0)R.persisted&&!_[ts]?s(_,d,p):(R.beforeEnter(_),s(_,d,p),ve(()=>R.enter(_),b));else{const{leave:C,delayLeave:M,afterLeave:F}=R,K=()=>{u.ctx.isUnmounted?r(_):s(_,d,p)},Y=()=>{const J=_._isLeaving||!!_[ts];_._isLeaving&&_[ts](!0),R.persisted&&!J?K():C(_,()=>{K(),F&&F()})};M?M(_,K,Y):Y()}else s(_,d,p)},ye=(u,d,p,y=!1,b=!1)=>{const{type:_,props:x,ref:R,children:A,dynamicChildren:E,shapeFlag:V,patchFlag:C,dirs:M,cacheIndex:F,memo:K}=u;if(C===-2&&(b=!1),R!=null&&(rt(),Zt(R,null,p,u,!0),it()),F!=null&&(d.renderCache[F]=void 0),V&256){d.ctx.deactivate(u);return}const Y=V&1&&M,J=!en(u);let se;if(J&&(se=x&&x.onVnodeBeforeUnmount)&&Ue(se,d,u),V&6)vt(u.component,p,y);else{if(V&128){u.suspense.unmount(p,y);return}Y&&bt(u,null,d,"beforeUnmount"),V&64?u.type.remove(u,d,p,D,y):E&&!E.hasOnce&&(_!==Xe||C>0&&C&64)?we(E,d,p,!1,!0):(_===Xe&&C&384||!b&&V&16)&&we(A,d,p),y&&Pt(u)}const ce=K!=null&&F==null;(J&&(se=x&&x.onVnodeUnmounted)||Y||ce)&&ve(()=>{se&&Ue(se,d,u),Y&&bt(u,null,d,"unmounted"),ce&&(u.el=null)},p)},Pt=u=>{const{type:d,el:p,anchor:y,transition:b}=u;if(d===Xe){Tt(p,y);return}if(d===rs){T(u);return}const _=()=>{r(p),b&&!b.persisted&&b.afterLeave&&b.afterLeave()};if(u.shapeFlag&1&&b&&!b.persisted){const{leave:x,delayLeave:R}=b,A=()=>x(p,_);R?R(u.el,_,A):A()}else _()},Tt=(u,d)=>{let p;for(;u!==d;)p=g(u),r(u),u=p;r(d)},vt=(u,d,p)=>{const{bum:y,scope:b,job:_,subTree:x,um:R,m:A,a:E}=u;pr(A),pr(E),y&&An(y),b.stop(),_&&(_.flags|=8,ye(x,u,d,p)),R&&ve(R,d),ve(()=>{u.isUnmounted=!0},d)},we=(u,d,p,y=!1,b=!1,_=0)=>{for(let x=_;x<u.length;x++)ye(u[x],d,p,y,b)},v=u=>{if(u.shapeFlag&6)return v(u.component.subTree);if(u.shapeFlag&128)return u.suspense.next();const d=g(u.anchor||u.el),p=d&&d[al];return p?g(p):d};let P=!1;const S=(u,d,p)=>{let y;u==null?d._vnode&&(ye(d._vnode,null,null,!0),y=d._vnode.component):w(d._vnode||null,u,d,null,null,null,p),d._vnode=u,P||(P=!0,sr(y),vi(),P=!1)},D={p:w,um:ye,m:je,r:Pt,mt:Gt,mc:Me,pc:G,pbc:Le,n:v,o:e};return{render:S,hydrate:void 0,createApp:Vl(S)}}function ss({type:e,props:t},n){return n==="svg"&&e==="foreignObject"||n==="mathml"&&e==="annotation-xml"&&t&&t.encoding&&t.encoding.includes("html")?void 0:n}function Et({effect:e,job:t},n){n?(e.flags|=32,t.flags|=4):(e.flags&=-33,t.flags&=-5)}function Xl(e,t){return(!e||e&&!e.pendingBranch)&&t&&!t.persisted}function Ki(e,t,n=!1){const s=e.children,r=t.children;if(L(s)&&L(r))for(let i=0;i<s.length;i++){const o=s[i];let l=r[i];l.shapeFlag&1&&!l.dynamicChildren&&((l.patchFlag<=0||l.patchFlag===32)&&(l=r[i]=Ze(r[i]),l.el=o.el),!n&&l.patchFlag!==-2&&Ki(o,l)),l.type===qn&&(l.patchFlag===-1&&(l=r[i]=Ze(l)),l.el=o.el),l.type===lt&&!l.el&&(l.el=o.el)}}function Zl(e){const t=e.slice(),n=[0];let s,r,i,o,l;const c=e.length;for(s=0;s<c;s++){const a=e[s];if(a!==0){if(r=n[n.length-1],e[r]<a){t[s]=r,n.push(s);continue}for(i=0,o=n.length-1;i<o;)l=i+o>>1,e[n[l]]<a?i=l+1:o=l;a<e[n[i]]&&(i>0&&(t[s]=n[i-1]),n[i]=s)}}for(i=n.length,o=n[i-1];i-- >0;)n[i]=o,o=t[o];return n}function Gi(e){const t=e.subTree.component;if(t)return t.asyncDep&&!t.asyncResolved?t:Gi(t)}function pr(e){if(e)for(let t=0;t<e.length;t++)e[t].flags|=8}function ki(e){if(e.placeholder)return e.placeholder;const t=e.component;return t?ki(t.subTree):null}const Wi=e=>e.__isSuspense;function ec(e,t){t&&t.pendingBranch?L(e)?t.effects.push(...e):t.effects.push(e):ol(e)}const Xe=Symbol.for("v-fgt"),qn=Symbol.for("v-txt"),lt=Symbol.for("v-cmt"),rs=Symbol.for("v-stc"),Ct=[];let Ae=null;function qi(e=!1){Ct.push(Ae=e?null:[])}function $i(){Ct.pop(),Ae=Ct[Ct.length-1]||null}let ln=1;function In(e,t=!1){ln+=e,e<0&&Ae&&t&&(Ae.hasOnce=!0)}function zi(e){return e.dynamicChildren=ln>0?Ae||Mt:null,$i(),ln>0&&Ae&&Ae.push(e),e}function cf(e,t,n,s,r,i){return zi(Yi(e,t,n,s,r,i,!0))}function Ji(e,t,n,s,r){return zi(Re(e,t,n,s,r,!0))}function Nn(e){return e?e.__v_isVNode===!0:!1}function qt(e,t){return e.type===t.type&&e.key===t.key}const Qi=({key:e})=>e??null,wn=({ref:e,ref_key:t,ref_for:n})=>(typeof e=="number"&&(e=""+e),e!=null?ne(e)||he(e)||B(e)?{i:Ee,r:e,k:t,f:!!n}:e:null);function Yi(e,t=null,n=null,s=0,r=null,i=e===Xe?0:1,o=!1,l=!1){const c={__v_isVNode:!0,__v_skip:!0,type:e,props:t,key:t&&Qi(t),ref:t&&wn(t),scopeId:Ei,slotScopeIds:null,children:n,component:null,suspense:null,ssContent:null,ssFallback:null,dirs:null,transition:null,el:null,anchor:null,target:null,targetStart:null,targetAnchor:null,staticCount:0,shapeFlag:i,patchFlag:s,dynamicProps:r,dynamicChildren:null,appContext:null,ctx:Ee};return l?(Dn(c,n),i&128&&e.normalize(c)):n&&(c.shapeFlag|=ne(n)?8:16),ln>0&&!o&&Ae&&(c.patchFlag>0||i&6)&&c.patchFlag!==32&&Ae.push(c),c}const Re=tc;function tc(e,t=null,n=null,s=0,r=null,i=!1){if((!e||e===Cl)&&(e=lt),Nn(e)){const l=Ht(e,t,!0);return n&&Dn(l,n),ln>0&&!i&&Ae&&(l.shapeFlag&6?Ae[Ae.indexOf(e)]=l:Ae.push(l)),l.patchFlag=-2,l}if(pc(e)&&(e=e.__vccOpts),t){t=nc(t);let{class:l,style:c}=t;l&&!ne(l)&&(t.class=Is(l)),$(c)&&(Hs(c)&&!L(c)&&(c=fe({},c)),t.style=Ts(c))}const o=ne(e)?1:Wi(e)?128:Gn(e)?64:$(e)?4:B(e)?2:0;return Yi(e,t,n,s,r,o,i,!0)}function nc(e){return e?Hs(e)||Vi(e)?fe({},e):e:null}function Ht(e,t,n=!1,s=!1){const{props:r,ref:i,patchFlag:o,children:l,transition:c}=e,a=t?rc(r||{},t):r,f={__v_isVNode:!0,__v_skip:!0,type:e.type,props:a,key:a&&Qi(a),ref:t&&t.ref?n&&i?L(i)?i.concat(wn(t)):[i,wn(t)]:wn(t):i,scopeId:e.scopeId,slotScopeIds:e.slotScopeIds,children:l,target:e.target,targetStart:e.targetStart,targetAnchor:e.targetAnchor,staticCount:e.staticCount,shapeFlag:e.shapeFlag,patchFlag:t&&e.type!==Xe?o===-1?16:o|16:o,dynamicProps:e.dynamicProps,dynamicChildren:e.dynamicChildren,appContext:e.appContext,dirs:e.dirs,transition:c,component:e.component,suspense:e.suspense,ssContent:e.ssContent&&Ht(e.ssContent),ssFallback:e.ssFallback&&Ht(e.ssFallback),placeholder:e.placeholder,el:e.el,anchor:e.anchor,ctx:e.ctx,ce:e.ce};return c&&s&&Ks(f,c.clone(f)),f}function sc(e=" ",t=0){return Re(qn,null,e,t)}function uf(e="",t=!1){return t?(qi(),Ji(lt,null,e)):Re(lt,null,e)}function ke(e){return e==null||typeof e=="boolean"?Re(lt):L(e)?Re(Xe,null,e.slice()):Nn(e)?Ze(e):Re(qn,null,String(e))}function Ze(e){return e.el===null&&e.patchFlag!==-1||e.memo?e:Ht(e)}function Dn(e,t){let n=0;const{shapeFlag:s}=e;if(t==null)t=null;else if(L(t))n=16;else if(typeof t=="object")if(s&65){const r=t.default;r&&(r._c&&(r._d=!1),Dn(e,r()),r._c&&(r._d=!0));return}else{n=32;const r=t._;!r&&!Vi(t)?t._ctx=Ee:r===3&&Ee&&(Ee.slots._===1?t._=1:(t._=2,e.patchFlag|=1024))}else if(B(t)){if(s&65){Dn(e,{default:t});return}t={default:t,_ctx:Ee},n=32}else t=String(t),s&64?(n=16,t=[sc(t)]):n=8;e.children=t,e.shapeFlag|=n}function rc(...e){const t={};for(let n=0;n<e.length;n++){const s=e[n];for(const r in s)if(r==="class")t.class!==s.class&&(t.class=Is([t.class,s.class]));else if(r==="style")t.style=Ts([t.style,s.style]);else if(Ln(r)){const i=t[r],o=s[r];o&&i!==o&&!(L(i)&&i.includes(o))?t[r]=i?[].concat(i,o):o:o==null&&i==null&&!Vn(r)&&(t[r]=o)}else r!==""&&(t[r]=s[r])}return t}function Ue(e,t,n,s=null){Ne(e,t,7,[n,s])}const ic=Ii();let oc=0;function lc(e,t,n){const s=e.type,r=(t?t.appContext:e.appContext)||ic,i={uid:oc++,vnode:e,type:s,parent:t,appContext:r,root:null,next:null,subTree:null,effect:null,update:null,job:null,scope:new To(!0),render:null,proxy:null,exposed:null,exposeProxy:null,withProxy:null,provides:t?t.provides:Object.create(r.provides),ids:t?t.ids:["",0,0],accessCache:null,renderCache:[],components:null,directives:null,propsOptions:Fi(s,r),emitsOptions:Ni(s,r),emit:null,emitted:null,propsDefaults:X,inheritAttrs:s.inheritAttrs,ctx:X,data:X,props:X,attrs:X,slots:X,refs:X,setupState:X,setupContext: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,da:null,a:null,rtg:null,rtc:null,ec:null,sp:null};return i.ctx={_:i},i.root=t?t.root:i,i.emit=Fl.bind(null,i),e.ce&&e.ce(i),i}let de=null;const cc=()=>de||Ee;let Mn,cn;{const e=Bn(),t=(n,s)=>{let r;return(r=e[n])||(r=e[n]=[]),r.push(s),i=>{r.length>1?r.forEach(o=>o(i)):r[0](i)}};Mn=t("__VUE_INSTANCE_SETTERS__",n=>de=n),cn=t("__VUE_SSR_SETTERS__",n=>un=n)}const pn=e=>{const t=de;return Mn(e),e.scope.on(),()=>{e.scope.off(),Mn(t)}},gr=()=>{de&&de.scope.off(),Mn(null)};function Xi(e){return e.vnode.shapeFlag&4}let un=!1;function uc(e,t=!1,n=!1){t&&cn(t);const{props:s,children:r}=e.vnode,i=Xi(e);kl(e,s,i,t),zl(e,r,n||t);const o=i?fc(e,t):void 0;return t&&cn(!1),o}function fc(e,t){const n=e.type;e.accessCache=Object.create(null),e.proxy=new Proxy(e.ctx,Pl);const{setup:s}=n;if(s){rt();const r=e.setupContext=s.length>1?dc(e):null,i=pn(e),o=hn(s,e,0,[e.props,r]),l=$r(o);if(it(),i(),(l||e.sp)&&!en(e)&&Si(e),l){if(o.then(gr,gr),t)return o.then(c=>{cn(!0);try{mr(e,c,t)}finally{cn(!1)}}).catch(c=>{Kn(c,e,0)});e.asyncDep=o}else mr(e,o)}else Zi(e)}function mr(e,t,n){B(t)?e.type.__ssrInlineRender?e.ssrRender=t:e.render=t:$(t)&&(e.setupState=mi(t)),Zi(e)}function Zi(e,t,n){const s=e.type;e.render||(e.render=s.render||qe);{const r=pn(e);rt();try{Tl(e)}finally{it(),r()}}}const ac={get(e,t){return ae(e,"get",""),e[t]}};function dc(e){const t=n=>{e.exposed=n||{}};return{attrs:new Proxy(e.attrs,ac),slots:e.slots,emit:e.emit,expose:t}}function $n(e){return e.exposed?e.exposeProxy||(e.exposeProxy=new Proxy(mi(Jo(e.exposed)),{get(t,n){if(n in t)return t[n];if(n in tn)return tn[n](e)},has(t,n){return n in t||n in tn}})):e.proxy}function hc(e,t=!0){return B(e)?e.displayName||e.name:e.name||t&&e.__name}function pc(e){return B(e)&&"__vccOpts"in e}const Ce=(e,t)=>tl(e,t,un);function eo(e,t,n){try{In(-1);const s=arguments.length;return s===2?$(t)&&!L(t)?Nn(t)?Re(e,null,[t]):Re(e,t):Re(e,null,t):(s>3?n=Array.prototype.slice.call(arguments,2):s===3&&Nn(n)&&(n=[n]),Re(e,t,n))}finally{In(1)}}const gc="3.5.42";/**
+* @vue/runtime-dom v3.5.42
+* (c) 2018-present Yuxi (Evan) You and Vue contributors
+* @license MIT
+**/let As;const _r=typeof window<"u"&&window.trustedTypes;if(_r)try{As=_r.createPolicy("vue",{createHTML:e=>e})}catch{}const to=As?e=>As.createHTML(e):e=>e,mc="http://www.w3.org/2000/svg",_c="http://www.w3.org/1998/Math/MathML",Ye=typeof document<"u"?document:null,yr=Ye&&Ye.createElement("template"),yc={insert:(e,t,n)=>{t.insertBefore(e,n||null)},remove:e=>{const t=e.parentNode;t&&t.removeChild(e)},createElement:(e,t,n,s)=>{const r=t==="svg"?Ye.createElementNS(mc,e):t==="mathml"?Ye.createElementNS(_c,e):n?Ye.createElement(e,{is:n}):Ye.createElement(e);return e==="select"&&s&&s.multiple!=null&&r.setAttribute("multiple",s.multiple),r},createText:e=>Ye.createTextNode(e),createComment:e=>Ye.createComment(e),setText:(e,t)=>{e.nodeValue=t},setElementText:(e,t)=>{e.textContent=t},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>Ye.querySelector(e),setScopeId(e,t){e.setAttribute(t,"")},insertStaticContent(e,t,n,s,r,i){const o=n?n.previousSibling:t.lastChild;if(r&&(r===i||r.nextSibling))for(;t.insertBefore(r.cloneNode(!0),n),!(r===i||!(r=r.nextSibling)););else{yr.innerHTML=to(s==="svg"?`<svg>${e}</svg>`:s==="mathml"?`<math>${e}</math>`:e);const l=yr.content;if(s==="svg"||s==="mathml"){const c=l.firstChild;for(;c.firstChild;)l.appendChild(c.firstChild);l.removeChild(c)}t.insertBefore(l,n)}return[o?o.nextSibling:t.firstChild,n?n.previousSibling:t.lastChild]}},vc=Symbol("_vtc");function bc(e,t,n){const s=e[vc];s&&(t=(t?[t,...s]:[...s]).join(" ")),t==null?e.removeAttribute("class"):n?e.setAttribute("class",t):e.className=t}const vr=Symbol("_vod"),Ec=Symbol("_vsh"),Ac=Symbol(""),Rc=/(?:^|;)\s*display\s*:/;function xc(e,t,n){const s=e.style,r=ne(n);let i=!1;if(n&&!r){if(t)if(ne(t))for(const o of t.split(";")){const l=o.slice(0,o.indexOf(":")).trim();n[l]==null&&Jt(s,l,"")}else for(const o in t)n[o]==null&&Jt(s,o,"");for(const o in n){o==="display"&&(i=!0);const l=n[o];l!=null?Sc(e,o,!ne(t)&&t?t[o]:void 0,l)||Jt(s,o,l):Jt(s,o,"")}}else if(r){if(t!==n){const o=s[Ac];o&&(n+=";"+o),s.cssText=n,i=Rc.test(n)}}else t&&e.removeAttribute("style");vr in e&&(e[vr]=i?s.display:"",e[Ec]&&(s.display="none"))}const bn=/\s*!important$/;function Jt(e,t,n){if(L(n))n.forEach(s=>Jt(e,t,s));else if(n==null&&(n=""),t.startsWith("--"))bn.test(n)?e.setProperty(t,n.replace(bn,""),"important"):e.setProperty(t,n);else{const s=wc(e,t);bn.test(n)?e.setProperty(_t(s),n.replace(bn,""),"important"):e[s]=n}}const br=["Webkit","Moz","ms"],is={};function wc(e,t){const n=is[t];if(n)return n;let s=_e(t);if(s!=="filter"&&s in e)return is[t]=s;s=Fn(s);for(let r=0;r<br.length;r++){const i=br[r]+s;if(i in e)return is[t]=i}return t}function Sc(e,t,n,s){return e.tagName==="TEXTAREA"&&(t==="width"||t==="height")&&ne(s)&&n===s}const Er="http://www.w3.org/1999/xlink";function Ar(e,t,n,s,r,i=Co(t)){s&&t.startsWith("xlink:")?n==null?e.removeAttributeNS(Er,t.slice(6,t.length)):e.setAttributeNS(Er,t,n):n==null||i&&!Yr(n)?e.removeAttribute(t):e.setAttribute(t,i?"":$e(n)?String(n):n)}function Rr(e,t,n,s,r){if(t==="innerHTML"||t==="textContent"){n!=null&&(e[t]=t==="innerHTML"?to(n):n);return}const i=e.tagName;if(t==="value"&&i!=="PROGRESS"&&!i.includes("-")){const l=i==="OPTION"?e.getAttribute("value")||"":e.value,c=n==null?e.type==="checkbox"?"on":"":String(n);(l!==c||!("_value"in e))&&(e.value=c),n==null&&e.removeAttribute(t),e._value=n;return}let o=!1;if(n===""||n==null){const l=typeof e[t];l==="boolean"?n=Yr(n):n==null&&l==="string"?(n="",o=!0):l==="number"&&(n=0,o=!0)}try{e[t]=n}catch{}o&&e.removeAttribute(r||t)}function nt(e,t,n,s){e.addEventListener(t,n,s)}function Cc(e,t,n,s){e.removeEventListener(t,n,s)}const xr=Symbol("_vei");function Oc(e,t,n,s,r=null){const i=e[xr]||(e[xr]={}),o=i[t];if(s&&o)o.value=s;else{const[l,c]=Ic(t);if(s){const a=i[t]=Mc(s,r);nt(e,l,a,c)}else o&&(Cc(e,l,o,c),i[t]=void 0)}}const Pc=/(Once|Passive|Capture)$/,Tc=/^on:?(?:Once|Passive|Capture)$/;function Ic(e){let t,n;for(;(n=e.match(Pc))&&!Tc.test(e);)t||(t={}),e=e.slice(0,e.length-n[1].length),t[n[1].toLowerCase()]=!0;return[e[2]===":"?e.slice(3):_t(e.slice(2)),t]}let os=0;const Nc=Promise.resolve(),Dc=()=>os||(Nc.then(()=>os=0),os=Date.now());function Mc(e,t){const n=s=>{if(!s._vts)s._vts=Date.now();else if(s._vts<=n.attached)return;const r=n.value;if(L(r)){const i=s.stopImmediatePropagation;s.stopImmediatePropagation=()=>{i.call(s),s._stopped=!0};const o=r.slice(),l=[s];for(let c=0;c<o.length&&!s._stopped;c++){const a=o[c];a&&Ne(a,t,5,l)}}else Ne(r,t,5,[s])};return n.value=e,n.attached=Dc(),n}const wr=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&e.charCodeAt(2)>96&&e.charCodeAt(2)<123,Lc=(e,t,n,s,r,i)=>{const o=r==="svg";t==="class"?bc(e,s,o):t==="style"?xc(e,n,s):Ln(t)?Vn(t)||Oc(e,t,n,s,i):(t[0]==="."?(t=t.slice(1),!0):t[0]==="^"?(t=t.slice(1),!1):Vc(e,t,s,o))?(Rr(e,t,s),!e.tagName.includes("-")&&(t==="value"||t==="checked"||t==="selected")&&Ar(e,t,s,o,i,t!=="value")):e._isVueCE&&(jc(e,t)||e._def.__asyncLoader&&(/[A-Z]/.test(t)||!ne(s)))?Rr(e,_e(t),s,i,t):(t==="true-value"?e._trueValue=s:t==="false-value"&&(e._falseValue=s),Ar(e,t,s,o))};function Vc(e,t,n,s){if(s)return!!(t==="innerHTML"||t==="textContent"||t in e&&wr(t)&&B(n));if(t==="spellcheck"||t==="draggable"||t==="translate"||t==="autocorrect"||t==="sandbox"&&e.tagName==="IFRAME"||t==="form"||t==="list"&&e.tagName==="INPUT"||t==="type"&&e.tagName==="TEXTAREA")return!1;if(t==="width"||t==="height"){const r=e.tagName;if(r==="IMG"||r==="VIDEO"||r==="CANVAS"||r==="SOURCE")return!1}return wr(t)&&ne(n)?!1:t in e}function jc(e,t){const n=e._def.props;if(!n)return!1;const s=_e(t);return Array.isArray(n)?n.some(r=>_e(r)===s):Object.keys(n).some(r=>_e(r)===s)}const mt=e=>{const t=e.props["onUpdate:modelValue"]||!1;return L(t)?n=>An(t,n):t};function Fc(e){e.target.composing=!0}function Sr(e){const t=e.target;t.composing&&(t.composing=!1,t.dispatchEvent(new Event("input")))}const xe=Symbol("_assign"),En=Symbol("_initialValue");function ls(e,t,n){return t&&(e=e.trim()),n&&(e=Hn(e)),e}const ff={created(e,{modifiers:{lazy:t,trim:n,number:s}},r){e.parentNode&&(e.type==="text"?e[En]=e.defaultValue.replace(/[\r\n]/g,""):e.type==="textarea"&&(e[En]=e.defaultValue.replace(/\r\n?/g,`
+`))),e[xe]=mt(r);const i=s||r.props&&r.props.type==="number";nt(e,t?"change":"input",o=>{o.target.composing||e[xe](ls(e.value,n,i))}),(n||i)&&nt(e,"change",()=>{e.value=ls(e.value,n,i)}),t||(nt(e,"compositionstart",Fc),nt(e,"compositionend",Sr),nt(e,"change",Sr))},mounted(e,{value:t,modifiers:{trim:n,number:s}}){const r=t??"",i=e[En];delete e[En],i!==void 0&&(e.type==="text"||e.type==="textarea")&&e.value!==i?e[xe](ls(e.value,n,s)):e.value=r},beforeUpdate(e,{value:t,oldValue:n,modifiers:{lazy:s,trim:r,number:i}},o){if(e[xe]=mt(o),e.composing)return;const l=(i||e.type==="number")&&!/^0\d/.test(e.value)?Hn(e.value):e.value,c=t??"";if(l===c)return;const a=e.getRootNode();(a instanceof Document||a instanceof ShadowRoot)&&a.activeElement===e&&e.type!=="range"&&(s&&t===n||r&&e.value.trim()===c)||(e.value=c)}},af={deep:!0,created(e,t,n){e[xe]=mt(n),nt(e,"change",()=>{const s=e._modelValue,r=Bt(e),i=e.checked,o=e[xe];if(L(s)){const l=Ns(s,r),c=l!==-1;if(i&&!c)o(s.concat(r));else if(!i&&c){const a=[...s];a.splice(l,1),o(a)}}else if(st(s)){const l=new Set(s);i?l.add(r):l.delete(r),o(l)}else o(no(e,i))})},mounted:Cr,beforeUpdate(e,t,n){e[xe]=mt(n),Cr(e,t,n)}};function Cr(e,{value:t,oldValue:n},s){e._modelValue=t;let r;if(L(t))r=Ns(t,s.props.value)>-1;else if(st(t))r=t.has(s.props.value);else{if(t===n)return;r=Te(t,no(e,!0))}e.checked!==r&&(e.checked=r)}const df={created(e,{value:t},n){e.checked=Te(t,n.props.value),e[xe]=mt(n),nt(e,"change",()=>{e[xe](Bt(e))})},beforeUpdate(e,{value:t,oldValue:n},s){e[xe]=mt(s),t!==n&&(e.checked=Te(t,s.props.value))}},hf={deep:!0,created(e,{value:t,modifiers:{number:n}},s){e._modelValue=t,nt(e,"change",()=>{const r=Array.prototype.filter.call(e.options,c=>c.selected).map(c=>n?Hn(Bt(c)):Bt(c)),i=e.multiple,o=i?st(e._modelValue)?new Set(r):r:r[0],l=e._pendingValue=[i,i?L(o)?r.slice():r:o];try{e[xe](o)}finally{Bs(()=>{e._pendingValue===l&&(e._pendingValue=void 0)})}}),e[xe]=mt(s)},mounted(e,{value:t}){Or(e,t)},beforeUpdate(e,{value:t},n){e._modelValue=t,e[xe]=mt(n)},updated(e,{value:t}){const n=e._pendingValue;e._pendingValue=void 0,(!n||n[0]!==e.multiple||!Hc(t,n[1],n[0]))&&Or(e,t)}};function Hc(e,t,n){if(!n||L(e))return Te(e,t);if(st(e)){if(e.size!==t.length)return!1;for(const s of t)if(!e.has(s))return!1;return!0}return!1}function Or(e,t){const n=e.multiple,s=L(t);if(!(n&&!s&&!st(t))){for(let r=0,i=e.options.length;r<i;r++){const o=e.options[r],l=Bt(o);if(n)if(s){const c=typeof l;c==="string"||c==="number"?o.selected=t.some(a=>String(a)===String(l)):o.selected=Ns(t,l)>-1}else o.selected=t.has(l);else if(Te(Bt(o),t)){e.selectedIndex!==r&&(e.selectedIndex=r);return}}!n&&e.selectedIndex!==-1&&(e.selectedIndex=-1)}}function Bt(e){return"_value"in e?e._value:e.value}function no(e,t){const n=t?"_trueValue":"_falseValue";return n in e?e[n]:t}const Bc=["ctrl","shift","alt","meta"],Uc={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&&e.button!==0,middle:e=>"button"in e&&e.button!==1,right:e=>"button"in e&&e.button!==2,exact:(e,t)=>Bc.some(n=>e[`${n}Key`]&&!t.includes(n))},pf=(e,t)=>{if(!e)return e;const n=e._withMods||(e._withMods={}),s=t.join(".");return n[s]||(n[s]=(r,...i)=>{for(let o=0;o<t.length;o++){const l=Uc[t[o]];if(l&&l(r,t))return}return e(r,...i)})},Kc={esc:"escape",space:" ",up:"arrow-up",left:"arrow-left",right:"arrow-right",down:"arrow-down",delete:"backspace"},gf=(e,t)=>{const n=e._withKeys||(e._withKeys={}),s=t.join(".");return n[s]||(n[s]=r=>{if(!("key"in r))return;const i=_t(r.key);if(t.some(o=>o===i||Kc[o]===i))return e(r)})},Gc=fe({patchProp:Lc},yc);let Pr;function kc(){return Pr||(Pr=Ql(Gc))}const Wc=(...e)=>{const t=kc().createApp(...e),{mount:n}=t;return t.mount=s=>{const r=$c(s);if(!r)return;const i=t._component;!B(i)&&!i.render&&!i.template&&(i.template=r.innerHTML),r.nodeType===1&&(r.textContent="");const o=n(r,!1,qc(r));return r instanceof Element&&(r.removeAttribute("v-cloak"),r.setAttribute("data-v-app","")),o},t};function qc(e){if(e instanceof SVGElement)return"svg";if(typeof MathMLElement=="function"&&e instanceof MathMLElement)return"mathml"}function $c(e){return ne(e)?document.querySelector(e):e}/*!
+ * vue-router v4.6.4
+ * (c) 2025 Eduardo San Martin Morote
+ * @license MIT
+ */const Dt=typeof document<"u";function so(e){return typeof e=="object"||"displayName"in e||"props"in e||"__vccOpts"in e}function zc(e){return e.__esModule||e[Symbol.toStringTag]==="Module"||e.default&&so(e.default)}const k=Object.assign;function cs(e,t){const n={};for(const s in t){const r=t[s];n[s]=De(r)?r.map(e):e(r)}return n}const nn=()=>{},De=Array.isArray;function Tr(e,t){const n={};for(const s in e)n[s]=s in t?t[s]:e[s];return n}const ro=/#/g,Jc=/&/g,Qc=/\//g,Yc=/=/g,Xc=/\?/g,io=/\+/g,Zc=/%5B/g,eu=/%5D/g,oo=/%5E/g,tu=/%60/g,lo=/%7B/g,nu=/%7C/g,co=/%7D/g,su=/%20/g;function qs(e){return e==null?"":encodeURI(""+e).replace(nu,"|").replace(Zc,"[").replace(eu,"]")}function ru(e){return qs(e).replace(lo,"{").replace(co,"}").replace(oo,"^")}function Rs(e){return qs(e).replace(io,"%2B").replace(su,"+").replace(ro,"%23").replace(Jc,"%26").replace(tu,"`").replace(lo,"{").replace(co,"}").replace(oo,"^")}function iu(e){return Rs(e).replace(Yc,"%3D")}function ou(e){return qs(e).replace(ro,"%23").replace(Xc,"%3F")}function lu(e){return ou(e).replace(Qc,"%2F")}function fn(e){if(e==null)return null;try{return decodeURIComponent(""+e)}catch{}return""+e}const cu=/\/$/,uu=e=>e.replace(cu,"");function us(e,t,n="/"){let s,r={},i="",o="";const l=t.indexOf("#");let c=t.indexOf("?");return c=l>=0&&c>l?-1:c,c>=0&&(s=t.slice(0,c),i=t.slice(c,l>0?l:t.length),r=e(i.slice(1))),l>=0&&(s=s||t.slice(0,l),o=t.slice(l,t.length)),s=hu(s??t,n),{fullPath:s+i+o,path:s,query:r,hash:fn(o)}}function fu(e,t){const n=t.query?e(t.query):"";return t.path+(n&&"?")+n+(t.hash||"")}function Ir(e,t){return!t||!e.toLowerCase().startsWith(t.toLowerCase())?e:e.slice(t.length)||"/"}function au(e,t,n){const s=t.matched.length-1,r=n.matched.length-1;return s>-1&&s===r&&Ut(t.matched[s],n.matched[r])&&uo(t.params,n.params)&&e(t.query)===e(n.query)&&t.hash===n.hash}function Ut(e,t){return(e.aliasOf||e)===(t.aliasOf||t)}function uo(e,t){if(Object.keys(e).length!==Object.keys(t).length)return!1;for(var n in e)if(!du(e[n],t[n]))return!1;return!0}function du(e,t){return De(e)?Nr(e,t):De(t)?Nr(t,e):(e==null?void 0:e.valueOf())===(t==null?void 0:t.valueOf())}function Nr(e,t){return De(t)?e.length===t.length&&e.every((n,s)=>n===t[s]):e.length===1&&e[0]===t}function hu(e,t){if(e.startsWith("/"))return e;if(!e)return t;const n=t.split("/"),s=e.split("/"),r=s[s.length-1];(r===".."||r===".")&&s.push("");let i=n.length-1,o,l;for(o=0;o<s.length;o++)if(l=s[o],l!==".")if(l==="..")i>1&&i--;else break;return n.slice(0,i).join("/")+"/"+s.slice(o).join("/")}const dt={path:"/",name:void 0,params:{},query:{},hash:"",fullPath:"/",matched:[],meta:{},redirectedFrom:void 0};let xs=function(e){return e.pop="pop",e.push="push",e}({}),fs=function(e){return e.back="back",e.forward="forward",e.unknown="",e}({});function pu(e){if(!e)if(Dt){const t=document.querySelector("base");e=t&&t.getAttribute("href")||"/",e=e.replace(/^\w+:\/\/[^\/]+/,"")}else e="/";return e[0]!=="/"&&e[0]!=="#"&&(e="/"+e),uu(e)}const gu=/^[^#]+#/;function mu(e,t){return e.replace(gu,"#")+t}function _u(e,t){const n=document.documentElement.getBoundingClientRect(),s=e.getBoundingClientRect();return{behavior:t.behavior,left:s.left-n.left-(t.left||0),top:s.top-n.top-(t.top||0)}}const zn=()=>({left:window.scrollX,top:window.scrollY});function yu(e){let t;if("el"in e){const n=e.el,s=typeof n=="string"&&n.startsWith("#"),r=typeof n=="string"?s?document.getElementById(n.slice(1)):document.querySelector(n):n;if(!r)return;t=_u(r,e)}else t=e;"scrollBehavior"in document.documentElement.style?window.scrollTo(t):window.scrollTo(t.left!=null?t.left:window.scrollX,t.top!=null?t.top:window.scrollY)}function Dr(e,t){return(history.state?history.state.position-t:-1)+e}const ws=new Map;function vu(e,t){ws.set(e,t)}function bu(e){const t=ws.get(e);return ws.delete(e),t}function Eu(e){return typeof e=="string"||e&&typeof e=="object"}function fo(e){return typeof e=="string"||typeof e=="symbol"}let te=function(e){return e[e.MATCHER_NOT_FOUND=1]="MATCHER_NOT_FOUND",e[e.NAVIGATION_GUARD_REDIRECT=2]="NAVIGATION_GUARD_REDIRECT",e[e.NAVIGATION_ABORTED=4]="NAVIGATION_ABORTED",e[e.NAVIGATION_CANCELLED=8]="NAVIGATION_CANCELLED",e[e.NAVIGATION_DUPLICATED=16]="NAVIGATION_DUPLICATED",e}({});const ao=Symbol("");te.MATCHER_NOT_FOUND+"",te.NAVIGATION_GUARD_REDIRECT+"",te.NAVIGATION_ABORTED+"",te.NAVIGATION_CANCELLED+"",te.NAVIGATION_DUPLICATED+"";function Kt(e,t){return k(new Error,{type:e,[ao]:!0},t)}function Qe(e,t){return e instanceof Error&&ao in e&&(t==null||!!(e.type&t))}const Au=["params","query","hash"];function Ru(e){if(typeof e=="string")return e;if(e.path!=null)return e.path;const t={};for(const n of Au)n in e&&(t[n]=e[n]);return JSON.stringify(t,null,2)}function xu(e){const t={};if(e===""||e==="?")return t;const n=(e[0]==="?"?e.slice(1):e).split("&");for(let s=0;s<n.length;++s){const r=n[s].replace(io," "),i=r.indexOf("="),o=fn(i<0?r:r.slice(0,i)),l=i<0?null:fn(r.slice(i+1));if(o in t){let c=t[o];De(c)||(c=t[o]=[c]),c.push(l)}else t[o]=l}return t}function Mr(e){let t="";for(let n in e){const s=e[n];if(n=iu(n),s==null){s!==void 0&&(t+=(t.length?"&":"")+n);continue}(De(s)?s.map(r=>r&&Rs(r)):[s&&Rs(s)]).forEach(r=>{r!==void 0&&(t+=(t.length?"&":"")+n,r!=null&&(t+="="+r))})}return t}function wu(e){const t={};for(const n in e){const s=e[n];s!==void 0&&(t[n]=De(s)?s.map(r=>r==null?null:""+r):s==null?s:""+s)}return t}const Su=Symbol(""),Lr=Symbol(""),Jn=Symbol(""),$s=Symbol(""),Ss=Symbol("");function $t(){let e=[];function t(s){return e.push(s),()=>{const r=e.indexOf(s);r>-1&&e.splice(r,1)}}function n(){e=[]}return{add:t,list:()=>e.slice(),reset:n}}function pt(e,t,n,s,r,i=o=>o()){const o=s&&(s.enterCallbacks[r]=s.enterCallbacks[r]||[]);return()=>new Promise((l,c)=>{const a=g=>{g===!1?c(Kt(te.NAVIGATION_ABORTED,{from:n,to:t})):g instanceof Error?c(g):Eu(g)?c(Kt(te.NAVIGATION_GUARD_REDIRECT,{from:t,to:g})):(o&&s.enterCallbacks[r]===o&&typeof g=="function"&&o.push(g),l())},f=i(()=>e.call(s&&s.instances[r],t,n,a));let h=Promise.resolve(f);e.length<3&&(h=h.then(a)),h.catch(g=>c(g))})}function as(e,t,n,s,r=i=>i()){const i=[];for(const o of e)for(const l in o.components){let c=o.components[l];if(!(t!=="beforeRouteEnter"&&!o.instances[l]))if(so(c)){const a=(c.__vccOpts||c)[t];a&&i.push(pt(a,n,s,o,l,r))}else{let a=c();i.push(()=>a.then(f=>{if(!f)throw new Error(`Couldn't resolve component "${l}" at "${o.path}"`);const h=zc(f)?f.default:f;o.mods[l]=f,o.components[l]=h;const g=(h.__vccOpts||h)[t];return g&&pt(g,n,s,o,l,r)()}))}}return i}function Cu(e,t){const n=[],s=[],r=[],i=Math.max(t.matched.length,e.matched.length);for(let o=0;o<i;o++){const l=t.matched[o];l&&(e.matched.find(a=>Ut(a,l))?s.push(l):n.push(l));const c=e.matched[o];c&&(t.matched.find(a=>Ut(a,c))||r.push(c))}return[n,s,r]}/*!
+ * vue-router v4.6.4
+ * (c) 2025 Eduardo San Martin Morote
+ * @license MIT
+ */let Ou=()=>location.protocol+"//"+location.host;function ho(e,t){const{pathname:n,search:s,hash:r}=t,i=e.indexOf("#");if(i>-1){let o=r.includes(e.slice(i))?e.slice(i).length:1,l=r.slice(o);return l[0]!=="/"&&(l="/"+l),Ir(l,"")}return Ir(n,e)+s+r}function Pu(e,t,n,s){let r=[],i=[],o=null;const l=({state:g})=>{const m=ho(e,location),I=n.value,w=t.value;let H=0;if(g){if(n.value=m,t.value=g,o&&o===I){o=null;return}H=w?g.position-w.position:0}else s(m);r.forEach(j=>{j(n.value,I,{delta:H,type:xs.pop,direction:H?H>0?fs.forward:fs.back:fs.unknown})})};function c(){o=n.value}function a(g){r.push(g);const m=()=>{const I=r.indexOf(g);I>-1&&r.splice(I,1)};return i.push(m),m}function f(){if(document.visibilityState==="hidden"){const{history:g}=window;if(!g.state)return;g.replaceState(k({},g.state,{scroll:zn()}),"")}}function h(){for(const g of i)g();i=[],window.removeEventListener("popstate",l),window.removeEventListener("pagehide",f),document.removeEventListener("visibilitychange",f)}return window.addEventListener("popstate",l),window.addEventListener("pagehide",f),document.addEventListener("visibilitychange",f),{pauseListeners:c,listen:a,destroy:h}}function Vr(e,t,n,s=!1,r=!1){return{back:e,current:t,forward:n,replaced:s,position:window.history.length,scroll:r?zn():null}}function Tu(e){const{history:t,location:n}=window,s={value:ho(e,n)},r={value:t.state};r.value||i(s.value,{back:null,current:s.value,forward:null,position:t.length-1,replaced:!0,scroll:null},!0);function i(c,a,f){const h=e.indexOf("#"),g=h>-1?(n.host&&document.querySelector("base")?e:e.slice(h))+c:Ou()+e+c;try{t[f?"replaceState":"pushState"](a,"",g),r.value=a}catch(m){console.error(m),n[f?"replace":"assign"](g)}}function o(c,a){i(c,k({},t.state,Vr(r.value.back,c,r.value.forward,!0),a,{position:r.value.position}),!0),s.value=c}function l(c,a){const f=k({},r.value,t.state,{forward:c,scroll:zn()});i(f.current,f,!0),i(c,k({},Vr(s.value,c,null),{position:f.position+1},a),!1),s.value=c}return{location:s,state:r,push:l,replace:o}}function Iu(e){e=pu(e);const t=Tu(e),n=Pu(e,t.state,t.location,t.replace);function s(i,o=!0){o||n.pauseListeners(),history.go(i)}const r=k({location:"",base:e,go:s,createHref:mu.bind(null,e)},t,n);return Object.defineProperty(r,"location",{enumerable:!0,get:()=>t.location.value}),Object.defineProperty(r,"state",{enumerable:!0,get:()=>t.state.value}),r}let xt=function(e){return e[e.Static=0]="Static",e[e.Param=1]="Param",e[e.Group=2]="Group",e}({});var oe=function(e){return e[e.Static=0]="Static",e[e.Param=1]="Param",e[e.ParamRegExp=2]="ParamRegExp",e[e.ParamRegExpEnd=3]="ParamRegExpEnd",e[e.EscapeNext=4]="EscapeNext",e}(oe||{});const Nu={type:xt.Static,value:""},Du=/[a-zA-Z0-9_]/;function Mu(e){if(!e)return[[]];if(e==="/")return[[Nu]];if(!e.startsWith("/"))throw new Error(`Invalid path "${e}"`);function t(m){throw new Error(`ERR (${n})/"${a}": ${m}`)}let n=oe.Static,s=n;const r=[];let i;function o(){i&&r.push(i),i=[]}let l=0,c,a="",f="";function h(){a&&(n===oe.Static?i.push({type:xt.Static,value:a}):n===oe.Param||n===oe.ParamRegExp||n===oe.ParamRegExpEnd?(i.length>1&&(c==="*"||c==="+")&&t(`A repeatable param (${a}) must be alone in its segment. eg: '/:ids+.`),i.push({type:xt.Param,value:a,regexp:f,repeatable:c==="*"||c==="+",optional:c==="*"||c==="?"})):t("Invalid state to consume buffer"),a="")}function g(){a+=c}for(;l<e.length;){if(c=e[l++],c==="\\"&&n!==oe.ParamRegExp){s=n,n=oe.EscapeNext;continue}switch(n){case oe.Static:c==="/"?(a&&h(),o()):c===":"?(h(),n=oe.Param):g();break;case oe.EscapeNext:g(),n=s;break;case oe.Param:c==="("?n=oe.ParamRegExp:Du.test(c)?g():(h(),n=oe.Static,c!=="*"&&c!=="?"&&c!=="+"&&l--);break;case oe.ParamRegExp:c===")"?f[f.length-1]=="\\"?f=f.slice(0,-1)+c:n=oe.ParamRegExpEnd:f+=c;break;case oe.ParamRegExpEnd:h(),n=oe.Static,c!=="*"&&c!=="?"&&c!=="+"&&l--,f="";break;default:t("Unknown state");break}}return n===oe.ParamRegExp&&t(`Unfinished custom RegExp for param "${a}"`),h(),o(),r}const jr="[^/]+?",Lu={sensitive:!1,strict:!1,start:!0,end:!0};var ge=function(e){return e[e._multiplier=10]="_multiplier",e[e.Root=90]="Root",e[e.Segment=40]="Segment",e[e.SubSegment=30]="SubSegment",e[e.Static=40]="Static",e[e.Dynamic=20]="Dynamic",e[e.BonusCustomRegExp=10]="BonusCustomRegExp",e[e.BonusWildcard=-50]="BonusWildcard",e[e.BonusRepeatable=-20]="BonusRepeatable",e[e.BonusOptional=-8]="BonusOptional",e[e.BonusStrict=.7000000000000001]="BonusStrict",e[e.BonusCaseSensitive=.25]="BonusCaseSensitive",e}(ge||{});const Vu=/[.+*?^${}()[\]/\\]/g;function ju(e,t){const n=k({},Lu,t),s=[];let r=n.start?"^":"";const i=[];for(const a of e){const f=a.length?[]:[ge.Root];n.strict&&!a.length&&(r+="/");for(let h=0;h<a.length;h++){const g=a[h];let m=ge.Segment+(n.sensitive?ge.BonusCaseSensitive:0);if(g.type===xt.Static)h||(r+="/"),r+=g.value.replace(Vu,"\\$&"),m+=ge.Static;else if(g.type===xt.Param){const{value:I,repeatable:w,optional:H,regexp:j}=g;i.push({name:I,repeatable:w,optional:H});const O=j||jr;if(O!==jr){m+=ge.BonusCustomRegExp;try{`${O}`}catch(T){throw new Error(`Invalid custom RegExp for param "${I}" (${O}): `+T.message)}}let N=w?`((?:${O})(?:/(?:${O}))*)`:`(${O})`;h||(N=H&&a.length<2?`(?:/${N})`:"/"+N),H&&(N+="?"),r+=N,m+=ge.Dynamic,H&&(m+=ge.BonusOptional),w&&(m+=ge.BonusRepeatable),O===".*"&&(m+=ge.BonusWildcard)}f.push(m)}s.push(f)}if(n.strict&&n.end){const a=s.length-1;s[a][s[a].length-1]+=ge.BonusStrict}n.strict||(r+="/?"),n.end?r+="$":n.strict&&!r.endsWith("/")&&(r+="(?:/|$)");const o=new RegExp(r,n.sensitive?"":"i");function l(a){const f=a.match(o),h={};if(!f)return null;for(let g=1;g<f.length;g++){const m=f[g]||"",I=i[g-1];h[I.name]=m&&I.repeatable?m.split("/"):m}return h}function c(a){let f="",h=!1;for(const g of e){(!h||!f.endsWith("/"))&&(f+="/"),h=!1;for(const m of g)if(m.type===xt.Static)f+=m.value;else if(m.type===xt.Param){const{value:I,repeatable:w,optional:H}=m,j=I in a?a[I]:"";if(De(j)&&!w)throw new Error(`Provided param "${I}" is an array but it is not repeatable (* or + modifiers)`);const O=De(j)?j.join("/"):j;if(!O)if(H)g.length<2&&(f.endsWith("/")?f=f.slice(0,-1):h=!0);else throw new Error(`Missing required param "${I}"`);f+=O}}return f||"/"}return{re:o,score:s,keys:i,parse:l,stringify:c}}function Fu(e,t){let n=0;for(;n<e.length&&n<t.length;){const s=t[n]-e[n];if(s)return s;n++}return e.length<t.length?e.length===1&&e[0]===ge.Static+ge.Segment?-1:1:e.length>t.length?t.length===1&&t[0]===ge.Static+ge.Segment?1:-1:0}function po(e,t){let n=0;const s=e.score,r=t.score;for(;n<s.length&&n<r.length;){const i=Fu(s[n],r[n]);if(i)return i;n++}if(Math.abs(r.length-s.length)===1){if(Fr(s))return 1;if(Fr(r))return-1}return r.length-s.length}function Fr(e){const t=e[e.length-1];return e.length>0&&t[t.length-1]<0}const Hu={strict:!1,end:!0,sensitive:!1};function Bu(e,t,n){const s=ju(Mu(e.path),n),r=k(s,{record:e,parent:t,children:[],alias:[]});return t&&!r.record.aliasOf==!t.record.aliasOf&&t.children.push(r),r}function Uu(e,t){const n=[],s=new Map;t=Tr(Hu,t);function r(h){return s.get(h)}function i(h,g,m){const I=!m,w=Br(h);w.aliasOf=m&&m.record;const H=Tr(t,h),j=[w];if("alias"in h){const T=typeof h.alias=="string"?[h.alias]:h.alias;for(const Q of T)j.push(Br(k({},w,{components:m?m.record.components:w.components,path:Q,aliasOf:m?m.record:w})))}let O,N;for(const T of j){const{path:Q}=T;if(g&&Q[0]!=="/"){const ie=g.record.path,ee=ie[ie.length-1]==="/"?"":"/";T.path=g.record.path+(Q&&ee+Q)}if(O=Bu(T,g,H),m?m.alias.push(O):(N=N||O,N!==O&&N.alias.push(O),I&&h.name&&!Ur(O)&&o(h.name)),go(O)&&c(O),w.children){const ie=w.children;for(let ee=0;ee<ie.length;ee++)i(ie[ee],O,m&&m.children[ee])}m=m||O}return N?()=>{o(N)}:nn}function o(h){if(fo(h)){const g=s.get(h);g&&(s.delete(h),n.splice(n.indexOf(g),1),g.children.forEach(o),g.alias.forEach(o))}else{const g=n.indexOf(h);g>-1&&(n.splice(g,1),h.record.name&&s.delete(h.record.name),h.children.forEach(o),h.alias.forEach(o))}}function l(){return n}function c(h){const g=ku(h,n);n.splice(g,0,h),h.record.name&&!Ur(h)&&s.set(h.record.name,h)}function a(h,g){let m,I={},w,H;if("name"in h&&h.name){if(m=s.get(h.name),!m)throw Kt(te.MATCHER_NOT_FOUND,{location:h});H=m.record.name,I=k(Hr(g.params,m.keys.filter(N=>!N.optional).concat(m.parent?m.parent.keys.filter(N=>N.optional):[]).map(N=>N.name)),h.params&&Hr(h.params,m.keys.map(N=>N.name))),w=m.stringify(I)}else if(h.path!=null)w=h.path,m=n.find(N=>N.re.test(w)),m&&(I=m.parse(w),H=m.record.name);else{if(m=g.name?s.get(g.name):n.find(N=>N.re.test(g.path)),!m)throw Kt(te.MATCHER_NOT_FOUND,{location:h,currentLocation:g});H=m.record.name,I=k({},g.params,h.params),w=m.stringify(I)}const j=[];let O=m;for(;O;)j.unshift(O.record),O=O.parent;return{name:H,path:w,params:I,matched:j,meta:Gu(j)}}e.forEach(h=>i(h));function f(){n.length=0,s.clear()}return{addRoute:i,resolve:a,removeRoute:o,clearRoutes:f,getRoutes:l,getRecordMatcher:r}}function Hr(e,t){const n={};for(const s of t)s in e&&(n[s]=e[s]);return n}function Br(e){const t={path:e.path,redirect:e.redirect,name:e.name,meta:e.meta||{},aliasOf:e.aliasOf,beforeEnter:e.beforeEnter,props:Ku(e),children:e.children||[],instances:{},leaveGuards:new Set,updateGuards:new Set,enterCallbacks:{},components:"components"in e?e.components||null:e.component&&{default:e.component}};return Object.defineProperty(t,"mods",{value:{}}),t}function Ku(e){const t={},n=e.props||!1;if("component"in e)t.default=n;else for(const s in e.components)t[s]=typeof n=="object"?n[s]:n;return t}function Ur(e){for(;e;){if(e.record.aliasOf)return!0;e=e.parent}return!1}function Gu(e){return e.reduce((t,n)=>k(t,n.meta),{})}function ku(e,t){let n=0,s=t.length;for(;n!==s;){const i=n+s>>1;po(e,t[i])<0?s=i:n=i+1}const r=Wu(e);return r&&(s=t.lastIndexOf(r,s-1)),s}function Wu(e){let t=e;for(;t=t.parent;)if(go(t)&&po(e,t)===0)return t}function go({record:e}){return!!(e.name||e.components&&Object.keys(e.components).length||e.redirect)}function Kr(e){const t=Pe(Jn),n=Pe($s),s=Ce(()=>{const c=Lt(e.to);return t.resolve(c)}),r=Ce(()=>{const{matched:c}=s.value,{length:a}=c,f=c[a-1],h=n.matched;if(!f||!h.length)return-1;const g=h.findIndex(Ut.bind(null,f));if(g>-1)return g;const m=Gr(c[a-2]);return a>1&&Gr(f)===m&&h[h.length-1].path!==m?h.findIndex(Ut.bind(null,c[a-2])):g}),i=Ce(()=>r.value>-1&&Qu(n.params,s.value.params)),o=Ce(()=>r.value>-1&&r.value===n.matched.length-1&&uo(n.params,s.value.params));function l(c={}){if(Ju(c)){const a=t[Lt(e.replace)?"replace":"push"](Lt(e.to)).catch(nn);return e.viewTransition&&typeof document<"u"&&"startViewTransition"in document&&document.startViewTransition(()=>a),a}return Promise.resolve()}return{route:s,href:Ce(()=>s.value.href),isActive:i,isExactActive:o,navigate:l}}function qu(e){return e.length===1?e[0]:e}const $u=wi({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"},viewTransition:Boolean},useLink:Kr,setup(e,{slots:t}){const n=dn(Kr(e)),{options:s}=Pe(Jn),r=Ce(()=>({[kr(e.activeClass,s.linkActiveClass,"router-link-active")]:n.isActive,[kr(e.exactActiveClass,s.linkExactActiveClass,"router-link-exact-active")]:n.isExactActive}));return()=>{const i=t.default&&qu(t.default(n));return e.custom?i:eo("a",{"aria-current":n.isExactActive?e.ariaCurrentValue:null,href:n.href,onClick:n.navigate,class:r.value},i)}}}),zu=$u;function Ju(e){if(!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)&&!e.defaultPrevented&&!(e.button!==void 0&&e.button!==0)){if(e.currentTarget&&e.currentTarget.getAttribute){const t=e.currentTarget.getAttribute("target");if(/\b_blank\b/i.test(t))return}return e.preventDefault&&e.preventDefault(),!0}}function Qu(e,t){for(const n in t){const s=t[n],r=e[n];if(typeof s=="string"){if(s!==r)return!1}else if(!De(r)||r.length!==s.length||s.some((i,o)=>i.valueOf()!==r[o].valueOf()))return!1}return!0}function Gr(e){return e?e.aliasOf?e.aliasOf.path:e.path:""}const kr=(e,t,n)=>e??t??n,Yu=wi({name:"RouterView",inheritAttrs:!1,props:{name:{type:String,default:"default"},route:Object},compatConfig:{MODE:3},setup(e,{attrs:t,slots:n}){const s=Pe(Ss),r=Ce(()=>e.route||s.value),i=Pe(Lr,0),o=Ce(()=>{let a=Lt(i);const{matched:f}=r.value;let h;for(;(h=f[a])&&!h.components;)a++;return a}),l=Ce(()=>r.value.matched[o.value]);Rn(Lr,Ce(()=>o.value+1)),Rn(Su,l),Rn(Ss,r);const c=Qo();return xn(()=>[c.value,l.value,e.name],([a,f,h],[g,m,I])=>{f&&(f.instances[h]=a,m&&m!==f&&a&&a===g&&(f.leaveGuards.size||(f.leaveGuards=m.leaveGuards),f.updateGuards.size||(f.updateGuards=m.updateGuards))),a&&f&&(!m||!Ut(f,m)||!g)&&(f.enterCallbacks[h]||[]).forEach(w=>w(a))},{flush:"post"}),()=>{const a=r.value,f=e.name,h=l.value,g=h&&h.components[f];if(!g)return Wr(n.default,{Component:g,route:a});const m=h.props[f],I=m?m===!0?a.params:typeof m=="function"?m(a):m:null,H=eo(g,k({},I,t,{onVnodeUnmounted:j=>{j.component.isUnmounted&&(h.instances[f]=null)},ref:c}));return Wr(n.default,{Component:H,route:a})||H}}});function Wr(e,t){if(!e)return null;const n=e(t);return n.length===1?n[0]:n}const Xu=Yu;function Zu(e){const t=Uu(e.routes,e),n=e.parseQuery||xu,s=e.stringifyQuery||Mr,r=e.history,i=$t(),o=$t(),l=$t(),c=Yo(dt);let a=dt;Dt&&e.scrollBehavior&&"scrollRestoration"in history&&(history.scrollRestoration="manual");const f=cs.bind(null,v=>""+v),h=cs.bind(null,lu),g=cs.bind(null,fn);function m(v,P){let S,D;return fo(v)?(S=t.getRecordMatcher(v),D=P):D=v,t.addRoute(D,S)}function I(v){const P=t.getRecordMatcher(v);P&&t.removeRoute(P)}function w(){return t.getRoutes().map(v=>v.record)}function H(v){return!!t.getRecordMatcher(v)}function j(v,P){if(P=k({},P||c.value),typeof v=="string"){const p=us(n,v,P.path),y=t.resolve({path:p.path},P),b=r.createHref(p.fullPath);return k(p,y,{params:g(y.params),hash:fn(p.hash),redirectedFrom:void 0,href:b})}let S;if(v.path!=null)S=k({},v,{path:us(n,v.path,P.path).path});else{const p=k({},v.params);for(const y in p)p[y]==null&&delete p[y];S=k({},v,{params:h(p)}),P.params=h(P.params)}const D=t.resolve(S,P),U=v.hash||"";D.params=f(g(D.params));const u=fu(s,k({},v,{hash:ru(U),path:D.path})),d=r.createHref(u);return k({fullPath:u,hash:U,query:s===Mr?wu(v.query):v.query||{}},D,{redirectedFrom:void 0,href:d})}function O(v){return typeof v=="string"?us(n,v,c.value.path):k({},v)}function N(v,P){if(a!==v)return Kt(te.NAVIGATION_CANCELLED,{from:P,to:v})}function T(v){return ee(v)}function Q(v){return T(k(O(v),{replace:!0}))}function ie(v,P){const S=v.matched[v.matched.length-1];if(S&&S.redirect){const{redirect:D}=S;let U=typeof D=="function"?D(v,P):D;return typeof U=="string"&&(U=U.includes("?")||U.includes("#")?U=O(U):{path:U},U.params={}),k({query:v.query,hash:v.hash,params:U.path!=null?{}:v.params},U)}}function ee(v,P){const S=a=j(v),D=c.value,U=v.state,u=v.force,d=v.replace===!0,p=ie(S,D);if(p)return ee(k(O(p),{state:typeof p=="object"?k({},U,p.state):U,force:u,replace:d}),P||S);const y=S;y.redirectedFrom=P;let b;return!u&&au(s,D,S)&&(b=Kt(te.NAVIGATION_DUPLICATED,{to:y,from:D}),je(D,D,!0,!1)),(b?Promise.resolve(b):Le(y,D)).catch(_=>Qe(_)?Qe(_,te.NAVIGATION_GUARD_REDIRECT)?_:at(_):G(_,y,D)).then(_=>{if(_){if(Qe(_,te.NAVIGATION_GUARD_REDIRECT))return ee(k({replace:d},O(_.to),{state:typeof _.to=="object"?k({},U,_.to.state):U,force:u}),P||y)}else _=yt(y,D,!0,d,U);return ft(y,D,_),_})}function Me(v,P){const S=N(v,P);return S?Promise.reject(S):Promise.resolve()}function ut(v){const P=Tt.values().next().value;return P&&typeof P.runWithContext=="function"?P.runWithContext(v):v()}function Le(v,P){let S;const[D,U,u]=Cu(v,P);S=as(D.reverse(),"beforeRouteLeave",v,P);for(const p of D)p.leaveGuards.forEach(y=>{S.push(pt(y,v,P))});const d=Me.bind(null,v,P);return S.push(d),we(S).then(()=>{S=[];for(const p of i.list())S.push(pt(p,v,P));return S.push(d),we(S)}).then(()=>{S=as(U,"beforeRouteUpdate",v,P);for(const p of U)p.updateGuards.forEach(y=>{S.push(pt(y,v,P))});return S.push(d),we(S)}).then(()=>{S=[];for(const p of u)if(p.beforeEnter)if(De(p.beforeEnter))for(const y of p.beforeEnter)S.push(pt(y,v,P));else S.push(pt(p.beforeEnter,v,P));return S.push(d),we(S)}).then(()=>(v.matched.forEach(p=>p.enterCallbacks={}),S=as(u,"beforeRouteEnter",v,P,ut),S.push(d),we(S))).then(()=>{S=[];for(const p of o.list())S.push(pt(p,v,P));return S.push(d),we(S)}).catch(p=>Qe(p,te.NAVIGATION_CANCELLED)?p:Promise.reject(p))}function ft(v,P,S){l.list().forEach(D=>ut(()=>D(v,P,S)))}function yt(v,P,S,D,U){const u=N(v,P);if(u)return u;const d=P===dt,p=Dt?history.state:{};S&&(D||d?r.replace(v.fullPath,k({scroll:d&&p&&p.scroll},U)):r.push(v.fullPath,U)),c.value=v,je(v,P,S,d),at()}let Ve;function Gt(){Ve||(Ve=r.listen((v,P,S)=>{if(!vt.listening)return;const D=j(v),U=ie(D,vt.currentRoute.value);if(U){ee(k(U,{replace:!0,force:!0}),D).catch(nn);return}a=D;const u=c.value;Dt&&vu(Dr(u.fullPath,S.delta),zn()),Le(D,u).catch(d=>Qe(d,te.NAVIGATION_ABORTED|te.NAVIGATION_CANCELLED)?d:Qe(d,te.NAVIGATION_GUARD_REDIRECT)?(ee(k(O(d.to),{force:!0}),D).then(p=>{Qe(p,te.NAVIGATION_ABORTED|te.NAVIGATION_DUPLICATED)&&!S.delta&&S.type===xs.pop&&r.go(-1,!1)}).catch(nn),Promise.reject()):(S.delta&&r.go(-S.delta,!1),G(d,D,u))).then(d=>{d=d||yt(D,u,!1),d&&(S.delta&&!Qe(d,te.NAVIGATION_CANCELLED)?r.go(-S.delta,!1):S.type===xs.pop&&Qe(d,te.NAVIGATION_ABORTED|te.NAVIGATION_DUPLICATED)&&r.go(-1,!1)),ft(D,u,d)}).catch(nn)}))}let Ot=$t(),le=$t(),z;function G(v,P,S){at(v);const D=le.list();return D.length?D.forEach(U=>U(v,P,S)):console.error(v),Promise.reject(v)}function ze(){return z&&c.value!==dt?Promise.resolve():new Promise((v,P)=>{Ot.add([v,P])})}function at(v){return z||(z=!v,Gt(),Ot.list().forEach(([P,S])=>v?S(v):P()),Ot.reset()),v}function je(v,P,S,D){const{scrollBehavior:U}=e;if(!Dt||!U)return Promise.resolve();const u=!S&&bu(Dr(v.fullPath,0))||(D||!S)&&history.state&&history.state.scroll||null;return Bs().then(()=>U(v,P,u)).then(d=>d&&yu(d)).catch(d=>G(d,v,P))}const ye=v=>r.go(v);let Pt;const Tt=new Set,vt={currentRoute:c,listening:!0,addRoute:m,removeRoute:I,clearRoutes:t.clearRoutes,hasRoute:H,getRoutes:w,resolve:j,options:e,push:T,replace:Q,go:ye,back:()=>ye(-1),forward:()=>ye(1),beforeEach:i.add,beforeResolve:o.add,afterEach:l.add,onError:le.add,isReady:ze,install(v){v.component("RouterLink",zu),v.component("RouterView",Xu),v.config.globalProperties.$router=vt,Object.defineProperty(v.config.globalProperties,"$route",{enumerable:!0,get:()=>Lt(c)}),Dt&&!Pt&&c.value===dt&&(Pt=!0,T(r.location).catch(D=>{}));const P={};for(const D in dt)Object.defineProperty(P,D,{get:()=>c.value[D],enumerable:!0});v.provide(Jn,vt),v.provide($s,pi(P)),v.provide(Ss,c);const S=v.unmount;Tt.add(v),v.unmount=function(){Tt.delete(v),Tt.size<1&&(a=dt,Ve&&Ve(),Ve=null,c.value=dt,Pt=!1,z=!1),S()}}};function we(v){return v.reduce((P,S)=>P.then(()=>ut(S)),Promise.resolve())}return vt}function mf(){return Pe(Jn)}function _f(e){return Pe($s)}const gn="/StudyBase/api";async function mn(e){if(e.status===422){const t=await e.json(),n=new Error(t.detail||"需要确认");throw n.needConfirm=!0,n}if(!e.ok){let t=`HTTP ${e.status}`;try{t=(await e.json()).detail||t}catch{}throw new Error(t)}return e}async function ef(e){const t=await fetch(gn+e);return mn(t).then(n=>n.json())}async function yf(e,t){const n=await fetch(gn+e,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(t||{})});return mn(n).then(s=>s.json())}async function vf(e,t){const n=await fetch(gn+e,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(t||{})});return mn(n).then(s=>s.json())}async function bf(e){const t=await fetch(gn+e,{method:"DELETE"});return mn(t).then(n=>n.json())}async function Ef(e,t,n){const s=await fetch(gn+e,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(t||{})});await mn(s);const r=await s.blob(),i=s.headers.get("Content-Disposition")||"";let o="download.xlsx";const l=i.match(/filename\*=UTF-8''([^;]+)/);l&&(o=decodeURIComponent(l[1]));const c=URL.createObjectURL(r),a=document.createElement("a");a.href=c,a.download=o,document.body.appendChild(a),a.click(),a.remove(),URL.revokeObjectURL(c)}function Af(e){return window.confirm(e)}function Rf(e,t,n){const s=window.prompt((e?e+`
+`:"")+t,n||"");return s===null?null:s}function xf(e){window.alert(e)}const At=dn({subject:[],cause:[],source:[],archiveStatus:[],term:[],stage:[],loaded:!1});let ds=null;function tf(){return ds||(ds=ef("/questions/filter-options").then(e=>{At.subject=e.subject||[],At.cause=e.cause||[],At.source=e.source||[],At.archiveStatus=e.archive_status||[],At.term=e.term||[],At.stage=e.stage||[]}).catch(()=>{}).finally(()=>{At.loaded=!0})),ds}const wf={filters:null,idInput:"",kpInput:"",viewMode:"table",sortCol:"q.id",sortDesc:!1},nf={__name:"App",setup(e){return tf(),(t,n)=>{const s=Sl("router-view");return qi(),Ji(s)}}},sf=[{path:"/",name:"home",component:()=>re(()=>import("./Home-CU44J6Oq.js"),__vite__mapDeps([0,1,2]))},{path:"/subject-portal",name:"subjectPortal",component:()=>re(()=>import("./SubjectPortal-Ci-W5Wu7.js"),__vite__mapDeps([3,1,4]))},{path:"/questions",name:"questionList",component:()=>re(()=>import("./QuestionList-C0e9T1NX.js"),__vite__mapDeps([5,6,1,7,8]))},{path:"/questions/add",name:"questionAdd",component:()=>re(()=>import("./QuestionAdd-lnn0hhip.js"),__vite__mapDeps([9,1]))},{path:"/questions/import",name:"fileImport",component:()=>re(()=>import("./FileImport-D8krUDMm.js"),__vite__mapDeps([10,1,11]))},{path:"/questions/import/preview",name:"importPreview",component:()=>re(()=>import("./ImportPreview-BVcw4E59.js"),__vite__mapDeps([12,6,1,7,13]))},{path:"/questions/:id(\\d+)",name:"questionDetail",component:()=>re(()=>import("./QuestionDetail-DCCc806H.js"),__vite__mapDeps([14,6,1,7,15]))},{path:"/papers",name:"papersList",component:()=>re(()=>import("./PapersList-CNYCkk5-.js"),__vite__mapDeps([16,1,17]))},{path:"/papers/create-by-id",name:"papersCreateById",component:()=>re(()=>import("./PapersCreateById-BLqOADjU.js"),[])},{path:"/papers/preview",name:"papersPreview",component:()=>re(()=>import("./PapersPreview-BUPg1vVL.js"),__vite__mapDeps([18,6,1,7]))},{path:"/papers/:id(\\d+)/detail",name:"papersDetail",component:()=>re(()=>import("./PapersDetail-GnhXnjwx.js"),[])},{path:"/papers/:id(\\d+)/result",name:"papersResult",component:()=>re(()=>import("./PapersResult-BFI6c2Q3.js"),[])},{path:"/analysis/chapters",name:"chapters",component:()=>re(()=>import("./AnalysisChapters-NYxjKhNB.js"),__vite__mapDeps([19,1,20]))},{path:"/analysis/knowledge",name:"knowledge",component:()=>re(()=>import("./AnalysisKnowledge-CTnCiLVh.js"),__vite__mapDeps([21,1,22]))},{path:"/analysis/pending",name:"pending",component:()=>re(()=>import("./AnalysisPending-Dz1dSt5S.js"),__vite__mapDeps([23,1,24]))},{path:"/settings",name:"settings",component:()=>re(()=>import("./Settings-B3C_XWB2.js"),__vite__mapDeps([25,1,26]))},{path:"/settings/subjects",name:"settingsSubjects",component:()=>re(()=>import("./SettingsSubjects-DZqkWHfQ.js"),__vite__mapDeps([27,1,28]))},{path:"/settings/error-causes",name:"settingsErrorCauses",component:()=>re(()=>import("./SettingsErrorCauses-DUT9gPGy.js"),__vite__mapDeps([29,1,30]))},{path:"/settings/question-statuses",name:"settingsStatuses",component:()=>re(()=>import("./SettingsStatuses-DNB6fRgS.js"),__vite__mapDeps([31,1,32]))},{path:"/settings/default-params",name:"settingsDefaults",component:()=>re(()=>import("./SettingsDefaultParams-BTRg20Z3.js"),[])}],rf=Zu({history:Iu("/StudyBase/"),routes:sf});Wc(nf).use(rf).mount("#app");export{Ce as A,mf as B,wf as C,pf as D,Re as E,Xe as F,Ts as G,Bs as H,vf as I,gf as J,bf as K,Rf as L,xn as M,Yi as a,_l as b,cf as c,ef as d,tf as e,At as f,Qo as g,yf as h,af as i,sc as j,bl as k,ff as l,df as m,Is as n,qi as o,uf as p,_f as q,lf as r,dn as s,Po as t,Lt as u,hf as v,of as w,xf as x,Af as y,Ef as z};
--- /dev/null
+const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/Home-eTfvE57g.js","assets/_plugin-vue_export-helper-DlAUqK2U.js","assets/Home-BS2dZmih.css","assets/SubjectPortal-ByHM58eO.js","assets/SubjectPortal-2SUb2TGh.css","assets/QuestionList-C1wuVY8i.js","assets/RichContent-qk-bdTKE.js","assets/RichContent-i88-frEH.css","assets/QuestionList-CibRILvi.css","assets/QuestionAdd-DU9MCMTd.js","assets/FileImport-u11iN75t.js","assets/FileImport-BnZT11gH.css","assets/ImportPreview-Bj2V7xs6.js","assets/ImportPreview-CVbloBt1.css","assets/QuestionDetail-Btb9jD8j.js","assets/QuestionDetail-C_Hr81KT.css","assets/PapersList-Bma-hST7.js","assets/PapersList-CJuySWdY.css","assets/PapersPreview-CEGCS-3b.js","assets/AnalysisChapters-CBhbIZzC.js","assets/AnalysisChapters-DTn9LWoa.css","assets/AnalysisKnowledge-CBVidUis.js","assets/AnalysisKnowledge-5QPt6Ak_.css","assets/AnalysisPending-DKwU1tZR.js","assets/AnalysisPending-C5SzviRH.css","assets/Settings-GxVonPDl.js","assets/Settings-pzGFQctT.css","assets/SettingsSubjects-DW6Wph4G.js","assets/SettingsSubjects-bGGsFjfA.css","assets/SettingsErrorCauses-2DZJjgLJ.js","assets/SettingsErrorCauses-BA8Zr_cv.css","assets/SettingsStatuses-DGgqms9k.js","assets/SettingsStatuses-XHEFsW5N.css"])))=>i.map(i=>d[i]);
+(function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const r of document.querySelectorAll('link[rel="modulepreload"]'))s(r);new MutationObserver(r=>{for(const i of r)if(i.type==="childList")for(const o of i.addedNodes)o.tagName==="LINK"&&o.rel==="modulepreload"&&s(o)}).observe(document,{childList:!0,subtree:!0});function n(r){const i={};return r.integrity&&(i.integrity=r.integrity),r.referrerPolicy&&(i.referrerPolicy=r.referrerPolicy),r.crossOrigin==="use-credentials"?i.credentials="include":r.crossOrigin==="anonymous"?i.credentials="omit":i.credentials="same-origin",i}function s(r){if(r.ep)return;r.ep=!0;const i=n(r);fetch(r.href,i)}})();const mo="modulepreload",_o=function(e){return"/StudyBase/"+e},Ys={},re=function(t,n,s){let r=Promise.resolve();if(n&&n.length>0){document.getElementsByTagName("link");const o=document.querySelector("meta[property=csp-nonce]"),l=(o==null?void 0:o.nonce)||(o==null?void 0:o.getAttribute("nonce"));r=Promise.allSettled(n.map(c=>{if(c=_o(c),c in Ys)return;Ys[c]=!0;const a=c.endsWith(".css"),f=a?'[rel="stylesheet"]':"";if(document.querySelector(`link[href="${c}"]${f}`))return;const h=document.createElement("link");if(h.rel=a?"stylesheet":mo,a||(h.as="script"),h.crossOrigin="",h.href=c,l&&h.setAttribute("nonce",l),document.head.appendChild(h),a)return new Promise((g,m)=>{h.addEventListener("load",g),h.addEventListener("error",()=>m(new Error(`Unable to preload CSS for ${c}`)))})}))}function i(o){const l=new Event("vite:preloadError",{cancelable:!0});if(l.payload=o,window.dispatchEvent(l),!l.defaultPrevented)throw o}return r.then(o=>{for(const l of o||[])l.status==="rejected"&&i(l.reason);return t().catch(i)})};/**
+* @vue/shared v3.5.42
+* (c) 2018-present Yuxi (Evan) You and Vue contributors
+* @license MIT
+**/function Cs(e){const t=Object.create(null);for(const n of e.split(","))t[n]=1;return n=>n in t}const X={},Mt=[],qe=()=>{},qr=()=>!1,Ln=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&(e.charCodeAt(2)>122||e.charCodeAt(2)<97),Vn=e=>e.startsWith("onUpdate:"),fe=Object.assign,Os=(e,t)=>{const n=e.indexOf(t);n>-1&&e.splice(n,1)},yo=Object.prototype.hasOwnProperty,q=(e,t)=>yo.call(e,t),L=Array.isArray,gt=e=>an(e)==="[object Map]",st=e=>an(e)==="[object Set]",Xs=e=>an(e)==="[object Date]",B=e=>typeof e=="function",ne=e=>typeof e=="string",$e=e=>typeof e=="symbol",$=e=>e!==null&&typeof e=="object",$r=e=>($(e)||B(e))&&B(e.then)&&B(e.catch),zr=Object.prototype.toString,an=e=>zr.call(e),vo=e=>an(e).slice(8,-1),Jr=e=>an(e)==="[object Object]",Ps=e=>ne(e)&&e!=="NaN"&&e[0]!=="-"&&""+parseInt(e,10)===e,Qt=Cs(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),jn=e=>{const t=Object.create(null);return n=>t[n]||(t[n]=e(n))},bo=/-\w/g,_e=jn(e=>e.replace(bo,t=>t.slice(1).toUpperCase())),Eo=/\B([A-Z])/g,_t=jn(e=>e.replace(Eo,"-$1").toLowerCase()),Fn=jn(e=>e.charAt(0).toUpperCase()+e.slice(1)),Qn=jn(e=>e?`on${Fn(e)}`:""),We=(e,t)=>!Object.is(e,t),An=(e,...t)=>{for(let n=0;n<e.length;n++)e[n](...t)},Qr=(e,t,n,s=!1)=>{Object.defineProperty(e,t,{configurable:!0,enumerable:!1,writable:s,value:n})},Hn=e=>{const t=parseFloat(e);return isNaN(t)?e:t};let Zs;const Bn=()=>Zs||(Zs=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{});function Ts(e){if(L(e)){const t={};for(let n=0;n<e.length;n++){const s=e[n],r=ne(s)?wo(s):Ts(s);if(r)for(const i in r)t[i]=r[i]}return t}else if(ne(e)||$(e))return e}const Ao=/;(?![^(]*\))/g,Ro=/:([^]+)/,xo=/\/\*[^]*?\*\//g;function wo(e){const t={};return e.replace(xo,"").split(Ao).forEach(n=>{if(n){const s=n.split(Ro);s.length>1&&(t[s[0].trim()]=s[1].trim())}}),t}function Is(e){let t="";if(ne(e))t=e;else if(L(e))for(let n=0;n<e.length;n++){const s=Is(e[n]);s&&(t+=s+" ")}else if($(e))for(const n in e)e[n]&&(t+=n+" ");return t.trim()}const So="itemscope,allowfullscreen,formnovalidate,ismap,nomodule,novalidate,readonly",Co=Cs(So);function Yr(e){return!!e||e===""}function Oo(e,t){if(e.length!==t.length)return!1;let n=!0;for(let s=0;n&&s<e.length;s++)n=Te(e[s],t[s]);return n}function er(e,t){if(e.size!==t.size)return!1;const n=Array.from(t),s=new Uint8Array(n.length);for(const r of e){let i=-1;for(let o=0;o<n.length;o++)if(!s[o]&&Te(r,n[o])){i=o;break}if(i<0)return!1;s[i]=1}return!0}function Te(e,t){if(e===t)return!0;let n=Xs(e),s=Xs(t);if(n||s)return n&&s?e.getTime()===t.getTime():!1;if(n=$e(e),s=$e(t),n||s)return e===t;if(n=L(e),s=L(t),n||s)return n&&s?Oo(e,t):!1;if(n=$(e),s=$(t),n||s){if(!n||!s)return!1;if(n=gt(e),s=gt(t),n||s||(n=st(e),s=st(t),n||s))return n&&s?er(e,t):!1;const r=Object.keys(e).length,i=Object.keys(t).length;if(r!==i)return!1;for(const o in e){const l=e.hasOwnProperty(o),c=t.hasOwnProperty(o);if(l&&!c||!l&&c||!Te(e[o],t[o]))return!1}}return String(e)===String(t)}function Ns(e,t){return e.findIndex(n=>Te(n,t))}const Xr=e=>!!(e&&e.__v_isRef===!0),Po=e=>ne(e)?e:e==null?"":L(e)||$(e)&&(e.toString===zr||!B(e.toString))?Xr(e)?Po(e.value):JSON.stringify(e,Zr,2):String(e),Zr=(e,t)=>Xr(t)?Zr(e,t.value):gt(t)?{[`Map(${t.size})`]:[...t.entries()].reduce((n,[s,r],i)=>(n[Yn(s,i)+" =>"]=r,n),{})}:st(t)?{[`Set(${t.size})`]:[...t.values()].map(n=>Yn(n))}:$e(t)?Yn(t):$(t)&&!L(t)&&!Jr(t)?String(t):t,Yn=(e,t="")=>{var n;return $e(e)?`Symbol(${(n=e.description)!=null?n:t})`:e};/**
+* @vue/reactivity v3.5.42
+* (c) 2018-present Yuxi (Evan) You and Vue contributors
+* @license MIT
+**/let ue;class To{constructor(t=!1){this.detached=t,this._active=!0,this._on=0,this.effects=[],this.cleanups=[],this._isPaused=!1,this._warnOnRun=!0,this.__v_skip=!0,!t&&ue&&(ue.active?(this.parent=ue,this.index=(ue.scopes||(ue.scopes=[])).push(this)-1):(this._active=!1,this._warnOnRun=!1))}get active(){return this._active}pause(){if(this._active){this._isPaused=!0;let t,n;if(this.scopes){const s=this.scopes.slice();for(t=0,n=s.length;t<n;t++)s[t].pause()}for(t=0,n=this.effects.length;t<n;t++)this.effects[t].pause()}}resume(){if(this._active&&this._isPaused){this._isPaused=!1;let t,n;if(this.scopes){const r=this.scopes.slice();for(t=0,n=r.length;t<n;t++)r[t].resume()}const s=this.effects.slice();for(t=0,n=s.length;t<n;t++)s[t].resume()}}run(t){if(this._active){const n=ue;try{return ue=this,t()}finally{ue=n}}}on(){++this._on===1&&(this.prevScope=ue,ue=this)}off(){if(this._on>0&&--this._on===0){if(ue===this)ue=this.prevScope;else{let t=ue;for(;t;){if(t.prevScope===this){t.prevScope=this.prevScope;break}t=t.prevScope}}this.prevScope=void 0}}stop(t){if(this._active){this._active=!1;let n,s;for(n=0,s=this.effects.length;n<s;n++)this.effects[n].stop();for(this.effects.length=0,n=0,s=this.cleanups.length;n<s;n++)this.cleanups[n]();if(this.cleanups.length=0,this.scopes){const r=this.scopes.slice();for(n=0,s=r.length;n<s;n++)r[n].stop(!0);this.scopes.length=0}if(!this.detached&&this.parent&&!t){const r=this.parent.scopes.pop();r&&r!==this&&(this.parent.scopes[this.index]=r,r.index=this.index)}this.parent=void 0}}}function Io(){return ue}let Z;const Xn=new WeakSet;class ei{constructor(t){this.fn=t,this.deps=void 0,this.depsTail=void 0,this.flags=5,this.next=void 0,this.cleanup=void 0,this.scheduler=void 0,ue&&(ue.active?ue.effects.push(this):this.flags&=-2)}pause(){this.flags|=64}resume(){this.flags&64&&(this.flags&=-65,Xn.has(this)&&(Xn.delete(this),this.trigger()))}notify(){this.flags&2&&!(this.flags&32)||this.flags&8||ni(this)}run(){if(!(this.flags&1))return this.fn();this.flags|=2,tr(this),si(this);const t=Z,n=Oe;Z=this,Oe=!0;try{return this.fn()}finally{ri(this),Z=t,Oe=n,this.flags&=-3}}stop(){if(this.flags&1){for(let t=this.deps;t;t=t.nextDep)Ls(t);this.deps=this.depsTail=void 0,tr(this),this.onStop&&this.onStop(),this.flags&=-2}}trigger(){this.flags&64?Xn.add(this):this.scheduler?this.scheduler():this.runIfDirty()}runIfDirty(){hs(this)&&this.run()}get dirty(){return hs(this)}}let ti=0,Yt,Xt;function ni(e,t=!1){if(e.flags|=8,t){e.next=Xt,Xt=e;return}e.next=Yt,Yt=e}function Ds(){ti++}function Ms(){if(--ti>0)return;if(Xt){let t=Xt;for(Xt=void 0;t;){const n=t.next;t.next=void 0,t.flags&=-9,t=n}}let e;for(;Yt;){let t=Yt;for(Yt=void 0;t;){const n=t.next;if(t.next=void 0,t.flags&=-9,t.flags&1)try{t.trigger()}catch(s){e||(e=s)}t=n}}if(e)throw e}function si(e){for(let t=e.deps;t;t=t.nextDep)t.version=-1,t.prevActiveLink=t.dep.activeLink,t.dep.activeLink=t}function ri(e){let t,n=e.depsTail,s=n;for(;s;){const r=s.prevDep;s.version===-1?(s===n&&(n=r),Ls(s),No(s)):t=s,s.dep.activeLink=s.prevActiveLink,s.prevActiveLink=void 0,s=r}e.deps=t,e.depsTail=n}function hs(e){for(let t=e.deps;t;t=t.nextDep)if(t.dep.version!==t.version||t.dep.computed&&(ii(t.dep.computed)||t.dep.version!==t.version))return!0;return!!e._dirty}function ii(e){if(e.flags&4&&!(e.flags&16)||(e.flags&=-17,e.globalVersion===sn)||(e.globalVersion=sn,!e.isSSR&&e.flags&128&&(!e.deps&&!e._dirty||!hs(e))))return;e.flags|=2;const t=e.dep,n=Z,s=Oe;Z=e,Oe=!0;try{si(e);const r=e.fn(e._value);(t.version===0||We(r,e._value))&&(e.flags|=128,e._value=r,t.version++)}catch(r){throw t.version++,r}finally{Z=n,Oe=s,ri(e),e.flags&=-3}}function Ls(e,t=!1){const{dep:n,prevSub:s,nextSub:r}=e;if(s&&(s.nextSub=r,e.prevSub=void 0),r&&(r.prevSub=s,e.nextSub=void 0),n.subs===e&&(n.subs=s,!s&&n.computed)){n.computed.flags&=-5;for(let i=n.computed.deps;i;i=i.nextDep)Ls(i,!0)}!t&&!--n.sc&&n.map&&n.map.delete(n.key)}function No(e){const{prevDep:t,nextDep:n}=e;t&&(t.nextDep=n,e.prevDep=void 0),n&&(n.prevDep=t,e.nextDep=void 0)}let Oe=!0;const oi=[];function rt(){oi.push(Oe),Oe=!1}function it(){const e=oi.pop();Oe=e===void 0?!0:e}function tr(e){const{cleanup:t}=e;if(e.cleanup=void 0,t){const n=Z;Z=void 0;try{t()}finally{Z=n}}}let sn=0;class Do{constructor(t,n){this.sub=t,this.dep=n,this.version=n.version,this.nextDep=this.prevDep=this.nextSub=this.prevSub=this.prevActiveLink=void 0}}class Vs{constructor(t){this.computed=t,this.version=0,this.activeLink=void 0,this.subs=void 0,this.map=void 0,this.key=void 0,this.sc=0,this.__v_skip=!0}track(t){if(!Z||!Oe||Z===this.computed)return;let n=this.activeLink;if(n===void 0||n.sub!==Z)n=this.activeLink=new Do(Z,this),Z.deps?(n.prevDep=Z.depsTail,Z.depsTail.nextDep=n,Z.depsTail=n):Z.deps=Z.depsTail=n,li(n);else if(n.version===-1&&(n.version=this.version,n.nextDep)){const s=n.nextDep;s.prevDep=n.prevDep,n.prevDep&&(n.prevDep.nextDep=s),n.prevDep=Z.depsTail,n.nextDep=void 0,Z.depsTail.nextDep=n,Z.depsTail=n,Z.deps===n&&(Z.deps=s)}return n}trigger(t){this.version++,sn++,this.notify(t)}notify(t){Ds();try{for(let n=this.subs;n;n=n.prevSub)n.sub.notify()&&n.sub.dep.notify()}finally{Ms()}}}function li(e){if(e.dep.sc++,e.sub.flags&4){const t=e.dep.computed;if(t&&!e.dep.subs){t.flags|=20;for(let s=t.deps;s;s=s.nextDep)li(s)}const n=e.dep.subs;n!==e&&(e.prevSub=n,n&&(n.nextSub=e)),e.dep.subs=e}}const ps=new WeakMap,wt=Symbol(""),gs=Symbol(""),rn=Symbol("");function ae(e,t,n){if(Oe&&Z){let s=ps.get(e);s||ps.set(e,s=new Map);let r=s.get(n);r||(s.set(n,r=new Vs),r.map=s,r.key=n),r.track()}}function et(e,t,n,s,r,i){const o=ps.get(e);if(!o){sn++;return}const l=c=>{c&&c.trigger()};if(Ds(),t==="clear")o.forEach(l);else{const c=L(e),a=c&&Ps(n);if(c&&n==="length"){const f=Number(s);o.forEach((h,g)=>{(g==="length"||g===rn||!$e(g)&&g>=f)&&l(h)})}else switch((n!==void 0||o.has(void 0))&&l(o.get(n)),a&&l(o.get(rn)),t){case"add":c?a&&l(o.get("length")):(l(o.get(wt)),gt(e)&&l(o.get(gs)));break;case"delete":c||(l(o.get(wt)),gt(e)&&l(o.get(gs)));break;case"set":gt(e)&&l(o.get(wt));break}}Ms()}function It(e){const t=W(e);return t===e?t:(ae(t,"iterate",rn),Se(e)?t:t.map(Ie))}function Un(e){return ae(e=W(e),"iterate",rn),e}function Ge(e,t){return ot(e)?Ft(St(e)?Ie(t):t):Ie(t)}const Mo={__proto__:null,[Symbol.iterator](){return Zn(this,Symbol.iterator,e=>Ge(this,e))},concat(...e){return It(this).concat(...e.map(t=>L(t)?It(t):t))},entries(){return Zn(this,"entries",e=>(e[1]=Ge(this,e[1]),e))},every(e,t){return Je(this,"every",e,t,void 0,arguments)},filter(e,t){return Je(this,"filter",e,t,n=>n.map(s=>Ge(this,s)),arguments)},find(e,t){return Je(this,"find",e,t,n=>Ge(this,n),arguments)},findIndex(e,t){return Je(this,"findIndex",e,t,void 0,arguments)},findLast(e,t){return Je(this,"findLast",e,t,n=>Ge(this,n),arguments)},findLastIndex(e,t){return Je(this,"findLastIndex",e,t,void 0,arguments)},forEach(e,t){return Je(this,"forEach",e,t,void 0,arguments)},includes(...e){return es(this,"includes",e)},indexOf(...e){return es(this,"indexOf",e)},join(e){return It(this).join(e)},lastIndexOf(...e){return es(this,"lastIndexOf",e)},map(e,t){return Je(this,"map",e,t,void 0,arguments)},pop(){return Wt(this,"pop")},push(...e){return Wt(this,"push",e)},reduce(e,...t){return nr(this,"reduce",e,t)},reduceRight(e,...t){return nr(this,"reduceRight",e,t)},shift(){return Wt(this,"shift")},some(e,t){return Je(this,"some",e,t,void 0,arguments)},splice(...e){return Wt(this,"splice",e)},toReversed(){return It(this).toReversed()},toSorted(e){return It(this).toSorted(e)},toSpliced(...e){return It(this).toSpliced(...e)},unshift(...e){return Wt(this,"unshift",e)},values(){return Zn(this,"values",e=>Ge(this,e))}};function Zn(e,t,n){const s=Un(e),r=s[t]();return s!==e&&!Se(e)&&(r._next=r.next,r.next=()=>{const i=r._next();return i.done||(i.value=n(i.value)),i}),r}const Lo=Array.prototype;function Je(e,t,n,s,r,i){const o=Un(e),l=o!==e&&!Se(e),c=o[t];if(c!==Lo[t]){const h=c.apply(e,i);return l?Ie(h):h}let a=n;o!==e&&(l?a=function(h,g){return n.call(this,Ge(e,h),g,e)}:n.length>2&&(a=function(h,g){return n.call(this,h,g,e)}));const f=c.call(o,a,s);return l&&r?r(f):f}function nr(e,t,n,s){const r=Un(e),i=r!==e&&!Se(e);let o=n,l=!1;r!==e&&(i?(l=s.length===0,o=function(a,f,h){return l&&(l=!1,a=Ge(e,a)),n.call(this,a,Ge(e,f),h,e)}):n.length>3&&(o=function(a,f,h){return n.call(this,a,f,h,e)}));const c=r[t](o,...s);return l?Ge(e,c):c}function es(e,t,n){const s=W(e);ae(s,"iterate",rn);const r=s[t](...n);return(r===-1||r===!1)&&Hs(n[0])?(n[0]=W(n[0]),s[t](...n)):r}function Wt(e,t,n=[]){rt(),Ds();const s=W(e)[t].apply(e,n);return Ms(),it(),s}const Vo=Cs("__proto__,__v_isRef,__isVue"),ci=new Set(Object.getOwnPropertyNames(Symbol).filter(e=>e!=="arguments"&&e!=="caller").map(e=>Symbol[e]).filter($e));function jo(e){$e(e)||(e=String(e));const t=W(this);return ae(t,"has",e),t.hasOwnProperty(e)}class ui{constructor(t=!1,n=!1){this._isReadonly=t,this._isShallow=n}get(t,n,s){if(n==="__v_skip")return t.__v_skip;const r=this._isReadonly,i=this._isShallow;if(n==="__v_isReactive")return!r;if(n==="__v_isReadonly")return r;if(n==="__v_isShallow")return i;if(n==="__v_raw")return s===(r?i?$o:hi:i?di:ai).get(t)||Object.getPrototypeOf(t)===Object.getPrototypeOf(s)?t:void 0;const o=L(t);if(!r){let c;if(o&&(c=Mo[n]))return c;if(n==="hasOwnProperty")return jo}const l=Reflect.get(t,n,he(t)?t:s);if(($e(n)?ci.has(n):Vo(n))||(r||ae(t,"get",n),i))return l;if(he(l)){const c=o&&Ps(n)?l:l.value;return r&&$(c)?_s(c):c}return $(l)?r?_s(l):dn(l):l}}class fi extends ui{constructor(t=!1){super(!1,t)}set(t,n,s,r){let i=t[n];const o=L(t)&&Ps(n);if(!this._isShallow){const a=ot(i);if(!Se(s)&&!ot(s)&&(i=W(i),s=W(s)),!o&&he(i)&&!he(s))return a||(i.value=s),!0}const l=o?Number(n)<t.length:q(t,n),c=Reflect.set(t,n,s,he(t)?t:r);return t===W(r)&&c&&(l?We(s,i)&&et(t,"set",n,s):et(t,"add",n,s)),c}deleteProperty(t,n){const s=q(t,n);t[n];const r=Reflect.deleteProperty(t,n);return r&&s&&et(t,"delete",n,void 0),r}has(t,n){const s=Reflect.has(t,n);return(!$e(n)||!ci.has(n))&&ae(t,"has",n),s}ownKeys(t){return ae(t,"iterate",L(t)?"length":wt),Reflect.ownKeys(t)}}class Fo extends ui{constructor(t=!1){super(!0,t)}set(t,n){return!0}deleteProperty(t,n){return!0}}const Ho=new fi,Bo=new Fo,Uo=new fi(!0);const ms=e=>e,_n=e=>Reflect.getPrototypeOf(e);function Ko(e,t,n){return function(...s){const r=this.__v_raw,i=W(r),o=gt(i),l=e==="entries"||e===Symbol.iterator&&o,c=e==="keys"&&o,a=r[e](...s),f=n?ms:t?Ft:Ie;return!t&&ae(i,"iterate",c?gs:wt),fe(Object.create(a),{next(){const{value:h,done:g}=a.next();return g?{value:h,done:g}:{value:l?[f(h[0]),f(h[1])]:f(h),done:g}}})}}function yn(e){return function(...t){return e==="delete"?!1:e==="clear"?void 0:this}}function Go(e,t){const n={get(r){const i=this.__v_raw,o=W(i),l=W(r);e||(We(r,l)&&ae(o,"get",r),ae(o,"get",l));const{has:c}=_n(o),a=t?ms:e?Ft:Ie;if(c.call(o,r))return a(i.get(r));if(c.call(o,l))return a(i.get(l));i!==o&&i.get(r)},get size(){const r=this.__v_raw;return!e&&ae(W(r),"iterate",wt),r.size},has(r){const i=this.__v_raw,o=W(i),l=W(r);return e||(We(r,l)&&ae(o,"has",r),ae(o,"has",l)),r===l?i.has(r):i.has(r)||i.has(l)},forEach(r,i){const o=this,l=o.__v_raw,c=W(l),a=t?ms:e?Ft:Ie;return!e&&ae(c,"iterate",wt),l.forEach((f,h)=>r.call(i,a(f),a(h),o))}};return fe(n,e?{add:yn("add"),set:yn("set"),delete:yn("delete"),clear:yn("clear")}:{add(r){const i=W(this),o=_n(i),l=W(r),c=!t&&!Se(r)&&!ot(r)?l:r;return o.has.call(i,c)||We(r,c)&&o.has.call(i,r)||We(l,c)&&o.has.call(i,l)||(i.add(c),et(i,"add",c,c)),this},set(r,i){!t&&!Se(i)&&!ot(i)&&(i=W(i));const o=W(this),{has:l,get:c}=_n(o);let a=l.call(o,r);a||(r=W(r),a=l.call(o,r));const f=c.call(o,r);return o.set(r,i),a?We(i,f)&&et(o,"set",r,i):et(o,"add",r,i),this},delete(r){const i=W(this),{has:o,get:l}=_n(i);let c=o.call(i,r);c||(r=W(r),c=o.call(i,r)),l&&l.call(i,r);const a=i.delete(r);return c&&et(i,"delete",r,void 0),a},clear(){const r=W(this),i=r.size!==0,o=r.clear();return i&&et(r,"clear",void 0,void 0),o}}),["keys","values","entries",Symbol.iterator].forEach(r=>{n[r]=Ko(r,e,t)}),n}function js(e,t){const n=Go(e,t);return(s,r,i)=>r==="__v_isReactive"?!e:r==="__v_isReadonly"?e:r==="__v_raw"?s:Reflect.get(q(n,r)&&r in s?n:s,r,i)}const ko={get:js(!1,!1)},Wo={get:js(!1,!0)},qo={get:js(!0,!1)};const ai=new WeakMap,di=new WeakMap,hi=new WeakMap,$o=new WeakMap;function zo(e){switch(e){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}function dn(e){return ot(e)?e:Fs(e,!1,Ho,ko,ai)}function pi(e){return Fs(e,!1,Uo,Wo,di)}function _s(e){return Fs(e,!0,Bo,qo,hi)}function Fs(e,t,n,s,r){if(!$(e)||e.__v_raw&&!(t&&e.__v_isReactive)||e.__v_skip||!Object.isExtensible(e))return e;const i=r.get(e);if(i)return i;const o=zo(vo(e));if(o===0)return e;const l=new Proxy(e,o===2?s:n);return r.set(e,l),l}function St(e){return ot(e)?St(e.__v_raw):!!(e&&e.__v_isReactive)}function ot(e){return!!(e&&e.__v_isReadonly)}function Se(e){return!!(e&&e.__v_isShallow)}function Hs(e){return e?!!e.__v_raw:!1}function W(e){const t=e&&e.__v_raw;return t?W(t):e}function Jo(e){return!q(e,"__v_skip")&&Object.isExtensible(e)&&Qr(e,"__v_skip",!0),e}const Ie=e=>$(e)?dn(e):e,Ft=e=>$(e)?_s(e):e;function he(e){return e?e.__v_isRef===!0:!1}function Qo(e){return gi(e,!1)}function Yo(e){return gi(e,!0)}function gi(e,t){return he(e)?e:new Xo(e,t)}class Xo{constructor(t,n){this.dep=new Vs,this.__v_isRef=!0,this.__v_isShallow=!1,this._rawValue=n?t:W(t),this._value=n?t:Ie(t),this.__v_isShallow=n}get value(){return this.dep.track(),this._value}set value(t){const n=this._rawValue,s=this.__v_isShallow||Se(t)||ot(t);t=s?t:W(t),We(t,n)&&(this._rawValue=t,this._value=s?t:Ie(t),this.dep.trigger())}}function Lt(e){return he(e)?e.value:e}const Zo={get:(e,t,n)=>t==="__v_raw"?e:Lt(Reflect.get(e,t,n)),set:(e,t,n,s)=>{const r=e[t];return he(r)&&!he(n)?(r.value=n,!0):Reflect.set(e,t,n,s)}};function mi(e){return St(e)?e:new Proxy(e,Zo)}class el{constructor(t,n,s){this.fn=t,this.setter=n,this._value=void 0,this.dep=new Vs(this),this.__v_isRef=!0,this.deps=void 0,this.depsTail=void 0,this.flags=16,this.globalVersion=sn-1,this.next=void 0,this.effect=this,this.__v_isReadonly=!n,this.isSSR=s}notify(){if(this.flags|=16,!(this.flags&8)&&Z!==this)return ni(this,!0),!0}get value(){const t=this.dep.track();return ii(this),t&&(t.version=this.dep.version),this._value}set value(t){this.setter&&this.setter(t)}}function tl(e,t,n=!1){let s,r;return B(e)?s=e:(s=e.get,r=e.set),new el(s,r,n)}const vn={},Sn=new WeakMap;let Rt;function nl(e,t=!1,n=Rt){if(n){let s=Sn.get(n);s||Sn.set(n,s=[]),s.push(e)}}function sl(e,t,n=X){const{immediate:s,deep:r,once:i,scheduler:o,augmentJob:l,call:c}=n,a=T=>r?T:Se(T)||r===!1||r===0?tt(T,1):tt(T);let f,h,g,m,I=!1,w=!1;if(he(e)?(h=()=>e.value,I=Se(e)):St(e)?(h=()=>a(e),I=!0):L(e)?(w=!0,I=e.some(T=>St(T)||Se(T)),h=()=>e.map(T=>{if(he(T))return T.value;if(St(T))return a(T);if(B(T))return c?c(T,2):T()})):B(e)?t?h=c?()=>c(e,2):e:h=()=>{if(g){rt();try{g()}finally{it()}}const T=Rt;Rt=f;try{return c?c(e,3,[m]):e(m)}finally{Rt=T}}:h=qe,t&&r){const T=h,Q=r===!0?1/0:r;h=()=>tt(T(),Q)}const H=Io(),j=()=>{f.stop(),H&&H.active&&Os(H.effects,f)};if(i&&t){const T=t;t=(...Q)=>{const ie=T(...Q);return j(),ie}}let O=w?new Array(e.length).fill(vn):vn;const N=T=>{if(!(!(f.flags&1)||!f.dirty&&!T))if(t){const Q=f.run();if(T||r||I||(w?Q.some((ie,ee)=>We(ie,O[ee])):We(Q,O))){g&&g();const ie=Rt;Rt=f;try{const ee=[Q,O===vn?void 0:w&&O[0]===vn?[]:O,m];O=Q,c?c(t,3,ee):t(...ee)}finally{Rt=ie}}}else f.run()};return l&&l(N),f=new ei(h),f.scheduler=o?()=>o(N,!1):N,m=T=>nl(T,!1,f),g=f.onStop=()=>{const T=Sn.get(f);if(T){if(c)c(T,4);else for(const Q of T)Q();Sn.delete(f)}},t?s?N(!0):O=f.run():o?o(N.bind(null,!0),!0):f.run(),j.pause=f.pause.bind(f),j.resume=f.resume.bind(f),j.stop=j,j}function tt(e,t=1/0,n){if(t<=0||!$(e)||e.__v_skip||(n=n||new Map,(n.get(e)||0)>=t))return e;if(n.set(e,t),t--,he(e))tt(e.value,t,n);else if(L(e))for(let s=0;s<e.length;s++)tt(e[s],t,n);else if(st(e)||gt(e))e.forEach(s=>{tt(s,t,n)});else if(Jr(e)){for(const s in e)tt(e[s],t,n);for(const s of Object.getOwnPropertySymbols(e))Object.prototype.propertyIsEnumerable.call(e,s)&&tt(e[s],t,n)}return e}/**
+* @vue/runtime-core v3.5.42
+* (c) 2018-present Yuxi (Evan) You and Vue contributors
+* @license MIT
+**/function hn(e,t,n,s){try{return s?e(...s):e()}catch(r){Kn(r,t,n)}}function Ne(e,t,n,s){if(B(e)){const r=hn(e,t,n,s);return r&&$r(r)&&r.catch(i=>{Kn(i,t,n)}),r}if(L(e)){const r=[];for(let i=0;i<e.length;i++)r.push(Ne(e[i],t,n,s));return r}}function Kn(e,t,n,s=!0){const r=t?t.vnode:null,{errorHandler:i,throwUnhandledErrorInProduction:o}=t&&t.appContext.config||X;if(t){let l=t.parent;const c=t.proxy,a=`https://vuejs.org/error-reference/#runtime-${n}`;for(;l;){const f=l.ec;if(f){for(let h=0;h<f.length;h++)if(f[h](e,c,a)===!1)return}l=l.parent}if(i){rt(),hn(i,null,10,[e,c,a]),it();return}}rl(e,n,r,s,o)}function rl(e,t,n,s=!0,r=!1){if(r)throw e;console.error(e)}const me=[];let Ke=-1;const Vt=[];let ht=null,Nt=0;const _i=Promise.resolve();let Cn=null;function Bs(e){const t=Cn||_i;return e?t.then(this?e.bind(this):e):t}function il(e){let t=Ke+1,n=me.length;for(;t<n;){const s=t+n>>>1,r=me[s],i=on(r);i<e||i===e&&r.flags&2?t=s+1:n=s}return t}function Us(e){if(!(e.flags&1)){const t=on(e),n=me[me.length-1];!n||!(e.flags&2)&&t>=on(n)?me.push(e):me.splice(il(t),0,e),e.flags|=1,yi()}}function yi(){Cn||(Cn=_i.then(bi))}function ol(e){if(!L(e))ht&&e.id===-1?ht.splice(Nt+1,0,e):e.flags&1||(Vt.push(e),e.flags|=1);else for(let t=0;t<e.length;t++)Vt.push(e[t]);yi()}function sr(e,t,n=Ke+1){for(;n<me.length;n++){const s=me[n];if(s&&s.flags&2){if(e&&s.id!==e.uid)continue;me.splice(n,1),n--,s.flags&4&&(s.flags&=-2),s(),s.flags&4||(s.flags&=-2)}}}function vi(e){if(Vt.length){const t=[...new Set(Vt)].sort((n,s)=>on(n)-on(s));if(Vt.length=0,ht){for(let n=0;n<t.length;n++)ht.push(t[n]);return}for(ht=t,Nt=0;Nt<ht.length;Nt++){const n=ht[Nt];n.flags&4&&(n.flags&=-2),n.flags&8||n(),n.flags&=-2}ht=null,Nt=0}}const on=e=>e.id==null?e.flags&2?-1:1/0:e.id;function bi(e){try{for(Ke=0;Ke<me.length;Ke++){const t=me[Ke];t&&!(t.flags&8)&&(t.flags&4&&(t.flags&=-2),hn(t,t.i,t.i?15:14),t.flags&4||(t.flags&=-2))}}finally{for(;Ke<me.length;Ke++){const t=me[Ke];t&&(t.flags&=-2)}Ke=-1,me.length=0,vi(),Cn=null,(me.length||Vt.length)&&bi()}}let Ee=null,Ei=null;function On(e){const t=Ee;return Ee=e,Ei=e&&e.type.__scopeId||null,t}function ll(e,t=Ee,n){if(!t||e._n)return e;const s=(...r)=>{s._d&&In(-1);const i=On(t),o=Ct.length;let l;try{l=e(...r)}finally{for(let c=Ct.length;c>o;c--)$i();On(i),s._d&&In(1)}return l};return s._n=!0,s._c=!0,s._d=!0,s}function of(e,t){if(Ee===null)return e;const n=$n(Ee),s=e.dirs||(e.dirs=[]);for(let r=0;r<t.length;r++){let[i,o,l,c=X]=t[r];i&&(B(i)&&(i={mounted:i,updated:i}),i.deep&&tt(o),s.push({dir:i,instance:n,value:o,oldValue:void 0,arg:l,modifiers:c}))}return e}function bt(e,t,n,s){const r=e.dirs,i=t&&t.dirs;for(let o=0;o<r.length;o++){const l=r[o];i&&(l.oldValue=i[o].value);let c=l.dir[s];c&&(rt(),Ne(c,n,8,[e.el,l,e,t]),it())}}function Rn(e,t){if(de){let n=de.provides;const s=de.parent&&de.parent.provides;s===n&&(n=de.provides=Object.create(s)),n[e]=t}}function Pe(e,t,n=!1){const s=cc();if(s||jt){let r=jt?jt._context.provides:s?s.parent==null||s.ce?s.vnode.appContext&&s.vnode.appContext.provides:s.parent.provides:void 0;if(r&&e in r)return r[e];if(arguments.length>1)return n&&B(t)?t.call(s&&s.proxy):t}}const cl=Symbol.for("v-scx"),ul=()=>Pe(cl);function xn(e,t,n){return Ai(e,t,n)}function Ai(e,t,n=X){const{immediate:s,deep:r,flush:i,once:o}=n,l=fe({},n),c=t&&s||!t&&i!=="post";let a;if(un){if(i==="sync"){const m=ul();a=m.__watcherHandles||(m.__watcherHandles=[])}else if(!c){const m=()=>{};return m.stop=qe,m.resume=qe,m.pause=qe,m}}const f=de;l.call=(m,I,w)=>Ne(m,f,I,w);let h=!1;i==="post"?l.scheduler=m=>{ve(m,f&&f.suspense)}:i!=="sync"&&(h=!0,l.scheduler=(m,I)=>{I?m():Us(m)}),l.augmentJob=m=>{t&&(m.flags|=4),h&&(m.flags|=2,f&&(m.id=f.uid,m.i=f))};const g=sl(e,t,l);return un&&(a?a.push(g):c&&g()),g}function fl(e,t,n){const s=this.proxy,r=ne(e)?e.includes(".")?Ri(s,e):()=>s[e]:e.bind(s,s);let i;B(t)?i=t:(i=t.handler,n=t);const o=pn(this),l=Ai(r,i.bind(s),n);return o(),l}function Ri(e,t){const n=t.split(".");return()=>{let s=e;for(let r=0;r<n.length&&s;r++)s=s[n[r]];return s}}const al=Symbol("_vte"),Gn=e=>e.__isTeleport,ts=Symbol("_leaveCb");function dl(e){let t=e[0];if(e.length>1){for(const n of e)if(n.type!==lt){t=n;break}}return t}function xi(e){if(!Gs(e))return Gn(e.type)&&e.children?dl(e.children):e;if(e.component)return e.component.subTree;const{shapeFlag:t,children:n}=e;if(n){if(t&16)return n[0];if(t&32&&B(n.default))return n.default()}}function Ks(e,t){if(e.shapeFlag&6&&e.component){e.transition=t;const n=e.component.subTree;Ks(Gn(n.type)&&xi(n)||n,t)}else e.shapeFlag&128?(e.ssContent.transition=t.clone(e.ssContent),e.ssFallback.transition=t.clone(e.ssFallback)):e.transition=t}function wi(e,t){return B(e)?fe({name:e.name},t,{setup:e}):e}function Si(e){e.ids=[e.ids[0]+e.ids[2]+++"-",0,0]}function rr(e,t){let n;return!!((n=Object.getOwnPropertyDescriptor(e,t))&&!n.configurable)}const Pn=new WeakMap;function Zt(e,t,n,s,r=!1){if(L(e)){e.forEach((w,H)=>Zt(w,t&&(L(t)?t[H]:t),n,s,r));return}if(en(s)&&!r){s.shapeFlag&512&&s.type.__asyncResolved&&s.component.subTree.component&&Zt(e,t,n,s.component.subTree);return}const i=s.shapeFlag&4?$n(s.component):s.el,o=r?null:i,{i:l,r:c}=e,a=t&&t.r,f=l.refs===X?l.refs={}:l.refs,h=l.setupState,g=W(h),m=h===X?qr:w=>rr(f,w)?!1:q(g,w),I=(w,H)=>!(H&&rr(f,H));if(a!=null&&a!==c){if(ir(t),ne(a))f[a]=null,m(a)&&(h[a]=null);else if(he(a)){const w=t;I(a,w.k)&&(a.value=null),w.k&&(f[w.k]=null)}}if(B(c))hn(c,l,12,[o,f]);else{const w=ne(c),H=he(c);if(w||H){const j=()=>{if(e.f){const O=w?m(c)?h[c]:f[c]:I()||!e.k?c.value:f[e.k];if(r)L(O)&&Os(O,i);else if(L(O))O.includes(i)||O.push(i);else if(w)f[c]=[i],m(c)&&(h[c]=f[c]);else{const N=[i];I(c,e.k)&&(c.value=N),e.k&&(f[e.k]=N)}}else w?(f[c]=o,m(c)&&(h[c]=o)):H&&(I(c,e.k)&&(c.value=o),e.k&&(f[e.k]=o))};if(o){const O=()=>{j(),Pn.delete(e)};O.id=-1,Pn.set(e,O),ve(O,n)}else ir(e),j()}}}function ir(e){const t=Pn.get(e);t&&(t.flags|=8,Pn.delete(e))}Bn().requestIdleCallback;Bn().cancelIdleCallback;const en=e=>!!e.type.__asyncLoader,Gs=e=>e.type.__isKeepAlive;function hl(e,t){Ci(e,"a",t)}function pl(e,t){Ci(e,"da",t)}function Ci(e,t,n=de){const s=e.__wdc||(e.__wdc=()=>{let r=n;for(;r;){if(r.isDeactivated)return;r=r.parent}return e()});if(kn(t,s,n),n){let r=n.parent;for(;r&&r.parent;)Gs(r.parent.vnode)&&gl(s,t,n,r),r=r.parent}}function gl(e,t,n,s){const r=kn(t,e,s,!0);Oi(()=>{Os(s[t],r)},n)}function kn(e,t,n=de,s=!1){if(n){const r=n[e]||(n[e]=[]),i=t.__weh||(t.__weh=(...o)=>{rt();const l=pn(n),c=Ne(t,n,e,o);return l(),it(),c});return s?r.unshift(i):r.push(i),i}}const ct=e=>(t,n=de)=>{(!un||e==="sp")&&kn(e,(...s)=>t(...s),n)},ml=ct("bm"),_l=ct("m"),yl=ct("bu"),vl=ct("u"),bl=ct("bum"),Oi=ct("um"),El=ct("sp"),Al=ct("rtg"),Rl=ct("rtc");function xl(e,t=de){kn("ec",e,t)}const wl="components";function Sl(e,t){return Ol(wl,e,!0,t)||e}const Cl=Symbol.for("v-ndc");function Ol(e,t,n=!0,s=!1){const r=Ee||de;if(r){const i=r.type;{const l=hc(i,!1);if(l&&(l===t||l===_e(t)||l===Fn(_e(t))))return i}const o=or(r[e]||i[e],t)||or(r.appContext[e],t);return!o&&s?i:o}}function or(e,t){return e&&(e[t]||e[_e(t)]||e[Fn(_e(t))])}function lf(e,t,n,s){let r;const i=n,o=L(e);if(o||ne(e)){const l=o&&St(e);let c=!1,a=!1;l&&(c=!Se(e),a=ot(e),e=Un(e)),r=new Array(e.length);for(let f=0,h=e.length;f<h;f++)r[f]=t(c?a?Ft(Ie(e[f])):Ie(e[f]):e[f],f,void 0,i)}else if(typeof e=="number"){r=new Array(e);for(let l=0;l<e;l++)r[l]=t(l+1,l,void 0,i)}else if($(e))if(e[Symbol.iterator])r=Array.from(e,(l,c)=>t(l,c,void 0,i));else{const l=Object.keys(e);r=new Array(l.length);for(let c=0,a=l.length;c<a;c++){const f=l[c];r[c]=t(e[f],f,c,i)}}else r=[];return r}const ys=e=>e?Xi(e)?$n(e):ys(e.parent):null,tn=fe(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=>ys(e.parent),$root:e=>ys(e.root),$host:e=>e.ce,$emit:e=>e.emit,$options:e=>Ti(e),$forceUpdate:e=>e.f||(e.f=()=>{Us(e.update)}),$nextTick:e=>e.n||(e.n=Bs.bind(e.proxy)),$watch:e=>fl.bind(e)}),ns=(e,t)=>e!==X&&!e.__isScriptSetup&&q(e,t),Pl={get({_:e},t){if(t==="__v_skip")return!0;const{ctx:n,setupState:s,data:r,props:i,accessCache:o,type:l,appContext:c}=e;if(t[0]!=="$"){const g=o[t];if(g!==void 0)switch(g){case 1:return s[t];case 2:return r[t];case 4:return n[t];case 3:return i[t]}else{if(ns(s,t))return o[t]=1,s[t];if(r!==X&&q(r,t))return o[t]=2,r[t];if(q(i,t))return o[t]=3,i[t];if(n!==X&&q(n,t))return o[t]=4,n[t];vs&&(o[t]=0)}}const a=tn[t];let f,h;if(a)return t==="$attrs"&&ae(e.attrs,"get",""),a(e);if((f=l.__cssModules)&&(f=f[t]))return f;if(n!==X&&q(n,t))return o[t]=4,n[t];if(h=c.config.globalProperties,q(h,t))return h[t]},set({_:e},t,n){const{data:s,setupState:r,ctx:i}=e;return ns(r,t)?(r[t]=n,!0):s!==X&&q(s,t)?(s[t]=n,!0):q(e.props,t)||t[0]==="$"&&t.slice(1)in e?!1:(i[t]=n,!0)},has({_:{data:e,setupState:t,accessCache:n,ctx:s,appContext:r,props:i,type:o}},l){let c;return!!(n[l]||e!==X&&l[0]!=="$"&&q(e,l)||ns(t,l)||q(i,l)||q(s,l)||q(tn,l)||q(r.config.globalProperties,l)||(c=o.__cssModules)&&c[l])},defineProperty(e,t,n){return n.get!=null?e._.accessCache[t]=0:q(n,"value")&&this.set(e,t,n.value,null),Reflect.defineProperty(e,t,n)}};function lr(e){return L(e)?e.reduce((t,n)=>(t[n]=null,t),{}):e}let vs=!0;function Tl(e){const t=Ti(e),n=e.proxy,s=e.ctx;vs=!1,t.beforeCreate&&cr(t.beforeCreate,e,"bc");const{data:r,computed:i,methods:o,watch:l,provide:c,inject:a,created:f,beforeMount:h,mounted:g,beforeUpdate:m,updated:I,activated:w,deactivated:H,beforeDestroy:j,beforeUnmount:O,destroyed:N,unmounted:T,render:Q,renderTracked:ie,renderTriggered:ee,errorCaptured:Me,serverPrefetch:ut,expose:Le,inheritAttrs:ft,components:yt,directives:Ve,filters:Gt}=t;if(a&&Il(a,s,null),o)for(const z in o){const G=o[z];B(G)&&(s[z]=G.bind(n))}if(r){const z=r.call(n,n);$(z)&&(e.data=dn(z))}if(vs=!0,i)for(const z in i){const G=i[z],ze=B(G)?G.bind(n,n):B(G.get)?G.get.bind(n,n):qe,at=!B(G)&&B(G.set)?G.set.bind(n):qe,je=Ce({get:ze,set:at});Object.defineProperty(s,z,{enumerable:!0,configurable:!0,get:()=>je.value,set:ye=>je.value=ye})}if(l)for(const z in l)Pi(l[z],s,n,z);if(c){const z=B(c)?c.call(n):c;Reflect.ownKeys(z).forEach(G=>{Rn(G,z[G])})}f&&cr(f,e,"c");function le(z,G){L(G)?G.forEach(ze=>z(ze.bind(n))):G&&z(G.bind(n))}if(le(ml,h),le(_l,g),le(yl,m),le(vl,I),le(hl,w),le(pl,H),le(xl,Me),le(Rl,ie),le(Al,ee),le(bl,O),le(Oi,T),le(El,ut),L(Le))if(Le.length){const z=e.exposed||(e.exposed={});Le.forEach(G=>{Object.defineProperty(z,G,{get:()=>n[G],set:ze=>n[G]=ze,enumerable:!0})})}else e.exposed||(e.exposed={});Q&&e.render===qe&&(e.render=Q),ft!=null&&(e.inheritAttrs=ft),yt&&(e.components=yt),Ve&&(e.directives=Ve),ut&&Si(e)}function Il(e,t,n=qe){L(e)&&(e=bs(e));for(const s in e){const r=e[s];let i;$(r)?"default"in r?i=Pe(r.from||s,r.default,!0):i=Pe(r.from||s):i=Pe(r),he(i)?Object.defineProperty(t,s,{enumerable:!0,configurable:!0,get:()=>i.value,set:o=>i.value=o}):t[s]=i}}function cr(e,t,n){Ne(L(e)?e.map(s=>s.bind(t.proxy)):e.bind(t.proxy),t,n)}function Pi(e,t,n,s){let r=s.includes(".")?Ri(n,s):()=>n[s];if(ne(e)){const i=t[e];B(i)&&xn(r,i)}else if(B(e))xn(r,e.bind(n));else if($(e))if(L(e))e.forEach(i=>Pi(i,t,n,s));else{const i=B(e.handler)?e.handler.bind(n):t[e.handler];B(i)&&xn(r,i,e)}}function Ti(e){const t=e.type,{mixins:n,extends:s}=t,{mixins:r,optionsCache:i,config:{optionMergeStrategies:o}}=e.appContext,l=i.get(t);let c;return l?c=l:!r.length&&!n&&!s?c=t:(c={},r.length&&r.forEach(a=>Tn(c,a,o,!0)),Tn(c,t,o)),$(t)&&i.set(t,c),c}function Tn(e,t,n,s=!1){const{mixins:r,extends:i}=t;i&&Tn(e,i,n,!0),r&&r.forEach(o=>Tn(e,o,n,!0));for(const o in t)if(!(s&&o==="expose")){const l=Nl[o]||n&&n[o];e[o]=l?l(e[o],t[o]):t[o]}return e}const Nl={data:ur,props:fr,emits:fr,methods:zt,computed:zt,beforeCreate:pe,created:pe,beforeMount:pe,mounted:pe,beforeUpdate:pe,updated:pe,beforeDestroy:pe,beforeUnmount:pe,destroyed:pe,unmounted:pe,activated:pe,deactivated:pe,errorCaptured:pe,serverPrefetch:pe,components:zt,directives:zt,watch:Ml,provide:ur,inject:Dl};function ur(e,t){return t?e?function(){return fe(B(e)?e.call(this,this):e,B(t)?t.call(this,this):t)}:t:e}function Dl(e,t){return zt(bs(e),bs(t))}function bs(e){if(L(e)){const t={};for(let n=0;n<e.length;n++)t[e[n]]=e[n];return t}return e}function pe(e,t){return e?[...new Set([].concat(e,t))]:t}function zt(e,t){return e?fe(Object.create(null),e,t):t}function fr(e,t){return e?L(e)&&L(t)?[...new Set([...e,...t])]:fe(Object.create(null),lr(e),lr(t??{})):t}function Ml(e,t){if(!e)return t;if(!t)return e;const n=fe(Object.create(null),e);for(const s in t)n[s]=pe(e[s],t[s]);return n}function Ii(){return{app:null,config:{isNativeTag:qr,performance:!1,globalProperties:{},optionMergeStrategies:{},errorHandler:void 0,warnHandler:void 0,compilerOptions:{}},mixins:[],components:{},directives:{},provides:Object.create(null),optionsCache:new WeakMap,propsCache:new WeakMap,emitsCache:new WeakMap}}let Ll=0;function Vl(e,t){return function(s,r=null){B(s)||(s=fe({},s)),r!=null&&!$(r)&&(r=null);const i=Ii(),o=new WeakSet,l=[];let c=!1;const a=i.app={_uid:Ll++,_component:s,_props:r,_container:null,_context:i,_instance:null,version:gc,get config(){return i.config},set config(f){},use(f,...h){return o.has(f)||(f&&B(f.install)?(o.add(f),f.install(a,...h)):B(f)&&(o.add(f),f(a,...h))),a},mixin(f){return i.mixins.includes(f)||i.mixins.push(f),a},component(f,h){return h?(i.components[f]=h,a):i.components[f]},directive(f,h){return h?(i.directives[f]=h,a):i.directives[f]},mount(f,h,g){if(!c){const m=a._ceVNode||Re(s,r);return m.appContext=i,g===!0?g="svg":g===!1&&(g=void 0),e(m,f,g),c=!0,a._container=f,f.__vue_app__=a,$n(m.component)}},onUnmount(f){l.push(f)},unmount(){c&&(Ne(l,a._instance,16),e(null,a._container),delete a._container.__vue_app__)},provide(f,h){return i.provides[f]=h,a},runWithContext(f){const h=jt;jt=a;try{return f()}finally{jt=h}}};return a}}let jt=null;const jl=(e,t)=>t==="modelValue"||t==="model-value"?e.modelModifiers:e[`${t}Modifiers`]||e[`${_e(t)}Modifiers`]||e[`${_t(t)}Modifiers`];function Fl(e,t,...n){if(e.isUnmounted)return;const s=e.vnode.props||X;let r=n;const i=t.startsWith("update:"),o=i&&jl(s,t.slice(7));o&&(o.trim&&(r=n.map(f=>ne(f)?f.trim():f)),o.number&&(r=r.map(Hn)));let l,c=s[l=Qn(t)]||s[l=Qn(_e(t))];!c&&i&&(c=s[l=Qn(_t(t))]),c&&Ne(c,e,6,r);const a=s[l+"Once"];if(a){if(!e.emitted)e.emitted={};else if(e.emitted[l])return;e.emitted[l]=!0,Ne(a,e,6,r)}}const Hl=new WeakMap;function Ni(e,t,n=!1){const s=n?Hl:t.emitsCache,r=s.get(e);if(r!==void 0)return r;const i=e.emits;let o={},l=!1;if(!B(e)){const c=a=>{const f=Ni(a,t,!0);f&&(l=!0,fe(o,f))};!n&&t.mixins.length&&t.mixins.forEach(c),e.extends&&c(e.extends),e.mixins&&e.mixins.forEach(c)}return!i&&!l?($(e)&&s.set(e,null),null):(L(i)?i.forEach(c=>o[c]=null):fe(o,i),$(e)&&s.set(e,o),o)}function Wn(e,t){return!e||!Ln(t)?!1:(t=t.slice(2),t=t==="Once"?t:t.replace(/Once$/,""),q(e,t[0].toLowerCase()+t.slice(1))||q(e,_t(t))||q(e,t))}function ar(e){const{type:t,vnode:n,proxy:s,withProxy:r,propsOptions:[i],slots:o,attrs:l,emit:c,render:a,renderCache:f,props:h,data:g,setupState:m,ctx:I,inheritAttrs:w}=e,H=On(e);let j,O;try{if(n.shapeFlag&4){const T=r||s,Q=T;j=ke(a.call(Q,T,f,h,m,g,I)),O=l}else{const T=t;j=ke(T.length>1?T(h,{attrs:l,slots:o,emit:c}):T(h,null)),O=t.props?l:Bl(l)}}catch(T){Ct.length=0,Kn(T,e,1),j=Re(lt)}let N=j;if(O&&w!==!1){const T=Object.keys(O),{shapeFlag:Q}=N;T.length&&Q&7&&(i&&T.some(Vn)&&(O=Ul(O,i)),N=Ht(N,O,!1,!0))}if(n.dirs&&(N=Ht(N,null,!1,!0),N.dirs=N.dirs?N.dirs.concat(n.dirs):n.dirs),n.transition){const T=Gn(N.type)&&xi(N)||N;Ks(T,n.transition)}return j=N,On(H),j}const Bl=e=>{let t;for(const n in e)(n==="class"||n==="style"||Ln(n))&&((t||(t={}))[n]=e[n]);return t},Ul=(e,t)=>{const n={};for(const s in e)(!Vn(s)||!(s.slice(9)in t))&&(n[s]=e[s]);return n};function Kl(e,t,n){const{props:s,children:r,component:i}=e,{props:o,children:l,patchFlag:c}=t,a=i.emitsOptions;if(t.dirs||t.transition)return!0;if(n&&c>=0){if(c&1024)return!0;if(c&16)return s?dr(s,o,a):!!o;if(c&8){const f=t.dynamicProps;for(let h=0;h<f.length;h++){const g=f[h];if(Di(o,s,g)&&!Wn(a,g))return!0}}}else return(r||l)&&(!l||!l.$stable)?!0:s===o?!1:s?o?dr(s,o,a):!0:!!o;return!1}function dr(e,t,n){const s=Object.keys(t);if(s.length!==Object.keys(e).length)return!0;for(let r=0;r<s.length;r++){const i=s[r];if(Di(t,e,i)&&!Wn(n,i))return!0}return!1}function Di(e,t,n){const s=e[n],r=t[n];return n==="style"&&$(s)&&$(r)?!Te(s,r):s!==r}function Gl({vnode:e,parent:t,suspense:n},s){for(;t;){const r=t.subTree;if(r.suspense&&r.suspense.activeBranch===e&&(r.suspense.vnode.el=r.el=s,e=r),r===e)(e=t.vnode).el=s,t=t.parent;else break}n&&n.activeBranch===e&&(n.vnode.el=s)}const Mi={},Li=()=>Object.create(Mi),Vi=e=>Object.getPrototypeOf(e)===Mi;function kl(e,t,n,s=!1){const r={},i=Li();e.propsDefaults=Object.create(null),ji(e,t,r,i);for(const o in e.propsOptions[0])o in r||(r[o]=void 0);n?e.props=s?r:pi(r):e.type.props?e.props=r:e.props=i,e.attrs=i}function Wl(e,t,n,s){const{props:r,attrs:i,vnode:{patchFlag:o}}=e,l=W(r),[c]=e.propsOptions;let a=!1;if((s||o>0)&&!(o&16)){if(o&8){const f=e.vnode.dynamicProps;for(let h=0;h<f.length;h++){let g=f[h];if(Wn(e.emitsOptions,g))continue;const m=t[g];if(c)if(q(i,g))m!==i[g]&&(i[g]=m,a=!0);else{const I=_e(g);r[I]=Es(c,l,I,m,e,!1)}else m!==i[g]&&(i[g]=m,a=!0)}}}else{ji(e,t,r,i)&&(a=!0);let f;for(const h in l)(!t||!q(t,h)&&((f=_t(h))===h||!q(t,f)))&&(c?n&&(n[h]!==void 0||n[f]!==void 0)&&(r[h]=Es(c,l,h,void 0,e,!0)):delete r[h]);if(i!==l)for(const h in i)(!t||!q(t,h))&&(delete i[h],a=!0)}a&&et(e.attrs,"set","")}function ji(e,t,n,s){const[r,i]=e.propsOptions;let o=!1,l;if(t)for(let c in t){if(Qt(c))continue;const a=t[c];let f;r&&q(r,f=_e(c))?!i||!i.includes(f)?n[f]=a:(l||(l={}))[f]=a:Wn(e.emitsOptions,c)||(!(c in s)||a!==s[c])&&(s[c]=a,o=!0)}if(i){const c=W(n),a=l||X;for(let f=0;f<i.length;f++){const h=i[f];n[h]=Es(r,c,h,a[h],e,!q(a,h))}}return o}function Es(e,t,n,s,r,i){const o=e[n];if(o!=null){const l=q(o,"default");if(l&&s===void 0){const c=o.default;if(o.type!==Function&&!o.skipFactory&&B(c)){const{propsDefaults:a}=r;if(n in a)s=a[n];else{const f=pn(r);s=a[n]=c.call(null,t),f()}}else s=c;r.ce&&r.ce._setProp(n,s)}o[0]&&(i&&!l?s=!1:o[1]&&(s===""||s===_t(n))&&(s=!0))}return s}const ql=new WeakMap;function Fi(e,t,n=!1){const s=n?ql:t.propsCache,r=s.get(e);if(r)return r;const i=e.props,o={},l=[];let c=!1;if(!B(e)){const f=h=>{c=!0;const[g,m]=Fi(h,t,!0);fe(o,g),m&&l.push(...m)};!n&&t.mixins.length&&t.mixins.forEach(f),e.extends&&f(e.extends),e.mixins&&e.mixins.forEach(f)}if(!i&&!c)return $(e)&&s.set(e,Mt),Mt;if(L(i))for(let f=0;f<i.length;f++){const h=_e(i[f]);hr(h)&&(o[h]=X)}else if(i)for(const f in i){const h=_e(f);if(hr(h)){const g=i[f],m=o[h]=L(g)||B(g)?{type:g}:fe({},g),I=m.type;let w=!1,H=!0;if(L(I))for(let j=0;j<I.length;++j){const O=I[j],N=B(O)&&O.name;if(N==="Boolean"){w=!0;break}else N==="String"&&(H=!1)}else w=B(I)&&I.name==="Boolean";m[0]=w,m[1]=H,(w||q(m,"default"))&&l.push(h)}}const a=[o,l];return $(e)&&s.set(e,a),a}function hr(e){return e[0]!=="$"&&!Qt(e)}const ks=e=>e==="_"||e==="_ctx"||e==="$stable",Ws=e=>L(e)?e.map(ke):[ke(e)],$l=(e,t,n)=>{if(t._n)return t;const s=ll((...r)=>Ws(t(...r)),n);return s._c=!1,s},Hi=(e,t,n)=>{const s=e._ctx;for(const r in e){if(ks(r))continue;const i=e[r];if(B(i))t[r]=$l(r,i,s);else if(i!=null){const o=Ws(i);t[r]=()=>o}}},Bi=(e,t)=>{const n=Ws(t);e.slots.default=()=>n},Ui=(e,t,n)=>{for(const s in t)(n||!ks(s))&&(e[s]=t[s])},zl=(e,t,n)=>{const s=e.slots=Li();if(e.vnode.shapeFlag&32){const r=t._;r?(Ui(s,t,n),n&&Qr(s,"_",r,!0)):Hi(t,s)}else t&&Bi(e,t)},Jl=(e,t,n)=>{const{vnode:s,slots:r}=e;let i=!0,o=X;if(s.shapeFlag&32){const l=t._;l?n&&l===1?i=!1:Ui(r,t,n):(i=!t.$stable,Hi(t,r)),o=t}else t&&(Bi(e,t),o={default:1});if(i)for(const l in r)!ks(l)&&o[l]==null&&delete r[l]},ve=ec;function Ql(e){return Yl(e)}function Yl(e,t){const n=Bn();n.__VUE__=!0;const{insert:s,remove:r,patchProp:i,createElement:o,createText:l,createComment:c,setText:a,setElementText:f,parentNode:h,nextSibling:g,setScopeId:m=qe,insertStaticContent:I}=e,w=(u,d,p,y=null,b=null,_=null,x=void 0,R=null,A=!!d.dynamicChildren)=>{if(u===d)return;u&&!qt(u,d)&&(y=v(u),ye(u,b,_,!0),u=null),d.patchFlag===-2&&(A=!1,d.dynamicChildren=null);const{type:E,ref:V,shapeFlag:C}=d;switch(E){case qn:H(u,d,p,y);break;case lt:j(u,d,p,y);break;case rs:u==null&&O(d,p,y,x);break;case Xe:yt(u,d,p,y,b,_,x,R,A);break;default:C&1?Q(u,d,p,y,b,_,x,R,A):C&6?Ve(u,d,p,y,b,_,x,R,A):(C&64||C&128)&&E.process(u,d,p,y,b,_,x,R,A,D)}V!=null&&b?Zt(V,u&&u.ref,_,d||u,!d):V==null&&u&&u.ref!=null&&Zt(u.ref,null,_,u,!0)},H=(u,d,p,y)=>{if(u==null)s(d.el=l(d.children),p,y);else{const b=d.el=u.el;d.children!==u.children&&a(b,d.children)}},j=(u,d,p,y)=>{u==null?s(d.el=c(d.children||""),p,y):d.el=u.el},O=(u,d,p,y)=>{[u.el,u.anchor]=I(u.children,d,p,y,u.el,u.anchor)},N=({el:u,anchor:d},p,y)=>{let b;for(;u&&u!==d;)b=g(u),s(u,p,y),u=b;s(d,p,y)},T=({el:u,anchor:d})=>{let p;for(;u&&u!==d;)p=g(u),r(u),u=p;r(d)},Q=(u,d,p,y,b,_,x,R,A)=>{if(d.type==="svg"?x="svg":d.type==="math"&&(x="mathml"),u==null)ie(d,p,y,b,_,x,R,A);else{const E=u.el&&u.el._isVueCE?u.el:null;try{E&&E._beginPatch(),ut(u,d,b,_,x,R,A)}finally{E&&E._endPatch()}}},ie=(u,d,p,y,b,_,x,R)=>{let A,E;const{props:V,shapeFlag:C,transition:M,dirs:F}=u;if(A=u.el=o(u.type,_,V&&V.is,V),C&8?f(A,u.children):C&16&&Me(u.children,A,null,y,b,ss(u,_),x,R),F&&bt(u,null,y,"created"),ee(A,u,u.scopeId,x,y),V){for(const Y in V)Y!=="value"&&!Qt(Y)&&i(A,Y,null,V[Y],_,y);"value"in V&&i(A,"value",null,V.value,_),(E=V.onVnodeBeforeMount)&&Ue(E,y,u)}F&&bt(u,null,y,"beforeMount");const K=Xl(b,M);K&&M.beforeEnter(A),s(A,d,p),((E=V&&V.onVnodeMounted)||K||F)&&ve(()=>{try{E&&Ue(E,y,u),K&&M.enter(A),F&&bt(u,null,y,"mounted")}finally{}},b)},ee=(u,d,p,y,b)=>{if(p&&m(u,p),y)for(let _=0;_<y.length;_++)m(u,y[_]);if(b){let _=b.subTree;if(d===_||Wi(_.type)&&(_.ssContent===d||_.ssFallback===d)){const x=b.vnode;ee(u,x,x.scopeId,x.slotScopeIds,b.parent)}}},Me=(u,d,p,y,b,_,x,R,A=0)=>{for(let E=A;E<u.length;E++){const V=u[E]=R?Ze(u[E]):ke(u[E]);w(null,V,d,p,y,b,_,x,R)}},ut=(u,d,p,y,b,_,x)=>{const R=d.el=u.el;let{patchFlag:A,dynamicChildren:E,dirs:V}=d;A|=u.patchFlag&16;const C=u.props||X,M=d.props||X;let F;if(p&&Et(p,!1),(F=M.onVnodeBeforeUpdate)&&Ue(F,p,d,u),V&&bt(d,u,p,"beforeUpdate"),p&&Et(p,!0),E&&(!u.dynamicChildren||u.dynamicChildren.length!==E.length)&&(A=0,x=!1,E=null),(C.innerHTML&&M.innerHTML==null||C.textContent&&M.textContent==null)&&f(R,""),E?Le(u.dynamicChildren,E,R,p,y,ss(d,b),_):x||G(u,d,R,null,p,y,ss(d,b),_,!1),A>0){if(A&16)ft(R,C,M,p,b);else if(A&2&&C.class!==M.class&&i(R,"class",null,M.class,b),A&4&&i(R,"style",C.style,M.style,b),A&8){const K=d.dynamicProps;for(let Y=0;Y<K.length;Y++){const J=K[Y],se=C[J],ce=M[J];(ce!==se||J==="value")&&i(R,J,se,ce,b,p)}}A&1&&u.children!==d.children&&f(R,d.children)}else!x&&E==null&&ft(R,C,M,p,b);((F=M.onVnodeUpdated)||V)&&ve(()=>{F&&Ue(F,p,d,u),V&&bt(d,u,p,"updated")},y)},Le=(u,d,p,y,b,_,x)=>{for(let R=0;R<d.length;R++){const A=u[R],E=d[R],V=A.el&&(A.type===Xe||!qt(A,E)||A.shapeFlag&198)?h(A.el):p;w(A,E,V,null,y,b,_,x,!0)}},ft=(u,d,p,y,b)=>{if(d!==p){if(d!==X)for(const _ in d)!Qt(_)&&!(_ in p)&&i(u,_,d[_],null,b,y);for(const _ in p){if(Qt(_))continue;const x=p[_],R=d[_];x!==R&&_!=="value"&&i(u,_,R,x,b,y)}"value"in p&&i(u,"value",d.value,p.value,b)}},yt=(u,d,p,y,b,_,x,R,A)=>{const E=d.el=u?u.el:l(""),V=d.anchor=u?u.anchor:l("");let{patchFlag:C,dynamicChildren:M,slotScopeIds:F}=d;F&&(R=R?R.concat(F):F),u==null?(s(E,p,y),s(V,p,y),Me(d.children||[],p,V,b,_,x,R,A)):C>0&&C&64&&M&&u.dynamicChildren&&u.dynamicChildren.length===M.length?(Le(u.dynamicChildren,M,p,b,_,x,R),(d.key!=null||b&&d===b.subTree)&&Ki(u,d,!0)):G(u,d,p,V,b,_,x,R,A)},Ve=(u,d,p,y,b,_,x,R,A)=>{d.slotScopeIds=R,u==null?d.shapeFlag&512?b.ctx.activate(d,p,y,x,A):Gt(d,p,y,b,_,x,A):Ot(u,d,A)},Gt=(u,d,p,y,b,_,x)=>{const R=u.component=lc(u,y,b);if(Gs(u)&&(R.ctx.renderer=D),uc(R,!1,x),R.asyncDep){if(b&&b.registerDep(R,le,x),!u.el){const A=R.subTree=Re(lt);j(null,A,d,p),u.placeholder=A.el}}else le(R,u,d,p,b,_,x)},Ot=(u,d,p)=>{const y=d.component=u.component;if(Kl(u,d,p))if(y.asyncDep&&!y.asyncResolved){z(y,d,p);return}else y.next=d,y.update();else d.el=u.el,y.vnode=d},le=(u,d,p,y,b,_,x)=>{const R=()=>{if(u.isMounted){let{next:C,bu:M,u:F,parent:K,vnode:Y}=u;{const He=Gi(u);if(He){C&&(C.el=Y.el,z(u,C,x)),He.asyncDep.then(()=>{ve(()=>{u.isUnmounted||E()},b)});return}}let J=C,se;Et(u,!1),C?(C.el=Y.el,z(u,C,x)):C=Y,M&&An(M),(se=C.props&&C.props.onVnodeBeforeUpdate)&&Ue(se,K,C,Y),Et(u,!0);const ce=ar(u),Fe=u.subTree;u.subTree=ce,w(Fe,ce,h(Fe.el),v(Fe),u,b,_),C.el=ce.el,J===null&&Gl(u,ce.el),F&&ve(F,b),(se=C.props&&C.props.onVnodeUpdated)&&ve(()=>Ue(se,K,C,Y),b)}else{let C;const{el:M,props:F}=d,{bm:K,m:Y,parent:J,root:se,type:ce}=u,Fe=en(d);Et(u,!1),K&&An(K),!Fe&&(C=F&&F.onVnodeBeforeMount)&&Ue(C,J,d),Et(u,!0);{se.ce&&se.ce._hasShadowRoot()&&se.ce._injectChildStyle(ce,u.parent?u.parent.type:void 0);const He=u.subTree=ar(u);w(null,He,p,y,u,b,_),d.el=He.el}if(Y&&ve(Y,b),!Fe&&(C=F&&F.onVnodeMounted)){const He=d;ve(()=>Ue(C,J,He),b)}(d.shapeFlag&256||J&&en(J.vnode)&&J.vnode.shapeFlag&256)&&u.a&&ve(u.a,b),u.isMounted=!0,d=p=y=null}};u.scope.on();const A=u.effect=new ei(R);u.scope.off();const E=u.update=A.run.bind(A),V=u.job=A.runIfDirty.bind(A);V.i=u,V.id=u.uid,A.scheduler=()=>Us(V),Et(u,!0),E()},z=(u,d,p)=>{d.component=u;const y=u.vnode.props;u.vnode=d,u.next=null,Wl(u,d.props,y,p),Jl(u,d.children,p),rt(),sr(u),it()},G=(u,d,p,y,b,_,x,R,A=!1)=>{const E=u&&u.children,V=u?u.shapeFlag:0,C=d.children,{patchFlag:M,shapeFlag:F}=d;if(M>0){if(M&128){at(E,C,p,y,b,_,x,R,A);return}else if(M&256){ze(E,C,p,y,b,_,x,R,A);return}}F&8?(V&16&&we(E,b,_),C!==E&&f(p,C)):V&16?F&16?at(E,C,p,y,b,_,x,R,A):we(E,b,_,!0):(V&8&&f(p,""),F&16&&Me(C,p,y,b,_,x,R,A))},ze=(u,d,p,y,b,_,x,R,A)=>{u=u||Mt,d=d||Mt;const E=u.length,V=d.length,C=Math.min(E,V);let M;for(M=0;M<C;M++){const F=d[M]=A?Ze(d[M]):ke(d[M]);w(u[M],F,p,null,b,_,x,R,A)}E>V?we(u,b,_,!0,!1,C):Me(d,p,y,b,_,x,R,A,C)},at=(u,d,p,y,b,_,x,R,A)=>{let E=0;const V=d.length;let C=u.length-1,M=V-1;for(;E<=C&&E<=M;){const F=u[E],K=d[E]=A?Ze(d[E]):ke(d[E]);if(qt(F,K))w(F,K,p,null,b,_,x,R,A);else break;E++}for(;E<=C&&E<=M;){const F=u[C],K=d[M]=A?Ze(d[M]):ke(d[M]);if(qt(F,K))w(F,K,p,null,b,_,x,R,A);else break;C--,M--}if(E>C){if(E<=M){const F=M+1,K=F<V?d[F].el:y;for(;E<=M;)w(null,d[E]=A?Ze(d[E]):ke(d[E]),p,K,b,_,x,R,A),E++}}else if(E>M)for(;E<=C;)ye(u[E],b,_,!0),E++;else{const F=E,K=E,Y=new Map;for(E=K;E<=M;E++){const be=d[E]=A?Ze(d[E]):ke(d[E]);be.key!=null&&Y.set(be.key,E)}let J,se=0;const ce=M-K+1;let Fe=!1,He=0;const kt=new Array(ce);for(E=0;E<ce;E++)kt[E]=0;for(E=F;E<=C;E++){const be=u[E];if(se>=ce){ye(be,b,_,!0);continue}let Be;if(be.key!=null)Be=Y.get(be.key);else for(J=K;J<=M;J++)if(kt[J-K]===0&&qt(be,d[J])){Be=J;break}Be===void 0?ye(be,b,_,!0):(kt[Be-K]=E+1,Be>=He?He=Be:Fe=!0,w(be,d[Be],p,null,b,_,x,R,A),se++)}const zs=Fe?Zl(kt):Mt;for(J=zs.length-1,E=ce-1;E>=0;E--){const be=K+E,Be=d[be],Js=d[be+1],Qs=be+1<V?Js.el||ki(Js):y;kt[E]===0?w(null,Be,p,Qs,b,_,x,R,A):Fe&&(J<0||E!==zs[J]?je(Be,p,Qs,2):J--)}}},je=(u,d,p,y,b=null)=>{const{el:_,type:x,transition:R,children:A,shapeFlag:E}=u;if(E&6){je(u.component.subTree,d,p,y);return}if(E&128){u.suspense.move(d,p,y);return}if(E&64){x.move(u,d,p,D);return}if(x===Xe){s(_,d,p);for(let C=0;C<A.length;C++)je(A[C],d,p,y);s(u.anchor,d,p);return}if(x===rs){N(u,d,p);return}if(y!==2&&E&1&&R)if(y===0)R.persisted&&!_[ts]?s(_,d,p):(R.beforeEnter(_),s(_,d,p),ve(()=>R.enter(_),b));else{const{leave:C,delayLeave:M,afterLeave:F}=R,K=()=>{u.ctx.isUnmounted?r(_):s(_,d,p)},Y=()=>{const J=_._isLeaving||!!_[ts];_._isLeaving&&_[ts](!0),R.persisted&&!J?K():C(_,()=>{K(),F&&F()})};M?M(_,K,Y):Y()}else s(_,d,p)},ye=(u,d,p,y=!1,b=!1)=>{const{type:_,props:x,ref:R,children:A,dynamicChildren:E,shapeFlag:V,patchFlag:C,dirs:M,cacheIndex:F,memo:K}=u;if(C===-2&&(b=!1),R!=null&&(rt(),Zt(R,null,p,u,!0),it()),F!=null&&(d.renderCache[F]=void 0),V&256){d.ctx.deactivate(u);return}const Y=V&1&&M,J=!en(u);let se;if(J&&(se=x&&x.onVnodeBeforeUnmount)&&Ue(se,d,u),V&6)vt(u.component,p,y);else{if(V&128){u.suspense.unmount(p,y);return}Y&&bt(u,null,d,"beforeUnmount"),V&64?u.type.remove(u,d,p,D,y):E&&!E.hasOnce&&(_!==Xe||C>0&&C&64)?we(E,d,p,!1,!0):(_===Xe&&C&384||!b&&V&16)&&we(A,d,p),y&&Pt(u)}const ce=K!=null&&F==null;(J&&(se=x&&x.onVnodeUnmounted)||Y||ce)&&ve(()=>{se&&Ue(se,d,u),Y&&bt(u,null,d,"unmounted"),ce&&(u.el=null)},p)},Pt=u=>{const{type:d,el:p,anchor:y,transition:b}=u;if(d===Xe){Tt(p,y);return}if(d===rs){T(u);return}const _=()=>{r(p),b&&!b.persisted&&b.afterLeave&&b.afterLeave()};if(u.shapeFlag&1&&b&&!b.persisted){const{leave:x,delayLeave:R}=b,A=()=>x(p,_);R?R(u.el,_,A):A()}else _()},Tt=(u,d)=>{let p;for(;u!==d;)p=g(u),r(u),u=p;r(d)},vt=(u,d,p)=>{const{bum:y,scope:b,job:_,subTree:x,um:R,m:A,a:E}=u;pr(A),pr(E),y&&An(y),b.stop(),_&&(_.flags|=8,ye(x,u,d,p)),R&&ve(R,d),ve(()=>{u.isUnmounted=!0},d)},we=(u,d,p,y=!1,b=!1,_=0)=>{for(let x=_;x<u.length;x++)ye(u[x],d,p,y,b)},v=u=>{if(u.shapeFlag&6)return v(u.component.subTree);if(u.shapeFlag&128)return u.suspense.next();const d=g(u.anchor||u.el),p=d&&d[al];return p?g(p):d};let P=!1;const S=(u,d,p)=>{let y;u==null?d._vnode&&(ye(d._vnode,null,null,!0),y=d._vnode.component):w(d._vnode||null,u,d,null,null,null,p),d._vnode=u,P||(P=!0,sr(y),vi(),P=!1)},D={p:w,um:ye,m:je,r:Pt,mt:Gt,mc:Me,pc:G,pbc:Le,n:v,o:e};return{render:S,hydrate:void 0,createApp:Vl(S)}}function ss({type:e,props:t},n){return n==="svg"&&e==="foreignObject"||n==="mathml"&&e==="annotation-xml"&&t&&t.encoding&&t.encoding.includes("html")?void 0:n}function Et({effect:e,job:t},n){n?(e.flags|=32,t.flags|=4):(e.flags&=-33,t.flags&=-5)}function Xl(e,t){return(!e||e&&!e.pendingBranch)&&t&&!t.persisted}function Ki(e,t,n=!1){const s=e.children,r=t.children;if(L(s)&&L(r))for(let i=0;i<s.length;i++){const o=s[i];let l=r[i];l.shapeFlag&1&&!l.dynamicChildren&&((l.patchFlag<=0||l.patchFlag===32)&&(l=r[i]=Ze(r[i]),l.el=o.el),!n&&l.patchFlag!==-2&&Ki(o,l)),l.type===qn&&(l.patchFlag===-1&&(l=r[i]=Ze(l)),l.el=o.el),l.type===lt&&!l.el&&(l.el=o.el)}}function Zl(e){const t=e.slice(),n=[0];let s,r,i,o,l;const c=e.length;for(s=0;s<c;s++){const a=e[s];if(a!==0){if(r=n[n.length-1],e[r]<a){t[s]=r,n.push(s);continue}for(i=0,o=n.length-1;i<o;)l=i+o>>1,e[n[l]]<a?i=l+1:o=l;a<e[n[i]]&&(i>0&&(t[s]=n[i-1]),n[i]=s)}}for(i=n.length,o=n[i-1];i-- >0;)n[i]=o,o=t[o];return n}function Gi(e){const t=e.subTree.component;if(t)return t.asyncDep&&!t.asyncResolved?t:Gi(t)}function pr(e){if(e)for(let t=0;t<e.length;t++)e[t].flags|=8}function ki(e){if(e.placeholder)return e.placeholder;const t=e.component;return t?ki(t.subTree):null}const Wi=e=>e.__isSuspense;function ec(e,t){t&&t.pendingBranch?L(e)?t.effects.push(...e):t.effects.push(e):ol(e)}const Xe=Symbol.for("v-fgt"),qn=Symbol.for("v-txt"),lt=Symbol.for("v-cmt"),rs=Symbol.for("v-stc"),Ct=[];let Ae=null;function qi(e=!1){Ct.push(Ae=e?null:[])}function $i(){Ct.pop(),Ae=Ct[Ct.length-1]||null}let ln=1;function In(e,t=!1){ln+=e,e<0&&Ae&&t&&(Ae.hasOnce=!0)}function zi(e){return e.dynamicChildren=ln>0?Ae||Mt:null,$i(),ln>0&&Ae&&Ae.push(e),e}function cf(e,t,n,s,r,i){return zi(Yi(e,t,n,s,r,i,!0))}function Ji(e,t,n,s,r){return zi(Re(e,t,n,s,r,!0))}function Nn(e){return e?e.__v_isVNode===!0:!1}function qt(e,t){return e.type===t.type&&e.key===t.key}const Qi=({key:e})=>e??null,wn=({ref:e,ref_key:t,ref_for:n})=>(typeof e=="number"&&(e=""+e),e!=null?ne(e)||he(e)||B(e)?{i:Ee,r:e,k:t,f:!!n}:e:null);function Yi(e,t=null,n=null,s=0,r=null,i=e===Xe?0:1,o=!1,l=!1){const c={__v_isVNode:!0,__v_skip:!0,type:e,props:t,key:t&&Qi(t),ref:t&&wn(t),scopeId:Ei,slotScopeIds:null,children:n,component:null,suspense:null,ssContent:null,ssFallback:null,dirs:null,transition:null,el:null,anchor:null,target:null,targetStart:null,targetAnchor:null,staticCount:0,shapeFlag:i,patchFlag:s,dynamicProps:r,dynamicChildren:null,appContext:null,ctx:Ee};return l?(Dn(c,n),i&128&&e.normalize(c)):n&&(c.shapeFlag|=ne(n)?8:16),ln>0&&!o&&Ae&&(c.patchFlag>0||i&6)&&c.patchFlag!==32&&Ae.push(c),c}const Re=tc;function tc(e,t=null,n=null,s=0,r=null,i=!1){if((!e||e===Cl)&&(e=lt),Nn(e)){const l=Ht(e,t,!0);return n&&Dn(l,n),ln>0&&!i&&Ae&&(l.shapeFlag&6?Ae[Ae.indexOf(e)]=l:Ae.push(l)),l.patchFlag=-2,l}if(pc(e)&&(e=e.__vccOpts),t){t=nc(t);let{class:l,style:c}=t;l&&!ne(l)&&(t.class=Is(l)),$(c)&&(Hs(c)&&!L(c)&&(c=fe({},c)),t.style=Ts(c))}const o=ne(e)?1:Wi(e)?128:Gn(e)?64:$(e)?4:B(e)?2:0;return Yi(e,t,n,s,r,o,i,!0)}function nc(e){return e?Hs(e)||Vi(e)?fe({},e):e:null}function Ht(e,t,n=!1,s=!1){const{props:r,ref:i,patchFlag:o,children:l,transition:c}=e,a=t?rc(r||{},t):r,f={__v_isVNode:!0,__v_skip:!0,type:e.type,props:a,key:a&&Qi(a),ref:t&&t.ref?n&&i?L(i)?i.concat(wn(t)):[i,wn(t)]:wn(t):i,scopeId:e.scopeId,slotScopeIds:e.slotScopeIds,children:l,target:e.target,targetStart:e.targetStart,targetAnchor:e.targetAnchor,staticCount:e.staticCount,shapeFlag:e.shapeFlag,patchFlag:t&&e.type!==Xe?o===-1?16:o|16:o,dynamicProps:e.dynamicProps,dynamicChildren:e.dynamicChildren,appContext:e.appContext,dirs:e.dirs,transition:c,component:e.component,suspense:e.suspense,ssContent:e.ssContent&&Ht(e.ssContent),ssFallback:e.ssFallback&&Ht(e.ssFallback),placeholder:e.placeholder,el:e.el,anchor:e.anchor,ctx:e.ctx,ce:e.ce};return c&&s&&Ks(f,c.clone(f)),f}function sc(e=" ",t=0){return Re(qn,null,e,t)}function uf(e="",t=!1){return t?(qi(),Ji(lt,null,e)):Re(lt,null,e)}function ke(e){return e==null||typeof e=="boolean"?Re(lt):L(e)?Re(Xe,null,e.slice()):Nn(e)?Ze(e):Re(qn,null,String(e))}function Ze(e){return e.el===null&&e.patchFlag!==-1||e.memo?e:Ht(e)}function Dn(e,t){let n=0;const{shapeFlag:s}=e;if(t==null)t=null;else if(L(t))n=16;else if(typeof t=="object")if(s&65){const r=t.default;r&&(r._c&&(r._d=!1),Dn(e,r()),r._c&&(r._d=!0));return}else{n=32;const r=t._;!r&&!Vi(t)?t._ctx=Ee:r===3&&Ee&&(Ee.slots._===1?t._=1:(t._=2,e.patchFlag|=1024))}else if(B(t)){if(s&65){Dn(e,{default:t});return}t={default:t,_ctx:Ee},n=32}else t=String(t),s&64?(n=16,t=[sc(t)]):n=8;e.children=t,e.shapeFlag|=n}function rc(...e){const t={};for(let n=0;n<e.length;n++){const s=e[n];for(const r in s)if(r==="class")t.class!==s.class&&(t.class=Is([t.class,s.class]));else if(r==="style")t.style=Ts([t.style,s.style]);else if(Ln(r)){const i=t[r],o=s[r];o&&i!==o&&!(L(i)&&i.includes(o))?t[r]=i?[].concat(i,o):o:o==null&&i==null&&!Vn(r)&&(t[r]=o)}else r!==""&&(t[r]=s[r])}return t}function Ue(e,t,n,s=null){Ne(e,t,7,[n,s])}const ic=Ii();let oc=0;function lc(e,t,n){const s=e.type,r=(t?t.appContext:e.appContext)||ic,i={uid:oc++,vnode:e,type:s,parent:t,appContext:r,root:null,next:null,subTree:null,effect:null,update:null,job:null,scope:new To(!0),render:null,proxy:null,exposed:null,exposeProxy:null,withProxy:null,provides:t?t.provides:Object.create(r.provides),ids:t?t.ids:["",0,0],accessCache:null,renderCache:[],components:null,directives:null,propsOptions:Fi(s,r),emitsOptions:Ni(s,r),emit:null,emitted:null,propsDefaults:X,inheritAttrs:s.inheritAttrs,ctx:X,data:X,props:X,attrs:X,slots:X,refs:X,setupState:X,setupContext: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,da:null,a:null,rtg:null,rtc:null,ec:null,sp:null};return i.ctx={_:i},i.root=t?t.root:i,i.emit=Fl.bind(null,i),e.ce&&e.ce(i),i}let de=null;const cc=()=>de||Ee;let Mn,cn;{const e=Bn(),t=(n,s)=>{let r;return(r=e[n])||(r=e[n]=[]),r.push(s),i=>{r.length>1?r.forEach(o=>o(i)):r[0](i)}};Mn=t("__VUE_INSTANCE_SETTERS__",n=>de=n),cn=t("__VUE_SSR_SETTERS__",n=>un=n)}const pn=e=>{const t=de;return Mn(e),e.scope.on(),()=>{e.scope.off(),Mn(t)}},gr=()=>{de&&de.scope.off(),Mn(null)};function Xi(e){return e.vnode.shapeFlag&4}let un=!1;function uc(e,t=!1,n=!1){t&&cn(t);const{props:s,children:r}=e.vnode,i=Xi(e);kl(e,s,i,t),zl(e,r,n||t);const o=i?fc(e,t):void 0;return t&&cn(!1),o}function fc(e,t){const n=e.type;e.accessCache=Object.create(null),e.proxy=new Proxy(e.ctx,Pl);const{setup:s}=n;if(s){rt();const r=e.setupContext=s.length>1?dc(e):null,i=pn(e),o=hn(s,e,0,[e.props,r]),l=$r(o);if(it(),i(),(l||e.sp)&&!en(e)&&Si(e),l){if(o.then(gr,gr),t)return o.then(c=>{cn(!0);try{mr(e,c,t)}finally{cn(!1)}}).catch(c=>{Kn(c,e,0)});e.asyncDep=o}else mr(e,o)}else Zi(e)}function mr(e,t,n){B(t)?e.type.__ssrInlineRender?e.ssrRender=t:e.render=t:$(t)&&(e.setupState=mi(t)),Zi(e)}function Zi(e,t,n){const s=e.type;e.render||(e.render=s.render||qe);{const r=pn(e);rt();try{Tl(e)}finally{it(),r()}}}const ac={get(e,t){return ae(e,"get",""),e[t]}};function dc(e){const t=n=>{e.exposed=n||{}};return{attrs:new Proxy(e.attrs,ac),slots:e.slots,emit:e.emit,expose:t}}function $n(e){return e.exposed?e.exposeProxy||(e.exposeProxy=new Proxy(mi(Jo(e.exposed)),{get(t,n){if(n in t)return t[n];if(n in tn)return tn[n](e)},has(t,n){return n in t||n in tn}})):e.proxy}function hc(e,t=!0){return B(e)?e.displayName||e.name:e.name||t&&e.__name}function pc(e){return B(e)&&"__vccOpts"in e}const Ce=(e,t)=>tl(e,t,un);function eo(e,t,n){try{In(-1);const s=arguments.length;return s===2?$(t)&&!L(t)?Nn(t)?Re(e,null,[t]):Re(e,t):Re(e,null,t):(s>3?n=Array.prototype.slice.call(arguments,2):s===3&&Nn(n)&&(n=[n]),Re(e,t,n))}finally{In(1)}}const gc="3.5.42";/**
+* @vue/runtime-dom v3.5.42
+* (c) 2018-present Yuxi (Evan) You and Vue contributors
+* @license MIT
+**/let As;const _r=typeof window<"u"&&window.trustedTypes;if(_r)try{As=_r.createPolicy("vue",{createHTML:e=>e})}catch{}const to=As?e=>As.createHTML(e):e=>e,mc="http://www.w3.org/2000/svg",_c="http://www.w3.org/1998/Math/MathML",Ye=typeof document<"u"?document:null,yr=Ye&&Ye.createElement("template"),yc={insert:(e,t,n)=>{t.insertBefore(e,n||null)},remove:e=>{const t=e.parentNode;t&&t.removeChild(e)},createElement:(e,t,n,s)=>{const r=t==="svg"?Ye.createElementNS(mc,e):t==="mathml"?Ye.createElementNS(_c,e):n?Ye.createElement(e,{is:n}):Ye.createElement(e);return e==="select"&&s&&s.multiple!=null&&r.setAttribute("multiple",s.multiple),r},createText:e=>Ye.createTextNode(e),createComment:e=>Ye.createComment(e),setText:(e,t)=>{e.nodeValue=t},setElementText:(e,t)=>{e.textContent=t},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>Ye.querySelector(e),setScopeId(e,t){e.setAttribute(t,"")},insertStaticContent(e,t,n,s,r,i){const o=n?n.previousSibling:t.lastChild;if(r&&(r===i||r.nextSibling))for(;t.insertBefore(r.cloneNode(!0),n),!(r===i||!(r=r.nextSibling)););else{yr.innerHTML=to(s==="svg"?`<svg>${e}</svg>`:s==="mathml"?`<math>${e}</math>`:e);const l=yr.content;if(s==="svg"||s==="mathml"){const c=l.firstChild;for(;c.firstChild;)l.appendChild(c.firstChild);l.removeChild(c)}t.insertBefore(l,n)}return[o?o.nextSibling:t.firstChild,n?n.previousSibling:t.lastChild]}},vc=Symbol("_vtc");function bc(e,t,n){const s=e[vc];s&&(t=(t?[t,...s]:[...s]).join(" ")),t==null?e.removeAttribute("class"):n?e.setAttribute("class",t):e.className=t}const vr=Symbol("_vod"),Ec=Symbol("_vsh"),Ac=Symbol(""),Rc=/(?:^|;)\s*display\s*:/;function xc(e,t,n){const s=e.style,r=ne(n);let i=!1;if(n&&!r){if(t)if(ne(t))for(const o of t.split(";")){const l=o.slice(0,o.indexOf(":")).trim();n[l]==null&&Jt(s,l,"")}else for(const o in t)n[o]==null&&Jt(s,o,"");for(const o in n){o==="display"&&(i=!0);const l=n[o];l!=null?Sc(e,o,!ne(t)&&t?t[o]:void 0,l)||Jt(s,o,l):Jt(s,o,"")}}else if(r){if(t!==n){const o=s[Ac];o&&(n+=";"+o),s.cssText=n,i=Rc.test(n)}}else t&&e.removeAttribute("style");vr in e&&(e[vr]=i?s.display:"",e[Ec]&&(s.display="none"))}const bn=/\s*!important$/;function Jt(e,t,n){if(L(n))n.forEach(s=>Jt(e,t,s));else if(n==null&&(n=""),t.startsWith("--"))bn.test(n)?e.setProperty(t,n.replace(bn,""),"important"):e.setProperty(t,n);else{const s=wc(e,t);bn.test(n)?e.setProperty(_t(s),n.replace(bn,""),"important"):e[s]=n}}const br=["Webkit","Moz","ms"],is={};function wc(e,t){const n=is[t];if(n)return n;let s=_e(t);if(s!=="filter"&&s in e)return is[t]=s;s=Fn(s);for(let r=0;r<br.length;r++){const i=br[r]+s;if(i in e)return is[t]=i}return t}function Sc(e,t,n,s){return e.tagName==="TEXTAREA"&&(t==="width"||t==="height")&&ne(s)&&n===s}const Er="http://www.w3.org/1999/xlink";function Ar(e,t,n,s,r,i=Co(t)){s&&t.startsWith("xlink:")?n==null?e.removeAttributeNS(Er,t.slice(6,t.length)):e.setAttributeNS(Er,t,n):n==null||i&&!Yr(n)?e.removeAttribute(t):e.setAttribute(t,i?"":$e(n)?String(n):n)}function Rr(e,t,n,s,r){if(t==="innerHTML"||t==="textContent"){n!=null&&(e[t]=t==="innerHTML"?to(n):n);return}const i=e.tagName;if(t==="value"&&i!=="PROGRESS"&&!i.includes("-")){const l=i==="OPTION"?e.getAttribute("value")||"":e.value,c=n==null?e.type==="checkbox"?"on":"":String(n);(l!==c||!("_value"in e))&&(e.value=c),n==null&&e.removeAttribute(t),e._value=n;return}let o=!1;if(n===""||n==null){const l=typeof e[t];l==="boolean"?n=Yr(n):n==null&&l==="string"?(n="",o=!0):l==="number"&&(n=0,o=!0)}try{e[t]=n}catch{}o&&e.removeAttribute(r||t)}function nt(e,t,n,s){e.addEventListener(t,n,s)}function Cc(e,t,n,s){e.removeEventListener(t,n,s)}const xr=Symbol("_vei");function Oc(e,t,n,s,r=null){const i=e[xr]||(e[xr]={}),o=i[t];if(s&&o)o.value=s;else{const[l,c]=Ic(t);if(s){const a=i[t]=Mc(s,r);nt(e,l,a,c)}else o&&(Cc(e,l,o,c),i[t]=void 0)}}const Pc=/(Once|Passive|Capture)$/,Tc=/^on:?(?:Once|Passive|Capture)$/;function Ic(e){let t,n;for(;(n=e.match(Pc))&&!Tc.test(e);)t||(t={}),e=e.slice(0,e.length-n[1].length),t[n[1].toLowerCase()]=!0;return[e[2]===":"?e.slice(3):_t(e.slice(2)),t]}let os=0;const Nc=Promise.resolve(),Dc=()=>os||(Nc.then(()=>os=0),os=Date.now());function Mc(e,t){const n=s=>{if(!s._vts)s._vts=Date.now();else if(s._vts<=n.attached)return;const r=n.value;if(L(r)){const i=s.stopImmediatePropagation;s.stopImmediatePropagation=()=>{i.call(s),s._stopped=!0};const o=r.slice(),l=[s];for(let c=0;c<o.length&&!s._stopped;c++){const a=o[c];a&&Ne(a,t,5,l)}}else Ne(r,t,5,[s])};return n.value=e,n.attached=Dc(),n}const wr=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&e.charCodeAt(2)>96&&e.charCodeAt(2)<123,Lc=(e,t,n,s,r,i)=>{const o=r==="svg";t==="class"?bc(e,s,o):t==="style"?xc(e,n,s):Ln(t)?Vn(t)||Oc(e,t,n,s,i):(t[0]==="."?(t=t.slice(1),!0):t[0]==="^"?(t=t.slice(1),!1):Vc(e,t,s,o))?(Rr(e,t,s),!e.tagName.includes("-")&&(t==="value"||t==="checked"||t==="selected")&&Ar(e,t,s,o,i,t!=="value")):e._isVueCE&&(jc(e,t)||e._def.__asyncLoader&&(/[A-Z]/.test(t)||!ne(s)))?Rr(e,_e(t),s,i,t):(t==="true-value"?e._trueValue=s:t==="false-value"&&(e._falseValue=s),Ar(e,t,s,o))};function Vc(e,t,n,s){if(s)return!!(t==="innerHTML"||t==="textContent"||t in e&&wr(t)&&B(n));if(t==="spellcheck"||t==="draggable"||t==="translate"||t==="autocorrect"||t==="sandbox"&&e.tagName==="IFRAME"||t==="form"||t==="list"&&e.tagName==="INPUT"||t==="type"&&e.tagName==="TEXTAREA")return!1;if(t==="width"||t==="height"){const r=e.tagName;if(r==="IMG"||r==="VIDEO"||r==="CANVAS"||r==="SOURCE")return!1}return wr(t)&&ne(n)?!1:t in e}function jc(e,t){const n=e._def.props;if(!n)return!1;const s=_e(t);return Array.isArray(n)?n.some(r=>_e(r)===s):Object.keys(n).some(r=>_e(r)===s)}const mt=e=>{const t=e.props["onUpdate:modelValue"]||!1;return L(t)?n=>An(t,n):t};function Fc(e){e.target.composing=!0}function Sr(e){const t=e.target;t.composing&&(t.composing=!1,t.dispatchEvent(new Event("input")))}const xe=Symbol("_assign"),En=Symbol("_initialValue");function ls(e,t,n){return t&&(e=e.trim()),n&&(e=Hn(e)),e}const ff={created(e,{modifiers:{lazy:t,trim:n,number:s}},r){e.parentNode&&(e.type==="text"?e[En]=e.defaultValue.replace(/[\r\n]/g,""):e.type==="textarea"&&(e[En]=e.defaultValue.replace(/\r\n?/g,`
+`))),e[xe]=mt(r);const i=s||r.props&&r.props.type==="number";nt(e,t?"change":"input",o=>{o.target.composing||e[xe](ls(e.value,n,i))}),(n||i)&&nt(e,"change",()=>{e.value=ls(e.value,n,i)}),t||(nt(e,"compositionstart",Fc),nt(e,"compositionend",Sr),nt(e,"change",Sr))},mounted(e,{value:t,modifiers:{trim:n,number:s}}){const r=t??"",i=e[En];delete e[En],i!==void 0&&(e.type==="text"||e.type==="textarea")&&e.value!==i?e[xe](ls(e.value,n,s)):e.value=r},beforeUpdate(e,{value:t,oldValue:n,modifiers:{lazy:s,trim:r,number:i}},o){if(e[xe]=mt(o),e.composing)return;const l=(i||e.type==="number")&&!/^0\d/.test(e.value)?Hn(e.value):e.value,c=t??"";if(l===c)return;const a=e.getRootNode();(a instanceof Document||a instanceof ShadowRoot)&&a.activeElement===e&&e.type!=="range"&&(s&&t===n||r&&e.value.trim()===c)||(e.value=c)}},af={deep:!0,created(e,t,n){e[xe]=mt(n),nt(e,"change",()=>{const s=e._modelValue,r=Bt(e),i=e.checked,o=e[xe];if(L(s)){const l=Ns(s,r),c=l!==-1;if(i&&!c)o(s.concat(r));else if(!i&&c){const a=[...s];a.splice(l,1),o(a)}}else if(st(s)){const l=new Set(s);i?l.add(r):l.delete(r),o(l)}else o(no(e,i))})},mounted:Cr,beforeUpdate(e,t,n){e[xe]=mt(n),Cr(e,t,n)}};function Cr(e,{value:t,oldValue:n},s){e._modelValue=t;let r;if(L(t))r=Ns(t,s.props.value)>-1;else if(st(t))r=t.has(s.props.value);else{if(t===n)return;r=Te(t,no(e,!0))}e.checked!==r&&(e.checked=r)}const df={created(e,{value:t},n){e.checked=Te(t,n.props.value),e[xe]=mt(n),nt(e,"change",()=>{e[xe](Bt(e))})},beforeUpdate(e,{value:t,oldValue:n},s){e[xe]=mt(s),t!==n&&(e.checked=Te(t,s.props.value))}},hf={deep:!0,created(e,{value:t,modifiers:{number:n}},s){e._modelValue=t,nt(e,"change",()=>{const r=Array.prototype.filter.call(e.options,c=>c.selected).map(c=>n?Hn(Bt(c)):Bt(c)),i=e.multiple,o=i?st(e._modelValue)?new Set(r):r:r[0],l=e._pendingValue=[i,i?L(o)?r.slice():r:o];try{e[xe](o)}finally{Bs(()=>{e._pendingValue===l&&(e._pendingValue=void 0)})}}),e[xe]=mt(s)},mounted(e,{value:t}){Or(e,t)},beforeUpdate(e,{value:t},n){e._modelValue=t,e[xe]=mt(n)},updated(e,{value:t}){const n=e._pendingValue;e._pendingValue=void 0,(!n||n[0]!==e.multiple||!Hc(t,n[1],n[0]))&&Or(e,t)}};function Hc(e,t,n){if(!n||L(e))return Te(e,t);if(st(e)){if(e.size!==t.length)return!1;for(const s of t)if(!e.has(s))return!1;return!0}return!1}function Or(e,t){const n=e.multiple,s=L(t);if(!(n&&!s&&!st(t))){for(let r=0,i=e.options.length;r<i;r++){const o=e.options[r],l=Bt(o);if(n)if(s){const c=typeof l;c==="string"||c==="number"?o.selected=t.some(a=>String(a)===String(l)):o.selected=Ns(t,l)>-1}else o.selected=t.has(l);else if(Te(Bt(o),t)){e.selectedIndex!==r&&(e.selectedIndex=r);return}}!n&&e.selectedIndex!==-1&&(e.selectedIndex=-1)}}function Bt(e){return"_value"in e?e._value:e.value}function no(e,t){const n=t?"_trueValue":"_falseValue";return n in e?e[n]:t}const Bc=["ctrl","shift","alt","meta"],Uc={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&&e.button!==0,middle:e=>"button"in e&&e.button!==1,right:e=>"button"in e&&e.button!==2,exact:(e,t)=>Bc.some(n=>e[`${n}Key`]&&!t.includes(n))},pf=(e,t)=>{if(!e)return e;const n=e._withMods||(e._withMods={}),s=t.join(".");return n[s]||(n[s]=(r,...i)=>{for(let o=0;o<t.length;o++){const l=Uc[t[o]];if(l&&l(r,t))return}return e(r,...i)})},Kc={esc:"escape",space:" ",up:"arrow-up",left:"arrow-left",right:"arrow-right",down:"arrow-down",delete:"backspace"},gf=(e,t)=>{const n=e._withKeys||(e._withKeys={}),s=t.join(".");return n[s]||(n[s]=r=>{if(!("key"in r))return;const i=_t(r.key);if(t.some(o=>o===i||Kc[o]===i))return e(r)})},Gc=fe({patchProp:Lc},yc);let Pr;function kc(){return Pr||(Pr=Ql(Gc))}const Wc=(...e)=>{const t=kc().createApp(...e),{mount:n}=t;return t.mount=s=>{const r=$c(s);if(!r)return;const i=t._component;!B(i)&&!i.render&&!i.template&&(i.template=r.innerHTML),r.nodeType===1&&(r.textContent="");const o=n(r,!1,qc(r));return r instanceof Element&&(r.removeAttribute("v-cloak"),r.setAttribute("data-v-app","")),o},t};function qc(e){if(e instanceof SVGElement)return"svg";if(typeof MathMLElement=="function"&&e instanceof MathMLElement)return"mathml"}function $c(e){return ne(e)?document.querySelector(e):e}/*!
+ * vue-router v4.6.4
+ * (c) 2025 Eduardo San Martin Morote
+ * @license MIT
+ */const Dt=typeof document<"u";function so(e){return typeof e=="object"||"displayName"in e||"props"in e||"__vccOpts"in e}function zc(e){return e.__esModule||e[Symbol.toStringTag]==="Module"||e.default&&so(e.default)}const k=Object.assign;function cs(e,t){const n={};for(const s in t){const r=t[s];n[s]=De(r)?r.map(e):e(r)}return n}const nn=()=>{},De=Array.isArray;function Tr(e,t){const n={};for(const s in e)n[s]=s in t?t[s]:e[s];return n}const ro=/#/g,Jc=/&/g,Qc=/\//g,Yc=/=/g,Xc=/\?/g,io=/\+/g,Zc=/%5B/g,eu=/%5D/g,oo=/%5E/g,tu=/%60/g,lo=/%7B/g,nu=/%7C/g,co=/%7D/g,su=/%20/g;function qs(e){return e==null?"":encodeURI(""+e).replace(nu,"|").replace(Zc,"[").replace(eu,"]")}function ru(e){return qs(e).replace(lo,"{").replace(co,"}").replace(oo,"^")}function Rs(e){return qs(e).replace(io,"%2B").replace(su,"+").replace(ro,"%23").replace(Jc,"%26").replace(tu,"`").replace(lo,"{").replace(co,"}").replace(oo,"^")}function iu(e){return Rs(e).replace(Yc,"%3D")}function ou(e){return qs(e).replace(ro,"%23").replace(Xc,"%3F")}function lu(e){return ou(e).replace(Qc,"%2F")}function fn(e){if(e==null)return null;try{return decodeURIComponent(""+e)}catch{}return""+e}const cu=/\/$/,uu=e=>e.replace(cu,"");function us(e,t,n="/"){let s,r={},i="",o="";const l=t.indexOf("#");let c=t.indexOf("?");return c=l>=0&&c>l?-1:c,c>=0&&(s=t.slice(0,c),i=t.slice(c,l>0?l:t.length),r=e(i.slice(1))),l>=0&&(s=s||t.slice(0,l),o=t.slice(l,t.length)),s=hu(s??t,n),{fullPath:s+i+o,path:s,query:r,hash:fn(o)}}function fu(e,t){const n=t.query?e(t.query):"";return t.path+(n&&"?")+n+(t.hash||"")}function Ir(e,t){return!t||!e.toLowerCase().startsWith(t.toLowerCase())?e:e.slice(t.length)||"/"}function au(e,t,n){const s=t.matched.length-1,r=n.matched.length-1;return s>-1&&s===r&&Ut(t.matched[s],n.matched[r])&&uo(t.params,n.params)&&e(t.query)===e(n.query)&&t.hash===n.hash}function Ut(e,t){return(e.aliasOf||e)===(t.aliasOf||t)}function uo(e,t){if(Object.keys(e).length!==Object.keys(t).length)return!1;for(var n in e)if(!du(e[n],t[n]))return!1;return!0}function du(e,t){return De(e)?Nr(e,t):De(t)?Nr(t,e):(e==null?void 0:e.valueOf())===(t==null?void 0:t.valueOf())}function Nr(e,t){return De(t)?e.length===t.length&&e.every((n,s)=>n===t[s]):e.length===1&&e[0]===t}function hu(e,t){if(e.startsWith("/"))return e;if(!e)return t;const n=t.split("/"),s=e.split("/"),r=s[s.length-1];(r===".."||r===".")&&s.push("");let i=n.length-1,o,l;for(o=0;o<s.length;o++)if(l=s[o],l!==".")if(l==="..")i>1&&i--;else break;return n.slice(0,i).join("/")+"/"+s.slice(o).join("/")}const dt={path:"/",name:void 0,params:{},query:{},hash:"",fullPath:"/",matched:[],meta:{},redirectedFrom:void 0};let xs=function(e){return e.pop="pop",e.push="push",e}({}),fs=function(e){return e.back="back",e.forward="forward",e.unknown="",e}({});function pu(e){if(!e)if(Dt){const t=document.querySelector("base");e=t&&t.getAttribute("href")||"/",e=e.replace(/^\w+:\/\/[^\/]+/,"")}else e="/";return e[0]!=="/"&&e[0]!=="#"&&(e="/"+e),uu(e)}const gu=/^[^#]+#/;function mu(e,t){return e.replace(gu,"#")+t}function _u(e,t){const n=document.documentElement.getBoundingClientRect(),s=e.getBoundingClientRect();return{behavior:t.behavior,left:s.left-n.left-(t.left||0),top:s.top-n.top-(t.top||0)}}const zn=()=>({left:window.scrollX,top:window.scrollY});function yu(e){let t;if("el"in e){const n=e.el,s=typeof n=="string"&&n.startsWith("#"),r=typeof n=="string"?s?document.getElementById(n.slice(1)):document.querySelector(n):n;if(!r)return;t=_u(r,e)}else t=e;"scrollBehavior"in document.documentElement.style?window.scrollTo(t):window.scrollTo(t.left!=null?t.left:window.scrollX,t.top!=null?t.top:window.scrollY)}function Dr(e,t){return(history.state?history.state.position-t:-1)+e}const ws=new Map;function vu(e,t){ws.set(e,t)}function bu(e){const t=ws.get(e);return ws.delete(e),t}function Eu(e){return typeof e=="string"||e&&typeof e=="object"}function fo(e){return typeof e=="string"||typeof e=="symbol"}let te=function(e){return e[e.MATCHER_NOT_FOUND=1]="MATCHER_NOT_FOUND",e[e.NAVIGATION_GUARD_REDIRECT=2]="NAVIGATION_GUARD_REDIRECT",e[e.NAVIGATION_ABORTED=4]="NAVIGATION_ABORTED",e[e.NAVIGATION_CANCELLED=8]="NAVIGATION_CANCELLED",e[e.NAVIGATION_DUPLICATED=16]="NAVIGATION_DUPLICATED",e}({});const ao=Symbol("");te.MATCHER_NOT_FOUND+"",te.NAVIGATION_GUARD_REDIRECT+"",te.NAVIGATION_ABORTED+"",te.NAVIGATION_CANCELLED+"",te.NAVIGATION_DUPLICATED+"";function Kt(e,t){return k(new Error,{type:e,[ao]:!0},t)}function Qe(e,t){return e instanceof Error&&ao in e&&(t==null||!!(e.type&t))}const Au=["params","query","hash"];function Ru(e){if(typeof e=="string")return e;if(e.path!=null)return e.path;const t={};for(const n of Au)n in e&&(t[n]=e[n]);return JSON.stringify(t,null,2)}function xu(e){const t={};if(e===""||e==="?")return t;const n=(e[0]==="?"?e.slice(1):e).split("&");for(let s=0;s<n.length;++s){const r=n[s].replace(io," "),i=r.indexOf("="),o=fn(i<0?r:r.slice(0,i)),l=i<0?null:fn(r.slice(i+1));if(o in t){let c=t[o];De(c)||(c=t[o]=[c]),c.push(l)}else t[o]=l}return t}function Mr(e){let t="";for(let n in e){const s=e[n];if(n=iu(n),s==null){s!==void 0&&(t+=(t.length?"&":"")+n);continue}(De(s)?s.map(r=>r&&Rs(r)):[s&&Rs(s)]).forEach(r=>{r!==void 0&&(t+=(t.length?"&":"")+n,r!=null&&(t+="="+r))})}return t}function wu(e){const t={};for(const n in e){const s=e[n];s!==void 0&&(t[n]=De(s)?s.map(r=>r==null?null:""+r):s==null?s:""+s)}return t}const Su=Symbol(""),Lr=Symbol(""),Jn=Symbol(""),$s=Symbol(""),Ss=Symbol("");function $t(){let e=[];function t(s){return e.push(s),()=>{const r=e.indexOf(s);r>-1&&e.splice(r,1)}}function n(){e=[]}return{add:t,list:()=>e.slice(),reset:n}}function pt(e,t,n,s,r,i=o=>o()){const o=s&&(s.enterCallbacks[r]=s.enterCallbacks[r]||[]);return()=>new Promise((l,c)=>{const a=g=>{g===!1?c(Kt(te.NAVIGATION_ABORTED,{from:n,to:t})):g instanceof Error?c(g):Eu(g)?c(Kt(te.NAVIGATION_GUARD_REDIRECT,{from:t,to:g})):(o&&s.enterCallbacks[r]===o&&typeof g=="function"&&o.push(g),l())},f=i(()=>e.call(s&&s.instances[r],t,n,a));let h=Promise.resolve(f);e.length<3&&(h=h.then(a)),h.catch(g=>c(g))})}function as(e,t,n,s,r=i=>i()){const i=[];for(const o of e)for(const l in o.components){let c=o.components[l];if(!(t!=="beforeRouteEnter"&&!o.instances[l]))if(so(c)){const a=(c.__vccOpts||c)[t];a&&i.push(pt(a,n,s,o,l,r))}else{let a=c();i.push(()=>a.then(f=>{if(!f)throw new Error(`Couldn't resolve component "${l}" at "${o.path}"`);const h=zc(f)?f.default:f;o.mods[l]=f,o.components[l]=h;const g=(h.__vccOpts||h)[t];return g&&pt(g,n,s,o,l,r)()}))}}return i}function Cu(e,t){const n=[],s=[],r=[],i=Math.max(t.matched.length,e.matched.length);for(let o=0;o<i;o++){const l=t.matched[o];l&&(e.matched.find(a=>Ut(a,l))?s.push(l):n.push(l));const c=e.matched[o];c&&(t.matched.find(a=>Ut(a,c))||r.push(c))}return[n,s,r]}/*!
+ * vue-router v4.6.4
+ * (c) 2025 Eduardo San Martin Morote
+ * @license MIT
+ */let Ou=()=>location.protocol+"//"+location.host;function ho(e,t){const{pathname:n,search:s,hash:r}=t,i=e.indexOf("#");if(i>-1){let o=r.includes(e.slice(i))?e.slice(i).length:1,l=r.slice(o);return l[0]!=="/"&&(l="/"+l),Ir(l,"")}return Ir(n,e)+s+r}function Pu(e,t,n,s){let r=[],i=[],o=null;const l=({state:g})=>{const m=ho(e,location),I=n.value,w=t.value;let H=0;if(g){if(n.value=m,t.value=g,o&&o===I){o=null;return}H=w?g.position-w.position:0}else s(m);r.forEach(j=>{j(n.value,I,{delta:H,type:xs.pop,direction:H?H>0?fs.forward:fs.back:fs.unknown})})};function c(){o=n.value}function a(g){r.push(g);const m=()=>{const I=r.indexOf(g);I>-1&&r.splice(I,1)};return i.push(m),m}function f(){if(document.visibilityState==="hidden"){const{history:g}=window;if(!g.state)return;g.replaceState(k({},g.state,{scroll:zn()}),"")}}function h(){for(const g of i)g();i=[],window.removeEventListener("popstate",l),window.removeEventListener("pagehide",f),document.removeEventListener("visibilitychange",f)}return window.addEventListener("popstate",l),window.addEventListener("pagehide",f),document.addEventListener("visibilitychange",f),{pauseListeners:c,listen:a,destroy:h}}function Vr(e,t,n,s=!1,r=!1){return{back:e,current:t,forward:n,replaced:s,position:window.history.length,scroll:r?zn():null}}function Tu(e){const{history:t,location:n}=window,s={value:ho(e,n)},r={value:t.state};r.value||i(s.value,{back:null,current:s.value,forward:null,position:t.length-1,replaced:!0,scroll:null},!0);function i(c,a,f){const h=e.indexOf("#"),g=h>-1?(n.host&&document.querySelector("base")?e:e.slice(h))+c:Ou()+e+c;try{t[f?"replaceState":"pushState"](a,"",g),r.value=a}catch(m){console.error(m),n[f?"replace":"assign"](g)}}function o(c,a){i(c,k({},t.state,Vr(r.value.back,c,r.value.forward,!0),a,{position:r.value.position}),!0),s.value=c}function l(c,a){const f=k({},r.value,t.state,{forward:c,scroll:zn()});i(f.current,f,!0),i(c,k({},Vr(s.value,c,null),{position:f.position+1},a),!1),s.value=c}return{location:s,state:r,push:l,replace:o}}function Iu(e){e=pu(e);const t=Tu(e),n=Pu(e,t.state,t.location,t.replace);function s(i,o=!0){o||n.pauseListeners(),history.go(i)}const r=k({location:"",base:e,go:s,createHref:mu.bind(null,e)},t,n);return Object.defineProperty(r,"location",{enumerable:!0,get:()=>t.location.value}),Object.defineProperty(r,"state",{enumerable:!0,get:()=>t.state.value}),r}let xt=function(e){return e[e.Static=0]="Static",e[e.Param=1]="Param",e[e.Group=2]="Group",e}({});var oe=function(e){return e[e.Static=0]="Static",e[e.Param=1]="Param",e[e.ParamRegExp=2]="ParamRegExp",e[e.ParamRegExpEnd=3]="ParamRegExpEnd",e[e.EscapeNext=4]="EscapeNext",e}(oe||{});const Nu={type:xt.Static,value:""},Du=/[a-zA-Z0-9_]/;function Mu(e){if(!e)return[[]];if(e==="/")return[[Nu]];if(!e.startsWith("/"))throw new Error(`Invalid path "${e}"`);function t(m){throw new Error(`ERR (${n})/"${a}": ${m}`)}let n=oe.Static,s=n;const r=[];let i;function o(){i&&r.push(i),i=[]}let l=0,c,a="",f="";function h(){a&&(n===oe.Static?i.push({type:xt.Static,value:a}):n===oe.Param||n===oe.ParamRegExp||n===oe.ParamRegExpEnd?(i.length>1&&(c==="*"||c==="+")&&t(`A repeatable param (${a}) must be alone in its segment. eg: '/:ids+.`),i.push({type:xt.Param,value:a,regexp:f,repeatable:c==="*"||c==="+",optional:c==="*"||c==="?"})):t("Invalid state to consume buffer"),a="")}function g(){a+=c}for(;l<e.length;){if(c=e[l++],c==="\\"&&n!==oe.ParamRegExp){s=n,n=oe.EscapeNext;continue}switch(n){case oe.Static:c==="/"?(a&&h(),o()):c===":"?(h(),n=oe.Param):g();break;case oe.EscapeNext:g(),n=s;break;case oe.Param:c==="("?n=oe.ParamRegExp:Du.test(c)?g():(h(),n=oe.Static,c!=="*"&&c!=="?"&&c!=="+"&&l--);break;case oe.ParamRegExp:c===")"?f[f.length-1]=="\\"?f=f.slice(0,-1)+c:n=oe.ParamRegExpEnd:f+=c;break;case oe.ParamRegExpEnd:h(),n=oe.Static,c!=="*"&&c!=="?"&&c!=="+"&&l--,f="";break;default:t("Unknown state");break}}return n===oe.ParamRegExp&&t(`Unfinished custom RegExp for param "${a}"`),h(),o(),r}const jr="[^/]+?",Lu={sensitive:!1,strict:!1,start:!0,end:!0};var ge=function(e){return e[e._multiplier=10]="_multiplier",e[e.Root=90]="Root",e[e.Segment=40]="Segment",e[e.SubSegment=30]="SubSegment",e[e.Static=40]="Static",e[e.Dynamic=20]="Dynamic",e[e.BonusCustomRegExp=10]="BonusCustomRegExp",e[e.BonusWildcard=-50]="BonusWildcard",e[e.BonusRepeatable=-20]="BonusRepeatable",e[e.BonusOptional=-8]="BonusOptional",e[e.BonusStrict=.7000000000000001]="BonusStrict",e[e.BonusCaseSensitive=.25]="BonusCaseSensitive",e}(ge||{});const Vu=/[.+*?^${}()[\]/\\]/g;function ju(e,t){const n=k({},Lu,t),s=[];let r=n.start?"^":"";const i=[];for(const a of e){const f=a.length?[]:[ge.Root];n.strict&&!a.length&&(r+="/");for(let h=0;h<a.length;h++){const g=a[h];let m=ge.Segment+(n.sensitive?ge.BonusCaseSensitive:0);if(g.type===xt.Static)h||(r+="/"),r+=g.value.replace(Vu,"\\$&"),m+=ge.Static;else if(g.type===xt.Param){const{value:I,repeatable:w,optional:H,regexp:j}=g;i.push({name:I,repeatable:w,optional:H});const O=j||jr;if(O!==jr){m+=ge.BonusCustomRegExp;try{`${O}`}catch(T){throw new Error(`Invalid custom RegExp for param "${I}" (${O}): `+T.message)}}let N=w?`((?:${O})(?:/(?:${O}))*)`:`(${O})`;h||(N=H&&a.length<2?`(?:/${N})`:"/"+N),H&&(N+="?"),r+=N,m+=ge.Dynamic,H&&(m+=ge.BonusOptional),w&&(m+=ge.BonusRepeatable),O===".*"&&(m+=ge.BonusWildcard)}f.push(m)}s.push(f)}if(n.strict&&n.end){const a=s.length-1;s[a][s[a].length-1]+=ge.BonusStrict}n.strict||(r+="/?"),n.end?r+="$":n.strict&&!r.endsWith("/")&&(r+="(?:/|$)");const o=new RegExp(r,n.sensitive?"":"i");function l(a){const f=a.match(o),h={};if(!f)return null;for(let g=1;g<f.length;g++){const m=f[g]||"",I=i[g-1];h[I.name]=m&&I.repeatable?m.split("/"):m}return h}function c(a){let f="",h=!1;for(const g of e){(!h||!f.endsWith("/"))&&(f+="/"),h=!1;for(const m of g)if(m.type===xt.Static)f+=m.value;else if(m.type===xt.Param){const{value:I,repeatable:w,optional:H}=m,j=I in a?a[I]:"";if(De(j)&&!w)throw new Error(`Provided param "${I}" is an array but it is not repeatable (* or + modifiers)`);const O=De(j)?j.join("/"):j;if(!O)if(H)g.length<2&&(f.endsWith("/")?f=f.slice(0,-1):h=!0);else throw new Error(`Missing required param "${I}"`);f+=O}}return f||"/"}return{re:o,score:s,keys:i,parse:l,stringify:c}}function Fu(e,t){let n=0;for(;n<e.length&&n<t.length;){const s=t[n]-e[n];if(s)return s;n++}return e.length<t.length?e.length===1&&e[0]===ge.Static+ge.Segment?-1:1:e.length>t.length?t.length===1&&t[0]===ge.Static+ge.Segment?1:-1:0}function po(e,t){let n=0;const s=e.score,r=t.score;for(;n<s.length&&n<r.length;){const i=Fu(s[n],r[n]);if(i)return i;n++}if(Math.abs(r.length-s.length)===1){if(Fr(s))return 1;if(Fr(r))return-1}return r.length-s.length}function Fr(e){const t=e[e.length-1];return e.length>0&&t[t.length-1]<0}const Hu={strict:!1,end:!0,sensitive:!1};function Bu(e,t,n){const s=ju(Mu(e.path),n),r=k(s,{record:e,parent:t,children:[],alias:[]});return t&&!r.record.aliasOf==!t.record.aliasOf&&t.children.push(r),r}function Uu(e,t){const n=[],s=new Map;t=Tr(Hu,t);function r(h){return s.get(h)}function i(h,g,m){const I=!m,w=Br(h);w.aliasOf=m&&m.record;const H=Tr(t,h),j=[w];if("alias"in h){const T=typeof h.alias=="string"?[h.alias]:h.alias;for(const Q of T)j.push(Br(k({},w,{components:m?m.record.components:w.components,path:Q,aliasOf:m?m.record:w})))}let O,N;for(const T of j){const{path:Q}=T;if(g&&Q[0]!=="/"){const ie=g.record.path,ee=ie[ie.length-1]==="/"?"":"/";T.path=g.record.path+(Q&&ee+Q)}if(O=Bu(T,g,H),m?m.alias.push(O):(N=N||O,N!==O&&N.alias.push(O),I&&h.name&&!Ur(O)&&o(h.name)),go(O)&&c(O),w.children){const ie=w.children;for(let ee=0;ee<ie.length;ee++)i(ie[ee],O,m&&m.children[ee])}m=m||O}return N?()=>{o(N)}:nn}function o(h){if(fo(h)){const g=s.get(h);g&&(s.delete(h),n.splice(n.indexOf(g),1),g.children.forEach(o),g.alias.forEach(o))}else{const g=n.indexOf(h);g>-1&&(n.splice(g,1),h.record.name&&s.delete(h.record.name),h.children.forEach(o),h.alias.forEach(o))}}function l(){return n}function c(h){const g=ku(h,n);n.splice(g,0,h),h.record.name&&!Ur(h)&&s.set(h.record.name,h)}function a(h,g){let m,I={},w,H;if("name"in h&&h.name){if(m=s.get(h.name),!m)throw Kt(te.MATCHER_NOT_FOUND,{location:h});H=m.record.name,I=k(Hr(g.params,m.keys.filter(N=>!N.optional).concat(m.parent?m.parent.keys.filter(N=>N.optional):[]).map(N=>N.name)),h.params&&Hr(h.params,m.keys.map(N=>N.name))),w=m.stringify(I)}else if(h.path!=null)w=h.path,m=n.find(N=>N.re.test(w)),m&&(I=m.parse(w),H=m.record.name);else{if(m=g.name?s.get(g.name):n.find(N=>N.re.test(g.path)),!m)throw Kt(te.MATCHER_NOT_FOUND,{location:h,currentLocation:g});H=m.record.name,I=k({},g.params,h.params),w=m.stringify(I)}const j=[];let O=m;for(;O;)j.unshift(O.record),O=O.parent;return{name:H,path:w,params:I,matched:j,meta:Gu(j)}}e.forEach(h=>i(h));function f(){n.length=0,s.clear()}return{addRoute:i,resolve:a,removeRoute:o,clearRoutes:f,getRoutes:l,getRecordMatcher:r}}function Hr(e,t){const n={};for(const s of t)s in e&&(n[s]=e[s]);return n}function Br(e){const t={path:e.path,redirect:e.redirect,name:e.name,meta:e.meta||{},aliasOf:e.aliasOf,beforeEnter:e.beforeEnter,props:Ku(e),children:e.children||[],instances:{},leaveGuards:new Set,updateGuards:new Set,enterCallbacks:{},components:"components"in e?e.components||null:e.component&&{default:e.component}};return Object.defineProperty(t,"mods",{value:{}}),t}function Ku(e){const t={},n=e.props||!1;if("component"in e)t.default=n;else for(const s in e.components)t[s]=typeof n=="object"?n[s]:n;return t}function Ur(e){for(;e;){if(e.record.aliasOf)return!0;e=e.parent}return!1}function Gu(e){return e.reduce((t,n)=>k(t,n.meta),{})}function ku(e,t){let n=0,s=t.length;for(;n!==s;){const i=n+s>>1;po(e,t[i])<0?s=i:n=i+1}const r=Wu(e);return r&&(s=t.lastIndexOf(r,s-1)),s}function Wu(e){let t=e;for(;t=t.parent;)if(go(t)&&po(e,t)===0)return t}function go({record:e}){return!!(e.name||e.components&&Object.keys(e.components).length||e.redirect)}function Kr(e){const t=Pe(Jn),n=Pe($s),s=Ce(()=>{const c=Lt(e.to);return t.resolve(c)}),r=Ce(()=>{const{matched:c}=s.value,{length:a}=c,f=c[a-1],h=n.matched;if(!f||!h.length)return-1;const g=h.findIndex(Ut.bind(null,f));if(g>-1)return g;const m=Gr(c[a-2]);return a>1&&Gr(f)===m&&h[h.length-1].path!==m?h.findIndex(Ut.bind(null,c[a-2])):g}),i=Ce(()=>r.value>-1&&Qu(n.params,s.value.params)),o=Ce(()=>r.value>-1&&r.value===n.matched.length-1&&uo(n.params,s.value.params));function l(c={}){if(Ju(c)){const a=t[Lt(e.replace)?"replace":"push"](Lt(e.to)).catch(nn);return e.viewTransition&&typeof document<"u"&&"startViewTransition"in document&&document.startViewTransition(()=>a),a}return Promise.resolve()}return{route:s,href:Ce(()=>s.value.href),isActive:i,isExactActive:o,navigate:l}}function qu(e){return e.length===1?e[0]:e}const $u=wi({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"},viewTransition:Boolean},useLink:Kr,setup(e,{slots:t}){const n=dn(Kr(e)),{options:s}=Pe(Jn),r=Ce(()=>({[kr(e.activeClass,s.linkActiveClass,"router-link-active")]:n.isActive,[kr(e.exactActiveClass,s.linkExactActiveClass,"router-link-exact-active")]:n.isExactActive}));return()=>{const i=t.default&&qu(t.default(n));return e.custom?i:eo("a",{"aria-current":n.isExactActive?e.ariaCurrentValue:null,href:n.href,onClick:n.navigate,class:r.value},i)}}}),zu=$u;function Ju(e){if(!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)&&!e.defaultPrevented&&!(e.button!==void 0&&e.button!==0)){if(e.currentTarget&&e.currentTarget.getAttribute){const t=e.currentTarget.getAttribute("target");if(/\b_blank\b/i.test(t))return}return e.preventDefault&&e.preventDefault(),!0}}function Qu(e,t){for(const n in t){const s=t[n],r=e[n];if(typeof s=="string"){if(s!==r)return!1}else if(!De(r)||r.length!==s.length||s.some((i,o)=>i.valueOf()!==r[o].valueOf()))return!1}return!0}function Gr(e){return e?e.aliasOf?e.aliasOf.path:e.path:""}const kr=(e,t,n)=>e??t??n,Yu=wi({name:"RouterView",inheritAttrs:!1,props:{name:{type:String,default:"default"},route:Object},compatConfig:{MODE:3},setup(e,{attrs:t,slots:n}){const s=Pe(Ss),r=Ce(()=>e.route||s.value),i=Pe(Lr,0),o=Ce(()=>{let a=Lt(i);const{matched:f}=r.value;let h;for(;(h=f[a])&&!h.components;)a++;return a}),l=Ce(()=>r.value.matched[o.value]);Rn(Lr,Ce(()=>o.value+1)),Rn(Su,l),Rn(Ss,r);const c=Qo();return xn(()=>[c.value,l.value,e.name],([a,f,h],[g,m,I])=>{f&&(f.instances[h]=a,m&&m!==f&&a&&a===g&&(f.leaveGuards.size||(f.leaveGuards=m.leaveGuards),f.updateGuards.size||(f.updateGuards=m.updateGuards))),a&&f&&(!m||!Ut(f,m)||!g)&&(f.enterCallbacks[h]||[]).forEach(w=>w(a))},{flush:"post"}),()=>{const a=r.value,f=e.name,h=l.value,g=h&&h.components[f];if(!g)return Wr(n.default,{Component:g,route:a});const m=h.props[f],I=m?m===!0?a.params:typeof m=="function"?m(a):m:null,H=eo(g,k({},I,t,{onVnodeUnmounted:j=>{j.component.isUnmounted&&(h.instances[f]=null)},ref:c}));return Wr(n.default,{Component:H,route:a})||H}}});function Wr(e,t){if(!e)return null;const n=e(t);return n.length===1?n[0]:n}const Xu=Yu;function Zu(e){const t=Uu(e.routes,e),n=e.parseQuery||xu,s=e.stringifyQuery||Mr,r=e.history,i=$t(),o=$t(),l=$t(),c=Yo(dt);let a=dt;Dt&&e.scrollBehavior&&"scrollRestoration"in history&&(history.scrollRestoration="manual");const f=cs.bind(null,v=>""+v),h=cs.bind(null,lu),g=cs.bind(null,fn);function m(v,P){let S,D;return fo(v)?(S=t.getRecordMatcher(v),D=P):D=v,t.addRoute(D,S)}function I(v){const P=t.getRecordMatcher(v);P&&t.removeRoute(P)}function w(){return t.getRoutes().map(v=>v.record)}function H(v){return!!t.getRecordMatcher(v)}function j(v,P){if(P=k({},P||c.value),typeof v=="string"){const p=us(n,v,P.path),y=t.resolve({path:p.path},P),b=r.createHref(p.fullPath);return k(p,y,{params:g(y.params),hash:fn(p.hash),redirectedFrom:void 0,href:b})}let S;if(v.path!=null)S=k({},v,{path:us(n,v.path,P.path).path});else{const p=k({},v.params);for(const y in p)p[y]==null&&delete p[y];S=k({},v,{params:h(p)}),P.params=h(P.params)}const D=t.resolve(S,P),U=v.hash||"";D.params=f(g(D.params));const u=fu(s,k({},v,{hash:ru(U),path:D.path})),d=r.createHref(u);return k({fullPath:u,hash:U,query:s===Mr?wu(v.query):v.query||{}},D,{redirectedFrom:void 0,href:d})}function O(v){return typeof v=="string"?us(n,v,c.value.path):k({},v)}function N(v,P){if(a!==v)return Kt(te.NAVIGATION_CANCELLED,{from:P,to:v})}function T(v){return ee(v)}function Q(v){return T(k(O(v),{replace:!0}))}function ie(v,P){const S=v.matched[v.matched.length-1];if(S&&S.redirect){const{redirect:D}=S;let U=typeof D=="function"?D(v,P):D;return typeof U=="string"&&(U=U.includes("?")||U.includes("#")?U=O(U):{path:U},U.params={}),k({query:v.query,hash:v.hash,params:U.path!=null?{}:v.params},U)}}function ee(v,P){const S=a=j(v),D=c.value,U=v.state,u=v.force,d=v.replace===!0,p=ie(S,D);if(p)return ee(k(O(p),{state:typeof p=="object"?k({},U,p.state):U,force:u,replace:d}),P||S);const y=S;y.redirectedFrom=P;let b;return!u&&au(s,D,S)&&(b=Kt(te.NAVIGATION_DUPLICATED,{to:y,from:D}),je(D,D,!0,!1)),(b?Promise.resolve(b):Le(y,D)).catch(_=>Qe(_)?Qe(_,te.NAVIGATION_GUARD_REDIRECT)?_:at(_):G(_,y,D)).then(_=>{if(_){if(Qe(_,te.NAVIGATION_GUARD_REDIRECT))return ee(k({replace:d},O(_.to),{state:typeof _.to=="object"?k({},U,_.to.state):U,force:u}),P||y)}else _=yt(y,D,!0,d,U);return ft(y,D,_),_})}function Me(v,P){const S=N(v,P);return S?Promise.reject(S):Promise.resolve()}function ut(v){const P=Tt.values().next().value;return P&&typeof P.runWithContext=="function"?P.runWithContext(v):v()}function Le(v,P){let S;const[D,U,u]=Cu(v,P);S=as(D.reverse(),"beforeRouteLeave",v,P);for(const p of D)p.leaveGuards.forEach(y=>{S.push(pt(y,v,P))});const d=Me.bind(null,v,P);return S.push(d),we(S).then(()=>{S=[];for(const p of i.list())S.push(pt(p,v,P));return S.push(d),we(S)}).then(()=>{S=as(U,"beforeRouteUpdate",v,P);for(const p of U)p.updateGuards.forEach(y=>{S.push(pt(y,v,P))});return S.push(d),we(S)}).then(()=>{S=[];for(const p of u)if(p.beforeEnter)if(De(p.beforeEnter))for(const y of p.beforeEnter)S.push(pt(y,v,P));else S.push(pt(p.beforeEnter,v,P));return S.push(d),we(S)}).then(()=>(v.matched.forEach(p=>p.enterCallbacks={}),S=as(u,"beforeRouteEnter",v,P,ut),S.push(d),we(S))).then(()=>{S=[];for(const p of o.list())S.push(pt(p,v,P));return S.push(d),we(S)}).catch(p=>Qe(p,te.NAVIGATION_CANCELLED)?p:Promise.reject(p))}function ft(v,P,S){l.list().forEach(D=>ut(()=>D(v,P,S)))}function yt(v,P,S,D,U){const u=N(v,P);if(u)return u;const d=P===dt,p=Dt?history.state:{};S&&(D||d?r.replace(v.fullPath,k({scroll:d&&p&&p.scroll},U)):r.push(v.fullPath,U)),c.value=v,je(v,P,S,d),at()}let Ve;function Gt(){Ve||(Ve=r.listen((v,P,S)=>{if(!vt.listening)return;const D=j(v),U=ie(D,vt.currentRoute.value);if(U){ee(k(U,{replace:!0,force:!0}),D).catch(nn);return}a=D;const u=c.value;Dt&&vu(Dr(u.fullPath,S.delta),zn()),Le(D,u).catch(d=>Qe(d,te.NAVIGATION_ABORTED|te.NAVIGATION_CANCELLED)?d:Qe(d,te.NAVIGATION_GUARD_REDIRECT)?(ee(k(O(d.to),{force:!0}),D).then(p=>{Qe(p,te.NAVIGATION_ABORTED|te.NAVIGATION_DUPLICATED)&&!S.delta&&S.type===xs.pop&&r.go(-1,!1)}).catch(nn),Promise.reject()):(S.delta&&r.go(-S.delta,!1),G(d,D,u))).then(d=>{d=d||yt(D,u,!1),d&&(S.delta&&!Qe(d,te.NAVIGATION_CANCELLED)?r.go(-S.delta,!1):S.type===xs.pop&&Qe(d,te.NAVIGATION_ABORTED|te.NAVIGATION_DUPLICATED)&&r.go(-1,!1)),ft(D,u,d)}).catch(nn)}))}let Ot=$t(),le=$t(),z;function G(v,P,S){at(v);const D=le.list();return D.length?D.forEach(U=>U(v,P,S)):console.error(v),Promise.reject(v)}function ze(){return z&&c.value!==dt?Promise.resolve():new Promise((v,P)=>{Ot.add([v,P])})}function at(v){return z||(z=!v,Gt(),Ot.list().forEach(([P,S])=>v?S(v):P()),Ot.reset()),v}function je(v,P,S,D){const{scrollBehavior:U}=e;if(!Dt||!U)return Promise.resolve();const u=!S&&bu(Dr(v.fullPath,0))||(D||!S)&&history.state&&history.state.scroll||null;return Bs().then(()=>U(v,P,u)).then(d=>d&&yu(d)).catch(d=>G(d,v,P))}const ye=v=>r.go(v);let Pt;const Tt=new Set,vt={currentRoute:c,listening:!0,addRoute:m,removeRoute:I,clearRoutes:t.clearRoutes,hasRoute:H,getRoutes:w,resolve:j,options:e,push:T,replace:Q,go:ye,back:()=>ye(-1),forward:()=>ye(1),beforeEach:i.add,beforeResolve:o.add,afterEach:l.add,onError:le.add,isReady:ze,install(v){v.component("RouterLink",zu),v.component("RouterView",Xu),v.config.globalProperties.$router=vt,Object.defineProperty(v.config.globalProperties,"$route",{enumerable:!0,get:()=>Lt(c)}),Dt&&!Pt&&c.value===dt&&(Pt=!0,T(r.location).catch(D=>{}));const P={};for(const D in dt)Object.defineProperty(P,D,{get:()=>c.value[D],enumerable:!0});v.provide(Jn,vt),v.provide($s,pi(P)),v.provide(Ss,c);const S=v.unmount;Tt.add(v),v.unmount=function(){Tt.delete(v),Tt.size<1&&(a=dt,Ve&&Ve(),Ve=null,c.value=dt,Pt=!1,z=!1),S()}}};function we(v){return v.reduce((P,S)=>P.then(()=>ut(S)),Promise.resolve())}return vt}function mf(){return Pe(Jn)}function _f(e){return Pe($s)}const gn="/StudyBase/api";async function mn(e){if(e.status===422){const t=await e.json(),n=new Error(t.detail||"需要确认");throw n.needConfirm=!0,n}if(!e.ok){let t=`HTTP ${e.status}`;try{t=(await e.json()).detail||t}catch{}throw new Error(t)}return e}async function ef(e){const t=await fetch(gn+e);return mn(t).then(n=>n.json())}async function yf(e,t){const n=await fetch(gn+e,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(t||{})});return mn(n).then(s=>s.json())}async function vf(e,t){const n=await fetch(gn+e,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(t||{})});return mn(n).then(s=>s.json())}async function bf(e){const t=await fetch(gn+e,{method:"DELETE"});return mn(t).then(n=>n.json())}async function Ef(e,t,n){const s=await fetch(gn+e,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(t||{})});await mn(s);const r=await s.blob(),i=s.headers.get("Content-Disposition")||"";let o="download.xlsx";const l=i.match(/filename\*=UTF-8''([^;]+)/);l&&(o=decodeURIComponent(l[1]));const c=URL.createObjectURL(r),a=document.createElement("a");a.href=c,a.download=o,document.body.appendChild(a),a.click(),a.remove(),URL.revokeObjectURL(c)}function Af(e){return window.confirm(e)}function Rf(e,t,n){const s=window.prompt((e?e+`
+`:"")+t,n||"");return s===null?null:s}function xf(e){window.alert(e)}const At=dn({subject:[],cause:[],source:[],archiveStatus:[],term:[],stage:[],loaded:!1});let ds=null;function tf(){return ds||(ds=ef("/questions/filter-options").then(e=>{At.subject=e.subject||[],At.cause=e.cause||[],At.source=e.source||[],At.archiveStatus=e.archive_status||[],At.term=e.term||[],At.stage=e.stage||[]}).catch(()=>{}).finally(()=>{At.loaded=!0})),ds}const wf={filters:null,idInput:"",kpInput:"",viewMode:"table",sortCol:"q.id",sortDesc:!1},nf={__name:"App",setup(e){return tf(),(t,n)=>{const s=Sl("router-view");return qi(),Ji(s)}}},sf=[{path:"/",name:"home",component:()=>re(()=>import("./Home-eTfvE57g.js"),__vite__mapDeps([0,1,2]))},{path:"/subject-portal",name:"subjectPortal",component:()=>re(()=>import("./SubjectPortal-ByHM58eO.js"),__vite__mapDeps([3,1,4]))},{path:"/questions",name:"questionList",component:()=>re(()=>import("./QuestionList-C1wuVY8i.js"),__vite__mapDeps([5,6,1,7,8]))},{path:"/questions/add",name:"questionAdd",component:()=>re(()=>import("./QuestionAdd-DU9MCMTd.js"),__vite__mapDeps([9,1]))},{path:"/questions/import",name:"fileImport",component:()=>re(()=>import("./FileImport-u11iN75t.js"),__vite__mapDeps([10,1,11]))},{path:"/questions/import/preview",name:"importPreview",component:()=>re(()=>import("./ImportPreview-Bj2V7xs6.js"),__vite__mapDeps([12,6,1,7,13]))},{path:"/questions/:id(\\d+)",name:"questionDetail",component:()=>re(()=>import("./QuestionDetail-Btb9jD8j.js"),__vite__mapDeps([14,6,1,7,15]))},{path:"/papers",name:"papersList",component:()=>re(()=>import("./PapersList-Bma-hST7.js"),__vite__mapDeps([16,1,17]))},{path:"/papers/create-by-id",name:"papersCreateById",component:()=>re(()=>import("./PapersCreateById-DfT4e4nr.js"),[])},{path:"/papers/preview",name:"papersPreview",component:()=>re(()=>import("./PapersPreview-CEGCS-3b.js"),__vite__mapDeps([18,6,1,7]))},{path:"/papers/:id(\\d+)/detail",name:"papersDetail",component:()=>re(()=>import("./PapersDetail-CiNFIWPD.js"),[])},{path:"/papers/:id(\\d+)/result",name:"papersResult",component:()=>re(()=>import("./PapersResult-Bkm-UuF0.js"),[])},{path:"/analysis/chapters",name:"chapters",component:()=>re(()=>import("./AnalysisChapters-CBhbIZzC.js"),__vite__mapDeps([19,1,20]))},{path:"/analysis/knowledge",name:"knowledge",component:()=>re(()=>import("./AnalysisKnowledge-CBVidUis.js"),__vite__mapDeps([21,1,22]))},{path:"/analysis/pending",name:"pending",component:()=>re(()=>import("./AnalysisPending-DKwU1tZR.js"),__vite__mapDeps([23,1,24]))},{path:"/settings",name:"settings",component:()=>re(()=>import("./Settings-GxVonPDl.js"),__vite__mapDeps([25,1,26]))},{path:"/settings/subjects",name:"settingsSubjects",component:()=>re(()=>import("./SettingsSubjects-DW6Wph4G.js"),__vite__mapDeps([27,1,28]))},{path:"/settings/error-causes",name:"settingsErrorCauses",component:()=>re(()=>import("./SettingsErrorCauses-2DZJjgLJ.js"),__vite__mapDeps([29,1,30]))},{path:"/settings/question-statuses",name:"settingsStatuses",component:()=>re(()=>import("./SettingsStatuses-DGgqms9k.js"),__vite__mapDeps([31,1,32]))},{path:"/settings/default-params",name:"settingsDefaults",component:()=>re(()=>import("./SettingsDefaultParams-CLg7D4Uu.js"),[])}],rf=Zu({history:Iu("/StudyBase/"),routes:sf});Wc(nf).use(rf).mount("#app");export{Ef as A,Ce as B,wf as C,pf as D,Re as E,Xe as F,Ts as G,Bs as H,vf as I,gf as J,bf as K,Rf as L,xn as M,Yi as a,_l as b,cf as c,ef as d,tf as e,At as f,Qo as g,yf as h,af as i,sc as j,bl as k,Lt as l,ff as m,Is as n,qi as o,df as p,uf as q,lf as r,_f as s,Po as t,mf as u,hf as v,of as w,dn as x,xf as y,Af as z};
--- /dev/null
+const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/Home-DsRFMl9b.js","assets/_plugin-vue_export-helper-DlAUqK2U.js","assets/Home-BS2dZmih.css","assets/SubjectPortal-Dd6cJcYE.js","assets/SubjectPortal-C6qGEJfC.css","assets/QuestionList-BTXgtYyQ.js","assets/RichContent-rL8svEOV.js","assets/RichContent-i88-frEH.css","assets/QuestionList-Bsgm7r51.css","assets/QuestionAdd-BiCGDs5N.js","assets/FileImport-DD-NyQ6S.js","assets/FileImport-BnZT11gH.css","assets/ImportPreview-C_xcji13.js","assets/ImportPreview-CVbloBt1.css","assets/QuestionDetail-CAAFb7hT.js","assets/QuestionDetail-C_Hr81KT.css","assets/PapersList-Blc7vrJ_.js","assets/PapersList-CJuySWdY.css","assets/PapersPreview-BMWFmAj9.js","assets/AnalysisChapters-Dl827wkL.js","assets/AnalysisChapters-DTn9LWoa.css","assets/AnalysisKnowledge-C-_KG8I4.js","assets/AnalysisKnowledge-5QPt6Ak_.css","assets/AnalysisPending-0-9FJTKi.js","assets/AnalysisPending-C5SzviRH.css","assets/Settings-Dz0Dmd6y.js","assets/Settings-pzGFQctT.css","assets/SettingsSubjects-CuNcG7LQ.js","assets/SettingsSubjects-bGGsFjfA.css","assets/SettingsErrorCauses-RNHx002T.js","assets/SettingsErrorCauses-BA8Zr_cv.css","assets/SettingsStatuses-K-fYJGhv.js","assets/SettingsStatuses-XHEFsW5N.css"])))=>i.map(i=>d[i]);
+(function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const r of document.querySelectorAll('link[rel="modulepreload"]'))s(r);new MutationObserver(r=>{for(const i of r)if(i.type==="childList")for(const o of i.addedNodes)o.tagName==="LINK"&&o.rel==="modulepreload"&&s(o)}).observe(document,{childList:!0,subtree:!0});function n(r){const i={};return r.integrity&&(i.integrity=r.integrity),r.referrerPolicy&&(i.referrerPolicy=r.referrerPolicy),r.crossOrigin==="use-credentials"?i.credentials="include":r.crossOrigin==="anonymous"?i.credentials="omit":i.credentials="same-origin",i}function s(r){if(r.ep)return;r.ep=!0;const i=n(r);fetch(r.href,i)}})();const mo="modulepreload",_o=function(e){return"/StudyBase/"+e},Ys={},re=function(t,n,s){let r=Promise.resolve();if(n&&n.length>0){document.getElementsByTagName("link");const o=document.querySelector("meta[property=csp-nonce]"),l=(o==null?void 0:o.nonce)||(o==null?void 0:o.getAttribute("nonce"));r=Promise.allSettled(n.map(c=>{if(c=_o(c),c in Ys)return;Ys[c]=!0;const a=c.endsWith(".css"),f=a?'[rel="stylesheet"]':"";if(document.querySelector(`link[href="${c}"]${f}`))return;const h=document.createElement("link");if(h.rel=a?"stylesheet":mo,a||(h.as="script"),h.crossOrigin="",h.href=c,l&&h.setAttribute("nonce",l),document.head.appendChild(h),a)return new Promise((g,m)=>{h.addEventListener("load",g),h.addEventListener("error",()=>m(new Error(`Unable to preload CSS for ${c}`)))})}))}function i(o){const l=new Event("vite:preloadError",{cancelable:!0});if(l.payload=o,window.dispatchEvent(l),!l.defaultPrevented)throw o}return r.then(o=>{for(const l of o||[])l.status==="rejected"&&i(l.reason);return t().catch(i)})};/**
+* @vue/shared v3.5.42
+* (c) 2018-present Yuxi (Evan) You and Vue contributors
+* @license MIT
+**/function Cs(e){const t=Object.create(null);for(const n of e.split(","))t[n]=1;return n=>n in t}const X={},Mt=[],qe=()=>{},qr=()=>!1,Ln=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&(e.charCodeAt(2)>122||e.charCodeAt(2)<97),Vn=e=>e.startsWith("onUpdate:"),fe=Object.assign,Os=(e,t)=>{const n=e.indexOf(t);n>-1&&e.splice(n,1)},yo=Object.prototype.hasOwnProperty,q=(e,t)=>yo.call(e,t),L=Array.isArray,gt=e=>an(e)==="[object Map]",st=e=>an(e)==="[object Set]",Xs=e=>an(e)==="[object Date]",B=e=>typeof e=="function",ne=e=>typeof e=="string",$e=e=>typeof e=="symbol",$=e=>e!==null&&typeof e=="object",$r=e=>($(e)||B(e))&&B(e.then)&&B(e.catch),zr=Object.prototype.toString,an=e=>zr.call(e),vo=e=>an(e).slice(8,-1),Jr=e=>an(e)==="[object Object]",Ps=e=>ne(e)&&e!=="NaN"&&e[0]!=="-"&&""+parseInt(e,10)===e,Qt=Cs(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),jn=e=>{const t=Object.create(null);return n=>t[n]||(t[n]=e(n))},bo=/-\w/g,_e=jn(e=>e.replace(bo,t=>t.slice(1).toUpperCase())),Eo=/\B([A-Z])/g,_t=jn(e=>e.replace(Eo,"-$1").toLowerCase()),Fn=jn(e=>e.charAt(0).toUpperCase()+e.slice(1)),Qn=jn(e=>e?`on${Fn(e)}`:""),We=(e,t)=>!Object.is(e,t),An=(e,...t)=>{for(let n=0;n<e.length;n++)e[n](...t)},Qr=(e,t,n,s=!1)=>{Object.defineProperty(e,t,{configurable:!0,enumerable:!1,writable:s,value:n})},Hn=e=>{const t=parseFloat(e);return isNaN(t)?e:t};let Zs;const Bn=()=>Zs||(Zs=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{});function Ts(e){if(L(e)){const t={};for(let n=0;n<e.length;n++){const s=e[n],r=ne(s)?wo(s):Ts(s);if(r)for(const i in r)t[i]=r[i]}return t}else if(ne(e)||$(e))return e}const Ao=/;(?![^(]*\))/g,Ro=/:([^]+)/,xo=/\/\*[^]*?\*\//g;function wo(e){const t={};return e.replace(xo,"").split(Ao).forEach(n=>{if(n){const s=n.split(Ro);s.length>1&&(t[s[0].trim()]=s[1].trim())}}),t}function Is(e){let t="";if(ne(e))t=e;else if(L(e))for(let n=0;n<e.length;n++){const s=Is(e[n]);s&&(t+=s+" ")}else if($(e))for(const n in e)e[n]&&(t+=n+" ");return t.trim()}const So="itemscope,allowfullscreen,formnovalidate,ismap,nomodule,novalidate,readonly",Co=Cs(So);function Yr(e){return!!e||e===""}function Oo(e,t){if(e.length!==t.length)return!1;let n=!0;for(let s=0;n&&s<e.length;s++)n=Te(e[s],t[s]);return n}function er(e,t){if(e.size!==t.size)return!1;const n=Array.from(t),s=new Uint8Array(n.length);for(const r of e){let i=-1;for(let o=0;o<n.length;o++)if(!s[o]&&Te(r,n[o])){i=o;break}if(i<0)return!1;s[i]=1}return!0}function Te(e,t){if(e===t)return!0;let n=Xs(e),s=Xs(t);if(n||s)return n&&s?e.getTime()===t.getTime():!1;if(n=$e(e),s=$e(t),n||s)return e===t;if(n=L(e),s=L(t),n||s)return n&&s?Oo(e,t):!1;if(n=$(e),s=$(t),n||s){if(!n||!s)return!1;if(n=gt(e),s=gt(t),n||s||(n=st(e),s=st(t),n||s))return n&&s?er(e,t):!1;const r=Object.keys(e).length,i=Object.keys(t).length;if(r!==i)return!1;for(const o in e){const l=e.hasOwnProperty(o),c=t.hasOwnProperty(o);if(l&&!c||!l&&c||!Te(e[o],t[o]))return!1}}return String(e)===String(t)}function Ns(e,t){return e.findIndex(n=>Te(n,t))}const Xr=e=>!!(e&&e.__v_isRef===!0),Po=e=>ne(e)?e:e==null?"":L(e)||$(e)&&(e.toString===zr||!B(e.toString))?Xr(e)?Po(e.value):JSON.stringify(e,Zr,2):String(e),Zr=(e,t)=>Xr(t)?Zr(e,t.value):gt(t)?{[`Map(${t.size})`]:[...t.entries()].reduce((n,[s,r],i)=>(n[Yn(s,i)+" =>"]=r,n),{})}:st(t)?{[`Set(${t.size})`]:[...t.values()].map(n=>Yn(n))}:$e(t)?Yn(t):$(t)&&!L(t)&&!Jr(t)?String(t):t,Yn=(e,t="")=>{var n;return $e(e)?`Symbol(${(n=e.description)!=null?n:t})`:e};/**
+* @vue/reactivity v3.5.42
+* (c) 2018-present Yuxi (Evan) You and Vue contributors
+* @license MIT
+**/let ue;class To{constructor(t=!1){this.detached=t,this._active=!0,this._on=0,this.effects=[],this.cleanups=[],this._isPaused=!1,this._warnOnRun=!0,this.__v_skip=!0,!t&&ue&&(ue.active?(this.parent=ue,this.index=(ue.scopes||(ue.scopes=[])).push(this)-1):(this._active=!1,this._warnOnRun=!1))}get active(){return this._active}pause(){if(this._active){this._isPaused=!0;let t,n;if(this.scopes){const s=this.scopes.slice();for(t=0,n=s.length;t<n;t++)s[t].pause()}for(t=0,n=this.effects.length;t<n;t++)this.effects[t].pause()}}resume(){if(this._active&&this._isPaused){this._isPaused=!1;let t,n;if(this.scopes){const r=this.scopes.slice();for(t=0,n=r.length;t<n;t++)r[t].resume()}const s=this.effects.slice();for(t=0,n=s.length;t<n;t++)s[t].resume()}}run(t){if(this._active){const n=ue;try{return ue=this,t()}finally{ue=n}}}on(){++this._on===1&&(this.prevScope=ue,ue=this)}off(){if(this._on>0&&--this._on===0){if(ue===this)ue=this.prevScope;else{let t=ue;for(;t;){if(t.prevScope===this){t.prevScope=this.prevScope;break}t=t.prevScope}}this.prevScope=void 0}}stop(t){if(this._active){this._active=!1;let n,s;for(n=0,s=this.effects.length;n<s;n++)this.effects[n].stop();for(this.effects.length=0,n=0,s=this.cleanups.length;n<s;n++)this.cleanups[n]();if(this.cleanups.length=0,this.scopes){const r=this.scopes.slice();for(n=0,s=r.length;n<s;n++)r[n].stop(!0);this.scopes.length=0}if(!this.detached&&this.parent&&!t){const r=this.parent.scopes.pop();r&&r!==this&&(this.parent.scopes[this.index]=r,r.index=this.index)}this.parent=void 0}}}function Io(){return ue}let Z;const Xn=new WeakSet;class ei{constructor(t){this.fn=t,this.deps=void 0,this.depsTail=void 0,this.flags=5,this.next=void 0,this.cleanup=void 0,this.scheduler=void 0,ue&&(ue.active?ue.effects.push(this):this.flags&=-2)}pause(){this.flags|=64}resume(){this.flags&64&&(this.flags&=-65,Xn.has(this)&&(Xn.delete(this),this.trigger()))}notify(){this.flags&2&&!(this.flags&32)||this.flags&8||ni(this)}run(){if(!(this.flags&1))return this.fn();this.flags|=2,tr(this),si(this);const t=Z,n=Oe;Z=this,Oe=!0;try{return this.fn()}finally{ri(this),Z=t,Oe=n,this.flags&=-3}}stop(){if(this.flags&1){for(let t=this.deps;t;t=t.nextDep)Ls(t);this.deps=this.depsTail=void 0,tr(this),this.onStop&&this.onStop(),this.flags&=-2}}trigger(){this.flags&64?Xn.add(this):this.scheduler?this.scheduler():this.runIfDirty()}runIfDirty(){hs(this)&&this.run()}get dirty(){return hs(this)}}let ti=0,Yt,Xt;function ni(e,t=!1){if(e.flags|=8,t){e.next=Xt,Xt=e;return}e.next=Yt,Yt=e}function Ds(){ti++}function Ms(){if(--ti>0)return;if(Xt){let t=Xt;for(Xt=void 0;t;){const n=t.next;t.next=void 0,t.flags&=-9,t=n}}let e;for(;Yt;){let t=Yt;for(Yt=void 0;t;){const n=t.next;if(t.next=void 0,t.flags&=-9,t.flags&1)try{t.trigger()}catch(s){e||(e=s)}t=n}}if(e)throw e}function si(e){for(let t=e.deps;t;t=t.nextDep)t.version=-1,t.prevActiveLink=t.dep.activeLink,t.dep.activeLink=t}function ri(e){let t,n=e.depsTail,s=n;for(;s;){const r=s.prevDep;s.version===-1?(s===n&&(n=r),Ls(s),No(s)):t=s,s.dep.activeLink=s.prevActiveLink,s.prevActiveLink=void 0,s=r}e.deps=t,e.depsTail=n}function hs(e){for(let t=e.deps;t;t=t.nextDep)if(t.dep.version!==t.version||t.dep.computed&&(ii(t.dep.computed)||t.dep.version!==t.version))return!0;return!!e._dirty}function ii(e){if(e.flags&4&&!(e.flags&16)||(e.flags&=-17,e.globalVersion===sn)||(e.globalVersion=sn,!e.isSSR&&e.flags&128&&(!e.deps&&!e._dirty||!hs(e))))return;e.flags|=2;const t=e.dep,n=Z,s=Oe;Z=e,Oe=!0;try{si(e);const r=e.fn(e._value);(t.version===0||We(r,e._value))&&(e.flags|=128,e._value=r,t.version++)}catch(r){throw t.version++,r}finally{Z=n,Oe=s,ri(e),e.flags&=-3}}function Ls(e,t=!1){const{dep:n,prevSub:s,nextSub:r}=e;if(s&&(s.nextSub=r,e.prevSub=void 0),r&&(r.prevSub=s,e.nextSub=void 0),n.subs===e&&(n.subs=s,!s&&n.computed)){n.computed.flags&=-5;for(let i=n.computed.deps;i;i=i.nextDep)Ls(i,!0)}!t&&!--n.sc&&n.map&&n.map.delete(n.key)}function No(e){const{prevDep:t,nextDep:n}=e;t&&(t.nextDep=n,e.prevDep=void 0),n&&(n.prevDep=t,e.nextDep=void 0)}let Oe=!0;const oi=[];function rt(){oi.push(Oe),Oe=!1}function it(){const e=oi.pop();Oe=e===void 0?!0:e}function tr(e){const{cleanup:t}=e;if(e.cleanup=void 0,t){const n=Z;Z=void 0;try{t()}finally{Z=n}}}let sn=0;class Do{constructor(t,n){this.sub=t,this.dep=n,this.version=n.version,this.nextDep=this.prevDep=this.nextSub=this.prevSub=this.prevActiveLink=void 0}}class Vs{constructor(t){this.computed=t,this.version=0,this.activeLink=void 0,this.subs=void 0,this.map=void 0,this.key=void 0,this.sc=0,this.__v_skip=!0}track(t){if(!Z||!Oe||Z===this.computed)return;let n=this.activeLink;if(n===void 0||n.sub!==Z)n=this.activeLink=new Do(Z,this),Z.deps?(n.prevDep=Z.depsTail,Z.depsTail.nextDep=n,Z.depsTail=n):Z.deps=Z.depsTail=n,li(n);else if(n.version===-1&&(n.version=this.version,n.nextDep)){const s=n.nextDep;s.prevDep=n.prevDep,n.prevDep&&(n.prevDep.nextDep=s),n.prevDep=Z.depsTail,n.nextDep=void 0,Z.depsTail.nextDep=n,Z.depsTail=n,Z.deps===n&&(Z.deps=s)}return n}trigger(t){this.version++,sn++,this.notify(t)}notify(t){Ds();try{for(let n=this.subs;n;n=n.prevSub)n.sub.notify()&&n.sub.dep.notify()}finally{Ms()}}}function li(e){if(e.dep.sc++,e.sub.flags&4){const t=e.dep.computed;if(t&&!e.dep.subs){t.flags|=20;for(let s=t.deps;s;s=s.nextDep)li(s)}const n=e.dep.subs;n!==e&&(e.prevSub=n,n&&(n.nextSub=e)),e.dep.subs=e}}const ps=new WeakMap,wt=Symbol(""),gs=Symbol(""),rn=Symbol("");function ae(e,t,n){if(Oe&&Z){let s=ps.get(e);s||ps.set(e,s=new Map);let r=s.get(n);r||(s.set(n,r=new Vs),r.map=s,r.key=n),r.track()}}function et(e,t,n,s,r,i){const o=ps.get(e);if(!o){sn++;return}const l=c=>{c&&c.trigger()};if(Ds(),t==="clear")o.forEach(l);else{const c=L(e),a=c&&Ps(n);if(c&&n==="length"){const f=Number(s);o.forEach((h,g)=>{(g==="length"||g===rn||!$e(g)&&g>=f)&&l(h)})}else switch((n!==void 0||o.has(void 0))&&l(o.get(n)),a&&l(o.get(rn)),t){case"add":c?a&&l(o.get("length")):(l(o.get(wt)),gt(e)&&l(o.get(gs)));break;case"delete":c||(l(o.get(wt)),gt(e)&&l(o.get(gs)));break;case"set":gt(e)&&l(o.get(wt));break}}Ms()}function It(e){const t=W(e);return t===e?t:(ae(t,"iterate",rn),Se(e)?t:t.map(Ie))}function Un(e){return ae(e=W(e),"iterate",rn),e}function Ge(e,t){return ot(e)?Ft(St(e)?Ie(t):t):Ie(t)}const Mo={__proto__:null,[Symbol.iterator](){return Zn(this,Symbol.iterator,e=>Ge(this,e))},concat(...e){return It(this).concat(...e.map(t=>L(t)?It(t):t))},entries(){return Zn(this,"entries",e=>(e[1]=Ge(this,e[1]),e))},every(e,t){return Je(this,"every",e,t,void 0,arguments)},filter(e,t){return Je(this,"filter",e,t,n=>n.map(s=>Ge(this,s)),arguments)},find(e,t){return Je(this,"find",e,t,n=>Ge(this,n),arguments)},findIndex(e,t){return Je(this,"findIndex",e,t,void 0,arguments)},findLast(e,t){return Je(this,"findLast",e,t,n=>Ge(this,n),arguments)},findLastIndex(e,t){return Je(this,"findLastIndex",e,t,void 0,arguments)},forEach(e,t){return Je(this,"forEach",e,t,void 0,arguments)},includes(...e){return es(this,"includes",e)},indexOf(...e){return es(this,"indexOf",e)},join(e){return It(this).join(e)},lastIndexOf(...e){return es(this,"lastIndexOf",e)},map(e,t){return Je(this,"map",e,t,void 0,arguments)},pop(){return Wt(this,"pop")},push(...e){return Wt(this,"push",e)},reduce(e,...t){return nr(this,"reduce",e,t)},reduceRight(e,...t){return nr(this,"reduceRight",e,t)},shift(){return Wt(this,"shift")},some(e,t){return Je(this,"some",e,t,void 0,arguments)},splice(...e){return Wt(this,"splice",e)},toReversed(){return It(this).toReversed()},toSorted(e){return It(this).toSorted(e)},toSpliced(...e){return It(this).toSpliced(...e)},unshift(...e){return Wt(this,"unshift",e)},values(){return Zn(this,"values",e=>Ge(this,e))}};function Zn(e,t,n){const s=Un(e),r=s[t]();return s!==e&&!Se(e)&&(r._next=r.next,r.next=()=>{const i=r._next();return i.done||(i.value=n(i.value)),i}),r}const Lo=Array.prototype;function Je(e,t,n,s,r,i){const o=Un(e),l=o!==e&&!Se(e),c=o[t];if(c!==Lo[t]){const h=c.apply(e,i);return l?Ie(h):h}let a=n;o!==e&&(l?a=function(h,g){return n.call(this,Ge(e,h),g,e)}:n.length>2&&(a=function(h,g){return n.call(this,h,g,e)}));const f=c.call(o,a,s);return l&&r?r(f):f}function nr(e,t,n,s){const r=Un(e),i=r!==e&&!Se(e);let o=n,l=!1;r!==e&&(i?(l=s.length===0,o=function(a,f,h){return l&&(l=!1,a=Ge(e,a)),n.call(this,a,Ge(e,f),h,e)}):n.length>3&&(o=function(a,f,h){return n.call(this,a,f,h,e)}));const c=r[t](o,...s);return l?Ge(e,c):c}function es(e,t,n){const s=W(e);ae(s,"iterate",rn);const r=s[t](...n);return(r===-1||r===!1)&&Hs(n[0])?(n[0]=W(n[0]),s[t](...n)):r}function Wt(e,t,n=[]){rt(),Ds();const s=W(e)[t].apply(e,n);return Ms(),it(),s}const Vo=Cs("__proto__,__v_isRef,__isVue"),ci=new Set(Object.getOwnPropertyNames(Symbol).filter(e=>e!=="arguments"&&e!=="caller").map(e=>Symbol[e]).filter($e));function jo(e){$e(e)||(e=String(e));const t=W(this);return ae(t,"has",e),t.hasOwnProperty(e)}class ui{constructor(t=!1,n=!1){this._isReadonly=t,this._isShallow=n}get(t,n,s){if(n==="__v_skip")return t.__v_skip;const r=this._isReadonly,i=this._isShallow;if(n==="__v_isReactive")return!r;if(n==="__v_isReadonly")return r;if(n==="__v_isShallow")return i;if(n==="__v_raw")return s===(r?i?$o:hi:i?di:ai).get(t)||Object.getPrototypeOf(t)===Object.getPrototypeOf(s)?t:void 0;const o=L(t);if(!r){let c;if(o&&(c=Mo[n]))return c;if(n==="hasOwnProperty")return jo}const l=Reflect.get(t,n,he(t)?t:s);if(($e(n)?ci.has(n):Vo(n))||(r||ae(t,"get",n),i))return l;if(he(l)){const c=o&&Ps(n)?l:l.value;return r&&$(c)?_s(c):c}return $(l)?r?_s(l):dn(l):l}}class fi extends ui{constructor(t=!1){super(!1,t)}set(t,n,s,r){let i=t[n];const o=L(t)&&Ps(n);if(!this._isShallow){const a=ot(i);if(!Se(s)&&!ot(s)&&(i=W(i),s=W(s)),!o&&he(i)&&!he(s))return a||(i.value=s),!0}const l=o?Number(n)<t.length:q(t,n),c=Reflect.set(t,n,s,he(t)?t:r);return t===W(r)&&c&&(l?We(s,i)&&et(t,"set",n,s):et(t,"add",n,s)),c}deleteProperty(t,n){const s=q(t,n);t[n];const r=Reflect.deleteProperty(t,n);return r&&s&&et(t,"delete",n,void 0),r}has(t,n){const s=Reflect.has(t,n);return(!$e(n)||!ci.has(n))&&ae(t,"has",n),s}ownKeys(t){return ae(t,"iterate",L(t)?"length":wt),Reflect.ownKeys(t)}}class Fo extends ui{constructor(t=!1){super(!0,t)}set(t,n){return!0}deleteProperty(t,n){return!0}}const Ho=new fi,Bo=new Fo,Uo=new fi(!0);const ms=e=>e,_n=e=>Reflect.getPrototypeOf(e);function Ko(e,t,n){return function(...s){const r=this.__v_raw,i=W(r),o=gt(i),l=e==="entries"||e===Symbol.iterator&&o,c=e==="keys"&&o,a=r[e](...s),f=n?ms:t?Ft:Ie;return!t&&ae(i,"iterate",c?gs:wt),fe(Object.create(a),{next(){const{value:h,done:g}=a.next();return g?{value:h,done:g}:{value:l?[f(h[0]),f(h[1])]:f(h),done:g}}})}}function yn(e){return function(...t){return e==="delete"?!1:e==="clear"?void 0:this}}function Go(e,t){const n={get(r){const i=this.__v_raw,o=W(i),l=W(r);e||(We(r,l)&&ae(o,"get",r),ae(o,"get",l));const{has:c}=_n(o),a=t?ms:e?Ft:Ie;if(c.call(o,r))return a(i.get(r));if(c.call(o,l))return a(i.get(l));i!==o&&i.get(r)},get size(){const r=this.__v_raw;return!e&&ae(W(r),"iterate",wt),r.size},has(r){const i=this.__v_raw,o=W(i),l=W(r);return e||(We(r,l)&&ae(o,"has",r),ae(o,"has",l)),r===l?i.has(r):i.has(r)||i.has(l)},forEach(r,i){const o=this,l=o.__v_raw,c=W(l),a=t?ms:e?Ft:Ie;return!e&&ae(c,"iterate",wt),l.forEach((f,h)=>r.call(i,a(f),a(h),o))}};return fe(n,e?{add:yn("add"),set:yn("set"),delete:yn("delete"),clear:yn("clear")}:{add(r){const i=W(this),o=_n(i),l=W(r),c=!t&&!Se(r)&&!ot(r)?l:r;return o.has.call(i,c)||We(r,c)&&o.has.call(i,r)||We(l,c)&&o.has.call(i,l)||(i.add(c),et(i,"add",c,c)),this},set(r,i){!t&&!Se(i)&&!ot(i)&&(i=W(i));const o=W(this),{has:l,get:c}=_n(o);let a=l.call(o,r);a||(r=W(r),a=l.call(o,r));const f=c.call(o,r);return o.set(r,i),a?We(i,f)&&et(o,"set",r,i):et(o,"add",r,i),this},delete(r){const i=W(this),{has:o,get:l}=_n(i);let c=o.call(i,r);c||(r=W(r),c=o.call(i,r)),l&&l.call(i,r);const a=i.delete(r);return c&&et(i,"delete",r,void 0),a},clear(){const r=W(this),i=r.size!==0,o=r.clear();return i&&et(r,"clear",void 0,void 0),o}}),["keys","values","entries",Symbol.iterator].forEach(r=>{n[r]=Ko(r,e,t)}),n}function js(e,t){const n=Go(e,t);return(s,r,i)=>r==="__v_isReactive"?!e:r==="__v_isReadonly"?e:r==="__v_raw"?s:Reflect.get(q(n,r)&&r in s?n:s,r,i)}const ko={get:js(!1,!1)},Wo={get:js(!1,!0)},qo={get:js(!0,!1)};const ai=new WeakMap,di=new WeakMap,hi=new WeakMap,$o=new WeakMap;function zo(e){switch(e){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}function dn(e){return ot(e)?e:Fs(e,!1,Ho,ko,ai)}function pi(e){return Fs(e,!1,Uo,Wo,di)}function _s(e){return Fs(e,!0,Bo,qo,hi)}function Fs(e,t,n,s,r){if(!$(e)||e.__v_raw&&!(t&&e.__v_isReactive)||e.__v_skip||!Object.isExtensible(e))return e;const i=r.get(e);if(i)return i;const o=zo(vo(e));if(o===0)return e;const l=new Proxy(e,o===2?s:n);return r.set(e,l),l}function St(e){return ot(e)?St(e.__v_raw):!!(e&&e.__v_isReactive)}function ot(e){return!!(e&&e.__v_isReadonly)}function Se(e){return!!(e&&e.__v_isShallow)}function Hs(e){return e?!!e.__v_raw:!1}function W(e){const t=e&&e.__v_raw;return t?W(t):e}function Jo(e){return!q(e,"__v_skip")&&Object.isExtensible(e)&&Qr(e,"__v_skip",!0),e}const Ie=e=>$(e)?dn(e):e,Ft=e=>$(e)?_s(e):e;function he(e){return e?e.__v_isRef===!0:!1}function Qo(e){return gi(e,!1)}function Yo(e){return gi(e,!0)}function gi(e,t){return he(e)?e:new Xo(e,t)}class Xo{constructor(t,n){this.dep=new Vs,this.__v_isRef=!0,this.__v_isShallow=!1,this._rawValue=n?t:W(t),this._value=n?t:Ie(t),this.__v_isShallow=n}get value(){return this.dep.track(),this._value}set value(t){const n=this._rawValue,s=this.__v_isShallow||Se(t)||ot(t);t=s?t:W(t),We(t,n)&&(this._rawValue=t,this._value=s?t:Ie(t),this.dep.trigger())}}function Lt(e){return he(e)?e.value:e}const Zo={get:(e,t,n)=>t==="__v_raw"?e:Lt(Reflect.get(e,t,n)),set:(e,t,n,s)=>{const r=e[t];return he(r)&&!he(n)?(r.value=n,!0):Reflect.set(e,t,n,s)}};function mi(e){return St(e)?e:new Proxy(e,Zo)}class el{constructor(t,n,s){this.fn=t,this.setter=n,this._value=void 0,this.dep=new Vs(this),this.__v_isRef=!0,this.deps=void 0,this.depsTail=void 0,this.flags=16,this.globalVersion=sn-1,this.next=void 0,this.effect=this,this.__v_isReadonly=!n,this.isSSR=s}notify(){if(this.flags|=16,!(this.flags&8)&&Z!==this)return ni(this,!0),!0}get value(){const t=this.dep.track();return ii(this),t&&(t.version=this.dep.version),this._value}set value(t){this.setter&&this.setter(t)}}function tl(e,t,n=!1){let s,r;return B(e)?s=e:(s=e.get,r=e.set),new el(s,r,n)}const vn={},Sn=new WeakMap;let Rt;function nl(e,t=!1,n=Rt){if(n){let s=Sn.get(n);s||Sn.set(n,s=[]),s.push(e)}}function sl(e,t,n=X){const{immediate:s,deep:r,once:i,scheduler:o,augmentJob:l,call:c}=n,a=T=>r?T:Se(T)||r===!1||r===0?tt(T,1):tt(T);let f,h,g,m,I=!1,w=!1;if(he(e)?(h=()=>e.value,I=Se(e)):St(e)?(h=()=>a(e),I=!0):L(e)?(w=!0,I=e.some(T=>St(T)||Se(T)),h=()=>e.map(T=>{if(he(T))return T.value;if(St(T))return a(T);if(B(T))return c?c(T,2):T()})):B(e)?t?h=c?()=>c(e,2):e:h=()=>{if(g){rt();try{g()}finally{it()}}const T=Rt;Rt=f;try{return c?c(e,3,[m]):e(m)}finally{Rt=T}}:h=qe,t&&r){const T=h,Q=r===!0?1/0:r;h=()=>tt(T(),Q)}const H=Io(),j=()=>{f.stop(),H&&H.active&&Os(H.effects,f)};if(i&&t){const T=t;t=(...Q)=>{const ie=T(...Q);return j(),ie}}let O=w?new Array(e.length).fill(vn):vn;const N=T=>{if(!(!(f.flags&1)||!f.dirty&&!T))if(t){const Q=f.run();if(T||r||I||(w?Q.some((ie,ee)=>We(ie,O[ee])):We(Q,O))){g&&g();const ie=Rt;Rt=f;try{const ee=[Q,O===vn?void 0:w&&O[0]===vn?[]:O,m];O=Q,c?c(t,3,ee):t(...ee)}finally{Rt=ie}}}else f.run()};return l&&l(N),f=new ei(h),f.scheduler=o?()=>o(N,!1):N,m=T=>nl(T,!1,f),g=f.onStop=()=>{const T=Sn.get(f);if(T){if(c)c(T,4);else for(const Q of T)Q();Sn.delete(f)}},t?s?N(!0):O=f.run():o?o(N.bind(null,!0),!0):f.run(),j.pause=f.pause.bind(f),j.resume=f.resume.bind(f),j.stop=j,j}function tt(e,t=1/0,n){if(t<=0||!$(e)||e.__v_skip||(n=n||new Map,(n.get(e)||0)>=t))return e;if(n.set(e,t),t--,he(e))tt(e.value,t,n);else if(L(e))for(let s=0;s<e.length;s++)tt(e[s],t,n);else if(st(e)||gt(e))e.forEach(s=>{tt(s,t,n)});else if(Jr(e)){for(const s in e)tt(e[s],t,n);for(const s of Object.getOwnPropertySymbols(e))Object.prototype.propertyIsEnumerable.call(e,s)&&tt(e[s],t,n)}return e}/**
+* @vue/runtime-core v3.5.42
+* (c) 2018-present Yuxi (Evan) You and Vue contributors
+* @license MIT
+**/function hn(e,t,n,s){try{return s?e(...s):e()}catch(r){Kn(r,t,n)}}function Ne(e,t,n,s){if(B(e)){const r=hn(e,t,n,s);return r&&$r(r)&&r.catch(i=>{Kn(i,t,n)}),r}if(L(e)){const r=[];for(let i=0;i<e.length;i++)r.push(Ne(e[i],t,n,s));return r}}function Kn(e,t,n,s=!0){const r=t?t.vnode:null,{errorHandler:i,throwUnhandledErrorInProduction:o}=t&&t.appContext.config||X;if(t){let l=t.parent;const c=t.proxy,a=`https://vuejs.org/error-reference/#runtime-${n}`;for(;l;){const f=l.ec;if(f){for(let h=0;h<f.length;h++)if(f[h](e,c,a)===!1)return}l=l.parent}if(i){rt(),hn(i,null,10,[e,c,a]),it();return}}rl(e,n,r,s,o)}function rl(e,t,n,s=!0,r=!1){if(r)throw e;console.error(e)}const me=[];let Ke=-1;const Vt=[];let ht=null,Nt=0;const _i=Promise.resolve();let Cn=null;function Bs(e){const t=Cn||_i;return e?t.then(this?e.bind(this):e):t}function il(e){let t=Ke+1,n=me.length;for(;t<n;){const s=t+n>>>1,r=me[s],i=on(r);i<e||i===e&&r.flags&2?t=s+1:n=s}return t}function Us(e){if(!(e.flags&1)){const t=on(e),n=me[me.length-1];!n||!(e.flags&2)&&t>=on(n)?me.push(e):me.splice(il(t),0,e),e.flags|=1,yi()}}function yi(){Cn||(Cn=_i.then(bi))}function ol(e){if(!L(e))ht&&e.id===-1?ht.splice(Nt+1,0,e):e.flags&1||(Vt.push(e),e.flags|=1);else for(let t=0;t<e.length;t++)Vt.push(e[t]);yi()}function sr(e,t,n=Ke+1){for(;n<me.length;n++){const s=me[n];if(s&&s.flags&2){if(e&&s.id!==e.uid)continue;me.splice(n,1),n--,s.flags&4&&(s.flags&=-2),s(),s.flags&4||(s.flags&=-2)}}}function vi(e){if(Vt.length){const t=[...new Set(Vt)].sort((n,s)=>on(n)-on(s));if(Vt.length=0,ht){for(let n=0;n<t.length;n++)ht.push(t[n]);return}for(ht=t,Nt=0;Nt<ht.length;Nt++){const n=ht[Nt];n.flags&4&&(n.flags&=-2),n.flags&8||n(),n.flags&=-2}ht=null,Nt=0}}const on=e=>e.id==null?e.flags&2?-1:1/0:e.id;function bi(e){try{for(Ke=0;Ke<me.length;Ke++){const t=me[Ke];t&&!(t.flags&8)&&(t.flags&4&&(t.flags&=-2),hn(t,t.i,t.i?15:14),t.flags&4||(t.flags&=-2))}}finally{for(;Ke<me.length;Ke++){const t=me[Ke];t&&(t.flags&=-2)}Ke=-1,me.length=0,vi(),Cn=null,(me.length||Vt.length)&&bi()}}let Ee=null,Ei=null;function On(e){const t=Ee;return Ee=e,Ei=e&&e.type.__scopeId||null,t}function ll(e,t=Ee,n){if(!t||e._n)return e;const s=(...r)=>{s._d&&In(-1);const i=On(t),o=Ct.length;let l;try{l=e(...r)}finally{for(let c=Ct.length;c>o;c--)$i();On(i),s._d&&In(1)}return l};return s._n=!0,s._c=!0,s._d=!0,s}function of(e,t){if(Ee===null)return e;const n=$n(Ee),s=e.dirs||(e.dirs=[]);for(let r=0;r<t.length;r++){let[i,o,l,c=X]=t[r];i&&(B(i)&&(i={mounted:i,updated:i}),i.deep&&tt(o),s.push({dir:i,instance:n,value:o,oldValue:void 0,arg:l,modifiers:c}))}return e}function bt(e,t,n,s){const r=e.dirs,i=t&&t.dirs;for(let o=0;o<r.length;o++){const l=r[o];i&&(l.oldValue=i[o].value);let c=l.dir[s];c&&(rt(),Ne(c,n,8,[e.el,l,e,t]),it())}}function Rn(e,t){if(de){let n=de.provides;const s=de.parent&&de.parent.provides;s===n&&(n=de.provides=Object.create(s)),n[e]=t}}function Pe(e,t,n=!1){const s=cc();if(s||jt){let r=jt?jt._context.provides:s?s.parent==null||s.ce?s.vnode.appContext&&s.vnode.appContext.provides:s.parent.provides:void 0;if(r&&e in r)return r[e];if(arguments.length>1)return n&&B(t)?t.call(s&&s.proxy):t}}const cl=Symbol.for("v-scx"),ul=()=>Pe(cl);function xn(e,t,n){return Ai(e,t,n)}function Ai(e,t,n=X){const{immediate:s,deep:r,flush:i,once:o}=n,l=fe({},n),c=t&&s||!t&&i!=="post";let a;if(un){if(i==="sync"){const m=ul();a=m.__watcherHandles||(m.__watcherHandles=[])}else if(!c){const m=()=>{};return m.stop=qe,m.resume=qe,m.pause=qe,m}}const f=de;l.call=(m,I,w)=>Ne(m,f,I,w);let h=!1;i==="post"?l.scheduler=m=>{ve(m,f&&f.suspense)}:i!=="sync"&&(h=!0,l.scheduler=(m,I)=>{I?m():Us(m)}),l.augmentJob=m=>{t&&(m.flags|=4),h&&(m.flags|=2,f&&(m.id=f.uid,m.i=f))};const g=sl(e,t,l);return un&&(a?a.push(g):c&&g()),g}function fl(e,t,n){const s=this.proxy,r=ne(e)?e.includes(".")?Ri(s,e):()=>s[e]:e.bind(s,s);let i;B(t)?i=t:(i=t.handler,n=t);const o=pn(this),l=Ai(r,i.bind(s),n);return o(),l}function Ri(e,t){const n=t.split(".");return()=>{let s=e;for(let r=0;r<n.length&&s;r++)s=s[n[r]];return s}}const al=Symbol("_vte"),Gn=e=>e.__isTeleport,ts=Symbol("_leaveCb");function dl(e){let t=e[0];if(e.length>1){for(const n of e)if(n.type!==lt){t=n;break}}return t}function xi(e){if(!Gs(e))return Gn(e.type)&&e.children?dl(e.children):e;if(e.component)return e.component.subTree;const{shapeFlag:t,children:n}=e;if(n){if(t&16)return n[0];if(t&32&&B(n.default))return n.default()}}function Ks(e,t){if(e.shapeFlag&6&&e.component){e.transition=t;const n=e.component.subTree;Ks(Gn(n.type)&&xi(n)||n,t)}else e.shapeFlag&128?(e.ssContent.transition=t.clone(e.ssContent),e.ssFallback.transition=t.clone(e.ssFallback)):e.transition=t}function wi(e,t){return B(e)?fe({name:e.name},t,{setup:e}):e}function Si(e){e.ids=[e.ids[0]+e.ids[2]+++"-",0,0]}function rr(e,t){let n;return!!((n=Object.getOwnPropertyDescriptor(e,t))&&!n.configurable)}const Pn=new WeakMap;function Zt(e,t,n,s,r=!1){if(L(e)){e.forEach((w,H)=>Zt(w,t&&(L(t)?t[H]:t),n,s,r));return}if(en(s)&&!r){s.shapeFlag&512&&s.type.__asyncResolved&&s.component.subTree.component&&Zt(e,t,n,s.component.subTree);return}const i=s.shapeFlag&4?$n(s.component):s.el,o=r?null:i,{i:l,r:c}=e,a=t&&t.r,f=l.refs===X?l.refs={}:l.refs,h=l.setupState,g=W(h),m=h===X?qr:w=>rr(f,w)?!1:q(g,w),I=(w,H)=>!(H&&rr(f,H));if(a!=null&&a!==c){if(ir(t),ne(a))f[a]=null,m(a)&&(h[a]=null);else if(he(a)){const w=t;I(a,w.k)&&(a.value=null),w.k&&(f[w.k]=null)}}if(B(c))hn(c,l,12,[o,f]);else{const w=ne(c),H=he(c);if(w||H){const j=()=>{if(e.f){const O=w?m(c)?h[c]:f[c]:I()||!e.k?c.value:f[e.k];if(r)L(O)&&Os(O,i);else if(L(O))O.includes(i)||O.push(i);else if(w)f[c]=[i],m(c)&&(h[c]=f[c]);else{const N=[i];I(c,e.k)&&(c.value=N),e.k&&(f[e.k]=N)}}else w?(f[c]=o,m(c)&&(h[c]=o)):H&&(I(c,e.k)&&(c.value=o),e.k&&(f[e.k]=o))};if(o){const O=()=>{j(),Pn.delete(e)};O.id=-1,Pn.set(e,O),ve(O,n)}else ir(e),j()}}}function ir(e){const t=Pn.get(e);t&&(t.flags|=8,Pn.delete(e))}Bn().requestIdleCallback;Bn().cancelIdleCallback;const en=e=>!!e.type.__asyncLoader,Gs=e=>e.type.__isKeepAlive;function hl(e,t){Ci(e,"a",t)}function pl(e,t){Ci(e,"da",t)}function Ci(e,t,n=de){const s=e.__wdc||(e.__wdc=()=>{let r=n;for(;r;){if(r.isDeactivated)return;r=r.parent}return e()});if(kn(t,s,n),n){let r=n.parent;for(;r&&r.parent;)Gs(r.parent.vnode)&&gl(s,t,n,r),r=r.parent}}function gl(e,t,n,s){const r=kn(t,e,s,!0);Oi(()=>{Os(s[t],r)},n)}function kn(e,t,n=de,s=!1){if(n){const r=n[e]||(n[e]=[]),i=t.__weh||(t.__weh=(...o)=>{rt();const l=pn(n),c=Ne(t,n,e,o);return l(),it(),c});return s?r.unshift(i):r.push(i),i}}const ct=e=>(t,n=de)=>{(!un||e==="sp")&&kn(e,(...s)=>t(...s),n)},ml=ct("bm"),_l=ct("m"),yl=ct("bu"),vl=ct("u"),bl=ct("bum"),Oi=ct("um"),El=ct("sp"),Al=ct("rtg"),Rl=ct("rtc");function xl(e,t=de){kn("ec",e,t)}const wl="components";function Sl(e,t){return Ol(wl,e,!0,t)||e}const Cl=Symbol.for("v-ndc");function Ol(e,t,n=!0,s=!1){const r=Ee||de;if(r){const i=r.type;{const l=hc(i,!1);if(l&&(l===t||l===_e(t)||l===Fn(_e(t))))return i}const o=or(r[e]||i[e],t)||or(r.appContext[e],t);return!o&&s?i:o}}function or(e,t){return e&&(e[t]||e[_e(t)]||e[Fn(_e(t))])}function lf(e,t,n,s){let r;const i=n,o=L(e);if(o||ne(e)){const l=o&&St(e);let c=!1,a=!1;l&&(c=!Se(e),a=ot(e),e=Un(e)),r=new Array(e.length);for(let f=0,h=e.length;f<h;f++)r[f]=t(c?a?Ft(Ie(e[f])):Ie(e[f]):e[f],f,void 0,i)}else if(typeof e=="number"){r=new Array(e);for(let l=0;l<e;l++)r[l]=t(l+1,l,void 0,i)}else if($(e))if(e[Symbol.iterator])r=Array.from(e,(l,c)=>t(l,c,void 0,i));else{const l=Object.keys(e);r=new Array(l.length);for(let c=0,a=l.length;c<a;c++){const f=l[c];r[c]=t(e[f],f,c,i)}}else r=[];return r}const ys=e=>e?Xi(e)?$n(e):ys(e.parent):null,tn=fe(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=>ys(e.parent),$root:e=>ys(e.root),$host:e=>e.ce,$emit:e=>e.emit,$options:e=>Ti(e),$forceUpdate:e=>e.f||(e.f=()=>{Us(e.update)}),$nextTick:e=>e.n||(e.n=Bs.bind(e.proxy)),$watch:e=>fl.bind(e)}),ns=(e,t)=>e!==X&&!e.__isScriptSetup&&q(e,t),Pl={get({_:e},t){if(t==="__v_skip")return!0;const{ctx:n,setupState:s,data:r,props:i,accessCache:o,type:l,appContext:c}=e;if(t[0]!=="$"){const g=o[t];if(g!==void 0)switch(g){case 1:return s[t];case 2:return r[t];case 4:return n[t];case 3:return i[t]}else{if(ns(s,t))return o[t]=1,s[t];if(r!==X&&q(r,t))return o[t]=2,r[t];if(q(i,t))return o[t]=3,i[t];if(n!==X&&q(n,t))return o[t]=4,n[t];vs&&(o[t]=0)}}const a=tn[t];let f,h;if(a)return t==="$attrs"&&ae(e.attrs,"get",""),a(e);if((f=l.__cssModules)&&(f=f[t]))return f;if(n!==X&&q(n,t))return o[t]=4,n[t];if(h=c.config.globalProperties,q(h,t))return h[t]},set({_:e},t,n){const{data:s,setupState:r,ctx:i}=e;return ns(r,t)?(r[t]=n,!0):s!==X&&q(s,t)?(s[t]=n,!0):q(e.props,t)||t[0]==="$"&&t.slice(1)in e?!1:(i[t]=n,!0)},has({_:{data:e,setupState:t,accessCache:n,ctx:s,appContext:r,props:i,type:o}},l){let c;return!!(n[l]||e!==X&&l[0]!=="$"&&q(e,l)||ns(t,l)||q(i,l)||q(s,l)||q(tn,l)||q(r.config.globalProperties,l)||(c=o.__cssModules)&&c[l])},defineProperty(e,t,n){return n.get!=null?e._.accessCache[t]=0:q(n,"value")&&this.set(e,t,n.value,null),Reflect.defineProperty(e,t,n)}};function lr(e){return L(e)?e.reduce((t,n)=>(t[n]=null,t),{}):e}let vs=!0;function Tl(e){const t=Ti(e),n=e.proxy,s=e.ctx;vs=!1,t.beforeCreate&&cr(t.beforeCreate,e,"bc");const{data:r,computed:i,methods:o,watch:l,provide:c,inject:a,created:f,beforeMount:h,mounted:g,beforeUpdate:m,updated:I,activated:w,deactivated:H,beforeDestroy:j,beforeUnmount:O,destroyed:N,unmounted:T,render:Q,renderTracked:ie,renderTriggered:ee,errorCaptured:Me,serverPrefetch:ut,expose:Le,inheritAttrs:ft,components:yt,directives:Ve,filters:Gt}=t;if(a&&Il(a,s,null),o)for(const z in o){const G=o[z];B(G)&&(s[z]=G.bind(n))}if(r){const z=r.call(n,n);$(z)&&(e.data=dn(z))}if(vs=!0,i)for(const z in i){const G=i[z],ze=B(G)?G.bind(n,n):B(G.get)?G.get.bind(n,n):qe,at=!B(G)&&B(G.set)?G.set.bind(n):qe,je=Ce({get:ze,set:at});Object.defineProperty(s,z,{enumerable:!0,configurable:!0,get:()=>je.value,set:ye=>je.value=ye})}if(l)for(const z in l)Pi(l[z],s,n,z);if(c){const z=B(c)?c.call(n):c;Reflect.ownKeys(z).forEach(G=>{Rn(G,z[G])})}f&&cr(f,e,"c");function le(z,G){L(G)?G.forEach(ze=>z(ze.bind(n))):G&&z(G.bind(n))}if(le(ml,h),le(_l,g),le(yl,m),le(vl,I),le(hl,w),le(pl,H),le(xl,Me),le(Rl,ie),le(Al,ee),le(bl,O),le(Oi,T),le(El,ut),L(Le))if(Le.length){const z=e.exposed||(e.exposed={});Le.forEach(G=>{Object.defineProperty(z,G,{get:()=>n[G],set:ze=>n[G]=ze,enumerable:!0})})}else e.exposed||(e.exposed={});Q&&e.render===qe&&(e.render=Q),ft!=null&&(e.inheritAttrs=ft),yt&&(e.components=yt),Ve&&(e.directives=Ve),ut&&Si(e)}function Il(e,t,n=qe){L(e)&&(e=bs(e));for(const s in e){const r=e[s];let i;$(r)?"default"in r?i=Pe(r.from||s,r.default,!0):i=Pe(r.from||s):i=Pe(r),he(i)?Object.defineProperty(t,s,{enumerable:!0,configurable:!0,get:()=>i.value,set:o=>i.value=o}):t[s]=i}}function cr(e,t,n){Ne(L(e)?e.map(s=>s.bind(t.proxy)):e.bind(t.proxy),t,n)}function Pi(e,t,n,s){let r=s.includes(".")?Ri(n,s):()=>n[s];if(ne(e)){const i=t[e];B(i)&&xn(r,i)}else if(B(e))xn(r,e.bind(n));else if($(e))if(L(e))e.forEach(i=>Pi(i,t,n,s));else{const i=B(e.handler)?e.handler.bind(n):t[e.handler];B(i)&&xn(r,i,e)}}function Ti(e){const t=e.type,{mixins:n,extends:s}=t,{mixins:r,optionsCache:i,config:{optionMergeStrategies:o}}=e.appContext,l=i.get(t);let c;return l?c=l:!r.length&&!n&&!s?c=t:(c={},r.length&&r.forEach(a=>Tn(c,a,o,!0)),Tn(c,t,o)),$(t)&&i.set(t,c),c}function Tn(e,t,n,s=!1){const{mixins:r,extends:i}=t;i&&Tn(e,i,n,!0),r&&r.forEach(o=>Tn(e,o,n,!0));for(const o in t)if(!(s&&o==="expose")){const l=Nl[o]||n&&n[o];e[o]=l?l(e[o],t[o]):t[o]}return e}const Nl={data:ur,props:fr,emits:fr,methods:zt,computed:zt,beforeCreate:pe,created:pe,beforeMount:pe,mounted:pe,beforeUpdate:pe,updated:pe,beforeDestroy:pe,beforeUnmount:pe,destroyed:pe,unmounted:pe,activated:pe,deactivated:pe,errorCaptured:pe,serverPrefetch:pe,components:zt,directives:zt,watch:Ml,provide:ur,inject:Dl};function ur(e,t){return t?e?function(){return fe(B(e)?e.call(this,this):e,B(t)?t.call(this,this):t)}:t:e}function Dl(e,t){return zt(bs(e),bs(t))}function bs(e){if(L(e)){const t={};for(let n=0;n<e.length;n++)t[e[n]]=e[n];return t}return e}function pe(e,t){return e?[...new Set([].concat(e,t))]:t}function zt(e,t){return e?fe(Object.create(null),e,t):t}function fr(e,t){return e?L(e)&&L(t)?[...new Set([...e,...t])]:fe(Object.create(null),lr(e),lr(t??{})):t}function Ml(e,t){if(!e)return t;if(!t)return e;const n=fe(Object.create(null),e);for(const s in t)n[s]=pe(e[s],t[s]);return n}function Ii(){return{app:null,config:{isNativeTag:qr,performance:!1,globalProperties:{},optionMergeStrategies:{},errorHandler:void 0,warnHandler:void 0,compilerOptions:{}},mixins:[],components:{},directives:{},provides:Object.create(null),optionsCache:new WeakMap,propsCache:new WeakMap,emitsCache:new WeakMap}}let Ll=0;function Vl(e,t){return function(s,r=null){B(s)||(s=fe({},s)),r!=null&&!$(r)&&(r=null);const i=Ii(),o=new WeakSet,l=[];let c=!1;const a=i.app={_uid:Ll++,_component:s,_props:r,_container:null,_context:i,_instance:null,version:gc,get config(){return i.config},set config(f){},use(f,...h){return o.has(f)||(f&&B(f.install)?(o.add(f),f.install(a,...h)):B(f)&&(o.add(f),f(a,...h))),a},mixin(f){return i.mixins.includes(f)||i.mixins.push(f),a},component(f,h){return h?(i.components[f]=h,a):i.components[f]},directive(f,h){return h?(i.directives[f]=h,a):i.directives[f]},mount(f,h,g){if(!c){const m=a._ceVNode||Re(s,r);return m.appContext=i,g===!0?g="svg":g===!1&&(g=void 0),e(m,f,g),c=!0,a._container=f,f.__vue_app__=a,$n(m.component)}},onUnmount(f){l.push(f)},unmount(){c&&(Ne(l,a._instance,16),e(null,a._container),delete a._container.__vue_app__)},provide(f,h){return i.provides[f]=h,a},runWithContext(f){const h=jt;jt=a;try{return f()}finally{jt=h}}};return a}}let jt=null;const jl=(e,t)=>t==="modelValue"||t==="model-value"?e.modelModifiers:e[`${t}Modifiers`]||e[`${_e(t)}Modifiers`]||e[`${_t(t)}Modifiers`];function Fl(e,t,...n){if(e.isUnmounted)return;const s=e.vnode.props||X;let r=n;const i=t.startsWith("update:"),o=i&&jl(s,t.slice(7));o&&(o.trim&&(r=n.map(f=>ne(f)?f.trim():f)),o.number&&(r=r.map(Hn)));let l,c=s[l=Qn(t)]||s[l=Qn(_e(t))];!c&&i&&(c=s[l=Qn(_t(t))]),c&&Ne(c,e,6,r);const a=s[l+"Once"];if(a){if(!e.emitted)e.emitted={};else if(e.emitted[l])return;e.emitted[l]=!0,Ne(a,e,6,r)}}const Hl=new WeakMap;function Ni(e,t,n=!1){const s=n?Hl:t.emitsCache,r=s.get(e);if(r!==void 0)return r;const i=e.emits;let o={},l=!1;if(!B(e)){const c=a=>{const f=Ni(a,t,!0);f&&(l=!0,fe(o,f))};!n&&t.mixins.length&&t.mixins.forEach(c),e.extends&&c(e.extends),e.mixins&&e.mixins.forEach(c)}return!i&&!l?($(e)&&s.set(e,null),null):(L(i)?i.forEach(c=>o[c]=null):fe(o,i),$(e)&&s.set(e,o),o)}function Wn(e,t){return!e||!Ln(t)?!1:(t=t.slice(2),t=t==="Once"?t:t.replace(/Once$/,""),q(e,t[0].toLowerCase()+t.slice(1))||q(e,_t(t))||q(e,t))}function ar(e){const{type:t,vnode:n,proxy:s,withProxy:r,propsOptions:[i],slots:o,attrs:l,emit:c,render:a,renderCache:f,props:h,data:g,setupState:m,ctx:I,inheritAttrs:w}=e,H=On(e);let j,O;try{if(n.shapeFlag&4){const T=r||s,Q=T;j=ke(a.call(Q,T,f,h,m,g,I)),O=l}else{const T=t;j=ke(T.length>1?T(h,{attrs:l,slots:o,emit:c}):T(h,null)),O=t.props?l:Bl(l)}}catch(T){Ct.length=0,Kn(T,e,1),j=Re(lt)}let N=j;if(O&&w!==!1){const T=Object.keys(O),{shapeFlag:Q}=N;T.length&&Q&7&&(i&&T.some(Vn)&&(O=Ul(O,i)),N=Ht(N,O,!1,!0))}if(n.dirs&&(N=Ht(N,null,!1,!0),N.dirs=N.dirs?N.dirs.concat(n.dirs):n.dirs),n.transition){const T=Gn(N.type)&&xi(N)||N;Ks(T,n.transition)}return j=N,On(H),j}const Bl=e=>{let t;for(const n in e)(n==="class"||n==="style"||Ln(n))&&((t||(t={}))[n]=e[n]);return t},Ul=(e,t)=>{const n={};for(const s in e)(!Vn(s)||!(s.slice(9)in t))&&(n[s]=e[s]);return n};function Kl(e,t,n){const{props:s,children:r,component:i}=e,{props:o,children:l,patchFlag:c}=t,a=i.emitsOptions;if(t.dirs||t.transition)return!0;if(n&&c>=0){if(c&1024)return!0;if(c&16)return s?dr(s,o,a):!!o;if(c&8){const f=t.dynamicProps;for(let h=0;h<f.length;h++){const g=f[h];if(Di(o,s,g)&&!Wn(a,g))return!0}}}else return(r||l)&&(!l||!l.$stable)?!0:s===o?!1:s?o?dr(s,o,a):!0:!!o;return!1}function dr(e,t,n){const s=Object.keys(t);if(s.length!==Object.keys(e).length)return!0;for(let r=0;r<s.length;r++){const i=s[r];if(Di(t,e,i)&&!Wn(n,i))return!0}return!1}function Di(e,t,n){const s=e[n],r=t[n];return n==="style"&&$(s)&&$(r)?!Te(s,r):s!==r}function Gl({vnode:e,parent:t,suspense:n},s){for(;t;){const r=t.subTree;if(r.suspense&&r.suspense.activeBranch===e&&(r.suspense.vnode.el=r.el=s,e=r),r===e)(e=t.vnode).el=s,t=t.parent;else break}n&&n.activeBranch===e&&(n.vnode.el=s)}const Mi={},Li=()=>Object.create(Mi),Vi=e=>Object.getPrototypeOf(e)===Mi;function kl(e,t,n,s=!1){const r={},i=Li();e.propsDefaults=Object.create(null),ji(e,t,r,i);for(const o in e.propsOptions[0])o in r||(r[o]=void 0);n?e.props=s?r:pi(r):e.type.props?e.props=r:e.props=i,e.attrs=i}function Wl(e,t,n,s){const{props:r,attrs:i,vnode:{patchFlag:o}}=e,l=W(r),[c]=e.propsOptions;let a=!1;if((s||o>0)&&!(o&16)){if(o&8){const f=e.vnode.dynamicProps;for(let h=0;h<f.length;h++){let g=f[h];if(Wn(e.emitsOptions,g))continue;const m=t[g];if(c)if(q(i,g))m!==i[g]&&(i[g]=m,a=!0);else{const I=_e(g);r[I]=Es(c,l,I,m,e,!1)}else m!==i[g]&&(i[g]=m,a=!0)}}}else{ji(e,t,r,i)&&(a=!0);let f;for(const h in l)(!t||!q(t,h)&&((f=_t(h))===h||!q(t,f)))&&(c?n&&(n[h]!==void 0||n[f]!==void 0)&&(r[h]=Es(c,l,h,void 0,e,!0)):delete r[h]);if(i!==l)for(const h in i)(!t||!q(t,h))&&(delete i[h],a=!0)}a&&et(e.attrs,"set","")}function ji(e,t,n,s){const[r,i]=e.propsOptions;let o=!1,l;if(t)for(let c in t){if(Qt(c))continue;const a=t[c];let f;r&&q(r,f=_e(c))?!i||!i.includes(f)?n[f]=a:(l||(l={}))[f]=a:Wn(e.emitsOptions,c)||(!(c in s)||a!==s[c])&&(s[c]=a,o=!0)}if(i){const c=W(n),a=l||X;for(let f=0;f<i.length;f++){const h=i[f];n[h]=Es(r,c,h,a[h],e,!q(a,h))}}return o}function Es(e,t,n,s,r,i){const o=e[n];if(o!=null){const l=q(o,"default");if(l&&s===void 0){const c=o.default;if(o.type!==Function&&!o.skipFactory&&B(c)){const{propsDefaults:a}=r;if(n in a)s=a[n];else{const f=pn(r);s=a[n]=c.call(null,t),f()}}else s=c;r.ce&&r.ce._setProp(n,s)}o[0]&&(i&&!l?s=!1:o[1]&&(s===""||s===_t(n))&&(s=!0))}return s}const ql=new WeakMap;function Fi(e,t,n=!1){const s=n?ql:t.propsCache,r=s.get(e);if(r)return r;const i=e.props,o={},l=[];let c=!1;if(!B(e)){const f=h=>{c=!0;const[g,m]=Fi(h,t,!0);fe(o,g),m&&l.push(...m)};!n&&t.mixins.length&&t.mixins.forEach(f),e.extends&&f(e.extends),e.mixins&&e.mixins.forEach(f)}if(!i&&!c)return $(e)&&s.set(e,Mt),Mt;if(L(i))for(let f=0;f<i.length;f++){const h=_e(i[f]);hr(h)&&(o[h]=X)}else if(i)for(const f in i){const h=_e(f);if(hr(h)){const g=i[f],m=o[h]=L(g)||B(g)?{type:g}:fe({},g),I=m.type;let w=!1,H=!0;if(L(I))for(let j=0;j<I.length;++j){const O=I[j],N=B(O)&&O.name;if(N==="Boolean"){w=!0;break}else N==="String"&&(H=!1)}else w=B(I)&&I.name==="Boolean";m[0]=w,m[1]=H,(w||q(m,"default"))&&l.push(h)}}const a=[o,l];return $(e)&&s.set(e,a),a}function hr(e){return e[0]!=="$"&&!Qt(e)}const ks=e=>e==="_"||e==="_ctx"||e==="$stable",Ws=e=>L(e)?e.map(ke):[ke(e)],$l=(e,t,n)=>{if(t._n)return t;const s=ll((...r)=>Ws(t(...r)),n);return s._c=!1,s},Hi=(e,t,n)=>{const s=e._ctx;for(const r in e){if(ks(r))continue;const i=e[r];if(B(i))t[r]=$l(r,i,s);else if(i!=null){const o=Ws(i);t[r]=()=>o}}},Bi=(e,t)=>{const n=Ws(t);e.slots.default=()=>n},Ui=(e,t,n)=>{for(const s in t)(n||!ks(s))&&(e[s]=t[s])},zl=(e,t,n)=>{const s=e.slots=Li();if(e.vnode.shapeFlag&32){const r=t._;r?(Ui(s,t,n),n&&Qr(s,"_",r,!0)):Hi(t,s)}else t&&Bi(e,t)},Jl=(e,t,n)=>{const{vnode:s,slots:r}=e;let i=!0,o=X;if(s.shapeFlag&32){const l=t._;l?n&&l===1?i=!1:Ui(r,t,n):(i=!t.$stable,Hi(t,r)),o=t}else t&&(Bi(e,t),o={default:1});if(i)for(const l in r)!ks(l)&&o[l]==null&&delete r[l]},ve=ec;function Ql(e){return Yl(e)}function Yl(e,t){const n=Bn();n.__VUE__=!0;const{insert:s,remove:r,patchProp:i,createElement:o,createText:l,createComment:c,setText:a,setElementText:f,parentNode:h,nextSibling:g,setScopeId:m=qe,insertStaticContent:I}=e,w=(u,d,p,y=null,b=null,_=null,x=void 0,R=null,A=!!d.dynamicChildren)=>{if(u===d)return;u&&!qt(u,d)&&(y=v(u),ye(u,b,_,!0),u=null),d.patchFlag===-2&&(A=!1,d.dynamicChildren=null);const{type:E,ref:V,shapeFlag:C}=d;switch(E){case qn:H(u,d,p,y);break;case lt:j(u,d,p,y);break;case rs:u==null&&O(d,p,y,x);break;case Xe:yt(u,d,p,y,b,_,x,R,A);break;default:C&1?Q(u,d,p,y,b,_,x,R,A):C&6?Ve(u,d,p,y,b,_,x,R,A):(C&64||C&128)&&E.process(u,d,p,y,b,_,x,R,A,D)}V!=null&&b?Zt(V,u&&u.ref,_,d||u,!d):V==null&&u&&u.ref!=null&&Zt(u.ref,null,_,u,!0)},H=(u,d,p,y)=>{if(u==null)s(d.el=l(d.children),p,y);else{const b=d.el=u.el;d.children!==u.children&&a(b,d.children)}},j=(u,d,p,y)=>{u==null?s(d.el=c(d.children||""),p,y):d.el=u.el},O=(u,d,p,y)=>{[u.el,u.anchor]=I(u.children,d,p,y,u.el,u.anchor)},N=({el:u,anchor:d},p,y)=>{let b;for(;u&&u!==d;)b=g(u),s(u,p,y),u=b;s(d,p,y)},T=({el:u,anchor:d})=>{let p;for(;u&&u!==d;)p=g(u),r(u),u=p;r(d)},Q=(u,d,p,y,b,_,x,R,A)=>{if(d.type==="svg"?x="svg":d.type==="math"&&(x="mathml"),u==null)ie(d,p,y,b,_,x,R,A);else{const E=u.el&&u.el._isVueCE?u.el:null;try{E&&E._beginPatch(),ut(u,d,b,_,x,R,A)}finally{E&&E._endPatch()}}},ie=(u,d,p,y,b,_,x,R)=>{let A,E;const{props:V,shapeFlag:C,transition:M,dirs:F}=u;if(A=u.el=o(u.type,_,V&&V.is,V),C&8?f(A,u.children):C&16&&Me(u.children,A,null,y,b,ss(u,_),x,R),F&&bt(u,null,y,"created"),ee(A,u,u.scopeId,x,y),V){for(const Y in V)Y!=="value"&&!Qt(Y)&&i(A,Y,null,V[Y],_,y);"value"in V&&i(A,"value",null,V.value,_),(E=V.onVnodeBeforeMount)&&Ue(E,y,u)}F&&bt(u,null,y,"beforeMount");const K=Xl(b,M);K&&M.beforeEnter(A),s(A,d,p),((E=V&&V.onVnodeMounted)||K||F)&&ve(()=>{try{E&&Ue(E,y,u),K&&M.enter(A),F&&bt(u,null,y,"mounted")}finally{}},b)},ee=(u,d,p,y,b)=>{if(p&&m(u,p),y)for(let _=0;_<y.length;_++)m(u,y[_]);if(b){let _=b.subTree;if(d===_||Wi(_.type)&&(_.ssContent===d||_.ssFallback===d)){const x=b.vnode;ee(u,x,x.scopeId,x.slotScopeIds,b.parent)}}},Me=(u,d,p,y,b,_,x,R,A=0)=>{for(let E=A;E<u.length;E++){const V=u[E]=R?Ze(u[E]):ke(u[E]);w(null,V,d,p,y,b,_,x,R)}},ut=(u,d,p,y,b,_,x)=>{const R=d.el=u.el;let{patchFlag:A,dynamicChildren:E,dirs:V}=d;A|=u.patchFlag&16;const C=u.props||X,M=d.props||X;let F;if(p&&Et(p,!1),(F=M.onVnodeBeforeUpdate)&&Ue(F,p,d,u),V&&bt(d,u,p,"beforeUpdate"),p&&Et(p,!0),E&&(!u.dynamicChildren||u.dynamicChildren.length!==E.length)&&(A=0,x=!1,E=null),(C.innerHTML&&M.innerHTML==null||C.textContent&&M.textContent==null)&&f(R,""),E?Le(u.dynamicChildren,E,R,p,y,ss(d,b),_):x||G(u,d,R,null,p,y,ss(d,b),_,!1),A>0){if(A&16)ft(R,C,M,p,b);else if(A&2&&C.class!==M.class&&i(R,"class",null,M.class,b),A&4&&i(R,"style",C.style,M.style,b),A&8){const K=d.dynamicProps;for(let Y=0;Y<K.length;Y++){const J=K[Y],se=C[J],ce=M[J];(ce!==se||J==="value")&&i(R,J,se,ce,b,p)}}A&1&&u.children!==d.children&&f(R,d.children)}else!x&&E==null&&ft(R,C,M,p,b);((F=M.onVnodeUpdated)||V)&&ve(()=>{F&&Ue(F,p,d,u),V&&bt(d,u,p,"updated")},y)},Le=(u,d,p,y,b,_,x)=>{for(let R=0;R<d.length;R++){const A=u[R],E=d[R],V=A.el&&(A.type===Xe||!qt(A,E)||A.shapeFlag&198)?h(A.el):p;w(A,E,V,null,y,b,_,x,!0)}},ft=(u,d,p,y,b)=>{if(d!==p){if(d!==X)for(const _ in d)!Qt(_)&&!(_ in p)&&i(u,_,d[_],null,b,y);for(const _ in p){if(Qt(_))continue;const x=p[_],R=d[_];x!==R&&_!=="value"&&i(u,_,R,x,b,y)}"value"in p&&i(u,"value",d.value,p.value,b)}},yt=(u,d,p,y,b,_,x,R,A)=>{const E=d.el=u?u.el:l(""),V=d.anchor=u?u.anchor:l("");let{patchFlag:C,dynamicChildren:M,slotScopeIds:F}=d;F&&(R=R?R.concat(F):F),u==null?(s(E,p,y),s(V,p,y),Me(d.children||[],p,V,b,_,x,R,A)):C>0&&C&64&&M&&u.dynamicChildren&&u.dynamicChildren.length===M.length?(Le(u.dynamicChildren,M,p,b,_,x,R),(d.key!=null||b&&d===b.subTree)&&Ki(u,d,!0)):G(u,d,p,V,b,_,x,R,A)},Ve=(u,d,p,y,b,_,x,R,A)=>{d.slotScopeIds=R,u==null?d.shapeFlag&512?b.ctx.activate(d,p,y,x,A):Gt(d,p,y,b,_,x,A):Ot(u,d,A)},Gt=(u,d,p,y,b,_,x)=>{const R=u.component=lc(u,y,b);if(Gs(u)&&(R.ctx.renderer=D),uc(R,!1,x),R.asyncDep){if(b&&b.registerDep(R,le,x),!u.el){const A=R.subTree=Re(lt);j(null,A,d,p),u.placeholder=A.el}}else le(R,u,d,p,b,_,x)},Ot=(u,d,p)=>{const y=d.component=u.component;if(Kl(u,d,p))if(y.asyncDep&&!y.asyncResolved){z(y,d,p);return}else y.next=d,y.update();else d.el=u.el,y.vnode=d},le=(u,d,p,y,b,_,x)=>{const R=()=>{if(u.isMounted){let{next:C,bu:M,u:F,parent:K,vnode:Y}=u;{const He=Gi(u);if(He){C&&(C.el=Y.el,z(u,C,x)),He.asyncDep.then(()=>{ve(()=>{u.isUnmounted||E()},b)});return}}let J=C,se;Et(u,!1),C?(C.el=Y.el,z(u,C,x)):C=Y,M&&An(M),(se=C.props&&C.props.onVnodeBeforeUpdate)&&Ue(se,K,C,Y),Et(u,!0);const ce=ar(u),Fe=u.subTree;u.subTree=ce,w(Fe,ce,h(Fe.el),v(Fe),u,b,_),C.el=ce.el,J===null&&Gl(u,ce.el),F&&ve(F,b),(se=C.props&&C.props.onVnodeUpdated)&&ve(()=>Ue(se,K,C,Y),b)}else{let C;const{el:M,props:F}=d,{bm:K,m:Y,parent:J,root:se,type:ce}=u,Fe=en(d);Et(u,!1),K&&An(K),!Fe&&(C=F&&F.onVnodeBeforeMount)&&Ue(C,J,d),Et(u,!0);{se.ce&&se.ce._hasShadowRoot()&&se.ce._injectChildStyle(ce,u.parent?u.parent.type:void 0);const He=u.subTree=ar(u);w(null,He,p,y,u,b,_),d.el=He.el}if(Y&&ve(Y,b),!Fe&&(C=F&&F.onVnodeMounted)){const He=d;ve(()=>Ue(C,J,He),b)}(d.shapeFlag&256||J&&en(J.vnode)&&J.vnode.shapeFlag&256)&&u.a&&ve(u.a,b),u.isMounted=!0,d=p=y=null}};u.scope.on();const A=u.effect=new ei(R);u.scope.off();const E=u.update=A.run.bind(A),V=u.job=A.runIfDirty.bind(A);V.i=u,V.id=u.uid,A.scheduler=()=>Us(V),Et(u,!0),E()},z=(u,d,p)=>{d.component=u;const y=u.vnode.props;u.vnode=d,u.next=null,Wl(u,d.props,y,p),Jl(u,d.children,p),rt(),sr(u),it()},G=(u,d,p,y,b,_,x,R,A=!1)=>{const E=u&&u.children,V=u?u.shapeFlag:0,C=d.children,{patchFlag:M,shapeFlag:F}=d;if(M>0){if(M&128){at(E,C,p,y,b,_,x,R,A);return}else if(M&256){ze(E,C,p,y,b,_,x,R,A);return}}F&8?(V&16&&we(E,b,_),C!==E&&f(p,C)):V&16?F&16?at(E,C,p,y,b,_,x,R,A):we(E,b,_,!0):(V&8&&f(p,""),F&16&&Me(C,p,y,b,_,x,R,A))},ze=(u,d,p,y,b,_,x,R,A)=>{u=u||Mt,d=d||Mt;const E=u.length,V=d.length,C=Math.min(E,V);let M;for(M=0;M<C;M++){const F=d[M]=A?Ze(d[M]):ke(d[M]);w(u[M],F,p,null,b,_,x,R,A)}E>V?we(u,b,_,!0,!1,C):Me(d,p,y,b,_,x,R,A,C)},at=(u,d,p,y,b,_,x,R,A)=>{let E=0;const V=d.length;let C=u.length-1,M=V-1;for(;E<=C&&E<=M;){const F=u[E],K=d[E]=A?Ze(d[E]):ke(d[E]);if(qt(F,K))w(F,K,p,null,b,_,x,R,A);else break;E++}for(;E<=C&&E<=M;){const F=u[C],K=d[M]=A?Ze(d[M]):ke(d[M]);if(qt(F,K))w(F,K,p,null,b,_,x,R,A);else break;C--,M--}if(E>C){if(E<=M){const F=M+1,K=F<V?d[F].el:y;for(;E<=M;)w(null,d[E]=A?Ze(d[E]):ke(d[E]),p,K,b,_,x,R,A),E++}}else if(E>M)for(;E<=C;)ye(u[E],b,_,!0),E++;else{const F=E,K=E,Y=new Map;for(E=K;E<=M;E++){const be=d[E]=A?Ze(d[E]):ke(d[E]);be.key!=null&&Y.set(be.key,E)}let J,se=0;const ce=M-K+1;let Fe=!1,He=0;const kt=new Array(ce);for(E=0;E<ce;E++)kt[E]=0;for(E=F;E<=C;E++){const be=u[E];if(se>=ce){ye(be,b,_,!0);continue}let Be;if(be.key!=null)Be=Y.get(be.key);else for(J=K;J<=M;J++)if(kt[J-K]===0&&qt(be,d[J])){Be=J;break}Be===void 0?ye(be,b,_,!0):(kt[Be-K]=E+1,Be>=He?He=Be:Fe=!0,w(be,d[Be],p,null,b,_,x,R,A),se++)}const zs=Fe?Zl(kt):Mt;for(J=zs.length-1,E=ce-1;E>=0;E--){const be=K+E,Be=d[be],Js=d[be+1],Qs=be+1<V?Js.el||ki(Js):y;kt[E]===0?w(null,Be,p,Qs,b,_,x,R,A):Fe&&(J<0||E!==zs[J]?je(Be,p,Qs,2):J--)}}},je=(u,d,p,y,b=null)=>{const{el:_,type:x,transition:R,children:A,shapeFlag:E}=u;if(E&6){je(u.component.subTree,d,p,y);return}if(E&128){u.suspense.move(d,p,y);return}if(E&64){x.move(u,d,p,D);return}if(x===Xe){s(_,d,p);for(let C=0;C<A.length;C++)je(A[C],d,p,y);s(u.anchor,d,p);return}if(x===rs){N(u,d,p);return}if(y!==2&&E&1&&R)if(y===0)R.persisted&&!_[ts]?s(_,d,p):(R.beforeEnter(_),s(_,d,p),ve(()=>R.enter(_),b));else{const{leave:C,delayLeave:M,afterLeave:F}=R,K=()=>{u.ctx.isUnmounted?r(_):s(_,d,p)},Y=()=>{const J=_._isLeaving||!!_[ts];_._isLeaving&&_[ts](!0),R.persisted&&!J?K():C(_,()=>{K(),F&&F()})};M?M(_,K,Y):Y()}else s(_,d,p)},ye=(u,d,p,y=!1,b=!1)=>{const{type:_,props:x,ref:R,children:A,dynamicChildren:E,shapeFlag:V,patchFlag:C,dirs:M,cacheIndex:F,memo:K}=u;if(C===-2&&(b=!1),R!=null&&(rt(),Zt(R,null,p,u,!0),it()),F!=null&&(d.renderCache[F]=void 0),V&256){d.ctx.deactivate(u);return}const Y=V&1&&M,J=!en(u);let se;if(J&&(se=x&&x.onVnodeBeforeUnmount)&&Ue(se,d,u),V&6)vt(u.component,p,y);else{if(V&128){u.suspense.unmount(p,y);return}Y&&bt(u,null,d,"beforeUnmount"),V&64?u.type.remove(u,d,p,D,y):E&&!E.hasOnce&&(_!==Xe||C>0&&C&64)?we(E,d,p,!1,!0):(_===Xe&&C&384||!b&&V&16)&&we(A,d,p),y&&Pt(u)}const ce=K!=null&&F==null;(J&&(se=x&&x.onVnodeUnmounted)||Y||ce)&&ve(()=>{se&&Ue(se,d,u),Y&&bt(u,null,d,"unmounted"),ce&&(u.el=null)},p)},Pt=u=>{const{type:d,el:p,anchor:y,transition:b}=u;if(d===Xe){Tt(p,y);return}if(d===rs){T(u);return}const _=()=>{r(p),b&&!b.persisted&&b.afterLeave&&b.afterLeave()};if(u.shapeFlag&1&&b&&!b.persisted){const{leave:x,delayLeave:R}=b,A=()=>x(p,_);R?R(u.el,_,A):A()}else _()},Tt=(u,d)=>{let p;for(;u!==d;)p=g(u),r(u),u=p;r(d)},vt=(u,d,p)=>{const{bum:y,scope:b,job:_,subTree:x,um:R,m:A,a:E}=u;pr(A),pr(E),y&&An(y),b.stop(),_&&(_.flags|=8,ye(x,u,d,p)),R&&ve(R,d),ve(()=>{u.isUnmounted=!0},d)},we=(u,d,p,y=!1,b=!1,_=0)=>{for(let x=_;x<u.length;x++)ye(u[x],d,p,y,b)},v=u=>{if(u.shapeFlag&6)return v(u.component.subTree);if(u.shapeFlag&128)return u.suspense.next();const d=g(u.anchor||u.el),p=d&&d[al];return p?g(p):d};let P=!1;const S=(u,d,p)=>{let y;u==null?d._vnode&&(ye(d._vnode,null,null,!0),y=d._vnode.component):w(d._vnode||null,u,d,null,null,null,p),d._vnode=u,P||(P=!0,sr(y),vi(),P=!1)},D={p:w,um:ye,m:je,r:Pt,mt:Gt,mc:Me,pc:G,pbc:Le,n:v,o:e};return{render:S,hydrate:void 0,createApp:Vl(S)}}function ss({type:e,props:t},n){return n==="svg"&&e==="foreignObject"||n==="mathml"&&e==="annotation-xml"&&t&&t.encoding&&t.encoding.includes("html")?void 0:n}function Et({effect:e,job:t},n){n?(e.flags|=32,t.flags|=4):(e.flags&=-33,t.flags&=-5)}function Xl(e,t){return(!e||e&&!e.pendingBranch)&&t&&!t.persisted}function Ki(e,t,n=!1){const s=e.children,r=t.children;if(L(s)&&L(r))for(let i=0;i<s.length;i++){const o=s[i];let l=r[i];l.shapeFlag&1&&!l.dynamicChildren&&((l.patchFlag<=0||l.patchFlag===32)&&(l=r[i]=Ze(r[i]),l.el=o.el),!n&&l.patchFlag!==-2&&Ki(o,l)),l.type===qn&&(l.patchFlag===-1&&(l=r[i]=Ze(l)),l.el=o.el),l.type===lt&&!l.el&&(l.el=o.el)}}function Zl(e){const t=e.slice(),n=[0];let s,r,i,o,l;const c=e.length;for(s=0;s<c;s++){const a=e[s];if(a!==0){if(r=n[n.length-1],e[r]<a){t[s]=r,n.push(s);continue}for(i=0,o=n.length-1;i<o;)l=i+o>>1,e[n[l]]<a?i=l+1:o=l;a<e[n[i]]&&(i>0&&(t[s]=n[i-1]),n[i]=s)}}for(i=n.length,o=n[i-1];i-- >0;)n[i]=o,o=t[o];return n}function Gi(e){const t=e.subTree.component;if(t)return t.asyncDep&&!t.asyncResolved?t:Gi(t)}function pr(e){if(e)for(let t=0;t<e.length;t++)e[t].flags|=8}function ki(e){if(e.placeholder)return e.placeholder;const t=e.component;return t?ki(t.subTree):null}const Wi=e=>e.__isSuspense;function ec(e,t){t&&t.pendingBranch?L(e)?t.effects.push(...e):t.effects.push(e):ol(e)}const Xe=Symbol.for("v-fgt"),qn=Symbol.for("v-txt"),lt=Symbol.for("v-cmt"),rs=Symbol.for("v-stc"),Ct=[];let Ae=null;function qi(e=!1){Ct.push(Ae=e?null:[])}function $i(){Ct.pop(),Ae=Ct[Ct.length-1]||null}let ln=1;function In(e,t=!1){ln+=e,e<0&&Ae&&t&&(Ae.hasOnce=!0)}function zi(e){return e.dynamicChildren=ln>0?Ae||Mt:null,$i(),ln>0&&Ae&&Ae.push(e),e}function cf(e,t,n,s,r,i){return zi(Yi(e,t,n,s,r,i,!0))}function Ji(e,t,n,s,r){return zi(Re(e,t,n,s,r,!0))}function Nn(e){return e?e.__v_isVNode===!0:!1}function qt(e,t){return e.type===t.type&&e.key===t.key}const Qi=({key:e})=>e??null,wn=({ref:e,ref_key:t,ref_for:n})=>(typeof e=="number"&&(e=""+e),e!=null?ne(e)||he(e)||B(e)?{i:Ee,r:e,k:t,f:!!n}:e:null);function Yi(e,t=null,n=null,s=0,r=null,i=e===Xe?0:1,o=!1,l=!1){const c={__v_isVNode:!0,__v_skip:!0,type:e,props:t,key:t&&Qi(t),ref:t&&wn(t),scopeId:Ei,slotScopeIds:null,children:n,component:null,suspense:null,ssContent:null,ssFallback:null,dirs:null,transition:null,el:null,anchor:null,target:null,targetStart:null,targetAnchor:null,staticCount:0,shapeFlag:i,patchFlag:s,dynamicProps:r,dynamicChildren:null,appContext:null,ctx:Ee};return l?(Dn(c,n),i&128&&e.normalize(c)):n&&(c.shapeFlag|=ne(n)?8:16),ln>0&&!o&&Ae&&(c.patchFlag>0||i&6)&&c.patchFlag!==32&&Ae.push(c),c}const Re=tc;function tc(e,t=null,n=null,s=0,r=null,i=!1){if((!e||e===Cl)&&(e=lt),Nn(e)){const l=Ht(e,t,!0);return n&&Dn(l,n),ln>0&&!i&&Ae&&(l.shapeFlag&6?Ae[Ae.indexOf(e)]=l:Ae.push(l)),l.patchFlag=-2,l}if(pc(e)&&(e=e.__vccOpts),t){t=nc(t);let{class:l,style:c}=t;l&&!ne(l)&&(t.class=Is(l)),$(c)&&(Hs(c)&&!L(c)&&(c=fe({},c)),t.style=Ts(c))}const o=ne(e)?1:Wi(e)?128:Gn(e)?64:$(e)?4:B(e)?2:0;return Yi(e,t,n,s,r,o,i,!0)}function nc(e){return e?Hs(e)||Vi(e)?fe({},e):e:null}function Ht(e,t,n=!1,s=!1){const{props:r,ref:i,patchFlag:o,children:l,transition:c}=e,a=t?rc(r||{},t):r,f={__v_isVNode:!0,__v_skip:!0,type:e.type,props:a,key:a&&Qi(a),ref:t&&t.ref?n&&i?L(i)?i.concat(wn(t)):[i,wn(t)]:wn(t):i,scopeId:e.scopeId,slotScopeIds:e.slotScopeIds,children:l,target:e.target,targetStart:e.targetStart,targetAnchor:e.targetAnchor,staticCount:e.staticCount,shapeFlag:e.shapeFlag,patchFlag:t&&e.type!==Xe?o===-1?16:o|16:o,dynamicProps:e.dynamicProps,dynamicChildren:e.dynamicChildren,appContext:e.appContext,dirs:e.dirs,transition:c,component:e.component,suspense:e.suspense,ssContent:e.ssContent&&Ht(e.ssContent),ssFallback:e.ssFallback&&Ht(e.ssFallback),placeholder:e.placeholder,el:e.el,anchor:e.anchor,ctx:e.ctx,ce:e.ce};return c&&s&&Ks(f,c.clone(f)),f}function sc(e=" ",t=0){return Re(qn,null,e,t)}function uf(e="",t=!1){return t?(qi(),Ji(lt,null,e)):Re(lt,null,e)}function ke(e){return e==null||typeof e=="boolean"?Re(lt):L(e)?Re(Xe,null,e.slice()):Nn(e)?Ze(e):Re(qn,null,String(e))}function Ze(e){return e.el===null&&e.patchFlag!==-1||e.memo?e:Ht(e)}function Dn(e,t){let n=0;const{shapeFlag:s}=e;if(t==null)t=null;else if(L(t))n=16;else if(typeof t=="object")if(s&65){const r=t.default;r&&(r._c&&(r._d=!1),Dn(e,r()),r._c&&(r._d=!0));return}else{n=32;const r=t._;!r&&!Vi(t)?t._ctx=Ee:r===3&&Ee&&(Ee.slots._===1?t._=1:(t._=2,e.patchFlag|=1024))}else if(B(t)){if(s&65){Dn(e,{default:t});return}t={default:t,_ctx:Ee},n=32}else t=String(t),s&64?(n=16,t=[sc(t)]):n=8;e.children=t,e.shapeFlag|=n}function rc(...e){const t={};for(let n=0;n<e.length;n++){const s=e[n];for(const r in s)if(r==="class")t.class!==s.class&&(t.class=Is([t.class,s.class]));else if(r==="style")t.style=Ts([t.style,s.style]);else if(Ln(r)){const i=t[r],o=s[r];o&&i!==o&&!(L(i)&&i.includes(o))?t[r]=i?[].concat(i,o):o:o==null&&i==null&&!Vn(r)&&(t[r]=o)}else r!==""&&(t[r]=s[r])}return t}function Ue(e,t,n,s=null){Ne(e,t,7,[n,s])}const ic=Ii();let oc=0;function lc(e,t,n){const s=e.type,r=(t?t.appContext:e.appContext)||ic,i={uid:oc++,vnode:e,type:s,parent:t,appContext:r,root:null,next:null,subTree:null,effect:null,update:null,job:null,scope:new To(!0),render:null,proxy:null,exposed:null,exposeProxy:null,withProxy:null,provides:t?t.provides:Object.create(r.provides),ids:t?t.ids:["",0,0],accessCache:null,renderCache:[],components:null,directives:null,propsOptions:Fi(s,r),emitsOptions:Ni(s,r),emit:null,emitted:null,propsDefaults:X,inheritAttrs:s.inheritAttrs,ctx:X,data:X,props:X,attrs:X,slots:X,refs:X,setupState:X,setupContext: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,da:null,a:null,rtg:null,rtc:null,ec:null,sp:null};return i.ctx={_:i},i.root=t?t.root:i,i.emit=Fl.bind(null,i),e.ce&&e.ce(i),i}let de=null;const cc=()=>de||Ee;let Mn,cn;{const e=Bn(),t=(n,s)=>{let r;return(r=e[n])||(r=e[n]=[]),r.push(s),i=>{r.length>1?r.forEach(o=>o(i)):r[0](i)}};Mn=t("__VUE_INSTANCE_SETTERS__",n=>de=n),cn=t("__VUE_SSR_SETTERS__",n=>un=n)}const pn=e=>{const t=de;return Mn(e),e.scope.on(),()=>{e.scope.off(),Mn(t)}},gr=()=>{de&&de.scope.off(),Mn(null)};function Xi(e){return e.vnode.shapeFlag&4}let un=!1;function uc(e,t=!1,n=!1){t&&cn(t);const{props:s,children:r}=e.vnode,i=Xi(e);kl(e,s,i,t),zl(e,r,n||t);const o=i?fc(e,t):void 0;return t&&cn(!1),o}function fc(e,t){const n=e.type;e.accessCache=Object.create(null),e.proxy=new Proxy(e.ctx,Pl);const{setup:s}=n;if(s){rt();const r=e.setupContext=s.length>1?dc(e):null,i=pn(e),o=hn(s,e,0,[e.props,r]),l=$r(o);if(it(),i(),(l||e.sp)&&!en(e)&&Si(e),l){if(o.then(gr,gr),t)return o.then(c=>{cn(!0);try{mr(e,c,t)}finally{cn(!1)}}).catch(c=>{Kn(c,e,0)});e.asyncDep=o}else mr(e,o)}else Zi(e)}function mr(e,t,n){B(t)?e.type.__ssrInlineRender?e.ssrRender=t:e.render=t:$(t)&&(e.setupState=mi(t)),Zi(e)}function Zi(e,t,n){const s=e.type;e.render||(e.render=s.render||qe);{const r=pn(e);rt();try{Tl(e)}finally{it(),r()}}}const ac={get(e,t){return ae(e,"get",""),e[t]}};function dc(e){const t=n=>{e.exposed=n||{}};return{attrs:new Proxy(e.attrs,ac),slots:e.slots,emit:e.emit,expose:t}}function $n(e){return e.exposed?e.exposeProxy||(e.exposeProxy=new Proxy(mi(Jo(e.exposed)),{get(t,n){if(n in t)return t[n];if(n in tn)return tn[n](e)},has(t,n){return n in t||n in tn}})):e.proxy}function hc(e,t=!0){return B(e)?e.displayName||e.name:e.name||t&&e.__name}function pc(e){return B(e)&&"__vccOpts"in e}const Ce=(e,t)=>tl(e,t,un);function eo(e,t,n){try{In(-1);const s=arguments.length;return s===2?$(t)&&!L(t)?Nn(t)?Re(e,null,[t]):Re(e,t):Re(e,null,t):(s>3?n=Array.prototype.slice.call(arguments,2):s===3&&Nn(n)&&(n=[n]),Re(e,t,n))}finally{In(1)}}const gc="3.5.42";/**
+* @vue/runtime-dom v3.5.42
+* (c) 2018-present Yuxi (Evan) You and Vue contributors
+* @license MIT
+**/let As;const _r=typeof window<"u"&&window.trustedTypes;if(_r)try{As=_r.createPolicy("vue",{createHTML:e=>e})}catch{}const to=As?e=>As.createHTML(e):e=>e,mc="http://www.w3.org/2000/svg",_c="http://www.w3.org/1998/Math/MathML",Ye=typeof document<"u"?document:null,yr=Ye&&Ye.createElement("template"),yc={insert:(e,t,n)=>{t.insertBefore(e,n||null)},remove:e=>{const t=e.parentNode;t&&t.removeChild(e)},createElement:(e,t,n,s)=>{const r=t==="svg"?Ye.createElementNS(mc,e):t==="mathml"?Ye.createElementNS(_c,e):n?Ye.createElement(e,{is:n}):Ye.createElement(e);return e==="select"&&s&&s.multiple!=null&&r.setAttribute("multiple",s.multiple),r},createText:e=>Ye.createTextNode(e),createComment:e=>Ye.createComment(e),setText:(e,t)=>{e.nodeValue=t},setElementText:(e,t)=>{e.textContent=t},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>Ye.querySelector(e),setScopeId(e,t){e.setAttribute(t,"")},insertStaticContent(e,t,n,s,r,i){const o=n?n.previousSibling:t.lastChild;if(r&&(r===i||r.nextSibling))for(;t.insertBefore(r.cloneNode(!0),n),!(r===i||!(r=r.nextSibling)););else{yr.innerHTML=to(s==="svg"?`<svg>${e}</svg>`:s==="mathml"?`<math>${e}</math>`:e);const l=yr.content;if(s==="svg"||s==="mathml"){const c=l.firstChild;for(;c.firstChild;)l.appendChild(c.firstChild);l.removeChild(c)}t.insertBefore(l,n)}return[o?o.nextSibling:t.firstChild,n?n.previousSibling:t.lastChild]}},vc=Symbol("_vtc");function bc(e,t,n){const s=e[vc];s&&(t=(t?[t,...s]:[...s]).join(" ")),t==null?e.removeAttribute("class"):n?e.setAttribute("class",t):e.className=t}const vr=Symbol("_vod"),Ec=Symbol("_vsh"),Ac=Symbol(""),Rc=/(?:^|;)\s*display\s*:/;function xc(e,t,n){const s=e.style,r=ne(n);let i=!1;if(n&&!r){if(t)if(ne(t))for(const o of t.split(";")){const l=o.slice(0,o.indexOf(":")).trim();n[l]==null&&Jt(s,l,"")}else for(const o in t)n[o]==null&&Jt(s,o,"");for(const o in n){o==="display"&&(i=!0);const l=n[o];l!=null?Sc(e,o,!ne(t)&&t?t[o]:void 0,l)||Jt(s,o,l):Jt(s,o,"")}}else if(r){if(t!==n){const o=s[Ac];o&&(n+=";"+o),s.cssText=n,i=Rc.test(n)}}else t&&e.removeAttribute("style");vr in e&&(e[vr]=i?s.display:"",e[Ec]&&(s.display="none"))}const bn=/\s*!important$/;function Jt(e,t,n){if(L(n))n.forEach(s=>Jt(e,t,s));else if(n==null&&(n=""),t.startsWith("--"))bn.test(n)?e.setProperty(t,n.replace(bn,""),"important"):e.setProperty(t,n);else{const s=wc(e,t);bn.test(n)?e.setProperty(_t(s),n.replace(bn,""),"important"):e[s]=n}}const br=["Webkit","Moz","ms"],is={};function wc(e,t){const n=is[t];if(n)return n;let s=_e(t);if(s!=="filter"&&s in e)return is[t]=s;s=Fn(s);for(let r=0;r<br.length;r++){const i=br[r]+s;if(i in e)return is[t]=i}return t}function Sc(e,t,n,s){return e.tagName==="TEXTAREA"&&(t==="width"||t==="height")&&ne(s)&&n===s}const Er="http://www.w3.org/1999/xlink";function Ar(e,t,n,s,r,i=Co(t)){s&&t.startsWith("xlink:")?n==null?e.removeAttributeNS(Er,t.slice(6,t.length)):e.setAttributeNS(Er,t,n):n==null||i&&!Yr(n)?e.removeAttribute(t):e.setAttribute(t,i?"":$e(n)?String(n):n)}function Rr(e,t,n,s,r){if(t==="innerHTML"||t==="textContent"){n!=null&&(e[t]=t==="innerHTML"?to(n):n);return}const i=e.tagName;if(t==="value"&&i!=="PROGRESS"&&!i.includes("-")){const l=i==="OPTION"?e.getAttribute("value")||"":e.value,c=n==null?e.type==="checkbox"?"on":"":String(n);(l!==c||!("_value"in e))&&(e.value=c),n==null&&e.removeAttribute(t),e._value=n;return}let o=!1;if(n===""||n==null){const l=typeof e[t];l==="boolean"?n=Yr(n):n==null&&l==="string"?(n="",o=!0):l==="number"&&(n=0,o=!0)}try{e[t]=n}catch{}o&&e.removeAttribute(r||t)}function nt(e,t,n,s){e.addEventListener(t,n,s)}function Cc(e,t,n,s){e.removeEventListener(t,n,s)}const xr=Symbol("_vei");function Oc(e,t,n,s,r=null){const i=e[xr]||(e[xr]={}),o=i[t];if(s&&o)o.value=s;else{const[l,c]=Ic(t);if(s){const a=i[t]=Mc(s,r);nt(e,l,a,c)}else o&&(Cc(e,l,o,c),i[t]=void 0)}}const Pc=/(Once|Passive|Capture)$/,Tc=/^on:?(?:Once|Passive|Capture)$/;function Ic(e){let t,n;for(;(n=e.match(Pc))&&!Tc.test(e);)t||(t={}),e=e.slice(0,e.length-n[1].length),t[n[1].toLowerCase()]=!0;return[e[2]===":"?e.slice(3):_t(e.slice(2)),t]}let os=0;const Nc=Promise.resolve(),Dc=()=>os||(Nc.then(()=>os=0),os=Date.now());function Mc(e,t){const n=s=>{if(!s._vts)s._vts=Date.now();else if(s._vts<=n.attached)return;const r=n.value;if(L(r)){const i=s.stopImmediatePropagation;s.stopImmediatePropagation=()=>{i.call(s),s._stopped=!0};const o=r.slice(),l=[s];for(let c=0;c<o.length&&!s._stopped;c++){const a=o[c];a&&Ne(a,t,5,l)}}else Ne(r,t,5,[s])};return n.value=e,n.attached=Dc(),n}const wr=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&e.charCodeAt(2)>96&&e.charCodeAt(2)<123,Lc=(e,t,n,s,r,i)=>{const o=r==="svg";t==="class"?bc(e,s,o):t==="style"?xc(e,n,s):Ln(t)?Vn(t)||Oc(e,t,n,s,i):(t[0]==="."?(t=t.slice(1),!0):t[0]==="^"?(t=t.slice(1),!1):Vc(e,t,s,o))?(Rr(e,t,s),!e.tagName.includes("-")&&(t==="value"||t==="checked"||t==="selected")&&Ar(e,t,s,o,i,t!=="value")):e._isVueCE&&(jc(e,t)||e._def.__asyncLoader&&(/[A-Z]/.test(t)||!ne(s)))?Rr(e,_e(t),s,i,t):(t==="true-value"?e._trueValue=s:t==="false-value"&&(e._falseValue=s),Ar(e,t,s,o))};function Vc(e,t,n,s){if(s)return!!(t==="innerHTML"||t==="textContent"||t in e&&wr(t)&&B(n));if(t==="spellcheck"||t==="draggable"||t==="translate"||t==="autocorrect"||t==="sandbox"&&e.tagName==="IFRAME"||t==="form"||t==="list"&&e.tagName==="INPUT"||t==="type"&&e.tagName==="TEXTAREA")return!1;if(t==="width"||t==="height"){const r=e.tagName;if(r==="IMG"||r==="VIDEO"||r==="CANVAS"||r==="SOURCE")return!1}return wr(t)&&ne(n)?!1:t in e}function jc(e,t){const n=e._def.props;if(!n)return!1;const s=_e(t);return Array.isArray(n)?n.some(r=>_e(r)===s):Object.keys(n).some(r=>_e(r)===s)}const mt=e=>{const t=e.props["onUpdate:modelValue"]||!1;return L(t)?n=>An(t,n):t};function Fc(e){e.target.composing=!0}function Sr(e){const t=e.target;t.composing&&(t.composing=!1,t.dispatchEvent(new Event("input")))}const xe=Symbol("_assign"),En=Symbol("_initialValue");function ls(e,t,n){return t&&(e=e.trim()),n&&(e=Hn(e)),e}const ff={created(e,{modifiers:{lazy:t,trim:n,number:s}},r){e.parentNode&&(e.type==="text"?e[En]=e.defaultValue.replace(/[\r\n]/g,""):e.type==="textarea"&&(e[En]=e.defaultValue.replace(/\r\n?/g,`
+`))),e[xe]=mt(r);const i=s||r.props&&r.props.type==="number";nt(e,t?"change":"input",o=>{o.target.composing||e[xe](ls(e.value,n,i))}),(n||i)&&nt(e,"change",()=>{e.value=ls(e.value,n,i)}),t||(nt(e,"compositionstart",Fc),nt(e,"compositionend",Sr),nt(e,"change",Sr))},mounted(e,{value:t,modifiers:{trim:n,number:s}}){const r=t??"",i=e[En];delete e[En],i!==void 0&&(e.type==="text"||e.type==="textarea")&&e.value!==i?e[xe](ls(e.value,n,s)):e.value=r},beforeUpdate(e,{value:t,oldValue:n,modifiers:{lazy:s,trim:r,number:i}},o){if(e[xe]=mt(o),e.composing)return;const l=(i||e.type==="number")&&!/^0\d/.test(e.value)?Hn(e.value):e.value,c=t??"";if(l===c)return;const a=e.getRootNode();(a instanceof Document||a instanceof ShadowRoot)&&a.activeElement===e&&e.type!=="range"&&(s&&t===n||r&&e.value.trim()===c)||(e.value=c)}},af={deep:!0,created(e,t,n){e[xe]=mt(n),nt(e,"change",()=>{const s=e._modelValue,r=Bt(e),i=e.checked,o=e[xe];if(L(s)){const l=Ns(s,r),c=l!==-1;if(i&&!c)o(s.concat(r));else if(!i&&c){const a=[...s];a.splice(l,1),o(a)}}else if(st(s)){const l=new Set(s);i?l.add(r):l.delete(r),o(l)}else o(no(e,i))})},mounted:Cr,beforeUpdate(e,t,n){e[xe]=mt(n),Cr(e,t,n)}};function Cr(e,{value:t,oldValue:n},s){e._modelValue=t;let r;if(L(t))r=Ns(t,s.props.value)>-1;else if(st(t))r=t.has(s.props.value);else{if(t===n)return;r=Te(t,no(e,!0))}e.checked!==r&&(e.checked=r)}const df={created(e,{value:t},n){e.checked=Te(t,n.props.value),e[xe]=mt(n),nt(e,"change",()=>{e[xe](Bt(e))})},beforeUpdate(e,{value:t,oldValue:n},s){e[xe]=mt(s),t!==n&&(e.checked=Te(t,s.props.value))}},hf={deep:!0,created(e,{value:t,modifiers:{number:n}},s){e._modelValue=t,nt(e,"change",()=>{const r=Array.prototype.filter.call(e.options,c=>c.selected).map(c=>n?Hn(Bt(c)):Bt(c)),i=e.multiple,o=i?st(e._modelValue)?new Set(r):r:r[0],l=e._pendingValue=[i,i?L(o)?r.slice():r:o];try{e[xe](o)}finally{Bs(()=>{e._pendingValue===l&&(e._pendingValue=void 0)})}}),e[xe]=mt(s)},mounted(e,{value:t}){Or(e,t)},beforeUpdate(e,{value:t},n){e._modelValue=t,e[xe]=mt(n)},updated(e,{value:t}){const n=e._pendingValue;e._pendingValue=void 0,(!n||n[0]!==e.multiple||!Hc(t,n[1],n[0]))&&Or(e,t)}};function Hc(e,t,n){if(!n||L(e))return Te(e,t);if(st(e)){if(e.size!==t.length)return!1;for(const s of t)if(!e.has(s))return!1;return!0}return!1}function Or(e,t){const n=e.multiple,s=L(t);if(!(n&&!s&&!st(t))){for(let r=0,i=e.options.length;r<i;r++){const o=e.options[r],l=Bt(o);if(n)if(s){const c=typeof l;c==="string"||c==="number"?o.selected=t.some(a=>String(a)===String(l)):o.selected=Ns(t,l)>-1}else o.selected=t.has(l);else if(Te(Bt(o),t)){e.selectedIndex!==r&&(e.selectedIndex=r);return}}!n&&e.selectedIndex!==-1&&(e.selectedIndex=-1)}}function Bt(e){return"_value"in e?e._value:e.value}function no(e,t){const n=t?"_trueValue":"_falseValue";return n in e?e[n]:t}const Bc=["ctrl","shift","alt","meta"],Uc={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&&e.button!==0,middle:e=>"button"in e&&e.button!==1,right:e=>"button"in e&&e.button!==2,exact:(e,t)=>Bc.some(n=>e[`${n}Key`]&&!t.includes(n))},pf=(e,t)=>{if(!e)return e;const n=e._withMods||(e._withMods={}),s=t.join(".");return n[s]||(n[s]=(r,...i)=>{for(let o=0;o<t.length;o++){const l=Uc[t[o]];if(l&&l(r,t))return}return e(r,...i)})},Kc={esc:"escape",space:" ",up:"arrow-up",left:"arrow-left",right:"arrow-right",down:"arrow-down",delete:"backspace"},gf=(e,t)=>{const n=e._withKeys||(e._withKeys={}),s=t.join(".");return n[s]||(n[s]=r=>{if(!("key"in r))return;const i=_t(r.key);if(t.some(o=>o===i||Kc[o]===i))return e(r)})},Gc=fe({patchProp:Lc},yc);let Pr;function kc(){return Pr||(Pr=Ql(Gc))}const Wc=(...e)=>{const t=kc().createApp(...e),{mount:n}=t;return t.mount=s=>{const r=$c(s);if(!r)return;const i=t._component;!B(i)&&!i.render&&!i.template&&(i.template=r.innerHTML),r.nodeType===1&&(r.textContent="");const o=n(r,!1,qc(r));return r instanceof Element&&(r.removeAttribute("v-cloak"),r.setAttribute("data-v-app","")),o},t};function qc(e){if(e instanceof SVGElement)return"svg";if(typeof MathMLElement=="function"&&e instanceof MathMLElement)return"mathml"}function $c(e){return ne(e)?document.querySelector(e):e}/*!
+ * vue-router v4.6.4
+ * (c) 2025 Eduardo San Martin Morote
+ * @license MIT
+ */const Dt=typeof document<"u";function so(e){return typeof e=="object"||"displayName"in e||"props"in e||"__vccOpts"in e}function zc(e){return e.__esModule||e[Symbol.toStringTag]==="Module"||e.default&&so(e.default)}const k=Object.assign;function cs(e,t){const n={};for(const s in t){const r=t[s];n[s]=De(r)?r.map(e):e(r)}return n}const nn=()=>{},De=Array.isArray;function Tr(e,t){const n={};for(const s in e)n[s]=s in t?t[s]:e[s];return n}const ro=/#/g,Jc=/&/g,Qc=/\//g,Yc=/=/g,Xc=/\?/g,io=/\+/g,Zc=/%5B/g,eu=/%5D/g,oo=/%5E/g,tu=/%60/g,lo=/%7B/g,nu=/%7C/g,co=/%7D/g,su=/%20/g;function qs(e){return e==null?"":encodeURI(""+e).replace(nu,"|").replace(Zc,"[").replace(eu,"]")}function ru(e){return qs(e).replace(lo,"{").replace(co,"}").replace(oo,"^")}function Rs(e){return qs(e).replace(io,"%2B").replace(su,"+").replace(ro,"%23").replace(Jc,"%26").replace(tu,"`").replace(lo,"{").replace(co,"}").replace(oo,"^")}function iu(e){return Rs(e).replace(Yc,"%3D")}function ou(e){return qs(e).replace(ro,"%23").replace(Xc,"%3F")}function lu(e){return ou(e).replace(Qc,"%2F")}function fn(e){if(e==null)return null;try{return decodeURIComponent(""+e)}catch{}return""+e}const cu=/\/$/,uu=e=>e.replace(cu,"");function us(e,t,n="/"){let s,r={},i="",o="";const l=t.indexOf("#");let c=t.indexOf("?");return c=l>=0&&c>l?-1:c,c>=0&&(s=t.slice(0,c),i=t.slice(c,l>0?l:t.length),r=e(i.slice(1))),l>=0&&(s=s||t.slice(0,l),o=t.slice(l,t.length)),s=hu(s??t,n),{fullPath:s+i+o,path:s,query:r,hash:fn(o)}}function fu(e,t){const n=t.query?e(t.query):"";return t.path+(n&&"?")+n+(t.hash||"")}function Ir(e,t){return!t||!e.toLowerCase().startsWith(t.toLowerCase())?e:e.slice(t.length)||"/"}function au(e,t,n){const s=t.matched.length-1,r=n.matched.length-1;return s>-1&&s===r&&Ut(t.matched[s],n.matched[r])&&uo(t.params,n.params)&&e(t.query)===e(n.query)&&t.hash===n.hash}function Ut(e,t){return(e.aliasOf||e)===(t.aliasOf||t)}function uo(e,t){if(Object.keys(e).length!==Object.keys(t).length)return!1;for(var n in e)if(!du(e[n],t[n]))return!1;return!0}function du(e,t){return De(e)?Nr(e,t):De(t)?Nr(t,e):(e==null?void 0:e.valueOf())===(t==null?void 0:t.valueOf())}function Nr(e,t){return De(t)?e.length===t.length&&e.every((n,s)=>n===t[s]):e.length===1&&e[0]===t}function hu(e,t){if(e.startsWith("/"))return e;if(!e)return t;const n=t.split("/"),s=e.split("/"),r=s[s.length-1];(r===".."||r===".")&&s.push("");let i=n.length-1,o,l;for(o=0;o<s.length;o++)if(l=s[o],l!==".")if(l==="..")i>1&&i--;else break;return n.slice(0,i).join("/")+"/"+s.slice(o).join("/")}const dt={path:"/",name:void 0,params:{},query:{},hash:"",fullPath:"/",matched:[],meta:{},redirectedFrom:void 0};let xs=function(e){return e.pop="pop",e.push="push",e}({}),fs=function(e){return e.back="back",e.forward="forward",e.unknown="",e}({});function pu(e){if(!e)if(Dt){const t=document.querySelector("base");e=t&&t.getAttribute("href")||"/",e=e.replace(/^\w+:\/\/[^\/]+/,"")}else e="/";return e[0]!=="/"&&e[0]!=="#"&&(e="/"+e),uu(e)}const gu=/^[^#]+#/;function mu(e,t){return e.replace(gu,"#")+t}function _u(e,t){const n=document.documentElement.getBoundingClientRect(),s=e.getBoundingClientRect();return{behavior:t.behavior,left:s.left-n.left-(t.left||0),top:s.top-n.top-(t.top||0)}}const zn=()=>({left:window.scrollX,top:window.scrollY});function yu(e){let t;if("el"in e){const n=e.el,s=typeof n=="string"&&n.startsWith("#"),r=typeof n=="string"?s?document.getElementById(n.slice(1)):document.querySelector(n):n;if(!r)return;t=_u(r,e)}else t=e;"scrollBehavior"in document.documentElement.style?window.scrollTo(t):window.scrollTo(t.left!=null?t.left:window.scrollX,t.top!=null?t.top:window.scrollY)}function Dr(e,t){return(history.state?history.state.position-t:-1)+e}const ws=new Map;function vu(e,t){ws.set(e,t)}function bu(e){const t=ws.get(e);return ws.delete(e),t}function Eu(e){return typeof e=="string"||e&&typeof e=="object"}function fo(e){return typeof e=="string"||typeof e=="symbol"}let te=function(e){return e[e.MATCHER_NOT_FOUND=1]="MATCHER_NOT_FOUND",e[e.NAVIGATION_GUARD_REDIRECT=2]="NAVIGATION_GUARD_REDIRECT",e[e.NAVIGATION_ABORTED=4]="NAVIGATION_ABORTED",e[e.NAVIGATION_CANCELLED=8]="NAVIGATION_CANCELLED",e[e.NAVIGATION_DUPLICATED=16]="NAVIGATION_DUPLICATED",e}({});const ao=Symbol("");te.MATCHER_NOT_FOUND+"",te.NAVIGATION_GUARD_REDIRECT+"",te.NAVIGATION_ABORTED+"",te.NAVIGATION_CANCELLED+"",te.NAVIGATION_DUPLICATED+"";function Kt(e,t){return k(new Error,{type:e,[ao]:!0},t)}function Qe(e,t){return e instanceof Error&&ao in e&&(t==null||!!(e.type&t))}const Au=["params","query","hash"];function Ru(e){if(typeof e=="string")return e;if(e.path!=null)return e.path;const t={};for(const n of Au)n in e&&(t[n]=e[n]);return JSON.stringify(t,null,2)}function xu(e){const t={};if(e===""||e==="?")return t;const n=(e[0]==="?"?e.slice(1):e).split("&");for(let s=0;s<n.length;++s){const r=n[s].replace(io," "),i=r.indexOf("="),o=fn(i<0?r:r.slice(0,i)),l=i<0?null:fn(r.slice(i+1));if(o in t){let c=t[o];De(c)||(c=t[o]=[c]),c.push(l)}else t[o]=l}return t}function Mr(e){let t="";for(let n in e){const s=e[n];if(n=iu(n),s==null){s!==void 0&&(t+=(t.length?"&":"")+n);continue}(De(s)?s.map(r=>r&&Rs(r)):[s&&Rs(s)]).forEach(r=>{r!==void 0&&(t+=(t.length?"&":"")+n,r!=null&&(t+="="+r))})}return t}function wu(e){const t={};for(const n in e){const s=e[n];s!==void 0&&(t[n]=De(s)?s.map(r=>r==null?null:""+r):s==null?s:""+s)}return t}const Su=Symbol(""),Lr=Symbol(""),Jn=Symbol(""),$s=Symbol(""),Ss=Symbol("");function $t(){let e=[];function t(s){return e.push(s),()=>{const r=e.indexOf(s);r>-1&&e.splice(r,1)}}function n(){e=[]}return{add:t,list:()=>e.slice(),reset:n}}function pt(e,t,n,s,r,i=o=>o()){const o=s&&(s.enterCallbacks[r]=s.enterCallbacks[r]||[]);return()=>new Promise((l,c)=>{const a=g=>{g===!1?c(Kt(te.NAVIGATION_ABORTED,{from:n,to:t})):g instanceof Error?c(g):Eu(g)?c(Kt(te.NAVIGATION_GUARD_REDIRECT,{from:t,to:g})):(o&&s.enterCallbacks[r]===o&&typeof g=="function"&&o.push(g),l())},f=i(()=>e.call(s&&s.instances[r],t,n,a));let h=Promise.resolve(f);e.length<3&&(h=h.then(a)),h.catch(g=>c(g))})}function as(e,t,n,s,r=i=>i()){const i=[];for(const o of e)for(const l in o.components){let c=o.components[l];if(!(t!=="beforeRouteEnter"&&!o.instances[l]))if(so(c)){const a=(c.__vccOpts||c)[t];a&&i.push(pt(a,n,s,o,l,r))}else{let a=c();i.push(()=>a.then(f=>{if(!f)throw new Error(`Couldn't resolve component "${l}" at "${o.path}"`);const h=zc(f)?f.default:f;o.mods[l]=f,o.components[l]=h;const g=(h.__vccOpts||h)[t];return g&&pt(g,n,s,o,l,r)()}))}}return i}function Cu(e,t){const n=[],s=[],r=[],i=Math.max(t.matched.length,e.matched.length);for(let o=0;o<i;o++){const l=t.matched[o];l&&(e.matched.find(a=>Ut(a,l))?s.push(l):n.push(l));const c=e.matched[o];c&&(t.matched.find(a=>Ut(a,c))||r.push(c))}return[n,s,r]}/*!
+ * vue-router v4.6.4
+ * (c) 2025 Eduardo San Martin Morote
+ * @license MIT
+ */let Ou=()=>location.protocol+"//"+location.host;function ho(e,t){const{pathname:n,search:s,hash:r}=t,i=e.indexOf("#");if(i>-1){let o=r.includes(e.slice(i))?e.slice(i).length:1,l=r.slice(o);return l[0]!=="/"&&(l="/"+l),Ir(l,"")}return Ir(n,e)+s+r}function Pu(e,t,n,s){let r=[],i=[],o=null;const l=({state:g})=>{const m=ho(e,location),I=n.value,w=t.value;let H=0;if(g){if(n.value=m,t.value=g,o&&o===I){o=null;return}H=w?g.position-w.position:0}else s(m);r.forEach(j=>{j(n.value,I,{delta:H,type:xs.pop,direction:H?H>0?fs.forward:fs.back:fs.unknown})})};function c(){o=n.value}function a(g){r.push(g);const m=()=>{const I=r.indexOf(g);I>-1&&r.splice(I,1)};return i.push(m),m}function f(){if(document.visibilityState==="hidden"){const{history:g}=window;if(!g.state)return;g.replaceState(k({},g.state,{scroll:zn()}),"")}}function h(){for(const g of i)g();i=[],window.removeEventListener("popstate",l),window.removeEventListener("pagehide",f),document.removeEventListener("visibilitychange",f)}return window.addEventListener("popstate",l),window.addEventListener("pagehide",f),document.addEventListener("visibilitychange",f),{pauseListeners:c,listen:a,destroy:h}}function Vr(e,t,n,s=!1,r=!1){return{back:e,current:t,forward:n,replaced:s,position:window.history.length,scroll:r?zn():null}}function Tu(e){const{history:t,location:n}=window,s={value:ho(e,n)},r={value:t.state};r.value||i(s.value,{back:null,current:s.value,forward:null,position:t.length-1,replaced:!0,scroll:null},!0);function i(c,a,f){const h=e.indexOf("#"),g=h>-1?(n.host&&document.querySelector("base")?e:e.slice(h))+c:Ou()+e+c;try{t[f?"replaceState":"pushState"](a,"",g),r.value=a}catch(m){console.error(m),n[f?"replace":"assign"](g)}}function o(c,a){i(c,k({},t.state,Vr(r.value.back,c,r.value.forward,!0),a,{position:r.value.position}),!0),s.value=c}function l(c,a){const f=k({},r.value,t.state,{forward:c,scroll:zn()});i(f.current,f,!0),i(c,k({},Vr(s.value,c,null),{position:f.position+1},a),!1),s.value=c}return{location:s,state:r,push:l,replace:o}}function Iu(e){e=pu(e);const t=Tu(e),n=Pu(e,t.state,t.location,t.replace);function s(i,o=!0){o||n.pauseListeners(),history.go(i)}const r=k({location:"",base:e,go:s,createHref:mu.bind(null,e)},t,n);return Object.defineProperty(r,"location",{enumerable:!0,get:()=>t.location.value}),Object.defineProperty(r,"state",{enumerable:!0,get:()=>t.state.value}),r}let xt=function(e){return e[e.Static=0]="Static",e[e.Param=1]="Param",e[e.Group=2]="Group",e}({});var oe=function(e){return e[e.Static=0]="Static",e[e.Param=1]="Param",e[e.ParamRegExp=2]="ParamRegExp",e[e.ParamRegExpEnd=3]="ParamRegExpEnd",e[e.EscapeNext=4]="EscapeNext",e}(oe||{});const Nu={type:xt.Static,value:""},Du=/[a-zA-Z0-9_]/;function Mu(e){if(!e)return[[]];if(e==="/")return[[Nu]];if(!e.startsWith("/"))throw new Error(`Invalid path "${e}"`);function t(m){throw new Error(`ERR (${n})/"${a}": ${m}`)}let n=oe.Static,s=n;const r=[];let i;function o(){i&&r.push(i),i=[]}let l=0,c,a="",f="";function h(){a&&(n===oe.Static?i.push({type:xt.Static,value:a}):n===oe.Param||n===oe.ParamRegExp||n===oe.ParamRegExpEnd?(i.length>1&&(c==="*"||c==="+")&&t(`A repeatable param (${a}) must be alone in its segment. eg: '/:ids+.`),i.push({type:xt.Param,value:a,regexp:f,repeatable:c==="*"||c==="+",optional:c==="*"||c==="?"})):t("Invalid state to consume buffer"),a="")}function g(){a+=c}for(;l<e.length;){if(c=e[l++],c==="\\"&&n!==oe.ParamRegExp){s=n,n=oe.EscapeNext;continue}switch(n){case oe.Static:c==="/"?(a&&h(),o()):c===":"?(h(),n=oe.Param):g();break;case oe.EscapeNext:g(),n=s;break;case oe.Param:c==="("?n=oe.ParamRegExp:Du.test(c)?g():(h(),n=oe.Static,c!=="*"&&c!=="?"&&c!=="+"&&l--);break;case oe.ParamRegExp:c===")"?f[f.length-1]=="\\"?f=f.slice(0,-1)+c:n=oe.ParamRegExpEnd:f+=c;break;case oe.ParamRegExpEnd:h(),n=oe.Static,c!=="*"&&c!=="?"&&c!=="+"&&l--,f="";break;default:t("Unknown state");break}}return n===oe.ParamRegExp&&t(`Unfinished custom RegExp for param "${a}"`),h(),o(),r}const jr="[^/]+?",Lu={sensitive:!1,strict:!1,start:!0,end:!0};var ge=function(e){return e[e._multiplier=10]="_multiplier",e[e.Root=90]="Root",e[e.Segment=40]="Segment",e[e.SubSegment=30]="SubSegment",e[e.Static=40]="Static",e[e.Dynamic=20]="Dynamic",e[e.BonusCustomRegExp=10]="BonusCustomRegExp",e[e.BonusWildcard=-50]="BonusWildcard",e[e.BonusRepeatable=-20]="BonusRepeatable",e[e.BonusOptional=-8]="BonusOptional",e[e.BonusStrict=.7000000000000001]="BonusStrict",e[e.BonusCaseSensitive=.25]="BonusCaseSensitive",e}(ge||{});const Vu=/[.+*?^${}()[\]/\\]/g;function ju(e,t){const n=k({},Lu,t),s=[];let r=n.start?"^":"";const i=[];for(const a of e){const f=a.length?[]:[ge.Root];n.strict&&!a.length&&(r+="/");for(let h=0;h<a.length;h++){const g=a[h];let m=ge.Segment+(n.sensitive?ge.BonusCaseSensitive:0);if(g.type===xt.Static)h||(r+="/"),r+=g.value.replace(Vu,"\\$&"),m+=ge.Static;else if(g.type===xt.Param){const{value:I,repeatable:w,optional:H,regexp:j}=g;i.push({name:I,repeatable:w,optional:H});const O=j||jr;if(O!==jr){m+=ge.BonusCustomRegExp;try{`${O}`}catch(T){throw new Error(`Invalid custom RegExp for param "${I}" (${O}): `+T.message)}}let N=w?`((?:${O})(?:/(?:${O}))*)`:`(${O})`;h||(N=H&&a.length<2?`(?:/${N})`:"/"+N),H&&(N+="?"),r+=N,m+=ge.Dynamic,H&&(m+=ge.BonusOptional),w&&(m+=ge.BonusRepeatable),O===".*"&&(m+=ge.BonusWildcard)}f.push(m)}s.push(f)}if(n.strict&&n.end){const a=s.length-1;s[a][s[a].length-1]+=ge.BonusStrict}n.strict||(r+="/?"),n.end?r+="$":n.strict&&!r.endsWith("/")&&(r+="(?:/|$)");const o=new RegExp(r,n.sensitive?"":"i");function l(a){const f=a.match(o),h={};if(!f)return null;for(let g=1;g<f.length;g++){const m=f[g]||"",I=i[g-1];h[I.name]=m&&I.repeatable?m.split("/"):m}return h}function c(a){let f="",h=!1;for(const g of e){(!h||!f.endsWith("/"))&&(f+="/"),h=!1;for(const m of g)if(m.type===xt.Static)f+=m.value;else if(m.type===xt.Param){const{value:I,repeatable:w,optional:H}=m,j=I in a?a[I]:"";if(De(j)&&!w)throw new Error(`Provided param "${I}" is an array but it is not repeatable (* or + modifiers)`);const O=De(j)?j.join("/"):j;if(!O)if(H)g.length<2&&(f.endsWith("/")?f=f.slice(0,-1):h=!0);else throw new Error(`Missing required param "${I}"`);f+=O}}return f||"/"}return{re:o,score:s,keys:i,parse:l,stringify:c}}function Fu(e,t){let n=0;for(;n<e.length&&n<t.length;){const s=t[n]-e[n];if(s)return s;n++}return e.length<t.length?e.length===1&&e[0]===ge.Static+ge.Segment?-1:1:e.length>t.length?t.length===1&&t[0]===ge.Static+ge.Segment?1:-1:0}function po(e,t){let n=0;const s=e.score,r=t.score;for(;n<s.length&&n<r.length;){const i=Fu(s[n],r[n]);if(i)return i;n++}if(Math.abs(r.length-s.length)===1){if(Fr(s))return 1;if(Fr(r))return-1}return r.length-s.length}function Fr(e){const t=e[e.length-1];return e.length>0&&t[t.length-1]<0}const Hu={strict:!1,end:!0,sensitive:!1};function Bu(e,t,n){const s=ju(Mu(e.path),n),r=k(s,{record:e,parent:t,children:[],alias:[]});return t&&!r.record.aliasOf==!t.record.aliasOf&&t.children.push(r),r}function Uu(e,t){const n=[],s=new Map;t=Tr(Hu,t);function r(h){return s.get(h)}function i(h,g,m){const I=!m,w=Br(h);w.aliasOf=m&&m.record;const H=Tr(t,h),j=[w];if("alias"in h){const T=typeof h.alias=="string"?[h.alias]:h.alias;for(const Q of T)j.push(Br(k({},w,{components:m?m.record.components:w.components,path:Q,aliasOf:m?m.record:w})))}let O,N;for(const T of j){const{path:Q}=T;if(g&&Q[0]!=="/"){const ie=g.record.path,ee=ie[ie.length-1]==="/"?"":"/";T.path=g.record.path+(Q&&ee+Q)}if(O=Bu(T,g,H),m?m.alias.push(O):(N=N||O,N!==O&&N.alias.push(O),I&&h.name&&!Ur(O)&&o(h.name)),go(O)&&c(O),w.children){const ie=w.children;for(let ee=0;ee<ie.length;ee++)i(ie[ee],O,m&&m.children[ee])}m=m||O}return N?()=>{o(N)}:nn}function o(h){if(fo(h)){const g=s.get(h);g&&(s.delete(h),n.splice(n.indexOf(g),1),g.children.forEach(o),g.alias.forEach(o))}else{const g=n.indexOf(h);g>-1&&(n.splice(g,1),h.record.name&&s.delete(h.record.name),h.children.forEach(o),h.alias.forEach(o))}}function l(){return n}function c(h){const g=ku(h,n);n.splice(g,0,h),h.record.name&&!Ur(h)&&s.set(h.record.name,h)}function a(h,g){let m,I={},w,H;if("name"in h&&h.name){if(m=s.get(h.name),!m)throw Kt(te.MATCHER_NOT_FOUND,{location:h});H=m.record.name,I=k(Hr(g.params,m.keys.filter(N=>!N.optional).concat(m.parent?m.parent.keys.filter(N=>N.optional):[]).map(N=>N.name)),h.params&&Hr(h.params,m.keys.map(N=>N.name))),w=m.stringify(I)}else if(h.path!=null)w=h.path,m=n.find(N=>N.re.test(w)),m&&(I=m.parse(w),H=m.record.name);else{if(m=g.name?s.get(g.name):n.find(N=>N.re.test(g.path)),!m)throw Kt(te.MATCHER_NOT_FOUND,{location:h,currentLocation:g});H=m.record.name,I=k({},g.params,h.params),w=m.stringify(I)}const j=[];let O=m;for(;O;)j.unshift(O.record),O=O.parent;return{name:H,path:w,params:I,matched:j,meta:Gu(j)}}e.forEach(h=>i(h));function f(){n.length=0,s.clear()}return{addRoute:i,resolve:a,removeRoute:o,clearRoutes:f,getRoutes:l,getRecordMatcher:r}}function Hr(e,t){const n={};for(const s of t)s in e&&(n[s]=e[s]);return n}function Br(e){const t={path:e.path,redirect:e.redirect,name:e.name,meta:e.meta||{},aliasOf:e.aliasOf,beforeEnter:e.beforeEnter,props:Ku(e),children:e.children||[],instances:{},leaveGuards:new Set,updateGuards:new Set,enterCallbacks:{},components:"components"in e?e.components||null:e.component&&{default:e.component}};return Object.defineProperty(t,"mods",{value:{}}),t}function Ku(e){const t={},n=e.props||!1;if("component"in e)t.default=n;else for(const s in e.components)t[s]=typeof n=="object"?n[s]:n;return t}function Ur(e){for(;e;){if(e.record.aliasOf)return!0;e=e.parent}return!1}function Gu(e){return e.reduce((t,n)=>k(t,n.meta),{})}function ku(e,t){let n=0,s=t.length;for(;n!==s;){const i=n+s>>1;po(e,t[i])<0?s=i:n=i+1}const r=Wu(e);return r&&(s=t.lastIndexOf(r,s-1)),s}function Wu(e){let t=e;for(;t=t.parent;)if(go(t)&&po(e,t)===0)return t}function go({record:e}){return!!(e.name||e.components&&Object.keys(e.components).length||e.redirect)}function Kr(e){const t=Pe(Jn),n=Pe($s),s=Ce(()=>{const c=Lt(e.to);return t.resolve(c)}),r=Ce(()=>{const{matched:c}=s.value,{length:a}=c,f=c[a-1],h=n.matched;if(!f||!h.length)return-1;const g=h.findIndex(Ut.bind(null,f));if(g>-1)return g;const m=Gr(c[a-2]);return a>1&&Gr(f)===m&&h[h.length-1].path!==m?h.findIndex(Ut.bind(null,c[a-2])):g}),i=Ce(()=>r.value>-1&&Qu(n.params,s.value.params)),o=Ce(()=>r.value>-1&&r.value===n.matched.length-1&&uo(n.params,s.value.params));function l(c={}){if(Ju(c)){const a=t[Lt(e.replace)?"replace":"push"](Lt(e.to)).catch(nn);return e.viewTransition&&typeof document<"u"&&"startViewTransition"in document&&document.startViewTransition(()=>a),a}return Promise.resolve()}return{route:s,href:Ce(()=>s.value.href),isActive:i,isExactActive:o,navigate:l}}function qu(e){return e.length===1?e[0]:e}const $u=wi({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"},viewTransition:Boolean},useLink:Kr,setup(e,{slots:t}){const n=dn(Kr(e)),{options:s}=Pe(Jn),r=Ce(()=>({[kr(e.activeClass,s.linkActiveClass,"router-link-active")]:n.isActive,[kr(e.exactActiveClass,s.linkExactActiveClass,"router-link-exact-active")]:n.isExactActive}));return()=>{const i=t.default&&qu(t.default(n));return e.custom?i:eo("a",{"aria-current":n.isExactActive?e.ariaCurrentValue:null,href:n.href,onClick:n.navigate,class:r.value},i)}}}),zu=$u;function Ju(e){if(!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)&&!e.defaultPrevented&&!(e.button!==void 0&&e.button!==0)){if(e.currentTarget&&e.currentTarget.getAttribute){const t=e.currentTarget.getAttribute("target");if(/\b_blank\b/i.test(t))return}return e.preventDefault&&e.preventDefault(),!0}}function Qu(e,t){for(const n in t){const s=t[n],r=e[n];if(typeof s=="string"){if(s!==r)return!1}else if(!De(r)||r.length!==s.length||s.some((i,o)=>i.valueOf()!==r[o].valueOf()))return!1}return!0}function Gr(e){return e?e.aliasOf?e.aliasOf.path:e.path:""}const kr=(e,t,n)=>e??t??n,Yu=wi({name:"RouterView",inheritAttrs:!1,props:{name:{type:String,default:"default"},route:Object},compatConfig:{MODE:3},setup(e,{attrs:t,slots:n}){const s=Pe(Ss),r=Ce(()=>e.route||s.value),i=Pe(Lr,0),o=Ce(()=>{let a=Lt(i);const{matched:f}=r.value;let h;for(;(h=f[a])&&!h.components;)a++;return a}),l=Ce(()=>r.value.matched[o.value]);Rn(Lr,Ce(()=>o.value+1)),Rn(Su,l),Rn(Ss,r);const c=Qo();return xn(()=>[c.value,l.value,e.name],([a,f,h],[g,m,I])=>{f&&(f.instances[h]=a,m&&m!==f&&a&&a===g&&(f.leaveGuards.size||(f.leaveGuards=m.leaveGuards),f.updateGuards.size||(f.updateGuards=m.updateGuards))),a&&f&&(!m||!Ut(f,m)||!g)&&(f.enterCallbacks[h]||[]).forEach(w=>w(a))},{flush:"post"}),()=>{const a=r.value,f=e.name,h=l.value,g=h&&h.components[f];if(!g)return Wr(n.default,{Component:g,route:a});const m=h.props[f],I=m?m===!0?a.params:typeof m=="function"?m(a):m:null,H=eo(g,k({},I,t,{onVnodeUnmounted:j=>{j.component.isUnmounted&&(h.instances[f]=null)},ref:c}));return Wr(n.default,{Component:H,route:a})||H}}});function Wr(e,t){if(!e)return null;const n=e(t);return n.length===1?n[0]:n}const Xu=Yu;function Zu(e){const t=Uu(e.routes,e),n=e.parseQuery||xu,s=e.stringifyQuery||Mr,r=e.history,i=$t(),o=$t(),l=$t(),c=Yo(dt);let a=dt;Dt&&e.scrollBehavior&&"scrollRestoration"in history&&(history.scrollRestoration="manual");const f=cs.bind(null,v=>""+v),h=cs.bind(null,lu),g=cs.bind(null,fn);function m(v,P){let S,D;return fo(v)?(S=t.getRecordMatcher(v),D=P):D=v,t.addRoute(D,S)}function I(v){const P=t.getRecordMatcher(v);P&&t.removeRoute(P)}function w(){return t.getRoutes().map(v=>v.record)}function H(v){return!!t.getRecordMatcher(v)}function j(v,P){if(P=k({},P||c.value),typeof v=="string"){const p=us(n,v,P.path),y=t.resolve({path:p.path},P),b=r.createHref(p.fullPath);return k(p,y,{params:g(y.params),hash:fn(p.hash),redirectedFrom:void 0,href:b})}let S;if(v.path!=null)S=k({},v,{path:us(n,v.path,P.path).path});else{const p=k({},v.params);for(const y in p)p[y]==null&&delete p[y];S=k({},v,{params:h(p)}),P.params=h(P.params)}const D=t.resolve(S,P),U=v.hash||"";D.params=f(g(D.params));const u=fu(s,k({},v,{hash:ru(U),path:D.path})),d=r.createHref(u);return k({fullPath:u,hash:U,query:s===Mr?wu(v.query):v.query||{}},D,{redirectedFrom:void 0,href:d})}function O(v){return typeof v=="string"?us(n,v,c.value.path):k({},v)}function N(v,P){if(a!==v)return Kt(te.NAVIGATION_CANCELLED,{from:P,to:v})}function T(v){return ee(v)}function Q(v){return T(k(O(v),{replace:!0}))}function ie(v,P){const S=v.matched[v.matched.length-1];if(S&&S.redirect){const{redirect:D}=S;let U=typeof D=="function"?D(v,P):D;return typeof U=="string"&&(U=U.includes("?")||U.includes("#")?U=O(U):{path:U},U.params={}),k({query:v.query,hash:v.hash,params:U.path!=null?{}:v.params},U)}}function ee(v,P){const S=a=j(v),D=c.value,U=v.state,u=v.force,d=v.replace===!0,p=ie(S,D);if(p)return ee(k(O(p),{state:typeof p=="object"?k({},U,p.state):U,force:u,replace:d}),P||S);const y=S;y.redirectedFrom=P;let b;return!u&&au(s,D,S)&&(b=Kt(te.NAVIGATION_DUPLICATED,{to:y,from:D}),je(D,D,!0,!1)),(b?Promise.resolve(b):Le(y,D)).catch(_=>Qe(_)?Qe(_,te.NAVIGATION_GUARD_REDIRECT)?_:at(_):G(_,y,D)).then(_=>{if(_){if(Qe(_,te.NAVIGATION_GUARD_REDIRECT))return ee(k({replace:d},O(_.to),{state:typeof _.to=="object"?k({},U,_.to.state):U,force:u}),P||y)}else _=yt(y,D,!0,d,U);return ft(y,D,_),_})}function Me(v,P){const S=N(v,P);return S?Promise.reject(S):Promise.resolve()}function ut(v){const P=Tt.values().next().value;return P&&typeof P.runWithContext=="function"?P.runWithContext(v):v()}function Le(v,P){let S;const[D,U,u]=Cu(v,P);S=as(D.reverse(),"beforeRouteLeave",v,P);for(const p of D)p.leaveGuards.forEach(y=>{S.push(pt(y,v,P))});const d=Me.bind(null,v,P);return S.push(d),we(S).then(()=>{S=[];for(const p of i.list())S.push(pt(p,v,P));return S.push(d),we(S)}).then(()=>{S=as(U,"beforeRouteUpdate",v,P);for(const p of U)p.updateGuards.forEach(y=>{S.push(pt(y,v,P))});return S.push(d),we(S)}).then(()=>{S=[];for(const p of u)if(p.beforeEnter)if(De(p.beforeEnter))for(const y of p.beforeEnter)S.push(pt(y,v,P));else S.push(pt(p.beforeEnter,v,P));return S.push(d),we(S)}).then(()=>(v.matched.forEach(p=>p.enterCallbacks={}),S=as(u,"beforeRouteEnter",v,P,ut),S.push(d),we(S))).then(()=>{S=[];for(const p of o.list())S.push(pt(p,v,P));return S.push(d),we(S)}).catch(p=>Qe(p,te.NAVIGATION_CANCELLED)?p:Promise.reject(p))}function ft(v,P,S){l.list().forEach(D=>ut(()=>D(v,P,S)))}function yt(v,P,S,D,U){const u=N(v,P);if(u)return u;const d=P===dt,p=Dt?history.state:{};S&&(D||d?r.replace(v.fullPath,k({scroll:d&&p&&p.scroll},U)):r.push(v.fullPath,U)),c.value=v,je(v,P,S,d),at()}let Ve;function Gt(){Ve||(Ve=r.listen((v,P,S)=>{if(!vt.listening)return;const D=j(v),U=ie(D,vt.currentRoute.value);if(U){ee(k(U,{replace:!0,force:!0}),D).catch(nn);return}a=D;const u=c.value;Dt&&vu(Dr(u.fullPath,S.delta),zn()),Le(D,u).catch(d=>Qe(d,te.NAVIGATION_ABORTED|te.NAVIGATION_CANCELLED)?d:Qe(d,te.NAVIGATION_GUARD_REDIRECT)?(ee(k(O(d.to),{force:!0}),D).then(p=>{Qe(p,te.NAVIGATION_ABORTED|te.NAVIGATION_DUPLICATED)&&!S.delta&&S.type===xs.pop&&r.go(-1,!1)}).catch(nn),Promise.reject()):(S.delta&&r.go(-S.delta,!1),G(d,D,u))).then(d=>{d=d||yt(D,u,!1),d&&(S.delta&&!Qe(d,te.NAVIGATION_CANCELLED)?r.go(-S.delta,!1):S.type===xs.pop&&Qe(d,te.NAVIGATION_ABORTED|te.NAVIGATION_DUPLICATED)&&r.go(-1,!1)),ft(D,u,d)}).catch(nn)}))}let Ot=$t(),le=$t(),z;function G(v,P,S){at(v);const D=le.list();return D.length?D.forEach(U=>U(v,P,S)):console.error(v),Promise.reject(v)}function ze(){return z&&c.value!==dt?Promise.resolve():new Promise((v,P)=>{Ot.add([v,P])})}function at(v){return z||(z=!v,Gt(),Ot.list().forEach(([P,S])=>v?S(v):P()),Ot.reset()),v}function je(v,P,S,D){const{scrollBehavior:U}=e;if(!Dt||!U)return Promise.resolve();const u=!S&&bu(Dr(v.fullPath,0))||(D||!S)&&history.state&&history.state.scroll||null;return Bs().then(()=>U(v,P,u)).then(d=>d&&yu(d)).catch(d=>G(d,v,P))}const ye=v=>r.go(v);let Pt;const Tt=new Set,vt={currentRoute:c,listening:!0,addRoute:m,removeRoute:I,clearRoutes:t.clearRoutes,hasRoute:H,getRoutes:w,resolve:j,options:e,push:T,replace:Q,go:ye,back:()=>ye(-1),forward:()=>ye(1),beforeEach:i.add,beforeResolve:o.add,afterEach:l.add,onError:le.add,isReady:ze,install(v){v.component("RouterLink",zu),v.component("RouterView",Xu),v.config.globalProperties.$router=vt,Object.defineProperty(v.config.globalProperties,"$route",{enumerable:!0,get:()=>Lt(c)}),Dt&&!Pt&&c.value===dt&&(Pt=!0,T(r.location).catch(D=>{}));const P={};for(const D in dt)Object.defineProperty(P,D,{get:()=>c.value[D],enumerable:!0});v.provide(Jn,vt),v.provide($s,pi(P)),v.provide(Ss,c);const S=v.unmount;Tt.add(v),v.unmount=function(){Tt.delete(v),Tt.size<1&&(a=dt,Ve&&Ve(),Ve=null,c.value=dt,Pt=!1,z=!1),S()}}};function we(v){return v.reduce((P,S)=>P.then(()=>ut(S)),Promise.resolve())}return vt}function mf(){return Pe(Jn)}function _f(e){return Pe($s)}const gn="/StudyBase/api";async function mn(e){if(e.status===422){const t=await e.json(),n=new Error(t.detail||"需要确认");throw n.needConfirm=!0,n}if(!e.ok){let t=`HTTP ${e.status}`;try{t=(await e.json()).detail||t}catch{}throw new Error(t)}return e}async function ef(e){const t=await fetch(gn+e);return mn(t).then(n=>n.json())}async function yf(e,t){const n=await fetch(gn+e,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(t||{})});return mn(n).then(s=>s.json())}async function vf(e,t){const n=await fetch(gn+e,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(t||{})});return mn(n).then(s=>s.json())}async function bf(e){const t=await fetch(gn+e,{method:"DELETE"});return mn(t).then(n=>n.json())}async function Ef(e,t,n){const s=await fetch(gn+e,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(t||{})});await mn(s);const r=await s.blob(),i=s.headers.get("Content-Disposition")||"";let o="download.xlsx";const l=i.match(/filename\*=UTF-8''([^;]+)/);l&&(o=decodeURIComponent(l[1]));const c=URL.createObjectURL(r),a=document.createElement("a");a.href=c,a.download=o,document.body.appendChild(a),a.click(),a.remove(),URL.revokeObjectURL(c)}function Af(e){return window.confirm(e)}function Rf(e,t,n){const s=window.prompt((e?e+`
+`:"")+t,n||"");return s===null?null:s}function xf(e){window.alert(e)}const At=dn({subject:[],cause:[],source:[],archiveStatus:[],term:[],stage:[],loaded:!1});let ds=null;function tf(){return ds||(ds=ef("/questions/filter-options").then(e=>{At.subject=e.subject||[],At.cause=e.cause||[],At.source=e.source||[],At.archiveStatus=e.archive_status||[],At.term=e.term||[],At.stage=e.stage||[]}).catch(()=>{}).finally(()=>{At.loaded=!0})),ds}const wf={filters:null,idInput:"",kpInput:"",viewMode:"table",sortCol:"q.id",sortDesc:!1},nf={__name:"App",setup(e){return tf(),(t,n)=>{const s=Sl("router-view");return qi(),Ji(s)}}},sf=[{path:"/",name:"home",component:()=>re(()=>import("./Home-DsRFMl9b.js"),__vite__mapDeps([0,1,2]))},{path:"/subject-portal",name:"subjectPortal",component:()=>re(()=>import("./SubjectPortal-Dd6cJcYE.js"),__vite__mapDeps([3,1,4]))},{path:"/questions",name:"questionList",component:()=>re(()=>import("./QuestionList-BTXgtYyQ.js"),__vite__mapDeps([5,6,1,7,8]))},{path:"/questions/add",name:"questionAdd",component:()=>re(()=>import("./QuestionAdd-BiCGDs5N.js"),__vite__mapDeps([9,1]))},{path:"/questions/import",name:"fileImport",component:()=>re(()=>import("./FileImport-DD-NyQ6S.js"),__vite__mapDeps([10,1,11]))},{path:"/questions/import/preview",name:"importPreview",component:()=>re(()=>import("./ImportPreview-C_xcji13.js"),__vite__mapDeps([12,6,1,7,13]))},{path:"/questions/:id(\\d+)",name:"questionDetail",component:()=>re(()=>import("./QuestionDetail-CAAFb7hT.js"),__vite__mapDeps([14,6,1,7,15]))},{path:"/papers",name:"papersList",component:()=>re(()=>import("./PapersList-Blc7vrJ_.js"),__vite__mapDeps([16,1,17]))},{path:"/papers/create-by-id",name:"papersCreateById",component:()=>re(()=>import("./PapersCreateById-CkXeR85o.js"),[])},{path:"/papers/preview",name:"papersPreview",component:()=>re(()=>import("./PapersPreview-BMWFmAj9.js"),__vite__mapDeps([18,6,1,7]))},{path:"/papers/:id(\\d+)/detail",name:"papersDetail",component:()=>re(()=>import("./PapersDetail-C3r9DFcm.js"),[])},{path:"/papers/:id(\\d+)/result",name:"papersResult",component:()=>re(()=>import("./PapersResult-CRz9MIX0.js"),[])},{path:"/analysis/chapters",name:"chapters",component:()=>re(()=>import("./AnalysisChapters-Dl827wkL.js"),__vite__mapDeps([19,1,20]))},{path:"/analysis/knowledge",name:"knowledge",component:()=>re(()=>import("./AnalysisKnowledge-C-_KG8I4.js"),__vite__mapDeps([21,1,22]))},{path:"/analysis/pending",name:"pending",component:()=>re(()=>import("./AnalysisPending-0-9FJTKi.js"),__vite__mapDeps([23,1,24]))},{path:"/settings",name:"settings",component:()=>re(()=>import("./Settings-Dz0Dmd6y.js"),__vite__mapDeps([25,1,26]))},{path:"/settings/subjects",name:"settingsSubjects",component:()=>re(()=>import("./SettingsSubjects-CuNcG7LQ.js"),__vite__mapDeps([27,1,28]))},{path:"/settings/error-causes",name:"settingsErrorCauses",component:()=>re(()=>import("./SettingsErrorCauses-RNHx002T.js"),__vite__mapDeps([29,1,30]))},{path:"/settings/question-statuses",name:"settingsStatuses",component:()=>re(()=>import("./SettingsStatuses-K-fYJGhv.js"),__vite__mapDeps([31,1,32]))},{path:"/settings/default-params",name:"settingsDefaults",component:()=>re(()=>import("./SettingsDefaultParams-CHijF_4A.js"),[])}],rf=Zu({history:Iu("/StudyBase/"),routes:sf});Wc(nf).use(rf).mount("#app");export{Ce as A,mf as B,wf as C,pf as D,Re as E,Xe as F,Ts as G,Bs as H,vf as I,gf as J,bf as K,Rf as L,xn as M,Yi as a,_l as b,cf as c,ef as d,tf as e,At as f,Qo as g,yf as h,af as i,sc as j,bl as k,ff as l,df as m,Is as n,qi as o,uf as p,_f as q,lf as r,dn as s,Po as t,Lt as u,hf as v,of as w,xf as x,Af as y,Ef as z};
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<link rel="icon" type="image/svg+xml" href="data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64'><rect x='4' y='4' width='56' height='56' rx='8' ry='8' fill='%23ffffff' stroke='%234A90E2' stroke-width='6'/><text x='32' y='44' font-family='Helvetica,Arial,sans-serif' font-size='36' font-weight='bold' fill='%234A90E2' text-anchor='middle'>B</text></svg>" />
<title>Base</title>
- <script type="module" crossorigin src="/StudyBase/assets/index-CCYq_IiD.js"></script>
+ <script type="module" crossorigin src="/StudyBase/assets/index-DrsYg5hi.js"></script>
<link rel="stylesheet" crossorigin href="/StudyBase/assets/index-D5_k2e2e.css">
</head>
<body>
const chapterIdFilter = ref(null)
const kpIdFilter = ref(null)
const rightTimesFilter = ref(null)
+const stageIdsFilter = ref(null)
const sortCol = ref('q.id')
const sortDesc = ref(false)
chapter_id_filter: chapterIdFilter.value,
kp_id_filter: kpIdFilter.value,
right_times_filter: rightTimesFilter.value,
+ stage_ids_filter: stageIdsFilter.value,
mode: viewMode.value,
sort_col: sortCol.value,
sort_desc: sortDesc.value,
chapter_id_filter: chapterIdFilter.value,
kp_id_filter: kpIdFilter.value,
right_times_filter: rightTimesFilter.value,
+ stage_ids_filter: stageIdsFilter.value,
mode: 'table',
sort_col: sortCol.value,
sort_desc: sortDesc.value,
if (route.query.chapter_id) chapterIdFilter.value = parseInt(route.query.chapter_id)
if (route.query.kp_id) kpIdFilter.value = parseInt(route.query.kp_id)
if (route.query.right_times) rightTimesFilter.value = route.query.right_times
+ if (route.query.stage_ids) stageIdsFilter.value = String(route.query.stage_ids)
// 学期筛选默认选中系统设定中的默认学期(路由显式带入 term 时仍以其为准)
try {
// 从其他页返回列表时恢复上一次筛选结果(分析页跳转带筛选参数时仍以参数为准)
const hasInitQuery = !!(route.query.chapter_id || route.query.kp_id || route.query.right_times ||
+ route.query.stage_ids ||
route.query.subject || route.query.stage || route.query.term || route.query.status ||
route.query.archive_status || route.query.question_nature || route.query.paper_count)
if (!hasInitQuery && questionListPersist.filters) {
</div>
</div>
- <div v-for="item in subjectStats" :key="item.subject" class="card subject-block">
- <div class="subject-title">{{ item.subject }}</div>
- <div style="display:flex; gap:20px; flex-wrap:wrap;">
- <div class="card stat-card" style="flex:1;min-width:360px;">
- <div class="stat-title" style="color:#E64A19;">错题情况回顾</div>
- <div class="stat-line"><span class="stat-label">错题总数:</span><span class="stat-val" style="color:#333;">{{ item.stats.wrong_total }}</span></div>
- <div class="stat-line"><span class="stat-label">已解决数:</span><span class="stat-val" style="color:#2E7D32;">{{ item.stats.wrong_fixed }}</span></div>
- <div class="stat-line"><span class="stat-label">解决比例:</span><span class="stat-val big" style="color:#1976D2;">{{ item.stats.wrong_ratio }}</span></div>
- <div class="stat-line"><span class="stat-label">遗留题目数:</span><span class="stat-val" style="color:#D32F2F;">{{ item.stats.wrong_remained }}</span></div>
- </div>
- <div class="card stat-card" style="flex:1;min-width:360px;">
- <div class="stat-title" style="color:#00796B;">强化推题追踪</div>
- <div class="stat-line"><span class="stat-label">推题总数:</span><span class="stat-val" style="color:#333;">{{ item.stats.push_total }}</span></div>
- <div class="stat-line"><span class="stat-label">已完成数:</span><span class="stat-val" style="color:#2E7D32;">{{ item.stats.push_fixed }}</span></div>
- <div class="stat-line"><span class="stat-label">完成比例:</span><span class="stat-val big" style="color:#F57C00;">{{ item.stats.push_ratio }}</span></div>
- <div class="stat-line"><span class="stat-label">遗留题目数:</span><span class="stat-val" style="color:#D32F2F;">{{ item.stats.push_remained }}</span></div>
- </div>
+ <div class="subject-grid">
+ <div v-for="(item, idx) in subjectStats" :key="item.subject"
+ class="card subject-block" :class="subjectClass(item.subject, idx)">
+ <div class="subject-title">{{ item.subject }}</div>
+ <div class="section-label">错题情况回顾</div>
+ <div class="stat-line"><span class="stat-label label-xl">遗留题目数:</span><span class="stat-val xl clickable" style="color:#D32F2F;" @click="goList('remained', item.subject)">{{ item.stats.wrong_remained }}</span></div>
+ <div class="stat-line"><span class="stat-label">错题总数:</span><span class="stat-val clickable" style="color:#333;" @click="goList('total', item.subject)">{{ item.stats.wrong_total }}</span></div>
+ <div class="stat-line"><span class="stat-label">已解决数:</span><span class="stat-val clickable" style="color:#2E7D32;" @click="goList('fixed', item.subject)">{{ item.stats.wrong_fixed }}</span></div>
+ <div class="stat-line"><span class="stat-label">解决比例:</span><span class="stat-val" style="color:#1976D2;">{{ item.stats.wrong_ratio }}</span></div>
</div>
</div>
- <div style="display:flex;gap:15px;margin-top:20px;justify-content:center;flex-wrap:wrap;">
+ <div style="display:flex;gap:15px;margin-top:16px;justify-content:center;flex-wrap:wrap;">
<button class="btn" style="background:#FF4D4F;color:#000;font-weight:bold;padding:10px 30px;font-size:14px;" @click="$router.push('/analysis/pending')">遗留分析</button>
<button class="btn" style="background:#1890FF;color:#000;font-weight:bold;padding:10px 30px;font-size:14px;" @click="$router.push('/analysis/chapters')">章节分析</button>
<button class="btn" style="background:#52C41A;color:#000;font-weight:bold;padding:10px 30px;font-size:14px;" @click="$router.push('/analysis/knowledge')">知识点分析</button>
<script setup>
import { ref, onMounted } from 'vue'
+import { useRouter } from 'vue-router'
import { apiGet, apiPost } from '../api'
import { filterOptions, ensureFilterOptions } from '../stores/options'
+const router = useRouter()
+
const subjects = ref([])
const stages = ref([])
const stageSelected = ref({})
const termOptions = ref(['全部'])
const subjectStats = ref([])
+// 科目主题色:数学蓝 / 物理青 / 化学橙 / 生物绿,其余科目循环取备用色
+const SUBJECT_THEMES = { '数学': 'math', '物理': 'physics', '化学': 'chemistry', '生物': 'biology' }
+const FALLBACK_THEMES = ['math', 'physics', 'chemistry', 'biology', 'purple', 'pink']
+function subjectClass(name, idx) {
+ return SUBJECT_THEMES[name] || FALLBACK_THEMES[idx % FALLBACK_THEMES.length]
+}
+
function emptyStats() {
- return {
- wrong_total: 0, wrong_fixed: 0, wrong_ratio: '0%', wrong_remained: 0,
- push_total: 0, push_fixed: 0, push_ratio: '0%', push_remained: 0
- }
+ return { wrong_total: 0, wrong_fixed: 0, wrong_ratio: '0%', wrong_remained: 0 }
+}
+
+// 点击数字跳转题目列表,筛选条件与面板统计口径一致:
+// 错题类型 + 当前科目 + 所选阶段(多选) + 学期;归档不限(面板统计不排除已归档)
+// 错题总数 → 无附加条件
+// 已解决数 → 正确次数 > 0(rt>0)
+// 遗留题目数 → 正确次数 = 0 或为空(rt=0)
+function goList(kind, subject) {
+ const q = { subject: subject, question_nature: '错题', archive_status: '全部' }
+ if (currentTerm.value && currentTerm.value !== '全部') q.term = currentTerm.value
+ const ids = Object.entries(stageSelected.value).filter(([, v]) => v).map(([k]) => k)
+ if (ids.length) q.stage_ids = ids.join(',')
+ if (kind === 'fixed') q.right_times = 'rt>0'
+ else if (kind === 'remained') q.right_times = 'rt=0'
+ router.push({ path: '/questions', query: q })
}
async function refreshData() {
</script>
<style scoped>
-.subject-block { padding: 14px 16px; }
-.subject-title { font-size: 16px; font-weight: bold; margin-bottom: 12px; color: #333; }
-.stat-title { font-size: 14px; font-weight: bold; margin-bottom: 10px; }
-.stat-line { display: flex; align-items: center; margin: 8px 0; }
-.stat-label { color: #666; font-size: 13px; }
-.stat-val { font-size: 24px; font-weight: bold; font-family: Helvetica, sans-serif; margin-left: 10px; }
-.stat-val.big { font-size: 32px; }
+.subject-grid {
+ display: grid;
+ grid-template-columns: repeat(2, 1fr);
+ gap: 12px;
+ margin-top: 12px;
+}
+@media (max-width: 900px) {
+ .subject-grid { grid-template-columns: 1fr; }
+}
+.subject-block { padding: 12px 18px 8px; margin-bottom: 0; }
+.subject-title { font-size: 21px; font-weight: bold; margin-bottom: 2px; }
+.section-label { font-size: 12px; color: #999; margin-bottom: 4px; }
+.stat-line { display: flex; align-items: center; gap: 10px; margin: 7px 0; }
+.stat-label { color: #555; font-size: 13px; }
+.stat-label.label-xl { font-size: 18px; font-weight: bold; color: #333; }
+.stat-val { font-size: 20px; font-weight: bold; font-family: Helvetica, sans-serif; }
+.stat-val.xl { font-size: 28px; }
+.clickable { cursor: pointer; }
+.clickable:hover { text-decoration: underline; }
+
+.subject-block.math { background: #E3F2FD; border-color: #BBDEFB; }
+.subject-block.math .subject-title { color: #1565C0; }
+.subject-block.physics { background: #E0F7FA; border-color: #B2EBF2; }
+.subject-block.physics .subject-title { color: #00838F; }
+.subject-block.chemistry { background: #FFF3E0; border-color: #FFE0B2; }
+.subject-block.chemistry .subject-title { color: #EF6C00; }
+.subject-block.biology { background: #E8F5E9; border-color: #C8E6C9; }
+.subject-block.biology .subject-title { color: #2E7D32; }
+.subject-block.purple { background: #F3E5F5; border-color: #E1BEE7; }
+.subject-block.purple .subject-title { color: #7B1FA2; }
+.subject-block.pink { background: #FCE4EC; border-color: #F8BBD0; }
+.subject-block.pink .subject-title { color: #C2185B; }
</style>