1import{r as V,z as vt,l as x,d as z,w as it,a as s,s as e,F as w,a1 as E,b as t,a6 as X,i as l,x as m,n as R,k as T,m as Tt,S as H,g as J,bb as st,am as ot,A as o,c as F,bE as At,ad as St,ae as Et,v as pt,e as ht}from"./index-B6Ol4me1.js";const yt=[{label:"æ ·ä¾ç»åA(28å²äºèç½PM)",text:"28å²å¥³æ§,å±
ä½å¨ä¸æµ·,äºèç½å
¬å¸äº§åç»ç,ææ¶å
¥2.5ä¸ãæ¯å¤©éå¤1å°æ¶,é度åå¡ä¾èµ(æ¯å¤©è³å°2æ¯),注é身æç®¡ç,å好ä½ç³;æ¿æä¸ºåè´¨åå
è£
é¢å¼ä»æº¢ä»·,常å¨ä¾¿å©åºåç马è´ç©,忬¢å°è¯æ°åçã"},{label:"æ ·ä¾ç»åB(54å²å¿åæå¸)",text:"54å²ç·æ§,å¿åä¸å¦æå¸,ææ¶å
¥7åãå¹³æ¶åè¶,ä¸å¸¸ååå¡,åªå¨å¿å¥³æ¥è®¿æ¶å¶å°è·çå䏿¯;æ¶è´¹èä¿,å¯¹ä»·æ ¼ææ,åå¡åçåªè®¤å¾éå·¢;ç½è´ä¸çç»,主è¦å¨æ¬å°è¶
å¸è´ç©ã"}];function Dt(n,i){return V.post("/open/quant-demo/browser-answer",{surveyUrl:n,personaText:i})}function Ct(n){return V.get(`/open/quant-demo/browser-answer/${n}`)}function _t(n,i=!1){return V.post("/open/quant-demo/scan",{surveyUrl:n,force:i})}function kt(n){return V.get(`/open/quant-demo/scan/${n}`)}function Rt(n,i){const b=new FormData;return b.append("file",n),b.append("surveyUrl",i),V.post("/open/quant-demo/survey-doc",b)}function Lt(n){return V.get(`/open/quant-demo/survey-doc/${n}`)}function Ot(n){const i=new FormData;return i.append("file",n),V.post("/open/quant-demo/parse-quota",i)}function Ut(n,i){return V.post("/open/quant-demo/alignment",{surveyUrl:n,quota:i})}function Pt(n,i=""){return V.post("/open/quant-demo/generate-personas",{quota:n,surveyUrl:i})}function Bt(n){return V.post("/open/quant-demo/batch",n)}function Mt(n){return V.get(`/open/quant-demo/batch/${n}`)}function Gt(n){return V.post(`/open/quant-demo/batch/${n}/advance`)}const Vt=1500;function Ft(){const n=x(""),i=x(""),b=x(null),_=x(!1),r=x(null);let d=null;const p=()=>{d&&(clearInterval(d),d=null),_.value=!1},f=async c=>{try{b.value=await Ct(c),b.value.status!=="RUNNING"&&p()}catch(h){r.value=h instanceof Error?h.message:"æ¥è¯¢ä»»å¡è¿åº¦å¤±è´¥",p()}},a=async()=>{if(!_.value){_.value=!0,r.value=null,b.value=null;try{const{taskId:c}=await Dt(n.value.trim(),i.value.trim());d=setInterval(()=>f(c),Vt)}catch(c){r.value=c instanceof Error?c.message:"å¯å¨çé¢ä»»å¡å¤±è´¥",_.value=!1}}};return vt(p),{surveyUrl:n,personaText:i,task:b,isRunning:_,errorMessage:r,start:a}}const Qt=2e3;function jt(n){const i=x(null),b=x(!1),_=x(null);let r=null;const d=()=>{r&&(clearInterval(r),r=null),b.value=!1},p=async a=>{try{i.value=await kt(a),i.value.status!=="RUNNING"&&d()}catch(c){_.value=c instanceof Error?c.message:"æ¥è¯¢æè§£è¿åº¦å¤±è´¥",d()}},f=async(a=!1)=>{if(!(!n.value.trim()||b.value)){b.value=!0,_.value=null,i.value=null;try{const{taskId:c}=await _t(n.value.trim(),a);await p(c),i.value&&i.value.status==="RUNNING"&&(r=setInterval(()=>p(c),Qt))}catch(c){_.value=c instanceof Error?c.message:"å¯å¨é®å·æè§£å¤±è´¥",b.value=!1}}};return vt(d),{scanTask:i,isScanning:b,errorMessage:_,startScan:f}}const Wt=/^第 (\d+) [轮页]/,$t=["模å夿","模åå¤å®","æ¬é¡µé¢ç®"],zt=n=>n.startsWith("ç¹å»")?"click":n.startsWith("å¡«å")?"fill":n.startsWith("æä½å¤±è´¥")||n.startsWith("ä»»å¡å¤±è´¥")||n.startsWith("æè§£å¤±è´¥")?"error":"system",Ht=n=>$t.some(i=>n.startsWith(i)),Kt=n=>{const i=$t.find(b=>n.startsWith(b));return i?n.slice(i.length).replace(/^[:ï¼]\s*/,""):n};function Xt(n){const i=[];let b=0,_=null;const r=()=>{const d={id:i.length,round:b,thought:null,tools:[]};return i.push(d),d};for(const d of n){const p=d.description.match(Wt);if(p){b=Number(p[1]),_=r();continue}if(_||(_=r()),Ht(d.description)){(_.thought!==null||_.tools.length>0)&&(_=r()),_.thought=Kt(d.description);continue}_.tools.push({seq:d.seq,time:d.time,kind:zt(d.description),text:d.description})}return i.filter(d=>d.thought!==null||d.tools.length>0)}const Yt={key:0,class:"agent-thought"},Zt={key:1,class:"tool-group"},Jt={class:"tool-icon"},ts={class:"tool-text"},ss={class:"tool-time"},es={key:0,class:"agent-typing"},ns=z({__name:"AgentStreamView",props:{steps:{},isRunning:{type:Boolean}},setup(n){const i=n,b=T(()=>Xt(i.steps)),_={click:"â",fill:"â",error:"â ",system:"â¯"},r=x(null);return it(()=>i.steps.length,async()=>{await Tt(),r.value&&(r.value.scrollTop=r.value.scrollHeight)}),(d,p)=>(s(),e("div",{ref_key:"scrollEl",ref:r,class:"agent-stream"},[(s(!0),e(w,null,E(b.value,f=>(s(),e("article",{key:f.id,class:"agent-block"},[f.thought?(s(),e("p",Yt,[p[0]||(p[0]=t("span",{class:"thought-badge"},"AI",-1)),X(l(f.thought),1)])):m("",!0),f.tools.length>0?(s(),e("div",Zt,[(s(!0),e(w,null,E(f.tools,a=>(s(),e("div",{key:a.seq,class:R(["tool-call",`is-${a.kind}`])},[t("span",Jt,l(_[a.kind]),1),t("span",ts,l(a.text),1),t("span",ss,l(a.time),1)],2))),128))])):m("",!0)]))),128)),n.isRunning?(s(),e("div",es,[...p[1]||(p[1]=[t("span",{class:"dot"},null,-1),t("span",{class:"dot"},null,-1),t("span",{class:"dot"},null,-1)])])):m("",!0)],512))}}),et=H(ns,[["__scopeId","data-v-cfe9ae1e"]]),as={class:"lab-pane-body"},ls={key:0,class:"lab-alert"},os={key:1,class:"scan-empty"},is={key:2,class:"list-toolbar"},us={class:"toolbar-count"},rs={key:0,class:"group-head"},cs={class:"group-title"},ds={key:0,class:"option-chips"},vs={class:"row-seq"},ps={class:"row-body"},hs={class:"row-title-line"},ys={class:"row-title"},fs=["title"],bs={class:"meta-tag"},_s={key:0,class:"meta-tag"},ks={key:0,class:"row-condition"},$s={key:1,class:"option-chips"},ft=" - ",ms=z({__name:"ParsedQuestionList",props:{task:{}},setup(n){const i=n,b=T(()=>{const h=[];for(const u of i.task.questions){const v=u.title.indexOf(ft),$=v>0?u.title.slice(0,v):"",N=$?u.title.slice(v+ft.length):u.title,D=h[h.length-1];$&&D&&D.main===$?D.items.push({sub:N,question:u}
1):h.push({main:$,sharedOptions:null,items:[{sub:N,question:u}]})}for(const u of h){const v=u.items[0];if(!v||u.items.length<2)continue;const $=v.question.options.join("");u.items.every(D=>D.question.options.join("")===$)&&(u.sharedOptions=v.question.options)}return h}),_={single:"åé",multi:"å¤é",matrix:"ç©éµ",scale:"æå",text:"填空"},r={çå«é¢:"is-screen",人设é¢:"is-persona",认ç¥é¢:"is-aware",è¯ä»·é¢:"is-rate",é®çé¢:"is-open",å ¶ä»é¢:"is-other"},d=()=>{const h=[];for(const u of i.task.questions){const v=_[u.control]??u.control,$=u.required?"å¿ ç":"éç";h.push(`${u.seq}. ${u.title} [${v}·${$}·${u.category||"æªåç±»"}]`),u.displayCondition&&h.push(` æ¡ä»¶: ${u.displayCondition}`),u.options.length>0&&h.push(` é项: ${u.options.join(" / ")}`),u.terminateOptions.length>0&&h.push(` â ç»æ¢é项: ${u.terminateOptions.join(" / ")}`)}return h.join(` 2`)},p=x(!1),f=async()=>{try{await navigator.clipboard.writeText(d()),p.value=!0,window.setTimeout(()=>p.value=!1,2e3)}catch{p.value=!1}},a=(h,u)=>h.terminateOptions.includes(u),c=(h,u)=>{const v=h.items[0];return v?a(v.question,u):!1};return(h,u)=>(s(),e("div",as,[n.task.status==="FAILED"?(s(),e("div",ls," è§£ææªå®æ´:"+l(n.task.error||"æªç¥é误")+"(以ä¸ä¸ºå·²æ¶éå°çé¢ç®) ",1)):m("",!0),n.task.questions.length===0?(s(),e("div",os," æªè§£æåºé¢ç®"+l(n.task.error?`:${n.task.error}`:""),1)):(s(),e("div",is,[t("span",us,"å ± "+l(n.task.questions.length)+" 项ä½çåå ",1),t("button",{class:"lab-chip",onClick:f},l(p.value?"â å·²å¤å¶":"å¤å¶ä¸ºææ¬"),1)])),(s(!0),e(w,null,E(b.value,(v,$)=>(s(),e("div",{key:$,class:"question-group"},[v.main?(s(),e("div",rs,[t("p",cs,l(v.main),1),v.sharedOptions?.length?(s(),e("div",ds,[(s(!0),e(w,null,E(v.sharedOptions,N=>(s(),e("span",{key:N,class:R(["option-chip",{"is-terminate":c(v,N)}])},l(N),3))),128))])):m("",!0)])):m("",!0),(s(!0),e(w,null,E(v.items,N=>(s(),e("div",{key:N.question.seq,class:R(["question-row",{"is-sub":v.main!==""}])},[t("span",vs,l(N.question.seq),1),t("div",ps,[t("div",hs,[t("p",ys,l(N.sub),1),t("span",{class:R(["category-badge",r[N.question.category]??"is-other"]),title:N.question.reason},l(N.question.category||"æªåç±»"),11,fs),t("span",bs,l(_[N.question.control]??N.question.control),1),N.question.required?m("",!0):(s(),e("span",_s,"éç"))]),N.question.displayCondition?(s(),e("p",ks," ⤷ "+l(N.question.displayCondition),1)):m("",!0),!v.sharedOptions&&N.question.options.length>0?(s(),e("div",$s,[(s(!0),e(w,null,E(N.question.options,D=>(s(),e("span",{key:D,class:R(["option-chip",{"is-terminate":a(N.question,D)}])},l(D),3))),128))])):m("",!0)])],2))),128))]))),128))]))}}),mt=H(ms,[["__scopeId","data-v-35358cb0"]]),gs={class:"browser-panel"},xs={class:"lab-card"},Is={class:"control-field"},Ns={class:"control-field"},ws={class:"quick-fill"},qs=["onClick"],Ts=["disabled"],As={key:0,class:"lab-alert"},Ss={class:"lab-pane"},Es={class:"pane-head"},Ds={class:"view-switch"},Cs=["disabled"],Rs=["disabled"],Ls={key:0,class:"elapsed"},Os={key:1,class:"elapsed"},Us={key:2,class:"elapsed"},Ps={key:0,class:"scan-alert"},Bs={key:3,class:"pane-empty"},Ms={key:0,class:"diagnostic-panel"},Gs={class:"diagnostic-head"},Vs={class:"diagnostic-body"},Fs={key:1,class:"pane-empty"},Qs={key:3,class:"answer-result"},js={class:"result-meta"},Ws={class:"result-count"},zs={key:0,class:"result-elapsed"},Hs={key:1,class:"result-elapsed"},Ks={class:"result-list"},Xs={class:"result-index"},Ys={class:"result-body"},Zs={class:"result-question"},Js={class:"result-answer"},te=z({__name:"BrowserAnswerPanel",setup(n){const i=x("process"),{surveyUrl:b,personaText:_,task:r,isRunning:d,errorMessage:p,start:f}=Ft(),{scanTask:a,isScanning:c,errorMessage:h,startScan:u}=jt(b),v=()=>{i.value="parsed";const I=b.value.trim();I&&(!a.value||a.value.surveyUrl!==I)&&u(!1)},$=T(()=>b.value.trim()!==""&&_.value.trim()!==""&&!d.value),N=T(()=>r.value?.answers??[]),D=T(()=>r.value?.status==="DONE"),O=T(()=>{const I=r.value?.elapsedMs;if(I==null)return"";const g=I/1e3;return g<60?`${g.toFixed(1)} ç§`:`${Math.floor(g/60)}
2 å ${Math.round(g%60)} ç§`}),C=T(()=>{const I=r.value?.totalTokens;return I?`${I.toLocaleString()} tokens`:""}),j=T(()=>r.value?.status==="FAILED"),B=T(()=>{const I=r.value;if(!I)return"";const g=I.steps.slice(-8).map(A=>`[${A.time}] ${A.description}`).join(` 3`);return["===== AI å®éçé¢ Â· ææ¥ä¿¡æ¯ =====",`ä»»å¡ID(taskId): ${I.taskId}`,`ç¶æ: ${I.status}`,`é误: ${I.error??"æ "}`,`èæ¶: ${O.value}`,`æ¶è tokens: ${I.totalTokens??0}`,`é®å·é¾æ¥: ${b.value}`,`被访è ç»å: ${_.value}`,"","æ°æ®åºå®ä½:"," MongoDB collection: quant_demo_answer_task",` æ¥è¯¢æ¡ä»¶: { "taskId": "${I.taskId}" }`,"",`æå ${Math.min(8,I.steps.length)} æ¥æä½æ¥å¿:`,g||"(æ )","================================"].join(` 4`)}),q=x(!1),Y=async()=>{try{await navigator.clipboard.writeText(B.value),q.value=!0,window.setTimeout(()=>q.value=!1,2e3)}catch{q.value=!1}},K=T(()=>!r.value||r.value.status==="RUNNING"?"is-running":r.value.status==="DONE"?"is-done":"is-failed"),Q=T(()=>r.value?r.value.status==="RUNNING"?"çé¢ä¸":r.value.status==="DONE"?"已宿":"失败":"å¯å¨ä¸"),M=()=>{b.value=`${window.location.origin}/lab-mock-survey.html`},P=I=>{_.value=yt[I]?.text??""};return it(()=>r.value?.status,I=>{I==="DONE"?i.value="result":I==="RUNNING"&&(i.value="process")}),(I,g)=>(s(),e("section",gs,[t("aside",xs,[t("div",Is,[g[6]||(g[6]=t("label",{class:"field-label"},"é®å·é¾æ¥",-1)),J(t("input",{"onUpdate:modelValue":g[0]||(g[0]=A=>st(b)?b.value=A:null),class:"lab-input",placeholder:"https://⦠é®å·å°å"},null,512),[[ot,o(b)]]),t("div",{class:"quick-fill"},[t("button",{class:"lab-chip",onClick:M},"å¡«å ¥ Mock é®å·")])]),t("div",Ns,[g[8]||(g[8]=t("label",{class:"field-label"},"被访è ç»å",-1)),J(t("textarea",{"onUpdate:modelValue":g[1]||(g[1]=A=>st(_)?_.value=A:null),class:"lab-textarea",rows:"7",placeholder:"æè¿°è¿ä½è¢«è®¿è æ¯ä»ä¹äºº:å¹´é¾ãèä¸ãæ¶å ¥ãçæ´»æ¹å¼ãæ¶è´¹ä¹ æ¯â¦â¦"},null,512),[[ot,o(_)]]),t("div",ws,[g[7]||(g[7]=t("span",{class:"quick-fill-label"},"å¿«æ·ç¤ºä¾",-1)),(s(!0),e(w,null,E(o(yt),(A,W)=>(s(),e("button",{key:A.label,class:"lab-chip",onClick:Z=>P(W)},l(A.label),9,qs))),128))])]),t("button",{class:"lab-btn-primary",disabled:!$.value,onClick:g[2]||(g[2]=(...A)=>o(f)&&o(f)(...A))},l(o(d)?"çé¢è¿è¡ä¸ â¦":"å¯å¨çé¢"),9,Ts),g[9]||(g[9]=t("p",{class:"lab-hint"}," å¯å¨åç± AI å¨åå°ç宿µè§å¨ä¸éé¢ä½ç,å³ä¾§å®æ¶åç°å®çæè䏿¯ä¸æ¥æä½ã ",-1)),o(p)?(s(),e("div",As,l(o(p)),1)):m("",!0)]),t("div",Ss,[t("div",Es,[g[11]||(g[11]=t("span",{class:"pane-title"},"çé¢è¯¦æ ",-1)),t("div",Ds,[t("button",{class:R({active:i.value==="process"}),onClick:g[3]||(g[3]=A=>i.value="process")}," çé¢è¿ç¨ ",2),t("button",{class:R({active:i.value==="result"}),disabled:!D.value,onClick:g[4]||(g[4]=A=>i.value="result")}," çé¢ç»æ ",10,Cs),t("button",{class:R({active:i.value==="parsed"}),disabled:!o(b).trim(),onClick:v}," é®å·è§£æ ",10,Rs)]),i.value==="parsed"?(s(),e(w,{key:0},[o(a)?.status==="DONE"?(s(),e("span",Ls," å ± "+l(o(a).questions.length)+" 项 ",1)):m("",!0),o(a)&&!o(c)?(s(),e("button",{key:1,class:"lab-chip",onClick:g[5]||(g[5]=A=>o(u)(!0))}," éæ°è§£æ ")):m("",!0)],64)):(s(),e(w,{key:1},[o(r)||o(d)?(s(),e("span",{key:0,class:R(["status-chip",K.value])},[g[10]||(g[10]=t("span",{class:"dot"},null,-1)),X(l(Q.value),1)],2)):m("",!0),o(r)&&O.value?(s(),e("span",Os,"èæ¶ "+l(O.value),1)):m("",!0),o(r)&&C.value?(s(),e("span",Us,"æ¶è "+l(C.value),1)):m("",!0)],64))]),i.value==="parsed"?(s(),e(w,{key:0},[o(h)?(s(),e("div",Ps,l(o(h)),1)):m("",!0),o(a)&&o(a).status==="RUNNING"?(s(),F(et,{key:1,steps:o(a).steps,"is-running":""},null,8,["steps"])):o(a)?(s(),F(mt,{key:2,task:o(a)},null,8,["task"])):(s(),e("div",Bs,[...g[12]||(g[12]=[t("span",{class:"empty-glyph"},"â°",-1),t("p",{class:"empty-text"}," è§£æé®å·é¾æ¥å,è¿éä¼å±ç¤º AI æè§£åºçæ¯éé¢ç宿´ç»æ(é¢å¹²ãé项åæãæ§ä»¶ãæ¾éä¸ç»æ¢é»è¾),ç¨æ¥ä¸æåçé®å·éé¢å¯¹æ¯ææ¥ã ",-1)])]))],64)):(s(),e(w,{key:1},[j.value?(s(),e("div",Ms,[t("div",Gs,[g[13]||(g[13]=t("span",{class:"diagnostic-title"},"â çé¢åºé · ææ¥ä¿¡æ¯",-1)),t("button",{class:"lab-chip",onClick:Y},l(q.value?"â å·²å¤å¶":"å¤å¶ææ¥ä¿¡æ¯"),1)]),t("pre",Vs,l(B.value),1),g[14]||(g[14]=t("p",{class:"diagnostic-hint"},"æä¸é¢è¿æ®µå¤å¶åç»å¼å,å¯ç´æ¥å®ä½æ°æ®åºè®°å½ä¸åºéæ¥éª¤ã",-1))])):m("",!0),o(r)?i.value==="process"?(s(),F(et,{key:2,steps:o(r)?.steps??[],"is-running":o(d)},null,8,["steps","is-running"])):(s(),e("div",Qs,[t("div",js,[t("span",Ws,"å ±ç "+l(N.value.length)+" é¢",1),O.value?(s(),e("span",zs,"èæ¶ "+l(O.value),1)):m("",!0),C.value?(s(),e("span",Hs,"æ¶è "+l(C.value),1)):m("",!0),g[16]||(g[16]=t("span",{class:"result-tip"},"䏿¹ä¸ºæ¬æ¬¡é®å·çæç»ä½ç",-1))]),t("div",Ks,[(s(!0),e(w,null,E(N.value,(A,W)=>(s(),e("div",{key:W,class:"result-row"},[t("span",Xs,l(W+1),1),t("div",Ys,[t("p",Zs,l(A.question),1),t("p",Js,l(A.answer),1)])]))),128))])])):(s(),e("div",Fs,[...g[15]||(g[15]=[t("span",{class:"empty-glyph"},"â",-1),t("p",{class:"empty-text"}," å¡«å ¥é®å·é¾æ¥ä¸è¢«è®¿è ç»ååç¹å»ãå¯å¨çé¢ã,è¿éä¼åå AI 对è¯ä¸æ ·,鿥å±ç¤ºå®çæè䏿¯ä¸æ¥æä½ã ",-1)])]))],64))])]))}}),se=H(te,[["__scopeId","data-v-27781704"]]),bt=2500,ee=2e3,ne=2e3,ae=50;function le(){const n=x(""),i=x(null),b=x(""),_=x(null),r=x(null),d=x(!1);let p=null;const f=x(null),a=x(!1);let c=null;const h=x(""),u=x(null),v=x(null),$=x(!1),N=x(0),D=x(null),O=x([]),C=x(!1),j=x(0),B=x(null),q=x(!1),Y=x(ae),K=x(!1),Q=x(!1);let M=null;const P=k=>{k&&clearInterval(k)},I=(k,L)=>{i.value=k instanceof Error?k.message:L},g=k=>{_.value=k,b.value=k.name},A=async k=>{try{r.value=await Lt(k),r.value.status!=="RUNNING"&&(P(p),p=null,d.value=!1)}catch(L){I(L,"æ¥è¯¢çº¸è´¨é®å·è§£æè¿åº¦å¤±è´¥"),P(p),p=null,d.value=!1}},W=async()=>
4{if(!(!_.value||!n.value.trim()||d.value)){d.value=!0,i.value=null,r.value=null;try{const{docId:k}=await Rt(_.value,n.value.trim());await A(k),r.value&&r.value.status==="RUNNING"&&(p=setInterval(()=>A(k),ne))}catch(k){I(k,"纸质é®å·ä¸ä¼ è§£æå¤±è´¥"),d.value=!1}}},Z=async k=>{try{f.value=await kt(k),f.value.status!=="RUNNING"&&(P(c),c=null,a.value=!1)}catch(L){I(L,"æ¥è¯¢æè§£è¿åº¦å¤±è´¥"),P(c),c=null,a.value=!1}},G=async(k=!1)=>{if(!(!n.value.trim()||a.value)){a.value=!0,i.value=null,f.value=null;try{const{taskId:L}=await _t(n.value.trim(),k);await Z(L),f.value&&f.value.status==="RUNNING"&&(c=setInterval(()=>Z(L),ee))}catch(L){I(L,"å¯å¨é®å·æè§£å¤±è´¥"),a.value=!1}}},tt=k=>{u.value=k,h.value=k.name,v.value=null,D.value=null},ut=async()=>{if(!(!v.value||!n.value.trim()))try{D.value=await Ut(n.value.trim(),v.value)}catch{D.value=null}},rt=async()=>{if(!(!u.value||$.value)){$.value=!0,i.value=null,v.value=null,D.value=null;try{const k=await Ot(u.value);if(k.error||!k.quota){i.value=k.error??"é
é¢è¡¨è§£æå¤±è´¥";return}v.value=k.quota,N.value=k.totalTokens??0,O.value=[],j.value=0,await ut()}catch(k){I(k,"é
é¢è¡¨è§£æè¯·æ±å¤±è´¥")}finally{$.value=!1}}},ct=async()=>{if(!(!v.value||C.value)){C.value=!0,i.value=null,O.value=[];try{const k=await Pt(v.value,n.value.trim());if(k.error){i.value=k.error;return}O.value=k.personas,j.value=k.totalTokens??0}catch(k){I(k,"ç»åçæè¯·æ±å¤±è´¥")}finally{C.value=!1}}},nt=async k=>{try{B.value=await Mt(k),(B.value.status==="FINISHED"||B.value.status==="PLAN_FAILED")&&(P(M),M=null,q.value=!1)}catch(L){I(L,"æ¥è¯¢æ¹æ¬¡è¿åº¦å¤±è´¥"),P(M),M=null,q.value=!1}},at=async()=>{if(!(O.value.length===0||!n.value.trim()||q.value)){q.value=!0,i.value=null,B.value=null;try{const{batchId:k}=await Bt({surveyUrl:n.value.trim(),personas:O.value,quotaParseTokens:N.value,personaTokens:j.value,batchSize:Y.value,autoAdvance:K.value});M=setInterval(()=>nt(k),bt)}catch(k){I(k,"å¯å¨æ¹æ¬¡çé¢å¤±è´¥"),q.value=!1}}},lt=async()=>{const k=B.value;if(!(!k||Q.value)){Q.value=!0;try{B.value=await Gt(k.batchId),M||(q.value=!0,M=setInterval(()=>nt(k.batchId),bt))}catch(L){I(L,"å¼å§ä¸ä¸æ¹å¤±è´¥")}finally{Q.value=!1}}};return vt(()=>{P(M),P(c),P(p)}),{surveyUrl:n,errorMessage:i,docFileName:b,surveyDoc:r,isDocParsing:d,setDocFile:g,uploadDoc:W,scanTask:f,isScanning:a,startScan:G,quotaFileName:h,quota:v,isParsing:$,quotaParseTokens:N,alignment:D,setQuotaFile:tt,parseQuota:rt,personas:O,isGenerating:C,personaTokens:j,generate:ct,batch:B,isBatchRunning:q,batchSize:Y,autoAdvance:K,isAdvancing:Q,startAnswering:at,advance:lt}}const oe={key:1,class:"lab-pane-body"},ie={key:0,class:"lab-alert"},ue={key:1,class:"doc-warn"},re={key:2,class:"coverage-card"},ce={class:"coverage-text"},de={key:0,class:"coverage-missing"},ve={class:"section-name"},pe={class:"question-head"},he={class:"question-code"},ye={class:"question-title"},fe={key:0,class:"meta-tag"},be={key:0,class:"question-rule"},_e={key:1,class:"question-logic"},ke={key:2,class:"option-chips"},$e=["title"],me={key:0,class:"option-code"},ge=z({__name:"SurveyDocView",props:{doc:{},coverage:{}},setup(n){const i=n,b=T(()=>i.doc.status==="RUNNING"),_=T(()=>{const d=[];for(const p of i.doc.questions){const f=d[d.length-1];f&&f.name===p.section?f.questions.push(p):d.push({name:p.section,questions:[p]})}return d}),r=T(()=>{const d=i.coverage;if(!d)return"";const p=d.docTotal>0?Math.round(d.matchedCount/d.docTotal*100):0;return`ç½é¡µæè§£è¦ç ${d.matchedCount}/${d.docTotal} é¢(${p}%)`});return(d,p)=>b.value?(s(),F(et,{key:0,steps:n.doc.steps,"is-running":""},null,8,["steps"])):(s(),e("div",oe,[n.doc.status==="FAILED"?(s(),e("div",ie," è§£æå¤±è´¥:"+l(n.doc.error||"æªç¥é误"),1)):n.doc.error?(s(),e("div",ue,"â "+l(n.doc.error),1)):m("",!0),n.coverage?(s(),e("div",re,[t("span",ce,l(r.value),1),n.coverage.unmatchedCodes.length>0?(s(),e("span",de," æªå¯¹ä¸:"+l(n.coverage.unmatchedCodes.join("ã")),1)):m("",!0)])):m("",!0),(s(!0),e(w,null,E(_.value,f=>(s(),e("div",{key:f.name,class:"doc-section"},[t("p",ve,l(f.name||"æªåç« è"),1),(s(!0),e(w,null,E(f.questions,a=>(s(),e("div",{key:a.code,class:"doc-question"},[t("div",pe,[t("span",he,l(a.code),1),t("p",ye,l(a.title),1),a.control?
4(s(),e("span",fe,l(a.control),1)):m("",!0)]),a.terminateRule?(s(),e("p",be,"â "+l(a.terminateRule),1)):m("",!0),a.showLogic?(s(),e("p",_e,"⤷ "+l(a.showLogic),1)):m("",!0),a.options.length>0?(s(),e("div",ke,[(s(!0),e(w,null,E(a.options,c=>(s(),e("span",{key:c.code+c.text,class:R(["option-chip",{"is-terminate":c.terminate}]),title:c.terminateNote},[c.code?(s(),e("em",me,l(c.code),1)):m("",!0),X(l(c.text)+" ",1),c.terminateNote?(s(),e(w,{key:1},[X("("+l(c.terminateNote)+")",1)],64)):m("",!0)],10,$e))),128))])):m("",!0)]))),128))]))),128))]))}}),xe=H(ge,[["__scopeId","data-v-e88ca9fa"]]),Ie={class:"lab-pane-body"},Ne={class:"quota-summary"},we={class:"summary-main"},qe={key:0,class:"summary-extra"},Te={key:1,class:"summary-cross"},Ae={class:"quota-table"},Se=["rowspan"],Ee={class:"cell-num"},De=z({__name:"QuotaDetailView",props:{quota:{},alignment:{}},setup(n){const i=n,b=T(()=>i.quota.crossAxis?.groups??[]),_=p=>!p||p.type==="NONE"?"-":p.type==="MIN"?`â¥${p.n}`:String(p.n),r=(p,f)=>i.alignment?.bindings.find(a=>a.dimension===p&&a.itemValue===f),d=(p,f)=>{const a=r(p,f);return a?a.status==="UNALIGNED"?a.questionRef?`${a.questionRef}(æªå¯¹é½)`:"":a.computed?`${a.questionRef} â ${a.docTitle.slice(0,18)}â¦(计ç®)`:a.negate?`${a.questionRef} â ä¸éã${a.optionText}ã`:a.optionText?`${a.questionRef} â éã${a.optionText}ã`:`${a.questionRef} â ${a.docTitle.slice(0,18)}â¦`:""};return(p,f)=>(s(),e("div",Ie,[t("div",Ne,[t("span",we,"ä¸»æ ·æ¬é "+l(n.quota.sampleSize),1),n.quota.extraSampleSize>0?(s(),e("span",qe," 追å "+l(n.quota.extraSampleSize)+"("+l(n.quota.extraCondition||"æªè¯´ææ¡ä»¶")+") ",1)):m("",!0),n.quota.crossAxis?(s(),e("span",Te," 交åè½´:"+l(n.quota.crossAxis.name)+" ("+l(b.value.map(a=>`${a.value}=${a.count}`).join(" / "))+") ",1)):m("",!0)]),t("table",Ae,[t("thead",null,[t("tr",null,[f[0]||(f[0]=t("th",null,"维度",-1)),f[1]||(f[1]=t("th",null,"æ¡£ä½",-1)),f[2]||(f[2]=t("th",null,"æ´ä½",-1)),(s(!0),e(w,null,E(b.value,a=>(s(),e("th",{key:a.value},l(a.value),1))),128)),f[3]||(f[3]=t("th",null,"对åºé¢ç®",-1))])]),t("tbody",null,[(s(!0),e(w,null,E(n.quota.dimensions,a=>(s(),e(w,{key:a.name},[(s(!0),e(w,null,E(a.items,(c,h)=>(s(),e("tr",{key:c.value},[h===0?(s(),e("td",{key:0,rowspan:a.items.length,class:"cell-dim"},l(a.name),9,Se)):m("",!0),t("td",null,l(c.value),1),t("td",Ee,l(c.count),1),(s(!0),e(w,null,E(b.value,u=>(s(),e("td",{key:u.value,class:"cell-num"},l(_(c.cross?.[u.value])),1))),128)),t("td",{class:R(["cell-binding",{"is-unaligned":r(a.name,c.value)?.status==="UNALIGNED"}])},l(d(a.name,c.value)||c.questionRef||"-"),3)]))),128))],64))),128))])]),f[4]||(f[4]=t("p",{class:"quota-hint"}," 交åå:æ°å=精确é
é¢ãâ¥N=ä¸éã-=ä¸é;ã对åºé¢ç®ãåå±ç¤ºé
颿¡£ä½ç»çº¸è´¨é®å·ç¿»è¯åçä½çç»å®ã ",-1))]))}}),Ce=H(De,[["__scopeId","data-v-dc68b446"]]),Re={class:"lab-pane-body persona-list"},Le={class:"persona-index"},Oe={class:"persona-body"},Ue={class:"persona-attrs"},Pe={key:0,class:"proxy-line"},Be={class:"proxy-area"},Me={key:1,class:"screener-line"},Ge={class:"persona-desc"},Ve=z({__name:"PersonaListView",props:{personas:{},proxyByIndex:{},hasAreaDimension:{type:Boolean}},setup(n){const i=n,b=["å°åº","åå¸","ç份","åºå","æå¨å°","å±
ä½å°"],_=c=>{const h=Object.entries(c.attributes).find(([u])=>b.includes(u));return h?h[1]:""},r=c=>i.proxyByIndex?.[c],d=c=>{const h=r(c.index);if(!h||!h.exitIp&&!h.status)return"IP å¾
åé
";if(h.status==="UNAVAILABLE"||!h.exitIp)return"IP ä¸å¯ç¨,æ¬æ¬¡ç´è¿çé¢";const u=h.status==="DOWNGRADED"?"(å·²é级è³ç级)":"";return`${h.exitIp}${h.area?`(宿µ:${h.area})`:""}${u}`},p=c=>{const h=r(c.index);return!h||!h.exitIp&&!h.status?"pending":h.status==="UNAVAILABLE"||!h.exitIp?"failed":h.status==="DOWNGRADED"?"downgraded":"ok"},f=c=>!!i.hasAreaDimension||!!_(c),a=c=>c.action==="FILL"?`${c.questionCode} å¡«ã${c.fillValue}ã`:c.action==="AVOID"?`${c.questionCode} é¿å¼ã${c.optionText}ã`:`${c.questionCode} éã${c.optionText}ã`;return(c,h)=>(s(),e("div",Re,[(s(!0),e(w,null,E(n.personas,u=>(s(),e("div",{key:u.index,class:"persona-row"},[t("span",Le,l(u.index),1),t("div",Oe,[t("div",Ue,[(s(!0),e(w,null,E(u.attributes,(v,$)=>(s(),e("span",{key:$,class:"persona-attr"},l($)+"·"+l(v),1))),128))]),f(u)?(s(),e("div",Pe,[t("span",Be,l(_(u)||"æªæå®å°åº"),1),h[0]||(h[0]=t("span",{class:"proxy-dot"},"·",-1)),t("span",{class:R(["proxy-ip",p(u)])},l(d(u)),3)])):m("",!0),u.screener?.answers.length?(s(),e("div",Me,[h[1]||(h[1]=t("span",{class:"screener-label"},"ç嫿¡£æ¡",-1)),(s(!0),e(w,null,E(u.screener.answers,v=>(s(),e("span",{key:v.questionCode+v.action,class:"screener-item"}
4,l(a(v)),1))),128))])):m("",!0),t("p",Ge,l(u.description),1)])]))),128))]))}}),Fe=H(Ve,[["__scopeId","data-v-42840267"]]),Qe={key:1,class:"lab-pane-body"},je={class:"lab-alert"},We={key:2,class:"lab-pane-body"},ze={class:"group-strip"},He={class:"group-name"},Ke={class:"group-count"},Xe={class:"group-status"},Ye=["disabled"],Ze={class:"strip-hint"},Je={class:"batch-grid"},tn={class:"member-head"},sn={class:"member-index"},en={class:"member-status"},nn={class:"member-attrs"},an={class:"member-meta"},ln={key:0},on=z({__name:"BatchProgressView",props:{batch:{},isAdvancing:{type:Boolean}},emits:["advance","download"],setup(n,{emit:i}){const b=n,_=i,r={RUNNING:"çé¢ä¸",DONE:"已宿",FAILED:"失败",UNKNOWN:"çå¾
ä¸"},d=u=>u==="DONE"?"is-done":u==="FAILED"?"is-failed":u==="RUNNING"?"is-running":"is-waiting",p=u=>u==="FINISHED"?"已宿":u==="RUNNING"?"è¿è¡ä¸":"å¾
å¯å¨",f=u=>{const v=Math.round(u/1e3);return v<60?`${v}ç§`:`${Math.floor(v/60)}å${v%60}ç§`},a=T(()=>b.batch.status==="WAITING_NEXT"),c=u=>{if(u.proxyStatus==="UNAVAILABLE"||!u.proxyExitIp)return"IP ä¸å¯ç¨ · ç´è¿";const v=u.proxyStatus==="DOWNGRADED"?" · é级ç级":"";return`${u.proxyExitIp}${u.proxyArea?` · ${u.proxyArea}`:""}${v}`},h=u=>u.proxyStatus==="UNAVAILABLE"||!u.proxyExitIp?"is-proxy-failed":u.proxyStatus==="DOWNGRADED"?"is-proxy-downgraded":"is-proxy-ok";return(u,v)=>n.batch.status==="PLANNING"?(s(),F(et,{key:0,steps:n.batch.planSteps,"is-running":""},null,8,["steps"])):n.batch.status==="PLAN_FAILED"?(s(),e("div",Qe,[t("div",je,"çæ¡è§å失败:"+l(n.batch.planError||"æªç¥é误"),1)])):(s(),e("div",We,[t("div",ze,[(s(!0),e(w,null,E(n.batch.groups,$=>(s(),e("div",{key:$.groupIndex,class:R(["group-pill",{"is-running":$.status==="RUNNING","is-finished":$.status==="FINISHED","is-current":$.groupIndex===n.batch.currentGroupIndex}])},[t("span",He,"第 "+l($.groupIndex)+" ç»",1),t("span",Ke,l($.doneCount+$.failedCount)+"/"+l($.total),1),t("span",Xe,l(p($.status)),1)],2))),128)),a.value?(s(),e("button",{key:0,class:"lab-btn-primary advance-btn",disabled:n.isAdvancing,onClick:v[0]||(v[0]=$=>_("advance"))},l(n.isAdvancing?"å¯å¨ä¸ â¦":"å¼å§ä¸ä¸æ¹"),9,Ye)):m("",!0),n.batch.status==="FINISHED"?(s(),e("button",{key:1,class:"lab-chip",onClick:v[1]||(v[1]=$=>_("download"))}," ä¸è½½æ±æ» Excel ")):m("",!0)]),t("p",Ze," å½åå±ç¤ºç¬¬ "+l(n.batch.currentGroupIndex)+" ç»æç»;å
¨é¨ "+l(n.batch.total)+" äººå·²å®æ "+l(n.batch.doneCount)+" 人"+l(n.batch.failedCount>0?`ã失败 ${n.batch.failedCount} 人`:"")+"ã ",1),t("div",Je,[(s(!0),e(w,null,E(n.batch.members,$=>(s(),e("div",{key:$.index,class:R(["member-card",d($.status)])},[t("div",tn,[t("span",sn,l($.index),1),t("span",en,[v[2]||(v[2]=t("span",{class:"status-dot"},null,-1)),X(l(r[$.status]),1)])]),t("div",nn,l(Object.values($.attributes).join(" · ")),1),$.proxyStatus?(s(),e("div",{key:0,class:R(["member-proxy",h($)])},l(c($)),3)):m("",!0),t("div",an,[t("span",null,"å·²ç "+l($.answeredCount)+" é¢",1),t("span",null,l(f($.elapsedMs)),1),$.totalTokens>0?(s(),e("span",ln,l($.totalTokens.toLocaleString())+" tokens",1)):m("",!0)])],2))),128))])]))}}),un=H(on,[["__scopeId","data-v-40c4cd0b"]]),rn={class:"batch-panel"},cn={class:"lab-card"},dn={class:"control-field"},vn={class:"control-field"},pn={class:"upload-row"},hn=["disabled"],yn={class:"control-field"},fn=["disabled"],bn={key:0,class:"quick-fill"},_n=["disabled"],kn={class:"control-field"},$n={class:"upload-row"},mn=["disabled"],gn={key:0,class:"control-field"},xn=["disabled"],In={key:1,class:"control-field"},Nn={class:"batch-options"},wn={class:"option-line"},qn={class:"option-line"},Tn=["disabled"],An={key:2,class:"lab-alert"},Sn={class:"lab-pane"},En={class:"pane-head"},Dn={class:"view-switch"},Cn=["disabled","onClick"],Rn={key:0,class:"pane-metrics"},Ln={key:0},On={key:1},Un={key:1,class:"pane-metrics"},Pn={key:0},Bn={key:1},Mn={key:2,class:"pane-metrics"},Gn={key:3,class:"pane-metrics"},Vn={key:0},Fn={key:1},Qn={key:2},jn={key:2,class:"pane-empty"},Wn=z({__name:"BatchAnswerPanel",setup(n){const{surveyUrl:i,errorMessage:b,docFileName:_,surveyDoc:r,isDocParsing:d,setDocFile:p,uploadDoc:f,scanTask:a,isScanning:c,startScan:h,quotaFileName:u,quota:v,isParsing:$,alignment:N,setQuotaFile:D,parseQuota:O,personas:C,isGenerating:j,generate:B,batch:q,isBatchRunning:Y,batchSize:K,autoAdvance:Q,isAdvancing:M,startAnswering:P,advance:I}=le(),g=[{key:"scan",label:"é®å·è§£æ"},{key:"doc",label:"纸质é®å·"},{key:"quota",label:"é
é¢"},{key:"personas",label:"ç»å"},{key:"batch",label:"æ¹æ¬¡çé¢"}],A=T(()=>({scan:a.value!=null,doc:r.value!=null,quota:v.value!=null,personas:C.value.length>0,batch:q.value!=null})),W=T(()=>q.value?"batch":C.value.length>0?"personas":v.value?"quota":a.value?"scan":r.value?"doc":"scan"),Z=x(null);it(W,()=>Z.value=null);const G=T(()=>{const U=Z.value;return U&&A.value[U]?U:W.value}),tt=T(()=>a.value?.status==="DONE"),ut=T(()=>i.value.trim()!==""&&!c.value),rt=T(()=>
4_.value!==""&&i.value.trim()!==""&&!d.value),ct=T(()=>u.value!==""&&!$.value),nt=T(()=>C.value.length>0&&i.value.trim()!==""&&tt.value&&!Y.value),at=x(null),lt=x(null),k=U=>{const y=U.target.files?.[0];y&&p(y)},L=U=>{const y=U.target.files?.[0];y&&D(y)},gt=()=>{i.value=`${window.location.origin}/lab-mock-survey.html`},xt=()=>{window.open(`${window.location.origin}/lab-mock-quota.xlsx`,"_blank")},It=()=>{q.value&&window.open(`/api/open/quant-demo/batch/${q.value.batchId}/export`,"_blank")},dt=U=>U.toLocaleString(),Nt=["å°åº","åå¸","ç份","åºå","æå¨å°","å±
ä½å°"],wt=T(()=>{const U={};for(const y of q.value?.members??[])U[y.index]={exitIp:y.proxyExitIp,area:y.proxyArea,status:y.proxyStatus};return U}),qt=T(()=>C.value.some(U=>Object.keys(U.attributes).some(y=>Nt.includes(y))));return(U,y)=>(s(),e("section",rn,[t("aside",cn,[t("div",dn,[y[11]||(y[11]=t("label",{class:"field-label"},"â é®å·é¾æ¥",-1)),J(t("input",{"onUpdate:modelValue":y[0]||(y[0]=S=>st(i)?i.value=S:null),class:"lab-input",placeholder:"https://⦠é®å·å°å"},null,512),[[ot,o(i)]]),t("div",{class:"quick-fill"},[t("button",{class:"lab-chip",onClick:gt},"å¡«å
¥ Mock é®å·")])]),t("div",vn,[y[12]||(y[12]=t("label",{class:"field-label"},"⡠纸质é®å·(æ¨èä¸ä¼ )",-1)),t("div",pn,[t("button",{class:"upload-btn",onClick:y[1]||(y[1]=S=>at.value?.click())},l(o(_)||"éæ©é®å·ææ¡£(docx / xlsx)"),1),t("input",{ref_key:"docInput",ref:at,type:"file",accept:".docx,.xlsx,.xls",class:"file-hidden",onChange:k},null,544)]),t("button",{class:"lab-btn-secondary",disabled:!rt.value,onClick:y[2]||(y[2]=(...S)=>o(f)&&o(f)(...S))},l(o(d)?"è§£æä¸ â¦":o(r)?.status==="DONE"?"â 已解æ,éæ°ä¸ä¼ è§£æ":"ä¸ä¼ å¹¶è§£æ"),9,hn)]),t("div",yn,[y[13]||(y[13]=t("label",{class:"field-label"},"⢠æè§£é®å·(ç½é¡µæ«æ)",-1)),t("button",{class:"lab-btn-primary",disabled:!ut.value,onClick:y[3]||(y[3]=S=>o(h)(!1))},l(o(c)?"æè§£ä¸ â¦":tt.value?"â é®å·å·²æè§£":"æè§£é®å·"),9,fn),tt.value?(s(),e("div",bn,[t("button",{class:"lab-chip",disabled:o(c),onClick:y[4]||(y[4]=S=>o(h)(!0))},"éæ°æè§£",8,_n)])):m("",!0)]),t("div",kn,[y[14]||(y[14]=t("label",{class:"field-label"},"⣠é
é¢è¡¨(Excel)",-1)),t("div",$n,[t("button",{class:"upload-btn",onClick:y[5]||(y[5]=S=>lt.value?.click())},l(o(u)||"éæ©é
é¢è¡¨æä»¶"),1),t("input",{ref_key:"quotaInput",ref:lt,type:"file",accept:".xlsx,.xls",class:"file-hidden",onChange:L},null,544)]),t("button",{class:"lab-btn-primary",disabled:!ct.value,onClick:y[6]||(y[6]=(...S)=>o(O)&&o(O)(...S))},l(o($)?"è§£æä¸ â¦":"è§£æé
é¢è¡¨"),9,mn),t("div",{class:"quick-fill"},[t("button",{class:"lab-chip",onClick:xt},"ä¸è½½æ ·ä¾é
é¢è¡¨")])]),o(v)?(s(),e("div",gn,[y[15]||(y[15]=t("label",{class:"field-label"},"⤠çæç»å",-1)),t("button",{class:"lab-btn-primary",disabled:o(j),onClick:y[7]||(y[7]=(...S)=>o(B)&&o(B)(...S))},l(o(j)?`çæç»åä¸ â¦(å
± ${o(v).sampleSize} 人)`:`æé
é¢çæ ${o(v).sampleSize} 个ç»å`),9,xn)])):m("",!0),o(C).length>0?(s(),e("div",In,[y[19]||(y[19]=t("label",{class:"field-label"},"⥠å¯å¨çé¢",-1)),t("div",Nn,[t("label",wn,[y[16]||(y[16]=X(" æ¯ç» ",-1)),J(t("input",{"onUpdate:modelValue":y[8]||(y[8]=S=>st(K)?K.value=S:null),type:"number",min:"1",max:"200",class:"lab-input size-input"},null,512),[[ot,o(K),void 0,{number:!0}]]),y[17]||(y[17]=X(" 人 ",-1))]),t("label",qn,[J(t("input",{"onUpdate:modelValue":y[9]||(y[9]=S=>st(Q)?Q.value=S:null),type:"checkbox"},null,512),[[At,o(Q)]]),y[18]||(y[18]=X(" ç»å®æåèªå¨å¼å§ä¸ä¸ç» ",-1))])]),t("button",{class:"lab-btn-primary",disabled:!nt.value,onClick:y[10]||(y[10]=(...S)=>o(P)&&o(P)(...S))},l(o(Y)?"çé¢è¿è¡ä¸ â¦":`å¯å¨ ${o(C).length} 人åç»çé¢`),9,Tn)])):m("",!0),y[20]||(y[20]=t("p",{class:"lab-hint"}," æµç¨:龿¥ â 纸质é®å· â æè§£ â é
é¢è¡¨ â ç»å â åç»çé¢;å³ä¾§æé¶æ®µå Tab å±ç¤ºè§£æå
容,éæ¶å¯åæ¢åçã ",-1)),o(b)?(s(),e("div",An,l(o(b)),1)):m("",!0)]),t("div",Sn,[t("div",En,[t("div",Dn,[(s(),e(w,null,E(g,S=>t("button",{key:S.key,class:R({active:G.value===S.key}),disabled:!A.value[S.key],onClick:ea=>Z.value=S.key},l(S.label),11,Cn)),64))]),G.value==="scan"&&o(a)?(s(),e("span",Rn,[tt.value?(s(),e("span",Ln,"å
± "+l(o(a).questions.length)+" 项",1)):m("",!0),o(a).totalTokens>0?(s(),e("span",On,"æ¶è "+l(dt(o(a).totalTokens))+" tokens",1)):m("",!0)])):G.value==="doc"&&o(r)?(s(),e("span",Un,[o(r).status==="DONE"?(s(),e("span",Pn,"å
± "+l(o(r).questions.length)+" é¢",1)):m("",!0),o(r).totalTokens>0?(s(),e("span",Bn,"æ¶è "+l(dt(o(r).totalTokens))+" tokens",1)):m("",!0)])):G.value==="personas"?(s(),e("span",Mn,[t("span",null,"å
± "+l(o(C).length)+" 人",1)])):G.value==="batch"&&o(q)?(s(),e("span",Gn,[o(q).status==="PLANNING"?(s(),e("span",Vn,"çæ¡è§åä¸ â¦")):(s(),e("span",Fn,"宿 "+l(o(q).doneCount)+"/"+l(o(q).total),1)),o(q).totalTokens>0?(s(),e("span",Qn,"å
¨ç¨æ¶è "+l(dt(o(q).totalTokens))+" tokens",1)):m("",!0)])):m("",!0)]),G.value==="scan"?(s(),e(w,{key:0},[o(a)&&o(a).status==="RUNNING"?(s(),F(et,{key:0,steps:o(a).steps,"is-running":""},null,8,["steps"])):o(a)?(s(),F(mt,{key:1,task:o(a)},null,8,["task"])):(s(),e("div",jn,[...y[21]||(y[21]=[t("span",{class:"empty-glyph"},"â¤",-1),t("p",{class:"empty-text"},"å¡«å
¥é®å·é¾æ¥å¹¶ç¹å»ãæè§£é®å·ã,è¿éå±ç¤ºæ«æ
4è¿ç¨ä¸æè§£åºçé¢ç®ç»æã",-1)])]))],64)):G.value==="doc"&&o(r)?(s(),F(xe,{key:1,doc:o(r),coverage:o(N)?.coverage??null},null,8,["doc","coverage"])):G.value==="quota"&&o(v)?(s(),F(Ce,{key:2,quota:o(v),alignment:o(N)},null,8,["quota","alignment"])):G.value==="personas"?(s(),F(Fe,{key:3,personas:o(C),"proxy-by-index":wt.value,"has-area-dimension":qt.value},null,8,["personas","proxy-by-index","has-area-dimension"])):G.value==="batch"&&o(q)?(s(),F(un,{key:4,batch:o(q),"is-advancing":o(M),onAdvance:o(I),onDownload:It},null,8,["batch","is-advancing","onAdvance"])):m("",!0)])]))}}),zn=H(Wn,[["__scopeId","data-v-56a861c5"]]),Hn={class:"quant-lab"},Kn={class:"lab-topbar"},Xn={class:"lab-topbar-inner"},Yn={class:"lab-tabs"},Zn=["onClick"],Jn={class:"lab-stage"},ta={class:"lab-stage-inner"},sa=z({__name:"QuantSurveyLab",setup(n){const i=St(),b=Et(),r=x((p=>p==="batch"?"batch":"answer")(i.query.tab));it(r,p=>{b.replace({query:{...i.query,tab:p}})});const d=[{key:"answer",label:"å份çé¢éªè¯"},{key:"batch",label:"å¤äººçé¢"}];return(p,f)=>(s(),e("div",Hn,[t("header",Kn,[t("div",Xn,[f[0]||(f[0]=t("div",{class:"lab-brand"},[t("span",{class:"brand-mark"},"Q"),t("div",{class:"brand-text"},[t("h1",null,"AI å®éå®éªå°"),t("span",{class:"brand-sub"},"æµè§å¨æ¨¡æç颿æ¯è°ç ")])],-1)),t("nav",Yn,[(s(),e(w,null,E(d,a=>t("button",{key:a.key,class:R({active:r.value===a.key}),onClick:c=>r.value=a.key},l(a.label),11,Zn)),64))])])]),t("main",Jn,[t("div",ta,[J(ht(se,null,null,512),[[pt,r.value==="answer"]]),J(ht(zn,null,null,512),[[pt,r.value==="batch"]])])])]))}}),aa=H(sa,[["__scopeId","data-v-fcc2a2eb"]]);export{aa as default};
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.