diff --git a/javascript/index.js b/javascript/index.js index c963700..cc8af7c 100644 --- a/javascript/index.js +++ b/javascript/index.js @@ -13,7 +13,7 @@ Promise.resolve().then(async () => {
MFrGXJqNrOUPCPqPrQ|]@`+`2h1lBlZnXp*r;rWrkz9{4{B}x-#c-#y-$;-$l-$y-%Q-%n-(i-(x-)i-/!-3*-5B-9V",wan:"#=$0&o.]0F4@5X5b6*628u9p -+b-+(-(_-(.-&h-#%{@wGuWs}s|rJrDlaWTV}V+NAMvKfIgGKFX9a7c,7&]&+%~",bie:"-/A-/;fGe2`#M'M!$!#I",pao:"-/>-+i-'^~o|2w=hA]$[P?.4J4H3d06.M'^%A!S",geng:"-/7-&A{TzHlrh=ZIOlK4IX=X2p&M",shua:"-//-%j",cuo:"-.y-.p-*5wukWkSh!ZKY&WuV4(o$j$'",kei:"-.woU",la:"-.v-%3-$n~L|8[RXFXEWnUEU2R`MOI6DT:T0['o$A",pou:"-.l-'_-&[{]twtO]+]&Z+YGJS/<",tuan:"-.I~!}~}K}HyPy&f7`>[}XIVmGLE;;.:m8t2[,F%v%p",zuan:"-.)XOTt",keng:"-,x-([|t|kvIZCXlVgBF/C",gao:"-,Z-(I-(>wRlpWjNHGxGwGdG>E~E3Dm,)!y!t",lang:"-,V-&J-$~{Jy[r{llgiSeOIOHO;KRHHG4Cp=[3Y,z*%(s",weng:"-,@-#oyxv{kfU!Pd9o'N'&",tao:"-+m-)E-'+-%DwPwMw*r}i/fl`j[oYBWXL,JkGtE?><=) ${O} MFrGXJqNrOUPCPqPrQ|]@`+`2h1lBlZnXp*r;rWrkz9{4{B}x-#c-#y-$;-$l-$y-%Q-%n-(i-(x-)i-/!-3*-5B-9V",wan:"#=$0&o.]0F4@5X5b6*628u9p -+b-+(-(_-(.-&h-#%{@wGuWs}s|rJrDlaWTV}V+NAMvKfIgGKFX9a7c,7&]&+%~",bie:"-/A-/;fGe2`#M'M!$!#I",pao:"-/>-+i-'^~o|2w=hA]$[P?.4J4H3d06.M'^%A!S",geng:"-/7-&A{TzHlrh=ZIOlK4IX=X2p&M",shua:"-//-%j",cuo:"-.y-.p-*5wukWkSh!ZKY&WuV4(o$j$'",kei:"-.woU",la:"-.v-%3-$n~L|8[RXFXEWnUEU2R`MOI6DT:T0['o$A",pou:"-.l-'_-&[{]twtO]+]&Z+YGJS/<",tuan:"-.I~!}~}K}HyPy&f7`>[}XIVmGLE;;.:m8t2[,F%v%p",zuan:"-.)XOTt",keng:"-,x-([|t|kvIZCXlVgBF/C",gao:"-,Z-(I-(>wRlpWjNHGxGwGdG>E~E3Dm,)!y!t",lang:"-,V-&J-$~{Jy[r{llgiSeOIOHO;KRHHG4Cp=[3Y,z*%(s",weng:"-,@-#oyxv{kfU!Pd9o'N'&",tao:"-+m-)E-'+-%DwPwMw*r}i/fl`j[oYBWXL,JkGtE?><=) ${k} ${Ge} ${Ge}ZYZZ]U_6_9d9fYj6j~lWm)mep)rQrbrctvwkxc{y|U}6~?~C~`~m-!Z-*'-+R-/j-0j-3i-4/-4@-5,-5f-6j-6s-7)-9G-9W-9X",tuo:"%U%V&z0L2J4v?{@$F_H6MUTbT~Y'Yc^QdHdQnVq+r`x1{{|;|<-&d-(.-(z-({-)1-)J-)K-*:-*e-*p-+$-+3-.b-/%-/[-0b-3O-4,-6_-8}-9$-9?",zhe:"#'%+%E'P2f2|
}I-*S-+S-0~-2b-5X-8{",cou:"@ThJiK",chuang:"'_,H,L,q{+{E",piao:"$+).1D7a:;
lMi@i$fDf@b1`Y_4XyW6TMMzJ$I:GOD{=#
{let t=0,n=1;for(let i=e.length;i--;)t+=n*ha.indexOf(e.charAt(i)),n*=91;return t},an=(e,t)=>{let n,i,c,v,r;for(n in e)if(e.hasOwnProperty(n))for(i=e[n].match(pa),c=0;c
');continue}const G=q[O];T||(T=G.includes("("));const se=["tag"];T&&se.push("has-parentheses"),G.length<32&&se.push("short-tag"),I.push(`${G}`),T&&(T=!G.includes(")"))}return I.join(i.showCommaInInfoPanel?",":" ")}Mt("load",a=>{const d=a.target;d.className==="ant-image-preview-img"&&(o.value=`${d.naturalWidth} x ${d.naturalHeight}`)},{capture:!0});const h=oe(()=>{const a=[{name:ne("fileSize"),val:n.file.size}];return o.value&&a.push({name:ne("resolution"),val:o.value}),a}),L=()=>{const a="Negative prompt:",d=C.value.includes(a)?C.value.split(a)[0]:S.value[0]??"";Ae(tt(d.trim()))},j=()=>document.body.requestFullscreen(),U=a=>{Ae(typeof a=="object"?JSON.stringify(a,null,4):a)},ie=a=>{a.key.startsWith("Arrow")?(a.stopPropagation(),a.preventDefault(),document.dispatchEvent(new KeyboardEvent("keydown",a))):a.key==="Escape"&&document.fullscreenElement&&document.exitFullscreen()};Mt("dblclick",a=>{var d;((d=a.target)==null?void 0:d.className)==="ant-image-preview-img"&&Et()});const ae=oe(()=>Q.value||A.value.expanded),ve=ze(st+"contextShowFullPath",!1),Z=oe(()=>ve.value?n.file.fullpath:n.file.name),ee=ze(st+"tagA2ZClassify",!1),Be=oe(()=>{var q;const a=(q=i.conf)==null?void 0:q.all_custom_tags.map(I=>{var O,G;return{char:((O=I.display_name)==null?void 0:O[0])||((G=I.name)==null?void 0:G[0]),...I}}).reduce((I,T)=>{var G;let O="#";if(/[a-z]/i.test(T.char))O=T.char.toUpperCase();else if(/[\u4e00-\u9fa5]/.test(T.char))try{O=((G=/^\[?(\w)/.exec($a(T.char)+""))==null?void 0:G[1])??"#"}catch(se){console.log("err",se)}return O=O.toUpperCase(),I[O]||(I[O]=[]),I[O].push(T),I},{});return Object.entries(a??{}).sort((I,T)=>I[0].charCodeAt(0)-T[0].charCodeAt(0))}),ke=()=>{Et(),t("contextMenuClick",{key:"tiktokView"},n.file,n.idx)},Oe=ce(!1),Ze=async()=>{var a,d;if(!P.value.prompt){$e.warning(ne("aiAnalyzeTagsNoPrompt"));return}if(!((d=(a=i.conf)==null?void 0:a.all_custom_tags)!=null&&d.length)){$e.warning(ne("aiAnalyzeTagsNoCustomTags"));return}Oe.value=!0;try{const q=P.value.prompt,T=`You are a professional AI assistant responsible for analyzing Stable Diffusion prompts and categorizing them into appropriate tags.
+*/let on=19968,ba=(40896-on)/2,lt="",We=",",$a=(()=>{let e=[];for(let t=33;t<127;t++)t!=34&&t!=92&&t!=45&&e.push(String.fromCharCode(t));return e.join(lt)})(),$t={a:{yi:"!]#R$!$q(3(p)[*2*g+6+d.C.q0[0w1L2<717l8B8E9?:8;V;[;e;{<)<+.>4??@~A`BbC:CGC^CiDMDjDkF!H/H;JaL?M.M2MoNCN|OgO|P$P)PBPyQ~R%R.S.T;TZYZZ]U_6_9d9fYj6j~lWm)mep)rQrbrctvwkxc{y|U}6~?~C~`~m-!Z-*'-+R-/j-0j-3i-4/-4@-5,-5f-6j-6s-7)-9G-9W-9X",tuo:"%U%V&z0L2J4v?{@$F_H6MUTbT~Y'Yc^QdHdQnVq+r`x1{{|;|<-&d-(.-(z-({-)1-)J-)K-*:-*e-*p-+$-+3-.b-/%-/[-0b-3O-4,-6_-8}-9$-9?",zhe:"#'%+%E'P2f2|
}I-*S-+S-0~-2b-5X-8{",cou:"@ThJiK",chuang:"'_,H,L,q{+{E",piao:"$+).1D7a:;
lMi@i$fDf@b1`Y_4XyW6TMMzJ$I:GOD{=#
{let t=0,n=1;for(let i=e.length;i--;)t+=n*$a.indexOf(e.charAt(i)),n*=91;return t},rn=(e,t)=>{let n,i,l,p,o;for(n in e)if(e.hasOwnProperty(n))for(i=e[n].match(Ea),l=0;l
');continue}const J=X[k];C||(C=J.includes("("));const oe=["tag"];C&&oe.push("has-parentheses"),J.length<32&&oe.push("short-tag"),I.push(`${J}`),C&&(C=!J.includes(")"))}return I.join(i.showCommaInInfoPanel?",":" ")}St("load",a=>{const g=a.target;g.className==="ant-image-preview-img"&&(r.value=`${g.naturalWidth} x ${g.naturalHeight}`)},{capture:!0});const h=re(()=>{const a=[{name:ie("fileSize"),val:n.file.size}];return r.value&&a.push({name:ie("resolution"),val:r.value}),a}),L=()=>{const a="Negative prompt:",g=T.value.includes(a)?T.value.split(a)[0]:K.value[0]??"";ze(it(g.trim()))},P=()=>document.body.requestFullscreen(),U=a=>{ze(typeof a=="object"?JSON.stringify(a,null,4):a)},ae=a=>{a.key.startsWith("Arrow")?(a.stopPropagation(),a.preventDefault(),document.dispatchEvent(new KeyboardEvent("keydown",a))):a.key==="Escape"&&document.fullscreenElement&&document.exitFullscreen()};St("dblclick",a=>{var g;((g=a.target)==null?void 0:g.className)==="ant-image-preview-img"&&Ot()});const se=re(()=>ee.value||A.value.expanded),ve=De(rt+"contextShowFullPath",!1),V=re(()=>ve.value?n.file.fullpath:n.file.name),te=De(rt+"tagA2ZClassify",!1),Be=re(()=>{var X;const a=(X=i.conf)==null?void 0:X.all_custom_tags.map(I=>{var k,J;return{char:((k=I.display_name)==null?void 0:k[0])||((J=I.name)==null?void 0:J[0]),...I}}).reduce((I,C)=>{var J;let k="#";if(/[a-z]/i.test(C.char))k=C.char.toUpperCase();else if(/[\u4e00-\u9fa5]/.test(C.char))try{k=((J=/^\[?(\w)/.exec(Ma(C.char)+""))==null?void 0:J[1])??"#"}catch(oe){console.log("err",oe)}return k=k.toUpperCase(),I[k]||(I[k]=[]),I[k].push(C),I},{});return Object.entries(a??{}).sort((I,C)=>I[0].charCodeAt(0)-C[0].charCodeAt(0))}),Oe=()=>{Ot(),t("contextMenuClick",{key:"tiktokView"},n.file,n.idx)},ke=ue(!1),Qe=async()=>{var a,g;if(!S.value.prompt){be.warning(ie("aiAnalyzeTagsNoPrompt"));return}if(!((g=(a=i.conf)==null?void 0:a.all_custom_tags)!=null&&g.length)){be.warning(ie("aiAnalyzeTagsNoCustomTags"));return}ke.value=!0;try{const X=S.value.prompt,C=`You are a professional AI assistant responsible for analyzing Stable Diffusion prompts and categorizing them into appropriate tags.
Your task is:
1. Analyze the given prompt
@@ -16,4 +16,4 @@ Your task is:
Available tags: ${i.conf.all_custom_tags.map(E=>E.name).join(", ")}
-Please return only tag names, do not include any other content.`,G=(await wn({messages:[{role:"system",content:T},{role:"user",content:`Please analyze this prompt and return matching tags: ${q}`}],temperature:.3,max_tokens:200})).choices[0].message.content.trim();if(!G){$e.info(ne("aiAnalyzeTagsNoMatchedTags"));return}const se=G.split(",").map(E=>E.trim()).filter(E=>E),$=i.conf.all_custom_tags.filter(E=>se.some(re=>E.name.toLowerCase()===re.toLowerCase()||E.name.toLowerCase().includes(re.toLowerCase())||re.toLowerCase().includes(E.name.toLowerCase()))),ye=new Set(r.value.map(E=>E.id)),R=$.filter(E=>!ye.has(E.id));if(R.length===0){$.length>0?$e.info(ne("aiAnalyzeTagsAllTagsAlreadyAdded")):$e.info(ne("aiAnalyzeTagsNoValidTags"));return}for(const E of R)t("contextMenuClick",{key:`toggle-tag-${E.id}`},n.file,n.idx);$e.success(ne("aiAnalyzeTagsSuccess",[R.length.toString(),R.map(E=>E.name).join(", ")]))}catch(q){console.error("AI分析标签失败:",q),$e.error(ne("aiAnalyzeTagsFailed"))}finally{Oe.value=!1}};return(a,d)=>{var u,f,M;const q=Nn,I=Fe,T=kn,O=On,G=Mn,se=xn,$=Fe,ye=Dn,R=zn,E=Sn,re=Tn,fe=Cn,Ce=De,Le=Ln;return p(),k("div",{ref_key:"el",ref:v,class:et(["full-screen-menu",{"unset-size":!_(A).expanded,lr:_(Q),"always-on":_(de),"mouse-in":Te.value}]),onWheelCapture:d[13]||(d[13]=kt(()=>{},["stop"])),onKeydownCapture:ie},[_(Q)?(p(),k("div",ba)):W("",!0),b("div",Ea,[b("div",wa,[_(Q)?W("",!0):(p(),k("div",{key:0,ref_key:"dragHandle",ref:m,class:"icon",style:{cursor:"grab"},title:_(ne)("dragToMovePanel")},[y(_(Fn))],8,ka)),_(Q)?W("",!0):(p(),k("div",{key:1,class:"icon",style:{cursor:"pointer"},onClick:d[0]||(d[0]=l=>_(A).expanded=!_(A).expanded),title:_(ne)("clickToToggleMaximizeMinimize")},[ae.value?(p(),ue(_(yn),{key:0})):(p(),ue(_($n),{key:1}))],8,Oa)),b("div",{style:{display:"flex","flex-direction":"column","align-items":"center",cursor:"grab"},class:"icon",title:_(ne)("fullscreenview"),onClick:j},[b("img",{src:_(ti),style:{width:"21px",height:"21px","padding-bottom":"2px"},alt:""},null,8,xa)],8,Ma),y(q,{"get-popup-container":Pe},{overlay:x(()=>[y(In,{file:a.file,idx:a.idx,"selected-tag":r.value,onContextMenuClick:d[1]||(d[1]=(l,z,F)=>t("contextMenuClick",l,z,F))},null,8,["file","idx","selected-tag"])]),default:x(()=>[_(A).expanded?W("",!0):(p(),k("div",Sa,[y(_(wt))]))]),_:1}),ae.value?(p(),k("div",Ta)):W("",!0),ae.value?(p(),k("div",Ca,[y(q,{trigger:["hover"],"get-popup-container":Pe},{overlay:x(()=>[y(se,{onClick:d[2]||(d[2]=l=>t("contextMenuClick",l,a.file,a.idx))},{default:x(()=>{var l;return[((l=_(i).conf)==null?void 0:l.launch_mode)!=="server"?(p(),k(K,{key:0},[y(T,{key:"send2txt2img"},{default:x(()=>[N(w(a.$t("sendToTxt2img")),1)]),_:1}),y(T,{key:"send2img2img"},{default:x(()=>[N(w(a.$t("sendToImg2img")),1)]),_:1}),y(T,{key:"send2inpaint"},{default:x(()=>[N(w(a.$t("sendToInpaint")),1)]),_:1}),y(T,{key:"send2extras"},{default:x(()=>[N(w(a.$t("sendToExtraFeatures")),1)]),_:1}),y(O,{key:"sendToThirdPartyExtension",title:a.$t("sendToThirdPartyExtension")},{default:x(()=>[y(T,{key:"send2controlnet-txt2img"},{default:x(()=>[N("ControlNet - "+w(a.$t("t2i")),1)]),_:1}),y(T,{key:"send2controlnet-img2img"},{default:x(()=>[N("ControlNet - "+w(a.$t("i2i")),1)]),_:1}),y(T,{key:"send2outpaint"},{default:x(()=>[N("openOutpaint")]),_:1})]),_:1},8,["title"])],64)):W("",!0),y(T,{key:"send2BatchDownload"},{default:x(()=>[N(w(a.$t("sendToBatchDownload")),1)]),_:1}),y(O,{key:"copy2target",title:a.$t("copyTo")},{default:x(()=>[(p(!0),k(K,null,ge(_(i).quickMovePaths,z=>(p(),ue(T,{key:`copy-to-${z.dir}`},{default:x(()=>[N(w(z.zh),1)]),_:2},1024))),128))]),_:1},8,["title"]),y(O,{key:"move2target",title:a.$t("moveTo")},{default:x(()=>[(p(!0),k(K,null,ge(_(i).quickMovePaths,z=>(p(),ue(T,{key:`move-to-${z.dir}`},{default:x(()=>[N(w(z.zh),1)]),_:2},1024))),128))]),_:1},8,["title"]),y(G),y(T,{key:"deleteFiles"},{default:x(()=>[N(w(a.$t("deleteSelected")),1)]),_:1}),y(T,{key:"previewInNewWindow"},{default:x(()=>[N(w(a.$t("previewInNewWindow")),1)]),_:1}),y(T,{key:"copyPreviewUrl"},{default:x(()=>[N(w(a.$t("copySourceFilePreviewLink")),1)]),_:1}),y(T,{key:"copyFilePath"},{default:x(()=>[N(w(a.$t("copyFilePath")),1)]),_:1}),y(G),y(T,{key:"tiktokView",onClick:ke},{default:x(()=>[N(w(a.$t("tiktokView")),1)]),_:1})]}),_:1})]),default:x(()=>[y(I,null,{default:x(()=>[N(w(_(ne)("openContextMenu")),1)]),_:1})]),_:1}),y($,{onClick:d[3]||(d[3]=l=>t("contextMenuClick",{key:"download"},n.file,n.idx))},{default:x(()=>[N(w(a.$t("download")),1)]),_:1}),C.value?(p(),ue(I,{key:0,onClick:d[4]||(d[4]=l=>_(Ae)(C.value))},{default:x(()=>[N(w(a.$t("copyPrompt")),1)]),_:1})):W("",!0),C.value?(p(),ue(I,{key:1,onClick:L},{default:x(()=>[N(w(a.$t("copyPositivePrompt")),1)]),_:1})):W("",!0),C.value&&((f=(u=_(i).conf)==null?void 0:u.all_custom_tags)!=null&&f.length)?(p(),ue(I,{key:2,onClick:Ze,type:"primary",loading:Oe.value},{default:x(()=>[N(w(a.$t("aiAnalyzeTags")),1)]),_:1},8,["loading"])):W("",!0),y(I,{onClick:ke,onTouchstart:kt(ke,["prevent"]),type:"default"},{default:x(()=>[N(w(a.$t("tiktokView")),1)]),_:1},8,["onTouchstart"])])):W("",!0)]),ae.value?(p(),k("div",La,[b("div",Aa,[b("span",za,[b("span",Da,w(a.$t("fileName")),1),b("span",{class:"value",title:Z.value,onDblclick:d[5]||(d[5]=l=>_(Ae)(Z.value))},w(Z.value),41,Na),b("span",{style:{margin:"0 8px",cursor:"pointer"},title:"Click to expand full path",onClick:d[6]||(d[6]=l=>ve.value=!_(ve))},[y(_(wt))])]),(p(!0),k(K,null,ge(h.value,l=>(p(),k("span",{class:"info-tag",key:l.name},[b("span",Ia,w(l.name),1),b("span",{class:"value",title:l.val,onDblclick:z=>_(Ae)(l.val)},w(l.val),41,ja)]))),128))]),(M=_(i).conf)!=null&&M.all_custom_tags?(p(),k("div",Pa,[b("div",{class:"sort-tag-switch",onClick:d[7]||(d[7]=l=>ee.value=!_(ee))},[_(ee)?(p(),ue(_(bn),{key:1})):(p(),ue(_(ei),{key:0}))]),b("div",{class:"tag",onClick:d[8]||(d[8]=(...l)=>_(Ot)&&_(Ot)(...l)),style:Qe({"--tag-color":"var(--zp-luminous)"})},"+ "+w(a.$t("add")),5),_(ee)?(p(!0),k(K,{key:0},ge(Be.value,([l,z])=>(p(),k("div",{key:l,class:"tag-alpha-item"},[b("h4",Ba,w(l)+" : ",1),b("div",null,[(p(!0),k(K,null,ge(z,F=>(p(),k("div",{class:et(["tag",{selected:r.value.some(Re=>Re.id===F.id)}]),onClick:Re=>t("contextMenuClick",{key:`toggle-tag-${F.id}`},a.file,a.idx),key:F.id,style:Qe({"--tag-color":_(c).getColor(F)})},w(F.name),15,Ra))),128))])]))),128)):(p(!0),k(K,{key:1},ge(_(i).conf.all_custom_tags,l=>(p(),k("div",{class:et(["tag",{selected:r.value.some(z=>z.id===l.id)}]),onClick:z=>t("contextMenuClick",{key:`toggle-tag-${l.id}`},a.file,a.idx),key:l.id,style:Qe({"--tag-color":_(c).getColor(l)})},w(l.name),15,Ua))),128))])):W("",!0),b("div",Ha,[b("div",Wa,[N(w(a.$t("experimentalLRLayout"))+": ",1),y(ye,{checked:_(Q),"onUpdate:checked":d[9]||(d[9]=l=>Ue(Q)?Q.value=l:null),size:"small"},null,8,["checked"])]),_(Q)?(p(),k(K,{key:0},[b("div",Fa,[N(w(a.$t("width"))+": ",1),y(R,{value:_(te),"onUpdate:value":d[10]||(d[10]=l=>Ue(te)?te.value=l:null),style:{width:"64px"},step:16,min:128,max:1024},null,8,["value"])]),y(E,{title:a.$t("alwaysOnTooltipInfo")},{default:x(()=>[b("div",Xa,[N(w(a.$t("alwaysOn"))+": ",1),y(ye,{checked:_(de),"onUpdate:checked":d[11]||(d[11]=l=>Ue(de)?de.value=l:null),size:"small"},null,8,["checked"])])]),_:1},8,["title"])],64)):W("",!0)]),y(Le,{activeKey:_(X),"onUpdate:activeKey":d[12]||(d[12]=l=>Ue(X)?X.value=l:null)},{default:x(()=>[y(re,{key:"structedData",tab:a.$t("structuredData")},{default:x(()=>[b("div",null,[P.value.prompt?(p(),k(K,{key:0},[qa,Ja,b("code",{innerHTML:s(P.value.prompt??"")},null,8,Ga)],64)):W("",!0),P.value.negativePrompt?(p(),k(K,{key:1},[Ya,Va,b("code",{innerHTML:s(P.value.negativePrompt??"")},null,8,Za)],64)):W("",!0)]),Object.keys(H.value).length?(p(),k(K,{key:0},[Ka,Qa,b("table",null,[(p(!0),k(K,null,ge(H.value,(l,z)=>(p(),k("tr",{key:z,class:"gen-info-frag"},[b("td",es,w(z),1),typeof l=="object"?(p(),k("td",{key:0,style:{cursor:"pointer"},onDblclick:F=>U(l)},[b("code",null,w(l),1)],40,ts)):(p(),k("td",{key:1,style:{cursor:"pointer"},onDblclick:F=>U(_(tt)(l))},w(_(tt)(l)),41,ns))]))),128))])],64)):W("",!0),J.value&&Object.keys(J.value).length?(p(),k(K,{key:1},[is,as,b("table",ss,[(p(!0),k(K,null,ge(J.value,(l,z)=>(p(),k("tr",{key:z,class:"gen-info-frag"},[b("td",os,w(z),1),b("td",{style:{cursor:"pointer"},onDblclick:F=>U(l)},[b("code",ls,w(typeof l=="string"?l:JSON.stringify(l,null,2)),1)],40,rs)]))),128))])],64)):W("",!0)]),_:1},8,["tab"]),y(re,{key:"sourceText",tab:a.$t("sourceText")},{default:x(()=>[b("code",null,w(C.value),1)]),_:1},8,["tab"]),y(re,{key:"exif",tab:"EXIF"},{default:x(()=>[y(Ce,{spinning:Y.value},{default:x(()=>[D.value&&Object.keys(D.value).length?(p(),k("div",cs,[y(ca,{data:D.value},null,8,["data"])])):Y.value?W("",!0):(p(),k("div",us,[y(fe,{description:"No EXIF data available"})]))]),_:1},8,["spinning"])]),_:1})]),_:1},8,["activeKey"])])):W("",!0)]),_(A).expanded&&!_(Q)?(p(),k("div",{key:1,class:"mouse-sensor",ref_key:"resizeHandle",ref:he,title:_(ne)("dragToResizePanel")},[y(_(Rn))],8,gs)):W("",!0)],34)}}});const Ss=lt(ds,[["__scopeId","data-v-d0c05939"]]),fs={key:0,class:"float-panel"},hs={key:0,class:"select-actions"},ps={key:1},vs=rt({__name:"MultiSelectKeep",props:{show:{type:Boolean}},emits:["selectAll","reverseSelect","clearAllSelected"],setup(e,{emit:t}){const n=ut(),i=()=>{t("clearAllSelected"),n.keepMultiSelect=!1},c=()=>{n.keepMultiSelect=!0};return(v,r)=>{const o=Fe;return v.show?(p(),k("div",fs,[_(n).keepMultiSelect?(p(),k("div",hs,[y(o,{size:"small",onClick:r[0]||(r[0]=g=>t("selectAll"))},{default:x(()=>[N(w(v.$t("select-all")),1)]),_:1}),y(o,{size:"small",onClick:r[1]||(r[1]=g=>t("reverseSelect"))},{default:x(()=>[N(w(v.$t("rerverse-select")),1)]),_:1}),y(o,{size:"small",onClick:r[2]||(r[2]=g=>t("clearAllSelected"))},{default:x(()=>[N(w(v.$t("clear-all-selected")),1)]),_:1}),y(o,{size:"small",onClick:i},{default:x(()=>[N(w(v.$t("exit")),1)]),_:1})])):(p(),k("div",ps,[y(o,{size:"small",type:"primary",onClick:c},{default:x(()=>[N(w(v.$t("keep-multi-selected")),1)]),_:1})]))])):W("",!0)}}});const Ts=lt(vs,[["__scopeId","data-v-b04c3508"]]);export{Ms as L,Ts as M,xs as R,Ss as f};
+Please return only tag names, do not include any other content.`,J=(await xn({messages:[{role:"system",content:C},{role:"user",content:`Please analyze this prompt and return matching tags: ${X}`}],temperature:.3,max_tokens:200})).choices[0].message.content.trim();if(!J){be.info(ie("aiAnalyzeTagsNoMatchedTags"));return}const oe=J.split(",").map(E=>E.trim()).filter(E=>E),b=i.conf.all_custom_tags.filter(E=>oe.some(le=>E.name.toLowerCase()===le.toLowerCase()||E.name.toLowerCase().includes(le.toLowerCase())||le.toLowerCase().includes(E.name.toLowerCase()))),ye=new Set(o.value.map(E=>E.id)),R=b.filter(E=>!ye.has(E.id));if(R.length===0){b.length>0?be.info(ie("aiAnalyzeTagsAllTagsAlreadyAdded")):be.info(ie("aiAnalyzeTagsNoValidTags"));return}for(const E of R)t("contextMenuClick",{key:`toggle-tag-${E.id}`},n.file,n.idx);be.success(ie("aiAnalyzeTagsSuccess",[R.length.toString(),R.map(E=>E.name).join(", ")]))}catch(X){console.error("AI分析标签失败:",X),be.error(ie("aiAnalyzeTagsFailed"))}finally{ke.value=!1}};return(a,g)=>{var u,f,x;const X=jn,I=Fe,C=Mn,k=Sn,J=Tn,oe=Cn,b=Fe,ye=Pn,R=In,E=Ln,le=An,he=zn,Le=Ne,Ae=Dn;return _(),O("div",{ref_key:"el",ref:p,class:nt(["full-screen-menu",{"unset-size":!v(A).expanded,lr:v(ee),"always-on":v(fe),"mouse-in":Ce.value}]),onWheelCapture:g[13]||(g[13]=xt(()=>{},["stop"])),onKeydownCapture:ae},[v(ee)?(_(),O("div",Sa)):H("",!0),$("div",Ta,[$("div",Ca,[v(ee)?H("",!0):(_(),O("div",{key:0,ref_key:"dragHandle",ref:y,class:"icon",style:{cursor:"grab"},title:v(ie)("dragToMovePanel")},[m(v(Zn))],8,La)),v(ee)?H("",!0):(_(),O("div",{key:1,class:"icon",style:{cursor:"pointer"},onClick:g[0]||(g[0]=c=>v(A).expanded=!v(A).expanded),title:v(ie)("clickToToggleMaximizeMinimize")},[se.value?(_(),de(v(En),{key:0})):(_(),de(v(wn),{key:1}))],8,Aa)),$("div",{style:{display:"flex","flex-direction":"column","align-items":"center",cursor:"grab"},class:"icon",title:v(ie)("fullscreenview"),onClick:P},[$("img",{src:v(li),style:{width:"21px",height:"21px","padding-bottom":"2px"},alt:""},null,8,Da)],8,za),m(X,{"get-popup-container":je},{overlay:M(()=>[m(Bn,{file:a.file,idx:a.idx,"selected-tag":o.value,onContextMenuClick:g[1]||(g[1]=(c,z,F)=>t("contextMenuClick",c,z,F))},null,8,["file","idx","selected-tag"])]),default:M(()=>[v(A).expanded?H("",!0):(_(),O("div",Na,[m(v(kt))]))]),_:1}),se.value?(_(),O("div",Ia)):H("",!0),se.value?(_(),O("div",Pa,[m(X,{trigger:["hover"],"get-popup-container":je},{overlay:M(()=>[m(oe,{onClick:g[2]||(g[2]=c=>t("contextMenuClick",c,a.file,a.idx))},{default:M(()=>{var c;return[((c=v(i).conf)==null?void 0:c.launch_mode)!=="server"?(_(),O(Y,{key:0},[m(C,{key:"send2txt2img"},{default:M(()=>[N(w(a.$t("sendToTxt2img")),1)]),_:1}),m(C,{key:"send2img2img"},{default:M(()=>[N(w(a.$t("sendToImg2img")),1)]),_:1}),m(C,{key:"send2inpaint"},{default:M(()=>[N(w(a.$t("sendToInpaint")),1)]),_:1}),m(C,{key:"send2extras"},{default:M(()=>[N(w(a.$t("sendToExtraFeatures")),1)]),_:1}),m(k,{key:"sendToThirdPartyExtension",title:a.$t("sendToThirdPartyExtension")},{default:M(()=>[m(C,{key:"send2controlnet-txt2img"},{default:M(()=>[N("ControlNet - "+w(a.$t("t2i")),1)]),_:1}),m(C,{key:"send2controlnet-img2img"},{default:M(()=>[N("ControlNet - "+w(a.$t("i2i")),1)]),_:1}),m(C,{key:"send2outpaint"},{default:M(()=>[N("openOutpaint")]),_:1})]),_:1},8,["title"])],64)):H("",!0),m(C,{key:"send2BatchDownload"},{default:M(()=>[N(w(a.$t("sendToBatchDownload")),1)]),_:1}),m(k,{key:"copy2target",title:a.$t("copyTo")},{default:M(()=>[(_(!0),O(Y,null,ge(v(i).quickMovePaths,z=>(_(),de(C,{key:`copy-to-${z.dir}`},{default:M(()=>[N(w(z.zh),1)]),_:2},1024))),128))]),_:1},8,["title"]),m(k,{key:"move2target",title:a.$t("moveTo")},{default:M(()=>[(_(!0),O(Y,null,ge(v(i).quickMovePaths,z=>(_(),de(C,{key:`move-to-${z.dir}`},{default:M(()=>[N(w(z.zh),1)]),_:2},1024))),128))]),_:1},8,["title"]),m(J),m(C,{key:"deleteFiles"},{default:M(()=>[N(w(a.$t("deleteSelected")),1)]),_:1}),m(C,{key:"previewInNewWindow"},{default:M(()=>[N(w(a.$t("previewInNewWindow")),1)]),_:1}),m(C,{key:"copyPreviewUrl"},{default:M(()=>[N(w(a.$t("copySourceFilePreviewLink")),1)]),_:1}),m(C,{key:"copyFilePath"},{default:M(()=>[N(w(a.$t("copyFilePath")),1)]),_:1}),m(J),m(C,{key:"tiktokView",onClick:Oe},{default:M(()=>[N(w(a.$t("tiktokView")),1)]),_:1})]}),_:1})]),default:M(()=>[m(I,null,{default:M(()=>[N(w(v(ie)("openContextMenu")),1)]),_:1})]),_:1}),m(b,{onClick:g[3]||(g[3]=c=>t("contextMenuClick",{key:"download"},n.file,n.idx))},{default:M(()=>[N(w(a.$t("download")),1)]),_:1}),T.value?(_(),de(I,{key:0,onClick:g[4]||(g[4]=c=>v(ze)(T.value))},{default:M(()=>[N(w(a.$t("copyPrompt")),1)]),_:1})):H("",!0),T.value?(_(),de(I,{key:1,onClick:L},{default:M(()=>[N(w(a.$t("copyPositivePrompt")),1)]),_:1})):H("",!0),T.value&&((f=(u=v(i).conf)==null?void 0:u.all_custom_tags)!=null&&f.length)?(_(),de(I,{key:2,onClick:Qe,type:"primary",loading:ke.value},{default:M(()=>[N(w(a.$t("aiAnalyzeTags")),1)]),_:1},8,["loading"])):H("",!0),m(I,{onClick:Oe,onTouchstart:xt(Oe,["prevent"]),type:"default"},{default:M(()=>[N(w(a.$t("tiktokView")),1)]),_:1},8,["onTouchstart"])])):H("",!0)]),se.value?(_(),O("div",ja,[$("div",Ba,[$("span",Ra,[$("span",Ua,w(a.$t("fileName")),1),$("span",{class:"value",title:V.value,onDblclick:g[5]||(g[5]=c=>v(ze)(V.value))},w(V.value),41,Ha),$("span",{style:{margin:"0 8px",cursor:"pointer"},title:"Click to expand full path",onClick:g[6]||(g[6]=c=>ve.value=!v(ve))},[m(v(kt))])]),(_(!0),O(Y,null,ge(h.value,c=>(_(),O("span",{class:"info-tag",key:c.name},[$("span",Wa,w(c.name),1),$("span",{class:"value",title:c.val,onDblclick:z=>v(ze)(c.val)},w(c.val),41,Fa)]))),128))]),(x=v(i).conf)!=null&&x.all_custom_tags?(_(),O("div",Xa,[$("div",{class:"sort-tag-switch",onClick:g[7]||(g[7]=c=>te.value=!v(te))},[v(te)?(_(),de(v(On),{key:1})):(_(),de(v(ri),{key:0}))]),$("div",{class:"tag",onClick:g[8]||(g[8]=(...c)=>v(Mt)&&v(Mt)(...c)),style:tt({"--tag-color":"var(--zp-luminous)"})},"+ "+w(a.$t("add")),5),v(te)?(_(!0),O(Y,{key:0},ge(Be.value,([c,z])=>(_(),O("div",{key:c,class:"tag-alpha-item"},[$("h4",qa,w(c)+" : ",1),$("div",null,[(_(!0),O(Y,null,ge(z,F=>(_(),O("div",{class:nt(["tag",{selected:o.value.some(Re=>Re.id===F.id)}]),onClick:Re=>t("contextMenuClick",{key:`toggle-tag-${F.id}`},a.file,a.idx),key:F.id,style:tt({"--tag-color":v(l).getColor(F)})},w(F.name),15,Ja))),128))])]))),128)):(_(!0),O(Y,{key:1},ge(v(i).conf.all_custom_tags,c=>(_(),O("div",{class:nt(["tag",{selected:o.value.some(z=>z.id===c.id)}]),onClick:z=>t("contextMenuClick",{key:`toggle-tag-${c.id}`},a.file,a.idx),key:c.id,style:tt({"--tag-color":v(l).getColor(c)})},w(c.name),15,Ga))),128))])):H("",!0),$("div",Va,[$("div",Ya,[N(w(a.$t("experimentalLRLayout"))+": ",1),m(ye,{checked:v(ee),"onUpdate:checked":g[9]||(g[9]=c=>Ue(ee)?ee.value=c:null),size:"small"},null,8,["checked"])]),v(ee)?(_(),O(Y,{key:0},[$("div",Za,[N(w(a.$t("width"))+": ",1),m(R,{value:v(ne),"onUpdate:value":g[10]||(g[10]=c=>Ue(ne)?ne.value=c:null),style:{width:"64px"},step:16,min:128,max:1024},null,8,["value"])]),m(E,{title:a.$t("alwaysOnTooltipInfo")},{default:M(()=>[$("div",Ka,[N(w(a.$t("alwaysOn"))+": ",1),m(ye,{checked:v(fe),"onUpdate:checked":g[11]||(g[11]=c=>Ue(fe)?fe.value=c:null),size:"small"},null,8,["checked"])])]),_:1},8,["title"])],64)):H("",!0)]),m(Ae,{activeKey:v(q),"onUpdate:activeKey":g[12]||(g[12]=c=>Ue(q)?q.value=c:null)},{default:M(()=>[m(le,{key:"structedData",tab:a.$t("structuredData")},{default:M(()=>[$("div",null,[S.value.prompt?(_(),O(Y,{key:0},[Qa,es,$("code",{innerHTML:s(S.value.prompt??"")},null,8,ts)],64)):H("",!0),S.value.negativePrompt?(_(),O(Y,{key:1},[ns,is,$("code",{innerHTML:s(S.value.negativePrompt??"")},null,8,as)],64)):H("",!0)]),Object.keys(j.value).length?(_(),O(Y,{key:0},[ss,os,$("table",null,[(_(!0),O(Y,null,ge(j.value,(c,z)=>(_(),O("tr",{key:z,class:"gen-info-frag"},[$("td",rs,w(z),1),typeof c=="object"?(_(),O("td",{key:0,style:{cursor:"pointer"},onDblclick:F=>U(c)},[$("code",null,w(c),1)],40,ls)):(_(),O("td",{key:1,style:{cursor:"pointer"},onDblclick:F=>U(v(it)(c))},w(v(it)(c)),41,cs))]))),128))])],64)):H("",!0),W.value&&Object.keys(W.value).length?(_(),O(Y,{key:1},[us,ds,$("table",gs,[(_(!0),O(Y,null,ge(W.value,(c,z)=>(_(),O("tr",{key:z,class:"gen-info-frag"},[$("td",fs,w(z),1),$("td",{style:{cursor:"pointer"},onDblclick:F=>U(c)},[$("code",ps,w(typeof c=="string"?c:JSON.stringify(c,null,2)),1)],40,hs)]))),128))])],64)):H("",!0)]),_:1},8,["tab"]),m(le,{key:"sourceText",tab:a.$t("sourceText")},{default:M(()=>[$("code",null,w(T.value),1)]),_:1},8,["tab"]),m(le,{key:"exif",tab:"EXIF"},{default:M(()=>[m(Le,{spinning:Z.value},{default:M(()=>[D.value&&Object.keys(D.value).length?(_(),O("div",vs,[m(va,{data:D.value},null,8,["data"])])):Z.value?H("",!0):(_(),O("div",_s,[m(he,{description:"No EXIF data available"})]))]),_:1},8,["spinning"])]),_:1})]),_:1},8,["activeKey"])])):H("",!0)]),v(A).expanded&&!v(ee)?(_(),O("div",{key:1,class:"mouse-sensor",ref_key:"resizeHandle",ref:ce,title:v(ie)("dragToResizePanel")},[m(v(Jn))],8,ms)):H("",!0)],34)}}});const Ns=ut(ys,[["__scopeId","data-v-d0c05939"]]),bs={key:0,class:"float-panel"},$s={key:0,class:"select-actions"},Es={key:1},ws=ct({__name:"MultiSelectKeep",props:{show:{type:Boolean}},emits:["selectAll","reverseSelect","clearAllSelected"],setup(e,{emit:t}){const n=Ge(),i=()=>{t("clearAllSelected"),n.keepMultiSelect=!1},l=()=>{n.keepMultiSelect=!0};return(p,o)=>{const r=Fe;return p.show?(_(),O("div",bs,[v(n).keepMultiSelect?(_(),O("div",$s,[m(r,{size:"small",onClick:o[0]||(o[0]=d=>t("selectAll"))},{default:M(()=>[N(w(p.$t("select-all")),1)]),_:1}),m(r,{size:"small",onClick:o[1]||(o[1]=d=>t("reverseSelect"))},{default:M(()=>[N(w(p.$t("rerverse-select")),1)]),_:1}),m(r,{size:"small",onClick:o[2]||(o[2]=d=>t("clearAllSelected"))},{default:M(()=>[N(w(p.$t("clear-all-selected")),1)]),_:1}),m(r,{size:"small",onClick:i},{default:M(()=>[N(w(p.$t("exit")),1)]),_:1})])):(_(),O("div",Es,[m(r,{size:"small",type:"primary",onClick:l},{default:M(()=>[N(w(p.$t("keep-multi-selected")),1)]),_:1})]))])):H("",!0)}}});const Is=ut(ws,[["__scopeId","data-v-b04c3508"]]);export{zs as L,Is as M,Ds as R,Ns as f};
diff --git a/vue/dist/assets/MultiSelectKeep-b9e69497.css b/vue/dist/assets/MultiSelectKeep-b9e69497.css
new file mode 100644
index 0000000..18b5ce0
--- /dev/null
+++ b/vue/dist/assets/MultiSelectKeep-b9e69497.css
@@ -0,0 +1 @@
+.exif-browser[data-v-769039d4]{display:flex;flex-direction:column}.exif-browser .exif-header[data-v-769039d4]{display:flex;align-items:center;justify-content:space-between;padding:8px;background:var(--zp-secondary-variant-background);border-radius:4px;margin-bottom:8px}.exif-browser .exif-header .exif-path[data-v-769039d4]{display:flex;align-items:center;flex:1;overflow:hidden;white-space:nowrap}.exif-browser .exif-header .exif-path .path-item[data-v-769039d4]{padding:2px 4px;border-radius:2px}.exif-browser .exif-header .exif-path .path-item.clickable[data-v-769039d4]{cursor:pointer;color:var(--zp-primary)}.exif-browser .exif-header .exif-path .path-item.clickable[data-v-769039d4]:hover{background:var(--zp-secondary)}.exif-browser .exif-header .exif-path .path-separator[data-v-769039d4]{color:var(--zp-secondary);margin:0 4px}.exif-browser .exif-content .exif-item[data-v-769039d4]{display:flex;align-items:flex-start;padding:4px 8px;border-bottom:1px solid var(--zp-secondary)}.exif-browser .exif-content .exif-item[data-v-769039d4]:hover{background:var(--zp-secondary-variant-background)}.exif-browser .exif-content .exif-item .exif-key[data-v-769039d4]{flex:0 0 120px;font-weight:600;color:var(--zp-primary);word-break:break-all}.exif-browser .exif-content .exif-item .exif-value[data-v-769039d4]{flex:1;display:flex;align-items:flex-start;gap:4px;color:var(--zp-primary);word-break:break-all}.exif-browser .exif-content .exif-item .exif-value .value-text[data-v-769039d4]{flex:1;white-space:pre-wrap}.exif-browser .exif-content .exif-item .exif-value .value-text[data-v-769039d4] code{font-family:Consolas,Monaco,Courier New,monospace;font-size:.9em;line-height:1.5;background:transparent;padding:0}.exif-browser .exif-content .exif-item .exif-value .ant-btn-text[data-v-769039d4]{padding:0 4px;color:var(--zp-luminous)}.exif-browser .exif-content .exif-item .exif-value .ant-btn-text[data-v-769039d4]:hover{color:var(--zp-primary)}.exif-browser .exif-content .exif-simple[data-v-769039d4]{padding:8px;white-space:pre;color:var(--zp-primary)}.full-screen-menu[data-v-d0c05939]{position:fixed;z-index:9999;background:var(--zp-primary-background);padding:8px 16px;box-shadow:0 0 4px var(--zp-secondary);border-radius:4px}.full-screen-menu .tags-container[data-v-d0c05939]{margin:4px 0}.full-screen-menu .tags-container .tag[data-v-d0c05939]{margin-right:4px;margin-bottom:4px;padding:2px 16px;border-radius:4px;display:inline-block;cursor:pointer;font-weight:700;transition:.5s all ease;border:2px solid var(--tag-color);color:var(--tag-color);background:var(--zp-primary-background);user-select:none}.full-screen-menu .tags-container .tag.selected[data-v-d0c05939]{background:var(--tag-color);color:#fff}.full-screen-menu .container[data-v-d0c05939]{height:100%;display:flex;overflow:hidden;flex-direction:column}.full-screen-menu .gen-info[data-v-d0c05939]{flex:1;word-break:break-all;white-space:pre-line;overflow:auto;z-index:1;padding-top:4px;position:relative}.full-screen-menu .gen-info code[data-v-d0c05939]{font-size:.9em;display:block;padding:4px;background:var(--zp-primary-background);border-radius:4px;margin-right:20px;white-space:pre-wrap;word-break:break-word;line-height:1.78em}.full-screen-menu .gen-info code[data-v-d0c05939] .natural-text{margin:.5em 0;line-height:1.6em;text-align:justify;color:var(--zp-primary)}.full-screen-menu .gen-info code[data-v-d0c05939] .short-tag{word-break:break-all;white-space:nowrap}.full-screen-menu .gen-info code[data-v-d0c05939] span.tag{background:var(--zp-secondary-variant-background);color:var(--zp-primary);padding:2px 4px;border-radius:6px;margin-right:6px;margin-top:4px;line-height:1.3em;display:inline-block}.full-screen-menu .gen-info code[data-v-d0c05939] .has-parentheses.tag{background:rgba(255,100,100,.14)}.full-screen-menu .gen-info code[data-v-d0c05939] span.tag:hover{background:rgba(120,0,0,.15)}.full-screen-menu .gen-info table[data-v-d0c05939]{font-size:1em;border-radius:4px;border-collapse:separate;margin-bottom:3em}.full-screen-menu .gen-info table tr td[data-v-d0c05939]:first-child{white-space:nowrap;vertical-align:top}.full-screen-menu .gen-info table.extra-meta-table .extra-meta-value[data-v-d0c05939]{display:block;max-height:200px;overflow:auto;white-space:pre-wrap;word-break:break-word;font-size:.85em;background:var(--zp-secondary-variant-background);padding:8px;border-radius:4px}.full-screen-menu .gen-info table td[data-v-d0c05939]{padding-right:14px;padding-left:4px;border-bottom:1px solid var(--zp-secondary);border-collapse:collapse}.full-screen-menu .gen-info .info-tags .info-tag[data-v-d0c05939]{display:inline-block;overflow:hidden;border-radius:4px;margin-right:8px;border:2px solid var(--zp-primary)}.full-screen-menu .gen-info .info-tags .name[data-v-d0c05939]{background-color:var(--zp-primary);color:var(--zp-primary-background);padding:4px;border-bottom-right-radius:4px}.full-screen-menu .gen-info .info-tags .value[data-v-d0c05939]{padding:4px}.full-screen-menu.unset-size[data-v-d0c05939]{width:unset!important;height:unset!important}.full-screen-menu .mouse-sensor[data-v-d0c05939]{position:absolute;bottom:0;right:0;transform:rotate(90deg);cursor:se-resize;z-index:1;background:var(--zp-primary-background);border-radius:2px}.full-screen-menu .mouse-sensor>*[data-v-d0c05939]{font-size:18px;padding:4px}.full-screen-menu .action-bar[data-v-d0c05939]{display:flex;align-items:center;user-select:none;gap:4px}.full-screen-menu .action-bar .icon[data-v-d0c05939]{font-size:1.5em;padding:2px 4px;border-radius:4px}.full-screen-menu .action-bar .icon[data-v-d0c05939]:hover{background:var(--zp-secondary-variant-background)}.full-screen-menu .action-bar>*[data-v-d0c05939]{flex-wrap:wrap}.full-screen-menu.lr[data-v-d0c05939]{top:var(--027025a1)!important;right:0!important;bottom:0!important;left:100vw!important;height:unset!important;width:var(--31f63254)!important;transition:left ease .3s}.full-screen-menu.lr.always-on[data-v-d0c05939],.full-screen-menu.lr.mouse-in[data-v-d0c05939]{left:var(--18c105d0)!important}.tag-alpha-item[data-v-d0c05939]{display:flex;margin-top:4px}.tag-alpha-item h4[data-v-d0c05939]{width:32px;flex-shrink:0}.sort-tag-switch[data-v-d0c05939]{display:inline-block;padding-right:16px;padding-left:8px;cursor:pointer;user-select:none}.sort-tag-switch span[data-v-d0c05939]{transition:all ease .3s;transform:scale(1.2)}.sort-tag-switch:hover span[data-v-d0c05939]{transform:scale(1.3)}.lr-layout-control[data-v-d0c05939]{display:flex;align-items:center;gap:16px;padding:4px 8px;flex-wrap:wrap;border-radius:2px;border-left:3px solid var(--zp-luminous);background-color:var(--zp-secondary-background)}.lr-layout-control .ctrl-item[data-v-d0c05939]{display:flex;align-items:center;gap:4px;flex-wrap:nowrap}.select-actions[data-v-b04c3508]>:not(:last-child){margin-right:4px}.float-panel[data-v-b04c3508]{position:absolute;bottom:32px;right:32px;background:var(--zp-primary-background);border-radius:4px;z-index:1000;padding:8px;box-shadow:0 0 4px var(--zp-secondary)}
diff --git a/vue/dist/assets/SubstrSearch-77a3754a.js b/vue/dist/assets/SubstrSearch-41ae1267.js
similarity index 93%
rename from vue/dist/assets/SubstrSearch-77a3754a.js
rename to vue/dist/assets/SubstrSearch-41ae1267.js
index 3d03aac..93674d9 100644
--- a/vue/dist/assets/SubstrSearch-77a3754a.js
+++ b/vue/dist/assets/SubstrSearch-41ae1267.js
@@ -1 +1 @@
-import{c as a,A as Fe,d as Be,c0 as Ue,$ as b,at as Ee,c4 as te,v as He,c6 as Pe,c7 as Ge,ad as Ke,ag as je,ae as qe,c5 as ae,c8 as Le,r as Ne,o as f,k as B,y as t,z as e,l as d,m as o,t as i,x as y,p as k,B as U,ci as Je,Q as O,C as le,E as We,O as Qe,n as Xe,U as se,V as Ye,cj as Ze,R as et,W as ne,cc as tt,T as at,aB as lt,aC as st,ck as nt,q as it}from"./index-199f8388.js";import{S as ot}from"./index-7e51dac4.js";/* empty css */import"./index-6dc5f88c.js";/* empty css */import"./index-7522e103.js";import{s as rt,F as dt}from"./FileItem-cdbc027c.js";import{M as ut,L as ct,R as pt,f as ft}from"./MultiSelectKeep-634cf4db.js";import{c as vt,u as mt}from"./hook-0813f5c7.js";import{g as gt,o as _t}from"./index-ea810700.js";import{f as M,H as ie,_ as ht,a as yt}from"./searchHistory-369cb004.js";import"./index-23736bbf.js";import"./index-15b4c137.js";import"./index-35375b6a.js";import"./index-3f517ea8.js";import"./index-6905bc51.js";import"./shortcut-61d236ef.js";import"./_isIterateeCall-bed55584.js";var kt={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"defs",attrs:{},children:[{tag:"style",attrs:{}}]},{tag:"path",attrs:{d:"M952 474H829.8C812.5 327.6 696.4 211.5 550 194.2V72c0-4.4-3.6-8-8-8h-60c-4.4 0-8 3.6-8 8v122.2C327.6 211.5 211.5 327.6 194.2 474H72c-4.4 0-8 3.6-8 8v60c0 4.4 3.6 8 8 8h122.2C211.5 696.4 327.6 812.5 474 829.8V952c0 4.4 3.6 8 8 8h60c4.4 0 8-3.6 8-8V829.8C696.4 812.5 812.5 696.4 829.8 550H952c4.4 0 8-3.6 8-8v-60c0-4.4-3.6-8-8-8zM512 756c-134.8 0-244-109.2-244-244s109.2-244 244-244 244 109.2 244 244-109.2 244-244 244z"}},{tag:"path",attrs:{d:"M512 392c-32.1 0-62.1 12.4-84.8 35.2-22.7 22.7-35.2 52.7-35.2 84.8s12.5 62.1 35.2 84.8C449.9 619.4 480 632 512 632s62.1-12.5 84.8-35.2C619.4 574.1 632 544 632 512s-12.5-62.1-35.2-84.8A118.57 118.57 0 00512 392z"}}]},name:"aim",theme:"outlined"};const bt=kt;function oe(u){for(var c=1;c=100?"success":c||"normal"}),f=function(){var v=t.showInfo,h=t.format,d=t.type,p=t.percent,g=t.title,y=Gc(t);if(!v)return null;var m,_=h||(a==null?void 0:a.format)||function(x){return"".concat(x,"%")},S=d==="line";return h||a!=null&&a.format||u.value!=="exception"&&u.value!=="success"?m=_(ro(p),ro(y)):u.value==="exception"?m=S?mt(iE,null,null):mt(oE,null,null):u.value==="success"&&(m=S?mt(sE,null,null):mt(lE,null,null)),mt("span",{class:"".concat(i.value,"-text"),title:g===void 0&&typeof m=="string"?m:void 0},[m])};return function(){var c=t.type,v=t.steps,h=t.strokeColor,d=t.title,p=f(),g;c==="line"?g=v?mt(YE,Re(Re({},t),{},{strokeColor:typeof h=="string"?h:void 0,prefixCls:i.value,steps:v}),{default:function(){return[p]}}):mt(NE,Re(Re({},t),{},{prefixCls:i.value}),{default:function(){return[p]}}):(c==="circle"||c==="dashboard")&&(g=mt($E,Re(Re({},t),{},{prefixCls:i.value}),{default:function(){return[p]}}));var y=Re(Re({},s.value),{},br({},"".concat(i.value,"-status-").concat(u.value),!0));return mt("div",{class:y,title:d},[g])}}}),XE=ZA(ZE);var qE={small:8,middle:16,large:24},KE=function(){return{prefixCls:String,size:{type:[String,Number,Array]},direction:Xl.oneOf(lu("horizontal","vertical")).def("horizontal"),align:Xl.oneOf(lu("start","end","center","baseline")),wrap:{type:Boolean,default:void 0}}};function jE(r){return typeof r=="string"?qE[r]:r||0}var JE=oi({compatConfig:{MODE:3},name:"ASpace",props:KE(),slots:["split"],setup:function(t,e){var a=e.slots,n=YA("space",t),i=n.prefixCls,o=n.space,s=n.direction,l=DE(),u=Ft(function(){var g,y,m;return(g=(y=t.size)!==null&&y!==void 0?y:(m=o.value)===null||m===void 0?void 0:m.size)!==null&&g!==void 0?g:"small"}),f=Yt(),c=Yt();eo(u,function(){var g=(Array.isArray(u.value)?u.value:[u.value,u.value]).map(function(m){return jE(m)}),y=UA(g,2);f.value=y[0],c.value=y[1]},{immediate:!0});var v=Ft(function(){return t.align===void 0&&t.direction==="horizontal"?"center":t.align}),h=Ft(function(){var g;return uE(i.value,"".concat(i.value,"-").concat(t.direction),(g={},br(g,"".concat(i.value,"-rtl"),s.value==="rtl"),br(g,"".concat(i.value,"-align-").concat(v.value),v.value),g))}),d=Ft(function(){return s.value==="rtl"?"marginLeft":"marginRight"}),p=Ft(function(){var g={};return l.value&&(g.columnGap="".concat(f.value,"px"),g.rowGap="".concat(c.value,"px")),Re(Re({},g),t.wrap&&{flexWrap:"wrap",marginBottom:"".concat(-c.value,"px")})});return function(){var g,y,m=t.wrap,_=t.direction,S=_===void 0?"horizontal":_,x=(g=a.default)===null||g===void 0?void 0:g.call(a),b=fE(x),w=b.length;if(w===0)return null;var T=(y=a.split)===null||y===void 0?void 0:y.call(a),C="".concat(i.value,"-item"),M=f.value,D=w-1;return mt("div",{class:h.value,style:p.value},[b.map(function(I,L){var P=x.indexOf(I),R={};return l.value||(S==="vertical"?L
');continue}const Pt=Me[Ge];ke||(ke=Pt.includes("("));const Lt=["tag"];ke&&Lt.push("has-parentheses"),Pt.length<32&&Lt.push("short-tag"),Ae.push(`${Pt}`),ke&&(ke=!Pt.includes(")"))}return Ae.join(i.showCommaInInfoPanel?",":" ")}const G=()=>{const ue=(c.indexOf(l.value)+1)%c.length;l.value=c[ue],K(),Zt.success(Te("autoPlayStatus",{mode:d.value[l.value]}))},V=(Z=!1)=>{_.value||!n.hasPrev||(R(),_.value=!0,T.value=0,w.value=100,setTimeout(()=>{n.prev(),Y(),w.value=0,setTimeout(()=>{_.value=!1},f(Z))},200))},se=(Z=!1)=>{_.value||!n.hasNext||(R(),_.value=!0,T.value=0,w.value=-100,setTimeout(()=>{n.next(),Y(),w.value=0,setTimeout(()=>{_.value=!1},f(Z))},200))},oe=(Z=!1)=>{_.value||(R(),_.value=!0,T.value=0,w.value=100,setTimeout(()=>{n.currentIndex=0,Y(),w.value=0,setTimeout(()=>{_.value=!1},f(Z))},200))},ae=Z=>{if(_.value){Z.preventDefault();return}R(),C.value=Z.touches[0].clientY,O.value=Z.touches[0].clientY,I.value=!0,T.value=0,w.value!==0&&(w.value=0)},Q=Z=>{if(_.value){Z.preventDefault();return}if(!I.value)return;O.value=Z.touches[0].clientY;const ue=O.value-C.value,Me=window.innerHeight,Ae=ue/Me*100;T.value=Ae,Z.preventDefault()},W=()=>{if(!I.value)return;const Z=O.value-C.value,ue=window.innerHeight,Me=Z/ue*100;if(I.value=!1,_.value){T.value=0;return}Math.abs(Me)>30?Me>0&&n.hasPrev?V(!0):Me<0&&n.hasNext?se(!0):ce():ce()},q=()=>{I.value&&(I.value=!1,_.value||ce())},ce=()=>{_.value||(_.value=!0,T.value=0,w.value=0,setTimeout(()=>{_.value=!1,K()},300))},ie=B7(Z=>{_.value||(Z.preventDefault(),R(),Z.deltaY>0&&n.hasNext?se():Z.deltaY<0&&n.hasPrev&&V())},500),de=Z=>{if(!(!n.visible||_.value))switch(Z.key){case"ArrowUp":Z.preventDefault(),n.hasPrev&&V();break;case"ArrowDown":Z.preventDefault(),n.hasNext&&se();break;case"Escape":Z.preventDefault(),n.closeView();break}},we=async()=>{n.isFullscreen?await Ie():await Ce()},Ce=async()=>{if(p.value&&!document.fullscreenElement)try{await p.value.requestFullscreen(),n.isFullscreen=!0}catch(Z){console.warn("无法进入全屏模式:",Z)}},Ie=async()=>{if(document.fullscreenElement)try{await document.exitFullscreen(),n.isFullscreen=!1}catch(Z){console.warn("无法退出全屏模式:",Z)}},Qe=()=>{s.value=!s.value;const Z=g.value[1];Z&&(Z.muted=s.value);const ue=y.value[1];ue&&(ue.muted=s.value)},jt=()=>{n.isFullscreen=!!document.fullscreenElement},qt=z([]),Et=z([]),$t=Z=>{Z&&(Z.pause(),Z.src="",Z.muted=!0,Z.load(),Z.parentNode&&Z.parentNode.removeChild(Z))},ut=Z=>{Z&&(Z.pause(),Z.src="",Z.muted=!0,Z.load(),Z.parentNode&&Z.parentNode.removeChild(Z))};ve(qt,Z=>{for(;Z.length>5;){const ue=Z.shift();ue&&$t(ue)}},{deep:!0}),ve(Et,Z=>{for(;Z.length>5;){const ue=Z.shift();ue&&ut(ue)}},{deep:!0}),ve(()=>n.visible===!1||n.mediaList.length===0,Z=>{Z||(qt.value.forEach($t),qt.value=[],Et.value.forEach(ut),Et.value=[],l.value="off")},{immediate:!0});const Ht=()=>{b.value.forEach(Z=>{if(Z)if(yo(Z.url)){const ue=document.createElement("video");ue.preload="metadata",ue.src=Z.url,qt.value.push(ue)}else if(yl(Z.url)){const ue=document.createElement("audio");ue.preload="metadata",ue.src=Z.url,Et.value.push(ue)}else{const ue=new Image;ue.src=Z.url}})},Zn=async()=>{const Z=n.currentItem;if(!Z)return;const ue=(Z==null?void 0:Z.fullpath)||Z.id;ue&&await r.fetchImageTags([ue])},va=async()=>{const Z=n.currentItem;if(!Z){$.value="";return}const ue=Z.name||Z.url;if(yo(ue)||yl(ue)){$.value="";return}const Me=(Z==null?void 0:Z.fullpath)||Z.id;if(!Me){$.value="";return}const Ae=++D;F.value=!0;try{const ke=await fd(Me);if(Ae!==D)return;$.value=ke}catch(ke){if(console.error("Load prompt error:",ke),Ae!==D)return;$.value=""}finally{Ae===D&&(F.value=!1)}},Wt=()=>{var Z,ue;return((Z=E.value)==null?void 0:Z.fullpath)||((ue=E.value)==null?void 0:ue.id)||""},Xa=()=>{var Z;return((Z=E.value)==null?void 0:Z.name)||Wt().split(/[/\\]/).pop()||""},Za=()=>{const Z=n.currentIndex;if(!(Z<0||Z>=n.mediaList.length)){if(n.mediaList.splice(Z,1),n.mediaList.length===0){n.closeView();return}Z>=n.mediaList.length&&(n.currentIndex=n.mediaList.length-1)}},ha=async()=>{const Z=Wt();Z&&await new Promise(ue=>{Ct.confirm({title:Te("confirmDelete"),maskClosable:!0,content:Xa(),async onOk(){const{events:Me}=await pn(()=>import("./index-ea810700.js").then(Ae=>Ae.l),["assets/index-ea810700.js","assets/shortcut-61d236ef.js","assets/index-35375b6a.js","assets/index-9fed83c2.css","assets/index-3f517ea8.js","assets/index-017a4092.css","assets/shortcut-2acaf603.css","assets/_isIterateeCall-bed55584.js"]);await YV([Z]),Zt.success(Te("deleteSuccess")),Me.emit("removeFiles",{paths:[Z],loc:TW(Z)}),Za(),N.value=!1,ue()},onCancel(){ue()}})})},Xe=async()=>{const Z=Wt();Z&&await dW(Z)},it=async()=>{const Z=Wt();Z&&await pW(Z)},Je=()=>{const Z=Wt();Z&&n0(Z)},ht=()=>{var Me,Ae;const Z=(Me=E.value)==null?void 0:Me.originalFile,ue=Z?jr(Z):(Ae=E.value)==null?void 0:Ae.url;ue&&n0(ue)};return IH(m,L,{delay:500}),Ue(()=>{document.addEventListener("keydown",de),document.addEventListener("fullscreenchange",jt),Y()}),_n(()=>{document.removeEventListener("keydown",de),document.removeEventListener("fullscreenchange",jt),R(),g.value.forEach(Z=>{$t(Z)}),y.value.forEach(Z=>{ut(Z)}),qt.value.forEach($t),qt.value=[],Et.value.forEach(ut),Et.value=[]}),ve(()=>n.currentIndex,()=>{N.value=!1,Y(),Ye(()=>{Ht(),Zn(),va()})},{immediate:!0}),ve(()=>n.mediaList,()=>{Y(),Ye(()=>{Zn(),va()})},{deep:!0}),ve(()=>n.visible,Z=>{Z?(j.value=!0,Ye(()=>{Y()})):(N.value=!1,$.value="",F.value=!1,D++,g.value.forEach(ue=>{ue&&(ue.pause(),ue.src="",ue.load())}),g.value=[null,null,null],y.value.forEach(ue=>{ue&&(ue.pause(),ue.src="",ue.load())}),y.value=[null,null,null],b.value=[null,null,null],R(),document.fullscreenElement&&Ie())}),ve(()=>s.value,Z=>{g.value.forEach(ue=>{ue&&(ue.muted=Z)}),y.value.forEach(ue=>{ue&&(ue.muted=Z)})}),ve(()=>l.value,()=>{K()}),(Z,ue)=>{var Me;return Oe(),wt(fu,{to:"body"},[me(n).visible?(Oe(),Le("div",{key:0,ref_key:"containerRef",ref:p,class:tn(P.value),onTouchstart:ae,onTouchmove:Q,onTouchend:W,onTouchcancel:q,onWheel:ue[12]||(ue[12]=(...Ae)=>me(ie)&&me(ie)(...Ae))},[me(!1)?(Oe(),Le("div",uU,[(Oe(!0),Le(De,null,$a(o.value,(Ae,ke)=>(Oe(),Le("div",{key:ke,class:"debug-item"},[Pe("span",cU,bt(ke)+":",1),Pe("span",{class:tn(["debug-value",{"is-true":Ae===!0,"is-false":Ae===!1}])},bt(Ae),3)]))),128))])):Tt("",!0),Pe("div",{ref_key:"viewportRef",ref:m,class:"tiktok-viewport"},[(Oe(!0),Le(De,null,$a(b.value,(Ae,ke)=>(Oe(),Le("div",{key:(Ae==null?void 0:Ae.id)||`empty-${ke}`,class:"tiktok-media-item",style:Mn(k(ke))},[Ae?(Oe(),Le("div",fU,[me(yo)(Ae.url)&&me(n).visible?(Oe(),Le("video",{class:"tiktok-media tiktok-video",src:Ae.url,controls:ke===1,loop:ke===1&&l.value==="off",playsinline:"",preload:"metadata",key:Ae.url,ref_for:!0,ref:Ge=>{Ge&&(g.value[ke]=Ge)}},null,8,dU)):me(yl)(Ae.url)&&me(n).visible?(Oe(),Le("div",pU,[vU,Pe("div",hU,bt(Ae.name||Ae.url.split("/").pop()),1),(Oe(),Le("audio",{class:"tiktok-audio",src:Ae.url,controls:ke===1,loop:ke===1&&l.value==="off",preload:"metadata",key:Ae.url,ref_for:!0,ref:Ge=>{Ge&&(y.value[ke]=Ge)}},null,8,gU))])):(Oe(),Le("img",{key:2,class:"tiktok-media",src:Ae.url},null,8,mU))])):Tt("",!0)],4))),128))],512),wn(Pe("div",yU,[Pe("button",{class:"control-btn close-btn",onClick:ue[0]||(ue[0]=(...Ae)=>me(n).closeView&&me(n).closeView(...Ae)),title:Z.$t("close")},[S(me(zr))],8,bU),Pe("button",{class:"control-btn fullscreen-btn",onClick:we,title:me(n).isFullscreen?Z.$t("exitFullscreen"):Z.$t("fullscreen")},[me(n).isFullscreen?(Oe(),wt(me(JW),{key:0})):(Oe(),wt(me(eV),{key:1}))],8,wU),Pe("button",{class:"control-btn sound-btn",onClick:Qe,title:me(s)?Z.$t("soundOn"):Z.$t("soundOff")},[me(s)?(Oe(),wt(me(xV),{key:1})):(Oe(),wt(me(wV),{key:0}))],8,_U),le.value?(Oe(),Le("button",{key:0,class:tn(["control-btn like-btn",{"like-active":ge.value}]),onClick:_e,title:ge.value?Z.$t("unlike"):Z.$t("like")},[ge.value?(Oe(),wt(me(aV),{key:0})):(Oe(),wt(me(lV),{key:1}))],10,SU)):Tt("",!0),Pe("button",{class:tn(["control-btn autoplay-btn",{"autoplay-active":l.value!=="off"}]),onClick:G,title:Z.$t("autoPlayTooltip",{mode:d.value[l.value]})},[S(me(gV)),Pe("span",xU,bt(d.value[l.value]),1)],10,CU),Pe("button",{class:"control-btn tags-btn",onClick:ue[1]||(ue[1]=Ae=>N.value=!N.value),title:Z.$t("info")},[S(me(Vo))],8,TU)],512),[[$r,j.value]]),me(a).showTiktokNavigator?wn((Oe(),Le("div",OU,[me(n).hasPrev?(Oe(),Le("div",{key:0,class:"nav-indicator nav-prev",onTouchstart:ue[2]||(ue[2]=sn(Ae=>V(!1),["prevent"])),onClick:ue[3]||(ue[3]=Ae=>V(!1))},[S(me(mF))],32)):Tt("",!0),me(n).hasNext?(Oe(),Le("div",{key:1,class:"nav-indicator nav-next",onTouchstart:ue[4]||(ue[4]=sn(Ae=>se(!1),["prevent"])),onClick:ue[5]||(ue[5]=Ae=>se(!1))},[S(me(X_))],32)):Tt("",!0)],512)),[[$r,j.value]]):Tt("",!0),wn(Pe("div",EU,[(Me=E.value)!=null&&Me.name?(Oe(),Le("div",PU,bt(E.value.name),1)):Tt("",!0)],512),[[$r,j.value]]),wn(Pe("div",AU,[Pe("div",IU,[Pe("div",kU,[Pe("div",{class:"progress-fill",style:Mn({width:`${(me(n).currentIndex+1)/me(n).mediaList.length*100}%`})},null,4)]),Pe("span",MU,bt(me(n).currentIndex+1)+" / "+bt(me(n).mediaList.length),1)])],512),[[$r,j.value]]),S($n,{name:"fade"},{default:Rt(()=>[N.value?(Oe(),Le("div",{key:0,class:"tiktok-panel-backdrop",onClick:ue[6]||(ue[6]=Ae=>N.value=!1)})):Tt("",!0)]),_:1}),S($n,{name:"slide-up"},{default:Rt(()=>{var Ae;return[N.value?(Oe(),Le("div",{key:0,class:"tiktok-tags-panel",onClick:ue[11]||(ue[11]=sn(()=>{},["stop"]))},[Pe("div",NU,[Pe("div",RU,[S(me(Vo)),Pe("span",null,bt(Z.$t("details")),1)]),Pe("button",{onClick:ue[7]||(ue[7]=ke=>N.value=!1),class:"close-tags"},[S(me(zr))])]),Pe("div",{class:"panel-body",onWheel:ue[9]||(ue[9]=sn(()=>{},["stop"])),onTouchmove:ue[10]||(ue[10]=sn(()=>{},["stop"]))},[Pe("div",$U,[Pe("button",{class:"panel-action-btn danger",onClick:ha,title:Z.$t("deleteSelected")},[S(me(w5))],8,LU),Pe("button",{class:"panel-action-btn",onClick:Xe,title:Z.$t("openWithLocalFileBrowser")},[S(me(g5))],8,DU),Pe("button",{class:"panel-action-btn",onClick:it,title:Z.$t("openWithDefaultApp")},[S(me(FW))],8,FU),Pe("button",{class:"panel-action-btn",onClick:Je,title:Z.$t("copyFilePath")},[S(me(x5))],8,BU),Pe("button",{class:"panel-action-btn",onClick:ht,title:Z.$t("copySourceFilePreviewLink")},[S(me(dV))],8,zU)]),Pe("div",jU,[Pe("div",HU,[S(me(PV)),un(),Pe("span",null,bt(Z.$t("tags")),1)]),Pe("div",WU,[Pe("div",{onClick:ue[8]||(ue[8]=(...ke)=>me(Yl)&&me(Yl)(...ke)),style:Mn({background:"rgba(255, 255, 255, 0.05)",color:"var(--zp-luminous)",border:"1px solid var(--zp-luminous)",...be})},bt(Z.$t("addNewCustomTag")),5),(Oe(!0),Le(De,null,$a(((Ae=me(i).conf)==null?void 0:Ae.all_custom_tags)||[],ke=>(Oe(),Le("div",{key:ke.id,onClick:Ge=>ye(ke.id),style:Mn({background:re(ke.id)?me(r).getColor(ke):"rgba(255, 255, 255, 0.05)",color:re(ke.id)?"white":me(r).getColor(ke),border:`1px solid ${me(r).getColor(ke)}`,...be})},bt(ke.name),13,VU))),128))])]),Pe("div",UU,[Pe("div",KU,[S(me(KW)),un(),GU]),Pe("div",qU,[F.value?(Oe(),Le("div",YU,"...")):(Oe(),Le(De,{key:1},[B.value.prompt?(Oe(),Le("div",JU,[XU,Pe("code",{innerHTML:H(B.value.prompt??"")},null,8,ZU)])):Tt("",!0),B.value.negativePrompt?(Oe(),Le("div",QU,[eK,Pe("code",{innerHTML:H(B.value.negativePrompt??"")},null,8,tK)])):Tt("",!0),!B.value.prompt&&!B.value.negativePrompt?(Oe(),Le("div",nK,"—")):Tt("",!0)],64))])])],32)])):Tt("",!0)]}),_:1})],34)):Tt("",!0)])}}});const aK=Gi(rK,[["__scopeId","data-v-6485d9e7"]]),iK={class:"container"},oK=["src"],sK=he({__name:"ImgSliSide",props:{side:{},containerWidth:{},img:{},maxEdge:{},percent:{}},setup(t){const e=t,n=ld(async()=>Wx(await cd(jr(e.img)),"width","height")),r=U(()=>{let a="";const o=e.containerWidth;if(e.side==="left"?a=`calc(50% - ${(e.percent-50)/100*o}px)`:a=`calc(-50% - ${(e.percent-50)/100*o+4}px)`,e.maxEdge==="height")return`height:100%;transform: translate(${a}, -50%)`;{const s=n.value;return s?`height:${o/s.width*s.height}px;transform: translate(${a}, -50%)`:void 0}});return(a,i)=>(Oe(),Le("div",iK,[Pe("img",{class:tn(["img",[a.side]]),style:Mn(r.value),src:me(jr)(a.img),onDragstart:i[0]||(i[0]=sn(()=>{},["prevent","stop"]))},null,46,oK)]))}});const T0=Gi(sK,[["__scopeId","data-v-c9b1d83c"]]),lK=he({__name:"PromptCompare",props:{lImg:{},rImg:{}},setup(t){const e=t,n=Vx(),r=Dn(),a=z(""),i=z("");function o(s){var c;let l="",u=iT(s);l+=`--- PROMPT --- \r
+`).map(Ge=>Ge.trim()).filter(Ge=>Ge).map(Ge=>`
');continue}const Pt=Me[Ge];ke||(ke=Pt.includes("("));const Lt=["tag"];ke&&Lt.push("has-parentheses"),Pt.length<32&&Lt.push("short-tag"),Ae.push(`${Pt}`),ke&&(ke=!Pt.includes(")"))}return Ae.join(i.showCommaInInfoPanel?",":" ")}const G=()=>{const ue=(c.indexOf(l.value)+1)%c.length;l.value=c[ue],K(),Zt.success(Te("autoPlayStatus",{mode:d.value[l.value]}))},V=(Z=!1)=>{_.value||!n.hasPrev||(R(),_.value=!0,T.value=0,w.value=100,setTimeout(()=>{n.prev(),Y(),w.value=0,setTimeout(()=>{_.value=!1},f(Z))},200))},se=(Z=!1)=>{_.value||!n.hasNext||(R(),_.value=!0,T.value=0,w.value=-100,setTimeout(()=>{n.next(),Y(),w.value=0,setTimeout(()=>{_.value=!1},f(Z))},200))},oe=(Z=!1)=>{_.value||(R(),_.value=!0,T.value=0,w.value=100,setTimeout(()=>{n.currentIndex=0,Y(),w.value=0,setTimeout(()=>{_.value=!1},f(Z))},200))},ae=Z=>{if(_.value){Z.preventDefault();return}R(),C.value=Z.touches[0].clientY,O.value=Z.touches[0].clientY,I.value=!0,T.value=0,w.value!==0&&(w.value=0)},Q=Z=>{if(_.value){Z.preventDefault();return}if(!I.value)return;O.value=Z.touches[0].clientY;const ue=O.value-C.value,Me=window.innerHeight,Ae=ue/Me*100;T.value=Ae,Z.preventDefault()},W=()=>{if(!I.value)return;const Z=O.value-C.value,ue=window.innerHeight,Me=Z/ue*100;if(I.value=!1,_.value){T.value=0;return}Math.abs(Me)>30?Me>0&&n.hasPrev?V(!0):Me<0&&n.hasNext?se(!0):ce():ce()},q=()=>{I.value&&(I.value=!1,_.value||ce())},ce=()=>{_.value||(_.value=!0,T.value=0,w.value=0,setTimeout(()=>{_.value=!1,K()},300))},ie=B7(Z=>{_.value||(Z.preventDefault(),R(),Z.deltaY>0&&n.hasNext?se():Z.deltaY<0&&n.hasPrev&&V())},500),de=Z=>{if(!(!n.visible||_.value))switch(Z.key){case"ArrowUp":Z.preventDefault(),n.hasPrev&&V();break;case"ArrowDown":Z.preventDefault(),n.hasNext&&se();break;case"Escape":Z.preventDefault(),n.closeView();break}},we=async()=>{n.isFullscreen?await Ie():await Ce()},Ce=async()=>{if(p.value&&!document.fullscreenElement)try{await p.value.requestFullscreen(),n.isFullscreen=!0}catch(Z){console.warn("无法进入全屏模式:",Z)}},Ie=async()=>{if(document.fullscreenElement)try{await document.exitFullscreen(),n.isFullscreen=!1}catch(Z){console.warn("无法退出全屏模式:",Z)}},Qe=()=>{s.value=!s.value;const Z=g.value[1];Z&&(Z.muted=s.value);const ue=y.value[1];ue&&(ue.muted=s.value)},jt=()=>{n.isFullscreen=!!document.fullscreenElement},qt=z([]),Et=z([]),$t=Z=>{Z&&(Z.pause(),Z.src="",Z.muted=!0,Z.load(),Z.parentNode&&Z.parentNode.removeChild(Z))},ut=Z=>{Z&&(Z.pause(),Z.src="",Z.muted=!0,Z.load(),Z.parentNode&&Z.parentNode.removeChild(Z))};ve(qt,Z=>{for(;Z.length>5;){const ue=Z.shift();ue&&$t(ue)}},{deep:!0}),ve(Et,Z=>{for(;Z.length>5;){const ue=Z.shift();ue&&ut(ue)}},{deep:!0}),ve(()=>n.visible===!1||n.mediaList.length===0,Z=>{Z||(qt.value.forEach($t),qt.value=[],Et.value.forEach(ut),Et.value=[],l.value="off")},{immediate:!0});const Ht=()=>{b.value.forEach(Z=>{if(Z)if(yo(Z.url)){const ue=document.createElement("video");ue.preload="metadata",ue.src=Z.url,qt.value.push(ue)}else if(yl(Z.url)){const ue=document.createElement("audio");ue.preload="metadata",ue.src=Z.url,Et.value.push(ue)}else{const ue=new Image;ue.src=Z.url}})},Zn=async()=>{const Z=n.currentItem;if(!Z)return;const ue=(Z==null?void 0:Z.fullpath)||Z.id;ue&&await r.fetchImageTags([ue])},va=async()=>{const Z=n.currentItem;if(!Z){$.value="";return}const ue=Z.name||Z.url;if(yo(ue)||yl(ue)){$.value="";return}const Me=(Z==null?void 0:Z.fullpath)||Z.id;if(!Me){$.value="";return}const Ae=++D;F.value=!0;try{const ke=await fd(Me);if(Ae!==D)return;$.value=ke}catch(ke){if(console.error("Load prompt error:",ke),Ae!==D)return;$.value=""}finally{Ae===D&&(F.value=!1)}},Wt=()=>{var Z,ue;return((Z=E.value)==null?void 0:Z.fullpath)||((ue=E.value)==null?void 0:ue.id)||""},Xa=()=>{var Z;return((Z=E.value)==null?void 0:Z.name)||Wt().split(/[/\\]/).pop()||""},Za=()=>{const Z=n.currentIndex;if(!(Z<0||Z>=n.mediaList.length)){if(n.mediaList.splice(Z,1),n.mediaList.length===0){n.closeView();return}Z>=n.mediaList.length&&(n.currentIndex=n.mediaList.length-1)}},ha=async()=>{const Z=Wt();Z&&await new Promise(ue=>{Ct.confirm({title:Te("confirmDelete"),maskClosable:!0,content:Xa(),async onOk(){const{events:Me}=await pn(()=>import("./index-dc3e0a9f.js").then(Ae=>Ae.l),["assets/index-dc3e0a9f.js","assets/shortcut-afd6d8ae.js","assets/index-9fffc74f.js","assets/index-9fed83c2.css","assets/index-5b20e901.js","assets/index-017a4092.css","assets/shortcut-2acaf603.css","assets/_isIterateeCall-3d9f4398.js"]);await YV([Z]),Zt.success(Te("deleteSuccess")),Me.emit("removeFiles",{paths:[Z],loc:TW(Z)}),Za(),N.value=!1,ue()},onCancel(){ue()}})})},Xe=async()=>{const Z=Wt();Z&&await dW(Z)},it=async()=>{const Z=Wt();Z&&await pW(Z)},Je=()=>{const Z=Wt();Z&&n0(Z)},ht=()=>{var Me,Ae;const Z=(Me=E.value)==null?void 0:Me.originalFile,ue=Z?jr(Z):(Ae=E.value)==null?void 0:Ae.url;ue&&n0(ue)};return IH(m,L,{delay:500}),Ue(()=>{document.addEventListener("keydown",de),document.addEventListener("fullscreenchange",jt),Y()}),_n(()=>{document.removeEventListener("keydown",de),document.removeEventListener("fullscreenchange",jt),R(),g.value.forEach(Z=>{$t(Z)}),y.value.forEach(Z=>{ut(Z)}),qt.value.forEach($t),qt.value=[],Et.value.forEach(ut),Et.value=[]}),ve(()=>n.currentIndex,()=>{N.value=!1,Y(),Ye(()=>{Ht(),Zn(),va()})},{immediate:!0}),ve(()=>n.mediaList,()=>{Y(),Ye(()=>{Zn(),va()})},{deep:!0}),ve(()=>n.visible,Z=>{Z?(j.value=!0,Ye(()=>{Y()})):(N.value=!1,$.value="",F.value=!1,D++,g.value.forEach(ue=>{ue&&(ue.pause(),ue.src="",ue.load())}),g.value=[null,null,null],y.value.forEach(ue=>{ue&&(ue.pause(),ue.src="",ue.load())}),y.value=[null,null,null],b.value=[null,null,null],R(),document.fullscreenElement&&Ie())}),ve(()=>s.value,Z=>{g.value.forEach(ue=>{ue&&(ue.muted=Z)}),y.value.forEach(ue=>{ue&&(ue.muted=Z)})}),ve(()=>l.value,()=>{K()}),(Z,ue)=>{var Me;return Oe(),wt(fu,{to:"body"},[me(n).visible?(Oe(),Le("div",{key:0,ref_key:"containerRef",ref:p,class:tn(P.value),onTouchstart:ae,onTouchmove:Q,onTouchend:W,onTouchcancel:q,onWheel:ue[12]||(ue[12]=(...Ae)=>me(ie)&&me(ie)(...Ae))},[me(!1)?(Oe(),Le("div",uU,[(Oe(!0),Le(De,null,$a(o.value,(Ae,ke)=>(Oe(),Le("div",{key:ke,class:"debug-item"},[Pe("span",cU,bt(ke)+":",1),Pe("span",{class:tn(["debug-value",{"is-true":Ae===!0,"is-false":Ae===!1}])},bt(Ae),3)]))),128))])):Tt("",!0),Pe("div",{ref_key:"viewportRef",ref:m,class:"tiktok-viewport"},[(Oe(!0),Le(De,null,$a(b.value,(Ae,ke)=>(Oe(),Le("div",{key:(Ae==null?void 0:Ae.id)||`empty-${ke}`,class:"tiktok-media-item",style:Mn(k(ke))},[Ae?(Oe(),Le("div",fU,[me(yo)(Ae.url)&&me(n).visible?(Oe(),Le("video",{class:"tiktok-media tiktok-video",src:Ae.url,controls:ke===1,loop:ke===1&&l.value==="off",playsinline:"",preload:"metadata",key:Ae.url,ref_for:!0,ref:Ge=>{Ge&&(g.value[ke]=Ge)}},null,8,dU)):me(yl)(Ae.url)&&me(n).visible?(Oe(),Le("div",pU,[vU,Pe("div",hU,bt(Ae.name||Ae.url.split("/").pop()),1),(Oe(),Le("audio",{class:"tiktok-audio",src:Ae.url,controls:ke===1,loop:ke===1&&l.value==="off",preload:"metadata",key:Ae.url,ref_for:!0,ref:Ge=>{Ge&&(y.value[ke]=Ge)}},null,8,gU))])):(Oe(),Le("img",{key:2,class:"tiktok-media",src:Ae.url},null,8,mU))])):Tt("",!0)],4))),128))],512),wn(Pe("div",yU,[Pe("button",{class:"control-btn close-btn",onClick:ue[0]||(ue[0]=(...Ae)=>me(n).closeView&&me(n).closeView(...Ae)),title:Z.$t("close")},[S(me(zr))],8,bU),Pe("button",{class:"control-btn fullscreen-btn",onClick:we,title:me(n).isFullscreen?Z.$t("exitFullscreen"):Z.$t("fullscreen")},[me(n).isFullscreen?(Oe(),wt(me(JW),{key:0})):(Oe(),wt(me(eV),{key:1}))],8,wU),Pe("button",{class:"control-btn sound-btn",onClick:Qe,title:me(s)?Z.$t("soundOn"):Z.$t("soundOff")},[me(s)?(Oe(),wt(me(xV),{key:1})):(Oe(),wt(me(wV),{key:0}))],8,_U),le.value?(Oe(),Le("button",{key:0,class:tn(["control-btn like-btn",{"like-active":ge.value}]),onClick:_e,title:ge.value?Z.$t("unlike"):Z.$t("like")},[ge.value?(Oe(),wt(me(aV),{key:0})):(Oe(),wt(me(lV),{key:1}))],10,SU)):Tt("",!0),Pe("button",{class:tn(["control-btn autoplay-btn",{"autoplay-active":l.value!=="off"}]),onClick:G,title:Z.$t("autoPlayTooltip",{mode:d.value[l.value]})},[S(me(gV)),Pe("span",xU,bt(d.value[l.value]),1)],10,CU),Pe("button",{class:"control-btn tags-btn",onClick:ue[1]||(ue[1]=Ae=>N.value=!N.value),title:Z.$t("info")},[S(me(Vo))],8,TU)],512),[[$r,j.value]]),me(a).showTiktokNavigator?wn((Oe(),Le("div",OU,[me(n).hasPrev?(Oe(),Le("div",{key:0,class:"nav-indicator nav-prev",onTouchstart:ue[2]||(ue[2]=sn(Ae=>V(!1),["prevent"])),onClick:ue[3]||(ue[3]=Ae=>V(!1))},[S(me(mF))],32)):Tt("",!0),me(n).hasNext?(Oe(),Le("div",{key:1,class:"nav-indicator nav-next",onTouchstart:ue[4]||(ue[4]=sn(Ae=>se(!1),["prevent"])),onClick:ue[5]||(ue[5]=Ae=>se(!1))},[S(me(X_))],32)):Tt("",!0)],512)),[[$r,j.value]]):Tt("",!0),wn(Pe("div",EU,[(Me=E.value)!=null&&Me.name?(Oe(),Le("div",PU,bt(E.value.name),1)):Tt("",!0)],512),[[$r,j.value]]),wn(Pe("div",AU,[Pe("div",IU,[Pe("div",kU,[Pe("div",{class:"progress-fill",style:Mn({width:`${(me(n).currentIndex+1)/me(n).mediaList.length*100}%`})},null,4)]),Pe("span",MU,bt(me(n).currentIndex+1)+" / "+bt(me(n).mediaList.length),1)])],512),[[$r,j.value]]),S($n,{name:"fade"},{default:Rt(()=>[N.value?(Oe(),Le("div",{key:0,class:"tiktok-panel-backdrop",onClick:ue[6]||(ue[6]=Ae=>N.value=!1)})):Tt("",!0)]),_:1}),S($n,{name:"slide-up"},{default:Rt(()=>{var Ae;return[N.value?(Oe(),Le("div",{key:0,class:"tiktok-tags-panel",onClick:ue[11]||(ue[11]=sn(()=>{},["stop"]))},[Pe("div",NU,[Pe("div",RU,[S(me(Vo)),Pe("span",null,bt(Z.$t("details")),1)]),Pe("button",{onClick:ue[7]||(ue[7]=ke=>N.value=!1),class:"close-tags"},[S(me(zr))])]),Pe("div",{class:"panel-body",onWheel:ue[9]||(ue[9]=sn(()=>{},["stop"])),onTouchmove:ue[10]||(ue[10]=sn(()=>{},["stop"]))},[Pe("div",$U,[Pe("button",{class:"panel-action-btn danger",onClick:ha,title:Z.$t("deleteSelected")},[S(me(w5))],8,LU),Pe("button",{class:"panel-action-btn",onClick:Xe,title:Z.$t("openWithLocalFileBrowser")},[S(me(g5))],8,DU),Pe("button",{class:"panel-action-btn",onClick:it,title:Z.$t("openWithDefaultApp")},[S(me(FW))],8,FU),Pe("button",{class:"panel-action-btn",onClick:Je,title:Z.$t("copyFilePath")},[S(me(x5))],8,BU),Pe("button",{class:"panel-action-btn",onClick:ht,title:Z.$t("copySourceFilePreviewLink")},[S(me(dV))],8,zU)]),Pe("div",jU,[Pe("div",HU,[S(me(PV)),un(),Pe("span",null,bt(Z.$t("tags")),1)]),Pe("div",WU,[Pe("div",{onClick:ue[8]||(ue[8]=(...ke)=>me(Yl)&&me(Yl)(...ke)),style:Mn({background:"rgba(255, 255, 255, 0.05)",color:"var(--zp-luminous)",border:"1px solid var(--zp-luminous)",...be})},bt(Z.$t("addNewCustomTag")),5),(Oe(!0),Le(De,null,$a(((Ae=me(i).conf)==null?void 0:Ae.all_custom_tags)||[],ke=>(Oe(),Le("div",{key:ke.id,onClick:Ge=>ye(ke.id),style:Mn({background:re(ke.id)?me(r).getColor(ke):"rgba(255, 255, 255, 0.05)",color:re(ke.id)?"white":me(r).getColor(ke),border:`1px solid ${me(r).getColor(ke)}`,...be})},bt(ke.name),13,VU))),128))])]),Pe("div",UU,[Pe("div",KU,[S(me(KW)),un(),GU]),Pe("div",qU,[F.value?(Oe(),Le("div",YU,"...")):(Oe(),Le(De,{key:1},[B.value.prompt?(Oe(),Le("div",JU,[XU,Pe("code",{innerHTML:H(B.value.prompt??"")},null,8,ZU)])):Tt("",!0),B.value.negativePrompt?(Oe(),Le("div",QU,[eK,Pe("code",{innerHTML:H(B.value.negativePrompt??"")},null,8,tK)])):Tt("",!0),!B.value.prompt&&!B.value.negativePrompt?(Oe(),Le("div",nK,"—")):Tt("",!0)],64))])])],32)])):Tt("",!0)]}),_:1})],34)):Tt("",!0)])}}});const aK=Gi(rK,[["__scopeId","data-v-6485d9e7"]]),iK={class:"container"},oK=["src"],sK=he({__name:"ImgSliSide",props:{side:{},containerWidth:{},img:{},maxEdge:{},percent:{}},setup(t){const e=t,n=ld(async()=>Wx(await cd(jr(e.img)),"width","height")),r=U(()=>{let a="";const o=e.containerWidth;if(e.side==="left"?a=`calc(50% - ${(e.percent-50)/100*o}px)`:a=`calc(-50% - ${(e.percent-50)/100*o+4}px)`,e.maxEdge==="height")return`height:100%;transform: translate(${a}, -50%)`;{const s=n.value;return s?`height:${o/s.width*s.height}px;transform: translate(${a}, -50%)`:void 0}});return(a,i)=>(Oe(),Le("div",iK,[Pe("img",{class:tn(["img",[a.side]]),style:Mn(r.value),src:me(jr)(a.img),onDragstart:i[0]||(i[0]=sn(()=>{},["prevent","stop"]))},null,46,oK)]))}});const T0=Gi(sK,[["__scopeId","data-v-c9b1d83c"]]),lK=he({__name:"PromptCompare",props:{lImg:{},rImg:{}},setup(t){const e=t,n=Vx(),r=Dn(),a=z(""),i=z("");function o(s){var c;let l="",u=iT(s);l+=`--- PROMPT --- \r
`,l+=((c=u.prompt)==null?void 0:c.replace(/\r\n/g,""))+`\r
\r
`,l+=`--- NEGATIVE PROMPT --- \r
@@ -206,7 +206,7 @@ Note that this is not an issue if running this frontend on a browser instead of
\r
`,l+=`--- PARAMS ---\r
`;for(const[d,v]of Object.entries(u))d=="prompt"||d=="negativePrompt"||(l+=d+": "+v+`\r
-`);return l}return ve(()=>{var s;return(s=e==null?void 0:e.lImg)==null?void 0:s.fullpath},async s=>{s&&(n.tasks.forEach(l=>l.cancel()),n.pushAction(()=>fd(s)).res.then(l=>{a.value=o(l)}),n.pushAction(()=>fd(e.rImg.fullpath)).res.then(l=>{i.value=o(l)}))},{immediate:!0}),(s,l)=>{const u=ds("VueDiff");return Oe(),wt(u,{class:"diff",mode:"split",theme:me(r).computedTheme,language:"plaintext",prev:a.value,current:i.value},null,8,["theme","prev","current"])}}});const uK={key:0,class:"hint"},cK={class:"hint-inline"},fK=he({__name:"ImgSliComparePane",props:{left:{},right:{},container:{}},setup(t,{expose:e}){const n=t,r=z(50),a=([{size:c}])=>{r.value=c},i=z(),{width:o}=qH(i);e({requestFullScreen:()=>{var c;(c=i.value)==null||c.requestFullscreen()}});const l=ld(async()=>{if(!n.left||!n.right)return{width:0,height:0};const[c,d]=await Promise.all([cd(jr(n.left)),cd(jr(n.right))]);return{width:Math.max(c.width,d.width),height:Math.max(d.height,c.height)}}),u=ld(async()=>{const c=l.value;if(!c)return"width";const{height:d,width:v}=c,h=v/d,f=document.body.clientWidth/document.body.clientHeight;return h>f?"width":"height"});return(c,d)=>(Oe(),Le(De,null,[Pe("div",{ref_key:"wrapperEl",ref:i,style:{height:"100%"}},[S(me(tT),{class:"default-theme",onResize:a},{default:Rt(()=>[c.left?(Oe(),wt(me(vd),{key:0},{default:Rt(()=>[S(T0,{side:"left","max-edge":me(u),"container-width":me(o),percent:r.value,img:c.left},null,8,["max-edge","container-width","percent","img"])]),_:1})):Tt("",!0),c.right?(Oe(),wt(me(vd),{key:1},{default:Rt(()=>[S(T0,{"max-edge":me(u),percent:r.value,img:c.right,side:"right","container-width":me(o)},null,8,["max-edge","percent","img","container-width"])]),_:1})):Tt("",!0)]),_:1})],512),c.container!=="drawer"?(Oe(),Le("div",uK,[Pe("div",cK,[S(me(HW)),un(" "+bt(c.$t("scrollDownToComparePrompt")),1)])])):Tt("",!0),S(lK,{lImg:c.left,rImg:c.right},null,8,["lImg","rImg"])],64))}});const dK={class:"actions"},pK=he({__name:"ImgSliDrawer",setup(t){const e=nT(),n=z();return(r,a)=>{const i=rn,o=S$,s=o3;return Oe(),Le(De,null,[S(s,{width:"100vw",visible:me(e).drawerVisible,"onUpdate:visible":a[2]||(a[2]=l=>me(e).drawerVisible=l),"destroy-on-close":"",class:"img-sli","close-icon":null},{footer:Rt(()=>[Pe("div",dK,[S(i,{onClick:a[0]||(a[0]=l=>me(e).drawerVisible=!1)},{default:Rt(()=>[un(bt(r.$t("close")),1)]),_:1}),S(i,{onClick:a[1]||(a[1]=l=>{var u;return(u=n.value)==null?void 0:u.requestFullScreen()})},{default:Rt(()=>[un(bt(r.$t("fullscreenview")),1)]),_:1}),S(o,{banner:"",style:{height:"32px"},message:"👇 "+r.$t("scrollDownToComparePrompt"),type:"info","show-icon":""},null,8,["message"])])]),default:Rt(()=>[me(e).left&&me(e).right?(Oe(),wt(fK,{key:0,ref_key:"splitpane",ref:n,container:"drawer",left:me(e).left,right:me(e).right},null,8,["left","right"])):Tt("",!0)]),_:1},8,["visible"]),S(zV),S(aK)],64)}}});const vK=Gi(pK,[["__scopeId","data-v-d6c97117"]]),hK=he({__name:"SplitViewTab",setup(t){const e=Dn(),n={local:Pn(()=>pn(()=>import("./stackView-a8bab14f.js"),["assets/stackView-a8bab14f.js","assets/index-7e51dac4.js","assets/index-41e4fe63.css","assets/index-c8d0a710.js","assets/index-7522e103.js","assets/index-6dc5f88c.js","assets/index-23c8b8a7.css","assets/index-806213af.css","assets/isArrayLikeObject-49824137.js","assets/index-3c84dd7b.css","assets/index-35375b6a.js","assets/index-9fed83c2.css","assets/index-6905bc51.js","assets/index-1cc34316.css","assets/shortcut-61d236ef.js","assets/index-3f517ea8.js","assets/index-017a4092.css","assets/shortcut-2acaf603.css","assets/index-15b4c137.js","assets/index-80432a0c.css","assets/index-ea810700.js","assets/_isIterateeCall-bed55584.js","assets/FileItem-cdbc027c.js","assets/index-23736bbf.js","assets/index-63826c0f.css","assets/FileItem-d0ea10d7.css","assets/MultiSelectKeep-634cf4db.js","assets/MultiSelectKeep-0668d59f.css","assets/index-3603af3c.css","assets/stackView-ee2d6064.css","assets/index-f4bbe4b8.css"])),empty:Pn(()=>pn(()=>import("./emptyStartup-247a085f.js"),["assets/emptyStartup-247a085f.js","assets/index-6905bc51.js","assets/index-1cc34316.css","assets/index-35375b6a.js","assets/index-9fed83c2.css","assets/index-15b4c137.js","assets/index-80432a0c.css","assets/emptyStartup-15f7a1b4.css"])),"global-setting":Pn(()=>pn(()=>import("./globalSetting-403da8fc.js"),["assets/globalSetting-403da8fc.js","assets/index-c8d0a710.js","assets/index-7522e103.js","assets/index-6dc5f88c.js","assets/index-23c8b8a7.css","assets/index-806213af.css","assets/isArrayLikeObject-49824137.js","assets/index-3c84dd7b.css","assets/index-35375b6a.js","assets/index-9fed83c2.css","assets/shortcut-61d236ef.js","assets/index-3f517ea8.js","assets/index-017a4092.css","assets/shortcut-2acaf603.css","assets/index-6905bc51.js","assets/index-1cc34316.css","assets/globalSetting-14ee2849.css","assets/index-f4bbe4b8.css","assets/index-3603af3c.css"])),"tag-search-matched-image-grid":Pn(()=>pn(()=>import("./MatchedImageGrid-2b7a423c.js"),["assets/MatchedImageGrid-2b7a423c.js","assets/index-7e51dac4.js","assets/index-41e4fe63.css","assets/index-6905bc51.js","assets/index-1cc34316.css","assets/MultiSelectKeep-634cf4db.js","assets/index-35375b6a.js","assets/index-9fed83c2.css","assets/index-3f517ea8.js","assets/index-017a4092.css","assets/index-15b4c137.js","assets/index-80432a0c.css","assets/FileItem-cdbc027c.js","assets/index-23736bbf.js","assets/index-63826c0f.css","assets/FileItem-d0ea10d7.css","assets/index-ea810700.js","assets/shortcut-61d236ef.js","assets/shortcut-2acaf603.css","assets/_isIterateeCall-bed55584.js","assets/MultiSelectKeep-0668d59f.css","assets/index-3603af3c.css","assets/hook-0813f5c7.js","assets/MatchedImageGrid-c716d973.css"])),"topic-search-matched-image-grid":Pn(()=>pn(()=>import("./MatchedImageGrid-f4ee7d94.js"),["assets/MatchedImageGrid-f4ee7d94.js","assets/index-7e51dac4.js","assets/index-41e4fe63.css","assets/MultiSelectKeep-634cf4db.js","assets/index-35375b6a.js","assets/index-9fed83c2.css","assets/index-3f517ea8.js","assets/index-017a4092.css","assets/index-6905bc51.js","assets/index-1cc34316.css","assets/index-15b4c137.js","assets/index-80432a0c.css","assets/FileItem-cdbc027c.js","assets/index-23736bbf.js","assets/index-63826c0f.css","assets/FileItem-d0ea10d7.css","assets/index-ea810700.js","assets/shortcut-61d236ef.js","assets/shortcut-2acaf603.css","assets/_isIterateeCall-bed55584.js","assets/MultiSelectKeep-0668d59f.css","assets/index-3603af3c.css","assets/hook-0813f5c7.js","assets/MatchedImageGrid-e9e22234.css"])),"tag-search":Pn(()=>pn(()=>import("./TagSearch-76bf71cc.js"),["assets/TagSearch-76bf71cc.js","assets/index-7e51dac4.js","assets/index-41e4fe63.css","assets/index-6dc5f88c.js","assets/index-23c8b8a7.css","assets/searchHistory-369cb004.js","assets/index-7522e103.js","assets/index-806213af.css","assets/searchHistory-d0561c22.css","assets/isArrayLikeObject-49824137.js","assets/_isIterateeCall-bed55584.js","assets/TagSearch-369c3a9a.css","assets/index-f4bbe4b8.css","assets/index-3603af3c.css"])),"fuzzy-search":Pn(()=>pn(()=>import("./SubstrSearch-77a3754a.js"),["assets/SubstrSearch-77a3754a.js","assets/index-7e51dac4.js","assets/index-41e4fe63.css","assets/index-6dc5f88c.js","assets/index-23c8b8a7.css","assets/index-7522e103.js","assets/index-806213af.css","assets/FileItem-cdbc027c.js","assets/index-23736bbf.js","assets/index-63826c0f.css","assets/index-15b4c137.js","assets/index-80432a0c.css","assets/index-35375b6a.js","assets/index-9fed83c2.css","assets/FileItem-d0ea10d7.css","assets/MultiSelectKeep-634cf4db.js","assets/index-3f517ea8.js","assets/index-017a4092.css","assets/index-6905bc51.js","assets/index-1cc34316.css","assets/index-ea810700.js","assets/shortcut-61d236ef.js","assets/shortcut-2acaf603.css","assets/_isIterateeCall-bed55584.js","assets/MultiSelectKeep-0668d59f.css","assets/index-3603af3c.css","assets/hook-0813f5c7.js","assets/searchHistory-369cb004.js","assets/searchHistory-d0561c22.css","assets/SubstrSearch-5ca89adf.css","assets/index-f4bbe4b8.css"])),"topic-search":Pn(()=>pn(()=>import("./TopicSearch-1a9a3cf6.js"),["assets/TopicSearch-1a9a3cf6.js","assets/index-6dc5f88c.js","assets/index-23c8b8a7.css","assets/index-7e51dac4.js","assets/index-41e4fe63.css","assets/index-6905bc51.js","assets/index-1cc34316.css","assets/index-3f517ea8.js","assets/index-017a4092.css","assets/index-23736bbf.js","assets/index-63826c0f.css","assets/TopicSearch-c6db3ef3.css","assets/index-3603af3c.css","assets/index-f4bbe4b8.css"])),"img-sli":Pn(()=>pn(()=>import("./ImgSliPagePane-ef2989d4.js"),["assets/ImgSliPagePane-ef2989d4.js","assets/ImgSliPagePane-868b21f8.css"])),"batch-download":Pn(()=>pn(()=>import("./batchDownload-31f59a34.js"),["assets/batchDownload-31f59a34.js","assets/index-6905bc51.js","assets/index-1cc34316.css","assets/FileItem-cdbc027c.js","assets/index-23736bbf.js","assets/index-63826c0f.css","assets/index-15b4c137.js","assets/index-80432a0c.css","assets/index-35375b6a.js","assets/index-9fed83c2.css","assets/FileItem-d0ea10d7.css","assets/index-ea810700.js","assets/shortcut-61d236ef.js","assets/index-3f517ea8.js","assets/index-017a4092.css","assets/shortcut-2acaf603.css","assets/_isIterateeCall-bed55584.js","assets/batchDownload-57f1d54b.css"])),"grid-view":Pn(()=>pn(()=>import("./gridView-c7e71d1b.js"),["assets/gridView-c7e71d1b.js","assets/FileItem-cdbc027c.js","assets/index-23736bbf.js","assets/index-63826c0f.css","assets/index-15b4c137.js","assets/index-80432a0c.css","assets/index-35375b6a.js","assets/index-9fed83c2.css","assets/FileItem-d0ea10d7.css","assets/index-ea810700.js","assets/shortcut-61d236ef.js","assets/index-3f517ea8.js","assets/index-017a4092.css","assets/shortcut-2acaf603.css","assets/_isIterateeCall-bed55584.js","assets/gridView-eef9ac55.css"])),"workspace-snapshot":Pn(()=>pn(()=>import("./index-53c33328.js"),["assets/index-53c33328.js","assets/index-bd568ec0.css","assets/index-f4bbe4b8.css"])),"random-image":Pn(()=>pn(()=>import("./randomImage-8167a3c3.js"),["assets/randomImage-8167a3c3.js","assets/FileItem-cdbc027c.js","assets/index-23736bbf.js","assets/index-63826c0f.css","assets/index-15b4c137.js","assets/index-80432a0c.css","assets/index-35375b6a.js","assets/index-9fed83c2.css","assets/FileItem-d0ea10d7.css","assets/index-ea810700.js","assets/shortcut-61d236ef.js","assets/index-3f517ea8.js","assets/index-017a4092.css","assets/shortcut-2acaf603.css","assets/_isIterateeCall-bed55584.js","assets/MultiSelectKeep-634cf4db.js","assets/index-7e51dac4.js","assets/index-41e4fe63.css","assets/index-6905bc51.js","assets/index-1cc34316.css","assets/MultiSelectKeep-0668d59f.css","assets/index-3603af3c.css","assets/randomImage-4d1c5076.css"]))},r=(o,s,l)=>{var c,d;const u=e.tabList[o];if(l==="add"){const v={type:"empty",key:yr(),name:Te("emptyStartPage")};u.panes.push(v),u.key=v.key}else{const v=u.panes.findIndex(h=>h.key===s);if(u.key===s&&(u.key=((c=u.panes[v-1])==null?void 0:c.key)??((d=u.panes[1])==null?void 0:d.key)),u.panes.splice(v,1),u.panes.length===0&&e.tabList.splice(o,1),e.tabList.length===0){const h=e.createEmptyPane();e.tabList.push({panes:[h],key:h.key,id:yr()})}}};ud("closeTabPane",(o,s)=>r(o,s,"del"));const a=z();ve(()=>e.tabList,async()=>{var o;await Ye(),e.saveRecord(),Array.from(((o=a.value)==null?void 0:o.querySelectorAll(".splitpanes__pane"))??[]).forEach((s,l)=>{Array.from(s.querySelectorAll(".ant-tabs-tab")??[]).forEach((u,c)=>{const d=u;d.setAttribute("draggable","true"),d.setAttribute("tabIdx",l.toString()),d.setAttribute("paneIdx",c.toString()),d.ondragend=()=>{e.dragingTab=void 0},d.ondragstart=v=>{e.dragingTab={tabIdx:l,paneIdx:c},v.dataTransfer.setData("text/plain",JSON.stringify({tabIdx:l,paneIdx:c,from:"tab-drag"}))}})})},{immediate:!0,deep:!0});const i=ts(()=>Gu.emit("returnToIIB"),100);return vH(async()=>{const o=window.parent;if(!await rW(()=>o==null?void 0:o.onUiTabChange,200,3e4)){console.log("watch tab change failed");return}o.onUiTabChange(()=>{const s=o.get_uiCurrentTabContent();s!=null&&s.id.includes("infinite-image-browsing")&&i()})}),ve(WH(),o=>o&&i()),(o,s)=>{const l=jl,u=Oo;return Oe(),Le("div",{ref_key:"container",ref:a},[S(me(tT),{class:"default-theme"},{default:Rt(()=>[(Oe(!0),Le(De,null,$a(me(e).tabList,(c,d)=>(Oe(),wt(me(vd),{key:c.id},{default:Rt(()=>[S(RW,{tabIdx:d},{default:Rt(()=>[S(u,{type:"editable-card",activeKey:c.key,"onUpdate:activeKey":v=>c.key=v,onEdit:(v,h)=>r(d,v,h)},{default:Rt(()=>[(Oe(!0),Le(De,null,$a(c.panes,(v,h)=>(Oe(),wt(l,{key:v.key,tab:v.name,class:"pane"},{default:Rt(()=>[(Oe(),wt(rE(n[v.type]),Vd({tabIdx:d,paneKey:v.key,paneIdx:h},v),null,16,["tabIdx","paneKey","paneIdx"]))]),_:2},1032,["tab"]))),128))]),_:2},1032,["activeKey","onUpdate:activeKey","onEdit"])]),_:2},1032,["tabIdx"])]),_:2},1024))),128))]),_:1}),S(vK)],512)}}});const gK=Gi(hK,[["__scopeId","data-v-76f3eb81"]]),mK=async t=>{var r;const e=(r=t.conf)==null?void 0:r.global_setting,n=new URLSearchParams(parent.location.search);switch(n.get("action")){case"open":{let a=n.get("path");if(!a||!e)return;const i={extra:e.outdir_extras_samples,save:e.outdir_save,txt2img:e.outdir_txt2img_samples,img2img:e.outdir_img2img_samples};i[a]&&(a=i[a]);const o=t.tabList[0],s=n.get("mode"),l={type:"local",path:a,key:yr(),name:"",mode:["scanned","walk","scanned-fixed"].includes(s||"scanned")?s:"scanned"};o.panes.unshift(l),o.key=l.key,Hx(),aW(["action","path","mode"]);break}}};function O0(t){return typeof t=="function"||Object.prototype.toString.call(t)==="[object Object]"&&!wr(t)}const oT="app.conf.json",Mo=z(),sT=()=>is.writeFile(oT,JSON.stringify(Be(Mo.value),null,4)),yK=he({setup(){const t=async()=>{const e=await Px({directory:!0});if(typeof e=="string"){if(!await is.exists(`${e}/config.json`))return Zt.error(Te("tauriLaunchConfMessages.configNotFound"));if(!await is.exists(`${e}/extensions/sd-webui-infinite-image-browsing`))return Zt.error(Te("tauriLaunchConfMessages.folderNotFound"));Mo.value.sdwebui_dir=e,Zt.info(Te("tauriLaunchConfMessages.configCompletedMessage")),await sT(),await Uu("shutdown_api_server_command"),await za(1500),await Tx()}};return()=>{let e,n;return S("div",{style:{padding:"32px 0"}},[S("div",{style:{padding:"16px 0"}},[S("h2",null,[Te("tauriLaunchConf.readSdWebuiConfigTitle")]),S("p",null,[Te("tauriLaunchConf.readSdWebuiConfigDescription")]),S(rn,{onClick:t,type:"primary"},O0(e=Te("tauriLaunchConf.selectSdWebuiFolder"))?e:{default:()=>[e]})]),S("div",{style:{padding:"16px 0"}},[S("h2",null,[Te("tauriLaunchConf.skipThisConfigTitle")]),S("p",null,[Te("tauriLaunchConf.skipThisConfigDescription")]),S(rn,{type:"primary",onClick:Ct.destroyAll},O0(n=Te("tauriLaunchConf.skipButton"))?n:{default:()=>[n]})])])}}}),bK=async()=>{try{Mo.value=JSON.parse(await is.readTextFile(oT))}catch{}Mo.value||(Mo.value={sdwebui_dir:""},await sT(),Ct.info({title:Te("tauriLaunchConfMessages.firstTimeUserTitle"),content:S(yK,null,null),width:"80vw",okText:Te("tauriLaunchConf.skipButton"),okButtonProps:{onClick:Ct.destroyAll}}))},wK=async t=>{var i;if(!((i=t.conf)!=null&&i.export_fe_fn))return;const e=Ju();a({insertTabPane:({tabIdx:o=0,paneIdx:s=0,pane:l})=>{const u=t.tabList[o];return l.key||(l.key=yr()),u.panes.splice(s,0,l),u.key=l.key,{key:l.key,ref:r(l.key)}},getTabList:()=>t.tabList,getPageRef:r,switch2IIB:Hx,openIIBInNewTab:()=>window.parent.open("/infinite_image_browsing"),setTagColor(o,s){e.colorCache.set(o,s)},setTags(o,s){e.set(o,s)},getTags(o){return e.tagMap.get(o)},createGridViewFile(o,s){return{name:o.split(/[/\\]/).pop()??"",size:"-",bytes:0,type:"file",created_time:"",date:"",fullpath:o,tags:s==null?void 0:s.map(l=>({name:l})),is_under_scanned_path:!0}}});function r(o){return new Proxy({},{get(s,l,u){var c;if(l==="close"){const d=t.tabList.findIndex(v=>v.panes.some(h=>h.key===o));return()=>Gu.emit("closeTabPane",d,o)}return(c=t.pageFuncExportMap.get(o))==null?void 0:c[l]}})}function a(o){const s=window;for(const l in o)s[l]=(...u)=>o[l](...u)}},_K=he({__name:"App",setup(t){const e=Dn(),n=PW(),r=Vx(),a=eT.filter(l=>!["tabListHistoryRecord","recent"].includes(l));let i=null;const o=Hb(async()=>{e.$subscribe(ts(async()=>{var u;if(((u=e.conf)==null?void 0:u.is_readonly)===!0)return;const l={};a.forEach(c=>{l[c]=Qr(e[c])}),JSON.stringify(l)!==JSON.stringify(i)&&(console.log("save global setting",l),await Kx("global",l),i=Qr(l))},500))}),s=Hb(async()=>{var u,c;await za(100);const l=e.defaultInitinalPage;if(l!=="empty")if(l==="last-workspace-state"){const d=(u=e.tabListHistoryRecord)==null?void 0:u[1];if(!(d!=null&&d.tabs))return;e.tabList=Qr(d.tabs),Zt.success(Te("restoreLastWorkspaceStateSuccess"))}else{const d=(c=l.split("_"))==null?void 0:c[2],v=n.snapshots.find(h=>h.id===d);if(!(v!=null&&v.tabs))return;e.tabList=Qr(v.tabs),Zt.success(Te("restoreWorkspaceSnapshotSuccess"))}});return ud("updateGlobalSetting",async()=>{var d,v;await sH(),console.log(Gl.value);const l=await cW();e.conf=l;const u=await c0(l);e.quickMovePaths=u.filter(h=>{var f,p;return(p=(f=h==null?void 0:h.dir)==null?void 0:f.trim)==null?void 0:p.call(f)});const c=(v=(d=e==null?void 0:e.conf)==null?void 0:d.app_fe_setting)==null?void 0:v.global;c&&(console.log("restoreFeGlobalSetting",c),i=Qr(c),a.forEach(h=>{const f=c[h];f!==void 0&&(e[h]=f)})),o(),s(),wK(e),mK(e)}),ud("returnToIIB",async()=>{const l=e.conf;if(!l)return;const u=l.global_setting;if(!u.outdir_txt2img_samples&&!u.outdir_img2img_samples)return;const c=new Set(e.quickMovePaths.map(v=>v.key));if(c.has("outdir_txt2img_samples")&&c.has("outdir_img2img_samples"))return;const d=await c0(l);e.quickMovePaths=d.filter(v=>{var h,f;return(f=(h=v==null?void 0:v.dir)==null?void 0:h.trim)==null?void 0:f.call(h)})}),ve(()=>e.computedTheme==="dark",async l=>{await za();const u=document.getElementsByTagName("html")[0];if(l){document.body.classList.add("dark");const c=document.createElement("style"),{default:d}=await pn(()=>import("./antd.dark-35e9b327.js"),[]);c.innerHTML=d,c.setAttribute("antd-dark",""),u.appendChild(c)}else document.body.classList.remove("dark"),Array.from(u.querySelectorAll("style[antd-dark]")).forEach(c=>c.remove())},{immediate:!0}),ve(()=>e.previewBgOpacity,l=>{document.documentElement.style.setProperty("--iib-preview-mask-bg",`rgba(0, 0, 0, ${l})`)},{immediate:!0}),Ue(async()=>{Fx&&bK(),Gu.emit("updateGlobalSetting")}),(l,u)=>{const c=On;return Oe(),wt(c,{loading:!me(r).isIdle},{default:Rt(()=>[S(gK)]),_:1},8,["loading"])}}});function SK(t){return typeof t=="object"&&t!==null}function E0(t,e){return t=SK(t)?t:Object.create(null),new Proxy(t,{get(n,r,a){return r==="key"?Reflect.get(n,r,a):Reflect.get(n,r,a)||Reflect.get(e,r,a)}})}function CK(t,e){return e.reduce((n,r)=>n==null?void 0:n[r],t)}function xK(t,e,n){return e.slice(0,-1).reduce((r,a)=>/^(__proto__)$/.test(a)?{}:r[a]=r[a]||{},t)[e[e.length-1]]=n,t}function TK(t,e){return e.reduce((n,r)=>{const a=r.split(".");return xK(n,a,CK(t,a))},{})}function P0(t,{storage:e,serializer:n,key:r,debug:a}){try{const i=e==null?void 0:e.getItem(r);i&&t.$patch(n==null?void 0:n.deserialize(i))}catch(i){a&&console.error(i)}}function A0(t,{storage:e,serializer:n,key:r,paths:a,debug:i}){try{const o=Array.isArray(a)?TK(t,a):t;e.setItem(r,n.serialize(o))}catch(o){i&&console.error(o)}}function OK(t={}){return e=>{const{auto:n=!1}=t,{options:{persist:r=n},store:a}=e;if(!r)return;const i=(Array.isArray(r)?r.map(o=>E0(o,t)):[E0(r,t)]).map(({storage:o=localStorage,beforeRestore:s=null,afterRestore:l=null,serializer:u={serialize:JSON.stringify,deserialize:JSON.parse},key:c=a.$id,paths:d=null,debug:v=!1})=>{var h;return{storage:o,beforeRestore:s,afterRestore:l,serializer:u,key:((h=t.key)!=null?h:f=>f)(c),paths:d,debug:v}});a.$persist=()=>{i.forEach(o=>{A0(a.$state,o)})},a.$hydrate=({runHooks:o=!0}={})=>{i.forEach(s=>{const{beforeRestore:l,afterRestore:u}=s;o&&(l==null||l(e)),P0(a,s),o&&(u==null||u(e))})},i.forEach(o=>{const{beforeRestore:s,afterRestore:l}=o;s==null||s(e),P0(a,o),l==null||l(e),a.$subscribe((u,c)=>{A0(c,o)},{detached:!0})})}}var EK=OK(),PK=Object.defineProperty,AK=Object.defineProperties,IK=Object.getOwnPropertyDescriptors,I0=Object.getOwnPropertySymbols,kK=Object.prototype.hasOwnProperty,MK=Object.prototype.propertyIsEnumerable,k0=(t,e,n)=>e in t?PK(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,hd=(t,e)=>{for(var n in e||(e={}))kK.call(e,n)&&k0(t,n,e[n]);if(I0)for(var n of I0(e))MK.call(e,n)&&k0(t,n,e[n]);return t},NK=(t,e)=>AK(t,IK(e));function RK(t){return ru()?(Cd(t),!0):!1}const lT=typeof window<"u";function uT(t,e){function n(...r){t(()=>e.apply(this,r),{fn:e,thisArg:this,args:r})}return n}const $K=t=>t();function LK(t,e={}){let n,r;return i=>{const o=me(t),s=me(e.maxWait);if(n&&clearTimeout(n),o<=0||s!==void 0&&s<=0)return r&&(clearTimeout(r),r=null),i();s&&!r&&(r=setTimeout(()=>{n&&clearTimeout(n),r=null,i()},s)),n=setTimeout(()=>{r&&clearTimeout(r),r=null,i()},o)}}function DK(t,e=!0,n=!0){let r=0,a,i=!n;const o=()=>{a&&(clearTimeout(a),a=void 0)};return l=>{const u=me(t),c=Date.now()-r;if(o(),u<=0)return r=Date.now(),l();c>u&&(r=Date.now(),i?i=!1:l()),e&&(a=setTimeout(()=>{r=Date.now(),n||(i=!0),o(),l()},u)),!n&&!a&&(a=setTimeout(()=>i=!0,u))}}function bo(t,e=200,n=!0,r=!0){return uT(DK(e,n,r),t)}var M0=Object.getOwnPropertySymbols,FK=Object.prototype.hasOwnProperty,BK=Object.prototype.propertyIsEnumerable,zK=(t,e)=>{var n={};for(var r in t)FK.call(t,r)&&e.indexOf(r)<0&&(n[r]=t[r]);if(t!=null&&M0)for(var r of M0(t))e.indexOf(r)<0&&BK.call(t,r)&&(n[r]=t[r]);return n};function jK(t,e,n={}){const r=n,{eventFilter:a=$K}=r,i=zK(r,["eventFilter"]);return ve(t,uT(a,e),i)}var HK=Object.defineProperty,WK=Object.defineProperties,VK=Object.getOwnPropertyDescriptors,Jl=Object.getOwnPropertySymbols,cT=Object.prototype.hasOwnProperty,fT=Object.prototype.propertyIsEnumerable,N0=(t,e,n)=>e in t?HK(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,UK=(t,e)=>{for(var n in e||(e={}))cT.call(e,n)&&N0(t,n,e[n]);if(Jl)for(var n of Jl(e))fT.call(e,n)&&N0(t,n,e[n]);return t},KK=(t,e)=>WK(t,VK(e)),GK=(t,e)=>{var n={};for(var r in t)cT.call(t,r)&&e.indexOf(r)<0&&(n[r]=t[r]);if(t!=null&&Jl)for(var r of Jl(t))e.indexOf(r)<0&&fT.call(t,r)&&(n[r]=t[r]);return n};function dT(t,e,n={}){const r=n,{debounce:a=0}=r,i=GK(r,["debounce"]);return jK(t,e,KK(UK({},i),{eventFilter:LK(a)}))}function qK(t){var e;const n=me(t);return(e=n==null?void 0:n.$el)!=null?e:n}const YK=lT?window:void 0,R0=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},$0="__vueuse_ssr_handlers__";R0[$0]=R0[$0]||{};var L0=Object.getOwnPropertySymbols,JK=Object.prototype.hasOwnProperty,XK=Object.prototype.propertyIsEnumerable,ZK=(t,e)=>{var n={};for(var r in t)JK.call(t,r)&&e.indexOf(r)<0&&(n[r]=t[r]);if(t!=null&&L0)for(var r of L0(t))e.indexOf(r)<0&&XK.call(t,r)&&(n[r]=t[r]);return n};function QK(t,e,n={}){const r=n,{window:a=YK}=r,i=ZK(r,["window"]);let o;const s=a&&"ResizeObserver"in a,l=()=>{o&&(o.disconnect(),o=void 0)},u=ve(()=>qK(t),d=>{l(),s&&a&&d&&(o=new ResizeObserver(e),o.observe(d,i))},{immediate:!0,flush:"post"}),c=()=>{l(),u()};return RK(c),{isSupported:s,stop:c}}var D0,F0;lT&&(window!=null&&window.navigator)&&((D0=window==null?void 0:window.navigator)!=null&&D0.platform)&&/iP(ad|hone|od)/.test((F0=window==null?void 0:window.navigator)==null?void 0:F0.platform);var Kv={exports:{}};(function(t){var e=function(){this.Diff_Timeout=1,this.Diff_EditCost=4,this.Match_Threshold=.5,this.Match_Distance=1e3,this.Patch_DeleteThreshold=.5,this.Patch_Margin=4,this.Match_MaxBits=32},n=-1,r=1,a=0;e.Diff=function(i,o){return[i,o]},e.prototype.diff_main=function(i,o,s,l){typeof l>"u"&&(this.Diff_Timeout<=0?l=Number.MAX_VALUE:l=new Date().getTime()+1e3*this.Diff_Timeout);var u=l;if(i==null||o==null)throw new Error("Null input. (diff_main)");if(i==o)return i?[new e.Diff(a,i)]:[];typeof s>"u"&&(s=!0);var c=s,d=this.diff_commonPrefix(i,o),v=i.substring(0,d);i=i.substring(d),o=o.substring(d),d=this.diff_commonSuffix(i,o);var h=i.substring(i.length-d);i=i.substring(0,i.length-d),o=o.substring(0,o.length-d);var f=this.diff_compute_(i,o,c,u);return v&&f.unshift(new e.Diff(a,v)),h&&f.push(new e.Diff(a,h)),this.diff_cleanupMerge(f),f},e.prototype.diff_compute_=function(i,o,s,l){var u;if(!i)return[new e.Diff(r,o)];if(!o)return[new e.Diff(n,i)];var c=i.length>o.length?i:o,d=i.length>o.length?o:i,v=c.indexOf(d);if(v!=-1)return u=[new e.Diff(r,c.substring(0,v)),new e.Diff(a,d),new e.Diff(r,c.substring(v+d.length))],i.length>o.length&&(u[0][0]=u[2][0]=n),u;if(d.length==1)return[new e.Diff(n,i),new e.Diff(r,o)];var h=this.diff_halfMatch_(i,o);if(h){var f=h[0],p=h[1],m=h[2],g=h[3],y=h[4],b=this.diff_main(f,m,s,l),w=this.diff_main(p,g,s,l);return b.concat([new e.Diff(a,y)],w)}return s&&i.length>100&&o.length>100?this.diff_lineMode_(i,o,l):this.diff_bisect_(i,o,l)},e.prototype.diff_lineMode_=function(i,o,s){var l=this.diff_linesToChars_(i,o);i=l.chars1,o=l.chars2;var u=l.lineArray,c=this.diff_main(i,o,!1,s);this.diff_charsToLines_(c,u),this.diff_cleanupSemantic(c),c.push(new e.Diff(a,""));for(var d=0,v=0,h=0,f="",p="";d'+f+"";break;case a:o[d]=""+f+"";break}}return o.join("")},e.prototype.diff_text1=function(i){for(var o=[],s=0;s