import{a as le,b as ae,V as te,c as oe,q as se,r as ne,i as G,d as de,e as re,s as ue,t as V,v as q,H as O,w as ce,k as m,x as ie,y as fe,z as pe,A as P,B as U,j as ge,C as me,__tla as __tla_0}from"./index-CfNDsQKB.js";import{g as ye}from"./FileIcon-DH65fwz5.js";import{g as he,G as ve,d as g,c as X,r as ke,w as Ve,x as _e,I as r,J as c,K as o,m as s,L as i,M as u,u as d,V as w,W as _,F as J,O as y,X as x,Y as be,Q as Fe,U as D,Z as Ne,_ as Ce}from"./vue--7UcA1iU.js";import{u as Re}from"./vuetify-GhifFkZ7.js";let Ke;let __tla=Promise.all([(()=>{try{return __tla_0}catch{}})()]).then(async()=>{let we,xe,Ee,$e,Te,Ie;we=v=>(Ne("data-v-5c316654"),v=v(),Ce(),v);xe=we(()=>x("br",null,null,-1));Ee=["onClick"];$e={class:"d-inline-flex flex-column"};Te={key:1};Ie=he({__name:"BulkRenameFilesDialog",props:{guid:{},node:{},hash:{}},setup(v){const k=v,{isOpened:b}=le(k.guid),{t:h}=ve(),S=ae(),f=Re().mobile,K=g(),F=g(!1),E=g(!1),N=g(""),L=g(),C=g([]),R=g(""),M=g(),$=g(!1),A=[l=>!!l],Q=X(()=>{const l=[{fixed:!0,sortable:!1,key:"selected",width:"50px"},{sortable:!1,key:"name"}];return f.value||l.push({sortable:!1,key:"targetName"}),l}),p=ke([]),T=X(()=>p.filter(l=>l.type==="file"&&l.selected&&l.targetName&&l.name!==l.targetName)),H=(l,a=void 0,t=0)=>{const e={indent:t,name:l.name,fullName:l.fullName,parentItem:a,show:!0,folded:!1,selected:!1,type:l.type,node:l};if(p.push(e),l.type==="folder")for(const n of l.children)H(n,e,t+1)},j=(l,a)=>{l.folded=a,l.node.children.forEach(t=>{const e=p.find(n=>n.node.id===t.id);e.show=!a,e.type==="folder"&&a&&j(e,a)})},I=l=>{const a=p.find(t=>t.node.id===l.id);if(l.type==="folder"){let t=0,e=0;return l.children.forEach(n=>{switch(I(n)){case 1:t++;break;case 0:e++;break}}),t===0&&e===0?(a.selected=!1,a.indeterminate=!1,-1):t===l.children.length?(a.selected=!0,a.indeterminate=!1,1):(a.indeterminate=!0,0)}else return a.indeterminate=!1,a.selected?1:-1},W=l=>{const a=t=>{t.node.children.forEach(e=>{const n=p.find(ee=>ee.node.id===e.id);n&&(n.selected=t.selected,n.selected&&(n.show=!0,n.folded=!1),n.type==="folder"&&a(n))}),t.selected&&(t.show=!0,t.folded=!1)};a(l),I(k.node),B()},Y=l=>{I(k.node),B([l])},B=async l=>{if(await K.value?.validate(),!F.value)return;let a;try{a=new RegExp(N.value,C.value.join(""))}catch{return}(l||p).forEach(e=>{e.type==="file"&&(e.selected&&a.test(e.name)?(e.targetName=e.name.replace(a,R.value),e.targetFullName=(e.parentItem.fullName===""?"":e.parentItem.fullName+"/")+e.targetName):(e.targetName=void 0,e.targetFullName=void 0),e.notChanged=e.name===e.targetName)}),E.value=!1;const t=new Map;p.filter(e=>!!e.targetFullName).forEach(e=>{t.set(e.targetFullName,(t.get(e.targetFullName)||0)+1)}),p.forEach(e=>{e.duplicated=t.get(e.targetFullName)>1,e.duplicated&&(E.value=!0)})},Z=async()=>{if(!T.value.length)return D.warn(h("dialogs.bulkRenameFiles.nothing_to_do"));const l=[];for(const a of T.value)l.push(S.renameTorrentFile(k.hash,a.fullName,a.targetFullName));$.value=!0,Promise.all(l).then(()=>{D.success(h("dialogs.bulkRenameFiles.success")),L.value?.saveValueToHistory(),M.value?.saveValueToHistory()}).catch(a=>{D.error(a.toString())}).finally(()=>{$.value=!1,S.updateFileTree(),z()})},z=()=>{b.value=!1};return Ve([N,C,R],()=>{B()}),_e(()=>{H(k.node)}),(l,a)=>(r(),c(ge,{modelValue:d(b),"onUpdate:modelValue":a[6]||(a[6]=t=>Fe(b)?b.value=t:null),persistent:""},{default:o(()=>[s(te,{density:"compact"},{default:o(()=>[s(oe,null,{default:o(()=>[s(se,{density:"compact",color:"transparent"},{default:o(()=>[s(ne,null,{default:o(()=>[i(u(l.$t("dialogs.bulkRenameFiles.title")),1)]),_:1}),s(G,{icon:"mdi-close",onClick:a[0]||(a[0]=t=>z())})]),_:1})]),_:1}),s(de,{class:"d-flex flex-column"},{default:o(()=>[s(d(re),{modelValue:F.value,"onUpdate:modelValue":a[5]||(a[5]=t=>F.value=t),ref_key:"form",ref:K},{default:o(()=>[s(ue,{"no-gutters":"",align:"center",justify:"center"},{default:o(()=>[s(V,{cols:d(f)?9:void 0},{default:o(()=>[s(q,{historyKey:d(O).BULK_RENAME_REGEXP,ref_key:"regexpEl",ref:L,"hide-details":"",density:"compact",modelValue:N.value,"onUpdate:modelValue":a[1]||(a[1]=t=>N.value=t),rules:A,label:l.$t("dialogs.bulkRenameFiles.regexp")},null,8,["historyKey","modelValue","label"])]),_:1},8,["cols"]),s(V,{cols:d(f)?3:"auto"},{default:o(()=>[s(ce,{class:"ml-2",modelValue:C.value,"onUpdate:modelValue":a[2]||(a[2]=t=>C.value=t),items:["d","g","i","m","s","u","v","y"],placeholder:d(h)("dialogs.bulkRenameFiles.select_regex_flags"),label:"Flags",density:"compact",multiple:"","hide-details":""},null,8,["modelValue","placeholder"])]),_:1},8,["cols"]),s(V,{cols:"auto"},{default:o(()=>[s(m,{class:"mx-2",icon:`mdi-arrow-${d(f)?"down":"right"}`},null,8,["icon"])]),_:1}),s(V,{cols:d(f)?12:void 0},{default:o(()=>[s(q,{historyKey:d(O).BULK_RENAME_TARGET,ref_key:"targetEl",ref:M,"hide-details":"",density:"compact",modelValue:R.value,"onUpdate:modelValue":a[3]||(a[3]=t=>R.value=t),rules:A,label:l.$t("dialogs.bulkRenameFiles.target")},null,8,["historyKey","modelValue","label"])]),_:1},8,["cols"]),s(V,{cols:"auto"},{default:o(()=>[s(ie,{class:w(d(f)?"mt-2":"ml-5"),color:"success",location:"top left",content:T.value.length},{default:o(()=>[s(G,{loading:$.value,disabled:!F.value||E.value,color:"primary",onClick:a[4]||(a[4]=t=>Z())},{default:o(()=>[i(u(l.$t("dialogs.bulkRenameFiles.run")),1)]),_:1},8,["loading","disabled"])]),_:1},8,["class","content"])]),_:1})]),_:1})]),_:1},8,["modelValue"]),s(fe,{headers:Q.value,items:p,density:"compact","fixed-header":""},{"header.name":o(()=>[i(u(l.$t("dialogs.bulkRenameFiles.col_origin_name"))+" ",1),d(f)?(r(),_(J,{key:0},[xe,i(" "+u(l.$t("dialogs.bulkRenameFiles.col_result_name")),1)],64)):y("",!0)]),"header.targetName":o(()=>[d(f)?y("",!0):(r(),_(J,{key:0},[i(u(l.$t("dialogs.bulkRenameFiles.col_result_name")),1)],64))]),item:o(({index:t,item:e})=>[e.show?(r(),c(pe,{key:0,index:t,item:e},{"item.selected":o(()=>[e.type==="file"?(r(),c(P,{key:0,modelValue:e.selected,"onUpdate:modelValue":n=>e.selected=n,color:e.targetName&&"indigo",onChange:n=>Y(e)},null,8,["modelValue","onUpdate:modelValue","color","onChange"])):(r(),c(P,{key:1,modelValue:e.selected,"onUpdate:modelValue":n=>e.selected=n,indeterminate:e.indeterminate,onChange:n=>W(e)},null,8,["modelValue","onUpdate:modelValue","indeterminate","onChange"]))]),"item.name":o(()=>[x("span",{class:w(["fold-toggle",{clickable:e.type==="folder"}]),style:be({"padding-left":`${e.indent*20}px`}),onClick:n=>e.type==="folder"&&j(e,!e.folded)},[e.type==="folder"?(r(),c(U,{key:0,location:"top",activator:"parent"},{default:o(()=>[i(u(d(h)(`dialogs.bulkRenameFiles.${e.folded?"unfold":"fold"}`)),1)]),_:2},1024)):y("",!0),e.type==="folder"?(r(),c(m,{key:1},{default:o(()=>[i(u(e.folded?"mdi-chevron-down":"mdi-chevron-up"),1)]),_:2},1024)):y("",!0),e.fullName===""?(r(),c(m,{key:2,icon:"mdi-file-tree"})):e.type==="file"?(r(),c(m,{key:3,icon:d(ye)(e.name)},null,8,["icon"])):e.folded?(r(),c(m,{key:5,icon:"mdi-folder",color:"#ffe476"})):(r(),c(m,{key:4,icon:"mdi-folder-open",color:"#ffe476"})),x("div",$e,[x("span",null,u(e.name),1),d(f)?(r(),_("span",{key:0,class:w(["target-name",{duplicated:e.duplicated,"not-changed":e.notChanged}])},u(e.targetName),3)):y("",!0)])],14,Ee)]),"item.targetName":o(()=>[e.type==="file"?(r(),_("span",{key:0,class:w(["target-name",{duplicated:e.duplicated,"not-changed":e.notChanged}])},[i(u(e.targetName)+" ",1),e.duplicated||e.notChanged?(r(),c(U,{key:0,activator:"parent"},{default:o(()=>[i(u(d(h)(`dialogs.bulkRenameFiles.${e.duplicated?"duplicated":"not_changed"}`)),1)]),_:2},1024)):y("",!0)],2)):(r(),_("span",Te,[s(m,{icon:"mdi-cancel",color:"grey-lighten-1"}),s(U,{activator:"parent"},{default:o(()=>[i(u(d(h)("dialogs.bulkRenameFiles.notForFolder")),1)]),_:1})]))]),_:2},1032,["index","item"])):y("",!0)]),bottom:o(()=>[]),_:1},8,["headers","items"])]),_:1})]),_:1})]),_:1},8,["modelValue"]))}});Ke=me(Ie,[["__scopeId","data-v-5c316654"]])});export{Ke as default,__tla};