mirror of
https://github.com/nextcloud/server.git
synced 2026-10-25 12:15:44 +01:00
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
7 lines
41 KiB
JavaScript
7 lines
41 KiB
JavaScript
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=[window.OC.filePath('', '', 'dist/TemplatePicker-CFFGvLh_.chunk.mjs'),window.OC.filePath('', '', 'dist/livePhotoUtils-CVUhgL4S.chunk.mjs'),window.OC.filePath('', '', 'dist/index-D6fZh9CR.chunk.mjs'),window.OC.filePath('', '', 'dist/star-outline-BpDZzOb8.chunk.mjs'),window.OC.filePath('', '', 'dist/index-UXL_i2di.chunk.mjs'),window.OC.filePath('', '', 'dist/AlertCircleOutline-jA3ki2Uu.chunk.mjs'),window.OC.filePath('', '', 'dist/TrayArrowDown-vMg8Cl05.chunk.mjs'),window.OC.filePath('', '', 'dist/PencilOutline-C4ZkKkas.chunk.mjs'),window.OC.filePath('', '', 'dist/translations-pLZlvQeM.chunk.mjs'),window.OC.filePath('', '', 'dist/Web-BMG0zIln.chunk.mjs'),window.OC.filePath('', '', 'dist/_l10n-CK24vgHE.chunk.mjs'),window.OC.filePath('', '', 'dist/File-xDTWu8L0.chunk.mjs'),window.OC.filePath('', '', 'dist/Link-CUdpEe-t.chunk.mjs'),window.OC.filePath('', '', 'dist/formatRelative-uuSCBZ1C.chunk.mjs'),window.OC.filePath('', '', 'dist/common-Link-3plNpBrB.chunk.css'),window.OC.filePath('', '', 'dist/ArrowRight-COu6qSN5.chunk.mjs'),window.OC.filePath('', '', 'dist/common-ArrowRight-C_oBIsvc.chunk.css'),window.OC.filePath('', '', 'dist/Check-CEU1oy_I.chunk.mjs'),window.OC.filePath('', '', 'dist/common-Check-BYHcrfvW.chunk.css'),window.OC.filePath('', '', 'dist/NcModal-BxLzaUZK.chunk.mjs'),window.OC.filePath('', '', 'dist/MapMarkerOutline-Ip3bQdll.chunk.mjs'),window.OC.filePath('', '', 'dist/common-NcModal-Cclh_O_-.chunk.css'),window.OC.filePath('', '', 'dist/common-AlertCircleOutline-B7Bbzm8f.chunk.css'),window.OC.filePath('', '', 'dist/cancel-DDzvQ-HX.chunk.mjs'),window.OC.filePath('', '', 'dist/common-cancel-BWNFKLbC.chunk.css'),window.OC.filePath('', '', 'dist/externalStorageUtils-mlnj1LcU.chunk.mjs'),window.OC.filePath('', '', 'dist/dav-BNCa0U-Z.chunk.mjs'),window.OC.filePath('', '', 'dist/Folder-BcToKSIM.chunk.mjs'),window.OC.filePath('', '', 'dist/MenuUp-DiApqAR0.chunk.mjs'),window.OC.filePath('', '', 'dist/common-MenuUp-Don1d5Bd.chunk.css'),window.OC.filePath('', '', 'dist/NcCheckboxRadioSwitch-BgZXg73g.chunk.mjs'),window.OC.filePath('', '', 'dist/common-NcCheckboxRadioSwitch-BAaFbykd.chunk.css'),window.OC.filePath('', '', 'dist/NcHighlight.vue_vue_type_script_lang-CT7Xx-zK.chunk.mjs'),window.OC.filePath('', '', 'dist/NcInputField-wKF2DDSn.chunk.mjs'),window.OC.filePath('', '', 'dist/common-NcInputField-B5YBBomo.chunk.css'),window.OC.filePath('', '', 'dist/index-DHyMMYTN.chunk.mjs'),window.OC.filePath('', '', 'dist/logger-BJoaV_Xz.chunk.mjs'),window.OC.filePath('', '', 'dist/files-TemplatePicker-CIzOjgkv.chunk.css')])))=>i.map(i=>d[i]);
|
|
import{a as w,D as re,e as it,f as I,F as B,k as Q,l as rt,c as O,V as S,m as st}from"./index-D_oRcFiB.chunk.mjs";import{j as nt,a as T,b as Ve,k as ot,r as at,h as Z}from"./dav-BNCa0U-Z.chunk.mjs";import{d as se,i as L,a as ne,l as g,s as oe,c as Le,_ as lt,g as dt}from"./star-outline-BpDZzOb8.chunk.mjs";import{d as xe,i as Fe,a as x,n as ct}from"./livePhotoUtils-CVUhgL4S.chunk.mjs";import{t as n,a as N,g as ft,b as ut}from"./translations-pLZlvQeM.chunk.mjs";import{i as pt,c as V}from"./index-DHyMMYTN.chunk.mjs";import{d as Me,b as h,e as _,D as mt}from"./index-UXL_i2di.chunk.mjs";import{e as v,s as y}from"./index-D6fZh9CR.chunk.mjs";import{P as $}from"./index-GqSDnl3c.chunk.mjs";import{f as Ae,a as Ee,b as ae,c as wt,V as ht,u as vt,g as Pe,d as Re,F as Se,e as De,h as E,i as Te,j as Ne,s as ue,k as gt,l as yt,r as Ct,m as Ht}from"./DialogConfirmFileHidden-Cse3N_TB.chunk.mjs";import{l as c}from"./logger-BJoaV_Xz.chunk.mjs";import{P as u,F as p,b as le}from"./externalStorageUtils-mlnj1LcU.chunk.mjs";import{s as bt,a as Vt}from"./history-D6oDzA1t.chunk.mjs";import{p as b}from"./index-BEQt8xTG.chunk.mjs";import{i as Lt,a as xt,n as de,h as Ft,b as Mt,c as At,d as Et}from"./hashUtils-BlT4ancg.chunk.mjs";import{S as _e}from"./star-Dwot5QHD.chunk.mjs";import{g as Pt}from"./neighbours-DZHrojkH.chunk.mjs";import{a as ce}from"./Folder-BcToKSIM.chunk.mjs";import{e as ke,C as z,q as j,v as Ie,D as Be,o as M,f as k,G as Oe,H as $e,p as G,w as K,z as Ue,t as Ze,u as A,k as Rt,h as St,b as We,n as Dt,a as Tt,ac as Nt,d as _t}from"./PencilOutline-C4ZkKkas.chunk.mjs";import"./NcActionButton-BvGszxyz.chunk.mjs";import{N as kt}from"./ArrowRight-COu6qSN5.chunk.mjs";import"./NcTextArea-DqJyrYiA.chunk.mjs";import"./index-DKxdOjOX.chunk.mjs";import"./NcActionCheckbox-Co6zJ6Hf.chunk.mjs";import"./Web-BMG0zIln.chunk.mjs";import"./NcActionInput-CEGC-U_1.chunk.mjs";import"./NcActionLink-DvEArNRM.chunk.mjs";import"./NcActionRouter-X9XmAaxE.chunk.mjs";import"./NcModal-BxLzaUZK.chunk.mjs";import"./NcActionText-BWO7oBCL.chunk.mjs";import"./NcAppContent-WuNJWVSm.chunk.mjs";import{N as qe}from"./Link-CUdpEe-t.chunk.mjs";import"./Check-CEU1oy_I.chunk.mjs";import"./MapMarkerOutline-Ip3bQdll.chunk.mjs";import"./NcAvatar-RT0QIft7.chunk.mjs";import"./information-outline-CUvhpCqf.chunk.mjs";import"./NcCheckboxRadioSwitch-BgZXg73g.chunk.mjs";import"./NcChip-cyGdYKyD.chunk.mjs";import"./index-JFK8X6kZ.chunk.mjs";import"./NcContent-CIX5Zf8v.chunk.mjs";import"./statusOptionsService-ChGCgh7H.chunk.mjs";import"./NcDashboardWidget-a5Hnwaiz.chunk.mjs";import{N as It}from"./zh-TW-cfs3YkM4.chunk.mjs";import"./NcDateTimePickerNative-Df5ELjq1.chunk.mjs";import"./AlertCircleOutline-jA3ki2Uu.chunk.mjs";import"./index-BJ-wBpMs.chunk.mjs";import"./NcEmojiPicker-D7HkUvA6.chunk.mjs";import"./MenuUp-DiApqAR0.chunk.mjs";import"./NcUploadPicker-Cla8uJJV.chunk.mjs";import"./NcFormBox-BeUjBkqH.chunk.mjs";import"./formatRelative-uuSCBZ1C.chunk.mjs";import"./NcRichText-BQgo5yW3.chunk.mjs";import"./LoginFlowDone-Bb0f_UR0.chunk.mjs";import"./CogOutline-u_yQZWjI.chunk.mjs";import{C as Bt}from"./folder-multiple-outline-BhxDilQg.chunk.mjs";import"./TrayArrowDown-vMg8Cl05.chunk.mjs";import"./NcInputField-wKF2DDSn.chunk.mjs";import"./cancel-DDzvQ-HX.chunk.mjs";import"./NcPasswordField-DgVaELPd.chunk.mjs";import"./NcProfileHoverCard-RZrrM7IM.chunk.mjs";import"./NcProgressBar-Dixhlp8F.chunk.mjs";import"./index-BueGcLEj.chunk.mjs";import"./index-DDsCA2or.chunk.mjs";import"./NcHighlight.vue_vue_type_script_lang-CT7Xx-zK.chunk.mjs";import"./NcSelectTags-DyK-4P4O.chunk.mjs";import"./NcSettingsSection-DeN6Lle1.chunk.mjs";import"./NcUserStatusIcon-CWV4DI9J.chunk.mjs";import"./emoji-Cbe4MxhY.chunk.mjs";import"./colors-B1T-jIOW.chunk.mjs";import"./File-xDTWu8L0.chunk.mjs";import"./_l10n-CK24vgHE.chunk.mjs";import"./autolink-D1sObkXs.chunk.mjs";const Ot='<svg xmlns="http://www.w3.org/2000/svg" id="mdi-autorenew" viewBox="0 0 24 24"><path d="M12,6V9L16,5L12,1V4A8,8 0 0,0 4,12C4,13.57 4.46,15.03 5.24,16.26L6.7,14.8C6.25,13.97 6,13 6,12A6,6 0 0,1 12,6M18.76,7.74L17.3,9.2C17.74,10.04 18,11 18,12A6,6 0 0,1 12,18V15L8,19L12,23V20A8,8 0 0,0 20,12C20,10.43 19.54,8.97 18.76,7.74Z" /></svg>',Ye=new $({concurrency:5});function Qe(e,t){return V.post(se("/apps/files/api/v1/convert"),{fileId:e,targetMimeType:t})}async function $t(e,t){const i=e.map(s=>Ye.add(()=>Qe(s,t))),r=Me(n("files","Converting files …"));try{const s=await Promise.allSettled(i),o=s.filter(l=>l.status==="rejected");if(o.length>0){const l=o.map(m=>m.reason?.response?.data?.ocs?.meta?.message);if(c.error("Failed to convert files",{fileIds:e,targetMimeType:t,messages:l}),new Set(l).size===1&&typeof l[0]=="string"){h(n("files","Failed to convert files: {message}",{message:l[0]}));return}if(o.length===e.length){h(n("files","All files failed to be converted"));return}if(o.length===1&&l[0]){h(n("files","One file could not be converted: {message}",{message:l[0]}));return}h(N("files","%n file could not be converted","%n files could not be converted",o.length)),_(N("files","%n file converted","%n files converted",e.length-o.length));return}_(n("files","Files converted"));const d=window.OCP.Files.Router.query.dir,f=s.filter(l=>l.status==="fulfilled").map(l=>l.value.data.ocs.data.path).filter(l=>l.startsWith(d));c.debug("Files to fetch",{newPaths:f}),(await Promise.all(f.map(l=>Ae(l)))).forEach(l=>v("files:node:created",l));const a=s[0].value.data.ocs.data.fileId;window.OCP.Files.Router.goToRoute(null,{...window.OCP.Files.Router.params,fileid:a.toString()},window.OCP.Files.Router.query)}catch(s){h(n("files","Failed to convert files")),c.error("Failed to convert files",{fileIds:e,targetMimeType:t,error:s})}finally{r.hideToast()}}async function Ut(e,t){const i=Me(n("files","Converting file …"));try{const r=await Ye.add(()=>Qe(e,t));_(n("files","File successfully converted"));const s=await Ae(r.data.ocs.data.path);v("files:node:created",s);const o=r.data.ocs.data.fileId;window.OCP.Files.Router.goToRoute(null,{...window.OCP.Files.Router.params,fileid:o.toString()},window.OCP.Files.Router.query)}catch(r){if(pt(r)&&r.response?.data?.ocs?.meta?.message){h(n("files","Failed to convert file: {message}",{message:r.response.data.ocs.meta.message}));return}c.error("Failed to convert file",{fileId:e,targetMimeType:t,error:r}),h(n("files","Failed to convert file"))}finally{i.hideToast()}}const pe="convert";function Zt(){const e=(xe()?.files?.file_conversions??[]).map(({to:t,from:i,displayName:r})=>({id:`convert-${i}-${t}`,displayName:()=>n("files","Save as {displayName}",{displayName:r}),iconSvgInline:()=>Wt(t),enabled:({nodes:s,folder:o})=>L()&&!(o.permissions&u.CREATE)||s.some(d=>(d.permissions&u.READ)===0)?!1:s.every(d=>i===d.mime),async exec({nodes:s}){return s[0]?(Ut(s[0].fileid,t),null):!1},async execBatch({nodes:s}){const o=s.map(d=>d.fileid).filter(Boolean);return $t(o,t),Array(s.length).fill(null)},parent:pe}));w({id:pe,displayName:()=>n("files","Save as …"),iconSvgInline:()=>Ot,enabled:t=>e.some(i=>i.enabled(t)),async exec(){return null},order:25}),e.forEach(w)}function Wt(e){return`<svg width="32" height="32" viewBox="0 0 32 32"
|
|
xmlns="http://www.w3.org/2000/svg">
|
|
<image href="${ne("/core/mimeicon?mime="+encodeURIComponent(e))}" height="32" width="32" />
|
|
</svg>`}const qt='<svg xmlns="http://www.w3.org/2000/svg" id="mdi-close" viewBox="0 0 24 24"><path d="M19,6.41L17.59,5L12,10.59L6.41,5L5,6.41L10.59,12L5,17.59L6.41,19L12,13.41L17.59,19L19,17.59L13.41,12L19,6.41Z" /></svg>',Yt='<svg xmlns="http://www.w3.org/2000/svg" id="mdi-network-off" viewBox="0 0 24 24"><path d="M1,5.27L5,9.27V15A2,2 0 0,0 7,17H11V19H10A1,1 0 0,0 9,20H2V22H9A1,1 0 0,0 10,23H14A1,1 0 0,0 15,22H17.73L19.73,24L21,22.72L2.28,4L1,5.27M15,20A1,1 0 0,0 14,19H13V17.27L15.73,20H15M17.69,16.87L5.13,4.31C5.41,3.55 6.14,3 7,3H17A2,2 0 0,1 19,5V15C19,15.86 18.45,16.59 17.69,16.87M22,20V21.18L20.82,20H22Z" /></svg>',ze=()=>xe()?.files?.undelete===!0;function P(e){return e.every(t=>t.attributes["is-mount-root"]===!0&&t.attributes["mount-type"]==="shared")}function J(e){return e.every(t=>t.attributes["is-mount-root"]===!0&&t.attributes["mount-type"]==="external")}function Qt(e){if(e.length===1)return!1;const t=e.some(r=>P([r])),i=e.some(r=>!P([r]));return t&&i}function zt(e){return!e.some(t=>t.type!==p.File)}function jt(e){return!e.some(t=>t.type!==p.Folder)}function je({nodes:e,view:t}){return P(e)?e.length===1?n("files","Leave this share"):n("files","Leave these shares"):J(e)?e.length===1?n("files","Disconnect storage"):n("files","Disconnect storages"):t.id==="trashbin"||!ze()?n("files","Delete permanently"):Qt(e)?n("files","Delete and unshare"):zt(e)?e.length===1?n("files","Delete file"):n("files","Delete files"):jt(e)?e.length===1?n("files","Delete folder"):n("files","Delete folders"):n("files","Delete")}function me(){return Ee(b).userConfig.show_dialog_deletion!==!1}async function W(e,t){const i=t.id==="trashbin"||!ze()?N("files","You are about to permanently delete {count} item","You are about to permanently delete {count} items",e.length,{count:e.length}):N("files","You are about to delete {count} item","You are about to delete {count} items",e.length,{count:e.length});return new Promise(r=>{window.OC.dialogs.confirmDestructive(i,n("files","Confirm deletion"),{type:window.OC.dialogs.YES_NO_BUTTONS,confirm:je({nodes:e,view:t}),confirmClasses:"error",cancel:n("files","Cancel")},s=>{r(s)})})}async function we(e){await V.delete(e.encodedSource),v("files:node:deleted",e)}const Gt="trashbin",Kt=new $({concurrency:5}),Jt="delete",Xt={id:Jt,displayName:je,iconSvgInline:({nodes:e})=>P(e)?qt:J(e)?Yt:bt,enabled({nodes:e,view:t}){return t.id===Gt&&g("files_trashbin","config",{allow_delete:!0}).allow_delete===!1?!1:e.length>0&&e.map(i=>i.permissions).every(i=>(i&u.DELETE)!==0)},async exec({nodes:e,view:t,trigger:i}){try{let r=!0;return(me()||i==="hotkey")&&(r=await W([e[0]],t)),r===!1?null:(await we(e[0]),!0)}catch(r){return c.error("Error while deleting a file",{error:r,source:e[0].source,node:e[0]}),!1}},async execBatch({nodes:e,view:t}){let i=!0;if(me()?i=await W(e,t):e.length>=5&&!P(e)&&!J(e)&&(i=await W(e,t)),i===!1)return Promise.all(e.map(()=>null));const r=e.map(s=>new Promise(o=>{Kt.add(async()=>{try{await we(s),o(!0)}catch(d){c.error("Error while deleting a file",{error:d,source:s.source,node:s}),o(!1)}})}));return Promise.all(r)},destructive:!0,order:100,hotkey:{description:n("files","Delete"),key:"Delete"}},ei='<svg xmlns="http://www.w3.org/2000/svg" id="mdi-arrow-down" viewBox="0 0 24 24"><path d="M11,4H13V16L18.5,10.5L19.92,11.92L12,19.84L4.08,11.92L5.5,10.5L11,16V4Z" /></svg>',ti={id:"download",default:re.DEFAULT,displayName:()=>n("files","Download"),iconSvgInline:()=>ei,enabled({nodes:e,view:t}){return e.length===0||e.some(i=>!i.isDavResource)||e.length>1&&t.id==="trashbin"?!1:e.every(Lt)},async exec({nodes:e}){try{await ve(e)}catch(t){h(n("files","The requested file is not available.")),c.error("The requested file is not available.",{error:t}),v("files:node:deleted",e[0])}return null},async execBatch({nodes:e,view:t,folder:i}){try{await ve(e)}catch(r){h(n("files","The requested files are not available.")),c.error("The requested files are not available.",{error:r});const s=ri(t,i.path);v("files:node:updated",s)}return new Array(e.length).fill(null)},order:30};async function he(e,t){await V.head(e);const i=document.createElement("a");i.download=t??"",i.href=e,i.click()}function ii(e,t){const i=e.split("/").filter(Boolean),r=t.split("/").filter(Boolean);let s="";for(const[o,d]of i.entries()){if(o>=t.length||d!==r[o])break;s=`${s}${s===""?"":"/"}${d}`}return s}async function ve(e){let t;if(!e[0])throw new Error("No nodes to download");if(e.length===1)if(e[0].type===p.File){await he(e[0].encodedSource,e[0].displayname);return}else t=new URL(e[0].encodedSource),t.searchParams.append("accept","zip");else{t=new URL(e[0].encodedSource);let i=t.pathname;for(const s of e.slice(1))i=ii(i,new URL(s.encodedSource).pathname);t.pathname=i;const r=e.map(s=>decodeURIComponent(s.encodedSource.slice(t.href.length+1)));t.searchParams.append("accept","zip"),t.searchParams.append("files",JSON.stringify(r))}t.pathname.at(-1)!=="/"&&(t.pathname=`${t.pathname}/`),await he(t.href)}function ri(e,t){const i=ae(b),r=wt(b);if(!e?.id)return null;if(t==="/")return i.getRoot(e.id)||null;const s=r.getPath(e.id,t);return i.getNode(s)||null}const si=new $({concurrency:5}),ni="favorite",oi={id:ni,displayName({nodes:e}){return D(e)?n("files","Add to favorites"):n("files","Remove from favorites")},iconSvgInline:({nodes:e})=>D(e)?oe:_e,enabled({nodes:e}){return L()?!1:e.every(t=>t.root?.startsWith?.("/files"))&&e.every(t=>t.permissions!==u.NONE)},async exec({nodes:e,view:t,folder:i}){const r=D([e[0]]);return await X(e[0],t,r,i)},async execBatch({nodes:e,view:t,folder:i}){const r=D(e),s=e.map(o=>new Promise(d=>{si.add(async()=>{try{await X(o,t,r,i),d(!0)}catch(f){c.error("Error while adding file to favorite",{error:f,source:o.source,node:o}),d(!1)}})}));return Promise.all(s)},order:-50,hotkey:{description:n("files","Add or remove favorite"),key:"S"}};async function X(e,t,i,r){try{const s=ne("/apps/files/api/v1/files")+Fe(e.path);return await V.post(s,{tags:i?[window.OC.TAG_FAVORITE]:[]}),t.id==="favorites"&&!i&&ai(r)&&v("files:node:deleted",e),e.attributes.favorite=i?1:0,v("files:node:updated",e),i?v("files:favorites:added",e):v("files:favorites:removed",e),!0}catch(s){const o=i?"adding a file to favourites":"removing a file from favourites";return c.error("Error while "+o,{error:s,source:e.source,node:e}),!1}}function D(e){return e.some(t=>t.attributes.favorite!==1)}function ai(e){return!e?.path||e.path==="/"}const Ge='<svg xmlns="http://www.w3.org/2000/svg" id="mdi-folder" viewBox="0 0 24 24"><path d="M10,4H4C2.89,4 2,4.89 2,6V18A2,2 0 0,0 4,20H20A2,2 0 0,0 22,18V8C22,6.89 21.1,6 20,6H12L10,4Z" /></svg>',li={id:"open-folder",displayName({nodes:e}){if(e.length!==1||!e[0])return n("files","Open folder");const t=e[0].displayname;return n("files","Open folder {displayName}",{displayName:t})},iconSvgInline:()=>Ge,enabled({nodes:e}){if(e.length!==1||!e[0])return!1;const t=e[0];return t.isDavResource?t.type===p.Folder&&(t.permissions&u.READ)!==0:!1},async exec({nodes:e,view:t}){const i=e[0];return!i||i.type!==p.Folder?!1:(window.OCP.Files.Router.goToRoute(null,{view:t.id,fileid:String(i.fileid)},{dir:i.path}),null)},default:re.HIDDEN,order:-100},di={id:"open-in-files",displayName:()=>n("files","Open in Files"),iconSvgInline:()=>"",enabled({view:e}){return e.id==="recent"||e.id===ht},async exec({nodes:e}){if(!e[0])return!1;let t=e[0].dirname;return e[0].type===p.Folder&&(t=t+"/"+e[0].basename),window.OCP.Files.Router.goToRoute(null,{view:"files",fileid:String(e[0].fileid)},{dir:t,openfile:"true"}),null},order:-1e3,default:re.HIDDEN},ci='<svg xmlns="http://www.w3.org/2000/svg" id="mdi-laptop" viewBox="0 0 24 24"><path d="M4,6H20V16H4M20,18A2,2 0 0,0 22,16V6C22,4.89 21.1,4 20,4H4C2.89,4 2,4.89 2,6V16A2,2 0 0,0 4,18H0V20H24V18H20Z" /></svg>',fi='<svg xmlns="http://www.w3.org/2000/svg" id="mdi-web" viewBox="0 0 24 24"><path d="M16.36,14C16.44,13.34 16.5,12.68 16.5,12C16.5,11.32 16.44,10.66 16.36,10H19.74C19.9,10.64 20,11.31 20,12C20,12.69 19.9,13.36 19.74,14M14.59,19.56C15.19,18.45 15.65,17.25 15.97,16H18.92C17.96,17.65 16.43,18.93 14.59,19.56M14.34,14H9.66C9.56,13.34 9.5,12.68 9.5,12C9.5,11.32 9.56,10.65 9.66,10H14.34C14.43,10.65 14.5,11.32 14.5,12C14.5,12.68 14.43,13.34 14.34,14M12,19.96C11.17,18.76 10.5,17.43 10.09,16H13.91C13.5,17.43 12.83,18.76 12,19.96M8,8H5.08C6.03,6.34 7.57,5.06 9.4,4.44C8.8,5.55 8.35,6.75 8,8M5.08,16H8C8.35,17.25 8.8,18.45 9.4,19.56C7.57,18.93 6.03,17.65 5.08,16M4.26,14C4.1,13.36 4,12.69 4,12C4,11.31 4.1,10.64 4.26,10H7.64C7.56,10.66 7.5,11.32 7.5,12C7.5,12.68 7.56,13.34 7.64,14M12,4.03C12.83,5.23 13.5,6.57 13.91,8H10.09C10.5,6.57 11.17,5.23 12,4.03M18.92,8H15.97C15.65,6.75 15.19,5.55 14.59,4.44C16.43,5.07 17.96,6.34 18.92,8M12,2C6.47,2 2,6.5 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2Z" /></svg>',ui=g("files","localClientEnabled",!0),pi={id:"edit-locally",displayName:()=>n("files","Open locally"),iconSvgInline:()=>ci,enabled({nodes:e}){return e.length!==1||!e[0]||L()||!ui?!1:xt(e[0])},async exec({nodes:e,contents:t}){return await mi(e[0],t),null},order:25};async function mi(e,t){await ge(e.path);const i=await wi();if(i==="local")await ge(e.path);else if(i==="online"){const r=t.filter(s=>s.type===p.File);await Pt().open(r,e)}}async function ge(e){const t=se("apps/files/api/v1")+"/openlocaleditor?format=json";try{const i=await V.post(t,{path:e});let r=`nc://open/${x()?.uid}@`+window.location.host+Fe(e);r+="?token="+i.data.ocs.data.token,window.open(r,"_self")}catch(i){h(n("files","Failed to redirect to client")),c.error("Failed to redirect to client",{error:i})}}async function wi(){let e=!1;const t=new mt().setName(n("files","Open file locally")).setText(n("files","The file should now open on your device. If it doesn't, please check that you have the desktop app installed.")).setButtons([{label:n("files","Retry and close"),variant:"secondary",callback:()=>{e="local"}},{label:n("files","Open online"),icon:fi,variant:"primary",callback:()=>{e="online"}}]).build();try{await t.show()}catch(i){c.debug("Open locally dialog closed",{error:i})}return e}const hi='<svg xmlns="http://www.w3.org/2000/svg" id="mdi-pencil-outline" viewBox="0 0 24 24"><path d="M14.06,9L15,9.94L5.92,19H5V18.08L14.06,9M17.66,3C17.41,3 17.15,3.1 16.96,3.29L15.13,5.12L18.88,8.87L20.71,7.04C21.1,6.65 21.1,6 20.71,5.63L18.37,3.29C18.17,3.09 17.92,3 17.66,3M14.06,6.19L3,17.25V21H6.75L17.81,9.94L14.06,6.19Z" /></svg>',vi="rename",gi={id:vi,displayName:()=>n("files","Rename"),iconSvgInline:()=>hi,enabled:({nodes:e,view:t})=>{if(e.length===0||!e[0]||t.id==="public-file-share")return!1;const i=e[0],r=ae(b),s=(i.dirname==="/"?r.getRoot(t.id):r.getNode(ce.dirname(i.source)))?.permissions||u.NONE;return!!(i.permissions&u.DELETE)&&!!(s&u.CREATE)||!!(i.permissions&u.UPDATE)},async exec({nodes:e}){return v("files:node:rename",e[0]),null},order:10,hotkey:{description:n("files","Rename"),key:"F2"}};function yi(){it({id:"files-favorite",order:0,enabled({node:e}){return e.isDavResource&&e.root.startsWith("/files/")},displayName({node:e}){return e.attributes.favorite?n("files","Unfavorite"):n("files","Favorite")},iconSvgInline({node:e}){return e.attributes.favorite?_e:oe},onClick({node:e,view:t,folder:i}){X(e,t,!e.attributes.favorite,i)}})}const Ci='<svg xmlns="http://www.w3.org/2000/svg" id="mdi-folder-eye-outline" viewBox="0 0 24 24"><path d="M9.3 20H4C2.9 20 2 19.1 2 18V6C2 4.9 2.9 4 4 4H10L12 6H20C21.1 6 22 6.9 22 8V14.6C21.4 14.2 20.7 13.8 20 13.5V8H4V18H9.3C9.3 18.1 9.2 18.2 9.2 18.3L8.8 19L9.1 19.7C9.2 19.8 9.2 19.9 9.3 20M23 19C22.1 21.3 19.7 23 17 23S11.9 21.3 11 19C11.9 16.7 14.3 15 17 15S22.1 16.7 23 19M19.5 19C19.5 17.6 18.4 16.5 17 16.5S14.5 17.6 14.5 19 15.6 21.5 17 21.5 19.5 20.4 19.5 19M17 18C16.4 18 16 18.4 16 19S16.4 20 17 20 18 19.6 18 19 17.6 18 17 18" /></svg>',Hi={id:"view-in-folder",displayName(){return n("files","View in folder")},iconSvgInline:()=>Ci,enabled({nodes:e,view:t}){if(L()||t.id==="files"||e.length!==1||!e[0])return!1;const i=e[0];return!i.isDavResource||!i.root?.startsWith("/files")||i.permissions===u.NONE?!1:i.type===p.File},async exec({nodes:e}){return!e[0]||e[0].type!==p.File?!1:(window.OCP.Files.Router.goToRoute(null,{view:"files",fileid:String(e[0].fileid)},{dir:e[0].dirname}),null)},order:10};class bi extends B{searchQuery="";constructor(){super("files:filename",5),y("files:search:updated",({query:t,scope:i})=>{i==="filter"&&this.updateQuery(t)})}filter(t){const i=this.searchQuery.toLocaleLowerCase().split(" ").filter(Boolean);return t.filter(r=>{const s=r.displayname.toLocaleLowerCase();return i.every(o=>s.includes(o))})}reset(){this.updateQuery("")}updateQuery(t){if(t=(t||"").trim(),t!==this.searchQuery){this.searchQuery=t,this.filterUpdated();const i=[];if(t!=="")i.push({text:t,onclick:()=>{this.updateQuery("")}});else{const r=vt(b);r.scope==="filter"&&(r.query="")}this.updateChips(i)}}}function Vi(){I(new bi)}class Li extends B{showHidden;constructor(){super("files:hidden",0),this.showHidden=g("files","config",{show_hidden:!1}).show_hidden,y("files:config:updated",({key:t,value:i})=>{t==="show_hidden"&&(this.showHidden=!!i,this.filterUpdated())})}filter(t){return this.showHidden?t:t.filter(i=>i.attributes.hidden!==!0&&!i.basename.startsWith("."))}}function xi(){I(new Li)}const ye='<svg xmlns="http://www.w3.org/2000/svg" id="mdi-calendar-range-outline" viewBox="0 0 24 24"><path d="M7 11H9V13H7V11M21 5V19C21 20.11 20.11 21 19 21H5C3.89 21 3 20.1 3 19V5C3 3.9 3.9 3 5 3H6V1H8V3H16V1H18V3H19C20.11 3 21 3.9 21 5M5 7H19V5H5V7M19 19V9H5V19H19M15 13H17V11H15V13M11 13H13V11H11V13Z" /></svg>',C=()=>new Date().setHours(0,0,0,0),ee=()=>C()-10080*60*1e3,Ce=[{id:"today",label:n("files","Today"),filter:e=>e>C()},{id:"last-7",label:n("files","Last 7 days"),filter:e=>e>ee()},{id:"last-30",label:n("files","Last 30 days"),filter:e=>e>C()-720*60*60*1e3},{id:"this-year",label:n("files","This year ({year})",{year:new Date().getFullYear()}),filter:e=>e>new Date(C()).setMonth(0,1)},{id:"last-year",label:n("files","Last year ({year})",{year:new Date().getFullYear()-1}),filter:e=>e>new Date(C()).setFullYear(new Date().getFullYear()-1,0,1)&&e<new Date(C()).setMonth(0,1)},{id:"custom",label:n("files","Custom range"),timeRange:[new Date(ee()),new Date(C())],filter(e){if(!this.timeRange)return!0;const t=new Date(e).getTime();return t>=this.timeRange[0].getTime()&&t<=this.timeRange[1].getTime()}}],Fi=ke({__name:"FileListFilterModified",props:{filter:{}},setup(e){const t=e,i=j();z(i,o=>{i.value?(i.value.id==="custom"&&!r.value&&(r.value=[new Date(ee()),new Date(C())],i.value.timeRange=[...r.value]),t.filter.setPreset(i.value)):t.filter.setPreset()});const r=j();z(r,()=>{r.value&&(i.value.timeRange=[...r.value],t.filter.setPreset(i.value))}),Ie(()=>{i.value=t.filter.preset&&Ce.find(o=>o.id===t.filter.preset.id),t.filter.addEventListener("reset",s)}),Be(()=>{t.filter.removeEventListener("reset",s)});function s(){i.value=void 0,r.value=void 0}return(o,d)=>(M(),k("div",null,[(M(),k(Oe,null,$e(Ce,f=>G(A(qe),{key:f.id,alignment:"start",pressed:f===i.value,variant:"tertiary",wide:"","onUpdate:pressed":a=>a?i.value=f:s()},{default:K(()=>[Ue(Ze(f.label),1)]),_:2},1032,["pressed","onUpdate:pressed"])),64)),i.value?.id==="custom"?(M(),Rt(A(It),{key:0,modelValue:r.value,"onUpdate:modelValue":d[0]||(d[0]=f=>r.value=f),appendToBody:"","aria-label":A(n)("files","Custom date range"),type:"date-range"},null,8,["modelValue","aria-label"])):St("",!0)]))}}),Mi=Le(Fi,[["__scopeId","data-v-9e1aa8b5"]]),Ke="files-file-list-filter-modified";class Ai extends B{currentInstance;currentPreset;displayName=n("files","Modified");iconSvgInline=ye;tagName=Ke;constructor(){super("files:modified",50)}filter(t){return this.currentPreset?t.filter(i=>i.mtime===void 0||this.currentPreset.filter(i.mtime.getTime())):t}reset(){this.dispatchEvent(new CustomEvent("reset"))}get preset(){return this.currentPreset}setPreset(t){this.currentPreset=t,this.filterUpdated();const i=[];t?i.push({icon:ye,text:t.label,onclick:()=>this.reset()}):this.currentInstance?.resetFilter(),this.updateChips(i)}}function Ei(){const e=We(Mi,{shadowRoot:!1});customElements.define(Ke,e),I(new Ai)}const Pi='<svg xmlns="http://www.w3.org/2000/svg" id="mdi-file-outline" viewBox="0 0 24 24"><path d="M14,2H6A2,2 0 0,0 4,4V20A2,2 0 0,0 6,22H18A2,2 0 0,0 20,20V8L14,2M18,20H6V4H13V9H18V20Z" /></svg>',Ri='<svg xmlns="http://www.w3.org/2000/svg" id="mdi-file-document" viewBox="0 0 24 24"><path d="M13,9H18.5L13,3.5V9M6,2H14L20,8V20A2,2 0 0,1 18,22H6C4.89,22 4,21.1 4,20V4C4,2.89 4.89,2 6,2M15,18V16H6V18H15M18,14V12H6V14H18Z" /></svg>',Si='<svg xmlns="http://www.w3.org/2000/svg" id="mdi-file-pdf-box" viewBox="0 0 24 24"><path d="M19 3H5C3.9 3 3 3.9 3 5V19C3 20.1 3.9 21 5 21H19C20.1 21 21 20.1 21 19V5C21 3.9 20.1 3 19 3M9.5 11.5C9.5 12.3 8.8 13 8 13H7V15H5.5V9H8C8.8 9 9.5 9.7 9.5 10.5V11.5M14.5 13.5C14.5 14.3 13.8 15 13 15H10.5V9H13C13.8 9 14.5 9.7 14.5 10.5V13.5M18.5 10.5H17V11.5H18.5V13H17V15H15.5V9H18.5V10.5M12 10.5H13V13.5H12V10.5M7 10.5H8V11.5H7V10.5Z" /></svg>',Di='<svg xmlns="http://www.w3.org/2000/svg" id="mdi-file-presentation-box" viewBox="0 0 24 24"><path d="M19,16H5V8H19M19,3H5C3.89,3 3,3.89 3,5V19A2,2 0 0,0 5,21H19A2,2 0 0,0 21,19V5C21,3.89 20.1,3 19,3Z" /></svg>',Ti='<svg xmlns="http://www.w3.org/2000/svg" id="mdi-file-table-box" viewBox="0 0 24 24"><path d="M19 3H5C3.89 3 3 3.89 3 5V19C3 20.1 3.9 21 5 21H19C20.1 21 21 20.1 21 19V5C21 3.89 20.1 3 19 3M9 18H6V16H9V18M9 15H6V13H9V15M9 12H6V10H9V12M13 18H10V16H13V18M13 15H10V13H13V15M13 12H10V10H13V12Z" /></svg>',Ni='<svg xmlns="http://www.w3.org/2000/svg" id="mdi-image" viewBox="0 0 24 24"><path d="M8.5,13.5L11,16.5L14.5,12L19,18H5M21,19V5C21,3.89 20.1,3 19,3H5A2,2 0 0,0 3,5V19A2,2 0 0,0 5,21H19A2,2 0 0,0 21,19Z" /></svg>',_i='<svg xmlns="http://www.w3.org/2000/svg" id="mdi-movie" viewBox="0 0 24 24"><path d="M18,4L20,8H17L15,4H13L15,8H12L10,4H8L10,8H7L5,4H4A2,2 0 0,0 2,6V18A2,2 0 0,0 4,20H20A2,2 0 0,0 22,18V4H18Z" /></svg>',ki='<svg xmlns="http://www.w3.org/2000/svg" id="mdi-music" viewBox="0 0 24 24"><path d="M21,3V15.5A3.5,3.5 0 0,1 17.5,19A3.5,3.5 0 0,1 14,15.5A3.5,3.5 0 0,1 17.5,12C18.04,12 18.55,12.12 19,12.34V6.47L9,8.6V17.5A3.5,3.5 0 0,1 5.5,21A3.5,3.5 0 0,1 2,17.5A3.5,3.5 0 0,1 5.5,14C6.04,14 6.55,14.12 7,14.34V6L21,3Z" /></svg>',q=[{id:"document",label:n("files","Documents"),icon:F(Ri,"#49abea"),mime:["x-office/document"]},{id:"spreadsheet",label:n("files","Spreadsheets"),icon:F(Ti,"#9abd4e"),mime:["x-office/spreadsheet"]},{id:"presentation",label:n("files","Presentations"),icon:F(Di,"#f0965f"),mime:["x-office/presentation"]},{id:"pdf",label:n("files","PDFs"),icon:F(Si,"#dc5047"),mime:["application/pdf"]},{id:"folder",label:n("files","Folders"),icon:F(Ge,window.getComputedStyle(document.body).getPropertyValue("--color-primary-element")),mime:["httpd/unix-directory"]},{id:"audio",label:n("files","Audio"),icon:ki,mime:["audio"]},{id:"image",label:n("files","Images"),icon:Ni,mime:["image"]},{id:"video",label:n("files","Videos"),icon:_i,mime:["video"]}];function F(e,t){return e.replace("<path ",`<path fill="${t}" `)}const Ii=ke({__name:"FileListFilterType",props:{filter:{}},setup(e){const t=e,i=j([]);z(i,()=>{t.filter.setPresets([...i.value])}),Ie(()=>{t.filter.addEventListener("reset",r),t.filter.addEventListener("deselect",s),i.value=q.filter(({id:d})=>t.filter.presets.some(f=>f.id===d))}),Be(()=>{t.filter.removeEventListener("reset",r),t.filter.removeEventListener("deselect",s)});function r(){i.value.length>0&&(i.value=[])}function s(d){const f=q.find(a=>a.id===d.detail);f&&o(f,!1)}function o(d,f){i.value=i.value.filter(a=>a.id!==d.id),f&&i.value.push(d)}return(d,f)=>(M(),k("div",{class:Dt(d.$style.fileListFilterType)},[(M(),k(Oe,null,$e(q,a=>G(A(qe),{key:a.id,pressed:i.value.includes(a),variant:"tertiary",alignment:"start",wide:"","onUpdate:pressed":l=>o(a,l)},{icon:K(()=>[G(A(kt),{svg:a.icon},null,8,["svg"])]),default:K(()=>[Ue(" "+Ze(a.label),1)]),_:2},1032,["pressed","onUpdate:pressed"])),64))],2))}}),Bi="_fileListFilterType_q473x_2",Oi={fileListFilterType:Bi},$i={$style:Oi},Ui=Le(Ii,[["__cssModules",$i]]),Je="files-file-list-filter-type";class Zi extends B{currentPresets;displayName=n("files","Type");iconSvgInline=Pi;tagName=Je;constructor(){super("files:type",10),this.currentPresets=[]}filter(t){if(!this.currentPresets||this.currentPresets.length===0)return t;const i=this.currentPresets.reduce((r,s)=>[...r,...s.mime],[]);return t.filter(r=>{if(!r.mime)return!1;const s=r.mime.toLowerCase();return i.includes(s)||i.includes(window.OC.MimeTypeList.aliases[s])?!0:!!i.includes(s.split("/")[0])})}reset(){this.dispatchEvent(new CustomEvent("reset"))}get presets(){return this.currentPresets}setPresets(t){c.debug("TypeFilter: setting presets",{presets:t}),this.currentPresets=t??[],this.filterUpdated();const i=[];if(t&&t.length>0)for(const r of t)i.push({icon:r.icon,text:r.label,onclick:()=>this.removeFilterPreset(r.id)});else this.reset();this.updateChips(i)}removeFilterPreset(t){const i=this.currentPresets.filter(({id:r})=>r!==t);this.dispatchEvent(new CustomEvent("deselect",{detail:t})),this.setPresets(i)}}function Wi(){const e=We(Ui,{shadowRoot:!1});window.customElements.define(Je,e),I(new Zi)}const qi='<svg xmlns="http://www.w3.org/2000/svg" id="mdi-folder-plus-outline" viewBox="0 0 24 24"><path d="M13 19C13 19.34 13.04 19.67 13.09 20H4C2.9 20 2 19.11 2 18V6C2 4.89 2.89 4 4 4H10L12 6H20C21.1 6 22 6.89 22 8V13.81C21.39 13.46 20.72 13.22 20 13.09V8H4V18H13.09C13.04 18.33 13 18.66 13 19M20 18V15H18V18H15V20H18V23H20V20H23V18H20Z" /></svg>',Yi={id:"newFolder",order:0,displayName:n("files","New folder"),iconSvgInline:qi.replace(/viewBox/gi,'style="color: var(--color-primary-element)" viewBox'),enabled(e){return!!(e.permissions&u.CREATE)&&!!(e.permissions&u.READ)},async handler(e,t){const i=await de(n("files","New folder"),t,{isFolder:!0});if(i!==null)try{const{fileid:r,source:s}=await Qi(e,i.trim()),o=new le({source:s,id:r,mtime:new Date,owner:e.owner,permissions:u.ALL,root:e?.root||"/files/"+x()?.uid,attributes:{"mount-type":e.attributes?.["mount-type"],"owner-id":e.attributes?.["owner-id"],"owner-display-name":e.attributes?.["owner-display-name"],"hide-download":e.attributes?.["hide-download"]}});v("files:node:created",o),_(n("files",'Created new folder "{name}"',{name:ce.basename(s)})),c.debug("Created new folder",{folder:o,source:s}),window.OCP.Files.Router.goToRoute(null,{view:"files",fileid:String(r)},{dir:e.path})}catch(r){c.error("Creating new folder failed",{error:r}),h("Creating new folder failed")}}};async function Qi(e,t){const i=e.source+"/"+t,r=e.encodedSource+"/"+encodeURIComponent(t),s=await V({method:"MKCOL",url:r,headers:{Overwrite:"F"}});return{fileid:parseInt(s.headers["oc-fileid"]),source:i}}const zi=_t(()=>lt(()=>import("./TemplatePicker-CFFGvLh_.chunk.mjs"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37]),import.meta.url));let Y=null;async function ji(e){if(Y===null){const t=document.createElement("div");t.id="template-picker",document.body.appendChild(t),Y=Tt({methods:{open(...i){this.$refs.picker.open(...i)}},render:()=>Nt(zi,{ref:"picker",parent:e})}).mount(t)}return Y}function Gi(){let e;L()?e=g("files_sharing","templates",[]):e=g("files","templates",[]),e.forEach((t,i)=>{Q({id:`template-new-${t.app}-${i}`,displayName:t.label,iconSvgInline:t.iconSvgInline,enabled(r){return r.attributes["is-encrypted"]?!1:(r.permissions&u.READ)!==0&&(r.permissions&u.CREATE)!==0},order:11,async handler(r,s){const o=ji(r),d=await de(`${t.label}${t.extension}`,s,{label:n("files","Filename"),name:t.label});d!==null&&(await o).open(d.trim(),t)}})})}const Ki='<svg xmlns="http://www.w3.org/2000/svg" id="mdi-plus" viewBox="0 0 24 24"><path d="M19,13H13V19H11V13H5V11H11V5H13V11H19V13Z" /></svg>',Xe=g("files","templates_enabled",!0);let fe=g("files","templates_path",!1);c.debug("Templates folder enabled",{templatesEnabled:Xe}),c.debug("Initial templates folder",{templatesPath:fe});async function Ji(e,t){const i=ce.join(e.path,t);try{c.debug("Initializing the templates directory",{templatePath:i});const{data:r}=await V.post(se("apps/files/api/v1/templates/path"),{templatePath:i,copySystemTemplates:!0});window.OCP.Files.Router.goToRoute(null,{view:"files",fileid:void 0},{dir:i}),c.info("Created new templates folder",{...r.ocs.data}),fe=r.ocs.data.templates_path}catch(r){c.error("Unable to initialize the templates directory",{error:r}),h(n("files","Unable to initialize the templates directory"))}}const Xi={id:"template-picker",displayName:n("files","Create templates folder"),iconSvgInline:Ki,order:30,enabled(e){return!Xe||fe||e.owner!==x()?.uid?!1:(e.permissions&u.CREATE)!==0},async handler(e,t){const i=await de(n("files","Templates"),t,{name:n("files","New template folder"),isFolder:!0});i!==null&&(Ji(e,i),rt("template-picker"))}},er=()=>{"serviceWorker"in navigator?window.addEventListener("load",async()=>{try{const e=ne("/apps/files/preview-service-worker.js",{},{noRewrite:!0});let t=dt();t===""&&(t="/");const i=await navigator.serviceWorker.register(e,{scope:t});c.debug("SW registered: ",{registration:i})}catch(e){c.error("SW registration failed: ",{error:e})}}):c.debug("Service Worker is not enabled on this browser.")};async function te(e="/",t){if(e&&e!=="/")return Pe(e,t);try{return{contents:await nt({client:Re,signal:t.signal}),folder:new le({id:0,source:`${Ve()}${T()}`,root:T(),owner:x()?.uid||null,permissions:u.READ})}}catch(i){throw t.signal.aborted?(c.debug("Favorite nodes request was aborted"),new DOMException("Aborted","AbortError")):(c.error("Failed to load favorite nodes via WebDAV",{error:i}),i)}}function He(e,t=0){return new S({id:ie(e.path),name:e.displayname,icon:Se,order:t,params:{dir:e.path,fileid:String(e.fileid),view:"favorites"},parent:"favorites",columns:[],getContents:te})}function ie(e){return`favorite-${Ft(e)}`}async function tr(){const e=O();e.register(new S({id:"favorites",name:n("files","Favorites"),caption:n("files","List of favorite files and folders."),emptyTitle:n("files","No favorites yet"),emptyCaption:n("files","Files and folders you mark as favorite will show up here"),icon:oe,order:15,columns:[],getContents:te}));const t=new AbortController,i=(await te("",{signal:t.signal})).contents.filter(a=>a.type===p.Folder),r=i.map((a,l)=>He(a,l));c.debug("Generating favorites view",{favoriteFolders:i}),r.forEach(a=>e.register(a)),y("files:favorites:added",a=>{if(a.type===p.Folder){if(a.path===null||!a.root?.startsWith("/files")){c.error("Favorite folder is not within user files root",{node:a});return}o(a)}}),y("files:favorites:removed",a=>{if(a.type===p.Folder){if(a.path===null||!a.root?.startsWith("/files")){c.error("Favorite folder is not within user files root",{node:a});return}d(a.path)}}),y("files:node:renamed",a=>{a.type===p.Folder&&a.attributes.favorite===1&&f(a)});const s=function(){i.sort((a,l)=>a.basename.localeCompare(l.basename,[ft(),ut()],{ignorePunctuation:!0,numeric:!0,usage:"sort"})),i.forEach((a,l)=>{const m=r.find(U=>U.id===ie(a.path));m&&(m.order=l)})};function o(a){const l=He(a);i.find(m=>m.path===a.path)||(i.push(a),r.push(l),s(),e.register(l))}function d(a){const l=ie(a),m=i.findIndex(U=>U.path===a);m!==-1&&(i.splice(m,1),r.splice(m,1),e.remove(l),s())}function f(a){const l=i.find(m=>m.fileid===a.fileid);l!==void 0&&(d(l.path),o(a))}s()}const H=O(),ir=new $({concurrency:5,intervalCap:5,interval:200}),rr=g("files","config",{folder_tree:!0}).folder_tree;let et=g("files","config",{show_hidden:!1}).show_hidden;const sr=new S({id:E,name:n("files","Folder tree"),caption:n("files","List of your files and folders."),icon:Bt,order:50,getContents:De,async loadChildViews(e){const t=e;if(!(t.loading||t.loaded)){t.loading=!0;try{const i=new URLSearchParams(window.location.search).get("dir")??"/",r=await Te(i,1,!0);R(r,i),t.loaded=!0,y("files:node:created",cr),y("files:node:deleted",fr),y("files:node:moved",ur),y("files:config:updated",pr)}finally{t.loading=!1}}}});async function nr(){rr&&H.register(sr)}async function R(e,t){const i=[];for(const r of e){const s=H.views.some(o=>o.id===`${E}::${r.encodedSource}`);if(!et&&r.basename.startsWith(".")){s&&H.remove(`${E}::${r.encodedSource}`);continue}s||i.push(or(r,t===r.path||t?.startsWith(r.path+"/")?!0:void 0))}H.register(...i)}function or(e,t){return{id:`${E}::${e.encodedSource}`,parent:Ne(e.source),expanded:t,loaded:t,name:e.displayName??e.displayname??e.basename,icon:Se,getContents:De,loadChildViews:ar(e),params:{view:E,fileid:String(e.fileid),dir:e.path}}}function ar(e){return async t=>{const i=t;if(!(i.loading||i.loaded)){i.loading=!0;try{await tt(e.path),i.loaded=!0}finally{i.loading=!1}}}}async function tt(e="/"){await ir.add(async()=>{const t=ae(b).getNodesByPath(H.active.id,e);if(t.length>0){const i=t.filter(r=>r.type===p.Folder);R(i,e)}else{const i=await Te(e,2);R(i)}})}function lr(e){const t=e.encodedSource;H.remove(t)}function dr(e){H.remove(e)}function cr(e){e.type===p.Folder&&R([e])}function fr(e){e.type===p.Folder&&lr(e)}function ur({node:e,oldSource:t}){if(e.type!==p.Folder)return;dr(t),R([e]);const i=e.source.replace(ue,""),r=t.replace(ue,""),s=H.views.filter(o=>!o.params?.dir||ct(o.params.dir,r)?!1:o.params.dir.startsWith(r));for(const o of s)o.parent=Ne(e.source),o.params.dir=o.params.dir.replace(r,i)}async function pr({key:e,value:t}){e==="show_hidden"&&(et=t,await tt())}const mr='<svg xmlns="http://www.w3.org/2000/svg" id="mdi-account-outline" viewBox="0 0 24 24"><path d="M12,4A4,4 0 0,1 16,8A4,4 0 0,1 12,12A4,4 0 0,1 8,8A4,4 0 0,1 12,4M12,6A2,2 0 0,0 10,8A2,2 0 0,0 12,10A2,2 0 0,0 14,8A2,2 0 0,0 12,6M12,13C14.67,13 20,14.33 20,17V20H4V17C4,14.33 9.33,13 12,13M12,14.9C9.03,14.9 5.9,16.36 5.9,17V18.1H18.1V17C18.1,16.36 14.97,14.9 12,14.9Z" /></svg>',wr=x()?.uid;function hr(e){const t=["group","shared"],i=e.attributes["mount-type"];return wr===e.owner&&!t.includes(i)}function vr(e="/",t){return Pe(e,t).then(i=>(i.contents=i.contents.filter(hr),i))}const be="personal";function gr(){gt()&&O().register(new S({id:be,name:n("files","Personal files"),caption:n("files","List of your files and folders that are not shared."),emptyTitle:n("files","No personal files found"),emptyCaption:n("files","Files that are not shared will show up here."),icon:mr,order:yt()===be?0:5,getContents:vr}))}const yr=Math.round(Date.now()/1e3-3600*24*14),Cr=g("files","recent_limit",100);async function Hr(e="/",t){const i=Ee(b),r=s=>e!=="/"||i.userConfig.show_hidden||!s.dirname.split("/").some(o=>o.startsWith("."));try{const s=(await Re.search("/",{signal:t?.signal,details:!0,data:ot(yr,Cr)})).data.results.map(o=>(o.filename=o.filename.replace("/remote.php/dav",""),at(o))).filter(r);return{folder:new le({id:0,source:`${Ve()}${T()}`,root:T(),owner:x()?.uid||null,permissions:u.READ}),contents:s}}catch(s){throw t?.signal.aborted?(c.info("Fetching recent files aborted"),new DOMException("Aborted","AbortError")):(c.error("Failed to fetch recent files",{error:s}),s)}}const br=()=>{O().register(new S({id:"recent",name:n("files","Recent"),caption:n("files","List of recently modified files and folders."),emptyTitle:n("files","No recently modified files"),emptyCaption:n("files","Files and folders you recently modified will show up here."),icon:Vt,order:10,defaultSortKey:"mtime",getContents:Hr}))};Zt(),w(Xt),w(ti),w(pi),w(oi),w(Mt),w(li),w(di),w(gi),w(At),w(Hi),Q(Yi),Q(Xi),Gi(),L()===!1&&(tr(),Ct(),gr(),br(),Ht(),nr()),xi(),Wi(),Ei(),Vi(),yi(),er(),Z("nc:hidden",{nc:"http://nextcloud.org/ns"}),Z("nc:is-mount-root",{nc:"http://nextcloud.org/ns"}),Z("nc:metadata-blurhash",{nc:"http://nextcloud.org/ns"}),Et(),window._nc_newfilemenu=new Proxy(st(),{get(e,t){return e[t]},set(e,t,i){return e[t]=i,!0}});
|
|
//# sourceMappingURL=files-init.mjs.map
|