@brftech/filex-core 0.16.2 → 0.17.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,8 +1,8 @@
1
- (function(Je,r){typeof exports=="object"&&typeof module<"u"?r(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],r):(Je=typeof globalThis<"u"?globalThis:Je||self,r(Je.FilexCore={},Je.Vue))})(this,function(Je,r){"use strict";var gI=Object.defineProperty;var bI=(Je,r,Ia)=>r in Je?gI(Je,r,{enumerable:!0,configurable:!0,writable:!0,value:Ia}):Je[r]=Ia;var kr=(Je,r,Ia)=>bI(Je,typeof r!="symbol"?r+"":r,Ia);function Ia(e,t){for(var n=0;n<t.length;n++){const a=t[n];if(typeof a!="string"&&!Array.isArray(a)){for(const i in a)if(i!=="default"&&!(i in e)){const o=Object.getOwnPropertyDescriptor(a,i);o&&Object.defineProperty(e,i,o.get?o:{enumerable:!0,get:()=>a[i]})}}}return Object.freeze(Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}))}function Zs(e){return!!e&&e.enabled&&e.state==="ok"}function Zu(e){const t=e.apiBase!=null?e.apiBase.replace(/\/+$/,""):null;function n(i,o){return i||(t===null?null:`${t}${o}`)}const a=e.endpoint??(t!==null?`${t}/api/files/manager`:null);if(!a)throw new Error("[@brftech/filex-core] config requires either `apiBase` or `endpoint`");return{manager:a,uploadInit:n(e.uploadInit,"/api/files/upload/init"),uploadFinalize:n(e.uploadFinalize,"/api/files/upload/finalize"),uploadAbort:n(e.uploadAbort,"/api/files/upload/abort"),shareCreate:n(e.shareCreate,"/api/files/share"),shareList:n(e.shareList,"/api/files/share"),shareDelete:n(e.shareDelete,"/api/files/share/{uuid}"),limits:n(e.limits,"/api/files/limits"),capabilities:n(e.capabilities,"/api/files/capabilities"),archiveList:n(e.archiveList,"/api/files/archive/list"),archiveExtract:n(e.archiveExtract,"/api/files/archive/extract"),archiveAdd:n(e.archiveAdd,"/api/files/archive/add"),copy:n(e.copy,"/api/files/copy"),moveAsync:n(e.moveAsync,"/api/files/move"),deleteAsync:n(e.deleteAsync,"/api/files/delete"),opsList:n(e.opsList,"/api/files/ops"),opsShow:n(e.opsShow,"/api/files/ops/{id}"),onlyOfficeConfig:n(e.onlyOfficeConfig,"/api/files/onlyoffice/config"),saveText:n(e.saveText,"/api/files/save-text"),restore:n(e.restore,"/api/files/restore"),trashList:n(e.trashList,"/api/files/manager/trash"),trashRestore:n(e.trashRestore,"/api/files/manager/restore")}}async function yy(e){if(typeof e=="function"){const t=e();return t instanceof Promise?await t:t}return e}function _y(e){return e?"kind"in e?e:e.type==="bearer"?{kind:"bearer",token:e.token}:e.type==="csrf"?{kind:"csrf",csrf:e.csrf}:{kind:"none"}:{kind:"none"}}function Ju(e){const t=Zu(e),n=_y(e.auth);let a=null;async function i(ce={}){const be={Accept:"application/json",...ce};if(n.kind==="bearer"){const Me=await yy(n.token);Me&&(be.Authorization=`Bearer ${Me}`,a=Me)}else if(n.kind==="csrf")be["X-CSRF-TOKEN"]=n.csrf,be["X-Requested-With"]="XMLHttpRequest";else if(n.kind==="basic"){const Me=btoa(`${n.user}:${n.pass}`);be.Authorization=`Basic ${Me}`}return be}function o(ce={}){const be={Accept:"application/json",...ce};if(n.kind==="bearer"){const Me=typeof n.token=="string"?n.token:a;Me&&(be.Authorization=`Bearer ${Me}`)}else if(n.kind==="csrf")be["X-CSRF-TOKEN"]=n.csrf,be["X-Requested-With"]="XMLHttpRequest";else if(n.kind==="basic"){const Me=btoa(`${n.user}:${n.pass}`);be.Authorization=`Basic ${Me}`}return be}function s(){return n.kind==="csrf"?"include":"same-origin"}function l(ce){const be=(e.locale??"tr")!=="en",Qe={400:["Geçersiz istek","Bad request"],401:["Oturum gerekli, tekrar giriş yapın","Sign-in required"],403:["Bu işlem için yetkiniz yok","You are not allowed to do this"],404:["Bulunamadı","Not found"],409:["Zaten var / çakışma","Already exists / conflict"],413:["Dosya çok büyük","File too large"],415:["Bu dosya türü desteklenmiyor","Unsupported file type"],422:["Geçersiz veri","Invalid data"],429:["Çok fazla istek, biraz bekleyin","Too many requests"],500:["Sunucu hatası","Server error"],501:["Bu işlem desteklenmiyor","Not supported"],503:["Servis şu an kullanılamıyor","Service unavailable"]}[ce];return Qe?be?Qe[0]:Qe[1]:be?`Hata (${ce})`:`Error (${ce})`}async function c(ce,be={}){const Me={...await i(),...be.headers??{}},Qe=await fetch(ce,{...be,headers:Me,credentials:s()});if(!Qe.ok){const dt=await Qe.text().catch(()=>""),ot=new Error(l(Qe.status));throw ot.status=Qe.status,ot.detail=dt.slice(0,300),ot}return Qe.json()}function d(ce=""){return t.manager.replace(/\/manager(\?.*)?$/,"/permissions")+ce}async function u(ce){return c(d()+"?path="+encodeURIComponent(ce))}async function h(ce){return c(d("/resolve")+"?email="+encodeURIComponent(ce))}async function f(ce){return c(d("/users")+"?q="+encodeURIComponent(ce))}async function p(ce){return c(d(),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(ce)})}async function w(ce,be){return c(d("/"+ce),{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({level:be})})}async function g(ce){return c(d("/"+ce),{method:"DELETE"})}async function v(ce){return c(d("/invite"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(ce)})}async function m(ce){return c(d("/share-mail"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(ce)})}function b(ce){const be=new URLSearchParams;for(const[Me,Qe]of Object.entries(ce))Qe!=null&&be.set(Me,String(Qe));return be.toString()}function y(ce,be={}){const Me=t.manager.includes("?")?"&":"?";return`${t.manager}${Me}${b({q:ce,action:ce,...be})}`}async function _(ce){return c(y("index",{path:ce}))}async function S(ce,be){return c(y("search",{path:ce,filter:be}))}async function A(ce,be={}){const Me=t.manager.replace(/\/manager(\?.*)?$/,"/search"),Qe=Me.includes("?")?"&":"?",dt=`${Me}${Qe}${b({q:ce,limit:be.limit,scope:be.scope})}`,ot=await c(dt);return Array.isArray(ot==null?void 0:ot.results)?ot.results:[]}async function T(ce){return c(y("subfolders",{path:ce}))}async function E(ce,be){return c(y("newfolder"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({path:ce,name:be})})}async function k(ce,be,Me){return c(y("rename"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({path:ce,item:be,name:Me})})}async function N(ce,be,Me){return c(y("move"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({path:ce,item:Me,items:be.map(Qe=>({path:Qe}))})})}async function D(ce,be){return c(y("delete"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({path:ce,items:be.map(Me=>({path:Me}))})})}async function U(ce,be){if(!t.copy)throw new Error("copy endpoint not configured");return c(t.copy,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({source:ce,target:be})})}async function L(ce,be,Me){if(!t.moveAsync)throw new Error("moveAsync endpoint not configured");return c(t.moveAsync,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({source:ce,target:be,sourceDir:Me})})}async function q(ce,be){if(!t.deleteAsync)throw new Error("deleteAsync endpoint not configured");return c(t.deleteAsync,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({source:ce,sourceDir:be})})}async function X(ce){if(!t.restore)throw new Error("restore endpoint not configured");return c(t.restore,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({source:ce})})}async function $(ce){if(!t.trashList)throw new Error("trashList endpoint not configured");const be=t.trashList,Me=be.includes("?")?"&":"?",Qe=ce?`${be}${Me}storage=${encodeURIComponent(ce)}`:be;return c(Qe)}async function j(ce){const be=t.trashRestore;if(!be)throw new Error("trashRestore endpoint not configured");let Me=0;for(const Qe of ce)try{await c(be,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({node_id:Qe})}),Me++}catch{}return{restored:Me}}async function J(ce,be,Me){const Qe=new FormData;Qe.append("path",ce);for(const ot of be)Qe.append("file[]",ot,ot.name);const dt=await i();return new Promise((ot,xe)=>{const Ne=new XMLHttpRequest;Ne.open("POST",y("upload"));for(const[Le,at]of Object.entries(dt))Le!=="Content-Type"&&Ne.setRequestHeader(Le,at);Ne.withCredentials=s()==="include",Ne.upload.onprogress=Le=>{Me&&Le.lengthComputable&&Me(Math.round(Le.loaded/Le.total*100))},Ne.onload=()=>{if(Ne.status>=200&&Ne.status<300)try{ot(JSON.parse(Ne.responseText))}catch(Le){xe(Le)}else xe(new Error(`${Ne.status} ${Ne.statusText}: ${Ne.responseText.slice(0,200)}`))},Ne.onerror=()=>xe(new Error("Network error")),Ne.send(Qe)})}function V(ce){return y("download",{path:ce})}function F(ce){return y("preview",{path:ce})}async function I(ce){const be=await i(),Me=await fetch(F(ce),{headers:be,credentials:s()});if(!Me.ok){const xe=await Me.text().catch(()=>"");throw new Error(`${Me.status} ${Me.statusText}${xe?" — "+xe.slice(0,200):""}`)}const Qe=await Me.blob(),dt=Qe.type||Me.headers.get("content-type")||"";return{url:URL.createObjectURL(Qe),blob:Qe,mime:dt}}async function H(ce){const be=await i(),Me=await fetch(F(ce),{headers:be,credentials:s()});if(!Me.ok){const Qe=await Me.text().catch(()=>"");throw new Error(`${Me.status} ${Me.statusText}${Qe?" — "+Qe.slice(0,200):""}`)}return Me.arrayBuffer()}async function G(){return t.limits?c(t.limits):{max_upload_mb:1024}}async function oe(){return t.capabilities?c(t.capabilities):{ffmpeg:!1,ghostscript:!1,libreoffice:!1,max_chunk_mb:5,upload_limit_mb:1024,onlyoffice_url:e.onlyOfficeBase??null,drawio_url:e.drawioBase??null,convert_url:e.convertBase??null}}async function de(ce){if(!t.shareCreate)throw new Error("shareCreate endpoint not configured");return c(t.shareCreate,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(ce)})}async function ve(ce){if(!t.shareList)return{shares:[]};const be=t.shareList.includes("?")?"&":"?";return c(`${t.shareList}${be}path=${encodeURIComponent(ce)}`)}async function Ee(ce){if(!t.shareDelete)throw new Error("shareDelete endpoint not configured");const be=t.shareDelete.replace("{uuid}",encodeURIComponent(ce));return c(be,{method:"DELETE"})}async function ne(ce){if(!t.archiveList)throw new Error("archiveList endpoint not configured");return{entries:(await c(t.archiveList,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({path:ce})})).entries.map(Me=>({name:Me.name,size:Me.size,isDir:Me.is_dir,lastModified:Me.mtime}))}}async function me(ce,be){if(!t.archiveExtract)throw new Error("archiveExtract endpoint not configured");return c(t.archiveExtract,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({path:ce,members:be})})}async function we(ce,be){if(!t.archiveAdd)throw new Error("archiveAdd endpoint not configured");return c(t.archiveAdd,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({path:ce,files:be})})}function Se(ce=""){return t.manager.replace(/\/manager(\?.*)?$/,"/versions")+ce}async function De(ce){const be=await c(Se()+"?node_id="+encodeURIComponent(String(ce)));return Array.isArray(be==null?void 0:be.versions)?be.versions:[]}async function Xe(ce,be,Me=!0){await c(Se("/restore"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({node_id:ce,version_id:be,snapshot_current:Me})})}async function tt(ce){await c(Se("/snapshot"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({node_id:ce})})}function Pe(ce=""){return t.manager.replace(/\/manager(\?.*)?$/,"/comments")+ce}async function Oe(ce){const be=await c(Pe()+"?node_id="+encodeURIComponent(String(ce)));return Array.isArray(be==null?void 0:be.comments)?be.comments:[]}async function Ie(ce,be){return(await c(Pe(),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({node_id:ce,body:be})})).comment}async function pe(ce){await c(Pe("/"+encodeURIComponent(String(ce))),{method:"DELETE"})}async function $e(){const ce=t.manager.replace(/\/manager(\?.*)?$/,"/ws-ticket");try{return await c(ce,{method:"POST"})}catch{return null}}return{wsTicket:$e,index:_,search:S,globalSearch:A,subfolders:T,newFolder:E,rename:k,move:N,copy:U,moveAsync:L,deleteAsync:q,deleteItems:D,restore:X,listTrash:$,restoreIds:j,uploadMultipart:J,downloadUrl:V,previewUrl:F,fetchBlob:I,fetchArrayBuffer:H,limits:G,capabilities:oe,createShare:de,listShares:ve,revokeShare:Ee,archiveList:ne,archiveExtract:me,archiveAdd:we,listVersions:De,restoreVersion:Xe,snapshotVersion:tt,listComments:Oe,addComment:Ie,deleteComment:pe,listPermissions:u,resolveEmail:h,searchUsers:f,addPermission:p,updatePermission:w,deletePermission:g,invitePermission:v,shareMail:m,endpoints:t,authHeaders:i,authHeadersSync:o,credentialsMode:s,jsonFetch:c}}function Qu(e,t){const n=e.chunkSize??5242880,a=Math.max(1,Math.min(8,e.parallelChunks??4));async function i(o){var f,p;const s=o.chunkSize??n,l=o.parallelChunks??a,c={id:crypto.randomUUID(),file:o.file,path:o.path,totalBytes:o.file.size,uploadedBytes:0,percent:0,status:"initializing",cancel:()=>{}};let d=!1;const u=[];c.cancel=()=>{d=!0;for(const w of u)w.abort()};function h(){var w;c.percent=c.totalBytes>0?Math.min(100,Math.round(c.uploadedBytes/c.totalBytes*100)):0,(w=o.onProgress)==null||w.call(o,c)}try{if(!t.endpoints.uploadInit)throw new Error("uploadInit not configured");const w=await t.jsonFetch(t.endpoints.uploadInit,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({path:o.path,filename:o.file.name,size:o.file.size,mime:o.file.type||"application/octet-stream"})});c.uploadId=w.uploadId,c.status="uploading",h();const g=w.chunkBytes??s,v=new Map,m=[];let b=0;async function y(k){const D=(k.partNumber-1)*(w.chunkBytes??s),U=Math.min(D+(w.chunkBytes??s),o.file.size),L=o.file.slice(D,U),q=new AbortController;u.push(q),await new Promise((X,$)=>{const j=new XMLHttpRequest;j.open("PUT",k.presignedUrl),j.upload.onprogress=J=>{if(J.lengthComputable){const V=v.get(k.partNumber)??0,F=J.loaded-V;v.set(k.partNumber,J.loaded),c.uploadedBytes+=F,h()}},j.onload=()=>{if(j.status>=200&&j.status<300){const J=(j.getResponseHeader("ETag")||j.getResponseHeader("etag")||"").trim();if(!J){$(new Error("Missing ETag on S3 response"));return}const V=U-D,F=v.get(k.partNumber)??0;F<V&&(c.uploadedBytes+=V-F,v.set(k.partNumber,V)),m.push({partNumber:k.partNumber,etag:J}),X()}else $(new Error(`S3 PUT ${k.partNumber} → ${j.status}: ${j.responseText.slice(0,200)}`))},j.onerror=()=>$(new Error(`S3 PUT ${k.partNumber} network error`)),j.onabort=()=>$(new DOMException("Aborted","AbortError")),q.signal.addEventListener("abort",()=>j.abort()),j.send(L)})}const _=2;async function S(k,N=0){try{await y(k)}catch(D){if(d)throw D;const U=D instanceof Error?D:new Error(String(D));if(U.name==="AbortError"||N>=_)throw U;const L=v.get(k.partNumber)??0;L>0&&(c.uploadedBytes=Math.max(0,c.uploadedBytes-L),v.delete(k.partNumber),h());const q=500*(N+1)+Math.floor(Math.random()*250);return await new Promise(X=>setTimeout(X,q)),S(k,N+1)}}async function A(){for(;!d&&b<w.parts.length;){const k=w.parts[b++];await S(k)}}const T=[];for(let k=0;k<l;k++)T.push(A());if(await Promise.all(T),d)throw new DOMException("Aborted by user","AbortError");if(!t.endpoints.uploadFinalize)throw new Error("uploadFinalize not configured");c.status="finalizing",m.sort((k,N)=>k.partNumber-N.partNumber);const E=await t.jsonFetch(t.endpoints.uploadFinalize,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({uploadId:w.uploadId,parts:m})});return c.status="done",c.uploadedBytes=c.totalBytes,c.percent=100,h(),(f=o.onDone)==null||f.call(o,c,E),E}catch(w){const g=w instanceof Error?w:new Error(String(w));if(c.status=g.name==="AbortError"?"aborted":"error",c.error=g.message,h(),c.uploadId&&t.endpoints.uploadAbort&&c.status==="aborted")try{await t.jsonFetch(t.endpoints.uploadAbort,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({uploadId:c.uploadId})})}catch{}throw(p=o.onError)==null||p.call(o,c,g),g}}return{uploadFile:i}}function ef(e){const t=r.ref(new Set),n=r.ref(null);function a(f,p={}){if(p.shift&&n.value){const w=e(),g=w.findIndex(_=>_.path===n.value),v=w.findIndex(_=>_.path===f);if(g===-1||v===-1){t.value=new Set([f]),n.value=f;return}const[m,b]=g<v?[g,v]:[v,g],y=new Set;for(let _=m;_<=b;_++)y.add(w[_].path);t.value=y;return}if(p.ctrl){const w=new Set(t.value);w.has(f)?w.delete(f):w.add(f),t.value=w,n.value=f;return}t.value=new Set([f]),n.value=f}function i(){t.value=new Set,n.value=null}function o(){t.value=new Set(e().map(f=>f.path))}function s(f){return t.value.has(f)}function l(f){const p=new Set(t.value);p.add(f),t.value=p}function c(f){const p=new Set(t.value);p.delete(f),t.value=p}const d=r.computed(()=>t.value.size),u=r.computed(()=>t.value.size===0),h=r.computed(()=>e().filter(p=>t.value.has(p.path)));return{selected:t,anchor:n,click:a,clear:i,selectAll:o,has:s,add:l,remove:c,size:d,isEmpty:u,nodes:h}}const la=[{id:"palette",defaultCombo:"Ctrl+K",labelKey:"shortcuts.palette",groupKey:"shortcuts.group.nav"},{id:"search",defaultCombo:"/",labelKey:"shortcuts.search",groupKey:"shortcuts.group.nav"},{id:"go-up",defaultCombo:"Alt+↑",fixedCombos:["Backspace"],labelKey:"shortcuts.go_up",groupKey:"shortcuts.group.nav"},{id:"open",defaultCombo:"Enter",prevent:!1,labelKey:"shortcuts.open",groupKey:"shortcuts.group.nav"},{id:"quicklook",defaultCombo:"Space",labelKey:"shortcuts.quicklook",groupKey:"shortcuts.group.nav"},{id:"close",defaultCombo:"Esc",customizable:!1,prevent:!1,inForms:!0,labelKey:"shortcuts.close",groupKey:"shortcuts.group.nav"},{id:"inspector",defaultCombo:"I",labelKey:"shortcuts.inspector",groupKey:"shortcuts.group.nav"},{id:"help",defaultCombo:"?",labelKey:"shortcuts.help",groupKey:"shortcuts.group.nav"},{id:"toggle-hidden",defaultCombo:"Ctrl+Shift+.",labelKey:"shortcuts.toggle_hidden",groupKey:"shortcuts.group.nav"},{id:"select-all",defaultCombo:"Ctrl+A",labelKey:"shortcuts.select_all",groupKey:"shortcuts.group.selection"},{id:"rename",defaultCombo:"F2",labelKey:"shortcuts.rename",groupKey:"shortcuts.group.file"},{id:"delete",defaultCombo:"Del",labelKey:"shortcuts.delete",groupKey:"shortcuts.group.file"},{id:"cut",defaultCombo:"Ctrl+X",labelKey:"shortcuts.cut",groupKey:"shortcuts.group.file"},{id:"copy",defaultCombo:"Ctrl+C",labelKey:"shortcuts.copy",groupKey:"shortcuts.group.file"},{id:"paste",defaultCombo:"Ctrl+V",labelKey:"shortcuts.paste",groupKey:"shortcuts.group.file"},{id:"tab-new",defaultCombo:"Ctrl+T",labelKey:"shortcuts.tab_new",groupKey:"shortcuts.group.tabs"},{id:"tab-close",defaultCombo:"Ctrl+W",labelKey:"shortcuts.tab_close",groupKey:"shortcuts.group.tabs"},{id:"tab-next",defaultCombo:"Ctrl+Tab",labelKey:"shortcuts.tab_next",groupKey:"shortcuts.group.tabs"},{id:"tab-prev",defaultCombo:"Ctrl+Shift+Tab",labelKey:"shortcuts.tab_prev",groupKey:"shortcuts.group.tabs"}],wy={palette:"onPathJump",search:"onFocusSearch","go-up":"onGoUp",open:"onOpen",quicklook:"onQuickLook",close:"onClose",inspector:"onToggleInspector","toggle-hidden":"onToggleHidden",help:"onShowHelp","select-all":"onSelectAll",rename:"onRename",delete:"onDelete",cut:"onCut",copy:"onCopy",paste:"onPaste","tab-new":"onTabNew","tab-close":"onTabClose","tab-next":"onTabNext","tab-prev":"onTabPrev"},Js="filex.shortcuts";function ky(){try{const e=localStorage.getItem(Js);if(!e)return{};const t=JSON.parse(e);if(!t||typeof t!="object")return{};const n={};for(const[a,i]of Object.entries(t))typeof i=="string"&&la.some(o=>o.id===a)&&(n[a]=i);return n}catch{return{}}}const Er=r.ref(ky());function Qs(){try{Object.keys(Er.value).length===0?localStorage.removeItem(Js):localStorage.setItem(Js,JSON.stringify(Er.value))}catch{}}function tf(e){return la.find(t=>t.id===e)}function Xi(e){var n;const t=Er.value[e];return t!==void 0?t:((n=tf(e))==null?void 0:n.defaultCombo)??""}function Jo(e,t){const n=tf(e);if(!n||n.customizable===!1)return;const a={...Er.value};t===n.defaultCombo?delete a[e]:a[e]=t,Er.value=a,Qs()}function nf(e){if(!(e in Er.value))return;const t={...Er.value};delete t[e],Er.value=t,Qs()}function rf(){Er.value={},Qs()}function af(e,t){var n;if(!e)return null;for(const a of la)if(a.id!==t){if((n=a.fixedCombos)!=null&&n.includes(e))return{id:a.id,fixed:!0};if(Xi(a.id)===e)return{id:a.id,fixed:a.customizable===!1}}return null}const Ey={" ":"Space",Spacebar:"Space",Escape:"Esc",Delete:"Del",ArrowUp:"↑",ArrowDown:"↓",ArrowLeft:"←",ArrowRight:"→",PageUp:"PgUp",PageDown:"PgDn"},xy=new Set(["Control","Alt","Shift","Meta","AltGraph","CapsLock","NumLock","ScrollLock","Fn","Dead"]);function Sy(e){const t=e.key;if(!t||xy.has(t))return null;const n=Ey[t];return n||(t.length===1?t.toUpperCase():t)}function ec(e){const t=Sy(e);if(!t)return null;const n=[];(e.ctrlKey||e.metaKey)&&n.push("Ctrl"),e.altKey&&n.push("Alt");const a=t.length===1&&t.toUpperCase()===t.toLowerCase();return e.shiftKey&&!a&&n.push("Shift"),n.push(t),n.join("+")}function tc(){return r.computed(()=>la.map(e=>{const t=Xi(e.id),n=e.fixedCombos??[];return{id:e.id,combo:t,fixedCombos:n,keys:[t,...n].filter(a=>!!a),labelKey:e.labelKey,groupKey:e.groupKey,customizable:e.customizable!==!1,overridden:Er.value[e.id]!==void 0}}))}la.map(e=>({keys:[e.defaultCombo,...e.fixedCombos??[]].filter(t=>!!t),labelKey:e.labelKey,groupKey:e.groupKey}));function of(e,t){const n=r.computed(()=>{const i=new Map;for(const o of la){const s=Xi(o.id);s&&i.set(s,o)}return i});function a(i){var h;if(!e.value||i.key!=="Escape"&&document.querySelector(".fe-ctx-backdrop"))return;const s=i.target,l=!!(s&&(s.tagName==="INPUT"||s.tagName==="TEXTAREA"||s.tagName==="SELECT"||s.isContentEditable)),c=ec(i);if(!c)return;if(c==="Backspace"){if(l)return;(h=t.hasSelection)!=null&&h.call(t)&&t.onDelete?(i.preventDefault(),t.onDelete()):t.onGoUp&&(i.preventDefault(),t.onGoUp());return}const d=n.value.get(c);if(!d||l&&!d.inForms||c==="Space"&&s&&typeof s.closest=="function"&&s.closest('button, a, select, summary, [role="button"], [role="menuitem"]'))return;const u=t[wy[d.id]];u&&(d.prevent!==!1&&i.preventDefault(),u())}r.onMounted(()=>window.addEventListener("keydown",a)),r.onBeforeUnmount(()=>window.removeEventListener("keydown",a))}const lf={"toolbar.new_folder":"Yeni Klasör","toolbar.upload":"Yükle","toolbar.search":"Ara","toolbar.search.placeholder":"Dosya adı…","toolbar.view.list":"Liste","toolbar.view.grid":"Izgara","toolbar.refresh":"Yenile","toolbar.go_up":"Üst Klasör","ctx.open":"Aç","ctx.preview":"Önizle","ctx.download":"İndir","ctx.convert":"Dönüştür","ctx.rename":"Yeniden Adlandır","ctx.delete":"Sil","ctx.delete_perm":"Kalıcı Olarak Sil","ctx.restore":"Geri Getir","ctx.share":"Paylaş","ctx.move":"Taşı","ctx.copy":"Kopyala","ctx.cut":"Kes","ctx.show_hidden":"Gizli dosyaları göster","ctx.hide_hidden":"Gizli dosyaları gizle","ctx.paste":"Yapıştır","ctx.info":"Bilgi","ctx.duplicate":"Kopyasını Oluştur","ctx.new_file":"Yeni Dosya","modal.delete.title":"Silinsin mi?","modal.delete.message":"{count} öğe çöpe atılacak.","modal.delete.confirm":"Çöpe At","modal.delete.cancel":"Vazgeç","modal.rename.title":"Yeniden Adlandır","modal.rename.save":"Kaydet","modal.rename.cancel":"Vazgeç","modal.newfolder.title":"Yeni Klasör","modal.newfolder.placeholder":"Klasör adı","modal.newfolder.create":"Oluştur","modal.newfolder.cancel":"Vazgeç","modal.share.title":"Paylaşım Linki","modal.share.pin":"PIN koruması","modal.share.expires":"Son kullanma","modal.share.max_downloads":"İndirme limiti","modal.share.create":"Paylaş","modal.share.cancel":"Vazgeç","modal.share.copy":"Kopyala","modal.share.url_copied":"Link kopyalandı","modal.share.pin_copied":"PIN kopyalandı","modal.share.cli_copied":"CLI komutu kopyalandı","upload.progress":"Yükleniyor","upload.done":"Tamamlandı","upload.error":"Hata","upload.failed":"“{name}” yüklenemedi","upload.aborted":"İptal edildi","upload.cancel":"İptal","empty.folder":"Bu klasör boş","empty.search":"Sonuç bulunamadı",loading:"Yükleniyor…","notFound.title":"Klasör bulunamadı","notFound.desc":"Bu klasör mevcut değil, taşınmış ya da erişim yetkiniz yok.","notFound.goRoot":"Kök klasöre dön","col.name":"Ad","col.size":"Boyut","col.modified":"Tarih","col.type":"Tür","unit.bytes":"B","unit.kb":"KB","unit.mb":"MB","unit.gb":"GB","unit.tb":"TB","breadcrumb.root":"Kök","breadcrumb.copy_path":"Yolu Kopyala","breadcrumb.go_to_path":"Yola Git","breadcrumb.path_placeholder":"fileman/foo/bar","ops.copy":"Kopyalanıyor","ops.move":"Taşınıyor","ops.delete":"Siliniyor","ops.queued":"sırada","ops.done":"tamamlandı","ops.error":"hata","node.trash":"Çöp Kutusu","viewer.open_in_new_tab":"Yeni Sekmede Aç","viewer.loading":"Yükleniyor…","viewer.failed_to_load":"Dosya yüklenemedi","viewer.peer_not_installed":"Bu dosya tipi için opsiyonel kütüphane kurulu değil. Peer dependency yükle veya İndir düğmesini kullan.","viewer.format_unsupported_3d":"Bu 3B format tarayıcı önizlemesinde desteklenmiyor (model-viewer yalnızca .glb / .gltf / .usdz okur). Lütfen indirip yerel bir araçta açın.","viewer.zoom_in":"Yakınlaştır","viewer.zoom_out":"Uzaklaştır","viewer.fit_width":"Sayfa genişliğine sığdır","viewer.next_page":"Sonraki sayfa","viewer.prev_page":"Önceki sayfa","viewer.page_n_of_m":"Sayfa {n} / {m}","viewer.tags":"Etiketler","viewer.layers":"Katmanlar","viewer.toc":"İçindekiler","viewer.font_smaller":"Yazıyı küçült","viewer.font_larger":"Yazıyı büyüt","viewer.search":"Ara","viewer.download":"İndir","viewer.saving":"Kaydediliyor…","viewer.save":"Kaydet (Ctrl+S)","viewer.saved":"Kaydedildi","viewer.save_error":"Hata","viewer.editor_loading":"Editör yükleniyor…","viewer.no_preview":"Bu dosya tipi için önizleme henüz yok.","viewer.edit":"Düzenle","viewer.close":"Kapat","presence.expand":"İsimleri göster","presence.collapse":"Küçült","viewer.save_annotations":"Açıklamaları kaydet","viewer.annotations_on":"Açıklamalar: açık","viewer.annotations_off":"Açıklamalar: kapalı","viewer.read_only":"Salt okunur","viewer.csv_first_row_header":"İlk satır başlık olsun","viewer.csv_filter":"Satır filtrele…","viewer.epub_prev":"Önceki","viewer.epub_next":"Sonraki","viewer.drawio.disabled":"diagrams.net editörü bu filex kurulumunda yapılandırılmamış — yönetici FILEX_DRAWIO_URL'yi ayarlamalı.","viewer.archive.entries":"{n} dosya","viewer.archive.empty":"Arşiv boş.","viewer.archive.error":"Arşiv okunamadı.","viewer.name":"Ad","viewer.size":"Boyut","col.sort":"Sırala","group.today":"Bugün","group.yesterday":"Dün","group.this_week":"Bu Hafta","group.this_month":"Bu Ay","group.no_date":"Tarihsiz","toolbar.density.compact":"Sıkışık görünüm","toolbar.density.comfortable":"Rahat görünüm","palette.placeholder":"Dosya, klasör veya komut ara…","palette.files":"Dosyalar","palette.commands":"Komutlar","palette.goto":"Yola git","palette.empty":"Sonuç bulunamadı","palette.hint":"↑↓ gezin · Enter seç · Esc kapat","cmd.view_toggle":"Görünümü değiştir (liste ⇄ ızgara)","cmd.trash":"Çöp kutusunu aç","shortcuts.title":"Klavye Kısayolları","shortcuts.group.nav":"Gezinme","shortcuts.group.selection":"Seçim","shortcuts.group.file":"Dosya işlemleri","shortcuts.palette":"Komut paleti","shortcuts.search":"Aramaya odaklan","shortcuts.go_up":"Üst klasöre çık","shortcuts.open":"Seçili öğeyi aç","shortcuts.close":"Kapat / vazgeç","shortcuts.toggle_hidden":"Gizli dosyaları göster/gizle","shortcuts.help":"Bu yardım penceresi","shortcuts.select_all":"Tümünü seç","shortcuts.rename":"Yeniden adlandır","shortcuts.delete":"Sil","shortcuts.cut":"Kes","shortcuts.copy":"Kopyala","shortcuts.paste":"Yapıştır","breadcrumb.more":"Aradaki klasörler","empty.hint":"Dosyaları buraya sürükleyip bırakın","empty.upload":"Dosya yükle","empty.search.title":"Aramanla eşleşen dosya yok","empty.search.hint":"Farklı bir arama terimi deneyin","empty.trash.title":"Çöp kutusu boş","error.title":"Liste yüklenemedi","error.retry":"Yeniden dene","toast.undo":"Geri Al","toast.undone":"Geri alındı","toast.undo_failed":"Geri alınamadı","toast.renamed":"Yeniden adlandırıldı","toast.moved":"Taşındı","toast.trashed":"Çöpe taşındı","conn.offline":"Canlı bağlantı yok — değişiklikler gecikebilir","conn.tooltip":"Sunucuyla canlı bağlantı kurulamadı; liste belirli aralıklarla otomatik yenilenir. Bağlantı geri gelince bu uyarı kaybolur.","palette.everywhere":"Her yerde","palette.searching":"Aranıyor…","palette.saved":"Kayıtlı aramalar","palette.save":"Aramayı kaydet","palette.saved.delete":"Kayıtlı aramayı sil","search.in_content":"İçerikte","toolbar.more":"Diğer işlemler","toolbar.search.close":"Aramayı kapat","sheet.menu":"İşlemler","sheet.close":"Kapat","toolbar.inspector":"Ayrıntılar","ctx.details":"Ayrıntılar","shortcuts.inspector":"Ayrıntılar panelini aç/kapat","inspector.title":"Ayrıntılar","inspector.close":"Kapat","inspector.section.general":"Genel","inspector.section.versions":"Sürümler","inspector.section.permissions":"İzinler","inspector.section.shares":"Paylaşımlar","inspector.path":"Yol","inspector.size":"Boyut","inspector.modified":"Değiştirilme","inspector.mime":"MIME türü","inspector.etag":"ETag","inspector.copy":"Kopyala","inspector.copied":"Kopyalandı","inspector.error":"Yüklenemedi","inspector.items_summary":"{n} öğe, toplam {size}","inspector.folder_items":"{n} öğe","inspector.versions.empty":"Sürüm geçmişi yok","inspector.versions.v":"Sürüm {n}","inspector.versions.restore":"Geri yükle","inspector.versions.restore_confirm":"Bu sürüm geri yüklensin mi?","inspector.versions.snapshot_current":"Önce şimdiki halin sürümünü al","inspector.versions.confirm":"Onayla","inspector.versions.cancel":"Vazgeç","inspector.versions.take_snapshot":"Şimdiki halin sürümünü al","inspector.versions.restored":"Sürüm geri yüklendi","inspector.versions.snapshotted":"Sürüm alındı","inspector.versions.unsupported":"Sunucu bu işlemi desteklemiyor","inspector.perm.none":"Erişim yok","inspector.perm.viewer":"Görüntüleyen","inspector.perm.editor":"Düzenleyen","inspector.perm.owner":"Sahip","inspector.perm.manage":"İzinleri yönet","inspector.shares.empty":"Paylaşım linki yok","inspector.shares.copy":"Linki kopyala","theme.menu":"Tema","theme.title":"Tema Galerisi","theme.hint":"Tema yalnız renk paletini değiştirir; gündüz mü gece mi olduğu yukarıdaki seçim.","theme.mode.label":"Görünüm","theme.mode.light":"Gündüz","theme.mode.dark":"Gece","theme.mode.auto":"Otomatik","theme.reset":"Varsayılana dön","theme.close":"Kapat","theme.selected":"Seçili","theme.name.default":"Varsayılan","theme.name.night":"Gece Mavisi","theme.name.forest":"Orman","theme.name.amber":"Kehribar","theme.name.lilac":"Leylak","theme.name.contrast":"Yüksek Kontrast","theme.name.gray":"Yumuşak Gri","theme.name.terminal":"Terminal Yeşili","shortcuts.quicklook":"Hızlı bakış","shortcuts.customize":"Özelleştir","shortcuts.settings.menu":"Kısayollar","shortcuts.settings.title":"Kısayol Ayarları","shortcuts.settings.hint":'Bir kısayolu değiştirmek için "Değiştir"e basıp yeni tuş kombinasyonuna basın. Değişiklikler yalnızca bu tarayıcıda saklanır.',"shortcuts.settings.change":"Değiştir","shortcuts.settings.capture":"Tuşlara basın… (Esc iptal)","shortcuts.settings.reset":"Varsayılana dön","shortcuts.settings.reset_all":"Tümünü sıfırla","shortcuts.settings.unbound":"Atanmadı","shortcuts.settings.fixed":"Sabit","shortcuts.settings.customized":"Özelleştirildi","shortcuts.settings.conflict":'kombinasyonu "{name}" kısayolunda kullanılıyor.',"shortcuts.settings.conflict_fixed":'kombinasyonu "{name}" sabit kısayoluna ayrılmış — kullanılamaz.',"shortcuts.settings.conflict_take":"Eskisini boşa çıkar ve ata","shortcuts.settings.conflict_cancel":"Vazgeç","quicklook.hint_close":"kapat","quicklook.hint_nav":"önceki/sonraki","quicklook.hint_open":"aç","opc.title":"İşlemler","opc.aria_badge":"{n} işlem — işlem merkezini aç/kapat","opc.close":"Kapat","opc.active":"Sürüyor","opc.history":"Geçmiş","opc.clear":"Temizle","opc.empty":"İşlem yok","opc.cancel":"İptal","opc.retry":"Yeniden dene","opc.dismiss":"Kapat","opc.queued":"Sırada","opc.percent":"%{n}","opc.status.running":"Sürüyor","opc.status.done":"Bitti","opc.status.error":"Hata","opc.status.aborted":"İptal edildi","opc.kind.upload":"Yükleme","opc.kind.copy":"Kopyalama","opc.kind.move":"Taşıma","opc.kind.delete":"Silme","opc.kind.convert":"Dönüştürme","opc.kind.archive":"Arşiv","tour.aria":"Tanıtım turu","tour.restart":"Turu tekrar başlat","tour.skip":"Turu atla","tour.back":"Geri","tour.next":"İleri","tour.done":"Bitti","tour.progress":"{n} / {m}","tour.step.nav.title":"Depo ve klasörler","tour.step.nav.desc":"Bulunduğun konum burada görünür. Kırıntı çubuğundaki adımlara tıklayarak üst klasörlere ve depo köküne dönebilirsin.","tour.step.upload.title":"Dosya yükle","tour.step.upload.desc":"Bu düğmeyle dosya seçebilirsin; dosyaları doğrudan pencereye sürükleyip bırakmak da çalışır.","tour.step.search.title":"Arama","tour.step.search.desc":"Bu kutu bulunduğun klasörü filtreler. Ctrl+K komut paleti ile tüm depolarda arama yapabilir ve komut çalıştırabilirsin.","tour.step.view.title":"Görünümü değiştir","tour.step.view.desc":"Liste ve ızgara görünümü arasında geçiş yapabilirsin; seçimin hatırlanır.","tour.step.share.title":"Paylaşım","tour.step.share.desc":'Bir dosyaya sağ tıklayıp "Paylaş / İzinler" ile bağlantı oluşturabilir, PIN ve son kullanma süresi ekleyebilirsin.',"tour.step.help.title":"Kısayollar","tour.step.help.desc":'? tuşu kısayol kartını, Ctrl+K komut paletini açar. Bu turu menüdeki "Turu tekrar başlat" ile dilediğinde yeniden izleyebilirsin.',"error.hint":"Bağlantı ya da sunucu kaynaklı geçici bir sorun olabilir. Yeniden deneyin.","error.details":"Teknik ayrıntılar","col.star":"Yıldız","toolbar.view_label":"Görünüm","list.aria":"Dosya listesi","grid.aria":"Dosya ızgarası","tabs.strip":"Sekmeler","tabs.new":"Yeni sekme","tabs.close":"Sekmeyi kapat","tabs.split":"Görünümü böl","tabs.split_off":"Bölmeyi kapat","ctx.open_new_tab":"Yeni sekmede aç","shortcuts.group.tabs":"Sekmeler","shortcuts.tab_new":"Yeni sekme","shortcuts.tab_close":"Sekmeyi kapat","shortcuts.tab_next":"Sonraki sekme","shortcuts.tab_prev":"Önceki sekme","cmd.tab_new":"Yeni sekme aç","cmd.split_toggle":"Görünümü böl / birleştir","split.pane":"İkincil panel","split.close":"Yan paneli kapat","split.error":"Liste yüklenemedi","split.retry":"Yeniden dene","split.copy_queued":"Kopyalama kuyruğa alındı","split.cross_copy":"Depolar farklı — kopyalama kuyruğa alındı","split.cross_failed":"Depolar arası kopyalama bu sunucuda desteklenmiyor","toolbar.view.gallery":"Galeri","gallery.aria":"Dosya galerisi","inspector.section.comments":"Yorumlar","inspector.comments.empty":"Henüz yorum yok.","inspector.comments.placeholder":"Yorum yaz…","inspector.comments.send":"Gönder","inspector.comments.delete":"Yorumu sil","e2e.create.title":"Şifreli klasör oluştur","e2e.create.option":"Şifreli klasör oluştur…","e2e.create.pw_placeholder":"Klasör parolası (en az 8 karakter)","e2e.create.pw2_placeholder":"Parolayı tekrar girin","e2e.create.warn_title":"GERİ DÖNÜŞÜ YOK","e2e.create.warn_body":"Dosyalar yalnız bu parolayla açılır. Parola sunucuda TUTULMAZ; unutursanız içerik sonsuza dek kaybolur. Kurtarma yolu yoktur — yönetici dahil kimse açamaz.","e2e.create.ack":"Anladım: parolayı kaybedersem verilerim kurtarılamaz.","e2e.create.ack_required":"Devam etmek için uyarıyı onaylayın.","e2e.create.pw_short":"Parola en az 8 karakter olmalı.","e2e.create.pw_mismatch":"Parolalar birbirini tutmuyor.","e2e.create.bad_name":"Geçersiz klasör adı.","e2e.create.create":"Şifreli klasörü oluştur","e2e.create.busy":"Oluşturuluyor…","e2e.create.done":"Şifreli klasör oluşturuldu","e2e.create.failed":"Şifreli klasör oluşturulamadı","e2e.create.nested":"Şifreli klasörün içine ikinci bir şifreli klasör açılamaz.","e2e.locked.title":"Bu klasör uçtan uca şifreli","e2e.locked.hint":"İçeriği görmek için klasör parolasını girin. Parola yalnız bu sekmede, bellekte tutulur.","e2e.locked.pw_placeholder":"Klasör parolası","e2e.locked.unlock":"Kilidi aç","e2e.locked.busy":"Doğrulanıyor…","e2e.unlock.wrong":"Parola yanlış.","e2e.unlock.marker_missing":"Şifre dosyası (.filex-e2e.json) okunamadı.","e2e.strip.label":"Şifreli klasör — kilit açık","e2e.strip.lock":"Kilitle","e2e.locked_toast":"Klasör kilitlendi","e2e.upload.too_big":"200 MB üstü dosyalar şifreli klasöre yüklenemez (MVP sınırı)","e2e.upload.locked":"Önce klasörün kilidini açın","e2e.decrypting":"Çözülüyor…","e2e.decrypt_failed":"Dosya çözülemedi (parola değişmiş ya da dosya bozulmuş olabilir).","e2e.download.failed":"Şifreli dosya indirilemedi."},sf={"toolbar.new_folder":"New Folder","toolbar.upload":"Upload","toolbar.search":"Search","toolbar.search.placeholder":"File name…","toolbar.view.list":"List","toolbar.view.grid":"Grid","toolbar.refresh":"Refresh","toolbar.go_up":"Up one level","ctx.open":"Open","ctx.preview":"Preview","ctx.download":"Download","ctx.convert":"Convert","ctx.rename":"Rename","ctx.delete":"Delete","ctx.delete_perm":"Delete Permanently","ctx.restore":"Restore","ctx.share":"Share","ctx.move":"Move","ctx.copy":"Copy","ctx.cut":"Cut","ctx.show_hidden":"Show hidden files","ctx.hide_hidden":"Hide hidden files","ctx.paste":"Paste","ctx.info":"Info","ctx.duplicate":"Duplicate","ctx.new_file":"New File","modal.delete.title":"Delete?","modal.delete.message":"{count} item(s) will be moved to trash.","modal.delete.confirm":"Move to Trash","modal.delete.cancel":"Cancel","modal.rename.title":"Rename","modal.rename.save":"Save","modal.rename.cancel":"Cancel","modal.newfolder.title":"New Folder","modal.newfolder.placeholder":"Folder name","modal.newfolder.create":"Create","modal.newfolder.cancel":"Cancel","modal.share.title":"Share Link","modal.share.pin":"PIN protected","modal.share.expires":"Expires at","modal.share.max_downloads":"Download limit","modal.share.create":"Share","modal.share.cancel":"Cancel","modal.share.copy":"Copy","modal.share.url_copied":"Link copied","modal.share.pin_copied":"PIN copied","modal.share.cli_copied":"CLI command copied","upload.progress":"Uploading","upload.done":"Done","upload.error":"Error","upload.failed":"Could not upload “{name}”","upload.aborted":"Aborted","upload.cancel":"Cancel","empty.folder":"This folder is empty","empty.search":"No results",loading:"Loading…","notFound.title":"Folder not found","notFound.desc":"This folder does not exist, was moved, or you do not have access to it.","notFound.goRoot":"Go to root folder","col.name":"Name","col.size":"Size","col.modified":"Modified","col.type":"Type","unit.bytes":"B","unit.kb":"KB","unit.mb":"MB","unit.gb":"GB","unit.tb":"TB","breadcrumb.root":"Root","breadcrumb.copy_path":"Copy Path","breadcrumb.go_to_path":"Go To Path","breadcrumb.path_placeholder":"fileman/foo/bar","ops.copy":"Copying","ops.move":"Moving","ops.delete":"Deleting","ops.queued":"queued","ops.done":"done","ops.error":"error","node.trash":"Trash","viewer.open_in_new_tab":"Open in New Tab","viewer.loading":"Loading…","viewer.failed_to_load":"Failed to load file","viewer.peer_not_installed":"Optional viewer library is not installed. Install the peer dependency or use the download button.","viewer.format_unsupported_3d":"This 3D format is not supported in the browser preview (model-viewer only reads .glb / .gltf / .usdz). Please download and open with a local tool.","viewer.zoom_in":"Zoom in","viewer.zoom_out":"Zoom out","viewer.fit_width":"Fit width","viewer.next_page":"Next page","viewer.prev_page":"Previous page","viewer.page_n_of_m":"Page {n} of {m}","viewer.tags":"Tags","viewer.layers":"Layers","viewer.toc":"Contents","viewer.font_smaller":"Smaller text","viewer.font_larger":"Larger text","viewer.search":"Search","viewer.download":"Download","viewer.saving":"Saving…","viewer.save":"Save (Ctrl+S)","viewer.saved":"Saved","viewer.save_error":"Error","viewer.editor_loading":"Loading editor…","viewer.no_preview":"No preview for this file type yet.","viewer.edit":"Edit","viewer.close":"Close","presence.expand":"Show names","presence.collapse":"Collapse","viewer.save_annotations":"Save annotations","viewer.annotations_on":"Annotations: on","viewer.annotations_off":"Annotations: off","viewer.read_only":"Read only","viewer.csv_first_row_header":"First row as header","viewer.csv_filter":"Filter rows…","viewer.epub_prev":"Previous","viewer.epub_next":"Next","viewer.drawio.disabled":"diagrams.net embed is not configured for this filex instance — operator must wire FILEX_DRAWIO_URL to enable the editor.","viewer.archive.entries":"{n} files","viewer.archive.empty":"Archive is empty.","viewer.archive.error":"Could not read archive contents.","viewer.name":"Name","viewer.size":"Size","col.sort":"Sort","group.today":"Today","group.yesterday":"Yesterday","group.this_week":"This Week","group.this_month":"This Month","group.no_date":"No date","toolbar.density.compact":"Compact view","toolbar.density.comfortable":"Comfortable view","palette.placeholder":"Search files, folders or commands…","palette.files":"Files","palette.commands":"Commands","palette.goto":"Go to path","palette.empty":"No results","palette.hint":"↑↓ navigate · Enter select · Esc close","cmd.view_toggle":"Toggle view (list ⇄ grid)","cmd.trash":"Open trash","shortcuts.title":"Keyboard Shortcuts","shortcuts.group.nav":"Navigation","shortcuts.group.selection":"Selection","shortcuts.group.file":"File operations","shortcuts.palette":"Command palette","shortcuts.search":"Focus search","shortcuts.go_up":"Go up one level","shortcuts.open":"Open selected item","shortcuts.close":"Close / cancel","shortcuts.toggle_hidden":"Show/hide hidden files","shortcuts.help":"This help dialog","shortcuts.select_all":"Select all","shortcuts.rename":"Rename","shortcuts.delete":"Delete","shortcuts.cut":"Cut","shortcuts.copy":"Copy","shortcuts.paste":"Paste","breadcrumb.more":"Hidden folders","empty.hint":"Drag and drop files here","empty.upload":"Upload files","empty.search.title":"No files match your search","empty.search.hint":"Try a different search term","empty.trash.title":"Trash is empty","error.title":"Could not load this folder","error.retry":"Try again","toast.undo":"Undo","toast.undone":"Undone","toast.undo_failed":"Could not undo","toast.renamed":"Renamed","toast.moved":"Moved","toast.trashed":"Moved to trash","conn.offline":"No live connection — changes may be delayed","conn.tooltip":"Live connection to the server is unavailable; the list refreshes periodically. This notice disappears once the connection is back.","palette.everywhere":"Everywhere","palette.searching":"Searching…","palette.saved":"Saved searches","palette.save":"Save search","palette.saved.delete":"Delete saved search","search.in_content":"In content","toolbar.more":"More actions","toolbar.search.close":"Close search","sheet.menu":"Actions","sheet.close":"Close","toolbar.inspector":"Details","ctx.details":"Details","shortcuts.inspector":"Toggle details panel","inspector.title":"Details","inspector.close":"Close","inspector.section.general":"General","inspector.section.versions":"Versions","inspector.section.permissions":"Permissions","inspector.section.shares":"Shares","inspector.path":"Path","inspector.size":"Size","inspector.modified":"Modified","inspector.mime":"MIME type","inspector.etag":"ETag","inspector.copy":"Copy","inspector.copied":"Copied","inspector.error":"Could not load","inspector.items_summary":"{n} items, {size} total","inspector.folder_items":"{n} items","inspector.versions.empty":"No version history","inspector.versions.v":"Version {n}","inspector.versions.restore":"Restore","inspector.versions.restore_confirm":"Restore this version?","inspector.versions.snapshot_current":"Snapshot the current state first","inspector.versions.confirm":"Confirm","inspector.versions.cancel":"Cancel","inspector.versions.take_snapshot":"Snapshot current state","inspector.versions.restored":"Version restored","inspector.versions.snapshotted":"Snapshot taken","inspector.versions.unsupported":"The server does not support this operation","inspector.perm.none":"No access","inspector.perm.viewer":"Viewer","inspector.perm.editor":"Editor","inspector.perm.owner":"Owner","inspector.perm.manage":"Manage permissions","inspector.shares.empty":"No share links","inspector.shares.copy":"Copy link","theme.menu":"Theme","theme.title":"Theme Gallery","theme.hint":"A theme only changes the colour palette — day or night is the choice above.","theme.mode.label":"Appearance","theme.mode.light":"Day","theme.mode.dark":"Night","theme.mode.auto":"Automatic","theme.reset":"Reset to default","theme.close":"Close","theme.selected":"Selected","theme.name.default":"Default","theme.name.night":"Night Blue","theme.name.forest":"Forest","theme.name.amber":"Amber","theme.name.lilac":"Lilac","theme.name.contrast":"High Contrast","theme.name.gray":"Soft Gray","theme.name.terminal":"Terminal Green","shortcuts.quicklook":"Quick look","shortcuts.customize":"Customize","shortcuts.settings.menu":"Shortcuts","shortcuts.settings.title":"Shortcut Settings","shortcuts.settings.hint":'To remap a shortcut, press "Change" and then the new key combination. Changes are stored in this browser only.',"shortcuts.settings.change":"Change","shortcuts.settings.capture":"Press keys… (Esc cancels)","shortcuts.settings.reset":"Reset to default","shortcuts.settings.reset_all":"Reset all","shortcuts.settings.unbound":"Not set","shortcuts.settings.fixed":"Fixed","shortcuts.settings.customized":"Customized","shortcuts.settings.conflict":'is already used by "{name}".',"shortcuts.settings.conflict_fixed":'is reserved by the fixed shortcut "{name}" — it cannot be used.',"shortcuts.settings.conflict_take":"Unassign old and use here","shortcuts.settings.conflict_cancel":"Cancel","quicklook.hint_close":"close","quicklook.hint_nav":"previous/next","quicklook.hint_open":"open","opc.title":"Operations","opc.aria_badge":"{n} operations — toggle operations center","opc.close":"Close","opc.active":"In progress","opc.history":"History","opc.clear":"Clear","opc.empty":"No operations","opc.cancel":"Cancel","opc.retry":"Retry","opc.dismiss":"Dismiss","opc.queued":"Queued","opc.percent":"{n}%","opc.status.running":"In progress","opc.status.done":"Done","opc.status.error":"Failed","opc.status.aborted":"Cancelled","opc.kind.upload":"Upload","opc.kind.copy":"Copy","opc.kind.move":"Move","opc.kind.delete":"Delete","opc.kind.convert":"Convert","opc.kind.archive":"Archive","tour.aria":"Onboarding tour","tour.restart":"Restart the tour","tour.skip":"Skip tour","tour.back":"Back","tour.next":"Next","tour.done":"Done","tour.progress":"{n} / {m}","tour.step.nav.title":"Storages & folders","tour.step.nav.desc":"Your current location lives here. Click any crumb to jump back to parent folders or the storage root.","tour.step.upload.title":"Upload files","tour.step.upload.desc":"Pick files with this button — or simply drag & drop them anywhere in the window.","tour.step.search.title":"Search","tour.step.search.desc":"This box filters the current folder. The Ctrl+K command palette searches across all storages and runs commands.","tour.step.view.title":"Switch views","tour.step.view.desc":"Toggle between the list and grid layout; your choice is remembered.","tour.step.share.title":"Sharing","tour.step.share.desc":'Right-click any file and use "Share / Permissions" to create a link with an optional PIN and expiry.',"tour.step.help.title":"Shortcuts","tour.step.help.desc":'Press ? for the shortcut cheat-sheet and Ctrl+K for the command palette. Replay this tour any time via "Restart the tour" in the menu.',"error.hint":"This may be a temporary network or server problem. Please try again.","error.details":"Technical details","col.star":"Star","toolbar.view_label":"View","list.aria":"File list","grid.aria":"File grid","tabs.strip":"Tabs","tabs.new":"New tab","tabs.close":"Close tab","tabs.split":"Split view","tabs.split_off":"Close split","ctx.open_new_tab":"Open in new tab","shortcuts.group.tabs":"Tabs","shortcuts.tab_new":"New tab","shortcuts.tab_close":"Close tab","shortcuts.tab_next":"Next tab","shortcuts.tab_prev":"Previous tab","cmd.tab_new":"Open a new tab","cmd.split_toggle":"Toggle split view","split.pane":"Secondary pane","split.close":"Close the side pane","split.error":"Could not load the listing","split.retry":"Retry","split.copy_queued":"Copy queued","split.cross_copy":"Different storages — copy queued instead","split.cross_failed":"Cross-storage copy is not supported by this server","toolbar.view.gallery":"Gallery","gallery.aria":"File gallery","inspector.section.comments":"Comments","inspector.comments.empty":"No comments yet.","inspector.comments.placeholder":"Write a comment…","inspector.comments.send":"Send","inspector.comments.delete":"Delete comment","e2e.create.title":"Create encrypted folder","e2e.create.option":"Create encrypted folder…","e2e.create.pw_placeholder":"Folder password (min 8 characters)","e2e.create.pw2_placeholder":"Repeat the password","e2e.create.warn_title":"NO WAY BACK","e2e.create.warn_body":"Files open ONLY with this password. The password is NEVER stored on the server; if you forget it the content is lost forever. There is no recovery — not even an admin can open it.","e2e.create.ack":"I understand: if I lose the password my data cannot be recovered.","e2e.create.ack_required":"Please confirm the warning to continue.","e2e.create.pw_short":"Password must be at least 8 characters.","e2e.create.pw_mismatch":"Passwords do not match.","e2e.create.bad_name":"Invalid folder name.","e2e.create.create":"Create encrypted folder","e2e.create.busy":"Creating…","e2e.create.done":"Encrypted folder created","e2e.create.failed":"Could not create the encrypted folder","e2e.create.nested":"You cannot create an encrypted folder inside another one.","e2e.locked.title":"This folder is end-to-end encrypted","e2e.locked.hint":"Enter the folder password to see its contents. The password stays in this tab’s memory only.","e2e.locked.pw_placeholder":"Folder password","e2e.locked.unlock":"Unlock","e2e.locked.busy":"Verifying…","e2e.unlock.wrong":"Wrong password.","e2e.unlock.marker_missing":"Could not read the key file (.filex-e2e.json).","e2e.strip.label":"Encrypted folder — unlocked","e2e.strip.lock":"Lock","e2e.locked_toast":"Folder locked","e2e.upload.too_big":"Files over 200 MB cannot be uploaded to an encrypted folder (MVP limit)","e2e.upload.locked":"Unlock the folder first","e2e.decrypting":"Decrypting…","e2e.decrypt_failed":"Could not decrypt the file (password changed or file corrupted).","e2e.download.failed":"Could not download the encrypted file."},nc={tr:lf,en:sf};function qt(e){const t=r.computed(()=>{const o=typeof e=="function"?e():e.value;return nc[o]??nc.tr});function n(o,s={}){const l=t.value[o]??o;return Object.entries(s).reduce((c,[d,u])=>c.replaceAll(`{${d}}`,String(u)),l)}function a(o){if(o==null||o<0)return"—";if(o===0)return`0 ${n("unit.bytes")}`;const s=[[1024**4,"unit.tb"],[1024**3,"unit.gb"],[1024**2,"unit.mb"],[1024,"unit.kb"],[1,"unit.bytes"]];for(const[l,c]of s)if(o>=l){const d=o/l;return`${d>=100?Math.round(d):d.toFixed(d>=10?1:2)} ${n(c)}`}return`${o} ${n("unit.bytes")}`}function i(o){if(o.basename===".trash")return n("node.trash");const s=o.basename.match(/^\d{8}-\d{6}-[A-Za-z0-9]+__(.+)$/);return s?s[1]:o.basename}return{t:n,formatSize:a,nodeDisplayName:i}}const Cy=2e3,Ny=8e3;function cf(e){const t=(...l)=>{for(const c of l)if(typeof c=="number")return c;return 0},n=(...l)=>{for(const c of l)if(typeof c=="string"&&c!=="")return c;return null},a=String(e.status??"pending"),i=a==="ok"||a==="done"?"done":a==="failed"||a==="partial"||a==="error"?"error":a==="running"?"running":"pending",o=Array.isArray(e.sources)?e.sources:[],s=n(e.op_type,e.kind)??"delete";return{id:t(e.id),op_type:s==="copy"||s==="move"?s:"delete",status:i,progress_total:t(e.progress_total,e.total,o.length),progress_done:t(e.progress_done,e.done),target_path:n(e.target_path,e.dest),source_dir:n(e.source_dir),source_count:t(e.source_count,o.length),error_message:n(e.error_message,e.error),started_at:n(e.started_at),finished_at:n(e.finished_at),created_at:n(e.created_at)}}function df(e,t,n={}){const a=r.ref([]),i=new Set,o=new Map;let s=!1;const l=r.computed(()=>a.value.some(w=>w.status==="pending"||w.status==="running"));let c;function d(){c||t.endpoints.opsList&&(c=setInterval(()=>{h()},Cy),h())}function u(){c&&(clearInterval(c),c=void 0)}async function h(){var w;if(t.endpoints.opsList)try{const v=((await t.jsonFetch(t.endpoints.opsList)).ops||[]).map(cf);for(const E of v)(E.status==="done"||E.status==="error")&&!i.has(E.id)&&(i.add(E.id),o.set(E.id,Date.now()),s&&((w=n.onSettled)==null||w.call(n,E)));const m=new Set(a.value.map(E=>E.id)),b=v.filter(E=>E.status==="pending"||E.status==="running"?!0:s?m.has(E.id):!1),y=new Set(b.map(E=>E.id)),_=a.value.filter(E=>!y.has(E.id)),S=[...b,..._];s=!0;const A=Date.now(),T=S.filter(E=>{if(E.status==="pending"||E.status==="running")return!0;const k=o.get(E.id);return k!==void 0&&A-k<Ny});a.value=T,!l.value&&T.length===0&&u()}catch(g){console.warn("[usePendingOps] poll failed:",g)}}function f(w){const g=cf(w);a.value.some(m=>m.id===g.id)||(a.value=[g,...a.value]),d()}function p(w){a.value=a.value.filter(g=>g.id!==w),o.delete(w)}return r.onBeforeUnmount(()=>{u()}),{ops:a,hasActive:l,register:f,dismiss:p,poll:h,startPolling:d,stopPolling:u}}const Ty=25e3,Ay=15e3,Dy=6;class My{constructor(t){kr(this,"ws",null);kr(this,"opts");kr(this,"closed",!1);kr(this,"connecting",!1);kr(this,"retries",0);kr(this,"fallback",!1);kr(this,"pingTimer",null);kr(this,"reconnectTimer",null);kr(this,"currentPath",null);kr(this,"currentFocus",null);this.opts=t,this.connect()}subscribe(t){this.currentPath=t,this.currentFocus=null,t&&this.send({type:"subscribe",path:t})}setFocus(t){this.currentFocus=t,this.send({type:"focus",file:t})}close(){this.closed=!0,this.clearTimers(),this.dropSocket()}async connect(){if(this.closed||this.connecting||this.ws)return;this.connecting=!0;let t=null;try{t=await this.opts.getTicket()}catch{t=null}if(this.connecting=!1,this.closed)return;if(!t||!t.ticket||!t.ws_url){this.fail();return}const n=t.ws_url.includes("?")?"&":"?";let a;try{a=new WebSocket(`${t.ws_url}${n}ticket=${encodeURIComponent(t.ticket)}`)}catch{this.fail();return}this.ws=a,a.onopen=()=>{var i,o;this.retries=0,this.setFallback(!1),(o=(i=this.opts.handlers).onStatus)==null||o.call(i,!0),this.currentPath&&this.send({type:"subscribe",path:this.currentPath}),this.currentFocus!==null&&this.send({type:"focus",file:this.currentFocus}),this.startPing()},a.onmessage=i=>{var l,c,d,u;let o;try{o=JSON.parse(typeof i.data=="string"?i.data:"")}catch{return}const s=o;(s==null?void 0:s.type)==="change"?(c=(l=this.opts.handlers).onChange)==null||c.call(l,o):(s==null?void 0:s.type)==="presence"&&((u=(d=this.opts.handlers).onPresence)==null||u.call(d,o))},a.onerror=()=>{},a.onclose=()=>{var i,o;this.stopPing(),this.ws=null,(o=(i=this.opts.handlers).onStatus)==null||o.call(i,!1),this.fail()}}fail(){if(this.closed||this.reconnectTimer)return;if(this.retries>=Dy){this.setFallback(!0);return}const t=Math.min(1e3*2**this.retries,Ay);this.retries+=1,this.reconnectTimer=setTimeout(()=>{this.reconnectTimer=null,this.connect()},t)}setFallback(t){var n,a;this.fallback!==t&&(this.fallback=t,(a=(n=this.opts.handlers).onFallback)==null||a.call(n,t))}send(t){const n=this.ws;if(!(!n||n.readyState!==WebSocket.OPEN))try{n.send(JSON.stringify(t))}catch{}}startPing(){this.stopPing(),this.pingTimer=setInterval(()=>this.send({type:"ping"}),Ty)}stopPing(){this.pingTimer&&(clearInterval(this.pingTimer),this.pingTimer=null)}dropSocket(){if(this.ws){try{this.ws.onclose=null,this.ws.close()}catch{}this.ws=null}}clearTimers(){this.stopPing(),this.reconnectTimer&&(clearTimeout(this.reconnectTimer),this.reconnectTimer=null)}}const By=200,Oy=12e3;function Iy(e,t){const n=r.ref([]),a=r.ref(!1),i=r.ref(!1);let o=null,s=null,l=null,c=null;function d(){l&&clearTimeout(l),l=setTimeout(()=>{l=null,t.reload()},By)}function u(v){s&&v.path&&v.path!==s||(n.value=Array.isArray(v.users)?v.users:[])}function h(v){i.value=v,v?(n.value=[],c||(c=setInterval(()=>t.reload(),Oy))):c&&(clearInterval(c),c=null)}function f(){o||(o=new My({getTicket:()=>e.wsTicket(),handlers:{onChange:d,onPresence:u,onFallback:h,onStatus:v=>{a.value=v}}}))}function p(v){n.value=[],s=v,o==null||o.subscribe(v)}function w(v){o==null||o.setFocus(v)}function g(){l&&(clearTimeout(l),l=null),c&&(clearInterval(c),c=null),o==null||o.close(),o=null,i.value=!1}return{presenceUsers:n,connected:a,degraded:i,start:f,subscribe:p,setFocus:w,stop:g}}const Ry=500;function Ly(e,t){const n=r.ref({}),a=[],i=new Set,o=new Set;function s(d){if(/^https?:\/\//i.test(d))return d;const u=(e||"").replace(/\/+$/,"");return u&&d.startsWith("/")?u+d:d}function l(d){const u=d.thumb_url;if(!u)return null;const h=n.value[u];return h||(!i.has(u)&&!o.has(u)&&c(u),null)}async function c(d){o.add(d);try{const u=await fetch(s(d),{headers:await t.authHeaders({Accept:"*/*"}),credentials:t.credentialsMode()});if(!u.ok)throw new Error(String(u.status));const h=await u.blob();if(a.length>=Ry){const f=a.shift();if(f&&n.value[f]){URL.revokeObjectURL(n.value[f]);const p={...n.value};delete p[f],n.value=p}}a.push(d),n.value={...n.value,[d]:URL.createObjectURL(h)}}catch{i.add(d)}finally{o.delete(d)}}return{src:l}}let Qo=null,el=null,tl=null,nl=null;function Zi(){Qo||(Qo=import("monaco-editor").then(e=>(tl=e.default??e,tl)).catch(()=>(tl=null,null))),el||(el=Promise.resolve().then(()=>wS).then(e=>(nl=e.default??e,nl)).catch(()=>(nl=null,null)))}async function rl(){return Qo||Zi(),Qo}async function al(){return el||Zi(),el}function rc(){return tl}function uf(){return nl}function Fy(){return Zi(),{ensureMonaco:rl,ensureHighlight:al,getMonaco:rc,getHighlight:uf}}const zy={key:0,class:"fx-presence-chips"},Py=["title"],$y={key:0,class:"fx-presence-dot","aria-hidden":"true"},Vy={class:"fx-presence-chip-name"},Uy={key:0,class:"fx-presence-chip-file"},Hy=["title"],Gy=["title"],qy={key:0,class:"fx-presence-dot","aria-hidden":"true"},Ky={key:0,class:"fx-presence-more"},Wy=["title"],Yy={class:"fx-presence-file"},jy=["title","aria-expanded"],ff="filex.presence.expanded",Xy=r.defineComponent({__name:"PresenceBar",props:{users:{},selfId:{},locale:{}},setup(e){const t=e,{t:n}=qt(()=>t.locale??"tr"),a=r.computed(()=>(t.users??[]).filter(u=>t.selfId==null||u.id!==t.selfId)),i=r.ref((()=>{try{return localStorage.getItem(ff)==="1"}catch{return!1}})());function o(){i.value=!i.value;try{localStorage.setItem(ff,i.value?"1":"0")}catch{}}function s(u){return u.uid??String(u.id)}function l(u){const h=u.trim().split(/\s+/).filter(Boolean);return h.length===0?"?":h.length===1?h[0].slice(0,2).toUpperCase():(h[0][0]+h[h.length-1][0]).toUpperCase()}function c(u){const h=s(u);let f=0;for(let p=0;p<h.length;p++)f=f*31+h.charCodeAt(p)>>>0;return f%360}function d(u){return u.file?`${u.name} · ${u.file}`:u.name}return(u,h)=>a.value.length?(r.openBlock(),r.createElementBlock("div",{key:0,class:r.normalizeClass(["fx-presence",{"fx-presence--wide":i.value}])},[i.value?(r.openBlock(),r.createElementBlock("div",zy,[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(a.value,f=>(r.openBlock(),r.createElementBlock("span",{key:s(f),class:"fx-presence-chip",title:d(f)},[r.createElementVNode("span",{class:"fx-presence-avatar",style:r.normalizeStyle({backgroundColor:`hsl(${c(f)} 60% 45%)`})},[r.createTextVNode(r.toDisplayString(l(f.name))+" ",1),f.file?(r.openBlock(),r.createElementBlock("span",$y)):r.createCommentVNode("",!0)],4),r.createElementVNode("span",Vy,r.toDisplayString(f.name),1),f.file?(r.openBlock(),r.createElementBlock("span",Uy,"· "+r.toDisplayString(f.file),1)):r.createCommentVNode("",!0)],8,Py))),128))])):(r.openBlock(),r.createElementBlock(r.Fragment,{key:1},[r.createElementVNode("div",{class:"fx-presence-avatars",title:a.value.map(d).join(", ")},[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(a.value.slice(0,5),f=>(r.openBlock(),r.createElementBlock("span",{key:s(f),class:"fx-presence-avatar",style:r.normalizeStyle({backgroundColor:`hsl(${c(f)} 60% 45%)`}),title:d(f)},[r.createTextVNode(r.toDisplayString(l(f.name))+" ",1),f.file?(r.openBlock(),r.createElementBlock("span",qy)):r.createCommentVNode("",!0)],12,Gy))),128)),a.value.length>5?(r.openBlock(),r.createElementBlock("span",Ky,"+"+r.toDisplayString(a.value.length-5),1)):r.createCommentVNode("",!0)],8,Hy),r.createElementVNode("span",{class:"fx-presence-text",title:a.value.map(d).join(", ")},[r.createTextVNode(r.toDisplayString(a.value.length===1?a.value[0].name:`${a.value.length} kişi`)+" ",1),a.value.length===1&&a.value[0].file?(r.openBlock(),r.createElementBlock(r.Fragment,{key:0},[h[0]||(h[0]=r.createTextVNode(" · ",-1)),r.createElementVNode("span",Yy,r.toDisplayString(a.value[0].file),1)],64)):r.createCommentVNode("",!0)],8,Wy)],64)),r.createElementVNode("button",{type:"button",class:"fx-presence-toggle",title:i.value?r.unref(n)("presence.collapse"):r.unref(n)("presence.expand"),"aria-expanded":i.value,onClick:o},r.toDisplayString(i.value?"‹":"›"),9,jy)],2)):r.createCommentVNode("",!0)}}),Zy=["data-prefers-dark"],Jy=["aria-label"],Qy=["aria-label","onKeydown"],e4={class:"fe-sheet__items"},t4={key:0,class:"fe-ctx__sep",role:"separator"},n4=["disabled","onClick"],r4={key:0,class:"fe-ctx__icon","aria-hidden":"true"},a4={class:"fe-ctx__label"},i4=["aria-label"],o4={key:0,class:"fe-ctx__sep",role:"separator"},l4=["disabled","onClick"],s4={key:0,class:"fe-ctx__icon","aria-hidden":"true"},c4={class:"fe-ctx__label"},ac=r.defineComponent({__name:"ContextMenu",props:{locale:{},actions:{},theme:{},sheet:{type:Boolean}},emits:["select"],setup(e,{expose:t,emit:n}){const a=e,i=n,{t:o}=qt(()=>a.locale),s=r.ref(!1),l=r.ref(0),c=r.ref(0),d=r.ref([]),u=r.ref(null);let h=0,f=0,p=null;async function w(V,F){var I;if(p=document.activeElement??null,s.value=!0,l.value=V.clientX,c.value=V.clientY,h=V.clientX,f=V.clientY,d.value=F,await r.nextTick(),a.sheet){(I=_.value)==null||I.focus();return}g(),b(0)}function g(){const V=u.value;if(!V||typeof window>"u")return;const F=V.getBoundingClientRect(),I=8,H=window.innerWidth,G=window.innerHeight;if(f+F.height>G-I){const oe=f-F.height;c.value=oe>=I?oe:Math.max(I,G-F.height-I)}if(h+F.width>H-I){const oe=h-F.width;l.value=oe>=I?oe:Math.max(I,H-F.width-I)}}function v(){var V;s.value=!1,S.value=!1,A.value=0,(V=p==null?void 0:p.focus)==null||V.call(p),p=null}function m(){const V=a.sheet?_.value:u.value;return V?Array.from(V.querySelectorAll(".fe-ctx__item:not(:disabled)")):[]}function b(V){var H;const F=m();if(F.length===0)return;const I=(V%F.length+F.length)%F.length;(H=F[I])==null||H.focus()}function y(V){const F=m();if(F.length===0)return;const I=document.activeElement,H=I?F.indexOf(I):-1;if(H===-1){b(V>0?0:F.length-1);return}b(H+V)}const _=r.ref(null),S=r.ref(!1),A=r.ref(0);let T=0;function E(V){const F=V.touches[0];F&&(S.value=!0,T=F.clientY,A.value=0)}function k(V){if(!S.value)return;const F=V.touches[0];F&&(A.value=Math.max(0,F.clientY-T))}function N(){if(!S.value)return;const V=A.value>72;S.value=!1,V?v():A.value=0}const D=r.computed(()=>A.value>0?{transform:`translateY(${A.value}px)`,transition:"none"}:void 0);function U(V){V.disabled||(i("select",V,d.value),v())}function L(V){if(V.key==="Escape"){V.stopPropagation(),v();return}if(V.key==="Enter"||V.key===" "){V.stopPropagation();return}V.key==="ArrowDown"?(V.preventDefault(),V.stopPropagation(),y(1)):V.key==="ArrowUp"?(V.preventDefault(),V.stopPropagation(),y(-1)):V.key==="Home"?(V.preventDefault(),b(0)):V.key==="End"?(V.preventDefault(),b(-1)):V.key==="Tab"&&(V.preventDefault(),v())}const q=r.computed(()=>{const V=a.actions.filter(I=>!I.hidden),F=[];for(const I of V)I.divider&&(F.length===0||F[F.length-1].divider)||F.push(I);for(;F.length>0&&F[F.length-1].divider;)F.pop();return F}),X=r.ref(!1);let $;function j(V){X.value=!!(V&&"matches"in V&&V.matches)}r.onMounted(()=>{var V;typeof window>"u"||($=window.matchMedia("(prefers-color-scheme: dark)"),j($),(V=$.addEventListener)==null||V.call($,"change",j))}),r.onBeforeUnmount(()=>{var V;(V=$==null?void 0:$.removeEventListener)==null||V.call($,"change",j)});const J=r.computed(()=>`fe-ctx-backdrop--theme-${a.theme||"auto"}`);return t({show:w,hide:v}),(V,F)=>(r.openBlock(),r.createBlock(r.Teleport,{to:"body"},[r.createVNode(r.Transition,{name:e.sheet?"fe-sheet":"fe-ctx"},{default:r.withCtx(()=>[s.value?(r.openBlock(),r.createElementBlock("div",{key:0,class:r.normalizeClass(["fe-ctx-backdrop",[J.value,{"fe-ctx-backdrop--sheet":e.sheet}]]),"data-prefers-dark":X.value?"1":"0",onClick:v,onContextmenu:r.withModifiers(v,["prevent"]),onKeydown:L},[e.sheet?(r.openBlock(),r.createElementBlock("div",{key:0,ref_key:"sheetEl",ref:_,class:"fe-sheet",role:"menu","aria-label":r.unref(o)("sheet.menu"),tabindex:"-1",style:r.normalizeStyle(D.value),onClick:F[0]||(F[0]=r.withModifiers(()=>{},["stop"]))},[r.createElementVNode("div",{class:"fe-sheet__handle",role:"button",tabindex:"0","aria-label":r.unref(o)("sheet.close"),onClick:v,onKeydown:r.withKeys(r.withModifiers(v,["prevent"]),["enter"]),onTouchstartPassive:E,onTouchmovePassive:k,onTouchend:N,onTouchcancel:N},null,40,Qy),r.createElementVNode("div",e4,[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(q.value,(I,H)=>(r.openBlock(),r.createElementBlock(r.Fragment,{key:I.key||H},[I.divider?(r.openBlock(),r.createElementBlock("div",t4)):(r.openBlock(),r.createElementBlock("button",{key:1,type:"button",class:r.normalizeClass(["fe-ctx__item fe-sheet__item",{"is-danger":I.danger,"is-disabled":I.disabled}]),disabled:I.disabled,role:"menuitem",onClick:G=>U(I)},[I.icon?(r.openBlock(),r.createElementBlock("span",r4,r.toDisplayString(I.icon),1)):r.createCommentVNode("",!0),r.createElementVNode("span",a4,r.toDisplayString(I.label),1)],10,n4))],64))),128))])],12,Jy)):(r.openBlock(),r.createElementBlock("div",{key:1,ref_key:"menuEl",ref:u,class:"fe-ctx",role:"menu","aria-orientation":"vertical","aria-label":r.unref(o)("sheet.menu"),style:r.normalizeStyle({top:c.value+"px",left:l.value+"px"}),onClick:F[1]||(F[1]=r.withModifiers(()=>{},["stop"]))},[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(q.value,(I,H)=>(r.openBlock(),r.createElementBlock(r.Fragment,{key:I.key||H},[I.divider?(r.openBlock(),r.createElementBlock("div",o4)):(r.openBlock(),r.createElementBlock("button",{key:1,type:"button",class:r.normalizeClass(["fe-ctx__item",{"is-danger":I.danger,"is-disabled":I.disabled}]),disabled:I.disabled,role:"menuitem",onClick:G=>U(I)},[I.icon?(r.openBlock(),r.createElementBlock("span",s4,r.toDisplayString(I.icon),1)):r.createCommentVNode("",!0),r.createElementVNode("span",c4,r.toDisplayString(I.label),1)],10,l4))],64))),128))],12,i4))],42,Zy)):r.createCommentVNode("",!0)]),_:1},8,["name"])]))}}),d4=["title","aria-label"],u4=["title"],f4={class:"fe-btn__label"},h4=["disabled","title","onClick"],p4={class:"fe-icon"},m4={class:"fe-btn__label"},g4=["title","aria-label"],b4={class:"fe-icon"},v4={class:"fe-btn__label"},y4=["title"],_4={class:"fe-btn__label"},w4={class:"fe-toolbar__search-group"},k4={class:"fe-search"},E4=["placeholder","value","aria-label"],x4=["title","aria-label"],S4=["title","aria-label"],C4=["aria-pressed","aria-label","title"],N4={key:0,class:"fe-ficon",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"1.8","stroke-linecap":"round","aria-hidden":"true",focusable:"false"},T4={key:1,class:"fe-ficon",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"1.8","stroke-linecap":"round","aria-hidden":"true",focusable:"false"},A4=["aria-pressed","title","aria-label"],D4=["title","aria-label"],M4=["aria-label"],B4=["aria-selected","title","aria-label"],O4=["aria-selected","title","aria-label"],I4=["aria-selected","title","aria-label"],R4={class:"fe-search fe-search--full"},L4=["placeholder","value","aria-label","onKeydown"],F4=["title","aria-label"],z4=["title","aria-label"],P4=["title","aria-label"],$4=["title","aria-label"],V4=["title","aria-label"],hf="filex.density",U4=40,H4=r.defineComponent({__name:"Toolbar",props:{viewMode:{},searchQuery:{},trashActive:{type:Boolean},actions:{},selectionMode:{},pasteEnabled:{type:Boolean},convertEnabled:{type:Boolean},canGoUp:{type:Boolean},atVirtualRoot:{type:Boolean},canWrite:{type:Boolean},locale:{},narrow:{type:Boolean},theme:{},inspectorOpen:{type:Boolean}},emits:["update:viewMode","update:searchQuery","new-folder","upload","refresh","go-up","action","open-recents","update:density","toggle-inspector","open-theme","open-shortcut-settings"],setup(e,{expose:t,emit:n}){const a=e,i=n,o=r.ref((()=>{try{return localStorage.getItem(hf)==="compact"?"compact":"comfortable"}catch{return"comfortable"}})());r.onMounted(()=>i("update:density",o.value));function s(){o.value=o.value==="compact"?"comfortable":"compact";try{localStorage.setItem(hf,o.value)}catch{}i("update:density",o.value)}const{t:l}=qt(()=>a.locale),c=r.ref(null),d=r.ref(a.searchQuery);r.watch(()=>a.searchQuery,I=>{d.value=I});let u;function h(I){const H=I.target.value;d.value=H,u&&clearTimeout(u),u=setTimeout(()=>i("update:searchQuery",H),200)}async function f(){var I,H;a.narrow&&!N.value&&(N.value=!0,await r.nextTick()),(I=c.value)==null||I.focus(),(H=c.value)==null||H.select()}t({focusSearch:f});const p=r.computed(()=>a.selectionMode??"none"),w=r.computed(()=>a.actions.filter(I=>!I.divider&&!I.hidden)),g=r.ref(null),v=r.ref(null),m=r.ref(null),b=r.ref(null),y=r.ref(Number.MAX_SAFE_INTEGER),_=r.computed(()=>w.value.slice(0,y.value)),S=r.computed(()=>w.value.slice(y.value));function A(){if(a.narrow)return;const I=g.value,H=v.value;if(!I||!H){y.value=w.value.length;return}const G=parseFloat(getComputedStyle(I).gap)||8;let oe=0;for(const we of Array.from(I.children))we===H||we===m.value||we.classList.contains("fe-btn--fold")||we.offsetWidth>0&&(oe+=we.offsetWidth+G);const de=Array.from(H.children).map(we=>we.offsetWidth+G),ve=de.reduce((we,Se)=>we+Se,0),Ee=I.clientWidth-oe;if(ve<=Ee){y.value=de.length;return}let ne=U4+G,me=0;for(const we of de){if(ne+we>Ee)break;ne+=we,me+=1}y.value=me}let T;r.onMounted(()=>{typeof ResizeObserver<"u"&&g.value&&(T=new ResizeObserver(()=>A()),T.observe(g.value)),r.nextTick(A)}),r.onBeforeUnmount(()=>T==null?void 0:T.disconnect()),r.watch(()=>[w.value,a.narrow,a.trashActive,p.value],()=>void r.nextTick(A),{deep:!1});function E(){var H,G;const I=(H=m.value)==null?void 0:H.getBoundingClientRect();(G=b.value)==null||G.show({clientX:I?I.right:0,clientY:I?I.bottom+4:0},[])}function k(I){i("action",I)}const N=r.ref(!1);r.watch(()=>a.narrow,I=>{I||(N.value=!1)});async function D(){var I;N.value=!0,await r.nextTick(),(I=c.value)==null||I.focus()}function U(){N.value=!1}const L=r.ref(!1);let q;function X(I){L.value=!!(I&&"matches"in I&&I.matches)}r.onMounted(()=>{var I;typeof window>"u"||!window.matchMedia||(q=window.matchMedia("(pointer: coarse)"),X(q),(I=q.addEventListener)==null||I.call(q,"change",X))}),r.onBeforeUnmount(()=>{var I;(I=q==null?void 0:q.removeEventListener)==null||I.call(q,"change",X)});const $=r.ref(null),j=r.ref(null),J=r.computed(()=>{const I=[],H=!a.trashActive&&!a.atVirtualRoot&&a.canWrite!==!1;return p.value==="none"&&H&&(I.push({key:"new-folder",label:l("toolbar.new_folder"),icon:"📁"}),a.pasteEnabled&&I.push({key:"paste",label:l("ctx.paste"),icon:"📋"})),I.push(...w.value),I.length&&I.push({divider:!0,key:"bag-sep",label:""}),I.push({key:"refresh",label:l("toolbar.refresh"),icon:"↻"}),I.push({key:"density",label:o.value==="compact"?l("toolbar.density.comfortable"):l("toolbar.density.compact"),icon:"⇅"}),a.viewMode!=="list"&&I.push({key:"view-list",label:l("toolbar.view.list"),icon:"☰"}),a.viewMode!=="grid"&&I.push({key:"view-grid",label:l("toolbar.view.grid"),icon:"▦"}),a.viewMode!=="gallery"&&I.push({key:"view-gallery",label:l("toolbar.view.gallery"),icon:"▣"}),I.push({key:"inspector",label:l("toolbar.inspector"),icon:"ℹ"}),I.push({key:"theme",label:l("theme.menu"),icon:"🎨"}),I.push({key:"shortcut-settings",label:l("shortcuts.settings.menu"),icon:"⌨"}),I.push({key:"tour",label:l("tour.restart"),icon:"🎓"}),I});function V(){var H,G;const I=(H=$.value)==null?void 0:H.getBoundingClientRect();(G=j.value)==null||G.show({clientX:I?I.right:0,clientY:I?I.bottom+4:0},[])}function F(I){var H;switch(I.key){case"new-folder":i("new-folder");break;case"refresh":i("refresh");break;case"density":s();break;case"view-list":i("update:viewMode","list");break;case"view-grid":i("update:viewMode","grid");break;case"view-gallery":i("update:viewMode","gallery");break;case"inspector":i("toggle-inspector");break;case"theme":i("open-theme");break;case"shortcut-settings":i("open-shortcut-settings");break;case"tour":(H=$.value)==null||H.dispatchEvent(new CustomEvent("fe:tour-restart",{bubbles:!0}));break;default:k(I.key)}}return(I,H)=>(r.openBlock(),r.createElementBlock("div",{class:r.normalizeClass(["fe-toolbar",{"fe-toolbar--narrow":e.narrow,"fe-toolbar--searching":e.narrow&&N.value}])},[e.narrow?(r.openBlock(),r.createElementBlock(r.Fragment,{key:1},[N.value?(r.openBlock(),r.createElementBlock(r.Fragment,{key:0},[r.createElementVNode("div",R4,[r.createElementVNode("input",{ref_key:"searchEl",ref:c,type:"search",class:"fe-search__input",placeholder:r.unref(l)("toolbar.search.placeholder"),value:d.value,"aria-label":r.unref(l)("toolbar.search"),onInput:h,onKeydown:r.withKeys(r.withModifiers(U,["stop","prevent"]),["esc"])},null,40,L4)]),r.createElementVNode("button",{type:"button",class:"fe-btn fe-btn--icon-only",title:r.unref(l)("toolbar.search.close"),"aria-label":r.unref(l)("toolbar.search.close"),onClick:U},[...H[27]||(H[27]=[r.createElementVNode("span",{class:"fe-icon"},"✕",-1)])],8,F4)],64)):(r.openBlock(),r.createElementBlock(r.Fragment,{key:1},[e.canGoUp?(r.openBlock(),r.createElementBlock("button",{key:0,type:"button",class:"fe-btn fe-btn--icon-only",title:r.unref(l)("toolbar.go_up"),"aria-label":r.unref(l)("toolbar.go_up"),onClick:H[10]||(H[10]=G=>i("go-up"))},[...H[28]||(H[28]=[r.createElementVNode("span",{class:"fe-icon"},"↑",-1)])],8,z4)):r.createCommentVNode("",!0),H[32]||(H[32]=r.createElementVNode("div",{class:"fe-toolbar__spacer"},null,-1)),r.createElementVNode("button",{type:"button",class:r.normalizeClass(["fe-btn fe-btn--icon-only fe-toolbar__search-toggle",{"is-active":!!d.value}]),title:r.unref(l)("toolbar.search"),"aria-label":r.unref(l)("toolbar.search"),onClick:D},[...H[29]||(H[29]=[r.createElementVNode("span",{class:"fe-icon"},"🔍",-1)])],10,P4),!e.atVirtualRoot&&e.canWrite!==!1?(r.openBlock(),r.createElementBlock("button",{key:1,type:"button",class:"fe-btn fe-btn--icon-only",title:r.unref(l)("toolbar.upload"),"aria-label":r.unref(l)("toolbar.upload"),onClick:H[11]||(H[11]=G=>i("upload"))},[...H[30]||(H[30]=[r.createElementVNode("span",{class:"fe-icon"},"⬆",-1)])],8,$4)):r.createCommentVNode("",!0),r.createElementVNode("button",{ref_key:"moreBtnEl",ref:$,type:"button",class:"fe-btn fe-btn--icon-only fe-toolbar__more",title:r.unref(l)("toolbar.more"),"aria-label":r.unref(l)("toolbar.more"),"aria-haspopup":"menu",onClick:V},[...H[31]||(H[31]=[r.createElementVNode("span",{class:"fe-icon"},"⋯",-1)])],8,V4)],64)),r.createVNode(ac,{ref_key:"moreRef",ref:j,locale:e.locale,theme:e.theme||"auto",sheet:L.value,actions:J.value,onSelect:F},null,8,["locale","theme","sheet","actions"])],64)):(r.openBlock(),r.createElementBlock(r.Fragment,{key:0},[r.createElementVNode("div",{ref_key:"primaryEl",ref:g,class:"fe-toolbar__primary"},[e.canGoUp?(r.openBlock(),r.createElementBlock("button",{key:0,type:"button",class:"fe-btn fe-btn--icon-only",title:r.unref(l)("toolbar.go_up"),"aria-label":r.unref(l)("toolbar.go_up"),onClick:H[0]||(H[0]=G=>i("go-up"))},[...H[13]||(H[13]=[r.createElementVNode("span",{class:"fe-icon"},"↑",-1)])],8,d4)):r.createCommentVNode("",!0),p.value==="none"&&!e.trashActive&&!e.atVirtualRoot&&e.canWrite!==!1?(r.openBlock(),r.createElementBlock("button",{key:1,type:"button",class:"fe-btn fe-btn--primary",title:r.unref(l)("toolbar.new_folder"),onClick:H[1]||(H[1]=G=>i("new-folder"))},[H[14]||(H[14]=r.createElementVNode("span",{class:"fe-icon"},"📁",-1)),r.createElementVNode("span",f4,r.toDisplayString(r.unref(l)("toolbar.new_folder")),1)],8,u4)):r.createCommentVNode("",!0),(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(_.value,G=>(r.openBlock(),r.createElementBlock("button",{key:G.key,type:"button",class:r.normalizeClass(["fe-btn fe-btn--fold",{"fe-btn--danger":G.danger,"is-disabled":G.disabled}]),disabled:G.disabled,title:G.label,onClick:oe=>k(G.key)},[r.createElementVNode("span",p4,r.toDisplayString(G.icon),1),r.createElementVNode("span",m4,r.toDisplayString(G.label),1)],10,h4))),128)),S.value.length>0?(r.openBlock(),r.createElementBlock("button",{key:2,ref_key:"wideMoreBtnEl",ref:m,type:"button",class:"fe-btn fe-btn--icon-only",title:r.unref(l)("toolbar.more"),"aria-label":r.unref(l)("toolbar.more"),"aria-haspopup":"menu",onClick:E},[...H[15]||(H[15]=[r.createElementVNode("span",{class:"fe-icon"},"⋯",-1)])],8,g4)):r.createCommentVNode("",!0),r.createElementVNode("div",{ref_key:"measureEl",ref:v,class:"fe-toolbar__measure","aria-hidden":"true"},[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(w.value,G=>(r.openBlock(),r.createElementBlock("button",{key:"m-"+G.key,type:"button",class:"fe-btn",tabindex:"-1"},[r.createElementVNode("span",b4,r.toDisplayString(G.icon),1),r.createElementVNode("span",v4,r.toDisplayString(G.label),1)]))),128))],512),e.pasteEnabled&&p.value==="none"&&!e.trashActive&&!e.atVirtualRoot&&e.canWrite!==!1?(r.openBlock(),r.createElementBlock("button",{key:3,type:"button",class:"fe-btn",title:r.unref(l)("ctx.paste"),onClick:H[2]||(H[2]=G=>k("paste"))},[H[16]||(H[16]=r.createElementVNode("span",{class:"fe-icon"},"📋",-1)),r.createElementVNode("span",_4,r.toDisplayString(r.unref(l)("ctx.paste")),1)],8,y4)):r.createCommentVNode("",!0)],512),H[26]||(H[26]=r.createElementVNode("div",{class:"fe-toolbar__spacer"},null,-1)),r.createElementVNode("div",w4,[r.createElementVNode("div",k4,[r.createElementVNode("input",{ref_key:"searchEl",ref:c,type:"search",class:"fe-search__input",placeholder:r.unref(l)("toolbar.search.placeholder"),value:d.value,"aria-label":r.unref(l)("toolbar.search"),onInput:h},null,40,E4)]),!e.atVirtualRoot&&e.canWrite!==!1?(r.openBlock(),r.createElementBlock("button",{key:0,type:"button",class:"fe-btn fe-btn--icon-only",title:r.unref(l)("toolbar.upload"),"aria-label":r.unref(l)("toolbar.upload"),onClick:H[3]||(H[3]=G=>i("upload"))},[...H[17]||(H[17]=[r.createElementVNode("span",{class:"fe-icon","aria-hidden":"true"},"⬆",-1)])],8,x4)):r.createCommentVNode("",!0),r.createElementVNode("button",{type:"button",class:"fe-btn fe-btn--icon-only",title:r.unref(l)("toolbar.refresh"),"aria-label":r.unref(l)("toolbar.refresh"),onClick:H[4]||(H[4]=G=>i("refresh"))},[...H[18]||(H[18]=[r.createElementVNode("span",{class:"fe-icon","aria-hidden":"true"},"↻",-1)])],8,S4)]),r.createElementVNode("button",{type:"button",class:r.normalizeClass(["fe-btn fe-btn--icon-only fe-toolbar__density",{"is-active":o.value==="compact"}]),"aria-pressed":o.value==="compact","aria-label":o.value==="compact"?r.unref(l)("toolbar.density.comfortable"):r.unref(l)("toolbar.density.compact"),title:o.value==="compact"?r.unref(l)("toolbar.density.comfortable"):r.unref(l)("toolbar.density.compact"),onClick:s},[o.value==="compact"?(r.openBlock(),r.createElementBlock("svg",N4,[...H[19]||(H[19]=[r.createElementVNode("path",{d:"M4 6.5h16M4 10.5h16M4 14.5h16M4 18.5h16"},null,-1)])])):(r.openBlock(),r.createElementBlock("svg",T4,[...H[20]||(H[20]=[r.createElementVNode("path",{d:"M4 5.5h16M4 12h16M4 18.5h16"},null,-1)])]))],10,C4),r.createElementVNode("button",{type:"button",class:r.normalizeClass(["fe-btn fe-btn--icon-only fe-toolbar__inspector",{"is-active":e.inspectorOpen}]),"aria-pressed":!!e.inspectorOpen,title:r.unref(l)("toolbar.inspector"),"aria-label":r.unref(l)("toolbar.inspector"),onClick:H[5]||(H[5]=G=>i("toggle-inspector"))},[...H[21]||(H[21]=[r.createElementVNode("svg",{class:"fe-ficon",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"1.8","stroke-linecap":"round","aria-hidden":"true",focusable:"false"},[r.createElementVNode("circle",{cx:"12",cy:"12",r:"9"}),r.createElementVNode("path",{d:"M12 11v5"}),r.createElementVNode("circle",{cx:"12",cy:"7.6",r:"1",fill:"currentColor",stroke:"none"})],-1)])],10,A4),r.createElementVNode("button",{type:"button",class:"fe-btn fe-btn--icon-only fe-toolbar__theme",title:r.unref(l)("theme.menu"),"aria-label":r.unref(l)("theme.menu"),onClick:H[6]||(H[6]=G=>i("open-theme"))},[...H[22]||(H[22]=[r.createElementVNode("svg",{class:"fe-ficon",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"1.8","stroke-linecap":"round","stroke-linejoin":"round","aria-hidden":"true",focusable:"false"},[r.createElementVNode("path",{d:"M12 3a9 9 0 1 0 0 18h1.4a2.1 2.1 0 0 0 1.5-3.6 2.1 2.1 0 0 1 1.5-3.6H19a2 2 0 0 0 2-2A9 9 0 0 0 12 3z"}),r.createElementVNode("circle",{cx:"7.8",cy:"10.2",r:"1.15",fill:"currentColor",stroke:"none"}),r.createElementVNode("circle",{cx:"11.6",cy:"7.2",r:"1.15",fill:"currentColor",stroke:"none"}),r.createElementVNode("circle",{cx:"16",cy:"8.6",r:"1.15",fill:"currentColor",stroke:"none"})],-1)])],8,D4),r.createElementVNode("div",{class:"fe-toolbar__view",role:"tablist","aria-label":r.unref(l)("toolbar.view_label")},[r.createElementVNode("button",{type:"button",class:r.normalizeClass(["fe-btn fe-btn--icon-only",{"is-active":e.viewMode==="list"}]),role:"tab","aria-selected":e.viewMode==="list",title:r.unref(l)("toolbar.view.list"),"aria-label":r.unref(l)("toolbar.view.list"),onClick:H[7]||(H[7]=G=>i("update:viewMode","list"))},[...H[23]||(H[23]=[r.createElementVNode("span",{class:"fe-icon","aria-hidden":"true"},"☰",-1)])],10,B4),r.createElementVNode("button",{type:"button",class:r.normalizeClass(["fe-btn fe-btn--icon-only",{"is-active":e.viewMode==="grid"}]),role:"tab","aria-selected":e.viewMode==="grid",title:r.unref(l)("toolbar.view.grid"),"aria-label":r.unref(l)("toolbar.view.grid"),onClick:H[8]||(H[8]=G=>i("update:viewMode","grid"))},[...H[24]||(H[24]=[r.createElementVNode("span",{class:"fe-icon","aria-hidden":"true"},"▦",-1)])],10,O4),r.createElementVNode("button",{type:"button",class:r.normalizeClass(["fe-btn fe-btn--icon-only",{"is-active":e.viewMode==="gallery"}]),role:"tab","aria-selected":e.viewMode==="gallery",title:r.unref(l)("toolbar.view.gallery"),"aria-label":r.unref(l)("toolbar.view.gallery"),onClick:H[9]||(H[9]=G=>i("update:viewMode","gallery"))},[...H[25]||(H[25]=[r.createElementVNode("span",{class:"fe-icon","aria-hidden":"true"},"▣",-1)])],10,I4)],8,M4)],64)),e.narrow?r.createCommentVNode("",!0):(r.openBlock(),r.createBlock(ac,{key:2,ref_key:"wideMoreRef",ref:b,locale:e.locale,theme:e.theme||"auto",sheet:!1,actions:S.value,onSelect:H[12]||(H[12]=G=>k(G.key))},null,8,["locale","theme","actions"]))],2))}}),G4=["onClick"],pf=r.defineComponent({__name:"TagPicker",props:{nodeId:{},apiBase:{},authHeaders:{type:Function},authCredentials:{},palette:{}},emits:["change","error"],setup(e,{emit:t}){const n=e,a=t,i=r.ref([]),o=r.ref(!1),s=r.ref(!1),l=r.ref(""),c=r.computed(()=>n.palette??["#ef4444","#f59e0b","#10b981","#3b82f6","#8b5cf6","#ec4899","#14b8a6","#f97316"]);function d(g){let v=0;for(let b=0;b<g.length;b++)v=v*31+g.charCodeAt(b)|0;const m=c.value;return m[Math.abs(v)%m.length]}async function u(g={}){return{...await(n.authHeaders??(()=>({})))(),...g}}async function h(){o.value=!0;try{const g=n.apiBase??"",v=await fetch(`${g}/api/files/manager/tags?node_id=${n.nodeId}`,{headers:await u(),credentials:n.authCredentials??"same-origin"});if(v.ok){const m=await v.json();i.value=Array.isArray(m.tags)?m.tags:[]}}catch(g){a("error",g instanceof Error?g.message:String(g))}finally{o.value=!1}}async function f(g){const v=[...i.value];i.value=g;try{const m=n.apiBase??"",b=await fetch(`${m}/api/files/manager/tags`,{method:"POST",headers:await u({"Content-Type":"application/json"}),credentials:n.authCredentials??"same-origin",body:JSON.stringify({node_id:n.nodeId,tags:g})});if(!b.ok)throw new Error(`tag save failed: ${b.status}`);a("change",g)}catch(m){i.value=v,a("error",m instanceof Error?m.message:String(m))}}function p(){const g=l.value.trim();if(!g||i.value.includes(g)){l.value="",s.value=!1;return}f([...i.value,g]),l.value="",s.value=!1}function w(g){f(i.value.filter(v=>v!==g))}return r.onMounted(h),r.watch(()=>n.nodeId,h),(g,v)=>(r.openBlock(),r.createElementBlock("div",{class:r.normalizeClass(["filex-tag-picker",{"is-loading":o.value}])},[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(i.value,m=>(r.openBlock(),r.createElementBlock("span",{key:m,class:"filex-tag",style:r.normalizeStyle({"--filex-tag-color":d(m)})},[r.createTextVNode(r.toDisplayString(m)+" ",1),r.createElementVNode("button",{class:"filex-tag-x",type:"button",onClick:b=>w(m),"aria-label":"Remove tag"},"×",8,G4)],4))),128)),s.value?(r.openBlock(),r.createElementBlock("form",{key:0,class:"filex-tag-add",onSubmit:r.withModifiers(p,["prevent"])},[r.withDirectives(r.createElementVNode("input",{"onUpdate:modelValue":v[0]||(v[0]=m=>l.value=m),autofocus:"",placeholder:"tag name",onBlur:p,onKeydown:v[1]||(v[1]=r.withKeys(m=>{s.value=!1,l.value=""},["escape"]))},null,544),[[r.vModelText,l.value]])],32)):(r.openBlock(),r.createElementBlock("button",{key:1,class:"filex-tag-add-btn",type:"button",onClick:v[2]||(v[2]=m=>s.value=!0)},"+ Add tag"))],2))}}),q4={class:"filex-recent"},K4=["disabled"],W4={key:0},Y4=["onClick"],j4={class:"filex-recent-name"},X4={class:"filex-recent-meta"},Z4={key:1,class:"filex-recent-empty"},J4={key:2,class:"filex-recent-empty"},mf=r.defineComponent({__name:"RecentlyOpened",props:{apiBase:{},authHeaders:{type:Function},authCredentials:{},limit:{},refreshKey:{}},emits:["open","error"],setup(e,{emit:t}){const n=e,a=t,i=r.ref([]),o=r.ref(!1);async function s(){o.value=!0;try{const c=await(n.authHeaders??(()=>({})))(),d=n.apiBase??"",u=n.limit??20,h=await fetch(`${d}/api/files/manager/recent?limit=${u}`,{headers:c,credentials:n.authCredentials??"same-origin"});if(h.ok){const f=await h.json();i.value=Array.isArray(f.entries)?f.entries:Array.isArray(f)?f:[]}}catch(c){a("error",c instanceof Error?c.message:String(c))}finally{o.value=!1}}function l(c){if(!c)return"";const d=new Date(c).getTime();if(Number.isNaN(d))return"";const u=Date.now()-d;return u<6e4?"just now":u<36e5?`${Math.floor(u/6e4)}m ago`:u<864e5?`${Math.floor(u/36e5)}h ago`:`${Math.floor(u/864e5)}d ago`}return r.onMounted(s),r.watch(()=>n.refreshKey,s),(c,d)=>(r.openBlock(),r.createElementBlock("div",q4,[r.createElementVNode("header",null,[d[0]||(d[0]=r.createElementVNode("h3",null,"Recently opened",-1)),r.createElementVNode("button",{class:"filex-recent-refresh",type:"button",onClick:s,disabled:o.value}," ↻ ",8,K4)]),i.value.length?(r.openBlock(),r.createElementBlock("ul",W4,[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(i.value,u=>(r.openBlock(),r.createElementBlock("li",{key:u.id},[r.createElementVNode("button",{type:"button",onClick:h=>a("open",u),class:"filex-recent-item"},[r.createElementVNode("span",j4,r.toDisplayString(u.name),1),r.createElementVNode("span",X4,r.toDisplayString(l(u.last_opened)),1)],8,Y4)]))),128))])):o.value?(r.openBlock(),r.createElementBlock("p",J4,"Loading…")):(r.openBlock(),r.createElementBlock("p",Z4,"Nothing here yet."))]))}}),Q4={class:"fe-breadcrumb","aria-label":"Breadcrumb"},e_=["aria-current","onClick","onContextmenu","onDrop"],t_={key:0,class:"fe-breadcrumb__sep","aria-hidden":"true"},n_=["aria-expanded","aria-label","title"],r_={key:0,class:"fe-breadcrumb__menu",role:"menu"},a_=["onClick"],i_=["aria-current","onClick","onContextmenu","onDrop"],o_={key:0,class:"fe-breadcrumb__sep","aria-hidden":"true"},l_=["title","aria-label"],s_=["placeholder","onKeydown"],c_=4,d_=r.defineComponent({__name:"Breadcrumb",props:{dirname:{},adapter:{},rootLabel:{},locale:{},multiStorageRoot:{type:Boolean},rootPath:{}},emits:["navigate","copy-path","crumb-context","crumb-drop"],setup(e,{emit:t}){const n=e,a=r.computed(()=>{if(!n.rootPath)return"";const D=n.rootPath,U=D.indexOf("://");return(U>=0?D.slice(U+3):D).replace(/^\/+|\/+$/g,"")}),i=r.computed(()=>{const D=a.value;if(!D)return n.rootLabel||n.adapter;const U=D.split("/");return U[U.length-1]||n.rootLabel||n.adapter}),{t:o}=qt(()=>n.locale),s=t,l=r.computed(()=>{const D=`${n.adapter}://`,U=n.dirname.startsWith(D)?n.dirname.slice(D.length):n.dirname,L=U.split("/").filter(Boolean),q=[];if(n.rootPath){const $=a.value,j=U.replace(/^\/+|\/+$/g,""),J=$&&(j===$||j.startsWith($+"/"))?j.slice($.length).replace(/^\/+/,""):"";q.push({label:i.value,adapterPath:n.rootPath});let V=$;for(const F of J.split("/").filter(Boolean))V=V?`${V}/${F}`:F,q.push({label:F===".trash"?o("node.trash"):F,adapterPath:`${D}${V}`});return q}n.multiStorageRoot?(q.push({label:"/",adapterPath:""}),n.adapter&&q.push({label:n.rootLabel||n.adapter,adapterPath:D})):q.push({label:n.rootLabel||n.adapter,adapterPath:D});let X="";for(const $ of L){X=X?`${X}/${$}`:$;const j=$===".trash"?o("node.trash"):$;q.push({label:j,adapterPath:`${D}${X}`})}return q}),c=r.computed(()=>l.value.length>c_),d=r.computed(()=>c.value?l.value.slice(0,1):l.value),u=r.computed(()=>c.value?l.value.slice(1,-2):[]),h=r.computed(()=>c.value?l.value.slice(-2):[]),f=r.ref(!1),p=r.ref(null);function w(D){f.value=!1,s("navigate",D.adapterPath)}function g(D){const U=p.value;U&&D.target instanceof Node&&U.contains(D.target)||(f.value=!1)}function v(D){D.key==="Escape"&&(D.stopPropagation(),f.value=!1)}r.watch(f,D=>{D?(document.addEventListener("click",g,!0),document.addEventListener("keydown",v,!0)):(document.removeEventListener("click",g,!0),document.removeEventListener("keydown",v,!0))}),r.watch(l,()=>{f.value=!1}),r.onBeforeUnmount(()=>{document.removeEventListener("click",g,!0),document.removeEventListener("keydown",v,!0)});function m(D){s("navigate",D.adapterPath)}function b(D,U){D.preventDefault(),D.stopPropagation(),s("crumb-context",{x:D.clientX,y:D.clientY,adapterPath:U.adapterPath,label:U.label})}function y(D){var U;(U=D.dataTransfer)!=null&&U.types.includes("application/x-brf-files")&&(D.preventDefault(),D.stopPropagation(),D.dataTransfer&&(D.dataTransfer.dropEffect="move"))}function _(D,U){var L;(L=D.dataTransfer)!=null&&L.types.includes("application/x-brf-files")&&(D.preventDefault(),D.stopPropagation(),s("crumb-drop",U.adapterPath,D))}const S=r.ref(!1),A=r.ref(""),T=r.ref(null);function E(){const D=`${n.adapter}://`,U=n.dirname.startsWith(D)?n.dirname.slice(D.length):n.dirname;if(n.rootPath){const L=a.value,q=U.replace(/^\/+|\/+$/g,""),X=L&&(q===L||q.startsWith(L+"/"))?q.slice(L.length).replace(/^\/+/,""):"";A.value=X?`/${X}`:"/",S.value=!0,r.nextTick(()=>{var $,j;($=T.value)==null||$.focus(),(j=T.value)==null||j.select()});return}if(n.multiStorageRoot)if(!n.adapter)A.value="/";else{const L=U.replace(/^\/+|\/+$/g,"");A.value=L?`/${n.adapter}/${L}`:`/${n.adapter}`}else A.value=U;S.value=!0,r.nextTick(()=>{var L,q;(L=T.value)==null||L.focus(),(q=T.value)==null||q.select()})}function k(){const D=A.value.trim();if(S.value=!1,n.rootPath){const L=D.replace(/^\/+|\/+$/g,""),q=a.value,X=L?q?`${q}/${L}`:L:q;s("navigate",X?`${n.adapter}://${X}`:`${n.adapter}://`);return}if(n.multiStorageRoot){const L=D.replace(/^\/+|\/+$/g,"");if(!L){s("navigate","");return}const q=L.indexOf("/"),X=q===-1?L:L.slice(0,q),$=q===-1?"":L.slice(q+1);s("navigate",$?`${X}://${$}`:`${X}://`);return}const U=D.replace(/^\/+|\/+$/g,"");U&&s("navigate",`${n.adapter}://${U}`)}function N(){S.value=!1}return(D,U)=>(r.openBlock(),r.createElementBlock("nav",Q4,[S.value?r.withDirectives((r.openBlock(),r.createElementBlock("input",{key:1,ref_key:"pathInput",ref:T,"onUpdate:modelValue":U[1]||(U[1]=L=>A.value=L),type:"text",class:"fe-breadcrumb__input",placeholder:r.unref(o)("breadcrumb.path_placeholder"),spellcheck:"false",autocomplete:"off",onKeydown:[r.withKeys(r.withModifiers(k,["prevent"]),["enter"]),r.withKeys(r.withModifiers(N,["prevent"]),["escape"])],onBlur:N},null,40,s_)),[[r.vModelText,A.value]]):(r.openBlock(),r.createElementBlock(r.Fragment,{key:0},[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(d.value,(L,q)=>(r.openBlock(),r.createElementBlock("button",{key:L.adapterPath,class:r.normalizeClass(["fe-breadcrumb__crumb",{"is-last":!c.value&&q===d.value.length-1}]),type:"button","aria-current":!c.value&&q===d.value.length-1?"page":void 0,onClick:X=>m(L),onContextmenu:X=>b(X,L),onDragover:y,onDrop:X=>_(X,L)},[r.createElementVNode("span",null,r.toDisplayString(L.label),1),c.value||q<d.value.length-1?(r.openBlock(),r.createElementBlock("span",t_,"›")):r.createCommentVNode("",!0)],42,e_))),128)),u.value.length?(r.openBlock(),r.createElementBlock("span",{key:0,ref_key:"moreWrapEl",ref:p,class:"fe-breadcrumb__more-wrap"},[r.createElementVNode("button",{type:"button",class:"fe-breadcrumb__more","aria-haspopup":"menu","aria-expanded":f.value,"aria-label":r.unref(o)("breadcrumb.more"),title:r.unref(o)("breadcrumb.more"),onClick:U[0]||(U[0]=L=>f.value=!f.value)},"…",8,n_),U[2]||(U[2]=r.createElementVNode("span",{class:"fe-breadcrumb__sep","aria-hidden":"true"},"›",-1)),f.value?(r.openBlock(),r.createElementBlock("div",r_,[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(u.value,L=>(r.openBlock(),r.createElementBlock("button",{key:L.adapterPath,type:"button",class:"fe-breadcrumb__menu-item",role:"menuitem",onClick:q=>w(L)},r.toDisplayString(L.label),9,a_))),128))])):r.createCommentVNode("",!0)],512)):r.createCommentVNode("",!0),(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(h.value,(L,q)=>(r.openBlock(),r.createElementBlock("button",{key:L.adapterPath,class:r.normalizeClass(["fe-breadcrumb__crumb",{"is-last":q===h.value.length-1}]),type:"button","aria-current":q===h.value.length-1?"page":void 0,onClick:X=>m(L),onContextmenu:X=>b(X,L),onDragover:y,onDrop:X=>_(X,L)},[r.createElementVNode("span",null,r.toDisplayString(L.label),1),q<h.value.length-1?(r.openBlock(),r.createElementBlock("span",o_,"›")):r.createCommentVNode("",!0)],42,i_))),128)),r.createElementVNode("button",{type:"button",class:"fe-breadcrumb__edit",title:r.unref(o)("breadcrumb.go_to_path"),"aria-label":r.unref(o)("breadcrumb.go_to_path"),onClick:E},"✏",8,l_)],64))]))}}),gf={};function xr(e,t){for(const n of t)gf[n]=e}xr("image",["jpg","jpeg","png","webp","gif","bmp","avif","heic","svg","ico","tiff","tif"]),xr("video",["mp4","webm","mov","mkv","avi","ogv","m4v"]),xr("audio",["mp3","wav","flac","ogg","m4a","aac","opus"]),xr("pdf",["pdf"]),xr("doc",["doc","docx","odt","rtf"]),xr("sheet",["xls","xlsx","ods","csv"]),xr("slides",["ppt","pptx","odp"]),xr("archive",["zip","tar","gz","bz2","7z","rar","xz","zst"]),xr("code",["js","ts","jsx","tsx","mjs","cjs","vue","py","go","rs","php","rb","java","kt","swift","c","cpp","h","hpp","cs","css","scss","less","html","htm","json","yml","yaml","xml","sh","bash","ps1","sql","toml"]),xr("text",["txt","md","markdown","log","ini","conf","cfg","env"]);function u_(e){if(e.type==="dir")return"folder";const t=(e.extension||"").toLowerCase();return gf[t]??"unknown"}const sa='<path d="M6.5 3h7L18.5 8v11.5a1.5 1.5 0 0 1-1.5 1.5H6.5A1.5 1.5 0 0 1 5 19.5v-15A1.5 1.5 0 0 1 6.5 3z"/><path d="M13.5 3v5h5"/>',f_={folder:'<path d="M3 7a2 2 0 0 1 2-2h4.2l2 2.4H19a2 2 0 0 1 2 2V17a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z" fill="currentColor" fill-opacity="0.14"/>',image:'<rect x="3" y="5" width="18" height="14" rx="2"/><circle cx="8.6" cy="10" r="1.6"/><path d="M5.2 16.6l4.3-4.3 3 3 2.4-2.4 3.9 3.7"/>',video:'<rect x="3" y="5" width="18" height="14" rx="2"/><path d="M10.2 9.3v5.4l4.8-2.7z" fill="currentColor" stroke="none"/>',audio:'<path d="M9 17.5V7.2l9-2.2v10.4"/><circle cx="6.8" cy="17.6" r="2.2"/><circle cx="15.8" cy="15.5" r="2.2"/>',pdf:sa+'<rect x="7.5" y="12" width="9" height="5" rx="1" fill="currentColor" fill-opacity="0.14"/>',doc:sa+'<path d="M8.5 13h7M8.5 16h7"/>',sheet:sa+'<path d="M8 12.5h8M8 15.5h8M8 18h8M12 12.5V18"/>',slides:sa+'<rect x="8" y="12.5" width="8" height="5" rx="0.8"/>',archive:sa+'<path d="M10 3v1.6M10 6.6v1.6M10 10.2v1.6"/><rect x="8.6" y="14" width="2.8" height="3.4" rx="0.8"/>',code:sa+'<path d="M10.4 12.5L8.3 15l2.1 2.5M13.6 12.5l2.1 2.5-2.1 2.5"/>',text:sa+'<path d="M8.5 12h7M8.5 15h7M8.5 18h4.5"/>',unknown:sa+'<path d="M10.3 13.1a1.8 1.8 0 1 1 2.5 1.9c-.6.3-.8.7-.8 1.4"/><circle cx="12" cy="18.4" r="0.9" fill="currentColor" stroke="none"/>'},bf=new Map;function h_(e){let t=bf.get(e);return t||(t=`<svg class="fe-ficon fe-ficon--${e}" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.6" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true" focusable="false">${f_[e]}</svg>`,bf.set(e,t)),t}function ti(e){return h_(u_(e))}function Ji(e){const t=[];if(!e)return t;const n=/«([^«»]*)»/g;let a=0,i;for(;(i=n.exec(e))!==null;)i.index>a&&t.push({text:e.slice(a,i.index),match:!1}),i[1]&&t.push({text:i[1],match:!0}),a=i.index+i[0].length;return a<e.length&&t.push({text:e.slice(a),match:!1}),t}function ic(e){return e==="content"||e==="both"}function oc(e,t,n){const a=e.dataTransfer;if(!(!a||typeof document>"u"||typeof a.setDragImage!="function"))try{const i=document.createElement("div");i.className="fe-dragghost";const o=document.createElement("span");if(o.className="fe-dragghost__name",o.textContent=t,i.appendChild(o),n>1){const s=document.createElement("span");s.className="fe-dragghost__badge",s.textContent=String(n),i.appendChild(s)}i.style.position="fixed",i.style.top="-1000px",i.style.left="-1000px",document.body.appendChild(i),a.setDragImage(i,14,14),setTimeout(()=>i.remove(),0)}catch{}}const p_=["aria-pressed","title"],m_={viewBox:"0 0 24 24",width:"16",height:"16","aria-hidden":"true"},g_=["fill"],b_={key:0,class:"filex-star-label"},vf=r.defineComponent({__name:"StarButton",props:{starred:{type:Boolean},nodeId:{},apiBase:{},authHeaders:{type:Function},authCredentials:{},compact:{type:Boolean}},emits:["change","error"],setup(e,{emit:t}){const n=e,a=t,i=r.ref(n.starred);r.watch(()=>n.starred,s=>{i.value=s});async function o(){const s=!i.value;i.value=s;try{const l={"Content-Type":"application/json",...await(n.authHeaders??(()=>({})))()},c=n.apiBase??"",d=await fetch(`${c}/api/files/manager/star`,{method:"POST",headers:l,credentials:n.authCredentials??"same-origin",body:JSON.stringify({node_id:n.nodeId,starred:s})});if(!d.ok)throw new Error(`star toggle failed: ${d.status}`);a("change",s)}catch(l){i.value=!s,a("error",l instanceof Error?l.message:String(l))}}return(s,l)=>(r.openBlock(),r.createElementBlock("button",{type:"button",class:r.normalizeClass(["filex-star-btn",{"is-starred":i.value,"is-compact":e.compact}]),"aria-pressed":i.value,title:i.value?"Unstar":"Star",onClick:r.withModifiers(o,["stop"])},[(r.openBlock(),r.createElementBlock("svg",m_,[r.createElementVNode("path",{fill:i.value?"currentColor":"none",stroke:"currentColor","stroke-width":"2","stroke-linejoin":"round",d:"M12 2.5l3.09 6.26 6.91 1-5 4.87 1.18 6.87L12 18.27l-6.18 3.23L7 14.63 2 9.76l6.91-1z"},null,8,g_)])),e.compact?r.createCommentVNode("",!0):(r.openBlock(),r.createElementBlock("span",b_,r.toDisplayString(i.value?"Starred":"Star"),1))],10,p_))}}),v_=["aria-label","aria-busy"],y_={class:"fe-list__head",role:"row"},__=["aria-label"],w_=["aria-sort"],k_=["title"],E_={key:0,class:"fe-list__sort-arrow","aria-hidden":"true"},x_=["aria-sort"],S_=["title"],C_={key:0,class:"fe-list__sort-arrow","aria-hidden":"true"},N_=["aria-sort"],T_=["title"],A_={key:0,class:"fe-list__sort-arrow","aria-hidden":"true"},D_={class:"fe-list__body",role:"rowgroup"},M_={key:0,class:"fe-list__group",role:"presentation"},B_=["aria-selected","aria-label","data-fe-path","onClick","onDblclick","onContextmenu","onDragstart","onDragover","onDragleave","onDrop","onTouchstartPassive"],O_={class:"fe-list__col fe-list__col--name",role:"gridcell"},I_={key:0,class:"fe-list__icon","aria-hidden":"true"},R_=["innerHTML"],L_={class:"fe-list__name-wrap"},F_=["title"],z_={key:0,class:"fe-list__badge"},P_=["title"],$_={key:1,class:"fe-list__snippet"},V_={key:0,class:"fe-list__mark"},U_={class:"fe-list__col fe-list__col--size",role:"gridcell"},H_={class:"fe-list__col fe-list__col--mod",role:"gridcell"},G_={key:0,class:"fe-list__empty"},yf="filex.list-sort",_f=r.defineComponent({__name:"ListView",props:{files:{},selected:{},clipped:{},showParentPath:{type:Boolean},locale:{},loading:{type:Boolean},starredIds:{},apiBase:{},authHeaders:{type:Function},authCredentials:{}},emits:["click-row","dbl-row","context-row","item-drag-start","item-drop-into","star-change"],setup(e,{emit:t}){const n=e,a=t,{t:i,formatSize:o,nodeDisplayName:s}=qt(()=>n.locale);function l(F){return n.selected.has(F.path)}function c(F,I){a("click-row",F,{ctrl:I.ctrlKey||I.metaKey,shift:I.shiftKey})}function d(F){a("dbl-row",F)}function u(F,I){I.preventDefault(),I.stopPropagation(),a("context-row",F,I)}function h(F,I){oc(I,s(F),n.selected.has(F.path)?n.selected.size:1),a("item-drag-start",F,I)}const f=r.ref(null);function p(F,I){var H;F.type==="dir"&&(H=I.dataTransfer)!=null&&H.types.includes("application/x-brf-files")&&(I.preventDefault(),I.stopPropagation(),I.dataTransfer&&(I.dataTransfer.dropEffect="move"),f.value=F.path)}function w(F){f.value===F.path&&(f.value=null)}function g(F,I){var H;f.value=null,F.type==="dir"&&(H=I.dataTransfer)!=null&&H.types.includes("application/x-brf-files")&&(I.preventDefault(),I.stopPropagation(),a("item-drop-into",F,I))}let v,m=null;function b(F,I){m=F,v&&clearTimeout(v),v=setTimeout(()=>{if(m){const H=I.touches[0];a("context-row",m,{clientX:H.clientX,clientY:H.clientY,preventDefault:()=>{}})}},500)}function y(){v&&clearTimeout(v),m=null}function _(F){return F.basename===".trash"?"🗑":F.mime_type==="inode/storage"?"💾":F.type==="dir"&&F.e2e===!0?"🔒":null}function S(F){return F.basename===".trash"||F.mime_type==="inode/storage"}function A(F){return F?new Date(F*(F<1e12?1e3:1)).toLocaleString():"—"}function T(F){const I=F.replace(/^[a-z][a-z0-9+.-]*:\/\//i,""),H=I.lastIndexOf("/");return H===-1?"":I.slice(0,H)}function E(F){const I=F.snippet;return typeof I=="string"?I:""}function k(F){return ic(F.matched)}const N=r.ref(null),D=r.ref("asc");try{const F=localStorage.getItem(yf);if(F){const I=JSON.parse(F);(I.key==="name"||I.key==="size"||I.key==="modified")&&(N.value=I.key),(I.dir==="asc"||I.dir==="desc")&&(D.value=I.dir)}}catch{}function U(F){return F==="modified"?"desc":"asc"}function L(F){N.value!==F?(N.value=F,D.value=U(F)):D.value===U(F)?D.value=D.value==="asc"?"desc":"asc":N.value=null;try{localStorage.setItem(yf,JSON.stringify({key:N.value,dir:D.value}))}catch{}}function q(F){return N.value!==F?"none":D.value==="asc"?"ascending":"descending"}function X(F){const I=F.last_modified;return I?I*(I<1e12?1e3:1):null}const $=r.computed(()=>{const F=N.value;if(!F)return n.files;const I=[],H=[];for(const oe of n.files)(S(oe)?I:H).push(oe);const G=D.value==="asc"?1:-1;return H.sort((oe,de)=>{if(F==="name")return G*oe.basename.localeCompare(de.basename,void 0,{numeric:!0,sensitivity:"base"});if(F==="size")return G*((oe.size??-1)-(de.size??-1));const ve=X(oe),Ee=X(de);return ve==null&&Ee==null?0:ve==null?1:Ee==null?-1:G*(ve-Ee)}),[...I,...H]}),j=r.computed(()=>new Intl.DateTimeFormat(n.locale==="tr"?"tr-TR":"en-US",{month:"long",year:"numeric"}));function J(F){if(F==null)return{id:"none",label:i("group.no_date")};const I=new Date(F),H=new Date,G=Ee=>new Date(Ee.getFullYear(),Ee.getMonth(),Ee.getDate()).getTime(),oe=G(H),de=G(I),ve=864e5;return de>=oe?{id:"today",label:i("group.today")}:de===oe-ve?{id:"yesterday",label:i("group.yesterday")}:de>oe-7*ve?{id:"week",label:i("group.this_week")}:I.getFullYear()===H.getFullYear()&&I.getMonth()===H.getMonth()?{id:"month",label:i("group.this_month")}:{id:`m-${I.getFullYear()}-${I.getMonth()}`,label:j.value.format(I)}}const V=r.computed(()=>{const F=$.value;if(N.value!=="modified")return[{id:"all",label:null,nodes:F}];const I=[];let H=null;for(const G of F){const oe=S(G)?{id:"pinned",label:null}:J(X(G));(!H||H.id!==oe.id)&&(H={id:oe.id,label:oe.label,nodes:[]},I.push(H)),H.nodes.push(G)}return I});return(F,I)=>(r.openBlock(),r.createElementBlock("div",{class:r.normalizeClass(["fe-list",{"is-loading":e.loading,"has-star-col":!!e.apiBase||e.apiBase===""}]),role:"grid","aria-label":r.unref(i)("list.aria"),"aria-busy":e.loading?"true":void 0},[r.createElementVNode("div",y_,[r.createElementVNode("div",{class:"fe-list__col fe-list__col--star",role:"columnheader","aria-label":r.unref(i)("col.star")},null,8,__),r.createElementVNode("div",{class:"fe-list__col fe-list__col--name",role:"columnheader","aria-sort":q("name")},[r.createElementVNode("button",{type:"button",class:"fe-list__sort",title:r.unref(i)("col.sort"),onClick:I[0]||(I[0]=H=>L("name"))},[r.createTextVNode(r.toDisplayString(r.unref(i)("col.name"))+" ",1),N.value==="name"?(r.openBlock(),r.createElementBlock("span",E_,r.toDisplayString(D.value==="asc"?"↑":"↓"),1)):r.createCommentVNode("",!0)],8,k_)],8,w_),r.createElementVNode("div",{class:"fe-list__col fe-list__col--size",role:"columnheader","aria-sort":q("size")},[r.createElementVNode("button",{type:"button",class:"fe-list__sort",title:r.unref(i)("col.sort"),onClick:I[1]||(I[1]=H=>L("size"))},[r.createTextVNode(r.toDisplayString(r.unref(i)("col.size"))+" ",1),N.value==="size"?(r.openBlock(),r.createElementBlock("span",C_,r.toDisplayString(D.value==="asc"?"↑":"↓"),1)):r.createCommentVNode("",!0)],8,S_)],8,x_),r.createElementVNode("div",{class:"fe-list__col fe-list__col--mod",role:"columnheader","aria-sort":q("modified")},[r.createElementVNode("button",{type:"button",class:"fe-list__sort",title:r.unref(i)("col.sort"),onClick:I[2]||(I[2]=H=>L("modified"))},[r.createTextVNode(r.toDisplayString(r.unref(i)("col.modified"))+" ",1),N.value==="modified"?(r.openBlock(),r.createElementBlock("span",A_,r.toDisplayString(D.value==="asc"?"↑":"↓"),1)):r.createCommentVNode("",!0)],8,T_)],8,N_)]),r.createElementVNode("div",D_,[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(V.value,H=>(r.openBlock(),r.createElementBlock(r.Fragment,{key:H.id},[H.label?(r.openBlock(),r.createElementBlock("div",M_,r.toDisplayString(H.label),1)):r.createCommentVNode("",!0),(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(H.nodes,G=>{var oe,de;return r.openBlock(),r.createElementBlock("div",{key:G.path,class:r.normalizeClass(["fe-list__row",{"is-selected":l(G),"is-dir":G.type==="dir","is-trash":G.trashed,"is-clipped":(oe=e.clipped)==null?void 0:oe.has(G.path),"is-droptarget":f.value===G.path}]),role:"row",tabindex:"0","aria-selected":l(G)?"true":"false","aria-label":r.unref(s)(G),"data-fe-path":G.path,draggable:"true",onClick:ve=>c(G,ve),onDblclick:ve=>d(G),onContextmenu:ve=>u(G,ve),onDragstart:ve=>h(G,ve),onDragover:ve=>p(G,ve),onDragleave:ve=>w(G),onDrop:ve=>g(G,ve),onTouchstartPassive:ve=>b(G,ve),onTouchend:y,onTouchmove:y},[r.createElementVNode("div",{class:"fe-list__col fe-list__col--star",role:"gridcell",onClick:I[3]||(I[3]=r.withModifiers(()=>{},["stop"]))},[typeof G.id=="number"&&G.type==="file"?(r.openBlock(),r.createBlock(vf,{key:0,starred:!!((de=e.starredIds)!=null&&de.has(G.id)),"node-id":G.id,"api-base":e.apiBase,"auth-headers":e.authHeaders,"auth-credentials":e.authCredentials,compact:"",onChange:ve=>a("star-change",G,ve)},null,8,["starred","node-id","api-base","auth-headers","auth-credentials","onChange"])):r.createCommentVNode("",!0)]),r.createElementVNode("div",O_,[_(G)?(r.openBlock(),r.createElementBlock("span",I_,r.toDisplayString(_(G)),1)):(r.openBlock(),r.createElementBlock("span",{key:1,class:"fe-list__icon fe-list__icon--svg","aria-hidden":"true",innerHTML:r.unref(ti)(G)},null,8,R_)),r.createElementVNode("div",L_,[r.createElementVNode("span",{class:"fe-list__name",title:G.basename},[r.createTextVNode(r.toDisplayString(r.unref(s)(G))+" ",1),k(G)?(r.openBlock(),r.createElementBlock("span",z_,r.toDisplayString(r.unref(i)("search.in_content")),1)):r.createCommentVNode("",!0)],8,F_),e.showParentPath?(r.openBlock(),r.createElementBlock("span",{key:0,class:"fe-list__parent",title:T(G.path)},r.toDisplayString(T(G.path)||"—"),9,P_)):r.createCommentVNode("",!0),E(G)?(r.openBlock(),r.createElementBlock("span",$_,[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(r.unref(Ji)(E(G)),(ve,Ee)=>(r.openBlock(),r.createElementBlock(r.Fragment,{key:Ee},[ve.match?(r.openBlock(),r.createElementBlock("mark",V_,r.toDisplayString(ve.text),1)):(r.openBlock(),r.createElementBlock(r.Fragment,{key:1},[r.createTextVNode(r.toDisplayString(ve.text),1)],64))],64))),128))])):r.createCommentVNode("",!0)])]),r.createElementVNode("div",U_,r.toDisplayString(r.unref(o)(G.size)),1),r.createElementVNode("div",H_,r.toDisplayString(A(G.last_modified)),1)],42,B_)}),128))],64))),128)),!e.loading&&$.value.length===0?(r.openBlock(),r.createElementBlock("div",G_,r.toDisplayString(r.unref(i)("empty.folder")),1)):r.createCommentVNode("",!0)])],10,v_))}}),q_=["aria-label","aria-busy"],K_=["aria-selected","aria-label","data-fe-path","onClick","onDblclick","onContextmenu","onDragstart","onDragover","onDragleave","onDrop","onTouchstartPassive"],W_={class:"fe-grid__thumb"},Y_=["src","alt"],j_={key:1,class:"fe-grid__icon"},X_=["innerHTML"],Z_=["title"],J_=["title"],Q_={class:"fe-grid__meta"},e3=["title"],t3={key:0,class:"fe-grid__mark"},n3={key:0,class:"fe-grid__empty"},wf=r.defineComponent({__name:"GridView",props:{files:{},selected:{},clipped:{},showParentPath:{type:Boolean},locale:{},loading:{type:Boolean},thumbSrc:{type:Function}},emits:["click-card","dbl-card","context-card","item-drag-start","item-drop-into"],setup(e,{emit:t}){const n=e,a=t,{t:i,formatSize:o,nodeDisplayName:s}=qt(()=>n.locale);function l(k){return n.thumbSrc?n.thumbSrc(k):k.thumb_url??null}function c(k){return n.selected.has(k.path)}function d(k,N){a("click-card",k,{ctrl:N.ctrlKey||N.metaKey,shift:N.shiftKey})}function u(k){a("dbl-card",k)}function h(k,N){N.preventDefault(),N.stopPropagation(),a("context-card",k,N)}function f(k,N){oc(N,s(k),n.selected.has(k.path)?n.selected.size:1),a("item-drag-start",k,N)}const p=r.ref(null);function w(k,N){var D;k.type==="dir"&&(D=N.dataTransfer)!=null&&D.types.includes("application/x-brf-files")&&(N.preventDefault(),N.stopPropagation(),N.dataTransfer&&(N.dataTransfer.dropEffect="move"),p.value=k.path)}function g(k){p.value===k.path&&(p.value=null)}function v(k,N){var D;p.value=null,k.type==="dir"&&(D=N.dataTransfer)!=null&&D.types.includes("application/x-brf-files")&&(N.preventDefault(),N.stopPropagation(),a("item-drop-into",k,N))}let m,b=null;function y(k,N){b=k,m&&clearTimeout(m),m=setTimeout(()=>{if(b){const D=N.touches[0];a("context-card",b,{clientX:D.clientX,clientY:D.clientY,preventDefault:()=>{}})}},500)}function _(){m&&clearTimeout(m),b=null}function S(k){const N=k.replace(/^[a-z][a-z0-9+.-]*:\/\//i,""),D=N.lastIndexOf("/");return D===-1?"":N.slice(0,D)}function A(k){return k.basename===".trash"?"🗑":k.mime_type==="inode/storage"?"💾":k.type==="dir"&&k.e2e===!0?"🔒":null}function T(k){const N=k.snippet;return typeof N=="string"?N:""}function E(k){return Ji(k).map(N=>N.text).join("")}return(k,N)=>(r.openBlock(),r.createElementBlock("div",{class:r.normalizeClass(["fe-grid",{"is-loading":e.loading}]),role:"listbox","aria-multiselectable":"true","aria-label":r.unref(i)("grid.aria"),"aria-busy":e.loading?"true":void 0},[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(e.files,D=>{var U;return r.openBlock(),r.createElementBlock("div",{key:D.path,class:r.normalizeClass(["fe-grid__card",{"is-selected":c(D),"is-dir":D.type==="dir","is-trash":D.trashed,"is-clipped":(U=e.clipped)==null?void 0:U.has(D.path),"is-droptarget":p.value===D.path}]),tabindex:"0",role:"option","aria-selected":c(D)?"true":"false","aria-label":r.unref(s)(D),"data-fe-path":D.path,draggable:"true",onClick:L=>d(D,L),onDblclick:L=>u(D),onContextmenu:L=>h(D,L),onDragstart:L=>f(D,L),onDragover:L=>w(D,L),onDragleave:L=>g(D),onDrop:L=>v(D,L),onTouchstartPassive:L=>y(D,L),onTouchend:_,onTouchmove:_},[r.createElementVNode("div",W_,[l(D)?(r.openBlock(),r.createElementBlock("img",{key:0,src:l(D),alt:D.basename,loading:"lazy",draggable:"false"},null,8,Y_)):A(D)?(r.openBlock(),r.createElementBlock("span",j_,r.toDisplayString(A(D)),1)):(r.openBlock(),r.createElementBlock("span",{key:2,class:"fe-grid__icon fe-grid__icon--svg",innerHTML:r.unref(ti)(D)},null,8,X_))]),r.createElementVNode("div",{class:"fe-grid__label",title:D.basename},r.toDisplayString(r.unref(s)(D)),9,Z_),e.showParentPath?(r.openBlock(),r.createElementBlock("div",{key:0,class:"fe-grid__parent",title:S(D.path)},r.toDisplayString(S(D.path)||"—"),9,J_)):r.createCommentVNode("",!0),r.createElementVNode("div",Q_,r.toDisplayString(r.unref(o)(D.size)),1),T(D)?(r.openBlock(),r.createElementBlock("div",{key:1,class:"fe-grid__snippet",title:E(T(D))},[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(r.unref(Ji)(T(D)),(L,q)=>(r.openBlock(),r.createElementBlock(r.Fragment,{key:q},[L.match?(r.openBlock(),r.createElementBlock("mark",t3,r.toDisplayString(L.text),1)):(r.openBlock(),r.createElementBlock(r.Fragment,{key:1},[r.createTextVNode(r.toDisplayString(L.text),1)],64))],64))),128))],8,e3)):r.createCommentVNode("",!0)],42,K_)}),128)),!e.loading&&e.files.length===0?(r.openBlock(),r.createElementBlock("div",n3,r.toDisplayString(r.unref(i)("empty.folder")),1)):r.createCommentVNode("",!0)],10,q_))}}),r3=["aria-label","aria-busy"],a3=["aria-selected","aria-label","onClick","onDblclick","onContextmenu","onDragstart","onDragover","onDragleave","onDrop","onTouchstartPassive"],i3={class:"fe-gal__thumb"},o3=["src","alt"],l3={key:1,class:"fe-gal__icon"},s3=["innerHTML"],c3={class:"fe-gal__meta","aria-hidden":"true"},d3={key:0,class:"fe-gal__meta-line"},u3=["title"],f3=["title"],h3={key:0,class:"fe-gal__empty"},kf=r.defineComponent({__name:"GalleryView",props:{files:{},selected:{},clipped:{},showParentPath:{type:Boolean},locale:{},loading:{type:Boolean},thumbSrc:{type:Function}},emits:["click-card","dbl-card","context-card","item-drag-start","item-drop-into"],setup(e,{emit:t}){const n=e,a=t,{t:i,formatSize:o,nodeDisplayName:s}=qt(()=>n.locale);function l(k){return n.thumbSrc?n.thumbSrc(k):k.thumb_url??null}function c(k){return n.selected.has(k.path)}function d(k,N){a("click-card",k,{ctrl:N.ctrlKey||N.metaKey,shift:N.shiftKey})}function u(k){a("dbl-card",k)}function h(k,N){N.preventDefault(),N.stopPropagation(),a("context-card",k,N)}function f(k,N){oc(N,s(k),n.selected.has(k.path)?n.selected.size:1),a("item-drag-start",k,N)}const p=r.ref(null);function w(k,N){var D;k.type==="dir"&&(D=N.dataTransfer)!=null&&D.types.includes("application/x-brf-files")&&(N.preventDefault(),N.stopPropagation(),N.dataTransfer&&(N.dataTransfer.dropEffect="move"),p.value=k.path)}function g(k){p.value===k.path&&(p.value=null)}function v(k,N){var D;p.value=null,k.type==="dir"&&(D=N.dataTransfer)!=null&&D.types.includes("application/x-brf-files")&&(N.preventDefault(),N.stopPropagation(),a("item-drop-into",k,N))}let m,b=null;function y(k,N){b=k,m&&clearTimeout(m),m=setTimeout(()=>{if(b){const D=N.touches[0];a("context-card",b,{clientX:D.clientX,clientY:D.clientY,preventDefault:()=>{}})}},500)}function _(){m&&clearTimeout(m),b=null}function S(k){const N=k.replace(/^[a-z][a-z0-9+.-]*:\/\//i,""),D=N.lastIndexOf("/");return D===-1?"":N.slice(0,D)}function A(k){return k.basename===".trash"?"🗑":k.mime_type==="inode/storage"?"💾":k.type==="dir"&&k.e2e===!0?"🔒":null}function T(k){return k?new Date(k*(k<1e12?1e3:1)).toLocaleString():""}function E(k){const N=T(k.last_modified);return[k.type==="dir"?"":o(k.size),N].filter(U=>!!U).join(" · ")}return(k,N)=>(r.openBlock(),r.createElementBlock("div",{class:r.normalizeClass(["fe-gal",{"is-loading":e.loading}]),role:"listbox","aria-multiselectable":"true","aria-label":r.unref(i)("gallery.aria"),"aria-busy":e.loading?"true":void 0},[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(e.files,D=>{var U;return r.openBlock(),r.createElementBlock("div",{key:D.path,class:r.normalizeClass(["fe-gal__card",{"is-selected":c(D),"is-dir":D.type==="dir","is-trash":D.trashed,"is-clipped":(U=e.clipped)==null?void 0:U.has(D.path),"is-droptarget":p.value===D.path}]),tabindex:"0",role:"option","aria-selected":c(D)?"true":"false","aria-label":r.unref(s)(D),draggable:"true",onClick:L=>d(D,L),onDblclick:L=>u(D),onContextmenu:L=>h(D,L),onDragstart:L=>f(D,L),onDragover:L=>w(D,L),onDragleave:L=>g(D),onDrop:L=>v(D,L),onTouchstartPassive:L=>y(D,L),onTouchend:_,onTouchmove:_},[r.createElementVNode("div",i3,[l(D)?(r.openBlock(),r.createElementBlock("img",{key:0,src:l(D),alt:D.basename,loading:"lazy",draggable:"false"},null,8,o3)):A(D)?(r.openBlock(),r.createElementBlock("span",l3,r.toDisplayString(A(D)),1)):(r.openBlock(),r.createElementBlock("span",{key:2,class:"fe-gal__icon fe-gal__icon--svg",innerHTML:r.unref(ti)(D)},null,8,s3)),r.createElementVNode("div",c3,[E(D)?(r.openBlock(),r.createElementBlock("span",d3,r.toDisplayString(E(D)),1)):r.createCommentVNode("",!0),e.showParentPath&&S(D.path)?(r.openBlock(),r.createElementBlock("span",{key:1,class:"fe-gal__meta-line fe-gal__meta-line--path",title:S(D.path)},r.toDisplayString(S(D.path)),9,u3)):r.createCommentVNode("",!0)])]),r.createElementVNode("div",{class:"fe-gal__label",title:D.basename},r.toDisplayString(r.unref(s)(D)),9,f3)],42,a3)}),128)),!e.loading&&e.files.length===0?(r.openBlock(),r.createElementBlock("div",h3,r.toDisplayString(r.unref(i)("empty.folder")),1)):r.createCommentVNode("",!0)],10,r3))}}),p3=r.defineComponent({__name:"UploadProgress",props:{jobs:{},locale:{},center:{}},emits:["cancel","dismiss","retry"],setup(e,{emit:t}){const n=e,a=t;function i(o){return o==="done"?"done":o==="error"?"error":o==="aborted"?"aborted":"running"}return r.watch(()=>n.jobs,o=>{n.center.sync("upload",o.map(s=>({input:{id:s.id,kind:"upload",name:s.file.name,percent:s.totalBytes>0||s.status==="done"?s.percent:null,status:i(s.status),error:s.error??null,uploadedBytes:s.uploadedBytes,totalBytes:s.totalBytes,cancellable:s.status==="uploading"||s.status==="initializing",retryable:s.status==="error"},actions:{cancel:()=>a("cancel",s),dismiss:()=>a("dismiss",s),retry:()=>a("retry",s)}})))},{immediate:!0}),(o,s)=>r.createCommentVNode("",!0)}}),m3=r.defineComponent({__name:"PendingOpsTray",props:{ops:{},locale:{},center:{}},emits:["dismiss"],setup(e,{emit:t}){const n=e,a=t;function i(s){return s.status==="done"?"done":s.status==="error"?"error":"running"}function o(s){return s.status==="done"?100:s.progress_total<=0?null:Math.min(100,Math.round(s.progress_done/s.progress_total*100))}return r.watch(()=>n.ops,s=>{n.center.sync("ops",s.map(l=>({input:{id:l.id,kind:l.op_type,name:l.target_path||l.source_dir||"",percent:o(l),status:i(l),error:l.error_message,queued:l.status==="pending",doneCount:l.progress_done,totalCount:l.progress_total,cancellable:!1,retryable:!1},actions:{dismiss:()=>a("dismiss",l.id)}})))},{immediate:!0}),(s,l)=>r.createCommentVNode("",!0)}}),g3=["aria-label"],b3={class:"fe-inspector__head"},v3={class:"fe-inspector__title"},y3=["title","aria-label"],_3={class:"fe-inspector__scroll"},w3={class:"fe-inspector__section"},k3={class:"fe-inspector__heading"},E3={key:0,class:"fe-inspector__hero"},x3=["innerHTML"],S3={class:"fe-inspector__name"},C3={class:"fe-inspector__hero"},N3=["src"],T3=["innerHTML"],A3=["title"],D3={class:"fe-inspector__meta"},M3={class:"fe-inspector__row"},B3={class:"fe-inspector__pathcell"},O3=["title"],I3=["title","aria-label"],R3={key:0,class:"fe-inspector__row"},L3={class:"fe-inspector__row"},F3={key:1,class:"fe-inspector__row"},z3={class:"fe-inspector__mime"},P3={key:2,class:"fe-inspector__row"},$3={class:"fe-inspector__pathcell"},V3=["title"],U3=["title","aria-label"],H3={key:2,class:"fe-inspector__hero"},G3=["innerHTML"],q3=["title"],K3={class:"fe-inspector__sub"},W3={key:0,class:"fe-inspector__section"},Y3={class:"fe-inspector__heading"},j3={key:0,class:"fe-inspector__empty"},X3={key:0,class:"fe-inspector__empty"},Z3={key:1,class:"fe-inspector__versions"},J3={class:"fe-inspector__version-main"},Q3={class:"fe-inspector__version-n"},e5={class:"fe-inspector__version-meta"},t5={key:0,class:"fe-inspector__confirm"},n5={class:"fe-inspector__confirm-q"},r5={class:"fe-inspector__check"},a5={class:"fe-inspector__confirm-actions"},i5=["disabled","onClick"],o5=["disabled"],l5=["disabled","onClick"],s5=["disabled"],c5={key:1,class:"fe-inspector__section"},d5={class:"fe-inspector__heading"},u5={class:"fe-inspector__permrow"},f5={key:2,class:"fe-inspector__section"},h5={class:"fe-inspector__heading"},p5={key:0,class:"fe-inspector__empty"},m5={key:1,class:"fe-inspector__shares"},g5=["title"],b5={key:0,class:"fe-inspector__badge fe-inspector__badge--pin"},v5={key:1,class:"fe-inspector__share-exp"},y5=["title","aria-label","onClick"],_5={key:3,class:"fe-inspector__section"},w5={class:"fe-inspector__heading"},k5={key:0,class:"fe-inspector__countbadge"},E5={key:0,class:"fe-inspector__empty"},x5={key:0,class:"fe-inspector__empty"},S5={key:1,class:"fe-inspector__comments"},C5={class:"fe-inspector__comment-top"},N5=["title"],T5=["title"],A5=["disabled","title","aria-label","onClick"],D5={class:"fe-inspector__comment-body"},M5=["placeholder","aria-label","disabled"],B5=["disabled"],O5=r.defineComponent({__name:"InspectorPanel",props:{api:{},nodes:{},dirLabel:{},dirCount:{},dirPerm:{},locale:{},narrow:{type:Boolean},thumbSrc:{type:Function}},emits:["close","manage-permissions","toast","changed"],setup(e,{emit:t}){const n=e,a=t,{t:i,formatSize:o,nodeDisplayName:s}=qt(()=>n.locale),l=r.computed(()=>n.nodes.length===1?n.nodes[0]:null),c=r.computed(()=>n.nodes.length>1),d=r.computed(()=>{var ne;return((ne=l.value)==null?void 0:ne.type)==="file"}),u=r.computed(()=>{var ne;return typeof((ne=l.value)==null?void 0:ne.id)=="number"?l.value.id:null}),h=r.computed(()=>n.nodes.reduce((ne,me)=>ne+(typeof me.size=="number"?me.size:0),0)),f=r.computed(()=>{var me;const ne=(me=l.value)==null?void 0:me.etag;return typeof ne=="string"&&ne!==""?ne:null}),p=r.computed(()=>l.value&&d.value&&n.thumbSrc?n.thumbSrc(l.value):null);function w(ne){return ne.length>12?`${ne.slice(0,12)}…`:ne}function g(ne){if(!ne)return"—";try{return new Date(ne).toLocaleString(n.locale==="en"?"en-GB":"tr-TR",{dateStyle:"medium",timeStyle:"short"})}catch{return new Date(ne).toISOString()}}function v(ne){if(!ne)return"—";const me=Date.parse(ne);return Number.isNaN(me)?ne:g(me)}async function m(ne){try{await navigator.clipboard.writeText(ne),a("toast",i("inspector.copied"))}catch{a("toast",ne)}}const b=r.computed(()=>{if(!l.value)return"";const ne=l.value.perm;return typeof ne=="string"&&ne!==""?ne:n.dirPerm||""}),y=r.computed(()=>b.value==="editor"||b.value==="owner");function _(ne){return i(`inspector.perm.${ne}`)===`inspector.perm.${ne}`?ne:i(`inspector.perm.${ne}`)}const S=r.ref("idle"),A=r.ref([]),T=r.ref(null),E=r.ref(!0),k=r.ref(!1),N=r.ref("idle"),D=r.ref([]);let U=0;async function L(){const ne=++U;if(T.value=null,A.value=[],D.value=[],l.value&&d.value&&u.value!=null?(S.value="loading",q(ne)):S.value="hidden",l.value){N.value="loading";const me=l.value.path;try{const{shares:we}=await n.api.listShares(me);if(ne!==U)return;D.value=Array.isArray(we)?we:[],N.value="ok"}catch{if(ne!==U)return;N.value="hidden"}}else N.value="hidden"}async function q(ne){const me=u.value;if(me!=null)try{const we=await n.api.listVersions(me);if(ne!==U)return;A.value=we,S.value="ok"}catch(we){if(ne!==U)return;const Se=we.status;Se===401||Se===403||Se===404?S.value="hidden":S.value="error"}}function X(ne){T.value=ne.id,E.value=!0}async function $(ne){const me=u.value;if(!(me==null||k.value)){k.value=!0;try{await n.api.restoreVersion(me,ne.id,E.value),a("toast",i("inspector.versions.restored")),T.value=null,a("changed"),await q(++U)}catch(we){a("toast",we.message)}finally{k.value=!1}}}async function j(){const ne=u.value;if(!(ne==null||k.value)){k.value=!0;try{await n.api.snapshotVersion(ne),a("toast",i("inspector.versions.snapshotted")),await q(++U)}catch(me){const we=me.status;we===404||we===405||we===501?a("toast",i("inspector.versions.unsupported")):a("toast",me.message)}finally{k.value=!1}}}r.watch(()=>n.nodes.map(ne=>ne.path).join("\0"),()=>void L(),{immediate:!0});const J=r.ref("hidden"),V=r.ref([]),F=r.ref(""),I=r.ref(!1),H=r.computed(()=>{var ne;return typeof((ne=l.value)==null?void 0:ne.id)=="number"?l.value.id:null});let G=0;async function oe(){const ne=++G,me=H.value;if(me==null){J.value="hidden",V.value=[];return}J.value=V.value.length>0?"ok":"loading";try{const we=await n.api.listComments(me);if(ne!==G)return;V.value=we,J.value="ok"}catch(we){if(ne!==G)return;V.value=[];const Se=we.status;J.value=Se===401||Se===403||Se===404?"hidden":"error"}}async function de(){const ne=H.value,me=F.value.trim();if(!(ne==null||me===""||I.value)){I.value=!0;try{await n.api.addComment(ne,me),F.value="",await oe()}catch(we){a("toast",we.message)}finally{I.value=!1}}}async function ve(ne){if(!I.value){I.value=!0;try{await n.api.deleteComment(ne.id),await oe()}catch(me){a("toast",me.message)}finally{I.value=!1}}}function Ee(ne){const me=Date.parse(ne);if(Number.isNaN(me))return ne;const we=Math.round((me-Date.now())/1e3),Se=Math.abs(we),De=[["year",31536e3],["month",2592e3],["day",86400],["hour",3600],["minute",60]];try{const Xe=new Intl.RelativeTimeFormat(n.locale==="en"?"en":"tr",{numeric:"auto"});for(const[tt,Pe]of De)if(Se>=Pe)return Xe.format(Math.trunc(we/Pe),tt);return Xe.format(we,"second")}catch{return v(ne)}}return r.watch(()=>H.value,()=>{V.value=[],F.value="",oe()},{immediate:!0}),(ne,me)=>(r.openBlock(),r.createElementBlock("aside",{class:r.normalizeClass(["fe-inspector",{"fe-inspector--overlay":e.narrow}]),role:"complementary","aria-label":r.unref(i)("inspector.title")},[r.createElementVNode("header",b3,[r.createElementVNode("h2",v3,r.toDisplayString(r.unref(i)("inspector.title")),1),r.createElementVNode("button",{type:"button",class:"fe-inspector__close",title:r.unref(i)("inspector.close"),"aria-label":r.unref(i)("inspector.close"),onClick:me[0]||(me[0]=we=>a("close"))},"×",8,y3)]),r.createElementVNode("div",_3,[r.createElementVNode("section",w3,[r.createElementVNode("h3",k3,r.toDisplayString(r.unref(i)("inspector.section.general")),1),c.value?(r.openBlock(),r.createElementBlock("div",E3,[r.createElementVNode("span",{class:"fe-inspector__bigicon",innerHTML:r.unref(ti)({type:"dir"})},null,8,x3),r.createElementVNode("p",S3,r.toDisplayString(r.unref(i)("inspector.items_summary",{n:e.nodes.length,size:r.unref(o)(h.value)})),1)])):l.value?(r.openBlock(),r.createElementBlock(r.Fragment,{key:1},[r.createElementVNode("div",C3,[p.value?(r.openBlock(),r.createElementBlock("img",{key:0,class:"fe-inspector__thumb",src:p.value,alt:"","aria-hidden":"true"},null,8,N3)):(r.openBlock(),r.createElementBlock("span",{key:1,class:"fe-inspector__bigicon",innerHTML:r.unref(ti)(l.value)},null,8,T3)),r.createElementVNode("p",{class:"fe-inspector__name",title:l.value.basename},r.toDisplayString(r.unref(s)(l.value)),9,A3)]),r.createElementVNode("dl",D3,[r.createElementVNode("div",M3,[r.createElementVNode("dt",null,r.toDisplayString(r.unref(i)("inspector.path")),1),r.createElementVNode("dd",B3,[r.createElementVNode("span",{class:"fe-inspector__path",title:l.value.path},r.toDisplayString(l.value.path),9,O3),r.createElementVNode("button",{type:"button",class:"fe-inspector__copy",title:r.unref(i)("inspector.copy"),"aria-label":r.unref(i)("inspector.copy"),onClick:me[1]||(me[1]=we=>m(l.value.path))},"⧉",8,I3)])]),d.value?(r.openBlock(),r.createElementBlock("div",R3,[r.createElementVNode("dt",null,r.toDisplayString(r.unref(i)("inspector.size")),1),r.createElementVNode("dd",null,r.toDisplayString(r.unref(o)(typeof l.value.size=="number"?l.value.size:null)),1)])):r.createCommentVNode("",!0),r.createElementVNode("div",L3,[r.createElementVNode("dt",null,r.toDisplayString(r.unref(i)("inspector.modified")),1),r.createElementVNode("dd",null,r.toDisplayString(g(l.value.last_modified)),1)]),d.value&&l.value.mime_type?(r.openBlock(),r.createElementBlock("div",F3,[r.createElementVNode("dt",null,r.toDisplayString(r.unref(i)("inspector.mime")),1),r.createElementVNode("dd",z3,r.toDisplayString(l.value.mime_type),1)])):r.createCommentVNode("",!0),f.value?(r.openBlock(),r.createElementBlock("div",P3,[r.createElementVNode("dt",null,r.toDisplayString(r.unref(i)("inspector.etag")),1),r.createElementVNode("dd",$3,[r.createElementVNode("span",{class:"fe-inspector__path",title:f.value},r.toDisplayString(w(f.value)),9,V3),r.createElementVNode("button",{type:"button",class:"fe-inspector__copy",title:r.unref(i)("inspector.copy"),"aria-label":r.unref(i)("inspector.copy"),onClick:me[2]||(me[2]=we=>m(f.value))},"⧉",8,U3)])])):r.createCommentVNode("",!0)])],64)):(r.openBlock(),r.createElementBlock("div",H3,[r.createElementVNode("span",{class:"fe-inspector__bigicon",innerHTML:r.unref(ti)({type:"dir"})},null,8,G3),r.createElementVNode("p",{class:"fe-inspector__name",title:e.dirLabel},r.toDisplayString(e.dirLabel),9,q3),r.createElementVNode("p",K3,r.toDisplayString(r.unref(i)("inspector.folder_items",{n:e.dirCount})),1)]))]),S.value==="ok"||S.value==="error"?(r.openBlock(),r.createElementBlock("section",W3,[r.createElementVNode("h3",Y3,r.toDisplayString(r.unref(i)("inspector.section.versions")),1),S.value==="error"?(r.openBlock(),r.createElementBlock("p",j3,r.toDisplayString(r.unref(i)("inspector.error")),1)):(r.openBlock(),r.createElementBlock(r.Fragment,{key:1},[A.value.length===0?(r.openBlock(),r.createElementBlock("p",X3,r.toDisplayString(r.unref(i)("inspector.versions.empty")),1)):(r.openBlock(),r.createElementBlock("ul",Z3,[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(A.value,we=>(r.openBlock(),r.createElementBlock("li",{key:we.id,class:"fe-inspector__version"},[r.createElementVNode("div",J3,[r.createElementVNode("span",Q3,r.toDisplayString(r.unref(i)("inspector.versions.v",{n:we.version_n})),1),r.createElementVNode("span",e5,r.toDisplayString(v(we.created_at))+" · "+r.toDisplayString(r.unref(o)(we.size)),1)]),T.value===we.id?(r.openBlock(),r.createElementBlock("div",t5,[r.createElementVNode("p",n5,r.toDisplayString(r.unref(i)("inspector.versions.restore_confirm")),1),r.createElementVNode("label",r5,[r.withDirectives(r.createElementVNode("input",{"onUpdate:modelValue":me[3]||(me[3]=Se=>E.value=Se),type:"checkbox"},null,512),[[r.vModelCheckbox,E.value]]),r.createTextVNode(" "+r.toDisplayString(r.unref(i)("inspector.versions.snapshot_current")),1)]),r.createElementVNode("div",a5,[r.createElementVNode("button",{type:"button",class:"fe-btn fe-btn--primary fe-btn--sm",disabled:k.value,onClick:Se=>$(we)},r.toDisplayString(r.unref(i)("inspector.versions.confirm")),9,i5),r.createElementVNode("button",{type:"button",class:"fe-btn fe-btn--sm",disabled:k.value,onClick:me[4]||(me[4]=Se=>T.value=null)},r.toDisplayString(r.unref(i)("inspector.versions.cancel")),9,o5)])])):(r.openBlock(),r.createElementBlock("button",{key:1,type:"button",class:"fe-btn fe-btn--sm",disabled:k.value,onClick:Se=>X(we)},r.toDisplayString(r.unref(i)("inspector.versions.restore")),9,l5))]))),128))])),r.createElementVNode("button",{type:"button",class:"fe-btn fe-btn--sm fe-inspector__snapshot",disabled:k.value,onClick:j},r.toDisplayString(r.unref(i)("inspector.versions.take_snapshot")),9,s5)],64))])):r.createCommentVNode("",!0),l.value&&b.value?(r.openBlock(),r.createElementBlock("section",c5,[r.createElementVNode("h3",d5,r.toDisplayString(r.unref(i)("inspector.section.permissions")),1),r.createElementVNode("div",u5,[r.createElementVNode("span",{class:r.normalizeClass(["fe-inspector__badge",`fe-inspector__badge--${b.value}`])},r.toDisplayString(_(b.value)),3),y.value?(r.openBlock(),r.createElementBlock("button",{key:0,type:"button",class:"fe-btn fe-btn--sm",onClick:me[5]||(me[5]=we=>a("manage-permissions",l.value))},r.toDisplayString(r.unref(i)("inspector.perm.manage")),1)):r.createCommentVNode("",!0)])])):r.createCommentVNode("",!0),N.value==="ok"?(r.openBlock(),r.createElementBlock("section",f5,[r.createElementVNode("h3",h5,r.toDisplayString(r.unref(i)("inspector.section.shares")),1),D.value.length===0?(r.openBlock(),r.createElementBlock("p",p5,r.toDisplayString(r.unref(i)("inspector.shares.empty")),1)):(r.openBlock(),r.createElementBlock("ul",m5,[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(D.value,we=>(r.openBlock(),r.createElementBlock("li",{key:we.uuid,class:"fe-inspector__share"},[r.createElementVNode("span",{class:"fe-inspector__share-url",title:we.url},r.toDisplayString(we.url),9,g5),we.password_pin?(r.openBlock(),r.createElementBlock("span",b5,"PIN")):r.createCommentVNode("",!0),we.expires_at?(r.openBlock(),r.createElementBlock("span",v5,r.toDisplayString(v(we.expires_at)),1)):r.createCommentVNode("",!0),r.createElementVNode("button",{type:"button",class:"fe-inspector__copy",title:r.unref(i)("inspector.shares.copy"),"aria-label":r.unref(i)("inspector.shares.copy"),onClick:Se=>m(we.url)},"⧉",8,y5)]))),128))]))])):r.createCommentVNode("",!0),J.value==="ok"||J.value==="error"?(r.openBlock(),r.createElementBlock("section",_5,[r.createElementVNode("h3",w5,[r.createTextVNode(r.toDisplayString(r.unref(i)("inspector.section.comments"))+" ",1),V.value.length>0?(r.openBlock(),r.createElementBlock("span",k5,r.toDisplayString(V.value.length),1)):r.createCommentVNode("",!0)]),J.value==="error"?(r.openBlock(),r.createElementBlock("p",E5,r.toDisplayString(r.unref(i)("inspector.error")),1)):(r.openBlock(),r.createElementBlock(r.Fragment,{key:1},[V.value.length===0?(r.openBlock(),r.createElementBlock("p",x5,r.toDisplayString(r.unref(i)("inspector.comments.empty")),1)):(r.openBlock(),r.createElementBlock("ul",S5,[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(V.value,we=>(r.openBlock(),r.createElementBlock("li",{key:we.id,class:"fe-inspector__comment"},[r.createElementVNode("div",C5,[r.createElementVNode("span",{class:"fe-inspector__comment-author",title:we.author_name},r.toDisplayString(we.author_name||"—"),9,N5),r.createElementVNode("span",{class:"fe-inspector__comment-time",title:v(we.created_at)},r.toDisplayString(Ee(we.created_at)),9,T5),we.can_delete?(r.openBlock(),r.createElementBlock("button",{key:0,type:"button",class:"fe-inspector__comment-del",disabled:I.value,title:r.unref(i)("inspector.comments.delete"),"aria-label":r.unref(i)("inspector.comments.delete"),onClick:Se=>ve(we)},"×",8,A5)):r.createCommentVNode("",!0)]),r.createElementVNode("p",D5,r.toDisplayString(we.body),1)]))),128))])),r.createElementVNode("form",{class:"fe-inspector__comment-form",onSubmit:r.withModifiers(de,["prevent"])},[r.withDirectives(r.createElementVNode("input",{"onUpdate:modelValue":me[6]||(me[6]=we=>F.value=we),type:"text",class:"fe-inspector__comment-input",maxlength:"5000",placeholder:r.unref(i)("inspector.comments.placeholder"),"aria-label":r.unref(i)("inspector.comments.placeholder"),disabled:I.value},null,8,M5),[[r.vModelText,F.value]]),r.createElementVNode("button",{type:"submit",class:"fe-btn fe-btn--primary fe-btn--sm",disabled:I.value||F.value.trim()===""},r.toDisplayString(r.unref(i)("inspector.comments.send")),9,B5)],32)],64))])):r.createCommentVNode("",!0)])],10,g3))}}),I5=["aria-label"],R5={class:"fe-cmdp__inputwrap"},L5=["placeholder"],F5=["aria-selected","onMouseenter","onClick"],z5={class:"fe-cmdp__icon","aria-hidden":"true"},P5={class:"fe-cmdp__label"},$5={class:"fe-cmdp__group"},V5=["aria-selected","onMouseenter","onClick"],U5={class:"fe-cmdp__icon","aria-hidden":"true"},H5={class:"fe-cmdp__label"},G5={class:"fe-cmdp__group"},q5={key:0,class:"fe-cmdp__loading"},K5=["aria-selected","onMouseenter","onClick"],W5={class:"fe-cmdp__icon","aria-hidden":"true"},Y5={class:"fe-cmdp__hitbody"},j5={class:"fe-cmdp__hitline"},X5={class:"fe-cmdp__label"},Z5={key:0,class:"fe-cmdp__badge"},J5=["title"],Q5={key:1,class:"fe-cmdp__snippet"},e6={key:0,class:"fe-cmdp__mark"},t6={class:"fe-cmdp__group"},n6=["aria-selected","onMouseenter","onClick","onKeydown"],r6={class:"fe-cmdp__icon","aria-hidden":"true"},a6={class:"fe-cmdp__label"},i6=["title","aria-label","onClick"],o6={class:"fe-cmdp__group"},l6=["aria-selected","onMouseenter","onClick"],s6={class:"fe-cmdp__icon","aria-hidden":"true"},c6={class:"fe-cmdp__label"},d6={key:4,class:"fe-cmdp__empty"},u6={class:"fe-cmdp__hint"},f6=3,h6=8,p6=250,Ef="filex.saved-searches",xf=10,m6=r.defineComponent({__name:"CommandPalette",props:{open:{type:Boolean},locale:{},files:{},viewMode:{},canWrite:{type:Boolean},canGoUp:{type:Boolean},globalSearch:{type:Function},splitEnabled:{type:Boolean}},emits:["close","open-node","navigate","new-folder","upload","toggle-view","open-trash","refresh","go-up","open-hit","open-theme","open-shortcut-settings","start-tour","tab-new","split-toggle"],setup(e,{emit:t}){const n=e,a=t,{t:i,nodeDisplayName:o}=qt(()=>n.locale),s=r.ref(""),l=r.ref(0),c=r.ref(null),d=r.ref(null);function u(V,F){if(!F)return 0;const I=V.toLocaleLowerCase(),H=F.toLocaleLowerCase(),G=I.indexOf(H);if(G===-1)return-1;let oe=100-Math.min(G,50);return G===0&&(oe+=40),oe-=Math.min(I.length,40)/4,oe}const h=r.computed(()=>{const V=s.value.trim();if(!V.includes("/"))return[];const F=V.replace(/^\/+|\/+$/g,"");return F?[{kind:"goto",id:`goto:${F}`,label:`${i("palette.goto")}: ${F}`,icon:"➜",path:F}]:[]}),f=r.computed(()=>{const V=s.value.trim(),F=n.files.map(I=>({f:I,name:o(I),s:u(o(I),V)})).filter(I=>I.s>=0);return V&&F.sort((I,H)=>H.s-I.s),F.slice(0,8).map(I=>({kind:"file",id:`file:${I.f.path}`,label:I.name,icon:I.f.type==="dir"?"📁":"📄",node:I.f}))}),p=r.computed(()=>{const V=s.value.trim();return[{command:"new-folder",label:i("toolbar.new_folder"),icon:"📁",enabled:n.canWrite!==!1},{command:"upload",label:i("toolbar.upload"),icon:"⬆",enabled:n.canWrite!==!1},{command:"toggle-view",label:i("cmd.view_toggle"),icon:n.viewMode==="list"?"▦":n.viewMode==="grid"?"▣":"☰",enabled:!0},{command:"open-trash",label:i("cmd.trash"),icon:"🗑",enabled:!0},{command:"refresh",label:i("toolbar.refresh"),icon:"⟳",enabled:!0},{command:"go-up",label:i("toolbar.go_up"),icon:"↑",enabled:n.canGoUp!==!1},{command:"open-theme",label:i("theme.menu"),icon:"🎨",enabled:!0},{command:"open-shortcut-settings",label:i("shortcuts.settings.menu"),icon:"⌨",enabled:!0},{command:"start-tour",label:i("tour.restart"),icon:"🎓",enabled:!0},{command:"tab-new",label:i("cmd.tab_new"),icon:"⧉",enabled:!0},{command:"split-toggle",label:i("cmd.split_toggle"),icon:"◫",enabled:n.splitEnabled!==!1}].filter(I=>I.enabled&&u(I.label,V)>=0).map(I=>({kind:"command",id:`cmd:${I.command}`,label:I.label,icon:I.icon,command:I.command}))}),w=r.ref([]),g=r.ref(!1);let v,m=0;function b(V){v&&clearTimeout(v);const F=n.globalSearch;if(!F||V.length<f6){w.value=[],g.value=!1;return}g.value=!0,v=setTimeout(async()=>{const I=++m;try{const H=await F(V);if(I!==m)return;w.value=Array.isArray(H)?H.slice(0,h6):[]}catch{I===m&&(w.value=[])}finally{I===m&&(g.value=!1)}},p6)}function y(V){const F=String(V.path??"").replace(/^\/+|\/+$/g,""),I=F.lastIndexOf("/"),H=I===-1?"":F.slice(0,I),G=typeof V.storage=="string"&&V.storage||typeof V.storage_name=="string"&&V.storage_name||"";return G&&H?`${G}/${H}`:G||H||"/"}const _=r.computed(()=>w.value.map(V=>({kind:"hit",id:`hit:${V.storage_id??""}:${V.path??""}:${V.id??""}`,label:String(V.name??V.path??""),icon:V.type==="dir"?"📁":"📄",hit:V,crumb:y(V),inContent:ic(V.matched),snippet:typeof V.snippet=="string"?V.snippet:""}))),S=r.ref([]);function A(){try{const V=localStorage.getItem(Ef);if(!V)return[];const F=JSON.parse(V);return Array.isArray(F)?F.filter(I=>typeof I=="string"&&I.trim()!=="").slice(0,xf):[]}catch{return[]}}function T(V){S.value=V.slice(0,xf);try{localStorage.setItem(Ef,JSON.stringify(S.value))}catch{}}function E(V){const F=V.trim();if(!F)return;const I=S.value.filter(H=>H!==F);I.unshift(F),T(I)}function k(V){T(S.value.filter(F=>F!==V)),l.value>=D.value.length&&(l.value=Math.max(0,D.value.length-1))}const N=r.computed(()=>{const V=s.value.trim(),F=[];V&&!S.value.includes(V)&&F.push({kind:"save",id:`save:${V}`,label:`${i("palette.save")}: ${V}`,icon:"💾",query:V});const I=S.value.map(H=>({s:H,sc:u(H,V)})).filter(H=>H.sc>=0||!V);for(const H of I)F.push({kind:"saved",id:`saved:${H.s}`,label:H.s,icon:"🔖",query:H.s});return F}),D=r.computed(()=>[...h.value,...f.value,..._.value,...N.value,...p.value]),U=r.computed(()=>h.value.length),L=r.computed(()=>U.value+f.value.length),q=r.computed(()=>L.value+_.value.length),X=r.computed(()=>q.value+N.value.length);r.watch(s,V=>{l.value=0,b(V.trim())});function $(V){const F=D.value.length;F&&(l.value=(l.value+V+F)%F,r.nextTick(()=>{var I,H;(H=(I=d.value)==null?void 0:I.querySelector(".is-active"))==null||H.scrollIntoView({block:"nearest"})}))}function j(V){const F=V??D.value[l.value];if(F){if(F.kind==="saved"){s.value=F.query,r.nextTick(()=>{var I;return(I=c.value)==null?void 0:I.focus()});return}if(F.kind==="save"){E(F.query),r.nextTick(()=>{var I;return(I=c.value)==null?void 0:I.focus()});return}if(a("close"),F.kind==="hit"){a("open-hit",F.hit);return}if(F.kind==="file")a("open-node",F.node);else if(F.kind==="goto")a("navigate",F.path);else switch(F.command){case"new-folder":a("new-folder");break;case"upload":a("upload");break;case"toggle-view":a("toggle-view");break;case"open-trash":a("open-trash");break;case"refresh":a("refresh");break;case"go-up":a("go-up");break;case"open-theme":a("open-theme");break;case"open-shortcut-settings":a("open-shortcut-settings");break;case"start-tour":a("start-tour");break;case"tab-new":a("tab-new");break;case"split-toggle":a("split-toggle");break}}}function J(V){if(n.open)switch(V.key){case"ArrowDown":V.preventDefault(),V.stopPropagation(),$(1);break;case"ArrowUp":V.preventDefault(),V.stopPropagation(),$(-1);break;case"Enter":V.preventDefault(),V.stopPropagation(),j();break;case"Escape":V.preventDefault(),V.stopPropagation(),a("close");break}}return r.watch(()=>n.open,V=>{V?(s.value="",l.value=0,w.value=[],g.value=!1,S.value=A(),document.addEventListener("keydown",J,!0),r.nextTick(()=>{var F;return(F=c.value)==null?void 0:F.focus()})):(v&&clearTimeout(v),document.removeEventListener("keydown",J,!0))}),r.onBeforeUnmount(()=>{v&&clearTimeout(v),document.removeEventListener("keydown",J,!0)}),(V,F)=>(r.openBlock(),r.createBlock(r.Transition,{name:"fe-modal"},{default:r.withCtx(()=>[e.open?(r.openBlock(),r.createElementBlock("div",{key:0,class:"fe-modal__backdrop fe-cmdp__backdrop",role:"presentation",onClick:F[2]||(F[2]=I=>a("close"))},[r.createElementVNode("div",{class:"fe-cmdp",role:"dialog","aria-modal":"true","aria-label":r.unref(i)("palette.placeholder"),onClick:F[1]||(F[1]=r.withModifiers(()=>{},["stop"]))},[r.createElementVNode("div",R5,[F[3]||(F[3]=r.createElementVNode("svg",{class:"fe-cmdp__glyph",width:"16",height:"16",viewBox:"0 0 16 16",fill:"none",stroke:"currentColor","stroke-width":"1.5","stroke-linecap":"round","aria-hidden":"true"},[r.createElementVNode("circle",{cx:"7",cy:"7",r:"4.5"}),r.createElementVNode("path",{d:"m10.5 10.5 3.5 3.5"})],-1)),r.withDirectives(r.createElementVNode("input",{ref_key:"inputEl",ref:c,"onUpdate:modelValue":F[0]||(F[0]=I=>s.value=I),type:"text",class:"fe-cmdp__input",placeholder:r.unref(i)("palette.placeholder"),autocomplete:"off",spellcheck:"false"},null,8,L5),[[r.vModelText,s.value]])]),r.createElementVNode("div",{ref_key:"listEl",ref:d,class:"fe-cmdp__list",role:"listbox"},[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(h.value,(I,H)=>(r.openBlock(),r.createElementBlock("button",{key:I.id,type:"button",class:r.normalizeClass(["fe-cmdp__item",{"is-active":H===l.value}]),role:"option","aria-selected":H===l.value,onMouseenter:G=>l.value=H,onClick:G=>j(I)},[r.createElementVNode("span",z5,r.toDisplayString(I.icon),1),r.createElementVNode("span",P5,r.toDisplayString(I.label),1)],42,F5))),128)),f.value.length?(r.openBlock(),r.createElementBlock(r.Fragment,{key:0},[r.createElementVNode("div",$5,r.toDisplayString(r.unref(i)("palette.files")),1),(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(f.value,(I,H)=>(r.openBlock(),r.createElementBlock("button",{key:I.id,type:"button",class:r.normalizeClass(["fe-cmdp__item",{"is-active":U.value+H===l.value}]),role:"option","aria-selected":U.value+H===l.value,onMouseenter:G=>l.value=U.value+H,onClick:G=>j(I)},[r.createElementVNode("span",U5,r.toDisplayString(I.icon),1),r.createElementVNode("span",H5,r.toDisplayString(I.label),1)],42,V5))),128))],64)):r.createCommentVNode("",!0),_.value.length||g.value?(r.openBlock(),r.createElementBlock(r.Fragment,{key:1},[r.createElementVNode("div",G5,r.toDisplayString(r.unref(i)("palette.everywhere")),1),g.value&&!_.value.length?(r.openBlock(),r.createElementBlock("div",q5,r.toDisplayString(r.unref(i)("palette.searching")),1)):r.createCommentVNode("",!0),(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(_.value,(I,H)=>(r.openBlock(),r.createElementBlock("button",{key:I.id,type:"button",class:r.normalizeClass(["fe-cmdp__item fe-cmdp__item--hit",{"is-active":L.value+H===l.value}]),role:"option","aria-selected":L.value+H===l.value,onMouseenter:G=>l.value=L.value+H,onClick:G=>j(I)},[r.createElementVNode("span",W5,r.toDisplayString(I.icon),1),r.createElementVNode("span",Y5,[r.createElementVNode("span",j5,[r.createElementVNode("span",X5,r.toDisplayString(I.label),1),I.inContent?(r.openBlock(),r.createElementBlock("span",Z5,r.toDisplayString(r.unref(i)("search.in_content")),1)):r.createCommentVNode("",!0)]),I.crumb?(r.openBlock(),r.createElementBlock("span",{key:0,class:"fe-cmdp__crumb",title:I.crumb},r.toDisplayString(I.crumb),9,J5)):r.createCommentVNode("",!0),I.snippet?(r.openBlock(),r.createElementBlock("span",Q5,[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(r.unref(Ji)(I.snippet),(G,oe)=>(r.openBlock(),r.createElementBlock(r.Fragment,{key:oe},[G.match?(r.openBlock(),r.createElementBlock("mark",e6,r.toDisplayString(G.text),1)):(r.openBlock(),r.createElementBlock(r.Fragment,{key:1},[r.createTextVNode(r.toDisplayString(G.text),1)],64))],64))),128))])):r.createCommentVNode("",!0)])],42,K5))),128))],64)):r.createCommentVNode("",!0),N.value.length?(r.openBlock(),r.createElementBlock(r.Fragment,{key:2},[r.createElementVNode("div",t6,r.toDisplayString(r.unref(i)("palette.saved")),1),(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(N.value,(I,H)=>(r.openBlock(),r.createElementBlock("div",{key:I.id,class:r.normalizeClass(["fe-cmdp__item fe-cmdp__item--saved",{"is-active":q.value+H===l.value}]),role:"option","aria-selected":q.value+H===l.value,tabindex:"-1",onMouseenter:G=>l.value=q.value+H,onClick:G=>j(I),onKeydown:r.withKeys(r.withModifiers(G=>j(I),["prevent"]),["enter"])},[r.createElementVNode("span",r6,r.toDisplayString(I.icon),1),r.createElementVNode("span",a6,r.toDisplayString(I.label),1),I.kind==="saved"?(r.openBlock(),r.createElementBlock("button",{key:0,type:"button",class:"fe-cmdp__del",title:r.unref(i)("palette.saved.delete"),"aria-label":r.unref(i)("palette.saved.delete"),onClick:r.withModifiers(G=>k(I.query),["stop"])},"🗑",8,i6)):r.createCommentVNode("",!0)],42,n6))),128))],64)):r.createCommentVNode("",!0),p.value.length?(r.openBlock(),r.createElementBlock(r.Fragment,{key:3},[r.createElementVNode("div",o6,r.toDisplayString(r.unref(i)("palette.commands")),1),(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(p.value,(I,H)=>(r.openBlock(),r.createElementBlock("button",{key:I.id,type:"button",class:r.normalizeClass(["fe-cmdp__item",{"is-active":X.value+H===l.value}]),role:"option","aria-selected":X.value+H===l.value,onMouseenter:G=>l.value=X.value+H,onClick:G=>j(I)},[r.createElementVNode("span",s6,r.toDisplayString(I.icon),1),r.createElementVNode("span",c6,r.toDisplayString(I.label),1)],42,l6))),128))],64)):r.createCommentVNode("",!0),D.value.length===0&&!g.value?(r.openBlock(),r.createElementBlock("div",d6,r.toDisplayString(r.unref(i)("palette.empty")),1)):r.createCommentVNode("",!0)],512),r.createElementVNode("div",u6,r.toDisplayString(r.unref(i)("palette.hint")),1)],8,I5)])):r.createCommentVNode("",!0)]),_:1}))}}),g6=["aria-labelledby","aria-label"],b6={key:0,class:"fe-modal__head"},v6={class:"fe-modal__body"},y6={key:1,class:"fe-modal__actions"},Sf='input:not([disabled]),select:not([disabled]),textarea:not([disabled]),button:not([disabled]),a[href],[tabindex]:not([tabindex="-1"])',$r=r.defineComponent({__name:"Modal",props:{open:{type:Boolean},title:{},size:{},closeOnBackdrop:{type:Boolean},chromeless:{type:Boolean},theme:{}},emits:["close"],setup(e,{emit:t}){const n=e,a=t,i=r.ref(null);let o=0;const s=`fe-modal-title-${++o}-${Math.random().toString(36).slice(2,7)}`;let l=null;r.watch(()=>n.open,u=>{var h;u?(l=document.activeElement??null,document.addEventListener("keydown",c),setTimeout(()=>{var p;const f=(p=i.value)==null?void 0:p.querySelector(Sf);f==null||f.focus()},30)):(document.removeEventListener("keydown",c),(h=l==null?void 0:l.focus)==null||h.call(l),l=null)}),r.onBeforeUnmount(()=>document.removeEventListener("keydown",c));function c(u){if(u.key==="Escape"){a("close");return}if(u.key==="Tab"&&i.value){const h=Array.from(i.value.querySelectorAll(Sf)).filter(g=>g.offsetParent!==null||g===document.activeElement);if(h.length===0)return;const f=h[0],p=h[h.length-1],w=document.activeElement;u.shiftKey&&(w===f||!i.value.contains(w))?(u.preventDefault(),p.focus()):!u.shiftKey&&(w===p||!i.value.contains(w))&&(u.preventDefault(),f.focus())}}function d(){n.closeOnBackdrop!==!1&&a("close")}return(u,h)=>(r.openBlock(),r.createBlock(r.Transition,{name:"fe-modal"},{default:r.withCtx(()=>[e.open?(r.openBlock(),r.createElementBlock("div",{key:0,class:r.normalizeClass(["fe fe-modal__backdrop",[{"fe-modal__backdrop--chromeless":e.chromeless},e.theme==="light"?"fe--theme-light":"",e.theme==="dark"?"fe--theme-dark":""]]),role:"presentation",onClick:d},[r.createElementVNode("div",{ref_key:"cardEl",ref:i,class:r.normalizeClass(["fe-modal__card",[`fe-modal__card--${e.size||"md"}`,e.chromeless&&"fe-modal__card--chromeless"]]),role:"dialog","aria-modal":"true","aria-labelledby":e.title&&!e.chromeless?s:void 0,"aria-label":(!e.title||e.chromeless)&&e.title||void 0,onClick:h[1]||(h[1]=r.withModifiers(()=>{},["stop"]))},[e.title&&!e.chromeless?(r.openBlock(),r.createElementBlock("header",b6,[r.createElementVNode("h2",{id:s,class:"fe-modal__title"},r.toDisplayString(e.title),1),r.createElementVNode("button",{type:"button",class:"fe-modal__close","aria-label":"Close",onClick:h[0]||(h[0]=f=>a("close"))},"×")])):r.createCommentVNode("",!0),r.createElementVNode("div",v6,[r.renderSlot(u.$slots,"default")]),u.$slots.actions&&!e.chromeless?(r.openBlock(),r.createElementBlock("footer",y6,[r.renderSlot(u.$slots,"actions")])):r.createCommentVNode("",!0)],10,g6)],2)):r.createCommentVNode("",!0)]),_:3}))}}),_6={class:"fe-shortcuts"},w6={class:"fe-shortcuts__heading"},k6={class:"fe-shortcuts__table"},E6={class:"fe-shortcuts__keys"},x6={key:0,class:"fe-shortcuts__unbound"},S6={class:"fe-kbd"},C6={key:0,class:"fe-shortcuts__or","aria-hidden":"true"},N6={class:"fe-shortcuts__desc"},T6=["title"],A6=r.defineComponent({__name:"ShortcutsHelp",props:{open:{type:Boolean},locale:{}},emits:["close","customize"],setup(e,{emit:t}){const n=e,a=t,{t:i}=qt(()=>n.locale),o=tc(),s=r.computed(()=>{const l=[],c=new Map;for(const d of o.value)c.has(d.groupKey)||(c.set(d.groupKey,[]),l.push(d.groupKey)),c.get(d.groupKey).push(d);return l.map(d=>({key:d,items:c.get(d)}))});return(l,c)=>(r.openBlock(),r.createBlock($r,{open:e.open,title:r.unref(i)("shortcuts.title"),size:"md",onClose:c[2]||(c[2]=d=>a("close"))},{actions:r.withCtx(()=>[r.createElementVNode("button",{type:"button",class:"fe-btn fe-btn--primary",onClick:c[0]||(c[0]=d=>a("customize"))}," ⌨ "+r.toDisplayString(r.unref(i)("shortcuts.customize")),1),r.createElementVNode("button",{type:"button",class:"fe-btn",onClick:c[1]||(c[1]=d=>a("close"))},r.toDisplayString(r.unref(i)("viewer.close")),1)]),default:r.withCtx(()=>[r.createElementVNode("div",_6,[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(s.value,d=>(r.openBlock(),r.createElementBlock("section",{key:d.key,class:"fe-shortcuts__group"},[r.createElementVNode("h3",w6,r.toDisplayString(r.unref(i)(d.key)),1),r.createElementVNode("div",k6,[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(d.items,u=>(r.openBlock(),r.createElementBlock("div",{key:u.id,class:"fe-shortcuts__row"},[r.createElementVNode("span",E6,[u.keys.length===0?(r.openBlock(),r.createElementBlock("span",x6,r.toDisplayString(r.unref(i)("shortcuts.settings.unbound")),1)):(r.openBlock(!0),r.createElementBlock(r.Fragment,{key:1},r.renderList(u.keys,(h,f)=>(r.openBlock(),r.createElementBlock(r.Fragment,{key:h},[r.createElementVNode("kbd",S6,r.toDisplayString(h),1),f<u.keys.length-1?(r.openBlock(),r.createElementBlock("span",C6,"/")):r.createCommentVNode("",!0)],64))),128))]),r.createElementVNode("span",N6,[r.createTextVNode(r.toDisplayString(r.unref(i)(u.labelKey))+" ",1),u.overridden?(r.openBlock(),r.createElementBlock("span",{key:0,class:"fe-shortcuts__custom",title:r.unref(i)("shortcuts.settings.customized")},"●",8,T6)):r.createCommentVNode("",!0)])]))),128))])]))),128))])]),_:1},8,["open","title"]))}}),Qi="filex.theme",ur="default",il=[{id:ur,nameKey:"theme.name.default",light:{"--fe-bg":"#ffffff","--fe-bg-elev":"#f7f8fa","--fe-bg-hover":"#edf0f5","--fe-bg-selected":"#dfe8ff","--fe-border":"#e2e6ed","--fe-border-strong":"#c7ced9","--fe-text":"#1a1e27","--fe-text-muted":"#5a6475","--fe-text-on-primary":"#ffffff","--fe-primary":"#3b82f6","--fe-primary-hover":"#2563eb","--fe-danger":"#dc2626","--fe-danger-hover":"#b91c1c"},dark:{"--fe-bg":"#0f1419","--fe-bg-elev":"#161c25","--fe-bg-hover":"#1f2733","--fe-bg-selected":"#23324a","--fe-border":"#2a323e","--fe-border-strong":"#3a4453","--fe-text":"#e5e9f0","--fe-text-muted":"#8b95a7","--fe-text-on-primary":"#ffffff","--fe-primary":"#60a5fa","--fe-primary-hover":"#3b82f6","--fe-danger":"#f87171","--fe-danger-hover":"#ef4444"}},{id:"night",nameKey:"theme.name.night",light:{"--fe-bg":"#f6f8fd","--fe-bg-elev":"#edf1fa","--fe-bg-hover":"#e2e9f7","--fe-bg-selected":"#d2ddf4","--fe-border":"#d6deee","--fe-border-strong":"#aebfda","--fe-text":"#151f38","--fe-text-muted":"#49587a","--fe-text-on-primary":"#ffffff","--fe-primary":"#2c4a9e","--fe-primary-hover":"#213a80","--fe-danger":"#c62828","--fe-danger-hover":"#a51f1f"},dark:{"--fe-bg":"#0a1024","--fe-bg-elev":"#111a35","--fe-bg-hover":"#1a2547","--fe-bg-selected":"#243665","--fe-border":"#26335a","--fe-border-strong":"#3c4e84","--fe-text":"#dfe6f7","--fe-text-muted":"#96a5cc","--fe-text-on-primary":"#050b26","--fe-primary":"#6d8dfc","--fe-primary-hover":"#5273f2","--fe-danger":"#f87171","--fe-danger-hover":"#ef4444"}},{id:"forest",nameKey:"theme.name.forest",light:{"--fe-bg":"#f5faf5","--fe-bg-elev":"#eaf3eb","--fe-bg-hover":"#dcecdf","--fe-bg-selected":"#c8e2ce","--fe-border":"#d2e2d4","--fe-border-strong":"#a2c3a8","--fe-text":"#182b1d","--fe-text-muted":"#42604a","--fe-text-on-primary":"#ffffff","--fe-primary":"#2b7a41","--fe-primary-hover":"#226334","--fe-danger":"#c62828","--fe-danger-hover":"#a51f1f"},dark:{"--fe-bg":"#0d1611","--fe-bg-elev":"#132019","--fe-bg-hover":"#1b2d23","--fe-bg-selected":"#264532","--fe-border":"#28402f","--fe-border-strong":"#3e5f49","--fe-text":"#dcebe0","--fe-text-muted":"#93b09b","--fe-text-on-primary":"#04180b","--fe-primary":"#54c17a","--fe-primary-hover":"#3fae66","--fe-danger":"#f87171","--fe-danger-hover":"#ef4444"}},{id:"amber",nameKey:"theme.name.amber",light:{"--fe-bg":"#fdf9f0","--fe-bg-elev":"#f7efdd","--fe-bg-hover":"#f0e3c8","--fe-bg-selected":"#ead6ab","--fe-border":"#e6dabf","--fe-border-strong":"#c6b184","--fe-text":"#33270f","--fe-text-muted":"#655631","--fe-text-on-primary":"#ffffff","--fe-primary":"#9a4b00","--fe-primary-hover":"#7c3c00","--fe-danger":"#c62828","--fe-danger-hover":"#a51f1f"},dark:{"--fe-bg":"#191307","--fe-bg-elev":"#231a0c","--fe-bg-hover":"#2f2312","--fe-bg-selected":"#44331b","--fe-border":"#3b2e17","--fe-border-strong":"#5b4a29","--fe-text":"#f2e7d4","--fe-text-muted":"#bda887","--fe-text-on-primary":"#2a1c02","--fe-primary":"#f5a524","--fe-primary-hover":"#ffb84d","--fe-danger":"#f87171","--fe-danger-hover":"#ef4444"}},{id:"lilac",nameKey:"theme.name.lilac",light:{"--fe-bg":"#faf7fd","--fe-bg-elev":"#f2ecfa","--fe-bg-hover":"#e8ddf5","--fe-bg-selected":"#dccaf0","--fe-border":"#e1d6ee","--fe-border-strong":"#bda6d9","--fe-text":"#241a33","--fe-text-muted":"#584871","--fe-text-on-primary":"#ffffff","--fe-primary":"#7231e0","--fe-primary-hover":"#5f21c4","--fe-danger":"#c62828","--fe-danger-hover":"#a51f1f"},dark:{"--fe-bg":"#130f1c","--fe-bg-elev":"#1b1527","--fe-bg-hover":"#261d37","--fe-bg-selected":"#37294f","--fe-border":"#302546","--fe-border-strong":"#4b3a6d","--fe-text":"#e9e2f5","--fe-text-muted":"#a999c5","--fe-text-on-primary":"#180d33","--fe-primary":"#b197fa","--fe-primary-hover":"#9c7cf4","--fe-danger":"#f87171","--fe-danger-hover":"#ef4444"}},{id:"contrast",nameKey:"theme.name.contrast",light:{"--fe-bg":"#ffffff","--fe-bg-elev":"#f2f2f2","--fe-bg-hover":"#e0e0e0","--fe-bg-selected":"#c9dcff","--fe-border":"#5c5c5c","--fe-border-strong":"#000000","--fe-text":"#000000","--fe-text-muted":"#3d3d3d","--fe-text-on-primary":"#ffffff","--fe-primary":"#003d99","--fe-primary-hover":"#002a6b","--fe-danger":"#a80000","--fe-danger-hover":"#7d0000","--fe-shadow":"0 0 0 1px #000000, 0 10px 32px rgba(0, 0, 0, 0.25)","--fe-shadow-sm":"0 0 0 1px #000000"},dark:{"--fe-bg":"#000000","--fe-bg-elev":"#0d0d0d","--fe-bg-hover":"#212121","--fe-bg-selected":"#003d80","--fe-border":"#8f8f8f","--fe-border-strong":"#ffffff","--fe-text":"#ffffff","--fe-text-muted":"#d6d6d6","--fe-text-on-primary":"#001430","--fe-primary":"#7ab8ff","--fe-primary-hover":"#9ccaff","--fe-danger":"#ff7575","--fe-danger-hover":"#ff9999","--fe-shadow":"0 0 0 1px #ffffff, 0 12px 32px rgba(0, 0, 0, 0.65)","--fe-shadow-sm":"0 0 0 1px #ffffff"}},{id:"gray",nameKey:"theme.name.gray",light:{"--fe-bg":"#f7f7f8","--fe-bg-elev":"#efeff1","--fe-bg-hover":"#e4e4e7","--fe-bg-selected":"#d6d7db","--fe-border":"#dfdfe2","--fe-border-strong":"#b9b9c0","--fe-text":"#26272b","--fe-text-muted":"#585a63","--fe-text-on-primary":"#ffffff","--fe-primary":"#4b4b54","--fe-primary-hover":"#38383f","--fe-danger":"#c62828","--fe-danger-hover":"#a51f1f"},dark:{"--fe-bg":"#131316","--fe-bg-elev":"#1b1b1f","--fe-bg-hover":"#26262b","--fe-bg-selected":"#35353c","--fe-border":"#2d2d33","--fe-border-strong":"#4a4a52","--fe-text":"#e6e6e9","--fe-text-muted":"#a4a4ad","--fe-text-on-primary":"#17171b","--fe-primary":"#b0b0ba","--fe-primary-hover":"#c4c4cd","--fe-danger":"#f87171","--fe-danger-hover":"#ef4444"}},{id:"terminal",nameKey:"theme.name.terminal",light:{"--fe-bg":"#f3f9f4","--fe-bg-elev":"#e5f2e8","--fe-bg-hover":"#d5ead9","--fe-bg-selected":"#bce3c6","--fe-border":"#cbe2d1","--fe-border-strong":"#94c2a0","--fe-text":"#0c2913","--fe-text-muted":"#31573c","--fe-text-on-primary":"#ffffff","--fe-primary":"#116b33","--fe-primary-hover":"#0c5427","--fe-danger":"#c62828","--fe-danger-hover":"#a51f1f","--fe-font":'ui-monospace, "SF Mono", Consolas, Menlo, monospace'},dark:{"--fe-bg":"#050d07","--fe-bg-elev":"#0a1710","--fe-bg-hover":"#112418","--fe-bg-selected":"#1a3a26","--fe-border":"#1c3a2a","--fe-border-strong":"#316144","--fe-text":"#4fdd8b","--fe-text-muted":"#38a668","--fe-text-on-primary":"#03180a","--fe-primary":"#25c95e","--fe-primary-hover":"#4fdd8b","--fe-danger":"#ff6b62","--fe-danger-hover":"#ff8d86","--fe-font":'ui-monospace, "SF Mono", Consolas, Menlo, monospace'}}];function ni(e){return il.find(t=>t.id===e)}const D6=Array.from(new Set(il.flatMap(e=>[...Object.keys(e.light),...Object.keys(e.dark)])));function M6(){try{const e=localStorage.getItem(Qi);return e&&ni(e)?e:ur}catch{return ur}}const lc=r.ref(typeof window>"u"?ur:M6());function Cf(e){const t=ni(e)?e:ur;lc.value=t;try{t===ur?localStorage.removeItem(Qi):localStorage.setItem(Qi,t)}catch{}}function Nf(){return{themeId:lc,setTheme:Cf}}const ol="filex.thememode",sc=["host","auto","light","dark"];function B6(){try{const e=localStorage.getItem(ol);return e&&sc.includes(e)?e:"host"}catch{return"host"}}const cc=r.ref(typeof window>"u"?"host":B6());function O6(e){const t=sc.includes(e)?e:"host";cc.value=t;try{t==="host"?localStorage.removeItem(ol):localStorage.setItem(ol,t)}catch{}}function I6(){return{themeMode:cc,setThemeMode:O6}}if(typeof window<"u")try{window.addEventListener("storage",e=>{if(e.key!==ol)return;const t=e.newValue;cc.value=t&&sc.includes(t)?t:"host"})}catch{}if(typeof window<"u")try{window.addEventListener("storage",e=>{e.key===Qi&&(lc.value=e.newValue&&ni(e.newValue)?e.newValue:ur)})}catch{}function Tf(e,t,n){for(const o of D6)e.style.removeProperty(o);if(t===ur)return;const a=ni(t);if(!a)return;const i=n?a.dark:a.light;for(const[o,s]of Object.entries(i))e.style.setProperty(o,s)}const Af="data-filex-theme";function Df(e){return Object.entries(e).map(([t,n])=>`${t}:${n};`).join("")}function Mf(e){const t=Df(e.light),n=Df(e.dark),a=[".fe--theme-dark",":root[data-theme='dark'] .fe",".fe.fe--theme-dark",":root.dark",".dark",":root.dark .fe",".dark .fe",".fe-ctx-backdrop--theme-dark",".fe-ctx-backdrop--theme-auto[data-prefers-dark='1']"].join(","),i=[".fe:not(.fe--theme-light)",".fe-ctx-backdrop--theme-auto:not(.fe-ctx-backdrop--theme-light)"].join(",");return`/* filex theme: ${e.id} */:root,.fe{${t}}${a}{${n}}@media (prefers-color-scheme: dark){${i}{${n}}}`}function Bf(e){if(typeof document>"u")return;let t=document.head.querySelector(`style[${Af}]`);const n=e===ur?void 0:ni(e);if(!n){t&&(t.textContent="");return}t?t!==document.head.lastElementChild&&document.head.appendChild(t):(t=document.createElement("style"),t.setAttribute(Af,""),document.head.appendChild(t));const a=Mf(n);t.textContent!==a&&(t.textContent=a)}const R6=["aria-label"],L6={class:"fe-thememode__label"},F6={class:"fe-thememode__seg"},z6=["aria-pressed","onClick"],P6={class:"fe-ficon",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"1.8","stroke-linecap":"round","stroke-linejoin":"round","aria-hidden":"true",focusable:"false"},$6={key:1,d:"M21 12.8A9 9 0 1 1 11.2 3a7 7 0 0 0 9.8 9.8z"},V6={class:"fe-themes__hint"},U6=["aria-label"],H6=["aria-selected","onClick"],G6={class:"fe-themecard__name"},q6=["title"],K6=["disabled"],Of=r.defineComponent({__name:"ThemeGallery",props:{open:{type:Boolean},locale:{},theme:{},dark:{type:Boolean},current:{},mode:{},hostMode:{}},emits:["close","select","mode"],setup(e,{emit:t}){const n=e,a=t,{t:i}=qt(()=>n.locale),o=[{id:"light",labelKey:"theme.mode.light"},{id:"dark",labelKey:"theme.mode.dark"},{id:"auto",labelKey:"theme.mode.auto"}],s=r.computed(()=>n.mode==="host"?n.hostMode:n.mode);function l(d){return n.dark?d.dark:d.light}const c=ur;return(d,u)=>(r.openBlock(),r.createBlock($r,{open:e.open,title:r.unref(i)("theme.title"),size:"lg",theme:e.theme,onClose:u[2]||(u[2]=h=>a("close"))},{actions:r.withCtx(()=>[r.createElementVNode("button",{type:"button",class:"fe-btn",disabled:e.current===r.unref(c),onClick:u[0]||(u[0]=h=>a("select",r.unref(c)))},r.toDisplayString(r.unref(i)("theme.reset")),9,K6),r.createElementVNode("button",{type:"button",class:"fe-btn fe-btn--primary",onClick:u[1]||(u[1]=h=>a("close"))},r.toDisplayString(r.unref(i)("theme.close")),1)]),default:r.withCtx(()=>[r.createElementVNode("div",{class:"fe-thememode",role:"group","aria-label":r.unref(i)("theme.mode.label")},[r.createElementVNode("span",L6,r.toDisplayString(r.unref(i)("theme.mode.label")),1),r.createElementVNode("div",F6,[(r.openBlock(),r.createElementBlock(r.Fragment,null,r.renderList(o,h=>r.createElementVNode("button",{key:h.id,type:"button",class:r.normalizeClass(["fe-thememode__opt",{"is-active":s.value===h.id}]),"aria-pressed":s.value===h.id,onClick:f=>a("mode",h.id)},[(r.openBlock(),r.createElementBlock("svg",P6,[h.id==="light"?(r.openBlock(),r.createElementBlock(r.Fragment,{key:0},[u[3]||(u[3]=r.createElementVNode("circle",{cx:"12",cy:"12",r:"4"},null,-1)),u[4]||(u[4]=r.createElementVNode("path",{d:"M12 2v2M12 20v2M4.9 4.9l1.4 1.4M17.7 17.7l1.4 1.4M2 12h2M20 12h2M4.9 19.1l1.4-1.4M17.7 6.3l1.4-1.4"},null,-1))],64)):h.id==="dark"?(r.openBlock(),r.createElementBlock("path",$6)):(r.openBlock(),r.createElementBlock(r.Fragment,{key:2},[u[5]||(u[5]=r.createElementVNode("circle",{cx:"12",cy:"12",r:"9"},null,-1)),u[6]||(u[6]=r.createElementVNode("path",{d:"M12 3a9 9 0 0 1 0 18z",fill:"currentColor",stroke:"none"},null,-1))],64))])),r.createElementVNode("span",null,r.toDisplayString(r.unref(i)(h.labelKey)),1)],10,z6)),64))])],8,R6),r.createElementVNode("p",V6,r.toDisplayString(r.unref(i)("theme.hint")),1),r.createElementVNode("div",{class:"fe-themes",role:"listbox","aria-label":r.unref(i)("theme.title")},[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(r.unref(il),h=>(r.openBlock(),r.createElementBlock("button",{key:h.id,type:"button",class:r.normalizeClass(["fe-themecard",{"is-selected":h.id===e.current}]),role:"option","aria-selected":h.id===e.current,style:r.normalizeStyle(l(h)),onClick:f=>a("select",h.id)},[u[7]||(u[7]=r.createElementVNode("span",{class:"fe-themecard__preview","aria-hidden":"true"},[r.createElementVNode("span",{class:"fe-themecard__topbar"},[r.createElementVNode("span",{class:"fe-themecard__chip fe-themecard__chip--primary"}),r.createElementVNode("span",{class:"fe-themecard__chip"}),r.createElementVNode("span",{class:"fe-themecard__chip fe-themecard__chip--ghost"})]),r.createElementVNode("span",{class:"fe-themecard__row"},[r.createElementVNode("span",{class:"fe-themecard__dot"}),r.createElementVNode("span",{class:"fe-themecard__line",style:{width:"62%"}})]),r.createElementVNode("span",{class:"fe-themecard__row fe-themecard__row--selected"},[r.createElementVNode("span",{class:"fe-themecard__dot fe-themecard__dot--primary"}),r.createElementVNode("span",{class:"fe-themecard__line",style:{width:"44%"}})]),r.createElementVNode("span",{class:"fe-themecard__row"},[r.createElementVNode("span",{class:"fe-themecard__dot fe-themecard__dot--muted"}),r.createElementVNode("span",{class:"fe-themecard__line fe-themecard__line--muted",style:{width:"74%"}})])],-1)),r.createElementVNode("span",G6,[r.createTextVNode(r.toDisplayString(r.unref(i)(h.nameKey))+" ",1),h.id===e.current?(r.openBlock(),r.createElementBlock("span",{key:0,class:"fe-themecard__check",title:r.unref(i)("theme.selected")},"✓",8,q6)):r.createCommentVNode("",!0)])],14,H6))),128))],8,U6)]),_:1},8,["open","title","theme"]))}}),W6={class:"fe-shortset"},Y6={class:"fe-shortset__topbar"},j6={class:"fe-shortset__hint"},X6=["disabled"],Z6={class:"fe-shortcuts__heading"},J6={class:"fe-shortset__row"},Q6={class:"fe-shortset__label"},e8=["title"],t8={class:"fe-shortset__keys"},n8={key:0,class:"fe-shortset__capture",role:"status"},r8={key:0,class:"fe-shortcuts__unbound"},a8={class:"fe-kbd"},i8={key:0,class:"fe-shortcuts__or","aria-hidden":"true"},o8={class:"fe-shortset__actions"},l8=["onClick"],s8=["title","aria-label","onClick"],c8={key:1,class:"fe-shortset__fixed"},d8={key:0,class:"fe-shortset__conflict",role:"alert"},u8={class:"fe-shortset__conflict-msg"},f8={class:"fe-kbd"},h8={class:"fe-shortset__conflict-actions"},If=r.defineComponent({__name:"ShortcutSettings",props:{open:{type:Boolean},locale:{},theme:{}},emits:["close"],setup(e,{emit:t}){const n=e,a=t,{t:i}=qt(()=>n.locale),o=tc(),s=r.computed(()=>{const _=[],S=new Map;for(const A of o.value)S.has(A.groupKey)||(S.set(A.groupKey,[]),_.push(A.groupKey)),S.get(A.groupKey).push(A);return _.map(A=>({key:A,items:S.get(A)}))}),l=r.computed(()=>o.value.some(_=>_.overridden)),c=r.ref(null),d=r.ref(null);function u(_){const S=la.find(A=>A.id===_);return S?i(S.labelKey):_}function h(_){d.value=null,c.value=_}function f(){c.value=null}function p(_,S){if(c.value=null,S===Xi(_))return;const A=af(S,_);if(A){d.value={id:_,combo:S,conflictId:A.id,fixed:A.fixed};return}Jo(_,S)}function w(){const _=d.value;!_||_.fixed||(Jo(_.conflictId,""),Jo(_.id,_.combo),d.value=null)}function g(){d.value=null}function v(_){d.value=null,nf(_)}function m(){d.value=null,c.value=null,rf()}function b(_){if(c.value){if(_.preventDefault(),_.stopPropagation(),_.key==="Escape"){f();return}const S=ec(_);if(!S)return;p(c.value,S);return}_.key==="Escape"||_.key==="Tab"||_.stopPropagation()}r.watch(()=>n.open,_=>{_?window.addEventListener("keydown",b,!0):(window.removeEventListener("keydown",b,!0),c.value=null,d.value=null)}),r.onBeforeUnmount(()=>window.removeEventListener("keydown",b,!0));function y(){if(c.value){f();return}a("close")}return(_,S)=>(r.openBlock(),r.createBlock($r,{open:e.open,title:r.unref(i)("shortcuts.settings.title"),size:"lg",theme:e.theme,onClose:y},{actions:r.withCtx(()=>[r.createElementVNode("button",{type:"button",class:"fe-btn",onClick:y},r.toDisplayString(r.unref(i)("viewer.close")),1)]),default:r.withCtx(()=>[r.createElementVNode("div",W6,[r.createElementVNode("div",Y6,[r.createElementVNode("p",j6,r.toDisplayString(r.unref(i)("shortcuts.settings.hint")),1),r.createElementVNode("button",{type:"button",class:"fe-btn fe-shortset__reset-all",disabled:!l.value,onClick:m}," ↺ "+r.toDisplayString(r.unref(i)("shortcuts.settings.reset_all")),9,X6)]),(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(s.value,A=>(r.openBlock(),r.createElementBlock("section",{key:A.key,class:"fe-shortset__group"},[r.createElementVNode("h3",Z6,r.toDisplayString(r.unref(i)(A.key)),1),(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(A.items,T=>{var E;return r.openBlock(),r.createElementBlock("div",{key:T.id,class:r.normalizeClass(["fe-shortset__item",{"is-capturing":c.value===T.id,"is-conflict":((E=d.value)==null?void 0:E.id)===T.id}])},[r.createElementVNode("div",J6,[r.createElementVNode("span",Q6,[r.createTextVNode(r.toDisplayString(r.unref(i)(T.labelKey))+" ",1),T.overridden?(r.openBlock(),r.createElementBlock("span",{key:0,class:"fe-shortcuts__custom",title:r.unref(i)("shortcuts.settings.customized")},"●",8,e8)):r.createCommentVNode("",!0)]),r.createElementVNode("span",t8,[c.value===T.id?(r.openBlock(),r.createElementBlock("span",n8,r.toDisplayString(r.unref(i)("shortcuts.settings.capture")),1)):(r.openBlock(),r.createElementBlock(r.Fragment,{key:1},[T.keys.length===0?(r.openBlock(),r.createElementBlock("span",r8,r.toDisplayString(r.unref(i)("shortcuts.settings.unbound")),1)):(r.openBlock(!0),r.createElementBlock(r.Fragment,{key:1},r.renderList(T.keys,(k,N)=>(r.openBlock(),r.createElementBlock(r.Fragment,{key:k},[r.createElementVNode("kbd",a8,r.toDisplayString(k),1),N<T.keys.length-1?(r.openBlock(),r.createElementBlock("span",i8,"/")):r.createCommentVNode("",!0)],64))),128))],64))]),r.createElementVNode("span",o8,[T.customizable?(r.openBlock(),r.createElementBlock(r.Fragment,{key:0},[c.value!==T.id?(r.openBlock(),r.createElementBlock("button",{key:0,type:"button",class:"fe-btn fe-shortset__btn",onClick:k=>h(T.id)},r.toDisplayString(r.unref(i)("shortcuts.settings.change")),9,l8)):(r.openBlock(),r.createElementBlock("button",{key:1,type:"button",class:"fe-btn fe-shortset__btn",onClick:f},r.toDisplayString(r.unref(i)("shortcuts.settings.conflict_cancel")),1)),T.overridden?(r.openBlock(),r.createElementBlock("button",{key:2,type:"button",class:"fe-btn fe-btn--icon-only fe-shortset__btn",title:r.unref(i)("shortcuts.settings.reset"),"aria-label":r.unref(i)("shortcuts.settings.reset"),onClick:k=>v(T.id)}," ↺ ",8,s8)):r.createCommentVNode("",!0)],64)):(r.openBlock(),r.createElementBlock("span",c8,r.toDisplayString(r.unref(i)("shortcuts.settings.fixed")),1))])]),d.value&&d.value.id===T.id?(r.openBlock(),r.createElementBlock("div",d8,[r.createElementVNode("span",u8,[r.createElementVNode("kbd",f8,r.toDisplayString(d.value.combo),1),r.createTextVNode(" "+r.toDisplayString(d.value.fixed?r.unref(i)("shortcuts.settings.conflict_fixed",{name:u(d.value.conflictId)}):r.unref(i)("shortcuts.settings.conflict",{name:u(d.value.conflictId)})),1)]),r.createElementVNode("span",h8,[d.value.fixed?r.createCommentVNode("",!0):(r.openBlock(),r.createElementBlock("button",{key:0,type:"button",class:"fe-btn fe-btn--danger fe-shortset__btn",onClick:w},r.toDisplayString(r.unref(i)("shortcuts.settings.conflict_take")),1)),r.createElementVNode("button",{type:"button",class:"fe-btn fe-shortset__btn",onClick:g},r.toDisplayString(r.unref(i)("shortcuts.settings.conflict_cancel")),1)])])):r.createCommentVNode("",!0)],2)}),128))]))),128))])]),_:1},8,["open","title","theme"]))}}),p8={key:0,class:"fe-preview"},m8=["src","alt"],g8=["src"],b8=["src"],v8=["data"],y8={class:"fe-preview__fallback"},_8=["href"],w8={key:0,class:"fe-preview__fallback"},k8={key:1,class:"fe-preview__fallback"},E8=["href"],x8={key:2,class:"fe-preview__md-split"},S8={class:"fe-preview__md-split-bar"},C8={key:0,class:"fe-preview__md-split-error"},N8=["disabled"],T8={class:"fe-preview__md-split-body"},A8=["onKeydown"],D8={key:0,class:"fe-preview__md-split-output fe-preview__md"},M8=["innerHTML"],B8={key:3,class:"fe-preview__fallback"},O8=["href"],I8=["innerHTML"],R8={key:5,class:"fe-preview__pre"},L8={key:0,class:"fe-preview__fallback"},F8=["href"],z8={key:1,class:"fe-preview__fallback"},P8={key:0,class:"fe-preview__fallback"},$8={key:1,class:"fe-preview__fallback"},V8=["href"],U8={key:2,class:"fe-preview__fallback"},H8=["href"],G8={key:3,class:"fe-preview__code-wrap"},q8={class:"fe-preview__code-toolbar"},K8={class:"fe-preview__code-lang"},W8={key:0,class:"fe-preview__code-status"},Y8={key:1,class:"fe-preview__code-status fe-preview__code-status--ok"},j8=["title"],X8={key:3,class:"fe-preview__code-status"},Z8=["disabled"],J8={key:0,class:"fe-preview__pre fe-preview__code hljs"},Q8=["innerHTML"],ew=["data-lang"],tw={key:0,class:"fe-preview__fallback"},nw=["href"],rw={key:8,class:"fe-preview__fallback"},aw=["href"],iw=["href"],dc=1e6,Rf="fe-onlyoffice-api-js",uc=r.defineComponent({__name:"PreviewModal",props:{open:{type:Boolean},locale:{},file:{},previewUrl:{type:Function},downloadUrl:{type:Function},onlyOfficeBase:{},onlyOfficeConfigEndpoint:{},saveTextEndpoint:{},openMode:{},authHeaders:{type:Function},authCredentials:{},drawioUrl:{},pdfWorkerUrl:{},pdfSaveUrl:{},viewerBaseUrl:{},newTabEnabled:{type:Boolean},chromeless:{type:Boolean},theme:{}},emits:["close"],setup(e,{emit:t}){const n=e,a=t,{t:i}=qt(()=>n.locale);function o(ie){return((ie==null?void 0:ie.extension)||"").toLowerCase()}const s=["jpg","jpeg","png","webp","gif","bmp","avif","svg","heic"],l=["mp4","webm","mov","mkv","m4v","ogv"],c=["mp3","wav","ogg","flac","m4a","aac","opus"],d={md:"markdown",markdown:"markdown",txt:"plaintext",log:"plaintext",js:"javascript",mjs:"javascript",cjs:"javascript",ts:"typescript",tsx:"typescript",jsx:"javascript",vue:"xml",svelte:"xml",html:"xml",htm:"xml",xml:"xml",svg:"xml",css:"css",scss:"scss",sass:"scss",less:"less",json:"json",jsonc:"json",yml:"yaml",yaml:"yaml",php:"php",py:"python",rb:"ruby",go:"go",rs:"rust",java:"java",kt:"kotlin",swift:"swift",cpp:"cpp",c:"c",h:"cpp",hpp:"cpp",cs:"csharp",dart:"dart",sh:"bash",bash:"bash",zsh:"bash",fish:"bash",sql:"sql",toml:"ini",ini:"ini",conf:"ini",env:"bash",cfg:"ini",dockerfile:"dockerfile",graphql:"graphql",gql:"graphql",diff:"diff",patch:"diff"},u=["txt","log"],h=["docx","doc","xlsx","xls","pptx","ppt","odt","ods","odp","rtf"],f={glb:()=>Promise.resolve().then(()=>oi),gltf:()=>Promise.resolve().then(()=>oi),obj:()=>Promise.resolve().then(()=>oi),stl:()=>Promise.resolve().then(()=>oi),fbx:()=>Promise.resolve().then(()=>oi),"3ds":()=>Promise.resolve().then(()=>oi),epub:()=>Promise.resolve().then(()=>DS),mmd:()=>Promise.resolve().then(()=>gp),mermaid:()=>Promise.resolve().then(()=>gp),drawio:()=>Promise.resolve().then(()=>bp),dio:()=>Promise.resolve().then(()=>bp),tif:()=>Promise.resolve().then(()=>vp),tiff:()=>Promise.resolve().then(()=>vp),psd:()=>Promise.resolve().then(()=>jS),ipynb:()=>Promise.resolve().then(()=>hC),csv:()=>Promise.resolve().then(()=>_p),tsv:()=>Promise.resolve().then(()=>_p),zip:()=>Promise.resolve().then(()=>RC)},p=r.computed(()=>{const ie=o(n.file);if(!ie)return"other";if(s.includes(ie))return"image";if(l.includes(ie))return"video";if(c.includes(ie))return"audio";if(ie==="pdf")return"pdf";const re=n.openMode!=="view";return ie==="md"||ie==="markdown"?"markdown":ie in d?"code":ie in f?"viewer":h.includes(ie)?"office":u.includes(ie)?re?"code":"text":"other"}),w=r.shallowRef(null),g=r.ref(null),v=r.ref(!1);async function m(ie){w.value=null,g.value=null;const re=f[ie];if(re)try{const ye=await re();w.value=ye.default??ye}catch(ye){g.value=ye instanceof Error?ye.message:"viewer load failed",ie==="pdf"&&(v.value=!0)}}function b(){v.value=!0}const y=r.computed(()=>{var ye;const ie=o(n.file),re={url:k.value,ext:ie,mime:(ye=n.file)==null?void 0:ye.mime_type,t:i,authHeaders:n.authHeaders,authCredentials:n.authCredentials};return n.file&&(re.filePath=D(n.file.path),(ie==="zip"||ie==="rar"||ie==="7z"||ie==="tar"||ie==="gz"||ie==="tgz")&&(re.filePath=n.file.path)),(ie==="drawio"||ie==="dio")&&(re.drawioUrl=n.drawioUrl??void 0,re.saveUrl=n.saveTextEndpoint??void 0,re.readOnly=n.openMode==="view"),ie==="pdf"&&(re.pdfWorkerUrl=n.pdfWorkerUrl??void 0,re.pdfSaveUrl=n.pdfSaveUrl??void 0),re});function _(){A(n.openMode||"edit")}function S(){A("edit")}function A(ie){if(!n.file)return;const re=o(n.file),ye=n.viewerBaseUrl||"/files/edit",te=ye.includes("?")?"&":"?",ge=`${ye}${te}path=${encodeURIComponent(n.file.path)}&type=${encodeURIComponent(re)}&mode=${encodeURIComponent(ie)}`;window.open(ge,"_blank","noopener")}const T=new Set(["docx","doc","xlsx","xls","pptx","ppt","odt","ods","odp","rtf","drawio","dio","mmd","mermaid","md","markdown","txt","log","json","jsonc","yaml","yml","xml","svg","html","htm","js","mjs","cjs","ts","tsx","jsx","vue","svelte","css","scss","sass","less","php","py","rb","go","rs","java","kt","swift","cpp","c","h","hpp","cs","dart","sh","bash","sql","toml","ini","conf","cfg","env","dockerfile","graphql","gql"]),E=r.computed(()=>!!n.file&&T.has(o(n.file))),k=r.computed(()=>n.file?n.previewUrl(n.file.path):""),N=r.computed(()=>n.file?n.downloadUrl(n.file.path):"");function D(ie){const re=ie.indexOf("://");return re===-1?ie:ie.slice(re+3)}const U=r.ref(!1),L=r.ref(null),q=r.ref(""),X=r.ref(!1),$=r.ref(!1),j=r.ref(!1);let J,V;function F(){$.value=!0,J&&clearTimeout(J),J=setTimeout(()=>{ve(q.value)},250),V&&clearTimeout(V),V=setTimeout(()=>{I()},1500)}async function I(){if(!(!n.saveTextEndpoint||!n.file||j.value)){j.value=!0,L.value=null;try{const ie={"Content-Type":"application/json",...await(n.authHeaders??(()=>({})))()},re=await fetch(n.saveTextEndpoint,{method:"POST",headers:ie,credentials:n.authCredentials||"same-origin",body:JSON.stringify({path:D(n.file.path),content:q.value})});if(!re.ok)throw new Error(`save failed: ${re.status} ${await re.text()}`);$.value=!1}catch(ie){L.value=ie instanceof Error?ie.message:String(ie)}finally{j.value=!1}}}async function H(ie){U.value=!0,L.value=null,q.value="",X.value=!1;try{const re={};n.authHeaders&&Object.assign(re,await n.authHeaders());const ye=await fetch(ie,{credentials:n.authCredentials||"same-origin",headers:re});if(!ye.ok)throw new Error(`${ye.status} ${ye.statusText}`);if(Number(ye.headers.get("content-length")||"0")>dc){X.value=!0;return}const ge=await ye.text();ge.length>dc?(X.value=!0,q.value=ge.slice(0,dc)):q.value=ge}catch(re){L.value=re instanceof Error?re.message:String(re)}finally{U.value=!1}}const G=r.ref(""),oe=r.ref(null),de=r.ref(!1);async function ve(ie){try{const re=await import("markdown-it").catch(()=>null);if(!re){G.value="",de.value=!0;return}de.value=!1;const ye=re.default??re,ge=new ye({html:!0,linkify:!0,breaks:!0,typographer:!0}).render(ie);G.value=Ee(ge),await new Promise(z=>setTimeout(z,0)),await ne()}catch(re){G.value="",L.value=re instanceof Error?re.message:String(re)}}function Ee(ie){return ie.replace(/<\s*script\b[^<]*(?:(?!<\s*\/\s*script\s*>)<[^<]*)*<\s*\/\s*script\s*>/gi,"").replace(/<\s*iframe\b[\s\S]*?<\s*\/\s*iframe\s*>/gi,"").replace(/<\s*object\b[\s\S]*?<\s*\/\s*object\s*>/gi,"").replace(/<\s*embed\b[^>]*>/gi,"").replace(/\son\w+\s*=\s*(?:"[^"]*"|'[^']*'|[^\s>]+)/gi,"").replace(/(href|src|action|formaction|xlink:href)\s*=\s*(?:"\s*javascript:[^"]*"|'\s*javascript:[^']*')/gi,'$1="#"')}async function ne(){var ge,z,Te;if(!oe.value)return;const ie=oe.value,re=Array.from(ie.querySelectorAll("pre > code"));if(re.length===0)return;let ye,te;for(const lt of re){const C=lt.className||"",_e=/\blanguage-mermaid\b/.test(C)||/\blanguage-mmd\b/.test(C),ke=/\blanguage-math\b/.test(C)||/\blanguage-latex\b/.test(C)||/\blanguage-tex\b/.test(C);if(_e){if(ye===void 0)try{const R=await import("mermaid");ye=R.default??R,(ge=ye.initialize)==null||ge.call(ye,{startOnLoad:!1,securityLevel:"strict"})}catch{ye=null}if(!ye)continue;try{const R=`filex-md-mermaid-${Math.random().toString(36).slice(2)}`,{svg:K}=await ye.render(R,lt.textContent||""),ae=document.createElement("div");ae.className="fe-preview__md-mermaid",ae.innerHTML=K,(z=lt.parentElement)==null||z.replaceWith(ae)}catch{}}else if(ke){if(te===void 0)try{const R=await Promise.resolve().then(()=>yT);te=R.default??R}catch{te=null}if(!te)continue;try{const R=te.renderToString(lt.textContent||"",{displayMode:!0,throwOnError:!1}),K=document.createElement("div");K.className="fe-preview__md-math",K.innerHTML=R,(Te=lt.parentElement)==null||Te.replaceWith(K)}catch{}}}}const me=r.ref("");async function we(ie,re){try{const ye=await al();if(!ye){me.value="";return}const te=ye.default??ye;if(te.getLanguage(re)){const ge=te.highlight(ie,{language:re,ignoreIllegals:!0});me.value=ge.value}else{const ge=te.highlightAuto(ie);me.value=ge.value}}catch(ye){me.value="",L.value=ye instanceof Error?ye.message:String(ye)}}const Se=r.ref(null);let De=null,Xe;const tt=r.ref(!1),Pe=r.ref(!1),Oe=r.ref(!1),Ie=r.ref(!1),pe=r.ref(null);function $e(){if(De){try{De.dispose()}catch{}De=null}tt.value=!1,Ie.value=!1,pe.value=null}function ce(ie){return{js:"javascript",mjs:"javascript",cjs:"javascript",ts:"typescript",tsx:"typescript",jsx:"javascript",json:"json",jsonc:"json",css:"css",scss:"scss",sass:"scss",less:"less",html:"html",htm:"html",vue:"html",svelte:"html",xml:"xml",svg:"xml",md:"markdown",markdown:"markdown",php:"php",py:"python",yml:"yaml",yaml:"yaml",go:"go",rs:"rust",sql:"sql",cpp:"cpp",c:"c",h:"cpp",hpp:"cpp",sh:"shell",bash:"shell",dockerfile:"dockerfile",toml:"ini",ini:"ini",conf:"ini",cfg:"ini"}[ie]??"plaintext"}async function be(ie,re){var te;const ye=await rl();if(ye||(Pe.value=!0),!ye||!Se.value)return!1;try{$e();const ge=!!n.saveTextEndpoint&&n.openMode!=="view",z=n.theme==="dark"?!0:n.theme==="light"?!1:(te=window.matchMedia)==null?void 0:te.call(window,"(prefers-color-scheme: dark)").matches;return De=ye.editor.create(Se.value,{value:ie,language:ce(re),readOnly:!ge,theme:z?"vs-dark":"vs",automaticLayout:!0,minimap:{enabled:!1},fontSize:13}),ge&&(De.addCommand(ye.KeyMod.CtrlCmd|ye.KeyCode.KeyS,()=>void Me()),De.onDidChangeModelContent(()=>{Xe&&clearTimeout(Xe),Xe=setTimeout(()=>{Me()},1500)})),tt.value=!0,!0}catch(ge){return L.value=`Monaco mount fail: ${ge.message}`,!1}}async function Me(){if(!(!n.saveTextEndpoint||!n.file)&&n.openMode!=="view"&&!Oe.value){Oe.value=!0,Ie.value=!1,pe.value=null;try{const ie=De?De.getValue():"",re={"Content-Type":"application/json"};n.authHeaders&&Object.assign(re,await n.authHeaders());const ye=await fetch(n.saveTextEndpoint,{method:"POST",headers:re,credentials:n.authCredentials||"same-origin",body:JSON.stringify({path:D(n.file.path),content:ie})});if(!ye.ok){const te=await ye.text().catch(()=>"");throw new Error(`${ye.status} ${ye.statusText}${te?" — "+te.slice(0,150):""}`)}Ie.value=!0,setTimeout(()=>{Ie.value=!1},2500)}catch(ie){pe.value=ie.message}finally{Oe.value=!1}}}async function Qe(ie,re,ye){if(q.value="",G.value="",me.value="",L.value=null,xe.value=null,w.value=null,g.value=null,v.value=!1,at(),$e(),!(!ie||!re)){if(ye==="viewer"){await m(o(n.file));return}if(ye==="markdown"||ye==="code"||ye==="text"){if(await H(re),X.value)return;if(ye==="markdown"){await ve(q.value);return}const te=d[o(n.file)]||"";rc()?(await new Promise(Te=>setTimeout(Te,0)),await be(q.value,o(n.file))||await we(q.value,te)):(ye==="code"&&await we(q.value,te),rl().then(async z=>{if(!z){Pe.value=!0;return}n.open&&(await new Promise(Te=>setTimeout(Te,0)),await be(q.value,o(n.file)))}))}else ye==="office"&&(await new Promise(te=>setTimeout(te,0)),await Le())}}r.watch(()=>[n.open,k.value,p.value,n.openMode],([ie,re,ye])=>{Qe(ie,re,ye)}),r.onMounted(()=>{r.nextTick(()=>{n.open&&Qe(n.open,k.value,p.value)})});const dt=r.computed(()=>d[o(n.file)]||"plaintext"),ot=r.ref(null),xe=r.ref(null);let Ne=null;async function Le(){if(xe.value=null,!(!n.file||p.value!=="office")){if(!n.onlyOfficeConfigEndpoint){xe.value="OnlyOffice yapılandırması yok";return}if(ot.value)try{const ie={"Content-Type":"application/json"};n.authHeaders&&Object.assign(ie,await n.authHeaders());const re=await fetch(n.onlyOfficeConfigEndpoint,{method:"POST",headers:ie,credentials:n.authCredentials||"same-origin",body:JSON.stringify({path:n.file.path,mode:n.openMode||"edit"})});if(!re.ok)throw new Error(`Config fetch ${re.status}: ${(await re.text()).slice(0,200)}`);const{config:ye,documentServerUrl:te}=await re.json();await Y(te),at();const ge="fe-onlyoffice-mount";ot.value.id=ge,ye.events={onError:Te=>{xe.value=wt(Te)}};const z=window;if(!z.DocsAPI||!z.DocsAPI.DocEditor)throw new Error("DocsAPI not available after script load");Ne=new z.DocsAPI.DocEditor(ge,ye)}catch(ie){xe.value=ie instanceof Error?ie.message:String(ie)}}}function at(){var ie;try{(ie=Ne==null?void 0:Ne.destroyEditor)==null||ie.call(Ne)}catch{}Ne=null}r.onBeforeUnmount(()=>{at(),$e()});function wt(ie){if(typeof ie=="string")return ie;const re=ie;if(re!=null&&re.data&&typeof re.data=="object"){const ye=re.data;if(typeof ye.errorDescription=="string")return ye.errorDescription;if(typeof ye.message=="string")return ye.message;if(ye.errorCode!==void 0)return`OnlyOffice error ${ye.errorCode}`}if(typeof(re==null?void 0:re.data)=="string")return re.data;if(typeof(re==null?void 0:re.errorDescription)=="string")return re.errorDescription;if(typeof(re==null?void 0:re.message)=="string")return re.message;try{return JSON.stringify(ie)}catch{return"OnlyOffice error"}}function Y(ie){return new Promise((re,ye)=>{var z;if((z=window.DocsAPI)!=null&&z.DocEditor){re();return}const te=document.getElementById(Rf);if(te){te.addEventListener("load",()=>re()),te.addEventListener("error",()=>ye(new Error("OnlyOffice api.js load failed")));return}const ge=document.createElement("script");ge.id=Rf,ge.src=`${ie.replace(/\/$/,"")}/web-apps/apps/api/documents/api.js`,ge.async=!0,ge.onload=()=>re(),ge.onerror=()=>ye(new Error("OnlyOffice api.js load failed")),document.head.appendChild(ge)})}return(ie,re)=>{var ye;return r.openBlock(),r.createBlock($r,{open:e.open,size:"xl",title:((ye=e.file)==null?void 0:ye.basename)||"",chromeless:e.chromeless,theme:e.theme,onClose:re[2]||(re[2]=te=>a("close"))},{actions:r.withCtx(()=>[e.file&&e.openMode==="view"&&E.value&&e.newTabEnabled!==!1?(r.openBlock(),r.createElementBlock("button",{key:0,type:"button",class:"fe-btn fe-btn--primary",onClick:S},"✏ "+r.toDisplayString(r.unref(i)("viewer.edit")),1)):r.createCommentVNode("",!0),e.file&&e.newTabEnabled!==!1?(r.openBlock(),r.createElementBlock("button",{key:1,type:"button",class:"fe-btn",onClick:_},"↗ "+r.toDisplayString(r.unref(i)("viewer.open_in_new_tab")),1)):r.createCommentVNode("",!0),e.file?(r.openBlock(),r.createElementBlock("a",{key:2,href:N.value,class:"fe-btn"},r.toDisplayString(r.unref(i)("viewer.download")),9,iw)):r.createCommentVNode("",!0),r.createElementVNode("button",{type:"button",class:"fe-btn",onClick:re[1]||(re[1]=te=>a("close"))},r.toDisplayString(r.unref(i)("viewer.close")),1)]),default:r.withCtx(()=>[e.file?(r.openBlock(),r.createElementBlock("div",p8,[p.value==="image"?(r.openBlock(),r.createElementBlock("img",{key:0,src:k.value,alt:e.file.basename,class:"fe-preview__image"},null,8,m8)):p.value==="video"?(r.openBlock(),r.createElementBlock("video",{key:1,src:k.value,controls:"",preload:"metadata",class:"fe-preview__video"},null,8,g8)):p.value==="audio"?(r.openBlock(),r.createElementBlock("audio",{key:2,src:k.value,controls:"",class:"fe-preview__audio"},null,8,b8)):p.value==="pdf"?(r.openBlock(),r.createElementBlock("object",{key:3,data:k.value,type:"application/pdf",class:"fe-preview__iframe"},[r.createElementVNode("div",y8,[re[3]||(re[3]=r.createElementVNode("span",{class:"fe-preview__fallback-icon"},"📕",-1)),re[4]||(re[4]=r.createElementVNode("p",null,"Tarayıcı PDF'i inline açamadı.",-1)),r.createElementVNode("a",{href:N.value,class:"fe-btn fe-btn--primary",target:"_blank",rel:"noopener"},"PDF'i Yeni Sekmede Aç",8,_8)])],8,v8)):p.value==="markdown"?(r.openBlock(),r.createElementBlock(r.Fragment,{key:4},[U.value?(r.openBlock(),r.createElementBlock("div",w8,r.toDisplayString(r.unref(i)("viewer.loading")),1)):X.value?(r.openBlock(),r.createElementBlock("div",k8,[re[5]||(re[5]=r.createTextVNode(" Dosya çok büyük (>1 MB). ",-1)),r.createElementVNode("a",{href:N.value,class:"fe-btn"},r.toDisplayString(r.unref(i)("viewer.download")),9,E8)])):e.openMode==="edit"&&e.saveTextEndpoint?(r.openBlock(),r.createElementBlock("div",x8,[r.createElementVNode("div",S8,[re[6]||(re[6]=r.createElementVNode("span",{class:"fe-preview__md-split-label"},"MARKDOWN",-1)),L.value?(r.openBlock(),r.createElementBlock("span",C8,r.toDisplayString(L.value),1)):r.createCommentVNode("",!0),r.createElementVNode("button",{type:"button",class:"fe-btn fe-btn--primary",disabled:!$.value||j.value,onClick:I},r.toDisplayString(j.value?r.unref(i)("viewer.saving"):$.value?r.unref(i)("viewer.save"):r.unref(i)("viewer.saved")),9,N8)]),r.createElementVNode("div",T8,[r.withDirectives(r.createElementVNode("textarea",{class:"fe-preview__md-split-input","onUpdate:modelValue":re[0]||(re[0]=te=>q.value=te),onInput:F,onKeydown:[r.withKeys(r.withModifiers(I,["ctrl","prevent"]),["s"]),r.withKeys(r.withModifiers(I,["meta","prevent"]),["s"])],spellcheck:"false",placeholder:"# Markdown buraya…"},null,40,A8),[[r.vModelText,q.value]]),de.value?(r.openBlock(),r.createElementBlock("div",D8,r.toDisplayString(r.unref(i)("viewer.peer_not_installed")),1)):(r.openBlock(),r.createElementBlock("div",{key:1,ref_key:"markdownEl",ref:oe,class:"fe-preview__md-split-output fe-preview__md",innerHTML:G.value},null,8,M8))])])):L.value?(r.openBlock(),r.createElementBlock("div",B8,[r.createElementVNode("p",null,r.toDisplayString(L.value),1),r.createElementVNode("a",{href:N.value,class:"fe-btn fe-btn--primary"},r.toDisplayString(r.unref(i)("viewer.download")),9,O8)])):G.value?(r.openBlock(),r.createElementBlock("div",{key:4,ref_key:"markdownEl",ref:oe,class:"fe-preview__md",innerHTML:G.value},null,8,I8)):(r.openBlock(),r.createElementBlock("pre",R8,r.toDisplayString(q.value),1))],64)):p.value==="viewer"?(r.openBlock(),r.createElementBlock(r.Fragment,{key:5},[g.value&&!v.value?(r.openBlock(),r.createElementBlock("div",L8,[re[7]||(re[7]=r.createElementVNode("span",{class:"fe-preview__fallback-icon"},"⚠️",-1)),r.createElementVNode("p",null,r.toDisplayString(g.value),1),r.createElementVNode("a",{href:N.value,class:"fe-btn fe-btn--primary"},r.toDisplayString(r.unref(i)("viewer.download")),9,F8)])):w.value?(r.openBlock(),r.createBlock(r.resolveDynamicComponent(w.value),r.mergeProps({key:2},y.value,{class:"fe-preview__viewer",onFallback:b}),null,16)):(r.openBlock(),r.createElementBlock("div",z8,[re[8]||(re[8]=r.createElementVNode("span",{class:"fe-preview__fallback-icon"},"⏳",-1)),r.createElementVNode("p",null,r.toDisplayString(r.unref(i)("viewer.loading")),1)]))],64)):p.value==="code"||p.value==="text"?(r.openBlock(),r.createElementBlock(r.Fragment,{key:6},[U.value?(r.openBlock(),r.createElementBlock("div",P8,r.toDisplayString(r.unref(i)("viewer.loading")),1)):X.value?(r.openBlock(),r.createElementBlock("div",$8,[re[9]||(re[9]=r.createTextVNode(" Dosya çok büyük (>1 MB). ",-1)),r.createElementVNode("a",{href:N.value,class:"fe-btn"},r.toDisplayString(r.unref(i)("viewer.download")),9,V8)])):L.value?(r.openBlock(),r.createElementBlock("div",U8,[r.createElementVNode("p",null,r.toDisplayString(L.value),1),r.createElementVNode("a",{href:N.value,class:"fe-btn fe-btn--primary"},r.toDisplayString(r.unref(i)("viewer.download")),9,H8)])):(r.openBlock(),r.createElementBlock("div",G8,[r.createElementVNode("div",q8,[r.createElementVNode("span",K8,r.toDisplayString(dt.value),1),!tt.value&&me.value?(r.openBlock(),r.createElementBlock("span",W8,r.toDisplayString(e.saveTextEndpoint&&!Pe.value?r.unref(i)("viewer.editor_loading"):r.unref(i)("viewer.read_only")),1)):r.createCommentVNode("",!0),Ie.value?(r.openBlock(),r.createElementBlock("span",Y8,"✓ "+r.toDisplayString(r.unref(i)("viewer.saved")),1)):r.createCommentVNode("",!0),pe.value?(r.openBlock(),r.createElementBlock("span",{key:2,class:"fe-preview__code-status fe-preview__code-status--err",title:pe.value},"✗ "+r.toDisplayString(r.unref(i)("viewer.save_error")),9,j8)):r.createCommentVNode("",!0),e.openMode==="view"?(r.openBlock(),r.createElementBlock("span",X8,r.toDisplayString(r.unref(i)("viewer.read_only")),1)):e.saveTextEndpoint&&tt.value?(r.openBlock(),r.createElementBlock("button",{key:4,type:"button",class:"fe-btn fe-btn--primary",disabled:Oe.value,onClick:Me},r.toDisplayString(Oe.value?r.unref(i)("viewer.saving"):r.unref(i)("viewer.save")),9,Z8)):r.createCommentVNode("",!0)]),r.createElementVNode("div",{ref_key:"monacoEl",ref:Se,class:r.normalizeClass(["fe-preview__code-editor",{"is-hidden":!tt.value}])},null,2),!tt.value&&me.value?(r.openBlock(),r.createElementBlock("pre",J8,[r.createElementVNode("code",{class:r.normalizeClass(`language-${dt.value}`),innerHTML:me.value},null,10,Q8)])):!tt.value&&!me.value?(r.openBlock(),r.createElementBlock("pre",{key:1,class:"fe-preview__pre","data-lang":dt.value},r.toDisplayString(q.value),9,ew)):r.createCommentVNode("",!0)]))],64)):p.value==="office"?(r.openBlock(),r.createElementBlock(r.Fragment,{key:7},[xe.value?(r.openBlock(),r.createElementBlock("div",tw,[re[10]||(re[10]=r.createElementVNode("span",{class:"fe-preview__fallback-icon"},"📄",-1)),r.createElementVNode("p",null,r.toDisplayString(xe.value),1),r.createElementVNode("a",{href:N.value,class:"fe-btn fe-btn--primary"},r.toDisplayString(r.unref(i)("viewer.download")),9,nw)])):(r.openBlock(),r.createElementBlock("div",{key:1,ref_key:"officeEl",ref:ot,class:"fe-preview__office"},null,512))],64)):(r.openBlock(),r.createElementBlock("div",rw,[re[11]||(re[11]=r.createElementVNode("span",{class:"fe-preview__fallback-icon"},"📎",-1)),r.createElementVNode("p",null,r.toDisplayString(r.unref(i)("viewer.no_preview")),1),r.createElementVNode("a",{href:N.value,class:"fe-btn fe-btn--primary"},r.toDisplayString(r.unref(i)("viewer.download")),9,aw)]))])):r.createCommentVNode("",!0)]),_:1},8,["open","title","chromeless","theme"])}}}),Lf=r.defineComponent({__name:"QuickLook",props:{open:{type:Boolean},locale:{},file:{},previewUrl:{type:Function},downloadUrl:{type:Function},onlyOfficeBase:{},onlyOfficeConfigEndpoint:{},authHeaders:{type:Function},authCredentials:{},drawioUrl:{},pdfWorkerUrl:{},viewerBaseUrl:{},theme:{}},emits:["close","nav","open-full"],setup(e,{emit:t}){const n=e,a=t,{t:i}=qt(()=>n.locale);function o(l){const c=l;return!!(c&&(c.tagName==="INPUT"||c.tagName==="TEXTAREA"||c.tagName==="SELECT"||c.isContentEditable))}function s(l){if(n.open&&!(l.ctrlKey||l.metaKey||l.altKey)&&!o(l.target))switch(l.key){case" ":l.preventDefault(),l.stopPropagation(),a("close");break;case"ArrowRight":case"ArrowDown":l.preventDefault(),l.stopPropagation(),a("nav",1);break;case"ArrowLeft":case"ArrowUp":l.preventDefault(),l.stopPropagation(),a("nav",-1);break;case"Enter":l.preventDefault(),l.stopPropagation(),a("open-full");break}}return r.watch(()=>n.open,l=>{l?window.addEventListener("keydown",s,!0):window.removeEventListener("keydown",s,!0)},{immediate:!0}),r.onBeforeUnmount(()=>window.removeEventListener("keydown",s,!0)),(l,c)=>(r.openBlock(),r.createElementBlock(r.Fragment,null,[r.createVNode(uc,{class:"fe-quicklook",open:e.open,locale:e.locale,file:e.file,theme:e.theme,"preview-url":e.previewUrl,"download-url":e.downloadUrl,"only-office-base":e.onlyOfficeBase,"only-office-config-endpoint":e.onlyOfficeConfigEndpoint,"open-mode":"view","auth-headers":e.authHeaders,"auth-credentials":e.authCredentials,"drawio-url":e.drawioUrl,"pdf-worker-url":e.pdfWorkerUrl,"viewer-base-url":e.viewerBaseUrl,onClose:c[0]||(c[0]=d=>a("close"))},null,8,["open","locale","file","theme","preview-url","download-url","only-office-base","only-office-config-endpoint","auth-headers","auth-credentials","drawio-url","pdf-worker-url","viewer-base-url"]),r.createVNode(r.Transition,{name:"fe-toast"},{default:r.withCtx(()=>[e.open?(r.openBlock(),r.createElementBlock("div",{key:0,class:r.normalizeClass(["fe fe-ql-hint",{"fe--theme-light":e.theme==="light","fe--theme-dark":e.theme==="dark"}]),"aria-hidden":"true"},[c[1]||(c[1]=r.createElementVNode("kbd",{class:"fe-kbd"},"Space",-1)),r.createTextVNode(" "+r.toDisplayString(r.unref(i)("quicklook.hint_close"))+" ",1),c[2]||(c[2]=r.createElementVNode("span",{class:"fe-ql-hint__sep"},"·",-1)),c[3]||(c[3]=r.createElementVNode("kbd",{class:"fe-kbd"},"↑",-1)),c[4]||(c[4]=r.createElementVNode("kbd",{class:"fe-kbd"},"↓",-1)),r.createTextVNode(" "+r.toDisplayString(r.unref(i)("quicklook.hint_nav"))+" ",1),c[5]||(c[5]=r.createElementVNode("span",{class:"fe-ql-hint__sep"},"·",-1)),c[6]||(c[6]=r.createElementVNode("kbd",{class:"fe-kbd"},"Enter",-1)),r.createTextVNode(" "+r.toDisplayString(r.unref(i)("quicklook.hint_open")),1)],2)):r.createCommentVNode("",!0)]),_:1})],64))}}),ow=["aria-label"],lw={class:"fe-opc__head"},sw=["aria-label"],cw={class:"fe-opc__body"},dw={key:0,class:"fe-opc__section","aria-live":"polite"},uw={class:"fe-opc__section-title"},fw={class:"fe-opc__list"},hw={class:"fe-opc__kicon",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"1.8","stroke-linecap":"round","stroke-linejoin":"round","aria-hidden":"true",focusable:"false"},pw=["d"],mw={class:"fe-opc__mid"},gw=["title"],bw={class:"fe-opc__sub"},vw={class:"fe-opc__kind"},yw={class:"fe-opc__state"},_w=["aria-valuenow"],ww={key:0,class:"fe-opc__spin","aria-hidden":"true"},kw={class:"fe-opc__acts"},Ew=["onClick"],xw=["onClick"],Sw=["aria-label","onClick"],Cw={key:1,class:"fe-opc__section"},Nw={class:"fe-opc__section-title"},Tw={class:"fe-opc__list fe-opc__list--history"},Aw={class:"fe-opc__kicon",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"1.8","stroke-linecap":"round","stroke-linejoin":"round","aria-hidden":"true",focusable:"false"},Dw=["d"],Mw={class:"fe-opc__mid"},Bw=["title"],Ow={key:0,class:"fe-opc__sub fe-opc__sub--err"},Iw={key:2,class:"fe-opc__empty"},Rw=["aria-expanded","aria-label"],Lw=["stroke-dashoffset"],Fw={class:"fe-opc__count"},zw={key:0,class:"fe-opc__pct"},fc=8.5,Ff=r.defineComponent({__name:"OperationsCenter",props:{center:{},locale:{},narrow:{type:Boolean}},setup(e){const t=e,{t:n,formatSize:a}=qt(()=>t.locale),i=r.ref(!1),o=r.ref(null),s=r.computed(()=>t.center.active.value),l=r.computed(()=>t.center.history.value),c=r.computed(()=>t.center.hasError.value),d=r.computed(()=>t.center.overallPercent.value),u=r.computed(()=>t.center.runningCount.value),h=r.computed(()=>s.value.length>0||i.value&&l.value.length>0);r.watch(h,E=>{E||(i.value=!1)});const f=2*Math.PI*fc,p=r.computed(()=>{const E=d.value;return E===null?f*.72:f*(1-Math.min(100,Math.max(0,E))/100)}),w=r.computed(()=>d.value===null&&u.value>0),g=r.computed(()=>u.value===0||d.value===null?"":n("opc.percent",{n:d.value})),v=r.computed(()=>n("opc.aria_badge",{n:s.value.length})),m={upload:"M12 16V5M7 9.5 12 5l5 4.5M5 19h14",copy:"M9 9h11v11H9zM5 15V4h11",move:"M4 12h13M12 6l6 6-6 6",delete:"M5 7h14M9 7V5h6v2M8 7l1 13h6l1-13",convert:"M20 8A8 8 0 0 0 6 6L4 8M4 16a8 8 0 0 0 14 2l2-2M20 3v5h-5M4 21v-5h5",archive:"M4 8V5h16v3zM5 8h14v12H5zM10 12h4"};function b(E){return n(`opc.kind.${E.kind}`)}function y(E){return E.name||b(E)}function _(E){return E.status==="running"?E.queued?n("opc.queued"):E.totalBytes&&E.totalBytes>0?`${a(E.uploadedBytes??0)} / ${a(E.totalBytes)}`:E.totalCount&&E.totalCount>0?`${E.doneCount??0}/${E.totalCount}`:n("opc.status.running"):E.status==="done"?n("opc.status.done"):E.status==="aborted"?n("opc.status.aborted"):E.error||n("opc.status.error")}function S(E){return n(`opc.status.${E.status==="running"?"running":E.status}`)}function A(E){if(!i.value)return;const k=o.value;k&&E.target instanceof Node&&!k.contains(E.target)&&(i.value=!1)}function T(E){i.value&&E.key==="Escape"&&(i.value=!1)}return r.onMounted(()=>{document.addEventListener("mousedown",A),document.addEventListener("keydown",T)}),r.onBeforeUnmount(()=>{document.removeEventListener("mousedown",A),document.removeEventListener("keydown",T)}),(E,k)=>h.value?(r.openBlock(),r.createElementBlock("div",{key:0,ref_key:"rootEl",ref:o,class:r.normalizeClass(["fe-opc",{"fe-opc--narrow":e.narrow,"fe-opc--open":i.value}])},[r.createVNode(r.Transition,{name:"fe-opc-pop"},{default:r.withCtx(()=>[i.value?(r.openBlock(),r.createElementBlock("section",{key:0,class:"fe-opc__panel",role:"dialog","aria-label":r.unref(n)("opc.title")},[r.createElementVNode("header",lw,[r.createElementVNode("strong",null,r.toDisplayString(r.unref(n)("opc.title")),1),r.createElementVNode("button",{type:"button",class:"fe-opc__x","aria-label":r.unref(n)("opc.close"),onClick:k[0]||(k[0]=N=>i.value=!1)},"×",8,sw)]),r.createElementVNode("div",cw,[s.value.length>0?(r.openBlock(),r.createElementBlock("div",dw,[r.createElementVNode("h3",uw,r.toDisplayString(r.unref(n)("opc.active")),1),r.createElementVNode("ul",fw,[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(s.value,N=>(r.openBlock(),r.createElementBlock("li",{key:N.key,class:r.normalizeClass(["fe-opc__item",`is-${N.status}`])},[(r.openBlock(),r.createElementBlock("svg",hw,[r.createElementVNode("path",{d:m[N.kind]},null,8,pw)])),r.createElementVNode("div",mw,[r.createElementVNode("div",{class:"fe-opc__name",title:y(N)},r.toDisplayString(y(N)),9,gw),r.createElementVNode("div",bw,[r.createElementVNode("span",vw,r.toDisplayString(b(N)),1),k[3]||(k[3]=r.createElementVNode("span",{class:"fe-opc__dot","aria-hidden":"true"},"·",-1)),r.createElementVNode("span",yw,r.toDisplayString(_(N)),1)]),N.status==="running"&&N.percent!==null?(r.openBlock(),r.createElementBlock("div",{key:0,class:"fe-opc__bar",role:"progressbar","aria-valuenow":N.percent,"aria-valuemin":"0","aria-valuemax":"100"},[r.createElementVNode("div",{class:"fe-opc__bar-fill",style:r.normalizeStyle({width:N.percent+"%"})},null,4)],8,_w)):r.createCommentVNode("",!0)]),N.status==="running"&&N.percent===null&&!N.queued?(r.openBlock(),r.createElementBlock("span",ww)):r.createCommentVNode("",!0),r.createElementVNode("div",kw,[N.status==="running"&&N.cancellable?(r.openBlock(),r.createElementBlock("button",{key:0,type:"button",class:"fe-opc__act",onClick:D=>e.center.cancel(N.key)},r.toDisplayString(r.unref(n)("opc.cancel")),9,Ew)):r.createCommentVNode("",!0),N.status==="error"&&N.retryable?(r.openBlock(),r.createElementBlock("button",{key:1,type:"button",class:"fe-opc__act fe-opc__act--retry",onClick:D=>e.center.retry(N.key)},r.toDisplayString(r.unref(n)("opc.retry")),9,xw)):r.createCommentVNode("",!0),N.status!=="running"?(r.openBlock(),r.createElementBlock("button",{key:2,type:"button",class:"fe-opc__x","aria-label":r.unref(n)("opc.dismiss"),onClick:D=>e.center.dismiss(N.key)},"×",8,Sw)):r.createCommentVNode("",!0)])],2))),128))])])):r.createCommentVNode("",!0),l.value.length>0?(r.openBlock(),r.createElementBlock("div",Cw,[r.createElementVNode("h3",Nw,[r.createTextVNode(r.toDisplayString(r.unref(n)("opc.history"))+" ",1),r.createElementVNode("button",{type:"button",class:"fe-opc__act",onClick:k[1]||(k[1]=N=>e.center.clearHistory())},r.toDisplayString(r.unref(n)("opc.clear")),1)]),r.createElementVNode("ul",Tw,[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(l.value,N=>(r.openBlock(),r.createElementBlock("li",{key:"h-"+N.key,class:r.normalizeClass(["fe-opc__item fe-opc__item--history",`is-${N.status}`])},[(r.openBlock(),r.createElementBlock("svg",Aw,[r.createElementVNode("path",{d:m[N.kind]},null,8,Dw)])),r.createElementVNode("div",Mw,[r.createElementVNode("div",{class:"fe-opc__name",title:y(N)},r.toDisplayString(y(N)),9,Bw),N.status==="error"&&N.error?(r.openBlock(),r.createElementBlock("div",Ow,r.toDisplayString(N.error),1)):r.createCommentVNode("",!0)]),r.createElementVNode("span",{class:r.normalizeClass(["fe-opc__chip",`is-${N.status}`])},r.toDisplayString(S(N)),3)],2))),128))])])):r.createCommentVNode("",!0),s.value.length===0&&l.value.length===0?(r.openBlock(),r.createElementBlock("p",Iw,r.toDisplayString(r.unref(n)("opc.empty")),1)):r.createCommentVNode("",!0)])],8,ow)):r.createCommentVNode("",!0)]),_:1}),r.createElementVNode("button",{type:"button",class:r.normalizeClass(["fe-opc__badge",{"is-error":c.value}]),"aria-expanded":i.value,"aria-label":v.value,onClick:k[2]||(k[2]=N=>i.value=!i.value)},[(r.openBlock(),r.createElementBlock("svg",{class:r.normalizeClass(["fe-opc__ring",{"fe-opc__ring--spin":w.value}]),viewBox:"0 0 22 22","aria-hidden":"true",focusable:"false"},[r.createElementVNode("circle",{class:"fe-opc__ring-track",cx:"11",cy:"11",r:fc,fill:"none","stroke-width":"2.5"}),r.createElementVNode("circle",{class:"fe-opc__ring-fill",cx:"11",cy:"11",r:fc,fill:"none","stroke-width":"2.5","stroke-linecap":"round","stroke-dasharray":f,"stroke-dashoffset":p.value,transform:"rotate(-90 11 11)"},null,8,Lw)],2)),r.createElementVNode("span",Fw,r.toDisplayString(s.value.length),1),g.value?(r.openBlock(),r.createElementBlock("span",zw,r.toDisplayString(g.value),1)):r.createCommentVNode("",!0)],10,Rw)],2)):r.createCommentVNode("",!0)}}),Pw=4e3,zf=50;function $w(e,t,n){const a=t.status!=="running";return{key:e,kind:t.kind,name:t.name,percent:t.percent,status:t.status,error:t.error??null,queued:t.queued??!1,doneCount:t.doneCount??null,totalCount:t.totalCount??null,uploadedBytes:t.uploadedBytes??null,totalBytes:t.totalBytes??null,cancellable:t.cancellable??!1,retryable:t.retryable??!1,startedAt:(n==null?void 0:n.startedAt)??Date.now(),settledAt:(n==null?void 0:n.settledAt)??(a?Date.now():null)}}function Pf(){const e=r.ref([]),t=r.ref([]),n=new Map,a=new Set,i=new Map;function o(m){const b=i.get(m);b!==void 0&&(clearTimeout(b),i.delete(m))}function s(m,b={}){o(m);const y=e.value.findIndex(S=>S.key===m);if(y===-1)return;const[_]=e.value.splice(y,1);e.value=[...e.value],a.add(m),b.toHistory!==!1&&(t.value=[{..._,settledAt:_.settledAt??Date.now()},...t.value].slice(0,zf))}function l(m){i.has(m)||i.set(m,setTimeout(()=>{var y;i.delete(m);const b=n.get(m);s(m),(y=b==null?void 0:b.dismiss)==null||y.call(b)},Pw))}function c(m,b){const y=`${m}:`,_=new Set;let S=[...e.value],A=!1;for(const T of b){const E=`${m}:${T.input.id}`;if(_.add(E),T.actions&&n.set(E,T.actions),a.has(E))continue;const k=S.findIndex(D=>D.key===E),N=$w(E,T.input,k===-1?void 0:S[k]);k===-1?(S=[N,...S],A=!0):JSON.stringify(S[k])!==JSON.stringify(N)&&(S[k]=N,A=!0),(N.status==="done"||N.status==="aborted")&&l(E)}for(const T of[...S])!T.key.startsWith(y)||_.has(T.key)||T.status!=="error"&&(o(T.key),S=S.filter(E=>E.key!==T.key),A=!0,T.status!=="running"&&(a.add(T.key),t.value=[{...T,settledAt:T.settledAt??Date.now()},...t.value].slice(0,zf)));for(const T of[...a])T.startsWith(y)&&!_.has(T)&&a.delete(T);for(const T of[...n.keys()])T.startsWith(y)&&!_.has(T)&&!e.value.some(E=>E.key===T)&&(S.some(E=>E.key===T)||n.delete(T));A&&(e.value=S)}function d(m){var b,y;(y=(b=n.get(m))==null?void 0:b.cancel)==null||y.call(b)}function u(m){var y,_;const b=n.get(m);s(m),(y=b==null?void 0:b.dismiss)==null||y.call(b),(_=b==null?void 0:b.retry)==null||_.call(b)}function h(m){var y;const b=n.get(m);s(m),(y=b==null?void 0:b.dismiss)==null||y.call(b)}function f(){t.value=[]}const p=r.computed(()=>e.value.filter(m=>m.status==="running").length),w=r.computed(()=>e.value.filter(m=>m.status==="error").length),g=r.computed(()=>w.value>0),v=r.computed(()=>{const m=e.value.filter(_=>_.status==="running");let b=0,y=0;for(const _ of m){let S=null;_.totalBytes&&_.totalBytes>0?S=Math.min(1,(_.uploadedBytes??0)/_.totalBytes):_.totalCount&&_.totalCount>0?S=Math.min(1,(_.doneCount??0)/_.totalCount):_.percent!==null&&(S=Math.min(1,_.percent/100)),S!==null&&(b+=S,y+=1)}return y===0?null:Math.round(b/y*100)});return r.getCurrentScope()&&r.onScopeDispose(()=>{for(const m of i.values())clearTimeout(m);i.clear()}),{active:e,history:t,runningCount:p,errorCount:w,hasError:g,overallPercent:v,sync:c,cancel:d,retry:u,dismiss:h,clearHistory:f}}const Vw=["data-prefers-dark","aria-label"],Uw={key:1,class:"fe-tour__dim","aria-hidden":"true"},Hw={class:"fe-tour__progress","aria-hidden":"true"},Gw={class:"fe-tour__title"},qw={class:"fe-tour__desc"},Kw={class:"fe-tour__dots","aria-hidden":"true"},Ww={class:"fe-tour__actions"},ri=6,$f=12,Yw=r.defineComponent({__name:"OnboardingTour",props:{open:{type:Boolean},locale:{},root:{},theme:{}},emits:["close"],setup(e,{emit:t}){const n=e,a=t,{t:i}=qt(()=>n.locale);function o(k,N){const D=k.querySelectorAll("button[title]");for(const U of Array.from(D))if(U.getAttribute("title")===N)return U;return null}const s=[{id:"nav",titleKey:"tour.step.nav.title",descKey:"tour.step.nav.desc",target:k=>k.querySelector(".fe-breadcrumb")},{id:"upload",titleKey:"tour.step.upload.title",descKey:"tour.step.upload.desc",target:k=>o(k,i("toolbar.upload"))||k.querySelector(".fe-fab")},{id:"search",titleKey:"tour.step.search.title",descKey:"tour.step.search.desc",target:k=>k.querySelector(".fe-search__input")||k.querySelector(".fe-toolbar__search-toggle")},{id:"view",titleKey:"tour.step.view.title",descKey:"tour.step.view.desc",target:k=>k.querySelector(".fe-toolbar__view")},{id:"share",titleKey:"tour.step.share.title",descKey:"tour.step.share.desc",target:k=>k.querySelector(".fe__body")},{id:"help",titleKey:"tour.step.help.title",descKey:"tour.step.help.desc",target:()=>null}],l=r.ref([]),c=r.ref(0),d=r.computed(()=>l.value[c.value]??null),u=r.computed(()=>l.value.length);function h(){const k=n.root;l.value=s.filter(N=>{if(N.id==="help")return!0;if(!k)return!1;const D=N.target(k);if(!D)return!1;const U=D.getBoundingClientRect();return U.width>0&&U.height>0})}const f=r.ref(null),p=r.ref({}),w=r.ref(null);async function g(){var V;const k=d.value,N=n.root;if(!k)return;const D=N?k.target(N):null;if(!D){f.value=null,p.value={};return}const U=D.getBoundingClientRect();if(U.width<=0&&U.height<=0){f.value=null,p.value={};return}f.value={top:U.top-ri,left:U.left-ri,width:U.width+ri*2,height:U.height+ri*2},await r.nextTick();const L=window.innerWidth,q=window.innerHeight,X=Math.min(340,L-24),$=((V=w.value)==null?void 0:V.offsetHeight)??160;let j=U.bottom+ri+$f;j+$>q-12&&(j=Math.max(12,U.top-ri-$f-$));let J=U.left+U.width/2-X/2;J=Math.min(Math.max(12,J),L-X-12),p.value={top:`${Math.round(j)}px`,left:`${Math.round(J)}px`,width:`${X}px`}}function v(){n.open&&g()}function m(){if(c.value>=u.value-1){a("close");return}c.value+=1}function b(){c.value>0&&(c.value-=1)}function y(){a("close")}function _(k){n.open&&(k.key==="Escape"?(k.stopPropagation(),y()):k.key==="ArrowRight"||k.key==="Enter"?(k.preventDefault(),m()):k.key==="ArrowLeft"&&(k.preventDefault(),b()))}r.watch(()=>n.open,async k=>{var N;k&&(c.value=0,h(),await r.nextTick(),await g(),(N=w.value)==null||N.focus())}),r.watch(c,async()=>{var k;await g(),(k=w.value)==null||k.focus()}),r.onMounted(()=>{window.addEventListener("resize",v),window.addEventListener("scroll",v,!0)}),r.onBeforeUnmount(()=>{window.removeEventListener("resize",v),window.removeEventListener("scroll",v,!0)});const S=r.ref(!1);let A;function T(k){S.value=!!(k&&"matches"in k&&k.matches)}r.onMounted(()=>{var k;typeof window>"u"||(A=window.matchMedia("(prefers-color-scheme: dark)"),T(A),(k=A.addEventListener)==null||k.call(A,"change",T))}),r.onBeforeUnmount(()=>{var k;(k=A==null?void 0:A.removeEventListener)==null||k.call(A,"change",T)});const E=r.computed(()=>`fe-ctx-backdrop--theme-${n.theme||"auto"}`);return(k,N)=>(r.openBlock(),r.createBlock(r.Teleport,{to:"body"},[r.createVNode(r.Transition,{name:"fe-tour"},{default:r.withCtx(()=>[e.open&&d.value?(r.openBlock(),r.createElementBlock("div",{key:0,class:r.normalizeClass(["fe-tour",E.value]),"data-prefers-dark":S.value?"1":"0",role:"dialog","aria-modal":"true","aria-label":r.unref(i)("tour.aria"),onKeydown:_},[f.value?(r.openBlock(),r.createElementBlock("div",{key:0,class:"fe-tour__spot",style:r.normalizeStyle({top:f.value.top+"px",left:f.value.left+"px",width:f.value.width+"px",height:f.value.height+"px"}),"aria-hidden":"true"},null,4)):(r.openBlock(),r.createElementBlock("div",Uw)),r.createElementVNode("div",{ref_key:"cardEl",ref:w,class:r.normalizeClass(["fe-tour__card",{"fe-tour__card--center":!f.value}]),style:r.normalizeStyle(f.value?p.value:{}),tabindex:"-1"},[r.createElementVNode("p",Hw,r.toDisplayString(r.unref(i)("tour.progress",{n:c.value+1,m:u.value})),1),r.createElementVNode("h3",Gw,r.toDisplayString(r.unref(i)(d.value.titleKey)),1),r.createElementVNode("p",qw,r.toDisplayString(r.unref(i)(d.value.descKey)),1),r.createElementVNode("div",Kw,[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(l.value,(D,U)=>(r.openBlock(),r.createElementBlock("span",{key:D.id,class:r.normalizeClass(["fe-tour__dot",{"is-active":U===c.value}])},null,2))),128))]),r.createElementVNode("div",Ww,[r.createElementVNode("button",{type:"button",class:"fe-btn fe-tour__skip",onClick:y},r.toDisplayString(r.unref(i)("tour.skip")),1),N[0]||(N[0]=r.createElementVNode("span",{class:"fe-tour__actions-spacer"},null,-1)),c.value>0?(r.openBlock(),r.createElementBlock("button",{key:0,type:"button",class:"fe-btn",onClick:b},r.toDisplayString(r.unref(i)("tour.back")),1)):r.createCommentVNode("",!0),r.createElementVNode("button",{type:"button",class:"fe-btn fe-btn--primary",onClick:m},r.toDisplayString(c.value>=u.value-1?r.unref(i)("tour.done"):r.unref(i)("tour.next")),1)])],6)],42,Vw)):r.createCommentVNode("",!0)]),_:1})]))}}),jw=["aria-label"],Xw={class:"fe-tabs__scroll"},Zw=["aria-selected","title","onClick","onKeydown","onAuxclick","onDragstart","onDragover","onDragleave","onDrop"],Jw={key:0,class:"fe-tabs__splitdot","aria-hidden":"true"},Qw={class:"fe-tabs__label"},ek=["aria-label","title","onClick"],tk=["aria-label","title"],nk=["aria-label","title","aria-pressed"],Vf=r.defineComponent({__name:"TabBar",props:{tabs:{},activeId:{},locale:{},splitEnabled:{type:Boolean},splitActive:{type:Boolean}},emits:["select","close","new","reorder","toggle-split"],setup(e,{emit:t}){const n=e,a=t,{t:i}=qt(()=>n.locale),o=r.ref(null),s=r.ref(null);function l(w,g){var v;o.value=w,g.dataTransfer&&(g.dataTransfer.effectAllowed="move",g.dataTransfer.setData("text/plain",((v=n.tabs[w])==null?void 0:v.id)??""))}function c(w,g){o.value!==null&&(g.preventDefault(),g.stopPropagation(),g.dataTransfer&&(g.dataTransfer.dropEffect="move"),s.value=w)}function d(w){s.value===w&&(s.value=null)}function u(w,g){o.value!==null&&(g.preventDefault(),g.stopPropagation(),o.value!==w&&a("reorder",o.value,w),o.value=null,s.value=null)}function h(){o.value=null,s.value=null}function f(w){w.button===1&&w.preventDefault()}function p(w,g){g.button===1&&(g.preventDefault(),g.stopPropagation(),a("close",w))}return(w,g)=>(r.openBlock(),r.createElementBlock("div",{class:"fe-tabs",role:"tablist","aria-label":r.unref(i)("tabs.strip")},[r.createElementVNode("div",Xw,[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(e.tabs,(v,m)=>(r.openBlock(),r.createElementBlock("div",{key:v.id,class:r.normalizeClass(["fe-tabs__tab",{"is-active":v.id===e.activeId,"is-dragover":s.value===m&&o.value!==null&&o.value!==m}]),role:"tab","aria-selected":v.id===e.activeId?"true":"false",tabindex:"0",draggable:"true",title:v.label,onClick:b=>a("select",v.id),onKeydown:r.withKeys(r.withModifiers(b=>a("select",v.id),["prevent"]),["enter"]),onMousedown:g[0]||(g[0]=b=>f(b)),onAuxclick:b=>p(v.id,b),onDragstart:b=>l(m,b),onDragover:b=>c(m,b),onDragleave:b=>d(m),onDrop:b=>u(m,b),onDragend:h},[v.split?(r.openBlock(),r.createElementBlock("span",Jw)):r.createCommentVNode("",!0),r.createElementVNode("span",Qw,r.toDisplayString(v.label),1),r.createElementVNode("button",{type:"button",class:"fe-tabs__close","aria-label":r.unref(i)("tabs.close"),title:r.unref(i)("tabs.close"),onClick:r.withModifiers(b=>a("close",v.id),["stop"])},"×",8,ek)],42,Zw))),128)),r.createElementVNode("button",{type:"button",class:"fe-tabs__new","aria-label":r.unref(i)("tabs.new"),title:r.unref(i)("tabs.new"),onClick:g[1]||(g[1]=v=>a("new"))},"+",8,tk)]),e.splitEnabled!==!1?(r.openBlock(),r.createElementBlock("button",{key:0,type:"button",class:r.normalizeClass(["fe-tabs__split",{"is-active":e.splitActive}]),"aria-label":e.splitActive?r.unref(i)("tabs.split_off"):r.unref(i)("tabs.split"),title:e.splitActive?r.unref(i)("tabs.split_off"):r.unref(i)("tabs.split"),"aria-pressed":e.splitActive?"true":"false",onClick:g[2]||(g[2]=v=>a("toggle-split"))},[...g[3]||(g[3]=[r.createElementVNode("svg",{class:"fe-ficon",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"1.8","stroke-linecap":"round","stroke-linejoin":"round","aria-hidden":"true",focusable:"false"},[r.createElementVNode("rect",{x:"3",y:"4",width:"18",height:"16",rx:"2"}),r.createElementVNode("path",{d:"M12 4v16"})],-1)])],10,nk)):r.createCommentVNode("",!0)],8,jw))}}),eo=".filex-e2e.json",Uf="filexe2e",to=1,Hf=6e5,rk=6e5,hc=200*1024*1024,Gf=8,qf="filex-e2e-verify-v1",ll=new TextEncoder().encode(Uf),sl=97,pc=9,mc=21,ak=48,gc=69,Sr=12;class bc extends Error{constructor(t="e2e: decrypt failed"){super(t),this.name="E2eDecryptError"}}function Kf(e){let t="";for(let n=0;n<e.length;n++)t+=String.fromCharCode(e[n]);return btoa(t)}function Wf(e){const t=atob(e),n=new Uint8Array(t.length);for(let a=0;a<t.length;a++)n[a]=t.charCodeAt(a);return n}async function vc(e,t,n){const a=await crypto.subtle.importKey("raw",new TextEncoder().encode(e),"PBKDF2",!1,["deriveKey"]);return crypto.subtle.deriveKey({name:"PBKDF2",salt:new Uint8Array(t).buffer,iterations:n,hash:"SHA-256"},a,{name:"AES-GCM",length:256},!1,["encrypt","decrypt"])}async function Yf(e,t=Hf){const n=Math.max(rk,t),a=crypto.getRandomValues(new Uint8Array(16)),i=await vc(e,a,n),o=crypto.getRandomValues(new Uint8Array(Sr)),s=new Uint8Array(await crypto.subtle.encrypt({name:"AES-GCM",iv:o.buffer},i,new TextEncoder().encode(qf))),l=new Uint8Array(Sr+s.length);return l.set(o,0),l.set(s,Sr),{marker:{v:to,salt:Kf(a),iter:n,verify:Kf(l)},kek:i}}function jf(e){try{const t=JSON.parse(e);return!t||t.v!==to||typeof t.salt!="string"||typeof t.verify!="string"||typeof t.iter!="number"||t.iter<1?null:t}catch{return null}}async function Xf(e,t){const n=Wf(e.salt),a=await vc(t,n,e.iter),i=Wf(e.verify);if(i.length<=Sr)return null;try{const o=await crypto.subtle.decrypt({name:"AES-GCM",iv:i.slice(0,Sr).buffer},a,i.slice(Sr).buffer);return new TextDecoder().decode(o)!==qf?null:a}catch{return null}}function cl(e){const t=e instanceof Uint8Array?e:new Uint8Array(e);if(t.length<ll.length)return!1;for(let n=0;n<ll.length;n++)if(t[n]!==ll[n])return!1;return!0}async function Zf(e,t){if(t.byteLength>hc)throw new Error("e2e: file exceeds the 200MB single-shot limit");const n=crypto.getRandomValues(new Uint8Array(32)),a=await crypto.subtle.importKey("raw",n.buffer,{name:"AES-GCM"},!1,["encrypt"]),i=crypto.getRandomValues(new Uint8Array(Sr)),o=crypto.getRandomValues(new Uint8Array(Sr)),s=new Uint8Array(await crypto.subtle.encrypt({name:"AES-GCM",iv:i.buffer},e,n.buffer)),l=new Uint8Array(await crypto.subtle.encrypt({name:"AES-GCM",iv:o.buffer},a,t));n.fill(0);const c=new Uint8Array(sl+l.length);return c.set(ll,0),c[8]=to,c.set(i,pc),c.set(s,mc),c.set(o,gc),c.set(l,sl),c.buffer}async function yc(e,t){const n=new Uint8Array(t);if(!cl(n)||n.length<sl)throw new Error("e2e: not an encrypted file");if(n[8]!==to)throw new Error(`e2e: unsupported version ${n[8]}`);const a=n.slice(pc,pc+Sr),i=n.slice(mc,mc+ak),o=n.slice(gc,gc+Sr);let s;try{s=await crypto.subtle.decrypt({name:"AES-GCM",iv:a.buffer},e,i.buffer)}catch{throw new bc("e2e: DEK unwrap failed (wrong password?)")}const l=await crypto.subtle.importKey("raw",s,{name:"AES-GCM"},!1,["decrypt"]);try{return await crypto.subtle.decrypt({name:"AES-GCM",iv:o.buffer},l,n.slice(sl).buffer)}catch{throw new bc("e2e: content decrypt failed")}}function Jf(){const e=new Map;return{get(t){return e.get(t)},set(t,n){e.set(t,n)},lock(t){e.delete(t)},has(t){return e.has(t)},clear(){e.clear()}}}function Qf(e){const t=e.indexOf("://");return t===-1?e:e.slice(t+3)}function ik(e){return(e||[]).filter(t=>!(t.path.includes(".thumbs")||t.path.includes(".versions")||t.basename===".versions"||t.basename===".trash"||t.basename===".keepdir"||t.basename===eo))}const eh="filex.showHidden";function ok(){try{return localStorage.getItem(eh)==="1"}catch{return!1}}const no=r.ref(ok());function lk(e){no.value=e;try{localStorage.setItem(eh,e?"1":"0")}catch{}}function sk(e,t){return t?e||[]:(e||[]).filter(n=>!(n.basename||"").startsWith("."))}function th(e){return sk(ik(e),no.value)}function ck(e){const t=Qf(e);return t==="fileman"||t===""}function dk(e){return Qf(e).startsWith("fileman/.trash")}function uk(e){return{type:"dir",path:`${e}://fileman/.trash`,basename:".trash",extension:"",storage:e,visibility:"private",size:0,file_size:0,mime_type:"inode/directory",extra_metadata:{}}}function nh(e,t,n,a){return!a||dk(n)||!ck(n)?!1:(e.unshift(uk(t)),!0)}async function rh(e,t,n){try{const{entries:a}=await n.listTrash(t),i=e.find(l=>l.basename===".trash");if(!i)return;let o=0,s=0;for(const l of a){o+=l.size||0;const c=Date.parse(l.deleted_at);!Number.isNaN(c)&&c>s&&(s=c)}i.size=o,s>0&&(i.last_modified=s)}catch{}}const fk=["aria-label"],hk={class:"fe-split__crumbs"},pk=["title"],mk=["title","onClick"],gk=["aria-label","title"],bk={key:0,class:"fe-split__state",role:"status"},vk={key:1,class:"fe-split__state"},yk={key:2,class:"fe-split__state"},_c="application/x-brf-files",ah="application/x-brf-files-src",ih=r.defineComponent({__name:"SecondaryPane",props:{api:{},initialPath:{},locale:{},qualify:{type:Function},toUser:{type:Function},clamp:{type:Function},rootLabel:{},floor:{},multiRoot:{type:Boolean},virtualRows:{type:Function},active:{type:Boolean},viewMode:{},thumbSrc:{type:Function},trashVisible:{type:Boolean}},emits:["navigate","activate","close","open-tab","transfer","context","open-trash"],setup(e,{expose:t,emit:n}){const a=e,i=n,{t:o}=qt(()=>a.locale),s=r.ref(""),l=r.ref([]),c=r.ref(!1),d=r.ref(""),u=r.ref(new Set);function h(F){return F.mime_type==="inode/storage"}const f=r.computed(()=>!!a.multiRoot&&!(s.value??"").replace(/^\/+|\/+$/g,""));async function p(F){const I=a.clamp(F??s.value??"");c.value=!0,d.value="";try{if(a.multiRoot&&!I){l.value=a.virtualRows?a.virtualRows():[],s.value="",u.value=new Set,i("navigate","");return}const H=await a.api.index(a.qualify(I));l.value=th(H.files),nh(l.value,H.adapter,H.dirname,a.trashVisible!==!1)&&rh(l.value,H.adapter,a.api),s.value=a.toUser(H.dirname),u.value=new Set,i("navigate",s.value)}catch(H){d.value=H instanceof Error?H.message:String(H)}finally{c.value=!1}}p(a.initialPath??"");const w=r.computed(()=>{const F=(s.value||"").replace(/^\/+|\/+$/g,""),I=F?F.split("/"):[],H=(a.floor||"").replace(/^\/+|\/+$/g,""),G=[];let oe="";for(const de of I)oe=oe?`${oe}/${de}`:de,!(H&&!(oe===H||oe.startsWith(H+"/")))&&G.push({label:de,target:oe,last:!1});return G.length>0&&(G[G.length-1].last=!0),G}),g=r.computed(()=>!a.floor);function v(F){i("activate"),p(F)}function m(F,I){i("activate");const H=I.ctrl||I.shift,G=new Set(H?u.value:[]);H&&G.has(F.path)?G.delete(F.path):G.add(F.path),u.value=G}function b(F,I){I.preventDefault(),I.stopPropagation(),i("activate"),u.value.has(F.path)||(u.value=new Set([F.path])),i("context",F,I)}function y(F){F.preventDefault(),F.stopPropagation(),i("activate"),u.value=new Set,i("context",null,F)}function _(F,I){E.value=!1,!(F.type!=="dir"||h(F))&&k(I)&&N(I,F.path)}function S(F){if(F.type==="dir"){if(F.basename===".trash"){i("activate"),i("open-trash");return}p(h(F)?F.path:a.toUser(F.path))}}function A(){u.value=new Set}function T(F,I){if(!I.dataTransfer)return;if(h(F)||f.value||F.basename===".trash"){I.preventDefault();return}u.value.has(F.path)||(u.value=new Set([F.path]));const H=l.value.filter(G=>u.value.has(G.path)&&!h(G)).map(G=>({path:G.path,basename:G.basename,type:G.type}));if(H.length===0){I.preventDefault();return}I.dataTransfer.setData(_c,JSON.stringify(H)),I.dataTransfer.setData(ah,a.qualify(s.value)),I.dataTransfer.setData("text/plain",H.map(G=>G.path).join(`
1
+ (function(Je,r){typeof exports=="object"&&typeof module<"u"?r(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],r):(Je=typeof globalThis<"u"?globalThis:Je||self,r(Je.FilexCore={},Je.Vue))})(this,function(Je,r){"use strict";var gI=Object.defineProperty;var bI=(Je,r,Ia)=>r in Je?gI(Je,r,{enumerable:!0,configurable:!0,writable:!0,value:Ia}):Je[r]=Ia;var kr=(Je,r,Ia)=>bI(Je,typeof r!="symbol"?r+"":r,Ia);function Ia(e,t){for(var n=0;n<t.length;n++){const a=t[n];if(typeof a!="string"&&!Array.isArray(a)){for(const i in a)if(i!=="default"&&!(i in e)){const o=Object.getOwnPropertyDescriptor(a,i);o&&Object.defineProperty(e,i,o.get?o:{enumerable:!0,get:()=>a[i]})}}}return Object.freeze(Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}))}function Zs(e){return!!e&&e.enabled&&e.state==="ok"}function Zu(e){const t=e.apiBase!=null?e.apiBase.replace(/\/+$/,""):null;function n(i,o){return i||(t===null?null:`${t}${o}`)}const a=e.endpoint??(t!==null?`${t}/api/files/manager`:null);if(!a)throw new Error("[@brftech/filex-core] config requires either `apiBase` or `endpoint`");return{manager:a,uploadInit:n(e.uploadInit,"/api/files/upload/init"),uploadFinalize:n(e.uploadFinalize,"/api/files/upload/finalize"),uploadAbort:n(e.uploadAbort,"/api/files/upload/abort"),shareCreate:n(e.shareCreate,"/api/files/share"),shareList:n(e.shareList,"/api/files/share"),shareDelete:n(e.shareDelete,"/api/files/share/{uuid}"),limits:n(e.limits,"/api/files/limits"),capabilities:n(e.capabilities,"/api/files/capabilities"),archiveList:n(e.archiveList,"/api/files/archive/list"),archiveExtract:n(e.archiveExtract,"/api/files/archive/extract"),archiveAdd:n(e.archiveAdd,"/api/files/archive/add"),copy:n(e.copy,"/api/files/copy"),moveAsync:n(e.moveAsync,"/api/files/move"),deleteAsync:n(e.deleteAsync,"/api/files/delete"),opsList:n(e.opsList,"/api/files/ops"),opsShow:n(e.opsShow,"/api/files/ops/{id}"),onlyOfficeConfig:n(e.onlyOfficeConfig,"/api/files/onlyoffice/config"),saveText:n(e.saveText,"/api/files/save-text"),restore:n(e.restore,"/api/files/restore"),trashList:n(e.trashList,"/api/files/manager/trash"),trashRestore:n(e.trashRestore,"/api/files/manager/restore")}}async function yy(e){if(typeof e=="function"){const t=e();return t instanceof Promise?await t:t}return e}function _y(e){return e?"kind"in e?e:e.type==="bearer"?{kind:"bearer",token:e.token}:e.type==="csrf"?{kind:"csrf",csrf:e.csrf}:{kind:"none"}:{kind:"none"}}function Ju(e){const t=Zu(e),n=_y(e.auth);let a=null;async function i(ce={}){const be={Accept:"application/json",...ce};if(n.kind==="bearer"){const Me=await yy(n.token);Me&&(be.Authorization=`Bearer ${Me}`,a=Me)}else if(n.kind==="csrf")be["X-CSRF-TOKEN"]=n.csrf,be["X-Requested-With"]="XMLHttpRequest";else if(n.kind==="basic"){const Me=btoa(`${n.user}:${n.pass}`);be.Authorization=`Basic ${Me}`}return be}function o(ce={}){const be={Accept:"application/json",...ce};if(n.kind==="bearer"){const Me=typeof n.token=="string"?n.token:a;Me&&(be.Authorization=`Bearer ${Me}`)}else if(n.kind==="csrf")be["X-CSRF-TOKEN"]=n.csrf,be["X-Requested-With"]="XMLHttpRequest";else if(n.kind==="basic"){const Me=btoa(`${n.user}:${n.pass}`);be.Authorization=`Basic ${Me}`}return be}function s(){return n.kind==="csrf"?"include":"same-origin"}function l(ce){const be=(e.locale??"tr")!=="en",Qe={400:["Geçersiz istek","Bad request"],401:["Oturum gerekli, tekrar giriş yapın","Sign-in required"],403:["Bu işlem için yetkiniz yok","You are not allowed to do this"],404:["Bulunamadı","Not found"],409:["Zaten var / çakışma","Already exists / conflict"],413:["Dosya çok büyük","File too large"],415:["Bu dosya türü desteklenmiyor","Unsupported file type"],422:["Geçersiz veri","Invalid data"],429:["Çok fazla istek, biraz bekleyin","Too many requests"],500:["Sunucu hatası","Server error"],501:["Bu işlem desteklenmiyor","Not supported"],503:["Servis şu an kullanılamıyor","Service unavailable"]}[ce];return Qe?be?Qe[0]:Qe[1]:be?`Hata (${ce})`:`Error (${ce})`}async function c(ce,be={}){const Me={...await i(),...be.headers??{}},Qe=await fetch(ce,{...be,headers:Me,credentials:s()});if(!Qe.ok){const dt=await Qe.text().catch(()=>""),ot=new Error(l(Qe.status));throw ot.status=Qe.status,ot.detail=dt.slice(0,300),ot}return Qe.json()}function d(ce=""){return t.manager.replace(/\/manager(\?.*)?$/,"/permissions")+ce}async function u(ce){return c(d()+"?path="+encodeURIComponent(ce))}async function h(ce){return c(d("/resolve")+"?email="+encodeURIComponent(ce))}async function f(ce){return c(d("/users")+"?q="+encodeURIComponent(ce))}async function p(ce){return c(d(),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(ce)})}async function w(ce,be){return c(d("/"+ce),{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({level:be})})}async function g(ce){return c(d("/"+ce),{method:"DELETE"})}async function v(ce){return c(d("/invite"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(ce)})}async function m(ce){return c(d("/share-mail"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(ce)})}function b(ce){const be=new URLSearchParams;for(const[Me,Qe]of Object.entries(ce))Qe!=null&&be.set(Me,String(Qe));return be.toString()}function y(ce,be={}){const Me=t.manager.includes("?")?"&":"?";return`${t.manager}${Me}${b({q:ce,action:ce,...be})}`}async function _(ce){return c(y("index",{path:ce}))}async function S(ce,be){return c(y("search",{path:ce,filter:be}))}async function A(ce,be={}){const Me=t.manager.replace(/\/manager(\?.*)?$/,"/search"),Qe=Me.includes("?")?"&":"?",dt=`${Me}${Qe}${b({q:ce,limit:be.limit,scope:be.scope})}`,ot=await c(dt);return Array.isArray(ot==null?void 0:ot.results)?ot.results:[]}async function T(ce){return c(y("subfolders",{path:ce}))}async function E(ce,be){return c(y("newfolder"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({path:ce,name:be})})}async function k(ce,be,Me){return c(y("rename"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({path:ce,item:be,name:Me})})}async function N(ce,be,Me){return c(y("move"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({path:ce,item:Me,items:be.map(Qe=>({path:Qe}))})})}async function D(ce,be){return c(y("delete"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({path:ce,items:be.map(Me=>({path:Me}))})})}async function U(ce,be){if(!t.copy)throw new Error("copy endpoint not configured");return c(t.copy,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({source:ce,target:be})})}async function L(ce,be,Me){if(!t.moveAsync)throw new Error("moveAsync endpoint not configured");return c(t.moveAsync,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({source:ce,target:be,sourceDir:Me})})}async function q(ce,be){if(!t.deleteAsync)throw new Error("deleteAsync endpoint not configured");return c(t.deleteAsync,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({source:ce,sourceDir:be})})}async function X(ce){if(!t.restore)throw new Error("restore endpoint not configured");return c(t.restore,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({source:ce})})}async function $(ce){if(!t.trashList)throw new Error("trashList endpoint not configured");const be=t.trashList,Me=be.includes("?")?"&":"?",Qe=ce?`${be}${Me}storage=${encodeURIComponent(ce)}`:be;return c(Qe)}async function j(ce){const be=t.trashRestore;if(!be)throw new Error("trashRestore endpoint not configured");let Me=0;for(const Qe of ce)try{await c(be,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({node_id:Qe})}),Me++}catch{}return{restored:Me}}async function J(ce,be,Me){const Qe=new FormData;Qe.append("path",ce);for(const ot of be)Qe.append("file[]",ot,ot.name);const dt=await i();return new Promise((ot,xe)=>{const Ne=new XMLHttpRequest;Ne.open("POST",y("upload"));for(const[Le,at]of Object.entries(dt))Le!=="Content-Type"&&Ne.setRequestHeader(Le,at);Ne.withCredentials=s()==="include",Ne.upload.onprogress=Le=>{Me&&Le.lengthComputable&&Me(Math.round(Le.loaded/Le.total*100))},Ne.onload=()=>{if(Ne.status>=200&&Ne.status<300)try{ot(JSON.parse(Ne.responseText))}catch(Le){xe(Le)}else xe(new Error(`${Ne.status} ${Ne.statusText}: ${Ne.responseText.slice(0,200)}`))},Ne.onerror=()=>xe(new Error("Network error")),Ne.send(Qe)})}function V(ce){return y("download",{path:ce})}function F(ce){return y("preview",{path:ce})}async function I(ce){const be=await i(),Me=await fetch(F(ce),{headers:be,credentials:s()});if(!Me.ok){const xe=await Me.text().catch(()=>"");throw new Error(`${Me.status} ${Me.statusText}${xe?" — "+xe.slice(0,200):""}`)}const Qe=await Me.blob(),dt=Qe.type||Me.headers.get("content-type")||"";return{url:URL.createObjectURL(Qe),blob:Qe,mime:dt}}async function H(ce){const be=await i(),Me=await fetch(F(ce),{headers:be,credentials:s()});if(!Me.ok){const Qe=await Me.text().catch(()=>"");throw new Error(`${Me.status} ${Me.statusText}${Qe?" — "+Qe.slice(0,200):""}`)}return Me.arrayBuffer()}async function G(){return t.limits?c(t.limits):{max_upload_mb:1024}}async function oe(){return t.capabilities?c(t.capabilities):{ffmpeg:!1,ghostscript:!1,libreoffice:!1,max_chunk_mb:5,upload_limit_mb:1024,onlyoffice_url:e.onlyOfficeBase??null,drawio_url:e.drawioBase??null,convert_url:e.convertBase??null}}async function de(ce){if(!t.shareCreate)throw new Error("shareCreate endpoint not configured");return c(t.shareCreate,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(ce)})}async function ve(ce){if(!t.shareList)return{shares:[]};const be=t.shareList.includes("?")?"&":"?";return c(`${t.shareList}${be}path=${encodeURIComponent(ce)}`)}async function Ee(ce){if(!t.shareDelete)throw new Error("shareDelete endpoint not configured");const be=t.shareDelete.replace("{uuid}",encodeURIComponent(ce));return c(be,{method:"DELETE"})}async function ne(ce){if(!t.archiveList)throw new Error("archiveList endpoint not configured");return{entries:(await c(t.archiveList,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({path:ce})})).entries.map(Me=>({name:Me.name,size:Me.size,isDir:Me.is_dir,lastModified:Me.mtime}))}}async function me(ce,be){if(!t.archiveExtract)throw new Error("archiveExtract endpoint not configured");return c(t.archiveExtract,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({path:ce,members:be})})}async function we(ce,be){if(!t.archiveAdd)throw new Error("archiveAdd endpoint not configured");return c(t.archiveAdd,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({path:ce,files:be})})}function Se(ce=""){return t.manager.replace(/\/manager(\?.*)?$/,"/versions")+ce}async function De(ce){const be=await c(Se()+"?node_id="+encodeURIComponent(String(ce)));return Array.isArray(be==null?void 0:be.versions)?be.versions:[]}async function Xe(ce,be,Me=!0){await c(Se("/restore"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({node_id:ce,version_id:be,snapshot_current:Me})})}async function tt(ce){await c(Se("/snapshot"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({node_id:ce})})}function Pe(ce=""){return t.manager.replace(/\/manager(\?.*)?$/,"/comments")+ce}async function Oe(ce){const be=await c(Pe()+"?node_id="+encodeURIComponent(String(ce)));return Array.isArray(be==null?void 0:be.comments)?be.comments:[]}async function Ie(ce,be){return(await c(Pe(),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({node_id:ce,body:be})})).comment}async function pe(ce){await c(Pe("/"+encodeURIComponent(String(ce))),{method:"DELETE"})}async function $e(){const ce=t.manager.replace(/\/manager(\?.*)?$/,"/ws-ticket");try{return await c(ce,{method:"POST"})}catch{return null}}return{wsTicket:$e,index:_,search:S,globalSearch:A,subfolders:T,newFolder:E,rename:k,move:N,copy:U,moveAsync:L,deleteAsync:q,deleteItems:D,restore:X,listTrash:$,restoreIds:j,uploadMultipart:J,downloadUrl:V,previewUrl:F,fetchBlob:I,fetchArrayBuffer:H,limits:G,capabilities:oe,createShare:de,listShares:ve,revokeShare:Ee,archiveList:ne,archiveExtract:me,archiveAdd:we,listVersions:De,restoreVersion:Xe,snapshotVersion:tt,listComments:Oe,addComment:Ie,deleteComment:pe,listPermissions:u,resolveEmail:h,searchUsers:f,addPermission:p,updatePermission:w,deletePermission:g,invitePermission:v,shareMail:m,endpoints:t,authHeaders:i,authHeadersSync:o,credentialsMode:s,jsonFetch:c}}function Qu(e,t){const n=e.chunkSize??5242880,a=Math.max(1,Math.min(8,e.parallelChunks??4));async function i(o){var f,p;const s=o.chunkSize??n,l=o.parallelChunks??a,c={id:crypto.randomUUID(),file:o.file,path:o.path,totalBytes:o.file.size,uploadedBytes:0,percent:0,status:"initializing",cancel:()=>{}};let d=!1;const u=[];c.cancel=()=>{d=!0;for(const w of u)w.abort()};function h(){var w;c.percent=c.totalBytes>0?Math.min(100,Math.round(c.uploadedBytes/c.totalBytes*100)):0,(w=o.onProgress)==null||w.call(o,c)}try{if(!t.endpoints.uploadInit)throw new Error("uploadInit not configured");const w=await t.jsonFetch(t.endpoints.uploadInit,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({path:o.path,filename:o.file.name,size:o.file.size,mime:o.file.type||"application/octet-stream"})});c.uploadId=w.uploadId,c.status="uploading",h();const g=w.chunkBytes??s,v=new Map,m=[];let b=0;async function y(k){const D=(k.partNumber-1)*(w.chunkBytes??s),U=Math.min(D+(w.chunkBytes??s),o.file.size),L=o.file.slice(D,U),q=new AbortController;u.push(q),await new Promise((X,$)=>{const j=new XMLHttpRequest;j.open("PUT",k.presignedUrl),j.upload.onprogress=J=>{if(J.lengthComputable){const V=v.get(k.partNumber)??0,F=J.loaded-V;v.set(k.partNumber,J.loaded),c.uploadedBytes+=F,h()}},j.onload=()=>{if(j.status>=200&&j.status<300){const J=(j.getResponseHeader("ETag")||j.getResponseHeader("etag")||"").trim();if(!J){$(new Error("Missing ETag on S3 response"));return}const V=U-D,F=v.get(k.partNumber)??0;F<V&&(c.uploadedBytes+=V-F,v.set(k.partNumber,V)),m.push({partNumber:k.partNumber,etag:J}),X()}else $(new Error(`S3 PUT ${k.partNumber} → ${j.status}: ${j.responseText.slice(0,200)}`))},j.onerror=()=>$(new Error(`S3 PUT ${k.partNumber} network error`)),j.onabort=()=>$(new DOMException("Aborted","AbortError")),q.signal.addEventListener("abort",()=>j.abort()),j.send(L)})}const _=2;async function S(k,N=0){try{await y(k)}catch(D){if(d)throw D;const U=D instanceof Error?D:new Error(String(D));if(U.name==="AbortError"||N>=_)throw U;const L=v.get(k.partNumber)??0;L>0&&(c.uploadedBytes=Math.max(0,c.uploadedBytes-L),v.delete(k.partNumber),h());const q=500*(N+1)+Math.floor(Math.random()*250);return await new Promise(X=>setTimeout(X,q)),S(k,N+1)}}async function A(){for(;!d&&b<w.parts.length;){const k=w.parts[b++];await S(k)}}const T=[];for(let k=0;k<l;k++)T.push(A());if(await Promise.all(T),d)throw new DOMException("Aborted by user","AbortError");if(!t.endpoints.uploadFinalize)throw new Error("uploadFinalize not configured");c.status="finalizing",m.sort((k,N)=>k.partNumber-N.partNumber);const E=await t.jsonFetch(t.endpoints.uploadFinalize,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({uploadId:w.uploadId,parts:m})});return c.status="done",c.uploadedBytes=c.totalBytes,c.percent=100,h(),(f=o.onDone)==null||f.call(o,c,E),E}catch(w){const g=w instanceof Error?w:new Error(String(w));if(c.status=g.name==="AbortError"?"aborted":"error",c.error=g.message,h(),c.uploadId&&t.endpoints.uploadAbort&&c.status==="aborted")try{await t.jsonFetch(t.endpoints.uploadAbort,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({uploadId:c.uploadId})})}catch{}throw(p=o.onError)==null||p.call(o,c,g),g}}return{uploadFile:i}}function ef(e){const t=r.ref(new Set),n=r.ref(null);function a(f,p={}){if(p.shift&&n.value){const w=e(),g=w.findIndex(_=>_.path===n.value),v=w.findIndex(_=>_.path===f);if(g===-1||v===-1){t.value=new Set([f]),n.value=f;return}const[m,b]=g<v?[g,v]:[v,g],y=new Set;for(let _=m;_<=b;_++)y.add(w[_].path);t.value=y;return}if(p.ctrl){const w=new Set(t.value);w.has(f)?w.delete(f):w.add(f),t.value=w,n.value=f;return}t.value=new Set([f]),n.value=f}function i(){t.value=new Set,n.value=null}function o(){t.value=new Set(e().map(f=>f.path))}function s(f){return t.value.has(f)}function l(f){const p=new Set(t.value);p.add(f),t.value=p}function c(f){const p=new Set(t.value);p.delete(f),t.value=p}const d=r.computed(()=>t.value.size),u=r.computed(()=>t.value.size===0),h=r.computed(()=>e().filter(p=>t.value.has(p.path)));return{selected:t,anchor:n,click:a,clear:i,selectAll:o,has:s,add:l,remove:c,size:d,isEmpty:u,nodes:h}}const la=[{id:"palette",defaultCombo:"Ctrl+K",labelKey:"shortcuts.palette",groupKey:"shortcuts.group.nav"},{id:"search",defaultCombo:"/",labelKey:"shortcuts.search",groupKey:"shortcuts.group.nav"},{id:"go-up",defaultCombo:"Alt+↑",fixedCombos:["Backspace"],labelKey:"shortcuts.go_up",groupKey:"shortcuts.group.nav"},{id:"open",defaultCombo:"Enter",prevent:!1,labelKey:"shortcuts.open",groupKey:"shortcuts.group.nav"},{id:"quicklook",defaultCombo:"Space",labelKey:"shortcuts.quicklook",groupKey:"shortcuts.group.nav"},{id:"close",defaultCombo:"Esc",customizable:!1,prevent:!1,inForms:!0,labelKey:"shortcuts.close",groupKey:"shortcuts.group.nav"},{id:"inspector",defaultCombo:"I",labelKey:"shortcuts.inspector",groupKey:"shortcuts.group.nav"},{id:"help",defaultCombo:"?",labelKey:"shortcuts.help",groupKey:"shortcuts.group.nav"},{id:"toggle-hidden",defaultCombo:"Ctrl+Shift+.",labelKey:"shortcuts.toggle_hidden",groupKey:"shortcuts.group.nav"},{id:"select-all",defaultCombo:"Ctrl+A",labelKey:"shortcuts.select_all",groupKey:"shortcuts.group.selection"},{id:"rename",defaultCombo:"F2",labelKey:"shortcuts.rename",groupKey:"shortcuts.group.file"},{id:"delete",defaultCombo:"Del",labelKey:"shortcuts.delete",groupKey:"shortcuts.group.file"},{id:"cut",defaultCombo:"Ctrl+X",labelKey:"shortcuts.cut",groupKey:"shortcuts.group.file"},{id:"copy",defaultCombo:"Ctrl+C",labelKey:"shortcuts.copy",groupKey:"shortcuts.group.file"},{id:"paste",defaultCombo:"Ctrl+V",labelKey:"shortcuts.paste",groupKey:"shortcuts.group.file"},{id:"tab-new",defaultCombo:"Ctrl+T",labelKey:"shortcuts.tab_new",groupKey:"shortcuts.group.tabs"},{id:"tab-close",defaultCombo:"Ctrl+W",labelKey:"shortcuts.tab_close",groupKey:"shortcuts.group.tabs"},{id:"tab-next",defaultCombo:"Ctrl+Tab",labelKey:"shortcuts.tab_next",groupKey:"shortcuts.group.tabs"},{id:"tab-prev",defaultCombo:"Ctrl+Shift+Tab",labelKey:"shortcuts.tab_prev",groupKey:"shortcuts.group.tabs"}],wy={palette:"onPathJump",search:"onFocusSearch","go-up":"onGoUp",open:"onOpen",quicklook:"onQuickLook",close:"onClose",inspector:"onToggleInspector","toggle-hidden":"onToggleHidden",help:"onShowHelp","select-all":"onSelectAll",rename:"onRename",delete:"onDelete",cut:"onCut",copy:"onCopy",paste:"onPaste","tab-new":"onTabNew","tab-close":"onTabClose","tab-next":"onTabNext","tab-prev":"onTabPrev"},Js="filex.shortcuts";function ky(){try{const e=localStorage.getItem(Js);if(!e)return{};const t=JSON.parse(e);if(!t||typeof t!="object")return{};const n={};for(const[a,i]of Object.entries(t))typeof i=="string"&&la.some(o=>o.id===a)&&(n[a]=i);return n}catch{return{}}}const Er=r.ref(ky());function Qs(){try{Object.keys(Er.value).length===0?localStorage.removeItem(Js):localStorage.setItem(Js,JSON.stringify(Er.value))}catch{}}function tf(e){return la.find(t=>t.id===e)}function Xi(e){var n;const t=Er.value[e];return t!==void 0?t:((n=tf(e))==null?void 0:n.defaultCombo)??""}function Jo(e,t){const n=tf(e);if(!n||n.customizable===!1)return;const a={...Er.value};t===n.defaultCombo?delete a[e]:a[e]=t,Er.value=a,Qs()}function nf(e){if(!(e in Er.value))return;const t={...Er.value};delete t[e],Er.value=t,Qs()}function rf(){Er.value={},Qs()}function af(e,t){var n;if(!e)return null;for(const a of la)if(a.id!==t){if((n=a.fixedCombos)!=null&&n.includes(e))return{id:a.id,fixed:!0};if(Xi(a.id)===e)return{id:a.id,fixed:a.customizable===!1}}return null}const Ey={" ":"Space",Spacebar:"Space",Escape:"Esc",Delete:"Del",ArrowUp:"↑",ArrowDown:"↓",ArrowLeft:"←",ArrowRight:"→",PageUp:"PgUp",PageDown:"PgDn"},xy=new Set(["Control","Alt","Shift","Meta","AltGraph","CapsLock","NumLock","ScrollLock","Fn","Dead"]);function Sy(e){const t=e.key;if(!t||xy.has(t))return null;const n=Ey[t];return n||(t.length===1?t.toUpperCase():t)}function ec(e){const t=Sy(e);if(!t)return null;const n=[];(e.ctrlKey||e.metaKey)&&n.push("Ctrl"),e.altKey&&n.push("Alt");const a=t.length===1&&t.toUpperCase()===t.toLowerCase();return e.shiftKey&&!a&&n.push("Shift"),n.push(t),n.join("+")}function tc(){return r.computed(()=>la.map(e=>{const t=Xi(e.id),n=e.fixedCombos??[];return{id:e.id,combo:t,fixedCombos:n,keys:[t,...n].filter(a=>!!a),labelKey:e.labelKey,groupKey:e.groupKey,customizable:e.customizable!==!1,overridden:Er.value[e.id]!==void 0}}))}la.map(e=>({keys:[e.defaultCombo,...e.fixedCombos??[]].filter(t=>!!t),labelKey:e.labelKey,groupKey:e.groupKey}));function of(e,t){const n=r.computed(()=>{const i=new Map;for(const o of la){const s=Xi(o.id);s&&i.set(s,o)}return i});function a(i){var h;if(!e.value||i.key!=="Escape"&&document.querySelector(".fe-ctx-backdrop"))return;const s=i.target,l=!!(s&&(s.tagName==="INPUT"||s.tagName==="TEXTAREA"||s.tagName==="SELECT"||s.isContentEditable)),c=ec(i);if(!c)return;if(c==="Backspace"){if(l)return;(h=t.hasSelection)!=null&&h.call(t)&&t.onDelete?(i.preventDefault(),t.onDelete()):t.onGoUp&&(i.preventDefault(),t.onGoUp());return}const d=n.value.get(c);if(!d||l&&!d.inForms||c==="Space"&&s&&typeof s.closest=="function"&&s.closest('button, a, select, summary, [role="button"], [role="menuitem"]'))return;const u=t[wy[d.id]];u&&(d.prevent!==!1&&i.preventDefault(),u())}r.onMounted(()=>window.addEventListener("keydown",a)),r.onBeforeUnmount(()=>window.removeEventListener("keydown",a))}const lf={"toolbar.new_folder":"Yeni Klasör","toolbar.upload":"Yükle","toolbar.search":"Ara","toolbar.search.placeholder":"Dosya adı…","toolbar.view.list":"Liste","toolbar.view.grid":"Izgara","toolbar.refresh":"Yenile","toolbar.go_up":"Üst Klasör","ctx.open":"Aç","ctx.preview":"Önizle","ctx.download":"İndir","ctx.convert":"Dönüştür","ctx.rename":"Yeniden Adlandır","ctx.delete":"Sil","ctx.delete_perm":"Kalıcı Olarak Sil","ctx.restore":"Geri Getir","ctx.share":"Paylaş","ctx.move":"Taşı","ctx.copy":"Kopyala","ctx.cut":"Kes","ctx.show_hidden":"Gizli dosyaları göster","ctx.hide_hidden":"Gizli dosyaları gizle","ctx.paste":"Yapıştır","ctx.info":"Bilgi","ctx.duplicate":"Kopyasını Oluştur","ctx.new_file":"Yeni Dosya","modal.delete.title":"Silinsin mi?","modal.delete.message":"{count} öğe çöpe atılacak.","modal.delete.confirm":"Çöpe At","modal.delete.cancel":"Vazgeç","modal.rename.title":"Yeniden Adlandır","modal.rename.save":"Kaydet","modal.rename.cancel":"Vazgeç","modal.newfolder.title":"Yeni Klasör","modal.newfolder.placeholder":"Klasör adı","modal.newfolder.create":"Oluştur","modal.newfolder.cancel":"Vazgeç","modal.share.title":"Paylaşım Linki","modal.share.pin":"PIN koruması","modal.share.expires":"Son kullanma","modal.share.max_downloads":"İndirme limiti","modal.share.create":"Paylaş","modal.share.cancel":"Vazgeç","modal.share.copy":"Kopyala","modal.share.url_copied":"Link kopyalandı","modal.share.pin_copied":"PIN kopyalandı","modal.share.cli_copied":"CLI komutu kopyalandı","upload.progress":"Yükleniyor","upload.done":"Tamamlandı","upload.error":"Hata","upload.failed":"“{name}” yüklenemedi","upload.aborted":"İptal edildi","upload.cancel":"İptal","empty.folder":"Bu klasör boş","empty.search":"Sonuç bulunamadı",loading:"Yükleniyor…","notFound.title":"Klasör bulunamadı","notFound.desc":"Bu klasör mevcut değil, taşınmış ya da erişim yetkiniz yok.","notFound.goRoot":"Kök klasöre dön","col.name":"Ad","col.size":"Boyut","col.modified":"Tarih","col.type":"Tür","unit.bytes":"B","unit.kb":"KB","unit.mb":"MB","unit.gb":"GB","unit.tb":"TB","breadcrumb.root":"Kök","breadcrumb.copy_path":"Yolu Kopyala","breadcrumb.go_to_path":"Yola Git","breadcrumb.path_placeholder":"fileman/foo/bar","ops.copy":"Kopyalanıyor","ops.move":"Taşınıyor","ops.delete":"Siliniyor","ops.queued":"sırada","ops.done":"tamamlandı","ops.error":"hata","node.trash":"Çöp Kutusu","viewer.open_in_new_tab":"Yeni Sekmede Aç","viewer.loading":"Yükleniyor…","viewer.failed_to_load":"Dosya yüklenemedi","viewer.peer_not_installed":"Bu dosya tipi için opsiyonel kütüphane kurulu değil. Peer dependency yükle veya İndir düğmesini kullan.","viewer.format_unsupported_3d":"Bu 3B format tarayıcı önizlemesinde desteklenmiyor (model-viewer yalnızca .glb / .gltf / .usdz okur). Lütfen indirip yerel bir araçta açın.","viewer.zoom_in":"Yakınlaştır","viewer.zoom_out":"Uzaklaştır","viewer.fit_width":"Sayfa genişliğine sığdır","viewer.next_page":"Sonraki sayfa","viewer.prev_page":"Önceki sayfa","viewer.page_n_of_m":"Sayfa {n} / {m}","viewer.tags":"Etiketler","viewer.layers":"Katmanlar","viewer.toc":"İçindekiler","viewer.font_smaller":"Yazıyı küçült","viewer.font_larger":"Yazıyı büyüt","viewer.search":"Ara","viewer.download":"İndir","viewer.saving":"Kaydediliyor…","viewer.save":"Kaydet (Ctrl+S)","viewer.saved":"Kaydedildi","viewer.save_error":"Hata","viewer.editor_loading":"Editör yükleniyor…","viewer.no_preview":"Bu dosya tipi için önizleme henüz yok.","viewer.edit":"Düzenle","viewer.close":"Kapat","presence.expand":"İsimleri göster","presence.collapse":"Küçült","viewer.save_annotations":"Açıklamaları kaydet","viewer.annotations_on":"Açıklamalar: açık","viewer.annotations_off":"Açıklamalar: kapalı","viewer.read_only":"Salt okunur","viewer.csv_first_row_header":"İlk satır başlık olsun","viewer.csv_filter":"Satır filtrele…","viewer.epub_prev":"Önceki","viewer.epub_next":"Sonraki","viewer.drawio.disabled":"diagrams.net editörü bu filex kurulumunda yapılandırılmamış — yönetici FILEX_DRAWIO_URL'yi ayarlamalı.","viewer.archive.entries":"{n} dosya","viewer.archive.empty":"Arşiv boş.","viewer.archive.error":"Arşiv okunamadı.","viewer.name":"Ad","viewer.size":"Boyut","col.sort":"Sırala","group.today":"Bugün","group.yesterday":"Dün","group.this_week":"Bu Hafta","group.this_month":"Bu Ay","group.no_date":"Tarihsiz","toolbar.density.compact":"Sıkışık görünüm","toolbar.density.comfortable":"Rahat görünüm","palette.placeholder":"Dosya, klasör veya komut ara…","palette.files":"Dosyalar","palette.commands":"Komutlar","palette.goto":"Yola git","palette.empty":"Sonuç bulunamadı","palette.hint":"↑↓ gezin · Enter seç · Esc kapat","cmd.view_toggle":"Görünümü değiştir (liste ⇄ ızgara)","cmd.trash":"Çöp kutusunu aç","shortcuts.title":"Klavye Kısayolları","shortcuts.group.nav":"Gezinme","shortcuts.group.selection":"Seçim","shortcuts.group.file":"Dosya işlemleri","shortcuts.palette":"Komut paleti","shortcuts.search":"Aramaya odaklan","shortcuts.go_up":"Üst klasöre çık","shortcuts.open":"Seçili öğeyi aç","shortcuts.close":"Kapat / vazgeç","shortcuts.toggle_hidden":"Gizli dosyaları göster/gizle","shortcuts.help":"Bu yardım penceresi","shortcuts.select_all":"Tümünü seç","shortcuts.rename":"Yeniden adlandır","shortcuts.delete":"Sil","shortcuts.cut":"Kes","shortcuts.copy":"Kopyala","shortcuts.paste":"Yapıştır","breadcrumb.more":"Aradaki klasörler","empty.hint":"Dosyaları buraya sürükleyip bırakın","empty.upload":"Dosya yükle","empty.search.title":"Aramanla eşleşen dosya yok","empty.search.hint":"Farklı bir arama terimi deneyin","empty.trash.title":"Çöp kutusu boş","error.title":"Liste yüklenemedi","error.retry":"Yeniden dene","toast.undo":"Geri Al","toast.undone":"Geri alındı","toast.undo_failed":"Geri alınamadı","toast.renamed":"Yeniden adlandırıldı","toast.moved":"Taşındı","toast.trashed":"Çöpe taşındı","conn.offline":"Canlı bağlantı yok — değişiklikler gecikebilir","conn.tooltip":"Sunucuyla canlı bağlantı kurulamadı; liste belirli aralıklarla otomatik yenilenir. Bağlantı geri gelince bu uyarı kaybolur.","palette.everywhere":"Her yerde","palette.searching":"Aranıyor…","palette.saved":"Kayıtlı aramalar","palette.save":"Aramayı kaydet","palette.saved.delete":"Kayıtlı aramayı sil","search.in_content":"İçerikte","toolbar.more":"Diğer işlemler","toolbar.search.close":"Aramayı kapat","sheet.menu":"İşlemler","sheet.close":"Kapat","toolbar.inspector":"Ayrıntılar","ctx.details":"Ayrıntılar","shortcuts.inspector":"Ayrıntılar panelini aç/kapat","inspector.title":"Ayrıntılar","inspector.close":"Kapat","inspector.section.general":"Genel","inspector.section.versions":"Sürümler","inspector.section.permissions":"İzinler","inspector.section.shares":"Paylaşımlar","inspector.path":"Yol","inspector.size":"Boyut","inspector.modified":"Değiştirilme","inspector.mime":"MIME türü","inspector.etag":"ETag","inspector.copy":"Kopyala","inspector.copied":"Kopyalandı","inspector.error":"Yüklenemedi","inspector.items_summary":"{n} öğe, toplam {size}","inspector.folder_items":"{n} öğe","inspector.versions.empty":"Sürüm geçmişi yok","inspector.versions.v":"Sürüm {n}","inspector.versions.restore":"Geri yükle","inspector.versions.restore_confirm":"Bu sürüm geri yüklensin mi?","inspector.versions.snapshot_current":"Önce şimdiki halin sürümünü al","inspector.versions.confirm":"Onayla","inspector.versions.cancel":"Vazgeç","inspector.versions.take_snapshot":"Şimdiki halin sürümünü al","inspector.versions.restored":"Sürüm geri yüklendi","inspector.versions.snapshotted":"Sürüm alındı","inspector.versions.unsupported":"Sunucu bu işlemi desteklemiyor","inspector.perm.none":"Erişim yok","inspector.perm.viewer":"Görüntüleyen","inspector.perm.editor":"Düzenleyen","inspector.perm.owner":"Sahip","inspector.perm.manage":"İzinleri yönet","inspector.shares.empty":"Paylaşım linki yok","inspector.shares.copy":"Linki kopyala","theme.menu":"Tema","theme.title":"Tema Galerisi","theme.hint":"Tema yalnız renk paletini değiştirir; gündüz mü gece mi olduğu yukarıdaki seçim.","theme.mode.label":"Görünüm","theme.mode.light":"Gündüz","theme.mode.dark":"Gece","theme.mode.auto":"Otomatik","theme.reset":"Varsayılana dön","theme.close":"Kapat","theme.selected":"Seçili","theme.name.default":"Varsayılan","theme.name.night":"Gece Mavisi","theme.name.forest":"Orman","theme.name.amber":"Kehribar","theme.name.lilac":"Leylak","theme.name.contrast":"Yüksek Kontrast","theme.name.gray":"Yumuşak Gri","theme.name.terminal":"Terminal Yeşili","shortcuts.quicklook":"Hızlı bakış","shortcuts.customize":"Özelleştir","shortcuts.settings.menu":"Kısayollar","shortcuts.settings.title":"Kısayol Ayarları","shortcuts.settings.hint":'Bir kısayolu değiştirmek için "Değiştir"e basıp yeni tuş kombinasyonuna basın. Değişiklikler yalnızca bu tarayıcıda saklanır.',"shortcuts.settings.change":"Değiştir","shortcuts.settings.capture":"Tuşlara basın… (Esc iptal)","shortcuts.settings.reset":"Varsayılana dön","shortcuts.settings.reset_all":"Tümünü sıfırla","shortcuts.settings.unbound":"Atanmadı","shortcuts.settings.fixed":"Sabit","shortcuts.settings.customized":"Özelleştirildi","shortcuts.settings.conflict":'kombinasyonu "{name}" kısayolunda kullanılıyor.',"shortcuts.settings.conflict_fixed":'kombinasyonu "{name}" sabit kısayoluna ayrılmış — kullanılamaz.',"shortcuts.settings.conflict_take":"Eskisini boşa çıkar ve ata","shortcuts.settings.conflict_cancel":"Vazgeç","quicklook.hint_close":"kapat","quicklook.hint_nav":"önceki/sonraki","quicklook.hint_open":"aç","opc.title":"İşlemler","opc.aria_badge":"{n} işlem — işlem merkezini aç/kapat","opc.close":"Kapat","opc.active":"Sürüyor","opc.history":"Geçmiş","opc.clear":"Temizle","opc.empty":"İşlem yok","opc.cancel":"İptal","opc.retry":"Yeniden dene","opc.dismiss":"Kapat","opc.queued":"Sırada","opc.percent":"%{n}","opc.status.running":"Sürüyor","opc.status.done":"Bitti","opc.status.error":"Hata","opc.status.aborted":"İptal edildi","opc.kind.upload":"Yükleme","opc.kind.copy":"Kopyalama","opc.kind.move":"Taşıma","opc.kind.delete":"Silme","opc.kind.convert":"Dönüştürme","opc.kind.archive":"Arşiv","tour.aria":"Tanıtım turu","tour.restart":"Turu tekrar başlat","tour.skip":"Turu atla","tour.back":"Geri","tour.next":"İleri","tour.done":"Bitti","tour.progress":"{n} / {m}","tour.step.nav.title":"Depo ve klasörler","tour.step.nav.desc":"Bulunduğun konum burada görünür. Kırıntı çubuğundaki adımlara tıklayarak üst klasörlere ve depo köküne dönebilirsin.","tour.step.upload.title":"Dosya yükle","tour.step.upload.desc":"Bu düğmeyle dosya seçebilirsin; dosyaları doğrudan pencereye sürükleyip bırakmak da çalışır.","tour.step.search.title":"Arama","tour.step.search.desc":"Bu kutu bulunduğun klasörü filtreler. Ctrl+K komut paleti ile tüm depolarda arama yapabilir ve komut çalıştırabilirsin.","tour.step.view.title":"Görünümü değiştir","tour.step.view.desc":"Liste ve ızgara görünümü arasında geçiş yapabilirsin; seçimin hatırlanır.","tour.step.share.title":"Paylaşım","tour.step.share.desc":'Bir dosyaya sağ tıklayıp "Paylaş / İzinler" ile bağlantı oluşturabilir, PIN ve son kullanma süresi ekleyebilirsin.',"tour.step.help.title":"Kısayollar","tour.step.help.desc":'? tuşu kısayol kartını, Ctrl+K komut paletini açar. Bu turu menüdeki "Turu tekrar başlat" ile dilediğinde yeniden izleyebilirsin.',"error.hint":"Bağlantı ya da sunucu kaynaklı geçici bir sorun olabilir. Yeniden deneyin.","error.details":"Teknik ayrıntılar","col.star":"Yıldız","toolbar.view_label":"Görünüm","list.aria":"Dosya listesi","grid.aria":"Dosya ızgarası","tabs.strip":"Sekmeler","tabs.new":"Yeni sekme","tabs.close":"Sekmeyi kapat","tabs.split":"Görünümü böl","tabs.split_off":"Bölmeyi kapat","ctx.open_new_tab":"Yeni sekmede aç","shortcuts.group.tabs":"Sekmeler","shortcuts.tab_new":"Yeni sekme","shortcuts.tab_close":"Sekmeyi kapat","shortcuts.tab_next":"Sonraki sekme","shortcuts.tab_prev":"Önceki sekme","cmd.tab_new":"Yeni sekme aç","cmd.split_toggle":"Görünümü böl / birleştir","split.pane":"İkincil panel","split.close":"Yan paneli kapat","split.error":"Liste yüklenemedi","split.retry":"Yeniden dene","split.copy_queued":"Kopyalama kuyruğa alındı","split.cross_copy":"Depolar farklı — kopyalama kuyruğa alındı","split.cross_failed":"Depolar arası kopyalama bu sunucuda desteklenmiyor","toolbar.view.gallery":"Galeri","gallery.aria":"Dosya galerisi","inspector.section.comments":"Yorumlar","inspector.comments.empty":"Henüz yorum yok.","inspector.comments.placeholder":"Yorum yaz…","inspector.comments.send":"Gönder","inspector.comments.delete":"Yorumu sil","e2e.create.title":"Şifreli klasör oluştur","e2e.create.option":"Şifreli klasör oluştur…","e2e.create.pw_placeholder":"Klasör parolası (en az 8 karakter)","e2e.create.pw2_placeholder":"Parolayı tekrar girin","e2e.create.warn_title":"GERİ DÖNÜŞÜ YOK","e2e.create.warn_body":"Dosyalar yalnız bu parolayla açılır. Parola sunucuda TUTULMAZ; unutursanız içerik sonsuza dek kaybolur. Kurtarma yolu yoktur — yönetici dahil kimse açamaz.","e2e.create.ack":"Anladım: parolayı kaybedersem verilerim kurtarılamaz.","e2e.create.ack_required":"Devam etmek için uyarıyı onaylayın.","e2e.create.pw_short":"Parola en az 8 karakter olmalı.","e2e.create.pw_mismatch":"Parolalar birbirini tutmuyor.","e2e.create.bad_name":"Geçersiz klasör adı.","e2e.create.create":"Şifreli klasörü oluştur","e2e.create.busy":"Oluşturuluyor…","e2e.create.done":"Şifreli klasör oluşturuldu","e2e.create.failed":"Şifreli klasör oluşturulamadı","e2e.create.nested":"Şifreli klasörün içine ikinci bir şifreli klasör açılamaz.","e2e.locked.title":"Bu klasör uçtan uca şifreli","e2e.locked.hint":"İçeriği görmek için klasör parolasını girin. Parola yalnız bu sekmede, bellekte tutulur.","e2e.locked.pw_placeholder":"Klasör parolası","e2e.locked.unlock":"Kilidi aç","e2e.locked.busy":"Doğrulanıyor…","e2e.unlock.wrong":"Parola yanlış.","e2e.unlock.marker_missing":"Şifre dosyası (.filex-e2e.json) okunamadı.","e2e.strip.label":"Şifreli klasör — kilit açık","e2e.strip.lock":"Kilitle","e2e.locked_toast":"Klasör kilitlendi","e2e.upload.too_big":"200 MB üstü dosyalar şifreli klasöre yüklenemez (MVP sınırı)","e2e.upload.locked":"Önce klasörün kilidini açın","e2e.decrypting":"Çözülüyor…","e2e.decrypt_failed":"Dosya çözülemedi (parola değişmiş ya da dosya bozulmuş olabilir).","e2e.download.failed":"Şifreli dosya indirilemedi."},sf={"toolbar.new_folder":"New Folder","toolbar.upload":"Upload","toolbar.search":"Search","toolbar.search.placeholder":"File name…","toolbar.view.list":"List","toolbar.view.grid":"Grid","toolbar.refresh":"Refresh","toolbar.go_up":"Up one level","ctx.open":"Open","ctx.preview":"Preview","ctx.download":"Download","ctx.convert":"Convert","ctx.rename":"Rename","ctx.delete":"Delete","ctx.delete_perm":"Delete Permanently","ctx.restore":"Restore","ctx.share":"Share","ctx.move":"Move","ctx.copy":"Copy","ctx.cut":"Cut","ctx.show_hidden":"Show hidden files","ctx.hide_hidden":"Hide hidden files","ctx.paste":"Paste","ctx.info":"Info","ctx.duplicate":"Duplicate","ctx.new_file":"New File","modal.delete.title":"Delete?","modal.delete.message":"{count} item(s) will be moved to trash.","modal.delete.confirm":"Move to Trash","modal.delete.cancel":"Cancel","modal.rename.title":"Rename","modal.rename.save":"Save","modal.rename.cancel":"Cancel","modal.newfolder.title":"New Folder","modal.newfolder.placeholder":"Folder name","modal.newfolder.create":"Create","modal.newfolder.cancel":"Cancel","modal.share.title":"Share Link","modal.share.pin":"PIN protected","modal.share.expires":"Expires at","modal.share.max_downloads":"Download limit","modal.share.create":"Share","modal.share.cancel":"Cancel","modal.share.copy":"Copy","modal.share.url_copied":"Link copied","modal.share.pin_copied":"PIN copied","modal.share.cli_copied":"CLI command copied","upload.progress":"Uploading","upload.done":"Done","upload.error":"Error","upload.failed":"Could not upload “{name}”","upload.aborted":"Aborted","upload.cancel":"Cancel","empty.folder":"This folder is empty","empty.search":"No results",loading:"Loading…","notFound.title":"Folder not found","notFound.desc":"This folder does not exist, was moved, or you do not have access to it.","notFound.goRoot":"Go to root folder","col.name":"Name","col.size":"Size","col.modified":"Modified","col.type":"Type","unit.bytes":"B","unit.kb":"KB","unit.mb":"MB","unit.gb":"GB","unit.tb":"TB","breadcrumb.root":"Root","breadcrumb.copy_path":"Copy Path","breadcrumb.go_to_path":"Go To Path","breadcrumb.path_placeholder":"fileman/foo/bar","ops.copy":"Copying","ops.move":"Moving","ops.delete":"Deleting","ops.queued":"queued","ops.done":"done","ops.error":"error","node.trash":"Trash","viewer.open_in_new_tab":"Open in New Tab","viewer.loading":"Loading…","viewer.failed_to_load":"Failed to load file","viewer.peer_not_installed":"Optional viewer library is not installed. Install the peer dependency or use the download button.","viewer.format_unsupported_3d":"This 3D format is not supported in the browser preview (model-viewer only reads .glb / .gltf / .usdz). Please download and open with a local tool.","viewer.zoom_in":"Zoom in","viewer.zoom_out":"Zoom out","viewer.fit_width":"Fit width","viewer.next_page":"Next page","viewer.prev_page":"Previous page","viewer.page_n_of_m":"Page {n} of {m}","viewer.tags":"Tags","viewer.layers":"Layers","viewer.toc":"Contents","viewer.font_smaller":"Smaller text","viewer.font_larger":"Larger text","viewer.search":"Search","viewer.download":"Download","viewer.saving":"Saving…","viewer.save":"Save (Ctrl+S)","viewer.saved":"Saved","viewer.save_error":"Error","viewer.editor_loading":"Loading editor…","viewer.no_preview":"No preview for this file type yet.","viewer.edit":"Edit","viewer.close":"Close","presence.expand":"Show names","presence.collapse":"Collapse","viewer.save_annotations":"Save annotations","viewer.annotations_on":"Annotations: on","viewer.annotations_off":"Annotations: off","viewer.read_only":"Read only","viewer.csv_first_row_header":"First row as header","viewer.csv_filter":"Filter rows…","viewer.epub_prev":"Previous","viewer.epub_next":"Next","viewer.drawio.disabled":"diagrams.net embed is not configured for this filex instance — operator must wire FILEX_DRAWIO_URL to enable the editor.","viewer.archive.entries":"{n} files","viewer.archive.empty":"Archive is empty.","viewer.archive.error":"Could not read archive contents.","viewer.name":"Name","viewer.size":"Size","col.sort":"Sort","group.today":"Today","group.yesterday":"Yesterday","group.this_week":"This Week","group.this_month":"This Month","group.no_date":"No date","toolbar.density.compact":"Compact view","toolbar.density.comfortable":"Comfortable view","palette.placeholder":"Search files, folders or commands…","palette.files":"Files","palette.commands":"Commands","palette.goto":"Go to path","palette.empty":"No results","palette.hint":"↑↓ navigate · Enter select · Esc close","cmd.view_toggle":"Toggle view (list ⇄ grid)","cmd.trash":"Open trash","shortcuts.title":"Keyboard Shortcuts","shortcuts.group.nav":"Navigation","shortcuts.group.selection":"Selection","shortcuts.group.file":"File operations","shortcuts.palette":"Command palette","shortcuts.search":"Focus search","shortcuts.go_up":"Go up one level","shortcuts.open":"Open selected item","shortcuts.close":"Close / cancel","shortcuts.toggle_hidden":"Show/hide hidden files","shortcuts.help":"This help dialog","shortcuts.select_all":"Select all","shortcuts.rename":"Rename","shortcuts.delete":"Delete","shortcuts.cut":"Cut","shortcuts.copy":"Copy","shortcuts.paste":"Paste","breadcrumb.more":"Hidden folders","empty.hint":"Drag and drop files here","empty.upload":"Upload files","empty.search.title":"No files match your search","empty.search.hint":"Try a different search term","empty.trash.title":"Trash is empty","error.title":"Could not load this folder","error.retry":"Try again","toast.undo":"Undo","toast.undone":"Undone","toast.undo_failed":"Could not undo","toast.renamed":"Renamed","toast.moved":"Moved","toast.trashed":"Moved to trash","conn.offline":"No live connection — changes may be delayed","conn.tooltip":"Live connection to the server is unavailable; the list refreshes periodically. This notice disappears once the connection is back.","palette.everywhere":"Everywhere","palette.searching":"Searching…","palette.saved":"Saved searches","palette.save":"Save search","palette.saved.delete":"Delete saved search","search.in_content":"In content","toolbar.more":"More actions","toolbar.search.close":"Close search","sheet.menu":"Actions","sheet.close":"Close","toolbar.inspector":"Details","ctx.details":"Details","shortcuts.inspector":"Toggle details panel","inspector.title":"Details","inspector.close":"Close","inspector.section.general":"General","inspector.section.versions":"Versions","inspector.section.permissions":"Permissions","inspector.section.shares":"Shares","inspector.path":"Path","inspector.size":"Size","inspector.modified":"Modified","inspector.mime":"MIME type","inspector.etag":"ETag","inspector.copy":"Copy","inspector.copied":"Copied","inspector.error":"Could not load","inspector.items_summary":"{n} items, {size} total","inspector.folder_items":"{n} items","inspector.versions.empty":"No version history","inspector.versions.v":"Version {n}","inspector.versions.restore":"Restore","inspector.versions.restore_confirm":"Restore this version?","inspector.versions.snapshot_current":"Snapshot the current state first","inspector.versions.confirm":"Confirm","inspector.versions.cancel":"Cancel","inspector.versions.take_snapshot":"Snapshot current state","inspector.versions.restored":"Version restored","inspector.versions.snapshotted":"Snapshot taken","inspector.versions.unsupported":"The server does not support this operation","inspector.perm.none":"No access","inspector.perm.viewer":"Viewer","inspector.perm.editor":"Editor","inspector.perm.owner":"Owner","inspector.perm.manage":"Manage permissions","inspector.shares.empty":"No share links","inspector.shares.copy":"Copy link","theme.menu":"Theme","theme.title":"Theme Gallery","theme.hint":"A theme only changes the colour palette — day or night is the choice above.","theme.mode.label":"Appearance","theme.mode.light":"Day","theme.mode.dark":"Night","theme.mode.auto":"Automatic","theme.reset":"Reset to default","theme.close":"Close","theme.selected":"Selected","theme.name.default":"Default","theme.name.night":"Night Blue","theme.name.forest":"Forest","theme.name.amber":"Amber","theme.name.lilac":"Lilac","theme.name.contrast":"High Contrast","theme.name.gray":"Soft Gray","theme.name.terminal":"Terminal Green","shortcuts.quicklook":"Quick look","shortcuts.customize":"Customize","shortcuts.settings.menu":"Shortcuts","shortcuts.settings.title":"Shortcut Settings","shortcuts.settings.hint":'To remap a shortcut, press "Change" and then the new key combination. Changes are stored in this browser only.',"shortcuts.settings.change":"Change","shortcuts.settings.capture":"Press keys… (Esc cancels)","shortcuts.settings.reset":"Reset to default","shortcuts.settings.reset_all":"Reset all","shortcuts.settings.unbound":"Not set","shortcuts.settings.fixed":"Fixed","shortcuts.settings.customized":"Customized","shortcuts.settings.conflict":'is already used by "{name}".',"shortcuts.settings.conflict_fixed":'is reserved by the fixed shortcut "{name}" — it cannot be used.',"shortcuts.settings.conflict_take":"Unassign old and use here","shortcuts.settings.conflict_cancel":"Cancel","quicklook.hint_close":"close","quicklook.hint_nav":"previous/next","quicklook.hint_open":"open","opc.title":"Operations","opc.aria_badge":"{n} operations — toggle operations center","opc.close":"Close","opc.active":"In progress","opc.history":"History","opc.clear":"Clear","opc.empty":"No operations","opc.cancel":"Cancel","opc.retry":"Retry","opc.dismiss":"Dismiss","opc.queued":"Queued","opc.percent":"{n}%","opc.status.running":"In progress","opc.status.done":"Done","opc.status.error":"Failed","opc.status.aborted":"Cancelled","opc.kind.upload":"Upload","opc.kind.copy":"Copy","opc.kind.move":"Move","opc.kind.delete":"Delete","opc.kind.convert":"Convert","opc.kind.archive":"Archive","tour.aria":"Onboarding tour","tour.restart":"Restart the tour","tour.skip":"Skip tour","tour.back":"Back","tour.next":"Next","tour.done":"Done","tour.progress":"{n} / {m}","tour.step.nav.title":"Storages & folders","tour.step.nav.desc":"Your current location lives here. Click any crumb to jump back to parent folders or the storage root.","tour.step.upload.title":"Upload files","tour.step.upload.desc":"Pick files with this button — or simply drag & drop them anywhere in the window.","tour.step.search.title":"Search","tour.step.search.desc":"This box filters the current folder. The Ctrl+K command palette searches across all storages and runs commands.","tour.step.view.title":"Switch views","tour.step.view.desc":"Toggle between the list and grid layout; your choice is remembered.","tour.step.share.title":"Sharing","tour.step.share.desc":'Right-click any file and use "Share / Permissions" to create a link with an optional PIN and expiry.',"tour.step.help.title":"Shortcuts","tour.step.help.desc":'Press ? for the shortcut cheat-sheet and Ctrl+K for the command palette. Replay this tour any time via "Restart the tour" in the menu.',"error.hint":"This may be a temporary network or server problem. Please try again.","error.details":"Technical details","col.star":"Star","toolbar.view_label":"View","list.aria":"File list","grid.aria":"File grid","tabs.strip":"Tabs","tabs.new":"New tab","tabs.close":"Close tab","tabs.split":"Split view","tabs.split_off":"Close split","ctx.open_new_tab":"Open in new tab","shortcuts.group.tabs":"Tabs","shortcuts.tab_new":"New tab","shortcuts.tab_close":"Close tab","shortcuts.tab_next":"Next tab","shortcuts.tab_prev":"Previous tab","cmd.tab_new":"Open a new tab","cmd.split_toggle":"Toggle split view","split.pane":"Secondary pane","split.close":"Close the side pane","split.error":"Could not load the listing","split.retry":"Retry","split.copy_queued":"Copy queued","split.cross_copy":"Different storages — copy queued instead","split.cross_failed":"Cross-storage copy is not supported by this server","toolbar.view.gallery":"Gallery","gallery.aria":"File gallery","inspector.section.comments":"Comments","inspector.comments.empty":"No comments yet.","inspector.comments.placeholder":"Write a comment…","inspector.comments.send":"Send","inspector.comments.delete":"Delete comment","e2e.create.title":"Create encrypted folder","e2e.create.option":"Create encrypted folder…","e2e.create.pw_placeholder":"Folder password (min 8 characters)","e2e.create.pw2_placeholder":"Repeat the password","e2e.create.warn_title":"NO WAY BACK","e2e.create.warn_body":"Files open ONLY with this password. The password is NEVER stored on the server; if you forget it the content is lost forever. There is no recovery — not even an admin can open it.","e2e.create.ack":"I understand: if I lose the password my data cannot be recovered.","e2e.create.ack_required":"Please confirm the warning to continue.","e2e.create.pw_short":"Password must be at least 8 characters.","e2e.create.pw_mismatch":"Passwords do not match.","e2e.create.bad_name":"Invalid folder name.","e2e.create.create":"Create encrypted folder","e2e.create.busy":"Creating…","e2e.create.done":"Encrypted folder created","e2e.create.failed":"Could not create the encrypted folder","e2e.create.nested":"You cannot create an encrypted folder inside another one.","e2e.locked.title":"This folder is end-to-end encrypted","e2e.locked.hint":"Enter the folder password to see its contents. The password stays in this tab’s memory only.","e2e.locked.pw_placeholder":"Folder password","e2e.locked.unlock":"Unlock","e2e.locked.busy":"Verifying…","e2e.unlock.wrong":"Wrong password.","e2e.unlock.marker_missing":"Could not read the key file (.filex-e2e.json).","e2e.strip.label":"Encrypted folder — unlocked","e2e.strip.lock":"Lock","e2e.locked_toast":"Folder locked","e2e.upload.too_big":"Files over 200 MB cannot be uploaded to an encrypted folder (MVP limit)","e2e.upload.locked":"Unlock the folder first","e2e.decrypting":"Decrypting…","e2e.decrypt_failed":"Could not decrypt the file (password changed or file corrupted).","e2e.download.failed":"Could not download the encrypted file."},nc={tr:lf,en:sf};function qt(e){const t=r.computed(()=>{const o=typeof e=="function"?e():e.value;return nc[o]??nc.tr});function n(o,s={}){const l=t.value[o]??o;return Object.entries(s).reduce((c,[d,u])=>c.replaceAll(`{${d}}`,String(u)),l)}function a(o){if(o==null||o<0)return"—";if(o===0)return`0 ${n("unit.bytes")}`;const s=[[1024**4,"unit.tb"],[1024**3,"unit.gb"],[1024**2,"unit.mb"],[1024,"unit.kb"],[1,"unit.bytes"]];for(const[l,c]of s)if(o>=l){const d=o/l;return`${d>=100?Math.round(d):d.toFixed(d>=10?1:2)} ${n(c)}`}return`${o} ${n("unit.bytes")}`}function i(o){if(o.basename===".trash")return n("node.trash");const s=o.basename.match(/^\d{8}-\d{6}-[A-Za-z0-9]+__(.+)$/);return s?s[1]:o.basename}return{t:n,formatSize:a,nodeDisplayName:i}}const Cy=2e3,Ny=8e3;function cf(e){const t=(...l)=>{for(const c of l)if(typeof c=="number")return c;return 0},n=(...l)=>{for(const c of l)if(typeof c=="string"&&c!=="")return c;return null},a=String(e.status??"pending"),i=a==="ok"||a==="done"?"done":a==="failed"||a==="partial"||a==="error"?"error":a==="running"?"running":"pending",o=Array.isArray(e.sources)?e.sources:[],s=n(e.op_type,e.kind)??"delete";return{id:t(e.id),op_type:s==="copy"||s==="move"?s:"delete",status:i,progress_total:t(e.progress_total,e.total,o.length),progress_done:t(e.progress_done,e.done),target_path:n(e.target_path,e.dest),source_dir:n(e.source_dir),source_count:t(e.source_count,o.length),error_message:n(e.error_message,e.error),started_at:n(e.started_at),finished_at:n(e.finished_at),created_at:n(e.created_at)}}function df(e,t,n={}){const a=r.ref([]),i=new Set,o=new Map;let s=!1;const l=r.computed(()=>a.value.some(w=>w.status==="pending"||w.status==="running"));let c;function d(){c||t.endpoints.opsList&&(c=setInterval(()=>{h()},Cy),h())}function u(){c&&(clearInterval(c),c=void 0)}async function h(){var w;if(t.endpoints.opsList)try{const v=((await t.jsonFetch(t.endpoints.opsList)).ops||[]).map(cf);for(const E of v)(E.status==="done"||E.status==="error")&&!i.has(E.id)&&(i.add(E.id),o.set(E.id,Date.now()),s&&((w=n.onSettled)==null||w.call(n,E)));const m=new Set(a.value.map(E=>E.id)),b=v.filter(E=>E.status==="pending"||E.status==="running"?!0:s?m.has(E.id):!1),y=new Set(b.map(E=>E.id)),_=a.value.filter(E=>!y.has(E.id)),S=[...b,..._];s=!0;const A=Date.now(),T=S.filter(E=>{if(E.status==="pending"||E.status==="running")return!0;const k=o.get(E.id);return k!==void 0&&A-k<Ny});a.value=T,!l.value&&T.length===0&&u()}catch(g){console.warn("[usePendingOps] poll failed:",g)}}function f(w){const g=cf(w);a.value.some(m=>m.id===g.id)||(a.value=[g,...a.value]),d()}function p(w){a.value=a.value.filter(g=>g.id!==w),o.delete(w)}return r.onBeforeUnmount(()=>{u()}),{ops:a,hasActive:l,register:f,dismiss:p,poll:h,startPolling:d,stopPolling:u}}const Ty=25e3,Ay=15e3,Dy=6;class My{constructor(t){kr(this,"ws",null);kr(this,"opts");kr(this,"closed",!1);kr(this,"connecting",!1);kr(this,"retries",0);kr(this,"fallback",!1);kr(this,"pingTimer",null);kr(this,"reconnectTimer",null);kr(this,"currentPath",null);kr(this,"currentFocus",null);this.opts=t,this.connect()}subscribe(t){this.currentPath=t,this.currentFocus=null,t&&this.send({type:"subscribe",path:t})}setFocus(t){this.currentFocus=t,this.send({type:"focus",file:t})}close(){this.closed=!0,this.clearTimers(),this.dropSocket()}async connect(){if(this.closed||this.connecting||this.ws)return;this.connecting=!0;let t=null;try{t=await this.opts.getTicket()}catch{t=null}if(this.connecting=!1,this.closed)return;if(!t||!t.ticket||!t.ws_url){this.fail();return}const n=t.ws_url.includes("?")?"&":"?";let a;try{a=new WebSocket(`${t.ws_url}${n}ticket=${encodeURIComponent(t.ticket)}`)}catch{this.fail();return}this.ws=a,a.onopen=()=>{var i,o;this.retries=0,this.setFallback(!1),(o=(i=this.opts.handlers).onStatus)==null||o.call(i,!0),this.currentPath&&this.send({type:"subscribe",path:this.currentPath}),this.currentFocus!==null&&this.send({type:"focus",file:this.currentFocus}),this.startPing()},a.onmessage=i=>{var l,c,d,u;let o;try{o=JSON.parse(typeof i.data=="string"?i.data:"")}catch{return}const s=o;(s==null?void 0:s.type)==="change"?(c=(l=this.opts.handlers).onChange)==null||c.call(l,o):(s==null?void 0:s.type)==="presence"&&((u=(d=this.opts.handlers).onPresence)==null||u.call(d,o))},a.onerror=()=>{},a.onclose=()=>{var i,o;this.stopPing(),this.ws=null,(o=(i=this.opts.handlers).onStatus)==null||o.call(i,!1),this.fail()}}fail(){if(this.closed||this.reconnectTimer)return;if(this.retries>=Dy){this.setFallback(!0);return}const t=Math.min(1e3*2**this.retries,Ay);this.retries+=1,this.reconnectTimer=setTimeout(()=>{this.reconnectTimer=null,this.connect()},t)}setFallback(t){var n,a;this.fallback!==t&&(this.fallback=t,(a=(n=this.opts.handlers).onFallback)==null||a.call(n,t))}send(t){const n=this.ws;if(!(!n||n.readyState!==WebSocket.OPEN))try{n.send(JSON.stringify(t))}catch{}}startPing(){this.stopPing(),this.pingTimer=setInterval(()=>this.send({type:"ping"}),Ty)}stopPing(){this.pingTimer&&(clearInterval(this.pingTimer),this.pingTimer=null)}dropSocket(){if(this.ws){try{this.ws.onclose=null,this.ws.close()}catch{}this.ws=null}}clearTimers(){this.stopPing(),this.reconnectTimer&&(clearTimeout(this.reconnectTimer),this.reconnectTimer=null)}}const By=200,Oy=12e3;function Iy(e,t){const n=r.ref([]),a=r.ref(!1),i=r.ref(!1);let o=null,s=null,l=null,c=null;function d(){l&&clearTimeout(l),l=setTimeout(()=>{l=null,t.reload()},By)}function u(v){s&&v.path&&v.path!==s||(n.value=Array.isArray(v.users)?v.users:[])}function h(v){i.value=v,v?(n.value=[],c||(c=setInterval(()=>t.reload(),Oy))):c&&(clearInterval(c),c=null)}function f(){o||(o=new My({getTicket:()=>e.wsTicket(),handlers:{onChange:d,onPresence:u,onFallback:h,onStatus:v=>{a.value=v}}}))}function p(v){n.value=[],s=v,o==null||o.subscribe(v)}function w(v){o==null||o.setFocus(v)}function g(){l&&(clearTimeout(l),l=null),c&&(clearInterval(c),c=null),o==null||o.close(),o=null,i.value=!1}return{presenceUsers:n,connected:a,degraded:i,start:f,subscribe:p,setFocus:w,stop:g}}const Ry=500;function Ly(e,t){const n=r.ref({}),a=[],i=new Set,o=new Set;function s(d){if(/^https?:\/\//i.test(d))return d;const u=(e||"").replace(/\/+$/,"");return u&&d.startsWith("/")?u+d:d}function l(d){const u=d.thumb_url;if(!u)return null;const h=n.value[u];return h||(!i.has(u)&&!o.has(u)&&c(u),null)}async function c(d){o.add(d);try{const u=await fetch(s(d),{headers:await t.authHeaders({Accept:"*/*"}),credentials:t.credentialsMode()});if(!u.ok)throw new Error(String(u.status));const h=await u.blob();if(a.length>=Ry){const f=a.shift();if(f&&n.value[f]){URL.revokeObjectURL(n.value[f]);const p={...n.value};delete p[f],n.value=p}}a.push(d),n.value={...n.value,[d]:URL.createObjectURL(h)}}catch{i.add(d)}finally{o.delete(d)}}return{src:l}}let Qo=null,el=null,tl=null,nl=null;function Zi(){Qo||(Qo=import("monaco-editor").then(e=>(tl=e.default??e,tl)).catch(()=>(tl=null,null))),el||(el=Promise.resolve().then(()=>wS).then(e=>(nl=e.default??e,nl)).catch(()=>(nl=null,null)))}async function rl(){return Qo||Zi(),Qo}async function al(){return el||Zi(),el}function rc(){return tl}function uf(){return nl}function Fy(){return Zi(),{ensureMonaco:rl,ensureHighlight:al,getMonaco:rc,getHighlight:uf}}const zy={key:0,class:"fx-presence-chips"},Py=["title"],$y={key:0,class:"fx-presence-dot","aria-hidden":"true"},Vy={class:"fx-presence-chip-name"},Uy={key:0,class:"fx-presence-chip-file"},Hy=["title"],Gy=["title"],qy={key:0,class:"fx-presence-dot","aria-hidden":"true"},Ky={key:0,class:"fx-presence-more"},Wy=["title"],Yy={class:"fx-presence-file"},jy=["title","aria-expanded"],ff="filex.presence.expanded",Xy=r.defineComponent({__name:"PresenceBar",props:{users:{},selfId:{},locale:{}},setup(e){const t=e,{t:n}=qt(()=>t.locale??"tr"),a=r.computed(()=>(t.users??[]).filter(u=>t.selfId==null||u.id!==t.selfId)),i=r.ref((()=>{try{return localStorage.getItem(ff)==="1"}catch{return!1}})());function o(){i.value=!i.value;try{localStorage.setItem(ff,i.value?"1":"0")}catch{}}function s(u){return u.uid??String(u.id)}function l(u){const h=u.trim().split(/\s+/).filter(Boolean);return h.length===0?"?":h.length===1?h[0].slice(0,2).toUpperCase():(h[0][0]+h[h.length-1][0]).toUpperCase()}function c(u){const h=s(u);let f=0;for(let p=0;p<h.length;p++)f=f*31+h.charCodeAt(p)>>>0;return f%360}function d(u){return u.file?`${u.name} · ${u.file}`:u.name}return(u,h)=>a.value.length?(r.openBlock(),r.createElementBlock("div",{key:0,class:r.normalizeClass(["fx-presence",{"fx-presence--wide":i.value}])},[i.value?(r.openBlock(),r.createElementBlock("div",zy,[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(a.value,f=>(r.openBlock(),r.createElementBlock("span",{key:s(f),class:"fx-presence-chip",title:d(f)},[r.createElementVNode("span",{class:"fx-presence-avatar",style:r.normalizeStyle({backgroundColor:`hsl(${c(f)} 60% 45%)`})},[r.createTextVNode(r.toDisplayString(l(f.name))+" ",1),f.file?(r.openBlock(),r.createElementBlock("span",$y)):r.createCommentVNode("",!0)],4),r.createElementVNode("span",Vy,r.toDisplayString(f.name),1),f.file?(r.openBlock(),r.createElementBlock("span",Uy,"· "+r.toDisplayString(f.file),1)):r.createCommentVNode("",!0)],8,Py))),128))])):(r.openBlock(),r.createElementBlock(r.Fragment,{key:1},[r.createElementVNode("div",{class:"fx-presence-avatars",title:a.value.map(d).join(", ")},[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(a.value.slice(0,5),f=>(r.openBlock(),r.createElementBlock("span",{key:s(f),class:"fx-presence-avatar",style:r.normalizeStyle({backgroundColor:`hsl(${c(f)} 60% 45%)`}),title:d(f)},[r.createTextVNode(r.toDisplayString(l(f.name))+" ",1),f.file?(r.openBlock(),r.createElementBlock("span",qy)):r.createCommentVNode("",!0)],12,Gy))),128)),a.value.length>5?(r.openBlock(),r.createElementBlock("span",Ky,"+"+r.toDisplayString(a.value.length-5),1)):r.createCommentVNode("",!0)],8,Hy),r.createElementVNode("span",{class:"fx-presence-text",title:a.value.map(d).join(", ")},[r.createTextVNode(r.toDisplayString(a.value.length===1?a.value[0].name:`${a.value.length} kişi`)+" ",1),a.value.length===1&&a.value[0].file?(r.openBlock(),r.createElementBlock(r.Fragment,{key:0},[h[0]||(h[0]=r.createTextVNode(" · ",-1)),r.createElementVNode("span",Yy,r.toDisplayString(a.value[0].file),1)],64)):r.createCommentVNode("",!0)],8,Wy)],64)),r.createElementVNode("button",{type:"button",class:"fx-presence-toggle",title:i.value?r.unref(n)("presence.collapse"):r.unref(n)("presence.expand"),"aria-expanded":i.value,onClick:o},r.toDisplayString(i.value?"‹":"›"),9,jy)],2)):r.createCommentVNode("",!0)}}),Zy=["data-prefers-dark"],Jy=["aria-label"],Qy=["aria-label","onKeydown"],e4={class:"fe-sheet__items"},t4={key:0,class:"fe-ctx__sep",role:"separator"},n4=["disabled","onClick"],r4={key:0,class:"fe-ctx__icon","aria-hidden":"true"},a4={class:"fe-ctx__label"},i4=["aria-label"],o4={key:0,class:"fe-ctx__sep",role:"separator"},l4=["disabled","onClick"],s4={key:0,class:"fe-ctx__icon","aria-hidden":"true"},c4={class:"fe-ctx__label"},ac=r.defineComponent({__name:"ContextMenu",props:{locale:{},actions:{},theme:{},sheet:{type:Boolean}},emits:["select"],setup(e,{expose:t,emit:n}){const a=e,i=n,{t:o}=qt(()=>a.locale),s=r.ref(!1),l=r.ref(0),c=r.ref(0),d=r.ref([]),u=r.ref(null);let h=0,f=0,p=null;async function w(V,F){var I;if(p=document.activeElement??null,s.value=!0,l.value=V.clientX,c.value=V.clientY,h=V.clientX,f=V.clientY,d.value=F,await r.nextTick(),a.sheet){(I=_.value)==null||I.focus();return}g(),b(0)}function g(){const V=u.value;if(!V||typeof window>"u")return;const F=V.getBoundingClientRect(),I=8,H=window.innerWidth,G=window.innerHeight;if(f+F.height>G-I){const oe=f-F.height;c.value=oe>=I?oe:Math.max(I,G-F.height-I)}if(h+F.width>H-I){const oe=h-F.width;l.value=oe>=I?oe:Math.max(I,H-F.width-I)}}function v(){var V;s.value=!1,S.value=!1,A.value=0,(V=p==null?void 0:p.focus)==null||V.call(p),p=null}function m(){const V=a.sheet?_.value:u.value;return V?Array.from(V.querySelectorAll(".fe-ctx__item:not(:disabled)")):[]}function b(V){var H;const F=m();if(F.length===0)return;const I=(V%F.length+F.length)%F.length;(H=F[I])==null||H.focus()}function y(V){const F=m();if(F.length===0)return;const I=document.activeElement,H=I?F.indexOf(I):-1;if(H===-1){b(V>0?0:F.length-1);return}b(H+V)}const _=r.ref(null),S=r.ref(!1),A=r.ref(0);let T=0;function E(V){const F=V.touches[0];F&&(S.value=!0,T=F.clientY,A.value=0)}function k(V){if(!S.value)return;const F=V.touches[0];F&&(A.value=Math.max(0,F.clientY-T))}function N(){if(!S.value)return;const V=A.value>72;S.value=!1,V?v():A.value=0}const D=r.computed(()=>A.value>0?{transform:`translateY(${A.value}px)`,transition:"none"}:void 0);function U(V){V.disabled||(i("select",V,d.value),v())}function L(V){if(V.key==="Escape"){V.stopPropagation(),v();return}if(V.key==="Enter"||V.key===" "){V.stopPropagation();return}V.key==="ArrowDown"?(V.preventDefault(),V.stopPropagation(),y(1)):V.key==="ArrowUp"?(V.preventDefault(),V.stopPropagation(),y(-1)):V.key==="Home"?(V.preventDefault(),b(0)):V.key==="End"?(V.preventDefault(),b(-1)):V.key==="Tab"&&(V.preventDefault(),v())}const q=r.computed(()=>{const V=a.actions.filter(I=>!I.hidden),F=[];for(const I of V)I.divider&&(F.length===0||F[F.length-1].divider)||F.push(I);for(;F.length>0&&F[F.length-1].divider;)F.pop();return F}),X=r.ref(!1);let $;function j(V){X.value=!!(V&&"matches"in V&&V.matches)}r.onMounted(()=>{var V;typeof window>"u"||($=window.matchMedia("(prefers-color-scheme: dark)"),j($),(V=$.addEventListener)==null||V.call($,"change",j))}),r.onBeforeUnmount(()=>{var V;(V=$==null?void 0:$.removeEventListener)==null||V.call($,"change",j)});const J=r.computed(()=>`fe-ctx-backdrop--theme-${a.theme||"auto"}`);return t({show:w,hide:v}),(V,F)=>(r.openBlock(),r.createBlock(r.Teleport,{to:"body"},[r.createVNode(r.Transition,{name:e.sheet?"fe-sheet":"fe-ctx"},{default:r.withCtx(()=>[s.value?(r.openBlock(),r.createElementBlock("div",{key:0,class:r.normalizeClass(["fe-ctx-backdrop",[J.value,{"fe-ctx-backdrop--sheet":e.sheet}]]),"data-prefers-dark":X.value?"1":"0",onClick:v,onContextmenu:r.withModifiers(v,["prevent"]),onKeydown:L},[e.sheet?(r.openBlock(),r.createElementBlock("div",{key:0,ref_key:"sheetEl",ref:_,class:"fe-sheet",role:"menu","aria-label":r.unref(o)("sheet.menu"),tabindex:"-1",style:r.normalizeStyle(D.value),onClick:F[0]||(F[0]=r.withModifiers(()=>{},["stop"]))},[r.createElementVNode("div",{class:"fe-sheet__handle",role:"button",tabindex:"0","aria-label":r.unref(o)("sheet.close"),onClick:v,onKeydown:r.withKeys(r.withModifiers(v,["prevent"]),["enter"]),onTouchstartPassive:E,onTouchmovePassive:k,onTouchend:N,onTouchcancel:N},null,40,Qy),r.createElementVNode("div",e4,[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(q.value,(I,H)=>(r.openBlock(),r.createElementBlock(r.Fragment,{key:I.key||H},[I.divider?(r.openBlock(),r.createElementBlock("div",t4)):(r.openBlock(),r.createElementBlock("button",{key:1,type:"button",class:r.normalizeClass(["fe-ctx__item fe-sheet__item",{"is-danger":I.danger,"is-disabled":I.disabled}]),disabled:I.disabled,role:"menuitem",onClick:G=>U(I)},[I.icon?(r.openBlock(),r.createElementBlock("span",r4,r.toDisplayString(I.icon),1)):r.createCommentVNode("",!0),r.createElementVNode("span",a4,r.toDisplayString(I.label),1)],10,n4))],64))),128))])],12,Jy)):(r.openBlock(),r.createElementBlock("div",{key:1,ref_key:"menuEl",ref:u,class:"fe-ctx",role:"menu","aria-orientation":"vertical","aria-label":r.unref(o)("sheet.menu"),style:r.normalizeStyle({top:c.value+"px",left:l.value+"px"}),onClick:F[1]||(F[1]=r.withModifiers(()=>{},["stop"]))},[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(q.value,(I,H)=>(r.openBlock(),r.createElementBlock(r.Fragment,{key:I.key||H},[I.divider?(r.openBlock(),r.createElementBlock("div",o4)):(r.openBlock(),r.createElementBlock("button",{key:1,type:"button",class:r.normalizeClass(["fe-ctx__item",{"is-danger":I.danger,"is-disabled":I.disabled}]),disabled:I.disabled,role:"menuitem",onClick:G=>U(I)},[I.icon?(r.openBlock(),r.createElementBlock("span",s4,r.toDisplayString(I.icon),1)):r.createCommentVNode("",!0),r.createElementVNode("span",c4,r.toDisplayString(I.label),1)],10,l4))],64))),128))],12,i4))],42,Zy)):r.createCommentVNode("",!0)]),_:1},8,["name"])]))}}),d4=["title","aria-label"],u4=["title"],f4={class:"fe-btn__label"},h4=["disabled","title","onClick"],p4={class:"fe-icon"},m4={class:"fe-btn__label"},g4=["title","aria-label"],b4={class:"fe-icon"},v4={class:"fe-btn__label"},y4=["title"],_4={class:"fe-btn__label"},w4={class:"fe-toolbar__search-group"},k4={class:"fe-search"},E4=["placeholder","value","aria-label"],x4=["title","aria-label"],S4=["title","aria-label"],C4=["aria-pressed","aria-label","title"],N4={key:0,class:"fe-ficon",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"1.8","stroke-linecap":"round","aria-hidden":"true",focusable:"false"},T4={key:1,class:"fe-ficon",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"1.8","stroke-linecap":"round","aria-hidden":"true",focusable:"false"},A4=["aria-pressed","title","aria-label"],D4=["title","aria-label"],M4=["aria-label"],B4=["aria-selected","title","aria-label"],O4=["aria-selected","title","aria-label"],I4=["aria-selected","title","aria-label"],R4={class:"fe-search fe-search--full"},L4=["placeholder","value","aria-label","onKeydown"],F4=["title","aria-label"],z4=["title","aria-label"],P4=["title","aria-label"],$4=["title","aria-label"],V4=["title","aria-label"],hf="filex.density",U4=40,H4=r.defineComponent({__name:"Toolbar",props:{viewMode:{},searchQuery:{},trashActive:{type:Boolean},actions:{},selectionMode:{},pasteEnabled:{type:Boolean},convertEnabled:{type:Boolean},canGoUp:{type:Boolean},atVirtualRoot:{type:Boolean},canWrite:{type:Boolean},locale:{},narrow:{type:Boolean},theme:{},inspectorOpen:{type:Boolean}},emits:["update:viewMode","update:searchQuery","new-folder","upload","refresh","go-up","action","open-recents","update:density","toggle-inspector","open-theme","open-shortcut-settings"],setup(e,{expose:t,emit:n}){const a=e,i=n,o=r.ref((()=>{try{return localStorage.getItem(hf)==="compact"?"compact":"comfortable"}catch{return"comfortable"}})());r.onMounted(()=>i("update:density",o.value));function s(){o.value=o.value==="compact"?"comfortable":"compact";try{localStorage.setItem(hf,o.value)}catch{}i("update:density",o.value)}const{t:l}=qt(()=>a.locale),c=r.ref(null),d=r.ref(a.searchQuery);r.watch(()=>a.searchQuery,I=>{d.value=I});let u;function h(I){const H=I.target.value;d.value=H,u&&clearTimeout(u),u=setTimeout(()=>i("update:searchQuery",H),200)}async function f(){var I,H;a.narrow&&!N.value&&(N.value=!0,await r.nextTick()),(I=c.value)==null||I.focus(),(H=c.value)==null||H.select()}t({focusSearch:f});const p=r.computed(()=>a.selectionMode??"none"),w=r.computed(()=>a.actions.filter(I=>!I.divider&&!I.hidden)),g=r.ref(null),v=r.ref(null),m=r.ref(null),b=r.ref(null),y=r.ref(Number.MAX_SAFE_INTEGER),_=r.computed(()=>w.value.slice(0,y.value)),S=r.computed(()=>w.value.slice(y.value));function A(){if(a.narrow)return;const I=g.value,H=v.value;if(!I||!H){y.value=w.value.length;return}const G=parseFloat(getComputedStyle(I).gap)||8;let oe=0;for(const we of Array.from(I.children))we===H||we===m.value||we.classList.contains("fe-btn--fold")||we.offsetWidth>0&&(oe+=we.offsetWidth+G);const de=Array.from(H.children).map(we=>we.offsetWidth+G),ve=de.reduce((we,Se)=>we+Se,0),Ee=I.clientWidth-oe;if(ve<=Ee){y.value=de.length;return}let ne=U4+G,me=0;for(const we of de){if(ne+we>Ee)break;ne+=we,me+=1}y.value=me}let T;r.onMounted(()=>{typeof ResizeObserver<"u"&&g.value&&(T=new ResizeObserver(()=>A()),T.observe(g.value)),r.nextTick(A)}),r.onBeforeUnmount(()=>T==null?void 0:T.disconnect()),r.watch(()=>[w.value,a.narrow,a.trashActive,p.value],()=>void r.nextTick(A),{deep:!1});function E(){var H,G;const I=(H=m.value)==null?void 0:H.getBoundingClientRect();(G=b.value)==null||G.show({clientX:I?I.right:0,clientY:I?I.bottom+4:0},[])}function k(I){i("action",I)}const N=r.ref(!1);r.watch(()=>a.narrow,I=>{I||(N.value=!1)});async function D(){var I;N.value=!0,await r.nextTick(),(I=c.value)==null||I.focus()}function U(){N.value=!1}const L=r.ref(!1);let q;function X(I){L.value=!!(I&&"matches"in I&&I.matches)}r.onMounted(()=>{var I;typeof window>"u"||!window.matchMedia||(q=window.matchMedia("(pointer: coarse)"),X(q),(I=q.addEventListener)==null||I.call(q,"change",X))}),r.onBeforeUnmount(()=>{var I;(I=q==null?void 0:q.removeEventListener)==null||I.call(q,"change",X)});const $=r.ref(null),j=r.ref(null),J=r.computed(()=>{const I=[],H=!a.trashActive&&!a.atVirtualRoot&&a.canWrite!==!1;return p.value==="none"&&H&&(I.push({key:"new-folder",label:l("toolbar.new_folder"),icon:"📁"}),a.pasteEnabled&&I.push({key:"paste",label:l("ctx.paste"),icon:"📋"})),I.push(...w.value),I.length&&I.push({divider:!0,key:"bag-sep",label:""}),I.push({key:"refresh",label:l("toolbar.refresh"),icon:"↻"}),I.push({key:"density",label:o.value==="compact"?l("toolbar.density.comfortable"):l("toolbar.density.compact"),icon:"⇅"}),a.viewMode!=="list"&&I.push({key:"view-list",label:l("toolbar.view.list"),icon:"☰"}),a.viewMode!=="grid"&&I.push({key:"view-grid",label:l("toolbar.view.grid"),icon:"▦"}),a.viewMode!=="gallery"&&I.push({key:"view-gallery",label:l("toolbar.view.gallery"),icon:"▣"}),I.push({key:"inspector",label:l("toolbar.inspector"),icon:"ℹ"}),I.push({key:"theme",label:l("theme.menu"),icon:"🎨"}),I.push({key:"shortcut-settings",label:l("shortcuts.settings.menu"),icon:"⌨"}),I.push({key:"tour",label:l("tour.restart"),icon:"🎓"}),I});function V(){var H,G;const I=(H=$.value)==null?void 0:H.getBoundingClientRect();(G=j.value)==null||G.show({clientX:I?I.right:0,clientY:I?I.bottom+4:0},[])}function F(I){var H;switch(I.key){case"new-folder":i("new-folder");break;case"refresh":i("refresh");break;case"density":s();break;case"view-list":i("update:viewMode","list");break;case"view-grid":i("update:viewMode","grid");break;case"view-gallery":i("update:viewMode","gallery");break;case"inspector":i("toggle-inspector");break;case"theme":i("open-theme");break;case"shortcut-settings":i("open-shortcut-settings");break;case"tour":(H=$.value)==null||H.dispatchEvent(new CustomEvent("fe:tour-restart",{bubbles:!0}));break;default:k(I.key)}}return(I,H)=>(r.openBlock(),r.createElementBlock("div",{class:r.normalizeClass(["fe-toolbar",{"fe-toolbar--narrow":e.narrow,"fe-toolbar--searching":e.narrow&&N.value}])},[e.narrow?(r.openBlock(),r.createElementBlock(r.Fragment,{key:1},[N.value?(r.openBlock(),r.createElementBlock(r.Fragment,{key:0},[r.createElementVNode("div",R4,[r.createElementVNode("input",{ref_key:"searchEl",ref:c,type:"search",class:"fe-search__input",placeholder:r.unref(l)("toolbar.search.placeholder"),value:d.value,"aria-label":r.unref(l)("toolbar.search"),onInput:h,onKeydown:r.withKeys(r.withModifiers(U,["stop","prevent"]),["esc"])},null,40,L4)]),r.createElementVNode("button",{type:"button",class:"fe-btn fe-btn--icon-only",title:r.unref(l)("toolbar.search.close"),"aria-label":r.unref(l)("toolbar.search.close"),onClick:U},[...H[27]||(H[27]=[r.createElementVNode("span",{class:"fe-icon"},"✕",-1)])],8,F4)],64)):(r.openBlock(),r.createElementBlock(r.Fragment,{key:1},[e.canGoUp?(r.openBlock(),r.createElementBlock("button",{key:0,type:"button",class:"fe-btn fe-btn--icon-only",title:r.unref(l)("toolbar.go_up"),"aria-label":r.unref(l)("toolbar.go_up"),onClick:H[10]||(H[10]=G=>i("go-up"))},[...H[28]||(H[28]=[r.createElementVNode("span",{class:"fe-icon"},"↑",-1)])],8,z4)):r.createCommentVNode("",!0),H[32]||(H[32]=r.createElementVNode("div",{class:"fe-toolbar__spacer"},null,-1)),r.createElementVNode("button",{type:"button",class:r.normalizeClass(["fe-btn fe-btn--icon-only fe-toolbar__search-toggle",{"is-active":!!d.value}]),title:r.unref(l)("toolbar.search"),"aria-label":r.unref(l)("toolbar.search"),onClick:D},[...H[29]||(H[29]=[r.createElementVNode("span",{class:"fe-icon"},"🔍",-1)])],10,P4),!e.atVirtualRoot&&e.canWrite!==!1?(r.openBlock(),r.createElementBlock("button",{key:1,type:"button",class:"fe-btn fe-btn--icon-only",title:r.unref(l)("toolbar.upload"),"aria-label":r.unref(l)("toolbar.upload"),onClick:H[11]||(H[11]=G=>i("upload"))},[...H[30]||(H[30]=[r.createElementVNode("span",{class:"fe-icon"},"⬆",-1)])],8,$4)):r.createCommentVNode("",!0),r.createElementVNode("button",{ref_key:"moreBtnEl",ref:$,type:"button",class:"fe-btn fe-btn--icon-only fe-toolbar__more",title:r.unref(l)("toolbar.more"),"aria-label":r.unref(l)("toolbar.more"),"aria-haspopup":"menu",onClick:V},[...H[31]||(H[31]=[r.createElementVNode("span",{class:"fe-icon"},"⋯",-1)])],8,V4)],64)),r.createVNode(ac,{ref_key:"moreRef",ref:j,locale:e.locale,theme:e.theme||"auto",sheet:L.value,actions:J.value,onSelect:F},null,8,["locale","theme","sheet","actions"])],64)):(r.openBlock(),r.createElementBlock(r.Fragment,{key:0},[r.createElementVNode("div",{ref_key:"primaryEl",ref:g,class:"fe-toolbar__primary"},[e.canGoUp?(r.openBlock(),r.createElementBlock("button",{key:0,type:"button",class:"fe-btn fe-btn--icon-only",title:r.unref(l)("toolbar.go_up"),"aria-label":r.unref(l)("toolbar.go_up"),onClick:H[0]||(H[0]=G=>i("go-up"))},[...H[13]||(H[13]=[r.createElementVNode("span",{class:"fe-icon"},"↑",-1)])],8,d4)):r.createCommentVNode("",!0),p.value==="none"&&!e.trashActive&&!e.atVirtualRoot&&e.canWrite!==!1?(r.openBlock(),r.createElementBlock("button",{key:1,type:"button",class:"fe-btn fe-btn--primary",title:r.unref(l)("toolbar.new_folder"),onClick:H[1]||(H[1]=G=>i("new-folder"))},[H[14]||(H[14]=r.createElementVNode("span",{class:"fe-icon"},"📁",-1)),r.createElementVNode("span",f4,r.toDisplayString(r.unref(l)("toolbar.new_folder")),1)],8,u4)):r.createCommentVNode("",!0),(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(_.value,G=>(r.openBlock(),r.createElementBlock("button",{key:G.key,type:"button",class:r.normalizeClass(["fe-btn fe-btn--fold",{"fe-btn--danger":G.danger,"is-disabled":G.disabled}]),disabled:G.disabled,title:G.label,onClick:oe=>k(G.key)},[r.createElementVNode("span",p4,r.toDisplayString(G.icon),1),r.createElementVNode("span",m4,r.toDisplayString(G.label),1)],10,h4))),128)),S.value.length>0?(r.openBlock(),r.createElementBlock("button",{key:2,ref_key:"wideMoreBtnEl",ref:m,type:"button",class:"fe-btn fe-btn--icon-only",title:r.unref(l)("toolbar.more"),"aria-label":r.unref(l)("toolbar.more"),"aria-haspopup":"menu",onClick:E},[...H[15]||(H[15]=[r.createElementVNode("span",{class:"fe-icon"},"⋯",-1)])],8,g4)):r.createCommentVNode("",!0),r.createElementVNode("div",{ref_key:"measureEl",ref:v,class:"fe-toolbar__measure","aria-hidden":"true"},[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(w.value,G=>(r.openBlock(),r.createElementBlock("button",{key:"m-"+G.key,type:"button",class:"fe-btn",tabindex:"-1"},[r.createElementVNode("span",b4,r.toDisplayString(G.icon),1),r.createElementVNode("span",v4,r.toDisplayString(G.label),1)]))),128))],512),e.pasteEnabled&&p.value==="none"&&!e.trashActive&&!e.atVirtualRoot&&e.canWrite!==!1?(r.openBlock(),r.createElementBlock("button",{key:3,type:"button",class:"fe-btn",title:r.unref(l)("ctx.paste"),onClick:H[2]||(H[2]=G=>k("paste"))},[H[16]||(H[16]=r.createElementVNode("span",{class:"fe-icon"},"📋",-1)),r.createElementVNode("span",_4,r.toDisplayString(r.unref(l)("ctx.paste")),1)],8,y4)):r.createCommentVNode("",!0)],512),H[26]||(H[26]=r.createElementVNode("div",{class:"fe-toolbar__spacer"},null,-1)),r.createElementVNode("div",w4,[r.createElementVNode("div",k4,[r.createElementVNode("input",{ref_key:"searchEl",ref:c,type:"search",class:"fe-search__input",placeholder:r.unref(l)("toolbar.search.placeholder"),value:d.value,"aria-label":r.unref(l)("toolbar.search"),onInput:h},null,40,E4)]),!e.atVirtualRoot&&e.canWrite!==!1?(r.openBlock(),r.createElementBlock("button",{key:0,type:"button",class:"fe-btn fe-btn--icon-only",title:r.unref(l)("toolbar.upload"),"aria-label":r.unref(l)("toolbar.upload"),onClick:H[3]||(H[3]=G=>i("upload"))},[...H[17]||(H[17]=[r.createElementVNode("span",{class:"fe-icon","aria-hidden":"true"},"⬆",-1)])],8,x4)):r.createCommentVNode("",!0),r.createElementVNode("button",{type:"button",class:"fe-btn fe-btn--icon-only",title:r.unref(l)("toolbar.refresh"),"aria-label":r.unref(l)("toolbar.refresh"),onClick:H[4]||(H[4]=G=>i("refresh"))},[...H[18]||(H[18]=[r.createElementVNode("span",{class:"fe-icon","aria-hidden":"true"},"↻",-1)])],8,S4)]),r.createElementVNode("button",{type:"button",class:r.normalizeClass(["fe-btn fe-btn--icon-only fe-toolbar__density",{"is-active":o.value==="compact"}]),"aria-pressed":o.value==="compact","aria-label":o.value==="compact"?r.unref(l)("toolbar.density.comfortable"):r.unref(l)("toolbar.density.compact"),title:o.value==="compact"?r.unref(l)("toolbar.density.comfortable"):r.unref(l)("toolbar.density.compact"),onClick:s},[o.value==="compact"?(r.openBlock(),r.createElementBlock("svg",N4,[...H[19]||(H[19]=[r.createElementVNode("path",{d:"M4 6.5h16M4 10.5h16M4 14.5h16M4 18.5h16"},null,-1)])])):(r.openBlock(),r.createElementBlock("svg",T4,[...H[20]||(H[20]=[r.createElementVNode("path",{d:"M4 5.5h16M4 12h16M4 18.5h16"},null,-1)])]))],10,C4),r.createElementVNode("button",{type:"button",class:r.normalizeClass(["fe-btn fe-btn--icon-only fe-toolbar__inspector",{"is-active":e.inspectorOpen}]),"aria-pressed":!!e.inspectorOpen,title:r.unref(l)("toolbar.inspector"),"aria-label":r.unref(l)("toolbar.inspector"),onClick:H[5]||(H[5]=G=>i("toggle-inspector"))},[...H[21]||(H[21]=[r.createElementVNode("svg",{class:"fe-ficon",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"1.8","stroke-linecap":"round","aria-hidden":"true",focusable:"false"},[r.createElementVNode("circle",{cx:"12",cy:"12",r:"9"}),r.createElementVNode("path",{d:"M12 11v5"}),r.createElementVNode("circle",{cx:"12",cy:"7.6",r:"1",fill:"currentColor",stroke:"none"})],-1)])],10,A4),r.createElementVNode("button",{type:"button",class:"fe-btn fe-btn--icon-only fe-toolbar__theme",title:r.unref(l)("theme.menu"),"aria-label":r.unref(l)("theme.menu"),onClick:H[6]||(H[6]=G=>i("open-theme"))},[...H[22]||(H[22]=[r.createElementVNode("svg",{class:"fe-ficon",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"1.8","stroke-linecap":"round","stroke-linejoin":"round","aria-hidden":"true",focusable:"false"},[r.createElementVNode("path",{d:"M12 3a9 9 0 1 0 0 18h1.4a2.1 2.1 0 0 0 1.5-3.6 2.1 2.1 0 0 1 1.5-3.6H19a2 2 0 0 0 2-2A9 9 0 0 0 12 3z"}),r.createElementVNode("circle",{cx:"7.8",cy:"10.2",r:"1.15",fill:"currentColor",stroke:"none"}),r.createElementVNode("circle",{cx:"11.6",cy:"7.2",r:"1.15",fill:"currentColor",stroke:"none"}),r.createElementVNode("circle",{cx:"16",cy:"8.6",r:"1.15",fill:"currentColor",stroke:"none"})],-1)])],8,D4),r.createElementVNode("div",{class:"fe-toolbar__view",role:"tablist","aria-label":r.unref(l)("toolbar.view_label")},[r.createElementVNode("button",{type:"button",class:r.normalizeClass(["fe-btn fe-btn--icon-only",{"is-active":e.viewMode==="list"}]),role:"tab","aria-selected":e.viewMode==="list",title:r.unref(l)("toolbar.view.list"),"aria-label":r.unref(l)("toolbar.view.list"),onClick:H[7]||(H[7]=G=>i("update:viewMode","list"))},[...H[23]||(H[23]=[r.createElementVNode("span",{class:"fe-icon","aria-hidden":"true"},"☰",-1)])],10,B4),r.createElementVNode("button",{type:"button",class:r.normalizeClass(["fe-btn fe-btn--icon-only",{"is-active":e.viewMode==="grid"}]),role:"tab","aria-selected":e.viewMode==="grid",title:r.unref(l)("toolbar.view.grid"),"aria-label":r.unref(l)("toolbar.view.grid"),onClick:H[8]||(H[8]=G=>i("update:viewMode","grid"))},[...H[24]||(H[24]=[r.createElementVNode("span",{class:"fe-icon","aria-hidden":"true"},"▦",-1)])],10,O4),r.createElementVNode("button",{type:"button",class:r.normalizeClass(["fe-btn fe-btn--icon-only",{"is-active":e.viewMode==="gallery"}]),role:"tab","aria-selected":e.viewMode==="gallery",title:r.unref(l)("toolbar.view.gallery"),"aria-label":r.unref(l)("toolbar.view.gallery"),onClick:H[9]||(H[9]=G=>i("update:viewMode","gallery"))},[...H[25]||(H[25]=[r.createElementVNode("span",{class:"fe-icon","aria-hidden":"true"},"▣",-1)])],10,I4)],8,M4)],64)),e.narrow?r.createCommentVNode("",!0):(r.openBlock(),r.createBlock(ac,{key:2,ref_key:"wideMoreRef",ref:b,locale:e.locale,theme:e.theme||"auto",sheet:!1,actions:S.value,onSelect:H[12]||(H[12]=G=>k(G.key))},null,8,["locale","theme","actions"]))],2))}}),G4=["onClick"],pf=r.defineComponent({__name:"TagPicker",props:{nodeId:{},apiBase:{},authHeaders:{type:Function},authCredentials:{},palette:{}},emits:["change","error"],setup(e,{emit:t}){const n=e,a=t,i=r.ref([]),o=r.ref(!1),s=r.ref(!1),l=r.ref(""),c=r.computed(()=>n.palette??["#ef4444","#f59e0b","#10b981","#3b82f6","#8b5cf6","#ec4899","#14b8a6","#f97316"]);function d(g){let v=0;for(let b=0;b<g.length;b++)v=v*31+g.charCodeAt(b)|0;const m=c.value;return m[Math.abs(v)%m.length]}async function u(g={}){return{...await(n.authHeaders??(()=>({})))(),...g}}async function h(){o.value=!0;try{const g=n.apiBase??"",v=await fetch(`${g}/api/files/manager/tags?node_id=${n.nodeId}`,{headers:await u(),credentials:n.authCredentials??"same-origin"});if(v.ok){const m=await v.json();i.value=Array.isArray(m.tags)?m.tags:[]}}catch(g){a("error",g instanceof Error?g.message:String(g))}finally{o.value=!1}}async function f(g){const v=[...i.value];i.value=g;try{const m=n.apiBase??"",b=await fetch(`${m}/api/files/manager/tags`,{method:"POST",headers:await u({"Content-Type":"application/json"}),credentials:n.authCredentials??"same-origin",body:JSON.stringify({node_id:n.nodeId,tags:g})});if(!b.ok)throw new Error(`tag save failed: ${b.status}`);a("change",g)}catch(m){i.value=v,a("error",m instanceof Error?m.message:String(m))}}function p(){const g=l.value.trim();if(!g||i.value.includes(g)){l.value="",s.value=!1;return}f([...i.value,g]),l.value="",s.value=!1}function w(g){f(i.value.filter(v=>v!==g))}return r.onMounted(h),r.watch(()=>n.nodeId,h),(g,v)=>(r.openBlock(),r.createElementBlock("div",{class:r.normalizeClass(["filex-tag-picker",{"is-loading":o.value}])},[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(i.value,m=>(r.openBlock(),r.createElementBlock("span",{key:m,class:"filex-tag",style:r.normalizeStyle({"--filex-tag-color":d(m)})},[r.createTextVNode(r.toDisplayString(m)+" ",1),r.createElementVNode("button",{class:"filex-tag-x",type:"button",onClick:b=>w(m),"aria-label":"Remove tag"},"×",8,G4)],4))),128)),s.value?(r.openBlock(),r.createElementBlock("form",{key:0,class:"filex-tag-add",onSubmit:r.withModifiers(p,["prevent"])},[r.withDirectives(r.createElementVNode("input",{"onUpdate:modelValue":v[0]||(v[0]=m=>l.value=m),autofocus:"",placeholder:"tag name",onBlur:p,onKeydown:v[1]||(v[1]=r.withKeys(m=>{s.value=!1,l.value=""},["escape"]))},null,544),[[r.vModelText,l.value]])],32)):(r.openBlock(),r.createElementBlock("button",{key:1,class:"filex-tag-add-btn",type:"button",onClick:v[2]||(v[2]=m=>s.value=!0)},"+ Add tag"))],2))}}),q4={class:"filex-recent"},K4=["disabled"],W4={key:0},Y4=["onClick"],j4={class:"filex-recent-name"},X4={class:"filex-recent-meta"},Z4={key:1,class:"filex-recent-empty"},J4={key:2,class:"filex-recent-empty"},mf=r.defineComponent({__name:"RecentlyOpened",props:{apiBase:{},authHeaders:{type:Function},authCredentials:{},limit:{},refreshKey:{}},emits:["open","error"],setup(e,{emit:t}){const n=e,a=t,i=r.ref([]),o=r.ref(!1);async function s(){o.value=!0;try{const c=await(n.authHeaders??(()=>({})))(),d=n.apiBase??"",u=n.limit??20,h=await fetch(`${d}/api/files/manager/recent?limit=${u}`,{headers:c,credentials:n.authCredentials??"same-origin"});if(h.ok){const f=await h.json();i.value=Array.isArray(f.entries)?f.entries:Array.isArray(f)?f:[]}}catch(c){a("error",c instanceof Error?c.message:String(c))}finally{o.value=!1}}function l(c){if(!c)return"";const d=new Date(c).getTime();if(Number.isNaN(d))return"";const u=Date.now()-d;return u<6e4?"just now":u<36e5?`${Math.floor(u/6e4)}m ago`:u<864e5?`${Math.floor(u/36e5)}h ago`:`${Math.floor(u/864e5)}d ago`}return r.onMounted(s),r.watch(()=>n.refreshKey,s),(c,d)=>(r.openBlock(),r.createElementBlock("div",q4,[r.createElementVNode("header",null,[d[0]||(d[0]=r.createElementVNode("h3",null,"Recently opened",-1)),r.createElementVNode("button",{class:"filex-recent-refresh",type:"button",onClick:s,disabled:o.value}," ↻ ",8,K4)]),i.value.length?(r.openBlock(),r.createElementBlock("ul",W4,[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(i.value,u=>(r.openBlock(),r.createElementBlock("li",{key:u.id},[r.createElementVNode("button",{type:"button",onClick:h=>a("open",u),class:"filex-recent-item"},[r.createElementVNode("span",j4,r.toDisplayString(u.name),1),r.createElementVNode("span",X4,r.toDisplayString(l(u.last_opened)),1)],8,Y4)]))),128))])):o.value?(r.openBlock(),r.createElementBlock("p",J4,"Loading…")):(r.openBlock(),r.createElementBlock("p",Z4,"Nothing here yet."))]))}}),Q4={class:"fe-breadcrumb","aria-label":"Breadcrumb"},e_=["aria-current","onClick","onContextmenu","onDrop"],t_={key:0,class:"fe-breadcrumb__sep","aria-hidden":"true"},n_=["aria-expanded","aria-label","title"],r_={key:0,class:"fe-breadcrumb__menu",role:"menu"},a_=["onClick"],i_=["aria-current","onClick","onContextmenu","onDrop"],o_={key:0,class:"fe-breadcrumb__sep","aria-hidden":"true"},l_=["title","aria-label"],s_=["placeholder","onKeydown"],c_=4,d_=r.defineComponent({__name:"Breadcrumb",props:{dirname:{},adapter:{},rootLabel:{},locale:{},multiStorageRoot:{type:Boolean},rootPath:{}},emits:["navigate","copy-path","crumb-context","crumb-drop"],setup(e,{emit:t}){const n=e,a=r.computed(()=>{if(!n.rootPath)return"";const D=n.rootPath,U=D.indexOf("://");return(U>=0?D.slice(U+3):D).replace(/^\/+|\/+$/g,"")}),i=r.computed(()=>{const D=a.value;if(!D)return n.rootLabel||n.adapter;const U=D.split("/");return U[U.length-1]||n.rootLabel||n.adapter}),{t:o}=qt(()=>n.locale),s=t,l=r.computed(()=>{const D=`${n.adapter}://`,U=n.dirname.startsWith(D)?n.dirname.slice(D.length):n.dirname,L=U.split("/").filter(Boolean),q=[];if(n.rootPath){const $=a.value,j=U.replace(/^\/+|\/+$/g,""),J=$&&(j===$||j.startsWith($+"/"))?j.slice($.length).replace(/^\/+/,""):"";q.push({label:i.value,adapterPath:n.rootPath});let V=$;for(const F of J.split("/").filter(Boolean))V=V?`${V}/${F}`:F,q.push({label:F===".trash"?o("node.trash"):F,adapterPath:`${D}${V}`});return q}n.multiStorageRoot?(q.push({label:"/",adapterPath:""}),n.adapter&&q.push({label:n.rootLabel||n.adapter,adapterPath:D})):q.push({label:n.rootLabel||n.adapter,adapterPath:D});let X="";for(const $ of L){X=X?`${X}/${$}`:$;const j=$===".trash"?o("node.trash"):$;q.push({label:j,adapterPath:`${D}${X}`})}return q}),c=r.computed(()=>l.value.length>c_),d=r.computed(()=>c.value?l.value.slice(0,1):l.value),u=r.computed(()=>c.value?l.value.slice(1,-2):[]),h=r.computed(()=>c.value?l.value.slice(-2):[]),f=r.ref(!1),p=r.ref(null);function w(D){f.value=!1,s("navigate",D.adapterPath)}function g(D){const U=p.value;U&&D.target instanceof Node&&U.contains(D.target)||(f.value=!1)}function v(D){D.key==="Escape"&&(D.stopPropagation(),f.value=!1)}r.watch(f,D=>{D?(document.addEventListener("click",g,!0),document.addEventListener("keydown",v,!0)):(document.removeEventListener("click",g,!0),document.removeEventListener("keydown",v,!0))}),r.watch(l,()=>{f.value=!1}),r.onBeforeUnmount(()=>{document.removeEventListener("click",g,!0),document.removeEventListener("keydown",v,!0)});function m(D){s("navigate",D.adapterPath)}function b(D,U){D.preventDefault(),D.stopPropagation(),s("crumb-context",{x:D.clientX,y:D.clientY,adapterPath:U.adapterPath,label:U.label})}function y(D){var U;(U=D.dataTransfer)!=null&&U.types.includes("application/x-brf-files")&&(D.preventDefault(),D.stopPropagation(),D.dataTransfer&&(D.dataTransfer.dropEffect="move"))}function _(D,U){var L;(L=D.dataTransfer)!=null&&L.types.includes("application/x-brf-files")&&(D.preventDefault(),D.stopPropagation(),s("crumb-drop",U.adapterPath,D))}const S=r.ref(!1),A=r.ref(""),T=r.ref(null);function E(){const D=`${n.adapter}://`,U=n.dirname.startsWith(D)?n.dirname.slice(D.length):n.dirname;if(n.rootPath){const L=a.value,q=U.replace(/^\/+|\/+$/g,""),X=L&&(q===L||q.startsWith(L+"/"))?q.slice(L.length).replace(/^\/+/,""):"";A.value=X?`/${X}`:"/",S.value=!0,r.nextTick(()=>{var $,j;($=T.value)==null||$.focus(),(j=T.value)==null||j.select()});return}if(n.multiStorageRoot)if(!n.adapter)A.value="/";else{const L=U.replace(/^\/+|\/+$/g,"");A.value=L?`/${n.adapter}/${L}`:`/${n.adapter}`}else A.value=U;S.value=!0,r.nextTick(()=>{var L,q;(L=T.value)==null||L.focus(),(q=T.value)==null||q.select()})}function k(){const D=A.value.trim();if(S.value=!1,n.rootPath){const L=D.replace(/^\/+|\/+$/g,""),q=a.value,X=L?q?`${q}/${L}`:L:q;s("navigate",X?`${n.adapter}://${X}`:`${n.adapter}://`);return}if(n.multiStorageRoot){const L=D.replace(/^\/+|\/+$/g,"");if(!L){s("navigate","");return}const q=L.indexOf("/"),X=q===-1?L:L.slice(0,q),$=q===-1?"":L.slice(q+1);s("navigate",$?`${X}://${$}`:`${X}://`);return}const U=D.replace(/^\/+|\/+$/g,"");U&&s("navigate",`${n.adapter}://${U}`)}function N(){S.value=!1}return(D,U)=>(r.openBlock(),r.createElementBlock("nav",Q4,[S.value?r.withDirectives((r.openBlock(),r.createElementBlock("input",{key:1,ref_key:"pathInput",ref:T,"onUpdate:modelValue":U[1]||(U[1]=L=>A.value=L),type:"text",class:"fe-breadcrumb__input",placeholder:r.unref(o)("breadcrumb.path_placeholder"),spellcheck:"false",autocomplete:"off",onKeydown:[r.withKeys(r.withModifiers(k,["prevent"]),["enter"]),r.withKeys(r.withModifiers(N,["prevent"]),["escape"])],onBlur:N},null,40,s_)),[[r.vModelText,A.value]]):(r.openBlock(),r.createElementBlock(r.Fragment,{key:0},[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(d.value,(L,q)=>(r.openBlock(),r.createElementBlock("button",{key:L.adapterPath,class:r.normalizeClass(["fe-breadcrumb__crumb",{"is-last":!c.value&&q===d.value.length-1}]),type:"button","aria-current":!c.value&&q===d.value.length-1?"page":void 0,onClick:X=>m(L),onContextmenu:X=>b(X,L),onDragover:y,onDrop:X=>_(X,L)},[r.createElementVNode("span",null,r.toDisplayString(L.label),1),c.value||q<d.value.length-1?(r.openBlock(),r.createElementBlock("span",t_,"›")):r.createCommentVNode("",!0)],42,e_))),128)),u.value.length?(r.openBlock(),r.createElementBlock("span",{key:0,ref_key:"moreWrapEl",ref:p,class:"fe-breadcrumb__more-wrap"},[r.createElementVNode("button",{type:"button",class:"fe-breadcrumb__more","aria-haspopup":"menu","aria-expanded":f.value,"aria-label":r.unref(o)("breadcrumb.more"),title:r.unref(o)("breadcrumb.more"),onClick:U[0]||(U[0]=L=>f.value=!f.value)},"…",8,n_),U[2]||(U[2]=r.createElementVNode("span",{class:"fe-breadcrumb__sep","aria-hidden":"true"},"›",-1)),f.value?(r.openBlock(),r.createElementBlock("div",r_,[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(u.value,L=>(r.openBlock(),r.createElementBlock("button",{key:L.adapterPath,type:"button",class:"fe-breadcrumb__menu-item",role:"menuitem",onClick:q=>w(L)},r.toDisplayString(L.label),9,a_))),128))])):r.createCommentVNode("",!0)],512)):r.createCommentVNode("",!0),(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(h.value,(L,q)=>(r.openBlock(),r.createElementBlock("button",{key:L.adapterPath,class:r.normalizeClass(["fe-breadcrumb__crumb",{"is-last":q===h.value.length-1}]),type:"button","aria-current":q===h.value.length-1?"page":void 0,onClick:X=>m(L),onContextmenu:X=>b(X,L),onDragover:y,onDrop:X=>_(X,L)},[r.createElementVNode("span",null,r.toDisplayString(L.label),1),q<h.value.length-1?(r.openBlock(),r.createElementBlock("span",o_,"›")):r.createCommentVNode("",!0)],42,i_))),128)),r.createElementVNode("button",{type:"button",class:"fe-breadcrumb__edit",title:r.unref(o)("breadcrumb.go_to_path"),"aria-label":r.unref(o)("breadcrumb.go_to_path"),onClick:E},"✏",8,l_)],64))]))}}),gf={};function xr(e,t){for(const n of t)gf[n]=e}xr("image",["jpg","jpeg","png","webp","gif","bmp","avif","heic","svg","ico","tiff","tif"]),xr("video",["mp4","webm","mov","mkv","avi","ogv","m4v"]),xr("audio",["mp3","wav","flac","ogg","m4a","aac","opus"]),xr("pdf",["pdf"]),xr("doc",["doc","docx","odt","rtf"]),xr("sheet",["xls","xlsx","ods","csv"]),xr("slides",["ppt","pptx","odp"]),xr("archive",["zip","tar","gz","bz2","7z","rar","xz","zst"]),xr("code",["js","ts","jsx","tsx","mjs","cjs","vue","py","go","rs","php","rb","java","kt","swift","c","cpp","h","hpp","cs","css","scss","less","html","htm","json","yml","yaml","xml","sh","bash","ps1","sql","toml"]),xr("text",["txt","md","markdown","log","ini","conf","cfg","env"]);function u_(e){if(e.type==="dir")return"folder";const t=(e.extension||"").toLowerCase();return gf[t]??"unknown"}const sa='<path d="M6.5 3h7L18.5 8v11.5a1.5 1.5 0 0 1-1.5 1.5H6.5A1.5 1.5 0 0 1 5 19.5v-15A1.5 1.5 0 0 1 6.5 3z"/><path d="M13.5 3v5h5"/>',f_={folder:'<path d="M3 7a2 2 0 0 1 2-2h4.2l2 2.4H19a2 2 0 0 1 2 2V17a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z" fill="currentColor" fill-opacity="0.14"/>',image:'<rect x="3" y="5" width="18" height="14" rx="2"/><circle cx="8.6" cy="10" r="1.6"/><path d="M5.2 16.6l4.3-4.3 3 3 2.4-2.4 3.9 3.7"/>',video:'<rect x="3" y="5" width="18" height="14" rx="2"/><path d="M10.2 9.3v5.4l4.8-2.7z" fill="currentColor" stroke="none"/>',audio:'<path d="M9 17.5V7.2l9-2.2v10.4"/><circle cx="6.8" cy="17.6" r="2.2"/><circle cx="15.8" cy="15.5" r="2.2"/>',pdf:sa+'<rect x="7.5" y="12" width="9" height="5" rx="1" fill="currentColor" fill-opacity="0.14"/>',doc:sa+'<path d="M8.5 13h7M8.5 16h7"/>',sheet:sa+'<path d="M8 12.5h8M8 15.5h8M8 18h8M12 12.5V18"/>',slides:sa+'<rect x="8" y="12.5" width="8" height="5" rx="0.8"/>',archive:sa+'<path d="M10 3v1.6M10 6.6v1.6M10 10.2v1.6"/><rect x="8.6" y="14" width="2.8" height="3.4" rx="0.8"/>',code:sa+'<path d="M10.4 12.5L8.3 15l2.1 2.5M13.6 12.5l2.1 2.5-2.1 2.5"/>',text:sa+'<path d="M8.5 12h7M8.5 15h7M8.5 18h4.5"/>',unknown:sa+'<path d="M10.3 13.1a1.8 1.8 0 1 1 2.5 1.9c-.6.3-.8.7-.8 1.4"/><circle cx="12" cy="18.4" r="0.9" fill="currentColor" stroke="none"/>'},bf=new Map;function h_(e){let t=bf.get(e);return t||(t=`<svg class="fe-ficon fe-ficon--${e}" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.6" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true" focusable="false">${f_[e]}</svg>`,bf.set(e,t)),t}function ti(e){return h_(u_(e))}function Ji(e){const t=[];if(!e)return t;const n=/«([^«»]*)»/g;let a=0,i;for(;(i=n.exec(e))!==null;)i.index>a&&t.push({text:e.slice(a,i.index),match:!1}),i[1]&&t.push({text:i[1],match:!0}),a=i.index+i[0].length;return a<e.length&&t.push({text:e.slice(a),match:!1}),t}function ic(e){return e==="content"||e==="both"}function oc(e,t,n){const a=e.dataTransfer;if(!(!a||typeof document>"u"||typeof a.setDragImage!="function"))try{const i=document.createElement("div");i.className="fe-dragghost";const o=document.createElement("span");if(o.className="fe-dragghost__name",o.textContent=t,i.appendChild(o),n>1){const s=document.createElement("span");s.className="fe-dragghost__badge",s.textContent=String(n),i.appendChild(s)}i.style.position="fixed",i.style.top="-1000px",i.style.left="-1000px",document.body.appendChild(i),a.setDragImage(i,14,14),setTimeout(()=>i.remove(),0)}catch{}}const p_=["aria-pressed","title"],m_={viewBox:"0 0 24 24",width:"16",height:"16","aria-hidden":"true"},g_=["fill"],b_={key:0,class:"filex-star-label"},vf=r.defineComponent({__name:"StarButton",props:{starred:{type:Boolean},nodeId:{},apiBase:{},authHeaders:{type:Function},authCredentials:{},compact:{type:Boolean}},emits:["change","error"],setup(e,{emit:t}){const n=e,a=t,i=r.ref(n.starred);r.watch(()=>n.starred,s=>{i.value=s});async function o(){const s=!i.value;i.value=s;try{const l={"Content-Type":"application/json",...await(n.authHeaders??(()=>({})))()},c=n.apiBase??"",d=await fetch(`${c}/api/files/manager/star`,{method:"POST",headers:l,credentials:n.authCredentials??"same-origin",body:JSON.stringify({node_id:n.nodeId,starred:s})});if(!d.ok)throw new Error(`star toggle failed: ${d.status}`);a("change",s)}catch(l){i.value=!s,a("error",l instanceof Error?l.message:String(l))}}return(s,l)=>(r.openBlock(),r.createElementBlock("button",{type:"button",class:r.normalizeClass(["filex-star-btn",{"is-starred":i.value,"is-compact":e.compact}]),"aria-pressed":i.value,title:i.value?"Unstar":"Star",onClick:r.withModifiers(o,["stop"])},[(r.openBlock(),r.createElementBlock("svg",m_,[r.createElementVNode("path",{fill:i.value?"currentColor":"none",stroke:"currentColor","stroke-width":"2","stroke-linejoin":"round",d:"M12 2.5l3.09 6.26 6.91 1-5 4.87 1.18 6.87L12 18.27l-6.18 3.23L7 14.63 2 9.76l6.91-1z"},null,8,g_)])),e.compact?r.createCommentVNode("",!0):(r.openBlock(),r.createElementBlock("span",b_,r.toDisplayString(i.value?"Starred":"Star"),1))],10,p_))}}),v_=["aria-label","aria-busy"],y_={class:"fe-list__head",role:"row"},__=["aria-label"],w_=["aria-sort"],k_=["title"],E_={key:0,class:"fe-list__sort-arrow","aria-hidden":"true"},x_=["aria-sort"],S_=["title"],C_={key:0,class:"fe-list__sort-arrow","aria-hidden":"true"},N_=["aria-sort"],T_=["title"],A_={key:0,class:"fe-list__sort-arrow","aria-hidden":"true"},D_={class:"fe-list__body",role:"rowgroup"},M_={key:0,class:"fe-list__group",role:"presentation"},B_=["aria-selected","aria-label","data-fe-path","onClick","onDblclick","onContextmenu","onDragstart","onDragover","onDragleave","onDrop","onTouchstartPassive"],O_={class:"fe-list__col fe-list__col--name",role:"gridcell"},I_={key:0,class:"fe-list__icon","aria-hidden":"true"},R_=["innerHTML"],L_={class:"fe-list__name-wrap"},F_=["title"],z_={key:0,class:"fe-list__badge"},P_=["title"],$_={key:1,class:"fe-list__snippet"},V_={key:0,class:"fe-list__mark"},U_={class:"fe-list__col fe-list__col--size",role:"gridcell"},H_={class:"fe-list__col fe-list__col--mod",role:"gridcell"},G_={key:0,class:"fe-list__empty"},yf="filex.list-sort",_f=r.defineComponent({__name:"ListView",props:{files:{},selected:{},clipped:{},showParentPath:{type:Boolean},locale:{},loading:{type:Boolean},starredIds:{},apiBase:{},authHeaders:{type:Function},authCredentials:{}},emits:["click-row","dbl-row","context-row","item-drag-start","item-drop-into","star-change"],setup(e,{emit:t}){const n=e,a=t,{t:i,formatSize:o,nodeDisplayName:s}=qt(()=>n.locale);function l(F){return n.selected.has(F.path)}function c(F,I){a("click-row",F,{ctrl:I.ctrlKey||I.metaKey,shift:I.shiftKey})}function d(F){a("dbl-row",F)}function u(F,I){I.preventDefault(),I.stopPropagation(),a("context-row",F,I)}function h(F,I){oc(I,s(F),n.selected.has(F.path)?n.selected.size:1),a("item-drag-start",F,I)}const f=r.ref(null);function p(F,I){var H;F.type==="dir"&&(H=I.dataTransfer)!=null&&H.types.includes("application/x-brf-files")&&(I.preventDefault(),I.stopPropagation(),I.dataTransfer&&(I.dataTransfer.dropEffect="move"),f.value=F.path)}function w(F){f.value===F.path&&(f.value=null)}function g(F,I){var H;f.value=null,F.type==="dir"&&(H=I.dataTransfer)!=null&&H.types.includes("application/x-brf-files")&&(I.preventDefault(),I.stopPropagation(),a("item-drop-into",F,I))}let v,m=null;function b(F,I){m=F,v&&clearTimeout(v),v=setTimeout(()=>{if(m){const H=I.touches[0];a("context-row",m,{clientX:H.clientX,clientY:H.clientY,preventDefault:()=>{}})}},500)}function y(){v&&clearTimeout(v),m=null}function _(F){return F.basename===".trash"?"🗑":F.mime_type==="inode/storage"?"💾":F.type==="dir"&&F.e2e===!0?"🔒":null}function S(F){return F.basename===".trash"||F.mime_type==="inode/storage"}function A(F){return F?new Date(F*(F<1e12?1e3:1)).toLocaleString():"—"}function T(F){const I=F.replace(/^[a-z][a-z0-9+.-]*:\/\//i,""),H=I.lastIndexOf("/");return H===-1?"":I.slice(0,H)}function E(F){const I=F.snippet;return typeof I=="string"?I:""}function k(F){return ic(F.matched)}const N=r.ref(null),D=r.ref("asc");try{const F=localStorage.getItem(yf);if(F){const I=JSON.parse(F);(I.key==="name"||I.key==="size"||I.key==="modified")&&(N.value=I.key),(I.dir==="asc"||I.dir==="desc")&&(D.value=I.dir)}}catch{}function U(F){return F==="modified"?"desc":"asc"}function L(F){N.value!==F?(N.value=F,D.value=U(F)):D.value===U(F)?D.value=D.value==="asc"?"desc":"asc":N.value=null;try{localStorage.setItem(yf,JSON.stringify({key:N.value,dir:D.value}))}catch{}}function q(F){return N.value!==F?"none":D.value==="asc"?"ascending":"descending"}function X(F){const I=F.last_modified;return I?I*(I<1e12?1e3:1):null}const $=r.computed(()=>{const F=N.value;if(!F)return n.files;const I=[],H=[];for(const oe of n.files)(S(oe)?I:H).push(oe);const G=D.value==="asc"?1:-1;return H.sort((oe,de)=>{if(F==="name")return G*oe.basename.localeCompare(de.basename,void 0,{numeric:!0,sensitivity:"base"});if(F==="size")return G*((oe.size??-1)-(de.size??-1));const ve=X(oe),Ee=X(de);return ve==null&&Ee==null?0:ve==null?1:Ee==null?-1:G*(ve-Ee)}),[...I,...H]}),j=r.computed(()=>new Intl.DateTimeFormat(n.locale==="tr"?"tr-TR":"en-US",{month:"long",year:"numeric"}));function J(F){if(F==null)return{id:"none",label:i("group.no_date")};const I=new Date(F),H=new Date,G=Ee=>new Date(Ee.getFullYear(),Ee.getMonth(),Ee.getDate()).getTime(),oe=G(H),de=G(I),ve=864e5;return de>=oe?{id:"today",label:i("group.today")}:de===oe-ve?{id:"yesterday",label:i("group.yesterday")}:de>oe-7*ve?{id:"week",label:i("group.this_week")}:I.getFullYear()===H.getFullYear()&&I.getMonth()===H.getMonth()?{id:"month",label:i("group.this_month")}:{id:`m-${I.getFullYear()}-${I.getMonth()}`,label:j.value.format(I)}}const V=r.computed(()=>{const F=$.value;if(N.value!=="modified")return[{id:"all",label:null,nodes:F}];const I=[];let H=null;for(const G of F){const oe=S(G)?{id:"pinned",label:null}:J(X(G));(!H||H.id!==oe.id)&&(H={id:oe.id,label:oe.label,nodes:[]},I.push(H)),H.nodes.push(G)}return I});return(F,I)=>(r.openBlock(),r.createElementBlock("div",{class:r.normalizeClass(["fe-list",{"is-loading":e.loading,"has-star-col":!!e.apiBase||e.apiBase===""}]),role:"grid","aria-label":r.unref(i)("list.aria"),"aria-busy":e.loading?"true":void 0},[r.createElementVNode("div",y_,[r.createElementVNode("div",{class:"fe-list__col fe-list__col--star",role:"columnheader","aria-label":r.unref(i)("col.star")},null,8,__),r.createElementVNode("div",{class:"fe-list__col fe-list__col--name",role:"columnheader","aria-sort":q("name")},[r.createElementVNode("button",{type:"button",class:"fe-list__sort",title:r.unref(i)("col.sort"),onClick:I[0]||(I[0]=H=>L("name"))},[r.createTextVNode(r.toDisplayString(r.unref(i)("col.name"))+" ",1),N.value==="name"?(r.openBlock(),r.createElementBlock("span",E_,r.toDisplayString(D.value==="asc"?"↑":"↓"),1)):r.createCommentVNode("",!0)],8,k_)],8,w_),r.createElementVNode("div",{class:"fe-list__col fe-list__col--size",role:"columnheader","aria-sort":q("size")},[r.createElementVNode("button",{type:"button",class:"fe-list__sort",title:r.unref(i)("col.sort"),onClick:I[1]||(I[1]=H=>L("size"))},[r.createTextVNode(r.toDisplayString(r.unref(i)("col.size"))+" ",1),N.value==="size"?(r.openBlock(),r.createElementBlock("span",C_,r.toDisplayString(D.value==="asc"?"↑":"↓"),1)):r.createCommentVNode("",!0)],8,S_)],8,x_),r.createElementVNode("div",{class:"fe-list__col fe-list__col--mod",role:"columnheader","aria-sort":q("modified")},[r.createElementVNode("button",{type:"button",class:"fe-list__sort",title:r.unref(i)("col.sort"),onClick:I[2]||(I[2]=H=>L("modified"))},[r.createTextVNode(r.toDisplayString(r.unref(i)("col.modified"))+" ",1),N.value==="modified"?(r.openBlock(),r.createElementBlock("span",A_,r.toDisplayString(D.value==="asc"?"↑":"↓"),1)):r.createCommentVNode("",!0)],8,T_)],8,N_)]),r.createElementVNode("div",D_,[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(V.value,H=>(r.openBlock(),r.createElementBlock(r.Fragment,{key:H.id},[H.label?(r.openBlock(),r.createElementBlock("div",M_,r.toDisplayString(H.label),1)):r.createCommentVNode("",!0),(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(H.nodes,G=>{var oe,de;return r.openBlock(),r.createElementBlock("div",{key:G.path,class:r.normalizeClass(["fe-list__row",{"is-selected":l(G),"is-dir":G.type==="dir","is-trash":G.trashed,"is-clipped":(oe=e.clipped)==null?void 0:oe.has(G.path),"is-droptarget":f.value===G.path}]),role:"row",tabindex:"0","aria-selected":l(G)?"true":"false","aria-label":r.unref(s)(G),"data-fe-path":G.path,draggable:"true",onClick:ve=>c(G,ve),onDblclick:ve=>d(G),onContextmenu:ve=>u(G,ve),onDragstart:ve=>h(G,ve),onDragover:ve=>p(G,ve),onDragleave:ve=>w(G),onDrop:ve=>g(G,ve),onTouchstartPassive:ve=>b(G,ve),onTouchend:y,onTouchmove:y},[r.createElementVNode("div",{class:"fe-list__col fe-list__col--star",role:"gridcell",onClick:I[3]||(I[3]=r.withModifiers(()=>{},["stop"]))},[typeof G.id=="number"&&G.type==="file"?(r.openBlock(),r.createBlock(vf,{key:0,starred:!!((de=e.starredIds)!=null&&de.has(G.id)),"node-id":G.id,"api-base":e.apiBase,"auth-headers":e.authHeaders,"auth-credentials":e.authCredentials,compact:"",onChange:ve=>a("star-change",G,ve)},null,8,["starred","node-id","api-base","auth-headers","auth-credentials","onChange"])):r.createCommentVNode("",!0)]),r.createElementVNode("div",O_,[_(G)?(r.openBlock(),r.createElementBlock("span",I_,r.toDisplayString(_(G)),1)):(r.openBlock(),r.createElementBlock("span",{key:1,class:"fe-list__icon fe-list__icon--svg","aria-hidden":"true",innerHTML:r.unref(ti)(G)},null,8,R_)),r.createElementVNode("div",L_,[r.createElementVNode("span",{class:"fe-list__name",title:G.basename},[r.createTextVNode(r.toDisplayString(r.unref(s)(G))+" ",1),k(G)?(r.openBlock(),r.createElementBlock("span",z_,r.toDisplayString(r.unref(i)("search.in_content")),1)):r.createCommentVNode("",!0)],8,F_),e.showParentPath?(r.openBlock(),r.createElementBlock("span",{key:0,class:"fe-list__parent",title:T(G.path)},r.toDisplayString(T(G.path)||"—"),9,P_)):r.createCommentVNode("",!0),E(G)?(r.openBlock(),r.createElementBlock("span",$_,[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(r.unref(Ji)(E(G)),(ve,Ee)=>(r.openBlock(),r.createElementBlock(r.Fragment,{key:Ee},[ve.match?(r.openBlock(),r.createElementBlock("mark",V_,r.toDisplayString(ve.text),1)):(r.openBlock(),r.createElementBlock(r.Fragment,{key:1},[r.createTextVNode(r.toDisplayString(ve.text),1)],64))],64))),128))])):r.createCommentVNode("",!0)])]),r.createElementVNode("div",U_,r.toDisplayString(r.unref(o)(G.size)),1),r.createElementVNode("div",H_,r.toDisplayString(A(G.last_modified)),1)],42,B_)}),128))],64))),128)),!e.loading&&$.value.length===0?(r.openBlock(),r.createElementBlock("div",G_,r.toDisplayString(r.unref(i)("empty.folder")),1)):r.createCommentVNode("",!0)])],10,v_))}}),q_=["aria-label","aria-busy"],K_=["aria-selected","aria-label","data-fe-path","onClick","onDblclick","onContextmenu","onDragstart","onDragover","onDragleave","onDrop","onTouchstartPassive"],W_={class:"fe-grid__thumb"},Y_=["src","alt"],j_={key:1,class:"fe-grid__icon"},X_=["innerHTML"],Z_=["title"],J_=["title"],Q_={class:"fe-grid__meta"},e3=["title"],t3={key:0,class:"fe-grid__mark"},n3={key:0,class:"fe-grid__empty"},wf=r.defineComponent({__name:"GridView",props:{files:{},selected:{},clipped:{},showParentPath:{type:Boolean},locale:{},loading:{type:Boolean},thumbSrc:{type:Function}},emits:["click-card","dbl-card","context-card","item-drag-start","item-drop-into"],setup(e,{emit:t}){const n=e,a=t,{t:i,formatSize:o,nodeDisplayName:s}=qt(()=>n.locale);function l(k){return n.thumbSrc?n.thumbSrc(k):k.thumb_url??null}function c(k){return n.selected.has(k.path)}function d(k,N){a("click-card",k,{ctrl:N.ctrlKey||N.metaKey,shift:N.shiftKey})}function u(k){a("dbl-card",k)}function h(k,N){N.preventDefault(),N.stopPropagation(),a("context-card",k,N)}function f(k,N){oc(N,s(k),n.selected.has(k.path)?n.selected.size:1),a("item-drag-start",k,N)}const p=r.ref(null);function w(k,N){var D;k.type==="dir"&&(D=N.dataTransfer)!=null&&D.types.includes("application/x-brf-files")&&(N.preventDefault(),N.stopPropagation(),N.dataTransfer&&(N.dataTransfer.dropEffect="move"),p.value=k.path)}function g(k){p.value===k.path&&(p.value=null)}function v(k,N){var D;p.value=null,k.type==="dir"&&(D=N.dataTransfer)!=null&&D.types.includes("application/x-brf-files")&&(N.preventDefault(),N.stopPropagation(),a("item-drop-into",k,N))}let m,b=null;function y(k,N){b=k,m&&clearTimeout(m),m=setTimeout(()=>{if(b){const D=N.touches[0];a("context-card",b,{clientX:D.clientX,clientY:D.clientY,preventDefault:()=>{}})}},500)}function _(){m&&clearTimeout(m),b=null}function S(k){const N=k.replace(/^[a-z][a-z0-9+.-]*:\/\//i,""),D=N.lastIndexOf("/");return D===-1?"":N.slice(0,D)}function A(k){return k.basename===".trash"?"🗑":k.mime_type==="inode/storage"?"💾":k.type==="dir"&&k.e2e===!0?"🔒":null}function T(k){const N=k.snippet;return typeof N=="string"?N:""}function E(k){return Ji(k).map(N=>N.text).join("")}return(k,N)=>(r.openBlock(),r.createElementBlock("div",{class:r.normalizeClass(["fe-grid",{"is-loading":e.loading}]),role:"listbox","aria-multiselectable":"true","aria-label":r.unref(i)("grid.aria"),"aria-busy":e.loading?"true":void 0},[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(e.files,D=>{var U;return r.openBlock(),r.createElementBlock("div",{key:D.path,class:r.normalizeClass(["fe-grid__card",{"is-selected":c(D),"is-dir":D.type==="dir","is-trash":D.trashed,"is-clipped":(U=e.clipped)==null?void 0:U.has(D.path),"is-droptarget":p.value===D.path}]),tabindex:"0",role:"option","aria-selected":c(D)?"true":"false","aria-label":r.unref(s)(D),"data-fe-path":D.path,draggable:"true",onClick:L=>d(D,L),onDblclick:L=>u(D),onContextmenu:L=>h(D,L),onDragstart:L=>f(D,L),onDragover:L=>w(D,L),onDragleave:L=>g(D),onDrop:L=>v(D,L),onTouchstartPassive:L=>y(D,L),onTouchend:_,onTouchmove:_},[r.createElementVNode("div",W_,[l(D)?(r.openBlock(),r.createElementBlock("img",{key:0,src:l(D),alt:D.basename,loading:"lazy",draggable:"false"},null,8,Y_)):A(D)?(r.openBlock(),r.createElementBlock("span",j_,r.toDisplayString(A(D)),1)):(r.openBlock(),r.createElementBlock("span",{key:2,class:"fe-grid__icon fe-grid__icon--svg",innerHTML:r.unref(ti)(D)},null,8,X_))]),r.createElementVNode("div",{class:"fe-grid__label",title:D.basename},r.toDisplayString(r.unref(s)(D)),9,Z_),e.showParentPath?(r.openBlock(),r.createElementBlock("div",{key:0,class:"fe-grid__parent",title:S(D.path)},r.toDisplayString(S(D.path)||"—"),9,J_)):r.createCommentVNode("",!0),r.createElementVNode("div",Q_,r.toDisplayString(r.unref(o)(D.size)),1),T(D)?(r.openBlock(),r.createElementBlock("div",{key:1,class:"fe-grid__snippet",title:E(T(D))},[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(r.unref(Ji)(T(D)),(L,q)=>(r.openBlock(),r.createElementBlock(r.Fragment,{key:q},[L.match?(r.openBlock(),r.createElementBlock("mark",t3,r.toDisplayString(L.text),1)):(r.openBlock(),r.createElementBlock(r.Fragment,{key:1},[r.createTextVNode(r.toDisplayString(L.text),1)],64))],64))),128))],8,e3)):r.createCommentVNode("",!0)],42,K_)}),128)),!e.loading&&e.files.length===0?(r.openBlock(),r.createElementBlock("div",n3,r.toDisplayString(r.unref(i)("empty.folder")),1)):r.createCommentVNode("",!0)],10,q_))}}),r3=["aria-label","aria-busy"],a3=["aria-selected","aria-label","onClick","onDblclick","onContextmenu","onDragstart","onDragover","onDragleave","onDrop","onTouchstartPassive"],i3={class:"fe-gal__thumb"},o3=["src","alt"],l3={key:1,class:"fe-gal__icon"},s3=["innerHTML"],c3={class:"fe-gal__meta","aria-hidden":"true"},d3={key:0,class:"fe-gal__meta-line"},u3=["title"],f3=["title"],h3={key:0,class:"fe-gal__empty"},kf=r.defineComponent({__name:"GalleryView",props:{files:{},selected:{},clipped:{},showParentPath:{type:Boolean},locale:{},loading:{type:Boolean},thumbSrc:{type:Function}},emits:["click-card","dbl-card","context-card","item-drag-start","item-drop-into"],setup(e,{emit:t}){const n=e,a=t,{t:i,formatSize:o,nodeDisplayName:s}=qt(()=>n.locale);function l(k){return n.thumbSrc?n.thumbSrc(k):k.thumb_url??null}function c(k){return n.selected.has(k.path)}function d(k,N){a("click-card",k,{ctrl:N.ctrlKey||N.metaKey,shift:N.shiftKey})}function u(k){a("dbl-card",k)}function h(k,N){N.preventDefault(),N.stopPropagation(),a("context-card",k,N)}function f(k,N){oc(N,s(k),n.selected.has(k.path)?n.selected.size:1),a("item-drag-start",k,N)}const p=r.ref(null);function w(k,N){var D;k.type==="dir"&&(D=N.dataTransfer)!=null&&D.types.includes("application/x-brf-files")&&(N.preventDefault(),N.stopPropagation(),N.dataTransfer&&(N.dataTransfer.dropEffect="move"),p.value=k.path)}function g(k){p.value===k.path&&(p.value=null)}function v(k,N){var D;p.value=null,k.type==="dir"&&(D=N.dataTransfer)!=null&&D.types.includes("application/x-brf-files")&&(N.preventDefault(),N.stopPropagation(),a("item-drop-into",k,N))}let m,b=null;function y(k,N){b=k,m&&clearTimeout(m),m=setTimeout(()=>{if(b){const D=N.touches[0];a("context-card",b,{clientX:D.clientX,clientY:D.clientY,preventDefault:()=>{}})}},500)}function _(){m&&clearTimeout(m),b=null}function S(k){const N=k.replace(/^[a-z][a-z0-9+.-]*:\/\//i,""),D=N.lastIndexOf("/");return D===-1?"":N.slice(0,D)}function A(k){return k.basename===".trash"?"🗑":k.mime_type==="inode/storage"?"💾":k.type==="dir"&&k.e2e===!0?"🔒":null}function T(k){return k?new Date(k*(k<1e12?1e3:1)).toLocaleString():""}function E(k){const N=T(k.last_modified);return[k.type==="dir"?"":o(k.size),N].filter(U=>!!U).join(" · ")}return(k,N)=>(r.openBlock(),r.createElementBlock("div",{class:r.normalizeClass(["fe-gal",{"is-loading":e.loading}]),role:"listbox","aria-multiselectable":"true","aria-label":r.unref(i)("gallery.aria"),"aria-busy":e.loading?"true":void 0},[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(e.files,D=>{var U;return r.openBlock(),r.createElementBlock("div",{key:D.path,class:r.normalizeClass(["fe-gal__card",{"is-selected":c(D),"is-dir":D.type==="dir","is-trash":D.trashed,"is-clipped":(U=e.clipped)==null?void 0:U.has(D.path),"is-droptarget":p.value===D.path}]),tabindex:"0",role:"option","aria-selected":c(D)?"true":"false","aria-label":r.unref(s)(D),draggable:"true",onClick:L=>d(D,L),onDblclick:L=>u(D),onContextmenu:L=>h(D,L),onDragstart:L=>f(D,L),onDragover:L=>w(D,L),onDragleave:L=>g(D),onDrop:L=>v(D,L),onTouchstartPassive:L=>y(D,L),onTouchend:_,onTouchmove:_},[r.createElementVNode("div",i3,[l(D)?(r.openBlock(),r.createElementBlock("img",{key:0,src:l(D),alt:D.basename,loading:"lazy",draggable:"false"},null,8,o3)):A(D)?(r.openBlock(),r.createElementBlock("span",l3,r.toDisplayString(A(D)),1)):(r.openBlock(),r.createElementBlock("span",{key:2,class:"fe-gal__icon fe-gal__icon--svg",innerHTML:r.unref(ti)(D)},null,8,s3)),r.createElementVNode("div",c3,[E(D)?(r.openBlock(),r.createElementBlock("span",d3,r.toDisplayString(E(D)),1)):r.createCommentVNode("",!0),e.showParentPath&&S(D.path)?(r.openBlock(),r.createElementBlock("span",{key:1,class:"fe-gal__meta-line fe-gal__meta-line--path",title:S(D.path)},r.toDisplayString(S(D.path)),9,u3)):r.createCommentVNode("",!0)])]),r.createElementVNode("div",{class:"fe-gal__label",title:D.basename},r.toDisplayString(r.unref(s)(D)),9,f3)],42,a3)}),128)),!e.loading&&e.files.length===0?(r.openBlock(),r.createElementBlock("div",h3,r.toDisplayString(r.unref(i)("empty.folder")),1)):r.createCommentVNode("",!0)],10,r3))}}),p3=r.defineComponent({__name:"UploadProgress",props:{jobs:{},locale:{},center:{}},emits:["cancel","dismiss","retry"],setup(e,{emit:t}){const n=e,a=t;function i(o){return o==="done"?"done":o==="error"?"error":o==="aborted"?"aborted":"running"}return r.watch(()=>n.jobs,o=>{n.center.sync("upload",o.map(s=>({input:{id:s.id,kind:"upload",name:s.file.name,percent:s.totalBytes>0||s.status==="done"?s.percent:null,status:i(s.status),error:s.error??null,uploadedBytes:s.uploadedBytes,totalBytes:s.totalBytes,cancellable:s.status==="uploading"||s.status==="initializing",retryable:s.status==="error"},actions:{cancel:()=>a("cancel",s),dismiss:()=>a("dismiss",s),retry:()=>a("retry",s)}})))},{immediate:!0}),(o,s)=>r.createCommentVNode("",!0)}}),m3=r.defineComponent({__name:"PendingOpsTray",props:{ops:{},locale:{},center:{}},emits:["dismiss"],setup(e,{emit:t}){const n=e,a=t;function i(s){return s.status==="done"?"done":s.status==="error"?"error":"running"}function o(s){return s.status==="done"?100:s.progress_total<=0?null:Math.min(100,Math.round(s.progress_done/s.progress_total*100))}return r.watch(()=>n.ops,s=>{n.center.sync("ops",s.map(l=>({input:{id:l.id,kind:l.op_type,name:l.target_path||l.source_dir||"",percent:o(l),status:i(l),error:l.error_message,queued:l.status==="pending",doneCount:l.progress_done,totalCount:l.progress_total,cancellable:!1,retryable:!1},actions:{dismiss:()=>a("dismiss",l.id)}})))},{immediate:!0}),(s,l)=>r.createCommentVNode("",!0)}}),g3=["aria-label"],b3={class:"fe-inspector__head"},v3={class:"fe-inspector__title"},y3=["title","aria-label"],_3={class:"fe-inspector__scroll"},w3={class:"fe-inspector__section"},k3={class:"fe-inspector__heading"},E3={key:0,class:"fe-inspector__hero"},x3=["innerHTML"],S3={class:"fe-inspector__name"},C3={class:"fe-inspector__hero"},N3=["src"],T3=["innerHTML"],A3=["title"],D3={class:"fe-inspector__meta"},M3={class:"fe-inspector__row"},B3={class:"fe-inspector__pathcell"},O3=["title"],I3=["title","aria-label"],R3={key:0,class:"fe-inspector__row"},L3={class:"fe-inspector__row"},F3={key:1,class:"fe-inspector__row"},z3={class:"fe-inspector__mime"},P3={key:2,class:"fe-inspector__row"},$3={class:"fe-inspector__pathcell"},V3=["title"],U3=["title","aria-label"],H3={key:2,class:"fe-inspector__hero"},G3=["innerHTML"],q3=["title"],K3={class:"fe-inspector__sub"},W3={key:0,class:"fe-inspector__section"},Y3={class:"fe-inspector__heading"},j3={key:0,class:"fe-inspector__empty"},X3={key:0,class:"fe-inspector__empty"},Z3={key:1,class:"fe-inspector__versions"},J3={class:"fe-inspector__version-main"},Q3={class:"fe-inspector__version-n"},e5={class:"fe-inspector__version-meta"},t5={key:0,class:"fe-inspector__confirm"},n5={class:"fe-inspector__confirm-q"},r5={class:"fe-inspector__check"},a5={class:"fe-inspector__confirm-actions"},i5=["disabled","onClick"],o5=["disabled"],l5=["disabled","onClick"],s5=["disabled"],c5={key:1,class:"fe-inspector__section"},d5={class:"fe-inspector__heading"},u5={class:"fe-inspector__permrow"},f5={key:2,class:"fe-inspector__section"},h5={class:"fe-inspector__heading"},p5={key:0,class:"fe-inspector__empty"},m5={key:1,class:"fe-inspector__shares"},g5=["title"],b5={key:0,class:"fe-inspector__badge fe-inspector__badge--pin"},v5={key:1,class:"fe-inspector__share-exp"},y5=["title","aria-label","onClick"],_5={key:3,class:"fe-inspector__section"},w5={class:"fe-inspector__heading"},k5={key:0,class:"fe-inspector__countbadge"},E5={key:0,class:"fe-inspector__empty"},x5={key:0,class:"fe-inspector__empty"},S5={key:1,class:"fe-inspector__comments"},C5={class:"fe-inspector__comment-top"},N5=["title"],T5=["title"],A5=["disabled","title","aria-label","onClick"],D5={class:"fe-inspector__comment-body"},M5=["placeholder","aria-label","disabled"],B5=["disabled"],O5=r.defineComponent({__name:"InspectorPanel",props:{api:{},nodes:{},dirLabel:{},dirCount:{},dirPerm:{},locale:{},narrow:{type:Boolean},thumbSrc:{type:Function}},emits:["close","manage-permissions","toast","changed"],setup(e,{emit:t}){const n=e,a=t,{t:i,formatSize:o,nodeDisplayName:s}=qt(()=>n.locale),l=r.computed(()=>n.nodes.length===1?n.nodes[0]:null),c=r.computed(()=>n.nodes.length>1),d=r.computed(()=>{var ne;return((ne=l.value)==null?void 0:ne.type)==="file"}),u=r.computed(()=>{var ne;return typeof((ne=l.value)==null?void 0:ne.id)=="number"?l.value.id:null}),h=r.computed(()=>n.nodes.reduce((ne,me)=>ne+(typeof me.size=="number"?me.size:0),0)),f=r.computed(()=>{var me;const ne=(me=l.value)==null?void 0:me.etag;return typeof ne=="string"&&ne!==""?ne:null}),p=r.computed(()=>l.value&&d.value&&n.thumbSrc?n.thumbSrc(l.value):null);function w(ne){return ne.length>12?`${ne.slice(0,12)}…`:ne}function g(ne){if(!ne)return"—";try{return new Date(ne).toLocaleString(n.locale==="en"?"en-GB":"tr-TR",{dateStyle:"medium",timeStyle:"short"})}catch{return new Date(ne).toISOString()}}function v(ne){if(!ne)return"—";const me=Date.parse(ne);return Number.isNaN(me)?ne:g(me)}async function m(ne){try{await navigator.clipboard.writeText(ne),a("toast",i("inspector.copied"))}catch{a("toast",ne)}}const b=r.computed(()=>{if(!l.value)return"";const ne=l.value.perm;return typeof ne=="string"&&ne!==""?ne:n.dirPerm||""}),y=r.computed(()=>b.value==="editor"||b.value==="owner");function _(ne){return i(`inspector.perm.${ne}`)===`inspector.perm.${ne}`?ne:i(`inspector.perm.${ne}`)}const S=r.ref("idle"),A=r.ref([]),T=r.ref(null),E=r.ref(!0),k=r.ref(!1),N=r.ref("idle"),D=r.ref([]);let U=0;async function L(){const ne=++U;if(T.value=null,A.value=[],D.value=[],l.value&&d.value&&u.value!=null?(S.value="loading",q(ne)):S.value="hidden",l.value){N.value="loading";const me=l.value.path;try{const{shares:we}=await n.api.listShares(me);if(ne!==U)return;D.value=Array.isArray(we)?we:[],N.value="ok"}catch{if(ne!==U)return;N.value="hidden"}}else N.value="hidden"}async function q(ne){const me=u.value;if(me!=null)try{const we=await n.api.listVersions(me);if(ne!==U)return;A.value=we,S.value="ok"}catch(we){if(ne!==U)return;const Se=we.status;Se===401||Se===403||Se===404?S.value="hidden":S.value="error"}}function X(ne){T.value=ne.id,E.value=!0}async function $(ne){const me=u.value;if(!(me==null||k.value)){k.value=!0;try{await n.api.restoreVersion(me,ne.id,E.value),a("toast",i("inspector.versions.restored")),T.value=null,a("changed"),await q(++U)}catch(we){a("toast",we.message)}finally{k.value=!1}}}async function j(){const ne=u.value;if(!(ne==null||k.value)){k.value=!0;try{await n.api.snapshotVersion(ne),a("toast",i("inspector.versions.snapshotted")),await q(++U)}catch(me){const we=me.status;we===404||we===405||we===501?a("toast",i("inspector.versions.unsupported")):a("toast",me.message)}finally{k.value=!1}}}r.watch(()=>n.nodes.map(ne=>ne.path).join("\0"),()=>void L(),{immediate:!0});const J=r.ref("hidden"),V=r.ref([]),F=r.ref(""),I=r.ref(!1),H=r.computed(()=>{var ne;return typeof((ne=l.value)==null?void 0:ne.id)=="number"?l.value.id:null});let G=0;async function oe(){const ne=++G,me=H.value;if(me==null){J.value="hidden",V.value=[];return}J.value=V.value.length>0?"ok":"loading";try{const we=await n.api.listComments(me);if(ne!==G)return;V.value=we,J.value="ok"}catch(we){if(ne!==G)return;V.value=[];const Se=we.status;J.value=Se===401||Se===403||Se===404?"hidden":"error"}}async function de(){const ne=H.value,me=F.value.trim();if(!(ne==null||me===""||I.value)){I.value=!0;try{await n.api.addComment(ne,me),F.value="",await oe()}catch(we){a("toast",we.message)}finally{I.value=!1}}}async function ve(ne){if(!I.value){I.value=!0;try{await n.api.deleteComment(ne.id),await oe()}catch(me){a("toast",me.message)}finally{I.value=!1}}}function Ee(ne){const me=Date.parse(ne);if(Number.isNaN(me))return ne;const we=Math.round((me-Date.now())/1e3),Se=Math.abs(we),De=[["year",31536e3],["month",2592e3],["day",86400],["hour",3600],["minute",60]];try{const Xe=new Intl.RelativeTimeFormat(n.locale==="en"?"en":"tr",{numeric:"auto"});for(const[tt,Pe]of De)if(Se>=Pe)return Xe.format(Math.trunc(we/Pe),tt);return Xe.format(we,"second")}catch{return v(ne)}}return r.watch(()=>H.value,()=>{V.value=[],F.value="",oe()},{immediate:!0}),(ne,me)=>(r.openBlock(),r.createElementBlock("aside",{class:r.normalizeClass(["fe-inspector",{"fe-inspector--overlay":e.narrow}]),role:"complementary","aria-label":r.unref(i)("inspector.title")},[r.createElementVNode("header",b3,[r.createElementVNode("h2",v3,r.toDisplayString(r.unref(i)("inspector.title")),1),r.createElementVNode("button",{type:"button",class:"fe-inspector__close",title:r.unref(i)("inspector.close"),"aria-label":r.unref(i)("inspector.close"),onClick:me[0]||(me[0]=we=>a("close"))},"×",8,y3)]),r.createElementVNode("div",_3,[r.createElementVNode("section",w3,[r.createElementVNode("h3",k3,r.toDisplayString(r.unref(i)("inspector.section.general")),1),c.value?(r.openBlock(),r.createElementBlock("div",E3,[r.createElementVNode("span",{class:"fe-inspector__bigicon",innerHTML:r.unref(ti)({type:"dir"})},null,8,x3),r.createElementVNode("p",S3,r.toDisplayString(r.unref(i)("inspector.items_summary",{n:e.nodes.length,size:r.unref(o)(h.value)})),1)])):l.value?(r.openBlock(),r.createElementBlock(r.Fragment,{key:1},[r.createElementVNode("div",C3,[p.value?(r.openBlock(),r.createElementBlock("img",{key:0,class:"fe-inspector__thumb",src:p.value,alt:"","aria-hidden":"true"},null,8,N3)):(r.openBlock(),r.createElementBlock("span",{key:1,class:"fe-inspector__bigicon",innerHTML:r.unref(ti)(l.value)},null,8,T3)),r.createElementVNode("p",{class:"fe-inspector__name",title:l.value.basename},r.toDisplayString(r.unref(s)(l.value)),9,A3)]),r.createElementVNode("dl",D3,[r.createElementVNode("div",M3,[r.createElementVNode("dt",null,r.toDisplayString(r.unref(i)("inspector.path")),1),r.createElementVNode("dd",B3,[r.createElementVNode("span",{class:"fe-inspector__path",title:l.value.path},r.toDisplayString(l.value.path),9,O3),r.createElementVNode("button",{type:"button",class:"fe-inspector__copy",title:r.unref(i)("inspector.copy"),"aria-label":r.unref(i)("inspector.copy"),onClick:me[1]||(me[1]=we=>m(l.value.path))},"⧉",8,I3)])]),d.value?(r.openBlock(),r.createElementBlock("div",R3,[r.createElementVNode("dt",null,r.toDisplayString(r.unref(i)("inspector.size")),1),r.createElementVNode("dd",null,r.toDisplayString(r.unref(o)(typeof l.value.size=="number"?l.value.size:null)),1)])):r.createCommentVNode("",!0),r.createElementVNode("div",L3,[r.createElementVNode("dt",null,r.toDisplayString(r.unref(i)("inspector.modified")),1),r.createElementVNode("dd",null,r.toDisplayString(g(l.value.last_modified)),1)]),d.value&&l.value.mime_type?(r.openBlock(),r.createElementBlock("div",F3,[r.createElementVNode("dt",null,r.toDisplayString(r.unref(i)("inspector.mime")),1),r.createElementVNode("dd",z3,r.toDisplayString(l.value.mime_type),1)])):r.createCommentVNode("",!0),f.value?(r.openBlock(),r.createElementBlock("div",P3,[r.createElementVNode("dt",null,r.toDisplayString(r.unref(i)("inspector.etag")),1),r.createElementVNode("dd",$3,[r.createElementVNode("span",{class:"fe-inspector__path",title:f.value},r.toDisplayString(w(f.value)),9,V3),r.createElementVNode("button",{type:"button",class:"fe-inspector__copy",title:r.unref(i)("inspector.copy"),"aria-label":r.unref(i)("inspector.copy"),onClick:me[2]||(me[2]=we=>m(f.value))},"⧉",8,U3)])])):r.createCommentVNode("",!0)])],64)):(r.openBlock(),r.createElementBlock("div",H3,[r.createElementVNode("span",{class:"fe-inspector__bigicon",innerHTML:r.unref(ti)({type:"dir"})},null,8,G3),r.createElementVNode("p",{class:"fe-inspector__name",title:e.dirLabel},r.toDisplayString(e.dirLabel),9,q3),r.createElementVNode("p",K3,r.toDisplayString(r.unref(i)("inspector.folder_items",{n:e.dirCount})),1)]))]),S.value==="ok"||S.value==="error"?(r.openBlock(),r.createElementBlock("section",W3,[r.createElementVNode("h3",Y3,r.toDisplayString(r.unref(i)("inspector.section.versions")),1),S.value==="error"?(r.openBlock(),r.createElementBlock("p",j3,r.toDisplayString(r.unref(i)("inspector.error")),1)):(r.openBlock(),r.createElementBlock(r.Fragment,{key:1},[A.value.length===0?(r.openBlock(),r.createElementBlock("p",X3,r.toDisplayString(r.unref(i)("inspector.versions.empty")),1)):(r.openBlock(),r.createElementBlock("ul",Z3,[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(A.value,we=>(r.openBlock(),r.createElementBlock("li",{key:we.id,class:"fe-inspector__version"},[r.createElementVNode("div",J3,[r.createElementVNode("span",Q3,r.toDisplayString(r.unref(i)("inspector.versions.v",{n:we.version_n})),1),r.createElementVNode("span",e5,r.toDisplayString(v(we.created_at))+" · "+r.toDisplayString(r.unref(o)(we.size)),1)]),T.value===we.id?(r.openBlock(),r.createElementBlock("div",t5,[r.createElementVNode("p",n5,r.toDisplayString(r.unref(i)("inspector.versions.restore_confirm")),1),r.createElementVNode("label",r5,[r.withDirectives(r.createElementVNode("input",{"onUpdate:modelValue":me[3]||(me[3]=Se=>E.value=Se),type:"checkbox"},null,512),[[r.vModelCheckbox,E.value]]),r.createTextVNode(" "+r.toDisplayString(r.unref(i)("inspector.versions.snapshot_current")),1)]),r.createElementVNode("div",a5,[r.createElementVNode("button",{type:"button",class:"fe-btn fe-btn--primary fe-btn--sm",disabled:k.value,onClick:Se=>$(we)},r.toDisplayString(r.unref(i)("inspector.versions.confirm")),9,i5),r.createElementVNode("button",{type:"button",class:"fe-btn fe-btn--sm",disabled:k.value,onClick:me[4]||(me[4]=Se=>T.value=null)},r.toDisplayString(r.unref(i)("inspector.versions.cancel")),9,o5)])])):(r.openBlock(),r.createElementBlock("button",{key:1,type:"button",class:"fe-btn fe-btn--sm",disabled:k.value,onClick:Se=>X(we)},r.toDisplayString(r.unref(i)("inspector.versions.restore")),9,l5))]))),128))])),r.createElementVNode("button",{type:"button",class:"fe-btn fe-btn--sm fe-inspector__snapshot",disabled:k.value,onClick:j},r.toDisplayString(r.unref(i)("inspector.versions.take_snapshot")),9,s5)],64))])):r.createCommentVNode("",!0),l.value&&b.value?(r.openBlock(),r.createElementBlock("section",c5,[r.createElementVNode("h3",d5,r.toDisplayString(r.unref(i)("inspector.section.permissions")),1),r.createElementVNode("div",u5,[r.createElementVNode("span",{class:r.normalizeClass(["fe-inspector__badge",`fe-inspector__badge--${b.value}`])},r.toDisplayString(_(b.value)),3),y.value?(r.openBlock(),r.createElementBlock("button",{key:0,type:"button",class:"fe-btn fe-btn--sm",onClick:me[5]||(me[5]=we=>a("manage-permissions",l.value))},r.toDisplayString(r.unref(i)("inspector.perm.manage")),1)):r.createCommentVNode("",!0)])])):r.createCommentVNode("",!0),N.value==="ok"?(r.openBlock(),r.createElementBlock("section",f5,[r.createElementVNode("h3",h5,r.toDisplayString(r.unref(i)("inspector.section.shares")),1),D.value.length===0?(r.openBlock(),r.createElementBlock("p",p5,r.toDisplayString(r.unref(i)("inspector.shares.empty")),1)):(r.openBlock(),r.createElementBlock("ul",m5,[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(D.value,we=>(r.openBlock(),r.createElementBlock("li",{key:we.uuid,class:"fe-inspector__share"},[r.createElementVNode("span",{class:"fe-inspector__share-url",title:we.url},r.toDisplayString(we.url),9,g5),we.password_pin?(r.openBlock(),r.createElementBlock("span",b5,"PIN")):r.createCommentVNode("",!0),we.expires_at?(r.openBlock(),r.createElementBlock("span",v5,r.toDisplayString(v(we.expires_at)),1)):r.createCommentVNode("",!0),r.createElementVNode("button",{type:"button",class:"fe-inspector__copy",title:r.unref(i)("inspector.shares.copy"),"aria-label":r.unref(i)("inspector.shares.copy"),onClick:Se=>m(we.url)},"⧉",8,y5)]))),128))]))])):r.createCommentVNode("",!0),J.value==="ok"||J.value==="error"?(r.openBlock(),r.createElementBlock("section",_5,[r.createElementVNode("h3",w5,[r.createTextVNode(r.toDisplayString(r.unref(i)("inspector.section.comments"))+" ",1),V.value.length>0?(r.openBlock(),r.createElementBlock("span",k5,r.toDisplayString(V.value.length),1)):r.createCommentVNode("",!0)]),J.value==="error"?(r.openBlock(),r.createElementBlock("p",E5,r.toDisplayString(r.unref(i)("inspector.error")),1)):(r.openBlock(),r.createElementBlock(r.Fragment,{key:1},[V.value.length===0?(r.openBlock(),r.createElementBlock("p",x5,r.toDisplayString(r.unref(i)("inspector.comments.empty")),1)):(r.openBlock(),r.createElementBlock("ul",S5,[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(V.value,we=>(r.openBlock(),r.createElementBlock("li",{key:we.id,class:"fe-inspector__comment"},[r.createElementVNode("div",C5,[r.createElementVNode("span",{class:"fe-inspector__comment-author",title:we.author_name},r.toDisplayString(we.author_name||"—"),9,N5),r.createElementVNode("span",{class:"fe-inspector__comment-time",title:v(we.created_at)},r.toDisplayString(Ee(we.created_at)),9,T5),we.can_delete?(r.openBlock(),r.createElementBlock("button",{key:0,type:"button",class:"fe-inspector__comment-del",disabled:I.value,title:r.unref(i)("inspector.comments.delete"),"aria-label":r.unref(i)("inspector.comments.delete"),onClick:Se=>ve(we)},"×",8,A5)):r.createCommentVNode("",!0)]),r.createElementVNode("p",D5,r.toDisplayString(we.body),1)]))),128))])),r.createElementVNode("form",{class:"fe-inspector__comment-form",onSubmit:r.withModifiers(de,["prevent"])},[r.withDirectives(r.createElementVNode("input",{"onUpdate:modelValue":me[6]||(me[6]=we=>F.value=we),type:"text",class:"fe-inspector__comment-input",maxlength:"5000",placeholder:r.unref(i)("inspector.comments.placeholder"),"aria-label":r.unref(i)("inspector.comments.placeholder"),disabled:I.value},null,8,M5),[[r.vModelText,F.value]]),r.createElementVNode("button",{type:"submit",class:"fe-btn fe-btn--primary fe-btn--sm",disabled:I.value||F.value.trim()===""},r.toDisplayString(r.unref(i)("inspector.comments.send")),9,B5)],32)],64))])):r.createCommentVNode("",!0)])],10,g3))}}),I5=["aria-label"],R5={class:"fe-cmdp__inputwrap"},L5=["placeholder"],F5=["aria-selected","onMouseenter","onClick"],z5={class:"fe-cmdp__icon","aria-hidden":"true"},P5={class:"fe-cmdp__label"},$5={class:"fe-cmdp__group"},V5=["aria-selected","onMouseenter","onClick"],U5={class:"fe-cmdp__icon","aria-hidden":"true"},H5={class:"fe-cmdp__label"},G5={class:"fe-cmdp__group"},q5={key:0,class:"fe-cmdp__loading"},K5=["aria-selected","onMouseenter","onClick"],W5={class:"fe-cmdp__icon","aria-hidden":"true"},Y5={class:"fe-cmdp__hitbody"},j5={class:"fe-cmdp__hitline"},X5={class:"fe-cmdp__label"},Z5={key:0,class:"fe-cmdp__badge"},J5=["title"],Q5={key:1,class:"fe-cmdp__snippet"},e6={key:0,class:"fe-cmdp__mark"},t6={class:"fe-cmdp__group"},n6=["aria-selected","onMouseenter","onClick","onKeydown"],r6={class:"fe-cmdp__icon","aria-hidden":"true"},a6={class:"fe-cmdp__label"},i6=["title","aria-label","onClick"],o6={class:"fe-cmdp__group"},l6=["aria-selected","onMouseenter","onClick"],s6={class:"fe-cmdp__icon","aria-hidden":"true"},c6={class:"fe-cmdp__label"},d6={key:4,class:"fe-cmdp__empty"},u6={class:"fe-cmdp__hint"},f6=3,h6=8,p6=250,Ef="filex.saved-searches",xf=10,m6=r.defineComponent({__name:"CommandPalette",props:{open:{type:Boolean},locale:{},files:{},viewMode:{},canWrite:{type:Boolean},canGoUp:{type:Boolean},globalSearch:{type:Function},splitEnabled:{type:Boolean}},emits:["close","open-node","navigate","new-folder","upload","toggle-view","open-trash","refresh","go-up","open-hit","open-theme","open-shortcut-settings","start-tour","tab-new","split-toggle"],setup(e,{emit:t}){const n=e,a=t,{t:i,nodeDisplayName:o}=qt(()=>n.locale),s=r.ref(""),l=r.ref(0),c=r.ref(null),d=r.ref(null);function u(V,F){if(!F)return 0;const I=V.toLocaleLowerCase(),H=F.toLocaleLowerCase(),G=I.indexOf(H);if(G===-1)return-1;let oe=100-Math.min(G,50);return G===0&&(oe+=40),oe-=Math.min(I.length,40)/4,oe}const h=r.computed(()=>{const V=s.value.trim();if(!V.includes("/"))return[];const F=V.replace(/^\/+|\/+$/g,"");return F?[{kind:"goto",id:`goto:${F}`,label:`${i("palette.goto")}: ${F}`,icon:"➜",path:F}]:[]}),f=r.computed(()=>{const V=s.value.trim(),F=n.files.map(I=>({f:I,name:o(I),s:u(o(I),V)})).filter(I=>I.s>=0);return V&&F.sort((I,H)=>H.s-I.s),F.slice(0,8).map(I=>({kind:"file",id:`file:${I.f.path}`,label:I.name,icon:I.f.type==="dir"?"📁":"📄",node:I.f}))}),p=r.computed(()=>{const V=s.value.trim();return[{command:"new-folder",label:i("toolbar.new_folder"),icon:"📁",enabled:n.canWrite!==!1},{command:"upload",label:i("toolbar.upload"),icon:"⬆",enabled:n.canWrite!==!1},{command:"toggle-view",label:i("cmd.view_toggle"),icon:n.viewMode==="list"?"▦":n.viewMode==="grid"?"▣":"☰",enabled:!0},{command:"open-trash",label:i("cmd.trash"),icon:"🗑",enabled:!0},{command:"refresh",label:i("toolbar.refresh"),icon:"⟳",enabled:!0},{command:"go-up",label:i("toolbar.go_up"),icon:"↑",enabled:n.canGoUp!==!1},{command:"open-theme",label:i("theme.menu"),icon:"🎨",enabled:!0},{command:"open-shortcut-settings",label:i("shortcuts.settings.menu"),icon:"⌨",enabled:!0},{command:"start-tour",label:i("tour.restart"),icon:"🎓",enabled:!0},{command:"tab-new",label:i("cmd.tab_new"),icon:"⧉",enabled:!0},{command:"split-toggle",label:i("cmd.split_toggle"),icon:"◫",enabled:n.splitEnabled!==!1}].filter(I=>I.enabled&&u(I.label,V)>=0).map(I=>({kind:"command",id:`cmd:${I.command}`,label:I.label,icon:I.icon,command:I.command}))}),w=r.ref([]),g=r.ref(!1);let v,m=0;function b(V){v&&clearTimeout(v);const F=n.globalSearch;if(!F||V.length<f6){w.value=[],g.value=!1;return}g.value=!0,v=setTimeout(async()=>{const I=++m;try{const H=await F(V);if(I!==m)return;w.value=Array.isArray(H)?H.slice(0,h6):[]}catch{I===m&&(w.value=[])}finally{I===m&&(g.value=!1)}},p6)}function y(V){const F=String(V.path??"").replace(/^\/+|\/+$/g,""),I=F.lastIndexOf("/"),H=I===-1?"":F.slice(0,I),G=typeof V.storage=="string"&&V.storage||typeof V.storage_name=="string"&&V.storage_name||"";return G&&H?`${G}/${H}`:G||H||"/"}const _=r.computed(()=>w.value.map(V=>({kind:"hit",id:`hit:${V.storage_id??""}:${V.path??""}:${V.id??""}`,label:String(V.name??V.path??""),icon:V.type==="dir"?"📁":"📄",hit:V,crumb:y(V),inContent:ic(V.matched),snippet:typeof V.snippet=="string"?V.snippet:""}))),S=r.ref([]);function A(){try{const V=localStorage.getItem(Ef);if(!V)return[];const F=JSON.parse(V);return Array.isArray(F)?F.filter(I=>typeof I=="string"&&I.trim()!=="").slice(0,xf):[]}catch{return[]}}function T(V){S.value=V.slice(0,xf);try{localStorage.setItem(Ef,JSON.stringify(S.value))}catch{}}function E(V){const F=V.trim();if(!F)return;const I=S.value.filter(H=>H!==F);I.unshift(F),T(I)}function k(V){T(S.value.filter(F=>F!==V)),l.value>=D.value.length&&(l.value=Math.max(0,D.value.length-1))}const N=r.computed(()=>{const V=s.value.trim(),F=[];V&&!S.value.includes(V)&&F.push({kind:"save",id:`save:${V}`,label:`${i("palette.save")}: ${V}`,icon:"💾",query:V});const I=S.value.map(H=>({s:H,sc:u(H,V)})).filter(H=>H.sc>=0||!V);for(const H of I)F.push({kind:"saved",id:`saved:${H.s}`,label:H.s,icon:"🔖",query:H.s});return F}),D=r.computed(()=>[...h.value,...f.value,..._.value,...N.value,...p.value]),U=r.computed(()=>h.value.length),L=r.computed(()=>U.value+f.value.length),q=r.computed(()=>L.value+_.value.length),X=r.computed(()=>q.value+N.value.length);r.watch(s,V=>{l.value=0,b(V.trim())});function $(V){const F=D.value.length;F&&(l.value=(l.value+V+F)%F,r.nextTick(()=>{var I,H;(H=(I=d.value)==null?void 0:I.querySelector(".is-active"))==null||H.scrollIntoView({block:"nearest"})}))}function j(V){const F=V??D.value[l.value];if(F){if(F.kind==="saved"){s.value=F.query,r.nextTick(()=>{var I;return(I=c.value)==null?void 0:I.focus()});return}if(F.kind==="save"){E(F.query),r.nextTick(()=>{var I;return(I=c.value)==null?void 0:I.focus()});return}if(a("close"),F.kind==="hit"){a("open-hit",F.hit);return}if(F.kind==="file")a("open-node",F.node);else if(F.kind==="goto")a("navigate",F.path);else switch(F.command){case"new-folder":a("new-folder");break;case"upload":a("upload");break;case"toggle-view":a("toggle-view");break;case"open-trash":a("open-trash");break;case"refresh":a("refresh");break;case"go-up":a("go-up");break;case"open-theme":a("open-theme");break;case"open-shortcut-settings":a("open-shortcut-settings");break;case"start-tour":a("start-tour");break;case"tab-new":a("tab-new");break;case"split-toggle":a("split-toggle");break}}}function J(V){if(n.open)switch(V.key){case"ArrowDown":V.preventDefault(),V.stopPropagation(),$(1);break;case"ArrowUp":V.preventDefault(),V.stopPropagation(),$(-1);break;case"Enter":V.preventDefault(),V.stopPropagation(),j();break;case"Escape":V.preventDefault(),V.stopPropagation(),a("close");break}}return r.watch(()=>n.open,V=>{V?(s.value="",l.value=0,w.value=[],g.value=!1,S.value=A(),document.addEventListener("keydown",J,!0),r.nextTick(()=>{var F;return(F=c.value)==null?void 0:F.focus()})):(v&&clearTimeout(v),document.removeEventListener("keydown",J,!0))}),r.onBeforeUnmount(()=>{v&&clearTimeout(v),document.removeEventListener("keydown",J,!0)}),(V,F)=>(r.openBlock(),r.createBlock(r.Transition,{name:"fe-modal"},{default:r.withCtx(()=>[e.open?(r.openBlock(),r.createElementBlock("div",{key:0,class:"fe-modal__backdrop fe-cmdp__backdrop",role:"presentation",onClick:F[2]||(F[2]=I=>a("close"))},[r.createElementVNode("div",{class:"fe-cmdp",role:"dialog","aria-modal":"true","aria-label":r.unref(i)("palette.placeholder"),onClick:F[1]||(F[1]=r.withModifiers(()=>{},["stop"]))},[r.createElementVNode("div",R5,[F[3]||(F[3]=r.createElementVNode("svg",{class:"fe-cmdp__glyph",width:"16",height:"16",viewBox:"0 0 16 16",fill:"none",stroke:"currentColor","stroke-width":"1.5","stroke-linecap":"round","aria-hidden":"true"},[r.createElementVNode("circle",{cx:"7",cy:"7",r:"4.5"}),r.createElementVNode("path",{d:"m10.5 10.5 3.5 3.5"})],-1)),r.withDirectives(r.createElementVNode("input",{ref_key:"inputEl",ref:c,"onUpdate:modelValue":F[0]||(F[0]=I=>s.value=I),type:"text",class:"fe-cmdp__input",placeholder:r.unref(i)("palette.placeholder"),autocomplete:"off",spellcheck:"false"},null,8,L5),[[r.vModelText,s.value]])]),r.createElementVNode("div",{ref_key:"listEl",ref:d,class:"fe-cmdp__list",role:"listbox"},[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(h.value,(I,H)=>(r.openBlock(),r.createElementBlock("button",{key:I.id,type:"button",class:r.normalizeClass(["fe-cmdp__item",{"is-active":H===l.value}]),role:"option","aria-selected":H===l.value,onMouseenter:G=>l.value=H,onClick:G=>j(I)},[r.createElementVNode("span",z5,r.toDisplayString(I.icon),1),r.createElementVNode("span",P5,r.toDisplayString(I.label),1)],42,F5))),128)),f.value.length?(r.openBlock(),r.createElementBlock(r.Fragment,{key:0},[r.createElementVNode("div",$5,r.toDisplayString(r.unref(i)("palette.files")),1),(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(f.value,(I,H)=>(r.openBlock(),r.createElementBlock("button",{key:I.id,type:"button",class:r.normalizeClass(["fe-cmdp__item",{"is-active":U.value+H===l.value}]),role:"option","aria-selected":U.value+H===l.value,onMouseenter:G=>l.value=U.value+H,onClick:G=>j(I)},[r.createElementVNode("span",U5,r.toDisplayString(I.icon),1),r.createElementVNode("span",H5,r.toDisplayString(I.label),1)],42,V5))),128))],64)):r.createCommentVNode("",!0),_.value.length||g.value?(r.openBlock(),r.createElementBlock(r.Fragment,{key:1},[r.createElementVNode("div",G5,r.toDisplayString(r.unref(i)("palette.everywhere")),1),g.value&&!_.value.length?(r.openBlock(),r.createElementBlock("div",q5,r.toDisplayString(r.unref(i)("palette.searching")),1)):r.createCommentVNode("",!0),(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(_.value,(I,H)=>(r.openBlock(),r.createElementBlock("button",{key:I.id,type:"button",class:r.normalizeClass(["fe-cmdp__item fe-cmdp__item--hit",{"is-active":L.value+H===l.value}]),role:"option","aria-selected":L.value+H===l.value,onMouseenter:G=>l.value=L.value+H,onClick:G=>j(I)},[r.createElementVNode("span",W5,r.toDisplayString(I.icon),1),r.createElementVNode("span",Y5,[r.createElementVNode("span",j5,[r.createElementVNode("span",X5,r.toDisplayString(I.label),1),I.inContent?(r.openBlock(),r.createElementBlock("span",Z5,r.toDisplayString(r.unref(i)("search.in_content")),1)):r.createCommentVNode("",!0)]),I.crumb?(r.openBlock(),r.createElementBlock("span",{key:0,class:"fe-cmdp__crumb",title:I.crumb},r.toDisplayString(I.crumb),9,J5)):r.createCommentVNode("",!0),I.snippet?(r.openBlock(),r.createElementBlock("span",Q5,[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(r.unref(Ji)(I.snippet),(G,oe)=>(r.openBlock(),r.createElementBlock(r.Fragment,{key:oe},[G.match?(r.openBlock(),r.createElementBlock("mark",e6,r.toDisplayString(G.text),1)):(r.openBlock(),r.createElementBlock(r.Fragment,{key:1},[r.createTextVNode(r.toDisplayString(G.text),1)],64))],64))),128))])):r.createCommentVNode("",!0)])],42,K5))),128))],64)):r.createCommentVNode("",!0),N.value.length?(r.openBlock(),r.createElementBlock(r.Fragment,{key:2},[r.createElementVNode("div",t6,r.toDisplayString(r.unref(i)("palette.saved")),1),(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(N.value,(I,H)=>(r.openBlock(),r.createElementBlock("div",{key:I.id,class:r.normalizeClass(["fe-cmdp__item fe-cmdp__item--saved",{"is-active":q.value+H===l.value}]),role:"option","aria-selected":q.value+H===l.value,tabindex:"-1",onMouseenter:G=>l.value=q.value+H,onClick:G=>j(I),onKeydown:r.withKeys(r.withModifiers(G=>j(I),["prevent"]),["enter"])},[r.createElementVNode("span",r6,r.toDisplayString(I.icon),1),r.createElementVNode("span",a6,r.toDisplayString(I.label),1),I.kind==="saved"?(r.openBlock(),r.createElementBlock("button",{key:0,type:"button",class:"fe-cmdp__del",title:r.unref(i)("palette.saved.delete"),"aria-label":r.unref(i)("palette.saved.delete"),onClick:r.withModifiers(G=>k(I.query),["stop"])},"🗑",8,i6)):r.createCommentVNode("",!0)],42,n6))),128))],64)):r.createCommentVNode("",!0),p.value.length?(r.openBlock(),r.createElementBlock(r.Fragment,{key:3},[r.createElementVNode("div",o6,r.toDisplayString(r.unref(i)("palette.commands")),1),(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(p.value,(I,H)=>(r.openBlock(),r.createElementBlock("button",{key:I.id,type:"button",class:r.normalizeClass(["fe-cmdp__item",{"is-active":X.value+H===l.value}]),role:"option","aria-selected":X.value+H===l.value,onMouseenter:G=>l.value=X.value+H,onClick:G=>j(I)},[r.createElementVNode("span",s6,r.toDisplayString(I.icon),1),r.createElementVNode("span",c6,r.toDisplayString(I.label),1)],42,l6))),128))],64)):r.createCommentVNode("",!0),D.value.length===0&&!g.value?(r.openBlock(),r.createElementBlock("div",d6,r.toDisplayString(r.unref(i)("palette.empty")),1)):r.createCommentVNode("",!0)],512),r.createElementVNode("div",u6,r.toDisplayString(r.unref(i)("palette.hint")),1)],8,I5)])):r.createCommentVNode("",!0)]),_:1}))}}),g6=["aria-labelledby","aria-label"],b6={key:0,class:"fe-modal__head"},v6={class:"fe-modal__body"},y6={key:1,class:"fe-modal__actions"},Sf='input:not([disabled]),select:not([disabled]),textarea:not([disabled]),button:not([disabled]),a[href],[tabindex]:not([tabindex="-1"])',$r=r.defineComponent({__name:"Modal",props:{open:{type:Boolean},title:{},size:{},closeOnBackdrop:{type:Boolean},chromeless:{type:Boolean},theme:{}},emits:["close"],setup(e,{emit:t}){const n=e,a=t,i=r.ref(null);let o=0;const s=`fe-modal-title-${++o}-${Math.random().toString(36).slice(2,7)}`;let l=null;r.watch(()=>n.open,u=>{var h;u?(l=document.activeElement??null,document.addEventListener("keydown",c),setTimeout(()=>{var p;const f=(p=i.value)==null?void 0:p.querySelector(Sf);f==null||f.focus()},30)):(document.removeEventListener("keydown",c),(h=l==null?void 0:l.focus)==null||h.call(l),l=null)}),r.onBeforeUnmount(()=>document.removeEventListener("keydown",c));function c(u){if(u.key==="Escape"){a("close");return}if(u.key==="Tab"&&i.value){const h=Array.from(i.value.querySelectorAll(Sf)).filter(g=>g.offsetParent!==null||g===document.activeElement);if(h.length===0)return;const f=h[0],p=h[h.length-1],w=document.activeElement;u.shiftKey&&(w===f||!i.value.contains(w))?(u.preventDefault(),p.focus()):!u.shiftKey&&(w===p||!i.value.contains(w))&&(u.preventDefault(),f.focus())}}function d(){n.closeOnBackdrop!==!1&&a("close")}return(u,h)=>(r.openBlock(),r.createBlock(r.Transition,{name:"fe-modal"},{default:r.withCtx(()=>[e.open?(r.openBlock(),r.createElementBlock("div",{key:0,class:r.normalizeClass(["fe fe-modal__backdrop",[{"fe-modal__backdrop--chromeless":e.chromeless},e.theme==="light"?"fe--theme-light":"",e.theme==="dark"?"fe--theme-dark":""]]),role:"presentation",onClick:d},[r.createElementVNode("div",{ref_key:"cardEl",ref:i,class:r.normalizeClass(["fe-modal__card",[`fe-modal__card--${e.size||"md"}`,e.chromeless&&"fe-modal__card--chromeless"]]),role:"dialog","aria-modal":"true","aria-labelledby":e.title&&!e.chromeless?s:void 0,"aria-label":(!e.title||e.chromeless)&&e.title||void 0,onClick:h[1]||(h[1]=r.withModifiers(()=>{},["stop"]))},[e.title&&!e.chromeless?(r.openBlock(),r.createElementBlock("header",b6,[r.createElementVNode("h2",{id:s,class:"fe-modal__title"},r.toDisplayString(e.title),1),r.createElementVNode("button",{type:"button",class:"fe-modal__close","aria-label":"Close",onClick:h[0]||(h[0]=f=>a("close"))},"×")])):r.createCommentVNode("",!0),r.createElementVNode("div",v6,[r.renderSlot(u.$slots,"default")]),u.$slots.actions&&!e.chromeless?(r.openBlock(),r.createElementBlock("footer",y6,[r.renderSlot(u.$slots,"actions")])):r.createCommentVNode("",!0)],10,g6)],2)):r.createCommentVNode("",!0)]),_:3}))}}),_6={class:"fe-shortcuts"},w6={class:"fe-shortcuts__heading"},k6={class:"fe-shortcuts__table"},E6={class:"fe-shortcuts__keys"},x6={key:0,class:"fe-shortcuts__unbound"},S6={class:"fe-kbd"},C6={key:0,class:"fe-shortcuts__or","aria-hidden":"true"},N6={class:"fe-shortcuts__desc"},T6=["title"],A6=r.defineComponent({__name:"ShortcutsHelp",props:{open:{type:Boolean},locale:{}},emits:["close","customize"],setup(e,{emit:t}){const n=e,a=t,{t:i}=qt(()=>n.locale),o=tc(),s=r.computed(()=>{const l=[],c=new Map;for(const d of o.value)c.has(d.groupKey)||(c.set(d.groupKey,[]),l.push(d.groupKey)),c.get(d.groupKey).push(d);return l.map(d=>({key:d,items:c.get(d)}))});return(l,c)=>(r.openBlock(),r.createBlock($r,{open:e.open,title:r.unref(i)("shortcuts.title"),size:"md",onClose:c[2]||(c[2]=d=>a("close"))},{actions:r.withCtx(()=>[r.createElementVNode("button",{type:"button",class:"fe-btn fe-btn--primary",onClick:c[0]||(c[0]=d=>a("customize"))}," ⌨ "+r.toDisplayString(r.unref(i)("shortcuts.customize")),1),r.createElementVNode("button",{type:"button",class:"fe-btn",onClick:c[1]||(c[1]=d=>a("close"))},r.toDisplayString(r.unref(i)("viewer.close")),1)]),default:r.withCtx(()=>[r.createElementVNode("div",_6,[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(s.value,d=>(r.openBlock(),r.createElementBlock("section",{key:d.key,class:"fe-shortcuts__group"},[r.createElementVNode("h3",w6,r.toDisplayString(r.unref(i)(d.key)),1),r.createElementVNode("div",k6,[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(d.items,u=>(r.openBlock(),r.createElementBlock("div",{key:u.id,class:"fe-shortcuts__row"},[r.createElementVNode("span",E6,[u.keys.length===0?(r.openBlock(),r.createElementBlock("span",x6,r.toDisplayString(r.unref(i)("shortcuts.settings.unbound")),1)):(r.openBlock(!0),r.createElementBlock(r.Fragment,{key:1},r.renderList(u.keys,(h,f)=>(r.openBlock(),r.createElementBlock(r.Fragment,{key:h},[r.createElementVNode("kbd",S6,r.toDisplayString(h),1),f<u.keys.length-1?(r.openBlock(),r.createElementBlock("span",C6,"/")):r.createCommentVNode("",!0)],64))),128))]),r.createElementVNode("span",N6,[r.createTextVNode(r.toDisplayString(r.unref(i)(u.labelKey))+" ",1),u.overridden?(r.openBlock(),r.createElementBlock("span",{key:0,class:"fe-shortcuts__custom",title:r.unref(i)("shortcuts.settings.customized")},"●",8,T6)):r.createCommentVNode("",!0)])]))),128))])]))),128))])]),_:1},8,["open","title"]))}}),Qi="filex.theme",ur="default",il=[{id:ur,nameKey:"theme.name.default",light:{"--fe-bg":"#ffffff","--fe-bg-elev":"#f7f8fa","--fe-bg-hover":"#edf0f5","--fe-bg-selected":"#dfe8ff","--fe-border":"#e2e6ed","--fe-border-strong":"#c7ced9","--fe-text":"#1a1e27","--fe-text-muted":"#5a6475","--fe-text-on-primary":"#ffffff","--fe-primary":"#3b82f6","--fe-primary-hover":"#2563eb","--fe-danger":"#dc2626","--fe-danger-hover":"#b91c1c"},dark:{"--fe-bg":"#0f1419","--fe-bg-elev":"#161c25","--fe-bg-hover":"#1f2733","--fe-bg-selected":"#23324a","--fe-border":"#2a323e","--fe-border-strong":"#3a4453","--fe-text":"#e5e9f0","--fe-text-muted":"#8b95a7","--fe-text-on-primary":"#ffffff","--fe-primary":"#60a5fa","--fe-primary-hover":"#3b82f6","--fe-danger":"#f87171","--fe-danger-hover":"#ef4444"}},{id:"night",nameKey:"theme.name.night",light:{"--fe-bg":"#f6f8fd","--fe-bg-elev":"#edf1fa","--fe-bg-hover":"#e2e9f7","--fe-bg-selected":"#d2ddf4","--fe-border":"#d6deee","--fe-border-strong":"#aebfda","--fe-text":"#151f38","--fe-text-muted":"#49587a","--fe-text-on-primary":"#ffffff","--fe-primary":"#2c4a9e","--fe-primary-hover":"#213a80","--fe-danger":"#c62828","--fe-danger-hover":"#a51f1f"},dark:{"--fe-bg":"#0a1024","--fe-bg-elev":"#111a35","--fe-bg-hover":"#1a2547","--fe-bg-selected":"#243665","--fe-border":"#26335a","--fe-border-strong":"#3c4e84","--fe-text":"#dfe6f7","--fe-text-muted":"#96a5cc","--fe-text-on-primary":"#050b26","--fe-primary":"#6d8dfc","--fe-primary-hover":"#5273f2","--fe-danger":"#f87171","--fe-danger-hover":"#ef4444"}},{id:"forest",nameKey:"theme.name.forest",light:{"--fe-bg":"#f5faf5","--fe-bg-elev":"#eaf3eb","--fe-bg-hover":"#dcecdf","--fe-bg-selected":"#c8e2ce","--fe-border":"#d2e2d4","--fe-border-strong":"#a2c3a8","--fe-text":"#182b1d","--fe-text-muted":"#42604a","--fe-text-on-primary":"#ffffff","--fe-primary":"#2b7a41","--fe-primary-hover":"#226334","--fe-danger":"#c62828","--fe-danger-hover":"#a51f1f"},dark:{"--fe-bg":"#0d1611","--fe-bg-elev":"#132019","--fe-bg-hover":"#1b2d23","--fe-bg-selected":"#264532","--fe-border":"#28402f","--fe-border-strong":"#3e5f49","--fe-text":"#dcebe0","--fe-text-muted":"#93b09b","--fe-text-on-primary":"#04180b","--fe-primary":"#54c17a","--fe-primary-hover":"#3fae66","--fe-danger":"#f87171","--fe-danger-hover":"#ef4444"}},{id:"amber",nameKey:"theme.name.amber",light:{"--fe-bg":"#fdf9f0","--fe-bg-elev":"#f7efdd","--fe-bg-hover":"#f0e3c8","--fe-bg-selected":"#ead6ab","--fe-border":"#e6dabf","--fe-border-strong":"#c6b184","--fe-text":"#33270f","--fe-text-muted":"#655631","--fe-text-on-primary":"#ffffff","--fe-primary":"#9a4b00","--fe-primary-hover":"#7c3c00","--fe-danger":"#c62828","--fe-danger-hover":"#a51f1f"},dark:{"--fe-bg":"#191307","--fe-bg-elev":"#231a0c","--fe-bg-hover":"#2f2312","--fe-bg-selected":"#44331b","--fe-border":"#3b2e17","--fe-border-strong":"#5b4a29","--fe-text":"#f2e7d4","--fe-text-muted":"#bda887","--fe-text-on-primary":"#2a1c02","--fe-primary":"#f5a524","--fe-primary-hover":"#ffb84d","--fe-danger":"#f87171","--fe-danger-hover":"#ef4444"}},{id:"lilac",nameKey:"theme.name.lilac",light:{"--fe-bg":"#faf7fd","--fe-bg-elev":"#f2ecfa","--fe-bg-hover":"#e8ddf5","--fe-bg-selected":"#dccaf0","--fe-border":"#e1d6ee","--fe-border-strong":"#bda6d9","--fe-text":"#241a33","--fe-text-muted":"#584871","--fe-text-on-primary":"#ffffff","--fe-primary":"#7231e0","--fe-primary-hover":"#5f21c4","--fe-danger":"#c62828","--fe-danger-hover":"#a51f1f"},dark:{"--fe-bg":"#130f1c","--fe-bg-elev":"#1b1527","--fe-bg-hover":"#261d37","--fe-bg-selected":"#37294f","--fe-border":"#302546","--fe-border-strong":"#4b3a6d","--fe-text":"#e9e2f5","--fe-text-muted":"#a999c5","--fe-text-on-primary":"#180d33","--fe-primary":"#b197fa","--fe-primary-hover":"#9c7cf4","--fe-danger":"#f87171","--fe-danger-hover":"#ef4444"}},{id:"contrast",nameKey:"theme.name.contrast",light:{"--fe-bg":"#ffffff","--fe-bg-elev":"#f2f2f2","--fe-bg-hover":"#e0e0e0","--fe-bg-selected":"#c9dcff","--fe-border":"#5c5c5c","--fe-border-strong":"#000000","--fe-text":"#000000","--fe-text-muted":"#3d3d3d","--fe-text-on-primary":"#ffffff","--fe-primary":"#003d99","--fe-primary-hover":"#002a6b","--fe-danger":"#a80000","--fe-danger-hover":"#7d0000","--fe-shadow":"0 0 0 1px #000000, 0 10px 32px rgba(0, 0, 0, 0.25)","--fe-shadow-sm":"0 0 0 1px #000000"},dark:{"--fe-bg":"#000000","--fe-bg-elev":"#0d0d0d","--fe-bg-hover":"#212121","--fe-bg-selected":"#003d80","--fe-border":"#8f8f8f","--fe-border-strong":"#ffffff","--fe-text":"#ffffff","--fe-text-muted":"#d6d6d6","--fe-text-on-primary":"#001430","--fe-primary":"#7ab8ff","--fe-primary-hover":"#9ccaff","--fe-danger":"#ff7575","--fe-danger-hover":"#ff9999","--fe-shadow":"0 0 0 1px #ffffff, 0 12px 32px rgba(0, 0, 0, 0.65)","--fe-shadow-sm":"0 0 0 1px #ffffff"}},{id:"gray",nameKey:"theme.name.gray",light:{"--fe-bg":"#f7f7f8","--fe-bg-elev":"#efeff1","--fe-bg-hover":"#e4e4e7","--fe-bg-selected":"#d6d7db","--fe-border":"#dfdfe2","--fe-border-strong":"#b9b9c0","--fe-text":"#26272b","--fe-text-muted":"#585a63","--fe-text-on-primary":"#ffffff","--fe-primary":"#4b4b54","--fe-primary-hover":"#38383f","--fe-danger":"#c62828","--fe-danger-hover":"#a51f1f"},dark:{"--fe-bg":"#131316","--fe-bg-elev":"#1b1b1f","--fe-bg-hover":"#26262b","--fe-bg-selected":"#35353c","--fe-border":"#2d2d33","--fe-border-strong":"#4a4a52","--fe-text":"#e6e6e9","--fe-text-muted":"#a4a4ad","--fe-text-on-primary":"#17171b","--fe-primary":"#b0b0ba","--fe-primary-hover":"#c4c4cd","--fe-danger":"#f87171","--fe-danger-hover":"#ef4444"}},{id:"terminal",nameKey:"theme.name.terminal",light:{"--fe-bg":"#f3f9f4","--fe-bg-elev":"#e5f2e8","--fe-bg-hover":"#d5ead9","--fe-bg-selected":"#bce3c6","--fe-border":"#cbe2d1","--fe-border-strong":"#94c2a0","--fe-text":"#0c2913","--fe-text-muted":"#31573c","--fe-text-on-primary":"#ffffff","--fe-primary":"#116b33","--fe-primary-hover":"#0c5427","--fe-danger":"#c62828","--fe-danger-hover":"#a51f1f","--fe-font":'ui-monospace, "SF Mono", Consolas, Menlo, monospace'},dark:{"--fe-bg":"#050d07","--fe-bg-elev":"#0a1710","--fe-bg-hover":"#112418","--fe-bg-selected":"#1a3a26","--fe-border":"#1c3a2a","--fe-border-strong":"#316144","--fe-text":"#4fdd8b","--fe-text-muted":"#38a668","--fe-text-on-primary":"#03180a","--fe-primary":"#25c95e","--fe-primary-hover":"#4fdd8b","--fe-danger":"#ff6b62","--fe-danger-hover":"#ff8d86","--fe-font":'ui-monospace, "SF Mono", Consolas, Menlo, monospace'}}];function ni(e){return il.find(t=>t.id===e)}const D6=Array.from(new Set(il.flatMap(e=>[...Object.keys(e.light),...Object.keys(e.dark)])));function M6(){try{const e=localStorage.getItem(Qi);return e&&ni(e)?e:ur}catch{return ur}}const lc=r.ref(typeof window>"u"?ur:M6());function Cf(e){const t=ni(e)?e:ur;lc.value=t;try{t===ur?localStorage.removeItem(Qi):localStorage.setItem(Qi,t)}catch{}}function Nf(){return{themeId:lc,setTheme:Cf}}const ol="filex.thememode",sc=["host","auto","light","dark"];function B6(){try{const e=localStorage.getItem(ol);return e&&sc.includes(e)?e:"host"}catch{return"host"}}const cc=r.ref(typeof window>"u"?"host":B6());function O6(e){const t=sc.includes(e)?e:"host";cc.value=t;try{t==="host"?localStorage.removeItem(ol):localStorage.setItem(ol,t)}catch{}}function I6(){return{themeMode:cc,setThemeMode:O6}}if(typeof window<"u")try{window.addEventListener("storage",e=>{if(e.key!==ol)return;const t=e.newValue;cc.value=t&&sc.includes(t)?t:"host"})}catch{}if(typeof window<"u")try{window.addEventListener("storage",e=>{e.key===Qi&&(lc.value=e.newValue&&ni(e.newValue)?e.newValue:ur)})}catch{}function Tf(e,t,n){for(const o of D6)e.style.removeProperty(o);if(t===ur)return;const a=ni(t);if(!a)return;const i=n?a.dark:a.light;for(const[o,s]of Object.entries(i))e.style.setProperty(o,s)}const Af="data-filex-theme";function Df(e){return Object.entries(e).map(([t,n])=>`${t}:${n};`).join("")}function Mf(e){const t=Df(e.light),n=Df(e.dark),a=[".fe--theme-dark",":root[data-theme='dark'] .fe",".fe.fe--theme-dark",":root.dark",".dark",":root.dark .fe",".dark .fe",".fe-ctx-backdrop--theme-dark",".fe-ctx-backdrop--theme-auto[data-prefers-dark='1']"].join(","),i=[".fe:not(.fe--theme-light)",".fe-ctx-backdrop--theme-auto:not(.fe-ctx-backdrop--theme-light)"].join(",");return`/* filex theme: ${e.id} */:root,.fe{${t}}${a}{${n}}@media (prefers-color-scheme: dark){${i}{${n}}}`}function Bf(e){if(typeof document>"u")return;let t=document.head.querySelector(`style[${Af}]`);const n=e===ur?void 0:ni(e);if(!n){t&&(t.textContent="");return}t?t!==document.head.lastElementChild&&document.head.appendChild(t):(t=document.createElement("style"),t.setAttribute(Af,""),document.head.appendChild(t));const a=Mf(n);t.textContent!==a&&(t.textContent=a)}const R6=["aria-label"],L6={class:"fe-thememode__label"},F6={class:"fe-thememode__seg"},z6=["aria-pressed","onClick"],P6={class:"fe-ficon",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"1.8","stroke-linecap":"round","stroke-linejoin":"round","aria-hidden":"true",focusable:"false"},$6={key:1,d:"M21 12.8A9 9 0 1 1 11.2 3a7 7 0 0 0 9.8 9.8z"},V6={class:"fe-themes__hint"},U6=["aria-label"],H6=["aria-selected","onClick"],G6={class:"fe-themecard__name"},q6=["title"],K6=["disabled"],Of=r.defineComponent({__name:"ThemeGallery",props:{open:{type:Boolean},locale:{},theme:{},dark:{type:Boolean},current:{},mode:{},hostMode:{}},emits:["close","select","mode"],setup(e,{emit:t}){const n=e,a=t,{t:i}=qt(()=>n.locale),o=[{id:"light",labelKey:"theme.mode.light"},{id:"dark",labelKey:"theme.mode.dark"},{id:"auto",labelKey:"theme.mode.auto"}],s=r.computed(()=>n.mode==="host"?n.hostMode:n.mode);function l(d){return n.dark?d.dark:d.light}const c=ur;return(d,u)=>(r.openBlock(),r.createBlock($r,{open:e.open,title:r.unref(i)("theme.title"),size:"lg",theme:e.theme,onClose:u[2]||(u[2]=h=>a("close"))},{actions:r.withCtx(()=>[r.createElementVNode("button",{type:"button",class:"fe-btn",disabled:e.current===r.unref(c),onClick:u[0]||(u[0]=h=>a("select",r.unref(c)))},r.toDisplayString(r.unref(i)("theme.reset")),9,K6),r.createElementVNode("button",{type:"button",class:"fe-btn fe-btn--primary",onClick:u[1]||(u[1]=h=>a("close"))},r.toDisplayString(r.unref(i)("theme.close")),1)]),default:r.withCtx(()=>[r.createElementVNode("div",{class:"fe-thememode",role:"group","aria-label":r.unref(i)("theme.mode.label")},[r.createElementVNode("span",L6,r.toDisplayString(r.unref(i)("theme.mode.label")),1),r.createElementVNode("div",F6,[(r.openBlock(),r.createElementBlock(r.Fragment,null,r.renderList(o,h=>r.createElementVNode("button",{key:h.id,type:"button",class:r.normalizeClass(["fe-thememode__opt",{"is-active":s.value===h.id}]),"aria-pressed":s.value===h.id,onClick:f=>a("mode",h.id)},[(r.openBlock(),r.createElementBlock("svg",P6,[h.id==="light"?(r.openBlock(),r.createElementBlock(r.Fragment,{key:0},[u[3]||(u[3]=r.createElementVNode("circle",{cx:"12",cy:"12",r:"4"},null,-1)),u[4]||(u[4]=r.createElementVNode("path",{d:"M12 2v2M12 20v2M4.9 4.9l1.4 1.4M17.7 17.7l1.4 1.4M2 12h2M20 12h2M4.9 19.1l1.4-1.4M17.7 6.3l1.4-1.4"},null,-1))],64)):h.id==="dark"?(r.openBlock(),r.createElementBlock("path",$6)):(r.openBlock(),r.createElementBlock(r.Fragment,{key:2},[u[5]||(u[5]=r.createElementVNode("circle",{cx:"12",cy:"12",r:"9"},null,-1)),u[6]||(u[6]=r.createElementVNode("path",{d:"M12 3a9 9 0 0 1 0 18z",fill:"currentColor",stroke:"none"},null,-1))],64))])),r.createElementVNode("span",null,r.toDisplayString(r.unref(i)(h.labelKey)),1)],10,z6)),64))])],8,R6),r.createElementVNode("p",V6,r.toDisplayString(r.unref(i)("theme.hint")),1),r.createElementVNode("div",{class:"fe-themes",role:"listbox","aria-label":r.unref(i)("theme.title")},[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(r.unref(il),h=>(r.openBlock(),r.createElementBlock("button",{key:h.id,type:"button",class:r.normalizeClass(["fe-themecard",{"is-selected":h.id===e.current}]),role:"option","aria-selected":h.id===e.current,style:r.normalizeStyle(l(h)),onClick:f=>a("select",h.id)},[u[7]||(u[7]=r.createElementVNode("span",{class:"fe-themecard__preview","aria-hidden":"true"},[r.createElementVNode("span",{class:"fe-themecard__topbar"},[r.createElementVNode("span",{class:"fe-themecard__chip fe-themecard__chip--primary"}),r.createElementVNode("span",{class:"fe-themecard__chip"}),r.createElementVNode("span",{class:"fe-themecard__chip fe-themecard__chip--ghost"})]),r.createElementVNode("span",{class:"fe-themecard__row"},[r.createElementVNode("span",{class:"fe-themecard__dot"}),r.createElementVNode("span",{class:"fe-themecard__line",style:{width:"62%"}})]),r.createElementVNode("span",{class:"fe-themecard__row fe-themecard__row--selected"},[r.createElementVNode("span",{class:"fe-themecard__dot fe-themecard__dot--primary"}),r.createElementVNode("span",{class:"fe-themecard__line",style:{width:"44%"}})]),r.createElementVNode("span",{class:"fe-themecard__row"},[r.createElementVNode("span",{class:"fe-themecard__dot fe-themecard__dot--muted"}),r.createElementVNode("span",{class:"fe-themecard__line fe-themecard__line--muted",style:{width:"74%"}})])],-1)),r.createElementVNode("span",G6,[r.createTextVNode(r.toDisplayString(r.unref(i)(h.nameKey))+" ",1),h.id===e.current?(r.openBlock(),r.createElementBlock("span",{key:0,class:"fe-themecard__check",title:r.unref(i)("theme.selected")},"✓",8,q6)):r.createCommentVNode("",!0)])],14,H6))),128))],8,U6)]),_:1},8,["open","title","theme"]))}}),W6={class:"fe-shortset"},Y6={class:"fe-shortset__topbar"},j6={class:"fe-shortset__hint"},X6=["disabled"],Z6={class:"fe-shortcuts__heading"},J6={class:"fe-shortset__row"},Q6={class:"fe-shortset__label"},e8=["title"],t8={class:"fe-shortset__keys"},n8={key:0,class:"fe-shortset__capture",role:"status"},r8={key:0,class:"fe-shortcuts__unbound"},a8={class:"fe-kbd"},i8={key:0,class:"fe-shortcuts__or","aria-hidden":"true"},o8={class:"fe-shortset__actions"},l8=["onClick"],s8=["title","aria-label","onClick"],c8={key:1,class:"fe-shortset__fixed"},d8={key:0,class:"fe-shortset__conflict",role:"alert"},u8={class:"fe-shortset__conflict-msg"},f8={class:"fe-kbd"},h8={class:"fe-shortset__conflict-actions"},If=r.defineComponent({__name:"ShortcutSettings",props:{open:{type:Boolean},locale:{},theme:{}},emits:["close"],setup(e,{emit:t}){const n=e,a=t,{t:i}=qt(()=>n.locale),o=tc(),s=r.computed(()=>{const _=[],S=new Map;for(const A of o.value)S.has(A.groupKey)||(S.set(A.groupKey,[]),_.push(A.groupKey)),S.get(A.groupKey).push(A);return _.map(A=>({key:A,items:S.get(A)}))}),l=r.computed(()=>o.value.some(_=>_.overridden)),c=r.ref(null),d=r.ref(null);function u(_){const S=la.find(A=>A.id===_);return S?i(S.labelKey):_}function h(_){d.value=null,c.value=_}function f(){c.value=null}function p(_,S){if(c.value=null,S===Xi(_))return;const A=af(S,_);if(A){d.value={id:_,combo:S,conflictId:A.id,fixed:A.fixed};return}Jo(_,S)}function w(){const _=d.value;!_||_.fixed||(Jo(_.conflictId,""),Jo(_.id,_.combo),d.value=null)}function g(){d.value=null}function v(_){d.value=null,nf(_)}function m(){d.value=null,c.value=null,rf()}function b(_){if(c.value){if(_.preventDefault(),_.stopPropagation(),_.key==="Escape"){f();return}const S=ec(_);if(!S)return;p(c.value,S);return}_.key==="Escape"||_.key==="Tab"||_.stopPropagation()}r.watch(()=>n.open,_=>{_?window.addEventListener("keydown",b,!0):(window.removeEventListener("keydown",b,!0),c.value=null,d.value=null)}),r.onBeforeUnmount(()=>window.removeEventListener("keydown",b,!0));function y(){if(c.value){f();return}a("close")}return(_,S)=>(r.openBlock(),r.createBlock($r,{open:e.open,title:r.unref(i)("shortcuts.settings.title"),size:"lg",theme:e.theme,onClose:y},{actions:r.withCtx(()=>[r.createElementVNode("button",{type:"button",class:"fe-btn",onClick:y},r.toDisplayString(r.unref(i)("viewer.close")),1)]),default:r.withCtx(()=>[r.createElementVNode("div",W6,[r.createElementVNode("div",Y6,[r.createElementVNode("p",j6,r.toDisplayString(r.unref(i)("shortcuts.settings.hint")),1),r.createElementVNode("button",{type:"button",class:"fe-btn fe-shortset__reset-all",disabled:!l.value,onClick:m}," ↺ "+r.toDisplayString(r.unref(i)("shortcuts.settings.reset_all")),9,X6)]),(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(s.value,A=>(r.openBlock(),r.createElementBlock("section",{key:A.key,class:"fe-shortset__group"},[r.createElementVNode("h3",Z6,r.toDisplayString(r.unref(i)(A.key)),1),(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(A.items,T=>{var E;return r.openBlock(),r.createElementBlock("div",{key:T.id,class:r.normalizeClass(["fe-shortset__item",{"is-capturing":c.value===T.id,"is-conflict":((E=d.value)==null?void 0:E.id)===T.id}])},[r.createElementVNode("div",J6,[r.createElementVNode("span",Q6,[r.createTextVNode(r.toDisplayString(r.unref(i)(T.labelKey))+" ",1),T.overridden?(r.openBlock(),r.createElementBlock("span",{key:0,class:"fe-shortcuts__custom",title:r.unref(i)("shortcuts.settings.customized")},"●",8,e8)):r.createCommentVNode("",!0)]),r.createElementVNode("span",t8,[c.value===T.id?(r.openBlock(),r.createElementBlock("span",n8,r.toDisplayString(r.unref(i)("shortcuts.settings.capture")),1)):(r.openBlock(),r.createElementBlock(r.Fragment,{key:1},[T.keys.length===0?(r.openBlock(),r.createElementBlock("span",r8,r.toDisplayString(r.unref(i)("shortcuts.settings.unbound")),1)):(r.openBlock(!0),r.createElementBlock(r.Fragment,{key:1},r.renderList(T.keys,(k,N)=>(r.openBlock(),r.createElementBlock(r.Fragment,{key:k},[r.createElementVNode("kbd",a8,r.toDisplayString(k),1),N<T.keys.length-1?(r.openBlock(),r.createElementBlock("span",i8,"/")):r.createCommentVNode("",!0)],64))),128))],64))]),r.createElementVNode("span",o8,[T.customizable?(r.openBlock(),r.createElementBlock(r.Fragment,{key:0},[c.value!==T.id?(r.openBlock(),r.createElementBlock("button",{key:0,type:"button",class:"fe-btn fe-shortset__btn",onClick:k=>h(T.id)},r.toDisplayString(r.unref(i)("shortcuts.settings.change")),9,l8)):(r.openBlock(),r.createElementBlock("button",{key:1,type:"button",class:"fe-btn fe-shortset__btn",onClick:f},r.toDisplayString(r.unref(i)("shortcuts.settings.conflict_cancel")),1)),T.overridden?(r.openBlock(),r.createElementBlock("button",{key:2,type:"button",class:"fe-btn fe-btn--icon-only fe-shortset__btn",title:r.unref(i)("shortcuts.settings.reset"),"aria-label":r.unref(i)("shortcuts.settings.reset"),onClick:k=>v(T.id)}," ↺ ",8,s8)):r.createCommentVNode("",!0)],64)):(r.openBlock(),r.createElementBlock("span",c8,r.toDisplayString(r.unref(i)("shortcuts.settings.fixed")),1))])]),d.value&&d.value.id===T.id?(r.openBlock(),r.createElementBlock("div",d8,[r.createElementVNode("span",u8,[r.createElementVNode("kbd",f8,r.toDisplayString(d.value.combo),1),r.createTextVNode(" "+r.toDisplayString(d.value.fixed?r.unref(i)("shortcuts.settings.conflict_fixed",{name:u(d.value.conflictId)}):r.unref(i)("shortcuts.settings.conflict",{name:u(d.value.conflictId)})),1)]),r.createElementVNode("span",h8,[d.value.fixed?r.createCommentVNode("",!0):(r.openBlock(),r.createElementBlock("button",{key:0,type:"button",class:"fe-btn fe-btn--danger fe-shortset__btn",onClick:w},r.toDisplayString(r.unref(i)("shortcuts.settings.conflict_take")),1)),r.createElementVNode("button",{type:"button",class:"fe-btn fe-shortset__btn",onClick:g},r.toDisplayString(r.unref(i)("shortcuts.settings.conflict_cancel")),1)])])):r.createCommentVNode("",!0)],2)}),128))]))),128))])]),_:1},8,["open","title","theme"]))}}),p8={key:0,class:"fe-preview"},m8=["src","alt"],g8=["src"],b8=["src"],v8=["data"],y8={class:"fe-preview__fallback"},_8=["href"],w8={key:0,class:"fe-preview__fallback"},k8={key:1,class:"fe-preview__fallback"},E8=["href"],x8={key:2,class:"fe-preview__md-split"},S8={class:"fe-preview__md-split-bar"},C8={key:0,class:"fe-preview__md-split-error"},N8=["disabled"],T8={class:"fe-preview__md-split-body"},A8=["onKeydown"],D8={key:0,class:"fe-preview__md-split-output fe-preview__md"},M8=["innerHTML"],B8={key:3,class:"fe-preview__fallback"},O8=["href"],I8=["innerHTML"],R8={key:5,class:"fe-preview__pre"},L8={key:0,class:"fe-preview__fallback"},F8=["href"],z8={key:1,class:"fe-preview__fallback"},P8={key:0,class:"fe-preview__fallback"},$8={key:1,class:"fe-preview__fallback"},V8=["href"],U8={key:2,class:"fe-preview__fallback"},H8=["href"],G8={key:3,class:"fe-preview__code-wrap"},q8={class:"fe-preview__code-toolbar"},K8={class:"fe-preview__code-lang"},W8={key:0,class:"fe-preview__code-status"},Y8={key:1,class:"fe-preview__code-status fe-preview__code-status--ok"},j8=["title"],X8={key:3,class:"fe-preview__code-status"},Z8=["disabled"],J8={key:0,class:"fe-preview__pre fe-preview__code hljs"},Q8=["innerHTML"],ew=["data-lang"],tw={key:0,class:"fe-preview__fallback"},nw=["href"],rw={key:8,class:"fe-preview__fallback"},aw=["href"],iw=["href"],dc=1e6,Rf="fe-onlyoffice-api-js",uc=r.defineComponent({__name:"PreviewModal",props:{open:{type:Boolean},locale:{},file:{},previewUrl:{type:Function},downloadUrl:{type:Function},onlyOfficeBase:{},onlyOfficeConfigEndpoint:{},saveTextEndpoint:{},openMode:{},authHeaders:{type:Function},authCredentials:{},drawioUrl:{},pdfWorkerUrl:{},pdfSaveUrl:{},viewerBaseUrl:{},newTabEnabled:{type:Boolean},chromeless:{type:Boolean},theme:{}},emits:["close"],setup(e,{emit:t}){const n=e,a=t,{t:i}=qt(()=>n.locale);function o(ie){return((ie==null?void 0:ie.extension)||"").toLowerCase()}const s=["jpg","jpeg","png","webp","gif","bmp","avif","svg","heic"],l=["mp4","webm","mov","mkv","m4v","ogv"],c=["mp3","wav","ogg","flac","m4a","aac","opus"],d={md:"markdown",markdown:"markdown",txt:"plaintext",log:"plaintext",js:"javascript",mjs:"javascript",cjs:"javascript",ts:"typescript",tsx:"typescript",jsx:"javascript",vue:"xml",svelte:"xml",html:"xml",htm:"xml",xml:"xml",svg:"xml",css:"css",scss:"scss",sass:"scss",less:"less",json:"json",jsonc:"json",yml:"yaml",yaml:"yaml",php:"php",py:"python",rb:"ruby",go:"go",rs:"rust",java:"java",kt:"kotlin",swift:"swift",cpp:"cpp",c:"c",h:"cpp",hpp:"cpp",cs:"csharp",dart:"dart",sh:"bash",bash:"bash",zsh:"bash",fish:"bash",sql:"sql",toml:"ini",ini:"ini",conf:"ini",env:"bash",cfg:"ini",dockerfile:"dockerfile",graphql:"graphql",gql:"graphql",diff:"diff",patch:"diff"},u=["txt","log"],h=["docx","doc","xlsx","xls","pptx","ppt","odt","ods","odp","rtf"],f={glb:()=>Promise.resolve().then(()=>oi),gltf:()=>Promise.resolve().then(()=>oi),obj:()=>Promise.resolve().then(()=>oi),stl:()=>Promise.resolve().then(()=>oi),fbx:()=>Promise.resolve().then(()=>oi),"3ds":()=>Promise.resolve().then(()=>oi),epub:()=>Promise.resolve().then(()=>DS),mmd:()=>Promise.resolve().then(()=>gp),mermaid:()=>Promise.resolve().then(()=>gp),drawio:()=>Promise.resolve().then(()=>bp),dio:()=>Promise.resolve().then(()=>bp),tif:()=>Promise.resolve().then(()=>vp),tiff:()=>Promise.resolve().then(()=>vp),psd:()=>Promise.resolve().then(()=>jS),ipynb:()=>Promise.resolve().then(()=>hC),csv:()=>Promise.resolve().then(()=>_p),tsv:()=>Promise.resolve().then(()=>_p),zip:()=>Promise.resolve().then(()=>RC)},p=r.computed(()=>{const ie=o(n.file);if(!ie)return"other";if(s.includes(ie))return"image";if(l.includes(ie))return"video";if(c.includes(ie))return"audio";if(ie==="pdf")return"pdf";const re=n.openMode!=="view";return ie==="md"||ie==="markdown"?"markdown":ie in d?"code":ie in f?"viewer":h.includes(ie)?"office":u.includes(ie)?re?"code":"text":"other"}),w=r.shallowRef(null),g=r.ref(null),v=r.ref(!1);async function m(ie){w.value=null,g.value=null;const re=f[ie];if(re)try{const ye=await re();w.value=ye.default??ye}catch(ye){g.value=ye instanceof Error?ye.message:"viewer load failed",ie==="pdf"&&(v.value=!0)}}function b(){v.value=!0}const y=r.computed(()=>{var ye;const ie=o(n.file),re={url:k.value,ext:ie,mime:(ye=n.file)==null?void 0:ye.mime_type,t:i,authHeaders:n.authHeaders,authCredentials:n.authCredentials};return n.file&&(re.filePath=D(n.file.path),(ie==="zip"||ie==="rar"||ie==="7z"||ie==="tar"||ie==="gz"||ie==="tgz")&&(re.filePath=n.file.path)),(ie==="drawio"||ie==="dio")&&(re.drawioUrl=n.drawioUrl??void 0,re.saveUrl=n.saveTextEndpoint??void 0,re.readOnly=n.openMode==="view"),ie==="pdf"&&(re.pdfWorkerUrl=n.pdfWorkerUrl??void 0,re.pdfSaveUrl=n.pdfSaveUrl??void 0),re});function _(){A(n.openMode||"edit")}function S(){A("edit")}function A(ie){if(!n.file)return;const re=o(n.file),ye=n.viewerBaseUrl||"/files/edit",te=ye.includes("?")?"&":"?",ge=`${ye}${te}path=${encodeURIComponent(n.file.path)}&type=${encodeURIComponent(re)}&mode=${encodeURIComponent(ie)}`;window.open(ge,"_blank","noopener")}const T=new Set(["docx","doc","xlsx","xls","pptx","ppt","odt","ods","odp","rtf","drawio","dio","mmd","mermaid","md","markdown","txt","log","json","jsonc","yaml","yml","xml","svg","html","htm","js","mjs","cjs","ts","tsx","jsx","vue","svelte","css","scss","sass","less","php","py","rb","go","rs","java","kt","swift","cpp","c","h","hpp","cs","dart","sh","bash","sql","toml","ini","conf","cfg","env","dockerfile","graphql","gql"]),E=r.computed(()=>!!n.file&&T.has(o(n.file))),k=r.computed(()=>n.file?n.previewUrl(n.file.path):""),N=r.computed(()=>n.file?n.downloadUrl(n.file.path):"");function D(ie){const re=ie.indexOf("://");return re===-1?ie:ie.slice(re+3)}const U=r.ref(!1),L=r.ref(null),q=r.ref(""),X=r.ref(!1),$=r.ref(!1),j=r.ref(!1);let J,V;function F(){$.value=!0,J&&clearTimeout(J),J=setTimeout(()=>{ve(q.value)},250),V&&clearTimeout(V),V=setTimeout(()=>{I()},1500)}async function I(){if(!(!n.saveTextEndpoint||!n.file||j.value)){j.value=!0,L.value=null;try{const ie={"Content-Type":"application/json",...await(n.authHeaders??(()=>({})))()},re=await fetch(n.saveTextEndpoint,{method:"POST",headers:ie,credentials:n.authCredentials||"same-origin",body:JSON.stringify({path:D(n.file.path),content:q.value})});if(!re.ok)throw new Error(`save failed: ${re.status} ${await re.text()}`);$.value=!1}catch(ie){L.value=ie instanceof Error?ie.message:String(ie)}finally{j.value=!1}}}async function H(ie){U.value=!0,L.value=null,q.value="",X.value=!1;try{const re={};n.authHeaders&&Object.assign(re,await n.authHeaders());const ye=await fetch(ie,{credentials:n.authCredentials||"same-origin",headers:re});if(!ye.ok)throw new Error(`${ye.status} ${ye.statusText}`);if(Number(ye.headers.get("content-length")||"0")>dc){X.value=!0;return}const ge=await ye.text();ge.length>dc?(X.value=!0,q.value=ge.slice(0,dc)):q.value=ge}catch(re){L.value=re instanceof Error?re.message:String(re)}finally{U.value=!1}}const G=r.ref(""),oe=r.ref(null),de=r.ref(!1);async function ve(ie){try{const re=await import("markdown-it").catch(()=>null);if(!re){G.value="",de.value=!0;return}de.value=!1;const ye=re.default??re,ge=new ye({html:!0,linkify:!0,breaks:!0,typographer:!0}).render(ie);G.value=Ee(ge),await new Promise(z=>setTimeout(z,0)),await ne()}catch(re){G.value="",L.value=re instanceof Error?re.message:String(re)}}function Ee(ie){return ie.replace(/<\s*script\b[^<]*(?:(?!<\s*\/\s*script\s*>)<[^<]*)*<\s*\/\s*script\s*>/gi,"").replace(/<\s*iframe\b[\s\S]*?<\s*\/\s*iframe\s*>/gi,"").replace(/<\s*object\b[\s\S]*?<\s*\/\s*object\s*>/gi,"").replace(/<\s*embed\b[^>]*>/gi,"").replace(/\son\w+\s*=\s*(?:"[^"]*"|'[^']*'|[^\s>]+)/gi,"").replace(/(href|src|action|formaction|xlink:href)\s*=\s*(?:"\s*javascript:[^"]*"|'\s*javascript:[^']*')/gi,'$1="#"')}async function ne(){var ge,z,Te;if(!oe.value)return;const ie=oe.value,re=Array.from(ie.querySelectorAll("pre > code"));if(re.length===0)return;let ye,te;for(const lt of re){const C=lt.className||"",_e=/\blanguage-mermaid\b/.test(C)||/\blanguage-mmd\b/.test(C),ke=/\blanguage-math\b/.test(C)||/\blanguage-latex\b/.test(C)||/\blanguage-tex\b/.test(C);if(_e){if(ye===void 0)try{const R=await import("mermaid");ye=R.default??R,(ge=ye.initialize)==null||ge.call(ye,{startOnLoad:!1,securityLevel:"strict"})}catch{ye=null}if(!ye)continue;try{const R=`filex-md-mermaid-${Math.random().toString(36).slice(2)}`,{svg:K}=await ye.render(R,lt.textContent||""),ae=document.createElement("div");ae.className="fe-preview__md-mermaid",ae.innerHTML=K,(z=lt.parentElement)==null||z.replaceWith(ae)}catch{}}else if(ke){if(te===void 0)try{const R=await Promise.resolve().then(()=>yT);te=R.default??R}catch{te=null}if(!te)continue;try{const R=te.renderToString(lt.textContent||"",{displayMode:!0,throwOnError:!1}),K=document.createElement("div");K.className="fe-preview__md-math",K.innerHTML=R,(Te=lt.parentElement)==null||Te.replaceWith(K)}catch{}}}}const me=r.ref("");async function we(ie,re){try{const ye=await al();if(!ye){me.value="";return}const te=ye.default??ye;if(te.getLanguage(re)){const ge=te.highlight(ie,{language:re,ignoreIllegals:!0});me.value=ge.value}else{const ge=te.highlightAuto(ie);me.value=ge.value}}catch(ye){me.value="",L.value=ye instanceof Error?ye.message:String(ye)}}const Se=r.ref(null);let De=null,Xe;const tt=r.ref(!1),Pe=r.ref(!1),Oe=r.ref(!1),Ie=r.ref(!1),pe=r.ref(null);function $e(){if(De){try{De.dispose()}catch{}De=null}tt.value=!1,Ie.value=!1,pe.value=null}function ce(ie){return{js:"javascript",mjs:"javascript",cjs:"javascript",ts:"typescript",tsx:"typescript",jsx:"javascript",json:"json",jsonc:"json",css:"css",scss:"scss",sass:"scss",less:"less",html:"html",htm:"html",vue:"html",svelte:"html",xml:"xml",svg:"xml",md:"markdown",markdown:"markdown",php:"php",py:"python",yml:"yaml",yaml:"yaml",go:"go",rs:"rust",sql:"sql",cpp:"cpp",c:"c",h:"cpp",hpp:"cpp",sh:"shell",bash:"shell",dockerfile:"dockerfile",toml:"ini",ini:"ini",conf:"ini",cfg:"ini"}[ie]??"plaintext"}async function be(ie,re){var te;const ye=await rl();if(ye||(Pe.value=!0),!ye||!Se.value)return!1;try{$e();const ge=!!n.saveTextEndpoint&&n.openMode!=="view",z=n.theme==="dark"?!0:n.theme==="light"?!1:(te=window.matchMedia)==null?void 0:te.call(window,"(prefers-color-scheme: dark)").matches;return De=ye.editor.create(Se.value,{value:ie,language:ce(re),readOnly:!ge,theme:z?"vs-dark":"vs",automaticLayout:!0,minimap:{enabled:!1},fontSize:13}),ge&&(De.addCommand(ye.KeyMod.CtrlCmd|ye.KeyCode.KeyS,()=>void Me()),De.onDidChangeModelContent(()=>{Xe&&clearTimeout(Xe),Xe=setTimeout(()=>{Me()},1500)})),tt.value=!0,!0}catch(ge){return L.value=`Monaco mount fail: ${ge.message}`,!1}}async function Me(){if(!(!n.saveTextEndpoint||!n.file)&&n.openMode!=="view"&&!Oe.value){Oe.value=!0,Ie.value=!1,pe.value=null;try{const ie=De?De.getValue():"",re={"Content-Type":"application/json"};n.authHeaders&&Object.assign(re,await n.authHeaders());const ye=await fetch(n.saveTextEndpoint,{method:"POST",headers:re,credentials:n.authCredentials||"same-origin",body:JSON.stringify({path:D(n.file.path),content:ie})});if(!ye.ok){const te=await ye.text().catch(()=>"");throw new Error(`${ye.status} ${ye.statusText}${te?" — "+te.slice(0,150):""}`)}Ie.value=!0,setTimeout(()=>{Ie.value=!1},2500)}catch(ie){pe.value=ie.message}finally{Oe.value=!1}}}async function Qe(ie,re,ye){if(q.value="",G.value="",me.value="",L.value=null,xe.value=null,w.value=null,g.value=null,v.value=!1,at(),$e(),!(!ie||!re)){if(ye==="viewer"){await m(o(n.file));return}if(ye==="markdown"||ye==="code"||ye==="text"){if(await H(re),X.value)return;if(ye==="markdown"){await ve(q.value);return}const te=d[o(n.file)]||"";rc()?(await new Promise(Te=>setTimeout(Te,0)),await be(q.value,o(n.file))||await we(q.value,te)):(ye==="code"&&await we(q.value,te),rl().then(async z=>{if(!z){Pe.value=!0;return}n.open&&(await new Promise(Te=>setTimeout(Te,0)),await be(q.value,o(n.file)))}))}else ye==="office"&&(await new Promise(te=>setTimeout(te,0)),await Le())}}r.watch(()=>[n.open,k.value,p.value,n.openMode],([ie,re,ye])=>{Qe(ie,re,ye)}),r.onMounted(()=>{r.nextTick(()=>{n.open&&Qe(n.open,k.value,p.value)})});const dt=r.computed(()=>d[o(n.file)]||"plaintext"),ot=r.ref(null),xe=r.ref(null);let Ne=null;async function Le(){if(xe.value=null,!(!n.file||p.value!=="office")){if(!n.onlyOfficeConfigEndpoint){xe.value="OnlyOffice yapılandırması yok";return}if(ot.value)try{const ie={"Content-Type":"application/json"};n.authHeaders&&Object.assign(ie,await n.authHeaders());const re=await fetch(n.onlyOfficeConfigEndpoint,{method:"POST",headers:ie,credentials:n.authCredentials||"same-origin",body:JSON.stringify({path:n.file.path,mode:n.openMode||"edit"})});if(!re.ok)throw new Error(`Config fetch ${re.status}: ${(await re.text()).slice(0,200)}`);const{config:ye,documentServerUrl:te}=await re.json();await Y(te),at();const ge="fe-onlyoffice-mount";ot.value.id=ge,ye.events={onError:Te=>{xe.value=wt(Te)}};const z=window;if(!z.DocsAPI||!z.DocsAPI.DocEditor)throw new Error("DocsAPI not available after script load");Ne=new z.DocsAPI.DocEditor(ge,ye)}catch(ie){xe.value=ie instanceof Error?ie.message:String(ie)}}}function at(){var ie;try{(ie=Ne==null?void 0:Ne.destroyEditor)==null||ie.call(Ne)}catch{}Ne=null}r.onBeforeUnmount(()=>{at(),$e()});function wt(ie){if(typeof ie=="string")return ie;const re=ie;if(re!=null&&re.data&&typeof re.data=="object"){const ye=re.data;if(typeof ye.errorDescription=="string")return ye.errorDescription;if(typeof ye.message=="string")return ye.message;if(ye.errorCode!==void 0)return`OnlyOffice error ${ye.errorCode}`}if(typeof(re==null?void 0:re.data)=="string")return re.data;if(typeof(re==null?void 0:re.errorDescription)=="string")return re.errorDescription;if(typeof(re==null?void 0:re.message)=="string")return re.message;try{return JSON.stringify(ie)}catch{return"OnlyOffice error"}}function Y(ie){return new Promise((re,ye)=>{var z;if((z=window.DocsAPI)!=null&&z.DocEditor){re();return}const te=document.getElementById(Rf);if(te){te.addEventListener("load",()=>re()),te.addEventListener("error",()=>ye(new Error("OnlyOffice api.js load failed")));return}const ge=document.createElement("script");ge.id=Rf,ge.src=`${ie.replace(/\/$/,"")}/web-apps/apps/api/documents/api.js`,ge.async=!0,ge.onload=()=>re(),ge.onerror=()=>ye(new Error("OnlyOffice api.js load failed")),document.head.appendChild(ge)})}return(ie,re)=>{var ye;return r.openBlock(),r.createBlock($r,{open:e.open,size:"xl",title:((ye=e.file)==null?void 0:ye.basename)||"",chromeless:e.chromeless,theme:e.theme,onClose:re[2]||(re[2]=te=>a("close"))},{actions:r.withCtx(()=>[e.file&&e.openMode==="view"&&E.value&&e.newTabEnabled!==!1?(r.openBlock(),r.createElementBlock("button",{key:0,type:"button",class:"fe-btn fe-btn--primary",onClick:S},"✏ "+r.toDisplayString(r.unref(i)("viewer.edit")),1)):r.createCommentVNode("",!0),e.file&&e.newTabEnabled!==!1?(r.openBlock(),r.createElementBlock("button",{key:1,type:"button",class:"fe-btn",onClick:_},"↗ "+r.toDisplayString(r.unref(i)("viewer.open_in_new_tab")),1)):r.createCommentVNode("",!0),e.file?(r.openBlock(),r.createElementBlock("a",{key:2,href:N.value,class:"fe-btn"},r.toDisplayString(r.unref(i)("viewer.download")),9,iw)):r.createCommentVNode("",!0),r.createElementVNode("button",{type:"button",class:"fe-btn",onClick:re[1]||(re[1]=te=>a("close"))},r.toDisplayString(r.unref(i)("viewer.close")),1)]),default:r.withCtx(()=>[e.file?(r.openBlock(),r.createElementBlock("div",p8,[p.value==="image"?(r.openBlock(),r.createElementBlock("img",{key:0,src:k.value,alt:e.file.basename,class:"fe-preview__image"},null,8,m8)):p.value==="video"?(r.openBlock(),r.createElementBlock("video",{key:1,src:k.value,controls:"",preload:"metadata",class:"fe-preview__video"},null,8,g8)):p.value==="audio"?(r.openBlock(),r.createElementBlock("audio",{key:2,src:k.value,controls:"",class:"fe-preview__audio"},null,8,b8)):p.value==="pdf"?(r.openBlock(),r.createElementBlock("object",{key:3,data:k.value,type:"application/pdf",class:"fe-preview__iframe"},[r.createElementVNode("div",y8,[re[3]||(re[3]=r.createElementVNode("span",{class:"fe-preview__fallback-icon"},"📕",-1)),re[4]||(re[4]=r.createElementVNode("p",null,"Tarayıcı PDF'i inline açamadı.",-1)),r.createElementVNode("a",{href:N.value,class:"fe-btn fe-btn--primary",target:"_blank",rel:"noopener"},"PDF'i Yeni Sekmede Aç",8,_8)])],8,v8)):p.value==="markdown"?(r.openBlock(),r.createElementBlock(r.Fragment,{key:4},[U.value?(r.openBlock(),r.createElementBlock("div",w8,r.toDisplayString(r.unref(i)("viewer.loading")),1)):X.value?(r.openBlock(),r.createElementBlock("div",k8,[re[5]||(re[5]=r.createTextVNode(" Dosya çok büyük (>1 MB). ",-1)),r.createElementVNode("a",{href:N.value,class:"fe-btn"},r.toDisplayString(r.unref(i)("viewer.download")),9,E8)])):e.openMode==="edit"&&e.saveTextEndpoint?(r.openBlock(),r.createElementBlock("div",x8,[r.createElementVNode("div",S8,[re[6]||(re[6]=r.createElementVNode("span",{class:"fe-preview__md-split-label"},"MARKDOWN",-1)),L.value?(r.openBlock(),r.createElementBlock("span",C8,r.toDisplayString(L.value),1)):r.createCommentVNode("",!0),r.createElementVNode("button",{type:"button",class:"fe-btn fe-btn--primary",disabled:!$.value||j.value,onClick:I},r.toDisplayString(j.value?r.unref(i)("viewer.saving"):$.value?r.unref(i)("viewer.save"):r.unref(i)("viewer.saved")),9,N8)]),r.createElementVNode("div",T8,[r.withDirectives(r.createElementVNode("textarea",{class:"fe-preview__md-split-input","onUpdate:modelValue":re[0]||(re[0]=te=>q.value=te),onInput:F,onKeydown:[r.withKeys(r.withModifiers(I,["ctrl","prevent"]),["s"]),r.withKeys(r.withModifiers(I,["meta","prevent"]),["s"])],spellcheck:"false",placeholder:"# Markdown buraya…"},null,40,A8),[[r.vModelText,q.value]]),de.value?(r.openBlock(),r.createElementBlock("div",D8,r.toDisplayString(r.unref(i)("viewer.peer_not_installed")),1)):(r.openBlock(),r.createElementBlock("div",{key:1,ref_key:"markdownEl",ref:oe,class:"fe-preview__md-split-output fe-preview__md",innerHTML:G.value},null,8,M8))])])):L.value?(r.openBlock(),r.createElementBlock("div",B8,[r.createElementVNode("p",null,r.toDisplayString(L.value),1),r.createElementVNode("a",{href:N.value,class:"fe-btn fe-btn--primary"},r.toDisplayString(r.unref(i)("viewer.download")),9,O8)])):G.value?(r.openBlock(),r.createElementBlock("div",{key:4,ref_key:"markdownEl",ref:oe,class:"fe-preview__md",innerHTML:G.value},null,8,I8)):(r.openBlock(),r.createElementBlock("pre",R8,r.toDisplayString(q.value),1))],64)):p.value==="viewer"?(r.openBlock(),r.createElementBlock(r.Fragment,{key:5},[g.value&&!v.value?(r.openBlock(),r.createElementBlock("div",L8,[re[7]||(re[7]=r.createElementVNode("span",{class:"fe-preview__fallback-icon"},"⚠️",-1)),r.createElementVNode("p",null,r.toDisplayString(g.value),1),r.createElementVNode("a",{href:N.value,class:"fe-btn fe-btn--primary"},r.toDisplayString(r.unref(i)("viewer.download")),9,F8)])):w.value?(r.openBlock(),r.createBlock(r.resolveDynamicComponent(w.value),r.mergeProps({key:2},y.value,{class:"fe-preview__viewer",onFallback:b}),null,16)):(r.openBlock(),r.createElementBlock("div",z8,[re[8]||(re[8]=r.createElementVNode("span",{class:"fe-preview__fallback-icon"},"⏳",-1)),r.createElementVNode("p",null,r.toDisplayString(r.unref(i)("viewer.loading")),1)]))],64)):p.value==="code"||p.value==="text"?(r.openBlock(),r.createElementBlock(r.Fragment,{key:6},[U.value?(r.openBlock(),r.createElementBlock("div",P8,r.toDisplayString(r.unref(i)("viewer.loading")),1)):X.value?(r.openBlock(),r.createElementBlock("div",$8,[re[9]||(re[9]=r.createTextVNode(" Dosya çok büyük (>1 MB). ",-1)),r.createElementVNode("a",{href:N.value,class:"fe-btn"},r.toDisplayString(r.unref(i)("viewer.download")),9,V8)])):L.value?(r.openBlock(),r.createElementBlock("div",U8,[r.createElementVNode("p",null,r.toDisplayString(L.value),1),r.createElementVNode("a",{href:N.value,class:"fe-btn fe-btn--primary"},r.toDisplayString(r.unref(i)("viewer.download")),9,H8)])):(r.openBlock(),r.createElementBlock("div",G8,[r.createElementVNode("div",q8,[r.createElementVNode("span",K8,r.toDisplayString(dt.value),1),!tt.value&&me.value?(r.openBlock(),r.createElementBlock("span",W8,r.toDisplayString(e.saveTextEndpoint&&!Pe.value?r.unref(i)("viewer.editor_loading"):r.unref(i)("viewer.read_only")),1)):r.createCommentVNode("",!0),Ie.value?(r.openBlock(),r.createElementBlock("span",Y8,"✓ "+r.toDisplayString(r.unref(i)("viewer.saved")),1)):r.createCommentVNode("",!0),pe.value?(r.openBlock(),r.createElementBlock("span",{key:2,class:"fe-preview__code-status fe-preview__code-status--err",title:pe.value},"✗ "+r.toDisplayString(r.unref(i)("viewer.save_error")),9,j8)):r.createCommentVNode("",!0),e.openMode==="view"?(r.openBlock(),r.createElementBlock("span",X8,r.toDisplayString(r.unref(i)("viewer.read_only")),1)):e.saveTextEndpoint&&tt.value?(r.openBlock(),r.createElementBlock("button",{key:4,type:"button",class:"fe-btn fe-btn--primary",disabled:Oe.value,onClick:Me},r.toDisplayString(Oe.value?r.unref(i)("viewer.saving"):r.unref(i)("viewer.save")),9,Z8)):r.createCommentVNode("",!0)]),r.createElementVNode("div",{ref_key:"monacoEl",ref:Se,class:r.normalizeClass(["fe-preview__code-editor",{"is-hidden":!tt.value}])},null,2),!tt.value&&me.value?(r.openBlock(),r.createElementBlock("pre",J8,[r.createElementVNode("code",{class:r.normalizeClass(`language-${dt.value}`),innerHTML:me.value},null,10,Q8)])):!tt.value&&!me.value?(r.openBlock(),r.createElementBlock("pre",{key:1,class:"fe-preview__pre","data-lang":dt.value},r.toDisplayString(q.value),9,ew)):r.createCommentVNode("",!0)]))],64)):p.value==="office"?(r.openBlock(),r.createElementBlock(r.Fragment,{key:7},[xe.value?(r.openBlock(),r.createElementBlock("div",tw,[re[10]||(re[10]=r.createElementVNode("span",{class:"fe-preview__fallback-icon"},"📄",-1)),r.createElementVNode("p",null,r.toDisplayString(xe.value),1),r.createElementVNode("a",{href:N.value,class:"fe-btn fe-btn--primary"},r.toDisplayString(r.unref(i)("viewer.download")),9,nw)])):(r.openBlock(),r.createElementBlock("div",{key:1,ref_key:"officeEl",ref:ot,class:"fe-preview__office"},null,512))],64)):(r.openBlock(),r.createElementBlock("div",rw,[re[11]||(re[11]=r.createElementVNode("span",{class:"fe-preview__fallback-icon"},"📎",-1)),r.createElementVNode("p",null,r.toDisplayString(r.unref(i)("viewer.no_preview")),1),r.createElementVNode("a",{href:N.value,class:"fe-btn fe-btn--primary"},r.toDisplayString(r.unref(i)("viewer.download")),9,aw)]))])):r.createCommentVNode("",!0)]),_:1},8,["open","title","chromeless","theme"])}}}),Lf=r.defineComponent({__name:"QuickLook",props:{open:{type:Boolean},locale:{},file:{},previewUrl:{type:Function},downloadUrl:{type:Function},onlyOfficeBase:{},onlyOfficeConfigEndpoint:{},authHeaders:{type:Function},authCredentials:{},drawioUrl:{},pdfWorkerUrl:{},viewerBaseUrl:{},theme:{}},emits:["close","nav","open-full"],setup(e,{emit:t}){const n=e,a=t,{t:i}=qt(()=>n.locale);function o(l){const c=l;return!!(c&&(c.tagName==="INPUT"||c.tagName==="TEXTAREA"||c.tagName==="SELECT"||c.isContentEditable))}function s(l){if(n.open&&!(l.ctrlKey||l.metaKey||l.altKey)&&!o(l.target))switch(l.key){case" ":l.preventDefault(),l.stopPropagation(),a("close");break;case"ArrowRight":case"ArrowDown":l.preventDefault(),l.stopPropagation(),a("nav",1);break;case"ArrowLeft":case"ArrowUp":l.preventDefault(),l.stopPropagation(),a("nav",-1);break;case"Enter":l.preventDefault(),l.stopPropagation(),a("open-full");break}}return r.watch(()=>n.open,l=>{l?window.addEventListener("keydown",s,!0):window.removeEventListener("keydown",s,!0)},{immediate:!0}),r.onBeforeUnmount(()=>window.removeEventListener("keydown",s,!0)),(l,c)=>(r.openBlock(),r.createElementBlock(r.Fragment,null,[r.createVNode(uc,{class:"fe-quicklook",open:e.open,locale:e.locale,file:e.file,theme:e.theme,"preview-url":e.previewUrl,"download-url":e.downloadUrl,"only-office-base":e.onlyOfficeBase,"only-office-config-endpoint":e.onlyOfficeConfigEndpoint,"open-mode":"view","auth-headers":e.authHeaders,"auth-credentials":e.authCredentials,"drawio-url":e.drawioUrl,"pdf-worker-url":e.pdfWorkerUrl,"viewer-base-url":e.viewerBaseUrl,onClose:c[0]||(c[0]=d=>a("close"))},null,8,["open","locale","file","theme","preview-url","download-url","only-office-base","only-office-config-endpoint","auth-headers","auth-credentials","drawio-url","pdf-worker-url","viewer-base-url"]),r.createVNode(r.Transition,{name:"fe-toast"},{default:r.withCtx(()=>[e.open?(r.openBlock(),r.createElementBlock("div",{key:0,class:r.normalizeClass(["fe fe-ql-hint",{"fe--theme-light":e.theme==="light","fe--theme-dark":e.theme==="dark"}]),"aria-hidden":"true"},[c[1]||(c[1]=r.createElementVNode("kbd",{class:"fe-kbd"},"Space",-1)),r.createTextVNode(" "+r.toDisplayString(r.unref(i)("quicklook.hint_close"))+" ",1),c[2]||(c[2]=r.createElementVNode("span",{class:"fe-ql-hint__sep"},"·",-1)),c[3]||(c[3]=r.createElementVNode("kbd",{class:"fe-kbd"},"↑",-1)),c[4]||(c[4]=r.createElementVNode("kbd",{class:"fe-kbd"},"↓",-1)),r.createTextVNode(" "+r.toDisplayString(r.unref(i)("quicklook.hint_nav"))+" ",1),c[5]||(c[5]=r.createElementVNode("span",{class:"fe-ql-hint__sep"},"·",-1)),c[6]||(c[6]=r.createElementVNode("kbd",{class:"fe-kbd"},"Enter",-1)),r.createTextVNode(" "+r.toDisplayString(r.unref(i)("quicklook.hint_open")),1)],2)):r.createCommentVNode("",!0)]),_:1})],64))}}),ow=["aria-label"],lw={class:"fe-opc__head"},sw=["aria-label"],cw={class:"fe-opc__body"},dw={key:0,class:"fe-opc__section","aria-live":"polite"},uw={class:"fe-opc__section-title"},fw={class:"fe-opc__list"},hw={class:"fe-opc__kicon",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"1.8","stroke-linecap":"round","stroke-linejoin":"round","aria-hidden":"true",focusable:"false"},pw=["d"],mw={class:"fe-opc__mid"},gw=["title"],bw={class:"fe-opc__sub"},vw={class:"fe-opc__kind"},yw={class:"fe-opc__state"},_w=["aria-valuenow"],ww={key:0,class:"fe-opc__spin","aria-hidden":"true"},kw={class:"fe-opc__acts"},Ew=["onClick"],xw=["onClick"],Sw=["aria-label","onClick"],Cw={key:1,class:"fe-opc__section"},Nw={class:"fe-opc__section-title"},Tw={class:"fe-opc__list fe-opc__list--history"},Aw={class:"fe-opc__kicon",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"1.8","stroke-linecap":"round","stroke-linejoin":"round","aria-hidden":"true",focusable:"false"},Dw=["d"],Mw={class:"fe-opc__mid"},Bw=["title"],Ow={key:0,class:"fe-opc__sub fe-opc__sub--err"},Iw={key:2,class:"fe-opc__empty"},Rw=["aria-expanded","aria-label"],Lw=["stroke-dashoffset"],Fw={class:"fe-opc__count"},zw={key:0,class:"fe-opc__pct"},fc=8.5,Ff=r.defineComponent({__name:"OperationsCenter",props:{center:{},locale:{},narrow:{type:Boolean}},setup(e){const t=e,{t:n,formatSize:a}=qt(()=>t.locale),i=r.ref(!1),o=r.ref(null),s=r.computed(()=>t.center.active.value),l=r.computed(()=>t.center.history.value),c=r.computed(()=>t.center.hasError.value),d=r.computed(()=>t.center.overallPercent.value),u=r.computed(()=>t.center.runningCount.value),h=r.computed(()=>s.value.length>0||i.value&&l.value.length>0);r.watch(h,E=>{E||(i.value=!1)});const f=2*Math.PI*fc,p=r.computed(()=>{const E=d.value;return E===null?f*.72:f*(1-Math.min(100,Math.max(0,E))/100)}),w=r.computed(()=>d.value===null&&u.value>0),g=r.computed(()=>u.value===0||d.value===null?"":n("opc.percent",{n:d.value})),v=r.computed(()=>n("opc.aria_badge",{n:s.value.length})),m={upload:"M12 16V5M7 9.5 12 5l5 4.5M5 19h14",copy:"M9 9h11v11H9zM5 15V4h11",move:"M4 12h13M12 6l6 6-6 6",delete:"M5 7h14M9 7V5h6v2M8 7l1 13h6l1-13",convert:"M20 8A8 8 0 0 0 6 6L4 8M4 16a8 8 0 0 0 14 2l2-2M20 3v5h-5M4 21v-5h5",archive:"M4 8V5h16v3zM5 8h14v12H5zM10 12h4"};function b(E){return n(`opc.kind.${E.kind}`)}function y(E){return E.name||b(E)}function _(E){return E.status==="running"?E.queued?n("opc.queued"):E.totalBytes&&E.totalBytes>0?`${a(E.uploadedBytes??0)} / ${a(E.totalBytes)}`:E.totalCount&&E.totalCount>0?`${E.doneCount??0}/${E.totalCount}`:n("opc.status.running"):E.status==="done"?n("opc.status.done"):E.status==="aborted"?n("opc.status.aborted"):E.error||n("opc.status.error")}function S(E){return n(`opc.status.${E.status==="running"?"running":E.status}`)}function A(E){if(!i.value)return;const k=o.value;k&&E.target instanceof Node&&!k.contains(E.target)&&(i.value=!1)}function T(E){i.value&&E.key==="Escape"&&(i.value=!1)}return r.onMounted(()=>{document.addEventListener("mousedown",A),document.addEventListener("keydown",T)}),r.onBeforeUnmount(()=>{document.removeEventListener("mousedown",A),document.removeEventListener("keydown",T)}),(E,k)=>h.value?(r.openBlock(),r.createElementBlock("div",{key:0,ref_key:"rootEl",ref:o,class:r.normalizeClass(["fe-opc",{"fe-opc--narrow":e.narrow,"fe-opc--open":i.value}])},[r.createVNode(r.Transition,{name:"fe-opc-pop"},{default:r.withCtx(()=>[i.value?(r.openBlock(),r.createElementBlock("section",{key:0,class:"fe-opc__panel",role:"dialog","aria-label":r.unref(n)("opc.title")},[r.createElementVNode("header",lw,[r.createElementVNode("strong",null,r.toDisplayString(r.unref(n)("opc.title")),1),r.createElementVNode("button",{type:"button",class:"fe-opc__x","aria-label":r.unref(n)("opc.close"),onClick:k[0]||(k[0]=N=>i.value=!1)},"×",8,sw)]),r.createElementVNode("div",cw,[s.value.length>0?(r.openBlock(),r.createElementBlock("div",dw,[r.createElementVNode("h3",uw,r.toDisplayString(r.unref(n)("opc.active")),1),r.createElementVNode("ul",fw,[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(s.value,N=>(r.openBlock(),r.createElementBlock("li",{key:N.key,class:r.normalizeClass(["fe-opc__item",`is-${N.status}`])},[(r.openBlock(),r.createElementBlock("svg",hw,[r.createElementVNode("path",{d:m[N.kind]},null,8,pw)])),r.createElementVNode("div",mw,[r.createElementVNode("div",{class:"fe-opc__name",title:y(N)},r.toDisplayString(y(N)),9,gw),r.createElementVNode("div",bw,[r.createElementVNode("span",vw,r.toDisplayString(b(N)),1),k[3]||(k[3]=r.createElementVNode("span",{class:"fe-opc__dot","aria-hidden":"true"},"·",-1)),r.createElementVNode("span",yw,r.toDisplayString(_(N)),1)]),N.status==="running"&&N.percent!==null?(r.openBlock(),r.createElementBlock("div",{key:0,class:"fe-opc__bar",role:"progressbar","aria-valuenow":N.percent,"aria-valuemin":"0","aria-valuemax":"100"},[r.createElementVNode("div",{class:"fe-opc__bar-fill",style:r.normalizeStyle({width:N.percent+"%"})},null,4)],8,_w)):r.createCommentVNode("",!0)]),N.status==="running"&&N.percent===null&&!N.queued?(r.openBlock(),r.createElementBlock("span",ww)):r.createCommentVNode("",!0),r.createElementVNode("div",kw,[N.status==="running"&&N.cancellable?(r.openBlock(),r.createElementBlock("button",{key:0,type:"button",class:"fe-opc__act",onClick:D=>e.center.cancel(N.key)},r.toDisplayString(r.unref(n)("opc.cancel")),9,Ew)):r.createCommentVNode("",!0),N.status==="error"&&N.retryable?(r.openBlock(),r.createElementBlock("button",{key:1,type:"button",class:"fe-opc__act fe-opc__act--retry",onClick:D=>e.center.retry(N.key)},r.toDisplayString(r.unref(n)("opc.retry")),9,xw)):r.createCommentVNode("",!0),N.status!=="running"?(r.openBlock(),r.createElementBlock("button",{key:2,type:"button",class:"fe-opc__x","aria-label":r.unref(n)("opc.dismiss"),onClick:D=>e.center.dismiss(N.key)},"×",8,Sw)):r.createCommentVNode("",!0)])],2))),128))])])):r.createCommentVNode("",!0),l.value.length>0?(r.openBlock(),r.createElementBlock("div",Cw,[r.createElementVNode("h3",Nw,[r.createTextVNode(r.toDisplayString(r.unref(n)("opc.history"))+" ",1),r.createElementVNode("button",{type:"button",class:"fe-opc__act",onClick:k[1]||(k[1]=N=>e.center.clearHistory())},r.toDisplayString(r.unref(n)("opc.clear")),1)]),r.createElementVNode("ul",Tw,[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(l.value,N=>(r.openBlock(),r.createElementBlock("li",{key:"h-"+N.key,class:r.normalizeClass(["fe-opc__item fe-opc__item--history",`is-${N.status}`])},[(r.openBlock(),r.createElementBlock("svg",Aw,[r.createElementVNode("path",{d:m[N.kind]},null,8,Dw)])),r.createElementVNode("div",Mw,[r.createElementVNode("div",{class:"fe-opc__name",title:y(N)},r.toDisplayString(y(N)),9,Bw),N.status==="error"&&N.error?(r.openBlock(),r.createElementBlock("div",Ow,r.toDisplayString(N.error),1)):r.createCommentVNode("",!0)]),r.createElementVNode("span",{class:r.normalizeClass(["fe-opc__chip",`is-${N.status}`])},r.toDisplayString(S(N)),3)],2))),128))])])):r.createCommentVNode("",!0),s.value.length===0&&l.value.length===0?(r.openBlock(),r.createElementBlock("p",Iw,r.toDisplayString(r.unref(n)("opc.empty")),1)):r.createCommentVNode("",!0)])],8,ow)):r.createCommentVNode("",!0)]),_:1}),r.createElementVNode("button",{type:"button",class:r.normalizeClass(["fe-opc__badge",{"is-error":c.value}]),"aria-expanded":i.value,"aria-label":v.value,onClick:k[2]||(k[2]=N=>i.value=!i.value)},[(r.openBlock(),r.createElementBlock("svg",{class:r.normalizeClass(["fe-opc__ring",{"fe-opc__ring--spin":w.value}]),viewBox:"0 0 22 22","aria-hidden":"true",focusable:"false"},[r.createElementVNode("circle",{class:"fe-opc__ring-track",cx:"11",cy:"11",r:fc,fill:"none","stroke-width":"2.5"}),r.createElementVNode("circle",{class:"fe-opc__ring-fill",cx:"11",cy:"11",r:fc,fill:"none","stroke-width":"2.5","stroke-linecap":"round","stroke-dasharray":f,"stroke-dashoffset":p.value,transform:"rotate(-90 11 11)"},null,8,Lw)],2)),r.createElementVNode("span",Fw,r.toDisplayString(s.value.length),1),g.value?(r.openBlock(),r.createElementBlock("span",zw,r.toDisplayString(g.value),1)):r.createCommentVNode("",!0)],10,Rw)],2)):r.createCommentVNode("",!0)}}),Pw=4e3,zf=50;function $w(e,t,n){const a=t.status!=="running";return{key:e,kind:t.kind,name:t.name,percent:t.percent,status:t.status,error:t.error??null,queued:t.queued??!1,doneCount:t.doneCount??null,totalCount:t.totalCount??null,uploadedBytes:t.uploadedBytes??null,totalBytes:t.totalBytes??null,cancellable:t.cancellable??!1,retryable:t.retryable??!1,startedAt:(n==null?void 0:n.startedAt)??Date.now(),settledAt:(n==null?void 0:n.settledAt)??(a?Date.now():null)}}function Pf(){const e=r.ref([]),t=r.ref([]),n=new Map,a=new Set,i=new Map;function o(m){const b=i.get(m);b!==void 0&&(clearTimeout(b),i.delete(m))}function s(m,b={}){o(m);const y=e.value.findIndex(S=>S.key===m);if(y===-1)return;const[_]=e.value.splice(y,1);e.value=[...e.value],a.add(m),b.toHistory!==!1&&(t.value=[{..._,settledAt:_.settledAt??Date.now()},...t.value].slice(0,zf))}function l(m){i.has(m)||i.set(m,setTimeout(()=>{var y;i.delete(m);const b=n.get(m);s(m),(y=b==null?void 0:b.dismiss)==null||y.call(b)},Pw))}function c(m,b){const y=`${m}:`,_=new Set;let S=[...e.value],A=!1;for(const T of b){const E=`${m}:${T.input.id}`;if(_.add(E),T.actions&&n.set(E,T.actions),a.has(E))continue;const k=S.findIndex(D=>D.key===E),N=$w(E,T.input,k===-1?void 0:S[k]);k===-1?(S=[N,...S],A=!0):JSON.stringify(S[k])!==JSON.stringify(N)&&(S[k]=N,A=!0),(N.status==="done"||N.status==="aborted")&&l(E)}for(const T of[...S])!T.key.startsWith(y)||_.has(T.key)||T.status!=="error"&&(o(T.key),S=S.filter(E=>E.key!==T.key),A=!0,T.status!=="running"&&(a.add(T.key),t.value=[{...T,settledAt:T.settledAt??Date.now()},...t.value].slice(0,zf)));for(const T of[...a])T.startsWith(y)&&!_.has(T)&&a.delete(T);for(const T of[...n.keys()])T.startsWith(y)&&!_.has(T)&&!e.value.some(E=>E.key===T)&&(S.some(E=>E.key===T)||n.delete(T));A&&(e.value=S)}function d(m){var b,y;(y=(b=n.get(m))==null?void 0:b.cancel)==null||y.call(b)}function u(m){var y,_;const b=n.get(m);s(m),(y=b==null?void 0:b.dismiss)==null||y.call(b),(_=b==null?void 0:b.retry)==null||_.call(b)}function h(m){var y;const b=n.get(m);s(m),(y=b==null?void 0:b.dismiss)==null||y.call(b)}function f(){t.value=[]}const p=r.computed(()=>e.value.filter(m=>m.status==="running").length),w=r.computed(()=>e.value.filter(m=>m.status==="error").length),g=r.computed(()=>w.value>0),v=r.computed(()=>{const m=e.value.filter(_=>_.status==="running");let b=0,y=0;for(const _ of m){let S=null;_.totalBytes&&_.totalBytes>0?S=Math.min(1,(_.uploadedBytes??0)/_.totalBytes):_.totalCount&&_.totalCount>0?S=Math.min(1,(_.doneCount??0)/_.totalCount):_.percent!==null&&(S=Math.min(1,_.percent/100)),S!==null&&(b+=S,y+=1)}return y===0?null:Math.round(b/y*100)});return r.getCurrentScope()&&r.onScopeDispose(()=>{for(const m of i.values())clearTimeout(m);i.clear()}),{active:e,history:t,runningCount:p,errorCount:w,hasError:g,overallPercent:v,sync:c,cancel:d,retry:u,dismiss:h,clearHistory:f}}const Vw=["data-prefers-dark","aria-label"],Uw={key:1,class:"fe-tour__dim","aria-hidden":"true"},Hw={class:"fe-tour__progress","aria-hidden":"true"},Gw={class:"fe-tour__title"},qw={class:"fe-tour__desc"},Kw={class:"fe-tour__dots","aria-hidden":"true"},Ww={class:"fe-tour__actions"},ri=6,$f=12,Yw=r.defineComponent({__name:"OnboardingTour",props:{open:{type:Boolean},locale:{},root:{},theme:{}},emits:["close"],setup(e,{emit:t}){const n=e,a=t,{t:i}=qt(()=>n.locale);function o(k,N){const D=k.querySelectorAll("button[title]");for(const U of Array.from(D))if(U.getAttribute("title")===N)return U;return null}const s=[{id:"nav",titleKey:"tour.step.nav.title",descKey:"tour.step.nav.desc",target:k=>k.querySelector(".fe-breadcrumb")},{id:"upload",titleKey:"tour.step.upload.title",descKey:"tour.step.upload.desc",target:k=>o(k,i("toolbar.upload"))||k.querySelector(".fe-fab")},{id:"search",titleKey:"tour.step.search.title",descKey:"tour.step.search.desc",target:k=>k.querySelector(".fe-search__input")||k.querySelector(".fe-toolbar__search-toggle")},{id:"view",titleKey:"tour.step.view.title",descKey:"tour.step.view.desc",target:k=>k.querySelector(".fe-toolbar__view")},{id:"share",titleKey:"tour.step.share.title",descKey:"tour.step.share.desc",target:k=>k.querySelector(".fe__body")},{id:"help",titleKey:"tour.step.help.title",descKey:"tour.step.help.desc",target:()=>null}],l=r.ref([]),c=r.ref(0),d=r.computed(()=>l.value[c.value]??null),u=r.computed(()=>l.value.length);function h(){const k=n.root;l.value=s.filter(N=>{if(N.id==="help")return!0;if(!k)return!1;const D=N.target(k);if(!D)return!1;const U=D.getBoundingClientRect();return U.width>0&&U.height>0})}const f=r.ref(null),p=r.ref({}),w=r.ref(null);async function g(){var V;const k=d.value,N=n.root;if(!k)return;const D=N?k.target(N):null;if(!D){f.value=null,p.value={};return}const U=D.getBoundingClientRect();if(U.width<=0&&U.height<=0){f.value=null,p.value={};return}f.value={top:U.top-ri,left:U.left-ri,width:U.width+ri*2,height:U.height+ri*2},await r.nextTick();const L=window.innerWidth,q=window.innerHeight,X=Math.min(340,L-24),$=((V=w.value)==null?void 0:V.offsetHeight)??160;let j=U.bottom+ri+$f;j+$>q-12&&(j=Math.max(12,U.top-ri-$f-$));let J=U.left+U.width/2-X/2;J=Math.min(Math.max(12,J),L-X-12),p.value={top:`${Math.round(j)}px`,left:`${Math.round(J)}px`,width:`${X}px`}}function v(){n.open&&g()}function m(){if(c.value>=u.value-1){a("close");return}c.value+=1}function b(){c.value>0&&(c.value-=1)}function y(){a("close")}function _(k){n.open&&(k.key==="Escape"?(k.stopPropagation(),y()):k.key==="ArrowRight"||k.key==="Enter"?(k.preventDefault(),m()):k.key==="ArrowLeft"&&(k.preventDefault(),b()))}r.watch(()=>n.open,async k=>{var N;k&&(c.value=0,h(),await r.nextTick(),await g(),(N=w.value)==null||N.focus())}),r.watch(c,async()=>{var k;await g(),(k=w.value)==null||k.focus()}),r.onMounted(()=>{window.addEventListener("resize",v),window.addEventListener("scroll",v,!0)}),r.onBeforeUnmount(()=>{window.removeEventListener("resize",v),window.removeEventListener("scroll",v,!0)});const S=r.ref(!1);let A;function T(k){S.value=!!(k&&"matches"in k&&k.matches)}r.onMounted(()=>{var k;typeof window>"u"||(A=window.matchMedia("(prefers-color-scheme: dark)"),T(A),(k=A.addEventListener)==null||k.call(A,"change",T))}),r.onBeforeUnmount(()=>{var k;(k=A==null?void 0:A.removeEventListener)==null||k.call(A,"change",T)});const E=r.computed(()=>`fe-ctx-backdrop--theme-${n.theme||"auto"}`);return(k,N)=>(r.openBlock(),r.createBlock(r.Teleport,{to:"body"},[r.createVNode(r.Transition,{name:"fe-tour"},{default:r.withCtx(()=>[e.open&&d.value?(r.openBlock(),r.createElementBlock("div",{key:0,class:r.normalizeClass(["fe-tour",E.value]),"data-prefers-dark":S.value?"1":"0",role:"dialog","aria-modal":"true","aria-label":r.unref(i)("tour.aria"),onKeydown:_},[f.value?(r.openBlock(),r.createElementBlock("div",{key:0,class:"fe-tour__spot",style:r.normalizeStyle({top:f.value.top+"px",left:f.value.left+"px",width:f.value.width+"px",height:f.value.height+"px"}),"aria-hidden":"true"},null,4)):(r.openBlock(),r.createElementBlock("div",Uw)),r.createElementVNode("div",{ref_key:"cardEl",ref:w,class:r.normalizeClass(["fe-tour__card",{"fe-tour__card--center":!f.value}]),style:r.normalizeStyle(f.value?p.value:{}),tabindex:"-1"},[r.createElementVNode("p",Hw,r.toDisplayString(r.unref(i)("tour.progress",{n:c.value+1,m:u.value})),1),r.createElementVNode("h3",Gw,r.toDisplayString(r.unref(i)(d.value.titleKey)),1),r.createElementVNode("p",qw,r.toDisplayString(r.unref(i)(d.value.descKey)),1),r.createElementVNode("div",Kw,[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(l.value,(D,U)=>(r.openBlock(),r.createElementBlock("span",{key:D.id,class:r.normalizeClass(["fe-tour__dot",{"is-active":U===c.value}])},null,2))),128))]),r.createElementVNode("div",Ww,[r.createElementVNode("button",{type:"button",class:"fe-btn fe-tour__skip",onClick:y},r.toDisplayString(r.unref(i)("tour.skip")),1),N[0]||(N[0]=r.createElementVNode("span",{class:"fe-tour__actions-spacer"},null,-1)),c.value>0?(r.openBlock(),r.createElementBlock("button",{key:0,type:"button",class:"fe-btn",onClick:b},r.toDisplayString(r.unref(i)("tour.back")),1)):r.createCommentVNode("",!0),r.createElementVNode("button",{type:"button",class:"fe-btn fe-btn--primary",onClick:m},r.toDisplayString(c.value>=u.value-1?r.unref(i)("tour.done"):r.unref(i)("tour.next")),1)])],6)],42,Vw)):r.createCommentVNode("",!0)]),_:1})]))}}),jw=["aria-label"],Xw={class:"fe-tabs__scroll"},Zw=["aria-selected","title","onClick","onKeydown","onAuxclick","onDragstart","onDragover","onDragleave","onDrop"],Jw={key:0,class:"fe-tabs__splitdot","aria-hidden":"true"},Qw={class:"fe-tabs__label"},ek=["aria-label","title","onClick"],tk=["aria-label","title"],nk=["aria-label","title","aria-pressed"],Vf=r.defineComponent({__name:"TabBar",props:{tabs:{},activeId:{},locale:{},splitEnabled:{type:Boolean},splitActive:{type:Boolean}},emits:["select","close","new","reorder","toggle-split"],setup(e,{emit:t}){const n=e,a=t,{t:i}=qt(()=>n.locale),o=r.ref(null),s=r.ref(null);function l(w,g){var v;o.value=w,g.dataTransfer&&(g.dataTransfer.effectAllowed="move",g.dataTransfer.setData("text/plain",((v=n.tabs[w])==null?void 0:v.id)??""))}function c(w,g){o.value!==null&&(g.preventDefault(),g.stopPropagation(),g.dataTransfer&&(g.dataTransfer.dropEffect="move"),s.value=w)}function d(w){s.value===w&&(s.value=null)}function u(w,g){o.value!==null&&(g.preventDefault(),g.stopPropagation(),o.value!==w&&a("reorder",o.value,w),o.value=null,s.value=null)}function h(){o.value=null,s.value=null}function f(w){w.button===1&&w.preventDefault()}function p(w,g){g.button===1&&(g.preventDefault(),g.stopPropagation(),a("close",w))}return(w,g)=>(r.openBlock(),r.createElementBlock("div",{class:"fe-tabs",role:"tablist","aria-label":r.unref(i)("tabs.strip")},[r.createElementVNode("div",Xw,[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(e.tabs,(v,m)=>(r.openBlock(),r.createElementBlock("div",{key:v.id,class:r.normalizeClass(["fe-tabs__tab",{"is-active":v.id===e.activeId,"is-dragover":s.value===m&&o.value!==null&&o.value!==m}]),role:"tab","aria-selected":v.id===e.activeId?"true":"false",tabindex:"0",draggable:"true",title:v.label,onClick:b=>a("select",v.id),onKeydown:r.withKeys(r.withModifiers(b=>a("select",v.id),["prevent"]),["enter"]),onMousedown:g[0]||(g[0]=b=>f(b)),onAuxclick:b=>p(v.id,b),onDragstart:b=>l(m,b),onDragover:b=>c(m,b),onDragleave:b=>d(m),onDrop:b=>u(m,b),onDragend:h},[v.split?(r.openBlock(),r.createElementBlock("span",Jw)):r.createCommentVNode("",!0),r.createElementVNode("span",Qw,r.toDisplayString(v.label),1),r.createElementVNode("button",{type:"button",class:"fe-tabs__close","aria-label":r.unref(i)("tabs.close"),title:r.unref(i)("tabs.close"),onClick:r.withModifiers(b=>a("close",v.id),["stop"])},"×",8,ek)],42,Zw))),128))]),r.createElementVNode("button",{type:"button",class:"fe-tabs__new","aria-label":r.unref(i)("tabs.new"),title:r.unref(i)("tabs.new"),onClick:g[1]||(g[1]=v=>a("new"))},"+",8,tk),e.splitEnabled!==!1?(r.openBlock(),r.createElementBlock("button",{key:0,type:"button",class:r.normalizeClass(["fe-tabs__split",{"is-active":e.splitActive}]),"aria-label":e.splitActive?r.unref(i)("tabs.split_off"):r.unref(i)("tabs.split"),title:e.splitActive?r.unref(i)("tabs.split_off"):r.unref(i)("tabs.split"),"aria-pressed":e.splitActive?"true":"false",onClick:g[2]||(g[2]=v=>a("toggle-split"))},[...g[3]||(g[3]=[r.createElementVNode("svg",{class:"fe-ficon",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"1.8","stroke-linecap":"round","stroke-linejoin":"round","aria-hidden":"true",focusable:"false"},[r.createElementVNode("rect",{x:"3",y:"4",width:"18",height:"16",rx:"2"}),r.createElementVNode("path",{d:"M12 4v16"})],-1)])],10,nk)):r.createCommentVNode("",!0)],8,jw))}}),eo=".filex-e2e.json",Uf="filexe2e",to=1,Hf=6e5,rk=6e5,hc=200*1024*1024,Gf=8,qf="filex-e2e-verify-v1",ll=new TextEncoder().encode(Uf),sl=97,pc=9,mc=21,ak=48,gc=69,Sr=12;class bc extends Error{constructor(t="e2e: decrypt failed"){super(t),this.name="E2eDecryptError"}}function Kf(e){let t="";for(let n=0;n<e.length;n++)t+=String.fromCharCode(e[n]);return btoa(t)}function Wf(e){const t=atob(e),n=new Uint8Array(t.length);for(let a=0;a<t.length;a++)n[a]=t.charCodeAt(a);return n}async function vc(e,t,n){const a=await crypto.subtle.importKey("raw",new TextEncoder().encode(e),"PBKDF2",!1,["deriveKey"]);return crypto.subtle.deriveKey({name:"PBKDF2",salt:new Uint8Array(t).buffer,iterations:n,hash:"SHA-256"},a,{name:"AES-GCM",length:256},!1,["encrypt","decrypt"])}async function Yf(e,t=Hf){const n=Math.max(rk,t),a=crypto.getRandomValues(new Uint8Array(16)),i=await vc(e,a,n),o=crypto.getRandomValues(new Uint8Array(Sr)),s=new Uint8Array(await crypto.subtle.encrypt({name:"AES-GCM",iv:o.buffer},i,new TextEncoder().encode(qf))),l=new Uint8Array(Sr+s.length);return l.set(o,0),l.set(s,Sr),{marker:{v:to,salt:Kf(a),iter:n,verify:Kf(l)},kek:i}}function jf(e){try{const t=JSON.parse(e);return!t||t.v!==to||typeof t.salt!="string"||typeof t.verify!="string"||typeof t.iter!="number"||t.iter<1?null:t}catch{return null}}async function Xf(e,t){const n=Wf(e.salt),a=await vc(t,n,e.iter),i=Wf(e.verify);if(i.length<=Sr)return null;try{const o=await crypto.subtle.decrypt({name:"AES-GCM",iv:i.slice(0,Sr).buffer},a,i.slice(Sr).buffer);return new TextDecoder().decode(o)!==qf?null:a}catch{return null}}function cl(e){const t=e instanceof Uint8Array?e:new Uint8Array(e);if(t.length<ll.length)return!1;for(let n=0;n<ll.length;n++)if(t[n]!==ll[n])return!1;return!0}async function Zf(e,t){if(t.byteLength>hc)throw new Error("e2e: file exceeds the 200MB single-shot limit");const n=crypto.getRandomValues(new Uint8Array(32)),a=await crypto.subtle.importKey("raw",n.buffer,{name:"AES-GCM"},!1,["encrypt"]),i=crypto.getRandomValues(new Uint8Array(Sr)),o=crypto.getRandomValues(new Uint8Array(Sr)),s=new Uint8Array(await crypto.subtle.encrypt({name:"AES-GCM",iv:i.buffer},e,n.buffer)),l=new Uint8Array(await crypto.subtle.encrypt({name:"AES-GCM",iv:o.buffer},a,t));n.fill(0);const c=new Uint8Array(sl+l.length);return c.set(ll,0),c[8]=to,c.set(i,pc),c.set(s,mc),c.set(o,gc),c.set(l,sl),c.buffer}async function yc(e,t){const n=new Uint8Array(t);if(!cl(n)||n.length<sl)throw new Error("e2e: not an encrypted file");if(n[8]!==to)throw new Error(`e2e: unsupported version ${n[8]}`);const a=n.slice(pc,pc+Sr),i=n.slice(mc,mc+ak),o=n.slice(gc,gc+Sr);let s;try{s=await crypto.subtle.decrypt({name:"AES-GCM",iv:a.buffer},e,i.buffer)}catch{throw new bc("e2e: DEK unwrap failed (wrong password?)")}const l=await crypto.subtle.importKey("raw",s,{name:"AES-GCM"},!1,["decrypt"]);try{return await crypto.subtle.decrypt({name:"AES-GCM",iv:o.buffer},l,n.slice(sl).buffer)}catch{throw new bc("e2e: content decrypt failed")}}function Jf(){const e=new Map;return{get(t){return e.get(t)},set(t,n){e.set(t,n)},lock(t){e.delete(t)},has(t){return e.has(t)},clear(){e.clear()}}}function Qf(e){const t=e.indexOf("://");return t===-1?e:e.slice(t+3)}function ik(e){return(e||[]).filter(t=>!(t.path.includes(".thumbs")||t.path.includes(".versions")||t.basename===".versions"||t.basename===".trash"||t.basename===".keepdir"||t.basename===eo))}const eh="filex.showHidden";function ok(){try{return localStorage.getItem(eh)==="1"}catch{return!1}}const no=r.ref(ok());function lk(e){no.value=e;try{localStorage.setItem(eh,e?"1":"0")}catch{}}function sk(e,t){return t?e||[]:(e||[]).filter(n=>!(n.basename||"").startsWith("."))}function th(e){return sk(ik(e),no.value)}function ck(e){const t=Qf(e);return t==="fileman"||t===""}function dk(e){return Qf(e).startsWith("fileman/.trash")}function uk(e){return{type:"dir",path:`${e}://fileman/.trash`,basename:".trash",extension:"",storage:e,visibility:"private",size:0,file_size:0,mime_type:"inode/directory",extra_metadata:{}}}function nh(e,t,n,a){return!a||dk(n)||!ck(n)?!1:(e.unshift(uk(t)),!0)}async function rh(e,t,n){try{const{entries:a}=await n.listTrash(t),i=e.find(l=>l.basename===".trash");if(!i)return;let o=0,s=0;for(const l of a){o+=l.size||0;const c=Date.parse(l.deleted_at);!Number.isNaN(c)&&c>s&&(s=c)}i.size=o,s>0&&(i.last_modified=s)}catch{}}const fk=["aria-label"],hk={class:"fe-split__crumbs"},pk=["title"],mk=["title","onClick"],gk=["aria-label","title"],bk={key:0,class:"fe-split__state",role:"status"},vk={key:1,class:"fe-split__state"},yk={key:2,class:"fe-split__state"},_c="application/x-brf-files",ah="application/x-brf-files-src",ih=r.defineComponent({__name:"SecondaryPane",props:{api:{},initialPath:{},locale:{},qualify:{type:Function},toUser:{type:Function},clamp:{type:Function},rootLabel:{},floor:{},multiRoot:{type:Boolean},virtualRows:{type:Function},active:{type:Boolean},viewMode:{},thumbSrc:{type:Function},trashVisible:{type:Boolean}},emits:["navigate","activate","close","open-tab","transfer","context","open-trash"],setup(e,{expose:t,emit:n}){const a=e,i=n,{t:o}=qt(()=>a.locale),s=r.ref(""),l=r.ref([]),c=r.ref(!1),d=r.ref(""),u=r.ref(new Set);function h(F){return F.mime_type==="inode/storage"}const f=r.computed(()=>!!a.multiRoot&&!(s.value??"").replace(/^\/+|\/+$/g,""));async function p(F){const I=a.clamp(F??s.value??"");c.value=!0,d.value="";try{if(a.multiRoot&&!I){l.value=a.virtualRows?a.virtualRows():[],s.value="",u.value=new Set,i("navigate","");return}const H=await a.api.index(a.qualify(I));l.value=th(H.files),nh(l.value,H.adapter,H.dirname,a.trashVisible!==!1)&&rh(l.value,H.adapter,a.api),s.value=a.toUser(H.dirname),u.value=new Set,i("navigate",s.value)}catch(H){d.value=H instanceof Error?H.message:String(H)}finally{c.value=!1}}p(a.initialPath??"");const w=r.computed(()=>{const F=(s.value||"").replace(/^\/+|\/+$/g,""),I=F?F.split("/"):[],H=(a.floor||"").replace(/^\/+|\/+$/g,""),G=[];let oe="";for(const de of I)oe=oe?`${oe}/${de}`:de,!(H&&!(oe===H||oe.startsWith(H+"/")))&&G.push({label:de,target:oe,last:!1});return G.length>0&&(G[G.length-1].last=!0),G}),g=r.computed(()=>!a.floor);function v(F){i("activate"),p(F)}function m(F,I){i("activate");const H=I.ctrl||I.shift,G=new Set(H?u.value:[]);H&&G.has(F.path)?G.delete(F.path):G.add(F.path),u.value=G}function b(F,I){I.preventDefault(),I.stopPropagation(),i("activate"),u.value.has(F.path)||(u.value=new Set([F.path])),i("context",F,I)}function y(F){F.preventDefault(),F.stopPropagation(),i("activate"),u.value=new Set,i("context",null,F)}function _(F,I){E.value=!1,!(F.type!=="dir"||h(F))&&k(I)&&N(I,F.path)}function S(F){if(F.type==="dir"){if(F.basename===".trash"){i("activate"),i("open-trash");return}p(h(F)?F.path:a.toUser(F.path))}}function A(){u.value=new Set}function T(F,I){if(!I.dataTransfer)return;if(h(F)||f.value||F.basename===".trash"){I.preventDefault();return}u.value.has(F.path)||(u.value=new Set([F.path]));const H=l.value.filter(G=>u.value.has(G.path)&&!h(G)).map(G=>({path:G.path,basename:G.basename,type:G.type}));if(H.length===0){I.preventDefault();return}I.dataTransfer.setData(_c,JSON.stringify(H)),I.dataTransfer.setData(ah,a.qualify(s.value)),I.dataTransfer.setData("text/plain",H.map(G=>G.path).join(`
2
2
  `)),I.dataTransfer.effectAllowed="move"}const E=r.ref(!1);function k(F){var I;return!!((I=F.dataTransfer)!=null&&I.types.includes(_c))}function N(F,I){var ve,Ee;const H=(ve=F.dataTransfer)==null?void 0:ve.getData(_c);if(!H||!I)return;let G=[];try{G=JSON.parse(H)}catch{return}const oe=((Ee=F.dataTransfer)==null?void 0:Ee.getData(ah))||void 0,de=G.map(ne=>ne.path).filter(ne=>ne&&ne!==I&&!I.startsWith(ne+"/"));de.length!==0&&(F.preventDefault(),F.stopPropagation(),i("transfer",{sources:de,targetWire:I,originWire:oe}))}function D(F){!k(F)||f.value||(F.preventDefault(),F.stopPropagation(),F.dataTransfer&&(F.dataTransfer.dropEffect="move"),E.value=!0)}function U(){E.value=!1}function L(F){E.value=!1,!(!k(F)||f.value)&&N(F,a.qualify(s.value))}function q(){const F=(s.value??"").replace(/^\/+|\/+$/g,""),I=(a.floor||"").replace(/^\/+|\/+$/g,"");if(!F||F===I)return;const H=F.lastIndexOf("/");p(H===-1?"":F.slice(0,H))}function X(){u.value=new Set(l.value.filter(F=>!h(F)).map(F=>F.path))}function $(){return l.value.filter(F=>u.value.has(F.path))}function j(){const F=$()[0];F&&F.type==="dir"&&S(F)}function J(){return p()}function V(){return s.value}return t({reload:J,goUp:q,selectAll:X,openSelected:j,selectedNodes:$,getPath:V}),(F,I)=>(r.openBlock(),r.createElementBlock("section",{class:r.normalizeClass(["fe-split",{"fe-pane--focus":e.active}]),role:"region","aria-label":r.unref(o)("split.pane"),onPointerdown:I[3]||(I[3]=H=>i("activate"))},[r.createElementVNode("header",hk,[g.value?(r.openBlock(),r.createElementBlock("button",{key:0,type:"button",class:r.normalizeClass(["fe-split__crumb",{"is-last":w.value.length===0}]),title:e.rootLabel,onClick:I[0]||(I[0]=H=>v(""))},r.toDisplayString(e.rootLabel),11,pk)):r.createCommentVNode("",!0),(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(w.value,H=>(r.openBlock(),r.createElementBlock(r.Fragment,{key:H.target},[I[4]||(I[4]=r.createElementVNode("span",{class:"fe-split__sep","aria-hidden":"true"},"›",-1)),r.createElementVNode("button",{type:"button",class:r.normalizeClass(["fe-split__crumb",{"is-last":H.last}]),title:H.label,onClick:G=>v(H.target)},r.toDisplayString(H.label),11,mk)],64))),128)),I[5]||(I[5]=r.createElementVNode("span",{class:"fe-split__spacer"},null,-1)),r.createElementVNode("button",{type:"button",class:"fe-split__closebtn","aria-label":r.unref(o)("split.close"),title:r.unref(o)("split.close"),onClick:I[1]||(I[1]=H=>i("close"))},"×",8,gk)]),r.createElementVNode("div",{class:r.normalizeClass(["fe-split__body",{"is-dropover":E.value}]),onClick:r.withModifiers(A,["self"]),onContextmenu:y,onDragover:D,onDragleave:U,onDrop:L},[c.value&&l.value.length===0?(r.openBlock(),r.createElementBlock("div",bk,r.toDisplayString(r.unref(o)("loading")),1)):d.value?(r.openBlock(),r.createElementBlock("div",vk,[r.createElementVNode("span",null,r.toDisplayString(r.unref(o)("split.error")),1),r.createElementVNode("button",{type:"button",class:"fe-btn",onClick:I[2]||(I[2]=()=>p())},r.toDisplayString(r.unref(o)("split.retry")),1)])):l.value.length===0?(r.openBlock(),r.createElementBlock("div",yk,r.toDisplayString(r.unref(o)("empty.folder")),1)):(e.viewMode??"list")==="list"?(r.openBlock(),r.createBlock(_f,{key:3,files:l.value,selected:u.value,locale:e.locale,loading:c.value,onClickRow:m,onDblRow:S,onContextRow:b,onItemDragStart:T,onItemDropInto:_},null,8,["files","selected","locale","loading"])):e.viewMode==="grid"?(r.openBlock(),r.createBlock(wf,{key:4,files:l.value,selected:u.value,locale:e.locale,loading:c.value,"thumb-src":e.thumbSrc,onClickCard:m,onDblCard:S,onContextCard:b,onItemDragStart:T,onItemDropInto:_},null,8,["files","selected","locale","loading","thumb-src"])):(r.openBlock(),r.createBlock(kf,{key:5,files:l.value,selected:u.value,locale:e.locale,loading:c.value,"thumb-src":e.thumbSrc,onClickCard:m,onDblCard:S,onContextCard:b,onItemDragStart:T,onItemDropInto:_},null,8,["files","selected","locale","loading","thumb-src"]))],34)],42,fk))}});function wc(){try{return crypto.randomUUID()}catch{return`t${Date.now().toString(36)}-${Math.random().toString(36).slice(2,8)}`}}function oh(e){const t=r.ref([]),n=r.ref(""),a=r.computed(()=>t.value.find(v=>v.id===n.value)??null),i=r.computed(()=>t.value.findIndex(v=>v.id===n.value)),o=r.computed(()=>t.value.length>1);function s(){if(!e.storageKey)return!1;try{const v=localStorage.getItem(e.storageKey);if(!v)return!1;const m=JSON.parse(v);if(!m||!Array.isArray(m.tabs)||m.tabs.length===0)return!1;const b=[];for(const y of m.tabs){if(!y||typeof y.path!="string")continue;const _=typeof y.viewMode=="string"&&y.viewMode?y.viewMode:"list",S=y.split,A=S&&typeof S=="object"&&typeof S.path=="string"?{path:S.path,viewMode:typeof S.viewMode=="string"&&S.viewMode?S.viewMode:void 0}:null;b.push({id:typeof y.id=="string"&&y.id?y.id:wc(),path:y.path,viewMode:_,split:A})}return b.length===0?!1:(t.value=b,n.value=b.some(y=>y.id===m.active)?String(m.active):b[0].id,!0)}catch{return!1}}function l(){if(e.storageKey)try{localStorage.setItem(e.storageKey,JSON.stringify({v:1,active:n.value,tabs:t.value}))}catch{}}r.watch([t,n],l,{deep:!0});function c(v,m){if(t.value.length>0)return;const b={id:wc(),path:v,viewMode:m,split:null};t.value=[b],n.value=b.id}function d(v){const m=a.value;m&&(v.path!==void 0&&(m.path=v.path),v.viewMode!==void 0&&(m.viewMode=v.viewMode))}function u(v,m){const b={id:wc(),path:v,viewMode:m.viewMode,split:m.split??null},y=i.value;return t.value.splice(y===-1?t.value.length:y+1,0,b),m.background||(n.value=b.id),b}function h(v){if(t.value.length<=1)return null;const m=t.value.findIndex(_=>_.id===v);if(m===-1)return null;const b=t.value[m].id===n.value;if(t.value.splice(m,1),!b)return null;const y=t.value[Math.min(m,t.value.length-1)];return n.value=y.id,y}function f(v){const m=t.value.find(b=>b.id===v);return!m||m.id===n.value?null:(n.value=m.id,m)}function p(v){if(t.value.length<2)return null;const m=i.value===-1?0:i.value,b=t.value[(m+v+t.value.length)%t.value.length];return f(b.id)}function w(v,m){if(v===m||v<0||m<0||v>=t.value.length||m>=t.value.length)return;const b=[...t.value],[y]=b.splice(v,1);b.splice(m,0,y),t.value=b}function g(v){const m=a.value;m&&(m.split=v)}return{tabs:t,activeId:n,activeTab:a,activeIndex:i,hasMultiple:o,restore:s,seed:c,syncActive:d,openTab:u,closeTab:h,activate:f,step:p,move:w,setSplit:g}}const _k=["placeholder","disabled"],wk=["placeholder","disabled"],kk=["placeholder","disabled","onKeydown"],Ek={class:"fe-e2e-warn",role:"alert"},xk={class:"fe-e2e-ack"},Sk=["disabled"],Ck={key:0,class:"fe-form__error"},Nk=["disabled"],Tk=["disabled"],lh=r.defineComponent({__name:"EncryptedFolderModal",props:{open:{type:Boolean},locale:{},busy:{type:Boolean}},emits:["close","submit"],setup(e,{emit:t}){const n=e,a=t,{t:i}=qt(()=>n.locale),o=r.ref(""),s=r.ref(""),l=r.ref(""),c=r.ref(!1),d=r.ref(null);r.watch(()=>n.open,h=>{h&&(o.value="",s.value="",l.value="",c.value=!1,d.value=null)});function u(){if(n.busy)return;const h=o.value.trim();if(!h){d.value=i("modal.newfolder.placeholder");return}if(/[\\/]/.test(h)||h==="."||h===".."||h.startsWith(".filex")){d.value=i("e2e.create.bad_name");return}if(s.value.length<Gf){d.value=i("e2e.create.pw_short");return}if(s.value!==l.value){d.value=i("e2e.create.pw_mismatch");return}if(!c.value){d.value=i("e2e.create.ack_required");return}d.value=null,a("submit",{name:h,password:s.value})}return(h,f)=>(r.openBlock(),r.createBlock($r,{open:e.open,title:r.unref(i)("e2e.create.title"),size:"sm",onClose:f[5]||(f[5]=p=>a("close"))},{actions:r.withCtx(()=>[r.createElementVNode("button",{type:"button",class:"fe-btn",disabled:e.busy,onClick:f[4]||(f[4]=p=>a("close"))},r.toDisplayString(r.unref(i)("modal.newfolder.cancel")),9,Nk),r.createElementVNode("button",{type:"button",class:"fe-btn fe-btn--primary",disabled:e.busy,onClick:u},r.toDisplayString(e.busy?r.unref(i)("e2e.create.busy"):r.unref(i)("e2e.create.create")),9,Tk)]),default:r.withCtx(()=>[r.createElementVNode("form",{class:"fe-e2e-form",onSubmit:r.withModifiers(u,["prevent"])},[r.withDirectives(r.createElementVNode("input",{"onUpdate:modelValue":f[0]||(f[0]=p=>o.value=p),type:"text",class:"fe-input",placeholder:r.unref(i)("modal.newfolder.placeholder"),autocomplete:"off",disabled:e.busy},null,8,_k),[[r.vModelText,o.value]]),r.withDirectives(r.createElementVNode("input",{"onUpdate:modelValue":f[1]||(f[1]=p=>s.value=p),type:"password",class:"fe-input",placeholder:r.unref(i)("e2e.create.pw_placeholder"),autocomplete:"new-password",disabled:e.busy},null,8,wk),[[r.vModelText,s.value]]),r.withDirectives(r.createElementVNode("input",{"onUpdate:modelValue":f[2]||(f[2]=p=>l.value=p),type:"password",class:"fe-input",placeholder:r.unref(i)("e2e.create.pw2_placeholder"),autocomplete:"new-password",disabled:e.busy,onKeydown:r.withKeys(r.withModifiers(u,["prevent"]),["enter"])},null,40,kk),[[r.vModelText,l.value]]),r.createElementVNode("div",Ek,[r.createElementVNode("strong",null,r.toDisplayString(r.unref(i)("e2e.create.warn_title")),1),r.createElementVNode("p",null,r.toDisplayString(r.unref(i)("e2e.create.warn_body")),1)]),r.createElementVNode("label",xk,[r.withDirectives(r.createElementVNode("input",{"onUpdate:modelValue":f[3]||(f[3]=p=>c.value=p),type:"checkbox",disabled:e.busy},null,8,Sk),[[r.vModelCheckbox,c.value]]),r.createElementVNode("span",null,r.toDisplayString(r.unref(i)("e2e.create.ack")),1)]),d.value?(r.openBlock(),r.createElementBlock("p",Ck,r.toDisplayString(d.value),1)):r.createCommentVNode("",!0)],32)]),_:1},8,["open","title"]))}}),Ak=["placeholder","onKeydown"],Dk={key:0,class:"fe-form__error"},Mk=r.defineComponent({__name:"NewFolderModal",props:{open:{type:Boolean},locale:{},encryptedOption:{type:Boolean}},emits:["close","submit","encrypted"],setup(e,{emit:t}){const n=e,a=t,{t:i}=qt(()=>n.locale),o=r.ref(""),s=r.ref(null);r.watch(()=>n.open,c=>{c&&(o.value="",s.value=null)});function l(){const c=o.value.trim();if(!c){s.value=i("modal.newfolder.placeholder");return}if(/[\\/]/.test(c)||c==="."||c===".."){s.value="Geçersiz karakter";return}a("submit",c)}return(c,d)=>(r.openBlock(),r.createBlock($r,{open:e.open,title:r.unref(i)("modal.newfolder.title"),size:"sm",onClose:d[3]||(d[3]=u=>a("close"))},{actions:r.withCtx(()=>[r.createElementVNode("button",{type:"button",class:"fe-btn",onClick:d[2]||(d[2]=u=>a("close"))},r.toDisplayString(r.unref(i)("modal.newfolder.cancel")),1),r.createElementVNode("button",{type:"button",class:"fe-btn fe-btn--primary",onClick:l},r.toDisplayString(r.unref(i)("modal.newfolder.create")),1)]),default:r.withCtx(()=>[r.createElementVNode("form",{onSubmit:r.withModifiers(l,["prevent"])},[r.withDirectives(r.createElementVNode("input",{"onUpdate:modelValue":d[0]||(d[0]=u=>o.value=u),type:"text",class:"fe-input",placeholder:r.unref(i)("modal.newfolder.placeholder"),autocomplete:"off",onKeydown:r.withKeys(r.withModifiers(l,["prevent"]),["enter"])},null,40,Ak),[[r.vModelText,o.value]]),s.value?(r.openBlock(),r.createElementBlock("p",Dk,r.toDisplayString(s.value),1)):r.createCommentVNode("",!0),e.encryptedOption!==!1?(r.openBlock(),r.createElementBlock("button",{key:1,type:"button",class:"fe-e2e-optlink",onClick:d[1]||(d[1]=u=>a("encrypted"))}," 🔒 "+r.toDisplayString(r.unref(i)("e2e.create.option")),1)):r.createCommentVNode("",!0)],32)]),_:1},8,["open","title"]))}}),Bk=["onKeydown"],Ok=r.defineComponent({__name:"RenameModal",props:{open:{type:Boolean},locale:{},currentName:{}},emits:["close","submit"],setup(e,{emit:t}){const n=e,a=t,{t:i}=qt(()=>n.locale),o=r.ref("");r.watch(()=>[n.open,n.currentName],([l,c])=>{l&&(o.value=c)});function s(){const l=o.value.trim();l&&(/[\\/]/.test(l)||l==="."||l===".."||a("submit",l))}return(l,c)=>(r.openBlock(),r.createBlock($r,{open:e.open,title:r.unref(i)("modal.rename.title"),size:"sm",onClose:c[2]||(c[2]=d=>a("close"))},{actions:r.withCtx(()=>[r.createElementVNode("button",{type:"button",class:"fe-btn",onClick:c[1]||(c[1]=d=>a("close"))},r.toDisplayString(r.unref(i)("modal.rename.cancel")),1),r.createElementVNode("button",{type:"button",class:"fe-btn fe-btn--primary",onClick:s},r.toDisplayString(r.unref(i)("modal.rename.save")),1)]),default:r.withCtx(()=>[r.createElementVNode("form",{onSubmit:r.withModifiers(s,["prevent"])},[r.withDirectives(r.createElementVNode("input",{"onUpdate:modelValue":c[0]||(c[0]=d=>o.value=d),type:"text",class:"fe-input",autocomplete:"off",onKeydown:r.withKeys(r.withModifiers(s,["prevent"]),["enter"])},null,40,Bk),[[r.vModelText,o.value]])],32)]),_:1},8,["open","title"]))}}),Ik=r.defineComponent({__name:"DeleteConfirmModal",props:{open:{type:Boolean},locale:{},count:{}},emits:["close","confirm"],setup(e,{emit:t}){const n=e,a=t,{t:i}=qt(()=>n.locale);return(o,s)=>(r.openBlock(),r.createBlock($r,{open:e.open,title:r.unref(i)("modal.delete.title"),size:"sm",onClose:s[2]||(s[2]=l=>a("close"))},{actions:r.withCtx(()=>[r.createElementVNode("button",{type:"button",class:"fe-btn",onClick:s[0]||(s[0]=l=>a("close"))},r.toDisplayString(r.unref(i)("modal.delete.cancel")),1),r.createElementVNode("button",{type:"button",class:"fe-btn fe-btn--danger",onClick:s[1]||(s[1]=l=>a("confirm"))},r.toDisplayString(r.unref(i)("modal.delete.confirm")),1)]),default:r.withCtx(()=>[r.createElementVNode("p",null,r.toDisplayString(r.unref(i)("modal.delete.message",{count:e.count})),1)]),_:1},8,["open","title"]))}}),Rk={class:"fe-form__row"},Lk={class:"fe-form__row fe-form__row--stack"},Fk={class:"fe-form__row fe-form__row--stack"},zk={key:1,class:"fe-share-result"},Pk={class:"fe-share-result__row"},$k={class:"fe-share-result__copy"},Vk=["value"],Uk={key:0,class:"fe-share-result__row"},Hk={class:"fe-share-result__copy"},Gk=["value"],qk={class:"fe-share-result__row"},Kk={class:"fe-share-result__copy"},Wk=["value"],Yk=r.defineComponent({__name:"ShareModal",props:{open:{type:Boolean},locale:{},share:{}},emits:["close","submit","toast"],setup(e,{emit:t}){const n=e,a=t,{t:i}=qt(()=>n.locale),o=r.ref(!1),s=r.ref(""),l=r.ref("");r.watch(()=>n.open,f=>{f&&(o.value=!1,s.value="",l.value="")});function c(){a("submit",{password:o.value,expires_at:s.value?new Date(s.value).toISOString():null,max_downloads:l.value?Number(l.value):null})}async function d(f,p){try{await navigator.clipboard.writeText(f),a("toast",p)}catch{}}function u(f){return`'${f.replace(/'/g,"'\\''")}'`}const h=r.computed(()=>{const f=n.share;if(!f)return"";let p=f.url;return f.password_pin&&(p+=(p.includes("?")?"&":"?")+"pin="+encodeURIComponent(f.password_pin)),`curl -fSL ${f.filename?`-o ${u(f.filename)} `:"-OJ "}${u(p)}`});return(f,p)=>(r.openBlock(),r.createBlock($r,{open:e.open,title:r.unref(i)("modal.share.title"),size:"md",onClose:p[7]||(p[7]=w=>a("close"))},{actions:r.withCtx(()=>[r.createElementVNode("button",{type:"button",class:"fe-btn",onClick:p[6]||(p[6]=w=>a("close"))},r.toDisplayString(e.share?"Kapat":r.unref(i)("modal.share.cancel")),1),e.share?r.createCommentVNode("",!0):(r.openBlock(),r.createElementBlock("button",{key:0,type:"button",class:"fe-btn fe-btn--primary",onClick:c},r.toDisplayString(r.unref(i)("modal.share.create")),1))]),default:r.withCtx(()=>[e.share?(r.openBlock(),r.createElementBlock("div",zk,[r.createElementVNode("div",Pk,[p[8]||(p[8]=r.createElementVNode("label",null,"Link",-1)),r.createElementVNode("div",$k,[r.createElementVNode("input",{value:e.share.url,readonly:"",class:"fe-input"},null,8,Vk),r.createElementVNode("button",{type:"button",class:"fe-btn",onClick:p[3]||(p[3]=w=>d(e.share.url,r.unref(i)("modal.share.url_copied")))},r.toDisplayString(r.unref(i)("modal.share.copy")),1)])]),e.share.password_pin?(r.openBlock(),r.createElementBlock("div",Uk,[p[9]||(p[9]=r.createElementVNode("label",null,"PIN",-1)),r.createElementVNode("div",Hk,[r.createElementVNode("input",{value:e.share.password_pin,readonly:"",class:"fe-input fe-input--mono"},null,8,Gk),r.createElementVNode("button",{type:"button",class:"fe-btn",onClick:p[4]||(p[4]=w=>d(e.share.password_pin,r.unref(i)("modal.share.pin_copied")))},r.toDisplayString(r.unref(i)("modal.share.copy")),1)])])):r.createCommentVNode("",!0),r.createElementVNode("div",qk,[p[10]||(p[10]=r.createElementVNode("label",null,"CLI",-1)),r.createElementVNode("div",Kk,[r.createElementVNode("input",{value:h.value,readonly:"",class:"fe-input fe-input--mono"},null,8,Wk),r.createElementVNode("button",{type:"button",class:"fe-btn",onClick:p[5]||(p[5]=w=>d(h.value,r.unref(i)("modal.share.cli_copied")))},r.toDisplayString(r.unref(i)("modal.share.copy")),1)])])])):(r.openBlock(),r.createElementBlock("form",{key:0,class:"fe-form",onSubmit:r.withModifiers(c,["prevent"])},[r.createElementVNode("label",Rk,[r.withDirectives(r.createElementVNode("input",{"onUpdate:modelValue":p[0]||(p[0]=w=>o.value=w),type:"checkbox"},null,512),[[r.vModelCheckbox,o.value]]),r.createElementVNode("span",null,r.toDisplayString(r.unref(i)("modal.share.pin")),1)]),r.createElementVNode("label",Lk,[r.createElementVNode("span",null,r.toDisplayString(r.unref(i)("modal.share.expires")),1),r.withDirectives(r.createElementVNode("input",{"onUpdate:modelValue":p[1]||(p[1]=w=>s.value=w),type:"datetime-local",class:"fe-input"},null,512),[[r.vModelText,s.value]])]),r.createElementVNode("label",Fk,[r.createElementVNode("span",null,r.toDisplayString(r.unref(i)("modal.share.max_downloads")),1),r.withDirectives(r.createElementVNode("input",{"onUpdate:modelValue":p[2]||(p[2]=w=>l.value=w),type:"number",min:"1",class:"fe-input"},null,512),[[r.vModelText,l.value]])])],32))]),_:1},8,["open","title"]))}}),jk={class:"filex-cv"},Xk={class:"filex-cv__head"},Zk={key:0,class:"filex-cv__msg"},Jk={key:1,class:"filex-cv__msg filex-cv__ok"},Qk={class:"filex-cv__src"},e7=["placeholder"],t7={class:"filex-cv__list"},n7=["onClick"],r7={key:0,class:"filex-cv__empty"},a7={key:0,class:"filex-cv__err"},i7={class:"filex-cv__foot"},o7=["disabled"],l7=["src"],s7=r.defineComponent({__name:"ConvertModal",props:{convertUrl:{},fileName:{},fetchBytes:{type:Function},upload:{type:Function},t:{type:Function}},emits:["close","done"],setup(e,{emit:t}){const n=e,a=t,i=r.ref(null),o=r.ref("loading"),s=r.ref(null),l=r.ref([]),c=r.ref(""),d=r.ref(null),u=r.computed(()=>(n.fileName.split(".").pop()||"").toLowerCase()),h=r.computed(()=>{const S=l.value.filter(A=>A.from);return S.find(A=>(A.ext||"").toLowerCase()===u.value)||S.find(A=>(A.format||"").toLowerCase()===u.value)||null}),f=r.computed(()=>{const S=c.value.trim().toLowerCase(),A=new Set,T=[];for(const E of l.value){if(!E.to)continue;const k=(E.ext||E.format||"").toLowerCase();!k||A.has(k)||(A.add(k),T.push(E))}return T.sort((E,k)=>(E.ext||E.format).localeCompare(k.ext||k.format)),S?T.filter(E=>(E.ext||"").toLowerCase().includes(S)||(E.format||"").toLowerCase().includes(S)||(E.name||"").toLowerCase().includes(S)||(E.mime||"").toLowerCase().includes(S)):T}),p=r.computed(()=>`${n.convertUrl.replace(/\/$/,"")}/?embed=1`);let w=0;const g=new Map;function v(S,A={},T=[]){const E=++w;return new Promise((k,N)=>{var D,U;g.set(E,{resolve:k,reject:N}),(U=(D=i.value)==null?void 0:D.contentWindow)==null||U.postMessage({target:"convert-embed",id:E,cmd:S,...A},"*",T),setTimeout(()=>{g.has(E)&&(g.delete(E),N(new Error("convert timeout")))},18e4)})}function m(S){const A=S.data;if(!A||A.source!=="convert-embed")return;if(A.event==="ready"){b();return}const T=g.get(A.id);T&&(g.delete(A.id),A.ok?T.resolve(A):T.reject(new Error(A.error||"convert error")))}async function b(){try{const S=await v("listFormats");l.value=S.formats||[],o.value="ready",h.value||(s.value=_("convert.unsupportedInput","Bu dosya tipi için kaynak format bulunamadı."))}catch(S){s.value=S.message,o.value="error"}}async function y(){if(!(!d.value||!h.value)){o.value="converting",s.value=null;try{const S=await n.fetchBytes(),A=await v("convert",{name:n.fileName,bytes:S,fromIndex:h.value.index,toIndex:d.value.index},[S]),T=n.fileName.replace(/\.[^.]+$/,""),E=A.ext||d.value.ext||d.value.format,k=`${T}.${E}`,N=new File([A.bytes],k,{type:d.value.mime||"application/octet-stream"});await n.upload(N),o.value="done",a("done",k)}catch(S){s.value=S.message,o.value="error"}}}function _(S,A){return n.t?n.t(S,A):A}return r.onMounted(()=>window.addEventListener("message",m)),r.onBeforeUnmount(()=>window.removeEventListener("message",m)),(S,A)=>(r.openBlock(),r.createElementBlock("div",{class:"filex-cv__bg",onClick:A[3]||(A[3]=r.withModifiers(T=>a("close"),["self"]))},[r.createElementVNode("div",jk,[r.createElementVNode("header",Xk,[r.createElementVNode("h3",null,r.toDisplayString(_("convert.title","Dönüştür"))+" — "+r.toDisplayString(e.fileName),1),r.createElementVNode("button",{class:"filex-cv__x",onClick:A[0]||(A[0]=T=>a("close"))},"✕")]),o.value==="loading"?(r.openBlock(),r.createElementBlock("div",Zk,r.toDisplayString(_("convert.loading","Dönüştürücü yükleniyor…")),1)):o.value==="done"?(r.openBlock(),r.createElementBlock("div",Jk,[r.createElementVNode("p",null,"✓ "+r.toDisplayString(_("convert.done","Dönüştürüldü ve klasöre yüklendi.")),1),r.createElementVNode("button",{class:"filex-cv__convert",onClick:A[1]||(A[1]=T=>a("close"))},r.toDisplayString(_("convert.close","Kapat")),1)])):(r.openBlock(),r.createElementBlock(r.Fragment,{key:2},[r.createElementVNode("p",Qk,[r.createTextVNode(r.toDisplayString(_("convert.from","Kaynak"))+": ",1),r.createElementVNode("b",null,r.toDisplayString(u.value||"?"),1)]),r.withDirectives(r.createElementVNode("input",{"onUpdate:modelValue":A[2]||(A[2]=T=>c.value=T),class:"filex-cv__search",placeholder:_("convert.searchFmt","Hedef format ara (pdf, mp4, png…)")},null,8,e7),[[r.vModelText,c.value]]),r.createElementVNode("div",t7,[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(f.value,T=>{var E;return r.openBlock(),r.createElementBlock("button",{key:T.index,class:r.normalizeClass(["filex-cv__fmt",{"is-sel":((E=d.value)==null?void 0:E.index)===T.index}]),onClick:k=>d.value=T},[r.createElementVNode("b",null,r.toDisplayString((T.ext||T.format).toUpperCase()),1),r.createElementVNode("small",null,r.toDisplayString(T.name),1)],10,n7)}),128)),f.value.length===0?(r.openBlock(),r.createElementBlock("div",r7,r.toDisplayString(_("convert.noFmt","Eşleşen format yok.")),1)):r.createCommentVNode("",!0)]),s.value?(r.openBlock(),r.createElementBlock("div",a7,r.toDisplayString(s.value),1)):r.createCommentVNode("",!0),r.createElementVNode("footer",i7,[r.createElementVNode("button",{class:"filex-cv__convert",disabled:!d.value||!h.value||o.value==="converting",onClick:y},r.toDisplayString(o.value==="converting"?_("convert.converting","Dönüştürülüyor…"):_("convert.convert","Dönüştür")),9,o7)])],64)),r.createElementVNode("iframe",{ref_key:"iframeRef",ref:i,src:p.value,class:"filex-cv__frame",title:"converter"},null,8,l7)])]))}}),c7={class:"fx-perm-modal"},d7={class:"fx-perm-head"},u7={class:"fx-perm-title"},f7={class:"fx-perm-ico","aria-hidden":"true"},h7={class:"fx-perm-titletext"},p7=["title"],m7={class:"fx-perm-subdim"},g7={class:"fx-perm-tabs"},b7={class:"fx-perm-body"},v7={key:0,class:"fx-perm-warn"},y7={key:1,class:"fx-perm-warn"},_7={key:2,class:"fx-perm-muted"},w7={class:"fx-perm-addcard"},k7={class:"fx-perm-add"},E7={class:"fx-perm-emailwrap"},x7=["placeholder"],S7={key:0,class:"fx-perm-suggest"},C7=["onMousedown"],N7={class:"fx-perm-suggest-av"},T7={class:"fx-perm-suggest-txt"},A7={class:"fx-perm-suggest-name"},D7={class:"fx-perm-suggest-meta"},M7=["title"],B7=["value"],O7=["disabled"],I7={key:0,class:"fx-perm-invite"},R7={class:"fx-perm-muted"},L7={class:"fx-perm-invite-actions"},F7={class:"fx-perm-invite-row"},z7={value:"user"},P7={value:"viewer"},$7=["disabled"],V7=["disabled"],U7={key:1,class:"fx-perm-notice"},H7={key:2,class:"fx-perm-reveal"},G7={class:"fx-perm-section"},q7={key:0,class:"fx-perm-empty"},K7={class:"fx-perm-av"},W7=["title"],Y7=["value","onChange"],j7=["value"],X7=["disabled","title","onClick"],Z7={class:"fx-perm-av fx-perm-av--dim"},J7=["title"],Q7={class:"fx-perm-badge"},eE=["title"],tE={class:"fx-perm-addcard"},nE={class:"fx-perm-share-opts"},rE={class:"fx-perm-check"},aE={class:"fx-perm-expiry"},iE={class:"fx-perm-muted"},oE=["value"],lE={class:"fx-perm-expiry"},sE={class:"fx-perm-muted"},cE=["value"],dE=["disabled"],uE={key:0,class:"fx-perm-warn"},fE={key:1,class:"fx-perm-result"},hE={class:"fx-perm-linkrow"},pE=["href"],mE={key:0,class:"fx-perm-pin"},gE={class:"fx-perm-mailrow"},bE=["placeholder"],vE=["disabled"],yE={key:1,class:"fx-perm-notice"},_E={key:2,class:"fx-perm-hint"},wE={class:"fx-perm-section"},kE={key:0,class:"fx-perm-empty"},EE=["title"],xE=["onClick"],SE=["disabled","title","onClick"],CE={key:2,class:"fx-perm-addcard"},NE={class:"fx-perm-muted fx-perm-dropintro"},TE={class:"fx-perm-share-opts"},AE={class:"fx-perm-check"},DE={class:"fx-perm-expiry"},ME={class:"fx-perm-muted"},BE=["value"],OE=["disabled"],IE={key:0,class:"fx-perm-adv"},RE={class:"fx-perm-adv-row"},LE={class:"fx-perm-muted"},FE={class:"fx-perm-adv-row"},zE={class:"fx-perm-muted"},PE={class:"fx-perm-adv-row"},$E={class:"fx-perm-muted"},VE=["placeholder"],UE={class:"fx-perm-check"},HE={key:1,class:"fx-perm-warn"},GE={key:2,class:"fx-perm-result"},qE={class:"fx-perm-linkrow"},KE=["href"],WE={key:0,class:"fx-perm-pin"},YE={class:"fx-perm-mailrow"},jE=["placeholder"],XE=["disabled"],ZE={key:1,class:"fx-perm-notice"},JE=r.defineComponent({__name:"PermissionsModal",props:{api:{},path:{},isDir:{type:Boolean},size:{},locale:{}},emits:["close"],setup(e,{emit:t}){const n=e,a=t,i=r.computed(()=>(n.locale??"tr")!=="en");function o(R,K){return i.value?R:K}const s=r.computed(()=>{const R=/^([^:]+):\/\/(.*)$/.exec(n.path),K=R?R[1]:"",ae=R?R[2]:n.path,Ge=ae.split("/").filter(Boolean);return{adapter:K,name:Ge.length?Ge[Ge.length-1]:K,rel:ae}}),l=r.ref("perms"),c=r.ref(!1),d=r.ref(!0),u=r.ref(""),h=r.ref([]),f=r.ref([]),p=r.ref(!0),w=r.ref(""),g=r.ref("viewer"),v=r.ref(!1),m=r.ref(""),b=r.ref(!1),y=r.ref("user"),_=r.ref(null),S=r.ref([]),A=r.ref(!1);let T;const E=[{v:"viewer",l:o("Görüntüleyen","Viewer"),d:o("görüntüle + indir","view + download")},{v:"editor",l:o("Düzenleyen","Editor"),d:o("oku + yaz + sil","read + write + delete")},{v:"owner",l:o("Sahip","Owner"),d:o("düzenle + izin yönet","edit + manage access")}];function k(R){var K;return((K=E.find(ae=>ae.v===R))==null?void 0:K.l)??R}const N=r.ref([]),D=r.ref(!1),U=r.ref(!1),L=r.ref(0),q=r.ref(null),X=r.ref(""),$=r.ref(""),j=r.ref(""),J=r.ref(!1),V=r.ref(""),F=[{v:0,l:o("Süresiz","Never")},{v:1,l:o("1 gün","1 day")},{v:7,l:o("7 gün","7 days")},{v:30,l:o("30 gün","30 days")}],I=r.ref(0),H=[{v:0,l:o("Sınırsız","Unlimited")},{v:1,l:o("1 indirme","1 download")},{v:3,l:o("3 indirme","3 downloads")},{v:5,l:o("5 indirme","5 downloads")},{v:10,l:o("10 indirme","10 downloads")},{v:25,l:o("25 indirme","25 downloads")}],G=r.ref(!1),oe=r.ref(0),de=r.ref(!1),ve=r.ref(""),Ee=r.ref(""),ne=r.ref(""),me=r.ref(!0),we=r.ref(!1),Se=r.ref(""),De=r.ref(null),Xe=r.ref(""),tt=r.ref(!1),Pe=r.ref("");function Oe(R){const K=new Set,ae=[];for(const Ge of R.split(/[,;\s]+/)){const ue=Ge.trim().toLowerCase();ue&&ue.includes("@")&&!K.has(ue)&&(K.add(ue),ae.push(ue))}return ae}function Ie(R){var Ge,ue;const K=((Ge=R.sent)==null?void 0:Ge.length)??0,ae=((ue=R.failed)==null?void 0:ue.length)??0;return ae===0?o(`E-posta gönderildi ✓ (${K})`,`Email sent ✓ (${K})`):o(`${K} gönderildi, ${ae} başarısız`,`${K} sent, ${ae} failed`)}async function pe(){d.value=!0,u.value="";try{const R=await n.api.listPermissions(n.path);h.value=R.direct??[],f.value=R.inherited??[],p.value=R.storage_rbac,c.value=!0}catch(R){R.status===403?(c.value=!1,l.value="share"):u.value=R instanceof Error?R.message:String(R)}finally{d.value=!1}}async function $e(){try{const R=await n.api.listShares(n.path);N.value=R.shares??[]}catch{N.value=[]}}r.onMounted(async()=>{await pe(),await $e()}),r.onBeforeUnmount(()=>{T&&clearTimeout(T)});function ce(){b.value=!1,_.value=null,m.value="";const R=w.value.trim();if(T&&clearTimeout(T),R.length<1){S.value=[],A.value=!1;return}T=setTimeout(async()=>{try{const K=await n.api.searchUsers(R);S.value=K.users??[],A.value=S.value.length>0}catch{A.value=!1}},180)}async function be(R){A.value=!1,w.value=R.email;let K=g.value;R.role==="viewer"&&K!=="viewer"&&(K="viewer"),v.value=!0,m.value="";try{await n.api.addPermission({path:n.path,user_id:R.id,level:K,is_dir:!!n.isDir}),w.value="",S.value=[],await pe(),m.value=o("Yetki verildi.","Access granted.")}catch(ae){m.value=ae instanceof Error?ae.message:String(ae)}finally{v.value=!1}}async function Me(){const R=w.value.trim().toLowerCase();if(!R||!R.includes("@")){m.value=o("Geçerli bir e-posta girin.","Enter a valid email.");return}A.value=!1,v.value=!0,m.value="",_.value=null;try{const K=await n.api.resolveEmail(R);if(K.found&&K.user){let ae=g.value;K.user.role==="viewer"&&ae!=="viewer"&&(ae="viewer"),await n.api.addPermission({path:n.path,user_id:K.user.id,level:ae,is_dir:!!n.isDir}),w.value="",await pe(),m.value=o("Yetki verildi.","Access granted.")}else b.value=!0}catch(K){m.value=K instanceof Error?K.message:String(K)}finally{v.value=!1}}async function Qe(){v.value=!0,m.value="";try{const R=await n.api.invitePermission({path:n.path,email:w.value.trim().toLowerCase(),level:g.value,create_user:!0,role:y.value,is_dir:!!n.isDir,locale:n.locale??"tr"});_.value={tempPassword:R.temp_password},m.value=R.emailed?o("Kullanıcı açıldı, davet e-postası gönderildi.","User created, invite emailed."):o("Kullanıcı açıldı. Geçici parolayı iletin.","User created. Share the temp password."),b.value=!1,w.value="",await pe()}catch(R){m.value=R instanceof Error?R.message:String(R)}finally{v.value=!1}}function dt(){j.value=w.value.trim().toLowerCase(),b.value=!1,m.value="",l.value="share"}async function ot(R,K){if(K!==R.level){v.value=!0;try{await n.api.updatePermission(R.id,K),await pe()}catch(ae){m.value=ae instanceof Error?ae.message:String(ae)}finally{v.value=!1}}}async function xe(R){v.value=!0;try{await n.api.deletePermission(R.id),await pe()}catch(K){m.value=K instanceof Error?K.message:String(K)}finally{v.value=!1}}function Ne(R){return R.user_display_name||R.user_email||`#${R.user_id}`}function Le(R){return(R.user_display_name||R.user_email||"?").charAt(0).toUpperCase()}function at(){return L.value?new Date(Date.now()+L.value*864e5).toISOString():null}async function wt(){D.value=!0,X.value="",q.value=null,V.value="";try{const R=await n.api.createShare({path:n.path,password:U.value,expires_at:at(),max_downloads:I.value||null});q.value={url:R.share.url,pin:R.share.password_pin??null},await $e()}catch(R){X.value=R instanceof Error?R.message:String(R)}finally{D.value=!1}}async function Y(){var K;const R=Oe(j.value);if(!R.length){V.value=o("Geçerli bir e-posta girin.","Enter a valid email.");return}if((K=q.value)!=null&&K.url){J.value=!0,V.value="";try{const ae=await n.api.shareMail({path:n.path,emails:R,url:q.value.url,pin:q.value.pin??void 0,expires_days:L.value||void 0,locale:n.locale??"tr",is_dir:!!n.isDir,size:n.size});V.value=Ie(ae)}catch(ae){const Ge=ae.detail??"";Ge.includes("not_configured")?V.value=o("SMTP ayarlı/doğrulanmış değil — linki elle iletin.","SMTP not set up/verified — share the link manually."):Ge.includes("send_failed")?V.value=o("Gönderilemedi (geçici hata) — tekrar deneyin.","Send failed (temporary) — please retry."):V.value=ae instanceof Error?ae.message:String(ae)}finally{J.value=!1}}}function ie(){return oe.value?new Date(Date.now()+oe.value*864e5).toISOString():null}async function re(){we.value=!0,Se.value="",De.value=null,Pe.value="";try{const R={ask_name:me.value};ve.value&&(R.max_files=Number(ve.value)),Ee.value&&(R.max_file_size_mb=Number(Ee.value));const K=ne.value.split(/[,\s]+/).map(Ge=>Ge.trim().replace(/^\./,"")).filter(Boolean);K.length&&(R.allowed_ext=K);const ae=await n.api.createShare({path:n.path,kind:"drop",password:G.value,expires_at:ie(),drop_settings:R});De.value={url:ae.share.url,pin:ae.share.password_pin??null}}catch(R){Se.value=R instanceof Error?R.message:String(R)}finally{we.value=!1}}async function ye(){var K;const R=Oe(Xe.value);if(!R.length){Pe.value=o("Geçerli bir e-posta girin.","Enter a valid email.");return}if((K=De.value)!=null&&K.url){tt.value=!0,Pe.value="";try{const ae=await n.api.shareMail({path:n.path,emails:R,url:De.value.url,pin:De.value.pin??void 0,expires_days:oe.value||void 0,locale:n.locale??"tr",is_dir:!0,mode:"drop"});Pe.value=Ie(ae)}catch(ae){(ae.detail??"").includes("not_configured")?Pe.value=o("SMTP ayarlı/doğrulanmış değil — linki elle iletin.","SMTP not set up/verified — share the link manually."):Pe.value=ae instanceof Error?ae.message:String(ae)}finally{tt.value=!1}}}async function te(R){D.value=!0;try{await n.api.revokeShare(R.uuid),await $e()}catch(K){X.value=K instanceof Error?K.message:String(K)}finally{D.value=!1}}function ge(R,K="url"){var ae;(ae=navigator.clipboard)==null||ae.writeText(R),$.value=K,setTimeout(()=>{$.value===K&&($.value="")},1400)}const z=r.computed(()=>typeof navigator<"u"&&typeof navigator.share=="function");function Te(R){if(!R||R<=0)return"";const K=1024;if(R<K)return`${R} B`;const ae=["K","M","G","T","P","E"];let Ge=K,ue=0;for(let Fe=R/K;Fe>=K;Fe/=K)Ge*=K,ue++;return`${(R/Ge).toFixed(1)} ${ae[ue]}B`}function lt(R){return R>0?o(`Bu bağlantı ${R} gün geçerlidir.`,`This link is valid for ${R} day(s).`):o("Bu bağlantının süresi yoktur.","This link does not expire.")}function C(){var ht,Kt;const R=s.value.name,K=((ht=q.value)==null?void 0:ht.url)??"",ae=((Kt=q.value)==null?void 0:Kt.pin)??"",Ge=n.isDir?o("klasör","folder"):o("dosya","file"),ue=i.value?`${R} ${n.isDir?"klasörü":"dosyası"} sizinle paylaşıldı`:`${R} has been shared with you`,Fe=[];if(Fe.push(o("Merhaba,","Hello,"),""),Fe.push(o(`Sizinle bir ${Ge} paylaşıldı:`,`A ${Ge} has been shared with you:`),""),n.isDir)Fe.push(o(`Klasör: ${R}`,`Folder: ${R}`));else{Fe.push(o(`Dosya: ${R}`,`File: ${R}`));const xt=Te(n.size);xt&&Fe.push(o(`Boyut: ${xt}`,`Size: ${xt}`))}return Fe.push("",o("İndirmek için:","Download it here:"),K),ae&&Fe.push("",o(`PIN (erişim kodu): ${ae}`,`PIN (access code): ${ae}`)),Fe.push("",lt(L.value)),{title:ue,text:Fe.join(`
3
3
  `)}}function _e(){var xt,Ct;const R=s.value.name,K=((xt=De.value)==null?void 0:xt.url)??"",ae=((Ct=De.value)==null?void 0:Ct.pin)??"",Ge=Number(ve.value)||20,ue=Number(Ee.value)||500,Fe=ne.value.split(/[,\s]+/).map(Vt=>Vt.trim().replace(/^\./,"")).filter(Boolean),ht=o(`${R} adlı klasöre dosya eklemeniz istendi`,`You've been asked to add files to ${R}`),Kt=[];return Kt.push(o("Merhaba,","Hello,"),""),Kt.push(o("Dosya yüklemeniz istendi.","You've been invited to upload files."),""),Kt.push(o(`Klasör: ${R}`,`Folder: ${R}`)),Kt.push(o(`Sınır: en fazla ${Ge} dosya, dosya başına ${ue} MB.`,`Limit: up to ${Ge} file(s), ${ue} MB per file.`)),Kt.push(Fe.length?o(`İzinli türler: ${Fe.join(", ")}`,`Allowed types: ${Fe.join(", ")}`):o("İzinli türler: tüm türler","Allowed types: all")),Kt.push("",o("Dosyalarınızı buradan yükleyebilirsiniz:","Upload your files here:"),K),ae&&Kt.push("",o(`PIN (erişim kodu): ${ae}`,`PIN (access code): ${ae}`)),Kt.push("",lt(oe.value)),{title:ht,text:Kt.join(`
4
4
  `)}}async function ke(R){if(z.value)try{await navigator.share(R)}catch{}}return(R,K)=>{var ae,Ge;return r.openBlock(),r.createElementBlock("div",{class:"fx-perm-overlay",onClick:K[25]||(K[25]=r.withModifiers(ue=>a("close"),["self"]))},[r.createElementVNode("div",c7,[r.createElementVNode("header",d7,[r.createElementVNode("div",u7,[r.createElementVNode("span",f7,r.toDisplayString(e.isDir?"📁":"📄"),1),r.createElementVNode("div",h7,[r.createElementVNode("h3",null,r.toDisplayString(o("Paylaş / İzinler","Share / Permissions")),1),r.createElementVNode("span",{class:"fx-perm-sub",title:e.path},[r.createTextVNode(r.toDisplayString(s.value.name),1),r.createElementVNode("span",m7," · "+r.toDisplayString(s.value.adapter),1)],8,p7)])]),r.createElementVNode("button",{class:"fx-perm-x",onClick:K[0]||(K[0]=ue=>a("close")),"aria-label":"close"},"✕")]),r.createElementVNode("div",g7,[c.value?(r.openBlock(),r.createElementBlock("button",{key:0,class:r.normalizeClass(["fx-perm-tab",{"is-active":l.value==="perms"}]),onClick:K[1]||(K[1]=ue=>l.value="perms")},r.toDisplayString(o("Kişiler","People")),3)):r.createCommentVNode("",!0),r.createElementVNode("button",{class:r.normalizeClass(["fx-perm-tab",{"is-active":l.value==="share"}]),onClick:K[2]||(K[2]=ue=>l.value="share")},r.toDisplayString(o("Bağlantı","Link")),3),e.isDir?(r.openBlock(),r.createElementBlock("button",{key:1,class:r.normalizeClass(["fx-perm-tab",{"is-active":l.value==="drop"}]),onClick:K[3]||(K[3]=ue=>l.value="drop")},r.toDisplayString(o("Dosya İste","Request files")),3)):r.createCommentVNode("",!0)]),r.createElementVNode("div",b7,[l.value==="perms"&&c.value?(r.openBlock(),r.createElementBlock(r.Fragment,{key:0},[p.value?r.createCommentVNode("",!0):(r.openBlock(),r.createElementBlock("div",v7,r.toDisplayString(o("Bu diskte RBAC kapalı — izinler yalnızca RBAC açık disklerde geçerli.","RBAC is off on this storage — grants only apply when RBAC is enabled.")),1)),u.value?(r.openBlock(),r.createElementBlock("div",y7,r.toDisplayString(u.value),1)):r.createCommentVNode("",!0),d.value?(r.openBlock(),r.createElementBlock("div",_7,r.toDisplayString(o("Yükleniyor…","Loading…")),1)):(r.openBlock(),r.createElementBlock(r.Fragment,{key:3},[r.createElementVNode("div",w7,[r.createElementVNode("div",k7,[r.createElementVNode("div",E7,[r.withDirectives(r.createElementVNode("input",{"onUpdate:modelValue":K[4]||(K[4]=ue=>w.value=ue),type:"email",class:"fx-perm-input",autocomplete:"off",placeholder:o("İsim veya e-posta","Name or email"),onInput:ce,onKeyup:r.withKeys(Me,["enter"]),onFocus:ce},null,40,x7),[[r.vModelText,w.value]]),A.value?(r.openBlock(),r.createElementBlock("ul",S7,[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(S.value,ue=>(r.openBlock(),r.createElementBlock("li",{key:ue.id,onMousedown:r.withModifiers(Fe=>be(ue),["prevent"])},[r.createElementVNode("span",N7,r.toDisplayString((ue.display_name||ue.email).charAt(0).toUpperCase()),1),r.createElementVNode("span",T7,[r.createElementVNode("span",A7,r.toDisplayString(ue.display_name||ue.email),1),r.createElementVNode("span",D7,r.toDisplayString(ue.email)+" · "+r.toDisplayString(ue.role),1)])],40,C7))),128))])):r.createCommentVNode("",!0)]),r.withDirectives(r.createElementVNode("select",{"onUpdate:modelValue":K[5]||(K[5]=ue=>g.value=ue),class:"fx-perm-sel",title:(ae=E.find(ue=>ue.v===g.value))==null?void 0:ae.d},[(r.openBlock(),r.createElementBlock(r.Fragment,null,r.renderList(E,ue=>r.createElementVNode("option",{key:ue.v,value:ue.v},r.toDisplayString(ue.l),9,B7)),64))],8,M7),[[r.vModelSelect,g.value]]),r.createElementVNode("button",{class:"fx-perm-btn fx-perm-btn--primary",disabled:v.value,onClick:Me},r.toDisplayString(o("Ekle","Add")),9,O7)]),b.value?(r.openBlock(),r.createElementBlock("div",I7,[r.createElementVNode("p",R7,r.toDisplayString(o("Bu e-postada hesap yok. Ne yapmak istersiniz?","No account for this email — what next?")),1),r.createElementVNode("div",L7,[r.createElementVNode("div",F7,[r.withDirectives(r.createElementVNode("select",{"onUpdate:modelValue":K[6]||(K[6]=ue=>y.value=ue),class:"fx-perm-sel"},[r.createElementVNode("option",z7,r.toDisplayString(o("Kullanıcı","User")),1),r.createElementVNode("option",P7,r.toDisplayString(o("Görüntüleyen","Viewer")),1)],512),[[r.vModelSelect,y.value]]),r.createElementVNode("button",{class:"fx-perm-btn fx-perm-btn--primary",disabled:v.value,onClick:Qe},r.toDisplayString(o("Kullanıcı oluştur + yetki ver","Create user + grant")),9,$7)]),r.createElementVNode("button",{class:"fx-perm-btn fx-perm-btn--ghost",disabled:v.value,onClick:dt},r.toDisplayString(o("Sadece paylaşım linki gönder →","Just send a share link →")),9,V7)])])):r.createCommentVNode("",!0),m.value?(r.openBlock(),r.createElementBlock("div",U7,r.toDisplayString(m.value),1)):r.createCommentVNode("",!0),(Ge=_.value)!=null&&Ge.tempPassword?(r.openBlock(),r.createElementBlock("div",H7,[r.createTextVNode(r.toDisplayString(o("Geçici parola:","Temp password:"))+" ",1),r.createElementVNode("code",null,r.toDisplayString(_.value.tempPassword),1)])):r.createCommentVNode("",!0)]),r.createElementVNode("div",G7,[r.createElementVNode("h4",null,r.toDisplayString(o("Erişimi olanlar","People with access")),1),!h.value.length&&!f.value.length?(r.openBlock(),r.createElementBlock("div",q7,r.toDisplayString(o("Henüz kimseyle paylaşılmadı.","Not shared with anyone yet.")),1)):r.createCommentVNode("",!0),(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(h.value,ue=>(r.openBlock(),r.createElementBlock("div",{key:"d"+ue.id,class:"fx-perm-person"},[r.createElementVNode("span",K7,r.toDisplayString(Le(ue)),1),r.createElementVNode("span",{class:"fx-perm-user",title:ue.user_email},r.toDisplayString(Ne(ue)),9,W7),r.createElementVNode("select",{class:"fx-perm-sel fx-perm-sel--sm",value:ue.level,onChange:Fe=>ot(ue,Fe.target.value)},[(r.openBlock(),r.createElementBlock(r.Fragment,null,r.renderList(E,Fe=>r.createElementVNode("option",{key:Fe.v,value:Fe.v},r.toDisplayString(Fe.l),9,j7)),64))],40,Y7),r.createElementVNode("button",{class:"fx-perm-del",disabled:v.value,title:o("Kaldır","Remove"),onClick:Fe=>xe(ue)},"✕",8,X7)]))),128)),(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(f.value,ue=>(r.openBlock(),r.createElementBlock("div",{key:"i"+ue.id,class:"fx-perm-person fx-perm-inh"},[r.createElementVNode("span",Z7,r.toDisplayString(Le(ue)),1),r.createElementVNode("span",{class:"fx-perm-user",title:ue.user_email},r.toDisplayString(Ne(ue)),9,J7),r.createElementVNode("span",Q7,r.toDisplayString(k(ue.level)),1),r.createElementVNode("span",{class:"fx-perm-from",title:o("Üst klasörden gelir","Inherited from")+": "+(ue.path_prefix||"/")}," ↳ "+r.toDisplayString(ue.path_prefix||"/"),9,eE)]))),128))])],64))],64)):r.createCommentVNode("",!0),l.value==="share"?(r.openBlock(),r.createElementBlock(r.Fragment,{key:1},[r.createElementVNode("div",tE,[r.createElementVNode("div",nE,[r.createElementVNode("label",rE,[r.withDirectives(r.createElementVNode("input",{type:"checkbox","onUpdate:modelValue":K[7]||(K[7]=ue=>U.value=ue)},null,512),[[r.vModelCheckbox,U.value]]),r.createTextVNode(" "+r.toDisplayString(o("PIN ile koru","Protect with a PIN")),1)]),r.createElementVNode("label",aE,[r.createElementVNode("span",iE,r.toDisplayString(o("Süre","Expiry")),1),r.withDirectives(r.createElementVNode("select",{"onUpdate:modelValue":K[8]||(K[8]=ue=>L.value=ue),class:"fx-perm-sel fx-perm-sel--sm"},[(r.openBlock(),r.createElementBlock(r.Fragment,null,r.renderList(F,ue=>r.createElementVNode("option",{key:ue.v,value:ue.v},r.toDisplayString(ue.l),9,oE)),64))],512),[[r.vModelSelect,L.value,void 0,{number:!0}]])]),r.createElementVNode("label",lE,[r.createElementVNode("span",sE,r.toDisplayString(o("İndirme limiti","Download limit")),1),r.withDirectives(r.createElementVNode("select",{"onUpdate:modelValue":K[9]||(K[9]=ue=>I.value=ue),class:"fx-perm-sel fx-perm-sel--sm"},[(r.openBlock(),r.createElementBlock(r.Fragment,null,r.renderList(H,ue=>r.createElementVNode("option",{key:ue.v,value:ue.v},r.toDisplayString(ue.l),9,cE)),64))],512),[[r.vModelSelect,I.value,void 0,{number:!0}]])]),r.createElementVNode("button",{class:"fx-perm-btn fx-perm-btn--primary",disabled:D.value,onClick:wt},r.toDisplayString(o("Bağlantı oluştur","Create link")),9,dE)]),X.value?(r.openBlock(),r.createElementBlock("div",uE,r.toDisplayString(X.value),1)):r.createCommentVNode("",!0),q.value?(r.openBlock(),r.createElementBlock("div",fE,[r.createElementVNode("div",hE,[r.createElementVNode("a",{href:q.value.url,target:"_blank",rel:"noopener",class:"fx-perm-link"},r.toDisplayString(q.value.url),9,pE),r.createElementVNode("button",{class:"fx-perm-btn fx-perm-btn--sm",onClick:K[10]||(K[10]=ue=>ge(q.value.url,"new"))},r.toDisplayString($.value==="new"?o("Kopyalandı ✓","Copied ✓"):o("Kopyala","Copy")),1)]),q.value.pin?(r.openBlock(),r.createElementBlock("div",mE,[r.createElementVNode("span",null,[K[26]||(K[26]=r.createTextVNode("PIN: ",-1)),r.createElementVNode("code",null,r.toDisplayString(q.value.pin),1)]),r.createElementVNode("button",{class:"fx-perm-btn fx-perm-btn--sm",onClick:K[11]||(K[11]=ue=>ge(q.value.pin,"sharepin"))},r.toDisplayString($.value==="sharepin"?o("Kopyalandı ✓","Copied ✓"):o("Kopyala","Copy")),1)])):r.createCommentVNode("",!0),r.createElementVNode("div",gE,[r.withDirectives(r.createElementVNode("input",{"onUpdate:modelValue":K[12]||(K[12]=ue=>j.value=ue),type:"text",class:"fx-perm-input",autocomplete:"off",placeholder:o("e-posta(lar) — virgülle ayırın","email(s) — comma separated"),onKeyup:r.withKeys(Y,["enter"])},null,40,bE),[[r.vModelText,j.value]]),r.createElementVNode("button",{class:"fx-perm-btn",disabled:J.value,onClick:Y},r.toDisplayString(o("Gönder","Send")),9,vE)]),V.value?(r.openBlock(),r.createElementBlock("div",yE,r.toDisplayString(V.value),1)):r.createCommentVNode("",!0),z.value?(r.openBlock(),r.createElementBlock("button",{key:2,type:"button",class:"fx-perm-btn fx-perm-btn--ghost fx-perm-sharebtn",onClick:K[13]||(K[13]=ue=>ke(C()))},[K[27]||(K[27]=r.createElementVNode("span",{"aria-hidden":"true"},"📤",-1)),r.createTextVNode(" "+r.toDisplayString(o("Paylaş","Share")),1)])):r.createCommentVNode("",!0)])):j.value?(r.openBlock(),r.createElementBlock("p",_E,[r.createTextVNode(r.toDisplayString(o("Aşağıdan bir bağlantı oluşturun, ardından","Create a link below, then it will be sent to"))+" ",1),r.createElementVNode("strong",null,r.toDisplayString(j.value),1),r.createTextVNode(" "+r.toDisplayString(o("adresine gönderin.",".")),1)])):r.createCommentVNode("",!0)]),r.createElementVNode("div",wE,[r.createElementVNode("h4",null,r.toDisplayString(o("Mevcut bağlantılar","Existing links")),1),N.value.length?r.createCommentVNode("",!0):(r.openBlock(),r.createElementBlock("div",kE,r.toDisplayString(o("Yok","None")),1)),(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(N.value,ue=>(r.openBlock(),r.createElementBlock("div",{key:ue.uuid,class:"fx-perm-person"},[r.createElementVNode("span",{class:"fx-perm-user fx-perm-link",title:ue.url},r.toDisplayString(ue.url),9,EE),r.createElementVNode("button",{class:"fx-perm-btn fx-perm-btn--sm",onClick:Fe=>ge(ue.url,ue.uuid)},r.toDisplayString($.value===ue.uuid?o("✓","✓"):o("Kopyala","Copy")),9,xE),r.createElementVNode("button",{class:"fx-perm-del",disabled:D.value,title:o("İptal","Revoke"),onClick:Fe=>te(ue)},"✕",8,SE)]))),128))])],64)):r.createCommentVNode("",!0),l.value==="drop"?(r.openBlock(),r.createElementBlock("div",CE,[r.createElementVNode("p",NE,r.toDisplayString(o("Bu klasöre herkesin dosya YÜKLEYEBİLECEĞİ herkese açık bir bağlantı. Yükleyenler klasördeki mevcut dosyaları göremez.","A public link that lets anyone UPLOAD files into this folder. Uploaders never see the folder's existing files.")),1),r.createElementVNode("div",TE,[r.createElementVNode("label",AE,[r.withDirectives(r.createElementVNode("input",{type:"checkbox","onUpdate:modelValue":K[14]||(K[14]=ue=>G.value=ue)},null,512),[[r.vModelCheckbox,G.value]]),r.createTextVNode(" "+r.toDisplayString(o("PIN ile koru","Protect with a PIN")),1)]),r.createElementVNode("label",DE,[r.createElementVNode("span",ME,r.toDisplayString(o("Süre","Expiry")),1),r.withDirectives(r.createElementVNode("select",{"onUpdate:modelValue":K[15]||(K[15]=ue=>oe.value=ue),class:"fx-perm-sel fx-perm-sel--sm"},[(r.openBlock(),r.createElementBlock(r.Fragment,null,r.renderList(F,ue=>r.createElementVNode("option",{key:ue.v,value:ue.v},r.toDisplayString(ue.l),9,BE)),64))],512),[[r.vModelSelect,oe.value,void 0,{number:!0}]])]),r.createElementVNode("button",{class:"fx-perm-btn fx-perm-btn--primary",disabled:we.value,onClick:re},r.toDisplayString(o("Bağlantı oluştur","Create link")),9,OE)]),r.createElementVNode("button",{type:"button",class:"fx-perm-btn fx-perm-btn--ghost fx-perm-advtoggle",onClick:K[16]||(K[16]=ue=>de.value=!de.value)},r.toDisplayString(de.value?o("Gelişmiş ▲","Advanced ▲"):o("Gelişmiş ▼","Advanced ▼")),1),de.value?(r.openBlock(),r.createElementBlock("div",IE,[r.createElementVNode("label",RE,[r.createElementVNode("span",LE,r.toDisplayString(o("En fazla dosya","Max files")),1),r.withDirectives(r.createElementVNode("input",{"onUpdate:modelValue":K[17]||(K[17]=ue=>ve.value=ue),type:"number",min:"1",class:"fx-perm-input fx-perm-input--sm",placeholder:"20"},null,512),[[r.vModelText,ve.value]])]),r.createElementVNode("label",FE,[r.createElementVNode("span",zE,r.toDisplayString(o("Dosya başı MB","MB / file")),1),r.withDirectives(r.createElementVNode("input",{"onUpdate:modelValue":K[18]||(K[18]=ue=>Ee.value=ue),type:"number",min:"1",class:"fx-perm-input fx-perm-input--sm",placeholder:"500"},null,512),[[r.vModelText,Ee.value]])]),r.createElementVNode("label",PE,[r.createElementVNode("span",$E,r.toDisplayString(o("İzinli türler","Allowed types")),1),r.withDirectives(r.createElementVNode("input",{"onUpdate:modelValue":K[19]||(K[19]=ue=>ne.value=ue),type:"text",class:"fx-perm-input fx-perm-input--sm",placeholder:o("hepsi (örn. pdf, jpg)","all (e.g. pdf, jpg)")},null,8,VE),[[r.vModelText,ne.value]])]),r.createElementVNode("label",UE,[r.withDirectives(r.createElementVNode("input",{type:"checkbox","onUpdate:modelValue":K[20]||(K[20]=ue=>me.value=ue)},null,512),[[r.vModelCheckbox,me.value]]),r.createTextVNode(" "+r.toDisplayString(o("Yükleyenin adını sor","Ask uploader name")),1)])])):r.createCommentVNode("",!0),Se.value?(r.openBlock(),r.createElementBlock("div",HE,r.toDisplayString(Se.value),1)):r.createCommentVNode("",!0),De.value?(r.openBlock(),r.createElementBlock("div",GE,[r.createElementVNode("div",qE,[r.createElementVNode("a",{href:De.value.url,target:"_blank",rel:"noopener",class:"fx-perm-link"},r.toDisplayString(De.value.url),9,KE),r.createElementVNode("button",{class:"fx-perm-btn fx-perm-btn--sm",onClick:K[21]||(K[21]=ue=>ge(De.value.url,"drop"))},r.toDisplayString($.value==="drop"?o("Kopyalandı ✓","Copied ✓"):o("Kopyala","Copy")),1)]),De.value.pin?(r.openBlock(),r.createElementBlock("div",WE,[r.createElementVNode("span",null,[K[28]||(K[28]=r.createTextVNode("PIN: ",-1)),r.createElementVNode("code",null,r.toDisplayString(De.value.pin),1)]),r.createElementVNode("button",{class:"fx-perm-btn fx-perm-btn--sm",onClick:K[22]||(K[22]=ue=>ge(De.value.pin,"droppin"))},r.toDisplayString($.value==="droppin"?o("Kopyalandı ✓","Copied ✓"):o("Kopyala","Copy")),1)])):r.createCommentVNode("",!0),r.createElementVNode("div",YE,[r.withDirectives(r.createElementVNode("input",{"onUpdate:modelValue":K[23]||(K[23]=ue=>Xe.value=ue),type:"text",class:"fx-perm-input",autocomplete:"off",placeholder:o("e-posta(lar) — virgülle ayırın","email(s) — comma separated"),onKeyup:r.withKeys(ye,["enter"])},null,40,jE),[[r.vModelText,Xe.value]]),r.createElementVNode("button",{class:"fx-perm-btn",disabled:tt.value,onClick:ye},r.toDisplayString(o("Gönder","Send")),9,XE)]),Pe.value?(r.openBlock(),r.createElementBlock("div",ZE,r.toDisplayString(Pe.value),1)):r.createCommentVNode("",!0),z.value?(r.openBlock(),r.createElementBlock("button",{key:2,type:"button",class:"fx-perm-btn fx-perm-btn--ghost fx-perm-sharebtn",onClick:K[24]||(K[24]=ue=>ke(_e()))},[K[29]||(K[29]=r.createElementVNode("span",{"aria-hidden":"true"},"📤",-1)),r.createTextVNode(" "+r.toDisplayString(o("Paylaş","Share")),1)])):r.createCommentVNode("",!0)])):r.createCommentVNode("",!0)])):r.createCommentVNode("",!0)])])])}}}),QE={key:0,class:"fe__presence"},ex=["title"],tx={key:1,class:"fe-e2e-strip",role:"status"},nx={class:"fe-e2e-strip__label"},rx={key:0,class:"fe__skeleton",role:"status"},ax={class:"fe-sr-only"},ix={key:0,class:"fe-skel-grid","aria-hidden":"true"},ox={key:1,class:"fe-skel-list","aria-hidden":"true"},lx={key:1,class:"fe-state"},sx={class:"fe-state__title"},cx={class:"fe-state__path"},dx={class:"fe-state__hint"},ux={class:"fe-state__actions"},fx={key:2,class:"fe-state"},hx={class:"fe-state__title"},px={class:"fe-state__hint"},mx={class:"fe-state__actions"},gx={class:"fe-state__details"},bx={class:"fe-state__details-summary"},vx={class:"fe-state__details-pre"},yx={key:3,class:"fe-state fe-e2e-lock"},_x={class:"fe-state__title"},wx={class:"fe-state__hint"},kx=["placeholder","disabled"],Ex=["disabled"],xx={key:0,class:"fe-form__error",role:"alert"},Sx={key:4,class:"fe-state"},Cx={class:"fe-state__title"},Nx={class:"fe-state__hint"},Tx={key:5,class:"fe-state"},Ax={class:"fe-state__title"},Dx={key:6,class:"fe-state"},Mx={class:"fe-state__art",viewBox:"0 0 120 100",width:"110",height:"92",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round","aria-hidden":"true"},Bx={key:0},Ox={class:"fe-state__title"},Ix={key:0,class:"fe-state__hint"},Rx={key:1,class:"fe-state__actions"},Lx={key:1,class:"fe__dragover"},Fx=["title","aria-label"],zx={class:"fe-recents__header"},Px={class:"fe-modal__head"},$x={class:"fe-modal__title"},Vx={class:"fe-modal__body"},Ux={class:"fe-toast__msg"},sh="brf-file-explorer:view-mode",ch="filex.inspector",kc="brf-file-explorer:path",ca="application/x-brf-files",Hx="/files/edit",dh="filex.tourDone",Ec="application/x-brf-files-src",uh="filex.tabs",Gx=r.defineComponent({__name:"FileExplorer",props:{config:{}},emits:["share-created","file-opened","error","upload-progress","selection-change","navigate"],setup(e,{expose:t,emit:n}){const a=e,i=n,o=Ju(a.config),s=r.computed(()=>a.config.locale||"tr"),{t:l}=qt(s),c=Iy(o,{reload:()=>It()}),d=c.presenceUsers,u=c.degraded;function h(M){const O=(M||"").replace(/^\/+|\/+$/g,"");if(O===".trash"||O.startsWith(".trash/"))return null;const le=Qt(O);return!le||!le.includes("://")||le.startsWith("://")?null:le}r.onMounted(()=>{c.start(),c.subscribe(h(_.value))}),r.onBeforeUnmount(()=>c.stop());const f=Ly(a.config.apiBase,o),p=Qu(a.config,o),w=new Map,g=df(a.config,o,{onSettled:M=>{var le;const O=w.get(M.id);if(w.delete(M.id),M.status==="error")pt(M.error_message||"İşlem başarısız");else if(O)nn(`${O.message} (${M.progress_total})`,O.fn);else{const he=M.op_type==="copy"?"Kopyalandı":M.op_type==="move"?"Taşındı":"Silindi";pt(`${he} (${M.progress_total})`)}It(),(le=an.value)==null||le.reload()}}),v=r.ref(!1),m=(a.config.rootPath||"").trim(),b=m.replace("://","/").replace(/^\/+|\/+$/g,""),y=b||a.config.initialPath||"",_=r.ref(y),S=r.ref(a.config.defaultAdapter||"brf"),A=r.ref(y),T=r.ref([]),E=r.ref(""),k=r.ref(""),N=r.ref("");let D;function U(){It(D)}const L=r.customRef((M,O)=>{let le=(()=>{try{const he=localStorage.getItem(sh);if(he==="list"||he==="grid"||he==="gallery")return he}catch{}return a.config.viewMode??"list"})();return{get(){return M(),le},set(he){if(he!==le){le=he;try{localStorage.setItem(sh,he)}catch{}O()}}}}),q=r.ref("comfortable"),X=r.ref(""),$=r.ref(!1),j=r.ref(""),J=r.computed(()=>$.value),V=r.computed(()=>{if(!rn.value)return"";const M=a.config.storages??[];return M.length===1?M[0].name:""}),F=r.computed(()=>{const M=(_.value??"").replace(/^\/+|\/+$/g,"");return b&&M===b||V.value&&M===V.value?!1:M.length>0}),I=r.computed(()=>rn.value?!(_.value??"").replace(/^\/+|\/+$/g,""):!1);function H(){if($.value){It(j.value);return}const M=(_.value??"").replace(/^\/+|\/+$/g,"");if(!M||M===b||V.value&&M===V.value)return;const O=M.lastIndexOf("/");let le=O===-1?"":M.slice(0,O);b&&!(le===b||le.startsWith(b+"/"))&&(le=b),It(le)}const G=ef(()=>T.value);r.watch(()=>[...G.selected.value],()=>{i("selection-change",G.nodes.value.map(O=>({path:O.path,basename:O.basename,type:O.type})));const M=G.nodes.value.filter(O=>O.type==="file");c.setFocus(M.length===1?M[0].basename:null)});const oe=r.ref({mode:null,items:[],sourcePath:null}),de=r.ref(null),ve=r.ref(new Set),Ee=r.ref(!1),ne=r.ref(!1),me=r.ref(null),we=r.ref(0);async function Se(){try{const M=await ei(),O=a.config.apiBase??"",le=await fetch(`${O}/api/files/manager/star/list?limit=500`,{headers:M,credentials:o.credentialsMode()});if(!le.ok)return;const he=await le.json(),Ce=Array.isArray(he)?he:Array.isArray(he==null?void 0:he.entries)?he.entries:Array.isArray(he==null?void 0:he.nodes)?he.nodes:[];ve.value=new Set(Ce.map(fe=>fe.id).filter(fe=>typeof fe=="number"))}catch{}}function De(M,O){if(typeof M.id!="number")return;const le=new Set(ve.value);O?le.add(M.id):le.delete(M.id),ve.value=le}async function Xe(M){if(typeof M.id=="number")try{const O=a.config.apiBase??"";await fetch(`${O}/api/files/manager/recent`,{method:"POST",headers:await ei({"Content-Type":"application/json"}),credentials:o.credentialsMode(),body:JSON.stringify({node_id:M.id})}),we.value+=1}catch{}}function tt(M){typeof M.id=="number"&&(me.value=M,ne.value=!0)}function Pe(M){const O={type:"file",path:M.path,basename:M.name,extension:(M.name.split(".").pop()||"").toLowerCase(),id:M.id};Ee.value=!1,zr(O)}const Oe=r.computed(()=>{var O,le,he;if(a.config.onlyOfficeBase)return a.config.onlyOfficeBase;const M=(le=(O=de.value)==null?void 0:O.external)==null?void 0:le.onlyoffice;return M&&!Zs(M)?null:((he=de.value)==null?void 0:he.onlyoffice_url)||null}),Ie=r.computed(()=>Oe.value&&o.endpoints.onlyOfficeConfig||null),pe=r.computed(()=>{var le,he,Ce;const M=a.config.drawioUrl||a.config.drawioBase;if(M)return M;const O=(he=(le=de.value)==null?void 0:le.external)==null?void 0:he.drawio;return O&&!Zs(O)?null:((Ce=de.value)==null?void 0:Ce.drawio_url)||null}),$e=r.computed(()=>{var M;return a.config.convertBase||((M=de.value)==null?void 0:M.convert_url)||null}),ce=r.ref([]),be=r.ref(null),Me=r.ref(!1),Qe=r.ref(!1),dt=r.ref(!1),ot=r.ref(!1),xe=r.ref(!1),Ne=r.ref(null),Le=r.ref(!1),at=r.ref(null),wt=r.ref(null),Y=r.ref(null),ie=r.ref("edit"),re=r.ref(!1),ye=r.ref(null),te=r.ref(!1),ge=r.ref(null),z=r.ref((()=>{try{return localStorage.getItem(ch)==="1"}catch{return!1}})());function Te(M){try{localStorage.setItem(ch,M?"1":"0")}catch{}}function lt(){z.value=!z.value,Te(z.value)}function C(){z.value||(z.value=!0,Te(!0))}function _e(){z.value&&(z.value=!1,Te(!1))}const ke=r.computed(()=>{if($.value)return l("node.trash");const M=(_.value??"").replace(/^\/+|\/+$/g,"");return M?M.split("/").pop()||M:S.value||l("breadcrumb.root")});function R(M){ge.value=M,te.value=!0}function K(M){return M===void 0||M==="editor"||M==="owner"}function ae(M){var O;return M.length===1&&typeof((O=M[0])==null?void 0:O.perm)=="string"?M[0].perm:E.value}const Ge=r.computed(()=>K(E.value)),ue=r.computed(()=>Ge.value&&!I.value&&!$.value),Fe=r.ref(null),ht=r.ref(null),Kt=r.ref(null),xt=r.ref(!1),Ct=r.ref(!1);let Vt,Ut;function vn(M){Ct.value=!!(M&&"matches"in M&&M.matches)}r.onMounted(()=>{var M;typeof ResizeObserver<"u"&&ht.value&&(Vt=new ResizeObserver(O=>{var he,Ce,fe;const le=((Ce=(he=O[0])==null?void 0:he.contentRect)==null?void 0:Ce.width)??((fe=ht.value)==null?void 0:fe.clientWidth)??0;xt.value=le>0&&le<560}),Vt.observe(ht.value)),typeof window<"u"&&window.matchMedia&&(Ut=window.matchMedia("(pointer: coarse)"),vn(Ut),(M=Ut.addEventListener)==null||M.call(Ut,"change",vn))}),r.onBeforeUnmount(()=>{var M;Vt==null||Vt.disconnect(),Vt=void 0,(M=Ut==null?void 0:Ut.removeEventListener)==null||M.call(Ut,"change",vn),Ut=void 0});const Bn=r.ref(null);let wr;function Jt(M,O){Bn.value=M,wr&&clearTimeout(wr),wr=setTimeout(()=>Bn.value=null,O)}function pt(M){Jt({message:M},2500)}function nn(M,O){Jt({message:M,actionLabel:l("toast.undo"),action:O},8e3)}function jn(){wr&&(clearTimeout(wr),wr=void 0),Bn.value=null}async function sr(){var O;const M=(O=Bn.value)==null?void 0:O.action;if(jn(),!!M)try{await M(),pt(l("toast.undone")),await It()}catch{pt(l("toast.undo_failed"))}}const rn=r.computed(()=>a.config.multiStorageRoot===!0);function XB(M){const O=M.replace(/^\/+|\/+$/g,"");if(!O)return{adapter:"",rel:""};const le=O.indexOf("/");return le===-1?{adapter:O,rel:""}:{adapter:O.slice(0,le),rel:O.slice(le+1)}}function Tu(M){if(M.includes("://"))return M;const{adapter:O,rel:le}=XB(M);return O?le?`${O}://${le}`:`${O}://`:""}function Gi(M){const O=M.indexOf("://");if(O===-1)return M.replace(/^\/+|\/+$/g,"");const le=M.slice(0,O),he=M.slice(O+3).replace(/^\/+|\/+$/g,"");return he?`${le}/${he}`:le}function R2(){return(a.config.storages??[]).map(O=>({type:"dir",path:O.name,basename:O.label||O.name,extension:"",storage:O.name,visibility:"private",file_size:0,mime_type:"inode/storage",extra_metadata:{driver:O.driver,readOnly:O.readOnly}}))}function L2(){var M;lk(!no.value),It(),(M=an.value)==null||M.reload()}async function It(M){v.value=!0,$.value=!1;let O=M??_.value??"";try{if(k.value="",N.value="",b){const Ce=String(O).replace(/^\/+|\/+$/g,"");(!Ce||!(Ce===b||Ce.startsWith(b+"/")))&&(O=b)}if(rn.value&&!Tu(O)){if(V.value)return await It(V.value);_.value="",S.value="",A.value="",Jn.value="",T.value=R2();return}const le=rn.value?Tu(O):Qt(O),he=X.value?await o.search(le,X.value):await o.index(le);S.value=he.adapter,A.value=he.dirname,E.value=he.perm||"",Jn.value=typeof he.e2e_root=="string"?he.e2e_root:"",T.value=th(he.files),nh(T.value,he.adapter,he.dirname,a.config.trashVisible!==!1)&&rh(T.value,he.adapter,o),_.value=rn.value?Gi(he.dirname):Qa(he.dirname)}catch(le){const he=le instanceof Error?le.message:String(le),Ce=le.status;if(Ce===404||Ce===403){k.value=String(O),Jn.value="",T.value=[],i("error",{message:he,context:{path:M}});return}N.value=he,D=typeof O=="string"?O:void 0,i("error",{message:he,context:{path:M}}),T.value.length>0&&pt(he)}finally{v.value=!1}}function Qa(M){const O=M.indexOf("://");return O===-1?M:M.slice(O+3)}function ZB(){k.value="",U2(""),It("")}async function qo(){v.value=!0,j.value=S.value||"",$.value=!0,Jn.value="",G.clear();try{const{entries:M}=await o.listTrash();T.value=M.map(O=>({type:"file",id:O.id,path:O.storage_name?`${O.storage_name}://${O.path}`:O.path,basename:O.name,extension:O.name.includes(".")&&O.name.split(".").pop()||"",storage:O.storage_name||"",visibility:"private",file_size:O.size,mime_type:O.mime||"",extra_metadata:{deleted_at:O.deleted_at,ttl_days:O.ttl_days??null}})),A.value=".trash",_.value=".trash"}catch(M){const O=M instanceof Error?M.message:String(M);i("error",{message:O,context:{op:"trash-list"}}),pt(O)}finally{v.value=!1}}function Qt(M){if(M&&M.includes("://"))return M;if(rn.value){const O=Tu(M??"");return O||(S.value?`${S.value}://`:"")}return M?`${S.value}://${M.replace(/^\/+/,"")}`:`${S.value}://`}function F2(M){const O=M.indexOf("://"),le=(O===-1?M:M.slice(O+3)).replace(/\/+$/,""),he=le.lastIndexOf("/");return he===-1?le:le.slice(he+1)}function $s(M){const O=M.indexOf("://"),le=O===-1?"":M.slice(0,O+3),he=(O===-1?M:M.slice(O+3)).replace(/\/+$/,""),Ce=he.lastIndexOf("/");return Ce===-1?le:le+he.slice(0,Ce)}function Au(M,O){const le=he=>{const Ce=he.indexOf("://"),fe=Ce===-1?"":he.slice(0,Ce+3),gt=(Ce===-1?he:he.slice(Ce+3)).replace(/\/+$/,"");return fe+gt};return le(M)===le(O)}function Ko(M,O){return M?M.endsWith("://")||M.endsWith("/")?M+O:`${M}/${O}`:O}function z2(M,O,le,he){if(!he||!le)return;const Ce=O.map(fe=>Ko(le,F2(fe)));Ce.length!==0&&w.set(M,{message:l("toast.moved"),fn:async()=>{const{op:fe}=await o.moveAsync(Ce,he,le);g.register(fe)}})}r.watch(()=>X.value,()=>void It());function Vs(){return a.config.pathPersist??"hash"}function P2(){const M=Vs();return M==="hash"||M==="hash+localStorage"}function JB(M){try{return decodeURIComponent(M)}catch{return M}}function $2(){try{return localStorage.getItem(kc)||""}catch{return""}}function V2(){const M=window.location.hash||"";return M.startsWith("#")?JB(M.slice(1)).replace(/^\/+|\/+$/g,""):""}function QB(){if(typeof window>"u")return"";const M=Vs();if(M==="none")return"";if(M==="localStorage")return $2();const O=V2();return O||M==="hash"?O:y?"":$2()}function U2(M){if(typeof window>"u")return;const O=Vs();if(O==="none")return;if(O==="localStorage"||O==="hash+localStorage"){try{M?localStorage.setItem(kc,M):localStorage.removeItem(kc)}catch{}if(O==="localStorage")return}const le=M?M.split("/").map(encodeURIComponent).join("/"):"",he=le?`#${le}`:"";(window.location.hash||"")!==he&&history.replaceState(null,"",he||window.location.pathname+window.location.search)}function H2(){if(!P2())return;const M=V2();M&&M!==_.value&&It(M)}r.watch(_,M=>{U2(M),i("navigate",{path:M}),c.subscribe(h(M))}),t({reload:()=>It()}),r.onMounted(async()=>{var O;Zi();const M=QB();await It(M||void 0),await r.nextTick(),(O=ht.value)==null||O.focus(),Se(),P2()&&window.addEventListener("hashchange",H2),o.endpoints.opsList&&g.startPolling(),o.endpoints.capabilities&&o.capabilities().then(le=>{de.value=le}).catch(()=>{})});const Du=r.ref(!1),Us=r.ref(!1);function eO(M){return o.globalSearch(M,{limit:8,scope:"all"})}async function tO(M){const O=String(M.path??"").replace(/^\/+|\/+$/g,"");if(!O)return;const le=M.type==="dir",he=O.lastIndexOf("/"),Ce=le?O:he===-1?"":O.slice(0,he);let fe=Ce;if(rn.value){const Ot=a.config.storages??[],yn=typeof M.storage=="string"&&M.storage||typeof M.storage_name=="string"&&M.storage_name||(Ot.length===1?Ot[0].name:"")||S.value;if(!yn)return;fe=Ce?`${yn}/${Ce}`:yn}if(await It(fe),le)return;const gt=String(M.name??O.slice(he+1)),Tt=T.value.find(Ot=>Ot.type==="file"&&Ot.basename===gt);Tt&&(G.click(Tt.path),zr(Tt))}of(ht,{onDelete:()=>{var M;if(cr.value){const O=((M=an.value)==null?void 0:M.selectedNodes())??[];O.length&&(qi.value=O,Le.value=!0,dt.value=!0)}else G.isEmpty.value||(Le.value=!1,dt.value=!0)},onRename:()=>{var M;if(cr.value){const O=((M=an.value)==null?void 0:M.selectedNodes())??[];O.length===1&&(Ne.value=O[0],Le.value=!0,Qe.value=!0)}else G.nodes.value.length===1&&(Ne.value=G.nodes.value[0],Le.value=!1,Qe.value=!0)},onSelectAll:()=>{var M;return cr.value?(M=an.value)==null?void 0:M.selectAll():G.selectAll()},onOpen:()=>{var O;if(cr.value)return(O=an.value)==null?void 0:O.openSelected();const M=G.nodes.value[0];M&&zr(M)},onClose:()=>{var M;Me.value=!1,Qe.value=!1,dt.value=!1,ot.value=!1,xe.value=!1,(M=Fe.value)==null||M.hide(),jn(),xt.value&&_e()},onFocusSearch:()=>{var M;return(M=Kt.value)==null?void 0:M.focusSearch()},onCut:()=>cr.value?cy():gO(),onCopy:()=>cr.value?dy():bO(),onPaste:()=>cr.value?void uy():void q2(),onGoUp:()=>{var M;return cr.value?(M=an.value)==null?void 0:M.goUp():H()},onPathJump:()=>{Du.value=!0},onShowHelp:()=>{Us.value=!0},onQuickLook:()=>UO(),onToggleHidden:()=>L2(),onToggleInspector:()=>lt(),onTabNew:()=>Gu(),onTabClose:()=>ny(Hu.value),onTabNext:()=>QO(),onTabPrev:()=>eI(),hasSelection:()=>!G.isEmpty.value});const nO=new Set(["docx","xlsx","pptx","doc","xls","ppt","odt","ods","odp"]);function zr(M){if(M.basename===".trash"){qo();return}if(M.type==="dir"){const le=rn.value?Gi(M.path):Qa(M.path);It(le);return}if(Pr.value&&M.type==="file"){Xu(M);return}if(Ku.value&&M.type==="file")return;const O=(M.extension||"").toLowerCase();ie.value=K(M.perm??E.value)?aO(O):"view",Y.value=M,xe.value=!0,i("file-opened",{path:M.path,basename:M.basename}),Xe(M)}const rO=new Set([...nO,"drawio","dio","pdf","epub","ipynb","tiff","tif","psd","mmd","mermaid","glb","gltf","obj","stl","fbx","3ds","zip","rar","7z","tar","gz","tgz","jpg","jpeg","png","webp","gif","bmp","avif","svg","heic","mp4","webm","mov","mkv","m4v","ogv","mp3","wav","ogg","flac","m4a","aac","opus"]);function aO(M){return rO.has(M)?"view":"edit"}async function iO(M){const O=M??G.nodes.value;if(O.length!==0)try{if($.value){const Ce=O.map(gt=>gt.id).filter(gt=>typeof gt=="number"),{restored:fe}=await o.restoreIds(Ce);pt(`${fe} öğe geri getirildi`),G.clear(),await qo();return}if(!o.endpoints.restore)return;const le=O.map(Ce=>Ce.path),{restored:he}=await o.restore(le);pt(`${he} öğe geri getirildi`),G.clear(),await It()}catch(le){i("error",{message:le.message,context:{op:"restore"}})}}function G2(M){if(Pr.value&&M.type==="file"){Xu(M);return}ie.value="view",Y.value=M,xe.value=!0,Xe(M)}function oO(M){if(M.type==="dir"){const gt=rn.value?Gi(M.path):Qa(M.path);It(gt);return}if(dr.value){Pr.value&&Xu(M);return}if(!K(M.perm??E.value)){G2(M);return}const O=(M.extension||"").toLowerCase(),le=a.config.openPageBase;if(!le){zr(M);return}const he=X2(le),Ce=he.includes("?")?"&":"?",fe=`${he}${Ce}path=${encodeURIComponent(M.path)}&type=${encodeURIComponent(O)}&mode=edit`;window.open(fe,"_blank","noopener"),i("file-opened",{path:M.path,basename:M.basename}),Xe(M)}const Rn=r.ref("selection"),Mu=r.ref(""),qi=r.ref([]),lO=r.ref(""),sO=r.computed(()=>{const M=G.nodes.value;return M.length===0?"none":M.length===1?M[0].type==="dir"?"single-dir":"single-file":"multi"});async function cO(M){const O=G.nodes.value;if(M==="open"){O[0]&&zr(O[0]);return}await Iu(M,O)}async function Bu(M,O){var le;Rn.value="selection",G.has(M.path)||(G.click(M.path),await r.nextTick()),(le=Fe.value)==null||le.show({clientX:O.clientX,clientY:O.clientY},G.nodes.value)}function dO(M){var O;M.preventDefault(),Rn.value="selection",G.clear(),(O=Fe.value)==null||O.show({clientX:M.clientX,clientY:M.clientY},[])}function uO(M){var O;Rn.value="breadcrumb",Mu.value=M.adapterPath,lO.value=M.label,(O=Fe.value)==null||O.show({clientX:M.x,clientY:M.y},[])}function fO(M,O){var he,Ce;oa.value="split";const le=((he=an.value)==null?void 0:he.selectedNodes())??[];qi.value=M?le.length>0?le:[M]:[],Rn.value="pane",(Ce=Fe.value)==null||Ce.show({clientX:O.clientX,clientY:O.clientY},qi.value)}const hO=r.computed(()=>{if(Rn.value==="breadcrumb")return[{key:"open",label:l("ctx.open"),icon:"↗"},{key:"copy-path",label:l("breadcrumb.copy_path"),icon:"📋"}];if(Rn.value==="pane"){const fe=qi.value;return fe.length===0?[{key:"new-folder",label:l("toolbar.new_folder"),icon:"📁"},{key:"paste",label:l("ctx.paste"),icon:"📋",disabled:!oe.value.mode}]:Ou(fe)}const M=G.nodes.value,O=M.length>0,le=M.length===1;if(J.value)return O?[{key:"restore",label:l("ctx.restore"),icon:"↩"},{divider:!0,key:"sep1",label:""},{key:"delete",label:l("ctx.delete_perm"),icon:"🗑",danger:!0}]:[];const he=(_.value??"").replace(/^\/+|\/+$/g,"");if(rn.value&&he==="")return O?le?[{key:"open",label:l("ctx.open"),icon:"↗"},{key:"open-tab",label:l("ctx.open_new_tab"),icon:"⧉"}]:[]:[];if(!O){const fe=[{key:"toggle-hidden",label:no.value?l("ctx.hide_hidden"):l("ctx.show_hidden"),icon:no.value?"🙈":"👁"}];return K(E.value)?[{key:"new-folder",label:l("toolbar.new_folder"),icon:"📁"},{key:"paste",label:l("ctx.paste"),icon:"📋",disabled:!oe.value.mode},...fe]:fe}return Ou(M)});function Ou(M){var gy,by,vy;const O=M.length>0,le=M.length===1,he=le&&((gy=M[0])==null?void 0:gy.type)==="file",Ce=s.value==="en"?"Tags…":"Etiketler…",fe=le&&typeof((by=M[0])==null?void 0:by.id)=="number",gt=s.value==="en"?"Copy node id":"Node id'yi kopyala",Tt=ae(M),Ot=K(Tt),yn=s.value==="en"?"Share / Permissions":"Paylaş / İzinler";return[{key:"open",label:l("ctx.open"),icon:"↗",hidden:!le},{key:"open-tab",label:l("ctx.open_new_tab"),icon:"⧉",hidden:!le||((vy=M[0])==null?void 0:vy.type)!=="dir"},{key:"preview",label:l("ctx.preview"),icon:"👁",hidden:!le,disabled:!he},{key:"download",label:l("ctx.download"),icon:"⬇",hidden:!le,disabled:!he},{key:"convert",label:l("ctx.convert"),icon:"🔄",hidden:!le||!$e.value||!Ot||dr.value,disabled:!he},{key:"access",label:yn,icon:"🔗",hidden:!le||!Ot||dr.value},{key:"details",label:l("ctx.details"),icon:"ℹ",hidden:!O},{key:"copy-id",label:gt,icon:"🆔",hidden:!fe,disabled:!fe},{divider:!0,key:"sep1",label:"",hidden:!Ot},{key:"rename",label:l("ctx.rename"),icon:"✎",hidden:!le||!Ot,disabled:!le},{key:"cut",label:l("ctx.cut"),icon:"✂",hidden:!O||!Ot,disabled:!O},{key:"copy",label:l("ctx.copy"),icon:"❐",hidden:!O,disabled:!O},{key:"paste",label:l("ctx.paste"),icon:"📋",hidden:!Ot,disabled:!oe.value.mode},{divider:!0,key:"sep-meta",label:"",hidden:!fe},{key:"tags",label:Ce,icon:"🏷",hidden:!fe,disabled:!fe},{divider:!0,key:"sep2",label:"",hidden:!Ot},{key:"delete",label:l("ctx.delete"),icon:"🗑",danger:!0,hidden:!O||!Ot,disabled:!O}]}const pO=r.computed(()=>{const M=G.nodes.value;if(J.value)return M.length===0?[]:[{key:"restore",label:l("ctx.restore"),icon:"↩"},{key:"delete",label:l("ctx.delete_perm"),icon:"🗑",danger:!0}];const O=(_.value??"").replace(/^\/+|\/+$/g,"");return rn.value&&O===""?M.length===1?[{key:"open",label:l("ctx.open"),icon:"↗"}]:[]:M.length===0?[]:Ou(M)});async function mO(M,O){if(Rn.value==="breadcrumb"){M.key==="open"?It(Qa(Mu.value)):M.key==="copy-path"&&await j2(Mu.value);return}if(Rn.value==="pane"){await Iu(M.key,qi.value);return}await Iu(M.key,O)}async function Iu(M,O){var le;switch(M){case"open":O[0]&&oO(O[0]);break;case"preview":O[0]&&G2(O[0]);break;case"download":O[0]&&yO(O[0]);break;case"convert":O[0]&&xO(O[0]);break;case"share":O[0]&&EO(O[0]);break;case"access":O[0]&&(ge.value=O[0],te.value=!0);break;case"details":C();break;case"copy-id":if(O[0]&&typeof O[0].id=="number"){const he=O[0].id;(le=navigator.clipboard)==null||le.writeText(String(he)).then(()=>pt(s.value==="en"?`Node id ${he} copied`:`Node id ${he} kopyalandı`),()=>pt(`#${he}`))}break;case"tags":O[0]&&tt(O[0]);break;case"rename":O[0]&&(Ne.value=O[0],Le.value=Rn.value==="pane",Qe.value=!0);break;case"cut":Rn.value==="pane"?cy():(oe.value={mode:"cut",items:O,sourcePath:_.value},pt("Kes → Yapıştır hazır"));break;case"copy":Rn.value==="pane"?dy():(oe.value={mode:"copy",items:O,sourcePath:_.value},pt("Kopyala → Yapıştır hazır"));break;case"paste":Rn.value==="pane"||cr.value?await uy():await q2();break;case"delete":Le.value=Rn.value==="pane",dt.value=!0;break;case"restore":O.length>0&&await iO(O);break;case"toggle-hidden":L2();break;case"new-folder":Le.value=Rn.value==="pane",Me.value=!0;break;case"duplicate":O[0]&&await vO(O[0]);break;case"open-tab":O[0]&&ry(O[0]);break}}function gO(){G.isEmpty.value||(oe.value={mode:"cut",items:G.nodes.value,sourcePath:_.value},pt("Kesildi"))}function bO(){G.isEmpty.value||(oe.value={mode:"copy",items:G.nodes.value,sourcePath:_.value},pt("Kopyalandı"))}async function q2(){const M=oe.value;if(!(!M.mode||M.items.length===0))try{const O=M.items.map(Ce=>Ce.path),le=M.sourcePath||"";if(M.mode==="cut"&&le===_.value){pt("Aynı klasöre kesilemez");return}if(M.mode==="cut"){const Ce=Qt(_.value),fe=Qt(le)||void 0,{op:gt}=await o.moveAsync(O,Ce,fe);z2(gt.id,O,Ce,fe),g.register(gt),pt("Taşıma kuyruğa alındı")}else{const{op:Ce}=await o.copy(O,Qt(_.value));g.register(Ce),pt("Kopyalama kuyruğa alındı")}oe.value={mode:null,items:[],sourcePath:null}}catch(O){i("error",{message:O.message,context:{op:"paste"}})}}async function vO(M){try{const{op:O}=await o.copy([M.path],Qt(_.value));g.register(O)}catch(O){i("error",{message:O.message,context:{op:"duplicate"}})}}function yO(M){if(Pr.value){hI(M);return}const O=o.downloadUrl(M.path);window.open(O,"_blank")}async function _O(M){var le,he;const O=Le.value;try{const Ce=Qt(O?((le=an.value)==null?void 0:le.getPath())??"":_.value);await o.newFolder(Ce,M),Me.value=!1,O?await((he=an.value)==null?void 0:he.reload()):await It()}catch(Ce){i("error",{message:Ce.message,context:{op:"newfolder"}})}}async function wO(M){var he,Ce;const O=Ne.value;if(!O)return;const le=Le.value;try{const fe=Qt(le?((he=an.value)==null?void 0:he.getPath())??"":_.value),gt=O.path,Tt=O.basename;if(await o.rename(fe,gt,M),Qe.value=!1,Ne.value=null,le?await((Ce=an.value)==null?void 0:Ce.reload()):await It(),M&&M!==Tt){const Ot=Ko($s(gt),M);nn(l("toast.renamed"),async()=>{await o.rename(fe,Ot,Tt)})}}catch(fe){i("error",{message:fe.message,context:{op:"rename"}})}}async function kO(){var gt,Tt,Ot;if($.value){dt.value=!1,pt("Çöpteki öğeler saklama süresi sonunda otomatik silinir. Kalıcı silme yönetici panelinden yapılır.");return}const M=Le.value,O=M?qi.value:G.nodes.value,le=Qt(M?((gt=an.value)==null?void 0:gt.getPath())??"":_.value),he=O.map(yn=>yn.path);if(he.length===0){dt.value=!1;return}const Ce=O.map(yn=>yn.id).filter(yn=>typeof yn=="number"),fe=o.endpoints.trashRestore&&Ce.length===O.length?async()=>{const{restored:yn}=await o.restoreIds(Ce);if(yn===0)throw new Error("restore failed")}:null;try{if(o.endpoints.deleteAsync){const{op:yn}=await o.deleteAsync(he,le);fe&&w.set(yn.id,{message:l("toast.trashed"),fn:fe}),g.register(yn),pt("Silme kuyruğa alındı")}else await o.deleteItems(le,he),M?await((Tt=an.value)==null?void 0:Tt.reload()):await It(),fe&&nn(l("toast.trashed"),fe);dt.value=!1,M?(Ot=an.value)==null||Ot.reload():G.clear()}catch(yn){i("error",{message:yn.message,context:{op:"delete"}})}}function EO(M){at.value=M,wt.value=null,ot.value=!0}function xO(M){ye.value=M,re.value=!0}function SO(M){pt(s.value==="en"?`Converted → ${M}`:`Dönüştürüldü → ${M}`),It()}async function CO(M){const O=at.value;if(O)try{const{share:le}=await o.createShare({path:O.path,password:M.password,expires_at:M.expires_at,max_downloads:M.max_downloads});wt.value=le,i("share-created",{path:O.path,url:le.url,pin:le.password_pin??null})}catch(le){i("error",{message:le.message,context:{op:"share"}})}}function NO(){ot.value=!1,at.value=null,wt.value=null}function Hs(){var M;if(!Ge.value){pt(s.value==="en"?"Read-only here":"Burada yazma yetkiniz yok");return}(M=be.value)==null||M.click()}function TO(M){const O=M.target,le=O.files?Array.from(O.files):[];O.value="",K2(le)}async function K2(M){if(M.length===0)return;if(Ku.value){pt(l("e2e.upload.locked"));return}if(Pr.value&&(M=await pI(M),M.length===0))return;const O=!!(o.endpoints.uploadInit&&o.endpoints.uploadFinalize);for(const le of M)O&&le.size>=10*1024*1024&&await DO(le)||await AO(le);await It()}async function AO(M){const O=crypto.randomUUID(),le=Qt(_.value);ce.value=[...ce.value,{id:O,file:M,path:le,totalBytes:M.size,uploadedBytes:0,percent:0,status:"uploading",cancel(){}}];const he=Ce=>{const fe=ce.value.findIndex(Tt=>Tt.id===O);if(fe===-1)return;const gt=[...ce.value];gt[fe]={...gt[fe],...Ce},ce.value=gt};try{await o.uploadMultipart(le,[M],Ce=>{he({percent:Ce,uploadedBytes:Math.round(Ce/100*M.size)}),i("upload-progress",{uploadId:O,percent:Ce,done:Ce>=100})}),he({percent:100,uploadedBytes:M.size,status:"done"}),i("upload-progress",{uploadId:O,percent:100,done:!0})}catch(Ce){const fe=Ce.message;he({status:"error",error:fe}),pt(l("upload.failed",{name:M.name})),i("error",{message:fe,context:{op:"upload",file:M.name}})}}async function DO(M){const O=crypto.randomUUID();let le=!1;try{return await p.uploadFile({path:Qt(_.value),file:M,onProgress:he=>{if(le){const Ce=ce.value.findIndex(fe=>fe.id===O);if(Ce!==-1){const fe=[...ce.value];fe[Ce]={...he,id:O},ce.value=fe}}else{if(he.status!=="uploading"&&he.uploadedBytes<=0)return;ce.value=[...ce.value,{...he,id:O}],le=!0}i("upload-progress",{uploadId:he.uploadId??O,percent:he.percent,done:he.status==="done"})}}),!0}catch{return le&&(ce.value=ce.value.filter(he=>he.id!==O)),!1}}const Ma=r.ref(0),Ba=r.ref(!1);function Ru(M){const O=M.dataTransfer;if(!O||O.types&&O.types.includes(ca))return!1;if(O.items&&O.items.length>0){let le=!1;for(const he of Array.from(O.items))if(he.kind==="file"){le=!0;break}return le}return O.types?O.types.includes("Files"):!1}function MO(M){Ru(M)&&(M.preventDefault(),Ma.value++,Ba.value=!0)}function BO(){Ma.value=Math.max(0,Ma.value-1),Ma.value===0&&(Ba.value=!1)}function OO(M){var O;if((O=M.dataTransfer)!=null&&O.types.includes(ca)){M.preventDefault();return}Ru(M)&&M.preventDefault()}function IO(M){var le,he,Ce;if((le=M.dataTransfer)!=null&&le.types.includes(ca)){const fe=M.dataTransfer.getData(Ec)||"",gt=Qt(_.value);if(fe&&gt&&fe!==gt&&!$.value&&Ge.value){M.preventDefault(),Ma.value=0,Ba.value=!1;try{const Tt=JSON.parse(M.dataTransfer.getData(ca));jo(Tt.map(Ot=>Ot.path),gt,fe)}catch{}return}}if((he=M.dataTransfer)!=null&&he.types.includes(ca)){Ma.value=0,Ba.value=!1;return}if(!Ru(M)){Ma.value=0,Ba.value=!1;return}if(M.preventDefault(),Ma.value=0,Ba.value=!1,!Ge.value){pt(s.value==="en"?"Read-only here":"Burada yazma yetkiniz yok");return}const O=(Ce=M.dataTransfer)!=null&&Ce.files?Array.from(M.dataTransfer.files):[];O.length!==0&&K2(O)}function W2(M){var O;(O=M.dataTransfer)!=null&&O.types.includes("Files")&&M.preventDefault()}function Y2(M){const O=ht.value,le=M.target;O&&le&&!O.contains(le)&&M.preventDefault()}r.onMounted(()=>{window.addEventListener("dragover",W2),window.addEventListener("drop",Y2)}),r.onBeforeUnmount(()=>{window.removeEventListener("dragover",W2),window.removeEventListener("drop",Y2),window.removeEventListener("hashchange",H2)});const Gs=r.computed(()=>oe.value.mode!=="cut"?new Set:new Set(oe.value.items.map(M=>M.path)));function Lu(M,O){if(!O.dataTransfer)return;if(M.basename===".trash"){O.preventDefault();return}G.has(M.path)||G.click(M.path);const le=G.nodes.value.filter(he=>!Gs.value.has(he.path)).filter(he=>he.basename!==".trash").map(he=>({path:he.path,basename:he.basename,type:he.type}));O.dataTransfer.setData(ca,JSON.stringify(le)),O.dataTransfer.setData(Ec,Qt(_.value)),O.dataTransfer.setData("text/plain",le.map(he=>he.path).join(`
5
- `)),O.dataTransfer.effectAllowed="move"}async function RO(M,O,le,he){try{const Ce=he??Qt(_.value);if(o.endpoints.moveAsync){const{op:fe}=await o.moveAsync(M,O,Ce);z2(fe.id,M,O,Ce),g.register(fe),pt("Taşıma kuyruğa alındı")}else{await o.move(Ce,M,O),await It();const fe=M.map(gt=>Ko(O,F2(gt)));nn(l("toast.moved"),async()=>{await o.move(O,fe,Ce)})}G.clear()}catch(Ce){i("error",{message:Ce.message,context:{op:le,targetDir:O}})}}async function Fu(M,O){var gt;if(M.type!=="dir")return;const le=(gt=O.dataTransfer)==null?void 0:gt.getData(ca);if(!le)return;let he=[];try{he=JSON.parse(le)}catch{return}if(he.length===0)return;const Ce=M.path,fe=he.map(Tt=>Tt.path).filter(Tt=>Tt&&Tt!==Ce&&!Ce.startsWith(Tt+"/")&&!Au($s(Tt),Ce));fe.length!==0&&await jo(fe,Ce,hy(O))}async function LO(M,O){var gt;const le=(gt=O.dataTransfer)==null?void 0:gt.getData(ca);if(!le)return;let he=[];try{he=JSON.parse(le)}catch{return}if(he.length===0)return;const Ce=M,fe=he.map(Tt=>Tt.path).filter(Tt=>Tt&&Tt!==Ce&&!Ce.startsWith(Tt+"/")&&!Au($s(Tt),Ce));fe.length!==0&&await jo(fe,Ce,hy(O))}function FO(M){M.cancel()}function zO(M){ce.value=ce.value.filter(O=>O.id!==M.id)}function PO(M){if(rn.value&&!M){It("");return}if(rn.value){It(Gi(M));return}It(Qa(M))}async function j2(M){try{await navigator.clipboard.writeText(M),pt(l("breadcrumb.copy_path"))}catch{}}function ei(M={}){return o.authHeaders({...M})}function X2(M){if(/^[a-z][a-z0-9+.-]*:\/\//i.test(M))return M;const O=a.config.apiBase;if(!O)return M;try{return new URL(M,O.endsWith("/")?O:`${O}/`).toString()}catch{return M}}const Z2=r.computed(()=>X2(a.config.viewerBaseUrl||Hx)),qs=r.ref(!1),{themeId:Ks,setTheme:$O}=Nf(),{themeMode:zu,setThemeMode:VO}=I6(),Xn=r.computed(()=>zu.value==="host"?a.config.theme||"auto":zu.value),Zn=typeof window<"u"&&window.matchMedia?window.matchMedia("(prefers-color-scheme: dark)"):void 0,J2=r.ref(!!(Zn!=null&&Zn.matches));function Q2(M){J2.value=M.matches}r.onMounted(()=>{var M;return(M=Zn==null?void 0:Zn.addEventListener)==null?void 0:M.call(Zn,"change",Q2)}),r.onBeforeUnmount(()=>{var M;return(M=Zn==null?void 0:Zn.removeEventListener)==null?void 0:M.call(Zn,"change",Q2)});const Pu=r.computed(()=>Xn.value==="dark"||Xn.value!=="light"&&J2.value);r.watch([Ks,Pu,ht],()=>{Bf(Ks.value),ht.value&&Tf(ht.value,Ks.value,Pu.value)},{immediate:!0});const Wo=r.ref(!1),Oa=r.ref(!1),aa=r.ref(null);function UO(){if(Oa.value){Oa.value=!1;return}const M=G.nodes.value,O=M.length===1?M[0]:null;if(!(!O||O.type!=="file"||O.basename===".trash")){if(dr.value){if(!Pr.value)return;(async()=>{try{await ju(O)}catch{pt(l("e2e.decrypt_failed"));return}aa.value=O,Oa.value=!0,Xe(O)})();return}aa.value=O,Oa.value=!0,Xe(O)}}function HO(M){const O=T.value.filter(fe=>fe.type==="file");if(O.length===0)return;const le=aa.value;let he=le?O.findIndex(fe=>fe.path===le.path):-1;he=he===-1?M>0?0:O.length-1:(he+M+O.length)%O.length;const Ce=O[he];!Ce||Ce.path===(le==null?void 0:le.path)||G.click(Ce.path)}function GO(){const M=aa.value;Oa.value=!1,M&&zr(M)}r.watch(()=>G.nodes.value,M=>{var le,he;if(!Oa.value)return;const O=M.length===1&&M[0].type==="file"?M[0]:null;if(O&&O.path!==((le=aa.value)==null?void 0:le.path)&&Pr.value){(async()=>{try{await ju(O)}catch{}aa.value=O,Xe(O)})();return}O&&O.path!==((he=aa.value)==null?void 0:he.path)&&(aa.value=O,Xe(O))});const $u=Pf();function qO(M){ce.value=ce.value.filter(fe=>fe.id!==M.id);const O=M.file,le=M.path||Qt(_.value),he=crypto.randomUUID();ce.value=[...ce.value,{id:he,file:O,path:le,totalBytes:O.size,uploadedBytes:0,percent:0,status:"uploading",cancel(){}}];const Ce=fe=>{const gt=ce.value.findIndex(Ot=>Ot.id===he);if(gt===-1)return;const Tt=[...ce.value];Tt[gt]={...Tt[gt],...fe},ce.value=Tt};o.uploadMultipart(le,[O],fe=>{Ce({percent:fe,uploadedBytes:Math.round(fe/100*O.size)}),i("upload-progress",{uploadId:he,percent:fe,done:fe>=100})}).then(()=>{Ce({percent:100,uploadedBytes:O.size,status:"done"}),i("upload-progress",{uploadId:he,percent:100,done:!0}),It()}).catch(fe=>{Ce({status:"error",error:fe.message}),pt(l("upload.failed",{name:O.name})),i("error",{message:fe.message,context:{op:"upload-retry",file:O.name}})})}const Ws=r.ref(!1);let Vu;function KO(){try{return localStorage.getItem(dh)==="1"}catch{return!0}}function Uu(){Ws.value=!0}function WO(){var M;Ws.value=!1;try{localStorage.setItem(dh,"1")}catch{}(M=ht.value)==null||M.focus()}function ey(){Uu()}r.onMounted(()=>{var M;(M=ht.value)==null||M.addEventListener("fe:tour-restart",ey),KO()||(Vu=setTimeout(()=>{Ws.value||Uu()},900))}),r.onBeforeUnmount(()=>{var M;Vu&&clearTimeout(Vu),(M=ht.value)==null||M.removeEventListener("fe:tour-restart",ey)});function YO(){return Vs()==="none"?null:m?`${uh}:${m}`:uh}const on=oh({storageKey:YO()}),jO=on.restore(),Hu=on.activeId,ia=r.computed(()=>{var M;return((M=on.activeTab.value)==null?void 0:M.split)??null});function XO(M){const O=(M||"").replace(/^\/+|\/+$/g,"");return O===".trash"?l("node.trash"):O?O.split("/").pop()||O:rn.value?l("breadcrumb.root"):S.value||l("breadcrumb.root")}const ty=r.computed(()=>on.tabs.value.map(M=>({id:M.id,label:XO(M.path),split:!!M.split}))),ZO=r.computed(()=>on.hasMultiple.value||a.config.tabStrip==="always"&&ty.value.length>0);r.watch(_,M=>on.syncActive({path:M})),r.watch(L,M=>on.syncActive({viewMode:M})),r.onMounted(()=>{jO||on.seed(_.value??"",L.value)});function Ys(M){if(M.viewMode&&M.viewMode!==L.value&&(L.value=M.viewMode),M.path===".trash"){qo();return}It(M.path)}function JO(M){const O=on.activate(M);O&&Ys(O)}function Gu(){on.openTab(_.value??"",{viewMode:L.value,background:!1})}function ny(M){const O=on.closeTab(M);O&&Ys(O)}function QO(){const M=on.step(1);M&&Ys(M)}function eI(){const M=on.step(-1);M&&Ys(M)}function ry(M){if(M.type!=="dir"||M.basename===".trash")return;const O=rn.value?Gi(M.path):Qa(M.path);on.openTab(O,{viewMode:L.value,background:!0})}function ay(M){if(M.button!==1)return;const O=M.target,le=O&&typeof O.closest=="function"?O.closest("[data-fe-path]"):null,he=le==null?void 0:le.getAttribute("data-fe-path");if(!he)return;const Ce=T.value.find(fe=>fe.path===he);!Ce||Ce.type!=="dir"||Ce.basename===".trash"||(M.preventDefault(),ry(Ce))}function iy(M){if(M.button!==1)return;const O=M.target;O&&typeof O.closest=="function"&&O.closest("[data-fe-path]")&&M.preventDefault()}r.onMounted(()=>{var M,O;(M=ht.value)==null||M.addEventListener("auxclick",ay),(O=ht.value)==null||O.addEventListener("mousedown",iy)}),r.onBeforeUnmount(()=>{var M,O;(M=ht.value)==null||M.removeEventListener("auxclick",ay),(O=ht.value)==null||O.removeEventListener("mousedown",iy)});const an=r.ref(null),Yo=r.computed(()=>!!ia.value&&!xt.value);function oy(){if(ia.value){on.setSplit(null),oa.value="main";return}xt.value||on.setSplit({path:_.value??"",viewMode:L.value})}function tI(){on.setSplit(null),oa.value="main"}function nI(M){on.setSplit({...ia.value??{},path:M})}function rI(){oa.value="main",qo()}const ly=r.computed(()=>{var M;return((M=ia.value)==null?void 0:M.viewMode)??L.value});function aI(M){ia.value&&on.setSplit({...ia.value,viewMode:M})}const qu=r.computed(()=>cr.value?ly.value:L.value);function sy(M){cr.value?aI(M):L.value=M}const oa=r.ref("main");function iI(){oa.value="main"}r.watch(Yo,M=>{M||(oa.value="main")});const cr=r.computed(()=>oa.value==="split"&&Yo.value),oI=r.computed(()=>Yo.value&&oa.value==="main");function lI(M){return rn.value?Gi(M):Qa(M)}function sI(M){const O=String(M??"").replace(/^\/+|\/+$/g,"");return b&&(!O||!(O===b||O.startsWith(b+"/")))?b:O}function cy(){var O,le;const M=((O=an.value)==null?void 0:O.selectedNodes())??[];M.length!==0&&(oe.value={mode:"cut",items:M,sourcePath:((le=an.value)==null?void 0:le.getPath())??""},pt("Kesildi"))}function dy(){var O,le;const M=((O=an.value)==null?void 0:O.selectedNodes())??[];M.length!==0&&(oe.value={mode:"copy",items:M,sourcePath:((le=an.value)==null?void 0:le.getPath())??""},pt("Kopyalandı"))}async function uy(){const M=oe.value,O=an.value;if(!M.mode||M.items.length===0||!O)return;const le=Qt(O.getPath()??""),he=Qt(M.sourcePath||"")||void 0;if(M.mode==="cut"&&he===le){pt("Aynı klasöre kesilemez");return}await jo(M.items.map(Ce=>Ce.path),le,he,M.mode==="copy"),oe.value={mode:null,items:[],sourcePath:null}}function fy(M){const O=M.indexOf("://");return O===-1?"":M.slice(0,O)}function hy(M){var le;return((le=M.dataTransfer)==null?void 0:le.getData(Ec))||void 0}async function jo(M,O,le,he=!1){var Tt;const Ce=M.filter(Ot=>Ot&&Ot!==O&&!O.startsWith(Ot+"/")&&!Au($s(Ot),O));if(Ce.length===0||!O)return;const fe=fy(O),gt=Ce.some(Ot=>fy(Ot)!==fe);if(gt||he)try{const{op:Ot}=await o.copy(Ce,O);g.register(Ot),pt(l(gt?"split.cross_copy":"split.copy_queued"))}catch(Ot){i("error",{message:Ot.message,context:{op:"transfer",targetWire:O}}),pt(gt?l("split.cross_failed"):Ot.message);return}else await RO(Ce,O,"move-transfer",le);(Tt=an.value)==null||Tt.reload()}function cI(M){jo(M.sources,M.targetWire,M.originWire)}const Ki=Jf(),Xo=r.ref(0),Jn=r.ref(""),Zo=new Map,dr=r.computed(()=>!!Jn.value&&!$.value),Pr=r.computed(()=>(Xo.value,dr.value&&Ki.has(Jn.value))),Ku=r.computed(()=>(Xo.value,dr.value&&!Ki.has(Jn.value))),Wi=r.ref(""),Yi=r.ref(!1),ji=r.ref(""),js=r.ref(!1),Wu=r.ref(!1);function Yu(){return Ki.get(Jn.value)??null}function py(){for(const M of Zo.values())URL.revokeObjectURL(M);Zo.clear()}r.onBeforeUnmount(py);async function dI(){if(!(!Wi.value||Yi.value||!Jn.value)){Yi.value=!0,ji.value="";try{let M="";try{const{blob:he,url:Ce}=await o.fetchBlob(Ko(Jn.value,eo));URL.revokeObjectURL(Ce),M=await he.text()}catch{ji.value=l("e2e.unlock.marker_missing");return}const O=jf(M);if(!O){ji.value=l("e2e.unlock.marker_missing");return}const le=await Xf(O,Wi.value);if(!le){ji.value=l("e2e.unlock.wrong");return}Ki.set(Jn.value,le),Xo.value++,Wi.value=""}finally{Yi.value=!1}}}function uI(){Jn.value&&(Ki.lock(Jn.value),Xo.value++,py(),pt(l("e2e.locked_toast")))}const fI={txt:"text/plain",md:"text/markdown",log:"text/plain",csv:"text/csv",json:"application/json",xml:"application/xml",html:"text/html",jpg:"image/jpeg",jpeg:"image/jpeg",png:"image/png",gif:"image/gif",webp:"image/webp",bmp:"image/bmp",avif:"image/avif",svg:"image/svg+xml",pdf:"application/pdf",mp4:"video/mp4",webm:"video/webm",mov:"video/quicktime",m4v:"video/mp4",mp3:"audio/mpeg",wav:"audio/wav",ogg:"audio/ogg",flac:"audio/flac",m4a:"audio/mp4",aac:"audio/aac",opus:"audio/opus"};function my(M){const O=(M.extension||"").toLowerCase();return fI[O]||"application/octet-stream"}async function ju(M){const O=Zo.get(M.path);if(O)return O;const le=Yu();if(!le)return null;const he=await o.fetchArrayBuffer(M.path);if(!cl(he))return null;const Ce=await yc(le,he),fe=URL.createObjectURL(new Blob([Ce],{type:my(M)}));return Zo.set(M.path,fe),fe}function Xs(M){return Zo.get(M)??o.previewUrl(M)}async function Xu(M){try{await ju(M)}catch{pt(l("e2e.decrypt_failed"));return}ie.value="view",Y.value=M,xe.value=!0,i("file-opened",{path:M.path,basename:M.basename}),Xe(M)}async function hI(M){try{const O=await o.fetchArrayBuffer(M.path),le=Yu();let he=O;if(cl(O)){if(!le)throw new Error("locked");he=await yc(le,O)}const Ce=URL.createObjectURL(new Blob([he],{type:my(M)})),fe=document.createElement("a");fe.href=Ce,fe.download=M.basename,document.body.appendChild(fe),fe.click(),fe.remove(),setTimeout(()=>URL.revokeObjectURL(Ce),3e4)}catch{pt(l("e2e.download.failed"))}}async function pI(M){const O=Yu();if(!O)return[];const le=[];for(const he of M)if(he.name!==eo){if(he.size>hc){pt(l("e2e.upload.too_big"));continue}try{const Ce=await Zf(O,await he.arrayBuffer());le.push(new File([Ce],he.name,{type:"application/octet-stream"}))}catch(Ce){i("error",{message:Ce.message,context:{op:"e2e-encrypt",file:he.name}})}}return le}async function mI(M){if(dr.value){pt(l("e2e.create.nested"));return}Wu.value=!0;try{const O=Qt(_.value);await o.newFolder(O,M.name);const{marker:le,kek:he}=await Yf(M.password),Ce=new File([JSON.stringify(le)],eo,{type:"application/json"}),fe=Ko(O,M.name);await o.uploadMultipart(fe,[Ce]),Ki.set(fe,he),Xo.value++,js.value=!1,pt(l("e2e.create.done")),await It()}catch(O){i("error",{message:O.message,context:{op:"e2e-create"}}),pt(l("e2e.create.failed"))}finally{Wu.value=!1}}return(M,O)=>{var le,he,Ce;return r.openBlock(),r.createElementBlock("div",{ref_key:"rootEl",ref:ht,class:r.normalizeClass(["fe",{"fe--theme-light":Xn.value==="light","fe--theme-dark":Xn.value==="dark","fe--is-dragover":Ba.value,"fe--density-compact":q.value==="compact","fe--narrow":xt.value}]),tabindex:"-1",onDragenter:MO,onDragover:OO,onDragleave:BO,onDrop:IO,onContextmenu:dO},[ZO.value?(r.openBlock(),r.createBlock(Vf,{key:0,tabs:ty.value,"active-id":r.unref(Hu),locale:s.value,"split-enabled":!xt.value,"split-active":!!ia.value,onSelect:JO,onClose:ny,onNew:Gu,onReorder:O[0]||(O[0]=(fe,gt)=>r.unref(on).move(fe,gt)),onToggleSplit:oy},null,8,["tabs","active-id","locale","split-enabled","split-active"])):r.createCommentVNode("",!0),r.createVNode(H4,{ref_key:"toolbarRef",ref:Kt,"view-mode":qu.value,"search-query":X.value,"trash-active":J.value,actions:pO.value,"selection-mode":sO.value,"paste-enabled":!!oe.value.mode,"convert-enabled":!!$e.value,"can-go-up":F.value,"at-virtual-root":I.value,"can-write":Ge.value,locale:s.value,narrow:xt.value,theme:Xn.value,"inspector-open":z.value,onToggleInspector:lt,onOpenTheme:O[1]||(O[1]=fe=>qs.value=!0),"onUpdate:viewMode":O[2]||(O[2]=fe=>sy(fe)),"onUpdate:searchQuery":O[3]||(O[3]=fe=>X.value=fe),"onUpdate:density":O[4]||(O[4]=fe=>q.value=fe),onOpenShortcutSettings:O[5]||(O[5]=fe=>Wo.value=!0),onNewFolder:O[6]||(O[6]=fe=>Me.value=!0),onUpload:Hs,onRefresh:O[7]||(O[7]=()=>It()),onGoUp:H,onAction:cO,onOpenRecents:O[8]||(O[8]=fe=>Ee.value=!0)},null,8,["view-mode","search-query","trash-active","actions","selection-mode","paste-enabled","convert-enabled","can-go-up","at-virtual-root","can-write","locale","narrow","theme","inspector-open","onToggleInspector"]),r.createElementVNode("div",{class:r.normalizeClass(["fe__main",{"fe__main--split":Yo.value}])},[r.createElementVNode("div",{class:r.normalizeClass(["fe__primary",{"fe-pane--focus":oI.value}])},[r.createVNode(d_,{dirname:A.value,adapter:S.value,"root-label":S.value,locale:s.value,"multi-storage-root":rn.value,"root-path":r.unref(m),onNavigate:PO,onCopyPath:j2,onCrumbContext:uO,onCrumbDrop:LO},null,8,["dirname","adapter","root-label","locale","multi-storage-root","root-path"]),r.unref(d).length||r.unref(u)?(r.openBlock(),r.createElementBlock("div",QE,[r.unref(d).length?(r.openBlock(),r.createBlock(Xy,{key:0,users:r.unref(d),locale:s.value},null,8,["users","locale"])):r.createCommentVNode("",!0),r.unref(u)?(r.openBlock(),r.createElementBlock("span",{key:1,class:"fe-connbadge",role:"status",title:r.unref(l)("conn.tooltip")},[O[51]||(O[51]=r.createElementVNode("span",{class:"fe-connbadge__dot","aria-hidden":"true"},null,-1)),r.createTextVNode(" "+r.toDisplayString(r.unref(l)("conn.offline")),1)],8,ex)):r.createCommentVNode("",!0)])):r.createCommentVNode("",!0),Pr.value?(r.openBlock(),r.createElementBlock("div",tx,[O[52]||(O[52]=r.createElementVNode("span",{class:"fe-e2e-strip__icon","aria-hidden":"true"},"🔒",-1)),r.createElementVNode("span",nx,r.toDisplayString(r.unref(l)("e2e.strip.label")),1),r.createElementVNode("button",{type:"button",class:"fe-btn fe-e2e-strip__btn",onClick:uI},r.toDisplayString(r.unref(l)("e2e.strip.lock")),1)])):r.createCommentVNode("",!0),r.createElementVNode("div",{class:"fe__body",onPointerdownCapture:O[13]||(O[13]=fe=>iI()),onClick:O[14]||(O[14]=r.withModifiers(fe=>r.unref(G).clear(),["self"]))},[v.value&&T.value.length===0?(r.openBlock(),r.createElementBlock("div",rx,[r.createElementVNode("span",ax,r.toDisplayString(r.unref(l)("loading")),1),L.value!=="list"?(r.openBlock(),r.createElementBlock("div",ix,[(r.openBlock(),r.createElementBlock(r.Fragment,null,r.renderList(8,fe=>r.createElementVNode("div",{key:fe,class:"fe-skel-card"},[...O[53]||(O[53]=[r.createElementVNode("div",{class:"fe-skel fe-skel--thumb"},null,-1),r.createElementVNode("div",{class:"fe-skel fe-skel--label"},null,-1)])])),64))])):(r.openBlock(),r.createElementBlock("div",ox,[(r.openBlock(),r.createElementBlock(r.Fragment,null,r.renderList(8,fe=>r.createElementVNode("div",{key:fe,class:"fe-skel-row"},[...O[54]||(O[54]=[r.createElementVNode("div",{class:"fe-skel fe-skel--icon"},null,-1),r.createElementVNode("div",{class:"fe-skel fe-skel--name"},null,-1),r.createElementVNode("div",{class:"fe-skel fe-skel--size"},null,-1),r.createElementVNode("div",{class:"fe-skel fe-skel--date"},null,-1)])])),64))]))])):k.value?(r.openBlock(),r.createElementBlock("div",lx,[O[55]||(O[55]=r.createElementVNode("svg",{class:"fe-state__art",viewBox:"0 0 120 100",width:"110",height:"92",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round","aria-hidden":"true"},[r.createElementVNode("path",{d:"M18 36v42a6 6 0 0 0 6 6h72a6 6 0 0 0 6-6V44a6 6 0 0 0-6-6H62l-9-10H24a6 6 0 0 0-6 6z"}),r.createElementVNode("path",{d:"M52 55c0-4.6 3.6-8 8-8s8 3.4 8 8c0 5.5-8 4.8-8 11"}),r.createElementVNode("circle",{cx:"60",cy:"73",r:"1.6",fill:"currentColor",stroke:"none"})],-1)),r.createElementVNode("p",sx,r.toDisplayString(r.unref(l)("notFound.title")),1),r.createElementVNode("p",cx,r.toDisplayString(k.value),1),r.createElementVNode("p",dx,r.toDisplayString(r.unref(l)("notFound.desc")),1),r.createElementVNode("div",ux,[r.createElementVNode("button",{type:"button",class:"fe-btn",onClick:ZB},r.toDisplayString(r.unref(l)("notFound.goRoot")),1)])])):N.value&&T.value.length===0?(r.openBlock(),r.createElementBlock("div",fx,[O[56]||(O[56]=r.createStaticVNode('<svg class="fe-state__art" viewBox="0 0 120 100" width="110" height="92" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><circle cx="60" cy="50" r="28"></circle><path d="M60 36v18"></path><circle cx="60" cy="63" r="1.8" fill="currentColor" stroke="none"></circle><path d="M24 88h72" stroke-dasharray="3 5"></path></svg>',1)),r.createElementVNode("p",hx,r.toDisplayString(r.unref(l)("error.title")),1),r.createElementVNode("p",px,r.toDisplayString(r.unref(l)("error.hint")),1),r.createElementVNode("div",mx,[r.createElementVNode("button",{type:"button",class:"fe-btn fe-btn--primary",onClick:U},r.toDisplayString(r.unref(l)("error.retry")),1)]),r.createElementVNode("details",gx,[r.createElementVNode("summary",bx,r.toDisplayString(r.unref(l)("error.details")),1),r.createElementVNode("pre",vx,r.toDisplayString(N.value),1)])])):Ku.value?(r.openBlock(),r.createElementBlock("div",yx,[O[57]||(O[57]=r.createStaticVNode('<svg class="fe-state__art" viewBox="0 0 120 100" width="110" height="92" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><rect x="38" y="44" width="44" height="34" rx="6"></rect><path d="M46 44v-8a14 14 0 0 1 28 0v8"></path><circle cx="60" cy="59" r="3" fill="currentColor" stroke="none"></circle><path d="M60 62v7"></path></svg>',1)),r.createElementVNode("p",_x,r.toDisplayString(r.unref(l)("e2e.locked.title")),1),r.createElementVNode("p",wx,r.toDisplayString(r.unref(l)("e2e.locked.hint")),1),r.createElementVNode("form",{class:"fe-e2e-lock__form",onSubmit:r.withModifiers(dI,["prevent"])},[r.withDirectives(r.createElementVNode("input",{"onUpdate:modelValue":O[9]||(O[9]=fe=>Wi.value=fe),type:"password",class:"fe-input fe-e2e-lock__input",placeholder:r.unref(l)("e2e.locked.pw_placeholder"),autocomplete:"current-password",disabled:Yi.value},null,8,kx),[[r.vModelText,Wi.value]]),r.createElementVNode("button",{type:"submit",class:"fe-btn fe-btn--primary",disabled:Yi.value||!Wi.value},r.toDisplayString(Yi.value?r.unref(l)("e2e.locked.busy"):r.unref(l)("e2e.locked.unlock")),9,Ex)],32),ji.value?(r.openBlock(),r.createElementBlock("p",xx,r.toDisplayString(ji.value),1)):r.createCommentVNode("",!0)])):!v.value&&T.value.length===0&&X.value?(r.openBlock(),r.createElementBlock("div",Sx,[O[58]||(O[58]=r.createElementVNode("svg",{class:"fe-state__art",viewBox:"0 0 120 100",width:"110",height:"92",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round","aria-hidden":"true"},[r.createElementVNode("circle",{cx:"52",cy:"44",r:"22"}),r.createElementVNode("path",{d:"M68 61l20 20"}),r.createElementVNode("path",{d:"M46 38l12 12M58 38l-12 12"})],-1)),r.createElementVNode("p",Cx,r.toDisplayString(r.unref(l)("empty.search.title")),1),r.createElementVNode("p",Nx,r.toDisplayString(r.unref(l)("empty.search.hint")),1)])):!v.value&&T.value.length===0&&$.value?(r.openBlock(),r.createElementBlock("div",Tx,[O[59]||(O[59]=r.createStaticVNode('<svg class="fe-state__art" viewBox="0 0 120 100" width="110" height="92" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M38 34l4 48a6 6 0 0 0 6 5.6h24a6 6 0 0 0 6-5.6l4-48"></path><path d="M32 34h56"></path><path d="M50 34v-6a6 6 0 0 1 6-6h8a6 6 0 0 1 6 6v6"></path><path d="M52 44v32M60 44v32M68 44v32" opacity="0.5"></path></svg>',1)),r.createElementVNode("p",Ax,r.toDisplayString(r.unref(l)("empty.trash.title")),1)])):!v.value&&T.value.length===0?(r.openBlock(),r.createElementBlock("div",Dx,[(r.openBlock(),r.createElementBlock("svg",Mx,[O[61]||(O[61]=r.createElementVNode("path",{d:"M18 36v42a6 6 0 0 0 6 6h72a6 6 0 0 0 6-6V44a6 6 0 0 0-6-6H62l-9-10H24a6 6 0 0 0-6 6z"},null,-1)),ue.value?(r.openBlock(),r.createElementBlock("g",Bx,[...O[60]||(O[60]=[r.createElementVNode("path",{d:"M60 50v14","stroke-dasharray":"3 4"},null,-1),r.createElementVNode("path",{d:"M53 59l7 8 7-8"},null,-1)])])):r.createCommentVNode("",!0)])),r.createElementVNode("p",Ox,r.toDisplayString(r.unref(l)("empty.folder")),1),ue.value?(r.openBlock(),r.createElementBlock("p",Ix,r.toDisplayString(r.unref(l)("empty.hint")),1)):r.createCommentVNode("",!0),ue.value?(r.openBlock(),r.createElementBlock("div",Rx,[r.createElementVNode("button",{type:"button",class:"fe-btn fe-btn--primary",onClick:Hs},r.toDisplayString(r.unref(l)("empty.upload")),1)])):r.createCommentVNode("",!0)])):L.value==="list"?(r.openBlock(),r.createBlock(_f,{key:7,files:T.value,selected:r.unref(G).selected.value,clipped:Gs.value,"show-parent-path":!!X.value,locale:s.value,loading:v.value,"starred-ids":ve.value,"api-base":a.config.apiBase??"","auth-headers":()=>ei(),"auth-credentials":r.unref(o).credentialsMode(),onClickRow:O[10]||(O[10]=(fe,gt)=>r.unref(G).click(fe.path,gt)),onDblRow:zr,onContextRow:Bu,onItemDragStart:Lu,onItemDropInto:Fu,onStarChange:De},null,8,["files","selected","clipped","show-parent-path","locale","loading","starred-ids","api-base","auth-headers","auth-credentials"])):L.value==="grid"?(r.openBlock(),r.createBlock(wf,{key:8,files:T.value,selected:r.unref(G).selected.value,clipped:Gs.value,"show-parent-path":!!X.value,locale:s.value,loading:v.value,"thumb-src":r.unref(f).src,onClickCard:O[11]||(O[11]=(fe,gt)=>r.unref(G).click(fe.path,gt)),onDblCard:zr,onContextCard:Bu,onItemDragStart:Lu,onItemDropInto:Fu},null,8,["files","selected","clipped","show-parent-path","locale","loading","thumb-src"])):(r.openBlock(),r.createBlock(kf,{key:9,files:T.value,selected:r.unref(G).selected.value,clipped:Gs.value,"show-parent-path":!!X.value,locale:s.value,loading:v.value,"thumb-src":r.unref(f).src,onClickCard:O[12]||(O[12]=(fe,gt)=>r.unref(G).click(fe.path,gt)),onDblCard:zr,onContextCard:Bu,onItemDragStart:Lu,onItemDropInto:Fu},null,8,["files","selected","clipped","show-parent-path","locale","loading","thumb-src"]))],32)],2),Yo.value&&ia.value?(r.openBlock(),r.createBlock(ih,{ref_key:"splitPaneRef",ref:an,key:"split-"+r.unref(Hu),api:r.unref(o),"initial-path":ia.value.path,locale:s.value,qualify:Qt,"to-user":lI,clamp:sI,"root-label":rn.value?"/":S.value||r.unref(l)("breadcrumb.root"),floor:r.unref(b),"multi-root":rn.value,"virtual-rows":R2,active:cr.value,"view-mode":ly.value,"thumb-src":r.unref(f).src,"trash-visible":e.config.trashVisible!==!1,onNavigate:nI,onActivate:O[15]||(O[15]=fe=>oa.value="split"),onClose:tI,onOpenTab:O[16]||(O[16]=fe=>r.unref(on).openTab(fe,{viewMode:L.value,background:!0})),onTransfer:cI,onContext:fO,onOpenTrash:rI},null,8,["api","initial-path","locale","root-label","floor","multi-root","active","view-mode","thumb-src","trash-visible","onContext","onOpenTrash"])):r.createCommentVNode("",!0),z.value?(r.openBlock(),r.createBlock(O5,{key:1,api:r.unref(o),nodes:r.unref(G).nodes.value,"dir-label":ke.value,"dir-count":T.value.length,"dir-perm":E.value,locale:s.value,narrow:xt.value,"thumb-src":r.unref(f).src,onClose:_e,onManagePermissions:R,onToast:pt,onChanged:O[17]||(O[17]=()=>It())},null,8,["api","nodes","dir-label","dir-count","dir-perm","locale","narrow","thumb-src"])):r.createCommentVNode("",!0)],2),Ba.value?(r.openBlock(),r.createElementBlock("div",Lx,[...O[62]||(O[62]=[r.createElementVNode("div",{class:"fe__dragover-card"},[r.createElementVNode("span",{class:"fe-icon"},"⬆"),r.createElementVNode("p",null,"Dosyaları buraya bırak")],-1)])])):r.createCommentVNode("",!0),r.createVNode(p3,{jobs:ce.value,locale:s.value,center:r.unref($u),onCancel:FO,onDismiss:zO,onRetry:qO},null,8,["jobs","locale","center"]),r.createVNode(m3,{ops:r.unref(g).ops.value,locale:s.value,center:r.unref($u),onDismiss:O[18]||(O[18]=fe=>r.unref(g).dismiss(fe))},null,8,["ops","locale","center"]),r.createVNode(Ff,{center:r.unref($u),locale:s.value,narrow:xt.value},null,8,["center","locale","narrow"]),xt.value&&ue.value?(r.openBlock(),r.createElementBlock("button",{key:2,type:"button",class:"fe-fab",title:r.unref(l)("toolbar.upload"),"aria-label":r.unref(l)("toolbar.upload"),onClick:Hs},[...O[63]||(O[63]=[r.createElementVNode("svg",{class:"fe-ficon",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2.2","stroke-linecap":"round","aria-hidden":"true",focusable:"false"},[r.createElementVNode("path",{d:"M12 5v14M5 12h14"})],-1)])],8,Fx)):r.createCommentVNode("",!0),r.createVNode(ac,{ref_key:"ctxRef",ref:Fe,locale:s.value,theme:Xn.value,sheet:Ct.value,actions:hO.value,onSelect:mO},null,8,["locale","theme","sheet","actions"]),r.createVNode(Mk,{open:Me.value,locale:s.value,"encrypted-option":!dr.value,onClose:O[19]||(O[19]=fe=>Me.value=!1),onSubmit:_O,onEncrypted:O[20]||(O[20]=fe=>{Me.value=!1,js.value=!0})},null,8,["open","locale","encrypted-option"]),r.createVNode(lh,{open:js.value,locale:s.value,busy:Wu.value,onClose:O[21]||(O[21]=fe=>js.value=!1),onSubmit:mI},null,8,["open","locale","busy"]),r.createVNode(Ok,{open:Qe.value,locale:s.value,"current-name":((le=Ne.value)==null?void 0:le.basename)||"",onClose:O[22]||(O[22]=fe=>Qe.value=!1),onSubmit:wO},null,8,["open","locale","current-name"]),r.createVNode(Ik,{open:dt.value,locale:s.value,count:r.unref(G).size.value,onClose:O[23]||(O[23]=fe=>dt.value=!1),onConfirm:kO},null,8,["open","locale","count"]),r.createVNode(Yk,{open:ot.value,locale:s.value,share:wt.value,onClose:NO,onSubmit:CO,onToast:pt},null,8,["open","locale","share"]),r.createVNode(uc,{open:xe.value,locale:s.value,file:Y.value,theme:Xn.value,"preview-url":fe=>Xs(fe),"download-url":fe=>Pr.value?Xs(fe):r.unref(o).downloadUrl(fe),"only-office-base":dr.value?null:Oe.value,"only-office-config-endpoint":Ie.value,"new-tab-enabled":!dr.value,"save-text-endpoint":dr.value?null:r.unref(o).endpoints.saveText||null,"open-mode":ie.value,"auth-headers":()=>ei({"Content-Type":"application/json"}),"auth-credentials":r.unref(o).credentialsMode(),"drawio-url":pe.value,"pdf-worker-url":a.config.pdfWorkerUrl||null,"pdf-save-url":a.config.pdfSaveUrl||null,"viewer-base-url":Z2.value,onClose:O[24]||(O[24]=fe=>xe.value=!1)},null,8,["open","locale","file","theme","preview-url","download-url","only-office-base","only-office-config-endpoint","new-tab-enabled","save-text-endpoint","open-mode","auth-headers","auth-credentials","drawio-url","pdf-worker-url","pdf-save-url","viewer-base-url"]),re.value&&ye.value&&$e.value?(r.openBlock(),r.createBlock(s7,{key:3,"convert-url":$e.value,"file-name":((he=ye.value)==null?void 0:he.basename)||((Ce=ye.value)==null?void 0:Ce.path)||"","fetch-bytes":()=>{var fe;return r.unref(o).fetchArrayBuffer(((fe=ye.value)==null?void 0:fe.path)??"")},upload:fe=>r.unref(o).uploadMultipart(Qt(_.value),[fe]).then(()=>{}),onClose:O[25]||(O[25]=fe=>re.value=!1),onDone:SO},null,8,["convert-url","file-name","fetch-bytes","upload"])):r.createCommentVNode("",!0),te.value&&ge.value?(r.openBlock(),r.createBlock(JE,{key:4,api:r.unref(o),path:ge.value.path,"is-dir":ge.value.type==="dir",size:typeof ge.value.size=="number"?ge.value.size:void 0,locale:s.value==="en"?"en":"tr",onClose:O[26]||(O[26]=fe=>te.value=!1)},null,8,["api","path","is-dir","size","locale"])):r.createCommentVNode("",!0),r.createVNode(r.Transition,{name:"fe-modal"},{default:r.withCtx(()=>[Ee.value?(r.openBlock(),r.createElementBlock("div",{key:0,class:r.normalizeClass(["fe fe-modal__backdrop fe-recents__backdrop",{"fe--theme-light":Xn.value==="light","fe--theme-dark":Xn.value==="dark"}]),onClick:O[30]||(O[30]=fe=>Ee.value=!1)},[r.createElementVNode("div",{class:"fe-recents__panel",onClick:O[29]||(O[29]=r.withModifiers(()=>{},["stop"]))},[r.createElementVNode("div",zx,[r.createElementVNode("strong",null,r.toDisplayString(s.value==="en"?"Recently opened":"Son açılanlar"),1),r.createElementVNode("button",{class:"fe-recents__close","aria-label":"Close",onClick:O[27]||(O[27]=fe=>Ee.value=!1)},"×")]),r.createVNode(mf,{"api-base":a.config.apiBase??"","auth-headers":()=>ei(),"auth-credentials":r.unref(o).credentialsMode(),limit:20,"refresh-key":we.value,onOpen:Pe,onError:O[28]||(O[28]=fe=>i("error",{message:fe,context:{op:"recents"}}))},null,8,["api-base","auth-headers","auth-credentials","refresh-key"])])],2)):r.createCommentVNode("",!0)]),_:1}),r.createVNode(r.Transition,{name:"fe-modal"},{default:r.withCtx(()=>[ne.value&&me.value&&typeof me.value.id=="number"?(r.openBlock(),r.createElementBlock("div",{key:0,class:"fe-modal__backdrop",onClick:O[34]||(O[34]=fe=>ne.value=!1)},[r.createElementVNode("div",{class:"fe-modal__card fe-modal__card--md",onClick:O[33]||(O[33]=r.withModifiers(()=>{},["stop"]))},[r.createElementVNode("header",Px,[r.createElementVNode("h2",$x,r.toDisplayString(s.value==="en"?"Tags":"Etiketler")+" — "+r.toDisplayString(me.value.basename),1),r.createElementVNode("button",{class:"fe-modal__close","aria-label":"Close",onClick:O[31]||(O[31]=fe=>ne.value=!1)},"×")]),r.createElementVNode("div",Vx,[r.createVNode(pf,{"node-id":me.value.id,"api-base":a.config.apiBase??"","auth-headers":()=>ei(),"auth-credentials":r.unref(o).credentialsMode(),onError:O[32]||(O[32]=fe=>i("error",{message:fe,context:{op:"tags"}}))},null,8,["node-id","api-base","auth-headers","auth-credentials"])])])])):r.createCommentVNode("",!0)]),_:1}),r.createVNode(m6,{open:Du.value,locale:s.value,files:T.value,"view-mode":L.value,"can-write":Ge.value&&!I.value&&!J.value,"can-go-up":F.value,"global-search":eO,onClose:O[35]||(O[35]=fe=>Du.value=!1),onOpenHit:tO,onOpenNode:zr,onNavigate:O[36]||(O[36]=fe=>It(fe)),onNewFolder:O[37]||(O[37]=fe=>Me.value=!0),onUpload:Hs,onToggleView:O[38]||(O[38]=fe=>sy(qu.value==="list"?"grid":qu.value==="grid"?"gallery":"list")),onOpenTrash:qo,onRefresh:O[39]||(O[39]=()=>It()),onGoUp:H,onOpenTheme:O[40]||(O[40]=fe=>qs.value=!0),onOpenShortcutSettings:O[41]||(O[41]=fe=>Wo.value=!0),onStartTour:O[42]||(O[42]=fe=>Uu()),"split-enabled":!xt.value,onTabNew:O[43]||(O[43]=fe=>Gu()),onSplitToggle:O[44]||(O[44]=fe=>oy())},null,8,["open","locale","files","view-mode","can-write","can-go-up","split-enabled"]),r.createVNode(A6,{open:Us.value,locale:s.value,onClose:O[45]||(O[45]=fe=>Us.value=!1),onCustomize:O[46]||(O[46]=fe=>{Us.value=!1,Wo.value=!0})},null,8,["open","locale"]),r.createVNode(Of,{open:qs.value,locale:s.value,theme:Xn.value,dark:Pu.value,current:r.unref(Ks),mode:r.unref(zu),"host-mode":e.config.theme||"auto",onClose:O[47]||(O[47]=fe=>qs.value=!1),onSelect:r.unref($O),onMode:O[48]||(O[48]=fe=>r.unref(VO)(fe))},null,8,["open","locale","theme","dark","current","mode","host-mode","onSelect"]),r.createElementVNode("input",{ref_key:"fileInputEl",ref:be,type:"file",multiple:"",class:"fe__file-input",onChange:TO},null,544),r.createVNode(r.Transition,{name:"fe-toast"},{default:r.withCtx(()=>[Bn.value?(r.openBlock(),r.createElementBlock("div",{key:0,class:r.normalizeClass(["fe-toast",{"fe-toast--action":!!Bn.value.actionLabel}]),role:"status",onClick:jn},[r.createElementVNode("span",Ux,r.toDisplayString(Bn.value.message),1),Bn.value.actionLabel&&Bn.value.action?(r.openBlock(),r.createElementBlock("button",{key:0,type:"button",class:"fe-toast__action",onClick:r.withModifiers(sr,["stop"])},r.toDisplayString(Bn.value.actionLabel),1)):r.createCommentVNode("",!0)],2)):r.createCommentVNode("",!0)]),_:1}),r.createVNode(If,{open:Wo.value,locale:s.value,theme:Xn.value,onClose:O[49]||(O[49]=fe=>Wo.value=!1)},null,8,["open","locale","theme"]),r.createVNode(Lf,{open:Oa.value,locale:s.value,file:aa.value,theme:Xn.value,"preview-url":fe=>Xs(fe),"download-url":fe=>Pr.value?Xs(fe):r.unref(o).downloadUrl(fe),"only-office-base":dr.value?null:Oe.value,"only-office-config-endpoint":Ie.value,"auth-headers":()=>ei({"Content-Type":"application/json"}),"auth-credentials":r.unref(o).credentialsMode(),"drawio-url":pe.value,"pdf-worker-url":a.config.pdfWorkerUrl||null,"viewer-base-url":Z2.value,onClose:O[50]||(O[50]=fe=>Oa.value=!1),onNav:HO,onOpenFull:GO},null,8,["open","locale","file","theme","preview-url","download-url","only-office-base","only-office-config-endpoint","auth-headers","auth-credentials","drawio-url","pdf-worker-url","viewer-base-url"]),r.createVNode(Yw,{open:Ws.value,locale:s.value,root:ht.value,theme:Xn.value,onClose:WO},null,8,["open","locale","root","theme"])],34)}}});var qx=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function xc(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}function fh(e){return e instanceof Map?e.clear=e.delete=e.set=function(){throw new Error("map is read-only")}:e instanceof Set&&(e.add=e.clear=e.delete=function(){throw new Error("set is read-only")}),Object.freeze(e),Object.getOwnPropertyNames(e).forEach(t=>{const n=e[t],a=typeof n;(a==="object"||a==="function")&&!Object.isFrozen(n)&&fh(n)}),e}class hh{constructor(t){t.data===void 0&&(t.data={}),this.data=t.data,this.isMatchIgnored=!1}ignoreMatch(){this.isMatchIgnored=!0}}function ph(e){return e.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#x27;")}function da(e,...t){const n=Object.create(null);for(const a in e)n[a]=e[a];return t.forEach(function(a){for(const i in a)n[i]=a[i]}),n}const Kx="</span>",mh=e=>!!e.scope,Wx=(e,{prefix:t})=>{if(e.startsWith("language:"))return e.replace("language:","language-");if(e.includes(".")){const n=e.split(".");return[`${t}${n.shift()}`,...n.map((a,i)=>`${a}${"_".repeat(i+1)}`)].join(" ")}return`${t}${e}`};class Yx{constructor(t,n){this.buffer="",this.classPrefix=n.classPrefix,t.walk(this)}addText(t){this.buffer+=ph(t)}openNode(t){if(!mh(t))return;const n=Wx(t.scope,{prefix:this.classPrefix});this.span(n)}closeNode(t){mh(t)&&(this.buffer+=Kx)}value(){return this.buffer}span(t){this.buffer+=`<span class="${t}">`}}const gh=(e={})=>{const t={children:[]};return Object.assign(t,e),t};class Sc{constructor(){this.rootNode=gh(),this.stack=[this.rootNode]}get top(){return this.stack[this.stack.length-1]}get root(){return this.rootNode}add(t){this.top.children.push(t)}openNode(t){const n=gh({scope:t});this.add(n),this.stack.push(n)}closeNode(){if(this.stack.length>1)return this.stack.pop()}closeAllNodes(){for(;this.closeNode(););}toJSON(){return JSON.stringify(this.rootNode,null,4)}walk(t){return this.constructor._walk(t,this.rootNode)}static _walk(t,n){return typeof n=="string"?t.addText(n):n.children&&(t.openNode(n),n.children.forEach(a=>this._walk(t,a)),t.closeNode(n)),t}static _collapse(t){typeof t!="string"&&t.children&&(t.children.every(n=>typeof n=="string")?t.children=[t.children.join("")]:t.children.forEach(n=>{Sc._collapse(n)}))}}class jx extends Sc{constructor(t){super(),this.options=t}addText(t){t!==""&&this.add(t)}startScope(t){this.openNode(t)}endScope(){this.closeNode()}__addSublanguage(t,n){const a=t.root;n&&(a.scope=`language:${n}`),this.add(a)}toHTML(){return new Yx(this,this.options).value()}finalize(){return this.closeAllNodes(),!0}}function ro(e){return e?typeof e=="string"?e:e.source:null}function bh(e){return Ra("(?=",e,")")}function Xx(e){return Ra("(?:",e,")*")}function Zx(e){return Ra("(?:",e,")?")}function Ra(...e){return e.map(n=>ro(n)).join("")}function Jx(e){const t=e[e.length-1];return typeof t=="object"&&t.constructor===Object?(e.splice(e.length-1,1),t):{}}function Cc(...e){return"("+(Jx(e).capture?"":"?:")+e.map(a=>ro(a)).join("|")+")"}function vh(e){return new RegExp(e.toString()+"|").exec("").length-1}function Qx(e,t){const n=e&&e.exec(t);return n&&n.index===0}const e9=/\[(?:[^\\\]]|\\.)*\]|\(\??|\\([1-9][0-9]*)|\\./;function Nc(e,{joinWith:t}){let n=0;return e.map(a=>{n+=1;const i=n;let o=ro(a),s="";for(;o.length>0;){const l=e9.exec(o);if(!l){s+=o;break}s+=o.substring(0,l.index),o=o.substring(l.index+l[0].length),l[0][0]==="\\"&&l[1]?s+="\\"+String(Number(l[1])+i):(s+=l[0],l[0]==="("&&n++)}return s}).map(a=>`(${a})`).join(t)}const t9=/\b\B/,yh="[a-zA-Z]\\w*",Tc="[a-zA-Z_]\\w*",_h="\\b\\d+(\\.\\d+)?",wh="(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",kh="\\b(0b[01]+)",n9="!|!=|!==|%|%=|&|&&|&=|\\*|\\*=|\\+|\\+=|,|-|-=|/=|/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\?|\\[|\\{|\\(|\\^|\\^=|\\||\\|=|\\|\\||~",r9=(e={})=>{const t=/^#![ ]*\//;return e.binary&&(e.begin=Ra(t,/.*\b/,e.binary,/\b.*/)),da({scope:"meta",begin:t,end:/$/,relevance:0,"on:begin":(n,a)=>{n.index!==0&&a.ignoreMatch()}},e)},ao={begin:"\\\\[\\s\\S]",relevance:0},a9={scope:"string",begin:"'",end:"'",illegal:"\\n",contains:[ao]},i9={scope:"string",begin:'"',end:'"',illegal:"\\n",contains:[ao]},o9={begin:/\b(a|an|the|are|I'm|isn't|don't|doesn't|won't|but|just|should|pretty|simply|enough|gonna|going|wtf|so|such|will|you|your|they|like|more)\b/},dl=function(e,t,n={}){const a=da({scope:"comment",begin:e,end:t,contains:[]},n);a.contains.push({scope:"doctag",begin:"[ ]*(?=(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):)",end:/(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):/,excludeBegin:!0,relevance:0});const i=Cc("I","a","is","so","us","to","at","if","in","it","on",/[A-Za-z]+['](d|ve|re|ll|t|s|n)/,/[A-Za-z]+[-][a-z]+/,/[A-Za-z][a-z]{2,}/);return a.contains.push({begin:Ra(/[ ]+/,"(",i,/[.]?[:]?([.][ ]|[ ])/,"){3}")}),a},l9=dl("//","$"),s9=dl("/\\*","\\*/"),c9=dl("#","$"),d9={scope:"number",begin:_h,relevance:0},u9={scope:"number",begin:wh,relevance:0},f9={scope:"number",begin:kh,relevance:0},h9={scope:"regexp",begin:/\/(?=[^/\n]*\/)/,end:/\/[gimuy]*/,contains:[ao,{begin:/\[/,end:/\]/,relevance:0,contains:[ao]}]},p9={scope:"title",begin:yh,relevance:0},m9={scope:"title",begin:Tc,relevance:0},g9={begin:"\\.\\s*"+Tc,relevance:0};var ul=Object.freeze({__proto__:null,APOS_STRING_MODE:a9,BACKSLASH_ESCAPE:ao,BINARY_NUMBER_MODE:f9,BINARY_NUMBER_RE:kh,COMMENT:dl,C_BLOCK_COMMENT_MODE:s9,C_LINE_COMMENT_MODE:l9,C_NUMBER_MODE:u9,C_NUMBER_RE:wh,END_SAME_AS_BEGIN:function(e){return Object.assign(e,{"on:begin":(t,n)=>{n.data._beginMatch=t[1]},"on:end":(t,n)=>{n.data._beginMatch!==t[1]&&n.ignoreMatch()}})},HASH_COMMENT_MODE:c9,IDENT_RE:yh,MATCH_NOTHING_RE:t9,METHOD_GUARD:g9,NUMBER_MODE:d9,NUMBER_RE:_h,PHRASAL_WORDS_MODE:o9,QUOTE_STRING_MODE:i9,REGEXP_MODE:h9,RE_STARTERS_RE:n9,SHEBANG:r9,TITLE_MODE:p9,UNDERSCORE_IDENT_RE:Tc,UNDERSCORE_TITLE_MODE:m9});function b9(e,t){e.input[e.index-1]==="."&&t.ignoreMatch()}function v9(e,t){e.className!==void 0&&(e.scope=e.className,delete e.className)}function y9(e,t){t&&e.beginKeywords&&(e.begin="\\b("+e.beginKeywords.split(" ").join("|")+")(?!\\.)(?=\\b|\\s)",e.__beforeBegin=b9,e.keywords=e.keywords||e.beginKeywords,delete e.beginKeywords,e.relevance===void 0&&(e.relevance=0))}function _9(e,t){Array.isArray(e.illegal)&&(e.illegal=Cc(...e.illegal))}function w9(e,t){if(e.match){if(e.begin||e.end)throw new Error("begin & end are not supported with match");e.begin=e.match,delete e.match}}function k9(e,t){e.relevance===void 0&&(e.relevance=1)}const E9=(e,t)=>{if(!e.beforeMatch)return;if(e.starts)throw new Error("beforeMatch cannot be used with starts");const n=Object.assign({},e);Object.keys(e).forEach(a=>{delete e[a]}),e.keywords=n.keywords,e.begin=Ra(n.beforeMatch,bh(n.begin)),e.starts={relevance:0,contains:[Object.assign(n,{endsParent:!0})]},e.relevance=0,delete n.beforeMatch},x9=["of","and","for","in","not","or","if","then","parent","list","value"],S9="keyword";function Eh(e,t,n=S9){const a=Object.create(null);return typeof e=="string"?i(n,e.split(" ")):Array.isArray(e)?i(n,e):Object.keys(e).forEach(function(o){Object.assign(a,Eh(e[o],t,o))}),a;function i(o,s){t&&(s=s.map(l=>l.toLowerCase())),s.forEach(function(l){const c=l.split("|");a[c[0]]=[o,C9(c[0],c[1])]})}}function C9(e,t){return t?Number(t):N9(e)?0:1}function N9(e){return x9.includes(e.toLowerCase())}const xh={},La=e=>{console.error(e)},Sh=(e,...t)=>{console.log(`WARN: ${e}`,...t)},ai=(e,t)=>{xh[`${e}/${t}`]||(console.log(`Deprecated as of ${e}. ${t}`),xh[`${e}/${t}`]=!0)},fl=new Error;function Ch(e,t,{key:n}){let a=0;const i=e[n],o={},s={};for(let l=1;l<=t.length;l++)s[l+a]=i[l],o[l+a]=!0,a+=vh(t[l-1]);e[n]=s,e[n]._emit=o,e[n]._multi=!0}function T9(e){if(Array.isArray(e.begin)){if(e.skip||e.excludeBegin||e.returnBegin)throw La("skip, excludeBegin, returnBegin not compatible with beginScope: {}"),fl;if(typeof e.beginScope!="object"||e.beginScope===null)throw La("beginScope must be object"),fl;Ch(e,e.begin,{key:"beginScope"}),e.begin=Nc(e.begin,{joinWith:""})}}function A9(e){if(Array.isArray(e.end)){if(e.skip||e.excludeEnd||e.returnEnd)throw La("skip, excludeEnd, returnEnd not compatible with endScope: {}"),fl;if(typeof e.endScope!="object"||e.endScope===null)throw La("endScope must be object"),fl;Ch(e,e.end,{key:"endScope"}),e.end=Nc(e.end,{joinWith:""})}}function D9(e){e.scope&&typeof e.scope=="object"&&e.scope!==null&&(e.beginScope=e.scope,delete e.scope)}function M9(e){D9(e),typeof e.beginScope=="string"&&(e.beginScope={_wrap:e.beginScope}),typeof e.endScope=="string"&&(e.endScope={_wrap:e.endScope}),T9(e),A9(e)}function B9(e){function t(s,l){return new RegExp(ro(s),"m"+(e.case_insensitive?"i":"")+(e.unicodeRegex?"u":"")+(l?"g":""))}class n{constructor(){this.matchIndexes={},this.regexes=[],this.matchAt=1,this.position=0}addRule(l,c){c.position=this.position++,this.matchIndexes[this.matchAt]=c,this.regexes.push([c,l]),this.matchAt+=vh(l)+1}compile(){this.regexes.length===0&&(this.exec=()=>null);const l=this.regexes.map(c=>c[1]);this.matcherRe=t(Nc(l,{joinWith:"|"}),!0),this.lastIndex=0}exec(l){this.matcherRe.lastIndex=this.lastIndex;const c=this.matcherRe.exec(l);if(!c)return null;const d=c.findIndex((h,f)=>f>0&&h!==void 0),u=this.matchIndexes[d];return c.splice(0,d),Object.assign(c,u)}}class a{constructor(){this.rules=[],this.multiRegexes=[],this.count=0,this.lastIndex=0,this.regexIndex=0}getMatcher(l){if(this.multiRegexes[l])return this.multiRegexes[l];const c=new n;return this.rules.slice(l).forEach(([d,u])=>c.addRule(d,u)),c.compile(),this.multiRegexes[l]=c,c}resumingScanAtSamePosition(){return this.regexIndex!==0}considerAll(){this.regexIndex=0}addRule(l,c){this.rules.push([l,c]),c.type==="begin"&&this.count++}exec(l){const c=this.getMatcher(this.regexIndex);c.lastIndex=this.lastIndex;let d=c.exec(l);if(this.resumingScanAtSamePosition()&&!(d&&d.index===this.lastIndex)){const u=this.getMatcher(0);u.lastIndex=this.lastIndex+1,d=u.exec(l)}return d&&(this.regexIndex+=d.position+1,this.regexIndex===this.count&&this.considerAll()),d}}function i(s){const l=new a;return s.contains.forEach(c=>l.addRule(c.begin,{rule:c,type:"begin"})),s.terminatorEnd&&l.addRule(s.terminatorEnd,{type:"end"}),s.illegal&&l.addRule(s.illegal,{type:"illegal"}),l}function o(s,l){const c=s;if(s.isCompiled)return c;[v9,w9,M9,E9].forEach(u=>u(s,l)),e.compilerExtensions.forEach(u=>u(s,l)),s.__beforeBegin=null,[y9,_9,k9].forEach(u=>u(s,l)),s.isCompiled=!0;let d=null;return typeof s.keywords=="object"&&s.keywords.$pattern&&(s.keywords=Object.assign({},s.keywords),d=s.keywords.$pattern,delete s.keywords.$pattern),d=d||/\w+/,s.keywords&&(s.keywords=Eh(s.keywords,e.case_insensitive)),c.keywordPatternRe=t(d,!0),l&&(s.begin||(s.begin=/\B|\b/),c.beginRe=t(c.begin),!s.end&&!s.endsWithParent&&(s.end=/\B|\b/),s.end&&(c.endRe=t(c.end)),c.terminatorEnd=ro(c.end)||"",s.endsWithParent&&l.terminatorEnd&&(c.terminatorEnd+=(s.end?"|":"")+l.terminatorEnd)),s.illegal&&(c.illegalRe=t(s.illegal)),s.contains||(s.contains=[]),s.contains=[].concat(...s.contains.map(function(u){return O9(u==="self"?s:u)})),s.contains.forEach(function(u){o(u,c)}),s.starts&&o(s.starts,l),c.matcher=i(c),c}if(e.compilerExtensions||(e.compilerExtensions=[]),e.contains&&e.contains.includes("self"))throw new Error("ERR: contains `self` is not supported at the top-level of a language. See documentation.");return e.classNameAliases=da(e.classNameAliases||{}),o(e)}function Nh(e){return e?e.endsWithParent||Nh(e.starts):!1}function O9(e){return e.variants&&!e.cachedVariants&&(e.cachedVariants=e.variants.map(function(t){return da(e,{variants:null},t)})),e.cachedVariants?e.cachedVariants:Nh(e)?da(e,{starts:e.starts?da(e.starts):null}):Object.isFrozen(e)?da(e):e}var I9="11.11.1";class R9 extends Error{constructor(t,n){super(t),this.name="HTMLInjectionError",this.html=n}}const Ac=ph,Th=da,Ah=Symbol("nomatch"),L9=7,Dh=function(e){const t=Object.create(null),n=Object.create(null),a=[];let i=!0;const o="Could not find the language '{}', did you forget to load/include a language module?",s={disableAutodetect:!0,name:"Plain text",contains:[]};let l={ignoreUnescapedHTML:!1,throwUnescapedHTML:!1,noHighlightRe:/^(no-?highlight)$/i,languageDetectRe:/\blang(?:uage)?-([\w-]+)\b/i,classPrefix:"hljs-",cssSelector:"pre code",languages:null,__emitter:jx};function c($){return l.noHighlightRe.test($)}function d($){let j=$.className+" ";j+=$.parentNode?$.parentNode.className:"";const J=l.languageDetectRe.exec(j);if(J){const V=E(J[1]);return V||(Sh(o.replace("{}",J[1])),Sh("Falling back to no-highlight mode for this block.",$)),V?J[1]:"no-highlight"}return j.split(/\s+/).find(V=>c(V)||E(V))}function u($,j,J){let V="",F="";typeof j=="object"?(V=$,J=j.ignoreIllegals,F=j.language):(ai("10.7.0","highlight(lang, code, ...args) has been deprecated."),ai("10.7.0",`Please use highlight(code, options) instead.
5
+ `)),O.dataTransfer.effectAllowed="move"}async function RO(M,O,le,he){try{const Ce=he??Qt(_.value);if(o.endpoints.moveAsync){const{op:fe}=await o.moveAsync(M,O,Ce);z2(fe.id,M,O,Ce),g.register(fe),pt("Taşıma kuyruğa alındı")}else{await o.move(Ce,M,O),await It();const fe=M.map(gt=>Ko(O,F2(gt)));nn(l("toast.moved"),async()=>{await o.move(O,fe,Ce)})}G.clear()}catch(Ce){i("error",{message:Ce.message,context:{op:le,targetDir:O}})}}async function Fu(M,O){var gt;if(M.type!=="dir")return;const le=(gt=O.dataTransfer)==null?void 0:gt.getData(ca);if(!le)return;let he=[];try{he=JSON.parse(le)}catch{return}if(he.length===0)return;const Ce=M.path,fe=he.map(Tt=>Tt.path).filter(Tt=>Tt&&Tt!==Ce&&!Ce.startsWith(Tt+"/")&&!Au($s(Tt),Ce));fe.length!==0&&await jo(fe,Ce,hy(O))}async function LO(M,O){var gt;const le=(gt=O.dataTransfer)==null?void 0:gt.getData(ca);if(!le)return;let he=[];try{he=JSON.parse(le)}catch{return}if(he.length===0)return;const Ce=M,fe=he.map(Tt=>Tt.path).filter(Tt=>Tt&&Tt!==Ce&&!Ce.startsWith(Tt+"/")&&!Au($s(Tt),Ce));fe.length!==0&&await jo(fe,Ce,hy(O))}function FO(M){M.cancel()}function zO(M){ce.value=ce.value.filter(O=>O.id!==M.id)}function PO(M){if(rn.value&&!M){It("");return}if(rn.value){It(Gi(M));return}It(Qa(M))}async function j2(M){try{await navigator.clipboard.writeText(M),pt(l("breadcrumb.copy_path"))}catch{}}function ei(M={}){return o.authHeaders({...M})}function X2(M){if(/^[a-z][a-z0-9+.-]*:\/\//i.test(M))return M;const O=a.config.apiBase;if(!O)return M;try{return new URL(M,O.endsWith("/")?O:`${O}/`).toString()}catch{return M}}const Z2=r.computed(()=>X2(a.config.viewerBaseUrl||Hx)),qs=r.ref(!1),{themeId:Ks,setTheme:$O}=Nf(),{themeMode:zu,setThemeMode:VO}=I6(),Xn=r.computed(()=>zu.value==="host"?a.config.theme||"auto":zu.value),Zn=typeof window<"u"&&window.matchMedia?window.matchMedia("(prefers-color-scheme: dark)"):void 0,J2=r.ref(!!(Zn!=null&&Zn.matches));function Q2(M){J2.value=M.matches}r.onMounted(()=>{var M;return(M=Zn==null?void 0:Zn.addEventListener)==null?void 0:M.call(Zn,"change",Q2)}),r.onBeforeUnmount(()=>{var M;return(M=Zn==null?void 0:Zn.removeEventListener)==null?void 0:M.call(Zn,"change",Q2)});const Pu=r.computed(()=>Xn.value==="dark"||Xn.value!=="light"&&J2.value);r.watch([Ks,Pu,ht],()=>{Bf(Ks.value),ht.value&&Tf(ht.value,Ks.value,Pu.value)},{immediate:!0});const Wo=r.ref(!1),Oa=r.ref(!1),aa=r.ref(null);function UO(){if(Oa.value){Oa.value=!1;return}const M=G.nodes.value,O=M.length===1?M[0]:null;if(!(!O||O.type!=="file"||O.basename===".trash")){if(dr.value){if(!Pr.value)return;(async()=>{try{await ju(O)}catch{pt(l("e2e.decrypt_failed"));return}aa.value=O,Oa.value=!0,Xe(O)})();return}aa.value=O,Oa.value=!0,Xe(O)}}function HO(M){const O=T.value.filter(fe=>fe.type==="file");if(O.length===0)return;const le=aa.value;let he=le?O.findIndex(fe=>fe.path===le.path):-1;he=he===-1?M>0?0:O.length-1:(he+M+O.length)%O.length;const Ce=O[he];!Ce||Ce.path===(le==null?void 0:le.path)||G.click(Ce.path)}function GO(){const M=aa.value;Oa.value=!1,M&&zr(M)}r.watch(()=>G.nodes.value,M=>{var le,he;if(!Oa.value)return;const O=M.length===1&&M[0].type==="file"?M[0]:null;if(O&&O.path!==((le=aa.value)==null?void 0:le.path)&&Pr.value){(async()=>{try{await ju(O)}catch{}aa.value=O,Xe(O)})();return}O&&O.path!==((he=aa.value)==null?void 0:he.path)&&(aa.value=O,Xe(O))});const $u=Pf();function qO(M){ce.value=ce.value.filter(fe=>fe.id!==M.id);const O=M.file,le=M.path||Qt(_.value),he=crypto.randomUUID();ce.value=[...ce.value,{id:he,file:O,path:le,totalBytes:O.size,uploadedBytes:0,percent:0,status:"uploading",cancel(){}}];const Ce=fe=>{const gt=ce.value.findIndex(Ot=>Ot.id===he);if(gt===-1)return;const Tt=[...ce.value];Tt[gt]={...Tt[gt],...fe},ce.value=Tt};o.uploadMultipart(le,[O],fe=>{Ce({percent:fe,uploadedBytes:Math.round(fe/100*O.size)}),i("upload-progress",{uploadId:he,percent:fe,done:fe>=100})}).then(()=>{Ce({percent:100,uploadedBytes:O.size,status:"done"}),i("upload-progress",{uploadId:he,percent:100,done:!0}),It()}).catch(fe=>{Ce({status:"error",error:fe.message}),pt(l("upload.failed",{name:O.name})),i("error",{message:fe.message,context:{op:"upload-retry",file:O.name}})})}const Ws=r.ref(!1);let Vu;function KO(){try{return localStorage.getItem(dh)==="1"}catch{return!0}}function Uu(){Ws.value=!0}function WO(){var M;Ws.value=!1;try{localStorage.setItem(dh,"1")}catch{}(M=ht.value)==null||M.focus()}function ey(){Uu()}r.onMounted(()=>{var M;(M=ht.value)==null||M.addEventListener("fe:tour-restart",ey),KO()||(Vu=setTimeout(()=>{Ws.value||Uu()},900))}),r.onBeforeUnmount(()=>{var M;Vu&&clearTimeout(Vu),(M=ht.value)==null||M.removeEventListener("fe:tour-restart",ey)});function YO(){return Vs()==="none"?null:m?`${uh}:${m}`:uh}const on=oh({storageKey:YO()}),jO=on.restore(),Hu=on.activeId,ia=r.computed(()=>{var M;return((M=on.activeTab.value)==null?void 0:M.split)??null});function XO(M){const O=(M||"").replace(/^\/+|\/+$/g,"");return O===".trash"?l("node.trash"):O?O.split("/").pop()||O:rn.value?l("breadcrumb.root"):S.value||l("breadcrumb.root")}const ty=r.computed(()=>on.tabs.value.map(M=>({id:M.id,label:XO(M.path),split:!!M.split}))),ZO=r.computed(()=>on.hasMultiple.value||a.config.tabStrip!=="auto"&&ty.value.length>0);r.watch(_,M=>on.syncActive({path:M})),r.watch(L,M=>on.syncActive({viewMode:M})),r.onMounted(()=>{jO||on.seed(_.value??"",L.value)});function Ys(M){if(M.viewMode&&M.viewMode!==L.value&&(L.value=M.viewMode),M.path===".trash"){qo();return}It(M.path)}function JO(M){const O=on.activate(M);O&&Ys(O)}function Gu(){on.openTab(_.value??"",{viewMode:L.value,background:!1})}function ny(M){const O=on.closeTab(M);O&&Ys(O)}function QO(){const M=on.step(1);M&&Ys(M)}function eI(){const M=on.step(-1);M&&Ys(M)}function ry(M){if(M.type!=="dir"||M.basename===".trash")return;const O=rn.value?Gi(M.path):Qa(M.path);on.openTab(O,{viewMode:L.value,background:!0})}function ay(M){if(M.button!==1)return;const O=M.target,le=O&&typeof O.closest=="function"?O.closest("[data-fe-path]"):null,he=le==null?void 0:le.getAttribute("data-fe-path");if(!he)return;const Ce=T.value.find(fe=>fe.path===he);!Ce||Ce.type!=="dir"||Ce.basename===".trash"||(M.preventDefault(),ry(Ce))}function iy(M){if(M.button!==1)return;const O=M.target;O&&typeof O.closest=="function"&&O.closest("[data-fe-path]")&&M.preventDefault()}r.onMounted(()=>{var M,O;(M=ht.value)==null||M.addEventListener("auxclick",ay),(O=ht.value)==null||O.addEventListener("mousedown",iy)}),r.onBeforeUnmount(()=>{var M,O;(M=ht.value)==null||M.removeEventListener("auxclick",ay),(O=ht.value)==null||O.removeEventListener("mousedown",iy)});const an=r.ref(null),Yo=r.computed(()=>!!ia.value&&!xt.value);function oy(){if(ia.value){on.setSplit(null),oa.value="main";return}xt.value||on.setSplit({path:_.value??"",viewMode:L.value})}function tI(){on.setSplit(null),oa.value="main"}function nI(M){on.setSplit({...ia.value??{},path:M})}function rI(){oa.value="main",qo()}const ly=r.computed(()=>{var M;return((M=ia.value)==null?void 0:M.viewMode)??L.value});function aI(M){ia.value&&on.setSplit({...ia.value,viewMode:M})}const qu=r.computed(()=>cr.value?ly.value:L.value);function sy(M){cr.value?aI(M):L.value=M}const oa=r.ref("main");function iI(){oa.value="main"}r.watch(Yo,M=>{M||(oa.value="main")});const cr=r.computed(()=>oa.value==="split"&&Yo.value),oI=r.computed(()=>Yo.value&&oa.value==="main");function lI(M){return rn.value?Gi(M):Qa(M)}function sI(M){const O=String(M??"").replace(/^\/+|\/+$/g,"");return b&&(!O||!(O===b||O.startsWith(b+"/")))?b:O}function cy(){var O,le;const M=((O=an.value)==null?void 0:O.selectedNodes())??[];M.length!==0&&(oe.value={mode:"cut",items:M,sourcePath:((le=an.value)==null?void 0:le.getPath())??""},pt("Kesildi"))}function dy(){var O,le;const M=((O=an.value)==null?void 0:O.selectedNodes())??[];M.length!==0&&(oe.value={mode:"copy",items:M,sourcePath:((le=an.value)==null?void 0:le.getPath())??""},pt("Kopyalandı"))}async function uy(){const M=oe.value,O=an.value;if(!M.mode||M.items.length===0||!O)return;const le=Qt(O.getPath()??""),he=Qt(M.sourcePath||"")||void 0;if(M.mode==="cut"&&he===le){pt("Aynı klasöre kesilemez");return}await jo(M.items.map(Ce=>Ce.path),le,he,M.mode==="copy"),oe.value={mode:null,items:[],sourcePath:null}}function fy(M){const O=M.indexOf("://");return O===-1?"":M.slice(0,O)}function hy(M){var le;return((le=M.dataTransfer)==null?void 0:le.getData(Ec))||void 0}async function jo(M,O,le,he=!1){var Tt;const Ce=M.filter(Ot=>Ot&&Ot!==O&&!O.startsWith(Ot+"/")&&!Au($s(Ot),O));if(Ce.length===0||!O)return;const fe=fy(O),gt=Ce.some(Ot=>fy(Ot)!==fe);if(gt||he)try{const{op:Ot}=await o.copy(Ce,O);g.register(Ot),pt(l(gt?"split.cross_copy":"split.copy_queued"))}catch(Ot){i("error",{message:Ot.message,context:{op:"transfer",targetWire:O}}),pt(gt?l("split.cross_failed"):Ot.message);return}else await RO(Ce,O,"move-transfer",le);(Tt=an.value)==null||Tt.reload()}function cI(M){jo(M.sources,M.targetWire,M.originWire)}const Ki=Jf(),Xo=r.ref(0),Jn=r.ref(""),Zo=new Map,dr=r.computed(()=>!!Jn.value&&!$.value),Pr=r.computed(()=>(Xo.value,dr.value&&Ki.has(Jn.value))),Ku=r.computed(()=>(Xo.value,dr.value&&!Ki.has(Jn.value))),Wi=r.ref(""),Yi=r.ref(!1),ji=r.ref(""),js=r.ref(!1),Wu=r.ref(!1);function Yu(){return Ki.get(Jn.value)??null}function py(){for(const M of Zo.values())URL.revokeObjectURL(M);Zo.clear()}r.onBeforeUnmount(py);async function dI(){if(!(!Wi.value||Yi.value||!Jn.value)){Yi.value=!0,ji.value="";try{let M="";try{const{blob:he,url:Ce}=await o.fetchBlob(Ko(Jn.value,eo));URL.revokeObjectURL(Ce),M=await he.text()}catch{ji.value=l("e2e.unlock.marker_missing");return}const O=jf(M);if(!O){ji.value=l("e2e.unlock.marker_missing");return}const le=await Xf(O,Wi.value);if(!le){ji.value=l("e2e.unlock.wrong");return}Ki.set(Jn.value,le),Xo.value++,Wi.value=""}finally{Yi.value=!1}}}function uI(){Jn.value&&(Ki.lock(Jn.value),Xo.value++,py(),pt(l("e2e.locked_toast")))}const fI={txt:"text/plain",md:"text/markdown",log:"text/plain",csv:"text/csv",json:"application/json",xml:"application/xml",html:"text/html",jpg:"image/jpeg",jpeg:"image/jpeg",png:"image/png",gif:"image/gif",webp:"image/webp",bmp:"image/bmp",avif:"image/avif",svg:"image/svg+xml",pdf:"application/pdf",mp4:"video/mp4",webm:"video/webm",mov:"video/quicktime",m4v:"video/mp4",mp3:"audio/mpeg",wav:"audio/wav",ogg:"audio/ogg",flac:"audio/flac",m4a:"audio/mp4",aac:"audio/aac",opus:"audio/opus"};function my(M){const O=(M.extension||"").toLowerCase();return fI[O]||"application/octet-stream"}async function ju(M){const O=Zo.get(M.path);if(O)return O;const le=Yu();if(!le)return null;const he=await o.fetchArrayBuffer(M.path);if(!cl(he))return null;const Ce=await yc(le,he),fe=URL.createObjectURL(new Blob([Ce],{type:my(M)}));return Zo.set(M.path,fe),fe}function Xs(M){return Zo.get(M)??o.previewUrl(M)}async function Xu(M){try{await ju(M)}catch{pt(l("e2e.decrypt_failed"));return}ie.value="view",Y.value=M,xe.value=!0,i("file-opened",{path:M.path,basename:M.basename}),Xe(M)}async function hI(M){try{const O=await o.fetchArrayBuffer(M.path),le=Yu();let he=O;if(cl(O)){if(!le)throw new Error("locked");he=await yc(le,O)}const Ce=URL.createObjectURL(new Blob([he],{type:my(M)})),fe=document.createElement("a");fe.href=Ce,fe.download=M.basename,document.body.appendChild(fe),fe.click(),fe.remove(),setTimeout(()=>URL.revokeObjectURL(Ce),3e4)}catch{pt(l("e2e.download.failed"))}}async function pI(M){const O=Yu();if(!O)return[];const le=[];for(const he of M)if(he.name!==eo){if(he.size>hc){pt(l("e2e.upload.too_big"));continue}try{const Ce=await Zf(O,await he.arrayBuffer());le.push(new File([Ce],he.name,{type:"application/octet-stream"}))}catch(Ce){i("error",{message:Ce.message,context:{op:"e2e-encrypt",file:he.name}})}}return le}async function mI(M){if(dr.value){pt(l("e2e.create.nested"));return}Wu.value=!0;try{const O=Qt(_.value);await o.newFolder(O,M.name);const{marker:le,kek:he}=await Yf(M.password),Ce=new File([JSON.stringify(le)],eo,{type:"application/json"}),fe=Ko(O,M.name);await o.uploadMultipart(fe,[Ce]),Ki.set(fe,he),Xo.value++,js.value=!1,pt(l("e2e.create.done")),await It()}catch(O){i("error",{message:O.message,context:{op:"e2e-create"}}),pt(l("e2e.create.failed"))}finally{Wu.value=!1}}return(M,O)=>{var le,he,Ce;return r.openBlock(),r.createElementBlock("div",{ref_key:"rootEl",ref:ht,class:r.normalizeClass(["fe",{"fe--theme-light":Xn.value==="light","fe--theme-dark":Xn.value==="dark","fe--is-dragover":Ba.value,"fe--density-compact":q.value==="compact","fe--narrow":xt.value}]),tabindex:"-1",onDragenter:MO,onDragover:OO,onDragleave:BO,onDrop:IO,onContextmenu:dO},[ZO.value?(r.openBlock(),r.createBlock(Vf,{key:0,tabs:ty.value,"active-id":r.unref(Hu),locale:s.value,"split-enabled":!xt.value,"split-active":!!ia.value,onSelect:JO,onClose:ny,onNew:Gu,onReorder:O[0]||(O[0]=(fe,gt)=>r.unref(on).move(fe,gt)),onToggleSplit:oy},null,8,["tabs","active-id","locale","split-enabled","split-active"])):r.createCommentVNode("",!0),r.createVNode(H4,{ref_key:"toolbarRef",ref:Kt,"view-mode":qu.value,"search-query":X.value,"trash-active":J.value,actions:pO.value,"selection-mode":sO.value,"paste-enabled":!!oe.value.mode,"convert-enabled":!!$e.value,"can-go-up":F.value,"at-virtual-root":I.value,"can-write":Ge.value,locale:s.value,narrow:xt.value,theme:Xn.value,"inspector-open":z.value,onToggleInspector:lt,onOpenTheme:O[1]||(O[1]=fe=>qs.value=!0),"onUpdate:viewMode":O[2]||(O[2]=fe=>sy(fe)),"onUpdate:searchQuery":O[3]||(O[3]=fe=>X.value=fe),"onUpdate:density":O[4]||(O[4]=fe=>q.value=fe),onOpenShortcutSettings:O[5]||(O[5]=fe=>Wo.value=!0),onNewFolder:O[6]||(O[6]=fe=>Me.value=!0),onUpload:Hs,onRefresh:O[7]||(O[7]=()=>It()),onGoUp:H,onAction:cO,onOpenRecents:O[8]||(O[8]=fe=>Ee.value=!0)},null,8,["view-mode","search-query","trash-active","actions","selection-mode","paste-enabled","convert-enabled","can-go-up","at-virtual-root","can-write","locale","narrow","theme","inspector-open","onToggleInspector"]),r.createElementVNode("div",{class:r.normalizeClass(["fe__main",{"fe__main--split":Yo.value}])},[r.createElementVNode("div",{class:r.normalizeClass(["fe__primary",{"fe-pane--focus":oI.value}])},[r.createVNode(d_,{dirname:A.value,adapter:S.value,"root-label":S.value,locale:s.value,"multi-storage-root":rn.value,"root-path":r.unref(m),onNavigate:PO,onCopyPath:j2,onCrumbContext:uO,onCrumbDrop:LO},null,8,["dirname","adapter","root-label","locale","multi-storage-root","root-path"]),r.unref(d).length||r.unref(u)?(r.openBlock(),r.createElementBlock("div",QE,[r.unref(d).length?(r.openBlock(),r.createBlock(Xy,{key:0,users:r.unref(d),locale:s.value},null,8,["users","locale"])):r.createCommentVNode("",!0),r.unref(u)?(r.openBlock(),r.createElementBlock("span",{key:1,class:"fe-connbadge",role:"status",title:r.unref(l)("conn.tooltip")},[O[51]||(O[51]=r.createElementVNode("span",{class:"fe-connbadge__dot","aria-hidden":"true"},null,-1)),r.createTextVNode(" "+r.toDisplayString(r.unref(l)("conn.offline")),1)],8,ex)):r.createCommentVNode("",!0)])):r.createCommentVNode("",!0),Pr.value?(r.openBlock(),r.createElementBlock("div",tx,[O[52]||(O[52]=r.createElementVNode("span",{class:"fe-e2e-strip__icon","aria-hidden":"true"},"🔒",-1)),r.createElementVNode("span",nx,r.toDisplayString(r.unref(l)("e2e.strip.label")),1),r.createElementVNode("button",{type:"button",class:"fe-btn fe-e2e-strip__btn",onClick:uI},r.toDisplayString(r.unref(l)("e2e.strip.lock")),1)])):r.createCommentVNode("",!0),r.createElementVNode("div",{class:"fe__body",onPointerdownCapture:O[13]||(O[13]=fe=>iI()),onClick:O[14]||(O[14]=r.withModifiers(fe=>r.unref(G).clear(),["self"]))},[v.value&&T.value.length===0?(r.openBlock(),r.createElementBlock("div",rx,[r.createElementVNode("span",ax,r.toDisplayString(r.unref(l)("loading")),1),L.value!=="list"?(r.openBlock(),r.createElementBlock("div",ix,[(r.openBlock(),r.createElementBlock(r.Fragment,null,r.renderList(8,fe=>r.createElementVNode("div",{key:fe,class:"fe-skel-card"},[...O[53]||(O[53]=[r.createElementVNode("div",{class:"fe-skel fe-skel--thumb"},null,-1),r.createElementVNode("div",{class:"fe-skel fe-skel--label"},null,-1)])])),64))])):(r.openBlock(),r.createElementBlock("div",ox,[(r.openBlock(),r.createElementBlock(r.Fragment,null,r.renderList(8,fe=>r.createElementVNode("div",{key:fe,class:"fe-skel-row"},[...O[54]||(O[54]=[r.createElementVNode("div",{class:"fe-skel fe-skel--icon"},null,-1),r.createElementVNode("div",{class:"fe-skel fe-skel--name"},null,-1),r.createElementVNode("div",{class:"fe-skel fe-skel--size"},null,-1),r.createElementVNode("div",{class:"fe-skel fe-skel--date"},null,-1)])])),64))]))])):k.value?(r.openBlock(),r.createElementBlock("div",lx,[O[55]||(O[55]=r.createElementVNode("svg",{class:"fe-state__art",viewBox:"0 0 120 100",width:"110",height:"92",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round","aria-hidden":"true"},[r.createElementVNode("path",{d:"M18 36v42a6 6 0 0 0 6 6h72a6 6 0 0 0 6-6V44a6 6 0 0 0-6-6H62l-9-10H24a6 6 0 0 0-6 6z"}),r.createElementVNode("path",{d:"M52 55c0-4.6 3.6-8 8-8s8 3.4 8 8c0 5.5-8 4.8-8 11"}),r.createElementVNode("circle",{cx:"60",cy:"73",r:"1.6",fill:"currentColor",stroke:"none"})],-1)),r.createElementVNode("p",sx,r.toDisplayString(r.unref(l)("notFound.title")),1),r.createElementVNode("p",cx,r.toDisplayString(k.value),1),r.createElementVNode("p",dx,r.toDisplayString(r.unref(l)("notFound.desc")),1),r.createElementVNode("div",ux,[r.createElementVNode("button",{type:"button",class:"fe-btn",onClick:ZB},r.toDisplayString(r.unref(l)("notFound.goRoot")),1)])])):N.value&&T.value.length===0?(r.openBlock(),r.createElementBlock("div",fx,[O[56]||(O[56]=r.createStaticVNode('<svg class="fe-state__art" viewBox="0 0 120 100" width="110" height="92" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><circle cx="60" cy="50" r="28"></circle><path d="M60 36v18"></path><circle cx="60" cy="63" r="1.8" fill="currentColor" stroke="none"></circle><path d="M24 88h72" stroke-dasharray="3 5"></path></svg>',1)),r.createElementVNode("p",hx,r.toDisplayString(r.unref(l)("error.title")),1),r.createElementVNode("p",px,r.toDisplayString(r.unref(l)("error.hint")),1),r.createElementVNode("div",mx,[r.createElementVNode("button",{type:"button",class:"fe-btn fe-btn--primary",onClick:U},r.toDisplayString(r.unref(l)("error.retry")),1)]),r.createElementVNode("details",gx,[r.createElementVNode("summary",bx,r.toDisplayString(r.unref(l)("error.details")),1),r.createElementVNode("pre",vx,r.toDisplayString(N.value),1)])])):Ku.value?(r.openBlock(),r.createElementBlock("div",yx,[O[57]||(O[57]=r.createStaticVNode('<svg class="fe-state__art" viewBox="0 0 120 100" width="110" height="92" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><rect x="38" y="44" width="44" height="34" rx="6"></rect><path d="M46 44v-8a14 14 0 0 1 28 0v8"></path><circle cx="60" cy="59" r="3" fill="currentColor" stroke="none"></circle><path d="M60 62v7"></path></svg>',1)),r.createElementVNode("p",_x,r.toDisplayString(r.unref(l)("e2e.locked.title")),1),r.createElementVNode("p",wx,r.toDisplayString(r.unref(l)("e2e.locked.hint")),1),r.createElementVNode("form",{class:"fe-e2e-lock__form",onSubmit:r.withModifiers(dI,["prevent"])},[r.withDirectives(r.createElementVNode("input",{"onUpdate:modelValue":O[9]||(O[9]=fe=>Wi.value=fe),type:"password",class:"fe-input fe-e2e-lock__input",placeholder:r.unref(l)("e2e.locked.pw_placeholder"),autocomplete:"current-password",disabled:Yi.value},null,8,kx),[[r.vModelText,Wi.value]]),r.createElementVNode("button",{type:"submit",class:"fe-btn fe-btn--primary",disabled:Yi.value||!Wi.value},r.toDisplayString(Yi.value?r.unref(l)("e2e.locked.busy"):r.unref(l)("e2e.locked.unlock")),9,Ex)],32),ji.value?(r.openBlock(),r.createElementBlock("p",xx,r.toDisplayString(ji.value),1)):r.createCommentVNode("",!0)])):!v.value&&T.value.length===0&&X.value?(r.openBlock(),r.createElementBlock("div",Sx,[O[58]||(O[58]=r.createElementVNode("svg",{class:"fe-state__art",viewBox:"0 0 120 100",width:"110",height:"92",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round","aria-hidden":"true"},[r.createElementVNode("circle",{cx:"52",cy:"44",r:"22"}),r.createElementVNode("path",{d:"M68 61l20 20"}),r.createElementVNode("path",{d:"M46 38l12 12M58 38l-12 12"})],-1)),r.createElementVNode("p",Cx,r.toDisplayString(r.unref(l)("empty.search.title")),1),r.createElementVNode("p",Nx,r.toDisplayString(r.unref(l)("empty.search.hint")),1)])):!v.value&&T.value.length===0&&$.value?(r.openBlock(),r.createElementBlock("div",Tx,[O[59]||(O[59]=r.createStaticVNode('<svg class="fe-state__art" viewBox="0 0 120 100" width="110" height="92" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M38 34l4 48a6 6 0 0 0 6 5.6h24a6 6 0 0 0 6-5.6l4-48"></path><path d="M32 34h56"></path><path d="M50 34v-6a6 6 0 0 1 6-6h8a6 6 0 0 1 6 6v6"></path><path d="M52 44v32M60 44v32M68 44v32" opacity="0.5"></path></svg>',1)),r.createElementVNode("p",Ax,r.toDisplayString(r.unref(l)("empty.trash.title")),1)])):!v.value&&T.value.length===0?(r.openBlock(),r.createElementBlock("div",Dx,[(r.openBlock(),r.createElementBlock("svg",Mx,[O[61]||(O[61]=r.createElementVNode("path",{d:"M18 36v42a6 6 0 0 0 6 6h72a6 6 0 0 0 6-6V44a6 6 0 0 0-6-6H62l-9-10H24a6 6 0 0 0-6 6z"},null,-1)),ue.value?(r.openBlock(),r.createElementBlock("g",Bx,[...O[60]||(O[60]=[r.createElementVNode("path",{d:"M60 50v14","stroke-dasharray":"3 4"},null,-1),r.createElementVNode("path",{d:"M53 59l7 8 7-8"},null,-1)])])):r.createCommentVNode("",!0)])),r.createElementVNode("p",Ox,r.toDisplayString(r.unref(l)("empty.folder")),1),ue.value?(r.openBlock(),r.createElementBlock("p",Ix,r.toDisplayString(r.unref(l)("empty.hint")),1)):r.createCommentVNode("",!0),ue.value?(r.openBlock(),r.createElementBlock("div",Rx,[r.createElementVNode("button",{type:"button",class:"fe-btn fe-btn--primary",onClick:Hs},r.toDisplayString(r.unref(l)("empty.upload")),1)])):r.createCommentVNode("",!0)])):L.value==="list"?(r.openBlock(),r.createBlock(_f,{key:7,files:T.value,selected:r.unref(G).selected.value,clipped:Gs.value,"show-parent-path":!!X.value,locale:s.value,loading:v.value,"starred-ids":ve.value,"api-base":a.config.apiBase??"","auth-headers":()=>ei(),"auth-credentials":r.unref(o).credentialsMode(),onClickRow:O[10]||(O[10]=(fe,gt)=>r.unref(G).click(fe.path,gt)),onDblRow:zr,onContextRow:Bu,onItemDragStart:Lu,onItemDropInto:Fu,onStarChange:De},null,8,["files","selected","clipped","show-parent-path","locale","loading","starred-ids","api-base","auth-headers","auth-credentials"])):L.value==="grid"?(r.openBlock(),r.createBlock(wf,{key:8,files:T.value,selected:r.unref(G).selected.value,clipped:Gs.value,"show-parent-path":!!X.value,locale:s.value,loading:v.value,"thumb-src":r.unref(f).src,onClickCard:O[11]||(O[11]=(fe,gt)=>r.unref(G).click(fe.path,gt)),onDblCard:zr,onContextCard:Bu,onItemDragStart:Lu,onItemDropInto:Fu},null,8,["files","selected","clipped","show-parent-path","locale","loading","thumb-src"])):(r.openBlock(),r.createBlock(kf,{key:9,files:T.value,selected:r.unref(G).selected.value,clipped:Gs.value,"show-parent-path":!!X.value,locale:s.value,loading:v.value,"thumb-src":r.unref(f).src,onClickCard:O[12]||(O[12]=(fe,gt)=>r.unref(G).click(fe.path,gt)),onDblCard:zr,onContextCard:Bu,onItemDragStart:Lu,onItemDropInto:Fu},null,8,["files","selected","clipped","show-parent-path","locale","loading","thumb-src"]))],32)],2),Yo.value&&ia.value?(r.openBlock(),r.createBlock(ih,{ref_key:"splitPaneRef",ref:an,key:"split-"+r.unref(Hu),api:r.unref(o),"initial-path":ia.value.path,locale:s.value,qualify:Qt,"to-user":lI,clamp:sI,"root-label":rn.value?"/":S.value||r.unref(l)("breadcrumb.root"),floor:r.unref(b),"multi-root":rn.value,"virtual-rows":R2,active:cr.value,"view-mode":ly.value,"thumb-src":r.unref(f).src,"trash-visible":e.config.trashVisible!==!1,onNavigate:nI,onActivate:O[15]||(O[15]=fe=>oa.value="split"),onClose:tI,onOpenTab:O[16]||(O[16]=fe=>r.unref(on).openTab(fe,{viewMode:L.value,background:!0})),onTransfer:cI,onContext:fO,onOpenTrash:rI},null,8,["api","initial-path","locale","root-label","floor","multi-root","active","view-mode","thumb-src","trash-visible","onContext","onOpenTrash"])):r.createCommentVNode("",!0),z.value?(r.openBlock(),r.createBlock(O5,{key:1,api:r.unref(o),nodes:r.unref(G).nodes.value,"dir-label":ke.value,"dir-count":T.value.length,"dir-perm":E.value,locale:s.value,narrow:xt.value,"thumb-src":r.unref(f).src,onClose:_e,onManagePermissions:R,onToast:pt,onChanged:O[17]||(O[17]=()=>It())},null,8,["api","nodes","dir-label","dir-count","dir-perm","locale","narrow","thumb-src"])):r.createCommentVNode("",!0)],2),Ba.value?(r.openBlock(),r.createElementBlock("div",Lx,[...O[62]||(O[62]=[r.createElementVNode("div",{class:"fe__dragover-card"},[r.createElementVNode("span",{class:"fe-icon"},"⬆"),r.createElementVNode("p",null,"Dosyaları buraya bırak")],-1)])])):r.createCommentVNode("",!0),r.createVNode(p3,{jobs:ce.value,locale:s.value,center:r.unref($u),onCancel:FO,onDismiss:zO,onRetry:qO},null,8,["jobs","locale","center"]),r.createVNode(m3,{ops:r.unref(g).ops.value,locale:s.value,center:r.unref($u),onDismiss:O[18]||(O[18]=fe=>r.unref(g).dismiss(fe))},null,8,["ops","locale","center"]),r.createVNode(Ff,{center:r.unref($u),locale:s.value,narrow:xt.value},null,8,["center","locale","narrow"]),xt.value&&ue.value?(r.openBlock(),r.createElementBlock("button",{key:2,type:"button",class:"fe-fab",title:r.unref(l)("toolbar.upload"),"aria-label":r.unref(l)("toolbar.upload"),onClick:Hs},[...O[63]||(O[63]=[r.createElementVNode("svg",{class:"fe-ficon",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2.2","stroke-linecap":"round","aria-hidden":"true",focusable:"false"},[r.createElementVNode("path",{d:"M12 5v14M5 12h14"})],-1)])],8,Fx)):r.createCommentVNode("",!0),r.createVNode(ac,{ref_key:"ctxRef",ref:Fe,locale:s.value,theme:Xn.value,sheet:Ct.value,actions:hO.value,onSelect:mO},null,8,["locale","theme","sheet","actions"]),r.createVNode(Mk,{open:Me.value,locale:s.value,"encrypted-option":!dr.value,onClose:O[19]||(O[19]=fe=>Me.value=!1),onSubmit:_O,onEncrypted:O[20]||(O[20]=fe=>{Me.value=!1,js.value=!0})},null,8,["open","locale","encrypted-option"]),r.createVNode(lh,{open:js.value,locale:s.value,busy:Wu.value,onClose:O[21]||(O[21]=fe=>js.value=!1),onSubmit:mI},null,8,["open","locale","busy"]),r.createVNode(Ok,{open:Qe.value,locale:s.value,"current-name":((le=Ne.value)==null?void 0:le.basename)||"",onClose:O[22]||(O[22]=fe=>Qe.value=!1),onSubmit:wO},null,8,["open","locale","current-name"]),r.createVNode(Ik,{open:dt.value,locale:s.value,count:r.unref(G).size.value,onClose:O[23]||(O[23]=fe=>dt.value=!1),onConfirm:kO},null,8,["open","locale","count"]),r.createVNode(Yk,{open:ot.value,locale:s.value,share:wt.value,onClose:NO,onSubmit:CO,onToast:pt},null,8,["open","locale","share"]),r.createVNode(uc,{open:xe.value,locale:s.value,file:Y.value,theme:Xn.value,"preview-url":fe=>Xs(fe),"download-url":fe=>Pr.value?Xs(fe):r.unref(o).downloadUrl(fe),"only-office-base":dr.value?null:Oe.value,"only-office-config-endpoint":Ie.value,"new-tab-enabled":!dr.value,"save-text-endpoint":dr.value?null:r.unref(o).endpoints.saveText||null,"open-mode":ie.value,"auth-headers":()=>ei({"Content-Type":"application/json"}),"auth-credentials":r.unref(o).credentialsMode(),"drawio-url":pe.value,"pdf-worker-url":a.config.pdfWorkerUrl||null,"pdf-save-url":a.config.pdfSaveUrl||null,"viewer-base-url":Z2.value,onClose:O[24]||(O[24]=fe=>xe.value=!1)},null,8,["open","locale","file","theme","preview-url","download-url","only-office-base","only-office-config-endpoint","new-tab-enabled","save-text-endpoint","open-mode","auth-headers","auth-credentials","drawio-url","pdf-worker-url","pdf-save-url","viewer-base-url"]),re.value&&ye.value&&$e.value?(r.openBlock(),r.createBlock(s7,{key:3,"convert-url":$e.value,"file-name":((he=ye.value)==null?void 0:he.basename)||((Ce=ye.value)==null?void 0:Ce.path)||"","fetch-bytes":()=>{var fe;return r.unref(o).fetchArrayBuffer(((fe=ye.value)==null?void 0:fe.path)??"")},upload:fe=>r.unref(o).uploadMultipart(Qt(_.value),[fe]).then(()=>{}),onClose:O[25]||(O[25]=fe=>re.value=!1),onDone:SO},null,8,["convert-url","file-name","fetch-bytes","upload"])):r.createCommentVNode("",!0),te.value&&ge.value?(r.openBlock(),r.createBlock(JE,{key:4,api:r.unref(o),path:ge.value.path,"is-dir":ge.value.type==="dir",size:typeof ge.value.size=="number"?ge.value.size:void 0,locale:s.value==="en"?"en":"tr",onClose:O[26]||(O[26]=fe=>te.value=!1)},null,8,["api","path","is-dir","size","locale"])):r.createCommentVNode("",!0),r.createVNode(r.Transition,{name:"fe-modal"},{default:r.withCtx(()=>[Ee.value?(r.openBlock(),r.createElementBlock("div",{key:0,class:r.normalizeClass(["fe fe-modal__backdrop fe-recents__backdrop",{"fe--theme-light":Xn.value==="light","fe--theme-dark":Xn.value==="dark"}]),onClick:O[30]||(O[30]=fe=>Ee.value=!1)},[r.createElementVNode("div",{class:"fe-recents__panel",onClick:O[29]||(O[29]=r.withModifiers(()=>{},["stop"]))},[r.createElementVNode("div",zx,[r.createElementVNode("strong",null,r.toDisplayString(s.value==="en"?"Recently opened":"Son açılanlar"),1),r.createElementVNode("button",{class:"fe-recents__close","aria-label":"Close",onClick:O[27]||(O[27]=fe=>Ee.value=!1)},"×")]),r.createVNode(mf,{"api-base":a.config.apiBase??"","auth-headers":()=>ei(),"auth-credentials":r.unref(o).credentialsMode(),limit:20,"refresh-key":we.value,onOpen:Pe,onError:O[28]||(O[28]=fe=>i("error",{message:fe,context:{op:"recents"}}))},null,8,["api-base","auth-headers","auth-credentials","refresh-key"])])],2)):r.createCommentVNode("",!0)]),_:1}),r.createVNode(r.Transition,{name:"fe-modal"},{default:r.withCtx(()=>[ne.value&&me.value&&typeof me.value.id=="number"?(r.openBlock(),r.createElementBlock("div",{key:0,class:"fe-modal__backdrop",onClick:O[34]||(O[34]=fe=>ne.value=!1)},[r.createElementVNode("div",{class:"fe-modal__card fe-modal__card--md",onClick:O[33]||(O[33]=r.withModifiers(()=>{},["stop"]))},[r.createElementVNode("header",Px,[r.createElementVNode("h2",$x,r.toDisplayString(s.value==="en"?"Tags":"Etiketler")+" — "+r.toDisplayString(me.value.basename),1),r.createElementVNode("button",{class:"fe-modal__close","aria-label":"Close",onClick:O[31]||(O[31]=fe=>ne.value=!1)},"×")]),r.createElementVNode("div",Vx,[r.createVNode(pf,{"node-id":me.value.id,"api-base":a.config.apiBase??"","auth-headers":()=>ei(),"auth-credentials":r.unref(o).credentialsMode(),onError:O[32]||(O[32]=fe=>i("error",{message:fe,context:{op:"tags"}}))},null,8,["node-id","api-base","auth-headers","auth-credentials"])])])])):r.createCommentVNode("",!0)]),_:1}),r.createVNode(m6,{open:Du.value,locale:s.value,files:T.value,"view-mode":L.value,"can-write":Ge.value&&!I.value&&!J.value,"can-go-up":F.value,"global-search":eO,onClose:O[35]||(O[35]=fe=>Du.value=!1),onOpenHit:tO,onOpenNode:zr,onNavigate:O[36]||(O[36]=fe=>It(fe)),onNewFolder:O[37]||(O[37]=fe=>Me.value=!0),onUpload:Hs,onToggleView:O[38]||(O[38]=fe=>sy(qu.value==="list"?"grid":qu.value==="grid"?"gallery":"list")),onOpenTrash:qo,onRefresh:O[39]||(O[39]=()=>It()),onGoUp:H,onOpenTheme:O[40]||(O[40]=fe=>qs.value=!0),onOpenShortcutSettings:O[41]||(O[41]=fe=>Wo.value=!0),onStartTour:O[42]||(O[42]=fe=>Uu()),"split-enabled":!xt.value,onTabNew:O[43]||(O[43]=fe=>Gu()),onSplitToggle:O[44]||(O[44]=fe=>oy())},null,8,["open","locale","files","view-mode","can-write","can-go-up","split-enabled"]),r.createVNode(A6,{open:Us.value,locale:s.value,onClose:O[45]||(O[45]=fe=>Us.value=!1),onCustomize:O[46]||(O[46]=fe=>{Us.value=!1,Wo.value=!0})},null,8,["open","locale"]),r.createVNode(Of,{open:qs.value,locale:s.value,theme:Xn.value,dark:Pu.value,current:r.unref(Ks),mode:r.unref(zu),"host-mode":e.config.theme||"auto",onClose:O[47]||(O[47]=fe=>qs.value=!1),onSelect:r.unref($O),onMode:O[48]||(O[48]=fe=>r.unref(VO)(fe))},null,8,["open","locale","theme","dark","current","mode","host-mode","onSelect"]),r.createElementVNode("input",{ref_key:"fileInputEl",ref:be,type:"file",multiple:"",class:"fe__file-input",onChange:TO},null,544),r.createVNode(r.Transition,{name:"fe-toast"},{default:r.withCtx(()=>[Bn.value?(r.openBlock(),r.createElementBlock("div",{key:0,class:r.normalizeClass(["fe-toast",{"fe-toast--action":!!Bn.value.actionLabel}]),role:"status",onClick:jn},[r.createElementVNode("span",Ux,r.toDisplayString(Bn.value.message),1),Bn.value.actionLabel&&Bn.value.action?(r.openBlock(),r.createElementBlock("button",{key:0,type:"button",class:"fe-toast__action",onClick:r.withModifiers(sr,["stop"])},r.toDisplayString(Bn.value.actionLabel),1)):r.createCommentVNode("",!0)],2)):r.createCommentVNode("",!0)]),_:1}),r.createVNode(If,{open:Wo.value,locale:s.value,theme:Xn.value,onClose:O[49]||(O[49]=fe=>Wo.value=!1)},null,8,["open","locale","theme"]),r.createVNode(Lf,{open:Oa.value,locale:s.value,file:aa.value,theme:Xn.value,"preview-url":fe=>Xs(fe),"download-url":fe=>Pr.value?Xs(fe):r.unref(o).downloadUrl(fe),"only-office-base":dr.value?null:Oe.value,"only-office-config-endpoint":Ie.value,"auth-headers":()=>ei({"Content-Type":"application/json"}),"auth-credentials":r.unref(o).credentialsMode(),"drawio-url":pe.value,"pdf-worker-url":a.config.pdfWorkerUrl||null,"viewer-base-url":Z2.value,onClose:O[50]||(O[50]=fe=>Oa.value=!1),onNav:HO,onOpenFull:GO},null,8,["open","locale","file","theme","preview-url","download-url","only-office-base","only-office-config-endpoint","auth-headers","auth-credentials","drawio-url","pdf-worker-url","viewer-base-url"]),r.createVNode(Yw,{open:Ws.value,locale:s.value,root:ht.value,theme:Xn.value,onClose:WO},null,8,["open","locale","root","theme"])],34)}}});var qx=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function xc(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}function fh(e){return e instanceof Map?e.clear=e.delete=e.set=function(){throw new Error("map is read-only")}:e instanceof Set&&(e.add=e.clear=e.delete=function(){throw new Error("set is read-only")}),Object.freeze(e),Object.getOwnPropertyNames(e).forEach(t=>{const n=e[t],a=typeof n;(a==="object"||a==="function")&&!Object.isFrozen(n)&&fh(n)}),e}class hh{constructor(t){t.data===void 0&&(t.data={}),this.data=t.data,this.isMatchIgnored=!1}ignoreMatch(){this.isMatchIgnored=!0}}function ph(e){return e.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#x27;")}function da(e,...t){const n=Object.create(null);for(const a in e)n[a]=e[a];return t.forEach(function(a){for(const i in a)n[i]=a[i]}),n}const Kx="</span>",mh=e=>!!e.scope,Wx=(e,{prefix:t})=>{if(e.startsWith("language:"))return e.replace("language:","language-");if(e.includes(".")){const n=e.split(".");return[`${t}${n.shift()}`,...n.map((a,i)=>`${a}${"_".repeat(i+1)}`)].join(" ")}return`${t}${e}`};class Yx{constructor(t,n){this.buffer="",this.classPrefix=n.classPrefix,t.walk(this)}addText(t){this.buffer+=ph(t)}openNode(t){if(!mh(t))return;const n=Wx(t.scope,{prefix:this.classPrefix});this.span(n)}closeNode(t){mh(t)&&(this.buffer+=Kx)}value(){return this.buffer}span(t){this.buffer+=`<span class="${t}">`}}const gh=(e={})=>{const t={children:[]};return Object.assign(t,e),t};class Sc{constructor(){this.rootNode=gh(),this.stack=[this.rootNode]}get top(){return this.stack[this.stack.length-1]}get root(){return this.rootNode}add(t){this.top.children.push(t)}openNode(t){const n=gh({scope:t});this.add(n),this.stack.push(n)}closeNode(){if(this.stack.length>1)return this.stack.pop()}closeAllNodes(){for(;this.closeNode(););}toJSON(){return JSON.stringify(this.rootNode,null,4)}walk(t){return this.constructor._walk(t,this.rootNode)}static _walk(t,n){return typeof n=="string"?t.addText(n):n.children&&(t.openNode(n),n.children.forEach(a=>this._walk(t,a)),t.closeNode(n)),t}static _collapse(t){typeof t!="string"&&t.children&&(t.children.every(n=>typeof n=="string")?t.children=[t.children.join("")]:t.children.forEach(n=>{Sc._collapse(n)}))}}class jx extends Sc{constructor(t){super(),this.options=t}addText(t){t!==""&&this.add(t)}startScope(t){this.openNode(t)}endScope(){this.closeNode()}__addSublanguage(t,n){const a=t.root;n&&(a.scope=`language:${n}`),this.add(a)}toHTML(){return new Yx(this,this.options).value()}finalize(){return this.closeAllNodes(),!0}}function ro(e){return e?typeof e=="string"?e:e.source:null}function bh(e){return Ra("(?=",e,")")}function Xx(e){return Ra("(?:",e,")*")}function Zx(e){return Ra("(?:",e,")?")}function Ra(...e){return e.map(n=>ro(n)).join("")}function Jx(e){const t=e[e.length-1];return typeof t=="object"&&t.constructor===Object?(e.splice(e.length-1,1),t):{}}function Cc(...e){return"("+(Jx(e).capture?"":"?:")+e.map(a=>ro(a)).join("|")+")"}function vh(e){return new RegExp(e.toString()+"|").exec("").length-1}function Qx(e,t){const n=e&&e.exec(t);return n&&n.index===0}const e9=/\[(?:[^\\\]]|\\.)*\]|\(\??|\\([1-9][0-9]*)|\\./;function Nc(e,{joinWith:t}){let n=0;return e.map(a=>{n+=1;const i=n;let o=ro(a),s="";for(;o.length>0;){const l=e9.exec(o);if(!l){s+=o;break}s+=o.substring(0,l.index),o=o.substring(l.index+l[0].length),l[0][0]==="\\"&&l[1]?s+="\\"+String(Number(l[1])+i):(s+=l[0],l[0]==="("&&n++)}return s}).map(a=>`(${a})`).join(t)}const t9=/\b\B/,yh="[a-zA-Z]\\w*",Tc="[a-zA-Z_]\\w*",_h="\\b\\d+(\\.\\d+)?",wh="(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",kh="\\b(0b[01]+)",n9="!|!=|!==|%|%=|&|&&|&=|\\*|\\*=|\\+|\\+=|,|-|-=|/=|/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\?|\\[|\\{|\\(|\\^|\\^=|\\||\\|=|\\|\\||~",r9=(e={})=>{const t=/^#![ ]*\//;return e.binary&&(e.begin=Ra(t,/.*\b/,e.binary,/\b.*/)),da({scope:"meta",begin:t,end:/$/,relevance:0,"on:begin":(n,a)=>{n.index!==0&&a.ignoreMatch()}},e)},ao={begin:"\\\\[\\s\\S]",relevance:0},a9={scope:"string",begin:"'",end:"'",illegal:"\\n",contains:[ao]},i9={scope:"string",begin:'"',end:'"',illegal:"\\n",contains:[ao]},o9={begin:/\b(a|an|the|are|I'm|isn't|don't|doesn't|won't|but|just|should|pretty|simply|enough|gonna|going|wtf|so|such|will|you|your|they|like|more)\b/},dl=function(e,t,n={}){const a=da({scope:"comment",begin:e,end:t,contains:[]},n);a.contains.push({scope:"doctag",begin:"[ ]*(?=(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):)",end:/(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):/,excludeBegin:!0,relevance:0});const i=Cc("I","a","is","so","us","to","at","if","in","it","on",/[A-Za-z]+['](d|ve|re|ll|t|s|n)/,/[A-Za-z]+[-][a-z]+/,/[A-Za-z][a-z]{2,}/);return a.contains.push({begin:Ra(/[ ]+/,"(",i,/[.]?[:]?([.][ ]|[ ])/,"){3}")}),a},l9=dl("//","$"),s9=dl("/\\*","\\*/"),c9=dl("#","$"),d9={scope:"number",begin:_h,relevance:0},u9={scope:"number",begin:wh,relevance:0},f9={scope:"number",begin:kh,relevance:0},h9={scope:"regexp",begin:/\/(?=[^/\n]*\/)/,end:/\/[gimuy]*/,contains:[ao,{begin:/\[/,end:/\]/,relevance:0,contains:[ao]}]},p9={scope:"title",begin:yh,relevance:0},m9={scope:"title",begin:Tc,relevance:0},g9={begin:"\\.\\s*"+Tc,relevance:0};var ul=Object.freeze({__proto__:null,APOS_STRING_MODE:a9,BACKSLASH_ESCAPE:ao,BINARY_NUMBER_MODE:f9,BINARY_NUMBER_RE:kh,COMMENT:dl,C_BLOCK_COMMENT_MODE:s9,C_LINE_COMMENT_MODE:l9,C_NUMBER_MODE:u9,C_NUMBER_RE:wh,END_SAME_AS_BEGIN:function(e){return Object.assign(e,{"on:begin":(t,n)=>{n.data._beginMatch=t[1]},"on:end":(t,n)=>{n.data._beginMatch!==t[1]&&n.ignoreMatch()}})},HASH_COMMENT_MODE:c9,IDENT_RE:yh,MATCH_NOTHING_RE:t9,METHOD_GUARD:g9,NUMBER_MODE:d9,NUMBER_RE:_h,PHRASAL_WORDS_MODE:o9,QUOTE_STRING_MODE:i9,REGEXP_MODE:h9,RE_STARTERS_RE:n9,SHEBANG:r9,TITLE_MODE:p9,UNDERSCORE_IDENT_RE:Tc,UNDERSCORE_TITLE_MODE:m9});function b9(e,t){e.input[e.index-1]==="."&&t.ignoreMatch()}function v9(e,t){e.className!==void 0&&(e.scope=e.className,delete e.className)}function y9(e,t){t&&e.beginKeywords&&(e.begin="\\b("+e.beginKeywords.split(" ").join("|")+")(?!\\.)(?=\\b|\\s)",e.__beforeBegin=b9,e.keywords=e.keywords||e.beginKeywords,delete e.beginKeywords,e.relevance===void 0&&(e.relevance=0))}function _9(e,t){Array.isArray(e.illegal)&&(e.illegal=Cc(...e.illegal))}function w9(e,t){if(e.match){if(e.begin||e.end)throw new Error("begin & end are not supported with match");e.begin=e.match,delete e.match}}function k9(e,t){e.relevance===void 0&&(e.relevance=1)}const E9=(e,t)=>{if(!e.beforeMatch)return;if(e.starts)throw new Error("beforeMatch cannot be used with starts");const n=Object.assign({},e);Object.keys(e).forEach(a=>{delete e[a]}),e.keywords=n.keywords,e.begin=Ra(n.beforeMatch,bh(n.begin)),e.starts={relevance:0,contains:[Object.assign(n,{endsParent:!0})]},e.relevance=0,delete n.beforeMatch},x9=["of","and","for","in","not","or","if","then","parent","list","value"],S9="keyword";function Eh(e,t,n=S9){const a=Object.create(null);return typeof e=="string"?i(n,e.split(" ")):Array.isArray(e)?i(n,e):Object.keys(e).forEach(function(o){Object.assign(a,Eh(e[o],t,o))}),a;function i(o,s){t&&(s=s.map(l=>l.toLowerCase())),s.forEach(function(l){const c=l.split("|");a[c[0]]=[o,C9(c[0],c[1])]})}}function C9(e,t){return t?Number(t):N9(e)?0:1}function N9(e){return x9.includes(e.toLowerCase())}const xh={},La=e=>{console.error(e)},Sh=(e,...t)=>{console.log(`WARN: ${e}`,...t)},ai=(e,t)=>{xh[`${e}/${t}`]||(console.log(`Deprecated as of ${e}. ${t}`),xh[`${e}/${t}`]=!0)},fl=new Error;function Ch(e,t,{key:n}){let a=0;const i=e[n],o={},s={};for(let l=1;l<=t.length;l++)s[l+a]=i[l],o[l+a]=!0,a+=vh(t[l-1]);e[n]=s,e[n]._emit=o,e[n]._multi=!0}function T9(e){if(Array.isArray(e.begin)){if(e.skip||e.excludeBegin||e.returnBegin)throw La("skip, excludeBegin, returnBegin not compatible with beginScope: {}"),fl;if(typeof e.beginScope!="object"||e.beginScope===null)throw La("beginScope must be object"),fl;Ch(e,e.begin,{key:"beginScope"}),e.begin=Nc(e.begin,{joinWith:""})}}function A9(e){if(Array.isArray(e.end)){if(e.skip||e.excludeEnd||e.returnEnd)throw La("skip, excludeEnd, returnEnd not compatible with endScope: {}"),fl;if(typeof e.endScope!="object"||e.endScope===null)throw La("endScope must be object"),fl;Ch(e,e.end,{key:"endScope"}),e.end=Nc(e.end,{joinWith:""})}}function D9(e){e.scope&&typeof e.scope=="object"&&e.scope!==null&&(e.beginScope=e.scope,delete e.scope)}function M9(e){D9(e),typeof e.beginScope=="string"&&(e.beginScope={_wrap:e.beginScope}),typeof e.endScope=="string"&&(e.endScope={_wrap:e.endScope}),T9(e),A9(e)}function B9(e){function t(s,l){return new RegExp(ro(s),"m"+(e.case_insensitive?"i":"")+(e.unicodeRegex?"u":"")+(l?"g":""))}class n{constructor(){this.matchIndexes={},this.regexes=[],this.matchAt=1,this.position=0}addRule(l,c){c.position=this.position++,this.matchIndexes[this.matchAt]=c,this.regexes.push([c,l]),this.matchAt+=vh(l)+1}compile(){this.regexes.length===0&&(this.exec=()=>null);const l=this.regexes.map(c=>c[1]);this.matcherRe=t(Nc(l,{joinWith:"|"}),!0),this.lastIndex=0}exec(l){this.matcherRe.lastIndex=this.lastIndex;const c=this.matcherRe.exec(l);if(!c)return null;const d=c.findIndex((h,f)=>f>0&&h!==void 0),u=this.matchIndexes[d];return c.splice(0,d),Object.assign(c,u)}}class a{constructor(){this.rules=[],this.multiRegexes=[],this.count=0,this.lastIndex=0,this.regexIndex=0}getMatcher(l){if(this.multiRegexes[l])return this.multiRegexes[l];const c=new n;return this.rules.slice(l).forEach(([d,u])=>c.addRule(d,u)),c.compile(),this.multiRegexes[l]=c,c}resumingScanAtSamePosition(){return this.regexIndex!==0}considerAll(){this.regexIndex=0}addRule(l,c){this.rules.push([l,c]),c.type==="begin"&&this.count++}exec(l){const c=this.getMatcher(this.regexIndex);c.lastIndex=this.lastIndex;let d=c.exec(l);if(this.resumingScanAtSamePosition()&&!(d&&d.index===this.lastIndex)){const u=this.getMatcher(0);u.lastIndex=this.lastIndex+1,d=u.exec(l)}return d&&(this.regexIndex+=d.position+1,this.regexIndex===this.count&&this.considerAll()),d}}function i(s){const l=new a;return s.contains.forEach(c=>l.addRule(c.begin,{rule:c,type:"begin"})),s.terminatorEnd&&l.addRule(s.terminatorEnd,{type:"end"}),s.illegal&&l.addRule(s.illegal,{type:"illegal"}),l}function o(s,l){const c=s;if(s.isCompiled)return c;[v9,w9,M9,E9].forEach(u=>u(s,l)),e.compilerExtensions.forEach(u=>u(s,l)),s.__beforeBegin=null,[y9,_9,k9].forEach(u=>u(s,l)),s.isCompiled=!0;let d=null;return typeof s.keywords=="object"&&s.keywords.$pattern&&(s.keywords=Object.assign({},s.keywords),d=s.keywords.$pattern,delete s.keywords.$pattern),d=d||/\w+/,s.keywords&&(s.keywords=Eh(s.keywords,e.case_insensitive)),c.keywordPatternRe=t(d,!0),l&&(s.begin||(s.begin=/\B|\b/),c.beginRe=t(c.begin),!s.end&&!s.endsWithParent&&(s.end=/\B|\b/),s.end&&(c.endRe=t(c.end)),c.terminatorEnd=ro(c.end)||"",s.endsWithParent&&l.terminatorEnd&&(c.terminatorEnd+=(s.end?"|":"")+l.terminatorEnd)),s.illegal&&(c.illegalRe=t(s.illegal)),s.contains||(s.contains=[]),s.contains=[].concat(...s.contains.map(function(u){return O9(u==="self"?s:u)})),s.contains.forEach(function(u){o(u,c)}),s.starts&&o(s.starts,l),c.matcher=i(c),c}if(e.compilerExtensions||(e.compilerExtensions=[]),e.contains&&e.contains.includes("self"))throw new Error("ERR: contains `self` is not supported at the top-level of a language. See documentation.");return e.classNameAliases=da(e.classNameAliases||{}),o(e)}function Nh(e){return e?e.endsWithParent||Nh(e.starts):!1}function O9(e){return e.variants&&!e.cachedVariants&&(e.cachedVariants=e.variants.map(function(t){return da(e,{variants:null},t)})),e.cachedVariants?e.cachedVariants:Nh(e)?da(e,{starts:e.starts?da(e.starts):null}):Object.isFrozen(e)?da(e):e}var I9="11.11.1";class R9 extends Error{constructor(t,n){super(t),this.name="HTMLInjectionError",this.html=n}}const Ac=ph,Th=da,Ah=Symbol("nomatch"),L9=7,Dh=function(e){const t=Object.create(null),n=Object.create(null),a=[];let i=!0;const o="Could not find the language '{}', did you forget to load/include a language module?",s={disableAutodetect:!0,name:"Plain text",contains:[]};let l={ignoreUnescapedHTML:!1,throwUnescapedHTML:!1,noHighlightRe:/^(no-?highlight)$/i,languageDetectRe:/\blang(?:uage)?-([\w-]+)\b/i,classPrefix:"hljs-",cssSelector:"pre code",languages:null,__emitter:jx};function c($){return l.noHighlightRe.test($)}function d($){let j=$.className+" ";j+=$.parentNode?$.parentNode.className:"";const J=l.languageDetectRe.exec(j);if(J){const V=E(J[1]);return V||(Sh(o.replace("{}",J[1])),Sh("Falling back to no-highlight mode for this block.",$)),V?J[1]:"no-highlight"}return j.split(/\s+/).find(V=>c(V)||E(V))}function u($,j,J){let V="",F="";typeof j=="object"?(V=$,J=j.ignoreIllegals,F=j.language):(ai("10.7.0","highlight(lang, code, ...args) has been deprecated."),ai("10.7.0",`Please use highlight(code, options) instead.
6
6
  https://github.com/highlightjs/highlight.js/issues/2277`),F=$,V=j),J===void 0&&(J=!0);const I={code:V,language:F};q("before:highlight",I);const H=I.result?I.result:h(I.language,I.code,J);return H.code=I.code,q("after:highlight",H),H}function h($,j,J,V){const F=Object.create(null);function I(xe,Ne){return xe.keywords[Ne]}function H(){if(!pe.keywords){ce.addText(be);return}let xe=0;pe.keywordPatternRe.lastIndex=0;let Ne=pe.keywordPatternRe.exec(be),Le="";for(;Ne;){Le+=be.substring(xe,Ne.index);const at=Pe.case_insensitive?Ne[0].toLowerCase():Ne[0],wt=I(pe,at);if(wt){const[Y,ie]=wt;if(ce.addText(Le),Le="",F[at]=(F[at]||0)+1,F[at]<=L9&&(Me+=ie),Y.startsWith("_"))Le+=Ne[0];else{const re=Pe.classNameAliases[Y]||Y;de(Ne[0],re)}}else Le+=Ne[0];xe=pe.keywordPatternRe.lastIndex,Ne=pe.keywordPatternRe.exec(be)}Le+=be.substring(xe),ce.addText(Le)}function G(){if(be==="")return;let xe=null;if(typeof pe.subLanguage=="string"){if(!t[pe.subLanguage]){ce.addText(be);return}xe=h(pe.subLanguage,be,!0,$e[pe.subLanguage]),$e[pe.subLanguage]=xe._top}else xe=p(be,pe.subLanguage.length?pe.subLanguage:null);pe.relevance>0&&(Me+=xe.relevance),ce.__addSublanguage(xe._emitter,xe.language)}function oe(){pe.subLanguage!=null?G():H(),be=""}function de(xe,Ne){xe!==""&&(ce.startScope(Ne),ce.addText(xe),ce.endScope())}function ve(xe,Ne){let Le=1;const at=Ne.length-1;for(;Le<=at;){if(!xe._emit[Le]){Le++;continue}const wt=Pe.classNameAliases[xe[Le]]||xe[Le],Y=Ne[Le];wt?de(Y,wt):(be=Y,H(),be=""),Le++}}function Ee(xe,Ne){return xe.scope&&typeof xe.scope=="string"&&ce.openNode(Pe.classNameAliases[xe.scope]||xe.scope),xe.beginScope&&(xe.beginScope._wrap?(de(be,Pe.classNameAliases[xe.beginScope._wrap]||xe.beginScope._wrap),be=""):xe.beginScope._multi&&(ve(xe.beginScope,Ne),be="")),pe=Object.create(xe,{parent:{value:pe}}),pe}function ne(xe,Ne,Le){let at=Qx(xe.endRe,Le);if(at){if(xe["on:end"]){const wt=new hh(xe);xe["on:end"](Ne,wt),wt.isMatchIgnored&&(at=!1)}if(at){for(;xe.endsParent&&xe.parent;)xe=xe.parent;return xe}}if(xe.endsWithParent)return ne(xe.parent,Ne,Le)}function me(xe){return pe.matcher.regexIndex===0?(be+=xe[0],1):(ot=!0,0)}function we(xe){const Ne=xe[0],Le=xe.rule,at=new hh(Le),wt=[Le.__beforeBegin,Le["on:begin"]];for(const Y of wt)if(Y&&(Y(xe,at),at.isMatchIgnored))return me(Ne);return Le.skip?be+=Ne:(Le.excludeBegin&&(be+=Ne),oe(),!Le.returnBegin&&!Le.excludeBegin&&(be=Ne)),Ee(Le,xe),Le.returnBegin?0:Ne.length}function Se(xe){const Ne=xe[0],Le=j.substring(xe.index),at=ne(pe,xe,Le);if(!at)return Ah;const wt=pe;pe.endScope&&pe.endScope._wrap?(oe(),de(Ne,pe.endScope._wrap)):pe.endScope&&pe.endScope._multi?(oe(),ve(pe.endScope,xe)):wt.skip?be+=Ne:(wt.returnEnd||wt.excludeEnd||(be+=Ne),oe(),wt.excludeEnd&&(be=Ne));do pe.scope&&ce.closeNode(),!pe.skip&&!pe.subLanguage&&(Me+=pe.relevance),pe=pe.parent;while(pe!==at.parent);return at.starts&&Ee(at.starts,xe),wt.returnEnd?0:Ne.length}function De(){const xe=[];for(let Ne=pe;Ne!==Pe;Ne=Ne.parent)Ne.scope&&xe.unshift(Ne.scope);xe.forEach(Ne=>ce.openNode(Ne))}let Xe={};function tt(xe,Ne){const Le=Ne&&Ne[0];if(be+=xe,Le==null)return oe(),0;if(Xe.type==="begin"&&Ne.type==="end"&&Xe.index===Ne.index&&Le===""){if(be+=j.slice(Ne.index,Ne.index+1),!i){const at=new Error(`0 width match regex (${$})`);throw at.languageName=$,at.badRule=Xe.rule,at}return 1}if(Xe=Ne,Ne.type==="begin")return we(Ne);if(Ne.type==="illegal"&&!J){const at=new Error('Illegal lexeme "'+Le+'" for mode "'+(pe.scope||"<unnamed>")+'"');throw at.mode=pe,at}else if(Ne.type==="end"){const at=Se(Ne);if(at!==Ah)return at}if(Ne.type==="illegal"&&Le==="")return be+=`
7
7
  `,1;if(dt>1e5&&dt>Ne.index*3)throw new Error("potential infinite loop, way more iterations than matches");return be+=Le,Le.length}const Pe=E($);if(!Pe)throw La(o.replace("{}",$)),new Error('Unknown language: "'+$+'"');const Oe=B9(Pe);let Ie="",pe=V||Oe;const $e={},ce=new l.__emitter(l);De();let be="",Me=0,Qe=0,dt=0,ot=!1;try{if(Pe.__emitTokens)Pe.__emitTokens(j,ce);else{for(pe.matcher.considerAll();;){dt++,ot?ot=!1:pe.matcher.considerAll(),pe.matcher.lastIndex=Qe;const xe=pe.matcher.exec(j);if(!xe)break;const Ne=j.substring(Qe,xe.index),Le=tt(Ne,xe);Qe=xe.index+Le}tt(j.substring(Qe))}return ce.finalize(),Ie=ce.toHTML(),{language:$,value:Ie,relevance:Me,illegal:!1,_emitter:ce,_top:pe}}catch(xe){if(xe.message&&xe.message.includes("Illegal"))return{language:$,value:Ac(j),illegal:!0,relevance:0,_illegalBy:{message:xe.message,index:Qe,context:j.slice(Qe-100,Qe+100),mode:xe.mode,resultSoFar:Ie},_emitter:ce};if(i)return{language:$,value:Ac(j),illegal:!1,relevance:0,errorRaised:xe,_emitter:ce,_top:pe};throw xe}}function f($){const j={value:Ac($),illegal:!1,relevance:0,_top:s,_emitter:new l.__emitter(l)};return j._emitter.addText($),j}function p($,j){j=j||l.languages||Object.keys(t);const J=f($),V=j.filter(E).filter(N).map(oe=>h(oe,$,!1));V.unshift(J);const F=V.sort((oe,de)=>{if(oe.relevance!==de.relevance)return de.relevance-oe.relevance;if(oe.language&&de.language){if(E(oe.language).supersetOf===de.language)return 1;if(E(de.language).supersetOf===oe.language)return-1}return 0}),[I,H]=F,G=I;return G.secondBest=H,G}function w($,j,J){const V=j&&n[j]||J;$.classList.add("hljs"),$.classList.add(`language-${V}`)}function g($){let j=null;const J=d($);if(c(J))return;if(q("before:highlightElement",{el:$,language:J}),$.dataset.highlighted){console.log("Element previously highlighted. To highlight again, first unset `dataset.highlighted`.",$);return}if($.children.length>0&&(l.ignoreUnescapedHTML||(console.warn("One of your code blocks includes unescaped HTML. This is a potentially serious security risk."),console.warn("https://github.com/highlightjs/highlight.js/wiki/security"),console.warn("The element with unescaped HTML:"),console.warn($)),l.throwUnescapedHTML))throw new R9("One of your code blocks includes unescaped HTML.",$.innerHTML);j=$;const V=j.textContent,F=J?u(V,{language:J,ignoreIllegals:!0}):p(V);$.innerHTML=F.value,$.dataset.highlighted="yes",w($,J,F.language),$.result={language:F.language,re:F.relevance,relevance:F.relevance},F.secondBest&&($.secondBest={language:F.secondBest.language,relevance:F.secondBest.relevance}),q("after:highlightElement",{el:$,result:F,text:V})}function v($){l=Th(l,$)}const m=()=>{_(),ai("10.6.0","initHighlighting() deprecated. Use highlightAll() now.")};function b(){_(),ai("10.6.0","initHighlightingOnLoad() deprecated. Use highlightAll() now.")}let y=!1;function _(){function $(){_()}if(document.readyState==="loading"){y||window.addEventListener("DOMContentLoaded",$,!1),y=!0;return}document.querySelectorAll(l.cssSelector).forEach(g)}function S($,j){let J=null;try{J=j(e)}catch(V){if(La("Language definition for '{}' could not be registered.".replace("{}",$)),i)La(V);else throw V;J=s}J.name||(J.name=$),t[$]=J,J.rawDefinition=j.bind(null,e),J.aliases&&k(J.aliases,{languageName:$})}function A($){delete t[$];for(const j of Object.keys(n))n[j]===$&&delete n[j]}function T(){return Object.keys(t)}function E($){return $=($||"").toLowerCase(),t[$]||t[n[$]]}function k($,{languageName:j}){typeof $=="string"&&($=[$]),$.forEach(J=>{n[J.toLowerCase()]=j})}function N($){const j=E($);return j&&!j.disableAutodetect}function D($){$["before:highlightBlock"]&&!$["before:highlightElement"]&&($["before:highlightElement"]=j=>{$["before:highlightBlock"](Object.assign({block:j.el},j))}),$["after:highlightBlock"]&&!$["after:highlightElement"]&&($["after:highlightElement"]=j=>{$["after:highlightBlock"](Object.assign({block:j.el},j))})}function U($){D($),a.push($)}function L($){const j=a.indexOf($);j!==-1&&a.splice(j,1)}function q($,j){const J=$;a.forEach(function(V){V[J]&&V[J](j)})}function X($){return ai("10.7.0","highlightBlock will be removed entirely in v12.0"),ai("10.7.0","Please use highlightElement now."),g($)}Object.assign(e,{highlight:u,highlightAuto:p,highlightAll:_,highlightElement:g,highlightBlock:X,configure:v,initHighlighting:m,initHighlightingOnLoad:b,registerLanguage:S,unregisterLanguage:A,listLanguages:T,getLanguage:E,registerAliases:k,autoDetection:N,inherit:Th,addPlugin:U,removePlugin:L}),e.debugMode=function(){i=!1},e.safeMode=function(){i=!0},e.versionString=I9,e.regex={concat:Ra,lookahead:bh,either:Cc,optional:Zx,anyNumberOfTimes:Xx};for(const $ in ul)typeof ul[$]=="object"&&fh(ul[$]);return Object.assign(e,ul),e},ii=Dh({});ii.newInstance=()=>Dh({});var F9=ii;ii.HighlightJS=ii,ii.default=ii;var Dc,Mh;function z9(){if(Mh)return Dc;Mh=1;function e(t){const n=t.regex,a=n.concat(/[\p{L}_]/u,n.optional(/[\p{L}0-9_.-]*:/u),/[\p{L}0-9_.-]*/u),i=/[\p{L}0-9._:-]+/u,o={className:"symbol",begin:/&[a-z]+;|&#[0-9]+;|&#x[a-f0-9]+;/},s={begin:/\s/,contains:[{className:"keyword",begin:/#?[a-z_][a-z1-9_-]+/,illegal:/\n/}]},l=t.inherit(s,{begin:/\(/,end:/\)/}),c=t.inherit(t.APOS_STRING_MODE,{className:"string"}),d=t.inherit(t.QUOTE_STRING_MODE,{className:"string"}),u={endsWithParent:!0,illegal:/</,relevance:0,contains:[{className:"attr",begin:i,relevance:0},{begin:/=\s*/,relevance:0,contains:[{className:"string",endsParent:!0,variants:[{begin:/"/,end:/"/,contains:[o]},{begin:/'/,end:/'/,contains:[o]},{begin:/[^\s"'=<>`]+/}]}]}]};return{name:"HTML, XML",aliases:["html","xhtml","rss","atom","xjb","xsd","xsl","plist","wsf","svg"],case_insensitive:!0,unicodeRegex:!0,contains:[{className:"meta",begin:/<![a-z]/,end:/>/,relevance:10,contains:[s,d,c,l,{begin:/\[/,end:/\]/,contains:[{className:"meta",begin:/<![a-z]/,end:/>/,contains:[s,l,d,c]}]}]},t.COMMENT(/<!--/,/-->/,{relevance:10}),{begin:/<!\[CDATA\[/,end:/\]\]>/,relevance:10},o,{className:"meta",end:/\?>/,variants:[{begin:/<\?xml/,relevance:10,contains:[d]},{begin:/<\?[a-z][a-z0-9]+/}]},{className:"tag",begin:/<style(?=\s|>)/,end:/>/,keywords:{name:"style"},contains:[u],starts:{end:/<\/style>/,returnEnd:!0,subLanguage:["css","xml"]}},{className:"tag",begin:/<script(?=\s|>)/,end:/>/,keywords:{name:"script"},contains:[u],starts:{end:/<\/script>/,returnEnd:!0,subLanguage:["javascript","handlebars","xml"]}},{className:"tag",begin:/<>|<\/>/},{className:"tag",begin:n.concat(/</,n.lookahead(n.concat(a,n.either(/\/>/,/>/,/\s/)))),end:/\/?>/,contains:[{className:"name",begin:a,relevance:0,starts:u}]},{className:"tag",begin:n.concat(/<\//,n.lookahead(n.concat(a,/>/))),contains:[{className:"name",begin:a,relevance:0},{begin:/>/,relevance:0,endsParent:!0}]}]}}return Dc=e,Dc}var Mc,Bh;function P9(){if(Bh)return Mc;Bh=1;function e(t){const n=t.regex,a={},i={begin:/\$\{/,end:/\}/,contains:["self",{begin:/:-/,contains:[a]}]};Object.assign(a,{className:"variable",variants:[{begin:n.concat(/\$[\w\d#@][\w\d_]*/,"(?![\\w\\d])(?![$])")},i]});const o={className:"subst",begin:/\$\(/,end:/\)/,contains:[t.BACKSLASH_ESCAPE]},s=t.inherit(t.COMMENT(),{match:[/(^|\s)/,/#.*$/],scope:{2:"comment"}}),l={begin:/<<-?\s*(?=\w+)/,starts:{contains:[t.END_SAME_AS_BEGIN({begin:/(\w+)/,end:/(\w+)/,className:"string"})]}},c={className:"string",begin:/"/,end:/"/,contains:[t.BACKSLASH_ESCAPE,a,o]};o.contains.push(c);const d={match:/\\"/},u={className:"string",begin:/'/,end:/'/},h={match:/\\'/},f={begin:/\$?\(\(/,end:/\)\)/,contains:[{begin:/\d+#[0-9a-f]+/,className:"number"},t.NUMBER_MODE,a]},p=["fish","bash","zsh","sh","csh","ksh","tcsh","dash","scsh"],w=t.SHEBANG({binary:`(${p.join("|")})`,relevance:10}),g={className:"function",begin:/\w[\w\d_]*\s*\(\s*\)\s*\{/,returnBegin:!0,contains:[t.inherit(t.TITLE_MODE,{begin:/\w[\w\d_]*/})],relevance:0},v=["if","then","else","elif","fi","time","for","while","until","in","do","done","case","esac","coproc","function","select"],m=["true","false"],b={match:/(\/[a-z._-]+)+/},y=["break","cd","continue","eval","exec","exit","export","getopts","hash","pwd","readonly","return","shift","test","times","trap","umask","unset"],_=["alias","bind","builtin","caller","command","declare","echo","enable","help","let","local","logout","mapfile","printf","read","readarray","source","sudo","type","typeset","ulimit","unalias"],S=["autoload","bg","bindkey","bye","cap","chdir","clone","comparguments","compcall","compctl","compdescribe","compfiles","compgroups","compquote","comptags","comptry","compvalues","dirs","disable","disown","echotc","echoti","emulate","fc","fg","float","functions","getcap","getln","history","integer","jobs","kill","limit","log","noglob","popd","print","pushd","pushln","rehash","sched","setcap","setopt","stat","suspend","ttyctl","unfunction","unhash","unlimit","unsetopt","vared","wait","whence","where","which","zcompile","zformat","zftp","zle","zmodload","zparseopts","zprof","zpty","zregexparse","zsocket","zstyle","ztcp"],A=["chcon","chgrp","chown","chmod","cp","dd","df","dir","dircolors","ln","ls","mkdir","mkfifo","mknod","mktemp","mv","realpath","rm","rmdir","shred","sync","touch","truncate","vdir","b2sum","base32","base64","cat","cksum","comm","csplit","cut","expand","fmt","fold","head","join","md5sum","nl","numfmt","od","paste","ptx","pr","sha1sum","sha224sum","sha256sum","sha384sum","sha512sum","shuf","sort","split","sum","tac","tail","tr","tsort","unexpand","uniq","wc","arch","basename","chroot","date","dirname","du","echo","env","expr","factor","groups","hostid","id","link","logname","nice","nohup","nproc","pathchk","pinky","printenv","printf","pwd","readlink","runcon","seq","sleep","stat","stdbuf","stty","tee","test","timeout","tty","uname","unlink","uptime","users","who","whoami","yes"];return{name:"Bash",aliases:["sh","zsh"],keywords:{$pattern:/\b[a-z][a-z0-9._-]+\b/,keyword:v,literal:m,built_in:[...y,..._,"set","shopt",...S,...A]},contains:[w,t.SHEBANG(),g,f,s,l,b,c,d,u,h,a]}}return Mc=e,Mc}var Bc,Oh;function $9(){if(Oh)return Bc;Oh=1;function e(t){const n=t.regex,a=t.COMMENT("//","$",{contains:[{begin:/\\\n/}]}),i="decltype\\(auto\\)",o="[a-zA-Z_]\\w*::",l="("+i+"|"+n.optional(o)+"[a-zA-Z_]\\w*"+n.optional("<[^<>]+>")+")",c={className:"type",variants:[{begin:"\\b[a-z\\d_]*_t\\b"},{match:/\batomic_[a-z]{3,6}\b/}]},u={className:"string",variants:[{begin:'(u8?|U|L)?"',end:'"',illegal:"\\n",contains:[t.BACKSLASH_ESCAPE]},{begin:"(u8?|U|L)?'("+"\\\\(x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4,8}|[0-7]{3}|\\S)"+"|.)",end:"'",illegal:"."},t.END_SAME_AS_BEGIN({begin:/(?:u8?|U|L)?R"([^()\\ ]{0,16})\(/,end:/\)([^()\\ ]{0,16})"/})]},h={className:"number",variants:[{match:/\b(0b[01']+)/},{match:/(-?)\b([\d']+(\.[\d']*)?|\.[\d']+)((ll|LL|l|L)(u|U)?|(u|U)(ll|LL|l|L)?|f|F|b|B)/},{match:/(-?)\b(0[xX][a-fA-F0-9]+(?:'[a-fA-F0-9]+)*(?:\.[a-fA-F0-9]*(?:'[a-fA-F0-9]*)*)?(?:[pP][-+]?[0-9]+)?(l|L)?(u|U)?)/},{match:/(-?)\b\d+(?:'\d+)*(?:\.\d*(?:'\d*)*)?(?:[eE][-+]?\d+)?/}],relevance:0},f={className:"meta",begin:/#\s*[a-z]+\b/,end:/$/,keywords:{keyword:"if else elif endif define undef warning error line pragma _Pragma ifdef ifndef elifdef elifndef include"},contains:[{begin:/\\\n/,relevance:0},t.inherit(u,{className:"string"}),{className:"string",begin:/<.*?>/},a,t.C_BLOCK_COMMENT_MODE]},p={className:"title",begin:n.optional(o)+t.IDENT_RE,relevance:0},w=n.optional(o)+t.IDENT_RE+"\\s*\\(",m={keyword:["asm","auto","break","case","continue","default","do","else","enum","extern","for","fortran","goto","if","inline","register","restrict","return","sizeof","typeof","typeof_unqual","struct","switch","typedef","union","volatile","while","_Alignas","_Alignof","_Atomic","_Generic","_Noreturn","_Static_assert","_Thread_local","alignas","alignof","noreturn","static_assert","thread_local","_Pragma"],type:["float","double","signed","unsigned","int","short","long","char","void","_Bool","_BitInt","_Complex","_Imaginary","_Decimal32","_Decimal64","_Decimal96","_Decimal128","_Decimal64x","_Decimal128x","_Float16","_Float32","_Float64","_Float128","_Float32x","_Float64x","_Float128x","const","static","constexpr","complex","bool","imaginary"],literal:"true false NULL",built_in:"std string wstring cin cout cerr clog stdin stdout stderr stringstream istringstream ostringstream auto_ptr deque list queue stack vector map set pair bitset multiset multimap unordered_set unordered_map unordered_multiset unordered_multimap priority_queue make_pair array shared_ptr abort terminate abs acos asin atan2 atan calloc ceil cosh cos exit exp fabs floor fmod fprintf fputs free frexp fscanf future isalnum isalpha iscntrl isdigit isgraph islower isprint ispunct isspace isupper isxdigit tolower toupper labs ldexp log10 log malloc realloc memchr memcmp memcpy memset modf pow printf putchar puts scanf sinh sin snprintf sprintf sqrt sscanf strcat strchr strcmp strcpy strcspn strlen strncat strncmp strncpy strpbrk strrchr strspn strstr tanh tan vfprintf vprintf vsprintf endl initializer_list unique_ptr"},b=[f,c,a,t.C_BLOCK_COMMENT_MODE,h,u],y={variants:[{begin:/=/,end:/;/},{begin:/\(/,end:/\)/},{beginKeywords:"new throw return else",end:/;/}],keywords:m,contains:b.concat([{begin:/\(/,end:/\)/,keywords:m,contains:b.concat(["self"]),relevance:0}]),relevance:0},_={begin:"("+l+"[\\*&\\s]+)+"+w,returnBegin:!0,end:/[{;=]/,excludeEnd:!0,keywords:m,illegal:/[^\w\s\*&:<>.]/,contains:[{begin:i,keywords:m,relevance:0},{begin:w,returnBegin:!0,contains:[t.inherit(p,{className:"title.function"})],relevance:0},{relevance:0,match:/,/},{className:"params",begin:/\(/,end:/\)/,keywords:m,relevance:0,contains:[a,t.C_BLOCK_COMMENT_MODE,u,h,c,{begin:/\(/,end:/\)/,keywords:m,relevance:0,contains:["self",a,t.C_BLOCK_COMMENT_MODE,u,h,c]}]},c,a,t.C_BLOCK_COMMENT_MODE,f]};return{name:"C",aliases:["h"],keywords:m,disableAutodetect:!0,illegal:"</",contains:[].concat(y,_,b,[f,{begin:t.IDENT_RE+"::",keywords:m},{className:"class",beginKeywords:"enum class struct union",end:/[{;:<>=]/,contains:[{beginKeywords:"final class struct"},t.TITLE_MODE]}]),exports:{preprocessor:f,strings:u,keywords:m}}}return Bc=e,Bc}var Oc,Ih;function V9(){if(Ih)return Oc;Ih=1;function e(t){const n=t.regex,a=t.COMMENT("//","$",{contains:[{begin:/\\\n/}]}),i="decltype\\(auto\\)",o="[a-zA-Z_]\\w*::",l="(?!struct)("+i+"|"+n.optional(o)+"[a-zA-Z_]\\w*"+n.optional("<[^<>]+>")+")",c={className:"type",begin:"\\b[a-z\\d_]*_t\\b"},u={className:"string",variants:[{begin:'(u8?|U|L)?"',end:'"',illegal:"\\n",contains:[t.BACKSLASH_ESCAPE]},{begin:"(u8?|U|L)?'("+"\\\\(x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4,8}|[0-7]{3}|\\S)"+"|.)",end:"'",illegal:"."},t.END_SAME_AS_BEGIN({begin:/(?:u8?|U|L)?R"([^()\\ ]{0,16})\(/,end:/\)([^()\\ ]{0,16})"/})]},h={className:"number",variants:[{begin:"[+-]?(?:(?:[0-9](?:'?[0-9])*\\.(?:[0-9](?:'?[0-9])*)?|\\.[0-9](?:'?[0-9])*)(?:[Ee][+-]?[0-9](?:'?[0-9])*)?|[0-9](?:'?[0-9])*[Ee][+-]?[0-9](?:'?[0-9])*|0[Xx](?:[0-9A-Fa-f](?:'?[0-9A-Fa-f])*(?:\\.(?:[0-9A-Fa-f](?:'?[0-9A-Fa-f])*)?)?|\\.[0-9A-Fa-f](?:'?[0-9A-Fa-f])*)[Pp][+-]?[0-9](?:'?[0-9])*)(?:[Ff](?:16|32|64|128)?|(BF|bf)16|[Ll]|)"},{begin:"[+-]?\\b(?:0[Bb][01](?:'?[01])*|0[Xx][0-9A-Fa-f](?:'?[0-9A-Fa-f])*|0(?:'?[0-7])*|[1-9](?:'?[0-9])*)(?:[Uu](?:LL?|ll?)|[Uu][Zz]?|(?:LL?|ll?)[Uu]?|[Zz][Uu]|)"}],relevance:0},f={className:"meta",begin:/#\s*[a-z]+\b/,end:/$/,keywords:{keyword:"if else elif endif define undef warning error line pragma _Pragma ifdef ifndef include"},contains:[{begin:/\\\n/,relevance:0},t.inherit(u,{className:"string"}),{className:"string",begin:/<.*?>/},a,t.C_BLOCK_COMMENT_MODE]},p={className:"title",begin:n.optional(o)+t.IDENT_RE,relevance:0},w=n.optional(o)+t.IDENT_RE+"\\s*\\(",g=["alignas","alignof","and","and_eq","asm","atomic_cancel","atomic_commit","atomic_noexcept","auto","bitand","bitor","break","case","catch","class","co_await","co_return","co_yield","compl","concept","const_cast|10","consteval","constexpr","constinit","continue","decltype","default","delete","do","dynamic_cast|10","else","enum","explicit","export","extern","false","final","for","friend","goto","if","import","inline","module","mutable","namespace","new","noexcept","not","not_eq","nullptr","operator","or","or_eq","override","private","protected","public","reflexpr","register","reinterpret_cast|10","requires","return","sizeof","static_assert","static_cast|10","struct","switch","synchronized","template","this","thread_local","throw","transaction_safe","transaction_safe_dynamic","true","try","typedef","typeid","typename","union","using","virtual","volatile","while","xor","xor_eq"],v=["bool","char","char16_t","char32_t","char8_t","double","float","int","long","short","void","wchar_t","unsigned","signed","const","static"],m=["any","auto_ptr","barrier","binary_semaphore","bitset","complex","condition_variable","condition_variable_any","counting_semaphore","deque","false_type","flat_map","flat_set","future","imaginary","initializer_list","istringstream","jthread","latch","lock_guard","multimap","multiset","mutex","optional","ostringstream","packaged_task","pair","promise","priority_queue","queue","recursive_mutex","recursive_timed_mutex","scoped_lock","set","shared_future","shared_lock","shared_mutex","shared_timed_mutex","shared_ptr","stack","string_view","stringstream","timed_mutex","thread","true_type","tuple","unique_lock","unique_ptr","unordered_map","unordered_multimap","unordered_multiset","unordered_set","variant","vector","weak_ptr","wstring","wstring_view"],b=["abort","abs","acos","apply","as_const","asin","atan","atan2","calloc","ceil","cerr","cin","clog","cos","cosh","cout","declval","endl","exchange","exit","exp","fabs","floor","fmod","forward","fprintf","fputs","free","frexp","fscanf","future","invoke","isalnum","isalpha","iscntrl","isdigit","isgraph","islower","isprint","ispunct","isspace","isupper","isxdigit","labs","launder","ldexp","log","log10","make_pair","make_shared","make_shared_for_overwrite","make_tuple","make_unique","malloc","memchr","memcmp","memcpy","memset","modf","move","pow","printf","putchar","puts","realloc","scanf","sin","sinh","snprintf","sprintf","sqrt","sscanf","std","stderr","stdin","stdout","strcat","strchr","strcmp","strcpy","strcspn","strlen","strncat","strncmp","strncpy","strpbrk","strrchr","strspn","strstr","swap","tan","tanh","terminate","to_underlying","tolower","toupper","vfprintf","visit","vprintf","vsprintf"],S={type:v,keyword:g,literal:["NULL","false","nullopt","nullptr","true"],built_in:["_Pragma"],_type_hints:m},A={className:"function.dispatch",relevance:0,keywords:{_hint:b},begin:n.concat(/\b/,/(?!decltype)/,/(?!if)/,/(?!for)/,/(?!switch)/,/(?!while)/,t.IDENT_RE,n.lookahead(/(<[^<>]+>|)\s*\(/))},T=[A,f,c,a,t.C_BLOCK_COMMENT_MODE,h,u],E={variants:[{begin:/=/,end:/;/},{begin:/\(/,end:/\)/},{beginKeywords:"new throw return else",end:/;/}],keywords:S,contains:T.concat([{begin:/\(/,end:/\)/,keywords:S,contains:T.concat(["self"]),relevance:0}]),relevance:0},k={className:"function",begin:"("+l+"[\\*&\\s]+)+"+w,returnBegin:!0,end:/[{;=]/,excludeEnd:!0,keywords:S,illegal:/[^\w\s\*&:<>.]/,contains:[{begin:i,keywords:S,relevance:0},{begin:w,returnBegin:!0,contains:[p],relevance:0},{begin:/::/,relevance:0},{begin:/:/,endsWithParent:!0,contains:[u,h]},{relevance:0,match:/,/},{className:"params",begin:/\(/,end:/\)/,keywords:S,relevance:0,contains:[a,t.C_BLOCK_COMMENT_MODE,u,h,c,{begin:/\(/,end:/\)/,keywords:S,relevance:0,contains:["self",a,t.C_BLOCK_COMMENT_MODE,u,h,c]}]},c,a,t.C_BLOCK_COMMENT_MODE,f]};return{name:"C++",aliases:["cc","c++","h++","hpp","hh","hxx","cxx"],keywords:S,illegal:"</",classNameAliases:{"function.dispatch":"built_in"},contains:[].concat(E,k,A,T,[f,{begin:"\\b(deque|list|queue|priority_queue|pair|stack|vector|map|set|bitset|multiset|multimap|unordered_map|unordered_set|unordered_multiset|unordered_multimap|array|tuple|optional|variant|function|flat_map|flat_set)\\s*<(?!<)",end:">",keywords:S,contains:["self",c]},{begin:t.IDENT_RE+"::",keywords:S},{match:[/\b(?:enum(?:\s+(?:class|struct))?|class|struct|union)/,/\s+/,/\w+/],className:{1:"keyword",3:"title.class"}}])}}return Oc=e,Oc}var Ic,Rh;function U9(){if(Rh)return Ic;Rh=1;function e(t){const n=["bool","byte","char","decimal","delegate","double","dynamic","enum","float","int","long","nint","nuint","object","sbyte","short","string","ulong","uint","ushort"],a=["public","private","protected","static","internal","protected","abstract","async","extern","override","unsafe","virtual","new","sealed","partial"],i=["default","false","null","true"],o=["abstract","as","base","break","case","catch","class","const","continue","do","else","event","explicit","extern","finally","fixed","for","foreach","goto","if","implicit","in","interface","internal","is","lock","namespace","new","operator","out","override","params","private","protected","public","readonly","record","ref","return","scoped","sealed","sizeof","stackalloc","static","struct","switch","this","throw","try","typeof","unchecked","unsafe","using","virtual","void","volatile","while"],s=["add","alias","and","ascending","args","async","await","by","descending","dynamic","equals","file","from","get","global","group","init","into","join","let","nameof","not","notnull","on","or","orderby","partial","record","remove","required","scoped","select","set","unmanaged","value|0","var","when","where","with","yield"],l={keyword:o.concat(s),built_in:n,literal:i},c=t.inherit(t.TITLE_MODE,{begin:"[a-zA-Z](\\.?\\w)*"}),d={className:"number",variants:[{begin:"\\b(0b[01']+)"},{begin:"(-?)\\b([\\d']+(\\.[\\d']*)?|\\.[\\d']+)(u|U|l|L|ul|UL|f|F|b|B)"},{begin:"(-?)(\\b0[xX][a-fA-F0-9']+|(\\b[\\d']+(\\.[\\d']*)?|\\.[\\d']+)([eE][-+]?[\\d']+)?)"}],relevance:0},u={className:"string",begin:/"""("*)(?!")(.|\n)*?"""\1/,relevance:1},h={className:"string",begin:'@"',end:'"',contains:[{begin:'""'}]},f=t.inherit(h,{illegal:/\n/}),p={className:"subst",begin:/\{/,end:/\}/,keywords:l},w=t.inherit(p,{illegal:/\n/}),g={className:"string",begin:/\$"/,end:'"',illegal:/\n/,contains:[{begin:/\{\{/},{begin:/\}\}/},t.BACKSLASH_ESCAPE,w]},v={className:"string",begin:/\$@"/,end:'"',contains:[{begin:/\{\{/},{begin:/\}\}/},{begin:'""'},p]},m=t.inherit(v,{illegal:/\n/,contains:[{begin:/\{\{/},{begin:/\}\}/},{begin:'""'},w]});p.contains=[v,g,h,t.APOS_STRING_MODE,t.QUOTE_STRING_MODE,d,t.C_BLOCK_COMMENT_MODE],w.contains=[m,g,f,t.APOS_STRING_MODE,t.QUOTE_STRING_MODE,d,t.inherit(t.C_BLOCK_COMMENT_MODE,{illegal:/\n/})];const b={variants:[u,v,g,h,t.APOS_STRING_MODE,t.QUOTE_STRING_MODE]},y={begin:"<",end:">",contains:[{beginKeywords:"in out"},c]},_=t.IDENT_RE+"(<"+t.IDENT_RE+"(\\s*,\\s*"+t.IDENT_RE+")*>)?(\\[\\])?",S={begin:"@"+t.IDENT_RE,relevance:0};return{name:"C#",aliases:["cs","c#"],keywords:l,illegal:/::/,contains:[t.COMMENT("///","$",{returnBegin:!0,contains:[{className:"doctag",variants:[{begin:"///",relevance:0},{begin:"<!--|-->"},{begin:"</?",end:">"}]}]}),t.C_LINE_COMMENT_MODE,t.C_BLOCK_COMMENT_MODE,{className:"meta",begin:"#",end:"$",keywords:{keyword:"if else elif endif define undef warning error line region endregion pragma checksum"}},b,d,{beginKeywords:"class interface",relevance:0,end:/[{;=]/,illegal:/[^\s:,]/,contains:[{beginKeywords:"where class"},c,y,t.C_LINE_COMMENT_MODE,t.C_BLOCK_COMMENT_MODE]},{beginKeywords:"namespace",relevance:0,end:/[{;=]/,illegal:/[^\s:]/,contains:[c,t.C_LINE_COMMENT_MODE,t.C_BLOCK_COMMENT_MODE]},{beginKeywords:"record",relevance:0,end:/[{;=]/,illegal:/[^\s:]/,contains:[c,y,t.C_LINE_COMMENT_MODE,t.C_BLOCK_COMMENT_MODE]},{className:"meta",begin:"^\\s*\\[(?=[\\w])",excludeBegin:!0,end:"\\]",excludeEnd:!0,contains:[{className:"string",begin:/"/,end:/"/}]},{beginKeywords:"new return throw await else",relevance:0},{className:"function",begin:"("+_+"\\s+)+"+t.IDENT_RE+"\\s*(<[^=]+>\\s*)?\\(",returnBegin:!0,end:/\s*[{;=]/,excludeEnd:!0,keywords:l,contains:[{beginKeywords:a.join(" "),relevance:0},{begin:t.IDENT_RE+"\\s*(<[^=]+>\\s*)?\\(",returnBegin:!0,contains:[t.TITLE_MODE,y],relevance:0},{match:/\(\)/},{className:"params",begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:l,relevance:0,contains:[b,d,t.C_BLOCK_COMMENT_MODE]},t.C_LINE_COMMENT_MODE,t.C_BLOCK_COMMENT_MODE]},S]}}return Ic=e,Ic}var Rc,Lh;function H9(){if(Lh)return Rc;Lh=1;const e=d=>({IMPORTANT:{scope:"meta",begin:"!important"},BLOCK_COMMENT:d.C_BLOCK_COMMENT_MODE,HEXCOLOR:{scope:"number",begin:/#(([0-9a-fA-F]{3,4})|(([0-9a-fA-F]{2}){3,4}))\b/},FUNCTION_DISPATCH:{className:"built_in",begin:/[\w-]+(?=\()/},ATTRIBUTE_SELECTOR_MODE:{scope:"selector-attr",begin:/\[/,end:/\]/,illegal:"$",contains:[d.APOS_STRING_MODE,d.QUOTE_STRING_MODE]},CSS_NUMBER_MODE:{scope:"number",begin:d.NUMBER_RE+"(%|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc|px|deg|grad|rad|turn|s|ms|Hz|kHz|dpi|dpcm|dppx)?",relevance:0},CSS_VARIABLE:{className:"attr",begin:/--[A-Za-z_][A-Za-z0-9_-]*/}}),t=["a","abbr","address","article","aside","audio","b","blockquote","body","button","canvas","caption","cite","code","dd","del","details","dfn","div","dl","dt","em","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","header","hgroup","html","i","iframe","img","input","ins","kbd","label","legend","li","main","mark","menu","nav","object","ol","optgroup","option","p","picture","q","quote","samp","section","select","source","span","strong","summary","sup","table","tbody","td","textarea","tfoot","th","thead","time","tr","ul","var","video"],n=["defs","g","marker","mask","pattern","svg","switch","symbol","feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feFlood","feGaussianBlur","feImage","feMerge","feMorphology","feOffset","feSpecularLighting","feTile","feTurbulence","linearGradient","radialGradient","stop","circle","ellipse","image","line","path","polygon","polyline","rect","text","use","textPath","tspan","foreignObject","clipPath"],a=[...t,...n],i=["any-hover","any-pointer","aspect-ratio","color","color-gamut","color-index","device-aspect-ratio","device-height","device-width","display-mode","forced-colors","grid","height","hover","inverted-colors","monochrome","orientation","overflow-block","overflow-inline","pointer","prefers-color-scheme","prefers-contrast","prefers-reduced-motion","prefers-reduced-transparency","resolution","scan","scripting","update","width","min-width","max-width","min-height","max-height"].sort().reverse(),o=["active","any-link","blank","checked","current","default","defined","dir","disabled","drop","empty","enabled","first","first-child","first-of-type","fullscreen","future","focus","focus-visible","focus-within","has","host","host-context","hover","indeterminate","in-range","invalid","is","lang","last-child","last-of-type","left","link","local-link","not","nth-child","nth-col","nth-last-child","nth-last-col","nth-last-of-type","nth-of-type","only-child","only-of-type","optional","out-of-range","past","placeholder-shown","read-only","read-write","required","right","root","scope","target","target-within","user-invalid","valid","visited","where"].sort().reverse(),s=["after","backdrop","before","cue","cue-region","first-letter","first-line","grammar-error","marker","part","placeholder","selection","slotted","spelling-error"].sort().reverse(),l=["accent-color","align-content","align-items","align-self","alignment-baseline","all","anchor-name","animation","animation-composition","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-range","animation-range-end","animation-range-start","animation-timeline","animation-timing-function","appearance","aspect-ratio","backdrop-filter","backface-visibility","background","background-attachment","background-blend-mode","background-clip","background-color","background-image","background-origin","background-position","background-position-x","background-position-y","background-repeat","background-size","baseline-shift","block-size","border","border-block","border-block-color","border-block-end","border-block-end-color","border-block-end-style","border-block-end-width","border-block-start","border-block-start-color","border-block-start-style","border-block-start-width","border-block-style","border-block-width","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-style","border-bottom-width","border-collapse","border-color","border-end-end-radius","border-end-start-radius","border-image","border-image-outset","border-image-repeat","border-image-slice","border-image-source","border-image-width","border-inline","border-inline-color","border-inline-end","border-inline-end-color","border-inline-end-style","border-inline-end-width","border-inline-start","border-inline-start-color","border-inline-start-style","border-inline-start-width","border-inline-style","border-inline-width","border-left","border-left-color","border-left-style","border-left-width","border-radius","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-start-end-radius","border-start-start-radius","border-style","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-style","border-top-width","border-width","bottom","box-align","box-decoration-break","box-direction","box-flex","box-flex-group","box-lines","box-ordinal-group","box-orient","box-pack","box-shadow","box-sizing","break-after","break-before","break-inside","caption-side","caret-color","clear","clip","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-profile","color-rendering","color-scheme","column-count","column-fill","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","column-span","column-width","columns","contain","contain-intrinsic-block-size","contain-intrinsic-height","contain-intrinsic-inline-size","contain-intrinsic-size","contain-intrinsic-width","container","container-name","container-type","content","content-visibility","counter-increment","counter-reset","counter-set","cue","cue-after","cue-before","cursor","cx","cy","direction","display","dominant-baseline","empty-cells","enable-background","field-sizing","fill","fill-opacity","fill-rule","filter","flex","flex-basis","flex-direction","flex-flow","flex-grow","flex-shrink","flex-wrap","float","flood-color","flood-opacity","flow","font","font-display","font-family","font-feature-settings","font-kerning","font-language-override","font-optical-sizing","font-palette","font-size","font-size-adjust","font-smooth","font-smoothing","font-stretch","font-style","font-synthesis","font-synthesis-position","font-synthesis-small-caps","font-synthesis-style","font-synthesis-weight","font-variant","font-variant-alternates","font-variant-caps","font-variant-east-asian","font-variant-emoji","font-variant-ligatures","font-variant-numeric","font-variant-position","font-variation-settings","font-weight","forced-color-adjust","gap","glyph-orientation-horizontal","glyph-orientation-vertical","grid","grid-area","grid-auto-columns","grid-auto-flow","grid-auto-rows","grid-column","grid-column-end","grid-column-start","grid-gap","grid-row","grid-row-end","grid-row-start","grid-template","grid-template-areas","grid-template-columns","grid-template-rows","hanging-punctuation","height","hyphenate-character","hyphenate-limit-chars","hyphens","icon","image-orientation","image-rendering","image-resolution","ime-mode","initial-letter","initial-letter-align","inline-size","inset","inset-area","inset-block","inset-block-end","inset-block-start","inset-inline","inset-inline-end","inset-inline-start","isolation","justify-content","justify-items","justify-self","kerning","left","letter-spacing","lighting-color","line-break","line-height","line-height-step","list-style","list-style-image","list-style-position","list-style-type","margin","margin-block","margin-block-end","margin-block-start","margin-bottom","margin-inline","margin-inline-end","margin-inline-start","margin-left","margin-right","margin-top","margin-trim","marker","marker-end","marker-mid","marker-start","marks","mask","mask-border","mask-border-mode","mask-border-outset","mask-border-repeat","mask-border-slice","mask-border-source","mask-border-width","mask-clip","mask-composite","mask-image","mask-mode","mask-origin","mask-position","mask-repeat","mask-size","mask-type","masonry-auto-flow","math-depth","math-shift","math-style","max-block-size","max-height","max-inline-size","max-width","min-block-size","min-height","min-inline-size","min-width","mix-blend-mode","nav-down","nav-index","nav-left","nav-right","nav-up","none","normal","object-fit","object-position","offset","offset-anchor","offset-distance","offset-path","offset-position","offset-rotate","opacity","order","orphans","outline","outline-color","outline-offset","outline-style","outline-width","overflow","overflow-anchor","overflow-block","overflow-clip-margin","overflow-inline","overflow-wrap","overflow-x","overflow-y","overlay","overscroll-behavior","overscroll-behavior-block","overscroll-behavior-inline","overscroll-behavior-x","overscroll-behavior-y","padding","padding-block","padding-block-end","padding-block-start","padding-bottom","padding-inline","padding-inline-end","padding-inline-start","padding-left","padding-right","padding-top","page","page-break-after","page-break-before","page-break-inside","paint-order","pause","pause-after","pause-before","perspective","perspective-origin","place-content","place-items","place-self","pointer-events","position","position-anchor","position-visibility","print-color-adjust","quotes","r","resize","rest","rest-after","rest-before","right","rotate","row-gap","ruby-align","ruby-position","scale","scroll-behavior","scroll-margin","scroll-margin-block","scroll-margin-block-end","scroll-margin-block-start","scroll-margin-bottom","scroll-margin-inline","scroll-margin-inline-end","scroll-margin-inline-start","scroll-margin-left","scroll-margin-right","scroll-margin-top","scroll-padding","scroll-padding-block","scroll-padding-block-end","scroll-padding-block-start","scroll-padding-bottom","scroll-padding-inline","scroll-padding-inline-end","scroll-padding-inline-start","scroll-padding-left","scroll-padding-right","scroll-padding-top","scroll-snap-align","scroll-snap-stop","scroll-snap-type","scroll-timeline","scroll-timeline-axis","scroll-timeline-name","scrollbar-color","scrollbar-gutter","scrollbar-width","shape-image-threshold","shape-margin","shape-outside","shape-rendering","speak","speak-as","src","stop-color","stop-opacity","stroke","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","tab-size","table-layout","text-align","text-align-all","text-align-last","text-anchor","text-combine-upright","text-decoration","text-decoration-color","text-decoration-line","text-decoration-skip","text-decoration-skip-ink","text-decoration-style","text-decoration-thickness","text-emphasis","text-emphasis-color","text-emphasis-position","text-emphasis-style","text-indent","text-justify","text-orientation","text-overflow","text-rendering","text-shadow","text-size-adjust","text-transform","text-underline-offset","text-underline-position","text-wrap","text-wrap-mode","text-wrap-style","timeline-scope","top","touch-action","transform","transform-box","transform-origin","transform-style","transition","transition-behavior","transition-delay","transition-duration","transition-property","transition-timing-function","translate","unicode-bidi","user-modify","user-select","vector-effect","vertical-align","view-timeline","view-timeline-axis","view-timeline-inset","view-timeline-name","view-transition-name","visibility","voice-balance","voice-duration","voice-family","voice-pitch","voice-range","voice-rate","voice-stress","voice-volume","white-space","white-space-collapse","widows","width","will-change","word-break","word-spacing","word-wrap","writing-mode","x","y","z-index","zoom"].sort().reverse();function c(d){const u=d.regex,h=e(d),f={begin:/-(webkit|moz|ms|o)-(?=[a-z])/},p="and or not only",w=/@-?\w[\w]*(-\w+)*/,g="[a-zA-Z-][a-zA-Z0-9_-]*",v=[d.APOS_STRING_MODE,d.QUOTE_STRING_MODE];return{name:"CSS",case_insensitive:!0,illegal:/[=|'\$]/,keywords:{keyframePosition:"from to"},classNameAliases:{keyframePosition:"selector-tag"},contains:[h.BLOCK_COMMENT,f,h.CSS_NUMBER_MODE,{className:"selector-id",begin:/#[A-Za-z0-9_-]+/,relevance:0},{className:"selector-class",begin:"\\."+g,relevance:0},h.ATTRIBUTE_SELECTOR_MODE,{className:"selector-pseudo",variants:[{begin:":("+o.join("|")+")"},{begin:":(:)?("+s.join("|")+")"}]},h.CSS_VARIABLE,{className:"attribute",begin:"\\b("+l.join("|")+")\\b"},{begin:/:/,end:/[;}{]/,contains:[h.BLOCK_COMMENT,h.HEXCOLOR,h.IMPORTANT,h.CSS_NUMBER_MODE,...v,{begin:/(url|data-uri)\(/,end:/\)/,relevance:0,keywords:{built_in:"url data-uri"},contains:[...v,{className:"string",begin:/[^)]/,endsWithParent:!0,excludeEnd:!0}]},h.FUNCTION_DISPATCH]},{begin:u.lookahead(/@/),end:"[{;]",relevance:0,illegal:/:/,contains:[{className:"keyword",begin:w},{begin:/\s/,endsWithParent:!0,excludeEnd:!0,relevance:0,keywords:{$pattern:/[a-z-]+/,keyword:p,attribute:i.join(" ")},contains:[{begin:/[a-z-]+(?=:)/,className:"attribute"},...v,h.CSS_NUMBER_MODE]}]},{className:"selector-tag",begin:"\\b("+a.join("|")+")\\b"}]}}return Rc=c,Rc}var Lc,Fh;function G9(){if(Fh)return Lc;Fh=1;function e(t){const n=t.regex,a={begin:/<\/?[A-Za-z_]/,end:">",subLanguage:"xml",relevance:0},i={begin:"^[-\\*]{3,}",end:"$"},o={className:"code",variants:[{begin:"(`{3,})[^`](.|\\n)*?\\1`*[ ]*"},{begin:"(~{3,})[^~](.|\\n)*?\\1~*[ ]*"},{begin:"```",end:"```+[ ]*$"},{begin:"~~~",end:"~~~+[ ]*$"},{begin:"`.+?`"},{begin:"(?=^( {4}|\\t))",contains:[{begin:"^( {4}|\\t)",end:"(\\n)$"}],relevance:0}]},s={className:"bullet",begin:"^[ ]*([*+-]|(\\d+\\.))(?=\\s+)",end:"\\s+",excludeEnd:!0},l={begin:/^\[[^\n]+\]:/,returnBegin:!0,contains:[{className:"symbol",begin:/\[/,end:/\]/,excludeBegin:!0,excludeEnd:!0},{className:"link",begin:/:\s*/,end:/$/,excludeBegin:!0}]},c=/[A-Za-z][A-Za-z0-9+.-]*/,d={variants:[{begin:/\[.+?\]\[.*?\]/,relevance:0},{begin:/\[.+?\]\(((data|javascript|mailto):|(?:http|ftp)s?:\/\/).*?\)/,relevance:2},{begin:n.concat(/\[.+?\]\(/,c,/:\/\/.*?\)/),relevance:2},{begin:/\[.+?\]\([./?&#].*?\)/,relevance:1},{begin:/\[.*?\]\(.*?\)/,relevance:0}],returnBegin:!0,contains:[{match:/\[(?=\])/},{className:"string",relevance:0,begin:"\\[",end:"\\]",excludeBegin:!0,returnEnd:!0},{className:"link",relevance:0,begin:"\\]\\(",end:"\\)",excludeBegin:!0,excludeEnd:!0},{className:"symbol",relevance:0,begin:"\\]\\[",end:"\\]",excludeBegin:!0,excludeEnd:!0}]},u={className:"strong",contains:[],variants:[{begin:/_{2}(?!\s)/,end:/_{2}/},{begin:/\*{2}(?!\s)/,end:/\*{2}/}]},h={className:"emphasis",contains:[],variants:[{begin:/\*(?![*\s])/,end:/\*/},{begin:/_(?![_\s])/,end:/_/,relevance:0}]},f=t.inherit(u,{contains:[]}),p=t.inherit(h,{contains:[]});u.contains.push(p),h.contains.push(f);let w=[a,d];return[u,h,f,p].forEach(b=>{b.contains=b.contains.concat(w)}),w=w.concat(u,h),{name:"Markdown",aliases:["md","mkdown","mkd"],contains:[{className:"section",variants:[{begin:"^#{1,6}",end:"$",contains:w},{begin:"(?=^.+?\\n[=-]{2,}$)",contains:[{begin:"^[=-]*$"},{begin:"^",end:"\\n",contains:w}]}]},a,s,u,h,{className:"quote",begin:"^>\\s+",contains:w,end:"$"},o,i,d,l,{scope:"literal",match:/&([a-zA-Z0-9]+|#[0-9]{1,7}|#[Xx][0-9a-fA-F]{1,6});/}]}}return Lc=e,Lc}var Fc,zh;function q9(){if(zh)return Fc;zh=1;function e(t){const n=t.regex;return{name:"Diff",aliases:["patch"],contains:[{className:"meta",relevance:10,match:n.either(/^@@ +-\d+,\d+ +\+\d+,\d+ +@@/,/^\*\*\* +\d+,\d+ +\*\*\*\*$/,/^--- +\d+,\d+ +----$/)},{className:"comment",variants:[{begin:n.either(/Index: /,/^index/,/={3,}/,/^-{3}/,/^\*{3} /,/^\+{3}/,/^diff --git/),end:/$/},{match:/^\*{15}$/}]},{className:"addition",begin:/^\+/,end:/$/},{className:"deletion",begin:/^-/,end:/$/},{className:"addition",begin:/^!/,end:/$/}]}}return Fc=e,Fc}var zc,Ph;function K9(){if(Ph)return zc;Ph=1;function e(t){const n=t.regex,a="([a-zA-Z_]\\w*[!?=]?|[-+~]@|<<|>>|=~|===?|<=>|[<>]=?|\\*\\*|[-/+%^&*~`|]|\\[\\]=?)",i=n.either(/\b([A-Z]+[a-z0-9]+)+/,/\b([A-Z]+[a-z0-9]+)+[A-Z]+/),o=n.concat(i,/(::\w+)*/),l={"variable.constant":["__FILE__","__LINE__","__ENCODING__"],"variable.language":["self","super"],keyword:["alias","and","begin","BEGIN","break","case","class","defined","do","else","elsif","end","END","ensure","for","if","in","module","next","not","or","redo","require","rescue","retry","return","then","undef","unless","until","when","while","yield",...["include","extend","prepend","public","private","protected","raise","throw"]],built_in:["proc","lambda","attr_accessor","attr_reader","attr_writer","define_method","private_constant","module_function"],literal:["true","false","nil"]},c={className:"doctag",begin:"@[A-Za-z]+"},d={begin:"#<",end:">"},u=[t.COMMENT("#","$",{contains:[c]}),t.COMMENT("^=begin","^=end",{contains:[c],relevance:10}),t.COMMENT("^__END__",t.MATCH_NOTHING_RE)],h={className:"subst",begin:/#\{/,end:/\}/,keywords:l},f={className:"string",contains:[t.BACKSLASH_ESCAPE,h],variants:[{begin:/'/,end:/'/},{begin:/"/,end:/"/},{begin:/`/,end:/`/},{begin:/%[qQwWx]?\(/,end:/\)/},{begin:/%[qQwWx]?\[/,end:/\]/},{begin:/%[qQwWx]?\{/,end:/\}/},{begin:/%[qQwWx]?</,end:/>/},{begin:/%[qQwWx]?\//,end:/\//},{begin:/%[qQwWx]?%/,end:/%/},{begin:/%[qQwWx]?-/,end:/-/},{begin:/%[qQwWx]?\|/,end:/\|/},{begin:/\B\?(\\\d{1,3})/},{begin:/\B\?(\\x[A-Fa-f0-9]{1,2})/},{begin:/\B\?(\\u\{?[A-Fa-f0-9]{1,6}\}?)/},{begin:/\B\?(\\M-\\C-|\\M-\\c|\\c\\M-|\\M-|\\C-\\M-)[\x20-\x7e]/},{begin:/\B\?\\(c|C-)[\x20-\x7e]/},{begin:/\B\?\\?\S/},{begin:n.concat(/<<[-~]?'?/,n.lookahead(/(\w+)(?=\W)[^\n]*\n(?:[^\n]*\n)*?\s*\1\b/)),contains:[t.END_SAME_AS_BEGIN({begin:/(\w+)/,end:/(\w+)/,contains:[t.BACKSLASH_ESCAPE,h]})]}]},p="[1-9](_?[0-9])*|0",w="[0-9](_?[0-9])*",g={className:"number",relevance:0,variants:[{begin:`\\b(${p})(\\.(${w}))?([eE][+-]?(${w})|r)?i?\\b`},{begin:"\\b0[dD][0-9](_?[0-9])*r?i?\\b"},{begin:"\\b0[bB][0-1](_?[0-1])*r?i?\\b"},{begin:"\\b0[oO][0-7](_?[0-7])*r?i?\\b"},{begin:"\\b0[xX][0-9a-fA-F](_?[0-9a-fA-F])*r?i?\\b"},{begin:"\\b0(_?[0-7])+r?i?\\b"}]},v={variants:[{match:/\(\)/},{className:"params",begin:/\(/,end:/(?=\))/,excludeBegin:!0,endsParent:!0,keywords:l}]},T=[f,{variants:[{match:[/class\s+/,o,/\s+<\s+/,o]},{match:[/\b(class|module)\s+/,o]}],scope:{2:"title.class",4:"title.class.inherited"},keywords:l},{match:[/(include|extend)\s+/,o],scope:{2:"title.class"},keywords:l},{relevance:0,match:[o,/\.new[. (]/],scope:{1:"title.class"}},{relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/,className:"variable.constant"},{relevance:0,match:i,scope:"title.class"},{match:[/def/,/\s+/,a],scope:{1:"keyword",3:"title.function"},contains:[v]},{begin:t.IDENT_RE+"::"},{className:"symbol",begin:t.UNDERSCORE_IDENT_RE+"(!|\\?)?:",relevance:0},{className:"symbol",begin:":(?!\\s)",contains:[f,{begin:a}],relevance:0},g,{className:"variable",begin:"(\\$\\W)|((\\$|@@?)(\\w+))(?=[^@$?])(?![A-Za-z])(?![@$?'])"},{className:"params",begin:/\|(?!=)/,end:/\|/,excludeBegin:!0,excludeEnd:!0,relevance:0,keywords:l},{begin:"("+t.RE_STARTERS_RE+"|unless)\\s*",keywords:"unless",contains:[{className:"regexp",contains:[t.BACKSLASH_ESCAPE,h],illegal:/\n/,variants:[{begin:"/",end:"/[a-z]*"},{begin:/%r\{/,end:/\}[a-z]*/},{begin:"%r\\(",end:"\\)[a-z]*"},{begin:"%r!",end:"![a-z]*"},{begin:"%r\\[",end:"\\][a-z]*"}]}].concat(d,u),relevance:0}].concat(d,u);h.contains=T,v.contains=T;const D=[{begin:/^\s*=>/,starts:{end:"$",contains:T}},{className:"meta.prompt",begin:"^("+"[>?]>"+"|"+"[\\w#]+\\(\\w+\\):\\d+:\\d+[>*]"+"|"+"(\\w+-)?\\d+\\.\\d+\\.\\d+(p\\d+)?[^\\d][^>]+>"+")(?=[ ])",starts:{end:"$",keywords:l,contains:T}}];return u.unshift(d),{name:"Ruby",aliases:["rb","gemspec","podspec","thor","irb"],keywords:l,illegal:/\/\*/,contains:[t.SHEBANG({binary:"ruby"})].concat(D).concat(u).concat(T)}}return zc=e,zc}var Pc,$h;function W9(){if($h)return Pc;$h=1;function e(t){const s={keyword:["break","case","chan","const","continue","default","defer","else","fallthrough","for","func","go","goto","if","import","interface","map","package","range","return","select","struct","switch","type","var"],type:["bool","byte","complex64","complex128","error","float32","float64","int8","int16","int32","int64","string","uint8","uint16","uint32","uint64","int","uint","uintptr","rune"],literal:["true","false","iota","nil"],built_in:["append","cap","close","complex","copy","imag","len","make","new","panic","print","println","real","recover","delete"]};return{name:"Go",aliases:["golang"],keywords:s,illegal:"</",contains:[t.C_LINE_COMMENT_MODE,t.C_BLOCK_COMMENT_MODE,{className:"string",variants:[t.QUOTE_STRING_MODE,t.APOS_STRING_MODE,{begin:"`",end:"`"}]},{className:"number",variants:[{match:/-?\b0[xX]\.[a-fA-F0-9](_?[a-fA-F0-9])*[pP][+-]?\d(_?\d)*i?/,relevance:0},{match:/-?\b0[xX](_?[a-fA-F0-9])+((\.([a-fA-F0-9](_?[a-fA-F0-9])*)?)?[pP][+-]?\d(_?\d)*)?i?/,relevance:0},{match:/-?\b0[oO](_?[0-7])*i?/,relevance:0},{match:/-?\.\d(_?\d)*([eE][+-]?\d(_?\d)*)?i?/,relevance:0},{match:/-?\b\d(_?\d)*(\.(\d(_?\d)*)?)?([eE][+-]?\d(_?\d)*)?i?/,relevance:0}]},{begin:/:=/},{className:"function",beginKeywords:"func",end:"\\s*(\\{|$)",excludeEnd:!0,contains:[t.TITLE_MODE,{className:"params",begin:/\(/,end:/\)/,endsParent:!0,keywords:s,illegal:/["']/}]}]}}return Pc=e,Pc}var $c,Vh;function Y9(){if(Vh)return $c;Vh=1;function e(t){const n=t.regex,a=/[_A-Za-z][_0-9A-Za-z]*/;return{name:"GraphQL",aliases:["gql"],case_insensitive:!0,disableAutodetect:!1,keywords:{keyword:["query","mutation","subscription","type","input","schema","directive","interface","union","scalar","fragment","enum","on"],literal:["true","false","null"]},contains:[t.HASH_COMMENT_MODE,t.QUOTE_STRING_MODE,t.NUMBER_MODE,{scope:"punctuation",match:/[.]{3}/,relevance:0},{scope:"punctuation",begin:/[\!\(\)\:\=\[\]\{\|\}]{1}/,relevance:0},{scope:"variable",begin:/\$/,end:/\W/,excludeEnd:!0,relevance:0},{scope:"meta",match:/@\w+/,excludeEnd:!0},{scope:"symbol",begin:n.concat(a,n.lookahead(/\s*:/)),relevance:0}],illegal:[/[;<']/,/BEGIN/]}}return $c=e,$c}var Vc,Uh;function j9(){if(Uh)return Vc;Uh=1;function e(t){const n=t.regex,a={className:"number",relevance:0,variants:[{begin:/([+-]+)?[\d]+_[\d_]+/},{begin:t.NUMBER_RE}]},i=t.COMMENT();i.variants=[{begin:/;/,end:/$/},{begin:/#/,end:/$/}];const o={className:"variable",variants:[{begin:/\$[\w\d"][\w\d_]*/},{begin:/\$\{(.*?)\}/}]},s={className:"literal",begin:/\bon|off|true|false|yes|no\b/},l={className:"string",contains:[t.BACKSLASH_ESCAPE],variants:[{begin:"'''",end:"'''",relevance:10},{begin:'"""',end:'"""',relevance:10},{begin:'"',end:'"'},{begin:"'",end:"'"}]},c={begin:/\[/,end:/\]/,contains:[i,s,o,l,a,"self"],relevance:0},d=/[A-Za-z0-9_-]+/,u=/"(\\"|[^"])*"/,h=/'[^']*'/,f=n.either(d,u,h),p=n.concat(f,"(\\s*\\.\\s*",f,")*",n.lookahead(/\s*=\s*[^#\s]/));return{name:"TOML, also INI",aliases:["toml"],case_insensitive:!0,illegal:/\S/,contains:[i,{className:"section",begin:/\[+/,end:/\]+/},{begin:p,className:"attr",starts:{end:/$/,contains:[i,c,s,o,l,a]}}]}}return Vc=e,Vc}var Uc,Hh;function X9(){if(Hh)return Uc;Hh=1;var e="[0-9](_*[0-9])*",t=`\\.(${e})`,n="[0-9a-fA-F](_*[0-9a-fA-F])*",a={className:"number",variants:[{begin:`(\\b(${e})((${t})|\\.)?|(${t}))[eE][+-]?(${e})[fFdD]?\\b`},{begin:`\\b(${e})((${t})[fFdD]?\\b|\\.([fFdD]\\b)?)`},{begin:`(${t})[fFdD]?\\b`},{begin:`\\b(${e})[fFdD]\\b`},{begin:`\\b0[xX]((${n})\\.?|(${n})?\\.(${n}))[pP][+-]?(${e})[fFdD]?\\b`},{begin:"\\b(0|[1-9](_*[0-9])*)[lL]?\\b"},{begin:`\\b0[xX](${n})[lL]?\\b`},{begin:"\\b0(_*[0-7])*[lL]?\\b"},{begin:"\\b0[bB][01](_*[01])*[lL]?\\b"}],relevance:0};function i(s,l,c){return c===-1?"":s.replace(l,d=>i(s,l,c-1))}function o(s){const l=s.regex,c="[À-ʸa-zA-Z_$][À-ʸa-zA-Z_$0-9]*",d=c+i("(?:<"+c+"~~~(?:\\s*,\\s*"+c+"~~~)*>)?",/~~~/g,2),w={keyword:["synchronized","abstract","private","var","static","if","const ","for","while","strictfp","finally","protected","import","native","final","void","enum","else","break","transient","catch","instanceof","volatile","case","assert","package","default","public","try","switch","continue","throws","protected","public","private","module","requires","exports","do","sealed","yield","permits","goto","when"],literal:["false","true","null"],type:["char","boolean","long","float","int","byte","short","double"],built_in:["super","this"]},g={className:"meta",begin:"@"+c,contains:[{begin:/\(/,end:/\)/,contains:["self"]}]},v={className:"params",begin:/\(/,end:/\)/,keywords:w,relevance:0,contains:[s.C_BLOCK_COMMENT_MODE],endsParent:!0};return{name:"Java",aliases:["jsp"],keywords:w,illegal:/<\/|#/,contains:[s.COMMENT("/\\*\\*","\\*/",{relevance:0,contains:[{begin:/\w+@/,relevance:0},{className:"doctag",begin:"@[A-Za-z]+"}]}),{begin:/import java\.[a-z]+\./,keywords:"import",relevance:2},s.C_LINE_COMMENT_MODE,s.C_BLOCK_COMMENT_MODE,{begin:/"""/,end:/"""/,className:"string",contains:[s.BACKSLASH_ESCAPE]},s.APOS_STRING_MODE,s.QUOTE_STRING_MODE,{match:[/\b(?:class|interface|enum|extends|implements|new)/,/\s+/,c],className:{1:"keyword",3:"title.class"}},{match:/non-sealed/,scope:"keyword"},{begin:[l.concat(/(?!else)/,c),/\s+/,c,/\s+/,/=(?!=)/],className:{1:"type",3:"variable",5:"operator"}},{begin:[/record/,/\s+/,c],className:{1:"keyword",3:"title.class"},contains:[v,s.C_LINE_COMMENT_MODE,s.C_BLOCK_COMMENT_MODE]},{beginKeywords:"new throw return else",relevance:0},{begin:["(?:"+d+"\\s+)",s.UNDERSCORE_IDENT_RE,/\s*(?=\()/],className:{2:"title.function"},keywords:w,contains:[{className:"params",begin:/\(/,end:/\)/,keywords:w,relevance:0,contains:[g,s.APOS_STRING_MODE,s.QUOTE_STRING_MODE,a,s.C_BLOCK_COMMENT_MODE]},s.C_LINE_COMMENT_MODE,s.C_BLOCK_COMMENT_MODE]},a,g]}}return Uc=o,Uc}var Hc,Gh;function Z9(){if(Gh)return Hc;Gh=1;const e="[A-Za-z$_][0-9A-Za-z$_]*",t=["as","in","of","if","for","while","finally","var","new","function","do","return","void","else","break","catch","instanceof","with","throw","case","default","try","switch","continue","typeof","delete","let","yield","const","class","debugger","async","await","static","import","from","export","extends","using"],n=["true","false","null","undefined","NaN","Infinity"],a=["Object","Function","Boolean","Symbol","Math","Date","Number","BigInt","String","RegExp","Array","Float32Array","Float64Array","Int8Array","Uint8Array","Uint8ClampedArray","Int16Array","Int32Array","Uint16Array","Uint32Array","BigInt64Array","BigUint64Array","Set","Map","WeakSet","WeakMap","ArrayBuffer","SharedArrayBuffer","Atomics","DataView","JSON","Promise","Generator","GeneratorFunction","AsyncFunction","Reflect","Proxy","Intl","WebAssembly"],i=["Error","EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"],o=["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"],s=["arguments","this","super","console","window","document","localStorage","sessionStorage","module","global"],l=[].concat(o,a,i);function c(d){const u=d.regex,h=(Ee,{after:ne})=>{const me="</"+Ee[0].slice(1);return Ee.input.indexOf(me,ne)!==-1},f=e,p={begin:"<>",end:"</>"},w=/<[A-Za-z0-9\\._:-]+\s*\/>/,g={begin:/<[A-Za-z0-9\\._:-]+/,end:/\/[A-Za-z0-9\\._:-]+>|\/>/,isTrulyOpeningTag:(Ee,ne)=>{const me=Ee[0].length+Ee.index,we=Ee.input[me];if(we==="<"||we===","){ne.ignoreMatch();return}we===">"&&(h(Ee,{after:me})||ne.ignoreMatch());let Se;const De=Ee.input.substring(me);if(Se=De.match(/^\s*=/)){ne.ignoreMatch();return}if((Se=De.match(/^\s+extends\s+/))&&Se.index===0){ne.ignoreMatch();return}}},v={$pattern:e,keyword:t,literal:n,built_in:l,"variable.language":s},m="[0-9](_?[0-9])*",b=`\\.(${m})`,y="0|[1-9](_?[0-9])*|0[0-7]*[89][0-9]*",_={className:"number",variants:[{begin:`(\\b(${y})((${b})|\\.)?|(${b}))[eE][+-]?(${m})\\b`},{begin:`\\b(${y})\\b((${b})\\b|\\.)?|(${b})\\b`},{begin:"\\b(0|[1-9](_?[0-9])*)n\\b"},{begin:"\\b0[xX][0-9a-fA-F](_?[0-9a-fA-F])*n?\\b"},{begin:"\\b0[bB][0-1](_?[0-1])*n?\\b"},{begin:"\\b0[oO][0-7](_?[0-7])*n?\\b"},{begin:"\\b0[0-7]+n?\\b"}],relevance:0},S={className:"subst",begin:"\\$\\{",end:"\\}",keywords:v,contains:[]},A={begin:".?html`",end:"",starts:{end:"`",returnEnd:!1,contains:[d.BACKSLASH_ESCAPE,S],subLanguage:"xml"}},T={begin:".?css`",end:"",starts:{end:"`",returnEnd:!1,contains:[d.BACKSLASH_ESCAPE,S],subLanguage:"css"}},E={begin:".?gql`",end:"",starts:{end:"`",returnEnd:!1,contains:[d.BACKSLASH_ESCAPE,S],subLanguage:"graphql"}},k={className:"string",begin:"`",end:"`",contains:[d.BACKSLASH_ESCAPE,S]},D={className:"comment",variants:[d.COMMENT(/\/\*\*(?!\/)/,"\\*/",{relevance:0,contains:[{begin:"(?=@[A-Za-z]+)",relevance:0,contains:[{className:"doctag",begin:"@[A-Za-z]+"},{className:"type",begin:"\\{",end:"\\}",excludeEnd:!0,excludeBegin:!0,relevance:0},{className:"variable",begin:f+"(?=\\s*(-)|$)",endsParent:!0,relevance:0},{begin:/(?=[^\n])\s/,relevance:0}]}]}),d.C_BLOCK_COMMENT_MODE,d.C_LINE_COMMENT_MODE]},U=[d.APOS_STRING_MODE,d.QUOTE_STRING_MODE,A,T,E,k,{match:/\$\d+/},_];S.contains=U.concat({begin:/\{/,end:/\}/,keywords:v,contains:["self"].concat(U)});const L=[].concat(D,S.contains),q=L.concat([{begin:/(\s*)\(/,end:/\)/,keywords:v,contains:["self"].concat(L)}]),X={className:"params",begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:v,contains:q},$={variants:[{match:[/class/,/\s+/,f,/\s+/,/extends/,/\s+/,u.concat(f,"(",u.concat(/\./,f),")*")],scope:{1:"keyword",3:"title.class",5:"keyword",7:"title.class.inherited"}},{match:[/class/,/\s+/,f],scope:{1:"keyword",3:"title.class"}}]},j={relevance:0,match:u.either(/\bJSON/,/\b[A-Z][a-z]+([A-Z][a-z]*|\d)*/,/\b[A-Z]{2,}([A-Z][a-z]+|\d)+([A-Z][a-z]*)*/,/\b[A-Z]{2,}[a-z]+([A-Z][a-z]+|\d)*([A-Z][a-z]*)*/),className:"title.class",keywords:{_:[...a,...i]}},J={label:"use_strict",className:"meta",relevance:10,begin:/^\s*['"]use (strict|asm)['"]/},V={variants:[{match:[/function/,/\s+/,f,/(?=\s*\()/]},{match:[/function/,/\s*(?=\()/]}],className:{1:"keyword",3:"title.function"},label:"func.def",contains:[X],illegal:/%/},F={relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/,className:"variable.constant"};function I(Ee){return u.concat("(?!",Ee.join("|"),")")}const H={match:u.concat(/\b/,I([...o,"super","import"].map(Ee=>`${Ee}\\s*\\(`)),f,u.lookahead(/\s*\(/)),className:"title.function",relevance:0},G={begin:u.concat(/\./,u.lookahead(u.concat(f,/(?![0-9A-Za-z$_(])/))),end:f,excludeBegin:!0,keywords:"prototype",className:"property",relevance:0},oe={match:[/get|set/,/\s+/,f,/(?=\()/],className:{1:"keyword",3:"title.function"},contains:[{begin:/\(\)/},X]},de="(\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)|"+d.UNDERSCORE_IDENT_RE+")\\s*=>",ve={match:[/const|var|let/,/\s+/,f,/\s*/,/=\s*/,/(async\s*)?/,u.lookahead(de)],keywords:"async",className:{1:"keyword",3:"title.function"},contains:[X]};return{name:"JavaScript",aliases:["js","jsx","mjs","cjs"],keywords:v,exports:{PARAMS_CONTAINS:q,CLASS_REFERENCE:j},illegal:/#(?![$_A-z])/,contains:[d.SHEBANG({label:"shebang",binary:"node",relevance:5}),J,d.APOS_STRING_MODE,d.QUOTE_STRING_MODE,A,T,E,k,D,{match:/\$\d+/},_,j,{scope:"attr",match:f+u.lookahead(":"),relevance:0},ve,{begin:"("+d.RE_STARTERS_RE+"|\\b(case|return|throw)\\b)\\s*",keywords:"return throw case",relevance:0,contains:[D,d.REGEXP_MODE,{className:"function",begin:de,returnBegin:!0,end:"\\s*=>",contains:[{className:"params",variants:[{begin:d.UNDERSCORE_IDENT_RE,relevance:0},{className:null,begin:/\(\s*\)/,skip:!0},{begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:v,contains:q}]}]},{begin:/,/,relevance:0},{match:/\s+/,relevance:0},{variants:[{begin:p.begin,end:p.end},{match:w},{begin:g.begin,"on:begin":g.isTrulyOpeningTag,end:g.end}],subLanguage:"xml",contains:[{begin:g.begin,end:g.end,skip:!0,contains:["self"]}]}]},V,{beginKeywords:"while if switch catch for"},{begin:"\\b(?!function)"+d.UNDERSCORE_IDENT_RE+"\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)\\s*\\{",returnBegin:!0,label:"func.def",contains:[X,d.inherit(d.TITLE_MODE,{begin:f,className:"title.function"})]},{match:/\.\.\./,relevance:0},G,{match:"\\$"+f,relevance:0},{match:[/\bconstructor(?=\s*\()/],className:{1:"title.function"},contains:[X]},H,F,$,oe,{match:/\$[(.]/}]}}return Hc=c,Hc}var Gc,qh;function J9(){if(qh)return Gc;qh=1;function e(t){const n={className:"attr",begin:/"(\\.|[^\\"\r\n])*"(?=\s*:)/,relevance:1.01},a={match:/[{}[\],:]/,className:"punctuation",relevance:0},i=["true","false","null"],o={scope:"literal",beginKeywords:i.join(" ")};return{name:"JSON",aliases:["jsonc"],keywords:{literal:i},contains:[n,a,t.QUOTE_STRING_MODE,o,t.C_NUMBER_MODE,t.C_LINE_COMMENT_MODE,t.C_BLOCK_COMMENT_MODE],illegal:"\\S"}}return Gc=e,Gc}var qc,Kh;function Q9(){if(Kh)return qc;Kh=1;var e="[0-9](_*[0-9])*",t=`\\.(${e})`,n="[0-9a-fA-F](_*[0-9a-fA-F])*",a={className:"number",variants:[{begin:`(\\b(${e})((${t})|\\.)?|(${t}))[eE][+-]?(${e})[fFdD]?\\b`},{begin:`\\b(${e})((${t})[fFdD]?\\b|\\.([fFdD]\\b)?)`},{begin:`(${t})[fFdD]?\\b`},{begin:`\\b(${e})[fFdD]\\b`},{begin:`\\b0[xX]((${n})\\.?|(${n})?\\.(${n}))[pP][+-]?(${e})[fFdD]?\\b`},{begin:"\\b(0|[1-9](_*[0-9])*)[lL]?\\b"},{begin:`\\b0[xX](${n})[lL]?\\b`},{begin:"\\b0(_*[0-7])*[lL]?\\b"},{begin:"\\b0[bB][01](_*[01])*[lL]?\\b"}],relevance:0};function i(o){const s={keyword:"abstract as val var vararg get set class object open private protected public noinline crossinline dynamic final enum if else do while for when throw try catch finally import package is in fun override companion reified inline lateinit init interface annotation data sealed internal infix operator out by constructor super tailrec where const inner suspend typealias external expect actual",built_in:"Byte Short Char Int Long Boolean Float Double Void Unit Nothing",literal:"true false null"},l={className:"keyword",begin:/\b(break|continue|return|this)\b/,starts:{contains:[{className:"symbol",begin:/@\w+/}]}},c={className:"symbol",begin:o.UNDERSCORE_IDENT_RE+"@"},d={className:"subst",begin:/\$\{/,end:/\}/,contains:[o.C_NUMBER_MODE]},u={className:"variable",begin:"\\$"+o.UNDERSCORE_IDENT_RE},h={className:"string",variants:[{begin:'"""',end:'"""(?=[^"])',contains:[u,d]},{begin:"'",end:"'",illegal:/\n/,contains:[o.BACKSLASH_ESCAPE]},{begin:'"',end:'"',illegal:/\n/,contains:[o.BACKSLASH_ESCAPE,u,d]}]};d.contains.push(h);const f={className:"meta",begin:"@(?:file|property|field|get|set|receiver|param|setparam|delegate)\\s*:(?:\\s*"+o.UNDERSCORE_IDENT_RE+")?"},p={className:"meta",begin:"@"+o.UNDERSCORE_IDENT_RE,contains:[{begin:/\(/,end:/\)/,contains:[o.inherit(h,{className:"string"}),"self"]}]},w=a,g=o.COMMENT("/\\*","\\*/",{contains:[o.C_BLOCK_COMMENT_MODE]}),v={variants:[{className:"type",begin:o.UNDERSCORE_IDENT_RE},{begin:/\(/,end:/\)/,contains:[]}]},m=v;return m.variants[1].contains=[v],v.variants[1].contains=[m],{name:"Kotlin",aliases:["kt","kts"],keywords:s,contains:[o.COMMENT("/\\*\\*","\\*/",{relevance:0,contains:[{className:"doctag",begin:"@[A-Za-z]+"}]}),o.C_LINE_COMMENT_MODE,g,l,c,f,p,{className:"function",beginKeywords:"fun",end:"[(]|$",returnBegin:!0,excludeEnd:!0,keywords:s,relevance:5,contains:[{begin:o.UNDERSCORE_IDENT_RE+"\\s*\\(",returnBegin:!0,relevance:0,contains:[o.UNDERSCORE_TITLE_MODE]},{className:"type",begin:/</,end:/>/,keywords:"reified",relevance:0},{className:"params",begin:/\(/,end:/\)/,endsParent:!0,keywords:s,relevance:0,contains:[{begin:/:/,end:/[=,\/]/,endsWithParent:!0,contains:[v,o.C_LINE_COMMENT_MODE,g],relevance:0},o.C_LINE_COMMENT_MODE,g,f,p,h,o.C_NUMBER_MODE]},g]},{begin:[/class|interface|trait/,/\s+/,o.UNDERSCORE_IDENT_RE],beginScope:{3:"title.class"},keywords:"class interface trait",end:/[:\{(]|$/,excludeEnd:!0,illegal:"extends implements",contains:[{beginKeywords:"public protected internal private constructor"},o.UNDERSCORE_TITLE_MODE,{className:"type",begin:/</,end:/>/,excludeBegin:!0,excludeEnd:!0,relevance:0},{className:"type",begin:/[,:]\s*/,end:/[<\(,){\s]|$/,excludeBegin:!0,returnEnd:!0},f,p]},h,{className:"meta",begin:"^#!/usr/bin/env",end:"$",illegal:`
8
8
  `},w]}}return qc=i,qc}var Kc,Wh;function eS(){if(Wh)return Kc;Wh=1;const e=u=>({IMPORTANT:{scope:"meta",begin:"!important"},BLOCK_COMMENT:u.C_BLOCK_COMMENT_MODE,HEXCOLOR:{scope:"number",begin:/#(([0-9a-fA-F]{3,4})|(([0-9a-fA-F]{2}){3,4}))\b/},FUNCTION_DISPATCH:{className:"built_in",begin:/[\w-]+(?=\()/},ATTRIBUTE_SELECTOR_MODE:{scope:"selector-attr",begin:/\[/,end:/\]/,illegal:"$",contains:[u.APOS_STRING_MODE,u.QUOTE_STRING_MODE]},CSS_NUMBER_MODE:{scope:"number",begin:u.NUMBER_RE+"(%|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc|px|deg|grad|rad|turn|s|ms|Hz|kHz|dpi|dpcm|dppx)?",relevance:0},CSS_VARIABLE:{className:"attr",begin:/--[A-Za-z_][A-Za-z0-9_-]*/}}),t=["a","abbr","address","article","aside","audio","b","blockquote","body","button","canvas","caption","cite","code","dd","del","details","dfn","div","dl","dt","em","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","header","hgroup","html","i","iframe","img","input","ins","kbd","label","legend","li","main","mark","menu","nav","object","ol","optgroup","option","p","picture","q","quote","samp","section","select","source","span","strong","summary","sup","table","tbody","td","textarea","tfoot","th","thead","time","tr","ul","var","video"],n=["defs","g","marker","mask","pattern","svg","switch","symbol","feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feFlood","feGaussianBlur","feImage","feMerge","feMorphology","feOffset","feSpecularLighting","feTile","feTurbulence","linearGradient","radialGradient","stop","circle","ellipse","image","line","path","polygon","polyline","rect","text","use","textPath","tspan","foreignObject","clipPath"],a=[...t,...n],i=["any-hover","any-pointer","aspect-ratio","color","color-gamut","color-index","device-aspect-ratio","device-height","device-width","display-mode","forced-colors","grid","height","hover","inverted-colors","monochrome","orientation","overflow-block","overflow-inline","pointer","prefers-color-scheme","prefers-contrast","prefers-reduced-motion","prefers-reduced-transparency","resolution","scan","scripting","update","width","min-width","max-width","min-height","max-height"].sort().reverse(),o=["active","any-link","blank","checked","current","default","defined","dir","disabled","drop","empty","enabled","first","first-child","first-of-type","fullscreen","future","focus","focus-visible","focus-within","has","host","host-context","hover","indeterminate","in-range","invalid","is","lang","last-child","last-of-type","left","link","local-link","not","nth-child","nth-col","nth-last-child","nth-last-col","nth-last-of-type","nth-of-type","only-child","only-of-type","optional","out-of-range","past","placeholder-shown","read-only","read-write","required","right","root","scope","target","target-within","user-invalid","valid","visited","where"].sort().reverse(),s=["after","backdrop","before","cue","cue-region","first-letter","first-line","grammar-error","marker","part","placeholder","selection","slotted","spelling-error"].sort().reverse(),l=["accent-color","align-content","align-items","align-self","alignment-baseline","all","anchor-name","animation","animation-composition","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-range","animation-range-end","animation-range-start","animation-timeline","animation-timing-function","appearance","aspect-ratio","backdrop-filter","backface-visibility","background","background-attachment","background-blend-mode","background-clip","background-color","background-image","background-origin","background-position","background-position-x","background-position-y","background-repeat","background-size","baseline-shift","block-size","border","border-block","border-block-color","border-block-end","border-block-end-color","border-block-end-style","border-block-end-width","border-block-start","border-block-start-color","border-block-start-style","border-block-start-width","border-block-style","border-block-width","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-style","border-bottom-width","border-collapse","border-color","border-end-end-radius","border-end-start-radius","border-image","border-image-outset","border-image-repeat","border-image-slice","border-image-source","border-image-width","border-inline","border-inline-color","border-inline-end","border-inline-end-color","border-inline-end-style","border-inline-end-width","border-inline-start","border-inline-start-color","border-inline-start-style","border-inline-start-width","border-inline-style","border-inline-width","border-left","border-left-color","border-left-style","border-left-width","border-radius","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-start-end-radius","border-start-start-radius","border-style","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-style","border-top-width","border-width","bottom","box-align","box-decoration-break","box-direction","box-flex","box-flex-group","box-lines","box-ordinal-group","box-orient","box-pack","box-shadow","box-sizing","break-after","break-before","break-inside","caption-side","caret-color","clear","clip","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-profile","color-rendering","color-scheme","column-count","column-fill","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","column-span","column-width","columns","contain","contain-intrinsic-block-size","contain-intrinsic-height","contain-intrinsic-inline-size","contain-intrinsic-size","contain-intrinsic-width","container","container-name","container-type","content","content-visibility","counter-increment","counter-reset","counter-set","cue","cue-after","cue-before","cursor","cx","cy","direction","display","dominant-baseline","empty-cells","enable-background","field-sizing","fill","fill-opacity","fill-rule","filter","flex","flex-basis","flex-direction","flex-flow","flex-grow","flex-shrink","flex-wrap","float","flood-color","flood-opacity","flow","font","font-display","font-family","font-feature-settings","font-kerning","font-language-override","font-optical-sizing","font-palette","font-size","font-size-adjust","font-smooth","font-smoothing","font-stretch","font-style","font-synthesis","font-synthesis-position","font-synthesis-small-caps","font-synthesis-style","font-synthesis-weight","font-variant","font-variant-alternates","font-variant-caps","font-variant-east-asian","font-variant-emoji","font-variant-ligatures","font-variant-numeric","font-variant-position","font-variation-settings","font-weight","forced-color-adjust","gap","glyph-orientation-horizontal","glyph-orientation-vertical","grid","grid-area","grid-auto-columns","grid-auto-flow","grid-auto-rows","grid-column","grid-column-end","grid-column-start","grid-gap","grid-row","grid-row-end","grid-row-start","grid-template","grid-template-areas","grid-template-columns","grid-template-rows","hanging-punctuation","height","hyphenate-character","hyphenate-limit-chars","hyphens","icon","image-orientation","image-rendering","image-resolution","ime-mode","initial-letter","initial-letter-align","inline-size","inset","inset-area","inset-block","inset-block-end","inset-block-start","inset-inline","inset-inline-end","inset-inline-start","isolation","justify-content","justify-items","justify-self","kerning","left","letter-spacing","lighting-color","line-break","line-height","line-height-step","list-style","list-style-image","list-style-position","list-style-type","margin","margin-block","margin-block-end","margin-block-start","margin-bottom","margin-inline","margin-inline-end","margin-inline-start","margin-left","margin-right","margin-top","margin-trim","marker","marker-end","marker-mid","marker-start","marks","mask","mask-border","mask-border-mode","mask-border-outset","mask-border-repeat","mask-border-slice","mask-border-source","mask-border-width","mask-clip","mask-composite","mask-image","mask-mode","mask-origin","mask-position","mask-repeat","mask-size","mask-type","masonry-auto-flow","math-depth","math-shift","math-style","max-block-size","max-height","max-inline-size","max-width","min-block-size","min-height","min-inline-size","min-width","mix-blend-mode","nav-down","nav-index","nav-left","nav-right","nav-up","none","normal","object-fit","object-position","offset","offset-anchor","offset-distance","offset-path","offset-position","offset-rotate","opacity","order","orphans","outline","outline-color","outline-offset","outline-style","outline-width","overflow","overflow-anchor","overflow-block","overflow-clip-margin","overflow-inline","overflow-wrap","overflow-x","overflow-y","overlay","overscroll-behavior","overscroll-behavior-block","overscroll-behavior-inline","overscroll-behavior-x","overscroll-behavior-y","padding","padding-block","padding-block-end","padding-block-start","padding-bottom","padding-inline","padding-inline-end","padding-inline-start","padding-left","padding-right","padding-top","page","page-break-after","page-break-before","page-break-inside","paint-order","pause","pause-after","pause-before","perspective","perspective-origin","place-content","place-items","place-self","pointer-events","position","position-anchor","position-visibility","print-color-adjust","quotes","r","resize","rest","rest-after","rest-before","right","rotate","row-gap","ruby-align","ruby-position","scale","scroll-behavior","scroll-margin","scroll-margin-block","scroll-margin-block-end","scroll-margin-block-start","scroll-margin-bottom","scroll-margin-inline","scroll-margin-inline-end","scroll-margin-inline-start","scroll-margin-left","scroll-margin-right","scroll-margin-top","scroll-padding","scroll-padding-block","scroll-padding-block-end","scroll-padding-block-start","scroll-padding-bottom","scroll-padding-inline","scroll-padding-inline-end","scroll-padding-inline-start","scroll-padding-left","scroll-padding-right","scroll-padding-top","scroll-snap-align","scroll-snap-stop","scroll-snap-type","scroll-timeline","scroll-timeline-axis","scroll-timeline-name","scrollbar-color","scrollbar-gutter","scrollbar-width","shape-image-threshold","shape-margin","shape-outside","shape-rendering","speak","speak-as","src","stop-color","stop-opacity","stroke","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","tab-size","table-layout","text-align","text-align-all","text-align-last","text-anchor","text-combine-upright","text-decoration","text-decoration-color","text-decoration-line","text-decoration-skip","text-decoration-skip-ink","text-decoration-style","text-decoration-thickness","text-emphasis","text-emphasis-color","text-emphasis-position","text-emphasis-style","text-indent","text-justify","text-orientation","text-overflow","text-rendering","text-shadow","text-size-adjust","text-transform","text-underline-offset","text-underline-position","text-wrap","text-wrap-mode","text-wrap-style","timeline-scope","top","touch-action","transform","transform-box","transform-origin","transform-style","transition","transition-behavior","transition-delay","transition-duration","transition-property","transition-timing-function","translate","unicode-bidi","user-modify","user-select","vector-effect","vertical-align","view-timeline","view-timeline-axis","view-timeline-inset","view-timeline-name","view-transition-name","visibility","voice-balance","voice-duration","voice-family","voice-pitch","voice-range","voice-rate","voice-stress","voice-volume","white-space","white-space-collapse","widows","width","will-change","word-break","word-spacing","word-wrap","writing-mode","x","y","z-index","zoom"].sort().reverse(),c=o.concat(s).sort().reverse();function d(u){const h=e(u),f=c,p="and or not only",w="[\\w-]+",g="("+w+"|@\\{"+w+"\\})",v=[],m=[],b=function(L){return{className:"string",begin:"~?"+L+".*?"+L}},y=function(L,q,X){return{className:L,begin:q,relevance:X}},_={$pattern:/[a-z-]+/,keyword:p,attribute:i.join(" ")},S={begin:"\\(",end:"\\)",contains:m,keywords:_,relevance:0};m.push(u.C_LINE_COMMENT_MODE,u.C_BLOCK_COMMENT_MODE,b("'"),b('"'),h.CSS_NUMBER_MODE,{begin:"(url|data-uri)\\(",starts:{className:"string",end:"[\\)\\n]",excludeEnd:!0}},h.HEXCOLOR,S,y("variable","@@?"+w,10),y("variable","@\\{"+w+"\\}"),y("built_in","~?`[^`]*?`"),{className:"attribute",begin:w+"\\s*:",end:":",returnBegin:!0,excludeEnd:!0},h.IMPORTANT,{beginKeywords:"and not"},h.FUNCTION_DISPATCH);const A=m.concat({begin:/\{/,end:/\}/,contains:v}),T={beginKeywords:"when",endsWithParent:!0,contains:[{beginKeywords:"and not"}].concat(m)},E={begin:g+"\\s*:",returnBegin:!0,end:/[;}]/,relevance:0,contains:[{begin:/-(webkit|moz|ms|o)-/},h.CSS_VARIABLE,{className:"attribute",begin:"\\b("+l.join("|")+")\\b",end:/(?=:)/,starts:{endsWithParent:!0,illegal:"[<=$]",relevance:0,contains:m}}]},k={className:"keyword",begin:"@(import|media|charset|font-face|(-[a-z]+-)?keyframes|supports|document|namespace|page|viewport|host)\\b",starts:{end:"[;{}]",keywords:_,returnEnd:!0,contains:m,relevance:0}},N={className:"variable",variants:[{begin:"@"+w+"\\s*:",relevance:15},{begin:"@"+w}],starts:{end:"[;}]",returnEnd:!0,contains:A}},D={variants:[{begin:"[\\.#:&\\[>]",end:"[;{}]"},{begin:g,end:/\{/}],returnBegin:!0,returnEnd:!0,illegal:`[<='$"]`,relevance:0,contains:[u.C_LINE_COMMENT_MODE,u.C_BLOCK_COMMENT_MODE,T,y("keyword","all\\b"),y("variable","@\\{"+w+"\\}"),{begin:"\\b("+a.join("|")+")\\b",className:"selector-tag"},h.CSS_NUMBER_MODE,y("selector-tag",g,0),y("selector-id","#"+g),y("selector-class","\\."+g,0),y("selector-tag","&",0),h.ATTRIBUTE_SELECTOR_MODE,{className:"selector-pseudo",begin:":("+o.join("|")+")"},{className:"selector-pseudo",begin:":(:)?("+s.join("|")+")"},{begin:/\(/,end:/\)/,relevance:0,contains:A},{begin:"!important"},h.FUNCTION_DISPATCH]},U={begin:w+`:(:)?(${f.join("|")})`,returnBegin:!0,contains:[D]};return v.push(u.C_LINE_COMMENT_MODE,u.C_BLOCK_COMMENT_MODE,k,N,U,E,D,T,h.FUNCTION_DISPATCH),{name:"Less",case_insensitive:!0,illegal:`[=>'/<($"]`,contains:v}}return Kc=d,Kc}var Wc,Yh;function tS(){if(Yh)return Wc;Yh=1;function e(t){const n="\\[=*\\[",a="\\]=*\\]",i={begin:n,end:a,contains:["self"]},o=[t.COMMENT("--(?!"+n+")","$"),t.COMMENT("--"+n,a,{contains:[i],relevance:10})];return{name:"Lua",aliases:["pluto"],keywords:{$pattern:t.UNDERSCORE_IDENT_RE,literal:"true false nil",keyword:"and break do else elseif end for goto if in local not or repeat return then until while",built_in:"_G _ENV _VERSION __index __newindex __mode __call __metatable __tostring __len __gc __add __sub __mul __div __mod __pow __concat __unm __eq __lt __le assert collectgarbage dofile error getfenv getmetatable ipairs load loadfile loadstring module next pairs pcall print rawequal rawget rawset require select setfenv setmetatable tonumber tostring type unpack xpcall arg self coroutine resume yield status wrap create running debug getupvalue debug sethook getmetatable gethook setmetatable setlocal traceback setfenv getinfo setupvalue getlocal getregistry getfenv io lines write close flush open output type read stderr stdin input stdout popen tmpfile math log max acos huge ldexp pi cos tanh pow deg tan cosh sinh random randomseed frexp ceil floor rad abs sqrt modf asin min mod fmod log10 atan2 exp sin atan os exit setlocale date getenv difftime remove time clock tmpname rename execute package preload loadlib loaded loaders cpath config path seeall string sub upper len gfind rep find match char dump gmatch reverse byte format gsub lower table setn insert getn foreachi maxn foreach concat sort remove"},contains:o.concat([{className:"function",beginKeywords:"function",end:"\\)",contains:[t.inherit(t.TITLE_MODE,{begin:"([_a-zA-Z]\\w*\\.)*([_a-zA-Z]\\w*:)?[_a-zA-Z]\\w*"}),{className:"params",begin:"\\(",endsWithParent:!0,contains:o}].concat(o)},t.C_NUMBER_MODE,t.APOS_STRING_MODE,t.QUOTE_STRING_MODE,{className:"string",begin:n,end:a,contains:[i],relevance:5}])}}return Wc=e,Wc}var Yc,jh;function nS(){if(jh)return Yc;jh=1;function e(t){const n={className:"variable",variants:[{begin:"\\$\\("+t.UNDERSCORE_IDENT_RE+"\\)",contains:[t.BACKSLASH_ESCAPE]},{begin:/\$[@%<?\^\+\*]/}]},a={className:"string",begin:/"/,end:/"/,contains:[t.BACKSLASH_ESCAPE,n]},i={className:"variable",begin:/\$\([\w-]+\s/,end:/\)/,keywords:{built_in:"subst patsubst strip findstring filter filter-out sort word wordlist firstword lastword dir notdir suffix basename addsuffix addprefix join wildcard realpath abspath error warning shell origin flavor foreach if or and call eval file value"},contains:[n,a]},o={begin:"^"+t.UNDERSCORE_IDENT_RE+"\\s*(?=[:+?]?=)"},s={className:"meta",begin:/^\.PHONY:/,end:/$/,keywords:{$pattern:/[\.\w]+/,keyword:".PHONY"}},l={className:"section",begin:/^[^\s]+:/,end:/$/,contains:[n]};return{name:"Makefile",aliases:["mk","mak","make"],keywords:{$pattern:/[\w-]+/,keyword:"define endef undefine ifdef ifndef ifeq ifneq else endif include -include sinclude override export unexport private vpath"},contains:[t.HASH_COMMENT_MODE,n,a,i,o,s,l]}}return Yc=e,Yc}var jc,Xh;function rS(){if(Xh)return jc;Xh=1;function e(t){const n=t.regex,a=["abs","accept","alarm","and","atan2","bind","binmode","bless","break","caller","chdir","chmod","chomp","chop","chown","chr","chroot","class","close","closedir","connect","continue","cos","crypt","dbmclose","dbmopen","defined","delete","die","do","dump","each","else","elsif","endgrent","endhostent","endnetent","endprotoent","endpwent","endservent","eof","eval","exec","exists","exit","exp","fcntl","field","fileno","flock","for","foreach","fork","format","formline","getc","getgrent","getgrgid","getgrnam","gethostbyaddr","gethostbyname","gethostent","getlogin","getnetbyaddr","getnetbyname","getnetent","getpeername","getpgrp","getpriority","getprotobyname","getprotobynumber","getprotoent","getpwent","getpwnam","getpwuid","getservbyname","getservbyport","getservent","getsockname","getsockopt","given","glob","gmtime","goto","grep","gt","hex","if","index","int","ioctl","join","keys","kill","last","lc","lcfirst","length","link","listen","local","localtime","log","lstat","lt","ma","map","method","mkdir","msgctl","msgget","msgrcv","msgsnd","my","ne","next","no","not","oct","open","opendir","or","ord","our","pack","package","pipe","pop","pos","print","printf","prototype","push","q|0","qq","quotemeta","qw","qx","rand","read","readdir","readline","readlink","readpipe","recv","redo","ref","rename","require","reset","return","reverse","rewinddir","rindex","rmdir","say","scalar","seek","seekdir","select","semctl","semget","semop","send","setgrent","sethostent","setnetent","setpgrp","setpriority","setprotoent","setpwent","setservent","setsockopt","shift","shmctl","shmget","shmread","shmwrite","shutdown","sin","sleep","socket","socketpair","sort","splice","split","sprintf","sqrt","srand","stat","state","study","sub","substr","symlink","syscall","sysopen","sysread","sysseek","system","syswrite","tell","telldir","tie","tied","time","times","tr","truncate","uc","ucfirst","umask","undef","unless","unlink","unpack","unshift","untie","until","use","utime","values","vec","wait","waitpid","wantarray","warn","when","while","write","x|0","xor","y|0"],i=/[dualxmsipngr]{0,12}/,o={$pattern:/[\w.]+/,keyword:a.join(" ")},s={className:"subst",begin:"[$@]\\{",end:"\\}",keywords:o},l={begin:/->\{/,end:/\}/},c={scope:"attr",match:/\s+:\s*\w+(\s*\(.*?\))?/},d={scope:"variable",variants:[{begin:/\$\d/},{begin:n.concat(/[$%@](?!")(\^\w\b|#\w+(::\w+)*|\{\w+\}|\w+(::\w*)*)/,"(?![A-Za-z])(?![@$%])")},{begin:/[$%@](?!")[^\s\w{=]|\$=/,relevance:0}],contains:[c]},u={className:"number",variants:[{match:/0?\.[0-9][0-9_]+\b/},{match:/\bv?(0|[1-9][0-9_]*(\.[0-9_]+)?|[1-9][0-9_]*)\b/},{match:/\b0[0-7][0-7_]*\b/},{match:/\b0x[0-9a-fA-F][0-9a-fA-F_]*\b/},{match:/\b0b[0-1][0-1_]*\b/}],relevance:0},h=[t.BACKSLASH_ESCAPE,s,d],f=[/!/,/\//,/\|/,/\?/,/'/,/"/,/#/],p=(v,m,b="\\1")=>{const y=b==="\\1"?b:n.concat(b,m);return n.concat(n.concat("(?:",v,")"),m,/(?:\\.|[^\\\/])*?/,y,/(?:\\.|[^\\\/])*?/,b,i)},w=(v,m,b)=>n.concat(n.concat("(?:",v,")"),m,/(?:\\.|[^\\\/])*?/,b,i),g=[d,t.HASH_COMMENT_MODE,t.COMMENT(/^=\w/,/=cut/,{endsWithParent:!0}),l,{className:"string",contains:h,variants:[{begin:"q[qwxr]?\\s*\\(",end:"\\)",relevance:5},{begin:"q[qwxr]?\\s*\\[",end:"\\]",relevance:5},{begin:"q[qwxr]?\\s*\\{",end:"\\}",relevance:5},{begin:"q[qwxr]?\\s*\\|",end:"\\|",relevance:5},{begin:"q[qwxr]?\\s*<",end:">",relevance:5},{begin:"qw\\s+q",end:"q",relevance:5},{begin:"'",end:"'",contains:[t.BACKSLASH_ESCAPE]},{begin:'"',end:'"'},{begin:"`",end:"`",contains:[t.BACKSLASH_ESCAPE]},{begin:/\{\w+\}/,relevance:0},{begin:"-?\\w+\\s*=>",relevance:0}]},u,{begin:"(\\/\\/|"+t.RE_STARTERS_RE+"|\\b(split|return|print|reverse|grep)\\b)\\s*",keywords:"split return print reverse grep",relevance:0,contains:[t.HASH_COMMENT_MODE,{className:"regexp",variants:[{begin:p("s|tr|y",n.either(...f,{capture:!0}))},{begin:p("s|tr|y","\\(","\\)")},{begin:p("s|tr|y","\\[","\\]")},{begin:p("s|tr|y","\\{","\\}")}],relevance:2},{className:"regexp",variants:[{begin:/(m|qr)\/\//,relevance:0},{begin:w("(?:m|qr)?",/\//,/\//)},{begin:w("m|qr",n.either(...f,{capture:!0}),/\1/)},{begin:w("m|qr",/\(/,/\)/)},{begin:w("m|qr",/\[/,/\]/)},{begin:w("m|qr",/\{/,/\}/)}]}]},{className:"function",beginKeywords:"sub method",end:"(\\s*\\(.*?\\))?[;{]",excludeEnd:!0,relevance:5,contains:[t.TITLE_MODE,c]},{className:"class",beginKeywords:"class",end:"[;{]",excludeEnd:!0,relevance:5,contains:[t.TITLE_MODE,c,u]},{begin:"-\\w\\b",relevance:0},{begin:"^__DATA__$",end:"^__END__$",subLanguage:"mojolicious",contains:[{begin:"^@@.*",end:"$",className:"comment"}]}];return s.contains=g,l.contains=g,{name:"Perl",aliases:["pl","pm"],keywords:o,contains:g}}return jc=e,jc}var Xc,Zh;function aS(){if(Zh)return Xc;Zh=1;function e(t){const n={className:"built_in",begin:"\\b(AV|CA|CF|CG|CI|CL|CM|CN|CT|MK|MP|MTK|MTL|NS|SCN|SK|UI|WK|XC)\\w+"},a=/[a-zA-Z@][a-zA-Z0-9_]*/,c={"variable.language":["this","super"],$pattern:a,keyword:["while","export","sizeof","typedef","const","struct","for","union","volatile","static","mutable","if","do","return","goto","enum","else","break","extern","asm","case","default","register","explicit","typename","switch","continue","inline","readonly","assign","readwrite","self","@synchronized","id","typeof","nonatomic","IBOutlet","IBAction","strong","weak","copy","in","out","inout","bycopy","byref","oneway","__strong","__weak","__block","__autoreleasing","@private","@protected","@public","@try","@property","@end","@throw","@catch","@finally","@autoreleasepool","@synthesize","@dynamic","@selector","@optional","@required","@encode","@package","@import","@defs","@compatibility_alias","__bridge","__bridge_transfer","__bridge_retained","__bridge_retain","__covariant","__contravariant","__kindof","_Nonnull","_Nullable","_Null_unspecified","__FUNCTION__","__PRETTY_FUNCTION__","__attribute__","getter","setter","retain","unsafe_unretained","nonnull","nullable","null_unspecified","null_resettable","class","instancetype","NS_DESIGNATED_INITIALIZER","NS_UNAVAILABLE","NS_REQUIRES_SUPER","NS_RETURNS_INNER_POINTER","NS_INLINE","NS_AVAILABLE","NS_DEPRECATED","NS_ENUM","NS_OPTIONS","NS_SWIFT_UNAVAILABLE","NS_ASSUME_NONNULL_BEGIN","NS_ASSUME_NONNULL_END","NS_REFINED_FOR_SWIFT","NS_SWIFT_NAME","NS_SWIFT_NOTHROW","NS_DURING","NS_HANDLER","NS_ENDHANDLER","NS_VALUERETURN","NS_VOIDRETURN"],literal:["false","true","FALSE","TRUE","nil","YES","NO","NULL"],built_in:["dispatch_once_t","dispatch_queue_t","dispatch_sync","dispatch_async","dispatch_once"],type:["int","float","char","unsigned","signed","short","long","double","wchar_t","unichar","void","bool","BOOL","id|0","_Bool"]},d={$pattern:a,keyword:["@interface","@class","@protocol","@implementation"]};return{name:"Objective-C",aliases:["mm","objc","obj-c","obj-c++","objective-c++"],keywords:c,illegal:"</",contains:[n,t.C_LINE_COMMENT_MODE,t.C_BLOCK_COMMENT_MODE,t.C_NUMBER_MODE,t.QUOTE_STRING_MODE,t.APOS_STRING_MODE,{className:"string",variants:[{begin:'@"',end:'"',illegal:"\\n",contains:[t.BACKSLASH_ESCAPE]}]},{className:"meta",begin:/#\s*[a-z]+\b/,end:/$/,keywords:{keyword:"if else elif endif define undef warning error line pragma ifdef ifndef include"},contains:[{begin:/\\\n/,relevance:0},t.inherit(t.QUOTE_STRING_MODE,{className:"string"}),{className:"string",begin:/<.*?>/,end:/$/,illegal:"\\n"},t.C_LINE_COMMENT_MODE,t.C_BLOCK_COMMENT_MODE]},{className:"class",begin:"("+d.keyword.join("|")+")\\b",end:/(\{|$)/,excludeEnd:!0,keywords:d,contains:[t.UNDERSCORE_TITLE_MODE]},{begin:"\\."+t.UNDERSCORE_IDENT_RE,relevance:0}]}}return Xc=e,Xc}var Zc,Jh;function iS(){if(Jh)return Zc;Jh=1;function e(t){const n=t.regex,a=/(?![A-Za-z0-9])(?![$])/,i=n.concat(/[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*/,a),o=n.concat(/(\\?[A-Z][a-z0-9_\x7f-\xff]+|\\?[A-Z]+(?=[A-Z][a-z0-9_\x7f-\xff])){1,}/,a),s=n.concat(/[A-Z]+/,a),l={scope:"variable",match:"\\$+"+i},c={scope:"meta",variants:[{begin:/<\?php/,relevance:10},{begin:/<\?=/},{begin:/<\?/,relevance:.1},{begin:/\?>/}]},d={scope:"subst",variants:[{begin:/\$\w+/},{begin:/\{\$/,end:/\}/}]},u=t.inherit(t.APOS_STRING_MODE,{illegal:null}),h=t.inherit(t.QUOTE_STRING_MODE,{illegal:null,contains:t.QUOTE_STRING_MODE.contains.concat(d)}),f={begin:/<<<[ \t]*(?:(\w+)|"(\w+)")\n/,end:/[ \t]*(\w+)\b/,contains:t.QUOTE_STRING_MODE.contains.concat(d),"on:begin":(X,$)=>{$.data._beginMatch=X[1]||X[2]},"on:end":(X,$)=>{$.data._beginMatch!==X[1]&&$.ignoreMatch()}},p=t.END_SAME_AS_BEGIN({begin:/<<<[ \t]*'(\w+)'\n/,end:/[ \t]*(\w+)\b/}),w=`[