From d5b286c9d208a48e15143f090fc52bd167a2ded3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?John=20Molakvo=C3=A6?= Date: Wed, 26 Jun 2024 08:32:02 +0200 Subject: [PATCH 1/2] feat(files): increase max copy-move concurrency to 5 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: John Molakvoæ --- apps/files/src/actions/moveOrCopyActionUtils.ts | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/apps/files/src/actions/moveOrCopyActionUtils.ts b/apps/files/src/actions/moveOrCopyActionUtils.ts index 511fd32d1347b..d55247c866285 100644 --- a/apps/files/src/actions/moveOrCopyActionUtils.ts +++ b/apps/files/src/actions/moveOrCopyActionUtils.ts @@ -10,12 +10,15 @@ import PQueue from 'p-queue' // This is the processing queue. We only want to allow 3 concurrent requests let queue: PQueue +// Maximum number of concurrent operations +const MAX_CONCURRENCY = 5 + /** * Get the processing queue */ export const getQueue = () => { if (!queue) { - queue = new PQueue({ concurrency: 3 }) + queue = new PQueue({ concurrency: MAX_CONCURRENCY }) } return queue } From 5a33202bcbefe77762813d69714f1be201420284 Mon Sep 17 00:00:00 2001 From: nextcloud-command Date: Wed, 26 Jun 2024 07:13:00 +0000 Subject: [PATCH 2/2] chore(assets): Recompile assets Signed-off-by: nextcloud-command --- dist/files-init.js | 4 ++-- dist/files-init.js.map | 2 +- dist/files-main.js | 4 ++-- dist/files-main.js.map | 2 +- 4 files changed, 6 insertions(+), 6 deletions(-) diff --git a/dist/files-init.js b/dist/files-init.js index cf7c03564d3e8..3e9e068bc6de9 100644 --- a/dist/files-init.js +++ b/dist/files-init.js @@ -1,2 +1,2 @@ -(()=>{var e,s,t,n={9052:e=>{"use strict";var s=Object.prototype.hasOwnProperty,t="~";function n(){}function a(e,s,t){this.fn=e,this.context=s,this.once=t||!1}function i(e,s,n,i,l){if("function"!=typeof n)throw new TypeError("The listener must be a function");var r=new a(n,i||e,l),o=t?t+s:s;return e._events[o]?e._events[o].fn?e._events[o]=[e._events[o],r]:e._events[o].push(r):(e._events[o]=r,e._eventsCount++),e}function l(e,s){0==--e._eventsCount?e._events=new n:delete e._events[s]}function r(){this._events=new n,this._eventsCount=0}Object.create&&(n.prototype=Object.create(null),(new n).__proto__||(t=!1)),r.prototype.eventNames=function(){var e,n,a=[];if(0===this._eventsCount)return a;for(n in e=this._events)s.call(e,n)&&a.push(t?n.slice(1):n);return Object.getOwnPropertySymbols?a.concat(Object.getOwnPropertySymbols(e)):a},r.prototype.listeners=function(e){var s=t?t+e:e,n=this._events[s];if(!n)return[];if(n.fn)return[n.fn];for(var a=0,i=n.length,l=new Array(i);a{"use strict";t.d(s,{A:()=>n});const n=(0,t(35947).YK)().setApp("files").detectUser().build()},15076:(e,s,t)=>{"use strict";var n=t(26304),a=t(61338),i=t(85168),l=t(53334),r=t(65043),o=t(76150),m=t(49264);const d=e=>e.every((e=>!0===e.attributes["is-mount-root"]&&"shared"===e.attributes["mount-type"])),c=e=>e.every((e=>!0===e.attributes["is-mount-root"]&&"external"===e.attributes["mount-type"])),g=(e,s)=>"trashbin"===s.id?(0,l.Tl)("files","Delete permanently"):(e=>{if(1===e.length)return!1;const s=e.some((e=>d([e]))),t=e.some((e=>!d([e])));return s&&t})(e)?(0,l.Tl)("files","Delete and unshare"):d(e)?1===e.length?(0,l.Tl)("files","Leave this share"):(0,l.Tl)("files","Leave these shares"):c(e)?1===e.length?(0,l.Tl)("files","Disconnect storage"):(0,l.Tl)("files","Disconnect storages"):(e=>!e.some((e=>e.type!==n.pt.File)))(e)?1===e.length?(0,l.Tl)("files","Delete file"):(0,l.Tl)("files","Delete files"):(e=>!e.some((e=>e.type!==n.pt.Folder)))(e)?1===e.length?(0,l.Tl)("files","Delete folder"):(0,l.Tl)("files","Delete folders"):(0,l.Tl)("files","Delete"),u=new m.A({concurrency:5}),f=new n.hY({id:"delete",displayName:g,iconSvgInline:e=>d(e)?'':c(e)?'':'',enabled:e=>e.length>0&&e.map((e=>e.permissions)).every((e=>0!=(e&n.aX.DELETE))),async exec(e,s,t){try{return await r.Ay.delete(e.encodedSource),(0,a.Ic)("files:node:deleted",e),!0}catch(s){return o.A.error("Error while deleting a file",{error:s,source:e.source,node:e}),!1}},async execBatch(e,s,t){if(!1===await new Promise((t=>{e.length>=5&&!d(e)&&!c(e)?window.OC.dialogs.confirmDestructive((0,l.Tl)("files","You are about to delete {count} items.",{count:e.length}),(0,l.Tl)("files","Confirm deletion"),{type:window.OC.dialogs.YES_NO_BUTTONS,confirm:g(e,s),confirmClasses:"error",cancel:(0,l.Tl)("files","Cancel")},(e=>{t(e)})):t(!0)})))return(0,i.cf)((0,l.Tl)("files","Deletion cancelled")),Promise.all(e.map((()=>!1)));const n=e.map((e=>new Promise((n=>{u.add((async()=>{const a=await this.exec(e,s,t);n(null!==a&&a)}))}))));return Promise.all(n)},order:100});var p=t(63814);const h=function(e){const s=document.createElement("a");s.download="",s.href=e,s.click()},w=function(e,s){const t=Math.random().toString(36).substring(2),n=(0,p.Jv)("/apps/files/ajax/download.php?dir={dir}&files={files}&downloadStartSecret={secret}",{dir:e,secret:t,files:JSON.stringify(s.map((e=>e.basename)))});h(n)},T=function(e){if(0==(e.permissions&n.aX.READ))return!1;if("shared"===e.attributes["mount-type"]){var s,t;const n=JSON.parse(null!==(s=e.attributes["share-attributes"])&&void 0!==s?s:"null"),a=null==n||null===(t=n.find)||void 0===t?void 0:t.call(n,(e=>"permissions"===e.scope&&"download"===e.key));if(void 0!==a&&!1===a.enabled)return!1}return!0},v=new n.hY({id:"download",displayName:()=>(0,l.Tl)("files","Download"),iconSvgInline:()=>'',enabled:e=>0!==e.length&&(!e.some((e=>e.type===n.pt.Folder))||!e.some((e=>{var s;return!(null!==(s=e.root)&&void 0!==s&&s.startsWith("/files"))})))&&e.every(T),exec:async(e,s,t)=>e.type===n.pt.Folder?(w(t,[e]),null):(h(e.encodedSource),null),async execBatch(e,s,t){return 1===e.length?(this.exec(e[0],s,t),[null]):(w(t,e),new Array(e.length).fill(null))},order:30});var x=t(71089),y=t(21777);const C=new n.hY({id:"edit-locally",displayName:()=>(0,l.Tl)("files","Edit locally"),iconSvgInline:()=>'',enabled:e=>1===e.length&&0!=(e[0].permissions&n.aX.UPDATE),exec:async e=>(async function(e){const s=(0,p.KT)("apps/files/api/v1")+"/openlocaleditor?format=json";try{var t;const n=await r.Ay.post(s,{path:e}),a=null===(t=(0,y.HW)())||void 0===t?void 0:t.uid;let i="nc://open/".concat(a,"@")+window.location.host+(0,x.O0)(e);i+="?token="+n.data.ocs.data.token,window.location.href=i}catch(e){(0,i.Qg)((0,l.Tl)("files","Failed to redirect to client"))}}(e.path),null),order:25});var L=t(85471);const k='',b=e=>e.some((e=>1!==e.attributes.favorite)),S=async(e,s,t)=>{try{const n=(0,p.Jv)("/apps/files/api/v1/files")+(0,x.O0)(e.path);return await r.Ay.post(n,{tags:t?[window.OC.TAG_FAVORITE]:[]}),"favorites"!==s.id||t||"/"!==e.dirname||(0,a.Ic)("files:node:deleted",e),L.Ay.set(e.attributes,"favorite",t?1:0),t?(0,a.Ic)("files:favorites:added",e):(0,a.Ic)("files:favorites:removed",e),!0}catch(s){const n=t?"adding a file to favourites":"removing a file from favourites";return o.A.error("Error while "+n,{error:s,source:e.source,node:e}),!1}},_=new n.hY({id:"favorite",displayName:e=>b(e)?(0,l.Tl)("files","Add to favorites"):(0,l.Tl)("files","Remove from favorites"),iconSvgInline:e=>b(e)?'':k,enabled:e=>!e.some((e=>{var s,t;return!(null!==(s=e.root)&&void 0!==s&&null!==(t=s.startsWith)&&void 0!==t&&t.call(s,"/files"))}))&&e.every((e=>e.permissions!==n.aX.NONE)),async exec(e,s){const t=b([e]);return await S(e,s,t)},async execBatch(e,s){const t=b(e);return Promise.all(e.map((async e=>await S(e,s,t))))},order:-50});var A=t(2069),U=t(43627),F=t(36882),P=t(39285);let N;var E;!function(e){e.MOVE="Move",e.COPY="Copy",e.MOVE_OR_COPY="move-or-copy"}(E||(E={}));const B=e=>0!=(e.reduce(((e,s)=>Math.min(e,s.permissions)),n.aX.ALL)&n.aX.UPDATE),I=e=>(e=>e.every((e=>{var s,t;return!JSON.parse(null!==(s=null===(t=e.attributes)||void 0===t?void 0:t["share-attributes"])&&void 0!==s?s:"[]").some((e=>"permissions"===e.scope&&!1===e.enabled&&"download"===e.key))})))(e)&&!e.some((e=>e.permissions===n.aX.NONE));var z=t(36117);const j=(0,n.H4)(),R=e=>(0,n.Al)(e),O=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"/";const s=new AbortController,t=(0,n.VL)();return e="".concat(n.lJ).concat(e),new z.CancelablePromise((async(n,a,i)=>{i((()=>s.abort()));try{const a=await j.getDirectoryContents(e,{details:!0,data:t,includeSelf:!0,signal:s.signal}),i=a.data[0],l=a.data.slice(1);if(i.filename!==e&&"".concat(i.filename,"/")!==e)throw o.A.debug('Exepected "'.concat(e,'" but got filename "').concat(i.filename,'" instead.')),new Error("Root node does not match requested path");n({folder:R(i),contents:l.map((e=>{try{return R(e)}catch(s){return o.A.error("Invalid node detected '".concat(e.basename,"'"),{error:s}),null}})).filter(Boolean)})}catch(e){a(e)}}))},D=e=>B(e)?I(e)?E.MOVE_OR_COPY:E.MOVE:E.COPY,M=async function(e,s,t){let d=arguments.length>3&&void 0!==arguments[3]&&arguments[3];if(!s)return;if(s.type!==n.pt.Folder)throw new Error((0,l.Tl)("files","Destination is not a folder"));if(t===E.MOVE&&e.dirname===s.path)throw new Error((0,l.Tl)("files","This file/folder is already in that directory"));if("".concat(s.path,"/").startsWith("".concat(e.path,"/")))throw new Error((0,l.Tl)("files","You cannot move a file/folder onto itself or into a subfolder of itself"));L.Ay.set(e,"status",n.zI.LOADING);const c=(N||(N=new m.A({concurrency:3})),N);return await c.add((async()=>{const m=e=>1===e?(0,l.Tl)("files","(copy)"):(0,l.Tl)("files","(copy %n)",void 0,e);try{const r=(0,n.H4)(),o=(0,U.join)(n.lJ,e.path),c=(0,U.join)(n.lJ,s.path);if(t===E.COPY){let t=e.basename;if(!d){const s=await r.getDirectoryContents(c);t=(0,n.E6)(e.basename,s.map((e=>e.basename)),{suffix:m,ignoreFileExtension:e.type===n.pt.Folder})}if(await r.copyFile(o,(0,U.join)(c,t)),e.dirname===s.path){const{data:e}=await r.stat((0,U.join)(c,t),{details:!0,data:(0,n.VL)()});(0,a.Ic)("files:node:created",(0,n.Al)(e))}}else{const t=await O(s.path);if((0,A.h)([e],t.contents))try{const{selected:n,renamed:i}=await(0,A.o)(s.path,[e],t.contents);if(!n.length&&!i.length)return await r.deleteFile(o),void(0,a.Ic)("files:node:deleted",e)}catch(e){return void(0,i.Qg)((0,l.Tl)("files","Move cancelled"))}await r.moveFile(o,(0,U.join)(c,e.basename)),(0,a.Ic)("files:node:deleted",e)}}catch(e){if((0,r.F0)(e)){var c,g,u;if(412===(null===(c=e.response)||void 0===c?void 0:c.status))throw new Error((0,l.Tl)("files","A file or folder with that name already exists in this folder"));if(423===(null===(g=e.response)||void 0===g?void 0:g.status))throw new Error((0,l.Tl)("files","The files are locked"));if(404===(null===(u=e.response)||void 0===u?void 0:u.status))throw new Error((0,l.Tl)("files","The file does not exist anymore"));if(e.message)throw new Error(e.message)}throw o.A.debug(e),new Error}finally{L.Ay.set(e,"status",void 0)}}))},H=async function(e){let s=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"/",t=arguments.length>2?arguments[2]:void 0;const n=t.map((e=>e.fileid)).filter(Boolean),a=(0,i.a1)((0,l.Tl)("files","Choose destination")).allowDirectories(!0).setFilter((e=>!n.includes(e.fileid))).setMimeTypeFilter([]).setMultiSelect(!1).startAt(s);return new Promise(((s,n)=>{a.setButtonFactory(((n,a)=>{const i=[],r=(0,U.basename)(a),o=t.map((e=>e.dirname)),m=t.map((e=>e.path));return e!==E.COPY&&e!==E.MOVE_OR_COPY||i.push({label:r?(0,l.Tl)("files","Copy to {target}",{target:r},void 0,{escape:!1,sanitize:!1}):(0,l.Tl)("files","Copy"),type:"primary",icon:F,async callback(e){s({destination:e[0],action:E.COPY})}}),o.includes(a)||m.includes(a)||e!==E.MOVE&&e!==E.MOVE_OR_COPY||i.push({label:r?(0,l.Tl)("files","Move to {target}",{target:r},void 0,{escape:!1,sanitize:!1}):(0,l.Tl)("files","Move"),type:e===E.MOVE?"primary":"secondary",icon:P,async callback(e){s({destination:e[0],action:E.MOVE})}}),i})),a.build().pick().catch((e=>{o.A.debug(e),e instanceof i.vT?n(new Error((0,l.Tl)("files","Cancelled move or copy operation"))):n(new Error((0,l.Tl)("files","Move or copy operation failed")))}))}))},W=new n.hY({id:"move-copy",displayName(e){switch(D(e)){case E.MOVE:return(0,l.Tl)("files","Move");case E.COPY:return(0,l.Tl)("files","Copy");case E.MOVE_OR_COPY:return(0,l.Tl)("files","Move or copy")}},iconSvgInline:()=>P,enabled:e=>!!e.every((e=>{var s;return null===(s=e.root)||void 0===s?void 0:s.startsWith("/files/")}))&&e.length>0&&(B(e)||I(e)),async exec(e,s,t){const n=D([e]);let a;try{a=await H(n,t,[e])}catch(e){return o.A.error(e),!1}try{return await M(e,a.destination,a.action),!0}catch(e){return!!(e instanceof Error&&e.message)&&((0,i.Qg)(e.message),null)}},async execBatch(e,s,t){const n=D(e),a=await H(n,t,e),i=e.map((async e=>{try{return await M(e,a.destination,a.action),!0}catch(s){return o.A.error("Failed to ".concat(a.action," node"),{node:e,error:s}),!1}}));return await Promise.all(i)},order:15}),V='',q=new n.hY({id:"open-folder",displayName(e){const s=e[0].attributes.displayname||e[0].basename;return(0,l.Tl)("files","Open folder {displayName}",{displayName:s})},iconSvgInline:()=>V,enabled(e){if(1!==e.length)return!1;const s=e[0];return!!s.isDavRessource&&s.type===n.pt.Folder&&0!=(s.permissions&n.aX.READ)},exec:async(e,s)=>!(!e||e.type!==n.pt.Folder)&&(window.OCP.Files.Router.goToRoute(null,{view:s.id,fileid:e.fileid},{dir:e.path}),null),default:n.m9.HIDDEN,order:-100}),Y=new n.hY({id:"open-in-files-recent",displayName:()=>(0,l.Tl)("files","Open in Files"),iconSvgInline:()=>"",enabled:(e,s)=>"recent"===s.id,async exec(e){let s=e.dirname;return e.type===n.pt.Folder&&(s=s+"/"+e.basename),window.OCP.Files.Router.goToRoute(null,{view:"files",fileid:e.fileid},{dir:s,openfile:"true"}),null},order:-1e3,default:n.m9.HIDDEN}),G=new n.hY({id:"rename",displayName:()=>(0,l.Tl)("files","Rename"),iconSvgInline:()=>'',enabled:e=>e.length>0&&e.map((e=>e.permissions)).every((e=>0!=(e&n.aX.UPDATE))),exec:async e=>((0,a.Ic)("files:node:rename",e),null),order:10});var $=t(49981);const K=new n.hY({id:"details",displayName:()=>(0,l.Tl)("files","Open details"),iconSvgInline:()=>$,enabled:e=>{var s,t,a;return 1===e.length&&!!e[0]&&!(null===(s=window)||void 0===s||null===(s=s.OCA)||void 0===s||null===(s=s.Files)||void 0===s||!s.Sidebar)&&null!==(t=(null===(a=e[0].root)||void 0===a?void 0:a.startsWith("/files/"))&&e[0].permissions!==n.aX.NONE)&&void 0!==t&&t},async exec(e,s,t){try{return await window.OCA.Files.Sidebar.open(e.path),window.OCP.Files.Router.goToRoute(null,{view:s.id,fileid:e.fileid},{...window.OCP.Files.Router.query,dir:t},!0),null}catch(e){return o.A.error("Error while opening sidebar",{error:e}),!1}},order:-50}),J=new n.hY({id:"view-in-folder",displayName:()=>(0,l.Tl)("files","View in folder"),iconSvgInline:()=>P,enabled(e,s){if("files"===s.id)return!1;if(1!==e.length)return!1;const t=e[0];return!!t.isDavRessource&&t.permissions!==n.aX.NONE&&t.type===n.pt.File},exec:async e=>!(!e||e.type!==n.pt.File)&&(window.OCP.Files.Router.goToRoute(null,{view:"files",fileid:e.fileid},{dir:e.dirname}),null),order:80});var Q=t(9518),Z=t(94219),X=t(82182);const ee=(0,L.pM)({name:"NewNodeDialog",components:{NcButton:Q.A,NcDialog:Z.A,NcTextField:X.A},props:{defaultName:{type:String,default:(0,l.Tl)("files","New folder")},otherNames:{type:Array,default:()=>[]},open:{type:Boolean,default:!0},name:{type:String,default:(0,l.Tl)("files","Create new folder")},label:{type:String,default:(0,l.Tl)("files","Folder name")}},emits:{close:e=>null===e||e},data(){return{localDefaultName:this.defaultName||(0,l.Tl)("files","New folder")}},computed:{errorMessage(){return this.isUniqueName?"":(0,l.Tl)("files","A file or folder with that name already exists.")},uniqueName(){return(0,n.E6)(this.localDefaultName,this.otherNames)},isUniqueName(){return this.localDefaultName===this.uniqueName}},watch:{defaultName(){this.localDefaultName=this.defaultName||(0,l.Tl)("files","New folder")},open(){this.$nextTick((()=>this.focusInput()))}},mounted(){this.localDefaultName=this.uniqueName,this.$nextTick((()=>this.focusInput()))},methods:{t:l.Tl,focusInput(){this.open&&this.$nextTick((()=>{var e,s;return null===(e=this.$refs.input)||void 0===e||null===(s=e.focus)||void 0===s?void 0:s.call(e)}))},onCreate(){this.$emit("close",this.localDefaultName)},onClose(e){e||this.$emit("close",null)}}}),se=(0,t(14486).A)(ee,(function(){var e=this,s=e._self._c;return e._self._setupProxy,s("NcDialog",{attrs:{name:e.name,open:e.open,"close-on-click-outside":"","out-transition":""},on:{"update:open":e.onClose},scopedSlots:e._u([{key:"actions",fn:function(){return[s("NcButton",{attrs:{type:"primary",disabled:!e.isUniqueName},on:{click:e.onCreate}},[e._v("\n\t\t\t"+e._s(e.t("files","Create"))+"\n\t\t")])]},proxy:!0}])},[e._v(" "),s("form",{on:{submit:function(s){return s.preventDefault(),e.onCreate.apply(null,arguments)}}},[s("NcTextField",{ref:"input",attrs:{error:!e.isUniqueName,"helper-text":e.errorMessage,label:e.label,value:e.localDefaultName},on:{"update:value":function(s){e.localDefaultName=s}}})],1)])}),[],!1,null,null,null).exports;function te(e,s){let t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};const n=s.map((e=>e.basename));return new Promise((s=>{(0,i.Ss)(se,{...t,defaultName:e,otherNames:n},(e=>{s(e)}))}))}const ne={id:"newFolder",displayName:(0,l.Tl)("files","New folder"),enabled:e=>0!=(e.permissions&n.aX.CREATE),iconSvgInline:'',order:0,async handler(e,s){const t=await te((0,l.Tl)("files","New folder"),s);if(null!==t){var m,d,c,g,u;const{fileid:s,source:f}=await(async(e,s)=>{const t=e.source+"/"+s,n=e.encodedSource+"/"+encodeURIComponent(s),a=await(0,r.Ay)({method:"MKCOL",url:n,headers:{Overwrite:"F"}});return{fileid:parseInt(a.headers["oc-fileid"]),source:t}})(e,t),p=new n.vd({source:f,id:s,mtime:new Date,owner:(null===(m=(0,y.HW)())||void 0===m?void 0:m.uid)||null,permissions:n.aX.ALL,root:(null==e?void 0:e.root)||"/files/"+(null===(d=(0,y.HW)())||void 0===d?void 0:d.uid),attributes:{"mount-type":null===(c=e.attributes)||void 0===c?void 0:c["mount-type"],"owner-id":null===(g=e.attributes)||void 0===g?void 0:g["owner-id"],"owner-display-name":null===(u=e.attributes)||void 0===u?void 0:u["owner-display-name"]}});(0,i.Te)((0,l.Tl)("files",'Created new folder "{name}"',{name:(0,U.basename)(f)})),o.A.debug("Created new folder",{folder:p,source:f}),(0,a.Ic)("files:node:created",p),window.OCP.Files.Router.goToRoute(null,{view:"files",fileid:p.fileid},{dir:e.path})}}};var ae=t(32981);let ie=(0,ae.C)("files","templates_path",!1);o.A.debug("Initial templates folder",{templatesPath:ie});const le={id:"template-picker",displayName:(0,l.Tl)("files","Create new templates folder"),iconSvgInline:'',order:10,enabled(e){var s;return!ie&&e.owner===(null===(s=(0,y.HW)())||void 0===s?void 0:s.uid)&&0!=(e.permissions&n.aX.CREATE)},async handler(e,s){const t=await te((0,l.Tl)("files","Templates"),s,{name:(0,l.Tl)("files","New template folder")});null!==t&&(async function(e,s){const t=(0,U.join)(e.path,s);try{o.A.debug("Initializing the templates directory",{templatePath:t});const{data:e}=await r.Ay.post((0,p.KT)("apps/files/api/v1/templates/path"),{templatePath:t,copySystemTemplates:!0});window.OCP.Files.Router.goToRoute(null,{view:"files",fileid:void 0},{dir:t}),o.A.info("Created new templates folder",{...e.ocs.data}),ie=e.ocs.data.templates_path}catch(e){o.A.error("Unable to initialize the templates directory"),(0,i.Qg)((0,l.Tl)("files","Unable to initialize the templates directory"))}}(e,t),(0,n.gj)("template-picker"))}},re=(0,L.$V)((()=>Promise.all([t.e(4208),t.e(8377)]).then(t.bind(t,88377))));let oe=null;const me=async e=>{if(null===oe){const s=document.createElement("div");s.id="template-picker",document.body.appendChild(s),oe=new L.Ay({render:s=>s(re,{ref:"picker",props:{parent:e}}),methods:{open(){this.$refs.picker.open(...arguments)}},el:s})}return oe},de=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"/";return"/"!==e?O(e):new z.CancelablePromise(((e,s,t)=>{const a=(0,n.Q$)(j).catch(s).then((t=>{var a;t?e({contents:t,folder:new n.vd({id:0,source:"".concat(n.PY).concat(n.lJ),root:n.lJ,owner:(null===(a=(0,y.HW)())||void 0===a?void 0:a.uid)||null,permissions:n.aX.READ})}):s()}));t((()=>a.cancel()))}))},ce=function(e){let s=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;return new n.Ss({id:ge(e.path),name:(0,U.basename)(e.path),icon:V,order:s,params:{dir:e.path,fileid:e.fileid.toString(),view:"favorites"},parent:"favorites",columns:[],getContents:de})},ge=function(e){return"favorite-".concat(function(e){let s=0;for(let t=0;t>>0}(e))};var ue=t(65899);const fe=(0,ae.C)("files","config",{show_hidden:!1,crop_image_previews:!0,sort_favorites_first:!0,sort_folders_first:!0,grid_view:!1}),pe=(0,ue.Ey)(),he=Math.round(Date.now()/1e3-1209600);var we;const Te=null===(we=(0,y.HW)())||void 0===we?void 0:we.uid,ve=function(e){const s=e.attributes["mount-type"];return Te===e.owner&&!["group","shared"].includes(s)};(0,n.Gg)(f),(0,n.Gg)(v),(0,n.Gg)(C),(0,n.Gg)(_),(0,n.Gg)(W),(0,n.Gg)(q),(0,n.Gg)(Y),(0,n.Gg)(G),(0,n.Gg)(K),(0,n.Gg)(J),(0,n.zj)(ne),(0,n.zj)(le),(0,ae.C)("files","templates",[]).forEach(((e,s)=>{(0,n.zj)({id:"template-new-".concat(e.app,"-").concat(s),displayName:e.label,iconClass:e.iconClass||"icon-file",iconSvgInline:e.iconSvgInline,enabled:e=>0!=(e.permissions&n.aX.CREATE),order:11,async handler(s,t){const n=me(s),a=await te("".concat(e.label).concat(e.extension),t,{label:(0,l.Tl)("files","Filename"),name:e.label});null!==a&&(await n).open(a,e)}})})),(()=>{const e=(0,ae.C)("files","favoriteFolders",[]),s=e.map(((e,s)=>ce(e,s)));o.A.debug("Generating favorites view",{favoriteFolders:e});const t=(0,n.bh)();t.register(new n.Ss({id:"favorites",name:(0,l.Tl)("files","Favorites"),caption:(0,l.Tl)("files","List of favorites files and folders."),emptyTitle:(0,l.Tl)("files","No favorites yet"),emptyCaption:(0,l.Tl)("files","Files and folders you mark as favorite will show up here"),icon:k,order:15,columns:[],getContents:de})),s.forEach((e=>t.register(e))),(0,a.B1)("files:favorites:added",(e=>{var s;e.type===n.pt.Folder&&(null!==e.path&&null!==(s=e.root)&&void 0!==s&&s.startsWith("/files")?r(e):o.A.error("Favorite folder is not within user files root",{node:e}))})),(0,a.B1)("files:favorites:removed",(e=>{var s;e.type===n.pt.Folder&&(null!==e.path&&null!==(s=e.root)&&void 0!==s&&s.startsWith("/files")?m(e.path):o.A.error("Favorite folder is not within user files root",{node:e}))}));const i=function(){e.sort(((e,s)=>e.path.localeCompare(s.path,(0,l.Z0)(),{ignorePunctuation:!0}))),e.forEach(((e,t)=>{const n=s.find((s=>s.id===ge(e.path)));n&&(n.order=t)}))},r=function(n){const a={path:n.path,fileid:n.fileid},l=ce(a);e.find((e=>e.path===n.path))||(e.push(a),s.push(l),i(),t.register(l))},m=function(n){const a=ge(n),l=e.findIndex((e=>e.path===n));-1!==l&&(e.splice(l,1),s.splice(l,1),t.remove(a),i())}})(),(0,n.bh)().register(new n.Ss({id:"files",name:(0,l.Tl)("files","All files"),caption:(0,l.Tl)("files","List of your files and folders."),icon:V,order:0,getContents:O})),(0,n.bh)().register(new n.Ss({id:"recent",name:(0,l.Tl)("files","Recent"),caption:(0,l.Tl)("files","List of recently modified files and folders."),emptyTitle:(0,l.Tl)("files","No recently modified files"),emptyCaption:(0,l.Tl)("files","Files and folders you recently modified will show up here."),icon:'',order:10,defaultSortKey:"mtime",getContents:function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"/";const s=function(){const e=(0,ue.nY)("userconfig",{state:()=>({userConfig:fe}),actions:{onUpdate(e,s){L.Ay.set(this.userConfig,e,s)},async update(e,s){await r.Ay.put((0,p.Jv)("/apps/files/api/v1/config/"+e),{value:s}),(0,a.Ic)("files:config:updated",{key:e,value:s})}}})(...arguments);return e._initialized||((0,a.B1)("files:config:updated",(function(s){let{key:t,value:n}=s;e.onUpdate(t,n)})),e._initialized=!0),e}(pe),t=t=>"/"!==e||s.userConfig.show_hidden||!t.dirname.split("/").some((e=>e.startsWith("."))),i=new AbortController;return new z.CancelablePromise((async(e,s,a)=>{a((()=>i.abort())),e((async()=>{var e;const s=(await j.search("/",{signal:i.signal,details:!0,data:(0,n.R3)(he)})).data.results.map(R).filter(t);return{folder:new n.vd({id:0,source:"".concat(n.PY).concat(n.lJ),root:n.lJ,owner:(null===(e=(0,y.HW)())||void 0===e?void 0:e.uid)||null,permissions:n.aX.READ}),contents:s}})())}))}})),(0,n.bh)().register(new n.Ss({id:"personal",name:(0,l.Tl)("files","Personal Files"),caption:(0,l.Tl)("files","List of your files and folders that are not shared."),emptyTitle:(0,l.Tl)("files","No personal files found"),emptyCaption:(0,l.Tl)("files","Files that are not shared will show up here."),icon:'',order:5,getContents:function(){return O(arguments.length>0&&void 0!==arguments[0]?arguments[0]:"/").then((e=>(e.contents=e.contents.filter(ve),e)))}})),"serviceWorker"in navigator?window.addEventListener("load",(async()=>{try{const e=(0,p.Jv)("/apps/files/preview-service-worker.js",{},{noRewrite:!0}),s=await navigator.serviceWorker.register(e,{scope:"/"});o.A.debug("SW registered: ",{registration:s})}catch(e){o.A.error("SW registration failed: ",{error:e})}})):o.A.debug("Service Worker is not enabled on this browser."),(0,n.Yc)("nc:hidden",{nc:"http://nextcloud.org/ns"}),(0,n.Yc)("nc:is-mount-root",{nc:"http://nextcloud.org/ns"}),(0,n.Yc)("nc:metadata-files-live-photo",{nc:"http://nextcloud.org/ns"})},18141:(e,s,t)=>{"use strict";t.d(s,{A:()=>r});var n=t(71354),a=t.n(n),i=t(76314),l=t.n(i)()(a());l.push([e.id,".upload-picker[data-v-1f097873] {\n display: inline-flex;\n align-items: center;\n height: 44px;\n}\n.upload-picker__progress[data-v-1f097873] {\n width: 200px;\n max-width: 0;\n transition: max-width var(--animation-quick) ease-in-out;\n margin-top: 8px;\n}\n.upload-picker__progress p[data-v-1f097873] {\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n}\n.upload-picker--uploading .upload-picker__progress[data-v-1f097873] {\n max-width: 200px;\n margin-right: 20px;\n margin-left: 8px;\n}\n.upload-picker--paused .upload-picker__progress[data-v-1f097873] {\n animation: breathing-1f097873 3s ease-out infinite normal;\n}\n@keyframes breathing-1f097873 {\n0% {\n opacity: 0.5;\n}\n25% {\n opacity: 1;\n}\n60% {\n opacity: 0.5;\n}\n100% {\n opacity: 0.5;\n}\n}","",{version:3,sources:["webpack://./node_modules/@nextcloud/upload/dist/assets/index-DiWRcN3o.css"],names:[],mappings:"AAAA;EACE,oBAAoB;EACpB,mBAAmB;EACnB,YAAY;AACd;AACA;EACE,YAAY;EACZ,YAAY;EACZ,wDAAwD;EACxD,eAAe;AACjB;AACA;EACE,gBAAgB;EAChB,mBAAmB;EACnB,uBAAuB;AACzB;AACA;EACE,gBAAgB;EAChB,kBAAkB;EAClB,gBAAgB;AAClB;AACA;EACE,yDAAyD;AAC3D;AACA;AACA;IACI,YAAY;AAChB;AACA;IACI,UAAU;AACd;AACA;IACI,YAAY;AAChB;AACA;IACI,YAAY;AAChB;AACA",sourcesContent:[".upload-picker[data-v-1f097873] {\n display: inline-flex;\n align-items: center;\n height: 44px;\n}\n.upload-picker__progress[data-v-1f097873] {\n width: 200px;\n max-width: 0;\n transition: max-width var(--animation-quick) ease-in-out;\n margin-top: 8px;\n}\n.upload-picker__progress p[data-v-1f097873] {\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n}\n.upload-picker--uploading .upload-picker__progress[data-v-1f097873] {\n max-width: 200px;\n margin-right: 20px;\n margin-left: 8px;\n}\n.upload-picker--paused .upload-picker__progress[data-v-1f097873] {\n animation: breathing-1f097873 3s ease-out infinite normal;\n}\n@keyframes breathing-1f097873 {\n0% {\n opacity: 0.5;\n}\n25% {\n opacity: 1;\n}\n60% {\n opacity: 0.5;\n}\n100% {\n opacity: 0.5;\n}\n}"],sourceRoot:""}]);const r=l},51111:e=>{"use strict";const s=new Set(["ENOTFOUND","ENETUNREACH","UNABLE_TO_GET_ISSUER_CERT","UNABLE_TO_GET_CRL","UNABLE_TO_DECRYPT_CERT_SIGNATURE","UNABLE_TO_DECRYPT_CRL_SIGNATURE","UNABLE_TO_DECODE_ISSUER_PUBLIC_KEY","CERT_SIGNATURE_FAILURE","CRL_SIGNATURE_FAILURE","CERT_NOT_YET_VALID","CERT_HAS_EXPIRED","CRL_NOT_YET_VALID","CRL_HAS_EXPIRED","ERROR_IN_CERT_NOT_BEFORE_FIELD","ERROR_IN_CERT_NOT_AFTER_FIELD","ERROR_IN_CRL_LAST_UPDATE_FIELD","ERROR_IN_CRL_NEXT_UPDATE_FIELD","OUT_OF_MEM","DEPTH_ZERO_SELF_SIGNED_CERT","SELF_SIGNED_CERT_IN_CHAIN","UNABLE_TO_GET_ISSUER_CERT_LOCALLY","UNABLE_TO_VERIFY_LEAF_SIGNATURE","CERT_CHAIN_TOO_LONG","CERT_REVOKED","INVALID_CA","PATH_LENGTH_EXCEEDED","INVALID_PURPOSE","CERT_UNTRUSTED","CERT_REJECTED","HOSTNAME_MISMATCH"]);e.exports=e=>!s.has(e&&e.code)},75270:e=>{function s(e,s){return null==e?s:e}e.exports=function(e){var t,n=s((e=e||{}).max,1),a=s(e.min,0),i=s(e.autostart,!0),l=s(e.ignoreSameProgress,!1),r=null,o=null,m=null,d=(t=s(e.historyTimeConstant,2.5),function(e,s,n){return e+n/(n+t)*(s-e)});function c(){g(a)}function g(e,s){if("number"!=typeof s&&(s=Date.now()),o!==s&&(!l||m!==e)){if(null===o||null===m)return m=e,void(o=s);var t=.001*(s-o),n=(e-m)/t;r=null===r?n:d(r,n,t),m=e,o=s}}return{start:c,reset:function(){r=null,o=null,m=null,i&&c()},report:g,estimate:function(e){if(null===m)return 1/0;if(m>=n)return 0;if(null===r)return 1/0;var s=(n-m)/r;return"number"==typeof e&&"number"==typeof o&&(s-=.001*(e-o)),Math.max(0,s)},rate:function(){return null===r?0:r}}}},2069:(e,s,t)=>{"use strict";t.d(s,{a:()=>Te,h:()=>Ne,i:()=>me,l:()=>xe,n:()=>Le,o:()=>Pe,t:()=>ve});var n=t(85072),a=t.n(n),i=t(97825),l=t.n(i),r=t(77659),o=t.n(r),m=t(55056),d=t.n(m),c=t(10540),g=t.n(c),u=t(41113),f=t.n(u),p=t(18141),h={};h.styleTagTransform=f(),h.setAttributes=d(),h.insert=o().bind(null,"head"),h.domAPI=l(),h.insertStyleElement=g(),a()(p.A,h),p.A&&p.A.locals&&p.A.locals;var w=t(32981),T=t(85471),v=t(21777),x=t(26304),y=t(71089),C=t(43627),L=t(65043);class k extends Error{constructor(e){super(e||"Promise was canceled"),this.name="CancelError"}get isCanceled(){return!0}}const b=Object.freeze({pending:Symbol("pending"),canceled:Symbol("canceled"),resolved:Symbol("resolved"),rejected:Symbol("rejected")});class S{static fn(e){return(...s)=>new S(((t,n,a)=>{s.push(a),e(...s).then(t,n)}))}#e=[];#s=!0;#t=b.pending;#n;#a;constructor(e){this.#n=new Promise(((s,t)=>{this.#a=t;const n=e=>{if(this.#t!==b.pending)throw new Error(`The \`onCancel\` handler was attached after the promise ${this.#t.description}.`);this.#e.push(e)};Object.defineProperties(n,{shouldReject:{get:()=>this.#s,set:e=>{this.#s=e}}}),e((e=>{this.#t===b.canceled&&n.shouldReject||(s(e),this.#i(b.resolved))}),(e=>{this.#t===b.canceled&&n.shouldReject||(t(e),this.#i(b.rejected))}),n)}))}then(e,s){return this.#n.then(e,s)}catch(e){return this.#n.catch(e)}finally(e){return this.#n.finally(e)}cancel(e){if(this.#t===b.pending){if(this.#i(b.canceled),this.#e.length>0)try{for(const e of this.#e)e()}catch(e){return void this.#a(e)}this.#s&&this.#a(new k(e))}}get isCanceled(){return this.#t===b.canceled}#i(e){this.#t===b.pending&&(this.#t=e)}}Object.setPrototypeOf(S.prototype,Promise.prototype);var _=t(9052);class A extends Error{constructor(e){super(e),this.name="TimeoutError"}}class U extends Error{constructor(e){super(),this.name="AbortError",this.message=e}}const F=e=>void 0===globalThis.DOMException?new U(e):new DOMException(e),P=e=>{const s=void 0===e.reason?F("This operation was aborted."):e.reason;return s instanceof Error?s:F(s)};class N{#l=[];enqueue(e,s){const t={priority:(s={priority:0,...s}).priority,run:e};if(this.size&&this.#l[this.size-1].priority>=s.priority)return void this.#l.push(t);const n=function(e,s,t){let n=0,a=e.length;for(;a>0;){const t=Math.trunc(a/2);let l=n+t;i=e[l],s.priority-i.priority<=0?(n=++l,a-=t+1):a=t}var i;return n}(this.#l,t);this.#l.splice(n,0,t)}dequeue(){const e=this.#l.shift();return e?.run}filter(e){return this.#l.filter((s=>s.priority===e.priority)).map((e=>e.run))}get size(){return this.#l.length}}class E extends _{#r;#o;#m=0;#d;#c;#g=0;#u;#f;#l;#p;#h=0;#w;#T;#v;timeout;constructor(e){if(super(),!("number"==typeof(e={carryoverConcurrencyCount:!1,intervalCap:Number.POSITIVE_INFINITY,interval:0,concurrency:Number.POSITIVE_INFINITY,autoStart:!0,queueClass:N,...e}).intervalCap&&e.intervalCap>=1))throw new TypeError(`Expected \`intervalCap\` to be a number from 1 and up, got \`${e.intervalCap?.toString()??""}\` (${typeof e.intervalCap})`);if(void 0===e.interval||!(Number.isFinite(e.interval)&&e.interval>=0))throw new TypeError(`Expected \`interval\` to be a finite number >= 0, got \`${e.interval?.toString()??""}\` (${typeof e.interval})`);this.#r=e.carryoverConcurrencyCount,this.#o=e.intervalCap===Number.POSITIVE_INFINITY||0===e.interval,this.#d=e.intervalCap,this.#c=e.interval,this.#l=new e.queueClass,this.#p=e.queueClass,this.concurrency=e.concurrency,this.timeout=e.timeout,this.#v=!0===e.throwOnTimeout,this.#T=!1===e.autoStart}get#x(){return this.#o||this.#m{this.#k()}),s)),!0;this.#m=this.#r?this.#h:0}return!1}#L(){if(0===this.#l.size)return this.#u&&clearInterval(this.#u),this.#u=void 0,this.emit("empty"),0===this.#h&&this.emit("idle"),!1;if(!this.#T){const e=!this.#_;if(this.#x&&this.#y){const s=this.#l.dequeue();return!!s&&(this.emit("active"),s(),e&&this.#S(),!0)}}return!1}#S(){this.#o||void 0!==this.#u||(this.#u=setInterval((()=>{this.#b()}),this.#c),this.#g=Date.now()+this.#c)}#b(){0===this.#m&&0===this.#h&&this.#u&&(clearInterval(this.#u),this.#u=void 0),this.#m=this.#r?this.#h:0,this.#A()}#A(){for(;this.#L(););}get concurrency(){return this.#w}set concurrency(e){if(!("number"==typeof e&&e>=1))throw new TypeError(`Expected \`concurrency\` to be a number from 1 and up, got \`${e}\` (${typeof e})`);this.#w=e,this.#A()}async#U(e){return new Promise(((s,t)=>{e.addEventListener("abort",(()=>{t(e.reason)}),{once:!0})}))}async add(e,s={}){return s={timeout:this.timeout,throwOnTimeout:this.#v,...s},new Promise(((t,n)=>{this.#l.enqueue((async()=>{this.#h++,this.#m++;try{s.signal?.throwIfAborted();let n=e({signal:s.signal});s.timeout&&(n=function(e,s){const{milliseconds:t,fallback:n,message:a,customTimers:i={setTimeout,clearTimeout}}=s;let l;const r=new Promise(((r,o)=>{if("number"!=typeof t||1!==Math.sign(t))throw new TypeError(`Expected \`milliseconds\` to be a positive number, got \`${t}\``);if(s.signal){const{signal:e}=s;e.aborted&&o(P(e)),e.addEventListener("abort",(()=>{o(P(e))}))}if(t===Number.POSITIVE_INFINITY)return void e.then(r,o);const m=new A;l=i.setTimeout.call(void 0,(()=>{if(n)try{r(n())}catch(e){o(e)}else"function"==typeof e.cancel&&e.cancel(),!1===a?r():a instanceof Error?o(a):(m.message=a??`Promise timed out after ${t} milliseconds`,o(m))}),t),(async()=>{try{r(await e)}catch(e){o(e)}})()})).finally((()=>{r.clear()}));return r.clear=()=>{i.clearTimeout.call(void 0,l),l=void 0},r}(Promise.resolve(n),{milliseconds:s.timeout})),s.signal&&(n=Promise.race([n,this.#U(s.signal)]));const a=await n;t(a),this.emit("completed",a)}catch(e){if(e instanceof A&&!s.throwOnTimeout)return void t();n(e),this.emit("error",e)}finally{this.#C()}}),s),this.emit("add"),this.#L()}))}async addAll(e,s){return Promise.all(e.map((async e=>this.add(e,s))))}start(){return this.#T?(this.#T=!1,this.#A(),this):this}pause(){this.#T=!0}clear(){this.#l=new this.#p}async onEmpty(){0!==this.#l.size&&await this.#F("empty")}async onSizeLessThan(e){this.#l.sizethis.#l.size{const n=()=>{s&&!s()||(this.off(e,n),t())};this.on(e,n)}))}get size(){return this.#l.size}sizeBy(e){return this.#l.filter(e).length}get pending(){return this.#h}get isPaused(){return this.#T}}var B=t(63814),I=t(51111);const z="axios-retry";function j(e){return!e.response&&!!e.code&&!["ERR_CANCELED","ECONNABORTED"].includes(e.code)&&I(e)}const R=["get","head","options"],O=R.concat(["put","delete"]);function D(e){return"ECONNABORTED"!==e.code&&(!e.response||429===e.response.status||e.response.status>=500&&e.response.status<=599)}function M(e){return!!e.config?.method&&D(e)&&-1!==O.indexOf(e.config.method)}function H(e){return j(e)||M(e)}function W(e=void 0){const s=e?.response?.headers["retry-after"];if(!s)return 0;let t=1e3*(Number(s)||0);return 0===t&&(t=(new Date(s).valueOf()||0)-Date.now()),Math.max(0,t)}const V={retries:3,retryCondition:H,retryDelay:function(e=0,s=void 0){return Math.max(0,W(s))},shouldResetTimeout:!1,onRetry:()=>{},onMaxRetryTimesExceeded:()=>{},validateResponse:null};function q(e,s){const t=function(e,s){return{...V,...s,...e[z]}}(e,s||{});return t.retryCount=t.retryCount||0,t.lastRequestTime=t.lastRequestTime||Date.now(),e[z]=t,t}const Y=(e,s)=>{const t=e.interceptors.request.use((e=>(q(e,s),e[z]?.validateResponse&&(e.validateStatus=()=>!1),e))),n=e.interceptors.response.use(null,(async t=>{const{config:n}=t;if(!n)return Promise.reject(t);const a=q(n,s);return t.response&&a.validateResponse?.(t.response)?t.response:await async function(e,s){const{retries:t,retryCondition:n}=e,a=(e.retryCount||0)e],await l(s.retryCount,t,n),n.signal?.aborted?Promise.resolve(e(n)):new Promise((s=>{const t=()=>{clearTimeout(a),s(e(n))},a=setTimeout((()=>{s(e(n)),n.signal?.removeEventListener&&n.signal.removeEventListener("abort",t)}),r);n.signal?.addEventListener&&n.signal.addEventListener("abort",t,{once:!0})}))}(e,a,t,n):(await async function(e,s){e.retryCount>=e.retries&&await e.onMaxRetryTimesExceeded(s,e.retryCount)}(a,t),Promise.reject(t))}));return{requestInterceptorId:t,responseInterceptorId:n}};Y.isNetworkError=j,Y.isSafeRequestError=function(e){return!!e.config?.method&&D(e)&&-1!==R.indexOf(e.config.method)},Y.isIdempotentRequestError=M,Y.isNetworkOrIdempotentRequestError=H,Y.exponentialDelay=function(e=0,s=void 0,t=100){const n=2**e*t,a=Math.max(n,W(s));return a+.2*a*Math.random()},Y.isRetryableError=D;const G=Y;var $=t(82148);t(42838),t(70580);var K=Object.defineProperty,J=(e,s,t)=>(((e,s,t)=>{s in e?K(e,s,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[s]=t})(e,"symbol"!=typeof s?s+"":s,t),t);class Q{constructor(e,s,t){J(this,"gt"),this.gt=new $({debug:t,sourceLocale:"en"});for(const e in s)this.gt.addTranslations(e,"messages",s[e]);this.gt.setLocale(e)}subtitudePlaceholders(e,s){return e.replace(/{([^{}]*)}/g,((e,t)=>{const n=s[t];return"string"==typeof n||"number"==typeof n?n.toString():e}))}gettext(e,s={}){return this.subtitudePlaceholders(this.gt.gettext(e),s)}ngettext(e,s,t,n={}){return this.subtitudePlaceholders(this.gt.ngettext(e,s,t).replace(/%n/g,t.toString()),n)}}var Z=t(35947),X=t(85168),ee=t(75270),se=t(63420),te=t(50953),ne=t(10501),ae=t(24764),ie=t(9518),le=t(6695),re=t(95101);const oe=e=>"FileSystemFileEntry"in window&&e instanceof FileSystemFileEntry,me=e=>"FileSystemEntry"in window&&e instanceof FileSystemEntry;G(L.Ay,{retries:0});const de=async function(e,s,t,n=(()=>{}),a=void 0,i={},l=5){let r;return r=s instanceof Blob?s:await s(),a&&(i.Destination=a),i["Content-Type"]||(i["Content-Type"]="application/octet-stream"),await L.Ay.request({method:"PUT",url:e,data:r,signal:t,onUploadProgress:n,headers:i,"axios-retry":{retries:l,retryDelay:(e,s)=>G.exponentialDelay(e,s,1e3)}})},ce=function(e,s,t){return 0===s&&e.size<=t?Promise.resolve(new Blob([e],{type:e.type||"application/octet-stream"})):Promise.resolve(new Blob([e.slice(s,s+t)],{type:"application/octet-stream"}))},ge=function(e=void 0){const s=window.OC?.appConfig?.files?.max_chunk_size;if(s<=0)return 0;if(!Number(s))return 10485760;const t=Math.max(Number(s),5242880);return void 0===e?t:Math.max(t,Math.ceil(e/1e4))};var ue=(e=>(e[e.INITIALIZED=0]="INITIALIZED",e[e.UPLOADING=1]="UPLOADING",e[e.ASSEMBLING=2]="ASSEMBLING",e[e.FINISHED=3]="FINISHED",e[e.CANCELLED=4]="CANCELLED",e[e.FAILED=5]="FAILED",e))(ue||{});class fe{_source;_file;_isChunked;_chunks;_size;_uploaded=0;_startTime=0;_status=0;_controller;_response=null;constructor(e,s=!1,t,n){const a=Math.min(ge()>0?Math.ceil(t/ge()):1,1e4);this._source=e,this._isChunked=s&&ge()>0&&a>1,this._chunks=this._isChunked?a:1,this._size=t,this._file=n,this._controller=new AbortController}get source(){return this._source}get file(){return this._file}get isChunked(){return this._isChunked}get chunks(){return this._chunks}get size(){return this._size}get startTime(){return this._startTime}set response(e){this._response=e}get response(){return this._response}get uploaded(){return this._uploaded}set uploaded(e){if(e>=this._size)return this._status=this._isChunked?2:3,void(this._uploaded=this._size);this._status=1,this._uploaded=e,0===this._startTime&&(this._startTime=(new Date).getTime())}get status(){return this._status}set status(e){this._status=e}get signal(){return this._controller.signal}cancel(){this._controller.abort(),this._status=4}}class pe extends File{_originalName;_path;_children;constructor(e,s){super([],(0,y.P8)(e),{type:"httpd/unix-directory",lastModified:0}),this._children=new Map,this._originalName=(0,y.P8)(e),this._path=e,s&&s.forEach((e=>this.addChild(e)))}get size(){return this.children.reduce(((e,s)=>e+s.size),0)}get lastModified(){return this.children.reduce(((e,s)=>Math.max(e,s.lastModified)),0)}get originalName(){return this._originalName}get children(){return Array.from(this._children.values())}get webkitRelativePath(){return this._path}getChild(e){return this._children.get(e)??null}async addChild(e){const s=this._path&&`${this._path}/`;if(oe(e))e=await new Promise(((s,t)=>e.file(s,t)));else if("FileSystemDirectoryEntry"in window&&e instanceof FileSystemDirectoryEntry){const t=e.createReader(),n=await new Promise(((e,s)=>t.readEntries(e,s)));return void this._children.set(e.name,new pe(`${s}${e.name}`,n))}const t=e.webkitRelativePath??e.name;if(t.includes("/")){if(!t.startsWith(this._path))throw new Error(`File ${t} is not a child of ${this._path}`);const n=t.slice(s.length),a=(0,y.P8)(n);if(a===n)this._children.set(a,e);else{const t=n.slice(0,n.indexOf("/"));this._children.has(t)?this._children.get(t).addChild(e):this._children.set(t,new pe(`${s}${t}`,[e]))}}else this._children.set(e.name,e)}}const he=(new class{constructor(){J(this,"locale"),J(this,"translations",{}),J(this,"debug",!1)}setLanguage(e){return this.locale=e,this}detectLocale(){return this.setLanguage((document.documentElement.lang||"en").replace("-","_"))}addTranslation(e,s){return this.translations[e]=s,this}enableDebugMode(){return this.debug=!0,this}build(){return new Q(this.locale||"en",this.translations,this.debug)}}).detectLocale();[{locale:"af",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Afrikaans (https://www.transifex.com/nextcloud/teams/64236/af/)","Content-Type":"text/plain; charset=UTF-8",Language:"af","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Afrikaans (https://www.transifex.com/nextcloud/teams/64236/af/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: af\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"ar",json:{charset:"utf-8",headers:{"Last-Translator":"Ali , 2024","Language-Team":"Arabic (https://app.transifex.com/nextcloud/teams/64236/ar/)","Content-Type":"text/plain; charset=UTF-8",Language:"ar","Plural-Forms":"nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nAli , 2024\n"},msgstr:["Last-Translator: Ali , 2024\nLanguage-Team: Arabic (https://app.transifex.com/nextcloud/teams/64236/ar/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ar\nPlural-Forms: nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;\n"]},'"{filename}" contains invalid characters, how do you want to continue?':{msgid:'"{filename}" contains invalid characters, how do you want to continue?',msgstr:['"{filename}" يحتوي على حروف غير مقبولة. كيف ترغب في الاستمرار؟']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} ملف متعارض","{count} ملف متعارض","{count} ملفان متعارضان","{count} ملف متعارض","{count} ملفات متعارضة","{count} ملفات متعارضة"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} ملف متعارض في n {dirname}","{count} ملف متعارض في n {dirname}","{count} ملفان متعارضان في n {dirname}","{count} ملف متعارض في n {dirname}","{count} ملفات متعارضة في n {dirname}","{count} ملفات متعارضة في n {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} ثانية متبقية"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} متبقية"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["باقٍ بضعُ ثوانٍ"]},Cancel:{msgid:"Cancel",msgstr:["إلغاء"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["إلغِ العملية بالكامل"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["إلغاء عمليات رفع الملفات"]},Continue:{msgid:"Continue",msgstr:["إستمر"]},"Create new":{msgid:"Create new",msgstr:["إنشاء جديد"]},"estimating time left":{msgid:"estimating time left",msgstr:["تقدير الوقت المتبقي"]},"Existing version":{msgid:"Existing version",msgstr:["الإصدار الحالي"]},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["إذا اخترت الاحتفاظ بالنسختين فسيتم إلحاق رقم عداد آخر اسم الملف الوارد."]},"Invalid file name":{msgid:"Invalid file name",msgstr:["اسم الملف غير صحيح"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["تاريخ آخر تعديل غير معلوم"]},New:{msgid:"New",msgstr:["جديد"]},"New version":{msgid:"New version",msgstr:["نسخة جديدة"]},paused:{msgid:"paused",msgstr:["مُجمَّد"]},"Preview image":{msgid:"Preview image",msgstr:["معاينة الصورة"]},Rename:{msgid:"Rename",msgstr:["تغيير التسمية"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["حدِّد كل صناديق الخيارات"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["حدِّد كل الملفات الموجودة"]},"Select all new files":{msgid:"Select all new files",msgstr:["حدِّد كل الملفات الجديدة"]},Skip:{msgid:"Skip",msgstr:["تخطِّي"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["تخطَّ {count} ملف","تخطَّ {count} ملف","تخطَّ {count} ملف","تخطَّ {count} ملف","تخطَّ {count} ملف","تخطَّ {count} ملف"]},"Unknown size":{msgid:"Unknown size",msgstr:["حجم غير معلوم"]},"Upload files":{msgid:"Upload files",msgstr:["رفع ملفات"]},"Upload folders":{msgid:"Upload folders",msgstr:["رفع مجلدات"]},"Upload from device":{msgid:"Upload from device",msgstr:["الرفع من جهاز "]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["تمّ إلغاء عملية رفع الملفات"]},"Upload progress":{msgid:"Upload progress",msgstr:["تقدُّم الرفع "]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["عند تحديد مجلد وارد، أي ملفات متعارضة بداخله ستتم الكتابة فوقها."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["عند تحديد مجلد وارد، ستتم كتابة المحتوى في المجلد الموجود و سيتم تنفيذ حل التعارض بشكل تعاوُدي."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["أيُّ الملفات ترغب في الإبقاء عليها؟"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["يجب أن تختار نسخة واحدة على الأقل من كل ملف للاستمرار."]}}}}},{locale:"ar_SA",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Arabic (Saudi Arabia) (https://www.transifex.com/nextcloud/teams/64236/ar_SA/)","Content-Type":"text/plain; charset=UTF-8",Language:"ar_SA","Plural-Forms":"nplurals=6; plural=(n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Arabic (Saudi Arabia) (https://www.transifex.com/nextcloud/teams/64236/ar_SA/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ar_SA\nPlural-Forms: nplurals=6; plural=(n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"ast",json:{charset:"utf-8",headers:{"Last-Translator":"enolp , 2023","Language-Team":"Asturian (https://app.transifex.com/nextcloud/teams/64236/ast/)","Content-Type":"text/plain; charset=UTF-8",Language:"ast","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nenolp , 2023\n"},msgstr:["Last-Translator: enolp , 2023\nLanguage-Team: Asturian (https://app.transifex.com/nextcloud/teams/64236/ast/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ast\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} ficheru en coflictu","{count} ficheros en coflictu"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} ficheru en coflictu en {dirname}","{count} ficheros en coflictu en {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["Queden {seconds} segundos"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["Tiempu que queda: {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["queden unos segundos"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Encaboxar les xubes"]},Continue:{msgid:"Continue",msgstr:["Siguir"]},"estimating time left":{msgid:"estimating time left",msgstr:["estimando'l tiempu que falta"]},"Existing version":{msgid:"Existing version",msgstr:["Versión esistente"]},"If you select both versions, the copied file will have a number added to its name.":{msgid:"If you select both versions, the copied file will have a number added to its name.",msgstr:["Si seleiciones dambes versiones, el ficheru copiáu va tener un númberu amestáu al so nome."]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["La data de la última modificación ye desconocida"]},New:{msgid:"New",msgstr:["Nuevu"]},"New version":{msgid:"New version",msgstr:["Versión nueva"]},paused:{msgid:"paused",msgstr:["en posa"]},"Preview image":{msgid:"Preview image",msgstr:["Previsualizar la imaxe"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Marcar toles caxelles"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Seleicionar tolos ficheros esistentes"]},"Select all new files":{msgid:"Select all new files",msgstr:["Seleicionar tolos ficheros nuevos"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Saltar esti ficheru","Saltar {count} ficheros"]},"Unknown size":{msgid:"Unknown size",msgstr:["Tamañu desconocíu"]},"Upload cancelled":{msgid:"Upload cancelled",msgstr:["Encaboxóse la xuba"]},"Upload files":{msgid:"Upload files",msgstr:["Xubir ficheros"]},"Upload progress":{msgid:"Upload progress",msgstr:["Xuba en cursu"]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["¿Qué ficheros quies caltener?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Tienes de seleicionar polo menos una versión de cada ficheru pa siguir."]}}}}},{locale:"az",json:{charset:"utf-8",headers:{"Last-Translator":"Rashad Aliyev , 2023","Language-Team":"Azerbaijani (https://app.transifex.com/nextcloud/teams/64236/az/)","Content-Type":"text/plain; charset=UTF-8",Language:"az","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nRashad Aliyev , 2023\n"},msgstr:["Last-Translator: Rashad Aliyev , 2023\nLanguage-Team: Azerbaijani (https://app.transifex.com/nextcloud/teams/64236/az/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: az\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} saniyə qalıb"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["{time} qalıb"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["bir neçə saniyə qalıb"]},Add:{msgid:"Add",msgstr:["Əlavə et"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Yükləməni imtina et"]},"estimating time left":{msgid:"estimating time left",msgstr:["Təxmini qalan vaxt"]},paused:{msgid:"paused",msgstr:["pauzadadır"]},"Upload files":{msgid:"Upload files",msgstr:["Faylları yüklə"]}}}}},{locale:"be",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Belarusian (https://www.transifex.com/nextcloud/teams/64236/be/)","Content-Type":"text/plain; charset=UTF-8",Language:"be","Plural-Forms":"nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Belarusian (https://www.transifex.com/nextcloud/teams/64236/be/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: be\nPlural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"bg_BG",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Bulgarian (Bulgaria) (https://www.transifex.com/nextcloud/teams/64236/bg_BG/)","Content-Type":"text/plain; charset=UTF-8",Language:"bg_BG","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Bulgarian (Bulgaria) (https://www.transifex.com/nextcloud/teams/64236/bg_BG/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: bg_BG\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"bn_BD",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Bengali (Bangladesh) (https://www.transifex.com/nextcloud/teams/64236/bn_BD/)","Content-Type":"text/plain; charset=UTF-8",Language:"bn_BD","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Bengali (Bangladesh) (https://www.transifex.com/nextcloud/teams/64236/bn_BD/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: bn_BD\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"br",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Breton (https://www.transifex.com/nextcloud/teams/64236/br/)","Content-Type":"text/plain; charset=UTF-8",Language:"br","Plural-Forms":"nplurals=5; plural=((n%10 == 1) && (n%100 != 11) && (n%100 !=71) && (n%100 !=91) ? 0 :(n%10 == 2) && (n%100 != 12) && (n%100 !=72) && (n%100 !=92) ? 1 :(n%10 ==3 || n%10==4 || n%10==9) && (n%100 < 10 || n% 100 > 19) && (n%100 < 70 || n%100 > 79) && (n%100 < 90 || n%100 > 99) ? 2 :(n != 0 && n % 1000000 == 0) ? 3 : 4);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Breton (https://www.transifex.com/nextcloud/teams/64236/br/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: br\nPlural-Forms: nplurals=5; plural=((n%10 == 1) && (n%100 != 11) && (n%100 !=71) && (n%100 !=91) ? 0 :(n%10 == 2) && (n%100 != 12) && (n%100 !=72) && (n%100 !=92) ? 1 :(n%10 ==3 || n%10==4 || n%10==9) && (n%100 < 10 || n% 100 > 19) && (n%100 < 70 || n%100 > 79) && (n%100 < 90 || n%100 > 99) ? 2 :(n != 0 && n % 1000000 == 0) ? 3 : 4);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"bs",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Bosnian (https://www.transifex.com/nextcloud/teams/64236/bs/)","Content-Type":"text/plain; charset=UTF-8",Language:"bs","Plural-Forms":"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Bosnian (https://www.transifex.com/nextcloud/teams/64236/bs/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: bs\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"ca",json:{charset:"utf-8",headers:{"Last-Translator":"Toni Hermoso Pulido , 2022","Language-Team":"Catalan (https://www.transifex.com/nextcloud/teams/64236/ca/)","Content-Type":"text/plain; charset=UTF-8",Language:"ca","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nMarc Riera , 2022\nToni Hermoso Pulido , 2022\n"},msgstr:["Last-Translator: Toni Hermoso Pulido , 2022\nLanguage-Team: Catalan (https://www.transifex.com/nextcloud/teams/64236/ca/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ca\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["Queden {seconds} segons"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["Queden {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["Queden uns segons"]},Add:{msgid:"Add",msgstr:["Afegeix"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Cancel·la les pujades"]},"estimating time left":{msgid:"estimating time left",msgstr:["S'està estimant el temps restant"]},paused:{msgid:"paused",msgstr:["En pausa"]},"Upload files":{msgid:"Upload files",msgstr:["Puja els fitxers"]}}}}},{locale:"cs",json:{charset:"utf-8",headers:{"Last-Translator":"Pavel Borecki , 2022","Language-Team":"Czech (https://www.transifex.com/nextcloud/teams/64236/cs/)","Content-Type":"text/plain; charset=UTF-8",Language:"cs","Plural-Forms":"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nPavel Borecki , 2022\n"},msgstr:["Last-Translator: Pavel Borecki , 2022\nLanguage-Team: Czech (https://www.transifex.com/nextcloud/teams/64236/cs/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: cs\nPlural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["zbývá {seconds}"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["zbývá {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["zbývá několik sekund"]},Add:{msgid:"Add",msgstr:["Přidat"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Zrušit nahrávání"]},"estimating time left":{msgid:"estimating time left",msgstr:["odhadovaný zbývající čas"]},paused:{msgid:"paused",msgstr:["pozastaveno"]}}}}},{locale:"cs_CZ",json:{charset:"utf-8",headers:{"Last-Translator":"Michal Šmahel , 2024","Language-Team":"Czech (Czech Republic) (https://app.transifex.com/nextcloud/teams/64236/cs_CZ/)","Content-Type":"text/plain; charset=UTF-8",Language:"cs_CZ","Plural-Forms":"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nMichal Šmahel , 2024\n"},msgstr:["Last-Translator: Michal Šmahel , 2024\nLanguage-Team: Czech (Czech Republic) (https://app.transifex.com/nextcloud/teams/64236/cs_CZ/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: cs_CZ\nPlural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\n"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} kolize souborů","{count} kolize souborů","{count} kolizí souborů","{count} kolize souborů"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} kolize souboru v {dirname}","{count} kolize souboru v {dirname}","{count} kolizí souborů v {dirname}","{count} kolize souboru v {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["zbývá {seconds}"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["zbývá {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["zbývá několik sekund"]},Cancel:{msgid:"Cancel",msgstr:["Zrušit"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Zrušit celou operaci"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Zrušit nahrávání"]},Continue:{msgid:"Continue",msgstr:["Pokračovat"]},"estimating time left":{msgid:"estimating time left",msgstr:["odhaduje se zbývající čas"]},"Existing version":{msgid:"Existing version",msgstr:["Existující verze"]},"If you select both versions, the copied file will have a number added to its name.":{msgid:"If you select both versions, the copied file will have a number added to its name.",msgstr:["Pokud vyberete obě verze, zkopírovaný soubor bude mít k názvu přidáno číslo."]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Neznámé datum poslední úpravy"]},New:{msgid:"New",msgstr:["Nové"]},"New version":{msgid:"New version",msgstr:["Nová verze"]},paused:{msgid:"paused",msgstr:["pozastaveno"]},"Preview image":{msgid:"Preview image",msgstr:["Náhled obrázku"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Označit všechny zaškrtávací kolonky"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Vybrat veškeré stávající soubory"]},"Select all new files":{msgid:"Select all new files",msgstr:["Vybrat veškeré nové soubory"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Přeskočit tento soubor","Přeskočit {count} soubory","Přeskočit {count} souborů","Přeskočit {count} soubory"]},"Unknown size":{msgid:"Unknown size",msgstr:["Neznámá velikost"]},"Upload cancelled":{msgid:"Upload cancelled",msgstr:["Nahrávání zrušeno"]},"Upload files":{msgid:"Upload files",msgstr:["Nahrát soubory"]},"Upload progress":{msgid:"Upload progress",msgstr:["Postup v nahrávání"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Po výběru příchozí složky budou rovněž přepsány všechny v ní obsažené konfliktní soubory"]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Které soubory si přejete ponechat?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Aby bylo možné pokračovat, je třeba vybrat alespoň jednu verzi od každého souboru."]}}}}},{locale:"cy_GB",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Welsh (United Kingdom) (https://www.transifex.com/nextcloud/teams/64236/cy_GB/)","Content-Type":"text/plain; charset=UTF-8",Language:"cy_GB","Plural-Forms":"nplurals=4; plural=(n==1) ? 0 : (n==2) ? 1 : (n != 8 && n != 11) ? 2 : 3;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Welsh (United Kingdom) (https://www.transifex.com/nextcloud/teams/64236/cy_GB/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: cy_GB\nPlural-Forms: nplurals=4; plural=(n==1) ? 0 : (n==2) ? 1 : (n != 8 && n != 11) ? 2 : 3;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"da",json:{charset:"utf-8",headers:{"Last-Translator":"Martin Bonde , 2024","Language-Team":"Danish (https://app.transifex.com/nextcloud/teams/64236/da/)","Content-Type":"text/plain; charset=UTF-8",Language:"da","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nMartin Bonde , 2024\n"},msgstr:["Last-Translator: Martin Bonde , 2024\nLanguage-Team: Danish (https://app.transifex.com/nextcloud/teams/64236/da/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: da\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} fil konflikt","{count} filer i konflikt"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} fil konflikt i {dirname}","{count} filer i konflikt i {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{sekunder} sekunder tilbage"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{tid} tilbage"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["et par sekunder tilbage"]},Cancel:{msgid:"Cancel",msgstr:["Annuller"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Annuller hele handlingen"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Annuller uploads"]},Continue:{msgid:"Continue",msgstr:["Fortsæt"]},"estimating time left":{msgid:"estimating time left",msgstr:["estimering af resterende tid"]},"Existing version":{msgid:"Existing version",msgstr:["Eksisterende version"]},"If you select both versions, the copied file will have a number added to its name.":{msgid:"If you select both versions, the copied file will have a number added to its name.",msgstr:["Hvis du vælger begge versioner vil den kopierede fil få et nummer tilføjet til sit navn."]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Sidste modifikationsdato ukendt"]},New:{msgid:"New",msgstr:["Ny"]},"New version":{msgid:"New version",msgstr:["Ny version"]},paused:{msgid:"paused",msgstr:["pauset"]},"Preview image":{msgid:"Preview image",msgstr:["Forhåndsvisning af billede"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Vælg alle felter"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Vælg alle eksisterende filer"]},"Select all new files":{msgid:"Select all new files",msgstr:["Vælg alle nye filer"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Spring denne fil over","Spring {count} filer over"]},"Unknown size":{msgid:"Unknown size",msgstr:["Ukendt størrelse"]},"Upload cancelled":{msgid:"Upload cancelled",msgstr:["Upload annulleret"]},"Upload files":{msgid:"Upload files",msgstr:["Upload filer"]},"Upload progress":{msgid:"Upload progress",msgstr:["Upload fremskridt"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Når en indgående mappe er valgt, vil alle modstridende filer i den også blive overskrevet."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Hvilke filer ønsker du at beholde?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Du skal vælge mindst én version af hver fil for at fortsætte."]}}}}},{locale:"de",json:{charset:"utf-8",headers:{"Last-Translator":"Mario Siegmann , 2024","Language-Team":"German (https://app.transifex.com/nextcloud/teams/64236/de/)","Content-Type":"text/plain; charset=UTF-8",Language:"de","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nMario Siegmann , 2024\n"},msgstr:["Last-Translator: Mario Siegmann , 2024\nLanguage-Team: German (https://app.transifex.com/nextcloud/teams/64236/de/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: de\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} Datei-Konflikt","{count} Datei-Konflikte"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} Datei-Konflikt in {dirname}","{count} Datei-Konflikte in {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} Sekunden verbleibend"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} verbleibend"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["noch ein paar Sekunden"]},Cancel:{msgid:"Cancel",msgstr:["Abbrechen"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Den gesamten Vorgang abbrechen"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Hochladen abbrechen"]},Continue:{msgid:"Continue",msgstr:["Fortsetzen"]},"estimating time left":{msgid:"estimating time left",msgstr:["Geschätzte verbleibende Zeit"]},"Existing version":{msgid:"Existing version",msgstr:["Vorhandene Version"]},"If you select both versions, the copied file will have a number added to its name.":{msgid:"If you select both versions, the copied file will have a number added to its name.",msgstr:["Wenn du beide Versionen auswählst, wird der kopierten Datei eine Nummer zum Namen hinzugefügt."]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Datum der letzten Änderung unbekannt"]},New:{msgid:"New",msgstr:["Neu"]},"New version":{msgid:"New version",msgstr:["Neue Version"]},paused:{msgid:"paused",msgstr:["Pausiert"]},"Preview image":{msgid:"Preview image",msgstr:["Vorschaubild"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Alle Kontrollkästchen aktivieren"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Alle vorhandenen Dateien auswählen"]},"Select all new files":{msgid:"Select all new files",msgstr:["Alle neuen Dateien auswählen"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Diese Datei überspringen","{count} Dateien überspringen"]},"Unknown size":{msgid:"Unknown size",msgstr:["Unbekannte Größe"]},"Upload cancelled":{msgid:"Upload cancelled",msgstr:["Hochladen abgebrochen"]},"Upload files":{msgid:"Upload files",msgstr:["Dateien hochladen"]},"Upload progress":{msgid:"Upload progress",msgstr:["Fortschritt beim Hochladen"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Wenn ein eingehender Ordner ausgewählt wird, werden alle darin enthaltenen Konfliktdateien ebenfalls überschrieben."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Welche Dateien möchtest du behalten?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Du musst mindestens eine Version jeder Datei auswählen, um fortzufahren."]}}}}},{locale:"de_DE",json:{charset:"utf-8",headers:{"Last-Translator":"Mario Siegmann , 2024","Language-Team":"German (Germany) (https://app.transifex.com/nextcloud/teams/64236/de_DE/)","Content-Type":"text/plain; charset=UTF-8",Language:"de_DE","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nMario Siegmann , 2024\n"},msgstr:["Last-Translator: Mario Siegmann , 2024\nLanguage-Team: German (Germany) (https://app.transifex.com/nextcloud/teams/64236/de_DE/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: de_DE\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{filename}" contains invalid characters, how do you want to continue?':{msgid:'"{filename}" contains invalid characters, how do you want to continue?',msgstr:['"{filename}" enthält ungültige Zeichen. Wie möchten Sie fortfahren?']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} Datei-Konflikt","{count} Datei-Konflikte"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} Datei-Konflikt in {dirname}","{count} Datei-Konflikte in {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} Sekunden verbleiben"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} verbleibend"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["ein paar Sekunden verbleiben"]},Cancel:{msgid:"Cancel",msgstr:["Abbrechen"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Den gesamten Vorgang abbrechen"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Hochladen abbrechen"]},Continue:{msgid:"Continue",msgstr:["Fortsetzen"]},"Create new":{msgid:"Create new",msgstr:["Neu erstellen"]},"estimating time left":{msgid:"estimating time left",msgstr:["Geschätzte verbleibende Zeit"]},"Existing version":{msgid:"Existing version",msgstr:["Vorhandene Version"]},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Wenn Sie beide Versionen auswählen, wird der eingehenden Datei eine Nummer zum Namen hinzugefügt."]},"Invalid file name":{msgid:"Invalid file name",msgstr:["Ungültiger Dateiname"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Datum der letzten Änderung unbekannt"]},New:{msgid:"New",msgstr:["Neu"]},"New version":{msgid:"New version",msgstr:["Neue Version"]},paused:{msgid:"paused",msgstr:["Pausiert"]},"Preview image":{msgid:"Preview image",msgstr:["Vorschaubild"]},Rename:{msgid:"Rename",msgstr:["Umbenennen"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Alle Kontrollkästchen aktivieren"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Alle vorhandenen Dateien auswählen"]},"Select all new files":{msgid:"Select all new files",msgstr:["Alle neuen Dateien auswählen"]},Skip:{msgid:"Skip",msgstr:["Überspringen"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["{count} Datei überspringen","{count} Dateien überspringen"]},"Unknown size":{msgid:"Unknown size",msgstr:["Unbekannte Größe"]},"Upload files":{msgid:"Upload files",msgstr:["Dateien hochladen"]},"Upload folders":{msgid:"Upload folders",msgstr:["Ordner hochladen"]},"Upload from device":{msgid:"Upload from device",msgstr:["Vom Gerät hochladen"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Das Hochladen wurde abgebrochen"]},"Upload progress":{msgid:"Upload progress",msgstr:["Fortschritt beim Hochladen"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Wenn ein eingehender Ordner ausgewählt wird, werden alle darin enthaltenen Konfliktdateien ebenfalls überschrieben."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Bei Auswahl eines eingehenden Ordners wird der Inhalt in den vorhandenen Ordner geschrieben und eine rekursive Konfliktlösung durchgeführt."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Welche Dateien möchten Sie behalten?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Sie müssen mindestens eine Version jeder Datei auswählen, um fortzufahren."]}}}}},{locale:"el",json:{charset:"utf-8",headers:{"Last-Translator":"Nik Pap, 2022","Language-Team":"Greek (https://www.transifex.com/nextcloud/teams/64236/el/)","Content-Type":"text/plain; charset=UTF-8",Language:"el","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nNik Pap, 2022\n"},msgstr:["Last-Translator: Nik Pap, 2022\nLanguage-Team: Greek (https://www.transifex.com/nextcloud/teams/64236/el/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: el\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["απομένουν {seconds} δευτερόλεπτα"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["απομένουν {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["απομένουν λίγα δευτερόλεπτα"]},Add:{msgid:"Add",msgstr:["Προσθήκη"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Ακύρωση μεταφορτώσεων"]},"estimating time left":{msgid:"estimating time left",msgstr:["εκτίμηση του χρόνου που απομένει"]},paused:{msgid:"paused",msgstr:["σε παύση"]},"Upload files":{msgid:"Upload files",msgstr:["Μεταφόρτωση αρχείων"]}}}}},{locale:"el_GR",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Greek (Greece) (https://www.transifex.com/nextcloud/teams/64236/el_GR/)","Content-Type":"text/plain; charset=UTF-8",Language:"el_GR","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Greek (Greece) (https://www.transifex.com/nextcloud/teams/64236/el_GR/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: el_GR\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"en_GB",json:{charset:"utf-8",headers:{"Last-Translator":"Andi Chandler , 2024","Language-Team":"English (United Kingdom) (https://app.transifex.com/nextcloud/teams/64236/en_GB/)","Content-Type":"text/plain; charset=UTF-8",Language:"en_GB","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nAndi Chandler , 2024\n"},msgstr:["Last-Translator: Andi Chandler , 2024\nLanguage-Team: English (United Kingdom) (https://app.transifex.com/nextcloud/teams/64236/en_GB/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: en_GB\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} file conflict","{count} files conflict"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} file conflict in {dirname}","{count} file conflicts in {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} seconds left"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} left"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["a few seconds left"]},Cancel:{msgid:"Cancel",msgstr:["Cancel"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Cancel the entire operation"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Cancel uploads"]},Continue:{msgid:"Continue",msgstr:["Continue"]},"estimating time left":{msgid:"estimating time left",msgstr:["estimating time left"]},"Existing version":{msgid:"Existing version",msgstr:["Existing version"]},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["If you select both versions, the incoming file will have a number added to its name."]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Last modified date unknown"]},New:{msgid:"New",msgstr:["New"]},"New version":{msgid:"New version",msgstr:["New version"]},paused:{msgid:"paused",msgstr:["paused"]},"Preview image":{msgid:"Preview image",msgstr:["Preview image"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Select all checkboxes"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Select all existing files"]},"Select all new files":{msgid:"Select all new files",msgstr:["Select all new files"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Skip this file","Skip {count} files"]},"Unknown size":{msgid:"Unknown size",msgstr:["Unknown size"]},"Upload cancelled":{msgid:"Upload cancelled",msgstr:["Upload cancelled"]},"Upload files":{msgid:"Upload files",msgstr:["Upload files"]},"Upload progress":{msgid:"Upload progress",msgstr:["Upload progress"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["When an incoming folder is selected, any conflicting files within it will also be overwritten."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Which files do you want to keep?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["You need to select at least one version of each file to continue."]}}}}},{locale:"eo",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Esperanto (https://www.transifex.com/nextcloud/teams/64236/eo/)","Content-Type":"text/plain; charset=UTF-8",Language:"eo","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Esperanto (https://www.transifex.com/nextcloud/teams/64236/eo/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: eo\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es",json:{charset:"utf-8",headers:{"Last-Translator":"Julio C. Ortega, 2024","Language-Team":"Spanish (https://app.transifex.com/nextcloud/teams/64236/es/)","Content-Type":"text/plain; charset=UTF-8",Language:"es","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nFranciscoFJ , 2024\nJulio C. Ortega, 2024\n"},msgstr:["Last-Translator: Julio C. Ortega, 2024\nLanguage-Team: Spanish (https://app.transifex.com/nextcloud/teams/64236/es/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},'"{filename}" contains invalid characters, how do you want to continue?':{msgid:'"{filename}" contains invalid characters, how do you want to continue?',msgstr:['"{filename}" contiene caracteres inválidos, ¿cómo desea continuar?']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} conflicto de archivo","{count} conflictos de archivo","{count} conflictos de archivo"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} conflicto de archivo en {dirname}","{count} conflictos de archivo en {dirname}","{count} conflictos de archivo en {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} segundos restantes"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} restante"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["quedan unos segundos"]},Cancel:{msgid:"Cancel",msgstr:["Cancelar"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Cancelar toda la operación"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Cancelar subidas"]},Continue:{msgid:"Continue",msgstr:["Continuar"]},"Create new":{msgid:"Create new",msgstr:["Crear nuevo"]},"estimating time left":{msgid:"estimating time left",msgstr:["estimando tiempo restante"]},"Existing version":{msgid:"Existing version",msgstr:["Versión existente"]},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Si selecciona ambas versionas, el archivo entrante le será agregado un número a su nombre."]},"Invalid file name":{msgid:"Invalid file name",msgstr:["Nombre de archivo inválido"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Última fecha de modificación desconocida"]},New:{msgid:"New",msgstr:["Nuevo"]},"New version":{msgid:"New version",msgstr:["Nueva versión"]},paused:{msgid:"paused",msgstr:["pausado"]},"Preview image":{msgid:"Preview image",msgstr:["Previsualizar imagen"]},Rename:{msgid:"Rename",msgstr:["Renombrar"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Seleccionar todas las casillas de verificación"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Seleccionar todos los archivos existentes"]},"Select all new files":{msgid:"Select all new files",msgstr:["Seleccionar todos los archivos nuevos"]},Skip:{msgid:"Skip",msgstr:["Saltar"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Saltar este archivo","Saltar {count} archivos","Saltar {count} archivos"]},"Unknown size":{msgid:"Unknown size",msgstr:["Tamaño desconocido"]},"Upload files":{msgid:"Upload files",msgstr:["Subir archivos"]},"Upload folders":{msgid:"Upload folders",msgstr:["Subir carpetas"]},"Upload from device":{msgid:"Upload from device",msgstr:["Subir desde dispositivo"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["La subida ha sido cancelada"]},"Upload progress":{msgid:"Upload progress",msgstr:["Progreso de la subida"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Cuando una carpeta entrante es seleccionada, cualquier de los archivos en conflictos también serán sobre-escritos."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Cuando una carpeta entrante es seleccionada, el contenido es escrito en la carpeta existente y se realizará una resolución de conflictos recursiva."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["¿Qué archivos desea conservar?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Debe seleccionar al menos una versión de cada archivo para continuar."]}}}}},{locale:"es_419",json:{charset:"utf-8",headers:{"Last-Translator":"ALEJANDRO CASTRO, 2022","Language-Team":"Spanish (Latin America) (https://www.transifex.com/nextcloud/teams/64236/es_419/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_419","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nALEJANDRO CASTRO, 2022\n"},msgstr:["Last-Translator: ALEJANDRO CASTRO, 2022\nLanguage-Team: Spanish (Latin America) (https://www.transifex.com/nextcloud/teams/64236/es_419/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_419\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} segundos restantes"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["{tiempo} restante"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["quedan pocos segundos"]},Add:{msgid:"Add",msgstr:["agregar"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Cancelar subidas"]},"estimating time left":{msgid:"estimating time left",msgstr:["estimando tiempo restante"]},paused:{msgid:"paused",msgstr:["pausado"]},"Upload files":{msgid:"Upload files",msgstr:["Subir archivos"]}}}}},{locale:"es_AR",json:{charset:"utf-8",headers:{"Last-Translator":"Matias Iglesias, 2022","Language-Team":"Spanish (Argentina) (https://www.transifex.com/nextcloud/teams/64236/es_AR/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_AR","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nMatias Iglesias, 2022\n"},msgstr:["Last-Translator: Matias Iglesias, 2022\nLanguage-Team: Spanish (Argentina) (https://www.transifex.com/nextcloud/teams/64236/es_AR/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_AR\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} segundos restantes"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["{time} restante"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["quedan unos segundos"]},Add:{msgid:"Add",msgstr:["Añadir"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Cancelar subidas"]},"estimating time left":{msgid:"estimating time left",msgstr:["estimando tiempo restante"]},paused:{msgid:"paused",msgstr:["pausado"]},"Upload files":{msgid:"Upload files",msgstr:["Subir archivos"]}}}}},{locale:"es_CL",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Chile) (https://www.transifex.com/nextcloud/teams/64236/es_CL/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_CL","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Chile) (https://www.transifex.com/nextcloud/teams/64236/es_CL/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_CL\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_CO",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Colombia) (https://www.transifex.com/nextcloud/teams/64236/es_CO/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_CO","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Colombia) (https://www.transifex.com/nextcloud/teams/64236/es_CO/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_CO\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_CR",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Costa Rica) (https://www.transifex.com/nextcloud/teams/64236/es_CR/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_CR","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Costa Rica) (https://www.transifex.com/nextcloud/teams/64236/es_CR/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_CR\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_DO",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Dominican Republic) (https://www.transifex.com/nextcloud/teams/64236/es_DO/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_DO","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Dominican Republic) (https://www.transifex.com/nextcloud/teams/64236/es_DO/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_DO\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_EC",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Ecuador) (https://www.transifex.com/nextcloud/teams/64236/es_EC/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_EC","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Ecuador) (https://www.transifex.com/nextcloud/teams/64236/es_EC/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_EC\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_GT",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Guatemala) (https://www.transifex.com/nextcloud/teams/64236/es_GT/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_GT","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Guatemala) (https://www.transifex.com/nextcloud/teams/64236/es_GT/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_GT\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_HN",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Honduras) (https://www.transifex.com/nextcloud/teams/64236/es_HN/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_HN","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Honduras) (https://www.transifex.com/nextcloud/teams/64236/es_HN/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_HN\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_MX",json:{charset:"utf-8",headers:{"Last-Translator":"ALEJANDRO CASTRO, 2022","Language-Team":"Spanish (Mexico) (https://www.transifex.com/nextcloud/teams/64236/es_MX/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_MX","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nLuis Francisco Castro, 2022\nALEJANDRO CASTRO, 2022\n"},msgstr:["Last-Translator: ALEJANDRO CASTRO, 2022\nLanguage-Team: Spanish (Mexico) (https://www.transifex.com/nextcloud/teams/64236/es_MX/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_MX\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} segundos restantes"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["{tiempo} restante"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["quedan pocos segundos"]},Add:{msgid:"Add",msgstr:["agregar"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["cancelar las cargas"]},"estimating time left":{msgid:"estimating time left",msgstr:["estimando tiempo restante"]},paused:{msgid:"paused",msgstr:["en pausa"]},"Upload files":{msgid:"Upload files",msgstr:["cargar archivos"]}}}}},{locale:"es_NI",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Nicaragua) (https://www.transifex.com/nextcloud/teams/64236/es_NI/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_NI","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Nicaragua) (https://www.transifex.com/nextcloud/teams/64236/es_NI/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_NI\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_PA",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Panama) (https://www.transifex.com/nextcloud/teams/64236/es_PA/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_PA","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Panama) (https://www.transifex.com/nextcloud/teams/64236/es_PA/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_PA\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_PE",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Peru) (https://www.transifex.com/nextcloud/teams/64236/es_PE/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_PE","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Peru) (https://www.transifex.com/nextcloud/teams/64236/es_PE/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_PE\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_PR",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Puerto Rico) (https://www.transifex.com/nextcloud/teams/64236/es_PR/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_PR","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Puerto Rico) (https://www.transifex.com/nextcloud/teams/64236/es_PR/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_PR\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_PY",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Paraguay) (https://www.transifex.com/nextcloud/teams/64236/es_PY/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_PY","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Paraguay) (https://www.transifex.com/nextcloud/teams/64236/es_PY/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_PY\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_SV",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (El Salvador) (https://www.transifex.com/nextcloud/teams/64236/es_SV/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_SV","Plural-Forms":"nplurals=2; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (El Salvador) (https://www.transifex.com/nextcloud/teams/64236/es_SV/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_SV\nPlural-Forms: nplurals=2; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_UY",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Uruguay) (https://www.transifex.com/nextcloud/teams/64236/es_UY/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_UY","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Uruguay) (https://www.transifex.com/nextcloud/teams/64236/es_UY/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_UY\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"et_EE",json:{charset:"utf-8",headers:{"Last-Translator":"Taavo Roos, 2023","Language-Team":"Estonian (Estonia) (https://app.transifex.com/nextcloud/teams/64236/et_EE/)","Content-Type":"text/plain; charset=UTF-8",Language:"et_EE","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nMait R, 2022\nTaavo Roos, 2023\n"},msgstr:["Last-Translator: Taavo Roos, 2023\nLanguage-Team: Estonian (Estonia) (https://app.transifex.com/nextcloud/teams/64236/et_EE/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: et_EE\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} jäänud sekundid"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["{time} aega jäänud"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["jäänud mõni sekund"]},Add:{msgid:"Add",msgstr:["Lisa"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Tühista üleslaadimine"]},"estimating time left":{msgid:"estimating time left",msgstr:["hinnanguline järelejäänud aeg"]},paused:{msgid:"paused",msgstr:["pausil"]},"Upload files":{msgid:"Upload files",msgstr:["Lae failid üles"]}}}}},{locale:"eu",json:{charset:"utf-8",headers:{"Last-Translator":"Unai Tolosa Pontesta , 2022","Language-Team":"Basque (https://www.transifex.com/nextcloud/teams/64236/eu/)","Content-Type":"text/plain; charset=UTF-8",Language:"eu","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nUnai Tolosa Pontesta , 2022\n"},msgstr:["Last-Translator: Unai Tolosa Pontesta , 2022\nLanguage-Team: Basque (https://www.transifex.com/nextcloud/teams/64236/eu/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: eu\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} segundo geratzen dira"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["{time} geratzen da"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["segundo batzuk geratzen dira"]},Add:{msgid:"Add",msgstr:["Gehitu"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Ezeztatu igoerak"]},"estimating time left":{msgid:"estimating time left",msgstr:["kalkulatutako geratzen den denbora"]},paused:{msgid:"paused",msgstr:["geldituta"]},"Upload files":{msgid:"Upload files",msgstr:["Igo fitxategiak"]}}}}},{locale:"fa",json:{charset:"utf-8",headers:{"Last-Translator":"Fatemeh Komeily, 2023","Language-Team":"Persian (https://app.transifex.com/nextcloud/teams/64236/fa/)","Content-Type":"text/plain; charset=UTF-8",Language:"fa","Plural-Forms":"nplurals=2; plural=(n > 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nFatemeh Komeily, 2023\n"},msgstr:["Last-Translator: Fatemeh Komeily, 2023\nLanguage-Team: Persian (https://app.transifex.com/nextcloud/teams/64236/fa/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: fa\nPlural-Forms: nplurals=2; plural=(n > 1);\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["ثانیه های باقی مانده"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["باقی مانده"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["چند ثانیه مانده"]},Add:{msgid:"Add",msgstr:["اضافه کردن"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["کنسل کردن فایل های اپلود شده"]},"estimating time left":{msgid:"estimating time left",msgstr:["تخمین زمان باقی مانده"]},paused:{msgid:"paused",msgstr:["مکث کردن"]},"Upload files":{msgid:"Upload files",msgstr:["بارگذاری فایل ها"]}}}}},{locale:"fi_FI",json:{charset:"utf-8",headers:{"Last-Translator":"Jiri Grönroos , 2022","Language-Team":"Finnish (Finland) (https://www.transifex.com/nextcloud/teams/64236/fi_FI/)","Content-Type":"text/plain; charset=UTF-8",Language:"fi_FI","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJiri Grönroos , 2022\n"},msgstr:["Last-Translator: Jiri Grönroos , 2022\nLanguage-Team: Finnish (Finland) (https://www.transifex.com/nextcloud/teams/64236/fi_FI/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: fi_FI\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} sekuntia jäljellä"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["{time} jäljellä"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["muutama sekunti jäljellä"]},Add:{msgid:"Add",msgstr:["Lisää"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Peruuta lähetykset"]},"estimating time left":{msgid:"estimating time left",msgstr:["arvioidaan jäljellä olevaa aikaa"]},paused:{msgid:"paused",msgstr:["keskeytetty"]},"Upload files":{msgid:"Upload files",msgstr:["Lähetä tiedostoja"]}}}}},{locale:"fo",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Faroese (https://www.transifex.com/nextcloud/teams/64236/fo/)","Content-Type":"text/plain; charset=UTF-8",Language:"fo","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Faroese (https://www.transifex.com/nextcloud/teams/64236/fo/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: fo\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"fr",json:{charset:"utf-8",headers:{"Last-Translator":"jed boulahya, 2024","Language-Team":"French (https://app.transifex.com/nextcloud/teams/64236/fr/)","Content-Type":"text/plain; charset=UTF-8",Language:"fr","Plural-Forms":"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nBenoit Pruneau, 2024\njed boulahya, 2024\n"},msgstr:["Last-Translator: jed boulahya, 2024\nLanguage-Team: French (https://app.transifex.com/nextcloud/teams/64236/fr/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: fr\nPlural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} fichier en conflit","{count} fichiers en conflit","{count} fichiers en conflit"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} fichier en conflit dans {dirname}","{count} fichiers en conflit dans {dirname}","{count} fichiers en conflit dans {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} secondes restantes"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} restant"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["quelques secondes restantes"]},Cancel:{msgid:"Cancel",msgstr:["Annuler"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Annuler l'opération entière"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Annuler les envois"]},Continue:{msgid:"Continue",msgstr:["Continuer"]},"estimating time left":{msgid:"estimating time left",msgstr:["estimation du temps restant"]},"Existing version":{msgid:"Existing version",msgstr:["Version existante"]},"If you select both versions, the copied file will have a number added to its name.":{msgid:"If you select both versions, the copied file will have a number added to its name.",msgstr:["Si vous sélectionnez les deux versions, le fichier copié aura un numéro ajouté àname."]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Date de la dernière modification est inconnue"]},New:{msgid:"New",msgstr:["Nouveau"]},"New version":{msgid:"New version",msgstr:["Nouvelle version"]},paused:{msgid:"paused",msgstr:["en pause"]},"Preview image":{msgid:"Preview image",msgstr:["Aperçu de l'image"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Sélectionner toutes les cases à cocher"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Sélectionner tous les fichiers existants"]},"Select all new files":{msgid:"Select all new files",msgstr:["Sélectionner tous les nouveaux fichiers"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Ignorer ce fichier","Ignorer {count} fichiers","Ignorer {count} fichiers"]},"Unknown size":{msgid:"Unknown size",msgstr:["Taille inconnue"]},"Upload cancelled":{msgid:"Upload cancelled",msgstr:[" annulé"]},"Upload files":{msgid:"Upload files",msgstr:["Téléchargement des fichiers"]},"Upload progress":{msgid:"Upload progress",msgstr:["Progression du téléchargement"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Lorsqu'un dossier entrant est sélectionné, tous les fichiers en conflit qu'il contient seront également écrasés."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Quels fichiers souhaitez-vous conserver ?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Vous devez sélectionner au moins une version de chaque fichier pour continuer."]}}}}},{locale:"ga",json:{charset:"utf-8",headers:{"Last-Translator":"Aindriú Mac Giolla Eoin, 2024","Language-Team":"Irish (https://app.transifex.com/nextcloud/teams/64236/ga/)","Content-Type":"text/plain; charset=UTF-8",Language:"ga","Plural-Forms":"nplurals=5; plural=(n==1 ? 0 : n==2 ? 1 : n<7 ? 2 : n<11 ? 3 : 4);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nAindriú Mac Giolla Eoin, 2024\n"},msgstr:["Last-Translator: Aindriú Mac Giolla Eoin, 2024\nLanguage-Team: Irish (https://app.transifex.com/nextcloud/teams/64236/ga/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ga\nPlural-Forms: nplurals=5; plural=(n==1 ? 0 : n==2 ? 1 : n<7 ? 2 : n<11 ? 3 : 4);\n"]},'"{filename}" contains invalid characters, how do you want to continue?':{msgid:'"{filename}" contains invalid characters, how do you want to continue?',msgstr:['Tá carachtair neamhbhailí in "{filename}", conas ba mhaith leat leanúint ar aghaidh?']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} coimhlint comhaid","coimhlint comhaid {count}","coimhlint comhaid {count}","coimhlint comhaid {count}","coimhlint comhaid {count}"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} coimhlint comhaid i {dirname}","{count} coimhlint comhaid i {dirname}","{count} coimhlint comhaid i {dirname}","{count} coimhlint comhaid i {dirname}","{count} coimhlint comhaid i {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{soicind} fágtha"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{am} fágtha"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["cúpla soicind fágtha"]},Cancel:{msgid:"Cancel",msgstr:["Cealaigh"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Cealaigh an oibríocht iomlán"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Cealaigh uaslódálacha"]},Continue:{msgid:"Continue",msgstr:["Leanúint ar aghaidh"]},"Create new":{msgid:"Create new",msgstr:["Cruthaigh nua"]},"estimating time left":{msgid:"estimating time left",msgstr:["ag déanamh meastachán ar an am atá fágtha"]},"Existing version":{msgid:"Existing version",msgstr:["Leagan láithreach "]},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Má roghnaíonn tú an dá leagan, cuirfear uimhir leis an ainm a thagann isteach."]},"Invalid file name":{msgid:"Invalid file name",msgstr:["Ainm comhaid neamhbhailí"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Dáta modhnaithe is déanaí anaithnid"]},New:{msgid:"New",msgstr:["Nua"]},"New version":{msgid:"New version",msgstr:["Leagan nua"]},paused:{msgid:"paused",msgstr:["sos"]},"Preview image":{msgid:"Preview image",msgstr:["Íomhá réamhamharc"]},Rename:{msgid:"Rename",msgstr:["Athainmnigh"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Roghnaigh gach ticbhosca"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Roghnaigh gach comhad atá ann cheana féin"]},"Select all new files":{msgid:"Select all new files",msgstr:["Roghnaigh gach comhad nua"]},Skip:{msgid:"Skip",msgstr:["Scipeáil"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Léim an comhad seo","Léim ar {count} comhad","Léim ar {count} comhad","Léim ar {count} comhad","Léim ar {count} comhad"]},"Unknown size":{msgid:"Unknown size",msgstr:["Méid anaithnid"]},"Upload files":{msgid:"Upload files",msgstr:["Uaslódáil comhaid"]},"Upload folders":{msgid:"Upload folders",msgstr:["Uaslódáil fillteáin"]},"Upload from device":{msgid:"Upload from device",msgstr:["Íosluchtaigh ó gléas"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Cuireadh an t-uaslódáil ar ceal"]},"Upload progress":{msgid:"Upload progress",msgstr:["Uaslódáil dul chun cinn"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Nuair a roghnaítear fillteán isteach, déanfar aon chomhad contrártha laistigh de a fhorscríobh freisin."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Nuair a roghnaítear fillteán isteach, scríobhtar an t-ábhar isteach san fhillteán atá ann cheana agus déantar réiteach coinbhleachta athchúrsach."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Cé na comhaid ar mhaith leat a choinneáil?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Ní mór duit leagan amháin ar a laghad de gach comhad a roghnú chun leanúint ar aghaidh."]}}}}},{locale:"gd",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Gaelic, Scottish (https://www.transifex.com/nextcloud/teams/64236/gd/)","Content-Type":"text/plain; charset=UTF-8",Language:"gd","Plural-Forms":"nplurals=4; plural=(n==1 || n==11) ? 0 : (n==2 || n==12) ? 1 : (n > 2 && n < 20) ? 2 : 3;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Gaelic, Scottish (https://www.transifex.com/nextcloud/teams/64236/gd/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: gd\nPlural-Forms: nplurals=4; plural=(n==1 || n==11) ? 0 : (n==2 || n==12) ? 1 : (n > 2 && n < 20) ? 2 : 3;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"gl",json:{charset:"utf-8",headers:{"Last-Translator":"Miguel Anxo Bouzada , 2024","Language-Team":"Galician (https://app.transifex.com/nextcloud/teams/64236/gl/)","Content-Type":"text/plain; charset=UTF-8",Language:"gl","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nMiguel Anxo Bouzada , 2024\n"},msgstr:["Last-Translator: Miguel Anxo Bouzada , 2024\nLanguage-Team: Galician (https://app.transifex.com/nextcloud/teams/64236/gl/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: gl\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{filename}" contains invalid characters, how do you want to continue?':{msgid:'"{filename}" contains invalid characters, how do you want to continue?',msgstr:["«{filename}» contén caracteres non válidos, como quere continuar?"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} conflito de ficheiros","{count} conflitos de ficheiros"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} conflito de ficheiros en {dirname}","{count} conflitos de ficheiros en {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["faltan {seconds} segundos"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["falta {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["faltan uns segundos"]},Cancel:{msgid:"Cancel",msgstr:["Cancelar"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Cancela toda a operación"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Cancelar envíos"]},Continue:{msgid:"Continue",msgstr:["Continuar"]},"Create new":{msgid:"Create new",msgstr:["Crear un novo"]},"estimating time left":{msgid:"estimating time left",msgstr:["calculando canto tempo falta"]},"Existing version":{msgid:"Existing version",msgstr:["Versión existente"]},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Se selecciona ambas as versións, o ficheiro entrante terá un número engadido ao seu nome."]},"Invalid file name":{msgid:"Invalid file name",msgstr:["O nome de ficheiro non é válido"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Data da última modificación descoñecida"]},New:{msgid:"New",msgstr:["Nova"]},"New version":{msgid:"New version",msgstr:["Nova versión"]},paused:{msgid:"paused",msgstr:["detido"]},"Preview image":{msgid:"Preview image",msgstr:["Vista previa da imaxe"]},Rename:{msgid:"Rename",msgstr:["Renomear"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Marcar todas as caixas de selección"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Seleccionar todos os ficheiros existentes"]},"Select all new files":{msgid:"Select all new files",msgstr:["Seleccionar todos os ficheiros novos"]},Skip:{msgid:"Skip",msgstr:["Omitir"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Omita este ficheiro","Omitir {count} ficheiros"]},"Unknown size":{msgid:"Unknown size",msgstr:["Tamaño descoñecido"]},"Upload files":{msgid:"Upload files",msgstr:["Enviar ficheiros"]},"Upload folders":{msgid:"Upload folders",msgstr:["Enviar cartafoles"]},"Upload from device":{msgid:"Upload from device",msgstr:["Enviar dende o dispositivo"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["O envío foi cancelado"]},"Upload progress":{msgid:"Upload progress",msgstr:["Progreso do envío"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Cando se selecciona un cartafol entrante, tamén se sobrescribirán os ficheiros en conflito dentro del."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Cando se selecciona un cartafol entrante, o contido escríbese no cartafol existente e lévase a cabo unha resolución recursiva de conflitos."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Que ficheiros quere conservar?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Debe seleccionar polo menos unha versión de cada ficheiro para continuar."]}}}}},{locale:"he",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Hebrew (https://www.transifex.com/nextcloud/teams/64236/he/)","Content-Type":"text/plain; charset=UTF-8",Language:"he","Plural-Forms":"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n == 2 && n % 1 == 0) ? 1: (n % 10 == 0 && n % 1 == 0 && n > 10) ? 2 : 3;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Hebrew (https://www.transifex.com/nextcloud/teams/64236/he/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: he\nPlural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n == 2 && n % 1 == 0) ? 1: (n % 10 == 0 && n % 1 == 0 && n > 10) ? 2 : 3;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"hi_IN",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Hindi (India) (https://www.transifex.com/nextcloud/teams/64236/hi_IN/)","Content-Type":"text/plain; charset=UTF-8",Language:"hi_IN","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Hindi (India) (https://www.transifex.com/nextcloud/teams/64236/hi_IN/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: hi_IN\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"hr",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Croatian (https://www.transifex.com/nextcloud/teams/64236/hr/)","Content-Type":"text/plain; charset=UTF-8",Language:"hr","Plural-Forms":"nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Croatian (https://www.transifex.com/nextcloud/teams/64236/hr/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: hr\nPlural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"hsb",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Upper Sorbian (https://www.transifex.com/nextcloud/teams/64236/hsb/)","Content-Type":"text/plain; charset=UTF-8",Language:"hsb","Plural-Forms":"nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Upper Sorbian (https://www.transifex.com/nextcloud/teams/64236/hsb/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: hsb\nPlural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"hu",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Hungarian (https://www.transifex.com/nextcloud/teams/64236/hu/)","Content-Type":"text/plain; charset=UTF-8",Language:"hu","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Hungarian (https://www.transifex.com/nextcloud/teams/64236/hu/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: hu\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"hu_HU",json:{charset:"utf-8",headers:{"Last-Translator":"Balázs Úr, 2022","Language-Team":"Hungarian (Hungary) (https://www.transifex.com/nextcloud/teams/64236/hu_HU/)","Content-Type":"text/plain; charset=UTF-8",Language:"hu_HU","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nBalázs Meskó , 2022\nBalázs Úr, 2022\n"},msgstr:["Last-Translator: Balázs Úr, 2022\nLanguage-Team: Hungarian (Hungary) (https://www.transifex.com/nextcloud/teams/64236/hu_HU/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: hu_HU\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{} másodperc van hátra"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["{time} van hátra"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["pár másodperc van hátra"]},Add:{msgid:"Add",msgstr:["Hozzáadás"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Feltöltések megszakítása"]},"estimating time left":{msgid:"estimating time left",msgstr:["hátralévő idő becslése"]},paused:{msgid:"paused",msgstr:["szüneteltetve"]},"Upload files":{msgid:"Upload files",msgstr:["Fájlok feltöltése"]}}}}},{locale:"hy",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Armenian (https://www.transifex.com/nextcloud/teams/64236/hy/)","Content-Type":"text/plain; charset=UTF-8",Language:"hy","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Armenian (https://www.transifex.com/nextcloud/teams/64236/hy/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: hy\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"ia",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Interlingua (https://www.transifex.com/nextcloud/teams/64236/ia/)","Content-Type":"text/plain; charset=UTF-8",Language:"ia","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Interlingua (https://www.transifex.com/nextcloud/teams/64236/ia/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ia\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"id",json:{charset:"utf-8",headers:{"Last-Translator":"Linerly , 2023","Language-Team":"Indonesian (https://app.transifex.com/nextcloud/teams/64236/id/)","Content-Type":"text/plain; charset=UTF-8",Language:"id","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ , 2023\nEmpty Slot Filler, 2023\nLinerly , 2023\n"},msgstr:["Last-Translator: Linerly , 2023\nLanguage-Team: Indonesian (https://app.transifex.com/nextcloud/teams/64236/id/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: id\nPlural-Forms: nplurals=1; plural=0;\n"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} berkas berkonflik"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} berkas berkonflik dalam {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} detik tersisa"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} tersisa"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["tinggal sebentar lagi"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Batalkan unggahan"]},Continue:{msgid:"Continue",msgstr:["Lanjutkan"]},"estimating time left":{msgid:"estimating time left",msgstr:["memperkirakan waktu yang tersisa"]},"Existing version":{msgid:"Existing version",msgstr:["Versi yang ada"]},"If you select both versions, the copied file will have a number added to its name.":{msgid:"If you select both versions, the copied file will have a number added to its name.",msgstr:["Jika Anda memilih kedua versi, nama berkas yang disalin akan ditambahi angka."]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Tanggal perubahan terakhir tidak diketahui"]},New:{msgid:"New",msgstr:["Baru"]},"New version":{msgid:"New version",msgstr:["Versi baru"]},paused:{msgid:"paused",msgstr:["dijeda"]},"Preview image":{msgid:"Preview image",msgstr:["Gambar pratinjau"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Pilih semua kotak centang"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Pilih semua berkas yang ada"]},"Select all new files":{msgid:"Select all new files",msgstr:["Pilih semua berkas baru"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Lewati {count} berkas"]},"Unknown size":{msgid:"Unknown size",msgstr:["Ukuran tidak diketahui"]},"Upload cancelled":{msgid:"Upload cancelled",msgstr:["Unggahan dibatalkan"]},"Upload files":{msgid:"Upload files",msgstr:["Unggah berkas"]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Berkas mana yang Anda ingin tetap simpan?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Anda harus memilih setidaknya satu versi dari masing-masing berkas untuk melanjutkan."]}}}}},{locale:"ig",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Igbo (https://www.transifex.com/nextcloud/teams/64236/ig/)","Content-Type":"text/plain; charset=UTF-8",Language:"ig","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Igbo (https://www.transifex.com/nextcloud/teams/64236/ig/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ig\nPlural-Forms: nplurals=1; plural=0;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"is",json:{charset:"utf-8",headers:{"Last-Translator":"Sveinn í Felli , 2023","Language-Team":"Icelandic (https://app.transifex.com/nextcloud/teams/64236/is/)","Content-Type":"text/plain; charset=UTF-8",Language:"is","Plural-Forms":"nplurals=2; plural=(n % 10 != 1 || n % 100 == 11);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nSveinn í Felli , 2023\n"},msgstr:["Last-Translator: Sveinn í Felli , 2023\nLanguage-Team: Icelandic (https://app.transifex.com/nextcloud/teams/64236/is/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: is\nPlural-Forms: nplurals=2; plural=(n % 10 != 1 || n % 100 == 11);\n"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} árekstur skráa","{count} árekstrar skráa"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} árekstur skráa í {dirname}","{count} árekstrar skráa í {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} sekúndur eftir"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} eftir"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["nokkrar sekúndur eftir"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Hætta við innsendingar"]},Continue:{msgid:"Continue",msgstr:["Halda áfram"]},"estimating time left":{msgid:"estimating time left",msgstr:["áætla tíma sem eftir er"]},"Existing version":{msgid:"Existing version",msgstr:["Fyrirliggjandi útgáfa"]},"If you select both versions, the copied file will have a number added to its name.":{msgid:"If you select both versions, the copied file will have a number added to its name.",msgstr:["Ef þú velur báðar útgáfur, þá mun verða bætt tölustaf aftan við heiti afrituðu skrárinnar."]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Síðasta breytingadagsetning er óþekkt"]},New:{msgid:"New",msgstr:["Nýtt"]},"New version":{msgid:"New version",msgstr:["Ný útgáfa"]},paused:{msgid:"paused",msgstr:["í bið"]},"Preview image":{msgid:"Preview image",msgstr:["Forskoðun myndar"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Velja gátreiti"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Velja allar fyrirliggjandi skrár"]},"Select all new files":{msgid:"Select all new files",msgstr:["Velja allar nýjar skrár"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Sleppa þessari skrá","Sleppa {count} skrám"]},"Unknown size":{msgid:"Unknown size",msgstr:["Óþekkt stærð"]},"Upload cancelled":{msgid:"Upload cancelled",msgstr:["Hætt við innsendingu"]},"Upload files":{msgid:"Upload files",msgstr:["Senda inn skrár"]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Hvaða skrám vilt þú vilt halda eftir?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Þú verður að velja að minnsta kosti eina útgáfu af hverri skrá til að halda áfram."]}}}}},{locale:"it",json:{charset:"utf-8",headers:{"Last-Translator":"Random_R, 2023","Language-Team":"Italian (https://app.transifex.com/nextcloud/teams/64236/it/)","Content-Type":"text/plain; charset=UTF-8",Language:"it","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ , 2023\nLep Lep, 2023\nRandom_R, 2023\n"},msgstr:["Last-Translator: Random_R, 2023\nLanguage-Team: Italian (https://app.transifex.com/nextcloud/teams/64236/it/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: it\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} file in conflitto","{count} file in conflitto","{count} file in conflitto"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} file in conflitto in {dirname}","{count} file in conflitto in {dirname}","{count} file in conflitto in {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} secondi rimanenti "]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} rimanente"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["alcuni secondi rimanenti"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Annulla i caricamenti"]},Continue:{msgid:"Continue",msgstr:["Continua"]},"estimating time left":{msgid:"estimating time left",msgstr:["calcolo il tempo rimanente"]},"Existing version":{msgid:"Existing version",msgstr:["Versione esistente"]},"If you select both versions, the copied file will have a number added to its name.":{msgid:"If you select both versions, the copied file will have a number added to its name.",msgstr:["Se selezioni entrambe le versioni, nel nome del file copiato verrà aggiunto un numero "]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Ultima modifica sconosciuta"]},New:{msgid:"New",msgstr:["Nuovo"]},"New version":{msgid:"New version",msgstr:["Nuova versione"]},paused:{msgid:"paused",msgstr:["pausa"]},"Preview image":{msgid:"Preview image",msgstr:["Anteprima immagine"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Seleziona tutte le caselle"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Seleziona tutti i file esistenti"]},"Select all new files":{msgid:"Select all new files",msgstr:["Seleziona tutti i nuovi file"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Salta questo file","Salta {count} file","Salta {count} file"]},"Unknown size":{msgid:"Unknown size",msgstr:["Dimensione sconosciuta"]},"Upload cancelled":{msgid:"Upload cancelled",msgstr:["Caricamento cancellato"]},"Upload files":{msgid:"Upload files",msgstr:["Carica i file"]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Quali file vuoi mantenere?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Devi selezionare almeno una versione di ogni file per continuare"]}}}}},{locale:"it_IT",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Italian (Italy) (https://www.transifex.com/nextcloud/teams/64236/it_IT/)","Content-Type":"text/plain; charset=UTF-8",Language:"it_IT","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Italian (Italy) (https://www.transifex.com/nextcloud/teams/64236/it_IT/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: it_IT\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"ja_JP",json:{charset:"utf-8",headers:{"Last-Translator":"かたかめ, 2022","Language-Team":"Japanese (Japan) (https://www.transifex.com/nextcloud/teams/64236/ja_JP/)","Content-Type":"text/plain; charset=UTF-8",Language:"ja_JP","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nT.S, 2022\nかたかめ, 2022\n"},msgstr:["Last-Translator: かたかめ, 2022\nLanguage-Team: Japanese (Japan) (https://www.transifex.com/nextcloud/teams/64236/ja_JP/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ja_JP\nPlural-Forms: nplurals=1; plural=0;\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["残り {seconds} 秒"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["残り {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["残り数秒"]},Add:{msgid:"Add",msgstr:["追加"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["アップロードをキャンセル"]},"estimating time left":{msgid:"estimating time left",msgstr:["概算残り時間"]},paused:{msgid:"paused",msgstr:["一時停止中"]},"Upload files":{msgid:"Upload files",msgstr:["ファイルをアップデート"]}}}}},{locale:"ka",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Georgian (https://www.transifex.com/nextcloud/teams/64236/ka/)","Content-Type":"text/plain; charset=UTF-8",Language:"ka","Plural-Forms":"nplurals=2; plural=(n!=1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Georgian (https://www.transifex.com/nextcloud/teams/64236/ka/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ka\nPlural-Forms: nplurals=2; plural=(n!=1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"ka_GE",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Georgian (Georgia) (https://www.transifex.com/nextcloud/teams/64236/ka_GE/)","Content-Type":"text/plain; charset=UTF-8",Language:"ka_GE","Plural-Forms":"nplurals=2; plural=(n!=1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Georgian (Georgia) (https://www.transifex.com/nextcloud/teams/64236/ka_GE/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ka_GE\nPlural-Forms: nplurals=2; plural=(n!=1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"kab",json:{charset:"utf-8",headers:{"Last-Translator":"ZiriSut, 2023","Language-Team":"Kabyle (https://app.transifex.com/nextcloud/teams/64236/kab/)","Content-Type":"text/plain; charset=UTF-8",Language:"kab","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nZiriSut, 2023\n"},msgstr:["Last-Translator: ZiriSut, 2023\nLanguage-Team: Kabyle (https://app.transifex.com/nextcloud/teams/64236/kab/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: kab\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} tesdatin i d-yeqqimen"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["{time} i d-yeqqimen"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["qqiment-d kra n tesdatin kan"]},Add:{msgid:"Add",msgstr:["Rnu"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Sefsex asali"]},"estimating time left":{msgid:"estimating time left",msgstr:["asizel n wakud i d-yeqqimen"]},paused:{msgid:"paused",msgstr:["yeḥbes"]},"Upload files":{msgid:"Upload files",msgstr:["Sali-d ifuyla"]}}}}},{locale:"kk",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Kazakh (https://www.transifex.com/nextcloud/teams/64236/kk/)","Content-Type":"text/plain; charset=UTF-8",Language:"kk","Plural-Forms":"nplurals=2; plural=(n!=1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Kazakh (https://www.transifex.com/nextcloud/teams/64236/kk/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: kk\nPlural-Forms: nplurals=2; plural=(n!=1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"km",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Khmer (https://www.transifex.com/nextcloud/teams/64236/km/)","Content-Type":"text/plain; charset=UTF-8",Language:"km","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Khmer (https://www.transifex.com/nextcloud/teams/64236/km/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: km\nPlural-Forms: nplurals=1; plural=0;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"kn",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Kannada (https://www.transifex.com/nextcloud/teams/64236/kn/)","Content-Type":"text/plain; charset=UTF-8",Language:"kn","Plural-Forms":"nplurals=2; plural=(n > 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Kannada (https://www.transifex.com/nextcloud/teams/64236/kn/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: kn\nPlural-Forms: nplurals=2; plural=(n > 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"ko",json:{charset:"utf-8",headers:{"Last-Translator":"이상오, 2024","Language-Team":"Korean (https://app.transifex.com/nextcloud/teams/64236/ko/)","Content-Type":"text/plain; charset=UTF-8",Language:"ko","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\n이상오, 2024\n"},msgstr:["Last-Translator: 이상오, 2024\nLanguage-Team: Korean (https://app.transifex.com/nextcloud/teams/64236/ko/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ko\nPlural-Forms: nplurals=1; plural=0;\n"]},'"{filename}" contains invalid characters, how do you want to continue?':{msgid:'"{filename}" contains invalid characters, how do you want to continue?',msgstr:['"{filename}"에 유효하지 않은 문자가 있습니다, 계속하시겠습니까?']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count}개의 파일이 충돌함"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{dirname}에서 {count}개의 파일이 충돌함"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds}초 남음"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} 남음"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["곧 완료"]},Cancel:{msgid:"Cancel",msgstr:["취소"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["전체 작업을 취소"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["업로드 취소"]},Continue:{msgid:"Continue",msgstr:["확인"]},"Create new":{msgid:"Create new",msgstr:["새로 만들기"]},"estimating time left":{msgid:"estimating time left",msgstr:["남은 시간 계산"]},"Existing version":{msgid:"Existing version",msgstr:["현재 버전"]},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["두 파일을 모두 선택하면, 들어오는 파일의 이름에 번호가 추가됩니다."]},"Invalid file name":{msgid:"Invalid file name",msgstr:["잘못된 파일 이름"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["최근 수정일 알 수 없음"]},New:{msgid:"New",msgstr:["새로 만들기"]},"New version":{msgid:"New version",msgstr:["새 버전"]},paused:{msgid:"paused",msgstr:["일시정지됨"]},"Preview image":{msgid:"Preview image",msgstr:["미리보기 이미지"]},Rename:{msgid:"Rename",msgstr:["이름 바꾸기"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["모든 체크박스 선택"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["기존 파일을 모두 선택"]},"Select all new files":{msgid:"Select all new files",msgstr:["새로운 파일을 모두 선택"]},Skip:{msgid:"Skip",msgstr:["건너뛰기"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["{count}개의 파일 넘기기"]},"Unknown size":{msgid:"Unknown size",msgstr:["크기를 알 수 없음"]},"Upload files":{msgid:"Upload files",msgstr:["파일 업로드"]},"Upload folders":{msgid:"Upload folders",msgstr:["폴더 업로드"]},"Upload from device":{msgid:"Upload from device",msgstr:["장치에서 업로드"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["업로드가 취소되었습니다."]},"Upload progress":{msgid:"Upload progress",msgstr:["업로드 진행도"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["들어오는 폴더를 선택했다면, 충돌하는 내부 파일들은 덮어쓰기 됩니다."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["들어오는 폴더를 선택했다면 내용물이 그 기존 폴더 안에 작성되고, 전체적으로 충돌 해결을 수행합니다."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["어떤 파일을 보존하시겠습니까?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["계속하기 위해서는 한 파일에 최소 하나의 버전을 선택해야 합니다."]}}}}},{locale:"la",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Latin (https://www.transifex.com/nextcloud/teams/64236/la/)","Content-Type":"text/plain; charset=UTF-8",Language:"la","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Latin (https://www.transifex.com/nextcloud/teams/64236/la/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: la\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"lb",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Luxembourgish (https://www.transifex.com/nextcloud/teams/64236/lb/)","Content-Type":"text/plain; charset=UTF-8",Language:"lb","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Luxembourgish (https://www.transifex.com/nextcloud/teams/64236/lb/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: lb\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"lo",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Lao (https://www.transifex.com/nextcloud/teams/64236/lo/)","Content-Type":"text/plain; charset=UTF-8",Language:"lo","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Lao (https://www.transifex.com/nextcloud/teams/64236/lo/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: lo\nPlural-Forms: nplurals=1; plural=0;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"lt_LT",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Lithuanian (Lithuania) (https://www.transifex.com/nextcloud/teams/64236/lt_LT/)","Content-Type":"text/plain; charset=UTF-8",Language:"lt_LT","Plural-Forms":"nplurals=4; plural=(n % 10 == 1 && (n % 100 > 19 || n % 100 < 11) ? 0 : (n % 10 >= 2 && n % 10 <=9) && (n % 100 > 19 || n % 100 < 11) ? 1 : n % 1 != 0 ? 2: 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Lithuanian (Lithuania) (https://www.transifex.com/nextcloud/teams/64236/lt_LT/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: lt_LT\nPlural-Forms: nplurals=4; plural=(n % 10 == 1 && (n % 100 > 19 || n % 100 < 11) ? 0 : (n % 10 >= 2 && n % 10 <=9) && (n % 100 > 19 || n % 100 < 11) ? 1 : n % 1 != 0 ? 2: 3);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"lv",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Latvian (https://www.transifex.com/nextcloud/teams/64236/lv/)","Content-Type":"text/plain; charset=UTF-8",Language:"lv","Plural-Forms":"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Latvian (https://www.transifex.com/nextcloud/teams/64236/lv/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: lv\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"mk",json:{charset:"utf-8",headers:{"Last-Translator":"Сашко Тодоров , 2022","Language-Team":"Macedonian (https://www.transifex.com/nextcloud/teams/64236/mk/)","Content-Type":"text/plain; charset=UTF-8",Language:"mk","Plural-Forms":"nplurals=2; plural=(n % 10 == 1 && n % 100 != 11) ? 0 : 1;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nСашко Тодоров , 2022\n"},msgstr:["Last-Translator: Сашко Тодоров , 2022\nLanguage-Team: Macedonian (https://www.transifex.com/nextcloud/teams/64236/mk/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: mk\nPlural-Forms: nplurals=2; plural=(n % 10 == 1 && n % 100 != 11) ? 0 : 1;\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["преостануваат {seconds} секунди"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["преостанува {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["уште неколку секунди"]},Add:{msgid:"Add",msgstr:["Додади"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Прекини прикачување"]},"estimating time left":{msgid:"estimating time left",msgstr:["приближно преостанато време"]},paused:{msgid:"paused",msgstr:["паузирано"]},"Upload files":{msgid:"Upload files",msgstr:["Прикачување датотеки"]}}}}},{locale:"mn",json:{charset:"utf-8",headers:{"Last-Translator":"BATKHUYAG Ganbold, 2023","Language-Team":"Mongolian (https://app.transifex.com/nextcloud/teams/64236/mn/)","Content-Type":"text/plain; charset=UTF-8",Language:"mn","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nBATKHUYAG Ganbold, 2023\n"},msgstr:["Last-Translator: BATKHUYAG Ganbold, 2023\nLanguage-Team: Mongolian (https://app.transifex.com/nextcloud/teams/64236/mn/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: mn\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} секунд үлдсэн"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["{time} үлдсэн"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["хэдхэн секунд үлдсэн"]},Add:{msgid:"Add",msgstr:["Нэмэх"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Илгээлтийг цуцлах"]},"estimating time left":{msgid:"estimating time left",msgstr:["Үлдсэн хугацааг тооцоолж байна"]},paused:{msgid:"paused",msgstr:["түр зогсоосон"]},"Upload files":{msgid:"Upload files",msgstr:["Файл илгээх"]}}}}},{locale:"mr",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Marathi (https://www.transifex.com/nextcloud/teams/64236/mr/)","Content-Type":"text/plain; charset=UTF-8",Language:"mr","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Marathi (https://www.transifex.com/nextcloud/teams/64236/mr/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: mr\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"ms_MY",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Malay (Malaysia) (https://www.transifex.com/nextcloud/teams/64236/ms_MY/)","Content-Type":"text/plain; charset=UTF-8",Language:"ms_MY","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Malay (Malaysia) (https://www.transifex.com/nextcloud/teams/64236/ms_MY/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ms_MY\nPlural-Forms: nplurals=1; plural=0;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"my",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Burmese (https://www.transifex.com/nextcloud/teams/64236/my/)","Content-Type":"text/plain; charset=UTF-8",Language:"my","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Burmese (https://www.transifex.com/nextcloud/teams/64236/my/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: my\nPlural-Forms: nplurals=1; plural=0;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"nb_NO",json:{charset:"utf-8",headers:{"Last-Translator":"Syvert Fossdal, 2024","Language-Team":"Norwegian Bokmål (Norway) (https://app.transifex.com/nextcloud/teams/64236/nb_NO/)","Content-Type":"text/plain; charset=UTF-8",Language:"nb_NO","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ , 2023\nSyvert Fossdal, 2024\n"},msgstr:["Last-Translator: Syvert Fossdal, 2024\nLanguage-Team: Norwegian Bokmål (Norway) (https://app.transifex.com/nextcloud/teams/64236/nb_NO/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: nb_NO\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} file conflict","{count} filkonflikter"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} file conflict in {dirname}","{count} filkonflikter i {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} sekunder igjen"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} igjen"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["noen få sekunder igjen"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Avbryt opplastninger"]},Continue:{msgid:"Continue",msgstr:["Fortsett"]},"estimating time left":{msgid:"estimating time left",msgstr:["Estimerer tid igjen"]},"Existing version":{msgid:"Existing version",msgstr:["Gjeldende versjon"]},"If you select both versions, the copied file will have a number added to its name.":{msgid:"If you select both versions, the copied file will have a number added to its name.",msgstr:["Hvis du velger begge versjoner, vil den kopierte filen få et tall lagt til navnet."]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Siste gang redigert ukjent"]},New:{msgid:"New",msgstr:["Ny"]},"New version":{msgid:"New version",msgstr:["Ny versjon"]},paused:{msgid:"paused",msgstr:["pauset"]},"Preview image":{msgid:"Preview image",msgstr:["Forhåndsvis bilde"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Velg alle"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Velg alle eksisterende filer"]},"Select all new files":{msgid:"Select all new files",msgstr:["Velg alle nye filer"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Skip this file","Hopp over {count} filer"]},"Unknown size":{msgid:"Unknown size",msgstr:["Ukjent størrelse"]},"Upload cancelled":{msgid:"Upload cancelled",msgstr:["Opplasting avbrutt"]},"Upload files":{msgid:"Upload files",msgstr:["Last opp filer"]},"Upload progress":{msgid:"Upload progress",msgstr:["Fremdrift, opplasting"]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Hvilke filer vil du beholde?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Du må velge minst en versjon av hver fil for å fortsette."]}}}}},{locale:"ne",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Nepali (https://www.transifex.com/nextcloud/teams/64236/ne/)","Content-Type":"text/plain; charset=UTF-8",Language:"ne","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Nepali (https://www.transifex.com/nextcloud/teams/64236/ne/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ne\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"nl",json:{charset:"utf-8",headers:{"Last-Translator":"Rico , 2023","Language-Team":"Dutch (https://app.transifex.com/nextcloud/teams/64236/nl/)","Content-Type":"text/plain; charset=UTF-8",Language:"nl","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nRico , 2023\n"},msgstr:["Last-Translator: Rico , 2023\nLanguage-Team: Dutch (https://app.transifex.com/nextcloud/teams/64236/nl/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: nl\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["Nog {seconds} seconden"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["{seconds} over"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["Nog een paar seconden"]},Add:{msgid:"Add",msgstr:["Voeg toe"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Uploads annuleren"]},"estimating time left":{msgid:"estimating time left",msgstr:["Schatting van de resterende tijd"]},paused:{msgid:"paused",msgstr:["Gepauzeerd"]},"Upload files":{msgid:"Upload files",msgstr:["Upload bestanden"]}}}}},{locale:"nn",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Norwegian Nynorsk (https://www.transifex.com/nextcloud/teams/64236/nn/)","Content-Type":"text/plain; charset=UTF-8",Language:"nn","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Norwegian Nynorsk (https://www.transifex.com/nextcloud/teams/64236/nn/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: nn\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"nn_NO",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Norwegian Nynorsk (Norway) (https://www.transifex.com/nextcloud/teams/64236/nn_NO/)","Content-Type":"text/plain; charset=UTF-8",Language:"nn_NO","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Norwegian Nynorsk (Norway) (https://www.transifex.com/nextcloud/teams/64236/nn_NO/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: nn_NO\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"oc",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Occitan (post 1500) (https://www.transifex.com/nextcloud/teams/64236/oc/)","Content-Type":"text/plain; charset=UTF-8",Language:"oc","Plural-Forms":"nplurals=2; plural=(n > 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Occitan (post 1500) (https://www.transifex.com/nextcloud/teams/64236/oc/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: oc\nPlural-Forms: nplurals=2; plural=(n > 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"pl",json:{charset:"utf-8",headers:{"Last-Translator":"Piotr Strębski , 2024","Language-Team":"Polish (https://app.transifex.com/nextcloud/teams/64236/pl/)","Content-Type":"text/plain; charset=UTF-8",Language:"pl","Plural-Forms":"nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nPiotr Strębski , 2024\n"},msgstr:["Last-Translator: Piotr Strębski , 2024\nLanguage-Team: Polish (https://app.transifex.com/nextcloud/teams/64236/pl/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: pl\nPlural-Forms: nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);\n"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["konflikt 1 pliku","{count} konfliktów plików","{count} konfliktów plików","{count} konfliktów plików"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} konfliktowy plik w {dirname}","{count} konfliktowych plików w {dirname}","{count} konfliktowych plików w {dirname}","{count} konfliktowych plików w {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["Pozostało {seconds} sekund"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["Pozostało {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["Pozostało kilka sekund"]},Cancel:{msgid:"Cancel",msgstr:["Anuluj"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Anuluj całą operację"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Anuluj wysyłanie"]},Continue:{msgid:"Continue",msgstr:["Kontynuuj"]},"estimating time left":{msgid:"estimating time left",msgstr:["Szacowanie pozostałego czasu"]},"Existing version":{msgid:"Existing version",msgstr:["Istniejąca wersja"]},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Jeśli wybierzesz obie wersje, do nazwy pliku przychodzącego zostanie dodany numer."]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Nieznana data ostatniej modyfikacji"]},New:{msgid:"New",msgstr:["Nowy"]},"New version":{msgid:"New version",msgstr:["Nowa wersja"]},paused:{msgid:"paused",msgstr:["Wstrzymane"]},"Preview image":{msgid:"Preview image",msgstr:["Podgląd obrazu"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Zaznacz wszystkie boxy"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Zaznacz wszystkie istniejące pliki"]},"Select all new files":{msgid:"Select all new files",msgstr:["Zaznacz wszystkie nowe pliki"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Pomiń 1 plik","Pomiń {count} plików","Pomiń {count} plików","Pomiń {count} plików"]},"Unknown size":{msgid:"Unknown size",msgstr:["Nieznany rozmiar"]},"Upload cancelled":{msgid:"Upload cancelled",msgstr:["Anulowano wysyłanie"]},"Upload files":{msgid:"Upload files",msgstr:["Wyślij pliki"]},"Upload progress":{msgid:"Upload progress",msgstr:["Postęp wysyłania"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Po wybraniu folderu przychodzącego wszelkie znajdujące się w nim pliki powodujące konflikt również zostaną nadpisane."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Po wybraniu folderu przychodzącego zawartość jest zapisywana w istniejącym folderze i przeprowadzane jest rekursywne rozwiązywanie konfliktów."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Które pliki chcesz zachować?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Aby kontynuować, musisz wybrać co najmniej jedną wersję każdego pliku."]}}}}},{locale:"ps",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Pashto (https://www.transifex.com/nextcloud/teams/64236/ps/)","Content-Type":"text/plain; charset=UTF-8",Language:"ps","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Pashto (https://www.transifex.com/nextcloud/teams/64236/ps/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ps\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"pt_BR",json:{charset:"utf-8",headers:{"Last-Translator":"Leonardo Colman Lopes , 2024","Language-Team":"Portuguese (Brazil) (https://app.transifex.com/nextcloud/teams/64236/pt_BR/)","Content-Type":"text/plain; charset=UTF-8",Language:"pt_BR","Plural-Forms":"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nLeonardo Colman Lopes , 2024\n"},msgstr:["Last-Translator: Leonardo Colman Lopes , 2024\nLanguage-Team: Portuguese (Brazil) (https://app.transifex.com/nextcloud/teams/64236/pt_BR/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: pt_BR\nPlural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} arquivos em conflito","{count} arquivos em conflito","{count} arquivos em conflito"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} conflitos de arquivo em {dirname}","{count} conflitos de arquivo em {dirname}","{count} conflitos de arquivo em {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} segundos restantes"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} restante"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["alguns segundos restantes"]},Cancel:{msgid:"Cancel",msgstr:["Cancelar"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Cancelar a operação inteira"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Cancelar uploads"]},Continue:{msgid:"Continue",msgstr:["Continuar"]},"estimating time left":{msgid:"estimating time left",msgstr:["estimando tempo restante"]},"Existing version":{msgid:"Existing version",msgstr:["Versão existente"]},"If you select both versions, the copied file will have a number added to its name.":{msgid:"If you select both versions, the copied file will have a number added to its name.",msgstr:["Se você selecionar ambas as versões, o arquivo copiado terá um número adicionado ao seu nome."]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Data da última modificação desconhecida"]},New:{msgid:"New",msgstr:["Novo"]},"New version":{msgid:"New version",msgstr:["Nova versão"]},paused:{msgid:"paused",msgstr:["pausado"]},"Preview image":{msgid:"Preview image",msgstr:["Visualizar imagem"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Marque todas as caixas de seleção"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Selecione todos os arquivos existentes"]},"Select all new files":{msgid:"Select all new files",msgstr:["Selecione todos os novos arquivos"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Ignorar {count} arquivos","Ignorar {count} arquivos","Ignorar {count} arquivos"]},"Unknown size":{msgid:"Unknown size",msgstr:["Tamanho desconhecido"]},"Upload cancelled":{msgid:"Upload cancelled",msgstr:["Envio cancelado"]},"Upload files":{msgid:"Upload files",msgstr:["Enviar arquivos"]},"Upload progress":{msgid:"Upload progress",msgstr:["Envio em progresso"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Quando uma pasta é selecionada, quaisquer arquivos dentro dela também serão sobrescritos."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Quais arquivos você deseja manter?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Você precisa selecionar pelo menos uma versão de cada arquivo para continuar."]}}}}},{locale:"pt_PT",json:{charset:"utf-8",headers:{"Last-Translator":"Manuela Silva , 2022","Language-Team":"Portuguese (Portugal) (https://www.transifex.com/nextcloud/teams/64236/pt_PT/)","Content-Type":"text/plain; charset=UTF-8",Language:"pt_PT","Plural-Forms":"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nManuela Silva , 2022\n"},msgstr:["Last-Translator: Manuela Silva , 2022\nLanguage-Team: Portuguese (Portugal) (https://www.transifex.com/nextcloud/teams/64236/pt_PT/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: pt_PT\nPlural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["faltam {seconds} segundo(s)"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["faltam {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["faltam uns segundos"]},Add:{msgid:"Add",msgstr:["Adicionar"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Cancelar envios"]},"estimating time left":{msgid:"estimating time left",msgstr:["tempo em falta estimado"]},paused:{msgid:"paused",msgstr:["pausado"]},"Upload files":{msgid:"Upload files",msgstr:["Enviar ficheiros"]}}}}},{locale:"ro",json:{charset:"utf-8",headers:{"Last-Translator":"Mădălin Vasiliu , 2022","Language-Team":"Romanian (https://www.transifex.com/nextcloud/teams/64236/ro/)","Content-Type":"text/plain; charset=UTF-8",Language:"ro","Plural-Forms":"nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?2:1));"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nMădălin Vasiliu , 2022\n"},msgstr:["Last-Translator: Mădălin Vasiliu , 2022\nLanguage-Team: Romanian (https://www.transifex.com/nextcloud/teams/64236/ro/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ro\nPlural-Forms: nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?2:1));\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} secunde rămase"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["{time} rămas"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["câteva secunde rămase"]},Add:{msgid:"Add",msgstr:["Adaugă"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Anulați încărcările"]},"estimating time left":{msgid:"estimating time left",msgstr:["estimarea timpului rămas"]},paused:{msgid:"paused",msgstr:["pus pe pauză"]},"Upload files":{msgid:"Upload files",msgstr:["Încarcă fișiere"]}}}}},{locale:"ru",json:{charset:"utf-8",headers:{"Last-Translator":"Влад, 2024","Language-Team":"Russian (https://app.transifex.com/nextcloud/teams/64236/ru/)","Content-Type":"text/plain; charset=UTF-8",Language:"ru","Plural-Forms":"nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nAlex , 2024\nВлад, 2024\n"},msgstr:["Last-Translator: Влад, 2024\nLanguage-Team: Russian (https://app.transifex.com/nextcloud/teams/64236/ru/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ru\nPlural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\n"]},'"{filename}" contains invalid characters, how do you want to continue?':{msgid:'"{filename}" contains invalid characters, how do you want to continue?',msgstr:['"{filename}" содержит недопустимые символы, хотите продолжить?']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["конфликт {count} файла","конфликт {count} файлов","конфликт {count} файлов","конфликт {count} файлов"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["конфликт {count} файла в {dirname}","конфликт {count} файлов в {dirname}","конфликт {count} файлов в {dirname}","конфликт {count} файлов в {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["осталось {seconds} секунд"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["осталось {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["осталось несколько секунд"]},Cancel:{msgid:"Cancel",msgstr:["Отмена"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Отменить всю операцию целиком"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Отменить загрузки"]},Continue:{msgid:"Continue",msgstr:["Продолжить"]},"Create new":{msgid:"Create new",msgstr:["Создать новое"]},"estimating time left":{msgid:"estimating time left",msgstr:["оценка оставшегося времени"]},"Existing version":{msgid:"Existing version",msgstr:["Текущая версия"]},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Если вы выберете обе версии, к имени входящего файла будет добавлен номер."]},"Invalid file name":{msgid:"Invalid file name",msgstr:["Имя файла недопустимо"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Дата последнего изменения неизвестна"]},New:{msgid:"New",msgstr:["Новый"]},"New version":{msgid:"New version",msgstr:["Новая версия"]},paused:{msgid:"paused",msgstr:["приостановлено"]},"Preview image":{msgid:"Preview image",msgstr:["Предварительный просмотр"]},Rename:{msgid:"Rename",msgstr:["Переименовать"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Установить все флажки"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Выбрать все существующие файлы"]},"Select all new files":{msgid:"Select all new files",msgstr:["Выбрать все новые файлы"]},Skip:{msgid:"Skip",msgstr:["Пропуск"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Пропустить файл","Пропустить {count} файла","Пропустить {count} файлов","Пропустить {count} файлов"]},"Unknown size":{msgid:"Unknown size",msgstr:["Неизвестный размер"]},"Upload files":{msgid:"Upload files",msgstr:["Загрузка файлов"]},"Upload folders":{msgid:"Upload folders",msgstr:["Загрузка папок"]},"Upload from device":{msgid:"Upload from device",msgstr:["Загрузка с устройства"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Загрузка была отменена"]},"Upload progress":{msgid:"Upload progress",msgstr:["Состояние передачи на сервер"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Когда выбрана входящая папка, все конфликтующие файлы в ней также будут перезаписаны."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Когда выбрана входящая папка, содержимое записывается в существующую папку и выполняется рекурсивное разрешение конфликтов."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Какие файлы вы хотите сохранить?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Для продолжения вам нужно выбрать по крайней мере одну версию каждого файла."]}}}}},{locale:"ru_RU",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Russian (Russia) (https://www.transifex.com/nextcloud/teams/64236/ru_RU/)","Content-Type":"text/plain; charset=UTF-8",Language:"ru_RU","Plural-Forms":"nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Russian (Russia) (https://www.transifex.com/nextcloud/teams/64236/ru_RU/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ru_RU\nPlural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"sc",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Sardinian (https://www.transifex.com/nextcloud/teams/64236/sc/)","Content-Type":"text/plain; charset=UTF-8",Language:"sc","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Sardinian (https://www.transifex.com/nextcloud/teams/64236/sc/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sc\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"si",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Sinhala (https://www.transifex.com/nextcloud/teams/64236/si/)","Content-Type":"text/plain; charset=UTF-8",Language:"si","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Sinhala (https://www.transifex.com/nextcloud/teams/64236/si/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: si\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"si_LK",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Sinhala (Sri Lanka) (https://www.transifex.com/nextcloud/teams/64236/si_LK/)","Content-Type":"text/plain; charset=UTF-8",Language:"si_LK","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Sinhala (Sri Lanka) (https://www.transifex.com/nextcloud/teams/64236/si_LK/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: si_LK\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"sk_SK",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Slovak (Slovakia) (https://www.transifex.com/nextcloud/teams/64236/sk_SK/)","Content-Type":"text/plain; charset=UTF-8",Language:"sk_SK","Plural-Forms":"nplurals=4; plural=(n % 1 == 0 && n == 1 ? 0 : n % 1 == 0 && n >= 2 && n <= 4 ? 1 : n % 1 != 0 ? 2: 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Slovak (Slovakia) (https://www.transifex.com/nextcloud/teams/64236/sk_SK/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sk_SK\nPlural-Forms: nplurals=4; plural=(n % 1 == 0 && n == 1 ? 0 : n % 1 == 0 && n >= 2 && n <= 4 ? 1 : n % 1 != 0 ? 2: 3);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"sl",json:{charset:"utf-8",headers:{"Last-Translator":"Matej Urbančič <>, 2022","Language-Team":"Slovenian (https://www.transifex.com/nextcloud/teams/64236/sl/)","Content-Type":"text/plain; charset=UTF-8",Language:"sl","Plural-Forms":"nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nMatej Urbančič <>, 2022\n"},msgstr:["Last-Translator: Matej Urbančič <>, 2022\nLanguage-Team: Slovenian (https://www.transifex.com/nextcloud/teams/64236/sl/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sl\nPlural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["še {seconds} sekund"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["še {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["še nekaj sekund"]},Add:{msgid:"Add",msgstr:["Dodaj"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Prekliči pošiljanje"]},"estimating time left":{msgid:"estimating time left",msgstr:["ocenjen čas do konca"]},paused:{msgid:"paused",msgstr:["v premoru"]},"Upload files":{msgid:"Upload files",msgstr:["Pošlji datoteke"]}}}}},{locale:"sl_SI",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Slovenian (Slovenia) (https://www.transifex.com/nextcloud/teams/64236/sl_SI/)","Content-Type":"text/plain; charset=UTF-8",Language:"sl_SI","Plural-Forms":"nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Slovenian (Slovenia) (https://www.transifex.com/nextcloud/teams/64236/sl_SI/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sl_SI\nPlural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"sq",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Albanian (https://www.transifex.com/nextcloud/teams/64236/sq/)","Content-Type":"text/plain; charset=UTF-8",Language:"sq","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Albanian (https://www.transifex.com/nextcloud/teams/64236/sq/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sq\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"sr",json:{charset:"utf-8",headers:{"Last-Translator":"Иван Пешић, 2023","Language-Team":"Serbian (https://app.transifex.com/nextcloud/teams/64236/sr/)","Content-Type":"text/plain; charset=UTF-8",Language:"sr","Plural-Forms":"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ , 2023\nИван Пешић, 2023\n"},msgstr:["Last-Translator: Иван Пешић, 2023\nLanguage-Team: Serbian (https://app.transifex.com/nextcloud/teams/64236/sr/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sr\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} фајл конфликт","{count} фајл конфликта","{count} фајл конфликта"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} фајл конфликт у {dirname}","{count} фајл конфликта у {dirname}","{count} фајл конфликта у {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["преостало је {seconds} секунди"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} преостало"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["преостало је неколико секунди"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Обустави отпремања"]},Continue:{msgid:"Continue",msgstr:["Настави"]},"estimating time left":{msgid:"estimating time left",msgstr:["процена преосталог времена"]},"Existing version":{msgid:"Existing version",msgstr:["Постојећа верзија"]},"If you select both versions, the copied file will have a number added to its name.":{msgid:"If you select both versions, the copied file will have a number added to its name.",msgstr:["Ако изаберете обе верзије, на име копираног фајла ће се додати број."]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Није познат датум последње измене"]},New:{msgid:"New",msgstr:["Ново"]},"New version":{msgid:"New version",msgstr:["Нова верзија"]},paused:{msgid:"paused",msgstr:["паузирано"]},"Preview image":{msgid:"Preview image",msgstr:["Слика прегледа"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Штиклирај сва поља за штиклирање"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Изабери све постојеће фајлове"]},"Select all new files":{msgid:"Select all new files",msgstr:["Изабери све нове фајлове"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Прескочи овај фајл","Прескочи {count} фајла","Прескочи {count} фајлова"]},"Unknown size":{msgid:"Unknown size",msgstr:["Непозната величина"]},"Upload cancelled":{msgid:"Upload cancelled",msgstr:["Отпремање је отказано"]},"Upload files":{msgid:"Upload files",msgstr:["Отпреми фајлове"]},"Upload progress":{msgid:"Upload progress",msgstr:["Напредак отпремања"]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Које фајлове желите да задржите?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Морате да изаберете барем једну верзију сваког фајла да наставите."]}}}}},{locale:"sr@latin",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Serbian (Latin) (https://www.transifex.com/nextcloud/teams/64236/sr@latin/)","Content-Type":"text/plain; charset=UTF-8",Language:"sr@latin","Plural-Forms":"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Serbian (Latin) (https://www.transifex.com/nextcloud/teams/64236/sr@latin/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sr@latin\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"sv",json:{charset:"utf-8",headers:{"Last-Translator":"Magnus Höglund, 2024","Language-Team":"Swedish (https://app.transifex.com/nextcloud/teams/64236/sv/)","Content-Type":"text/plain; charset=UTF-8",Language:"sv","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nMagnus Höglund, 2024\n"},msgstr:["Last-Translator: Magnus Höglund, 2024\nLanguage-Team: Swedish (https://app.transifex.com/nextcloud/teams/64236/sv/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sv\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{filename}" contains invalid characters, how do you want to continue?':{msgid:'"{filename}" contains invalid characters, how do you want to continue?',msgstr:['"{filename}" innehåller ogiltiga tecken, hur vill du fortsätta?']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} filkonflikt","{count} filkonflikter"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} filkonflikt i {dirname}","{count} filkonflikter i {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} sekunder kvarstår"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} kvarstår"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["några sekunder kvar"]},Cancel:{msgid:"Cancel",msgstr:["Avbryt"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Avbryt hela operationen"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Avbryt uppladdningar"]},Continue:{msgid:"Continue",msgstr:["Fortsätt"]},"Create new":{msgid:"Create new",msgstr:["Skapa ny"]},"estimating time left":{msgid:"estimating time left",msgstr:["uppskattar kvarstående tid"]},"Existing version":{msgid:"Existing version",msgstr:["Nuvarande version"]},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Om du väljer båda versionerna kommer den inkommande filen att läggas till ett nummer i namnet."]},"Invalid file name":{msgid:"Invalid file name",msgstr:["Ogiltigt filnamn"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Senaste ändringsdatum okänt"]},New:{msgid:"New",msgstr:["Ny"]},"New version":{msgid:"New version",msgstr:["Ny version"]},paused:{msgid:"paused",msgstr:["pausad"]},"Preview image":{msgid:"Preview image",msgstr:["Förhandsgranska bild"]},Rename:{msgid:"Rename",msgstr:["Byt namn"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Markera alla kryssrutor"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Välj alla befintliga filer"]},"Select all new files":{msgid:"Select all new files",msgstr:["Välj alla nya filer"]},Skip:{msgid:"Skip",msgstr:["Hoppa över"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Hoppa över denna fil","Hoppa över {count} filer"]},"Unknown size":{msgid:"Unknown size",msgstr:["Okänd storlek"]},"Upload files":{msgid:"Upload files",msgstr:["Ladda upp filer"]},"Upload folders":{msgid:"Upload folders",msgstr:["Ladda upp mappar"]},"Upload from device":{msgid:"Upload from device",msgstr:["Ladda upp från enhet"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Uppladdningen har avbrutits"]},"Upload progress":{msgid:"Upload progress",msgstr:["Uppladdningsförlopp"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["När en inkommande mapp väljs skrivs även alla konfliktande filer i den över."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["När en inkommande mapp väljs skrivs innehållet in i den befintliga mappen och en rekursiv konfliktlösning utförs."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Vilka filer vill du behålla?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Du måste välja minst en version av varje fil för att fortsätta."]}}}}},{locale:"sw",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Swahili (https://www.transifex.com/nextcloud/teams/64236/sw/)","Content-Type":"text/plain; charset=UTF-8",Language:"sw","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Swahili (https://www.transifex.com/nextcloud/teams/64236/sw/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sw\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"ta",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Tamil (https://www.transifex.com/nextcloud/teams/64236/ta/)","Content-Type":"text/plain; charset=UTF-8",Language:"ta","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Tamil (https://www.transifex.com/nextcloud/teams/64236/ta/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ta\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"ta_LK",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Tamil (Sri-Lanka) (https://www.transifex.com/nextcloud/teams/64236/ta_LK/)","Content-Type":"text/plain; charset=UTF-8",Language:"ta_LK","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Tamil (Sri-Lanka) (https://www.transifex.com/nextcloud/teams/64236/ta_LK/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ta_LK\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"th",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Thai (https://www.transifex.com/nextcloud/teams/64236/th/)","Content-Type":"text/plain; charset=UTF-8",Language:"th","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Thai (https://www.transifex.com/nextcloud/teams/64236/th/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: th\nPlural-Forms: nplurals=1; plural=0;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"th_TH",json:{charset:"utf-8",headers:{"Last-Translator":"Phongpanot Phairat , 2022","Language-Team":"Thai (Thailand) (https://www.transifex.com/nextcloud/teams/64236/th_TH/)","Content-Type":"text/plain; charset=UTF-8",Language:"th_TH","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nPhongpanot Phairat , 2022\n"},msgstr:["Last-Translator: Phongpanot Phairat , 2022\nLanguage-Team: Thai (Thailand) (https://www.transifex.com/nextcloud/teams/64236/th_TH/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: th_TH\nPlural-Forms: nplurals=1; plural=0;\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["เหลืออีก {seconds} วินาที"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["เหลืออีก {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["เหลืออีกไม่กี่วินาที"]},Add:{msgid:"Add",msgstr:["เพิ่ม"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["ยกเลิกการอัปโหลด"]},"estimating time left":{msgid:"estimating time left",msgstr:["กำลังคำนวณเวลาที่เหลือ"]},paused:{msgid:"paused",msgstr:["หยุดชั่วคราว"]},"Upload files":{msgid:"Upload files",msgstr:["อัปโหลดไฟล์"]}}}}},{locale:"tk",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Turkmen (https://www.transifex.com/nextcloud/teams/64236/tk/)","Content-Type":"text/plain; charset=UTF-8",Language:"tk","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Turkmen (https://www.transifex.com/nextcloud/teams/64236/tk/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: tk\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"tr",json:{charset:"utf-8",headers:{"Last-Translator":"Kaya Zeren , 2024","Language-Team":"Turkish (https://app.transifex.com/nextcloud/teams/64236/tr/)","Content-Type":"text/plain; charset=UTF-8",Language:"tr","Plural-Forms":"nplurals=2; plural=(n > 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nKaya Zeren , 2024\n"},msgstr:["Last-Translator: Kaya Zeren , 2024\nLanguage-Team: Turkish (https://app.transifex.com/nextcloud/teams/64236/tr/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: tr\nPlural-Forms: nplurals=2; plural=(n > 1);\n"]},'"{filename}" contains invalid characters, how do you want to continue?':{msgid:'"{filename}" contains invalid characters, how do you want to continue?',msgstr:['"{filename}" içinde geçersiz karakterler var. Nasıl ilerlemek istersiniz?']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} dosya çakışması var","{count} dosya çakışması var"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{dirname} klasöründe {count} dosya çakışması var","{dirname} klasöründe {count} dosya çakışması var"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} saniye kaldı"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} kaldı"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["bir kaç saniye kaldı"]},Cancel:{msgid:"Cancel",msgstr:["İptal"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Tüm işlemi iptal et"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Yüklemeleri iptal et"]},Continue:{msgid:"Continue",msgstr:["İlerle"]},"Create new":{msgid:"Create new",msgstr:["Yeni ekle"]},"estimating time left":{msgid:"estimating time left",msgstr:["öngörülen kalan süre"]},"Existing version":{msgid:"Existing version",msgstr:["Var olan sürüm"]},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["İki sürümü de seçerseniz, gelen dosyanın adına bir sayı eklenir."]},"Invalid file name":{msgid:"Invalid file name",msgstr:["Dosya adı geçersiz"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Son değiştirilme tarihi bilinmiyor"]},New:{msgid:"New",msgstr:["Yeni"]},"New version":{msgid:"New version",msgstr:["Yeni sürüm"]},paused:{msgid:"paused",msgstr:["duraklatıldı"]},"Preview image":{msgid:"Preview image",msgstr:["Görsel ön izlemesi"]},Rename:{msgid:"Rename",msgstr:["Yeniden adlandır"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Tüm kutuları işaretle"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Tüm var olan dosyaları seç"]},"Select all new files":{msgid:"Select all new files",msgstr:["Tüm yeni dosyaları seç"]},Skip:{msgid:"Skip",msgstr:["Atla"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Bu dosyayı atla","{count} dosyayı atla"]},"Unknown size":{msgid:"Unknown size",msgstr:["Boyut bilinmiyor"]},"Upload files":{msgid:"Upload files",msgstr:["Dosyaları yükle"]},"Upload folders":{msgid:"Upload folders",msgstr:["Klasörleri yükle"]},"Upload from device":{msgid:"Upload from device",msgstr:["Aygıttan yükle"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Yükleme iptal edildi"]},"Upload progress":{msgid:"Upload progress",msgstr:["Yükleme ilerlemesi"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Bir gelen klasör seçildiğinde, içindeki çakışan dosyaların da üzerine yazılır."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Bir gelen klasörü seçildiğinde içerik var olan klasöre yazılır ve yinelemeli bir çakışma çözümü uygulanır."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Hangi dosyaları tutmak istiyorsunuz?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["İlerlemek için her dosyanın en az bir sürümünü seçmelisiniz."]}}}}},{locale:"ug",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Uyghur (https://www.transifex.com/nextcloud/teams/64236/ug/)","Content-Type":"text/plain; charset=UTF-8",Language:"ug","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Uyghur (https://www.transifex.com/nextcloud/teams/64236/ug/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ug\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"uk",json:{charset:"utf-8",headers:{"Last-Translator":"O St , 2024","Language-Team":"Ukrainian (https://app.transifex.com/nextcloud/teams/64236/uk/)","Content-Type":"text/plain; charset=UTF-8",Language:"uk","Plural-Forms":"nplurals=4; plural=(n % 1 == 0 && n % 10 == 1 && n % 100 != 11 ? 0 : n % 1 == 0 && n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 12 || n % 100 > 14) ? 1 : n % 1 == 0 && (n % 10 ==0 || (n % 10 >=5 && n % 10 <=9) || (n % 100 >=11 && n % 100 <=14 )) ? 2: 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nO St , 2024\n"},msgstr:["Last-Translator: O St , 2024\nLanguage-Team: Ukrainian (https://app.transifex.com/nextcloud/teams/64236/uk/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: uk\nPlural-Forms: nplurals=4; plural=(n % 1 == 0 && n % 10 == 1 && n % 100 != 11 ? 0 : n % 1 == 0 && n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 12 || n % 100 > 14) ? 1 : n % 1 == 0 && (n % 10 ==0 || (n % 10 >=5 && n % 10 <=9) || (n % 100 >=11 && n % 100 <=14 )) ? 2: 3);\n"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} конфліктний файл","{count} конфліктних файли","{count} конфліктних файлів","{count} конфліктних файлів"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} конфліктний файл у каталозі {dirname}","{count} конфліктних файли у каталозі {dirname}","{count} конфліктних файлів у каталозі {dirname}","{count} конфліктних файлів у каталозі {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["Залишилося {seconds} секунд"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["Залишилося {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["залишилося кілька секунд"]},Cancel:{msgid:"Cancel",msgstr:["Скасувати"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Скасувати операцію повністю"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Скасувати завантаження"]},Continue:{msgid:"Continue",msgstr:["Продовжити"]},"estimating time left":{msgid:"estimating time left",msgstr:["оцінка часу, що залишився"]},"Existing version":{msgid:"Existing version",msgstr:["Присутня версія"]},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Якщо буде вибрано обидві версії, до імени вхідного файлу було додано цифру."]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Дата останньої зміни невідома"]},New:{msgid:"New",msgstr:["Нове"]},"New version":{msgid:"New version",msgstr:["Нова версія"]},paused:{msgid:"paused",msgstr:["призупинено"]},"Preview image":{msgid:"Preview image",msgstr:["Попередній перегляд"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Вибрати все"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Вибрати усі присутні файли"]},"Select all new files":{msgid:"Select all new files",msgstr:["Вибрати усі нові файли"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Пропустити файл","Пропустити {count} файли","Пропустити {count} файлів","Пропустити {count} файлів"]},"Unknown size":{msgid:"Unknown size",msgstr:["Невідомий розмір"]},"Upload cancelled":{msgid:"Upload cancelled",msgstr:["Завантаження скасовано"]},"Upload files":{msgid:"Upload files",msgstr:["Завантажити файли"]},"Upload progress":{msgid:"Upload progress",msgstr:["Поступ завантаження"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Усі конфліктні файли у вибраному каталозі призначення буде перезаписано поверх."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Якщо буде вибрано вхідний каталог, вміст буде записано до наявного каталогу та вирішено конфлікти у відповідних файлах каталогу та підкаталогів."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Які файли залишити?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Для продовження потрібно вибрати принаймні одну версію для кожного файлу."]}}}}},{locale:"ur_PK",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Urdu (Pakistan) (https://www.transifex.com/nextcloud/teams/64236/ur_PK/)","Content-Type":"text/plain; charset=UTF-8",Language:"ur_PK","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Urdu (Pakistan) (https://www.transifex.com/nextcloud/teams/64236/ur_PK/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ur_PK\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"uz",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Uzbek (https://www.transifex.com/nextcloud/teams/64236/uz/)","Content-Type":"text/plain; charset=UTF-8",Language:"uz","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Uzbek (https://www.transifex.com/nextcloud/teams/64236/uz/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: uz\nPlural-Forms: nplurals=1; plural=0;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"vi",json:{charset:"utf-8",headers:{"Last-Translator":"Tung DangQuang, 2023","Language-Team":"Vietnamese (https://app.transifex.com/nextcloud/teams/64236/vi/)","Content-Type":"text/plain; charset=UTF-8",Language:"vi","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ , 2023\nTung DangQuang, 2023\n"},msgstr:["Last-Translator: Tung DangQuang, 2023\nLanguage-Team: Vietnamese (https://app.transifex.com/nextcloud/teams/64236/vi/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: vi\nPlural-Forms: nplurals=1; plural=0;\n"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} Tập tin xung đột"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} tập tin lỗi trong {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["Còn {second} giây"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["Còn lại {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["Còn lại một vài giây"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Huỷ tải lên"]},Continue:{msgid:"Continue",msgstr:["Tiếp Tục"]},"estimating time left":{msgid:"estimating time left",msgstr:["Thời gian còn lại dự kiến"]},"Existing version":{msgid:"Existing version",msgstr:["Phiên Bản Hiện Tại"]},"If you select both versions, the copied file will have a number added to its name.":{msgid:"If you select both versions, the copied file will have a number added to its name.",msgstr:["Nếu bạn chọn cả hai phiên bản, tệp được sao chép sẽ có thêm một số vào tên của nó."]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Ngày sửa dổi lần cuối không xác định"]},New:{msgid:"New",msgstr:["Tạo Mới"]},"New version":{msgid:"New version",msgstr:["Phiên Bản Mới"]},paused:{msgid:"paused",msgstr:["đã tạm dừng"]},"Preview image":{msgid:"Preview image",msgstr:["Xem Trước Ảnh"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Chọn tất cả hộp checkbox"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Chọn tất cả các tập tin có sẵn"]},"Select all new files":{msgid:"Select all new files",msgstr:["Chọn tất cả các tập tin mới"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Bỏ Qua {count} tập tin"]},"Unknown size":{msgid:"Unknown size",msgstr:["Không rõ dung lượng"]},"Upload cancelled":{msgid:"Upload cancelled",msgstr:["Dừng Tải Lên"]},"Upload files":{msgid:"Upload files",msgstr:["Tập tin tải lên"]},"Upload progress":{msgid:"Upload progress",msgstr:["Đang Tải Lên"]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Bạn muốn giữ tập tin nào?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Bạn cần chọn ít nhất một phiên bản tập tin mới có thể tiếp tục"]}}}}},{locale:"zh_CN",json:{charset:"utf-8",headers:{"Last-Translator":"Hongbo Chen, 2023","Language-Team":"Chinese (China) (https://app.transifex.com/nextcloud/teams/64236/zh_CN/)","Content-Type":"text/plain; charset=UTF-8",Language:"zh_CN","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ , 2023\nHongbo Chen, 2023\n"},msgstr:["Last-Translator: Hongbo Chen, 2023\nLanguage-Team: Chinese (China) (https://app.transifex.com/nextcloud/teams/64236/zh_CN/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: zh_CN\nPlural-Forms: nplurals=1; plural=0;\n"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count}文件冲突"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["在{dirname}目录下有{count}个文件冲突"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["剩余 {seconds} 秒"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["剩余 {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["还剩几秒"]},Add:{msgid:"Add",msgstr:["添加"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["取消上传"]},Continue:{msgid:"Continue",msgstr:["继续"]},"estimating time left":{msgid:"estimating time left",msgstr:["估计剩余时间"]},"Existing version":{msgid:"Existing version",msgstr:["版本已存在"]},"If you select both versions, the copied file will have a number added to its name.":{msgid:"If you select both versions, the copied file will have a number added to its name.",msgstr:["如果选择所有的版本,新增版本的文件名为原文件名加数字"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["文件最后修改日期未知"]},"New version":{msgid:"New version",msgstr:["新版本"]},paused:{msgid:"paused",msgstr:["已暂停"]},"Preview image":{msgid:"Preview image",msgstr:["图片预览"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["选择所有的选择框"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["选择所有存在的文件"]},"Select all new files":{msgid:"Select all new files",msgstr:["选择所有的新文件"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["跳过{count}个文件"]},"Unknown size":{msgid:"Unknown size",msgstr:["文件大小未知"]},"Upload cancelled":{msgid:"Upload cancelled",msgstr:["取消上传"]},"Upload files":{msgid:"Upload files",msgstr:["上传文件"]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["你要保留哪些文件?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["每个文件至少选择一个版本"]}}}}},{locale:"zh_HK",json:{charset:"utf-8",headers:{"Last-Translator":"Café Tango, 2024","Language-Team":"Chinese (Hong Kong) (https://app.transifex.com/nextcloud/teams/64236/zh_HK/)","Content-Type":"text/plain; charset=UTF-8",Language:"zh_HK","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nCafé Tango, 2024\n"},msgstr:["Last-Translator: Café Tango, 2024\nLanguage-Team: Chinese (Hong Kong) (https://app.transifex.com/nextcloud/teams/64236/zh_HK/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: zh_HK\nPlural-Forms: nplurals=1; plural=0;\n"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} 個檔案衝突"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{dirname} 中有 {count} 個檔案衝突"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["剩餘 {seconds} 秒"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["剩餘 {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["還剩幾秒"]},Cancel:{msgid:"Cancel",msgstr:["取消"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["取消整個操作"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["取消上傳"]},Continue:{msgid:"Continue",msgstr:["繼續"]},"estimating time left":{msgid:"estimating time left",msgstr:["估計剩餘時間"]},"Existing version":{msgid:"Existing version",msgstr:["既有版本"]},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["若您選取兩個版本,傳入檔案的名稱將會新增編號。"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["最後修改日期不詳"]},New:{msgid:"New",msgstr:["新增"]},"New version":{msgid:"New version",msgstr:["新版本 "]},paused:{msgid:"paused",msgstr:["已暫停"]},"Preview image":{msgid:"Preview image",msgstr:["預覽圖片"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["選取所有核取方塊"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["選取所有既有檔案"]},"Select all new files":{msgid:"Select all new files",msgstr:["選取所有新檔案"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["略過 {count} 個檔案"]},"Unknown size":{msgid:"Unknown size",msgstr:["大小不詳"]},"Upload cancelled":{msgid:"Upload cancelled",msgstr:["已取消上傳"]},"Upload files":{msgid:"Upload files",msgstr:["上傳檔案"]},"Upload progress":{msgid:"Upload progress",msgstr:["上傳進度"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["選取傳入資料夾後,其中任何的衝突檔案都會被覆寫。"]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["選擇傳入資料夾後,內容將寫入現有資料夾並執行遞歸衝突解決。"]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["您想保留哪些檔案?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["您必須為每個檔案都至少選取一個版本以繼續。"]}}}}},{locale:"zh_TW",json:{charset:"utf-8",headers:{"Last-Translator":"黃柏諺 , 2024","Language-Team":"Chinese (Taiwan) (https://app.transifex.com/nextcloud/teams/64236/zh_TW/)","Content-Type":"text/plain; charset=UTF-8",Language:"zh_TW","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\n黃柏諺 , 2024\n"},msgstr:["Last-Translator: 黃柏諺 , 2024\nLanguage-Team: Chinese (Taiwan) (https://app.transifex.com/nextcloud/teams/64236/zh_TW/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: zh_TW\nPlural-Forms: nplurals=1; plural=0;\n"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} 個檔案衝突"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{dirname} 中有 {count} 個檔案衝突"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["剩餘 {seconds} 秒"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["剩餘 {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["還剩幾秒"]},Cancel:{msgid:"Cancel",msgstr:["取消"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["取消整個操作"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["取消上傳"]},Continue:{msgid:"Continue",msgstr:["繼續"]},"estimating time left":{msgid:"estimating time left",msgstr:["估計剩餘時間"]},"Existing version":{msgid:"Existing version",msgstr:["既有版本"]},"If you select both versions, the copied file will have a number added to its name.":{msgid:"If you select both versions, the copied file will have a number added to its name.",msgstr:["若您選取兩個版本,複製的檔案的名稱將會新增編號。"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["最後修改日期未知"]},New:{msgid:"New",msgstr:["新增"]},"New version":{msgid:"New version",msgstr:["新版本"]},paused:{msgid:"paused",msgstr:["已暫停"]},"Preview image":{msgid:"Preview image",msgstr:["預覽圖片"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["選取所有核取方塊"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["選取所有既有檔案"]},"Select all new files":{msgid:"Select all new files",msgstr:["選取所有新檔案"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["略過 {count} 檔案"]},"Unknown size":{msgid:"Unknown size",msgstr:["未知大小"]},"Upload cancelled":{msgid:"Upload cancelled",msgstr:["已取消上傳"]},"Upload files":{msgid:"Upload files",msgstr:["上傳檔案"]},"Upload progress":{msgid:"Upload progress",msgstr:["上傳進度"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["選取傳入資料夾後,其中任何的衝突檔案都會被覆寫。"]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["您想保留哪些檔案?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["您必須為每個檔案都至少選取一個版本以繼續。"]}}}}}].map((e=>he.addTranslation(e.locale,e.json)));const we=he.build(),Te=we.ngettext.bind(we),ve=we.gettext.bind(we),xe=(0,Z.YK)().setApp("@nextcloud/upload").detectUser().build();var ye=(e=>(e[e.IDLE=0]="IDLE",e[e.UPLOADING=1]="UPLOADING",e[e.PAUSED=2]="PAUSED",e))(ye||{});class Ce{_destinationFolder;_isPublic;_uploadQueue=[];_jobQueue=new E({concurrency:3});_queueSize=0;_queueProgress=0;_queueStatus=0;_notifiers=[];constructor(e=!1,s){if(this._isPublic=e,!s){const t=(0,C.join)(x.PY,x.lJ);let n;if(e)n="anonymous";else{const e=(0,v.HW)()?.uid;if(!e)throw new Error("User is not logged in");n=e}s=new x.vd({id:0,owner:n,permissions:x.aX.ALL,root:x.lJ,source:t})}this.destination=s,this._jobQueue.addListener("idle",(()=>this.reset())),xe.debug("Upload workspace initialized",{destination:this.destination,root:this.root,isPublic:e,maxChunksSize:ge()})}get destination(){return this._destinationFolder}set destination(e){if(!e)throw new Error("Invalid destination folder");xe.debug("Destination set",{folder:e}),this._destinationFolder=e}get root(){return this._destinationFolder.source}get queue(){return this._uploadQueue}reset(){this._uploadQueue.splice(0,this._uploadQueue.length),this._jobQueue.clear(),this._queueSize=0,this._queueProgress=0,this._queueStatus=0}pause(){this._jobQueue.pause(),this._queueStatus=2}start(){this._jobQueue.start(),this._queueStatus=1,this.updateStats()}get info(){return{size:this._queueSize,progress:this._queueProgress,status:this._queueStatus}}updateStats(){const e=this._uploadQueue.map((e=>e.size)).reduce(((e,s)=>e+s),0),s=this._uploadQueue.map((e=>e.uploaded)).reduce(((e,s)=>e+s),0);this._queueSize=e,this._queueProgress=s,2!==this._queueStatus&&(this._queueStatus=this._jobQueue.size>0?1:0)}addNotifier(e){this._notifiers.push(e)}_notifyAll(e){for(const s of this._notifiers)try{s(e)}catch(s){xe.warn("Error in upload notifier",{error:s,source:e.source})}}batchUpload(e,s,t){const n=new pe("",s);t||(t=async e=>e);try{return this._jobQueue.concurrency+=1,new S((async(s,a,i)=>{try{const a=await this._jobQueue.add((()=>{const s=this.uploadDirectory(e,n,t,(0,x.H4)(this.root));return i((()=>s.cancel())),s}));a&&s(a)}catch(e){xe.error("Error in batch upload",{error:e})}a(ve("Upload has been cancelled"))}))}finally{this._jobQueue.concurrency-=1}}uploadDirectory(e,s,t,n){const a=(0,C.normalize)(`${e}/${s.name}`).replace(/\/$/,""),i=`${this.root.replace(/\/$/,"")}/${a.replace(/^\//,"")}`;return new S((async(e,l,r)=>{const o=new AbortController;r((()=>o.abort()));const m=await t(s.children,a);if(!1===m)return void l(ve("Upload has been cancelled"));const d=[],c=[],g=new fe(i,!1,0,s);g.signal.addEventListener("abort",(()=>l(ve("Upload has been cancelled")))),g.status=ue.UPLOADING;try{if(s.name)try{await n.createDirectory(a,{signal:o.signal}),c.push(new S((e=>e(g)))),this._uploadQueue.push(g)}catch(e){if(!e||"object"!=typeof e||!("status"in e)||405!==e.status)throw e;xe.debug("Directory already exists, writing into it",{directory:s.name})}for(const e of m)e instanceof pe?d.push(this.uploadDirectory(a,e,t,n)):c.push(this.upload(`${a}/${e.name}`,e));o.signal.addEventListener("abort",(()=>{c.forEach((e=>e.cancel())),d.forEach((e=>e.cancel()))}));const i=await Promise.all(c),l=await Promise.all(d);g.status=ue.FINISHED,e([i,...l].flat())}catch(e){o.abort(e),g.status=ue.FAILED,l(e)}finally{s.name&&(this._notifyAll(g),this.updateStats())}}))}upload(e,s,t,n=5){const a=`${(t=t||this.root).replace(/\/$/,"")}/${e.replace(/^\//,"")}`,{origin:i}=new URL(a),l=i+(0,y.O0)(a.slice(i.length));return xe.debug(`Uploading ${s.name} to ${l}`),new S((async(e,t,i)=>{oe(s)&&(s=await new Promise((e=>s.file(e,t))));const r=s,o=ge("size"in r?r.size:void 0),m=this._isPublic||0===o||"size"in r&&r.size{try{d.response=await de(l,s,d.signal,(e=>{d.uploaded=d.uploaded+e.bytes,this.updateStats()}),void 0,{"X-OC-Mtime":r.lastModified/1e3,"Content-Type":r.type}),d.uploaded=d.size,this.updateStats(),xe.debug(`Successfully uploaded ${r.name}`,{file:r,upload:d}),e(d)}catch(e){if((0,L.FZ)(e))return d.status=ue.FAILED,void t(ve("Upload has been cancelled"));e?.response&&(d.response=e.response),d.status=ue.FAILED,xe.error(`Failed uploading ${r.name}`,{error:e,file:r,upload:d}),t("Failed uploading the file")}this._notifyAll(d)};this._jobQueue.add(n),this.updateStats()}else{xe.debug("Initializing chunked upload",{file:r,upload:d});const s=await async function(e,s=5){const t=`${(0,B.dC)(`dav/uploads/${(0,v.HW)()?.uid}`)}/web-file-upload-${[...Array(16)].map((()=>Math.floor(16*Math.random()).toString(16))).join("")}`,n=e?{Destination:e}:void 0;return await L.Ay.request({method:"MKCOL",url:t,headers:n,"axios-retry":{retries:s,retryDelay:(e,s)=>G.exponentialDelay(e,s,1e3)}}),t}(l,n),a=[];for(let e=0;ece(r,t,o),c=()=>de(`${s}/${e+1}`,m,d.signal,(()=>this.updateStats()),l,{"X-OC-Mtime":r.lastModified/1e3,"OC-Total-Length":r.size,"Content-Type":"application/octet-stream"},n).then((()=>{d.uploaded=d.uploaded+o})).catch((s=>{if(507===s?.response?.status)throw xe.error("Upload failed, not enough space on the server or quota exceeded. Cancelling the remaining chunks",{error:s,upload:d}),d.cancel(),d.status=ue.FAILED,s;throw(0,L.FZ)(s)||(xe.error(`Chunk ${e+1} ${t} - ${i} uploading failed`,{error:s,upload:d}),d.cancel(),d.status=ue.FAILED),s}));a.push(this._jobQueue.add(c))}try{await Promise.all(a),this.updateStats(),d.response=await L.Ay.request({method:"MOVE",url:`${s}/.file`,headers:{"X-OC-Mtime":r.lastModified/1e3,"OC-Total-Length":r.size,Destination:l}}),this.updateStats(),d.status=ue.FINISHED,xe.debug(`Successfully uploaded ${r.name}`,{file:r,upload:d}),e(d)}catch(e){(0,L.FZ)(e)?(d.status=ue.FAILED,t(ve("Upload has been cancelled"))):(d.status=ue.FAILED,t("Failed assembling the chunks together")),L.Ay.request({method:"DELETE",url:`${s}`})}this._notifyAll(d)}return d}))}}function Le(e,s,t,n,a,i,l,r){var o,m="function"==typeof e?e.options:e;if(s&&(m.render=s,m.staticRenderFns=t,m._compiled=!0),n&&(m.functional=!0),i&&(m._scopeId="data-v-"+i),l?(o=function(e){(e=e||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext)||"undefined"==typeof __VUE_SSR_CONTEXT__||(e=__VUE_SSR_CONTEXT__),a&&a.call(this,e),e&&e._registeredComponents&&e._registeredComponents.add(l)},m._ssrRegister=o):a&&(o=r?function(){a.call(this,(m.functional?this.parent:this).$root.$options.shadowRoot)}:a),o)if(m.functional){m._injectStyles=o;var d=m.render;m.render=function(e,s){return o.call(s),d(e,s)}}else{var c=m.beforeCreate;m.beforeCreate=c?[].concat(c,o):[o]}return{exports:e,options:m}}const ke=Le({name:"CancelIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},(function(){var e=this,s=e._self._c;return s("span",e._b({staticClass:"material-design-icon cancel-icon",attrs:{"aria-hidden":!e.title||null,"aria-label":e.title,role:"img"},on:{click:function(s){return e.$emit("click",s)}}},"span",e.$attrs,!1),[s("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[s("path",{attrs:{d:"M12 2C17.5 2 22 6.5 22 12S17.5 22 12 22 2 17.5 2 12 6.5 2 12 2M12 4C10.1 4 8.4 4.6 7.1 5.7L18.3 16.9C19.3 15.5 20 13.8 20 12C20 7.6 16.4 4 12 4M16.9 18.3L5.7 7.1C4.6 8.4 4 10.1 4 12C4 16.4 7.6 20 12 20C13.9 20 15.6 19.4 16.9 18.3Z"}},[e.title?s("title",[e._v(e._s(e.title))]):e._e()])])])}),[],!1,null,null,null,null).exports,be=Le({name:"FolderUploadIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},(function(){var e=this,s=e._self._c;return s("span",e._b({staticClass:"material-design-icon folder-upload-icon",attrs:{"aria-hidden":!e.title||null,"aria-label":e.title,role:"img"},on:{click:function(s){return e.$emit("click",s)}}},"span",e.$attrs,!1),[s("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[s("path",{attrs:{d:"M20,6A2,2 0 0,1 22,8V18A2,2 0 0,1 20,20H4A2,2 0 0,1 2,18V6A2,2 0 0,1 4,4H10L12,6H20M10.75,13H14V17H16V13H19.25L15,8.75"}},[e.title?s("title",[e._v(e._s(e.title))]):e._e()])])])}),[],!1,null,null,null,null).exports,Se=Le({name:"PlusIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},(function(){var e=this,s=e._self._c;return s("span",e._b({staticClass:"material-design-icon plus-icon",attrs:{"aria-hidden":!e.title||null,"aria-label":e.title,role:"img"},on:{click:function(s){return e.$emit("click",s)}}},"span",e.$attrs,!1),[s("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[s("path",{attrs:{d:"M19,13H13V19H11V13H5V11H11V5H13V11H19V13Z"}},[e.title?s("title",[e._v(e._s(e.title))]):e._e()])])])}),[],!1,null,null,null,null).exports,_e=Le({name:"UploadIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},(function(){var e=this,s=e._self._c;return s("span",e._b({staticClass:"material-design-icon upload-icon",attrs:{"aria-hidden":!e.title||null,"aria-label":e.title,role:"img"},on:{click:function(s){return e.$emit("click",s)}}},"span",e.$attrs,!1),[s("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[s("path",{attrs:{d:"M9,16V10H5L12,3L19,10H15V16H9M5,20V18H19V20H5Z"}},[e.title?s("title",[e._v(e._s(e.title))]):e._e()])])])}),[],!1,null,null,null,null).exports,Ae=T.Ay.extend({name:"UploadPicker",components:{IconCancel:ke,IconFolderUpload:be,IconPlus:Se,IconUpload:_e,NcActionButton:se.A,NcActionCaption:te.A,NcActionSeparator:ne.A,NcActions:ae.A,NcButton:ie.A,NcIconSvgWrapper:le.A,NcProgressBar:re.A},props:{accept:{type:Array,default:null},disabled:{type:Boolean,default:!1},multiple:{type:Boolean,default:!1},destination:{type:x.vd,default:void 0},allowFolders:{type:Boolean,default:!1},content:{type:[Array,Function],default:()=>[]},forbiddenCharacters:{type:Array,default:()=>[]}},setup:()=>({t:ve,progressTimeId:`nc-uploader-progress-${Math.random().toString(36).slice(7)}`}),data:()=>({eta:null,timeLeft:"",currentContent:[],newFileMenuEntries:[],uploadManager:Fe()}),computed:{menuEntriesUpload(){return this.newFileMenuEntries.filter((e=>e.category===x.a7.UploadFromDevice))},menuEntriesNew(){return this.newFileMenuEntries.filter((e=>e.category===x.a7.CreateNew))},menuEntriesOther(){return this.newFileMenuEntries.filter((e=>e.category===x.a7.Other))},canUploadFolders(){return this.allowFolders&&"webkitdirectory"in document.createElement("input")},totalQueueSize(){return this.uploadManager.info?.size||0},uploadedQueueSize(){return this.uploadManager.info?.progress||0},progress(){return Math.round(this.uploadedQueueSize/this.totalQueueSize*100)||0},queue(){return this.uploadManager.queue},hasFailure(){return 0!==this.queue?.filter((e=>e.status===ue.FAILED)).length},isUploading(){return this.queue?.length>0},isAssembling(){return 0!==this.queue?.filter((e=>e.status===ue.ASSEMBLING)).length},isPaused(){return this.uploadManager.info?.status===ye.PAUSED},buttonName(){if(!this.isUploading)return ve("New")}},watch:{allowFolders:{immediate:!0,handler(){"function"!=typeof this.content&&this.allowFolders&&xe.error("[UploadPicker] Setting `allowFolders` is only allowed if `content` is a function")}},content:{immediate:!0,async handler(){this.currentContent=await this.getContent()}},destination(e){this.setDestination(e)},totalQueueSize(e){this.eta=ee({min:0,max:e}),this.updateStatus()},uploadedQueueSize(e){this.eta?.report?.(e),this.updateStatus()},isPaused(e){e?this.$emit("paused",this.queue):this.$emit("resumed",this.queue)}},beforeMount(){this.destination&&this.setDestination(this.destination),this.uploadManager.addNotifier(this.onUploadCompletion),xe.debug("UploadPicker initialised")},methods:{onTriggerPick(e=!1){const s=this.$refs.input;this.canUploadFolders&&(s.webkitdirectory=e),this.$nextTick((()=>s.click()))},async getContent(e){return Array.isArray(this.content)?this.content:await this.content(e)},showInvalidFileNameDialog:async e=>new S((async(s,t)=>{await(new X.ik).setName(ve("Invalid file name")).setSeverity("error").setText(ve('"{filename}" contains invalid characters, how do you want to continue?',{filename:e})).setButtons([{label:ve("Cancel"),type:"error",callback:t},{label:ve("Skip"),callback:()=>s(!1)},{label:ve("Rename"),type:"primary",callback:()=>s(!0)}]).build().show()})),async handleConflicts(e,s){try{const t=""===s?this.currentContent:await this.getContent(s).catch((()=>[])),n=Ee(e,t);if(n.length>0){const{selected:a,renamed:i}=await Pe(s,n,t,{recursive:!0});e=[...a,...i]}const a=[];for(const s of e)if(this.forbiddenCharacters.some((e=>s.name.includes(e)))){if(await this.showInvalidFileNameDialog(s.name)){let t=this.replaceInvalidCharacters(s.name);t=(0,x.E6)(t,e.map((e=>e.name))),Object.defineProperty(s,"name",{value:t}),a.push(s)}}else a.push(s);return a}catch(e){return xe.debug("Upload has been cancelled",{error:e}),(0,X.I9)(ve("Upload has been cancelled")),!1}},replaceInvalidCharacters(e){const s=["-","_"," "].filter((e=>!this.forbiddenCharacters.includes(e)))[0]??"x";return this.forbiddenCharacters.forEach((t=>{e=e.replaceAll(t,s)})),e},onPick(){const e=this.$refs.input,s=e.files?Array.from(e.files):[];this.uploadManager.batchUpload("",s,this.handleConflicts).catch((e=>xe.debug("Error while uploading",{error:e}))).finally((()=>this.resetForm()))},resetForm(){const e=this.$refs.form;e?.reset()},onCancel(){this.uploadManager.queue.forEach((e=>{e.cancel()})),this.resetForm()},updateStatus(){if(this.isPaused)return void(this.timeLeft=ve("paused"));const e=Math.round(this.eta.estimate());if(e!==1/0)if(e<10)this.timeLeft=ve("a few seconds left");else if(e>60){const s=new Date(0);s.setSeconds(e);const t=s.toISOString().slice(11,19);this.timeLeft=ve("{time} left",{time:t})}else this.timeLeft=ve("{seconds} seconds left",{seconds:e});else this.timeLeft=ve("estimating time left")},setDestination(e){this.destination?(this.uploadManager.destination=e,this.newFileMenuEntries=(0,x.m1)(e)):xe.debug("Invalid destination")},onUploadCompletion(e){e.status===ue.FAILED?this.$emit("failed",e):this.$emit("uploaded",e)}}});Le(Ae,(function(){var e=this,s=e._self._c;return e._self._setupProxy,e.destination?s("form",{ref:"form",staticClass:"upload-picker",class:{"upload-picker--uploading":e.isUploading,"upload-picker--paused":e.isPaused},attrs:{"data-cy-upload-picker":""}},[e.newFileMenuEntries&&0===e.newFileMenuEntries.length?s("NcButton",{attrs:{disabled:e.disabled,"data-cy-upload-picker-add":"",type:"secondary"},on:{click:function(s){return e.onTriggerPick()}},scopedSlots:e._u([{key:"icon",fn:function(){return[s("IconPlus",{attrs:{size:20}})]},proxy:!0}],null,!1,1991456921)},[e._v(" "+e._s(e.buttonName)+" ")]):s("NcActions",{attrs:{"menu-name":e.buttonName,"menu-title":e.t("New"),type:"secondary"},scopedSlots:e._u([{key:"icon",fn:function(){return[s("IconPlus",{attrs:{size:20}})]},proxy:!0}],null,!1,1991456921)},[s("NcActionCaption",{attrs:{name:e.t("Upload from device")}}),s("NcActionButton",{attrs:{"data-cy-upload-picker-add":"","close-after-click":!0},on:{click:function(s){return e.onTriggerPick()}},scopedSlots:e._u([{key:"icon",fn:function(){return[s("IconUpload",{attrs:{size:20}})]},proxy:!0}],null,!1,337456192)},[e._v(" "+e._s(e.t("Upload files"))+" ")]),e.canUploadFolders?s("NcActionButton",{attrs:{"close-after-click":"","data-cy-upload-picker-add-folders":""},on:{click:function(s){return e.onTriggerPick(!0)}},scopedSlots:e._u([{key:"icon",fn:function(){return[s("IconFolderUpload",{staticStyle:{color:"var(--color-primary-element)"},attrs:{size:20}})]},proxy:!0}],null,!1,1037549157)},[e._v(" "+e._s(e.t("Upload folders"))+" ")]):e._e(),e._l(e.menuEntriesUpload,(function(t){return s("NcActionButton",{key:t.id,staticClass:"upload-picker__menu-entry",attrs:{icon:t.iconClass,"close-after-click":!0},on:{click:function(s){return t.handler(e.destination,e.currentContent)}},scopedSlots:e._u([t.iconSvgInline?{key:"icon",fn:function(){return[s("NcIconSvgWrapper",{attrs:{svg:t.iconSvgInline}})]},proxy:!0}:null],null,!0)},[e._v(" "+e._s(t.displayName)+" ")])})),e.menuEntriesNew.length>0?[s("NcActionSeparator"),s("NcActionCaption",{attrs:{name:e.t("Create new")}}),e._l(e.menuEntriesNew,(function(t){return s("NcActionButton",{key:t.id,staticClass:"upload-picker__menu-entry",attrs:{icon:t.iconClass,"close-after-click":!0},on:{click:function(s){return t.handler(e.destination,e.currentContent)}},scopedSlots:e._u([t.iconSvgInline?{key:"icon",fn:function(){return[s("NcIconSvgWrapper",{attrs:{svg:t.iconSvgInline}})]},proxy:!0}:null],null,!0)},[e._v(" "+e._s(t.displayName)+" ")])}))]:e._e(),e.menuEntriesOther.length>0?[s("NcActionSeparator"),e._l(e.menuEntriesNew,(function(t){return s("NcActionButton",{key:t.id,staticClass:"upload-picker__menu-entry",attrs:{icon:t.iconClass,"close-after-click":!0},on:{click:function(s){return t.handler(e.destination,e.currentContent)}},scopedSlots:e._u([t.iconSvgInline?{key:"icon",fn:function(){return[s("NcIconSvgWrapper",{attrs:{svg:t.iconSvgInline}})]},proxy:!0}:null],null,!0)},[e._v(" "+e._s(t.displayName)+" ")])}))]:e._e()],2),s("div",{directives:[{name:"show",rawName:"v-show",value:e.isUploading,expression:"isUploading"}],staticClass:"upload-picker__progress"},[s("NcProgressBar",{attrs:{"aria-label":e.t("Upload progress"),"aria-describedby":e.progressTimeId,error:e.hasFailure,value:e.progress,size:"medium"}}),s("p",{attrs:{id:e.progressTimeId}},[e._v(" "+e._s(e.timeLeft)+" ")])],1),e.isUploading?s("NcButton",{staticClass:"upload-picker__cancel",attrs:{type:"tertiary","aria-label":e.t("Cancel uploads"),"data-cy-upload-picker-cancel":""},on:{click:e.onCancel},scopedSlots:e._u([{key:"icon",fn:function(){return[s("IconCancel",{attrs:{size:20}})]},proxy:!0}],null,!1,3076329829)}):e._e(),s("input",{ref:"input",staticClass:"hidden-visually",attrs:{accept:e.accept?.join?.(", "),multiple:e.multiple,"data-cy-upload-picker-input":"",type:"file"},on:{change:e.onPick}})],1):e._e()}),[],!1,null,"1f097873",null,null).exports;let Ue=null;function Fe(e=function(){return(0,w.C)("files_sharing","isPublic",null)??null!==document.querySelector('input#isPublic[type="hidden"][name="isPublic"][value="1"]')}(),s=!1){return Ue instanceof Ce&&!s||(Ue=new Ce(e)),Ue}async function Pe(e,s,n,a){const i=(0,T.$V)((()=>Promise.all([t.e(4208),t.e(6778)]).then(t.bind(t,26778))));return new Promise(((t,l)=>{const r=new T.Ay({name:"ConflictPickerRoot",render:o=>o(i,{props:{dirname:e,conflicts:s,content:n,recursiveUpload:!0===a?.recursive},on:{submit(e){t(e),r.$destroy(),r.$el?.parentNode?.removeChild(r.$el)},cancel(e){l(e??new Error("Canceled")),r.$destroy(),r.$el?.parentNode?.removeChild(r.$el)}}})});r.$mount(),document.body.appendChild(r.$el)}))}function Ne(e,s){return Ee(e,s).length>0}function Ee(e,s){const t=s.map((e=>e.basename));return e.filter((e=>{const s="basename"in e?e.basename:e.name;return-1!==t.indexOf(s)}))}}},a={};function i(e){var s=a[e];if(void 0!==s)return s.exports;var t=a[e]={id:e,loaded:!1,exports:{}};return n[e].call(t.exports,t,t.exports,i),t.loaded=!0,t.exports}i.m=n,e=[],i.O=(s,t,n,a)=>{if(!t){var l=1/0;for(d=0;d=a)&&Object.keys(i.O).every((e=>i.O[e](t[o])))?t.splice(o--,1):(r=!1,a0&&e[d-1][2]>a;d--)e[d]=e[d-1];e[d]=[t,n,a]},i.n=e=>{var s=e&&e.__esModule?()=>e.default:()=>e;return i.d(s,{a:s}),s},i.d=(e,s)=>{for(var t in s)i.o(s,t)&&!i.o(e,t)&&Object.defineProperty(e,t,{enumerable:!0,get:s[t]})},i.f={},i.e=e=>Promise.all(Object.keys(i.f).reduce(((s,t)=>(i.f[t](e,s),s)),[])),i.u=e=>e+"-"+e+".js?v="+{1110:"e20948a2fd7d006e5209",5455:"f19bb30c4edfe928a23c",6778:"05456eb4fc16e404b623",8377:"fed1d221ffdde07bff4c"}[e],i.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),i.o=(e,s)=>Object.prototype.hasOwnProperty.call(e,s),s={},t="nextcloud:",i.l=(e,n,a,l)=>{if(s[e])s[e].push(n);else{var r,o;if(void 0!==a)for(var m=document.getElementsByTagName("script"),d=0;d{r.onerror=r.onload=null,clearTimeout(u);var a=s[e];if(delete s[e],r.parentNode&&r.parentNode.removeChild(r),a&&a.forEach((e=>e(n))),t)return t(n)},u=setTimeout(g.bind(null,void 0,{type:"timeout",target:r}),12e4);r.onerror=g.bind(null,r.onerror),r.onload=g.bind(null,r.onload),o&&document.head.appendChild(r)}},i.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},i.nmd=e=>(e.paths=[],e.children||(e.children=[]),e),i.j=1171,(()=>{var e;i.g.importScripts&&(e=i.g.location+"");var s=i.g.document;if(!e&&s&&(s.currentScript&&(e=s.currentScript.src),!e)){var t=s.getElementsByTagName("script");if(t.length)for(var n=t.length-1;n>-1&&(!e||!/^http(s?):/.test(e));)e=t[n--].src}if(!e)throw new Error("Automatic publicPath is not supported in this browser");e=e.replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),i.p=e})(),(()=>{i.b=document.baseURI||self.location.href;var e={1171:0};i.f.j=(s,t)=>{var n=i.o(e,s)?e[s]:void 0;if(0!==n)if(n)t.push(n[2]);else{var a=new Promise(((t,a)=>n=e[s]=[t,a]));t.push(n[2]=a);var l=i.p+i.u(s),r=new Error;i.l(l,(t=>{if(i.o(e,s)&&(0!==(n=e[s])&&(e[s]=void 0),n)){var a=t&&("load"===t.type?"missing":t.type),l=t&&t.target&&t.target.src;r.message="Loading chunk "+s+" failed.\n("+a+": "+l+")",r.name="ChunkLoadError",r.type=a,r.request=l,n[1](r)}}),"chunk-"+s,s)}},i.O.j=s=>0===e[s];var s=(s,t)=>{var n,a,l=t[0],r=t[1],o=t[2],m=0;if(l.some((s=>0!==e[s]))){for(n in r)i.o(r,n)&&(i.m[n]=r[n]);if(o)var d=o(i)}for(s&&s(t);mi(15076)));l=i.O(l)})(); -//# sourceMappingURL=files-init.js.map?v=d0a6942da39158715790 \ No newline at end of file +(()=>{var e,s,t,n={9052:e=>{"use strict";var s=Object.prototype.hasOwnProperty,t="~";function n(){}function a(e,s,t){this.fn=e,this.context=s,this.once=t||!1}function i(e,s,n,i,l){if("function"!=typeof n)throw new TypeError("The listener must be a function");var r=new a(n,i||e,l),o=t?t+s:s;return e._events[o]?e._events[o].fn?e._events[o]=[e._events[o],r]:e._events[o].push(r):(e._events[o]=r,e._eventsCount++),e}function l(e,s){0==--e._eventsCount?e._events=new n:delete e._events[s]}function r(){this._events=new n,this._eventsCount=0}Object.create&&(n.prototype=Object.create(null),(new n).__proto__||(t=!1)),r.prototype.eventNames=function(){var e,n,a=[];if(0===this._eventsCount)return a;for(n in e=this._events)s.call(e,n)&&a.push(t?n.slice(1):n);return Object.getOwnPropertySymbols?a.concat(Object.getOwnPropertySymbols(e)):a},r.prototype.listeners=function(e){var s=t?t+e:e,n=this._events[s];if(!n)return[];if(n.fn)return[n.fn];for(var a=0,i=n.length,l=new Array(i);a{"use strict";t.d(s,{A:()=>n});const n=(0,t(35947).YK)().setApp("files").detectUser().build()},15076:(e,s,t)=>{"use strict";var n=t(26304),a=t(61338),i=t(85168),l=t(53334),r=t(65043),o=t(76150),m=t(49264);const d=e=>e.every((e=>!0===e.attributes["is-mount-root"]&&"shared"===e.attributes["mount-type"])),c=e=>e.every((e=>!0===e.attributes["is-mount-root"]&&"external"===e.attributes["mount-type"])),g=(e,s)=>"trashbin"===s.id?(0,l.Tl)("files","Delete permanently"):(e=>{if(1===e.length)return!1;const s=e.some((e=>d([e]))),t=e.some((e=>!d([e])));return s&&t})(e)?(0,l.Tl)("files","Delete and unshare"):d(e)?1===e.length?(0,l.Tl)("files","Leave this share"):(0,l.Tl)("files","Leave these shares"):c(e)?1===e.length?(0,l.Tl)("files","Disconnect storage"):(0,l.Tl)("files","Disconnect storages"):(e=>!e.some((e=>e.type!==n.pt.File)))(e)?1===e.length?(0,l.Tl)("files","Delete file"):(0,l.Tl)("files","Delete files"):(e=>!e.some((e=>e.type!==n.pt.Folder)))(e)?1===e.length?(0,l.Tl)("files","Delete folder"):(0,l.Tl)("files","Delete folders"):(0,l.Tl)("files","Delete"),u=new m.A({concurrency:5}),f=new n.hY({id:"delete",displayName:g,iconSvgInline:e=>d(e)?'':c(e)?'':'',enabled:e=>e.length>0&&e.map((e=>e.permissions)).every((e=>0!=(e&n.aX.DELETE))),async exec(e,s,t){try{return await r.Ay.delete(e.encodedSource),(0,a.Ic)("files:node:deleted",e),!0}catch(s){return o.A.error("Error while deleting a file",{error:s,source:e.source,node:e}),!1}},async execBatch(e,s,t){if(!1===await new Promise((t=>{e.length>=5&&!d(e)&&!c(e)?window.OC.dialogs.confirmDestructive((0,l.Tl)("files","You are about to delete {count} items.",{count:e.length}),(0,l.Tl)("files","Confirm deletion"),{type:window.OC.dialogs.YES_NO_BUTTONS,confirm:g(e,s),confirmClasses:"error",cancel:(0,l.Tl)("files","Cancel")},(e=>{t(e)})):t(!0)})))return(0,i.cf)((0,l.Tl)("files","Deletion cancelled")),Promise.all(e.map((()=>!1)));const n=e.map((e=>new Promise((n=>{u.add((async()=>{const a=await this.exec(e,s,t);n(null!==a&&a)}))}))));return Promise.all(n)},order:100});var p=t(63814);const h=function(e){const s=document.createElement("a");s.download="",s.href=e,s.click()},w=function(e,s){const t=Math.random().toString(36).substring(2),n=(0,p.Jv)("/apps/files/ajax/download.php?dir={dir}&files={files}&downloadStartSecret={secret}",{dir:e,secret:t,files:JSON.stringify(s.map((e=>e.basename)))});h(n)},T=function(e){if(0==(e.permissions&n.aX.READ))return!1;if("shared"===e.attributes["mount-type"]){var s,t;const n=JSON.parse(null!==(s=e.attributes["share-attributes"])&&void 0!==s?s:"null"),a=null==n||null===(t=n.find)||void 0===t?void 0:t.call(n,(e=>"permissions"===e.scope&&"download"===e.key));if(void 0!==a&&!1===a.enabled)return!1}return!0},v=new n.hY({id:"download",displayName:()=>(0,l.Tl)("files","Download"),iconSvgInline:()=>'',enabled:e=>0!==e.length&&(!e.some((e=>e.type===n.pt.Folder))||!e.some((e=>{var s;return!(null!==(s=e.root)&&void 0!==s&&s.startsWith("/files"))})))&&e.every(T),exec:async(e,s,t)=>e.type===n.pt.Folder?(w(t,[e]),null):(h(e.encodedSource),null),async execBatch(e,s,t){return 1===e.length?(this.exec(e[0],s,t),[null]):(w(t,e),new Array(e.length).fill(null))},order:30});var x=t(71089),y=t(21777);const C=new n.hY({id:"edit-locally",displayName:()=>(0,l.Tl)("files","Edit locally"),iconSvgInline:()=>'',enabled:e=>1===e.length&&0!=(e[0].permissions&n.aX.UPDATE),exec:async e=>(async function(e){const s=(0,p.KT)("apps/files/api/v1")+"/openlocaleditor?format=json";try{var t;const n=await r.Ay.post(s,{path:e}),a=null===(t=(0,y.HW)())||void 0===t?void 0:t.uid;let i="nc://open/".concat(a,"@")+window.location.host+(0,x.O0)(e);i+="?token="+n.data.ocs.data.token,window.location.href=i}catch(e){(0,i.Qg)((0,l.Tl)("files","Failed to redirect to client"))}}(e.path),null),order:25});var L=t(85471);const k='',b=e=>e.some((e=>1!==e.attributes.favorite)),S=async(e,s,t)=>{try{const n=(0,p.Jv)("/apps/files/api/v1/files")+(0,x.O0)(e.path);return await r.Ay.post(n,{tags:t?[window.OC.TAG_FAVORITE]:[]}),"favorites"!==s.id||t||"/"!==e.dirname||(0,a.Ic)("files:node:deleted",e),L.Ay.set(e.attributes,"favorite",t?1:0),t?(0,a.Ic)("files:favorites:added",e):(0,a.Ic)("files:favorites:removed",e),!0}catch(s){const n=t?"adding a file to favourites":"removing a file from favourites";return o.A.error("Error while "+n,{error:s,source:e.source,node:e}),!1}},_=new n.hY({id:"favorite",displayName:e=>b(e)?(0,l.Tl)("files","Add to favorites"):(0,l.Tl)("files","Remove from favorites"),iconSvgInline:e=>b(e)?'':k,enabled:e=>!e.some((e=>{var s,t;return!(null!==(s=e.root)&&void 0!==s&&null!==(t=s.startsWith)&&void 0!==t&&t.call(s,"/files"))}))&&e.every((e=>e.permissions!==n.aX.NONE)),async exec(e,s){const t=b([e]);return await S(e,s,t)},async execBatch(e,s){const t=b(e);return Promise.all(e.map((async e=>await S(e,s,t))))},order:-50});var A=t(2069),U=t(43627),F=t(36882),P=t(39285);let N;var E;!function(e){e.MOVE="Move",e.COPY="Copy",e.MOVE_OR_COPY="move-or-copy"}(E||(E={}));const B=e=>0!=(e.reduce(((e,s)=>Math.min(e,s.permissions)),n.aX.ALL)&n.aX.UPDATE),I=e=>(e=>e.every((e=>{var s,t;return!JSON.parse(null!==(s=null===(t=e.attributes)||void 0===t?void 0:t["share-attributes"])&&void 0!==s?s:"[]").some((e=>"permissions"===e.scope&&!1===e.enabled&&"download"===e.key))})))(e)&&!e.some((e=>e.permissions===n.aX.NONE));var z=t(36117);const j=(0,n.H4)(),R=e=>(0,n.Al)(e),O=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"/";const s=new AbortController,t=(0,n.VL)();return e="".concat(n.lJ).concat(e),new z.CancelablePromise((async(n,a,i)=>{i((()=>s.abort()));try{const a=await j.getDirectoryContents(e,{details:!0,data:t,includeSelf:!0,signal:s.signal}),i=a.data[0],l=a.data.slice(1);if(i.filename!==e&&"".concat(i.filename,"/")!==e)throw o.A.debug('Exepected "'.concat(e,'" but got filename "').concat(i.filename,'" instead.')),new Error("Root node does not match requested path");n({folder:R(i),contents:l.map((e=>{try{return R(e)}catch(s){return o.A.error("Invalid node detected '".concat(e.basename,"'"),{error:s}),null}})).filter(Boolean)})}catch(e){a(e)}}))},D=e=>B(e)?I(e)?E.MOVE_OR_COPY:E.MOVE:E.COPY,M=async function(e,s,t){let d=arguments.length>3&&void 0!==arguments[3]&&arguments[3];if(!s)return;if(s.type!==n.pt.Folder)throw new Error((0,l.Tl)("files","Destination is not a folder"));if(t===E.MOVE&&e.dirname===s.path)throw new Error((0,l.Tl)("files","This file/folder is already in that directory"));if("".concat(s.path,"/").startsWith("".concat(e.path,"/")))throw new Error((0,l.Tl)("files","You cannot move a file/folder onto itself or into a subfolder of itself"));L.Ay.set(e,"status",n.zI.LOADING);const c=(N||(N=new m.A({concurrency:5})),N);return await c.add((async()=>{const m=e=>1===e?(0,l.Tl)("files","(copy)"):(0,l.Tl)("files","(copy %n)",void 0,e);try{const r=(0,n.H4)(),o=(0,U.join)(n.lJ,e.path),c=(0,U.join)(n.lJ,s.path);if(t===E.COPY){let t=e.basename;if(!d){const s=await r.getDirectoryContents(c);t=(0,n.E6)(e.basename,s.map((e=>e.basename)),{suffix:m,ignoreFileExtension:e.type===n.pt.Folder})}if(await r.copyFile(o,(0,U.join)(c,t)),e.dirname===s.path){const{data:e}=await r.stat((0,U.join)(c,t),{details:!0,data:(0,n.VL)()});(0,a.Ic)("files:node:created",(0,n.Al)(e))}}else{const t=await O(s.path);if((0,A.h)([e],t.contents))try{const{selected:n,renamed:i}=await(0,A.o)(s.path,[e],t.contents);if(!n.length&&!i.length)return await r.deleteFile(o),void(0,a.Ic)("files:node:deleted",e)}catch(e){return void(0,i.Qg)((0,l.Tl)("files","Move cancelled"))}await r.moveFile(o,(0,U.join)(c,e.basename)),(0,a.Ic)("files:node:deleted",e)}}catch(e){if((0,r.F0)(e)){var c,g,u;if(412===(null===(c=e.response)||void 0===c?void 0:c.status))throw new Error((0,l.Tl)("files","A file or folder with that name already exists in this folder"));if(423===(null===(g=e.response)||void 0===g?void 0:g.status))throw new Error((0,l.Tl)("files","The files are locked"));if(404===(null===(u=e.response)||void 0===u?void 0:u.status))throw new Error((0,l.Tl)("files","The file does not exist anymore"));if(e.message)throw new Error(e.message)}throw o.A.debug(e),new Error}finally{L.Ay.set(e,"status",void 0)}}))},H=async function(e){let s=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"/",t=arguments.length>2?arguments[2]:void 0;const n=t.map((e=>e.fileid)).filter(Boolean),a=(0,i.a1)((0,l.Tl)("files","Choose destination")).allowDirectories(!0).setFilter((e=>!n.includes(e.fileid))).setMimeTypeFilter([]).setMultiSelect(!1).startAt(s);return new Promise(((s,n)=>{a.setButtonFactory(((n,a)=>{const i=[],r=(0,U.basename)(a),o=t.map((e=>e.dirname)),m=t.map((e=>e.path));return e!==E.COPY&&e!==E.MOVE_OR_COPY||i.push({label:r?(0,l.Tl)("files","Copy to {target}",{target:r},void 0,{escape:!1,sanitize:!1}):(0,l.Tl)("files","Copy"),type:"primary",icon:F,async callback(e){s({destination:e[0],action:E.COPY})}}),o.includes(a)||m.includes(a)||e!==E.MOVE&&e!==E.MOVE_OR_COPY||i.push({label:r?(0,l.Tl)("files","Move to {target}",{target:r},void 0,{escape:!1,sanitize:!1}):(0,l.Tl)("files","Move"),type:e===E.MOVE?"primary":"secondary",icon:P,async callback(e){s({destination:e[0],action:E.MOVE})}}),i})),a.build().pick().catch((e=>{o.A.debug(e),e instanceof i.vT?n(new Error((0,l.Tl)("files","Cancelled move or copy operation"))):n(new Error((0,l.Tl)("files","Move or copy operation failed")))}))}))},W=new n.hY({id:"move-copy",displayName(e){switch(D(e)){case E.MOVE:return(0,l.Tl)("files","Move");case E.COPY:return(0,l.Tl)("files","Copy");case E.MOVE_OR_COPY:return(0,l.Tl)("files","Move or copy")}},iconSvgInline:()=>P,enabled:e=>!!e.every((e=>{var s;return null===(s=e.root)||void 0===s?void 0:s.startsWith("/files/")}))&&e.length>0&&(B(e)||I(e)),async exec(e,s,t){const n=D([e]);let a;try{a=await H(n,t,[e])}catch(e){return o.A.error(e),!1}try{return await M(e,a.destination,a.action),!0}catch(e){return!!(e instanceof Error&&e.message)&&((0,i.Qg)(e.message),null)}},async execBatch(e,s,t){const n=D(e),a=await H(n,t,e),i=e.map((async e=>{try{return await M(e,a.destination,a.action),!0}catch(s){return o.A.error("Failed to ".concat(a.action," node"),{node:e,error:s}),!1}}));return await Promise.all(i)},order:15}),V='',q=new n.hY({id:"open-folder",displayName(e){const s=e[0].attributes.displayname||e[0].basename;return(0,l.Tl)("files","Open folder {displayName}",{displayName:s})},iconSvgInline:()=>V,enabled(e){if(1!==e.length)return!1;const s=e[0];return!!s.isDavRessource&&s.type===n.pt.Folder&&0!=(s.permissions&n.aX.READ)},exec:async(e,s)=>!(!e||e.type!==n.pt.Folder)&&(window.OCP.Files.Router.goToRoute(null,{view:s.id,fileid:e.fileid},{dir:e.path}),null),default:n.m9.HIDDEN,order:-100}),Y=new n.hY({id:"open-in-files-recent",displayName:()=>(0,l.Tl)("files","Open in Files"),iconSvgInline:()=>"",enabled:(e,s)=>"recent"===s.id,async exec(e){let s=e.dirname;return e.type===n.pt.Folder&&(s=s+"/"+e.basename),window.OCP.Files.Router.goToRoute(null,{view:"files",fileid:e.fileid},{dir:s,openfile:"true"}),null},order:-1e3,default:n.m9.HIDDEN}),G=new n.hY({id:"rename",displayName:()=>(0,l.Tl)("files","Rename"),iconSvgInline:()=>'',enabled:e=>e.length>0&&e.map((e=>e.permissions)).every((e=>0!=(e&n.aX.UPDATE))),exec:async e=>((0,a.Ic)("files:node:rename",e),null),order:10});var $=t(49981);const K=new n.hY({id:"details",displayName:()=>(0,l.Tl)("files","Open details"),iconSvgInline:()=>$,enabled:e=>{var s,t,a;return 1===e.length&&!!e[0]&&!(null===(s=window)||void 0===s||null===(s=s.OCA)||void 0===s||null===(s=s.Files)||void 0===s||!s.Sidebar)&&null!==(t=(null===(a=e[0].root)||void 0===a?void 0:a.startsWith("/files/"))&&e[0].permissions!==n.aX.NONE)&&void 0!==t&&t},async exec(e,s,t){try{return await window.OCA.Files.Sidebar.open(e.path),window.OCP.Files.Router.goToRoute(null,{view:s.id,fileid:e.fileid},{...window.OCP.Files.Router.query,dir:t},!0),null}catch(e){return o.A.error("Error while opening sidebar",{error:e}),!1}},order:-50}),J=new n.hY({id:"view-in-folder",displayName:()=>(0,l.Tl)("files","View in folder"),iconSvgInline:()=>P,enabled(e,s){if("files"===s.id)return!1;if(1!==e.length)return!1;const t=e[0];return!!t.isDavRessource&&t.permissions!==n.aX.NONE&&t.type===n.pt.File},exec:async e=>!(!e||e.type!==n.pt.File)&&(window.OCP.Files.Router.goToRoute(null,{view:"files",fileid:e.fileid},{dir:e.dirname}),null),order:80});var Q=t(9518),Z=t(94219),X=t(82182);const ee=(0,L.pM)({name:"NewNodeDialog",components:{NcButton:Q.A,NcDialog:Z.A,NcTextField:X.A},props:{defaultName:{type:String,default:(0,l.Tl)("files","New folder")},otherNames:{type:Array,default:()=>[]},open:{type:Boolean,default:!0},name:{type:String,default:(0,l.Tl)("files","Create new folder")},label:{type:String,default:(0,l.Tl)("files","Folder name")}},emits:{close:e=>null===e||e},data(){return{localDefaultName:this.defaultName||(0,l.Tl)("files","New folder")}},computed:{errorMessage(){return this.isUniqueName?"":(0,l.Tl)("files","A file or folder with that name already exists.")},uniqueName(){return(0,n.E6)(this.localDefaultName,this.otherNames)},isUniqueName(){return this.localDefaultName===this.uniqueName}},watch:{defaultName(){this.localDefaultName=this.defaultName||(0,l.Tl)("files","New folder")},open(){this.$nextTick((()=>this.focusInput()))}},mounted(){this.localDefaultName=this.uniqueName,this.$nextTick((()=>this.focusInput()))},methods:{t:l.Tl,focusInput(){this.open&&this.$nextTick((()=>{var e,s;return null===(e=this.$refs.input)||void 0===e||null===(s=e.focus)||void 0===s?void 0:s.call(e)}))},onCreate(){this.$emit("close",this.localDefaultName)},onClose(e){e||this.$emit("close",null)}}}),se=(0,t(14486).A)(ee,(function(){var e=this,s=e._self._c;return e._self._setupProxy,s("NcDialog",{attrs:{name:e.name,open:e.open,"close-on-click-outside":"","out-transition":""},on:{"update:open":e.onClose},scopedSlots:e._u([{key:"actions",fn:function(){return[s("NcButton",{attrs:{type:"primary",disabled:!e.isUniqueName},on:{click:e.onCreate}},[e._v("\n\t\t\t"+e._s(e.t("files","Create"))+"\n\t\t")])]},proxy:!0}])},[e._v(" "),s("form",{on:{submit:function(s){return s.preventDefault(),e.onCreate.apply(null,arguments)}}},[s("NcTextField",{ref:"input",attrs:{error:!e.isUniqueName,"helper-text":e.errorMessage,label:e.label,value:e.localDefaultName},on:{"update:value":function(s){e.localDefaultName=s}}})],1)])}),[],!1,null,null,null).exports;function te(e,s){let t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};const n=s.map((e=>e.basename));return new Promise((s=>{(0,i.Ss)(se,{...t,defaultName:e,otherNames:n},(e=>{s(e)}))}))}const ne={id:"newFolder",displayName:(0,l.Tl)("files","New folder"),enabled:e=>0!=(e.permissions&n.aX.CREATE),iconSvgInline:'',order:0,async handler(e,s){const t=await te((0,l.Tl)("files","New folder"),s);if(null!==t){var m,d,c,g,u;const{fileid:s,source:f}=await(async(e,s)=>{const t=e.source+"/"+s,n=e.encodedSource+"/"+encodeURIComponent(s),a=await(0,r.Ay)({method:"MKCOL",url:n,headers:{Overwrite:"F"}});return{fileid:parseInt(a.headers["oc-fileid"]),source:t}})(e,t),p=new n.vd({source:f,id:s,mtime:new Date,owner:(null===(m=(0,y.HW)())||void 0===m?void 0:m.uid)||null,permissions:n.aX.ALL,root:(null==e?void 0:e.root)||"/files/"+(null===(d=(0,y.HW)())||void 0===d?void 0:d.uid),attributes:{"mount-type":null===(c=e.attributes)||void 0===c?void 0:c["mount-type"],"owner-id":null===(g=e.attributes)||void 0===g?void 0:g["owner-id"],"owner-display-name":null===(u=e.attributes)||void 0===u?void 0:u["owner-display-name"]}});(0,i.Te)((0,l.Tl)("files",'Created new folder "{name}"',{name:(0,U.basename)(f)})),o.A.debug("Created new folder",{folder:p,source:f}),(0,a.Ic)("files:node:created",p),window.OCP.Files.Router.goToRoute(null,{view:"files",fileid:p.fileid},{dir:e.path})}}};var ae=t(32981);let ie=(0,ae.C)("files","templates_path",!1);o.A.debug("Initial templates folder",{templatesPath:ie});const le={id:"template-picker",displayName:(0,l.Tl)("files","Create new templates folder"),iconSvgInline:'',order:10,enabled(e){var s;return!ie&&e.owner===(null===(s=(0,y.HW)())||void 0===s?void 0:s.uid)&&0!=(e.permissions&n.aX.CREATE)},async handler(e,s){const t=await te((0,l.Tl)("files","Templates"),s,{name:(0,l.Tl)("files","New template folder")});null!==t&&(async function(e,s){const t=(0,U.join)(e.path,s);try{o.A.debug("Initializing the templates directory",{templatePath:t});const{data:e}=await r.Ay.post((0,p.KT)("apps/files/api/v1/templates/path"),{templatePath:t,copySystemTemplates:!0});window.OCP.Files.Router.goToRoute(null,{view:"files",fileid:void 0},{dir:t}),o.A.info("Created new templates folder",{...e.ocs.data}),ie=e.ocs.data.templates_path}catch(e){o.A.error("Unable to initialize the templates directory"),(0,i.Qg)((0,l.Tl)("files","Unable to initialize the templates directory"))}}(e,t),(0,n.gj)("template-picker"))}},re=(0,L.$V)((()=>Promise.all([t.e(4208),t.e(8377)]).then(t.bind(t,88377))));let oe=null;const me=async e=>{if(null===oe){const s=document.createElement("div");s.id="template-picker",document.body.appendChild(s),oe=new L.Ay({render:s=>s(re,{ref:"picker",props:{parent:e}}),methods:{open(){this.$refs.picker.open(...arguments)}},el:s})}return oe},de=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"/";return"/"!==e?O(e):new z.CancelablePromise(((e,s,t)=>{const a=(0,n.Q$)(j).catch(s).then((t=>{var a;t?e({contents:t,folder:new n.vd({id:0,source:"".concat(n.PY).concat(n.lJ),root:n.lJ,owner:(null===(a=(0,y.HW)())||void 0===a?void 0:a.uid)||null,permissions:n.aX.READ})}):s()}));t((()=>a.cancel()))}))},ce=function(e){let s=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;return new n.Ss({id:ge(e.path),name:(0,U.basename)(e.path),icon:V,order:s,params:{dir:e.path,fileid:e.fileid.toString(),view:"favorites"},parent:"favorites",columns:[],getContents:de})},ge=function(e){return"favorite-".concat(function(e){let s=0;for(let t=0;t>>0}(e))};var ue=t(65899);const fe=(0,ae.C)("files","config",{show_hidden:!1,crop_image_previews:!0,sort_favorites_first:!0,sort_folders_first:!0,grid_view:!1}),pe=(0,ue.Ey)(),he=Math.round(Date.now()/1e3-1209600);var we;const Te=null===(we=(0,y.HW)())||void 0===we?void 0:we.uid,ve=function(e){const s=e.attributes["mount-type"];return Te===e.owner&&!["group","shared"].includes(s)};(0,n.Gg)(f),(0,n.Gg)(v),(0,n.Gg)(C),(0,n.Gg)(_),(0,n.Gg)(W),(0,n.Gg)(q),(0,n.Gg)(Y),(0,n.Gg)(G),(0,n.Gg)(K),(0,n.Gg)(J),(0,n.zj)(ne),(0,n.zj)(le),(0,ae.C)("files","templates",[]).forEach(((e,s)=>{(0,n.zj)({id:"template-new-".concat(e.app,"-").concat(s),displayName:e.label,iconClass:e.iconClass||"icon-file",iconSvgInline:e.iconSvgInline,enabled:e=>0!=(e.permissions&n.aX.CREATE),order:11,async handler(s,t){const n=me(s),a=await te("".concat(e.label).concat(e.extension),t,{label:(0,l.Tl)("files","Filename"),name:e.label});null!==a&&(await n).open(a,e)}})})),(()=>{const e=(0,ae.C)("files","favoriteFolders",[]),s=e.map(((e,s)=>ce(e,s)));o.A.debug("Generating favorites view",{favoriteFolders:e});const t=(0,n.bh)();t.register(new n.Ss({id:"favorites",name:(0,l.Tl)("files","Favorites"),caption:(0,l.Tl)("files","List of favorites files and folders."),emptyTitle:(0,l.Tl)("files","No favorites yet"),emptyCaption:(0,l.Tl)("files","Files and folders you mark as favorite will show up here"),icon:k,order:15,columns:[],getContents:de})),s.forEach((e=>t.register(e))),(0,a.B1)("files:favorites:added",(e=>{var s;e.type===n.pt.Folder&&(null!==e.path&&null!==(s=e.root)&&void 0!==s&&s.startsWith("/files")?r(e):o.A.error("Favorite folder is not within user files root",{node:e}))})),(0,a.B1)("files:favorites:removed",(e=>{var s;e.type===n.pt.Folder&&(null!==e.path&&null!==(s=e.root)&&void 0!==s&&s.startsWith("/files")?m(e.path):o.A.error("Favorite folder is not within user files root",{node:e}))}));const i=function(){e.sort(((e,s)=>e.path.localeCompare(s.path,(0,l.Z0)(),{ignorePunctuation:!0}))),e.forEach(((e,t)=>{const n=s.find((s=>s.id===ge(e.path)));n&&(n.order=t)}))},r=function(n){const a={path:n.path,fileid:n.fileid},l=ce(a);e.find((e=>e.path===n.path))||(e.push(a),s.push(l),i(),t.register(l))},m=function(n){const a=ge(n),l=e.findIndex((e=>e.path===n));-1!==l&&(e.splice(l,1),s.splice(l,1),t.remove(a),i())}})(),(0,n.bh)().register(new n.Ss({id:"files",name:(0,l.Tl)("files","All files"),caption:(0,l.Tl)("files","List of your files and folders."),icon:V,order:0,getContents:O})),(0,n.bh)().register(new n.Ss({id:"recent",name:(0,l.Tl)("files","Recent"),caption:(0,l.Tl)("files","List of recently modified files and folders."),emptyTitle:(0,l.Tl)("files","No recently modified files"),emptyCaption:(0,l.Tl)("files","Files and folders you recently modified will show up here."),icon:'',order:10,defaultSortKey:"mtime",getContents:function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"/";const s=function(){const e=(0,ue.nY)("userconfig",{state:()=>({userConfig:fe}),actions:{onUpdate(e,s){L.Ay.set(this.userConfig,e,s)},async update(e,s){await r.Ay.put((0,p.Jv)("/apps/files/api/v1/config/"+e),{value:s}),(0,a.Ic)("files:config:updated",{key:e,value:s})}}})(...arguments);return e._initialized||((0,a.B1)("files:config:updated",(function(s){let{key:t,value:n}=s;e.onUpdate(t,n)})),e._initialized=!0),e}(pe),t=t=>"/"!==e||s.userConfig.show_hidden||!t.dirname.split("/").some((e=>e.startsWith("."))),i=new AbortController;return new z.CancelablePromise((async(e,s,a)=>{a((()=>i.abort())),e((async()=>{var e;const s=(await j.search("/",{signal:i.signal,details:!0,data:(0,n.R3)(he)})).data.results.map(R).filter(t);return{folder:new n.vd({id:0,source:"".concat(n.PY).concat(n.lJ),root:n.lJ,owner:(null===(e=(0,y.HW)())||void 0===e?void 0:e.uid)||null,permissions:n.aX.READ}),contents:s}})())}))}})),(0,n.bh)().register(new n.Ss({id:"personal",name:(0,l.Tl)("files","Personal Files"),caption:(0,l.Tl)("files","List of your files and folders that are not shared."),emptyTitle:(0,l.Tl)("files","No personal files found"),emptyCaption:(0,l.Tl)("files","Files that are not shared will show up here."),icon:'',order:5,getContents:function(){return O(arguments.length>0&&void 0!==arguments[0]?arguments[0]:"/").then((e=>(e.contents=e.contents.filter(ve),e)))}})),"serviceWorker"in navigator?window.addEventListener("load",(async()=>{try{const e=(0,p.Jv)("/apps/files/preview-service-worker.js",{},{noRewrite:!0}),s=await navigator.serviceWorker.register(e,{scope:"/"});o.A.debug("SW registered: ",{registration:s})}catch(e){o.A.error("SW registration failed: ",{error:e})}})):o.A.debug("Service Worker is not enabled on this browser."),(0,n.Yc)("nc:hidden",{nc:"http://nextcloud.org/ns"}),(0,n.Yc)("nc:is-mount-root",{nc:"http://nextcloud.org/ns"}),(0,n.Yc)("nc:metadata-files-live-photo",{nc:"http://nextcloud.org/ns"})},18141:(e,s,t)=>{"use strict";t.d(s,{A:()=>r});var n=t(71354),a=t.n(n),i=t(76314),l=t.n(i)()(a());l.push([e.id,".upload-picker[data-v-1f097873] {\n display: inline-flex;\n align-items: center;\n height: 44px;\n}\n.upload-picker__progress[data-v-1f097873] {\n width: 200px;\n max-width: 0;\n transition: max-width var(--animation-quick) ease-in-out;\n margin-top: 8px;\n}\n.upload-picker__progress p[data-v-1f097873] {\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n}\n.upload-picker--uploading .upload-picker__progress[data-v-1f097873] {\n max-width: 200px;\n margin-right: 20px;\n margin-left: 8px;\n}\n.upload-picker--paused .upload-picker__progress[data-v-1f097873] {\n animation: breathing-1f097873 3s ease-out infinite normal;\n}\n@keyframes breathing-1f097873 {\n0% {\n opacity: 0.5;\n}\n25% {\n opacity: 1;\n}\n60% {\n opacity: 0.5;\n}\n100% {\n opacity: 0.5;\n}\n}","",{version:3,sources:["webpack://./node_modules/@nextcloud/upload/dist/assets/index-DiWRcN3o.css"],names:[],mappings:"AAAA;EACE,oBAAoB;EACpB,mBAAmB;EACnB,YAAY;AACd;AACA;EACE,YAAY;EACZ,YAAY;EACZ,wDAAwD;EACxD,eAAe;AACjB;AACA;EACE,gBAAgB;EAChB,mBAAmB;EACnB,uBAAuB;AACzB;AACA;EACE,gBAAgB;EAChB,kBAAkB;EAClB,gBAAgB;AAClB;AACA;EACE,yDAAyD;AAC3D;AACA;AACA;IACI,YAAY;AAChB;AACA;IACI,UAAU;AACd;AACA;IACI,YAAY;AAChB;AACA;IACI,YAAY;AAChB;AACA",sourcesContent:[".upload-picker[data-v-1f097873] {\n display: inline-flex;\n align-items: center;\n height: 44px;\n}\n.upload-picker__progress[data-v-1f097873] {\n width: 200px;\n max-width: 0;\n transition: max-width var(--animation-quick) ease-in-out;\n margin-top: 8px;\n}\n.upload-picker__progress p[data-v-1f097873] {\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n}\n.upload-picker--uploading .upload-picker__progress[data-v-1f097873] {\n max-width: 200px;\n margin-right: 20px;\n margin-left: 8px;\n}\n.upload-picker--paused .upload-picker__progress[data-v-1f097873] {\n animation: breathing-1f097873 3s ease-out infinite normal;\n}\n@keyframes breathing-1f097873 {\n0% {\n opacity: 0.5;\n}\n25% {\n opacity: 1;\n}\n60% {\n opacity: 0.5;\n}\n100% {\n opacity: 0.5;\n}\n}"],sourceRoot:""}]);const r=l},51111:e=>{"use strict";const s=new Set(["ENOTFOUND","ENETUNREACH","UNABLE_TO_GET_ISSUER_CERT","UNABLE_TO_GET_CRL","UNABLE_TO_DECRYPT_CERT_SIGNATURE","UNABLE_TO_DECRYPT_CRL_SIGNATURE","UNABLE_TO_DECODE_ISSUER_PUBLIC_KEY","CERT_SIGNATURE_FAILURE","CRL_SIGNATURE_FAILURE","CERT_NOT_YET_VALID","CERT_HAS_EXPIRED","CRL_NOT_YET_VALID","CRL_HAS_EXPIRED","ERROR_IN_CERT_NOT_BEFORE_FIELD","ERROR_IN_CERT_NOT_AFTER_FIELD","ERROR_IN_CRL_LAST_UPDATE_FIELD","ERROR_IN_CRL_NEXT_UPDATE_FIELD","OUT_OF_MEM","DEPTH_ZERO_SELF_SIGNED_CERT","SELF_SIGNED_CERT_IN_CHAIN","UNABLE_TO_GET_ISSUER_CERT_LOCALLY","UNABLE_TO_VERIFY_LEAF_SIGNATURE","CERT_CHAIN_TOO_LONG","CERT_REVOKED","INVALID_CA","PATH_LENGTH_EXCEEDED","INVALID_PURPOSE","CERT_UNTRUSTED","CERT_REJECTED","HOSTNAME_MISMATCH"]);e.exports=e=>!s.has(e&&e.code)},75270:e=>{function s(e,s){return null==e?s:e}e.exports=function(e){var t,n=s((e=e||{}).max,1),a=s(e.min,0),i=s(e.autostart,!0),l=s(e.ignoreSameProgress,!1),r=null,o=null,m=null,d=(t=s(e.historyTimeConstant,2.5),function(e,s,n){return e+n/(n+t)*(s-e)});function c(){g(a)}function g(e,s){if("number"!=typeof s&&(s=Date.now()),o!==s&&(!l||m!==e)){if(null===o||null===m)return m=e,void(o=s);var t=.001*(s-o),n=(e-m)/t;r=null===r?n:d(r,n,t),m=e,o=s}}return{start:c,reset:function(){r=null,o=null,m=null,i&&c()},report:g,estimate:function(e){if(null===m)return 1/0;if(m>=n)return 0;if(null===r)return 1/0;var s=(n-m)/r;return"number"==typeof e&&"number"==typeof o&&(s-=.001*(e-o)),Math.max(0,s)},rate:function(){return null===r?0:r}}}},2069:(e,s,t)=>{"use strict";t.d(s,{a:()=>Te,h:()=>Ne,i:()=>me,l:()=>xe,n:()=>Le,o:()=>Pe,t:()=>ve});var n=t(85072),a=t.n(n),i=t(97825),l=t.n(i),r=t(77659),o=t.n(r),m=t(55056),d=t.n(m),c=t(10540),g=t.n(c),u=t(41113),f=t.n(u),p=t(18141),h={};h.styleTagTransform=f(),h.setAttributes=d(),h.insert=o().bind(null,"head"),h.domAPI=l(),h.insertStyleElement=g(),a()(p.A,h),p.A&&p.A.locals&&p.A.locals;var w=t(32981),T=t(85471),v=t(21777),x=t(26304),y=t(71089),C=t(43627),L=t(65043);class k extends Error{constructor(e){super(e||"Promise was canceled"),this.name="CancelError"}get isCanceled(){return!0}}const b=Object.freeze({pending:Symbol("pending"),canceled:Symbol("canceled"),resolved:Symbol("resolved"),rejected:Symbol("rejected")});class S{static fn(e){return(...s)=>new S(((t,n,a)=>{s.push(a),e(...s).then(t,n)}))}#e=[];#s=!0;#t=b.pending;#n;#a;constructor(e){this.#n=new Promise(((s,t)=>{this.#a=t;const n=e=>{if(this.#t!==b.pending)throw new Error(`The \`onCancel\` handler was attached after the promise ${this.#t.description}.`);this.#e.push(e)};Object.defineProperties(n,{shouldReject:{get:()=>this.#s,set:e=>{this.#s=e}}}),e((e=>{this.#t===b.canceled&&n.shouldReject||(s(e),this.#i(b.resolved))}),(e=>{this.#t===b.canceled&&n.shouldReject||(t(e),this.#i(b.rejected))}),n)}))}then(e,s){return this.#n.then(e,s)}catch(e){return this.#n.catch(e)}finally(e){return this.#n.finally(e)}cancel(e){if(this.#t===b.pending){if(this.#i(b.canceled),this.#e.length>0)try{for(const e of this.#e)e()}catch(e){return void this.#a(e)}this.#s&&this.#a(new k(e))}}get isCanceled(){return this.#t===b.canceled}#i(e){this.#t===b.pending&&(this.#t=e)}}Object.setPrototypeOf(S.prototype,Promise.prototype);var _=t(9052);class A extends Error{constructor(e){super(e),this.name="TimeoutError"}}class U extends Error{constructor(e){super(),this.name="AbortError",this.message=e}}const F=e=>void 0===globalThis.DOMException?new U(e):new DOMException(e),P=e=>{const s=void 0===e.reason?F("This operation was aborted."):e.reason;return s instanceof Error?s:F(s)};class N{#l=[];enqueue(e,s){const t={priority:(s={priority:0,...s}).priority,run:e};if(this.size&&this.#l[this.size-1].priority>=s.priority)return void this.#l.push(t);const n=function(e,s,t){let n=0,a=e.length;for(;a>0;){const t=Math.trunc(a/2);let l=n+t;i=e[l],s.priority-i.priority<=0?(n=++l,a-=t+1):a=t}var i;return n}(this.#l,t);this.#l.splice(n,0,t)}dequeue(){const e=this.#l.shift();return e?.run}filter(e){return this.#l.filter((s=>s.priority===e.priority)).map((e=>e.run))}get size(){return this.#l.length}}class E extends _{#r;#o;#m=0;#d;#c;#g=0;#u;#f;#l;#p;#h=0;#w;#T;#v;timeout;constructor(e){if(super(),!("number"==typeof(e={carryoverConcurrencyCount:!1,intervalCap:Number.POSITIVE_INFINITY,interval:0,concurrency:Number.POSITIVE_INFINITY,autoStart:!0,queueClass:N,...e}).intervalCap&&e.intervalCap>=1))throw new TypeError(`Expected \`intervalCap\` to be a number from 1 and up, got \`${e.intervalCap?.toString()??""}\` (${typeof e.intervalCap})`);if(void 0===e.interval||!(Number.isFinite(e.interval)&&e.interval>=0))throw new TypeError(`Expected \`interval\` to be a finite number >= 0, got \`${e.interval?.toString()??""}\` (${typeof e.interval})`);this.#r=e.carryoverConcurrencyCount,this.#o=e.intervalCap===Number.POSITIVE_INFINITY||0===e.interval,this.#d=e.intervalCap,this.#c=e.interval,this.#l=new e.queueClass,this.#p=e.queueClass,this.concurrency=e.concurrency,this.timeout=e.timeout,this.#v=!0===e.throwOnTimeout,this.#T=!1===e.autoStart}get#x(){return this.#o||this.#m{this.#k()}),s)),!0;this.#m=this.#r?this.#h:0}return!1}#L(){if(0===this.#l.size)return this.#u&&clearInterval(this.#u),this.#u=void 0,this.emit("empty"),0===this.#h&&this.emit("idle"),!1;if(!this.#T){const e=!this.#_;if(this.#x&&this.#y){const s=this.#l.dequeue();return!!s&&(this.emit("active"),s(),e&&this.#S(),!0)}}return!1}#S(){this.#o||void 0!==this.#u||(this.#u=setInterval((()=>{this.#b()}),this.#c),this.#g=Date.now()+this.#c)}#b(){0===this.#m&&0===this.#h&&this.#u&&(clearInterval(this.#u),this.#u=void 0),this.#m=this.#r?this.#h:0,this.#A()}#A(){for(;this.#L(););}get concurrency(){return this.#w}set concurrency(e){if(!("number"==typeof e&&e>=1))throw new TypeError(`Expected \`concurrency\` to be a number from 1 and up, got \`${e}\` (${typeof e})`);this.#w=e,this.#A()}async#U(e){return new Promise(((s,t)=>{e.addEventListener("abort",(()=>{t(e.reason)}),{once:!0})}))}async add(e,s={}){return s={timeout:this.timeout,throwOnTimeout:this.#v,...s},new Promise(((t,n)=>{this.#l.enqueue((async()=>{this.#h++,this.#m++;try{s.signal?.throwIfAborted();let n=e({signal:s.signal});s.timeout&&(n=function(e,s){const{milliseconds:t,fallback:n,message:a,customTimers:i={setTimeout,clearTimeout}}=s;let l;const r=new Promise(((r,o)=>{if("number"!=typeof t||1!==Math.sign(t))throw new TypeError(`Expected \`milliseconds\` to be a positive number, got \`${t}\``);if(s.signal){const{signal:e}=s;e.aborted&&o(P(e)),e.addEventListener("abort",(()=>{o(P(e))}))}if(t===Number.POSITIVE_INFINITY)return void e.then(r,o);const m=new A;l=i.setTimeout.call(void 0,(()=>{if(n)try{r(n())}catch(e){o(e)}else"function"==typeof e.cancel&&e.cancel(),!1===a?r():a instanceof Error?o(a):(m.message=a??`Promise timed out after ${t} milliseconds`,o(m))}),t),(async()=>{try{r(await e)}catch(e){o(e)}})()})).finally((()=>{r.clear()}));return r.clear=()=>{i.clearTimeout.call(void 0,l),l=void 0},r}(Promise.resolve(n),{milliseconds:s.timeout})),s.signal&&(n=Promise.race([n,this.#U(s.signal)]));const a=await n;t(a),this.emit("completed",a)}catch(e){if(e instanceof A&&!s.throwOnTimeout)return void t();n(e),this.emit("error",e)}finally{this.#C()}}),s),this.emit("add"),this.#L()}))}async addAll(e,s){return Promise.all(e.map((async e=>this.add(e,s))))}start(){return this.#T?(this.#T=!1,this.#A(),this):this}pause(){this.#T=!0}clear(){this.#l=new this.#p}async onEmpty(){0!==this.#l.size&&await this.#F("empty")}async onSizeLessThan(e){this.#l.sizethis.#l.size{const n=()=>{s&&!s()||(this.off(e,n),t())};this.on(e,n)}))}get size(){return this.#l.size}sizeBy(e){return this.#l.filter(e).length}get pending(){return this.#h}get isPaused(){return this.#T}}var B=t(63814),I=t(51111);const z="axios-retry";function j(e){return!e.response&&!!e.code&&!["ERR_CANCELED","ECONNABORTED"].includes(e.code)&&I(e)}const R=["get","head","options"],O=R.concat(["put","delete"]);function D(e){return"ECONNABORTED"!==e.code&&(!e.response||429===e.response.status||e.response.status>=500&&e.response.status<=599)}function M(e){return!!e.config?.method&&D(e)&&-1!==O.indexOf(e.config.method)}function H(e){return j(e)||M(e)}function W(e=void 0){const s=e?.response?.headers["retry-after"];if(!s)return 0;let t=1e3*(Number(s)||0);return 0===t&&(t=(new Date(s).valueOf()||0)-Date.now()),Math.max(0,t)}const V={retries:3,retryCondition:H,retryDelay:function(e=0,s=void 0){return Math.max(0,W(s))},shouldResetTimeout:!1,onRetry:()=>{},onMaxRetryTimesExceeded:()=>{},validateResponse:null};function q(e,s){const t=function(e,s){return{...V,...s,...e[z]}}(e,s||{});return t.retryCount=t.retryCount||0,t.lastRequestTime=t.lastRequestTime||Date.now(),e[z]=t,t}const Y=(e,s)=>{const t=e.interceptors.request.use((e=>(q(e,s),e[z]?.validateResponse&&(e.validateStatus=()=>!1),e))),n=e.interceptors.response.use(null,(async t=>{const{config:n}=t;if(!n)return Promise.reject(t);const a=q(n,s);return t.response&&a.validateResponse?.(t.response)?t.response:await async function(e,s){const{retries:t,retryCondition:n}=e,a=(e.retryCount||0)e],await l(s.retryCount,t,n),n.signal?.aborted?Promise.resolve(e(n)):new Promise((s=>{const t=()=>{clearTimeout(a),s(e(n))},a=setTimeout((()=>{s(e(n)),n.signal?.removeEventListener&&n.signal.removeEventListener("abort",t)}),r);n.signal?.addEventListener&&n.signal.addEventListener("abort",t,{once:!0})}))}(e,a,t,n):(await async function(e,s){e.retryCount>=e.retries&&await e.onMaxRetryTimesExceeded(s,e.retryCount)}(a,t),Promise.reject(t))}));return{requestInterceptorId:t,responseInterceptorId:n}};Y.isNetworkError=j,Y.isSafeRequestError=function(e){return!!e.config?.method&&D(e)&&-1!==R.indexOf(e.config.method)},Y.isIdempotentRequestError=M,Y.isNetworkOrIdempotentRequestError=H,Y.exponentialDelay=function(e=0,s=void 0,t=100){const n=2**e*t,a=Math.max(n,W(s));return a+.2*a*Math.random()},Y.isRetryableError=D;const G=Y;var $=t(82148);t(42838),t(70580);var K=Object.defineProperty,J=(e,s,t)=>(((e,s,t)=>{s in e?K(e,s,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[s]=t})(e,"symbol"!=typeof s?s+"":s,t),t);class Q{constructor(e,s,t){J(this,"gt"),this.gt=new $({debug:t,sourceLocale:"en"});for(const e in s)this.gt.addTranslations(e,"messages",s[e]);this.gt.setLocale(e)}subtitudePlaceholders(e,s){return e.replace(/{([^{}]*)}/g,((e,t)=>{const n=s[t];return"string"==typeof n||"number"==typeof n?n.toString():e}))}gettext(e,s={}){return this.subtitudePlaceholders(this.gt.gettext(e),s)}ngettext(e,s,t,n={}){return this.subtitudePlaceholders(this.gt.ngettext(e,s,t).replace(/%n/g,t.toString()),n)}}var Z=t(35947),X=t(85168),ee=t(75270),se=t(63420),te=t(50953),ne=t(10501),ae=t(24764),ie=t(9518),le=t(6695),re=t(95101);const oe=e=>"FileSystemFileEntry"in window&&e instanceof FileSystemFileEntry,me=e=>"FileSystemEntry"in window&&e instanceof FileSystemEntry;G(L.Ay,{retries:0});const de=async function(e,s,t,n=(()=>{}),a=void 0,i={},l=5){let r;return r=s instanceof Blob?s:await s(),a&&(i.Destination=a),i["Content-Type"]||(i["Content-Type"]="application/octet-stream"),await L.Ay.request({method:"PUT",url:e,data:r,signal:t,onUploadProgress:n,headers:i,"axios-retry":{retries:l,retryDelay:(e,s)=>G.exponentialDelay(e,s,1e3)}})},ce=function(e,s,t){return 0===s&&e.size<=t?Promise.resolve(new Blob([e],{type:e.type||"application/octet-stream"})):Promise.resolve(new Blob([e.slice(s,s+t)],{type:"application/octet-stream"}))},ge=function(e=void 0){const s=window.OC?.appConfig?.files?.max_chunk_size;if(s<=0)return 0;if(!Number(s))return 10485760;const t=Math.max(Number(s),5242880);return void 0===e?t:Math.max(t,Math.ceil(e/1e4))};var ue=(e=>(e[e.INITIALIZED=0]="INITIALIZED",e[e.UPLOADING=1]="UPLOADING",e[e.ASSEMBLING=2]="ASSEMBLING",e[e.FINISHED=3]="FINISHED",e[e.CANCELLED=4]="CANCELLED",e[e.FAILED=5]="FAILED",e))(ue||{});class fe{_source;_file;_isChunked;_chunks;_size;_uploaded=0;_startTime=0;_status=0;_controller;_response=null;constructor(e,s=!1,t,n){const a=Math.min(ge()>0?Math.ceil(t/ge()):1,1e4);this._source=e,this._isChunked=s&&ge()>0&&a>1,this._chunks=this._isChunked?a:1,this._size=t,this._file=n,this._controller=new AbortController}get source(){return this._source}get file(){return this._file}get isChunked(){return this._isChunked}get chunks(){return this._chunks}get size(){return this._size}get startTime(){return this._startTime}set response(e){this._response=e}get response(){return this._response}get uploaded(){return this._uploaded}set uploaded(e){if(e>=this._size)return this._status=this._isChunked?2:3,void(this._uploaded=this._size);this._status=1,this._uploaded=e,0===this._startTime&&(this._startTime=(new Date).getTime())}get status(){return this._status}set status(e){this._status=e}get signal(){return this._controller.signal}cancel(){this._controller.abort(),this._status=4}}class pe extends File{_originalName;_path;_children;constructor(e,s){super([],(0,y.P8)(e),{type:"httpd/unix-directory",lastModified:0}),this._children=new Map,this._originalName=(0,y.P8)(e),this._path=e,s&&s.forEach((e=>this.addChild(e)))}get size(){return this.children.reduce(((e,s)=>e+s.size),0)}get lastModified(){return this.children.reduce(((e,s)=>Math.max(e,s.lastModified)),0)}get originalName(){return this._originalName}get children(){return Array.from(this._children.values())}get webkitRelativePath(){return this._path}getChild(e){return this._children.get(e)??null}async addChild(e){const s=this._path&&`${this._path}/`;if(oe(e))e=await new Promise(((s,t)=>e.file(s,t)));else if("FileSystemDirectoryEntry"in window&&e instanceof FileSystemDirectoryEntry){const t=e.createReader(),n=await new Promise(((e,s)=>t.readEntries(e,s)));return void this._children.set(e.name,new pe(`${s}${e.name}`,n))}const t=e.webkitRelativePath??e.name;if(t.includes("/")){if(!t.startsWith(this._path))throw new Error(`File ${t} is not a child of ${this._path}`);const n=t.slice(s.length),a=(0,y.P8)(n);if(a===n)this._children.set(a,e);else{const t=n.slice(0,n.indexOf("/"));this._children.has(t)?this._children.get(t).addChild(e):this._children.set(t,new pe(`${s}${t}`,[e]))}}else this._children.set(e.name,e)}}const he=(new class{constructor(){J(this,"locale"),J(this,"translations",{}),J(this,"debug",!1)}setLanguage(e){return this.locale=e,this}detectLocale(){return this.setLanguage((document.documentElement.lang||"en").replace("-","_"))}addTranslation(e,s){return this.translations[e]=s,this}enableDebugMode(){return this.debug=!0,this}build(){return new Q(this.locale||"en",this.translations,this.debug)}}).detectLocale();[{locale:"af",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Afrikaans (https://www.transifex.com/nextcloud/teams/64236/af/)","Content-Type":"text/plain; charset=UTF-8",Language:"af","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Afrikaans (https://www.transifex.com/nextcloud/teams/64236/af/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: af\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"ar",json:{charset:"utf-8",headers:{"Last-Translator":"Ali , 2024","Language-Team":"Arabic (https://app.transifex.com/nextcloud/teams/64236/ar/)","Content-Type":"text/plain; charset=UTF-8",Language:"ar","Plural-Forms":"nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nAli , 2024\n"},msgstr:["Last-Translator: Ali , 2024\nLanguage-Team: Arabic (https://app.transifex.com/nextcloud/teams/64236/ar/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ar\nPlural-Forms: nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;\n"]},'"{filename}" contains invalid characters, how do you want to continue?':{msgid:'"{filename}" contains invalid characters, how do you want to continue?',msgstr:['"{filename}" يحتوي على حروف غير مقبولة. كيف ترغب في الاستمرار؟']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} ملف متعارض","{count} ملف متعارض","{count} ملفان متعارضان","{count} ملف متعارض","{count} ملفات متعارضة","{count} ملفات متعارضة"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} ملف متعارض في n {dirname}","{count} ملف متعارض في n {dirname}","{count} ملفان متعارضان في n {dirname}","{count} ملف متعارض في n {dirname}","{count} ملفات متعارضة في n {dirname}","{count} ملفات متعارضة في n {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} ثانية متبقية"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} متبقية"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["باقٍ بضعُ ثوانٍ"]},Cancel:{msgid:"Cancel",msgstr:["إلغاء"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["إلغِ العملية بالكامل"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["إلغاء عمليات رفع الملفات"]},Continue:{msgid:"Continue",msgstr:["إستمر"]},"Create new":{msgid:"Create new",msgstr:["إنشاء جديد"]},"estimating time left":{msgid:"estimating time left",msgstr:["تقدير الوقت المتبقي"]},"Existing version":{msgid:"Existing version",msgstr:["الإصدار الحالي"]},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["إذا اخترت الاحتفاظ بالنسختين فسيتم إلحاق رقم عداد آخر اسم الملف الوارد."]},"Invalid file name":{msgid:"Invalid file name",msgstr:["اسم الملف غير صحيح"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["تاريخ آخر تعديل غير معلوم"]},New:{msgid:"New",msgstr:["جديد"]},"New version":{msgid:"New version",msgstr:["نسخة جديدة"]},paused:{msgid:"paused",msgstr:["مُجمَّد"]},"Preview image":{msgid:"Preview image",msgstr:["معاينة الصورة"]},Rename:{msgid:"Rename",msgstr:["تغيير التسمية"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["حدِّد كل صناديق الخيارات"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["حدِّد كل الملفات الموجودة"]},"Select all new files":{msgid:"Select all new files",msgstr:["حدِّد كل الملفات الجديدة"]},Skip:{msgid:"Skip",msgstr:["تخطِّي"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["تخطَّ {count} ملف","تخطَّ {count} ملف","تخطَّ {count} ملف","تخطَّ {count} ملف","تخطَّ {count} ملف","تخطَّ {count} ملف"]},"Unknown size":{msgid:"Unknown size",msgstr:["حجم غير معلوم"]},"Upload files":{msgid:"Upload files",msgstr:["رفع ملفات"]},"Upload folders":{msgid:"Upload folders",msgstr:["رفع مجلدات"]},"Upload from device":{msgid:"Upload from device",msgstr:["الرفع من جهاز "]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["تمّ إلغاء عملية رفع الملفات"]},"Upload progress":{msgid:"Upload progress",msgstr:["تقدُّم الرفع "]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["عند تحديد مجلد وارد، أي ملفات متعارضة بداخله ستتم الكتابة فوقها."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["عند تحديد مجلد وارد، ستتم كتابة المحتوى في المجلد الموجود و سيتم تنفيذ حل التعارض بشكل تعاوُدي."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["أيُّ الملفات ترغب في الإبقاء عليها؟"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["يجب أن تختار نسخة واحدة على الأقل من كل ملف للاستمرار."]}}}}},{locale:"ar_SA",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Arabic (Saudi Arabia) (https://www.transifex.com/nextcloud/teams/64236/ar_SA/)","Content-Type":"text/plain; charset=UTF-8",Language:"ar_SA","Plural-Forms":"nplurals=6; plural=(n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Arabic (Saudi Arabia) (https://www.transifex.com/nextcloud/teams/64236/ar_SA/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ar_SA\nPlural-Forms: nplurals=6; plural=(n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"ast",json:{charset:"utf-8",headers:{"Last-Translator":"enolp , 2023","Language-Team":"Asturian (https://app.transifex.com/nextcloud/teams/64236/ast/)","Content-Type":"text/plain; charset=UTF-8",Language:"ast","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nenolp , 2023\n"},msgstr:["Last-Translator: enolp , 2023\nLanguage-Team: Asturian (https://app.transifex.com/nextcloud/teams/64236/ast/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ast\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} ficheru en coflictu","{count} ficheros en coflictu"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} ficheru en coflictu en {dirname}","{count} ficheros en coflictu en {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["Queden {seconds} segundos"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["Tiempu que queda: {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["queden unos segundos"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Encaboxar les xubes"]},Continue:{msgid:"Continue",msgstr:["Siguir"]},"estimating time left":{msgid:"estimating time left",msgstr:["estimando'l tiempu que falta"]},"Existing version":{msgid:"Existing version",msgstr:["Versión esistente"]},"If you select both versions, the copied file will have a number added to its name.":{msgid:"If you select both versions, the copied file will have a number added to its name.",msgstr:["Si seleiciones dambes versiones, el ficheru copiáu va tener un númberu amestáu al so nome."]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["La data de la última modificación ye desconocida"]},New:{msgid:"New",msgstr:["Nuevu"]},"New version":{msgid:"New version",msgstr:["Versión nueva"]},paused:{msgid:"paused",msgstr:["en posa"]},"Preview image":{msgid:"Preview image",msgstr:["Previsualizar la imaxe"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Marcar toles caxelles"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Seleicionar tolos ficheros esistentes"]},"Select all new files":{msgid:"Select all new files",msgstr:["Seleicionar tolos ficheros nuevos"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Saltar esti ficheru","Saltar {count} ficheros"]},"Unknown size":{msgid:"Unknown size",msgstr:["Tamañu desconocíu"]},"Upload cancelled":{msgid:"Upload cancelled",msgstr:["Encaboxóse la xuba"]},"Upload files":{msgid:"Upload files",msgstr:["Xubir ficheros"]},"Upload progress":{msgid:"Upload progress",msgstr:["Xuba en cursu"]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["¿Qué ficheros quies caltener?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Tienes de seleicionar polo menos una versión de cada ficheru pa siguir."]}}}}},{locale:"az",json:{charset:"utf-8",headers:{"Last-Translator":"Rashad Aliyev , 2023","Language-Team":"Azerbaijani (https://app.transifex.com/nextcloud/teams/64236/az/)","Content-Type":"text/plain; charset=UTF-8",Language:"az","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nRashad Aliyev , 2023\n"},msgstr:["Last-Translator: Rashad Aliyev , 2023\nLanguage-Team: Azerbaijani (https://app.transifex.com/nextcloud/teams/64236/az/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: az\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} saniyə qalıb"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["{time} qalıb"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["bir neçə saniyə qalıb"]},Add:{msgid:"Add",msgstr:["Əlavə et"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Yükləməni imtina et"]},"estimating time left":{msgid:"estimating time left",msgstr:["Təxmini qalan vaxt"]},paused:{msgid:"paused",msgstr:["pauzadadır"]},"Upload files":{msgid:"Upload files",msgstr:["Faylları yüklə"]}}}}},{locale:"be",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Belarusian (https://www.transifex.com/nextcloud/teams/64236/be/)","Content-Type":"text/plain; charset=UTF-8",Language:"be","Plural-Forms":"nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Belarusian (https://www.transifex.com/nextcloud/teams/64236/be/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: be\nPlural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"bg_BG",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Bulgarian (Bulgaria) (https://www.transifex.com/nextcloud/teams/64236/bg_BG/)","Content-Type":"text/plain; charset=UTF-8",Language:"bg_BG","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Bulgarian (Bulgaria) (https://www.transifex.com/nextcloud/teams/64236/bg_BG/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: bg_BG\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"bn_BD",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Bengali (Bangladesh) (https://www.transifex.com/nextcloud/teams/64236/bn_BD/)","Content-Type":"text/plain; charset=UTF-8",Language:"bn_BD","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Bengali (Bangladesh) (https://www.transifex.com/nextcloud/teams/64236/bn_BD/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: bn_BD\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"br",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Breton (https://www.transifex.com/nextcloud/teams/64236/br/)","Content-Type":"text/plain; charset=UTF-8",Language:"br","Plural-Forms":"nplurals=5; plural=((n%10 == 1) && (n%100 != 11) && (n%100 !=71) && (n%100 !=91) ? 0 :(n%10 == 2) && (n%100 != 12) && (n%100 !=72) && (n%100 !=92) ? 1 :(n%10 ==3 || n%10==4 || n%10==9) && (n%100 < 10 || n% 100 > 19) && (n%100 < 70 || n%100 > 79) && (n%100 < 90 || n%100 > 99) ? 2 :(n != 0 && n % 1000000 == 0) ? 3 : 4);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Breton (https://www.transifex.com/nextcloud/teams/64236/br/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: br\nPlural-Forms: nplurals=5; plural=((n%10 == 1) && (n%100 != 11) && (n%100 !=71) && (n%100 !=91) ? 0 :(n%10 == 2) && (n%100 != 12) && (n%100 !=72) && (n%100 !=92) ? 1 :(n%10 ==3 || n%10==4 || n%10==9) && (n%100 < 10 || n% 100 > 19) && (n%100 < 70 || n%100 > 79) && (n%100 < 90 || n%100 > 99) ? 2 :(n != 0 && n % 1000000 == 0) ? 3 : 4);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"bs",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Bosnian (https://www.transifex.com/nextcloud/teams/64236/bs/)","Content-Type":"text/plain; charset=UTF-8",Language:"bs","Plural-Forms":"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Bosnian (https://www.transifex.com/nextcloud/teams/64236/bs/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: bs\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"ca",json:{charset:"utf-8",headers:{"Last-Translator":"Toni Hermoso Pulido , 2022","Language-Team":"Catalan (https://www.transifex.com/nextcloud/teams/64236/ca/)","Content-Type":"text/plain; charset=UTF-8",Language:"ca","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nMarc Riera , 2022\nToni Hermoso Pulido , 2022\n"},msgstr:["Last-Translator: Toni Hermoso Pulido , 2022\nLanguage-Team: Catalan (https://www.transifex.com/nextcloud/teams/64236/ca/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ca\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["Queden {seconds} segons"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["Queden {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["Queden uns segons"]},Add:{msgid:"Add",msgstr:["Afegeix"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Cancel·la les pujades"]},"estimating time left":{msgid:"estimating time left",msgstr:["S'està estimant el temps restant"]},paused:{msgid:"paused",msgstr:["En pausa"]},"Upload files":{msgid:"Upload files",msgstr:["Puja els fitxers"]}}}}},{locale:"cs",json:{charset:"utf-8",headers:{"Last-Translator":"Pavel Borecki , 2022","Language-Team":"Czech (https://www.transifex.com/nextcloud/teams/64236/cs/)","Content-Type":"text/plain; charset=UTF-8",Language:"cs","Plural-Forms":"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nPavel Borecki , 2022\n"},msgstr:["Last-Translator: Pavel Borecki , 2022\nLanguage-Team: Czech (https://www.transifex.com/nextcloud/teams/64236/cs/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: cs\nPlural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["zbývá {seconds}"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["zbývá {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["zbývá několik sekund"]},Add:{msgid:"Add",msgstr:["Přidat"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Zrušit nahrávání"]},"estimating time left":{msgid:"estimating time left",msgstr:["odhadovaný zbývající čas"]},paused:{msgid:"paused",msgstr:["pozastaveno"]}}}}},{locale:"cs_CZ",json:{charset:"utf-8",headers:{"Last-Translator":"Michal Šmahel , 2024","Language-Team":"Czech (Czech Republic) (https://app.transifex.com/nextcloud/teams/64236/cs_CZ/)","Content-Type":"text/plain; charset=UTF-8",Language:"cs_CZ","Plural-Forms":"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nMichal Šmahel , 2024\n"},msgstr:["Last-Translator: Michal Šmahel , 2024\nLanguage-Team: Czech (Czech Republic) (https://app.transifex.com/nextcloud/teams/64236/cs_CZ/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: cs_CZ\nPlural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\n"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} kolize souborů","{count} kolize souborů","{count} kolizí souborů","{count} kolize souborů"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} kolize souboru v {dirname}","{count} kolize souboru v {dirname}","{count} kolizí souborů v {dirname}","{count} kolize souboru v {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["zbývá {seconds}"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["zbývá {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["zbývá několik sekund"]},Cancel:{msgid:"Cancel",msgstr:["Zrušit"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Zrušit celou operaci"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Zrušit nahrávání"]},Continue:{msgid:"Continue",msgstr:["Pokračovat"]},"estimating time left":{msgid:"estimating time left",msgstr:["odhaduje se zbývající čas"]},"Existing version":{msgid:"Existing version",msgstr:["Existující verze"]},"If you select both versions, the copied file will have a number added to its name.":{msgid:"If you select both versions, the copied file will have a number added to its name.",msgstr:["Pokud vyberete obě verze, zkopírovaný soubor bude mít k názvu přidáno číslo."]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Neznámé datum poslední úpravy"]},New:{msgid:"New",msgstr:["Nové"]},"New version":{msgid:"New version",msgstr:["Nová verze"]},paused:{msgid:"paused",msgstr:["pozastaveno"]},"Preview image":{msgid:"Preview image",msgstr:["Náhled obrázku"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Označit všechny zaškrtávací kolonky"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Vybrat veškeré stávající soubory"]},"Select all new files":{msgid:"Select all new files",msgstr:["Vybrat veškeré nové soubory"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Přeskočit tento soubor","Přeskočit {count} soubory","Přeskočit {count} souborů","Přeskočit {count} soubory"]},"Unknown size":{msgid:"Unknown size",msgstr:["Neznámá velikost"]},"Upload cancelled":{msgid:"Upload cancelled",msgstr:["Nahrávání zrušeno"]},"Upload files":{msgid:"Upload files",msgstr:["Nahrát soubory"]},"Upload progress":{msgid:"Upload progress",msgstr:["Postup v nahrávání"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Po výběru příchozí složky budou rovněž přepsány všechny v ní obsažené konfliktní soubory"]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Které soubory si přejete ponechat?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Aby bylo možné pokračovat, je třeba vybrat alespoň jednu verzi od každého souboru."]}}}}},{locale:"cy_GB",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Welsh (United Kingdom) (https://www.transifex.com/nextcloud/teams/64236/cy_GB/)","Content-Type":"text/plain; charset=UTF-8",Language:"cy_GB","Plural-Forms":"nplurals=4; plural=(n==1) ? 0 : (n==2) ? 1 : (n != 8 && n != 11) ? 2 : 3;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Welsh (United Kingdom) (https://www.transifex.com/nextcloud/teams/64236/cy_GB/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: cy_GB\nPlural-Forms: nplurals=4; plural=(n==1) ? 0 : (n==2) ? 1 : (n != 8 && n != 11) ? 2 : 3;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"da",json:{charset:"utf-8",headers:{"Last-Translator":"Martin Bonde , 2024","Language-Team":"Danish (https://app.transifex.com/nextcloud/teams/64236/da/)","Content-Type":"text/plain; charset=UTF-8",Language:"da","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nMartin Bonde , 2024\n"},msgstr:["Last-Translator: Martin Bonde , 2024\nLanguage-Team: Danish (https://app.transifex.com/nextcloud/teams/64236/da/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: da\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} fil konflikt","{count} filer i konflikt"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} fil konflikt i {dirname}","{count} filer i konflikt i {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{sekunder} sekunder tilbage"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{tid} tilbage"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["et par sekunder tilbage"]},Cancel:{msgid:"Cancel",msgstr:["Annuller"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Annuller hele handlingen"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Annuller uploads"]},Continue:{msgid:"Continue",msgstr:["Fortsæt"]},"estimating time left":{msgid:"estimating time left",msgstr:["estimering af resterende tid"]},"Existing version":{msgid:"Existing version",msgstr:["Eksisterende version"]},"If you select both versions, the copied file will have a number added to its name.":{msgid:"If you select both versions, the copied file will have a number added to its name.",msgstr:["Hvis du vælger begge versioner vil den kopierede fil få et nummer tilføjet til sit navn."]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Sidste modifikationsdato ukendt"]},New:{msgid:"New",msgstr:["Ny"]},"New version":{msgid:"New version",msgstr:["Ny version"]},paused:{msgid:"paused",msgstr:["pauset"]},"Preview image":{msgid:"Preview image",msgstr:["Forhåndsvisning af billede"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Vælg alle felter"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Vælg alle eksisterende filer"]},"Select all new files":{msgid:"Select all new files",msgstr:["Vælg alle nye filer"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Spring denne fil over","Spring {count} filer over"]},"Unknown size":{msgid:"Unknown size",msgstr:["Ukendt størrelse"]},"Upload cancelled":{msgid:"Upload cancelled",msgstr:["Upload annulleret"]},"Upload files":{msgid:"Upload files",msgstr:["Upload filer"]},"Upload progress":{msgid:"Upload progress",msgstr:["Upload fremskridt"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Når en indgående mappe er valgt, vil alle modstridende filer i den også blive overskrevet."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Hvilke filer ønsker du at beholde?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Du skal vælge mindst én version af hver fil for at fortsætte."]}}}}},{locale:"de",json:{charset:"utf-8",headers:{"Last-Translator":"Mario Siegmann , 2024","Language-Team":"German (https://app.transifex.com/nextcloud/teams/64236/de/)","Content-Type":"text/plain; charset=UTF-8",Language:"de","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nMario Siegmann , 2024\n"},msgstr:["Last-Translator: Mario Siegmann , 2024\nLanguage-Team: German (https://app.transifex.com/nextcloud/teams/64236/de/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: de\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} Datei-Konflikt","{count} Datei-Konflikte"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} Datei-Konflikt in {dirname}","{count} Datei-Konflikte in {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} Sekunden verbleibend"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} verbleibend"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["noch ein paar Sekunden"]},Cancel:{msgid:"Cancel",msgstr:["Abbrechen"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Den gesamten Vorgang abbrechen"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Hochladen abbrechen"]},Continue:{msgid:"Continue",msgstr:["Fortsetzen"]},"estimating time left":{msgid:"estimating time left",msgstr:["Geschätzte verbleibende Zeit"]},"Existing version":{msgid:"Existing version",msgstr:["Vorhandene Version"]},"If you select both versions, the copied file will have a number added to its name.":{msgid:"If you select both versions, the copied file will have a number added to its name.",msgstr:["Wenn du beide Versionen auswählst, wird der kopierten Datei eine Nummer zum Namen hinzugefügt."]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Datum der letzten Änderung unbekannt"]},New:{msgid:"New",msgstr:["Neu"]},"New version":{msgid:"New version",msgstr:["Neue Version"]},paused:{msgid:"paused",msgstr:["Pausiert"]},"Preview image":{msgid:"Preview image",msgstr:["Vorschaubild"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Alle Kontrollkästchen aktivieren"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Alle vorhandenen Dateien auswählen"]},"Select all new files":{msgid:"Select all new files",msgstr:["Alle neuen Dateien auswählen"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Diese Datei überspringen","{count} Dateien überspringen"]},"Unknown size":{msgid:"Unknown size",msgstr:["Unbekannte Größe"]},"Upload cancelled":{msgid:"Upload cancelled",msgstr:["Hochladen abgebrochen"]},"Upload files":{msgid:"Upload files",msgstr:["Dateien hochladen"]},"Upload progress":{msgid:"Upload progress",msgstr:["Fortschritt beim Hochladen"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Wenn ein eingehender Ordner ausgewählt wird, werden alle darin enthaltenen Konfliktdateien ebenfalls überschrieben."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Welche Dateien möchtest du behalten?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Du musst mindestens eine Version jeder Datei auswählen, um fortzufahren."]}}}}},{locale:"de_DE",json:{charset:"utf-8",headers:{"Last-Translator":"Mario Siegmann , 2024","Language-Team":"German (Germany) (https://app.transifex.com/nextcloud/teams/64236/de_DE/)","Content-Type":"text/plain; charset=UTF-8",Language:"de_DE","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nMario Siegmann , 2024\n"},msgstr:["Last-Translator: Mario Siegmann , 2024\nLanguage-Team: German (Germany) (https://app.transifex.com/nextcloud/teams/64236/de_DE/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: de_DE\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{filename}" contains invalid characters, how do you want to continue?':{msgid:'"{filename}" contains invalid characters, how do you want to continue?',msgstr:['"{filename}" enthält ungültige Zeichen. Wie möchten Sie fortfahren?']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} Datei-Konflikt","{count} Datei-Konflikte"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} Datei-Konflikt in {dirname}","{count} Datei-Konflikte in {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} Sekunden verbleiben"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} verbleibend"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["ein paar Sekunden verbleiben"]},Cancel:{msgid:"Cancel",msgstr:["Abbrechen"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Den gesamten Vorgang abbrechen"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Hochladen abbrechen"]},Continue:{msgid:"Continue",msgstr:["Fortsetzen"]},"Create new":{msgid:"Create new",msgstr:["Neu erstellen"]},"estimating time left":{msgid:"estimating time left",msgstr:["Geschätzte verbleibende Zeit"]},"Existing version":{msgid:"Existing version",msgstr:["Vorhandene Version"]},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Wenn Sie beide Versionen auswählen, wird der eingehenden Datei eine Nummer zum Namen hinzugefügt."]},"Invalid file name":{msgid:"Invalid file name",msgstr:["Ungültiger Dateiname"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Datum der letzten Änderung unbekannt"]},New:{msgid:"New",msgstr:["Neu"]},"New version":{msgid:"New version",msgstr:["Neue Version"]},paused:{msgid:"paused",msgstr:["Pausiert"]},"Preview image":{msgid:"Preview image",msgstr:["Vorschaubild"]},Rename:{msgid:"Rename",msgstr:["Umbenennen"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Alle Kontrollkästchen aktivieren"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Alle vorhandenen Dateien auswählen"]},"Select all new files":{msgid:"Select all new files",msgstr:["Alle neuen Dateien auswählen"]},Skip:{msgid:"Skip",msgstr:["Überspringen"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["{count} Datei überspringen","{count} Dateien überspringen"]},"Unknown size":{msgid:"Unknown size",msgstr:["Unbekannte Größe"]},"Upload files":{msgid:"Upload files",msgstr:["Dateien hochladen"]},"Upload folders":{msgid:"Upload folders",msgstr:["Ordner hochladen"]},"Upload from device":{msgid:"Upload from device",msgstr:["Vom Gerät hochladen"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Das Hochladen wurde abgebrochen"]},"Upload progress":{msgid:"Upload progress",msgstr:["Fortschritt beim Hochladen"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Wenn ein eingehender Ordner ausgewählt wird, werden alle darin enthaltenen Konfliktdateien ebenfalls überschrieben."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Bei Auswahl eines eingehenden Ordners wird der Inhalt in den vorhandenen Ordner geschrieben und eine rekursive Konfliktlösung durchgeführt."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Welche Dateien möchten Sie behalten?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Sie müssen mindestens eine Version jeder Datei auswählen, um fortzufahren."]}}}}},{locale:"el",json:{charset:"utf-8",headers:{"Last-Translator":"Nik Pap, 2022","Language-Team":"Greek (https://www.transifex.com/nextcloud/teams/64236/el/)","Content-Type":"text/plain; charset=UTF-8",Language:"el","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nNik Pap, 2022\n"},msgstr:["Last-Translator: Nik Pap, 2022\nLanguage-Team: Greek (https://www.transifex.com/nextcloud/teams/64236/el/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: el\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["απομένουν {seconds} δευτερόλεπτα"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["απομένουν {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["απομένουν λίγα δευτερόλεπτα"]},Add:{msgid:"Add",msgstr:["Προσθήκη"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Ακύρωση μεταφορτώσεων"]},"estimating time left":{msgid:"estimating time left",msgstr:["εκτίμηση του χρόνου που απομένει"]},paused:{msgid:"paused",msgstr:["σε παύση"]},"Upload files":{msgid:"Upload files",msgstr:["Μεταφόρτωση αρχείων"]}}}}},{locale:"el_GR",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Greek (Greece) (https://www.transifex.com/nextcloud/teams/64236/el_GR/)","Content-Type":"text/plain; charset=UTF-8",Language:"el_GR","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Greek (Greece) (https://www.transifex.com/nextcloud/teams/64236/el_GR/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: el_GR\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"en_GB",json:{charset:"utf-8",headers:{"Last-Translator":"Andi Chandler , 2024","Language-Team":"English (United Kingdom) (https://app.transifex.com/nextcloud/teams/64236/en_GB/)","Content-Type":"text/plain; charset=UTF-8",Language:"en_GB","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nAndi Chandler , 2024\n"},msgstr:["Last-Translator: Andi Chandler , 2024\nLanguage-Team: English (United Kingdom) (https://app.transifex.com/nextcloud/teams/64236/en_GB/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: en_GB\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} file conflict","{count} files conflict"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} file conflict in {dirname}","{count} file conflicts in {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} seconds left"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} left"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["a few seconds left"]},Cancel:{msgid:"Cancel",msgstr:["Cancel"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Cancel the entire operation"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Cancel uploads"]},Continue:{msgid:"Continue",msgstr:["Continue"]},"estimating time left":{msgid:"estimating time left",msgstr:["estimating time left"]},"Existing version":{msgid:"Existing version",msgstr:["Existing version"]},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["If you select both versions, the incoming file will have a number added to its name."]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Last modified date unknown"]},New:{msgid:"New",msgstr:["New"]},"New version":{msgid:"New version",msgstr:["New version"]},paused:{msgid:"paused",msgstr:["paused"]},"Preview image":{msgid:"Preview image",msgstr:["Preview image"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Select all checkboxes"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Select all existing files"]},"Select all new files":{msgid:"Select all new files",msgstr:["Select all new files"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Skip this file","Skip {count} files"]},"Unknown size":{msgid:"Unknown size",msgstr:["Unknown size"]},"Upload cancelled":{msgid:"Upload cancelled",msgstr:["Upload cancelled"]},"Upload files":{msgid:"Upload files",msgstr:["Upload files"]},"Upload progress":{msgid:"Upload progress",msgstr:["Upload progress"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["When an incoming folder is selected, any conflicting files within it will also be overwritten."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Which files do you want to keep?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["You need to select at least one version of each file to continue."]}}}}},{locale:"eo",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Esperanto (https://www.transifex.com/nextcloud/teams/64236/eo/)","Content-Type":"text/plain; charset=UTF-8",Language:"eo","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Esperanto (https://www.transifex.com/nextcloud/teams/64236/eo/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: eo\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es",json:{charset:"utf-8",headers:{"Last-Translator":"Julio C. Ortega, 2024","Language-Team":"Spanish (https://app.transifex.com/nextcloud/teams/64236/es/)","Content-Type":"text/plain; charset=UTF-8",Language:"es","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nFranciscoFJ , 2024\nJulio C. Ortega, 2024\n"},msgstr:["Last-Translator: Julio C. Ortega, 2024\nLanguage-Team: Spanish (https://app.transifex.com/nextcloud/teams/64236/es/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},'"{filename}" contains invalid characters, how do you want to continue?':{msgid:'"{filename}" contains invalid characters, how do you want to continue?',msgstr:['"{filename}" contiene caracteres inválidos, ¿cómo desea continuar?']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} conflicto de archivo","{count} conflictos de archivo","{count} conflictos de archivo"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} conflicto de archivo en {dirname}","{count} conflictos de archivo en {dirname}","{count} conflictos de archivo en {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} segundos restantes"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} restante"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["quedan unos segundos"]},Cancel:{msgid:"Cancel",msgstr:["Cancelar"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Cancelar toda la operación"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Cancelar subidas"]},Continue:{msgid:"Continue",msgstr:["Continuar"]},"Create new":{msgid:"Create new",msgstr:["Crear nuevo"]},"estimating time left":{msgid:"estimating time left",msgstr:["estimando tiempo restante"]},"Existing version":{msgid:"Existing version",msgstr:["Versión existente"]},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Si selecciona ambas versionas, el archivo entrante le será agregado un número a su nombre."]},"Invalid file name":{msgid:"Invalid file name",msgstr:["Nombre de archivo inválido"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Última fecha de modificación desconocida"]},New:{msgid:"New",msgstr:["Nuevo"]},"New version":{msgid:"New version",msgstr:["Nueva versión"]},paused:{msgid:"paused",msgstr:["pausado"]},"Preview image":{msgid:"Preview image",msgstr:["Previsualizar imagen"]},Rename:{msgid:"Rename",msgstr:["Renombrar"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Seleccionar todas las casillas de verificación"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Seleccionar todos los archivos existentes"]},"Select all new files":{msgid:"Select all new files",msgstr:["Seleccionar todos los archivos nuevos"]},Skip:{msgid:"Skip",msgstr:["Saltar"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Saltar este archivo","Saltar {count} archivos","Saltar {count} archivos"]},"Unknown size":{msgid:"Unknown size",msgstr:["Tamaño desconocido"]},"Upload files":{msgid:"Upload files",msgstr:["Subir archivos"]},"Upload folders":{msgid:"Upload folders",msgstr:["Subir carpetas"]},"Upload from device":{msgid:"Upload from device",msgstr:["Subir desde dispositivo"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["La subida ha sido cancelada"]},"Upload progress":{msgid:"Upload progress",msgstr:["Progreso de la subida"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Cuando una carpeta entrante es seleccionada, cualquier de los archivos en conflictos también serán sobre-escritos."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Cuando una carpeta entrante es seleccionada, el contenido es escrito en la carpeta existente y se realizará una resolución de conflictos recursiva."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["¿Qué archivos desea conservar?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Debe seleccionar al menos una versión de cada archivo para continuar."]}}}}},{locale:"es_419",json:{charset:"utf-8",headers:{"Last-Translator":"ALEJANDRO CASTRO, 2022","Language-Team":"Spanish (Latin America) (https://www.transifex.com/nextcloud/teams/64236/es_419/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_419","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nALEJANDRO CASTRO, 2022\n"},msgstr:["Last-Translator: ALEJANDRO CASTRO, 2022\nLanguage-Team: Spanish (Latin America) (https://www.transifex.com/nextcloud/teams/64236/es_419/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_419\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} segundos restantes"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["{tiempo} restante"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["quedan pocos segundos"]},Add:{msgid:"Add",msgstr:["agregar"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Cancelar subidas"]},"estimating time left":{msgid:"estimating time left",msgstr:["estimando tiempo restante"]},paused:{msgid:"paused",msgstr:["pausado"]},"Upload files":{msgid:"Upload files",msgstr:["Subir archivos"]}}}}},{locale:"es_AR",json:{charset:"utf-8",headers:{"Last-Translator":"Matias Iglesias, 2022","Language-Team":"Spanish (Argentina) (https://www.transifex.com/nextcloud/teams/64236/es_AR/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_AR","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nMatias Iglesias, 2022\n"},msgstr:["Last-Translator: Matias Iglesias, 2022\nLanguage-Team: Spanish (Argentina) (https://www.transifex.com/nextcloud/teams/64236/es_AR/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_AR\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} segundos restantes"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["{time} restante"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["quedan unos segundos"]},Add:{msgid:"Add",msgstr:["Añadir"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Cancelar subidas"]},"estimating time left":{msgid:"estimating time left",msgstr:["estimando tiempo restante"]},paused:{msgid:"paused",msgstr:["pausado"]},"Upload files":{msgid:"Upload files",msgstr:["Subir archivos"]}}}}},{locale:"es_CL",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Chile) (https://www.transifex.com/nextcloud/teams/64236/es_CL/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_CL","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Chile) (https://www.transifex.com/nextcloud/teams/64236/es_CL/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_CL\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_CO",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Colombia) (https://www.transifex.com/nextcloud/teams/64236/es_CO/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_CO","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Colombia) (https://www.transifex.com/nextcloud/teams/64236/es_CO/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_CO\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_CR",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Costa Rica) (https://www.transifex.com/nextcloud/teams/64236/es_CR/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_CR","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Costa Rica) (https://www.transifex.com/nextcloud/teams/64236/es_CR/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_CR\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_DO",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Dominican Republic) (https://www.transifex.com/nextcloud/teams/64236/es_DO/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_DO","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Dominican Republic) (https://www.transifex.com/nextcloud/teams/64236/es_DO/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_DO\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_EC",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Ecuador) (https://www.transifex.com/nextcloud/teams/64236/es_EC/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_EC","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Ecuador) (https://www.transifex.com/nextcloud/teams/64236/es_EC/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_EC\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_GT",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Guatemala) (https://www.transifex.com/nextcloud/teams/64236/es_GT/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_GT","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Guatemala) (https://www.transifex.com/nextcloud/teams/64236/es_GT/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_GT\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_HN",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Honduras) (https://www.transifex.com/nextcloud/teams/64236/es_HN/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_HN","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Honduras) (https://www.transifex.com/nextcloud/teams/64236/es_HN/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_HN\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_MX",json:{charset:"utf-8",headers:{"Last-Translator":"ALEJANDRO CASTRO, 2022","Language-Team":"Spanish (Mexico) (https://www.transifex.com/nextcloud/teams/64236/es_MX/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_MX","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nLuis Francisco Castro, 2022\nALEJANDRO CASTRO, 2022\n"},msgstr:["Last-Translator: ALEJANDRO CASTRO, 2022\nLanguage-Team: Spanish (Mexico) (https://www.transifex.com/nextcloud/teams/64236/es_MX/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_MX\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} segundos restantes"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["{tiempo} restante"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["quedan pocos segundos"]},Add:{msgid:"Add",msgstr:["agregar"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["cancelar las cargas"]},"estimating time left":{msgid:"estimating time left",msgstr:["estimando tiempo restante"]},paused:{msgid:"paused",msgstr:["en pausa"]},"Upload files":{msgid:"Upload files",msgstr:["cargar archivos"]}}}}},{locale:"es_NI",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Nicaragua) (https://www.transifex.com/nextcloud/teams/64236/es_NI/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_NI","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Nicaragua) (https://www.transifex.com/nextcloud/teams/64236/es_NI/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_NI\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_PA",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Panama) (https://www.transifex.com/nextcloud/teams/64236/es_PA/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_PA","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Panama) (https://www.transifex.com/nextcloud/teams/64236/es_PA/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_PA\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_PE",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Peru) (https://www.transifex.com/nextcloud/teams/64236/es_PE/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_PE","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Peru) (https://www.transifex.com/nextcloud/teams/64236/es_PE/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_PE\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_PR",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Puerto Rico) (https://www.transifex.com/nextcloud/teams/64236/es_PR/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_PR","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Puerto Rico) (https://www.transifex.com/nextcloud/teams/64236/es_PR/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_PR\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_PY",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Paraguay) (https://www.transifex.com/nextcloud/teams/64236/es_PY/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_PY","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Paraguay) (https://www.transifex.com/nextcloud/teams/64236/es_PY/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_PY\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_SV",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (El Salvador) (https://www.transifex.com/nextcloud/teams/64236/es_SV/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_SV","Plural-Forms":"nplurals=2; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (El Salvador) (https://www.transifex.com/nextcloud/teams/64236/es_SV/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_SV\nPlural-Forms: nplurals=2; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_UY",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Uruguay) (https://www.transifex.com/nextcloud/teams/64236/es_UY/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_UY","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Uruguay) (https://www.transifex.com/nextcloud/teams/64236/es_UY/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_UY\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"et_EE",json:{charset:"utf-8",headers:{"Last-Translator":"Taavo Roos, 2023","Language-Team":"Estonian (Estonia) (https://app.transifex.com/nextcloud/teams/64236/et_EE/)","Content-Type":"text/plain; charset=UTF-8",Language:"et_EE","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nMait R, 2022\nTaavo Roos, 2023\n"},msgstr:["Last-Translator: Taavo Roos, 2023\nLanguage-Team: Estonian (Estonia) (https://app.transifex.com/nextcloud/teams/64236/et_EE/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: et_EE\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} jäänud sekundid"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["{time} aega jäänud"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["jäänud mõni sekund"]},Add:{msgid:"Add",msgstr:["Lisa"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Tühista üleslaadimine"]},"estimating time left":{msgid:"estimating time left",msgstr:["hinnanguline järelejäänud aeg"]},paused:{msgid:"paused",msgstr:["pausil"]},"Upload files":{msgid:"Upload files",msgstr:["Lae failid üles"]}}}}},{locale:"eu",json:{charset:"utf-8",headers:{"Last-Translator":"Unai Tolosa Pontesta , 2022","Language-Team":"Basque (https://www.transifex.com/nextcloud/teams/64236/eu/)","Content-Type":"text/plain; charset=UTF-8",Language:"eu","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nUnai Tolosa Pontesta , 2022\n"},msgstr:["Last-Translator: Unai Tolosa Pontesta , 2022\nLanguage-Team: Basque (https://www.transifex.com/nextcloud/teams/64236/eu/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: eu\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} segundo geratzen dira"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["{time} geratzen da"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["segundo batzuk geratzen dira"]},Add:{msgid:"Add",msgstr:["Gehitu"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Ezeztatu igoerak"]},"estimating time left":{msgid:"estimating time left",msgstr:["kalkulatutako geratzen den denbora"]},paused:{msgid:"paused",msgstr:["geldituta"]},"Upload files":{msgid:"Upload files",msgstr:["Igo fitxategiak"]}}}}},{locale:"fa",json:{charset:"utf-8",headers:{"Last-Translator":"Fatemeh Komeily, 2023","Language-Team":"Persian (https://app.transifex.com/nextcloud/teams/64236/fa/)","Content-Type":"text/plain; charset=UTF-8",Language:"fa","Plural-Forms":"nplurals=2; plural=(n > 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nFatemeh Komeily, 2023\n"},msgstr:["Last-Translator: Fatemeh Komeily, 2023\nLanguage-Team: Persian (https://app.transifex.com/nextcloud/teams/64236/fa/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: fa\nPlural-Forms: nplurals=2; plural=(n > 1);\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["ثانیه های باقی مانده"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["باقی مانده"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["چند ثانیه مانده"]},Add:{msgid:"Add",msgstr:["اضافه کردن"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["کنسل کردن فایل های اپلود شده"]},"estimating time left":{msgid:"estimating time left",msgstr:["تخمین زمان باقی مانده"]},paused:{msgid:"paused",msgstr:["مکث کردن"]},"Upload files":{msgid:"Upload files",msgstr:["بارگذاری فایل ها"]}}}}},{locale:"fi_FI",json:{charset:"utf-8",headers:{"Last-Translator":"Jiri Grönroos , 2022","Language-Team":"Finnish (Finland) (https://www.transifex.com/nextcloud/teams/64236/fi_FI/)","Content-Type":"text/plain; charset=UTF-8",Language:"fi_FI","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJiri Grönroos , 2022\n"},msgstr:["Last-Translator: Jiri Grönroos , 2022\nLanguage-Team: Finnish (Finland) (https://www.transifex.com/nextcloud/teams/64236/fi_FI/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: fi_FI\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} sekuntia jäljellä"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["{time} jäljellä"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["muutama sekunti jäljellä"]},Add:{msgid:"Add",msgstr:["Lisää"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Peruuta lähetykset"]},"estimating time left":{msgid:"estimating time left",msgstr:["arvioidaan jäljellä olevaa aikaa"]},paused:{msgid:"paused",msgstr:["keskeytetty"]},"Upload files":{msgid:"Upload files",msgstr:["Lähetä tiedostoja"]}}}}},{locale:"fo",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Faroese (https://www.transifex.com/nextcloud/teams/64236/fo/)","Content-Type":"text/plain; charset=UTF-8",Language:"fo","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Faroese (https://www.transifex.com/nextcloud/teams/64236/fo/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: fo\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"fr",json:{charset:"utf-8",headers:{"Last-Translator":"jed boulahya, 2024","Language-Team":"French (https://app.transifex.com/nextcloud/teams/64236/fr/)","Content-Type":"text/plain; charset=UTF-8",Language:"fr","Plural-Forms":"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nBenoit Pruneau, 2024\njed boulahya, 2024\n"},msgstr:["Last-Translator: jed boulahya, 2024\nLanguage-Team: French (https://app.transifex.com/nextcloud/teams/64236/fr/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: fr\nPlural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} fichier en conflit","{count} fichiers en conflit","{count} fichiers en conflit"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} fichier en conflit dans {dirname}","{count} fichiers en conflit dans {dirname}","{count} fichiers en conflit dans {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} secondes restantes"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} restant"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["quelques secondes restantes"]},Cancel:{msgid:"Cancel",msgstr:["Annuler"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Annuler l'opération entière"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Annuler les envois"]},Continue:{msgid:"Continue",msgstr:["Continuer"]},"estimating time left":{msgid:"estimating time left",msgstr:["estimation du temps restant"]},"Existing version":{msgid:"Existing version",msgstr:["Version existante"]},"If you select both versions, the copied file will have a number added to its name.":{msgid:"If you select both versions, the copied file will have a number added to its name.",msgstr:["Si vous sélectionnez les deux versions, le fichier copié aura un numéro ajouté àname."]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Date de la dernière modification est inconnue"]},New:{msgid:"New",msgstr:["Nouveau"]},"New version":{msgid:"New version",msgstr:["Nouvelle version"]},paused:{msgid:"paused",msgstr:["en pause"]},"Preview image":{msgid:"Preview image",msgstr:["Aperçu de l'image"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Sélectionner toutes les cases à cocher"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Sélectionner tous les fichiers existants"]},"Select all new files":{msgid:"Select all new files",msgstr:["Sélectionner tous les nouveaux fichiers"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Ignorer ce fichier","Ignorer {count} fichiers","Ignorer {count} fichiers"]},"Unknown size":{msgid:"Unknown size",msgstr:["Taille inconnue"]},"Upload cancelled":{msgid:"Upload cancelled",msgstr:[" annulé"]},"Upload files":{msgid:"Upload files",msgstr:["Téléchargement des fichiers"]},"Upload progress":{msgid:"Upload progress",msgstr:["Progression du téléchargement"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Lorsqu'un dossier entrant est sélectionné, tous les fichiers en conflit qu'il contient seront également écrasés."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Quels fichiers souhaitez-vous conserver ?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Vous devez sélectionner au moins une version de chaque fichier pour continuer."]}}}}},{locale:"ga",json:{charset:"utf-8",headers:{"Last-Translator":"Aindriú Mac Giolla Eoin, 2024","Language-Team":"Irish (https://app.transifex.com/nextcloud/teams/64236/ga/)","Content-Type":"text/plain; charset=UTF-8",Language:"ga","Plural-Forms":"nplurals=5; plural=(n==1 ? 0 : n==2 ? 1 : n<7 ? 2 : n<11 ? 3 : 4);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nAindriú Mac Giolla Eoin, 2024\n"},msgstr:["Last-Translator: Aindriú Mac Giolla Eoin, 2024\nLanguage-Team: Irish (https://app.transifex.com/nextcloud/teams/64236/ga/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ga\nPlural-Forms: nplurals=5; plural=(n==1 ? 0 : n==2 ? 1 : n<7 ? 2 : n<11 ? 3 : 4);\n"]},'"{filename}" contains invalid characters, how do you want to continue?':{msgid:'"{filename}" contains invalid characters, how do you want to continue?',msgstr:['Tá carachtair neamhbhailí in "{filename}", conas ba mhaith leat leanúint ar aghaidh?']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} coimhlint comhaid","coimhlint comhaid {count}","coimhlint comhaid {count}","coimhlint comhaid {count}","coimhlint comhaid {count}"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} coimhlint comhaid i {dirname}","{count} coimhlint comhaid i {dirname}","{count} coimhlint comhaid i {dirname}","{count} coimhlint comhaid i {dirname}","{count} coimhlint comhaid i {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{soicind} fágtha"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{am} fágtha"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["cúpla soicind fágtha"]},Cancel:{msgid:"Cancel",msgstr:["Cealaigh"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Cealaigh an oibríocht iomlán"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Cealaigh uaslódálacha"]},Continue:{msgid:"Continue",msgstr:["Leanúint ar aghaidh"]},"Create new":{msgid:"Create new",msgstr:["Cruthaigh nua"]},"estimating time left":{msgid:"estimating time left",msgstr:["ag déanamh meastachán ar an am atá fágtha"]},"Existing version":{msgid:"Existing version",msgstr:["Leagan láithreach "]},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Má roghnaíonn tú an dá leagan, cuirfear uimhir leis an ainm a thagann isteach."]},"Invalid file name":{msgid:"Invalid file name",msgstr:["Ainm comhaid neamhbhailí"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Dáta modhnaithe is déanaí anaithnid"]},New:{msgid:"New",msgstr:["Nua"]},"New version":{msgid:"New version",msgstr:["Leagan nua"]},paused:{msgid:"paused",msgstr:["sos"]},"Preview image":{msgid:"Preview image",msgstr:["Íomhá réamhamharc"]},Rename:{msgid:"Rename",msgstr:["Athainmnigh"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Roghnaigh gach ticbhosca"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Roghnaigh gach comhad atá ann cheana féin"]},"Select all new files":{msgid:"Select all new files",msgstr:["Roghnaigh gach comhad nua"]},Skip:{msgid:"Skip",msgstr:["Scipeáil"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Léim an comhad seo","Léim ar {count} comhad","Léim ar {count} comhad","Léim ar {count} comhad","Léim ar {count} comhad"]},"Unknown size":{msgid:"Unknown size",msgstr:["Méid anaithnid"]},"Upload files":{msgid:"Upload files",msgstr:["Uaslódáil comhaid"]},"Upload folders":{msgid:"Upload folders",msgstr:["Uaslódáil fillteáin"]},"Upload from device":{msgid:"Upload from device",msgstr:["Íosluchtaigh ó gléas"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Cuireadh an t-uaslódáil ar ceal"]},"Upload progress":{msgid:"Upload progress",msgstr:["Uaslódáil dul chun cinn"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Nuair a roghnaítear fillteán isteach, déanfar aon chomhad contrártha laistigh de a fhorscríobh freisin."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Nuair a roghnaítear fillteán isteach, scríobhtar an t-ábhar isteach san fhillteán atá ann cheana agus déantar réiteach coinbhleachta athchúrsach."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Cé na comhaid ar mhaith leat a choinneáil?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Ní mór duit leagan amháin ar a laghad de gach comhad a roghnú chun leanúint ar aghaidh."]}}}}},{locale:"gd",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Gaelic, Scottish (https://www.transifex.com/nextcloud/teams/64236/gd/)","Content-Type":"text/plain; charset=UTF-8",Language:"gd","Plural-Forms":"nplurals=4; plural=(n==1 || n==11) ? 0 : (n==2 || n==12) ? 1 : (n > 2 && n < 20) ? 2 : 3;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Gaelic, Scottish (https://www.transifex.com/nextcloud/teams/64236/gd/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: gd\nPlural-Forms: nplurals=4; plural=(n==1 || n==11) ? 0 : (n==2 || n==12) ? 1 : (n > 2 && n < 20) ? 2 : 3;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"gl",json:{charset:"utf-8",headers:{"Last-Translator":"Miguel Anxo Bouzada , 2024","Language-Team":"Galician (https://app.transifex.com/nextcloud/teams/64236/gl/)","Content-Type":"text/plain; charset=UTF-8",Language:"gl","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nMiguel Anxo Bouzada , 2024\n"},msgstr:["Last-Translator: Miguel Anxo Bouzada , 2024\nLanguage-Team: Galician (https://app.transifex.com/nextcloud/teams/64236/gl/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: gl\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{filename}" contains invalid characters, how do you want to continue?':{msgid:'"{filename}" contains invalid characters, how do you want to continue?',msgstr:["«{filename}» contén caracteres non válidos, como quere continuar?"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} conflito de ficheiros","{count} conflitos de ficheiros"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} conflito de ficheiros en {dirname}","{count} conflitos de ficheiros en {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["faltan {seconds} segundos"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["falta {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["faltan uns segundos"]},Cancel:{msgid:"Cancel",msgstr:["Cancelar"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Cancela toda a operación"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Cancelar envíos"]},Continue:{msgid:"Continue",msgstr:["Continuar"]},"Create new":{msgid:"Create new",msgstr:["Crear un novo"]},"estimating time left":{msgid:"estimating time left",msgstr:["calculando canto tempo falta"]},"Existing version":{msgid:"Existing version",msgstr:["Versión existente"]},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Se selecciona ambas as versións, o ficheiro entrante terá un número engadido ao seu nome."]},"Invalid file name":{msgid:"Invalid file name",msgstr:["O nome de ficheiro non é válido"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Data da última modificación descoñecida"]},New:{msgid:"New",msgstr:["Nova"]},"New version":{msgid:"New version",msgstr:["Nova versión"]},paused:{msgid:"paused",msgstr:["detido"]},"Preview image":{msgid:"Preview image",msgstr:["Vista previa da imaxe"]},Rename:{msgid:"Rename",msgstr:["Renomear"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Marcar todas as caixas de selección"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Seleccionar todos os ficheiros existentes"]},"Select all new files":{msgid:"Select all new files",msgstr:["Seleccionar todos os ficheiros novos"]},Skip:{msgid:"Skip",msgstr:["Omitir"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Omita este ficheiro","Omitir {count} ficheiros"]},"Unknown size":{msgid:"Unknown size",msgstr:["Tamaño descoñecido"]},"Upload files":{msgid:"Upload files",msgstr:["Enviar ficheiros"]},"Upload folders":{msgid:"Upload folders",msgstr:["Enviar cartafoles"]},"Upload from device":{msgid:"Upload from device",msgstr:["Enviar dende o dispositivo"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["O envío foi cancelado"]},"Upload progress":{msgid:"Upload progress",msgstr:["Progreso do envío"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Cando se selecciona un cartafol entrante, tamén se sobrescribirán os ficheiros en conflito dentro del."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Cando se selecciona un cartafol entrante, o contido escríbese no cartafol existente e lévase a cabo unha resolución recursiva de conflitos."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Que ficheiros quere conservar?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Debe seleccionar polo menos unha versión de cada ficheiro para continuar."]}}}}},{locale:"he",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Hebrew (https://www.transifex.com/nextcloud/teams/64236/he/)","Content-Type":"text/plain; charset=UTF-8",Language:"he","Plural-Forms":"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n == 2 && n % 1 == 0) ? 1: (n % 10 == 0 && n % 1 == 0 && n > 10) ? 2 : 3;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Hebrew (https://www.transifex.com/nextcloud/teams/64236/he/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: he\nPlural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n == 2 && n % 1 == 0) ? 1: (n % 10 == 0 && n % 1 == 0 && n > 10) ? 2 : 3;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"hi_IN",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Hindi (India) (https://www.transifex.com/nextcloud/teams/64236/hi_IN/)","Content-Type":"text/plain; charset=UTF-8",Language:"hi_IN","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Hindi (India) (https://www.transifex.com/nextcloud/teams/64236/hi_IN/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: hi_IN\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"hr",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Croatian (https://www.transifex.com/nextcloud/teams/64236/hr/)","Content-Type":"text/plain; charset=UTF-8",Language:"hr","Plural-Forms":"nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Croatian (https://www.transifex.com/nextcloud/teams/64236/hr/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: hr\nPlural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"hsb",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Upper Sorbian (https://www.transifex.com/nextcloud/teams/64236/hsb/)","Content-Type":"text/plain; charset=UTF-8",Language:"hsb","Plural-Forms":"nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Upper Sorbian (https://www.transifex.com/nextcloud/teams/64236/hsb/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: hsb\nPlural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"hu",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Hungarian (https://www.transifex.com/nextcloud/teams/64236/hu/)","Content-Type":"text/plain; charset=UTF-8",Language:"hu","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Hungarian (https://www.transifex.com/nextcloud/teams/64236/hu/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: hu\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"hu_HU",json:{charset:"utf-8",headers:{"Last-Translator":"Balázs Úr, 2022","Language-Team":"Hungarian (Hungary) (https://www.transifex.com/nextcloud/teams/64236/hu_HU/)","Content-Type":"text/plain; charset=UTF-8",Language:"hu_HU","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nBalázs Meskó , 2022\nBalázs Úr, 2022\n"},msgstr:["Last-Translator: Balázs Úr, 2022\nLanguage-Team: Hungarian (Hungary) (https://www.transifex.com/nextcloud/teams/64236/hu_HU/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: hu_HU\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{} másodperc van hátra"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["{time} van hátra"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["pár másodperc van hátra"]},Add:{msgid:"Add",msgstr:["Hozzáadás"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Feltöltések megszakítása"]},"estimating time left":{msgid:"estimating time left",msgstr:["hátralévő idő becslése"]},paused:{msgid:"paused",msgstr:["szüneteltetve"]},"Upload files":{msgid:"Upload files",msgstr:["Fájlok feltöltése"]}}}}},{locale:"hy",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Armenian (https://www.transifex.com/nextcloud/teams/64236/hy/)","Content-Type":"text/plain; charset=UTF-8",Language:"hy","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Armenian (https://www.transifex.com/nextcloud/teams/64236/hy/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: hy\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"ia",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Interlingua (https://www.transifex.com/nextcloud/teams/64236/ia/)","Content-Type":"text/plain; charset=UTF-8",Language:"ia","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Interlingua (https://www.transifex.com/nextcloud/teams/64236/ia/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ia\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"id",json:{charset:"utf-8",headers:{"Last-Translator":"Linerly , 2023","Language-Team":"Indonesian (https://app.transifex.com/nextcloud/teams/64236/id/)","Content-Type":"text/plain; charset=UTF-8",Language:"id","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ , 2023\nEmpty Slot Filler, 2023\nLinerly , 2023\n"},msgstr:["Last-Translator: Linerly , 2023\nLanguage-Team: Indonesian (https://app.transifex.com/nextcloud/teams/64236/id/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: id\nPlural-Forms: nplurals=1; plural=0;\n"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} berkas berkonflik"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} berkas berkonflik dalam {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} detik tersisa"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} tersisa"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["tinggal sebentar lagi"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Batalkan unggahan"]},Continue:{msgid:"Continue",msgstr:["Lanjutkan"]},"estimating time left":{msgid:"estimating time left",msgstr:["memperkirakan waktu yang tersisa"]},"Existing version":{msgid:"Existing version",msgstr:["Versi yang ada"]},"If you select both versions, the copied file will have a number added to its name.":{msgid:"If you select both versions, the copied file will have a number added to its name.",msgstr:["Jika Anda memilih kedua versi, nama berkas yang disalin akan ditambahi angka."]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Tanggal perubahan terakhir tidak diketahui"]},New:{msgid:"New",msgstr:["Baru"]},"New version":{msgid:"New version",msgstr:["Versi baru"]},paused:{msgid:"paused",msgstr:["dijeda"]},"Preview image":{msgid:"Preview image",msgstr:["Gambar pratinjau"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Pilih semua kotak centang"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Pilih semua berkas yang ada"]},"Select all new files":{msgid:"Select all new files",msgstr:["Pilih semua berkas baru"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Lewati {count} berkas"]},"Unknown size":{msgid:"Unknown size",msgstr:["Ukuran tidak diketahui"]},"Upload cancelled":{msgid:"Upload cancelled",msgstr:["Unggahan dibatalkan"]},"Upload files":{msgid:"Upload files",msgstr:["Unggah berkas"]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Berkas mana yang Anda ingin tetap simpan?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Anda harus memilih setidaknya satu versi dari masing-masing berkas untuk melanjutkan."]}}}}},{locale:"ig",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Igbo (https://www.transifex.com/nextcloud/teams/64236/ig/)","Content-Type":"text/plain; charset=UTF-8",Language:"ig","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Igbo (https://www.transifex.com/nextcloud/teams/64236/ig/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ig\nPlural-Forms: nplurals=1; plural=0;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"is",json:{charset:"utf-8",headers:{"Last-Translator":"Sveinn í Felli , 2023","Language-Team":"Icelandic (https://app.transifex.com/nextcloud/teams/64236/is/)","Content-Type":"text/plain; charset=UTF-8",Language:"is","Plural-Forms":"nplurals=2; plural=(n % 10 != 1 || n % 100 == 11);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nSveinn í Felli , 2023\n"},msgstr:["Last-Translator: Sveinn í Felli , 2023\nLanguage-Team: Icelandic (https://app.transifex.com/nextcloud/teams/64236/is/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: is\nPlural-Forms: nplurals=2; plural=(n % 10 != 1 || n % 100 == 11);\n"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} árekstur skráa","{count} árekstrar skráa"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} árekstur skráa í {dirname}","{count} árekstrar skráa í {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} sekúndur eftir"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} eftir"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["nokkrar sekúndur eftir"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Hætta við innsendingar"]},Continue:{msgid:"Continue",msgstr:["Halda áfram"]},"estimating time left":{msgid:"estimating time left",msgstr:["áætla tíma sem eftir er"]},"Existing version":{msgid:"Existing version",msgstr:["Fyrirliggjandi útgáfa"]},"If you select both versions, the copied file will have a number added to its name.":{msgid:"If you select both versions, the copied file will have a number added to its name.",msgstr:["Ef þú velur báðar útgáfur, þá mun verða bætt tölustaf aftan við heiti afrituðu skrárinnar."]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Síðasta breytingadagsetning er óþekkt"]},New:{msgid:"New",msgstr:["Nýtt"]},"New version":{msgid:"New version",msgstr:["Ný útgáfa"]},paused:{msgid:"paused",msgstr:["í bið"]},"Preview image":{msgid:"Preview image",msgstr:["Forskoðun myndar"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Velja gátreiti"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Velja allar fyrirliggjandi skrár"]},"Select all new files":{msgid:"Select all new files",msgstr:["Velja allar nýjar skrár"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Sleppa þessari skrá","Sleppa {count} skrám"]},"Unknown size":{msgid:"Unknown size",msgstr:["Óþekkt stærð"]},"Upload cancelled":{msgid:"Upload cancelled",msgstr:["Hætt við innsendingu"]},"Upload files":{msgid:"Upload files",msgstr:["Senda inn skrár"]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Hvaða skrám vilt þú vilt halda eftir?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Þú verður að velja að minnsta kosti eina útgáfu af hverri skrá til að halda áfram."]}}}}},{locale:"it",json:{charset:"utf-8",headers:{"Last-Translator":"Random_R, 2023","Language-Team":"Italian (https://app.transifex.com/nextcloud/teams/64236/it/)","Content-Type":"text/plain; charset=UTF-8",Language:"it","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ , 2023\nLep Lep, 2023\nRandom_R, 2023\n"},msgstr:["Last-Translator: Random_R, 2023\nLanguage-Team: Italian (https://app.transifex.com/nextcloud/teams/64236/it/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: it\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} file in conflitto","{count} file in conflitto","{count} file in conflitto"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} file in conflitto in {dirname}","{count} file in conflitto in {dirname}","{count} file in conflitto in {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} secondi rimanenti "]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} rimanente"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["alcuni secondi rimanenti"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Annulla i caricamenti"]},Continue:{msgid:"Continue",msgstr:["Continua"]},"estimating time left":{msgid:"estimating time left",msgstr:["calcolo il tempo rimanente"]},"Existing version":{msgid:"Existing version",msgstr:["Versione esistente"]},"If you select both versions, the copied file will have a number added to its name.":{msgid:"If you select both versions, the copied file will have a number added to its name.",msgstr:["Se selezioni entrambe le versioni, nel nome del file copiato verrà aggiunto un numero "]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Ultima modifica sconosciuta"]},New:{msgid:"New",msgstr:["Nuovo"]},"New version":{msgid:"New version",msgstr:["Nuova versione"]},paused:{msgid:"paused",msgstr:["pausa"]},"Preview image":{msgid:"Preview image",msgstr:["Anteprima immagine"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Seleziona tutte le caselle"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Seleziona tutti i file esistenti"]},"Select all new files":{msgid:"Select all new files",msgstr:["Seleziona tutti i nuovi file"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Salta questo file","Salta {count} file","Salta {count} file"]},"Unknown size":{msgid:"Unknown size",msgstr:["Dimensione sconosciuta"]},"Upload cancelled":{msgid:"Upload cancelled",msgstr:["Caricamento cancellato"]},"Upload files":{msgid:"Upload files",msgstr:["Carica i file"]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Quali file vuoi mantenere?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Devi selezionare almeno una versione di ogni file per continuare"]}}}}},{locale:"it_IT",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Italian (Italy) (https://www.transifex.com/nextcloud/teams/64236/it_IT/)","Content-Type":"text/plain; charset=UTF-8",Language:"it_IT","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Italian (Italy) (https://www.transifex.com/nextcloud/teams/64236/it_IT/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: it_IT\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"ja_JP",json:{charset:"utf-8",headers:{"Last-Translator":"かたかめ, 2022","Language-Team":"Japanese (Japan) (https://www.transifex.com/nextcloud/teams/64236/ja_JP/)","Content-Type":"text/plain; charset=UTF-8",Language:"ja_JP","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nT.S, 2022\nかたかめ, 2022\n"},msgstr:["Last-Translator: かたかめ, 2022\nLanguage-Team: Japanese (Japan) (https://www.transifex.com/nextcloud/teams/64236/ja_JP/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ja_JP\nPlural-Forms: nplurals=1; plural=0;\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["残り {seconds} 秒"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["残り {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["残り数秒"]},Add:{msgid:"Add",msgstr:["追加"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["アップロードをキャンセル"]},"estimating time left":{msgid:"estimating time left",msgstr:["概算残り時間"]},paused:{msgid:"paused",msgstr:["一時停止中"]},"Upload files":{msgid:"Upload files",msgstr:["ファイルをアップデート"]}}}}},{locale:"ka",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Georgian (https://www.transifex.com/nextcloud/teams/64236/ka/)","Content-Type":"text/plain; charset=UTF-8",Language:"ka","Plural-Forms":"nplurals=2; plural=(n!=1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Georgian (https://www.transifex.com/nextcloud/teams/64236/ka/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ka\nPlural-Forms: nplurals=2; plural=(n!=1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"ka_GE",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Georgian (Georgia) (https://www.transifex.com/nextcloud/teams/64236/ka_GE/)","Content-Type":"text/plain; charset=UTF-8",Language:"ka_GE","Plural-Forms":"nplurals=2; plural=(n!=1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Georgian (Georgia) (https://www.transifex.com/nextcloud/teams/64236/ka_GE/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ka_GE\nPlural-Forms: nplurals=2; plural=(n!=1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"kab",json:{charset:"utf-8",headers:{"Last-Translator":"ZiriSut, 2023","Language-Team":"Kabyle (https://app.transifex.com/nextcloud/teams/64236/kab/)","Content-Type":"text/plain; charset=UTF-8",Language:"kab","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nZiriSut, 2023\n"},msgstr:["Last-Translator: ZiriSut, 2023\nLanguage-Team: Kabyle (https://app.transifex.com/nextcloud/teams/64236/kab/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: kab\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} tesdatin i d-yeqqimen"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["{time} i d-yeqqimen"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["qqiment-d kra n tesdatin kan"]},Add:{msgid:"Add",msgstr:["Rnu"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Sefsex asali"]},"estimating time left":{msgid:"estimating time left",msgstr:["asizel n wakud i d-yeqqimen"]},paused:{msgid:"paused",msgstr:["yeḥbes"]},"Upload files":{msgid:"Upload files",msgstr:["Sali-d ifuyla"]}}}}},{locale:"kk",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Kazakh (https://www.transifex.com/nextcloud/teams/64236/kk/)","Content-Type":"text/plain; charset=UTF-8",Language:"kk","Plural-Forms":"nplurals=2; plural=(n!=1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Kazakh (https://www.transifex.com/nextcloud/teams/64236/kk/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: kk\nPlural-Forms: nplurals=2; plural=(n!=1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"km",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Khmer (https://www.transifex.com/nextcloud/teams/64236/km/)","Content-Type":"text/plain; charset=UTF-8",Language:"km","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Khmer (https://www.transifex.com/nextcloud/teams/64236/km/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: km\nPlural-Forms: nplurals=1; plural=0;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"kn",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Kannada (https://www.transifex.com/nextcloud/teams/64236/kn/)","Content-Type":"text/plain; charset=UTF-8",Language:"kn","Plural-Forms":"nplurals=2; plural=(n > 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Kannada (https://www.transifex.com/nextcloud/teams/64236/kn/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: kn\nPlural-Forms: nplurals=2; plural=(n > 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"ko",json:{charset:"utf-8",headers:{"Last-Translator":"이상오, 2024","Language-Team":"Korean (https://app.transifex.com/nextcloud/teams/64236/ko/)","Content-Type":"text/plain; charset=UTF-8",Language:"ko","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\n이상오, 2024\n"},msgstr:["Last-Translator: 이상오, 2024\nLanguage-Team: Korean (https://app.transifex.com/nextcloud/teams/64236/ko/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ko\nPlural-Forms: nplurals=1; plural=0;\n"]},'"{filename}" contains invalid characters, how do you want to continue?':{msgid:'"{filename}" contains invalid characters, how do you want to continue?',msgstr:['"{filename}"에 유효하지 않은 문자가 있습니다, 계속하시겠습니까?']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count}개의 파일이 충돌함"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{dirname}에서 {count}개의 파일이 충돌함"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds}초 남음"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} 남음"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["곧 완료"]},Cancel:{msgid:"Cancel",msgstr:["취소"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["전체 작업을 취소"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["업로드 취소"]},Continue:{msgid:"Continue",msgstr:["확인"]},"Create new":{msgid:"Create new",msgstr:["새로 만들기"]},"estimating time left":{msgid:"estimating time left",msgstr:["남은 시간 계산"]},"Existing version":{msgid:"Existing version",msgstr:["현재 버전"]},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["두 파일을 모두 선택하면, 들어오는 파일의 이름에 번호가 추가됩니다."]},"Invalid file name":{msgid:"Invalid file name",msgstr:["잘못된 파일 이름"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["최근 수정일 알 수 없음"]},New:{msgid:"New",msgstr:["새로 만들기"]},"New version":{msgid:"New version",msgstr:["새 버전"]},paused:{msgid:"paused",msgstr:["일시정지됨"]},"Preview image":{msgid:"Preview image",msgstr:["미리보기 이미지"]},Rename:{msgid:"Rename",msgstr:["이름 바꾸기"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["모든 체크박스 선택"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["기존 파일을 모두 선택"]},"Select all new files":{msgid:"Select all new files",msgstr:["새로운 파일을 모두 선택"]},Skip:{msgid:"Skip",msgstr:["건너뛰기"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["{count}개의 파일 넘기기"]},"Unknown size":{msgid:"Unknown size",msgstr:["크기를 알 수 없음"]},"Upload files":{msgid:"Upload files",msgstr:["파일 업로드"]},"Upload folders":{msgid:"Upload folders",msgstr:["폴더 업로드"]},"Upload from device":{msgid:"Upload from device",msgstr:["장치에서 업로드"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["업로드가 취소되었습니다."]},"Upload progress":{msgid:"Upload progress",msgstr:["업로드 진행도"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["들어오는 폴더를 선택했다면, 충돌하는 내부 파일들은 덮어쓰기 됩니다."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["들어오는 폴더를 선택했다면 내용물이 그 기존 폴더 안에 작성되고, 전체적으로 충돌 해결을 수행합니다."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["어떤 파일을 보존하시겠습니까?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["계속하기 위해서는 한 파일에 최소 하나의 버전을 선택해야 합니다."]}}}}},{locale:"la",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Latin (https://www.transifex.com/nextcloud/teams/64236/la/)","Content-Type":"text/plain; charset=UTF-8",Language:"la","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Latin (https://www.transifex.com/nextcloud/teams/64236/la/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: la\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"lb",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Luxembourgish (https://www.transifex.com/nextcloud/teams/64236/lb/)","Content-Type":"text/plain; charset=UTF-8",Language:"lb","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Luxembourgish (https://www.transifex.com/nextcloud/teams/64236/lb/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: lb\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"lo",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Lao (https://www.transifex.com/nextcloud/teams/64236/lo/)","Content-Type":"text/plain; charset=UTF-8",Language:"lo","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Lao (https://www.transifex.com/nextcloud/teams/64236/lo/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: lo\nPlural-Forms: nplurals=1; plural=0;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"lt_LT",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Lithuanian (Lithuania) (https://www.transifex.com/nextcloud/teams/64236/lt_LT/)","Content-Type":"text/plain; charset=UTF-8",Language:"lt_LT","Plural-Forms":"nplurals=4; plural=(n % 10 == 1 && (n % 100 > 19 || n % 100 < 11) ? 0 : (n % 10 >= 2 && n % 10 <=9) && (n % 100 > 19 || n % 100 < 11) ? 1 : n % 1 != 0 ? 2: 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Lithuanian (Lithuania) (https://www.transifex.com/nextcloud/teams/64236/lt_LT/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: lt_LT\nPlural-Forms: nplurals=4; plural=(n % 10 == 1 && (n % 100 > 19 || n % 100 < 11) ? 0 : (n % 10 >= 2 && n % 10 <=9) && (n % 100 > 19 || n % 100 < 11) ? 1 : n % 1 != 0 ? 2: 3);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"lv",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Latvian (https://www.transifex.com/nextcloud/teams/64236/lv/)","Content-Type":"text/plain; charset=UTF-8",Language:"lv","Plural-Forms":"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Latvian (https://www.transifex.com/nextcloud/teams/64236/lv/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: lv\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"mk",json:{charset:"utf-8",headers:{"Last-Translator":"Сашко Тодоров , 2022","Language-Team":"Macedonian (https://www.transifex.com/nextcloud/teams/64236/mk/)","Content-Type":"text/plain; charset=UTF-8",Language:"mk","Plural-Forms":"nplurals=2; plural=(n % 10 == 1 && n % 100 != 11) ? 0 : 1;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nСашко Тодоров , 2022\n"},msgstr:["Last-Translator: Сашко Тодоров , 2022\nLanguage-Team: Macedonian (https://www.transifex.com/nextcloud/teams/64236/mk/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: mk\nPlural-Forms: nplurals=2; plural=(n % 10 == 1 && n % 100 != 11) ? 0 : 1;\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["преостануваат {seconds} секунди"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["преостанува {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["уште неколку секунди"]},Add:{msgid:"Add",msgstr:["Додади"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Прекини прикачување"]},"estimating time left":{msgid:"estimating time left",msgstr:["приближно преостанато време"]},paused:{msgid:"paused",msgstr:["паузирано"]},"Upload files":{msgid:"Upload files",msgstr:["Прикачување датотеки"]}}}}},{locale:"mn",json:{charset:"utf-8",headers:{"Last-Translator":"BATKHUYAG Ganbold, 2023","Language-Team":"Mongolian (https://app.transifex.com/nextcloud/teams/64236/mn/)","Content-Type":"text/plain; charset=UTF-8",Language:"mn","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nBATKHUYAG Ganbold, 2023\n"},msgstr:["Last-Translator: BATKHUYAG Ganbold, 2023\nLanguage-Team: Mongolian (https://app.transifex.com/nextcloud/teams/64236/mn/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: mn\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} секунд үлдсэн"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["{time} үлдсэн"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["хэдхэн секунд үлдсэн"]},Add:{msgid:"Add",msgstr:["Нэмэх"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Илгээлтийг цуцлах"]},"estimating time left":{msgid:"estimating time left",msgstr:["Үлдсэн хугацааг тооцоолж байна"]},paused:{msgid:"paused",msgstr:["түр зогсоосон"]},"Upload files":{msgid:"Upload files",msgstr:["Файл илгээх"]}}}}},{locale:"mr",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Marathi (https://www.transifex.com/nextcloud/teams/64236/mr/)","Content-Type":"text/plain; charset=UTF-8",Language:"mr","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Marathi (https://www.transifex.com/nextcloud/teams/64236/mr/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: mr\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"ms_MY",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Malay (Malaysia) (https://www.transifex.com/nextcloud/teams/64236/ms_MY/)","Content-Type":"text/plain; charset=UTF-8",Language:"ms_MY","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Malay (Malaysia) (https://www.transifex.com/nextcloud/teams/64236/ms_MY/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ms_MY\nPlural-Forms: nplurals=1; plural=0;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"my",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Burmese (https://www.transifex.com/nextcloud/teams/64236/my/)","Content-Type":"text/plain; charset=UTF-8",Language:"my","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Burmese (https://www.transifex.com/nextcloud/teams/64236/my/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: my\nPlural-Forms: nplurals=1; plural=0;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"nb_NO",json:{charset:"utf-8",headers:{"Last-Translator":"Syvert Fossdal, 2024","Language-Team":"Norwegian Bokmål (Norway) (https://app.transifex.com/nextcloud/teams/64236/nb_NO/)","Content-Type":"text/plain; charset=UTF-8",Language:"nb_NO","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ , 2023\nSyvert Fossdal, 2024\n"},msgstr:["Last-Translator: Syvert Fossdal, 2024\nLanguage-Team: Norwegian Bokmål (Norway) (https://app.transifex.com/nextcloud/teams/64236/nb_NO/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: nb_NO\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} file conflict","{count} filkonflikter"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} file conflict in {dirname}","{count} filkonflikter i {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} sekunder igjen"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} igjen"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["noen få sekunder igjen"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Avbryt opplastninger"]},Continue:{msgid:"Continue",msgstr:["Fortsett"]},"estimating time left":{msgid:"estimating time left",msgstr:["Estimerer tid igjen"]},"Existing version":{msgid:"Existing version",msgstr:["Gjeldende versjon"]},"If you select both versions, the copied file will have a number added to its name.":{msgid:"If you select both versions, the copied file will have a number added to its name.",msgstr:["Hvis du velger begge versjoner, vil den kopierte filen få et tall lagt til navnet."]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Siste gang redigert ukjent"]},New:{msgid:"New",msgstr:["Ny"]},"New version":{msgid:"New version",msgstr:["Ny versjon"]},paused:{msgid:"paused",msgstr:["pauset"]},"Preview image":{msgid:"Preview image",msgstr:["Forhåndsvis bilde"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Velg alle"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Velg alle eksisterende filer"]},"Select all new files":{msgid:"Select all new files",msgstr:["Velg alle nye filer"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Skip this file","Hopp over {count} filer"]},"Unknown size":{msgid:"Unknown size",msgstr:["Ukjent størrelse"]},"Upload cancelled":{msgid:"Upload cancelled",msgstr:["Opplasting avbrutt"]},"Upload files":{msgid:"Upload files",msgstr:["Last opp filer"]},"Upload progress":{msgid:"Upload progress",msgstr:["Fremdrift, opplasting"]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Hvilke filer vil du beholde?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Du må velge minst en versjon av hver fil for å fortsette."]}}}}},{locale:"ne",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Nepali (https://www.transifex.com/nextcloud/teams/64236/ne/)","Content-Type":"text/plain; charset=UTF-8",Language:"ne","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Nepali (https://www.transifex.com/nextcloud/teams/64236/ne/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ne\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"nl",json:{charset:"utf-8",headers:{"Last-Translator":"Rico , 2023","Language-Team":"Dutch (https://app.transifex.com/nextcloud/teams/64236/nl/)","Content-Type":"text/plain; charset=UTF-8",Language:"nl","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nRico , 2023\n"},msgstr:["Last-Translator: Rico , 2023\nLanguage-Team: Dutch (https://app.transifex.com/nextcloud/teams/64236/nl/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: nl\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["Nog {seconds} seconden"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["{seconds} over"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["Nog een paar seconden"]},Add:{msgid:"Add",msgstr:["Voeg toe"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Uploads annuleren"]},"estimating time left":{msgid:"estimating time left",msgstr:["Schatting van de resterende tijd"]},paused:{msgid:"paused",msgstr:["Gepauzeerd"]},"Upload files":{msgid:"Upload files",msgstr:["Upload bestanden"]}}}}},{locale:"nn",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Norwegian Nynorsk (https://www.transifex.com/nextcloud/teams/64236/nn/)","Content-Type":"text/plain; charset=UTF-8",Language:"nn","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Norwegian Nynorsk (https://www.transifex.com/nextcloud/teams/64236/nn/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: nn\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"nn_NO",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Norwegian Nynorsk (Norway) (https://www.transifex.com/nextcloud/teams/64236/nn_NO/)","Content-Type":"text/plain; charset=UTF-8",Language:"nn_NO","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Norwegian Nynorsk (Norway) (https://www.transifex.com/nextcloud/teams/64236/nn_NO/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: nn_NO\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"oc",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Occitan (post 1500) (https://www.transifex.com/nextcloud/teams/64236/oc/)","Content-Type":"text/plain; charset=UTF-8",Language:"oc","Plural-Forms":"nplurals=2; plural=(n > 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Occitan (post 1500) (https://www.transifex.com/nextcloud/teams/64236/oc/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: oc\nPlural-Forms: nplurals=2; plural=(n > 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"pl",json:{charset:"utf-8",headers:{"Last-Translator":"Piotr Strębski , 2024","Language-Team":"Polish (https://app.transifex.com/nextcloud/teams/64236/pl/)","Content-Type":"text/plain; charset=UTF-8",Language:"pl","Plural-Forms":"nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nPiotr Strębski , 2024\n"},msgstr:["Last-Translator: Piotr Strębski , 2024\nLanguage-Team: Polish (https://app.transifex.com/nextcloud/teams/64236/pl/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: pl\nPlural-Forms: nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);\n"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["konflikt 1 pliku","{count} konfliktów plików","{count} konfliktów plików","{count} konfliktów plików"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} konfliktowy plik w {dirname}","{count} konfliktowych plików w {dirname}","{count} konfliktowych plików w {dirname}","{count} konfliktowych plików w {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["Pozostało {seconds} sekund"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["Pozostało {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["Pozostało kilka sekund"]},Cancel:{msgid:"Cancel",msgstr:["Anuluj"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Anuluj całą operację"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Anuluj wysyłanie"]},Continue:{msgid:"Continue",msgstr:["Kontynuuj"]},"estimating time left":{msgid:"estimating time left",msgstr:["Szacowanie pozostałego czasu"]},"Existing version":{msgid:"Existing version",msgstr:["Istniejąca wersja"]},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Jeśli wybierzesz obie wersje, do nazwy pliku przychodzącego zostanie dodany numer."]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Nieznana data ostatniej modyfikacji"]},New:{msgid:"New",msgstr:["Nowy"]},"New version":{msgid:"New version",msgstr:["Nowa wersja"]},paused:{msgid:"paused",msgstr:["Wstrzymane"]},"Preview image":{msgid:"Preview image",msgstr:["Podgląd obrazu"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Zaznacz wszystkie boxy"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Zaznacz wszystkie istniejące pliki"]},"Select all new files":{msgid:"Select all new files",msgstr:["Zaznacz wszystkie nowe pliki"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Pomiń 1 plik","Pomiń {count} plików","Pomiń {count} plików","Pomiń {count} plików"]},"Unknown size":{msgid:"Unknown size",msgstr:["Nieznany rozmiar"]},"Upload cancelled":{msgid:"Upload cancelled",msgstr:["Anulowano wysyłanie"]},"Upload files":{msgid:"Upload files",msgstr:["Wyślij pliki"]},"Upload progress":{msgid:"Upload progress",msgstr:["Postęp wysyłania"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Po wybraniu folderu przychodzącego wszelkie znajdujące się w nim pliki powodujące konflikt również zostaną nadpisane."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Po wybraniu folderu przychodzącego zawartość jest zapisywana w istniejącym folderze i przeprowadzane jest rekursywne rozwiązywanie konfliktów."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Które pliki chcesz zachować?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Aby kontynuować, musisz wybrać co najmniej jedną wersję każdego pliku."]}}}}},{locale:"ps",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Pashto (https://www.transifex.com/nextcloud/teams/64236/ps/)","Content-Type":"text/plain; charset=UTF-8",Language:"ps","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Pashto (https://www.transifex.com/nextcloud/teams/64236/ps/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ps\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"pt_BR",json:{charset:"utf-8",headers:{"Last-Translator":"Leonardo Colman Lopes , 2024","Language-Team":"Portuguese (Brazil) (https://app.transifex.com/nextcloud/teams/64236/pt_BR/)","Content-Type":"text/plain; charset=UTF-8",Language:"pt_BR","Plural-Forms":"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nLeonardo Colman Lopes , 2024\n"},msgstr:["Last-Translator: Leonardo Colman Lopes , 2024\nLanguage-Team: Portuguese (Brazil) (https://app.transifex.com/nextcloud/teams/64236/pt_BR/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: pt_BR\nPlural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} arquivos em conflito","{count} arquivos em conflito","{count} arquivos em conflito"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} conflitos de arquivo em {dirname}","{count} conflitos de arquivo em {dirname}","{count} conflitos de arquivo em {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} segundos restantes"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} restante"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["alguns segundos restantes"]},Cancel:{msgid:"Cancel",msgstr:["Cancelar"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Cancelar a operação inteira"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Cancelar uploads"]},Continue:{msgid:"Continue",msgstr:["Continuar"]},"estimating time left":{msgid:"estimating time left",msgstr:["estimando tempo restante"]},"Existing version":{msgid:"Existing version",msgstr:["Versão existente"]},"If you select both versions, the copied file will have a number added to its name.":{msgid:"If you select both versions, the copied file will have a number added to its name.",msgstr:["Se você selecionar ambas as versões, o arquivo copiado terá um número adicionado ao seu nome."]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Data da última modificação desconhecida"]},New:{msgid:"New",msgstr:["Novo"]},"New version":{msgid:"New version",msgstr:["Nova versão"]},paused:{msgid:"paused",msgstr:["pausado"]},"Preview image":{msgid:"Preview image",msgstr:["Visualizar imagem"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Marque todas as caixas de seleção"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Selecione todos os arquivos existentes"]},"Select all new files":{msgid:"Select all new files",msgstr:["Selecione todos os novos arquivos"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Ignorar {count} arquivos","Ignorar {count} arquivos","Ignorar {count} arquivos"]},"Unknown size":{msgid:"Unknown size",msgstr:["Tamanho desconhecido"]},"Upload cancelled":{msgid:"Upload cancelled",msgstr:["Envio cancelado"]},"Upload files":{msgid:"Upload files",msgstr:["Enviar arquivos"]},"Upload progress":{msgid:"Upload progress",msgstr:["Envio em progresso"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Quando uma pasta é selecionada, quaisquer arquivos dentro dela também serão sobrescritos."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Quais arquivos você deseja manter?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Você precisa selecionar pelo menos uma versão de cada arquivo para continuar."]}}}}},{locale:"pt_PT",json:{charset:"utf-8",headers:{"Last-Translator":"Manuela Silva , 2022","Language-Team":"Portuguese (Portugal) (https://www.transifex.com/nextcloud/teams/64236/pt_PT/)","Content-Type":"text/plain; charset=UTF-8",Language:"pt_PT","Plural-Forms":"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nManuela Silva , 2022\n"},msgstr:["Last-Translator: Manuela Silva , 2022\nLanguage-Team: Portuguese (Portugal) (https://www.transifex.com/nextcloud/teams/64236/pt_PT/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: pt_PT\nPlural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["faltam {seconds} segundo(s)"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["faltam {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["faltam uns segundos"]},Add:{msgid:"Add",msgstr:["Adicionar"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Cancelar envios"]},"estimating time left":{msgid:"estimating time left",msgstr:["tempo em falta estimado"]},paused:{msgid:"paused",msgstr:["pausado"]},"Upload files":{msgid:"Upload files",msgstr:["Enviar ficheiros"]}}}}},{locale:"ro",json:{charset:"utf-8",headers:{"Last-Translator":"Mădălin Vasiliu , 2022","Language-Team":"Romanian (https://www.transifex.com/nextcloud/teams/64236/ro/)","Content-Type":"text/plain; charset=UTF-8",Language:"ro","Plural-Forms":"nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?2:1));"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nMădălin Vasiliu , 2022\n"},msgstr:["Last-Translator: Mădălin Vasiliu , 2022\nLanguage-Team: Romanian (https://www.transifex.com/nextcloud/teams/64236/ro/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ro\nPlural-Forms: nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?2:1));\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} secunde rămase"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["{time} rămas"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["câteva secunde rămase"]},Add:{msgid:"Add",msgstr:["Adaugă"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Anulați încărcările"]},"estimating time left":{msgid:"estimating time left",msgstr:["estimarea timpului rămas"]},paused:{msgid:"paused",msgstr:["pus pe pauză"]},"Upload files":{msgid:"Upload files",msgstr:["Încarcă fișiere"]}}}}},{locale:"ru",json:{charset:"utf-8",headers:{"Last-Translator":"Влад, 2024","Language-Team":"Russian (https://app.transifex.com/nextcloud/teams/64236/ru/)","Content-Type":"text/plain; charset=UTF-8",Language:"ru","Plural-Forms":"nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nAlex , 2024\nВлад, 2024\n"},msgstr:["Last-Translator: Влад, 2024\nLanguage-Team: Russian (https://app.transifex.com/nextcloud/teams/64236/ru/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ru\nPlural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\n"]},'"{filename}" contains invalid characters, how do you want to continue?':{msgid:'"{filename}" contains invalid characters, how do you want to continue?',msgstr:['"{filename}" содержит недопустимые символы, хотите продолжить?']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["конфликт {count} файла","конфликт {count} файлов","конфликт {count} файлов","конфликт {count} файлов"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["конфликт {count} файла в {dirname}","конфликт {count} файлов в {dirname}","конфликт {count} файлов в {dirname}","конфликт {count} файлов в {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["осталось {seconds} секунд"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["осталось {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["осталось несколько секунд"]},Cancel:{msgid:"Cancel",msgstr:["Отмена"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Отменить всю операцию целиком"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Отменить загрузки"]},Continue:{msgid:"Continue",msgstr:["Продолжить"]},"Create new":{msgid:"Create new",msgstr:["Создать новое"]},"estimating time left":{msgid:"estimating time left",msgstr:["оценка оставшегося времени"]},"Existing version":{msgid:"Existing version",msgstr:["Текущая версия"]},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Если вы выберете обе версии, к имени входящего файла будет добавлен номер."]},"Invalid file name":{msgid:"Invalid file name",msgstr:["Имя файла недопустимо"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Дата последнего изменения неизвестна"]},New:{msgid:"New",msgstr:["Новый"]},"New version":{msgid:"New version",msgstr:["Новая версия"]},paused:{msgid:"paused",msgstr:["приостановлено"]},"Preview image":{msgid:"Preview image",msgstr:["Предварительный просмотр"]},Rename:{msgid:"Rename",msgstr:["Переименовать"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Установить все флажки"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Выбрать все существующие файлы"]},"Select all new files":{msgid:"Select all new files",msgstr:["Выбрать все новые файлы"]},Skip:{msgid:"Skip",msgstr:["Пропуск"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Пропустить файл","Пропустить {count} файла","Пропустить {count} файлов","Пропустить {count} файлов"]},"Unknown size":{msgid:"Unknown size",msgstr:["Неизвестный размер"]},"Upload files":{msgid:"Upload files",msgstr:["Загрузка файлов"]},"Upload folders":{msgid:"Upload folders",msgstr:["Загрузка папок"]},"Upload from device":{msgid:"Upload from device",msgstr:["Загрузка с устройства"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Загрузка была отменена"]},"Upload progress":{msgid:"Upload progress",msgstr:["Состояние передачи на сервер"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Когда выбрана входящая папка, все конфликтующие файлы в ней также будут перезаписаны."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Когда выбрана входящая папка, содержимое записывается в существующую папку и выполняется рекурсивное разрешение конфликтов."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Какие файлы вы хотите сохранить?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Для продолжения вам нужно выбрать по крайней мере одну версию каждого файла."]}}}}},{locale:"ru_RU",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Russian (Russia) (https://www.transifex.com/nextcloud/teams/64236/ru_RU/)","Content-Type":"text/plain; charset=UTF-8",Language:"ru_RU","Plural-Forms":"nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Russian (Russia) (https://www.transifex.com/nextcloud/teams/64236/ru_RU/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ru_RU\nPlural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"sc",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Sardinian (https://www.transifex.com/nextcloud/teams/64236/sc/)","Content-Type":"text/plain; charset=UTF-8",Language:"sc","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Sardinian (https://www.transifex.com/nextcloud/teams/64236/sc/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sc\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"si",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Sinhala (https://www.transifex.com/nextcloud/teams/64236/si/)","Content-Type":"text/plain; charset=UTF-8",Language:"si","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Sinhala (https://www.transifex.com/nextcloud/teams/64236/si/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: si\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"si_LK",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Sinhala (Sri Lanka) (https://www.transifex.com/nextcloud/teams/64236/si_LK/)","Content-Type":"text/plain; charset=UTF-8",Language:"si_LK","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Sinhala (Sri Lanka) (https://www.transifex.com/nextcloud/teams/64236/si_LK/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: si_LK\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"sk_SK",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Slovak (Slovakia) (https://www.transifex.com/nextcloud/teams/64236/sk_SK/)","Content-Type":"text/plain; charset=UTF-8",Language:"sk_SK","Plural-Forms":"nplurals=4; plural=(n % 1 == 0 && n == 1 ? 0 : n % 1 == 0 && n >= 2 && n <= 4 ? 1 : n % 1 != 0 ? 2: 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Slovak (Slovakia) (https://www.transifex.com/nextcloud/teams/64236/sk_SK/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sk_SK\nPlural-Forms: nplurals=4; plural=(n % 1 == 0 && n == 1 ? 0 : n % 1 == 0 && n >= 2 && n <= 4 ? 1 : n % 1 != 0 ? 2: 3);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"sl",json:{charset:"utf-8",headers:{"Last-Translator":"Matej Urbančič <>, 2022","Language-Team":"Slovenian (https://www.transifex.com/nextcloud/teams/64236/sl/)","Content-Type":"text/plain; charset=UTF-8",Language:"sl","Plural-Forms":"nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nMatej Urbančič <>, 2022\n"},msgstr:["Last-Translator: Matej Urbančič <>, 2022\nLanguage-Team: Slovenian (https://www.transifex.com/nextcloud/teams/64236/sl/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sl\nPlural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["še {seconds} sekund"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["še {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["še nekaj sekund"]},Add:{msgid:"Add",msgstr:["Dodaj"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Prekliči pošiljanje"]},"estimating time left":{msgid:"estimating time left",msgstr:["ocenjen čas do konca"]},paused:{msgid:"paused",msgstr:["v premoru"]},"Upload files":{msgid:"Upload files",msgstr:["Pošlji datoteke"]}}}}},{locale:"sl_SI",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Slovenian (Slovenia) (https://www.transifex.com/nextcloud/teams/64236/sl_SI/)","Content-Type":"text/plain; charset=UTF-8",Language:"sl_SI","Plural-Forms":"nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Slovenian (Slovenia) (https://www.transifex.com/nextcloud/teams/64236/sl_SI/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sl_SI\nPlural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"sq",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Albanian (https://www.transifex.com/nextcloud/teams/64236/sq/)","Content-Type":"text/plain; charset=UTF-8",Language:"sq","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Albanian (https://www.transifex.com/nextcloud/teams/64236/sq/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sq\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"sr",json:{charset:"utf-8",headers:{"Last-Translator":"Иван Пешић, 2023","Language-Team":"Serbian (https://app.transifex.com/nextcloud/teams/64236/sr/)","Content-Type":"text/plain; charset=UTF-8",Language:"sr","Plural-Forms":"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ , 2023\nИван Пешић, 2023\n"},msgstr:["Last-Translator: Иван Пешић, 2023\nLanguage-Team: Serbian (https://app.transifex.com/nextcloud/teams/64236/sr/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sr\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} фајл конфликт","{count} фајл конфликта","{count} фајл конфликта"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} фајл конфликт у {dirname}","{count} фајл конфликта у {dirname}","{count} фајл конфликта у {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["преостало је {seconds} секунди"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} преостало"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["преостало је неколико секунди"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Обустави отпремања"]},Continue:{msgid:"Continue",msgstr:["Настави"]},"estimating time left":{msgid:"estimating time left",msgstr:["процена преосталог времена"]},"Existing version":{msgid:"Existing version",msgstr:["Постојећа верзија"]},"If you select both versions, the copied file will have a number added to its name.":{msgid:"If you select both versions, the copied file will have a number added to its name.",msgstr:["Ако изаберете обе верзије, на име копираног фајла ће се додати број."]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Није познат датум последње измене"]},New:{msgid:"New",msgstr:["Ново"]},"New version":{msgid:"New version",msgstr:["Нова верзија"]},paused:{msgid:"paused",msgstr:["паузирано"]},"Preview image":{msgid:"Preview image",msgstr:["Слика прегледа"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Штиклирај сва поља за штиклирање"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Изабери све постојеће фајлове"]},"Select all new files":{msgid:"Select all new files",msgstr:["Изабери све нове фајлове"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Прескочи овај фајл","Прескочи {count} фајла","Прескочи {count} фајлова"]},"Unknown size":{msgid:"Unknown size",msgstr:["Непозната величина"]},"Upload cancelled":{msgid:"Upload cancelled",msgstr:["Отпремање је отказано"]},"Upload files":{msgid:"Upload files",msgstr:["Отпреми фајлове"]},"Upload progress":{msgid:"Upload progress",msgstr:["Напредак отпремања"]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Које фајлове желите да задржите?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Морате да изаберете барем једну верзију сваког фајла да наставите."]}}}}},{locale:"sr@latin",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Serbian (Latin) (https://www.transifex.com/nextcloud/teams/64236/sr@latin/)","Content-Type":"text/plain; charset=UTF-8",Language:"sr@latin","Plural-Forms":"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Serbian (Latin) (https://www.transifex.com/nextcloud/teams/64236/sr@latin/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sr@latin\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"sv",json:{charset:"utf-8",headers:{"Last-Translator":"Magnus Höglund, 2024","Language-Team":"Swedish (https://app.transifex.com/nextcloud/teams/64236/sv/)","Content-Type":"text/plain; charset=UTF-8",Language:"sv","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nMagnus Höglund, 2024\n"},msgstr:["Last-Translator: Magnus Höglund, 2024\nLanguage-Team: Swedish (https://app.transifex.com/nextcloud/teams/64236/sv/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sv\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{filename}" contains invalid characters, how do you want to continue?':{msgid:'"{filename}" contains invalid characters, how do you want to continue?',msgstr:['"{filename}" innehåller ogiltiga tecken, hur vill du fortsätta?']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} filkonflikt","{count} filkonflikter"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} filkonflikt i {dirname}","{count} filkonflikter i {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} sekunder kvarstår"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} kvarstår"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["några sekunder kvar"]},Cancel:{msgid:"Cancel",msgstr:["Avbryt"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Avbryt hela operationen"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Avbryt uppladdningar"]},Continue:{msgid:"Continue",msgstr:["Fortsätt"]},"Create new":{msgid:"Create new",msgstr:["Skapa ny"]},"estimating time left":{msgid:"estimating time left",msgstr:["uppskattar kvarstående tid"]},"Existing version":{msgid:"Existing version",msgstr:["Nuvarande version"]},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Om du väljer båda versionerna kommer den inkommande filen att läggas till ett nummer i namnet."]},"Invalid file name":{msgid:"Invalid file name",msgstr:["Ogiltigt filnamn"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Senaste ändringsdatum okänt"]},New:{msgid:"New",msgstr:["Ny"]},"New version":{msgid:"New version",msgstr:["Ny version"]},paused:{msgid:"paused",msgstr:["pausad"]},"Preview image":{msgid:"Preview image",msgstr:["Förhandsgranska bild"]},Rename:{msgid:"Rename",msgstr:["Byt namn"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Markera alla kryssrutor"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Välj alla befintliga filer"]},"Select all new files":{msgid:"Select all new files",msgstr:["Välj alla nya filer"]},Skip:{msgid:"Skip",msgstr:["Hoppa över"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Hoppa över denna fil","Hoppa över {count} filer"]},"Unknown size":{msgid:"Unknown size",msgstr:["Okänd storlek"]},"Upload files":{msgid:"Upload files",msgstr:["Ladda upp filer"]},"Upload folders":{msgid:"Upload folders",msgstr:["Ladda upp mappar"]},"Upload from device":{msgid:"Upload from device",msgstr:["Ladda upp från enhet"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Uppladdningen har avbrutits"]},"Upload progress":{msgid:"Upload progress",msgstr:["Uppladdningsförlopp"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["När en inkommande mapp väljs skrivs även alla konfliktande filer i den över."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["När en inkommande mapp väljs skrivs innehållet in i den befintliga mappen och en rekursiv konfliktlösning utförs."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Vilka filer vill du behålla?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Du måste välja minst en version av varje fil för att fortsätta."]}}}}},{locale:"sw",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Swahili (https://www.transifex.com/nextcloud/teams/64236/sw/)","Content-Type":"text/plain; charset=UTF-8",Language:"sw","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Swahili (https://www.transifex.com/nextcloud/teams/64236/sw/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sw\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"ta",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Tamil (https://www.transifex.com/nextcloud/teams/64236/ta/)","Content-Type":"text/plain; charset=UTF-8",Language:"ta","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Tamil (https://www.transifex.com/nextcloud/teams/64236/ta/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ta\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"ta_LK",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Tamil (Sri-Lanka) (https://www.transifex.com/nextcloud/teams/64236/ta_LK/)","Content-Type":"text/plain; charset=UTF-8",Language:"ta_LK","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Tamil (Sri-Lanka) (https://www.transifex.com/nextcloud/teams/64236/ta_LK/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ta_LK\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"th",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Thai (https://www.transifex.com/nextcloud/teams/64236/th/)","Content-Type":"text/plain; charset=UTF-8",Language:"th","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Thai (https://www.transifex.com/nextcloud/teams/64236/th/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: th\nPlural-Forms: nplurals=1; plural=0;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"th_TH",json:{charset:"utf-8",headers:{"Last-Translator":"Phongpanot Phairat , 2022","Language-Team":"Thai (Thailand) (https://www.transifex.com/nextcloud/teams/64236/th_TH/)","Content-Type":"text/plain; charset=UTF-8",Language:"th_TH","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nPhongpanot Phairat , 2022\n"},msgstr:["Last-Translator: Phongpanot Phairat , 2022\nLanguage-Team: Thai (Thailand) (https://www.transifex.com/nextcloud/teams/64236/th_TH/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: th_TH\nPlural-Forms: nplurals=1; plural=0;\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["เหลืออีก {seconds} วินาที"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["เหลืออีก {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["เหลืออีกไม่กี่วินาที"]},Add:{msgid:"Add",msgstr:["เพิ่ม"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["ยกเลิกการอัปโหลด"]},"estimating time left":{msgid:"estimating time left",msgstr:["กำลังคำนวณเวลาที่เหลือ"]},paused:{msgid:"paused",msgstr:["หยุดชั่วคราว"]},"Upload files":{msgid:"Upload files",msgstr:["อัปโหลดไฟล์"]}}}}},{locale:"tk",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Turkmen (https://www.transifex.com/nextcloud/teams/64236/tk/)","Content-Type":"text/plain; charset=UTF-8",Language:"tk","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Turkmen (https://www.transifex.com/nextcloud/teams/64236/tk/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: tk\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"tr",json:{charset:"utf-8",headers:{"Last-Translator":"Kaya Zeren , 2024","Language-Team":"Turkish (https://app.transifex.com/nextcloud/teams/64236/tr/)","Content-Type":"text/plain; charset=UTF-8",Language:"tr","Plural-Forms":"nplurals=2; plural=(n > 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nKaya Zeren , 2024\n"},msgstr:["Last-Translator: Kaya Zeren , 2024\nLanguage-Team: Turkish (https://app.transifex.com/nextcloud/teams/64236/tr/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: tr\nPlural-Forms: nplurals=2; plural=(n > 1);\n"]},'"{filename}" contains invalid characters, how do you want to continue?':{msgid:'"{filename}" contains invalid characters, how do you want to continue?',msgstr:['"{filename}" içinde geçersiz karakterler var. Nasıl ilerlemek istersiniz?']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} dosya çakışması var","{count} dosya çakışması var"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{dirname} klasöründe {count} dosya çakışması var","{dirname} klasöründe {count} dosya çakışması var"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} saniye kaldı"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} kaldı"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["bir kaç saniye kaldı"]},Cancel:{msgid:"Cancel",msgstr:["İptal"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Tüm işlemi iptal et"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Yüklemeleri iptal et"]},Continue:{msgid:"Continue",msgstr:["İlerle"]},"Create new":{msgid:"Create new",msgstr:["Yeni ekle"]},"estimating time left":{msgid:"estimating time left",msgstr:["öngörülen kalan süre"]},"Existing version":{msgid:"Existing version",msgstr:["Var olan sürüm"]},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["İki sürümü de seçerseniz, gelen dosyanın adına bir sayı eklenir."]},"Invalid file name":{msgid:"Invalid file name",msgstr:["Dosya adı geçersiz"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Son değiştirilme tarihi bilinmiyor"]},New:{msgid:"New",msgstr:["Yeni"]},"New version":{msgid:"New version",msgstr:["Yeni sürüm"]},paused:{msgid:"paused",msgstr:["duraklatıldı"]},"Preview image":{msgid:"Preview image",msgstr:["Görsel ön izlemesi"]},Rename:{msgid:"Rename",msgstr:["Yeniden adlandır"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Tüm kutuları işaretle"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Tüm var olan dosyaları seç"]},"Select all new files":{msgid:"Select all new files",msgstr:["Tüm yeni dosyaları seç"]},Skip:{msgid:"Skip",msgstr:["Atla"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Bu dosyayı atla","{count} dosyayı atla"]},"Unknown size":{msgid:"Unknown size",msgstr:["Boyut bilinmiyor"]},"Upload files":{msgid:"Upload files",msgstr:["Dosyaları yükle"]},"Upload folders":{msgid:"Upload folders",msgstr:["Klasörleri yükle"]},"Upload from device":{msgid:"Upload from device",msgstr:["Aygıttan yükle"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Yükleme iptal edildi"]},"Upload progress":{msgid:"Upload progress",msgstr:["Yükleme ilerlemesi"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Bir gelen klasör seçildiğinde, içindeki çakışan dosyaların da üzerine yazılır."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Bir gelen klasörü seçildiğinde içerik var olan klasöre yazılır ve yinelemeli bir çakışma çözümü uygulanır."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Hangi dosyaları tutmak istiyorsunuz?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["İlerlemek için her dosyanın en az bir sürümünü seçmelisiniz."]}}}}},{locale:"ug",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Uyghur (https://www.transifex.com/nextcloud/teams/64236/ug/)","Content-Type":"text/plain; charset=UTF-8",Language:"ug","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Uyghur (https://www.transifex.com/nextcloud/teams/64236/ug/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ug\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"uk",json:{charset:"utf-8",headers:{"Last-Translator":"O St , 2024","Language-Team":"Ukrainian (https://app.transifex.com/nextcloud/teams/64236/uk/)","Content-Type":"text/plain; charset=UTF-8",Language:"uk","Plural-Forms":"nplurals=4; plural=(n % 1 == 0 && n % 10 == 1 && n % 100 != 11 ? 0 : n % 1 == 0 && n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 12 || n % 100 > 14) ? 1 : n % 1 == 0 && (n % 10 ==0 || (n % 10 >=5 && n % 10 <=9) || (n % 100 >=11 && n % 100 <=14 )) ? 2: 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nO St , 2024\n"},msgstr:["Last-Translator: O St , 2024\nLanguage-Team: Ukrainian (https://app.transifex.com/nextcloud/teams/64236/uk/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: uk\nPlural-Forms: nplurals=4; plural=(n % 1 == 0 && n % 10 == 1 && n % 100 != 11 ? 0 : n % 1 == 0 && n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 12 || n % 100 > 14) ? 1 : n % 1 == 0 && (n % 10 ==0 || (n % 10 >=5 && n % 10 <=9) || (n % 100 >=11 && n % 100 <=14 )) ? 2: 3);\n"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} конфліктний файл","{count} конфліктних файли","{count} конфліктних файлів","{count} конфліктних файлів"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} конфліктний файл у каталозі {dirname}","{count} конфліктних файли у каталозі {dirname}","{count} конфліктних файлів у каталозі {dirname}","{count} конфліктних файлів у каталозі {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["Залишилося {seconds} секунд"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["Залишилося {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["залишилося кілька секунд"]},Cancel:{msgid:"Cancel",msgstr:["Скасувати"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Скасувати операцію повністю"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Скасувати завантаження"]},Continue:{msgid:"Continue",msgstr:["Продовжити"]},"estimating time left":{msgid:"estimating time left",msgstr:["оцінка часу, що залишився"]},"Existing version":{msgid:"Existing version",msgstr:["Присутня версія"]},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Якщо буде вибрано обидві версії, до імени вхідного файлу було додано цифру."]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Дата останньої зміни невідома"]},New:{msgid:"New",msgstr:["Нове"]},"New version":{msgid:"New version",msgstr:["Нова версія"]},paused:{msgid:"paused",msgstr:["призупинено"]},"Preview image":{msgid:"Preview image",msgstr:["Попередній перегляд"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Вибрати все"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Вибрати усі присутні файли"]},"Select all new files":{msgid:"Select all new files",msgstr:["Вибрати усі нові файли"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Пропустити файл","Пропустити {count} файли","Пропустити {count} файлів","Пропустити {count} файлів"]},"Unknown size":{msgid:"Unknown size",msgstr:["Невідомий розмір"]},"Upload cancelled":{msgid:"Upload cancelled",msgstr:["Завантаження скасовано"]},"Upload files":{msgid:"Upload files",msgstr:["Завантажити файли"]},"Upload progress":{msgid:"Upload progress",msgstr:["Поступ завантаження"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Усі конфліктні файли у вибраному каталозі призначення буде перезаписано поверх."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Якщо буде вибрано вхідний каталог, вміст буде записано до наявного каталогу та вирішено конфлікти у відповідних файлах каталогу та підкаталогів."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Які файли залишити?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Для продовження потрібно вибрати принаймні одну версію для кожного файлу."]}}}}},{locale:"ur_PK",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Urdu (Pakistan) (https://www.transifex.com/nextcloud/teams/64236/ur_PK/)","Content-Type":"text/plain; charset=UTF-8",Language:"ur_PK","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Urdu (Pakistan) (https://www.transifex.com/nextcloud/teams/64236/ur_PK/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ur_PK\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"uz",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Uzbek (https://www.transifex.com/nextcloud/teams/64236/uz/)","Content-Type":"text/plain; charset=UTF-8",Language:"uz","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Uzbek (https://www.transifex.com/nextcloud/teams/64236/uz/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: uz\nPlural-Forms: nplurals=1; plural=0;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"vi",json:{charset:"utf-8",headers:{"Last-Translator":"Tung DangQuang, 2023","Language-Team":"Vietnamese (https://app.transifex.com/nextcloud/teams/64236/vi/)","Content-Type":"text/plain; charset=UTF-8",Language:"vi","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ , 2023\nTung DangQuang, 2023\n"},msgstr:["Last-Translator: Tung DangQuang, 2023\nLanguage-Team: Vietnamese (https://app.transifex.com/nextcloud/teams/64236/vi/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: vi\nPlural-Forms: nplurals=1; plural=0;\n"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} Tập tin xung đột"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} tập tin lỗi trong {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["Còn {second} giây"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["Còn lại {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["Còn lại một vài giây"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Huỷ tải lên"]},Continue:{msgid:"Continue",msgstr:["Tiếp Tục"]},"estimating time left":{msgid:"estimating time left",msgstr:["Thời gian còn lại dự kiến"]},"Existing version":{msgid:"Existing version",msgstr:["Phiên Bản Hiện Tại"]},"If you select both versions, the copied file will have a number added to its name.":{msgid:"If you select both versions, the copied file will have a number added to its name.",msgstr:["Nếu bạn chọn cả hai phiên bản, tệp được sao chép sẽ có thêm một số vào tên của nó."]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Ngày sửa dổi lần cuối không xác định"]},New:{msgid:"New",msgstr:["Tạo Mới"]},"New version":{msgid:"New version",msgstr:["Phiên Bản Mới"]},paused:{msgid:"paused",msgstr:["đã tạm dừng"]},"Preview image":{msgid:"Preview image",msgstr:["Xem Trước Ảnh"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Chọn tất cả hộp checkbox"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Chọn tất cả các tập tin có sẵn"]},"Select all new files":{msgid:"Select all new files",msgstr:["Chọn tất cả các tập tin mới"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Bỏ Qua {count} tập tin"]},"Unknown size":{msgid:"Unknown size",msgstr:["Không rõ dung lượng"]},"Upload cancelled":{msgid:"Upload cancelled",msgstr:["Dừng Tải Lên"]},"Upload files":{msgid:"Upload files",msgstr:["Tập tin tải lên"]},"Upload progress":{msgid:"Upload progress",msgstr:["Đang Tải Lên"]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Bạn muốn giữ tập tin nào?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Bạn cần chọn ít nhất một phiên bản tập tin mới có thể tiếp tục"]}}}}},{locale:"zh_CN",json:{charset:"utf-8",headers:{"Last-Translator":"Hongbo Chen, 2023","Language-Team":"Chinese (China) (https://app.transifex.com/nextcloud/teams/64236/zh_CN/)","Content-Type":"text/plain; charset=UTF-8",Language:"zh_CN","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ , 2023\nHongbo Chen, 2023\n"},msgstr:["Last-Translator: Hongbo Chen, 2023\nLanguage-Team: Chinese (China) (https://app.transifex.com/nextcloud/teams/64236/zh_CN/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: zh_CN\nPlural-Forms: nplurals=1; plural=0;\n"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count}文件冲突"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["在{dirname}目录下有{count}个文件冲突"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["剩余 {seconds} 秒"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["剩余 {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["还剩几秒"]},Add:{msgid:"Add",msgstr:["添加"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["取消上传"]},Continue:{msgid:"Continue",msgstr:["继续"]},"estimating time left":{msgid:"estimating time left",msgstr:["估计剩余时间"]},"Existing version":{msgid:"Existing version",msgstr:["版本已存在"]},"If you select both versions, the copied file will have a number added to its name.":{msgid:"If you select both versions, the copied file will have a number added to its name.",msgstr:["如果选择所有的版本,新增版本的文件名为原文件名加数字"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["文件最后修改日期未知"]},"New version":{msgid:"New version",msgstr:["新版本"]},paused:{msgid:"paused",msgstr:["已暂停"]},"Preview image":{msgid:"Preview image",msgstr:["图片预览"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["选择所有的选择框"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["选择所有存在的文件"]},"Select all new files":{msgid:"Select all new files",msgstr:["选择所有的新文件"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["跳过{count}个文件"]},"Unknown size":{msgid:"Unknown size",msgstr:["文件大小未知"]},"Upload cancelled":{msgid:"Upload cancelled",msgstr:["取消上传"]},"Upload files":{msgid:"Upload files",msgstr:["上传文件"]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["你要保留哪些文件?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["每个文件至少选择一个版本"]}}}}},{locale:"zh_HK",json:{charset:"utf-8",headers:{"Last-Translator":"Café Tango, 2024","Language-Team":"Chinese (Hong Kong) (https://app.transifex.com/nextcloud/teams/64236/zh_HK/)","Content-Type":"text/plain; charset=UTF-8",Language:"zh_HK","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nCafé Tango, 2024\n"},msgstr:["Last-Translator: Café Tango, 2024\nLanguage-Team: Chinese (Hong Kong) (https://app.transifex.com/nextcloud/teams/64236/zh_HK/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: zh_HK\nPlural-Forms: nplurals=1; plural=0;\n"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} 個檔案衝突"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{dirname} 中有 {count} 個檔案衝突"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["剩餘 {seconds} 秒"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["剩餘 {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["還剩幾秒"]},Cancel:{msgid:"Cancel",msgstr:["取消"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["取消整個操作"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["取消上傳"]},Continue:{msgid:"Continue",msgstr:["繼續"]},"estimating time left":{msgid:"estimating time left",msgstr:["估計剩餘時間"]},"Existing version":{msgid:"Existing version",msgstr:["既有版本"]},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["若您選取兩個版本,傳入檔案的名稱將會新增編號。"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["最後修改日期不詳"]},New:{msgid:"New",msgstr:["新增"]},"New version":{msgid:"New version",msgstr:["新版本 "]},paused:{msgid:"paused",msgstr:["已暫停"]},"Preview image":{msgid:"Preview image",msgstr:["預覽圖片"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["選取所有核取方塊"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["選取所有既有檔案"]},"Select all new files":{msgid:"Select all new files",msgstr:["選取所有新檔案"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["略過 {count} 個檔案"]},"Unknown size":{msgid:"Unknown size",msgstr:["大小不詳"]},"Upload cancelled":{msgid:"Upload cancelled",msgstr:["已取消上傳"]},"Upload files":{msgid:"Upload files",msgstr:["上傳檔案"]},"Upload progress":{msgid:"Upload progress",msgstr:["上傳進度"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["選取傳入資料夾後,其中任何的衝突檔案都會被覆寫。"]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["選擇傳入資料夾後,內容將寫入現有資料夾並執行遞歸衝突解決。"]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["您想保留哪些檔案?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["您必須為每個檔案都至少選取一個版本以繼續。"]}}}}},{locale:"zh_TW",json:{charset:"utf-8",headers:{"Last-Translator":"黃柏諺 , 2024","Language-Team":"Chinese (Taiwan) (https://app.transifex.com/nextcloud/teams/64236/zh_TW/)","Content-Type":"text/plain; charset=UTF-8",Language:"zh_TW","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\n黃柏諺 , 2024\n"},msgstr:["Last-Translator: 黃柏諺 , 2024\nLanguage-Team: Chinese (Taiwan) (https://app.transifex.com/nextcloud/teams/64236/zh_TW/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: zh_TW\nPlural-Forms: nplurals=1; plural=0;\n"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} 個檔案衝突"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{dirname} 中有 {count} 個檔案衝突"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["剩餘 {seconds} 秒"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["剩餘 {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["還剩幾秒"]},Cancel:{msgid:"Cancel",msgstr:["取消"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["取消整個操作"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["取消上傳"]},Continue:{msgid:"Continue",msgstr:["繼續"]},"estimating time left":{msgid:"estimating time left",msgstr:["估計剩餘時間"]},"Existing version":{msgid:"Existing version",msgstr:["既有版本"]},"If you select both versions, the copied file will have a number added to its name.":{msgid:"If you select both versions, the copied file will have a number added to its name.",msgstr:["若您選取兩個版本,複製的檔案的名稱將會新增編號。"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["最後修改日期未知"]},New:{msgid:"New",msgstr:["新增"]},"New version":{msgid:"New version",msgstr:["新版本"]},paused:{msgid:"paused",msgstr:["已暫停"]},"Preview image":{msgid:"Preview image",msgstr:["預覽圖片"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["選取所有核取方塊"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["選取所有既有檔案"]},"Select all new files":{msgid:"Select all new files",msgstr:["選取所有新檔案"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["略過 {count} 檔案"]},"Unknown size":{msgid:"Unknown size",msgstr:["未知大小"]},"Upload cancelled":{msgid:"Upload cancelled",msgstr:["已取消上傳"]},"Upload files":{msgid:"Upload files",msgstr:["上傳檔案"]},"Upload progress":{msgid:"Upload progress",msgstr:["上傳進度"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["選取傳入資料夾後,其中任何的衝突檔案都會被覆寫。"]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["您想保留哪些檔案?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["您必須為每個檔案都至少選取一個版本以繼續。"]}}}}}].map((e=>he.addTranslation(e.locale,e.json)));const we=he.build(),Te=we.ngettext.bind(we),ve=we.gettext.bind(we),xe=(0,Z.YK)().setApp("@nextcloud/upload").detectUser().build();var ye=(e=>(e[e.IDLE=0]="IDLE",e[e.UPLOADING=1]="UPLOADING",e[e.PAUSED=2]="PAUSED",e))(ye||{});class Ce{_destinationFolder;_isPublic;_uploadQueue=[];_jobQueue=new E({concurrency:3});_queueSize=0;_queueProgress=0;_queueStatus=0;_notifiers=[];constructor(e=!1,s){if(this._isPublic=e,!s){const t=(0,C.join)(x.PY,x.lJ);let n;if(e)n="anonymous";else{const e=(0,v.HW)()?.uid;if(!e)throw new Error("User is not logged in");n=e}s=new x.vd({id:0,owner:n,permissions:x.aX.ALL,root:x.lJ,source:t})}this.destination=s,this._jobQueue.addListener("idle",(()=>this.reset())),xe.debug("Upload workspace initialized",{destination:this.destination,root:this.root,isPublic:e,maxChunksSize:ge()})}get destination(){return this._destinationFolder}set destination(e){if(!e)throw new Error("Invalid destination folder");xe.debug("Destination set",{folder:e}),this._destinationFolder=e}get root(){return this._destinationFolder.source}get queue(){return this._uploadQueue}reset(){this._uploadQueue.splice(0,this._uploadQueue.length),this._jobQueue.clear(),this._queueSize=0,this._queueProgress=0,this._queueStatus=0}pause(){this._jobQueue.pause(),this._queueStatus=2}start(){this._jobQueue.start(),this._queueStatus=1,this.updateStats()}get info(){return{size:this._queueSize,progress:this._queueProgress,status:this._queueStatus}}updateStats(){const e=this._uploadQueue.map((e=>e.size)).reduce(((e,s)=>e+s),0),s=this._uploadQueue.map((e=>e.uploaded)).reduce(((e,s)=>e+s),0);this._queueSize=e,this._queueProgress=s,2!==this._queueStatus&&(this._queueStatus=this._jobQueue.size>0?1:0)}addNotifier(e){this._notifiers.push(e)}_notifyAll(e){for(const s of this._notifiers)try{s(e)}catch(s){xe.warn("Error in upload notifier",{error:s,source:e.source})}}batchUpload(e,s,t){const n=new pe("",s);t||(t=async e=>e);try{return this._jobQueue.concurrency+=1,new S((async(s,a,i)=>{try{const a=await this._jobQueue.add((()=>{const s=this.uploadDirectory(e,n,t,(0,x.H4)(this.root));return i((()=>s.cancel())),s}));a&&s(a)}catch(e){xe.error("Error in batch upload",{error:e})}a(ve("Upload has been cancelled"))}))}finally{this._jobQueue.concurrency-=1}}uploadDirectory(e,s,t,n){const a=(0,C.normalize)(`${e}/${s.name}`).replace(/\/$/,""),i=`${this.root.replace(/\/$/,"")}/${a.replace(/^\//,"")}`;return new S((async(e,l,r)=>{const o=new AbortController;r((()=>o.abort()));const m=await t(s.children,a);if(!1===m)return void l(ve("Upload has been cancelled"));const d=[],c=[],g=new fe(i,!1,0,s);g.signal.addEventListener("abort",(()=>l(ve("Upload has been cancelled")))),g.status=ue.UPLOADING;try{if(s.name)try{await n.createDirectory(a,{signal:o.signal}),c.push(new S((e=>e(g)))),this._uploadQueue.push(g)}catch(e){if(!e||"object"!=typeof e||!("status"in e)||405!==e.status)throw e;xe.debug("Directory already exists, writing into it",{directory:s.name})}for(const e of m)e instanceof pe?d.push(this.uploadDirectory(a,e,t,n)):c.push(this.upload(`${a}/${e.name}`,e));o.signal.addEventListener("abort",(()=>{c.forEach((e=>e.cancel())),d.forEach((e=>e.cancel()))}));const i=await Promise.all(c),l=await Promise.all(d);g.status=ue.FINISHED,e([i,...l].flat())}catch(e){o.abort(e),g.status=ue.FAILED,l(e)}finally{s.name&&(this._notifyAll(g),this.updateStats())}}))}upload(e,s,t,n=5){const a=`${(t=t||this.root).replace(/\/$/,"")}/${e.replace(/^\//,"")}`,{origin:i}=new URL(a),l=i+(0,y.O0)(a.slice(i.length));return xe.debug(`Uploading ${s.name} to ${l}`),new S((async(e,t,i)=>{oe(s)&&(s=await new Promise((e=>s.file(e,t))));const r=s,o=ge("size"in r?r.size:void 0),m=this._isPublic||0===o||"size"in r&&r.size{try{d.response=await de(l,s,d.signal,(e=>{d.uploaded=d.uploaded+e.bytes,this.updateStats()}),void 0,{"X-OC-Mtime":r.lastModified/1e3,"Content-Type":r.type}),d.uploaded=d.size,this.updateStats(),xe.debug(`Successfully uploaded ${r.name}`,{file:r,upload:d}),e(d)}catch(e){if((0,L.FZ)(e))return d.status=ue.FAILED,void t(ve("Upload has been cancelled"));e?.response&&(d.response=e.response),d.status=ue.FAILED,xe.error(`Failed uploading ${r.name}`,{error:e,file:r,upload:d}),t("Failed uploading the file")}this._notifyAll(d)};this._jobQueue.add(n),this.updateStats()}else{xe.debug("Initializing chunked upload",{file:r,upload:d});const s=await async function(e,s=5){const t=`${(0,B.dC)(`dav/uploads/${(0,v.HW)()?.uid}`)}/web-file-upload-${[...Array(16)].map((()=>Math.floor(16*Math.random()).toString(16))).join("")}`,n=e?{Destination:e}:void 0;return await L.Ay.request({method:"MKCOL",url:t,headers:n,"axios-retry":{retries:s,retryDelay:(e,s)=>G.exponentialDelay(e,s,1e3)}}),t}(l,n),a=[];for(let e=0;ece(r,t,o),c=()=>de(`${s}/${e+1}`,m,d.signal,(()=>this.updateStats()),l,{"X-OC-Mtime":r.lastModified/1e3,"OC-Total-Length":r.size,"Content-Type":"application/octet-stream"},n).then((()=>{d.uploaded=d.uploaded+o})).catch((s=>{if(507===s?.response?.status)throw xe.error("Upload failed, not enough space on the server or quota exceeded. Cancelling the remaining chunks",{error:s,upload:d}),d.cancel(),d.status=ue.FAILED,s;throw(0,L.FZ)(s)||(xe.error(`Chunk ${e+1} ${t} - ${i} uploading failed`,{error:s,upload:d}),d.cancel(),d.status=ue.FAILED),s}));a.push(this._jobQueue.add(c))}try{await Promise.all(a),this.updateStats(),d.response=await L.Ay.request({method:"MOVE",url:`${s}/.file`,headers:{"X-OC-Mtime":r.lastModified/1e3,"OC-Total-Length":r.size,Destination:l}}),this.updateStats(),d.status=ue.FINISHED,xe.debug(`Successfully uploaded ${r.name}`,{file:r,upload:d}),e(d)}catch(e){(0,L.FZ)(e)?(d.status=ue.FAILED,t(ve("Upload has been cancelled"))):(d.status=ue.FAILED,t("Failed assembling the chunks together")),L.Ay.request({method:"DELETE",url:`${s}`})}this._notifyAll(d)}return d}))}}function Le(e,s,t,n,a,i,l,r){var o,m="function"==typeof e?e.options:e;if(s&&(m.render=s,m.staticRenderFns=t,m._compiled=!0),n&&(m.functional=!0),i&&(m._scopeId="data-v-"+i),l?(o=function(e){(e=e||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext)||"undefined"==typeof __VUE_SSR_CONTEXT__||(e=__VUE_SSR_CONTEXT__),a&&a.call(this,e),e&&e._registeredComponents&&e._registeredComponents.add(l)},m._ssrRegister=o):a&&(o=r?function(){a.call(this,(m.functional?this.parent:this).$root.$options.shadowRoot)}:a),o)if(m.functional){m._injectStyles=o;var d=m.render;m.render=function(e,s){return o.call(s),d(e,s)}}else{var c=m.beforeCreate;m.beforeCreate=c?[].concat(c,o):[o]}return{exports:e,options:m}}const ke=Le({name:"CancelIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},(function(){var e=this,s=e._self._c;return s("span",e._b({staticClass:"material-design-icon cancel-icon",attrs:{"aria-hidden":!e.title||null,"aria-label":e.title,role:"img"},on:{click:function(s){return e.$emit("click",s)}}},"span",e.$attrs,!1),[s("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[s("path",{attrs:{d:"M12 2C17.5 2 22 6.5 22 12S17.5 22 12 22 2 17.5 2 12 6.5 2 12 2M12 4C10.1 4 8.4 4.6 7.1 5.7L18.3 16.9C19.3 15.5 20 13.8 20 12C20 7.6 16.4 4 12 4M16.9 18.3L5.7 7.1C4.6 8.4 4 10.1 4 12C4 16.4 7.6 20 12 20C13.9 20 15.6 19.4 16.9 18.3Z"}},[e.title?s("title",[e._v(e._s(e.title))]):e._e()])])])}),[],!1,null,null,null,null).exports,be=Le({name:"FolderUploadIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},(function(){var e=this,s=e._self._c;return s("span",e._b({staticClass:"material-design-icon folder-upload-icon",attrs:{"aria-hidden":!e.title||null,"aria-label":e.title,role:"img"},on:{click:function(s){return e.$emit("click",s)}}},"span",e.$attrs,!1),[s("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[s("path",{attrs:{d:"M20,6A2,2 0 0,1 22,8V18A2,2 0 0,1 20,20H4A2,2 0 0,1 2,18V6A2,2 0 0,1 4,4H10L12,6H20M10.75,13H14V17H16V13H19.25L15,8.75"}},[e.title?s("title",[e._v(e._s(e.title))]):e._e()])])])}),[],!1,null,null,null,null).exports,Se=Le({name:"PlusIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},(function(){var e=this,s=e._self._c;return s("span",e._b({staticClass:"material-design-icon plus-icon",attrs:{"aria-hidden":!e.title||null,"aria-label":e.title,role:"img"},on:{click:function(s){return e.$emit("click",s)}}},"span",e.$attrs,!1),[s("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[s("path",{attrs:{d:"M19,13H13V19H11V13H5V11H11V5H13V11H19V13Z"}},[e.title?s("title",[e._v(e._s(e.title))]):e._e()])])])}),[],!1,null,null,null,null).exports,_e=Le({name:"UploadIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},(function(){var e=this,s=e._self._c;return s("span",e._b({staticClass:"material-design-icon upload-icon",attrs:{"aria-hidden":!e.title||null,"aria-label":e.title,role:"img"},on:{click:function(s){return e.$emit("click",s)}}},"span",e.$attrs,!1),[s("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[s("path",{attrs:{d:"M9,16V10H5L12,3L19,10H15V16H9M5,20V18H19V20H5Z"}},[e.title?s("title",[e._v(e._s(e.title))]):e._e()])])])}),[],!1,null,null,null,null).exports,Ae=T.Ay.extend({name:"UploadPicker",components:{IconCancel:ke,IconFolderUpload:be,IconPlus:Se,IconUpload:_e,NcActionButton:se.A,NcActionCaption:te.A,NcActionSeparator:ne.A,NcActions:ae.A,NcButton:ie.A,NcIconSvgWrapper:le.A,NcProgressBar:re.A},props:{accept:{type:Array,default:null},disabled:{type:Boolean,default:!1},multiple:{type:Boolean,default:!1},destination:{type:x.vd,default:void 0},allowFolders:{type:Boolean,default:!1},content:{type:[Array,Function],default:()=>[]},forbiddenCharacters:{type:Array,default:()=>[]}},setup:()=>({t:ve,progressTimeId:`nc-uploader-progress-${Math.random().toString(36).slice(7)}`}),data:()=>({eta:null,timeLeft:"",currentContent:[],newFileMenuEntries:[],uploadManager:Fe()}),computed:{menuEntriesUpload(){return this.newFileMenuEntries.filter((e=>e.category===x.a7.UploadFromDevice))},menuEntriesNew(){return this.newFileMenuEntries.filter((e=>e.category===x.a7.CreateNew))},menuEntriesOther(){return this.newFileMenuEntries.filter((e=>e.category===x.a7.Other))},canUploadFolders(){return this.allowFolders&&"webkitdirectory"in document.createElement("input")},totalQueueSize(){return this.uploadManager.info?.size||0},uploadedQueueSize(){return this.uploadManager.info?.progress||0},progress(){return Math.round(this.uploadedQueueSize/this.totalQueueSize*100)||0},queue(){return this.uploadManager.queue},hasFailure(){return 0!==this.queue?.filter((e=>e.status===ue.FAILED)).length},isUploading(){return this.queue?.length>0},isAssembling(){return 0!==this.queue?.filter((e=>e.status===ue.ASSEMBLING)).length},isPaused(){return this.uploadManager.info?.status===ye.PAUSED},buttonName(){if(!this.isUploading)return ve("New")}},watch:{allowFolders:{immediate:!0,handler(){"function"!=typeof this.content&&this.allowFolders&&xe.error("[UploadPicker] Setting `allowFolders` is only allowed if `content` is a function")}},content:{immediate:!0,async handler(){this.currentContent=await this.getContent()}},destination(e){this.setDestination(e)},totalQueueSize(e){this.eta=ee({min:0,max:e}),this.updateStatus()},uploadedQueueSize(e){this.eta?.report?.(e),this.updateStatus()},isPaused(e){e?this.$emit("paused",this.queue):this.$emit("resumed",this.queue)}},beforeMount(){this.destination&&this.setDestination(this.destination),this.uploadManager.addNotifier(this.onUploadCompletion),xe.debug("UploadPicker initialised")},methods:{onTriggerPick(e=!1){const s=this.$refs.input;this.canUploadFolders&&(s.webkitdirectory=e),this.$nextTick((()=>s.click()))},async getContent(e){return Array.isArray(this.content)?this.content:await this.content(e)},showInvalidFileNameDialog:async e=>new S((async(s,t)=>{await(new X.ik).setName(ve("Invalid file name")).setSeverity("error").setText(ve('"{filename}" contains invalid characters, how do you want to continue?',{filename:e})).setButtons([{label:ve("Cancel"),type:"error",callback:t},{label:ve("Skip"),callback:()=>s(!1)},{label:ve("Rename"),type:"primary",callback:()=>s(!0)}]).build().show()})),async handleConflicts(e,s){try{const t=""===s?this.currentContent:await this.getContent(s).catch((()=>[])),n=Ee(e,t);if(n.length>0){const{selected:a,renamed:i}=await Pe(s,n,t,{recursive:!0});e=[...a,...i]}const a=[];for(const s of e)if(this.forbiddenCharacters.some((e=>s.name.includes(e)))){if(await this.showInvalidFileNameDialog(s.name)){let t=this.replaceInvalidCharacters(s.name);t=(0,x.E6)(t,e.map((e=>e.name))),Object.defineProperty(s,"name",{value:t}),a.push(s)}}else a.push(s);return a}catch(e){return xe.debug("Upload has been cancelled",{error:e}),(0,X.I9)(ve("Upload has been cancelled")),!1}},replaceInvalidCharacters(e){const s=["-","_"," "].filter((e=>!this.forbiddenCharacters.includes(e)))[0]??"x";return this.forbiddenCharacters.forEach((t=>{e=e.replaceAll(t,s)})),e},onPick(){const e=this.$refs.input,s=e.files?Array.from(e.files):[];this.uploadManager.batchUpload("",s,this.handleConflicts).catch((e=>xe.debug("Error while uploading",{error:e}))).finally((()=>this.resetForm()))},resetForm(){const e=this.$refs.form;e?.reset()},onCancel(){this.uploadManager.queue.forEach((e=>{e.cancel()})),this.resetForm()},updateStatus(){if(this.isPaused)return void(this.timeLeft=ve("paused"));const e=Math.round(this.eta.estimate());if(e!==1/0)if(e<10)this.timeLeft=ve("a few seconds left");else if(e>60){const s=new Date(0);s.setSeconds(e);const t=s.toISOString().slice(11,19);this.timeLeft=ve("{time} left",{time:t})}else this.timeLeft=ve("{seconds} seconds left",{seconds:e});else this.timeLeft=ve("estimating time left")},setDestination(e){this.destination?(this.uploadManager.destination=e,this.newFileMenuEntries=(0,x.m1)(e)):xe.debug("Invalid destination")},onUploadCompletion(e){e.status===ue.FAILED?this.$emit("failed",e):this.$emit("uploaded",e)}}});Le(Ae,(function(){var e=this,s=e._self._c;return e._self._setupProxy,e.destination?s("form",{ref:"form",staticClass:"upload-picker",class:{"upload-picker--uploading":e.isUploading,"upload-picker--paused":e.isPaused},attrs:{"data-cy-upload-picker":""}},[e.newFileMenuEntries&&0===e.newFileMenuEntries.length?s("NcButton",{attrs:{disabled:e.disabled,"data-cy-upload-picker-add":"",type:"secondary"},on:{click:function(s){return e.onTriggerPick()}},scopedSlots:e._u([{key:"icon",fn:function(){return[s("IconPlus",{attrs:{size:20}})]},proxy:!0}],null,!1,1991456921)},[e._v(" "+e._s(e.buttonName)+" ")]):s("NcActions",{attrs:{"menu-name":e.buttonName,"menu-title":e.t("New"),type:"secondary"},scopedSlots:e._u([{key:"icon",fn:function(){return[s("IconPlus",{attrs:{size:20}})]},proxy:!0}],null,!1,1991456921)},[s("NcActionCaption",{attrs:{name:e.t("Upload from device")}}),s("NcActionButton",{attrs:{"data-cy-upload-picker-add":"","close-after-click":!0},on:{click:function(s){return e.onTriggerPick()}},scopedSlots:e._u([{key:"icon",fn:function(){return[s("IconUpload",{attrs:{size:20}})]},proxy:!0}],null,!1,337456192)},[e._v(" "+e._s(e.t("Upload files"))+" ")]),e.canUploadFolders?s("NcActionButton",{attrs:{"close-after-click":"","data-cy-upload-picker-add-folders":""},on:{click:function(s){return e.onTriggerPick(!0)}},scopedSlots:e._u([{key:"icon",fn:function(){return[s("IconFolderUpload",{staticStyle:{color:"var(--color-primary-element)"},attrs:{size:20}})]},proxy:!0}],null,!1,1037549157)},[e._v(" "+e._s(e.t("Upload folders"))+" ")]):e._e(),e._l(e.menuEntriesUpload,(function(t){return s("NcActionButton",{key:t.id,staticClass:"upload-picker__menu-entry",attrs:{icon:t.iconClass,"close-after-click":!0},on:{click:function(s){return t.handler(e.destination,e.currentContent)}},scopedSlots:e._u([t.iconSvgInline?{key:"icon",fn:function(){return[s("NcIconSvgWrapper",{attrs:{svg:t.iconSvgInline}})]},proxy:!0}:null],null,!0)},[e._v(" "+e._s(t.displayName)+" ")])})),e.menuEntriesNew.length>0?[s("NcActionSeparator"),s("NcActionCaption",{attrs:{name:e.t("Create new")}}),e._l(e.menuEntriesNew,(function(t){return s("NcActionButton",{key:t.id,staticClass:"upload-picker__menu-entry",attrs:{icon:t.iconClass,"close-after-click":!0},on:{click:function(s){return t.handler(e.destination,e.currentContent)}},scopedSlots:e._u([t.iconSvgInline?{key:"icon",fn:function(){return[s("NcIconSvgWrapper",{attrs:{svg:t.iconSvgInline}})]},proxy:!0}:null],null,!0)},[e._v(" "+e._s(t.displayName)+" ")])}))]:e._e(),e.menuEntriesOther.length>0?[s("NcActionSeparator"),e._l(e.menuEntriesNew,(function(t){return s("NcActionButton",{key:t.id,staticClass:"upload-picker__menu-entry",attrs:{icon:t.iconClass,"close-after-click":!0},on:{click:function(s){return t.handler(e.destination,e.currentContent)}},scopedSlots:e._u([t.iconSvgInline?{key:"icon",fn:function(){return[s("NcIconSvgWrapper",{attrs:{svg:t.iconSvgInline}})]},proxy:!0}:null],null,!0)},[e._v(" "+e._s(t.displayName)+" ")])}))]:e._e()],2),s("div",{directives:[{name:"show",rawName:"v-show",value:e.isUploading,expression:"isUploading"}],staticClass:"upload-picker__progress"},[s("NcProgressBar",{attrs:{"aria-label":e.t("Upload progress"),"aria-describedby":e.progressTimeId,error:e.hasFailure,value:e.progress,size:"medium"}}),s("p",{attrs:{id:e.progressTimeId}},[e._v(" "+e._s(e.timeLeft)+" ")])],1),e.isUploading?s("NcButton",{staticClass:"upload-picker__cancel",attrs:{type:"tertiary","aria-label":e.t("Cancel uploads"),"data-cy-upload-picker-cancel":""},on:{click:e.onCancel},scopedSlots:e._u([{key:"icon",fn:function(){return[s("IconCancel",{attrs:{size:20}})]},proxy:!0}],null,!1,3076329829)}):e._e(),s("input",{ref:"input",staticClass:"hidden-visually",attrs:{accept:e.accept?.join?.(", "),multiple:e.multiple,"data-cy-upload-picker-input":"",type:"file"},on:{change:e.onPick}})],1):e._e()}),[],!1,null,"1f097873",null,null).exports;let Ue=null;function Fe(e=function(){return(0,w.C)("files_sharing","isPublic",null)??null!==document.querySelector('input#isPublic[type="hidden"][name="isPublic"][value="1"]')}(),s=!1){return Ue instanceof Ce&&!s||(Ue=new Ce(e)),Ue}async function Pe(e,s,n,a){const i=(0,T.$V)((()=>Promise.all([t.e(4208),t.e(6778)]).then(t.bind(t,26778))));return new Promise(((t,l)=>{const r=new T.Ay({name:"ConflictPickerRoot",render:o=>o(i,{props:{dirname:e,conflicts:s,content:n,recursiveUpload:!0===a?.recursive},on:{submit(e){t(e),r.$destroy(),r.$el?.parentNode?.removeChild(r.$el)},cancel(e){l(e??new Error("Canceled")),r.$destroy(),r.$el?.parentNode?.removeChild(r.$el)}}})});r.$mount(),document.body.appendChild(r.$el)}))}function Ne(e,s){return Ee(e,s).length>0}function Ee(e,s){const t=s.map((e=>e.basename));return e.filter((e=>{const s="basename"in e?e.basename:e.name;return-1!==t.indexOf(s)}))}}},a={};function i(e){var s=a[e];if(void 0!==s)return s.exports;var t=a[e]={id:e,loaded:!1,exports:{}};return n[e].call(t.exports,t,t.exports,i),t.loaded=!0,t.exports}i.m=n,e=[],i.O=(s,t,n,a)=>{if(!t){var l=1/0;for(d=0;d=a)&&Object.keys(i.O).every((e=>i.O[e](t[o])))?t.splice(o--,1):(r=!1,a0&&e[d-1][2]>a;d--)e[d]=e[d-1];e[d]=[t,n,a]},i.n=e=>{var s=e&&e.__esModule?()=>e.default:()=>e;return i.d(s,{a:s}),s},i.d=(e,s)=>{for(var t in s)i.o(s,t)&&!i.o(e,t)&&Object.defineProperty(e,t,{enumerable:!0,get:s[t]})},i.f={},i.e=e=>Promise.all(Object.keys(i.f).reduce(((s,t)=>(i.f[t](e,s),s)),[])),i.u=e=>e+"-"+e+".js?v="+{1110:"e20948a2fd7d006e5209",5455:"f19bb30c4edfe928a23c",6778:"05456eb4fc16e404b623",8377:"fed1d221ffdde07bff4c"}[e],i.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),i.o=(e,s)=>Object.prototype.hasOwnProperty.call(e,s),s={},t="nextcloud:",i.l=(e,n,a,l)=>{if(s[e])s[e].push(n);else{var r,o;if(void 0!==a)for(var m=document.getElementsByTagName("script"),d=0;d{r.onerror=r.onload=null,clearTimeout(u);var a=s[e];if(delete s[e],r.parentNode&&r.parentNode.removeChild(r),a&&a.forEach((e=>e(n))),t)return t(n)},u=setTimeout(g.bind(null,void 0,{type:"timeout",target:r}),12e4);r.onerror=g.bind(null,r.onerror),r.onload=g.bind(null,r.onload),o&&document.head.appendChild(r)}},i.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},i.nmd=e=>(e.paths=[],e.children||(e.children=[]),e),i.j=1171,(()=>{var e;i.g.importScripts&&(e=i.g.location+"");var s=i.g.document;if(!e&&s&&(s.currentScript&&(e=s.currentScript.src),!e)){var t=s.getElementsByTagName("script");if(t.length)for(var n=t.length-1;n>-1&&(!e||!/^http(s?):/.test(e));)e=t[n--].src}if(!e)throw new Error("Automatic publicPath is not supported in this browser");e=e.replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),i.p=e})(),(()=>{i.b=document.baseURI||self.location.href;var e={1171:0};i.f.j=(s,t)=>{var n=i.o(e,s)?e[s]:void 0;if(0!==n)if(n)t.push(n[2]);else{var a=new Promise(((t,a)=>n=e[s]=[t,a]));t.push(n[2]=a);var l=i.p+i.u(s),r=new Error;i.l(l,(t=>{if(i.o(e,s)&&(0!==(n=e[s])&&(e[s]=void 0),n)){var a=t&&("load"===t.type?"missing":t.type),l=t&&t.target&&t.target.src;r.message="Loading chunk "+s+" failed.\n("+a+": "+l+")",r.name="ChunkLoadError",r.type=a,r.request=l,n[1](r)}}),"chunk-"+s,s)}},i.O.j=s=>0===e[s];var s=(s,t)=>{var n,a,l=t[0],r=t[1],o=t[2],m=0;if(l.some((s=>0!==e[s]))){for(n in r)i.o(r,n)&&(i.m[n]=r[n]);if(o)var d=o(i)}for(s&&s(t);mi(15076)));l=i.O(l)})(); +//# sourceMappingURL=files-init.js.map?v=9fa905f283c61f40f4ec \ No newline at end of file diff --git a/dist/files-init.js.map b/dist/files-init.js.map index 47acc92f43e05..9eb97e7810ce5 100644 --- a/dist/files-init.js.map +++ b/dist/files-init.js.map @@ -1 +1 @@ -{"version":3,"file":"files-init.js?v=d0a6942da39158715790","mappings":"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","sources":["webpack:///nextcloud/webpack/runtime/chunk loaded","webpack:///nextcloud/webpack/runtime/load script","webpack:///nextcloud/node_modules/@nextcloud/upload/node_modules/eventemitter3/index.js","webpack:///nextcloud/apps/files/src/logger.js","webpack:///nextcloud/apps/files/src/actions/deleteAction.ts","webpack:///nextcloud/apps/files/src/actions/downloadAction.ts","webpack:///nextcloud/apps/files/src/actions/editLocallyAction.ts","webpack:///nextcloud/apps/files/src/actions/favoriteAction.ts","webpack:///nextcloud/apps/files/src/actions/moveOrCopyActionUtils.ts","webpack:///nextcloud/apps/files/src/services/WebdavClient.ts","webpack:///nextcloud/apps/files/src/services/Files.ts","webpack:///nextcloud/apps/files/src/actions/moveOrCopyAction.ts","webpack:///nextcloud/apps/files/src/actions/openFolderAction.ts","webpack:///nextcloud/apps/files/src/actions/openInFilesAction.ts","webpack:///nextcloud/apps/files/src/actions/renameAction.ts","webpack:///nextcloud/apps/files/src/actions/sidebarAction.ts","webpack:///nextcloud/apps/files/src/actions/viewInFolderAction.ts","webpack:///nextcloud/apps/files/src/components/NewNodeDialog.vue","webpack:///nextcloud/apps/files/src/components/NewNodeDialog.vue?vue&type=script&lang=ts","webpack://nextcloud/./apps/files/src/components/NewNodeDialog.vue?1a36","webpack:///nextcloud/apps/files/src/utils/newNodeDialog.ts","webpack:///nextcloud/apps/files/src/newMenu/newFolder.ts","webpack:///nextcloud/apps/files/src/newMenu/newTemplatesFolder.ts","webpack:///nextcloud/apps/files/src/newMenu/newFromTemplate.ts","webpack:///nextcloud/apps/files/src/services/Favorites.ts","webpack:///nextcloud/apps/files/src/views/favorites.ts","webpack:///nextcloud/apps/files/src/utils/hashUtils.ts","webpack:///nextcloud/apps/files/src/store/userconfig.ts","webpack:///nextcloud/apps/files/src/store/index.ts","webpack:///nextcloud/apps/files/src/services/Recent.ts","webpack:///nextcloud/apps/files/src/services/PersonalFiles.ts","webpack:///nextcloud/apps/files/src/init.ts","webpack:///nextcloud/apps/files/src/views/files.ts","webpack:///nextcloud/apps/files/src/views/recent.ts","webpack:///nextcloud/apps/files/src/views/personal-files.ts","webpack:///nextcloud/apps/files/src/services/ServiceWorker.js","webpack:///nextcloud/apps/files/src/services/LivePhotos.ts","webpack:///nextcloud/node_modules/@nextcloud/upload/dist/assets/index-DiWRcN3o.css","webpack:///nextcloud/node_modules/is-retry-allowed/index.js","webpack:///nextcloud/node_modules/simple-eta/index.js","webpack://nextcloud/./node_modules/@nextcloud/upload/dist/assets/index-DiWRcN3o.css?9af4","webpack:///nextcloud/node_modules/p-cancelable/index.js","webpack:///nextcloud/node_modules/@nextcloud/upload/node_modules/p-timeout/index.js","webpack:///nextcloud/node_modules/@nextcloud/upload/node_modules/p-queue/dist/priority-queue.js","webpack:///nextcloud/node_modules/@nextcloud/upload/node_modules/p-queue/dist/lower-bound.js","webpack:///nextcloud/node_modules/@nextcloud/upload/node_modules/p-queue/dist/index.js","webpack:///nextcloud/node_modules/axios-retry/dist/esm/index.js","webpack:///nextcloud/node_modules/@nextcloud/upload/node_modules/@nextcloud/l10n/dist/gettext.mjs","webpack:///nextcloud/node_modules/@nextcloud/upload/dist/chunks/index-ifErGYeJ.mjs","webpack:///nextcloud/node_modules/@nextcloud/upload/node_modules/@nextcloud/l10n/dist/chunks/locale-BQFSYg2g.mjs","webpack:///nextcloud/node_modules/@nextcloud/upload/node_modules/@nextcloud/sharing/dist/public.mjs","webpack:///nextcloud/webpack/bootstrap","webpack:///nextcloud/webpack/runtime/compat get default export","webpack:///nextcloud/webpack/runtime/define property getters","webpack:///nextcloud/webpack/runtime/ensure chunk","webpack:///nextcloud/webpack/runtime/get javascript chunk filename","webpack:///nextcloud/webpack/runtime/global","webpack:///nextcloud/webpack/runtime/hasOwnProperty shorthand","webpack:///nextcloud/webpack/runtime/make namespace object","webpack:///nextcloud/webpack/runtime/node module decorator","webpack:///nextcloud/webpack/runtime/runtimeId","webpack:///nextcloud/webpack/runtime/publicPath","webpack:///nextcloud/webpack/runtime/jsonp chunk loading","webpack:///nextcloud/webpack/runtime/nonce","webpack:///nextcloud/webpack/startup"],"sourcesContent":["var deferred = [];\n__webpack_require__.O = (result, chunkIds, fn, priority) => {\n\tif(chunkIds) {\n\t\tpriority = priority || 0;\n\t\tfor(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];\n\t\tdeferred[i] = [chunkIds, fn, priority];\n\t\treturn;\n\t}\n\tvar notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tvar chunkIds = deferred[i][0];\n\t\tvar fn = deferred[i][1];\n\t\tvar priority = deferred[i][2];\n\t\tvar fulfilled = true;\n\t\tfor (var j = 0; j < chunkIds.length; j++) {\n\t\t\tif ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every((key) => (__webpack_require__.O[key](chunkIds[j])))) {\n\t\t\t\tchunkIds.splice(j--, 1);\n\t\t\t} else {\n\t\t\t\tfulfilled = false;\n\t\t\t\tif(priority < notFulfilled) notFulfilled = priority;\n\t\t\t}\n\t\t}\n\t\tif(fulfilled) {\n\t\t\tdeferred.splice(i--, 1)\n\t\t\tvar r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","var inProgress = {};\nvar dataWebpackPrefix = \"nextcloud:\";\n// loadScript function to load a script via script tag\n__webpack_require__.l = (url, done, key, chunkId) => {\n\tif(inProgress[url]) { inProgress[url].push(done); return; }\n\tvar script, needAttach;\n\tif(key !== undefined) {\n\t\tvar scripts = document.getElementsByTagName(\"script\");\n\t\tfor(var i = 0; i < scripts.length; i++) {\n\t\t\tvar s = scripts[i];\n\t\t\tif(s.getAttribute(\"src\") == url || s.getAttribute(\"data-webpack\") == dataWebpackPrefix + key) { script = s; break; }\n\t\t}\n\t}\n\tif(!script) {\n\t\tneedAttach = true;\n\t\tscript = document.createElement('script');\n\n\t\tscript.charset = 'utf-8';\n\t\tscript.timeout = 120;\n\t\tif (__webpack_require__.nc) {\n\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n\t\t}\n\t\tscript.setAttribute(\"data-webpack\", dataWebpackPrefix + key);\n\n\t\tscript.src = url;\n\t}\n\tinProgress[url] = [done];\n\tvar onScriptComplete = (prev, event) => {\n\t\t// avoid mem leaks in IE.\n\t\tscript.onerror = script.onload = null;\n\t\tclearTimeout(timeout);\n\t\tvar doneFns = inProgress[url];\n\t\tdelete inProgress[url];\n\t\tscript.parentNode && script.parentNode.removeChild(script);\n\t\tdoneFns && doneFns.forEach((fn) => (fn(event)));\n\t\tif(prev) return prev(event);\n\t}\n\tvar timeout = setTimeout(onScriptComplete.bind(null, undefined, { type: 'timeout', target: script }), 120000);\n\tscript.onerror = onScriptComplete.bind(null, script.onerror);\n\tscript.onload = onScriptComplete.bind(null, script.onload);\n\tneedAttach && document.head.appendChild(script);\n};","'use strict';\n\nvar has = Object.prototype.hasOwnProperty\n , prefix = '~';\n\n/**\n * Constructor to create a storage for our `EE` objects.\n * An `Events` instance is a plain object whose properties are event names.\n *\n * @constructor\n * @private\n */\nfunction Events() {}\n\n//\n// We try to not inherit from `Object.prototype`. In some engines creating an\n// instance in this way is faster than calling `Object.create(null)` directly.\n// If `Object.create(null)` is not supported we prefix the event names with a\n// character to make sure that the built-in object properties are not\n// overridden or used as an attack vector.\n//\nif (Object.create) {\n Events.prototype = Object.create(null);\n\n //\n // This hack is needed because the `__proto__` property is still inherited in\n // some old browsers like Android 4, iPhone 5.1, Opera 11 and Safari 5.\n //\n if (!new Events().__proto__) prefix = false;\n}\n\n/**\n * Representation of a single event listener.\n *\n * @param {Function} fn The listener function.\n * @param {*} context The context to invoke the listener with.\n * @param {Boolean} [once=false] Specify if the listener is a one-time listener.\n * @constructor\n * @private\n */\nfunction EE(fn, context, once) {\n this.fn = fn;\n this.context = context;\n this.once = once || false;\n}\n\n/**\n * Add a listener for a given event.\n *\n * @param {EventEmitter} emitter Reference to the `EventEmitter` instance.\n * @param {(String|Symbol)} event The event name.\n * @param {Function} fn The listener function.\n * @param {*} context The context to invoke the listener with.\n * @param {Boolean} once Specify if the listener is a one-time listener.\n * @returns {EventEmitter}\n * @private\n */\nfunction addListener(emitter, event, fn, context, once) {\n if (typeof fn !== 'function') {\n throw new TypeError('The listener must be a function');\n }\n\n var listener = new EE(fn, context || emitter, once)\n , evt = prefix ? prefix + event : event;\n\n if (!emitter._events[evt]) emitter._events[evt] = listener, emitter._eventsCount++;\n else if (!emitter._events[evt].fn) emitter._events[evt].push(listener);\n else emitter._events[evt] = [emitter._events[evt], listener];\n\n return emitter;\n}\n\n/**\n * Clear event by name.\n *\n * @param {EventEmitter} emitter Reference to the `EventEmitter` instance.\n * @param {(String|Symbol)} evt The Event name.\n * @private\n */\nfunction clearEvent(emitter, evt) {\n if (--emitter._eventsCount === 0) emitter._events = new Events();\n else delete emitter._events[evt];\n}\n\n/**\n * Minimal `EventEmitter` interface that is molded against the Node.js\n * `EventEmitter` interface.\n *\n * @constructor\n * @public\n */\nfunction EventEmitter() {\n this._events = new Events();\n this._eventsCount = 0;\n}\n\n/**\n * Return an array listing the events for which the emitter has registered\n * listeners.\n *\n * @returns {Array}\n * @public\n */\nEventEmitter.prototype.eventNames = function eventNames() {\n var names = []\n , events\n , name;\n\n if (this._eventsCount === 0) return names;\n\n for (name in (events = this._events)) {\n if (has.call(events, name)) names.push(prefix ? name.slice(1) : name);\n }\n\n if (Object.getOwnPropertySymbols) {\n return names.concat(Object.getOwnPropertySymbols(events));\n }\n\n return names;\n};\n\n/**\n * Return the listeners registered for a given event.\n *\n * @param {(String|Symbol)} event The event name.\n * @returns {Array} The registered listeners.\n * @public\n */\nEventEmitter.prototype.listeners = function listeners(event) {\n var evt = prefix ? prefix + event : event\n , handlers = this._events[evt];\n\n if (!handlers) return [];\n if (handlers.fn) return [handlers.fn];\n\n for (var i = 0, l = handlers.length, ee = new Array(l); i < l; i++) {\n ee[i] = handlers[i].fn;\n }\n\n return ee;\n};\n\n/**\n * Return the number of listeners listening to a given event.\n *\n * @param {(String|Symbol)} event The event name.\n * @returns {Number} The number of listeners.\n * @public\n */\nEventEmitter.prototype.listenerCount = function listenerCount(event) {\n var evt = prefix ? prefix + event : event\n , listeners = this._events[evt];\n\n if (!listeners) return 0;\n if (listeners.fn) return 1;\n return listeners.length;\n};\n\n/**\n * Calls each of the listeners registered for a given event.\n *\n * @param {(String|Symbol)} event The event name.\n * @returns {Boolean} `true` if the event had listeners, else `false`.\n * @public\n */\nEventEmitter.prototype.emit = function emit(event, a1, a2, a3, a4, a5) {\n var evt = prefix ? prefix + event : event;\n\n if (!this._events[evt]) return false;\n\n var listeners = this._events[evt]\n , len = arguments.length\n , args\n , i;\n\n if (listeners.fn) {\n if (listeners.once) this.removeListener(event, listeners.fn, undefined, true);\n\n switch (len) {\n case 1: return listeners.fn.call(listeners.context), true;\n case 2: return listeners.fn.call(listeners.context, a1), true;\n case 3: return listeners.fn.call(listeners.context, a1, a2), true;\n case 4: return listeners.fn.call(listeners.context, a1, a2, a3), true;\n case 5: return listeners.fn.call(listeners.context, a1, a2, a3, a4), true;\n case 6: return listeners.fn.call(listeners.context, a1, a2, a3, a4, a5), true;\n }\n\n for (i = 1, args = new Array(len -1); i < len; i++) {\n args[i - 1] = arguments[i];\n }\n\n listeners.fn.apply(listeners.context, args);\n } else {\n var length = listeners.length\n , j;\n\n for (i = 0; i < length; i++) {\n if (listeners[i].once) this.removeListener(event, listeners[i].fn, undefined, true);\n\n switch (len) {\n case 1: listeners[i].fn.call(listeners[i].context); break;\n case 2: listeners[i].fn.call(listeners[i].context, a1); break;\n case 3: listeners[i].fn.call(listeners[i].context, a1, a2); break;\n case 4: listeners[i].fn.call(listeners[i].context, a1, a2, a3); break;\n default:\n if (!args) for (j = 1, args = new Array(len -1); j < len; j++) {\n args[j - 1] = arguments[j];\n }\n\n listeners[i].fn.apply(listeners[i].context, args);\n }\n }\n }\n\n return true;\n};\n\n/**\n * Add a listener for a given event.\n *\n * @param {(String|Symbol)} event The event name.\n * @param {Function} fn The listener function.\n * @param {*} [context=this] The context to invoke the listener with.\n * @returns {EventEmitter} `this`.\n * @public\n */\nEventEmitter.prototype.on = function on(event, fn, context) {\n return addListener(this, event, fn, context, false);\n};\n\n/**\n * Add a one-time listener for a given event.\n *\n * @param {(String|Symbol)} event The event name.\n * @param {Function} fn The listener function.\n * @param {*} [context=this] The context to invoke the listener with.\n * @returns {EventEmitter} `this`.\n * @public\n */\nEventEmitter.prototype.once = function once(event, fn, context) {\n return addListener(this, event, fn, context, true);\n};\n\n/**\n * Remove the listeners of a given event.\n *\n * @param {(String|Symbol)} event The event name.\n * @param {Function} fn Only remove the listeners that match this function.\n * @param {*} context Only remove the listeners that have this context.\n * @param {Boolean} once Only remove one-time listeners.\n * @returns {EventEmitter} `this`.\n * @public\n */\nEventEmitter.prototype.removeListener = function removeListener(event, fn, context, once) {\n var evt = prefix ? prefix + event : event;\n\n if (!this._events[evt]) return this;\n if (!fn) {\n clearEvent(this, evt);\n return this;\n }\n\n var listeners = this._events[evt];\n\n if (listeners.fn) {\n if (\n listeners.fn === fn &&\n (!once || listeners.once) &&\n (!context || listeners.context === context)\n ) {\n clearEvent(this, evt);\n }\n } else {\n for (var i = 0, events = [], length = listeners.length; i < length; i++) {\n if (\n listeners[i].fn !== fn ||\n (once && !listeners[i].once) ||\n (context && listeners[i].context !== context)\n ) {\n events.push(listeners[i]);\n }\n }\n\n //\n // Reset the array, or remove it completely if we have no more listeners.\n //\n if (events.length) this._events[evt] = events.length === 1 ? events[0] : events;\n else clearEvent(this, evt);\n }\n\n return this;\n};\n\n/**\n * Remove all listeners, or those of the specified event.\n *\n * @param {(String|Symbol)} [event] The event name.\n * @returns {EventEmitter} `this`.\n * @public\n */\nEventEmitter.prototype.removeAllListeners = function removeAllListeners(event) {\n var evt;\n\n if (event) {\n evt = prefix ? prefix + event : event;\n if (this._events[evt]) clearEvent(this, evt);\n } else {\n this._events = new Events();\n this._eventsCount = 0;\n }\n\n return this;\n};\n\n//\n// Alias methods names because people roll like that.\n//\nEventEmitter.prototype.off = EventEmitter.prototype.removeListener;\nEventEmitter.prototype.addListener = EventEmitter.prototype.on;\n\n//\n// Expose the prefix.\n//\nEventEmitter.prefixed = prefix;\n\n//\n// Allow `EventEmitter` to be imported as module namespace.\n//\nEventEmitter.EventEmitter = EventEmitter;\n\n//\n// Expose the module.\n//\nif ('undefined' !== typeof module) {\n module.exports = EventEmitter;\n}\n","/**\n * SPDX-FileCopyrightText: 2022 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { getLoggerBuilder } from '@nextcloud/logger'\n\nexport default getLoggerBuilder()\n\t.setApp('files')\n\t.detectUser()\n\t.build()\n","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { emit } from '@nextcloud/event-bus';\nimport { Permission, Node, View, FileAction, FileType } from '@nextcloud/files';\nimport { showInfo } from '@nextcloud/dialogs';\nimport { translate as t } from '@nextcloud/l10n';\nimport axios from '@nextcloud/axios';\nimport CloseSvg from '@mdi/svg/svg/close.svg?raw';\nimport NetworkOffSvg from '@mdi/svg/svg/network-off.svg?raw';\nimport TrashCanSvg from '@mdi/svg/svg/trash-can.svg?raw';\nimport logger from '../logger.js';\nimport PQueue from 'p-queue';\nconst canUnshareOnly = (nodes) => {\n return nodes.every(node => node.attributes['is-mount-root'] === true\n && node.attributes['mount-type'] === 'shared');\n};\nconst canDisconnectOnly = (nodes) => {\n return nodes.every(node => node.attributes['is-mount-root'] === true\n && node.attributes['mount-type'] === 'external');\n};\nconst isMixedUnshareAndDelete = (nodes) => {\n if (nodes.length === 1) {\n return false;\n }\n const hasSharedItems = nodes.some(node => canUnshareOnly([node]));\n const hasDeleteItems = nodes.some(node => !canUnshareOnly([node]));\n return hasSharedItems && hasDeleteItems;\n};\nconst isAllFiles = (nodes) => {\n return !nodes.some(node => node.type !== FileType.File);\n};\nconst isAllFolders = (nodes) => {\n return !nodes.some(node => node.type !== FileType.Folder);\n};\nconst displayName = (nodes, view) => {\n /**\n * If we're in the trashbin, we can only delete permanently\n */\n if (view.id === 'trashbin') {\n return t('files', 'Delete permanently');\n }\n /**\n * If we're in the sharing view, we can only unshare\n */\n if (isMixedUnshareAndDelete(nodes)) {\n return t('files', 'Delete and unshare');\n }\n /**\n * If those nodes are all the root node of a\n * share, we can only unshare them.\n */\n if (canUnshareOnly(nodes)) {\n if (nodes.length === 1) {\n return t('files', 'Leave this share');\n }\n return t('files', 'Leave these shares');\n }\n /**\n * If those nodes are all the root node of an\n * external storage, we can only disconnect it.\n */\n if (canDisconnectOnly(nodes)) {\n if (nodes.length === 1) {\n return t('files', 'Disconnect storage');\n }\n return t('files', 'Disconnect storages');\n }\n /**\n * If we're only selecting files, use proper wording\n */\n if (isAllFiles(nodes)) {\n if (nodes.length === 1) {\n return t('files', 'Delete file');\n }\n return t('files', 'Delete files');\n }\n /**\n * If we're only selecting folders, use proper wording\n */\n if (isAllFolders(nodes)) {\n if (nodes.length === 1) {\n return t('files', 'Delete folder');\n }\n return t('files', 'Delete folders');\n }\n return t('files', 'Delete');\n};\nconst queue = new PQueue({ concurrency: 5 });\nexport const action = new FileAction({\n id: 'delete',\n displayName,\n iconSvgInline: (nodes) => {\n if (canUnshareOnly(nodes)) {\n return CloseSvg;\n }\n if (canDisconnectOnly(nodes)) {\n return NetworkOffSvg;\n }\n return TrashCanSvg;\n },\n enabled(nodes) {\n return nodes.length > 0 && nodes\n .map(node => node.permissions)\n .every(permission => (permission & Permission.DELETE) !== 0);\n },\n async exec(node, view, dir) {\n try {\n await axios.delete(node.encodedSource);\n // Let's delete even if it's moved to the trashbin\n // since it has been removed from the current view\n // and changing the view will trigger a reload anyway.\n emit('files:node:deleted', node);\n return true;\n }\n catch (error) {\n logger.error('Error while deleting a file', { error, source: node.source, node });\n return false;\n }\n },\n async execBatch(nodes, view, dir) {\n const confirm = await new Promise(resolve => {\n if (nodes.length >= 5 && !canUnshareOnly(nodes) && !canDisconnectOnly(nodes)) {\n // TODO use a proper dialog from @nextcloud/dialogs when available\n window.OC.dialogs.confirmDestructive(t('files', 'You are about to delete {count} items.', { count: nodes.length }), t('files', 'Confirm deletion'), {\n type: window.OC.dialogs.YES_NO_BUTTONS,\n confirm: displayName(nodes, view),\n confirmClasses: 'error',\n cancel: t('files', 'Cancel'),\n }, (decision) => {\n resolve(decision);\n });\n return;\n }\n resolve(true);\n });\n // If the user cancels the deletion, we don't want to do anything\n if (confirm === false) {\n showInfo(t('files', 'Deletion cancelled'));\n return Promise.all(nodes.map(() => false));\n }\n // Map each node to a promise that resolves with the result of exec(node)\n const promises = nodes.map(node => {\n // Create a promise that resolves with the result of exec(node)\n const promise = new Promise(resolve => {\n queue.add(async () => {\n const result = await this.exec(node, view, dir);\n resolve(result !== null ? result : false);\n });\n });\n return promise;\n });\n return Promise.all(promises);\n },\n order: 100,\n});\n","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { generateUrl } from '@nextcloud/router';\nimport { FileAction, Permission, Node, FileType, View } from '@nextcloud/files';\nimport { translate as t } from '@nextcloud/l10n';\nimport ArrowDownSvg from '@mdi/svg/svg/arrow-down.svg?raw';\nconst triggerDownload = function (url) {\n const hiddenElement = document.createElement('a');\n hiddenElement.download = '';\n hiddenElement.href = url;\n hiddenElement.click();\n};\nconst downloadNodes = function (dir, nodes) {\n const secret = Math.random().toString(36).substring(2);\n const url = generateUrl('/apps/files/ajax/download.php?dir={dir}&files={files}&downloadStartSecret={secret}', {\n dir,\n secret,\n files: JSON.stringify(nodes.map(node => node.basename)),\n });\n triggerDownload(url);\n};\nconst isDownloadable = function (node) {\n if ((node.permissions & Permission.READ) === 0) {\n return false;\n }\n // If the mount type is a share, ensure it got download permissions.\n if (node.attributes['mount-type'] === 'shared') {\n const shareAttributes = JSON.parse(node.attributes['share-attributes'] ?? 'null');\n const downloadAttribute = shareAttributes?.find?.((attribute) => attribute.scope === 'permissions' && attribute.key === 'download');\n if (downloadAttribute !== undefined && downloadAttribute.enabled === false) {\n return false;\n }\n }\n return true;\n};\nexport const action = new FileAction({\n id: 'download',\n displayName: () => t('files', 'Download'),\n iconSvgInline: () => ArrowDownSvg,\n enabled(nodes) {\n if (nodes.length === 0) {\n return false;\n }\n // We can download direct dav files. But if we have\n // some folders, we need to use the /apps/files/ajax/download.php\n // endpoint, which only supports user root folder.\n if (nodes.some(node => node.type === FileType.Folder)\n && nodes.some(node => !node.root?.startsWith('/files'))) {\n return false;\n }\n return nodes.every(isDownloadable);\n },\n async exec(node, view, dir) {\n if (node.type === FileType.Folder) {\n downloadNodes(dir, [node]);\n return null;\n }\n triggerDownload(node.encodedSource);\n return null;\n },\n async execBatch(nodes, view, dir) {\n if (nodes.length === 1) {\n this.exec(nodes[0], view, dir);\n return [null];\n }\n downloadNodes(dir, nodes);\n return new Array(nodes.length).fill(null);\n },\n order: 30,\n});\n","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { encodePath } from '@nextcloud/paths';\nimport { generateOcsUrl } from '@nextcloud/router';\nimport { getCurrentUser } from '@nextcloud/auth';\nimport { FileAction, Permission } from '@nextcloud/files';\nimport { showError } from '@nextcloud/dialogs';\nimport { translate as t } from '@nextcloud/l10n';\nimport axios from '@nextcloud/axios';\nimport LaptopSvg from '@mdi/svg/svg/laptop.svg?raw';\nconst openLocalClient = async function (path) {\n const link = generateOcsUrl('apps/files/api/v1') + '/openlocaleditor?format=json';\n try {\n const result = await axios.post(link, { path });\n const uid = getCurrentUser()?.uid;\n let url = `nc://open/${uid}@` + window.location.host + encodePath(path);\n url += '?token=' + result.data.ocs.data.token;\n window.location.href = url;\n }\n catch (error) {\n showError(t('files', 'Failed to redirect to client'));\n }\n};\nexport const action = new FileAction({\n id: 'edit-locally',\n displayName: () => t('files', 'Edit locally'),\n iconSvgInline: () => LaptopSvg,\n // Only works on single files\n enabled(nodes) {\n // Only works on single node\n if (nodes.length !== 1) {\n return false;\n }\n return (nodes[0].permissions & Permission.UPDATE) !== 0;\n },\n async exec(node) {\n openLocalClient(node.path);\n return null;\n },\n order: 25,\n});\n","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { emit } from '@nextcloud/event-bus';\nimport { generateUrl } from '@nextcloud/router';\nimport { Permission, View, FileAction } from '@nextcloud/files';\nimport { translate as t } from '@nextcloud/l10n';\nimport axios from '@nextcloud/axios';\nimport Vue from 'vue';\nimport StarOutlineSvg from '@mdi/svg/svg/star-outline.svg?raw';\nimport StarSvg from '@mdi/svg/svg/star.svg?raw';\nimport logger from '../logger.js';\nimport { encodePath } from '@nextcloud/paths';\n// If any of the nodes is not favorited, we display the favorite action.\nconst shouldFavorite = (nodes) => {\n return nodes.some(node => node.attributes.favorite !== 1);\n};\nexport const favoriteNode = async (node, view, willFavorite) => {\n try {\n // TODO: migrate to webdav tags plugin\n const url = generateUrl('/apps/files/api/v1/files') + encodePath(node.path);\n await axios.post(url, {\n tags: willFavorite\n ? [window.OC.TAG_FAVORITE]\n : [],\n });\n // Let's delete if we are in the favourites view\n // AND if it is removed from the user favorites\n // AND it's in the root of the favorites view\n if (view.id === 'favorites' && !willFavorite && node.dirname === '/') {\n emit('files:node:deleted', node);\n }\n // Update the node webdav attribute\n Vue.set(node.attributes, 'favorite', willFavorite ? 1 : 0);\n // Dispatch event to whoever is interested\n if (willFavorite) {\n emit('files:favorites:added', node);\n }\n else {\n emit('files:favorites:removed', node);\n }\n return true;\n }\n catch (error) {\n const action = willFavorite ? 'adding a file to favourites' : 'removing a file from favourites';\n logger.error('Error while ' + action, { error, source: node.source, node });\n return false;\n }\n};\nexport const action = new FileAction({\n id: 'favorite',\n displayName(nodes) {\n return shouldFavorite(nodes)\n ? t('files', 'Add to favorites')\n : t('files', 'Remove from favorites');\n },\n iconSvgInline: (nodes) => {\n return shouldFavorite(nodes)\n ? StarOutlineSvg\n : StarSvg;\n },\n enabled(nodes) {\n // We can only favorite nodes within files and with permissions\n return !nodes.some(node => !node.root?.startsWith?.('/files'))\n && nodes.every(node => node.permissions !== Permission.NONE);\n },\n async exec(node, view) {\n const willFavorite = shouldFavorite([node]);\n return await favoriteNode(node, view, willFavorite);\n },\n async execBatch(nodes, view) {\n const willFavorite = shouldFavorite(nodes);\n return Promise.all(nodes.map(async (node) => await favoriteNode(node, view, willFavorite)));\n },\n order: -50,\n});\n","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { Permission } from '@nextcloud/files';\nimport PQueue from 'p-queue';\n// This is the processing queue. We only want to allow 3 concurrent requests\nlet queue;\n/**\n * Get the processing queue\n */\nexport const getQueue = () => {\n if (!queue) {\n queue = new PQueue({ concurrency: 3 });\n }\n return queue;\n};\nexport var MoveCopyAction;\n(function (MoveCopyAction) {\n MoveCopyAction[\"MOVE\"] = \"Move\";\n MoveCopyAction[\"COPY\"] = \"Copy\";\n MoveCopyAction[\"MOVE_OR_COPY\"] = \"move-or-copy\";\n})(MoveCopyAction || (MoveCopyAction = {}));\nexport const canMove = (nodes) => {\n const minPermission = nodes.reduce((min, node) => Math.min(min, node.permissions), Permission.ALL);\n return (minPermission & Permission.UPDATE) !== 0;\n};\nexport const canDownload = (nodes) => {\n return nodes.every(node => {\n const shareAttributes = JSON.parse(node.attributes?.['share-attributes'] ?? '[]');\n return !shareAttributes.some(attribute => attribute.scope === 'permissions' && attribute.enabled === false && attribute.key === 'download');\n });\n};\nexport const canCopy = (nodes) => {\n // a shared file cannot be copied if the download is disabled\n // it can be copied if the user has at least read permissions\n return canDownload(nodes)\n && !nodes.some(node => node.permissions === Permission.NONE);\n};\n","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { davGetClient } from '@nextcloud/files';\nexport const client = davGetClient();\n","import { CancelablePromise } from 'cancelable-promise';\nimport { File, Folder, davGetDefaultPropfind, davResultToNode, davRootPath } from '@nextcloud/files';\nimport { client } from './WebdavClient.ts';\nimport logger from '../logger.js';\n/**\n * Slim wrapper over `@nextcloud/files` `davResultToNode` to allow using the function with `Array.map`\n * @param node The node returned by the webdav library\n */\nexport const resultToNode = (node) => davResultToNode(node);\nexport const getContents = (path = '/') => {\n const controller = new AbortController();\n const propfindPayload = davGetDefaultPropfind();\n path = `${davRootPath}${path}`;\n return new CancelablePromise(async (resolve, reject, onCancel) => {\n onCancel(() => controller.abort());\n try {\n const contentsResponse = await client.getDirectoryContents(path, {\n details: true,\n data: propfindPayload,\n includeSelf: true,\n signal: controller.signal,\n });\n const root = contentsResponse.data[0];\n const contents = contentsResponse.data.slice(1);\n if (root.filename !== path && `${root.filename}/` !== path) {\n logger.debug(`Exepected \"${path}\" but got filename \"${root.filename}\" instead.`);\n throw new Error('Root node does not match requested path');\n }\n resolve({\n folder: resultToNode(root),\n contents: contents.map((result) => {\n try {\n return resultToNode(result);\n }\n catch (error) {\n logger.error(`Invalid node detected '${result.basename}'`, { error });\n return null;\n }\n }).filter(Boolean),\n });\n }\n catch (error) {\n reject(error);\n }\n });\n};\n","import { isAxiosError } from '@nextcloud/axios';\nimport { FilePickerClosed, getFilePickerBuilder, showError } from '@nextcloud/dialogs';\nimport { emit } from '@nextcloud/event-bus';\nimport { FileAction, FileType, NodeStatus, davGetClient, davRootPath, davResultToNode, davGetDefaultPropfind, getUniqueName } from '@nextcloud/files';\nimport { translate as t } from '@nextcloud/l10n';\nimport { openConflictPicker, hasConflict } from '@nextcloud/upload';\nimport { basename, join } from 'path';\nimport Vue from 'vue';\nimport CopyIconSvg from '@mdi/svg/svg/folder-multiple.svg?raw';\nimport FolderMoveSvg from '@mdi/svg/svg/folder-move.svg?raw';\nimport { MoveCopyAction, canCopy, canMove, getQueue } from './moveOrCopyActionUtils';\nimport { getContents } from '../services/Files';\nimport logger from '../logger';\n/**\n * Return the action that is possible for the given nodes\n * @param {Node[]} nodes The nodes to check against\n * @return {MoveCopyAction} The action that is possible for the given nodes\n */\nconst getActionForNodes = (nodes) => {\n if (canMove(nodes)) {\n if (canCopy(nodes)) {\n return MoveCopyAction.MOVE_OR_COPY;\n }\n return MoveCopyAction.MOVE;\n }\n // Assuming we can copy as the enabled checks for copy permissions\n return MoveCopyAction.COPY;\n};\n/**\n * Handle the copy/move of a node to a destination\n * This can be imported and used by other scripts/components on server\n * @param {Node} node The node to copy/move\n * @param {Folder} destination The destination to copy/move the node to\n * @param {MoveCopyAction} method The method to use for the copy/move\n * @param {boolean} overwrite Whether to overwrite the destination if it exists\n * @return {Promise} A promise that resolves when the copy/move is done\n */\nexport const handleCopyMoveNodeTo = async (node, destination, method, overwrite = false) => {\n if (!destination) {\n return;\n }\n if (destination.type !== FileType.Folder) {\n throw new Error(t('files', 'Destination is not a folder'));\n }\n // Do not allow to MOVE a node to the same folder it is already located\n if (method === MoveCopyAction.MOVE && node.dirname === destination.path) {\n throw new Error(t('files', 'This file/folder is already in that directory'));\n }\n /**\n * Example:\n * - node: /foo/bar/file.txt -> path = /foo/bar/file.txt, destination: /foo\n * Allow move of /foo does not start with /foo/bar/file.txt so allow\n * - node: /foo , destination: /foo/bar\n * Do not allow as it would copy foo within itself\n * - node: /foo/bar.txt, destination: /foo\n * Allow copy a file to the same directory\n * - node: \"/foo/bar\", destination: \"/foo/bar 1\"\n * Allow to move or copy but we need to check with trailing / otherwise it would report false positive\n */\n if (`${destination.path}/`.startsWith(`${node.path}/`)) {\n throw new Error(t('files', 'You cannot move a file/folder onto itself or into a subfolder of itself'));\n }\n // Set loading state\n Vue.set(node, 'status', NodeStatus.LOADING);\n const queue = getQueue();\n return await queue.add(async () => {\n const copySuffix = (index) => {\n if (index === 1) {\n return t('files', '(copy)'); // TRANSLATORS: Mark a file as a copy of another file\n }\n return t('files', '(copy %n)', undefined, index); // TRANSLATORS: Meaning it is the n'th copy of a file\n };\n try {\n const client = davGetClient();\n const currentPath = join(davRootPath, node.path);\n const destinationPath = join(davRootPath, destination.path);\n if (method === MoveCopyAction.COPY) {\n let target = node.basename;\n // If we do not allow overwriting then find an unique name\n if (!overwrite) {\n const otherNodes = await client.getDirectoryContents(destinationPath);\n target = getUniqueName(node.basename, otherNodes.map((n) => n.basename), {\n suffix: copySuffix,\n ignoreFileExtension: node.type === FileType.Folder,\n });\n }\n await client.copyFile(currentPath, join(destinationPath, target));\n // If the node is copied into current directory the view needs to be updated\n if (node.dirname === destination.path) {\n const { data } = await client.stat(join(destinationPath, target), {\n details: true,\n data: davGetDefaultPropfind(),\n });\n emit('files:node:created', davResultToNode(data));\n }\n }\n else {\n // show conflict file popup if we do not allow overwriting\n const otherNodes = await getContents(destination.path);\n if (hasConflict([node], otherNodes.contents)) {\n try {\n // Let the user choose what to do with the conflicting files\n const { selected, renamed } = await openConflictPicker(destination.path, [node], otherNodes.contents);\n // if the user selected to keep the old file, and did not select the new file\n // that means they opted to delete the current node\n if (!selected.length && !renamed.length) {\n await client.deleteFile(currentPath);\n emit('files:node:deleted', node);\n return;\n }\n }\n catch (error) {\n // User cancelled\n showError(t('files', 'Move cancelled'));\n return;\n }\n }\n // getting here means either no conflict, file was renamed to keep both files\n // in a conflict, or the selected file was chosen to be kept during the conflict\n await client.moveFile(currentPath, join(destinationPath, node.basename));\n // Delete the node as it will be fetched again\n // when navigating to the destination folder\n emit('files:node:deleted', node);\n }\n }\n catch (error) {\n if (isAxiosError(error)) {\n if (error.response?.status === 412) {\n throw new Error(t('files', 'A file or folder with that name already exists in this folder'));\n }\n else if (error.response?.status === 423) {\n throw new Error(t('files', 'The files are locked'));\n }\n else if (error.response?.status === 404) {\n throw new Error(t('files', 'The file does not exist anymore'));\n }\n else if (error.message) {\n throw new Error(error.message);\n }\n }\n logger.debug(error);\n throw new Error();\n }\n finally {\n Vue.set(node, 'status', undefined);\n }\n });\n};\n/**\n * Open a file picker for the given action\n * @param {MoveCopyAction} action The action to open the file picker for\n * @param {string} dir The directory to start the file picker in\n * @param {Node[]} nodes The nodes to move/copy\n * @return {Promise} The picked destination\n */\nconst openFilePickerForAction = async (action, dir = '/', nodes) => {\n const fileIDs = nodes.map(node => node.fileid).filter(Boolean);\n const filePicker = getFilePickerBuilder(t('files', 'Choose destination'))\n .allowDirectories(true)\n .setFilter((n) => {\n // We don't want to show the current nodes in the file picker\n return !fileIDs.includes(n.fileid);\n })\n .setMimeTypeFilter([])\n .setMultiSelect(false)\n .startAt(dir);\n return new Promise((resolve, reject) => {\n filePicker.setButtonFactory((selection, path) => {\n const buttons = [];\n const target = basename(path);\n const dirnames = nodes.map(node => node.dirname);\n const paths = nodes.map(node => node.path);\n if (action === MoveCopyAction.COPY || action === MoveCopyAction.MOVE_OR_COPY) {\n buttons.push({\n label: target ? t('files', 'Copy to {target}', { target }, undefined, { escape: false, sanitize: false }) : t('files', 'Copy'),\n type: 'primary',\n icon: CopyIconSvg,\n async callback(destination) {\n resolve({\n destination: destination[0],\n action: MoveCopyAction.COPY,\n });\n },\n });\n }\n // Invalid MOVE targets (but valid copy targets)\n if (dirnames.includes(path)) {\n // This file/folder is already in that directory\n return buttons;\n }\n if (paths.includes(path)) {\n // You cannot move a file/folder onto itself\n return buttons;\n }\n if (action === MoveCopyAction.MOVE || action === MoveCopyAction.MOVE_OR_COPY) {\n buttons.push({\n label: target ? t('files', 'Move to {target}', { target }, undefined, { escape: false, sanitize: false }) : t('files', 'Move'),\n type: action === MoveCopyAction.MOVE ? 'primary' : 'secondary',\n icon: FolderMoveSvg,\n async callback(destination) {\n resolve({\n destination: destination[0],\n action: MoveCopyAction.MOVE,\n });\n },\n });\n }\n return buttons;\n });\n const picker = filePicker.build();\n picker.pick().catch((error) => {\n logger.debug(error);\n if (error instanceof FilePickerClosed) {\n reject(new Error(t('files', 'Cancelled move or copy operation')));\n }\n else {\n reject(new Error(t('files', 'Move or copy operation failed')));\n }\n });\n });\n};\nexport const action = new FileAction({\n id: 'move-copy',\n displayName(nodes) {\n switch (getActionForNodes(nodes)) {\n case MoveCopyAction.MOVE:\n return t('files', 'Move');\n case MoveCopyAction.COPY:\n return t('files', 'Copy');\n case MoveCopyAction.MOVE_OR_COPY:\n return t('files', 'Move or copy');\n }\n },\n iconSvgInline: () => FolderMoveSvg,\n enabled(nodes) {\n // We only support moving/copying files within the user folder\n if (!nodes.every(node => node.root?.startsWith('/files/'))) {\n return false;\n }\n return nodes.length > 0 && (canMove(nodes) || canCopy(nodes));\n },\n async exec(node, view, dir) {\n const action = getActionForNodes([node]);\n let result;\n try {\n result = await openFilePickerForAction(action, dir, [node]);\n }\n catch (e) {\n logger.error(e);\n return false;\n }\n try {\n await handleCopyMoveNodeTo(node, result.destination, result.action);\n return true;\n }\n catch (error) {\n if (error instanceof Error && !!error.message) {\n showError(error.message);\n // Silent action as we handle the toast\n return null;\n }\n return false;\n }\n },\n async execBatch(nodes, view, dir) {\n const action = getActionForNodes(nodes);\n const result = await openFilePickerForAction(action, dir, nodes);\n const promises = nodes.map(async (node) => {\n try {\n await handleCopyMoveNodeTo(node, result.destination, result.action);\n return true;\n }\n catch (error) {\n logger.error(`Failed to ${result.action} node`, { node, error });\n return false;\n }\n });\n // We need to keep the selection on error!\n // So we do not return null, and for batch action\n // we let the front handle the error.\n return await Promise.all(promises);\n },\n order: 15,\n});\n","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { Permission, Node, FileType, View, FileAction, DefaultType } from '@nextcloud/files';\nimport { translate as t } from '@nextcloud/l10n';\nimport FolderSvg from '@mdi/svg/svg/folder.svg?raw';\nexport const action = new FileAction({\n id: 'open-folder',\n displayName(files) {\n // Only works on single node\n const displayName = files[0].attributes.displayname || files[0].basename;\n return t('files', 'Open folder {displayName}', { displayName });\n },\n iconSvgInline: () => FolderSvg,\n enabled(nodes) {\n // Only works on single node\n if (nodes.length !== 1) {\n return false;\n }\n const node = nodes[0];\n if (!node.isDavRessource) {\n return false;\n }\n return node.type === FileType.Folder\n && (node.permissions & Permission.READ) !== 0;\n },\n async exec(node, view) {\n if (!node || node.type !== FileType.Folder) {\n return false;\n }\n window.OCP.Files.Router.goToRoute(null, { view: view.id, fileid: node.fileid }, { dir: node.path });\n return null;\n },\n // Main action if enabled, meaning folders only\n default: DefaultType.HIDDEN,\n order: -100,\n});\n","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { translate as t } from '@nextcloud/l10n';\nimport { FileType, FileAction, DefaultType } from '@nextcloud/files';\n/**\n * TODO: Move away from a redirect and handle\n * navigation straight out of the recent view\n */\nexport const action = new FileAction({\n id: 'open-in-files-recent',\n displayName: () => t('files', 'Open in Files'),\n iconSvgInline: () => '',\n enabled: (nodes, view) => view.id === 'recent',\n async exec(node) {\n let dir = node.dirname;\n if (node.type === FileType.Folder) {\n dir = dir + '/' + node.basename;\n }\n window.OCP.Files.Router.goToRoute(null, // use default route\n { view: 'files', fileid: node.fileid }, { dir, openfile: 'true' });\n return null;\n },\n // Before openFolderAction\n order: -1000,\n default: DefaultType.HIDDEN,\n});\n","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { emit } from '@nextcloud/event-bus';\nimport { Permission, FileAction } from '@nextcloud/files';\nimport { translate as t } from '@nextcloud/l10n';\nimport PencilSvg from '@mdi/svg/svg/pencil.svg?raw';\nexport const ACTION_DETAILS = 'details';\nexport const action = new FileAction({\n id: 'rename',\n displayName: () => t('files', 'Rename'),\n iconSvgInline: () => PencilSvg,\n enabled: (nodes) => {\n return nodes.length > 0 && nodes\n .map(node => node.permissions)\n .every(permission => (permission & Permission.UPDATE) !== 0);\n },\n async exec(node) {\n // Renaming is a built-in feature of the files app\n emit('files:node:rename', node);\n return null;\n },\n order: 10,\n});\n","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { Permission, View, FileAction, FileType } from '@nextcloud/files';\nimport { translate as t } from '@nextcloud/l10n';\nimport InformationSvg from '@mdi/svg/svg/information-variant.svg?raw';\nimport logger from '../logger.js';\nexport const ACTION_DETAILS = 'details';\nexport const action = new FileAction({\n id: ACTION_DETAILS,\n displayName: () => t('files', 'Open details'),\n iconSvgInline: () => InformationSvg,\n // Sidebar currently supports user folder only, /files/USER\n enabled: (nodes) => {\n // Only works on single node\n if (nodes.length !== 1) {\n return false;\n }\n if (!nodes[0]) {\n return false;\n }\n // Only work if the sidebar is available\n if (!window?.OCA?.Files?.Sidebar) {\n return false;\n }\n return (nodes[0].root?.startsWith('/files/') && nodes[0].permissions !== Permission.NONE) ?? false;\n },\n async exec(node, view, dir) {\n try {\n // TODO: migrate Sidebar to use a Node instead\n await window.OCA.Files.Sidebar.open(node.path);\n // Silently update current fileid\n window.OCP.Files.Router.goToRoute(null, { view: view.id, fileid: node.fileid }, { ...window.OCP.Files.Router.query, dir }, true);\n return null;\n }\n catch (error) {\n logger.error('Error while opening sidebar', { error });\n return false;\n }\n },\n order: -50,\n});\n","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { Node, FileType, Permission, View, FileAction } from '@nextcloud/files';\nimport { translate as t } from '@nextcloud/l10n';\nimport FolderMoveSvg from '@mdi/svg/svg/folder-move.svg?raw';\nexport const action = new FileAction({\n id: 'view-in-folder',\n displayName() {\n return t('files', 'View in folder');\n },\n iconSvgInline: () => FolderMoveSvg,\n enabled(nodes, view) {\n // Only works outside of the main files view\n if (view.id === 'files') {\n return false;\n }\n // Only works on single node\n if (nodes.length !== 1) {\n return false;\n }\n const node = nodes[0];\n if (!node.isDavRessource) {\n return false;\n }\n if (node.permissions === Permission.NONE) {\n return false;\n }\n return node.type === FileType.File;\n },\n async exec(node) {\n if (!node || node.type !== FileType.File) {\n return false;\n }\n window.OCP.Files.Router.goToRoute(null, { view: 'files', fileid: node.fileid }, { dir: node.dirname });\n return null;\n },\n order: 80,\n});\n","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('NcDialog',{attrs:{\"name\":_vm.name,\"open\":_vm.open,\"close-on-click-outside\":\"\",\"out-transition\":\"\"},on:{\"update:open\":_vm.onClose},scopedSlots:_vm._u([{key:\"actions\",fn:function(){return [_c('NcButton',{attrs:{\"type\":\"primary\",\"disabled\":!_vm.isUniqueName},on:{\"click\":_vm.onCreate}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('files', 'Create'))+\"\\n\\t\\t\")])]},proxy:true}])},[_vm._v(\" \"),_c('form',{on:{\"submit\":function($event){$event.preventDefault();return _vm.onCreate.apply(null, arguments)}}},[_c('NcTextField',{ref:\"input\",attrs:{\"error\":!_vm.isUniqueName,\"helper-text\":_vm.errorMessage,\"label\":_vm.label,\"value\":_vm.localDefaultName},on:{\"update:value\":function($event){_vm.localDefaultName=$event}}})],1)])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NewNodeDialog.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NewNodeDialog.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./NewNodeDialog.vue?vue&type=template&id=c8416a62\"\nimport script from \"./NewNodeDialog.vue?vue&type=script&lang=ts\"\nexport * from \"./NewNodeDialog.vue?vue&type=script&lang=ts\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","/**\n * SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { spawnDialog } from '@nextcloud/dialogs';\nimport NewNodeDialog from '../components/NewNodeDialog.vue';\n/**\n * Ask user for file or folder name\n * @param defaultName Default name to use\n * @param folderContent Nodes with in the current folder to check for unique name\n * @param labels Labels to set on the dialog\n * @return string if successfull otherwise null if aborted\n */\nexport function newNodeName(defaultName, folderContent, labels = {}) {\n const contentNames = folderContent.map((node) => node.basename);\n return new Promise((resolve) => {\n spawnDialog(NewNodeDialog, {\n ...labels,\n defaultName,\n otherNames: contentNames,\n }, (folderName) => {\n resolve(folderName);\n });\n });\n}\n","import { basename } from 'path';\nimport { emit } from '@nextcloud/event-bus';\nimport { getCurrentUser } from '@nextcloud/auth';\nimport { Permission, Folder } from '@nextcloud/files';\nimport { showSuccess } from '@nextcloud/dialogs';\nimport { translate as t } from '@nextcloud/l10n';\nimport axios from '@nextcloud/axios';\nimport FolderPlusSvg from '@mdi/svg/svg/folder-plus.svg?raw';\nimport { newNodeName } from '../utils/newNodeDialog';\nimport logger from '../logger';\nconst createNewFolder = async (root, name) => {\n const source = root.source + '/' + name;\n const encodedSource = root.encodedSource + '/' + encodeURIComponent(name);\n const response = await axios({\n method: 'MKCOL',\n url: encodedSource,\n headers: {\n Overwrite: 'F',\n },\n });\n return {\n fileid: parseInt(response.headers['oc-fileid']),\n source,\n };\n};\nexport const entry = {\n id: 'newFolder',\n displayName: t('files', 'New folder'),\n enabled: (context) => (context.permissions & Permission.CREATE) !== 0,\n iconSvgInline: FolderPlusSvg,\n order: 0,\n async handler(context, content) {\n const name = await newNodeName(t('files', 'New folder'), content);\n if (name !== null) {\n const { fileid, source } = await createNewFolder(context, name);\n // Create the folder in the store\n const folder = new Folder({\n source,\n id: fileid,\n mtime: new Date(),\n owner: getCurrentUser()?.uid || null,\n permissions: Permission.ALL,\n root: context?.root || '/files/' + getCurrentUser()?.uid,\n // Include mount-type from parent folder as this is inherited\n attributes: {\n 'mount-type': context.attributes?.['mount-type'],\n 'owner-id': context.attributes?.['owner-id'],\n 'owner-display-name': context.attributes?.['owner-display-name'],\n },\n });\n showSuccess(t('files', 'Created new folder \"{name}\"', { name: basename(source) }));\n logger.debug('Created new folder', { folder, source });\n emit('files:node:created', folder);\n window.OCP.Files.Router.goToRoute(null, // use default route\n { view: 'files', fileid: folder.fileid }, { dir: context.path });\n }\n },\n};\n","import { getCurrentUser } from '@nextcloud/auth';\nimport { showError } from '@nextcloud/dialogs';\nimport { Permission, removeNewFileMenuEntry } from '@nextcloud/files';\nimport { loadState } from '@nextcloud/initial-state';\nimport { translate as t } from '@nextcloud/l10n';\nimport { generateOcsUrl } from '@nextcloud/router';\nimport { join } from 'path';\nimport { newNodeName } from '../utils/newNodeDialog';\nimport PlusSvg from '@mdi/svg/svg/plus.svg?raw';\nimport axios from '@nextcloud/axios';\nimport logger from '../logger.js';\nlet templatesPath = loadState('files', 'templates_path', false);\nlogger.debug('Initial templates folder', { templatesPath });\n/**\n * Init template folder\n * @param directory Folder where to create the templates folder\n * @param name Name to use or the templates folder\n */\nconst initTemplatesFolder = async function (directory, name) {\n const templatePath = join(directory.path, name);\n try {\n logger.debug('Initializing the templates directory', { templatePath });\n const { data } = await axios.post(generateOcsUrl('apps/files/api/v1/templates/path'), {\n templatePath,\n copySystemTemplates: true,\n });\n // Go to template directory\n window.OCP.Files.Router.goToRoute(null, // use default route\n { view: 'files', fileid: undefined }, { dir: templatePath });\n logger.info('Created new templates folder', {\n ...data.ocs.data,\n });\n templatesPath = data.ocs.data.templates_path;\n }\n catch (error) {\n logger.error('Unable to initialize the templates directory');\n showError(t('files', 'Unable to initialize the templates directory'));\n }\n};\nexport const entry = {\n id: 'template-picker',\n displayName: t('files', 'Create new templates folder'),\n iconSvgInline: PlusSvg,\n order: 10,\n enabled(context) {\n // Templates folder already initialized\n if (templatesPath) {\n return false;\n }\n // Allow creation on your own folders only\n if (context.owner !== getCurrentUser()?.uid) {\n return false;\n }\n return (context.permissions & Permission.CREATE) !== 0;\n },\n async handler(context, content) {\n const name = await newNodeName(t('files', 'Templates'), content, { name: t('files', 'New template folder') });\n if (name !== null) {\n // Create the template folder\n initTemplatesFolder(context, name);\n // Remove the menu entry\n removeNewFileMenuEntry('template-picker');\n }\n },\n};\n","/**\n * SPDX-FileCopyrightText: 2020 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { Folder, Node, Permission, addNewFileMenuEntry } from '@nextcloud/files';\nimport { loadState } from '@nextcloud/initial-state';\nimport { newNodeName } from '../utils/newNodeDialog';\nimport { translate as t } from '@nextcloud/l10n';\nimport Vue, { defineAsyncComponent } from 'vue';\n// async to reduce bundle size\nconst TemplatePickerVue = defineAsyncComponent(() => import('../views/TemplatePicker.vue'));\nlet TemplatePicker = null;\nconst getTemplatePicker = async (context) => {\n if (TemplatePicker === null) {\n // Create document root\n const mountingPoint = document.createElement('div');\n mountingPoint.id = 'template-picker';\n document.body.appendChild(mountingPoint);\n // Init vue app\n TemplatePicker = new Vue({\n render: (h) => h(TemplatePickerVue, {\n ref: 'picker',\n props: {\n parent: context,\n },\n }),\n methods: { open(...args) { this.$refs.picker.open(...args); } },\n el: mountingPoint,\n });\n }\n return TemplatePicker;\n};\n/**\n * Register all new-file-menu entries for all template providers\n */\nexport function registerTemplateEntries() {\n const templates = loadState('files', 'templates', []);\n // Init template files menu\n templates.forEach((provider, index) => {\n addNewFileMenuEntry({\n id: `template-new-${provider.app}-${index}`,\n displayName: provider.label,\n iconClass: provider.iconClass || 'icon-file',\n iconSvgInline: provider.iconSvgInline,\n enabled(context) {\n return (context.permissions & Permission.CREATE) !== 0;\n },\n order: 11,\n async handler(context, content) {\n const templatePicker = getTemplatePicker(context);\n const name = await newNodeName(`${provider.label}${provider.extension}`, content, {\n label: t('files', 'Filename'),\n name: provider.label,\n });\n if (name !== null) {\n // Create the file\n const picker = await templatePicker;\n picker.open(name, provider);\n }\n },\n });\n });\n}\n","import { getCurrentUser } from '@nextcloud/auth';\nimport { Folder, Permission, davRemoteURL, davRootPath, getFavoriteNodes } from '@nextcloud/files';\nimport { CancelablePromise } from 'cancelable-promise';\nimport { getContents as filesContents } from './Files.ts';\nimport { client } from './WebdavClient.ts';\nexport const getContents = (path = '/') => {\n // We only filter root files for favorites, for subfolders we can simply reuse the files contents\n if (path !== '/') {\n return filesContents(path);\n }\n return new CancelablePromise((resolve, reject, cancel) => {\n const promise = getFavoriteNodes(client)\n .catch(reject)\n .then((contents) => {\n if (!contents) {\n reject();\n return;\n }\n resolve({\n contents,\n folder: new Folder({\n id: 0,\n source: `${davRemoteURL}${davRootPath}`,\n root: davRootPath,\n owner: getCurrentUser()?.uid || null,\n permissions: Permission.READ,\n }),\n });\n });\n cancel(() => promise.cancel());\n });\n};\n","import { subscribe } from '@nextcloud/event-bus';\nimport { FileType, View, getNavigation } from '@nextcloud/files';\nimport { loadState } from '@nextcloud/initial-state';\nimport { getLanguage, translate as t } from '@nextcloud/l10n';\nimport { basename } from 'path';\nimport FolderSvg from '@mdi/svg/svg/folder.svg?raw';\nimport StarSvg from '@mdi/svg/svg/star.svg?raw';\nimport { getContents } from '../services/Favorites';\nimport { hashCode } from '../utils/hashUtils';\nimport logger from '../logger';\nexport const generateFavoriteFolderView = function (folder, index = 0) {\n return new View({\n id: generateIdFromPath(folder.path),\n name: basename(folder.path),\n icon: FolderSvg,\n order: index,\n params: {\n dir: folder.path,\n fileid: folder.fileid.toString(),\n view: 'favorites',\n },\n parent: 'favorites',\n columns: [],\n getContents,\n });\n};\nexport const generateIdFromPath = function (path) {\n return `favorite-${hashCode(path)}`;\n};\nexport default () => {\n // Load state in function for mock testing purposes\n const favoriteFolders = loadState('files', 'favoriteFolders', []);\n const favoriteFoldersViews = favoriteFolders.map((folder, index) => generateFavoriteFolderView(folder, index));\n logger.debug('Generating favorites view', { favoriteFolders });\n const Navigation = getNavigation();\n Navigation.register(new View({\n id: 'favorites',\n name: t('files', 'Favorites'),\n caption: t('files', 'List of favorites files and folders.'),\n emptyTitle: t('files', 'No favorites yet'),\n emptyCaption: t('files', 'Files and folders you mark as favorite will show up here'),\n icon: StarSvg,\n order: 15,\n columns: [],\n getContents,\n }));\n favoriteFoldersViews.forEach(view => Navigation.register(view));\n /**\n * Update favourites navigation when a new folder is added\n */\n subscribe('files:favorites:added', (node) => {\n if (node.type !== FileType.Folder) {\n return;\n }\n // Sanity check\n if (node.path === null || !node.root?.startsWith('/files')) {\n logger.error('Favorite folder is not within user files root', { node });\n return;\n }\n addToFavorites(node);\n });\n /**\n * Remove favourites navigation when a folder is removed\n */\n subscribe('files:favorites:removed', (node) => {\n if (node.type !== FileType.Folder) {\n return;\n }\n // Sanity check\n if (node.path === null || !node.root?.startsWith('/files')) {\n logger.error('Favorite folder is not within user files root', { node });\n return;\n }\n removePathFromFavorites(node.path);\n });\n /**\n * Sort the favorites paths array and\n * update the order property of the existing views\n */\n const updateAndSortViews = function () {\n favoriteFolders.sort((a, b) => a.path.localeCompare(b.path, getLanguage(), { ignorePunctuation: true }));\n favoriteFolders.forEach((folder, index) => {\n const view = favoriteFoldersViews.find((view) => view.id === generateIdFromPath(folder.path));\n if (view) {\n view.order = index;\n }\n });\n };\n // Add a folder to the favorites paths array and update the views\n const addToFavorites = function (node) {\n const newFavoriteFolder = { path: node.path, fileid: node.fileid };\n const view = generateFavoriteFolderView(newFavoriteFolder);\n // Skip if already exists\n if (favoriteFolders.find((folder) => folder.path === node.path)) {\n return;\n }\n // Update arrays\n favoriteFolders.push(newFavoriteFolder);\n favoriteFoldersViews.push(view);\n // Update and sort views\n updateAndSortViews();\n Navigation.register(view);\n };\n // Remove a folder from the favorites paths array and update the views\n const removePathFromFavorites = function (path) {\n const id = generateIdFromPath(path);\n const index = favoriteFolders.findIndex((folder) => folder.path === path);\n // Skip if not exists\n if (index === -1) {\n return;\n }\n // Update arrays\n favoriteFolders.splice(index, 1);\n favoriteFoldersViews.splice(index, 1);\n // Update and sort views\n Navigation.remove(id);\n updateAndSortViews();\n };\n};\n","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/**\n * Simple non-secure hashing function similar to Java's `hashCode`\n * @param str The string to hash\n * @return {number} a non secure hash of the string\n */\nexport const hashCode = function (str) {\n let hash = 0;\n for (let i = 0; i < str.length; i++) {\n hash = ((hash << 5) - hash + str.charCodeAt(i)) | 0;\n }\n return (hash >>> 0);\n};\n","import { defineStore } from 'pinia';\nimport { emit, subscribe } from '@nextcloud/event-bus';\nimport { generateUrl } from '@nextcloud/router';\nimport { loadState } from '@nextcloud/initial-state';\nimport axios from '@nextcloud/axios';\nimport Vue from 'vue';\nconst userConfig = loadState('files', 'config', {\n show_hidden: false,\n crop_image_previews: true,\n sort_favorites_first: true,\n sort_folders_first: true,\n grid_view: false,\n});\nexport const useUserConfigStore = function (...args) {\n const store = defineStore('userconfig', {\n state: () => ({\n userConfig,\n }),\n actions: {\n /**\n * Update the user config local store\n */\n onUpdate(key, value) {\n Vue.set(this.userConfig, key, value);\n },\n /**\n * Update the user config local store AND on server side\n */\n async update(key, value) {\n await axios.put(generateUrl('/apps/files/api/v1/config/' + key), {\n value,\n });\n emit('files:config:updated', { key, value });\n },\n },\n });\n const userConfigStore = store(...args);\n // Make sure we only register the listeners once\n if (!userConfigStore._initialized) {\n subscribe('files:config:updated', function ({ key, value }) {\n userConfigStore.onUpdate(key, value);\n });\n userConfigStore._initialized = true;\n }\n return userConfigStore;\n};\n","/**\n * SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { createPinia } from 'pinia';\nexport const pinia = createPinia();\n","import { getCurrentUser } from '@nextcloud/auth';\nimport { Folder, Permission, davGetRecentSearch, davRootPath, davRemoteURL } from '@nextcloud/files';\nimport { CancelablePromise } from 'cancelable-promise';\nimport { useUserConfigStore } from '../store/userconfig.ts';\nimport { pinia } from '../store/index.ts';\nimport { client } from './WebdavClient.ts';\nimport { resultToNode } from './Files.ts';\nconst lastTwoWeeksTimestamp = Math.round((Date.now() / 1000) - (60 * 60 * 24 * 14));\n/**\n * Get recently changed nodes\n *\n * This takes the users preference about hidden files into account.\n * If hidden files are not shown, then also recently changed files *in* hidden directories are filtered.\n *\n * @param path Path to search for recent changes\n */\nexport const getContents = (path = '/') => {\n const store = useUserConfigStore(pinia);\n /**\n * Filter function that returns only the visible nodes - or hidden if explicitly configured\n * @param node The node to check\n */\n const filterHidden = (node) => path !== '/' // We need to hide files from hidden directories in the root if not configured to show\n || store.userConfig.show_hidden // If configured to show hidden files we can early return\n || !node.dirname.split('/').some((dir) => dir.startsWith('.')); // otherwise only include the file if non of the parent directories is hidden\n const controller = new AbortController();\n const handler = async () => {\n const contentsResponse = await client.search('/', {\n signal: controller.signal,\n details: true,\n data: davGetRecentSearch(lastTwoWeeksTimestamp),\n });\n const contents = contentsResponse.data.results\n .map(resultToNode)\n .filter(filterHidden);\n return {\n folder: new Folder({\n id: 0,\n source: `${davRemoteURL}${davRootPath}`,\n root: davRootPath,\n owner: getCurrentUser()?.uid || null,\n permissions: Permission.READ,\n }),\n contents,\n };\n };\n return new CancelablePromise(async (resolve, reject, cancel) => {\n cancel(() => controller.abort());\n resolve(handler());\n });\n};\n","import { getCurrentUser } from '@nextcloud/auth';\nimport { getContents as getFiles } from './Files';\nconst currentUserId = getCurrentUser()?.uid;\n/**\n * Filters each file/folder on its shared status\n *\n * A personal file is considered a file that has all of the following properties:\n * 1. the current user owns\n * 2. the file is not shared with anyone\n * 3. the file is not a group folder\n * @todo Move to `@nextcloud/files`\n * @param node The node to check\n */\nexport const isPersonalFile = function (node) {\n // the type of mounts that determine whether the file is shared\n const sharedMountTypes = ['group', 'shared'];\n const mountType = node.attributes['mount-type'];\n return currentUserId === node.owner && !sharedMountTypes.includes(mountType);\n};\nexport const getContents = (path = '/') => {\n // get all the files from the current path as a cancellable promise\n // then filter the files that the user does not own, or has shared / is a group folder\n return getFiles(path)\n .then((content) => {\n content.contents = content.contents.filter(isPersonalFile);\n return content;\n });\n};\n","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { addNewFileMenuEntry, registerDavProperty, registerFileAction } from '@nextcloud/files';\nimport { action as deleteAction } from './actions/deleteAction';\nimport { action as downloadAction } from './actions/downloadAction';\nimport { action as editLocallyAction } from './actions/editLocallyAction';\nimport { action as favoriteAction } from './actions/favoriteAction';\nimport { action as moveOrCopyAction } from './actions/moveOrCopyAction';\nimport { action as openFolderAction } from './actions/openFolderAction';\nimport { action as openInFilesAction } from './actions/openInFilesAction';\nimport { action as renameAction } from './actions/renameAction';\nimport { action as sidebarAction } from './actions/sidebarAction';\nimport { action as viewInFolderAction } from './actions/viewInFolderAction';\nimport { entry as newFolderEntry } from './newMenu/newFolder.ts';\nimport { entry as newTemplatesFolder } from './newMenu/newTemplatesFolder.ts';\nimport { registerTemplateEntries } from './newMenu/newFromTemplate.ts';\nimport registerFavoritesView from './views/favorites';\nimport registerRecentView from './views/recent';\nimport registerPersonalFilesView from './views/personal-files';\nimport registerFilesView from './views/files';\nimport registerPreviewServiceWorker from './services/ServiceWorker.js';\nimport { initLivePhotos } from './services/LivePhotos';\n// Register file actions\nregisterFileAction(deleteAction);\nregisterFileAction(downloadAction);\nregisterFileAction(editLocallyAction);\nregisterFileAction(favoriteAction);\nregisterFileAction(moveOrCopyAction);\nregisterFileAction(openFolderAction);\nregisterFileAction(openInFilesAction);\nregisterFileAction(renameAction);\nregisterFileAction(sidebarAction);\nregisterFileAction(viewInFolderAction);\n// Register new menu entry\naddNewFileMenuEntry(newFolderEntry);\naddNewFileMenuEntry(newTemplatesFolder);\nregisterTemplateEntries();\n// Register files views\nregisterFavoritesView();\nregisterFilesView();\nregisterRecentView();\nregisterPersonalFilesView();\n// Register preview service worker\nregisterPreviewServiceWorker();\nregisterDavProperty('nc:hidden', { nc: 'http://nextcloud.org/ns' });\nregisterDavProperty('nc:is-mount-root', { nc: 'http://nextcloud.org/ns' });\ninitLivePhotos();\n","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { translate as t } from '@nextcloud/l10n';\nimport FolderSvg from '@mdi/svg/svg/folder.svg?raw';\nimport { getContents } from '../services/Files';\nimport { View, getNavigation } from '@nextcloud/files';\nexport default () => {\n const Navigation = getNavigation();\n Navigation.register(new View({\n id: 'files',\n name: t('files', 'All files'),\n caption: t('files', 'List of your files and folders.'),\n icon: FolderSvg,\n order: 0,\n getContents,\n }));\n};\n","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { View, getNavigation } from '@nextcloud/files';\nimport { translate as t } from '@nextcloud/l10n';\nimport HistorySvg from '@mdi/svg/svg/history.svg?raw';\nimport { getContents } from '../services/Recent';\nexport default () => {\n const Navigation = getNavigation();\n Navigation.register(new View({\n id: 'recent',\n name: t('files', 'Recent'),\n caption: t('files', 'List of recently modified files and folders.'),\n emptyTitle: t('files', 'No recently modified files'),\n emptyCaption: t('files', 'Files and folders you recently modified will show up here.'),\n icon: HistorySvg,\n order: 10,\n defaultSortKey: 'mtime',\n getContents,\n }));\n};\n","/**\n * SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { translate as t } from '@nextcloud/l10n';\nimport { View, getNavigation } from '@nextcloud/files';\nimport { getContents } from '../services/PersonalFiles';\nimport AccountIcon from '@mdi/svg/svg/account.svg?raw';\nexport default () => {\n const Navigation = getNavigation();\n Navigation.register(new View({\n id: 'personal',\n name: t('files', 'Personal Files'),\n caption: t('files', 'List of your files and folders that are not shared.'),\n emptyTitle: t('files', 'No personal files found'),\n emptyCaption: t('files', 'Files that are not shared will show up here.'),\n icon: AccountIcon,\n order: 5,\n getContents,\n }));\n};\n","/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { generateUrl } from '@nextcloud/router'\nimport logger from '../logger.js'\n\nexport default () => {\n\tif ('serviceWorker' in navigator) {\n\t\t// Use the window load event to keep the page load performant\n\t\twindow.addEventListener('load', async () => {\n\t\t\ttry {\n\t\t\t\tconst url = generateUrl('/apps/files/preview-service-worker.js', {}, { noRewrite: true })\n\t\t\t\tconst registration = await navigator.serviceWorker.register(url, { scope: '/' })\n\t\t\t\tlogger.debug('SW registered: ', { registration })\n\t\t\t} catch (error) {\n\t\t\t\tlogger.error('SW registration failed: ', { error })\n\t\t\t}\n\t\t})\n\t} else {\n\t\tlogger.debug('Service Worker is not enabled on this browser.')\n\t}\n}\n","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { Node, registerDavProperty } from '@nextcloud/files';\nexport function initLivePhotos() {\n registerDavProperty('nc:metadata-files-live-photo', { nc: 'http://nextcloud.org/ns' });\n}\n/**\n * @param {Node} node - The node\n */\nexport function isLivePhoto(node) {\n return node.attributes['metadata-files-live-photo'] !== undefined;\n}\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.upload-picker[data-v-1f097873] {\n display: inline-flex;\n align-items: center;\n height: 44px;\n}\n.upload-picker__progress[data-v-1f097873] {\n width: 200px;\n max-width: 0;\n transition: max-width var(--animation-quick) ease-in-out;\n margin-top: 8px;\n}\n.upload-picker__progress p[data-v-1f097873] {\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n}\n.upload-picker--uploading .upload-picker__progress[data-v-1f097873] {\n max-width: 200px;\n margin-right: 20px;\n margin-left: 8px;\n}\n.upload-picker--paused .upload-picker__progress[data-v-1f097873] {\n animation: breathing-1f097873 3s ease-out infinite normal;\n}\n@keyframes breathing-1f097873 {\n0% {\n opacity: 0.5;\n}\n25% {\n opacity: 1;\n}\n60% {\n opacity: 0.5;\n}\n100% {\n opacity: 0.5;\n}\n}`, \"\",{\"version\":3,\"sources\":[\"webpack://./node_modules/@nextcloud/upload/dist/assets/index-DiWRcN3o.css\"],\"names\":[],\"mappings\":\"AAAA;EACE,oBAAoB;EACpB,mBAAmB;EACnB,YAAY;AACd;AACA;EACE,YAAY;EACZ,YAAY;EACZ,wDAAwD;EACxD,eAAe;AACjB;AACA;EACE,gBAAgB;EAChB,mBAAmB;EACnB,uBAAuB;AACzB;AACA;EACE,gBAAgB;EAChB,kBAAkB;EAClB,gBAAgB;AAClB;AACA;EACE,yDAAyD;AAC3D;AACA;AACA;IACI,YAAY;AAChB;AACA;IACI,UAAU;AACd;AACA;IACI,YAAY;AAChB;AACA;IACI,YAAY;AAChB;AACA\",\"sourcesContent\":[\".upload-picker[data-v-1f097873] {\\n display: inline-flex;\\n align-items: center;\\n height: 44px;\\n}\\n.upload-picker__progress[data-v-1f097873] {\\n width: 200px;\\n max-width: 0;\\n transition: max-width var(--animation-quick) ease-in-out;\\n margin-top: 8px;\\n}\\n.upload-picker__progress p[data-v-1f097873] {\\n overflow: hidden;\\n white-space: nowrap;\\n text-overflow: ellipsis;\\n}\\n.upload-picker--uploading .upload-picker__progress[data-v-1f097873] {\\n max-width: 200px;\\n margin-right: 20px;\\n margin-left: 8px;\\n}\\n.upload-picker--paused .upload-picker__progress[data-v-1f097873] {\\n animation: breathing-1f097873 3s ease-out infinite normal;\\n}\\n@keyframes breathing-1f097873 {\\n0% {\\n opacity: 0.5;\\n}\\n25% {\\n opacity: 1;\\n}\\n60% {\\n opacity: 0.5;\\n}\\n100% {\\n opacity: 0.5;\\n}\\n}\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","'use strict';\n\nconst denyList = new Set([\n\t'ENOTFOUND',\n\t'ENETUNREACH',\n\n\t// SSL errors from https://github.com/nodejs/node/blob/fc8e3e2cdc521978351de257030db0076d79e0ab/src/crypto/crypto_common.cc#L301-L328\n\t'UNABLE_TO_GET_ISSUER_CERT',\n\t'UNABLE_TO_GET_CRL',\n\t'UNABLE_TO_DECRYPT_CERT_SIGNATURE',\n\t'UNABLE_TO_DECRYPT_CRL_SIGNATURE',\n\t'UNABLE_TO_DECODE_ISSUER_PUBLIC_KEY',\n\t'CERT_SIGNATURE_FAILURE',\n\t'CRL_SIGNATURE_FAILURE',\n\t'CERT_NOT_YET_VALID',\n\t'CERT_HAS_EXPIRED',\n\t'CRL_NOT_YET_VALID',\n\t'CRL_HAS_EXPIRED',\n\t'ERROR_IN_CERT_NOT_BEFORE_FIELD',\n\t'ERROR_IN_CERT_NOT_AFTER_FIELD',\n\t'ERROR_IN_CRL_LAST_UPDATE_FIELD',\n\t'ERROR_IN_CRL_NEXT_UPDATE_FIELD',\n\t'OUT_OF_MEM',\n\t'DEPTH_ZERO_SELF_SIGNED_CERT',\n\t'SELF_SIGNED_CERT_IN_CHAIN',\n\t'UNABLE_TO_GET_ISSUER_CERT_LOCALLY',\n\t'UNABLE_TO_VERIFY_LEAF_SIGNATURE',\n\t'CERT_CHAIN_TOO_LONG',\n\t'CERT_REVOKED',\n\t'INVALID_CA',\n\t'PATH_LENGTH_EXCEEDED',\n\t'INVALID_PURPOSE',\n\t'CERT_UNTRUSTED',\n\t'CERT_REJECTED',\n\t'HOSTNAME_MISMATCH'\n]);\n\n// TODO: Use `error?.code` when targeting Node.js 14\nmodule.exports = error => !denyList.has(error && error.code);\n","// @flow\n\n/*::\ntype Options = {\n max?: number,\n min?: number,\n historyTimeConstant?: number,\n autostart?: boolean,\n ignoreSameProgress?: boolean,\n}\n*/\n\nfunction makeLowPassFilter(RC/*: number*/) {\n return function (previousOutput, input, dt) {\n const alpha = dt / (dt + RC);\n return previousOutput + alpha * (input - previousOutput);\n }\n}\n\nfunction def/*:: */(x/*: ?T*/, d/*: T*/)/*: T*/ {\n return (x === undefined || x === null) ? d : x;\n}\n\nfunction makeEta(options/*::?: Options */) {\n options = options || {};\n var max = def(options.max, 1);\n var min = def(options.min, 0);\n var autostart = def(options.autostart, true);\n var ignoreSameProgress = def(options.ignoreSameProgress, false);\n\n var rate/*: number | null */ = null;\n var lastTimestamp/*: number | null */ = null;\n var lastProgress/*: number | null */ = null;\n\n var filter = makeLowPassFilter(def(options.historyTimeConstant, 2.5));\n\n function start() {\n report(min);\n }\n\n function reset() {\n rate = null;\n lastTimestamp = null;\n lastProgress = null;\n if (autostart) {\n start();\n }\n }\n\n function report(progress /*: number */, timestamp/*::?: number */) {\n if (typeof timestamp !== 'number') {\n timestamp = Date.now();\n }\n\n if (lastTimestamp === timestamp) { return; }\n if (ignoreSameProgress && lastProgress === progress) { return; }\n\n if (lastTimestamp === null || lastProgress === null) {\n lastProgress = progress;\n lastTimestamp = timestamp;\n return;\n }\n\n var deltaProgress = progress - lastProgress;\n var deltaTimestamp = 0.001 * (timestamp - lastTimestamp);\n var currentRate = deltaProgress / deltaTimestamp;\n\n rate = rate === null\n ? currentRate\n : filter(rate, currentRate, deltaTimestamp);\n lastProgress = progress;\n lastTimestamp = timestamp;\n }\n\n function estimate(timestamp/*::?: number*/) {\n if (lastProgress === null) { return Infinity; }\n if (lastProgress >= max) { return 0; }\n if (rate === null) { return Infinity; }\n\n var estimatedTime = (max - lastProgress) / rate;\n if (typeof timestamp === 'number' && typeof lastTimestamp === 'number') {\n estimatedTime -= (timestamp - lastTimestamp) * 0.001;\n }\n return Math.max(0, estimatedTime);\n }\n\n function getRate() {\n return rate === null ? 0 : rate;\n }\n\n return {\n start: start,\n reset: reset,\n report: report,\n estimate: estimate,\n rate: getRate,\n }\n}\n\nmodule.exports = makeEta;\n","\n import API from \"!../../../../style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../css-loader/dist/cjs.js!./index-DiWRcN3o.css\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../css-loader/dist/cjs.js!./index-DiWRcN3o.css\";\n export default content && content.locals ? content.locals : undefined;\n","export class CancelError extends Error {\n\tconstructor(reason) {\n\t\tsuper(reason || 'Promise was canceled');\n\t\tthis.name = 'CancelError';\n\t}\n\n\tget isCanceled() {\n\t\treturn true;\n\t}\n}\n\nconst promiseState = Object.freeze({\n\tpending: Symbol('pending'),\n\tcanceled: Symbol('canceled'),\n\tresolved: Symbol('resolved'),\n\trejected: Symbol('rejected'),\n});\n\nexport default class PCancelable {\n\tstatic fn(userFunction) {\n\t\treturn (...arguments_) => new PCancelable((resolve, reject, onCancel) => {\n\t\t\targuments_.push(onCancel);\n\t\t\tuserFunction(...arguments_).then(resolve, reject);\n\t\t});\n\t}\n\n\t#cancelHandlers = [];\n\t#rejectOnCancel = true;\n\t#state = promiseState.pending;\n\t#promise;\n\t#reject;\n\n\tconstructor(executor) {\n\t\tthis.#promise = new Promise((resolve, reject) => {\n\t\t\tthis.#reject = reject;\n\n\t\t\tconst onResolve = value => {\n\t\t\t\tif (this.#state !== promiseState.canceled || !onCancel.shouldReject) {\n\t\t\t\t\tresolve(value);\n\t\t\t\t\tthis.#setState(promiseState.resolved);\n\t\t\t\t}\n\t\t\t};\n\n\t\t\tconst onReject = error => {\n\t\t\t\tif (this.#state !== promiseState.canceled || !onCancel.shouldReject) {\n\t\t\t\t\treject(error);\n\t\t\t\t\tthis.#setState(promiseState.rejected);\n\t\t\t\t}\n\t\t\t};\n\n\t\t\tconst onCancel = handler => {\n\t\t\t\tif (this.#state !== promiseState.pending) {\n\t\t\t\t\tthrow new Error(`The \\`onCancel\\` handler was attached after the promise ${this.#state.description}.`);\n\t\t\t\t}\n\n\t\t\t\tthis.#cancelHandlers.push(handler);\n\t\t\t};\n\n\t\t\tObject.defineProperties(onCancel, {\n\t\t\t\tshouldReject: {\n\t\t\t\t\tget: () => this.#rejectOnCancel,\n\t\t\t\t\tset: boolean => {\n\t\t\t\t\t\tthis.#rejectOnCancel = boolean;\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t});\n\n\t\t\texecutor(onResolve, onReject, onCancel);\n\t\t});\n\t}\n\n\t// eslint-disable-next-line unicorn/no-thenable\n\tthen(onFulfilled, onRejected) {\n\t\treturn this.#promise.then(onFulfilled, onRejected);\n\t}\n\n\tcatch(onRejected) {\n\t\treturn this.#promise.catch(onRejected);\n\t}\n\n\tfinally(onFinally) {\n\t\treturn this.#promise.finally(onFinally);\n\t}\n\n\tcancel(reason) {\n\t\tif (this.#state !== promiseState.pending) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.#setState(promiseState.canceled);\n\n\t\tif (this.#cancelHandlers.length > 0) {\n\t\t\ttry {\n\t\t\t\tfor (const handler of this.#cancelHandlers) {\n\t\t\t\t\thandler();\n\t\t\t\t}\n\t\t\t} catch (error) {\n\t\t\t\tthis.#reject(error);\n\t\t\t\treturn;\n\t\t\t}\n\t\t}\n\n\t\tif (this.#rejectOnCancel) {\n\t\t\tthis.#reject(new CancelError(reason));\n\t\t}\n\t}\n\n\tget isCanceled() {\n\t\treturn this.#state === promiseState.canceled;\n\t}\n\n\t#setState(state) {\n\t\tif (this.#state === promiseState.pending) {\n\t\t\tthis.#state = state;\n\t\t}\n\t}\n}\n\nObject.setPrototypeOf(PCancelable.prototype, Promise.prototype);\n","export class TimeoutError extends Error {\n\tconstructor(message) {\n\t\tsuper(message);\n\t\tthis.name = 'TimeoutError';\n\t}\n}\n\n/**\nAn error to be thrown when the request is aborted by AbortController.\nDOMException is thrown instead of this Error when DOMException is available.\n*/\nexport class AbortError extends Error {\n\tconstructor(message) {\n\t\tsuper();\n\t\tthis.name = 'AbortError';\n\t\tthis.message = message;\n\t}\n}\n\n/**\nTODO: Remove AbortError and just throw DOMException when targeting Node 18.\n*/\nconst getDOMException = errorMessage => globalThis.DOMException === undefined\n\t? new AbortError(errorMessage)\n\t: new DOMException(errorMessage);\n\n/**\nTODO: Remove below function and just 'reject(signal.reason)' when targeting Node 18.\n*/\nconst getAbortedReason = signal => {\n\tconst reason = signal.reason === undefined\n\t\t? getDOMException('This operation was aborted.')\n\t\t: signal.reason;\n\n\treturn reason instanceof Error ? reason : getDOMException(reason);\n};\n\nexport default function pTimeout(promise, options) {\n\tconst {\n\t\tmilliseconds,\n\t\tfallback,\n\t\tmessage,\n\t\tcustomTimers = {setTimeout, clearTimeout},\n\t} = options;\n\n\tlet timer;\n\n\tconst wrappedPromise = new Promise((resolve, reject) => {\n\t\tif (typeof milliseconds !== 'number' || Math.sign(milliseconds) !== 1) {\n\t\t\tthrow new TypeError(`Expected \\`milliseconds\\` to be a positive number, got \\`${milliseconds}\\``);\n\t\t}\n\n\t\tif (options.signal) {\n\t\t\tconst {signal} = options;\n\t\t\tif (signal.aborted) {\n\t\t\t\treject(getAbortedReason(signal));\n\t\t\t}\n\n\t\t\tsignal.addEventListener('abort', () => {\n\t\t\t\treject(getAbortedReason(signal));\n\t\t\t});\n\t\t}\n\n\t\tif (milliseconds === Number.POSITIVE_INFINITY) {\n\t\t\tpromise.then(resolve, reject);\n\t\t\treturn;\n\t\t}\n\n\t\t// We create the error outside of `setTimeout` to preserve the stack trace.\n\t\tconst timeoutError = new TimeoutError();\n\n\t\ttimer = customTimers.setTimeout.call(undefined, () => {\n\t\t\tif (fallback) {\n\t\t\t\ttry {\n\t\t\t\t\tresolve(fallback());\n\t\t\t\t} catch (error) {\n\t\t\t\t\treject(error);\n\t\t\t\t}\n\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif (typeof promise.cancel === 'function') {\n\t\t\t\tpromise.cancel();\n\t\t\t}\n\n\t\t\tif (message === false) {\n\t\t\t\tresolve();\n\t\t\t} else if (message instanceof Error) {\n\t\t\t\treject(message);\n\t\t\t} else {\n\t\t\t\ttimeoutError.message = message ?? `Promise timed out after ${milliseconds} milliseconds`;\n\t\t\t\treject(timeoutError);\n\t\t\t}\n\t\t}, milliseconds);\n\n\t\t(async () => {\n\t\t\ttry {\n\t\t\t\tresolve(await promise);\n\t\t\t} catch (error) {\n\t\t\t\treject(error);\n\t\t\t}\n\t\t})();\n\t});\n\n\tconst cancelablePromise = wrappedPromise.finally(() => {\n\t\tcancelablePromise.clear();\n\t});\n\n\tcancelablePromise.clear = () => {\n\t\tcustomTimers.clearTimeout.call(undefined, timer);\n\t\ttimer = undefined;\n\t};\n\n\treturn cancelablePromise;\n}\n","import lowerBound from './lower-bound.js';\nexport default class PriorityQueue {\n #queue = [];\n enqueue(run, options) {\n options = {\n priority: 0,\n ...options,\n };\n const element = {\n priority: options.priority,\n run,\n };\n if (this.size && this.#queue[this.size - 1].priority >= options.priority) {\n this.#queue.push(element);\n return;\n }\n const index = lowerBound(this.#queue, element, (a, b) => b.priority - a.priority);\n this.#queue.splice(index, 0, element);\n }\n dequeue() {\n const item = this.#queue.shift();\n return item?.run;\n }\n filter(options) {\n return this.#queue.filter((element) => element.priority === options.priority).map((element) => element.run);\n }\n get size() {\n return this.#queue.length;\n }\n}\n","// Port of lower_bound from https://en.cppreference.com/w/cpp/algorithm/lower_bound\n// Used to compute insertion index to keep queue sorted after insertion\nexport default function lowerBound(array, value, comparator) {\n let first = 0;\n let count = array.length;\n while (count > 0) {\n const step = Math.trunc(count / 2);\n let it = first + step;\n if (comparator(array[it], value) <= 0) {\n first = ++it;\n count -= step + 1;\n }\n else {\n count = step;\n }\n }\n return first;\n}\n","import { EventEmitter } from 'eventemitter3';\nimport pTimeout, { TimeoutError } from 'p-timeout';\nimport PriorityQueue from './priority-queue.js';\n/**\nPromise queue with concurrency control.\n*/\nexport default class PQueue extends EventEmitter {\n #carryoverConcurrencyCount;\n #isIntervalIgnored;\n #intervalCount = 0;\n #intervalCap;\n #interval;\n #intervalEnd = 0;\n #intervalId;\n #timeoutId;\n #queue;\n #queueClass;\n #pending = 0;\n // The `!` is needed because of https://github.com/microsoft/TypeScript/issues/32194\n #concurrency;\n #isPaused;\n #throwOnTimeout;\n /**\n Per-operation timeout in milliseconds. Operations fulfill once `timeout` elapses if they haven't already.\n\n Applies to each future operation.\n */\n timeout;\n // TODO: The `throwOnTimeout` option should affect the return types of `add()` and `addAll()`\n constructor(options) {\n super();\n // eslint-disable-next-line @typescript-eslint/consistent-type-assertions\n options = {\n carryoverConcurrencyCount: false,\n intervalCap: Number.POSITIVE_INFINITY,\n interval: 0,\n concurrency: Number.POSITIVE_INFINITY,\n autoStart: true,\n queueClass: PriorityQueue,\n ...options,\n };\n if (!(typeof options.intervalCap === 'number' && options.intervalCap >= 1)) {\n throw new TypeError(`Expected \\`intervalCap\\` to be a number from 1 and up, got \\`${options.intervalCap?.toString() ?? ''}\\` (${typeof options.intervalCap})`);\n }\n if (options.interval === undefined || !(Number.isFinite(options.interval) && options.interval >= 0)) {\n throw new TypeError(`Expected \\`interval\\` to be a finite number >= 0, got \\`${options.interval?.toString() ?? ''}\\` (${typeof options.interval})`);\n }\n this.#carryoverConcurrencyCount = options.carryoverConcurrencyCount;\n this.#isIntervalIgnored = options.intervalCap === Number.POSITIVE_INFINITY || options.interval === 0;\n this.#intervalCap = options.intervalCap;\n this.#interval = options.interval;\n this.#queue = new options.queueClass();\n this.#queueClass = options.queueClass;\n this.concurrency = options.concurrency;\n this.timeout = options.timeout;\n this.#throwOnTimeout = options.throwOnTimeout === true;\n this.#isPaused = options.autoStart === false;\n }\n get #doesIntervalAllowAnother() {\n return this.#isIntervalIgnored || this.#intervalCount < this.#intervalCap;\n }\n get #doesConcurrentAllowAnother() {\n return this.#pending < this.#concurrency;\n }\n #next() {\n this.#pending--;\n this.#tryToStartAnother();\n this.emit('next');\n }\n #onResumeInterval() {\n this.#onInterval();\n this.#initializeIntervalIfNeeded();\n this.#timeoutId = undefined;\n }\n get #isIntervalPaused() {\n const now = Date.now();\n if (this.#intervalId === undefined) {\n const delay = this.#intervalEnd - now;\n if (delay < 0) {\n // Act as the interval was done\n // We don't need to resume it here because it will be resumed on line 160\n this.#intervalCount = (this.#carryoverConcurrencyCount) ? this.#pending : 0;\n }\n else {\n // Act as the interval is pending\n if (this.#timeoutId === undefined) {\n this.#timeoutId = setTimeout(() => {\n this.#onResumeInterval();\n }, delay);\n }\n return true;\n }\n }\n return false;\n }\n #tryToStartAnother() {\n if (this.#queue.size === 0) {\n // We can clear the interval (\"pause\")\n // Because we can redo it later (\"resume\")\n if (this.#intervalId) {\n clearInterval(this.#intervalId);\n }\n this.#intervalId = undefined;\n this.emit('empty');\n if (this.#pending === 0) {\n this.emit('idle');\n }\n return false;\n }\n if (!this.#isPaused) {\n const canInitializeInterval = !this.#isIntervalPaused;\n if (this.#doesIntervalAllowAnother && this.#doesConcurrentAllowAnother) {\n const job = this.#queue.dequeue();\n if (!job) {\n return false;\n }\n this.emit('active');\n job();\n if (canInitializeInterval) {\n this.#initializeIntervalIfNeeded();\n }\n return true;\n }\n }\n return false;\n }\n #initializeIntervalIfNeeded() {\n if (this.#isIntervalIgnored || this.#intervalId !== undefined) {\n return;\n }\n this.#intervalId = setInterval(() => {\n this.#onInterval();\n }, this.#interval);\n this.#intervalEnd = Date.now() + this.#interval;\n }\n #onInterval() {\n if (this.#intervalCount === 0 && this.#pending === 0 && this.#intervalId) {\n clearInterval(this.#intervalId);\n this.#intervalId = undefined;\n }\n this.#intervalCount = this.#carryoverConcurrencyCount ? this.#pending : 0;\n this.#processQueue();\n }\n /**\n Executes all queued functions until it reaches the limit.\n */\n #processQueue() {\n // eslint-disable-next-line no-empty\n while (this.#tryToStartAnother()) { }\n }\n get concurrency() {\n return this.#concurrency;\n }\n set concurrency(newConcurrency) {\n if (!(typeof newConcurrency === 'number' && newConcurrency >= 1)) {\n throw new TypeError(`Expected \\`concurrency\\` to be a number from 1 and up, got \\`${newConcurrency}\\` (${typeof newConcurrency})`);\n }\n this.#concurrency = newConcurrency;\n this.#processQueue();\n }\n async #throwOnAbort(signal) {\n return new Promise((_resolve, reject) => {\n signal.addEventListener('abort', () => {\n reject(signal.reason);\n }, { once: true });\n });\n }\n async add(function_, options = {}) {\n options = {\n timeout: this.timeout,\n throwOnTimeout: this.#throwOnTimeout,\n ...options,\n };\n return new Promise((resolve, reject) => {\n this.#queue.enqueue(async () => {\n this.#pending++;\n this.#intervalCount++;\n try {\n options.signal?.throwIfAborted();\n let operation = function_({ signal: options.signal });\n if (options.timeout) {\n operation = pTimeout(Promise.resolve(operation), { milliseconds: options.timeout });\n }\n if (options.signal) {\n operation = Promise.race([operation, this.#throwOnAbort(options.signal)]);\n }\n const result = await operation;\n resolve(result);\n this.emit('completed', result);\n }\n catch (error) {\n if (error instanceof TimeoutError && !options.throwOnTimeout) {\n resolve();\n return;\n }\n reject(error);\n this.emit('error', error);\n }\n finally {\n this.#next();\n }\n }, options);\n this.emit('add');\n this.#tryToStartAnother();\n });\n }\n async addAll(functions, options) {\n return Promise.all(functions.map(async (function_) => this.add(function_, options)));\n }\n /**\n Start (or resume) executing enqueued tasks within concurrency limit. No need to call this if queue is not paused (via `options.autoStart = false` or by `.pause()` method.)\n */\n start() {\n if (!this.#isPaused) {\n return this;\n }\n this.#isPaused = false;\n this.#processQueue();\n return this;\n }\n /**\n Put queue execution on hold.\n */\n pause() {\n this.#isPaused = true;\n }\n /**\n Clear the queue.\n */\n clear() {\n this.#queue = new this.#queueClass();\n }\n /**\n Can be called multiple times. Useful if you for example add additional items at a later time.\n\n @returns A promise that settles when the queue becomes empty.\n */\n async onEmpty() {\n // Instantly resolve if the queue is empty\n if (this.#queue.size === 0) {\n return;\n }\n await this.#onEvent('empty');\n }\n /**\n @returns A promise that settles when the queue size is less than the given limit: `queue.size < limit`.\n\n If you want to avoid having the queue grow beyond a certain size you can `await queue.onSizeLessThan()` before adding a new item.\n\n Note that this only limits the number of items waiting to start. There could still be up to `concurrency` jobs already running that this call does not include in its calculation.\n */\n async onSizeLessThan(limit) {\n // Instantly resolve if the queue is empty.\n if (this.#queue.size < limit) {\n return;\n }\n await this.#onEvent('next', () => this.#queue.size < limit);\n }\n /**\n The difference with `.onEmpty` is that `.onIdle` guarantees that all work from the queue has finished. `.onEmpty` merely signals that the queue is empty, but it could mean that some promises haven't completed yet.\n\n @returns A promise that settles when the queue becomes empty, and all promises have completed; `queue.size === 0 && queue.pending === 0`.\n */\n async onIdle() {\n // Instantly resolve if none pending and if nothing else is queued\n if (this.#pending === 0 && this.#queue.size === 0) {\n return;\n }\n await this.#onEvent('idle');\n }\n async #onEvent(event, filter) {\n return new Promise(resolve => {\n const listener = () => {\n if (filter && !filter()) {\n return;\n }\n this.off(event, listener);\n resolve();\n };\n this.on(event, listener);\n });\n }\n /**\n Size of the queue, the number of queued items waiting to run.\n */\n get size() {\n return this.#queue.size;\n }\n /**\n Size of the queue, filtered by the given options.\n\n For example, this can be used to find the number of items remaining in the queue with a specific priority level.\n */\n sizeBy(options) {\n // eslint-disable-next-line unicorn/no-array-callback-reference\n return this.#queue.filter(options).length;\n }\n /**\n Number of running items (no longer in the queue).\n */\n get pending() {\n return this.#pending;\n }\n /**\n Whether the queue is currently paused.\n */\n get isPaused() {\n return this.#isPaused;\n }\n}\n","import isRetryAllowed from 'is-retry-allowed';\nexport const namespace = 'axios-retry';\nexport function isNetworkError(error) {\n const CODE_EXCLUDE_LIST = ['ERR_CANCELED', 'ECONNABORTED'];\n if (error.response) {\n return false;\n }\n if (!error.code) {\n return false;\n }\n // Prevents retrying timed out & cancelled requests\n if (CODE_EXCLUDE_LIST.includes(error.code)) {\n return false;\n }\n // Prevents retrying unsafe errors\n return isRetryAllowed(error);\n}\nconst SAFE_HTTP_METHODS = ['get', 'head', 'options'];\nconst IDEMPOTENT_HTTP_METHODS = SAFE_HTTP_METHODS.concat(['put', 'delete']);\nexport function isRetryableError(error) {\n return (error.code !== 'ECONNABORTED' &&\n (!error.response ||\n error.response.status === 429 ||\n (error.response.status >= 500 && error.response.status <= 599)));\n}\nexport function isSafeRequestError(error) {\n if (!error.config?.method) {\n // Cannot determine if the request can be retried\n return false;\n }\n return isRetryableError(error) && SAFE_HTTP_METHODS.indexOf(error.config.method) !== -1;\n}\nexport function isIdempotentRequestError(error) {\n if (!error.config?.method) {\n // Cannot determine if the request can be retried\n return false;\n }\n return isRetryableError(error) && IDEMPOTENT_HTTP_METHODS.indexOf(error.config.method) !== -1;\n}\nexport function isNetworkOrIdempotentRequestError(error) {\n return isNetworkError(error) || isIdempotentRequestError(error);\n}\nexport function retryAfter(error = undefined) {\n const retryAfterHeader = error?.response?.headers['retry-after'];\n if (!retryAfterHeader) {\n return 0;\n }\n // if the retry after header is a number, convert it to milliseconds\n let retryAfterMs = (Number(retryAfterHeader) || 0) * 1000;\n // If the retry after header is a date, get the number of milliseconds until that date\n if (retryAfterMs === 0) {\n retryAfterMs = (new Date(retryAfterHeader).valueOf() || 0) - Date.now();\n }\n return Math.max(0, retryAfterMs);\n}\nfunction noDelay(_retryNumber = 0, error = undefined) {\n return Math.max(0, retryAfter(error));\n}\nexport function exponentialDelay(retryNumber = 0, error = undefined, delayFactor = 100) {\n const calculatedDelay = 2 ** retryNumber * delayFactor;\n const delay = Math.max(calculatedDelay, retryAfter(error));\n const randomSum = delay * 0.2 * Math.random(); // 0-20% of the delay\n return delay + randomSum;\n}\nexport const DEFAULT_OPTIONS = {\n retries: 3,\n retryCondition: isNetworkOrIdempotentRequestError,\n retryDelay: noDelay,\n shouldResetTimeout: false,\n onRetry: () => { },\n onMaxRetryTimesExceeded: () => { },\n validateResponse: null\n};\nfunction getRequestOptions(config, defaultOptions) {\n return { ...DEFAULT_OPTIONS, ...defaultOptions, ...config[namespace] };\n}\nfunction setCurrentState(config, defaultOptions) {\n const currentState = getRequestOptions(config, defaultOptions || {});\n currentState.retryCount = currentState.retryCount || 0;\n currentState.lastRequestTime = currentState.lastRequestTime || Date.now();\n config[namespace] = currentState;\n return currentState;\n}\nfunction fixConfig(axiosInstance, config) {\n // @ts-ignore\n if (axiosInstance.defaults.agent === config.agent) {\n // @ts-ignore\n delete config.agent;\n }\n if (axiosInstance.defaults.httpAgent === config.httpAgent) {\n delete config.httpAgent;\n }\n if (axiosInstance.defaults.httpsAgent === config.httpsAgent) {\n delete config.httpsAgent;\n }\n}\nasync function shouldRetry(currentState, error) {\n const { retries, retryCondition } = currentState;\n const shouldRetryOrPromise = (currentState.retryCount || 0) < retries && retryCondition(error);\n // This could be a promise\n if (typeof shouldRetryOrPromise === 'object') {\n try {\n const shouldRetryPromiseResult = await shouldRetryOrPromise;\n // keep return true unless shouldRetryPromiseResult return false for compatibility\n return shouldRetryPromiseResult !== false;\n }\n catch (_err) {\n return false;\n }\n }\n return shouldRetryOrPromise;\n}\nasync function handleRetry(axiosInstance, currentState, error, config) {\n currentState.retryCount += 1;\n const { retryDelay, shouldResetTimeout, onRetry } = currentState;\n const delay = retryDelay(currentState.retryCount, error);\n // Axios fails merging this configuration to the default configuration because it has an issue\n // with circular structures: https://github.com/mzabriskie/axios/issues/370\n fixConfig(axiosInstance, config);\n if (!shouldResetTimeout && config.timeout && currentState.lastRequestTime) {\n const lastRequestDuration = Date.now() - currentState.lastRequestTime;\n const timeout = config.timeout - lastRequestDuration - delay;\n if (timeout <= 0) {\n return Promise.reject(error);\n }\n config.timeout = timeout;\n }\n config.transformRequest = [(data) => data];\n await onRetry(currentState.retryCount, error, config);\n if (config.signal?.aborted) {\n return Promise.resolve(axiosInstance(config));\n }\n return new Promise((resolve) => {\n const abortListener = () => {\n clearTimeout(timeout);\n resolve(axiosInstance(config));\n };\n const timeout = setTimeout(() => {\n resolve(axiosInstance(config));\n if (config.signal?.removeEventListener) {\n config.signal.removeEventListener('abort', abortListener);\n }\n }, delay);\n if (config.signal?.addEventListener) {\n config.signal.addEventListener('abort', abortListener, { once: true });\n }\n });\n}\nasync function handleMaxRetryTimesExceeded(currentState, error) {\n if (currentState.retryCount >= currentState.retries)\n await currentState.onMaxRetryTimesExceeded(error, currentState.retryCount);\n}\nconst axiosRetry = (axiosInstance, defaultOptions) => {\n const requestInterceptorId = axiosInstance.interceptors.request.use((config) => {\n setCurrentState(config, defaultOptions);\n if (config[namespace]?.validateResponse) {\n // by setting this, all HTTP responses will be go through the error interceptor first\n config.validateStatus = () => false;\n }\n return config;\n });\n const responseInterceptorId = axiosInstance.interceptors.response.use(null, async (error) => {\n const { config } = error;\n // If we have no information to retry the request\n if (!config) {\n return Promise.reject(error);\n }\n const currentState = setCurrentState(config, defaultOptions);\n if (error.response && currentState.validateResponse?.(error.response)) {\n // no issue with response\n return error.response;\n }\n if (await shouldRetry(currentState, error)) {\n return handleRetry(axiosInstance, currentState, error, config);\n }\n await handleMaxRetryTimesExceeded(currentState, error);\n return Promise.reject(error);\n });\n return { requestInterceptorId, responseInterceptorId };\n};\n// Compatibility with CommonJS\naxiosRetry.isNetworkError = isNetworkError;\naxiosRetry.isSafeRequestError = isSafeRequestError;\naxiosRetry.isIdempotentRequestError = isIdempotentRequestError;\naxiosRetry.isNetworkOrIdempotentRequestError = isNetworkOrIdempotentRequestError;\naxiosRetry.exponentialDelay = exponentialDelay;\naxiosRetry.isRetryableError = isRetryableError;\nexport default axiosRetry;\n","import GetText from \"node-gettext\";\nimport { a as getLanguage } from \"./chunks/locale-BQFSYg2g.mjs\";\nimport \"@nextcloud/router\";\nimport \"dompurify\";\nimport \"escape-html\";\nvar __defProp = Object.defineProperty;\nvar __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;\nvar __publicField = (obj, key, value) => {\n __defNormalProp(obj, typeof key !== \"symbol\" ? key + \"\" : key, value);\n return value;\n};\nclass GettextBuilder {\n constructor() {\n __publicField(this, \"locale\");\n __publicField(this, \"translations\", {});\n __publicField(this, \"debug\", false);\n }\n setLanguage(language) {\n this.locale = language;\n return this;\n }\n /** Try to detect locale from context with `en` as fallback value */\n detectLocale() {\n return this.setLanguage(getLanguage().replace(\"-\", \"_\"));\n }\n addTranslation(language, data) {\n this.translations[language] = data;\n return this;\n }\n enableDebugMode() {\n this.debug = true;\n return this;\n }\n build() {\n return new GettextWrapper(this.locale || \"en\", this.translations, this.debug);\n }\n}\nclass GettextWrapper {\n constructor(locale, data, debug) {\n __publicField(this, \"gt\");\n this.gt = new GetText({\n debug,\n sourceLocale: \"en\"\n });\n for (const key in data) {\n this.gt.addTranslations(key, \"messages\", data[key]);\n }\n this.gt.setLocale(locale);\n }\n subtitudePlaceholders(translated, vars) {\n return translated.replace(/{([^{}]*)}/g, (a, b) => {\n const r = vars[b];\n if (typeof r === \"string\" || typeof r === \"number\") {\n return r.toString();\n } else {\n return a;\n }\n });\n }\n /**\n * Get translated string (singular form), optionally with placeholders\n *\n * @param original original string to translate\n * @param placeholders map of placeholder key to value\n */\n gettext(original, placeholders = {}) {\n return this.subtitudePlaceholders(\n this.gt.gettext(original),\n placeholders\n );\n }\n /**\n * Get translated string with plural forms\n *\n * @param singular Singular text form\n * @param plural Plural text form to be used if `count` requires it\n * @param count The number to insert into the text\n * @param placeholders optional map of placeholder key to value\n */\n ngettext(singular, plural, count, placeholders = {}) {\n return this.subtitudePlaceholders(\n this.gt.ngettext(singular, plural, count).replace(/%n/g, count.toString()),\n placeholders\n );\n }\n}\nfunction getGettextBuilder() {\n return new GettextBuilder();\n}\nexport {\n getGettextBuilder\n};\n","import '../assets/index-DiWRcN3o.css';\nimport { isPublicShare } from \"@nextcloud/sharing/public\";\nimport Vue, { defineAsyncComponent } from \"vue\";\nimport { getCurrentUser } from \"@nextcloud/auth\";\nimport { davRemoteURL, davRootPath, Folder, Permission, davGetClient, NewMenuEntryCategory, getUniqueName, getNewFileMenuEntries } from \"@nextcloud/files\";\nimport { basename, encodePath } from \"@nextcloud/paths\";\nimport { join, normalize } from \"path\";\nimport axios, { isCancel } from \"@nextcloud/axios\";\nimport PCancelable from \"p-cancelable\";\nimport PQueue from \"p-queue\";\nimport { generateRemoteUrl } from \"@nextcloud/router\";\nimport axiosRetry from \"axios-retry\";\nimport { getGettextBuilder } from \"@nextcloud/l10n/gettext\";\nimport { getLoggerBuilder } from \"@nextcloud/logger\";\nimport { DialogBuilder, showWarning } from \"@nextcloud/dialogs\";\nimport makeEta from \"simple-eta\";\nimport NcActionButton from \"@nextcloud/vue/dist/Components/NcActionButton.js\";\nimport NcActionCaption from \"@nextcloud/vue/dist/Components/NcActionCaption.js\";\nimport NcActionSeparator from \"@nextcloud/vue/dist/Components/NcActionSeparator.js\";\nimport NcActions from \"@nextcloud/vue/dist/Components/NcActions.js\";\nimport NcButton from \"@nextcloud/vue/dist/Components/NcButton.js\";\nimport NcIconSvgWrapper from \"@nextcloud/vue/dist/Components/NcIconSvgWrapper.js\";\nimport NcProgressBar from \"@nextcloud/vue/dist/Components/NcProgressBar.js\";\nconst isFileSystemDirectoryEntry = (o) => \"FileSystemDirectoryEntry\" in window && o instanceof FileSystemDirectoryEntry;\nconst isFileSystemFileEntry = (o) => \"FileSystemFileEntry\" in window && o instanceof FileSystemFileEntry;\nconst isFileSystemEntry = (o) => \"FileSystemEntry\" in window && o instanceof FileSystemEntry;\naxiosRetry(axios, { retries: 0 });\nconst uploadData = async function(url, uploadData2, signal, onUploadProgress = () => {\n}, destinationFile = void 0, headers = {}, retries = 5) {\n let data;\n if (uploadData2 instanceof Blob) {\n data = uploadData2;\n } else {\n data = await uploadData2();\n }\n if (destinationFile) {\n headers.Destination = destinationFile;\n }\n if (!headers[\"Content-Type\"]) {\n headers[\"Content-Type\"] = \"application/octet-stream\";\n }\n return await axios.request({\n method: \"PUT\",\n url,\n data,\n signal,\n onUploadProgress,\n headers,\n \"axios-retry\": {\n retries,\n retryDelay: (retryCount, error) => axiosRetry.exponentialDelay(retryCount, error, 1e3)\n }\n });\n};\nconst getChunk = function(file, start, length) {\n if (start === 0 && file.size <= length) {\n return Promise.resolve(new Blob([file], { type: file.type || \"application/octet-stream\" }));\n }\n return Promise.resolve(new Blob([file.slice(start, start + length)], { type: \"application/octet-stream\" }));\n};\nconst initChunkWorkspace = async function(destinationFile = void 0, retries = 5) {\n const chunksWorkspace = generateRemoteUrl(`dav/uploads/${getCurrentUser()?.uid}`);\n const hash = [...Array(16)].map(() => Math.floor(Math.random() * 16).toString(16)).join(\"\");\n const tempWorkspace = `web-file-upload-${hash}`;\n const url = `${chunksWorkspace}/${tempWorkspace}`;\n const headers = destinationFile ? { Destination: destinationFile } : void 0;\n await axios.request({\n method: \"MKCOL\",\n url,\n headers,\n \"axios-retry\": {\n retries,\n retryDelay: (retryCount, error) => axiosRetry.exponentialDelay(retryCount, error, 1e3)\n }\n });\n return url;\n};\nconst getMaxChunksSize = function(fileSize = void 0) {\n const maxChunkSize = window.OC?.appConfig?.files?.max_chunk_size;\n if (maxChunkSize <= 0) {\n return 0;\n }\n if (!Number(maxChunkSize)) {\n return 10 * 1024 * 1024;\n }\n const minimumChunkSize = Math.max(Number(maxChunkSize), 5 * 1024 * 1024);\n if (fileSize === void 0) {\n return minimumChunkSize;\n }\n return Math.max(minimumChunkSize, Math.ceil(fileSize / 1e4));\n};\nvar Status$1 = /* @__PURE__ */ ((Status2) => {\n Status2[Status2[\"INITIALIZED\"] = 0] = \"INITIALIZED\";\n Status2[Status2[\"UPLOADING\"] = 1] = \"UPLOADING\";\n Status2[Status2[\"ASSEMBLING\"] = 2] = \"ASSEMBLING\";\n Status2[Status2[\"FINISHED\"] = 3] = \"FINISHED\";\n Status2[Status2[\"CANCELLED\"] = 4] = \"CANCELLED\";\n Status2[Status2[\"FAILED\"] = 5] = \"FAILED\";\n return Status2;\n})(Status$1 || {});\nclass Upload {\n _source;\n _file;\n _isChunked;\n _chunks;\n _size;\n _uploaded = 0;\n _startTime = 0;\n _status = 0;\n _controller;\n _response = null;\n constructor(source, chunked = false, size, file) {\n const chunks = Math.min(getMaxChunksSize() > 0 ? Math.ceil(size / getMaxChunksSize()) : 1, 1e4);\n this._source = source;\n this._isChunked = chunked && getMaxChunksSize() > 0 && chunks > 1;\n this._chunks = this._isChunked ? chunks : 1;\n this._size = size;\n this._file = file;\n this._controller = new AbortController();\n }\n get source() {\n return this._source;\n }\n get file() {\n return this._file;\n }\n get isChunked() {\n return this._isChunked;\n }\n get chunks() {\n return this._chunks;\n }\n get size() {\n return this._size;\n }\n get startTime() {\n return this._startTime;\n }\n set response(response) {\n this._response = response;\n }\n get response() {\n return this._response;\n }\n get uploaded() {\n return this._uploaded;\n }\n /**\n * Update the uploaded bytes of this upload\n */\n set uploaded(length) {\n if (length >= this._size) {\n this._status = this._isChunked ? 2 : 3;\n this._uploaded = this._size;\n return;\n }\n this._status = 1;\n this._uploaded = length;\n if (this._startTime === 0) {\n this._startTime = (/* @__PURE__ */ new Date()).getTime();\n }\n }\n get status() {\n return this._status;\n }\n /**\n * Update this upload status\n */\n set status(status) {\n this._status = status;\n }\n /**\n * Returns the axios cancel token source\n */\n get signal() {\n return this._controller.signal;\n }\n /**\n * Cancel any ongoing requests linked to this upload\n */\n cancel() {\n this._controller.abort();\n this._status = 4;\n }\n}\nclass Directory extends File {\n _originalName;\n _path;\n _children;\n constructor(path, children) {\n super([], basename(path), { type: \"httpd/unix-directory\", lastModified: 0 });\n this._children = /* @__PURE__ */ new Map();\n this._originalName = basename(path);\n this._path = path;\n if (children) {\n children.forEach((c) => this.addChild(c));\n }\n }\n get size() {\n return this.children.reduce((sum, file) => sum + file.size, 0);\n }\n get lastModified() {\n return this.children.reduce((latest, file) => Math.max(latest, file.lastModified), 0);\n }\n // We need this to keep track of renamed files\n get originalName() {\n return this._originalName;\n }\n get children() {\n return Array.from(this._children.values());\n }\n get webkitRelativePath() {\n return this._path;\n }\n getChild(name) {\n return this._children.get(name) ?? null;\n }\n async addChild(file) {\n const rootPath = this._path && `${this._path}/`;\n if (isFileSystemFileEntry(file)) {\n file = await new Promise((resolve, reject) => file.file(resolve, reject));\n } else if (isFileSystemDirectoryEntry(file)) {\n const reader = file.createReader();\n const entries = await new Promise((resolve, reject) => reader.readEntries(resolve, reject));\n this._children.set(file.name, new Directory(`${rootPath}${file.name}`, entries));\n return;\n }\n file = file;\n const filePath = file.webkitRelativePath ?? file.name;\n if (!filePath.includes(\"/\")) {\n this._children.set(file.name, file);\n } else {\n if (!filePath.startsWith(this._path)) {\n throw new Error(`File ${filePath} is not a child of ${this._path}`);\n }\n const relPath = filePath.slice(rootPath.length);\n const name = basename(relPath);\n if (name === relPath) {\n this._children.set(name, file);\n } else {\n const base = relPath.slice(0, relPath.indexOf(\"/\"));\n if (this._children.has(base)) {\n this._children.get(base).addChild(file);\n } else {\n this._children.set(base, new Directory(`${rootPath}${base}`, [file]));\n }\n }\n }\n }\n}\n/**\n * @copyright Copyright (c) 2023 Ferdinand Thiessen \n *\n * @author Ferdinand Thiessen \n * @author John Molakvoæ \n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see .\n *\n */\nconst gtBuilder = getGettextBuilder().detectLocale();\n[{ \"locale\": \"af\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Afrikaans (https://www.transifex.com/nextcloud/teams/64236/af/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"af\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Afrikaans (https://www.transifex.com/nextcloud/teams/64236/af/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: af\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ar\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Ali , 2024\", \"Language-Team\": \"Arabic (https://app.transifex.com/nextcloud/teams/64236/ar/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ar\", \"Plural-Forms\": \"nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nAli , 2024\\n\" }, \"msgstr\": [\"Last-Translator: Ali , 2024\\nLanguage-Team: Arabic (https://app.transifex.com/nextcloud/teams/64236/ar/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ar\\nPlural-Forms: nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;\\n\"] }, '\"{filename}\" contains invalid characters, how do you want to continue?': { \"msgid\": '\"{filename}\" contains invalid characters, how do you want to continue?', \"msgstr\": ['\"{filename}\" يحتوي على حروف غير مقبولة. كيف ترغب في الاستمرار؟'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} ملف متعارض\", \"{count} ملف متعارض\", \"{count} ملفان متعارضان\", \"{count} ملف متعارض\", \"{count} ملفات متعارضة\", \"{count} ملفات متعارضة\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} ملف متعارض في n {dirname}\", \"{count} ملف متعارض في n {dirname}\", \"{count} ملفان متعارضان في n {dirname}\", \"{count} ملف متعارض في n {dirname}\", \"{count} ملفات متعارضة في n {dirname}\", \"{count} ملفات متعارضة في n {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} ثانية متبقية\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} متبقية\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"باقٍ بضعُ ثوانٍ\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"إلغاء\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"إلغِ العملية بالكامل\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"إلغاء عمليات رفع الملفات\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"إستمر\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"إنشاء جديد\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"تقدير الوقت المتبقي\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"الإصدار الحالي\"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"إذا اخترت الاحتفاظ بالنسختين فسيتم إلحاق رقم عداد آخر اسم الملف الوارد.\"] }, \"Invalid file name\": { \"msgid\": \"Invalid file name\", \"msgstr\": [\"اسم الملف غير صحيح\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"تاريخ آخر تعديل غير معلوم\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"جديد\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"نسخة جديدة\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"مُجمَّد\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"معاينة الصورة\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"تغيير التسمية\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"حدِّد كل صناديق الخيارات\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"حدِّد كل الملفات الموجودة\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"حدِّد كل الملفات الجديدة\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"تخطِّي\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"تخطَّ {count} ملف\", \"تخطَّ {count} ملف\", \"تخطَّ {count} ملف\", \"تخطَّ {count} ملف\", \"تخطَّ {count} ملف\", \"تخطَّ {count} ملف\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"حجم غير معلوم\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"رفع ملفات\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"رفع مجلدات\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"الرفع من جهاز \"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"تمّ إلغاء عملية رفع الملفات\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"تقدُّم الرفع \"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"عند تحديد مجلد وارد، أي ملفات متعارضة بداخله ستتم الكتابة فوقها.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"عند تحديد مجلد وارد، ستتم كتابة المحتوى في المجلد الموجود و سيتم تنفيذ حل التعارض بشكل تعاوُدي.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"أيُّ الملفات ترغب في الإبقاء عليها؟\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"يجب أن تختار نسخة واحدة على الأقل من كل ملف للاستمرار.\"] } } } } }, { \"locale\": \"ar_SA\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Arabic (Saudi Arabia) (https://www.transifex.com/nextcloud/teams/64236/ar_SA/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ar_SA\", \"Plural-Forms\": \"nplurals=6; plural=(n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Arabic (Saudi Arabia) (https://www.transifex.com/nextcloud/teams/64236/ar_SA/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ar_SA\\nPlural-Forms: nplurals=6; plural=(n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ast\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"enolp , 2023\", \"Language-Team\": \"Asturian (https://app.transifex.com/nextcloud/teams/64236/ast/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ast\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nenolp , 2023\\n\" }, \"msgstr\": [\"Last-Translator: enolp , 2023\\nLanguage-Team: Asturian (https://app.transifex.com/nextcloud/teams/64236/ast/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ast\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} ficheru en coflictu\", \"{count} ficheros en coflictu\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} ficheru en coflictu en {dirname}\", \"{count} ficheros en coflictu en {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"Queden {seconds} segundos\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"Tiempu que queda: {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"queden unos segundos\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Encaboxar les xubes\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Siguir\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimando'l tiempu que falta\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Versión esistente\"] }, \"If you select both versions, the copied file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the copied file will have a number added to its name.\", \"msgstr\": [\"Si seleiciones dambes versiones, el ficheru copiáu va tener un númberu amestáu al so nome.\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"La data de la última modificación ye desconocida\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nuevu\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Versión nueva\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"en posa\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Previsualizar la imaxe\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Marcar toles caxelles\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Seleicionar tolos ficheros esistentes\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Seleicionar tolos ficheros nuevos\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Saltar esti ficheru\", \"Saltar {count} ficheros\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Tamañu desconocíu\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"Encaboxóse la xuba\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Xubir ficheros\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Xuba en cursu\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"¿Qué ficheros quies caltener?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Tienes de seleicionar polo menos una versión de cada ficheru pa siguir.\"] } } } } }, { \"locale\": \"az\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Rashad Aliyev , 2023\", \"Language-Team\": \"Azerbaijani (https://app.transifex.com/nextcloud/teams/64236/az/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"az\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nRashad Aliyev , 2023\\n\" }, \"msgstr\": [\"Last-Translator: Rashad Aliyev , 2023\\nLanguage-Team: Azerbaijani (https://app.transifex.com/nextcloud/teams/64236/az/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: az\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} saniyə qalıb\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"{time} qalıb\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"bir neçə saniyə qalıb\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Əlavə et\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Yükləməni imtina et\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"Təxmini qalan vaxt\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pauzadadır\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Faylları yüklə\"] } } } } }, { \"locale\": \"be\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Belarusian (https://www.transifex.com/nextcloud/teams/64236/be/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"be\", \"Plural-Forms\": \"nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Belarusian (https://www.transifex.com/nextcloud/teams/64236/be/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: be\\nPlural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"bg_BG\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Bulgarian (Bulgaria) (https://www.transifex.com/nextcloud/teams/64236/bg_BG/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"bg_BG\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Bulgarian (Bulgaria) (https://www.transifex.com/nextcloud/teams/64236/bg_BG/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: bg_BG\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"bn_BD\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Bengali (Bangladesh) (https://www.transifex.com/nextcloud/teams/64236/bn_BD/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"bn_BD\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Bengali (Bangladesh) (https://www.transifex.com/nextcloud/teams/64236/bn_BD/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: bn_BD\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"br\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Breton (https://www.transifex.com/nextcloud/teams/64236/br/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"br\", \"Plural-Forms\": \"nplurals=5; plural=((n%10 == 1) && (n%100 != 11) && (n%100 !=71) && (n%100 !=91) ? 0 :(n%10 == 2) && (n%100 != 12) && (n%100 !=72) && (n%100 !=92) ? 1 :(n%10 ==3 || n%10==4 || n%10==9) && (n%100 < 10 || n% 100 > 19) && (n%100 < 70 || n%100 > 79) && (n%100 < 90 || n%100 > 99) ? 2 :(n != 0 && n % 1000000 == 0) ? 3 : 4);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Breton (https://www.transifex.com/nextcloud/teams/64236/br/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: br\\nPlural-Forms: nplurals=5; plural=((n%10 == 1) && (n%100 != 11) && (n%100 !=71) && (n%100 !=91) ? 0 :(n%10 == 2) && (n%100 != 12) && (n%100 !=72) && (n%100 !=92) ? 1 :(n%10 ==3 || n%10==4 || n%10==9) && (n%100 < 10 || n% 100 > 19) && (n%100 < 70 || n%100 > 79) && (n%100 < 90 || n%100 > 99) ? 2 :(n != 0 && n % 1000000 == 0) ? 3 : 4);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"bs\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Bosnian (https://www.transifex.com/nextcloud/teams/64236/bs/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"bs\", \"Plural-Forms\": \"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Bosnian (https://www.transifex.com/nextcloud/teams/64236/bs/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: bs\\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ca\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Toni Hermoso Pulido , 2022\", \"Language-Team\": \"Catalan (https://www.transifex.com/nextcloud/teams/64236/ca/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ca\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nMarc Riera , 2022\\nToni Hermoso Pulido , 2022\\n\" }, \"msgstr\": [\"Last-Translator: Toni Hermoso Pulido , 2022\\nLanguage-Team: Catalan (https://www.transifex.com/nextcloud/teams/64236/ca/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ca\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"Queden {seconds} segons\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"Queden {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"Queden uns segons\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Afegeix\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Cancel·la les pujades\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"S'està estimant el temps restant\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"En pausa\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Puja els fitxers\"] } } } } }, { \"locale\": \"cs\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Pavel Borecki , 2022\", \"Language-Team\": \"Czech (https://www.transifex.com/nextcloud/teams/64236/cs/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"cs\", \"Plural-Forms\": \"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nPavel Borecki , 2022\\n\" }, \"msgstr\": [\"Last-Translator: Pavel Borecki , 2022\\nLanguage-Team: Czech (https://www.transifex.com/nextcloud/teams/64236/cs/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: cs\\nPlural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"zbývá {seconds}\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"zbývá {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"zbývá několik sekund\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Přidat\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Zrušit nahrávání\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"odhadovaný zbývající čas\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pozastaveno\"] } } } } }, { \"locale\": \"cs_CZ\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Michal Šmahel , 2024\", \"Language-Team\": \"Czech (Czech Republic) (https://app.transifex.com/nextcloud/teams/64236/cs_CZ/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"cs_CZ\", \"Plural-Forms\": \"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nMichal Šmahel , 2024\\n\" }, \"msgstr\": [\"Last-Translator: Michal Šmahel , 2024\\nLanguage-Team: Czech (Czech Republic) (https://app.transifex.com/nextcloud/teams/64236/cs_CZ/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: cs_CZ\\nPlural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} kolize souborů\", \"{count} kolize souborů\", \"{count} kolizí souborů\", \"{count} kolize souborů\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} kolize souboru v {dirname}\", \"{count} kolize souboru v {dirname}\", \"{count} kolizí souborů v {dirname}\", \"{count} kolize souboru v {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"zbývá {seconds}\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"zbývá {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"zbývá několik sekund\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Zrušit\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Zrušit celou operaci\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Zrušit nahrávání\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Pokračovat\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"odhaduje se zbývající čas\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Existující verze\"] }, \"If you select both versions, the copied file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the copied file will have a number added to its name.\", \"msgstr\": [\"Pokud vyberete obě verze, zkopírovaný soubor bude mít k názvu přidáno číslo.\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Neznámé datum poslední úpravy\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nové\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Nová verze\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pozastaveno\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Náhled obrázku\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Označit všechny zaškrtávací kolonky\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Vybrat veškeré stávající soubory\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Vybrat veškeré nové soubory\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Přeskočit tento soubor\", \"Přeskočit {count} soubory\", \"Přeskočit {count} souborů\", \"Přeskočit {count} soubory\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Neznámá velikost\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"Nahrávání zrušeno\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Nahrát soubory\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Postup v nahrávání\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Po výběru příchozí složky budou rovněž přepsány všechny v ní obsažené konfliktní soubory\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Které soubory si přejete ponechat?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Aby bylo možné pokračovat, je třeba vybrat alespoň jednu verzi od každého souboru.\"] } } } } }, { \"locale\": \"cy_GB\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Welsh (United Kingdom) (https://www.transifex.com/nextcloud/teams/64236/cy_GB/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"cy_GB\", \"Plural-Forms\": \"nplurals=4; plural=(n==1) ? 0 : (n==2) ? 1 : (n != 8 && n != 11) ? 2 : 3;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Welsh (United Kingdom) (https://www.transifex.com/nextcloud/teams/64236/cy_GB/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: cy_GB\\nPlural-Forms: nplurals=4; plural=(n==1) ? 0 : (n==2) ? 1 : (n != 8 && n != 11) ? 2 : 3;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"da\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Martin Bonde , 2024\", \"Language-Team\": \"Danish (https://app.transifex.com/nextcloud/teams/64236/da/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"da\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nMartin Bonde , 2024\\n\" }, \"msgstr\": [\"Last-Translator: Martin Bonde , 2024\\nLanguage-Team: Danish (https://app.transifex.com/nextcloud/teams/64236/da/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: da\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} fil konflikt\", \"{count} filer i konflikt\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} fil konflikt i {dirname}\", \"{count} filer i konflikt i {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{sekunder} sekunder tilbage\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{tid} tilbage\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"et par sekunder tilbage\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Annuller\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Annuller hele handlingen\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Annuller uploads\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Fortsæt\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimering af resterende tid\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Eksisterende version\"] }, \"If you select both versions, the copied file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the copied file will have a number added to its name.\", \"msgstr\": [\"Hvis du vælger begge versioner vil den kopierede fil få et nummer tilføjet til sit navn.\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Sidste modifikationsdato ukendt\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Ny\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Ny version\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pauset\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Forhåndsvisning af billede\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Vælg alle felter\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Vælg alle eksisterende filer\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Vælg alle nye filer\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Spring denne fil over\", \"Spring {count} filer over\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Ukendt størrelse\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"Upload annulleret\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Upload filer\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Upload fremskridt\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Når en indgående mappe er valgt, vil alle modstridende filer i den også blive overskrevet.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Hvilke filer ønsker du at beholde?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Du skal vælge mindst én version af hver fil for at fortsætte.\"] } } } } }, { \"locale\": \"de\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Mario Siegmann , 2024\", \"Language-Team\": \"German (https://app.transifex.com/nextcloud/teams/64236/de/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"de\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nMario Siegmann , 2024\\n\" }, \"msgstr\": [\"Last-Translator: Mario Siegmann , 2024\\nLanguage-Team: German (https://app.transifex.com/nextcloud/teams/64236/de/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: de\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} Datei-Konflikt\", \"{count} Datei-Konflikte\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} Datei-Konflikt in {dirname}\", \"{count} Datei-Konflikte in {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} Sekunden verbleibend\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} verbleibend\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"noch ein paar Sekunden\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Abbrechen\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Den gesamten Vorgang abbrechen\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Hochladen abbrechen\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Fortsetzen\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"Geschätzte verbleibende Zeit\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Vorhandene Version\"] }, \"If you select both versions, the copied file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the copied file will have a number added to its name.\", \"msgstr\": [\"Wenn du beide Versionen auswählst, wird der kopierten Datei eine Nummer zum Namen hinzugefügt.\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Datum der letzten Änderung unbekannt\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Neu\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Neue Version\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"Pausiert\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Vorschaubild\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Alle Kontrollkästchen aktivieren\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Alle vorhandenen Dateien auswählen\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Alle neuen Dateien auswählen\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Diese Datei überspringen\", \"{count} Dateien überspringen\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Unbekannte Größe\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"Hochladen abgebrochen\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Dateien hochladen\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Fortschritt beim Hochladen\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Wenn ein eingehender Ordner ausgewählt wird, werden alle darin enthaltenen Konfliktdateien ebenfalls überschrieben.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Welche Dateien möchtest du behalten?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Du musst mindestens eine Version jeder Datei auswählen, um fortzufahren.\"] } } } } }, { \"locale\": \"de_DE\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Mario Siegmann , 2024\", \"Language-Team\": \"German (Germany) (https://app.transifex.com/nextcloud/teams/64236/de_DE/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"de_DE\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nMario Siegmann , 2024\\n\" }, \"msgstr\": [\"Last-Translator: Mario Siegmann , 2024\\nLanguage-Team: German (Germany) (https://app.transifex.com/nextcloud/teams/64236/de_DE/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: de_DE\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{filename}\" contains invalid characters, how do you want to continue?': { \"msgid\": '\"{filename}\" contains invalid characters, how do you want to continue?', \"msgstr\": ['\"{filename}\" enthält ungültige Zeichen. Wie möchten Sie fortfahren?'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} Datei-Konflikt\", \"{count} Datei-Konflikte\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} Datei-Konflikt in {dirname}\", \"{count} Datei-Konflikte in {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} Sekunden verbleiben\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} verbleibend\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"ein paar Sekunden verbleiben\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Abbrechen\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Den gesamten Vorgang abbrechen\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Hochladen abbrechen\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Fortsetzen\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Neu erstellen\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"Geschätzte verbleibende Zeit\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Vorhandene Version\"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Wenn Sie beide Versionen auswählen, wird der eingehenden Datei eine Nummer zum Namen hinzugefügt.\"] }, \"Invalid file name\": { \"msgid\": \"Invalid file name\", \"msgstr\": [\"Ungültiger Dateiname\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Datum der letzten Änderung unbekannt\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Neu\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Neue Version\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"Pausiert\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Vorschaubild\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Umbenennen\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Alle Kontrollkästchen aktivieren\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Alle vorhandenen Dateien auswählen\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Alle neuen Dateien auswählen\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Überspringen\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"{count} Datei überspringen\", \"{count} Dateien überspringen\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Unbekannte Größe\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Dateien hochladen\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Ordner hochladen\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Vom Gerät hochladen\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Das Hochladen wurde abgebrochen\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Fortschritt beim Hochladen\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Wenn ein eingehender Ordner ausgewählt wird, werden alle darin enthaltenen Konfliktdateien ebenfalls überschrieben.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Bei Auswahl eines eingehenden Ordners wird der Inhalt in den vorhandenen Ordner geschrieben und eine rekursive Konfliktlösung durchgeführt.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Welche Dateien möchten Sie behalten?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Sie müssen mindestens eine Version jeder Datei auswählen, um fortzufahren.\"] } } } } }, { \"locale\": \"el\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Nik Pap, 2022\", \"Language-Team\": \"Greek (https://www.transifex.com/nextcloud/teams/64236/el/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"el\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nNik Pap, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Nik Pap, 2022\\nLanguage-Team: Greek (https://www.transifex.com/nextcloud/teams/64236/el/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: el\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"απομένουν {seconds} δευτερόλεπτα\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"απομένουν {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"απομένουν λίγα δευτερόλεπτα\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Προσθήκη\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Ακύρωση μεταφορτώσεων\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"εκτίμηση του χρόνου που απομένει\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"σε παύση\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Μεταφόρτωση αρχείων\"] } } } } }, { \"locale\": \"el_GR\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Greek (Greece) (https://www.transifex.com/nextcloud/teams/64236/el_GR/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"el_GR\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Greek (Greece) (https://www.transifex.com/nextcloud/teams/64236/el_GR/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: el_GR\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"en_GB\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Andi Chandler , 2024\", \"Language-Team\": \"English (United Kingdom) (https://app.transifex.com/nextcloud/teams/64236/en_GB/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"en_GB\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nAndi Chandler , 2024\\n\" }, \"msgstr\": [\"Last-Translator: Andi Chandler , 2024\\nLanguage-Team: English (United Kingdom) (https://app.transifex.com/nextcloud/teams/64236/en_GB/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: en_GB\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} file conflict\", \"{count} files conflict\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} file conflict in {dirname}\", \"{count} file conflicts in {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} seconds left\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} left\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"a few seconds left\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Cancel\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Cancel the entire operation\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Cancel uploads\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Continue\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimating time left\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Existing version\"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"If you select both versions, the incoming file will have a number added to its name.\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Last modified date unknown\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"New\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"New version\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"paused\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Preview image\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Select all checkboxes\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Select all existing files\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Select all new files\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Skip this file\", \"Skip {count} files\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Unknown size\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"Upload cancelled\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Upload files\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Upload progress\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"When an incoming folder is selected, any conflicting files within it will also be overwritten.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Which files do you want to keep?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"You need to select at least one version of each file to continue.\"] } } } } }, { \"locale\": \"eo\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Esperanto (https://www.transifex.com/nextcloud/teams/64236/eo/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"eo\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Esperanto (https://www.transifex.com/nextcloud/teams/64236/eo/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: eo\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Julio C. Ortega, 2024\", \"Language-Team\": \"Spanish (https://app.transifex.com/nextcloud/teams/64236/es/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nFranciscoFJ , 2024\\nJulio C. Ortega, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Julio C. Ortega, 2024\\nLanguage-Team: Spanish (https://app.transifex.com/nextcloud/teams/64236/es/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, '\"{filename}\" contains invalid characters, how do you want to continue?': { \"msgid\": '\"{filename}\" contains invalid characters, how do you want to continue?', \"msgstr\": ['\"{filename}\" contiene caracteres inválidos, ¿cómo desea continuar?'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} conflicto de archivo\", \"{count} conflictos de archivo\", \"{count} conflictos de archivo\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} conflicto de archivo en {dirname}\", \"{count} conflictos de archivo en {dirname}\", \"{count} conflictos de archivo en {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} segundos restantes\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} restante\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"quedan unos segundos\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Cancelar\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Cancelar toda la operación\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Cancelar subidas\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Continuar\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Crear nuevo\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimando tiempo restante\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Versión existente\"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Si selecciona ambas versionas, el archivo entrante le será agregado un número a su nombre.\"] }, \"Invalid file name\": { \"msgid\": \"Invalid file name\", \"msgstr\": [\"Nombre de archivo inválido\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Última fecha de modificación desconocida\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nuevo\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Nueva versión\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pausado\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Previsualizar imagen\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Renombrar\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Seleccionar todas las casillas de verificación\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Seleccionar todos los archivos existentes\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Seleccionar todos los archivos nuevos\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Saltar\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Saltar este archivo\", \"Saltar {count} archivos\", \"Saltar {count} archivos\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Tamaño desconocido\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Subir archivos\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Subir carpetas\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Subir desde dispositivo\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"La subida ha sido cancelada\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Progreso de la subida\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Cuando una carpeta entrante es seleccionada, cualquier de los archivos en conflictos también serán sobre-escritos.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Cuando una carpeta entrante es seleccionada, el contenido es escrito en la carpeta existente y se realizará una resolución de conflictos recursiva.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"¿Qué archivos desea conservar?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Debe seleccionar al menos una versión de cada archivo para continuar.\"] } } } } }, { \"locale\": \"es_419\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"ALEJANDRO CASTRO, 2022\", \"Language-Team\": \"Spanish (Latin America) (https://www.transifex.com/nextcloud/teams/64236/es_419/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_419\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nALEJANDRO CASTRO, 2022\\n\" }, \"msgstr\": [\"Last-Translator: ALEJANDRO CASTRO, 2022\\nLanguage-Team: Spanish (Latin America) (https://www.transifex.com/nextcloud/teams/64236/es_419/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_419\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} segundos restantes\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"{tiempo} restante\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"quedan pocos segundos\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"agregar\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Cancelar subidas\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimando tiempo restante\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pausado\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Subir archivos\"] } } } } }, { \"locale\": \"es_AR\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Matias Iglesias, 2022\", \"Language-Team\": \"Spanish (Argentina) (https://www.transifex.com/nextcloud/teams/64236/es_AR/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_AR\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nMatias Iglesias, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Matias Iglesias, 2022\\nLanguage-Team: Spanish (Argentina) (https://www.transifex.com/nextcloud/teams/64236/es_AR/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_AR\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} segundos restantes\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"{time} restante\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"quedan unos segundos\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Añadir\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Cancelar subidas\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimando tiempo restante\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pausado\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Subir archivos\"] } } } } }, { \"locale\": \"es_CL\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Chile) (https://www.transifex.com/nextcloud/teams/64236/es_CL/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_CL\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Chile) (https://www.transifex.com/nextcloud/teams/64236/es_CL/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_CL\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_CO\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Colombia) (https://www.transifex.com/nextcloud/teams/64236/es_CO/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_CO\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Colombia) (https://www.transifex.com/nextcloud/teams/64236/es_CO/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_CO\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_CR\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Costa Rica) (https://www.transifex.com/nextcloud/teams/64236/es_CR/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_CR\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Costa Rica) (https://www.transifex.com/nextcloud/teams/64236/es_CR/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_CR\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_DO\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Dominican Republic) (https://www.transifex.com/nextcloud/teams/64236/es_DO/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_DO\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Dominican Republic) (https://www.transifex.com/nextcloud/teams/64236/es_DO/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_DO\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_EC\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Ecuador) (https://www.transifex.com/nextcloud/teams/64236/es_EC/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_EC\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Ecuador) (https://www.transifex.com/nextcloud/teams/64236/es_EC/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_EC\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_GT\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Guatemala) (https://www.transifex.com/nextcloud/teams/64236/es_GT/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_GT\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Guatemala) (https://www.transifex.com/nextcloud/teams/64236/es_GT/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_GT\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_HN\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Honduras) (https://www.transifex.com/nextcloud/teams/64236/es_HN/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_HN\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Honduras) (https://www.transifex.com/nextcloud/teams/64236/es_HN/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_HN\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_MX\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"ALEJANDRO CASTRO, 2022\", \"Language-Team\": \"Spanish (Mexico) (https://www.transifex.com/nextcloud/teams/64236/es_MX/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_MX\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nLuis Francisco Castro, 2022\\nALEJANDRO CASTRO, 2022\\n\" }, \"msgstr\": [\"Last-Translator: ALEJANDRO CASTRO, 2022\\nLanguage-Team: Spanish (Mexico) (https://www.transifex.com/nextcloud/teams/64236/es_MX/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_MX\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} segundos restantes\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"{tiempo} restante\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"quedan pocos segundos\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"agregar\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"cancelar las cargas\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimando tiempo restante\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"en pausa\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"cargar archivos\"] } } } } }, { \"locale\": \"es_NI\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Nicaragua) (https://www.transifex.com/nextcloud/teams/64236/es_NI/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_NI\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Nicaragua) (https://www.transifex.com/nextcloud/teams/64236/es_NI/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_NI\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_PA\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Panama) (https://www.transifex.com/nextcloud/teams/64236/es_PA/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_PA\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Panama) (https://www.transifex.com/nextcloud/teams/64236/es_PA/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_PA\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_PE\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Peru) (https://www.transifex.com/nextcloud/teams/64236/es_PE/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_PE\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Peru) (https://www.transifex.com/nextcloud/teams/64236/es_PE/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_PE\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_PR\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Puerto Rico) (https://www.transifex.com/nextcloud/teams/64236/es_PR/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_PR\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Puerto Rico) (https://www.transifex.com/nextcloud/teams/64236/es_PR/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_PR\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_PY\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Paraguay) (https://www.transifex.com/nextcloud/teams/64236/es_PY/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_PY\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Paraguay) (https://www.transifex.com/nextcloud/teams/64236/es_PY/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_PY\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_SV\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (El Salvador) (https://www.transifex.com/nextcloud/teams/64236/es_SV/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_SV\", \"Plural-Forms\": \"nplurals=2; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (El Salvador) (https://www.transifex.com/nextcloud/teams/64236/es_SV/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_SV\\nPlural-Forms: nplurals=2; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_UY\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Uruguay) (https://www.transifex.com/nextcloud/teams/64236/es_UY/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_UY\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Uruguay) (https://www.transifex.com/nextcloud/teams/64236/es_UY/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_UY\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"et_EE\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Taavo Roos, 2023\", \"Language-Team\": \"Estonian (Estonia) (https://app.transifex.com/nextcloud/teams/64236/et_EE/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"et_EE\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nMait R, 2022\\nTaavo Roos, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Taavo Roos, 2023\\nLanguage-Team: Estonian (Estonia) (https://app.transifex.com/nextcloud/teams/64236/et_EE/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: et_EE\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} jäänud sekundid\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"{time} aega jäänud\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"jäänud mõni sekund\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Lisa\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Tühista üleslaadimine\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"hinnanguline järelejäänud aeg\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pausil\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Lae failid üles\"] } } } } }, { \"locale\": \"eu\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Unai Tolosa Pontesta , 2022\", \"Language-Team\": \"Basque (https://www.transifex.com/nextcloud/teams/64236/eu/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"eu\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nUnai Tolosa Pontesta , 2022\\n\" }, \"msgstr\": [\"Last-Translator: Unai Tolosa Pontesta , 2022\\nLanguage-Team: Basque (https://www.transifex.com/nextcloud/teams/64236/eu/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: eu\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} segundo geratzen dira\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"{time} geratzen da\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"segundo batzuk geratzen dira\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Gehitu\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Ezeztatu igoerak\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"kalkulatutako geratzen den denbora\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"geldituta\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Igo fitxategiak\"] } } } } }, { \"locale\": \"fa\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Fatemeh Komeily, 2023\", \"Language-Team\": \"Persian (https://app.transifex.com/nextcloud/teams/64236/fa/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"fa\", \"Plural-Forms\": \"nplurals=2; plural=(n > 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nFatemeh Komeily, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Fatemeh Komeily, 2023\\nLanguage-Team: Persian (https://app.transifex.com/nextcloud/teams/64236/fa/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: fa\\nPlural-Forms: nplurals=2; plural=(n > 1);\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"ثانیه های باقی مانده\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"باقی مانده\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"چند ثانیه مانده\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"اضافه کردن\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"کنسل کردن فایل های اپلود شده\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"تخمین زمان باقی مانده\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"مکث کردن\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"بارگذاری فایل ها\"] } } } } }, { \"locale\": \"fi_FI\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Jiri Grönroos , 2022\", \"Language-Team\": \"Finnish (Finland) (https://www.transifex.com/nextcloud/teams/64236/fi_FI/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"fi_FI\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJiri Grönroos , 2022\\n\" }, \"msgstr\": [\"Last-Translator: Jiri Grönroos , 2022\\nLanguage-Team: Finnish (Finland) (https://www.transifex.com/nextcloud/teams/64236/fi_FI/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: fi_FI\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} sekuntia jäljellä\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"{time} jäljellä\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"muutama sekunti jäljellä\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Lisää\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Peruuta lähetykset\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"arvioidaan jäljellä olevaa aikaa\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"keskeytetty\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Lähetä tiedostoja\"] } } } } }, { \"locale\": \"fo\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Faroese (https://www.transifex.com/nextcloud/teams/64236/fo/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"fo\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Faroese (https://www.transifex.com/nextcloud/teams/64236/fo/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: fo\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"fr\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"jed boulahya, 2024\", \"Language-Team\": \"French (https://app.transifex.com/nextcloud/teams/64236/fr/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"fr\", \"Plural-Forms\": \"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nBenoit Pruneau, 2024\\njed boulahya, 2024\\n\" }, \"msgstr\": [\"Last-Translator: jed boulahya, 2024\\nLanguage-Team: French (https://app.transifex.com/nextcloud/teams/64236/fr/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: fr\\nPlural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} fichier en conflit\", \"{count} fichiers en conflit\", \"{count} fichiers en conflit\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} fichier en conflit dans {dirname}\", \"{count} fichiers en conflit dans {dirname}\", \"{count} fichiers en conflit dans {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} secondes restantes\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} restant\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"quelques secondes restantes\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Annuler\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Annuler l'opération entière\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Annuler les envois\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Continuer\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimation du temps restant\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Version existante\"] }, \"If you select both versions, the copied file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the copied file will have a number added to its name.\", \"msgstr\": [\"Si vous sélectionnez les deux versions, le fichier copié aura un numéro ajouté àname.\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Date de la dernière modification est inconnue\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nouveau\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Nouvelle version\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"en pause\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Aperçu de l'image\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Sélectionner toutes les cases à cocher\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Sélectionner tous les fichiers existants\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Sélectionner tous les nouveaux fichiers\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Ignorer ce fichier\", \"Ignorer {count} fichiers\", \"Ignorer {count} fichiers\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Taille inconnue\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\" annulé\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Téléchargement des fichiers\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Progression du téléchargement\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Lorsqu'un dossier entrant est sélectionné, tous les fichiers en conflit qu'il contient seront également écrasés.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Quels fichiers souhaitez-vous conserver ?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Vous devez sélectionner au moins une version de chaque fichier pour continuer.\"] } } } } }, { \"locale\": \"ga\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Aindriú Mac Giolla Eoin, 2024\", \"Language-Team\": \"Irish (https://app.transifex.com/nextcloud/teams/64236/ga/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ga\", \"Plural-Forms\": \"nplurals=5; plural=(n==1 ? 0 : n==2 ? 1 : n<7 ? 2 : n<11 ? 3 : 4);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nAindriú Mac Giolla Eoin, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Aindriú Mac Giolla Eoin, 2024\\nLanguage-Team: Irish (https://app.transifex.com/nextcloud/teams/64236/ga/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ga\\nPlural-Forms: nplurals=5; plural=(n==1 ? 0 : n==2 ? 1 : n<7 ? 2 : n<11 ? 3 : 4);\\n\"] }, '\"{filename}\" contains invalid characters, how do you want to continue?': { \"msgid\": '\"{filename}\" contains invalid characters, how do you want to continue?', \"msgstr\": ['Tá carachtair neamhbhailí in \"{filename}\", conas ba mhaith leat leanúint ar aghaidh?'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} coimhlint comhaid\", \"coimhlint comhaid {count}\", \"coimhlint comhaid {count}\", \"coimhlint comhaid {count}\", \"coimhlint comhaid {count}\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} coimhlint comhaid i {dirname}\", \"{count} coimhlint comhaid i {dirname}\", \"{count} coimhlint comhaid i {dirname}\", \"{count} coimhlint comhaid i {dirname}\", \"{count} coimhlint comhaid i {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{soicind} fágtha\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{am} fágtha\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"cúpla soicind fágtha\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Cealaigh\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Cealaigh an oibríocht iomlán\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Cealaigh uaslódálacha\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Leanúint ar aghaidh\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Cruthaigh nua\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"ag déanamh meastachán ar an am atá fágtha\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Leagan láithreach \"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Má roghnaíonn tú an dá leagan, cuirfear uimhir leis an ainm a thagann isteach.\"] }, \"Invalid file name\": { \"msgid\": \"Invalid file name\", \"msgstr\": [\"Ainm comhaid neamhbhailí\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Dáta modhnaithe is déanaí anaithnid\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nua\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Leagan nua\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"sos\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Íomhá réamhamharc\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Athainmnigh\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Roghnaigh gach ticbhosca\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Roghnaigh gach comhad atá ann cheana féin\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Roghnaigh gach comhad nua\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Scipeáil\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Léim an comhad seo\", \"Léim ar {count} comhad\", \"Léim ar {count} comhad\", \"Léim ar {count} comhad\", \"Léim ar {count} comhad\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Méid anaithnid\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Uaslódáil comhaid\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Uaslódáil fillteáin\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Íosluchtaigh ó gléas\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Cuireadh an t-uaslódáil ar ceal\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Uaslódáil dul chun cinn\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Nuair a roghnaítear fillteán isteach, déanfar aon chomhad contrártha laistigh de a fhorscríobh freisin.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Nuair a roghnaítear fillteán isteach, scríobhtar an t-ábhar isteach san fhillteán atá ann cheana agus déantar réiteach coinbhleachta athchúrsach.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Cé na comhaid ar mhaith leat a choinneáil?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Ní mór duit leagan amháin ar a laghad de gach comhad a roghnú chun leanúint ar aghaidh.\"] } } } } }, { \"locale\": \"gd\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Gaelic, Scottish (https://www.transifex.com/nextcloud/teams/64236/gd/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"gd\", \"Plural-Forms\": \"nplurals=4; plural=(n==1 || n==11) ? 0 : (n==2 || n==12) ? 1 : (n > 2 && n < 20) ? 2 : 3;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Gaelic, Scottish (https://www.transifex.com/nextcloud/teams/64236/gd/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: gd\\nPlural-Forms: nplurals=4; plural=(n==1 || n==11) ? 0 : (n==2 || n==12) ? 1 : (n > 2 && n < 20) ? 2 : 3;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"gl\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Miguel Anxo Bouzada , 2024\", \"Language-Team\": \"Galician (https://app.transifex.com/nextcloud/teams/64236/gl/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"gl\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nMiguel Anxo Bouzada , 2024\\n\" }, \"msgstr\": [\"Last-Translator: Miguel Anxo Bouzada , 2024\\nLanguage-Team: Galician (https://app.transifex.com/nextcloud/teams/64236/gl/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: gl\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{filename}\" contains invalid characters, how do you want to continue?': { \"msgid\": '\"{filename}\" contains invalid characters, how do you want to continue?', \"msgstr\": [\"«{filename}» contén caracteres non válidos, como quere continuar?\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} conflito de ficheiros\", \"{count} conflitos de ficheiros\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} conflito de ficheiros en {dirname}\", \"{count} conflitos de ficheiros en {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"faltan {seconds} segundos\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"falta {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"faltan uns segundos\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Cancelar\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Cancela toda a operación\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Cancelar envíos\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Continuar\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Crear un novo\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"calculando canto tempo falta\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Versión existente\"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Se selecciona ambas as versións, o ficheiro entrante terá un número engadido ao seu nome.\"] }, \"Invalid file name\": { \"msgid\": \"Invalid file name\", \"msgstr\": [\"O nome de ficheiro non é válido\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Data da última modificación descoñecida\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nova\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Nova versión\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"detido\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Vista previa da imaxe\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Renomear\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Marcar todas as caixas de selección\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Seleccionar todos os ficheiros existentes\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Seleccionar todos os ficheiros novos\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Omitir\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Omita este ficheiro\", \"Omitir {count} ficheiros\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Tamaño descoñecido\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Enviar ficheiros\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Enviar cartafoles\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Enviar dende o dispositivo\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"O envío foi cancelado\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Progreso do envío\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Cando se selecciona un cartafol entrante, tamén se sobrescribirán os ficheiros en conflito dentro del.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Cando se selecciona un cartafol entrante, o contido escríbese no cartafol existente e lévase a cabo unha resolución recursiva de conflitos.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Que ficheiros quere conservar?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Debe seleccionar polo menos unha versión de cada ficheiro para continuar.\"] } } } } }, { \"locale\": \"he\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Hebrew (https://www.transifex.com/nextcloud/teams/64236/he/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"he\", \"Plural-Forms\": \"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n == 2 && n % 1 == 0) ? 1: (n % 10 == 0 && n % 1 == 0 && n > 10) ? 2 : 3;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Hebrew (https://www.transifex.com/nextcloud/teams/64236/he/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: he\\nPlural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n == 2 && n % 1 == 0) ? 1: (n % 10 == 0 && n % 1 == 0 && n > 10) ? 2 : 3;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"hi_IN\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Hindi (India) (https://www.transifex.com/nextcloud/teams/64236/hi_IN/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"hi_IN\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Hindi (India) (https://www.transifex.com/nextcloud/teams/64236/hi_IN/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: hi_IN\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"hr\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Croatian (https://www.transifex.com/nextcloud/teams/64236/hr/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"hr\", \"Plural-Forms\": \"nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Croatian (https://www.transifex.com/nextcloud/teams/64236/hr/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: hr\\nPlural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"hsb\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Upper Sorbian (https://www.transifex.com/nextcloud/teams/64236/hsb/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"hsb\", \"Plural-Forms\": \"nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Upper Sorbian (https://www.transifex.com/nextcloud/teams/64236/hsb/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: hsb\\nPlural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"hu\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Hungarian (https://www.transifex.com/nextcloud/teams/64236/hu/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"hu\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Hungarian (https://www.transifex.com/nextcloud/teams/64236/hu/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: hu\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"hu_HU\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Balázs Úr, 2022\", \"Language-Team\": \"Hungarian (Hungary) (https://www.transifex.com/nextcloud/teams/64236/hu_HU/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"hu_HU\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nBalázs Meskó , 2022\\nBalázs Úr, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Balázs Úr, 2022\\nLanguage-Team: Hungarian (Hungary) (https://www.transifex.com/nextcloud/teams/64236/hu_HU/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: hu_HU\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{} másodperc van hátra\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"{time} van hátra\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"pár másodperc van hátra\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Hozzáadás\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Feltöltések megszakítása\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"hátralévő idő becslése\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"szüneteltetve\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Fájlok feltöltése\"] } } } } }, { \"locale\": \"hy\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Armenian (https://www.transifex.com/nextcloud/teams/64236/hy/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"hy\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Armenian (https://www.transifex.com/nextcloud/teams/64236/hy/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: hy\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ia\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Interlingua (https://www.transifex.com/nextcloud/teams/64236/ia/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ia\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Interlingua (https://www.transifex.com/nextcloud/teams/64236/ia/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ia\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"id\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Linerly , 2023\", \"Language-Team\": \"Indonesian (https://app.transifex.com/nextcloud/teams/64236/id/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"id\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ , 2023\\nEmpty Slot Filler, 2023\\nLinerly , 2023\\n\" }, \"msgstr\": [\"Last-Translator: Linerly , 2023\\nLanguage-Team: Indonesian (https://app.transifex.com/nextcloud/teams/64236/id/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: id\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} berkas berkonflik\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} berkas berkonflik dalam {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} detik tersisa\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} tersisa\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"tinggal sebentar lagi\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Batalkan unggahan\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Lanjutkan\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"memperkirakan waktu yang tersisa\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Versi yang ada\"] }, \"If you select both versions, the copied file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the copied file will have a number added to its name.\", \"msgstr\": [\"Jika Anda memilih kedua versi, nama berkas yang disalin akan ditambahi angka.\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Tanggal perubahan terakhir tidak diketahui\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Baru\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Versi baru\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"dijeda\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Gambar pratinjau\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Pilih semua kotak centang\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Pilih semua berkas yang ada\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Pilih semua berkas baru\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Lewati {count} berkas\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Ukuran tidak diketahui\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"Unggahan dibatalkan\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Unggah berkas\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Berkas mana yang Anda ingin tetap simpan?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Anda harus memilih setidaknya satu versi dari masing-masing berkas untuk melanjutkan.\"] } } } } }, { \"locale\": \"ig\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Igbo (https://www.transifex.com/nextcloud/teams/64236/ig/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ig\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Igbo (https://www.transifex.com/nextcloud/teams/64236/ig/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ig\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"is\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Sveinn í Felli , 2023\", \"Language-Team\": \"Icelandic (https://app.transifex.com/nextcloud/teams/64236/is/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"is\", \"Plural-Forms\": \"nplurals=2; plural=(n % 10 != 1 || n % 100 == 11);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nSveinn í Felli , 2023\\n\" }, \"msgstr\": [\"Last-Translator: Sveinn í Felli , 2023\\nLanguage-Team: Icelandic (https://app.transifex.com/nextcloud/teams/64236/is/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: is\\nPlural-Forms: nplurals=2; plural=(n % 10 != 1 || n % 100 == 11);\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} árekstur skráa\", \"{count} árekstrar skráa\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} árekstur skráa í {dirname}\", \"{count} árekstrar skráa í {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} sekúndur eftir\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} eftir\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"nokkrar sekúndur eftir\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Hætta við innsendingar\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Halda áfram\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"áætla tíma sem eftir er\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Fyrirliggjandi útgáfa\"] }, \"If you select both versions, the copied file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the copied file will have a number added to its name.\", \"msgstr\": [\"Ef þú velur báðar útgáfur, þá mun verða bætt tölustaf aftan við heiti afrituðu skrárinnar.\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Síðasta breytingadagsetning er óþekkt\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nýtt\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Ný útgáfa\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"í bið\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Forskoðun myndar\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Velja gátreiti\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Velja allar fyrirliggjandi skrár\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Velja allar nýjar skrár\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Sleppa þessari skrá\", \"Sleppa {count} skrám\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Óþekkt stærð\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"Hætt við innsendingu\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Senda inn skrár\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Hvaða skrám vilt þú vilt halda eftir?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Þú verður að velja að minnsta kosti eina útgáfu af hverri skrá til að halda áfram.\"] } } } } }, { \"locale\": \"it\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Random_R, 2023\", \"Language-Team\": \"Italian (https://app.transifex.com/nextcloud/teams/64236/it/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"it\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ , 2023\\nLep Lep, 2023\\nRandom_R, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Random_R, 2023\\nLanguage-Team: Italian (https://app.transifex.com/nextcloud/teams/64236/it/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: it\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} file in conflitto\", \"{count} file in conflitto\", \"{count} file in conflitto\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} file in conflitto in {dirname}\", \"{count} file in conflitto in {dirname}\", \"{count} file in conflitto in {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} secondi rimanenti \"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} rimanente\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"alcuni secondi rimanenti\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Annulla i caricamenti\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Continua\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"calcolo il tempo rimanente\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Versione esistente\"] }, \"If you select both versions, the copied file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the copied file will have a number added to its name.\", \"msgstr\": [\"Se selezioni entrambe le versioni, nel nome del file copiato verrà aggiunto un numero \"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Ultima modifica sconosciuta\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nuovo\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Nuova versione\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pausa\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Anteprima immagine\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Seleziona tutte le caselle\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Seleziona tutti i file esistenti\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Seleziona tutti i nuovi file\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Salta questo file\", \"Salta {count} file\", \"Salta {count} file\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Dimensione sconosciuta\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"Caricamento cancellato\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Carica i file\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Quali file vuoi mantenere?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Devi selezionare almeno una versione di ogni file per continuare\"] } } } } }, { \"locale\": \"it_IT\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Italian (Italy) (https://www.transifex.com/nextcloud/teams/64236/it_IT/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"it_IT\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Italian (Italy) (https://www.transifex.com/nextcloud/teams/64236/it_IT/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: it_IT\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ja_JP\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"かたかめ, 2022\", \"Language-Team\": \"Japanese (Japan) (https://www.transifex.com/nextcloud/teams/64236/ja_JP/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ja_JP\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nT.S, 2022\\nかたかめ, 2022\\n\" }, \"msgstr\": [\"Last-Translator: かたかめ, 2022\\nLanguage-Team: Japanese (Japan) (https://www.transifex.com/nextcloud/teams/64236/ja_JP/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ja_JP\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"残り {seconds} 秒\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"残り {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"残り数秒\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"追加\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"アップロードをキャンセル\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"概算残り時間\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"一時停止中\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"ファイルをアップデート\"] } } } } }, { \"locale\": \"ka\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Georgian (https://www.transifex.com/nextcloud/teams/64236/ka/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ka\", \"Plural-Forms\": \"nplurals=2; plural=(n!=1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Georgian (https://www.transifex.com/nextcloud/teams/64236/ka/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ka\\nPlural-Forms: nplurals=2; plural=(n!=1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ka_GE\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Georgian (Georgia) (https://www.transifex.com/nextcloud/teams/64236/ka_GE/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ka_GE\", \"Plural-Forms\": \"nplurals=2; plural=(n!=1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Georgian (Georgia) (https://www.transifex.com/nextcloud/teams/64236/ka_GE/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ka_GE\\nPlural-Forms: nplurals=2; plural=(n!=1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"kab\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"ZiriSut, 2023\", \"Language-Team\": \"Kabyle (https://app.transifex.com/nextcloud/teams/64236/kab/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"kab\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nZiriSut, 2023\\n\" }, \"msgstr\": [\"Last-Translator: ZiriSut, 2023\\nLanguage-Team: Kabyle (https://app.transifex.com/nextcloud/teams/64236/kab/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: kab\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} tesdatin i d-yeqqimen\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"{time} i d-yeqqimen\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"qqiment-d kra n tesdatin kan\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Rnu\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Sefsex asali\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"asizel n wakud i d-yeqqimen\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"yeḥbes\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Sali-d ifuyla\"] } } } } }, { \"locale\": \"kk\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Kazakh (https://www.transifex.com/nextcloud/teams/64236/kk/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"kk\", \"Plural-Forms\": \"nplurals=2; plural=(n!=1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Kazakh (https://www.transifex.com/nextcloud/teams/64236/kk/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: kk\\nPlural-Forms: nplurals=2; plural=(n!=1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"km\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Khmer (https://www.transifex.com/nextcloud/teams/64236/km/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"km\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Khmer (https://www.transifex.com/nextcloud/teams/64236/km/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: km\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"kn\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Kannada (https://www.transifex.com/nextcloud/teams/64236/kn/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"kn\", \"Plural-Forms\": \"nplurals=2; plural=(n > 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Kannada (https://www.transifex.com/nextcloud/teams/64236/kn/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: kn\\nPlural-Forms: nplurals=2; plural=(n > 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ko\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"이상오, 2024\", \"Language-Team\": \"Korean (https://app.transifex.com/nextcloud/teams/64236/ko/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ko\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\n이상오, 2024\\n\" }, \"msgstr\": [\"Last-Translator: 이상오, 2024\\nLanguage-Team: Korean (https://app.transifex.com/nextcloud/teams/64236/ko/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ko\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, '\"{filename}\" contains invalid characters, how do you want to continue?': { \"msgid\": '\"{filename}\" contains invalid characters, how do you want to continue?', \"msgstr\": ['\"{filename}\"에 유효하지 않은 문자가 있습니다, 계속하시겠습니까?'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count}개의 파일이 충돌함\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{dirname}에서 {count}개의 파일이 충돌함\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds}초 남음\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} 남음\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"곧 완료\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"취소\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"전체 작업을 취소\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"업로드 취소\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"확인\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"새로 만들기\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"남은 시간 계산\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"현재 버전\"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"두 파일을 모두 선택하면, 들어오는 파일의 이름에 번호가 추가됩니다.\"] }, \"Invalid file name\": { \"msgid\": \"Invalid file name\", \"msgstr\": [\"잘못된 파일 이름\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"최근 수정일 알 수 없음\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"새로 만들기\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"새 버전\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"일시정지됨\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"미리보기 이미지\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"이름 바꾸기\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"모든 체크박스 선택\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"기존 파일을 모두 선택\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"새로운 파일을 모두 선택\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"건너뛰기\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"{count}개의 파일 넘기기\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"크기를 알 수 없음\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"파일 업로드\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"폴더 업로드\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"장치에서 업로드\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"업로드가 취소되었습니다.\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"업로드 진행도\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"들어오는 폴더를 선택했다면, 충돌하는 내부 파일들은 덮어쓰기 됩니다.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"들어오는 폴더를 선택했다면 내용물이 그 기존 폴더 안에 작성되고, 전체적으로 충돌 해결을 수행합니다.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"어떤 파일을 보존하시겠습니까?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"계속하기 위해서는 한 파일에 최소 하나의 버전을 선택해야 합니다.\"] } } } } }, { \"locale\": \"la\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Latin (https://www.transifex.com/nextcloud/teams/64236/la/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"la\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Latin (https://www.transifex.com/nextcloud/teams/64236/la/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: la\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"lb\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Luxembourgish (https://www.transifex.com/nextcloud/teams/64236/lb/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"lb\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Luxembourgish (https://www.transifex.com/nextcloud/teams/64236/lb/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: lb\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"lo\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Lao (https://www.transifex.com/nextcloud/teams/64236/lo/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"lo\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Lao (https://www.transifex.com/nextcloud/teams/64236/lo/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: lo\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"lt_LT\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Lithuanian (Lithuania) (https://www.transifex.com/nextcloud/teams/64236/lt_LT/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"lt_LT\", \"Plural-Forms\": \"nplurals=4; plural=(n % 10 == 1 && (n % 100 > 19 || n % 100 < 11) ? 0 : (n % 10 >= 2 && n % 10 <=9) && (n % 100 > 19 || n % 100 < 11) ? 1 : n % 1 != 0 ? 2: 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Lithuanian (Lithuania) (https://www.transifex.com/nextcloud/teams/64236/lt_LT/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: lt_LT\\nPlural-Forms: nplurals=4; plural=(n % 10 == 1 && (n % 100 > 19 || n % 100 < 11) ? 0 : (n % 10 >= 2 && n % 10 <=9) && (n % 100 > 19 || n % 100 < 11) ? 1 : n % 1 != 0 ? 2: 3);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"lv\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Latvian (https://www.transifex.com/nextcloud/teams/64236/lv/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"lv\", \"Plural-Forms\": \"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Latvian (https://www.transifex.com/nextcloud/teams/64236/lv/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: lv\\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"mk\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Сашко Тодоров , 2022\", \"Language-Team\": \"Macedonian (https://www.transifex.com/nextcloud/teams/64236/mk/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"mk\", \"Plural-Forms\": \"nplurals=2; plural=(n % 10 == 1 && n % 100 != 11) ? 0 : 1;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nСашко Тодоров , 2022\\n\" }, \"msgstr\": [\"Last-Translator: Сашко Тодоров , 2022\\nLanguage-Team: Macedonian (https://www.transifex.com/nextcloud/teams/64236/mk/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: mk\\nPlural-Forms: nplurals=2; plural=(n % 10 == 1 && n % 100 != 11) ? 0 : 1;\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"преостануваат {seconds} секунди\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"преостанува {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"уште неколку секунди\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Додади\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Прекини прикачување\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"приближно преостанато време\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"паузирано\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Прикачување датотеки\"] } } } } }, { \"locale\": \"mn\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"BATKHUYAG Ganbold, 2023\", \"Language-Team\": \"Mongolian (https://app.transifex.com/nextcloud/teams/64236/mn/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"mn\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nBATKHUYAG Ganbold, 2023\\n\" }, \"msgstr\": [\"Last-Translator: BATKHUYAG Ganbold, 2023\\nLanguage-Team: Mongolian (https://app.transifex.com/nextcloud/teams/64236/mn/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: mn\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} секунд үлдсэн\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"{time} үлдсэн\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"хэдхэн секунд үлдсэн\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Нэмэх\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Илгээлтийг цуцлах\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"Үлдсэн хугацааг тооцоолж байна\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"түр зогсоосон\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Файл илгээх\"] } } } } }, { \"locale\": \"mr\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Marathi (https://www.transifex.com/nextcloud/teams/64236/mr/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"mr\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Marathi (https://www.transifex.com/nextcloud/teams/64236/mr/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: mr\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ms_MY\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Malay (Malaysia) (https://www.transifex.com/nextcloud/teams/64236/ms_MY/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ms_MY\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Malay (Malaysia) (https://www.transifex.com/nextcloud/teams/64236/ms_MY/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ms_MY\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"my\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Burmese (https://www.transifex.com/nextcloud/teams/64236/my/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"my\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Burmese (https://www.transifex.com/nextcloud/teams/64236/my/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: my\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"nb_NO\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Syvert Fossdal, 2024\", \"Language-Team\": \"Norwegian Bokmål (Norway) (https://app.transifex.com/nextcloud/teams/64236/nb_NO/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"nb_NO\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ , 2023\\nSyvert Fossdal, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Syvert Fossdal, 2024\\nLanguage-Team: Norwegian Bokmål (Norway) (https://app.transifex.com/nextcloud/teams/64236/nb_NO/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: nb_NO\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} file conflict\", \"{count} filkonflikter\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} file conflict in {dirname}\", \"{count} filkonflikter i {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} sekunder igjen\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} igjen\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"noen få sekunder igjen\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Avbryt opplastninger\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Fortsett\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"Estimerer tid igjen\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Gjeldende versjon\"] }, \"If you select both versions, the copied file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the copied file will have a number added to its name.\", \"msgstr\": [\"Hvis du velger begge versjoner, vil den kopierte filen få et tall lagt til navnet.\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Siste gang redigert ukjent\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Ny\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Ny versjon\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pauset\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Forhåndsvis bilde\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Velg alle\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Velg alle eksisterende filer\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Velg alle nye filer\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Skip this file\", \"Hopp over {count} filer\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Ukjent størrelse\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"Opplasting avbrutt\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Last opp filer\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Fremdrift, opplasting\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Hvilke filer vil du beholde?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Du må velge minst en versjon av hver fil for å fortsette.\"] } } } } }, { \"locale\": \"ne\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Nepali (https://www.transifex.com/nextcloud/teams/64236/ne/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ne\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Nepali (https://www.transifex.com/nextcloud/teams/64236/ne/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ne\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"nl\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Rico , 2023\", \"Language-Team\": \"Dutch (https://app.transifex.com/nextcloud/teams/64236/nl/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"nl\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nRico , 2023\\n\" }, \"msgstr\": [\"Last-Translator: Rico , 2023\\nLanguage-Team: Dutch (https://app.transifex.com/nextcloud/teams/64236/nl/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: nl\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"Nog {seconds} seconden\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"{seconds} over\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"Nog een paar seconden\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Voeg toe\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Uploads annuleren\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"Schatting van de resterende tijd\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"Gepauzeerd\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Upload bestanden\"] } } } } }, { \"locale\": \"nn\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Norwegian Nynorsk (https://www.transifex.com/nextcloud/teams/64236/nn/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"nn\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Norwegian Nynorsk (https://www.transifex.com/nextcloud/teams/64236/nn/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: nn\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"nn_NO\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Norwegian Nynorsk (Norway) (https://www.transifex.com/nextcloud/teams/64236/nn_NO/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"nn_NO\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Norwegian Nynorsk (Norway) (https://www.transifex.com/nextcloud/teams/64236/nn_NO/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: nn_NO\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"oc\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Occitan (post 1500) (https://www.transifex.com/nextcloud/teams/64236/oc/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"oc\", \"Plural-Forms\": \"nplurals=2; plural=(n > 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Occitan (post 1500) (https://www.transifex.com/nextcloud/teams/64236/oc/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: oc\\nPlural-Forms: nplurals=2; plural=(n > 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"pl\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Piotr Strębski , 2024\", \"Language-Team\": \"Polish (https://app.transifex.com/nextcloud/teams/64236/pl/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"pl\", \"Plural-Forms\": \"nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nPiotr Strębski , 2024\\n\" }, \"msgstr\": [\"Last-Translator: Piotr Strębski , 2024\\nLanguage-Team: Polish (https://app.transifex.com/nextcloud/teams/64236/pl/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: pl\\nPlural-Forms: nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"konflikt 1 pliku\", \"{count} konfliktów plików\", \"{count} konfliktów plików\", \"{count} konfliktów plików\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} konfliktowy plik w {dirname}\", \"{count} konfliktowych plików w {dirname}\", \"{count} konfliktowych plików w {dirname}\", \"{count} konfliktowych plików w {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"Pozostało {seconds} sekund\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"Pozostało {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"Pozostało kilka sekund\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Anuluj\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Anuluj całą operację\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Anuluj wysyłanie\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Kontynuuj\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"Szacowanie pozostałego czasu\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Istniejąca wersja\"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Jeśli wybierzesz obie wersje, do nazwy pliku przychodzącego zostanie dodany numer.\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Nieznana data ostatniej modyfikacji\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nowy\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Nowa wersja\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"Wstrzymane\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Podgląd obrazu\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Zaznacz wszystkie boxy\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Zaznacz wszystkie istniejące pliki\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Zaznacz wszystkie nowe pliki\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Pomiń 1 plik\", \"Pomiń {count} plików\", \"Pomiń {count} plików\", \"Pomiń {count} plików\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Nieznany rozmiar\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"Anulowano wysyłanie\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Wyślij pliki\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Postęp wysyłania\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Po wybraniu folderu przychodzącego wszelkie znajdujące się w nim pliki powodujące konflikt również zostaną nadpisane.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Po wybraniu folderu przychodzącego zawartość jest zapisywana w istniejącym folderze i przeprowadzane jest rekursywne rozwiązywanie konfliktów.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Które pliki chcesz zachować?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Aby kontynuować, musisz wybrać co najmniej jedną wersję każdego pliku.\"] } } } } }, { \"locale\": \"ps\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Pashto (https://www.transifex.com/nextcloud/teams/64236/ps/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ps\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Pashto (https://www.transifex.com/nextcloud/teams/64236/ps/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ps\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"pt_BR\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Leonardo Colman Lopes , 2024\", \"Language-Team\": \"Portuguese (Brazil) (https://app.transifex.com/nextcloud/teams/64236/pt_BR/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"pt_BR\", \"Plural-Forms\": \"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nLeonardo Colman Lopes , 2024\\n\" }, \"msgstr\": [\"Last-Translator: Leonardo Colman Lopes , 2024\\nLanguage-Team: Portuguese (Brazil) (https://app.transifex.com/nextcloud/teams/64236/pt_BR/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: pt_BR\\nPlural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} arquivos em conflito\", \"{count} arquivos em conflito\", \"{count} arquivos em conflito\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} conflitos de arquivo em {dirname}\", \"{count} conflitos de arquivo em {dirname}\", \"{count} conflitos de arquivo em {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} segundos restantes\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} restante\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"alguns segundos restantes\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Cancelar\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Cancelar a operação inteira\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Cancelar uploads\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Continuar\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimando tempo restante\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Versão existente\"] }, \"If you select both versions, the copied file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the copied file will have a number added to its name.\", \"msgstr\": [\"Se você selecionar ambas as versões, o arquivo copiado terá um número adicionado ao seu nome.\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Data da última modificação desconhecida\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Novo\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Nova versão\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pausado\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Visualizar imagem\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Marque todas as caixas de seleção\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Selecione todos os arquivos existentes\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Selecione todos os novos arquivos\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Ignorar {count} arquivos\", \"Ignorar {count} arquivos\", \"Ignorar {count} arquivos\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Tamanho desconhecido\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"Envio cancelado\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Enviar arquivos\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Envio em progresso\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Quando uma pasta é selecionada, quaisquer arquivos dentro dela também serão sobrescritos.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Quais arquivos você deseja manter?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Você precisa selecionar pelo menos uma versão de cada arquivo para continuar.\"] } } } } }, { \"locale\": \"pt_PT\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Manuela Silva , 2022\", \"Language-Team\": \"Portuguese (Portugal) (https://www.transifex.com/nextcloud/teams/64236/pt_PT/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"pt_PT\", \"Plural-Forms\": \"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nManuela Silva , 2022\\n\" }, \"msgstr\": [\"Last-Translator: Manuela Silva , 2022\\nLanguage-Team: Portuguese (Portugal) (https://www.transifex.com/nextcloud/teams/64236/pt_PT/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: pt_PT\\nPlural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"faltam {seconds} segundo(s)\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"faltam {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"faltam uns segundos\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Adicionar\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Cancelar envios\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"tempo em falta estimado\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pausado\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Enviar ficheiros\"] } } } } }, { \"locale\": \"ro\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Mădălin Vasiliu , 2022\", \"Language-Team\": \"Romanian (https://www.transifex.com/nextcloud/teams/64236/ro/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ro\", \"Plural-Forms\": \"nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?2:1));\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nMădălin Vasiliu , 2022\\n\" }, \"msgstr\": [\"Last-Translator: Mădălin Vasiliu , 2022\\nLanguage-Team: Romanian (https://www.transifex.com/nextcloud/teams/64236/ro/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ro\\nPlural-Forms: nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?2:1));\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} secunde rămase\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"{time} rămas\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"câteva secunde rămase\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Adaugă\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Anulați încărcările\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimarea timpului rămas\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pus pe pauză\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Încarcă fișiere\"] } } } } }, { \"locale\": \"ru\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Влад, 2024\", \"Language-Team\": \"Russian (https://app.transifex.com/nextcloud/teams/64236/ru/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ru\", \"Plural-Forms\": \"nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nAlex , 2024\\nВлад, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Влад, 2024\\nLanguage-Team: Russian (https://app.transifex.com/nextcloud/teams/64236/ru/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ru\\nPlural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\\n\"] }, '\"{filename}\" contains invalid characters, how do you want to continue?': { \"msgid\": '\"{filename}\" contains invalid characters, how do you want to continue?', \"msgstr\": ['\"{filename}\" содержит недопустимые символы, хотите продолжить?'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"конфликт {count} файла\", \"конфликт {count} файлов\", \"конфликт {count} файлов\", \"конфликт {count} файлов\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"конфликт {count} файла в {dirname}\", \"конфликт {count} файлов в {dirname}\", \"конфликт {count} файлов в {dirname}\", \"конфликт {count} файлов в {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"осталось {seconds} секунд\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"осталось {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"осталось несколько секунд\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Отмена\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Отменить всю операцию целиком\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Отменить загрузки\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Продолжить\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Создать новое\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"оценка оставшегося времени\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Текущая версия\"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Если вы выберете обе версии, к имени входящего файла будет добавлен номер.\"] }, \"Invalid file name\": { \"msgid\": \"Invalid file name\", \"msgstr\": [\"Имя файла недопустимо\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Дата последнего изменения неизвестна\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Новый\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Новая версия\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"приостановлено\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Предварительный просмотр\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Переименовать\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Установить все флажки\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Выбрать все существующие файлы\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Выбрать все новые файлы\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Пропуск\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Пропустить файл\", \"Пропустить {count} файла\", \"Пропустить {count} файлов\", \"Пропустить {count} файлов\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Неизвестный размер\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Загрузка файлов\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Загрузка папок\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Загрузка с устройства\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Загрузка была отменена\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Состояние передачи на сервер\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Когда выбрана входящая папка, все конфликтующие файлы в ней также будут перезаписаны.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Когда выбрана входящая папка, содержимое записывается в существующую папку и выполняется рекурсивное разрешение конфликтов.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Какие файлы вы хотите сохранить?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Для продолжения вам нужно выбрать по крайней мере одну версию каждого файла.\"] } } } } }, { \"locale\": \"ru_RU\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Russian (Russia) (https://www.transifex.com/nextcloud/teams/64236/ru_RU/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ru_RU\", \"Plural-Forms\": \"nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Russian (Russia) (https://www.transifex.com/nextcloud/teams/64236/ru_RU/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ru_RU\\nPlural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"sc\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Sardinian (https://www.transifex.com/nextcloud/teams/64236/sc/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sc\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Sardinian (https://www.transifex.com/nextcloud/teams/64236/sc/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sc\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"si\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Sinhala (https://www.transifex.com/nextcloud/teams/64236/si/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"si\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Sinhala (https://www.transifex.com/nextcloud/teams/64236/si/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: si\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"si_LK\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Sinhala (Sri Lanka) (https://www.transifex.com/nextcloud/teams/64236/si_LK/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"si_LK\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Sinhala (Sri Lanka) (https://www.transifex.com/nextcloud/teams/64236/si_LK/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: si_LK\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"sk_SK\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Slovak (Slovakia) (https://www.transifex.com/nextcloud/teams/64236/sk_SK/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sk_SK\", \"Plural-Forms\": \"nplurals=4; plural=(n % 1 == 0 && n == 1 ? 0 : n % 1 == 0 && n >= 2 && n <= 4 ? 1 : n % 1 != 0 ? 2: 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Slovak (Slovakia) (https://www.transifex.com/nextcloud/teams/64236/sk_SK/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sk_SK\\nPlural-Forms: nplurals=4; plural=(n % 1 == 0 && n == 1 ? 0 : n % 1 == 0 && n >= 2 && n <= 4 ? 1 : n % 1 != 0 ? 2: 3);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"sl\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Matej Urbančič <>, 2022\", \"Language-Team\": \"Slovenian (https://www.transifex.com/nextcloud/teams/64236/sl/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sl\", \"Plural-Forms\": \"nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nMatej Urbančič <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Matej Urbančič <>, 2022\\nLanguage-Team: Slovenian (https://www.transifex.com/nextcloud/teams/64236/sl/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sl\\nPlural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"še {seconds} sekund\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"še {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"še nekaj sekund\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Dodaj\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Prekliči pošiljanje\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"ocenjen čas do konca\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"v premoru\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Pošlji datoteke\"] } } } } }, { \"locale\": \"sl_SI\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Slovenian (Slovenia) (https://www.transifex.com/nextcloud/teams/64236/sl_SI/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sl_SI\", \"Plural-Forms\": \"nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Slovenian (Slovenia) (https://www.transifex.com/nextcloud/teams/64236/sl_SI/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sl_SI\\nPlural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"sq\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Albanian (https://www.transifex.com/nextcloud/teams/64236/sq/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sq\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Albanian (https://www.transifex.com/nextcloud/teams/64236/sq/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sq\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"sr\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Иван Пешић, 2023\", \"Language-Team\": \"Serbian (https://app.transifex.com/nextcloud/teams/64236/sr/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sr\", \"Plural-Forms\": \"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ , 2023\\nИван Пешић, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Иван Пешић, 2023\\nLanguage-Team: Serbian (https://app.transifex.com/nextcloud/teams/64236/sr/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sr\\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} фајл конфликт\", \"{count} фајл конфликта\", \"{count} фајл конфликта\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} фајл конфликт у {dirname}\", \"{count} фајл конфликта у {dirname}\", \"{count} фајл конфликта у {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"преостало је {seconds} секунди\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} преостало\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"преостало је неколико секунди\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Обустави отпремања\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Настави\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"процена преосталог времена\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Постојећа верзија\"] }, \"If you select both versions, the copied file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the copied file will have a number added to its name.\", \"msgstr\": [\"Ако изаберете обе верзије, на име копираног фајла ће се додати број.\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Није познат датум последње измене\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Ново\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Нова верзија\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"паузирано\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Слика прегледа\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Штиклирај сва поља за штиклирање\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Изабери све постојеће фајлове\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Изабери све нове фајлове\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Прескочи овај фајл\", \"Прескочи {count} фајла\", \"Прескочи {count} фајлова\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Непозната величина\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"Отпремање је отказано\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Отпреми фајлове\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Напредак отпремања\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Које фајлове желите да задржите?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Морате да изаберете барем једну верзију сваког фајла да наставите.\"] } } } } }, { \"locale\": \"sr@latin\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Serbian (Latin) (https://www.transifex.com/nextcloud/teams/64236/sr@latin/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sr@latin\", \"Plural-Forms\": \"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Serbian (Latin) (https://www.transifex.com/nextcloud/teams/64236/sr@latin/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sr@latin\\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"sv\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Magnus Höglund, 2024\", \"Language-Team\": \"Swedish (https://app.transifex.com/nextcloud/teams/64236/sv/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sv\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nMagnus Höglund, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Magnus Höglund, 2024\\nLanguage-Team: Swedish (https://app.transifex.com/nextcloud/teams/64236/sv/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sv\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{filename}\" contains invalid characters, how do you want to continue?': { \"msgid\": '\"{filename}\" contains invalid characters, how do you want to continue?', \"msgstr\": ['\"{filename}\" innehåller ogiltiga tecken, hur vill du fortsätta?'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} filkonflikt\", \"{count} filkonflikter\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} filkonflikt i {dirname}\", \"{count} filkonflikter i {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} sekunder kvarstår\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} kvarstår\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"några sekunder kvar\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Avbryt\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Avbryt hela operationen\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Avbryt uppladdningar\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Fortsätt\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Skapa ny\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"uppskattar kvarstående tid\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Nuvarande version\"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Om du väljer båda versionerna kommer den inkommande filen att läggas till ett nummer i namnet.\"] }, \"Invalid file name\": { \"msgid\": \"Invalid file name\", \"msgstr\": [\"Ogiltigt filnamn\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Senaste ändringsdatum okänt\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Ny\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Ny version\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pausad\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Förhandsgranska bild\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Byt namn\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Markera alla kryssrutor\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Välj alla befintliga filer\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Välj alla nya filer\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Hoppa över\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Hoppa över denna fil\", \"Hoppa över {count} filer\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Okänd storlek\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Ladda upp filer\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Ladda upp mappar\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Ladda upp från enhet\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Uppladdningen har avbrutits\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Uppladdningsförlopp\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"När en inkommande mapp väljs skrivs även alla konfliktande filer i den över.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"När en inkommande mapp väljs skrivs innehållet in i den befintliga mappen och en rekursiv konfliktlösning utförs.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Vilka filer vill du behålla?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Du måste välja minst en version av varje fil för att fortsätta.\"] } } } } }, { \"locale\": \"sw\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Swahili (https://www.transifex.com/nextcloud/teams/64236/sw/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sw\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Swahili (https://www.transifex.com/nextcloud/teams/64236/sw/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sw\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ta\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Tamil (https://www.transifex.com/nextcloud/teams/64236/ta/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ta\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Tamil (https://www.transifex.com/nextcloud/teams/64236/ta/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ta\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ta_LK\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Tamil (Sri-Lanka) (https://www.transifex.com/nextcloud/teams/64236/ta_LK/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ta_LK\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Tamil (Sri-Lanka) (https://www.transifex.com/nextcloud/teams/64236/ta_LK/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ta_LK\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"th\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Thai (https://www.transifex.com/nextcloud/teams/64236/th/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"th\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Thai (https://www.transifex.com/nextcloud/teams/64236/th/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: th\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"th_TH\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Phongpanot Phairat , 2022\", \"Language-Team\": \"Thai (Thailand) (https://www.transifex.com/nextcloud/teams/64236/th_TH/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"th_TH\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nPhongpanot Phairat , 2022\\n\" }, \"msgstr\": [\"Last-Translator: Phongpanot Phairat , 2022\\nLanguage-Team: Thai (Thailand) (https://www.transifex.com/nextcloud/teams/64236/th_TH/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: th_TH\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"เหลืออีก {seconds} วินาที\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"เหลืออีก {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"เหลืออีกไม่กี่วินาที\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"เพิ่ม\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"ยกเลิกการอัปโหลด\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"กำลังคำนวณเวลาที่เหลือ\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"หยุดชั่วคราว\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"อัปโหลดไฟล์\"] } } } } }, { \"locale\": \"tk\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Turkmen (https://www.transifex.com/nextcloud/teams/64236/tk/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"tk\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Turkmen (https://www.transifex.com/nextcloud/teams/64236/tk/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: tk\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"tr\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Kaya Zeren , 2024\", \"Language-Team\": \"Turkish (https://app.transifex.com/nextcloud/teams/64236/tr/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"tr\", \"Plural-Forms\": \"nplurals=2; plural=(n > 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nKaya Zeren , 2024\\n\" }, \"msgstr\": [\"Last-Translator: Kaya Zeren , 2024\\nLanguage-Team: Turkish (https://app.transifex.com/nextcloud/teams/64236/tr/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: tr\\nPlural-Forms: nplurals=2; plural=(n > 1);\\n\"] }, '\"{filename}\" contains invalid characters, how do you want to continue?': { \"msgid\": '\"{filename}\" contains invalid characters, how do you want to continue?', \"msgstr\": ['\"{filename}\" içinde geçersiz karakterler var. Nasıl ilerlemek istersiniz?'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} dosya çakışması var\", \"{count} dosya çakışması var\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{dirname} klasöründe {count} dosya çakışması var\", \"{dirname} klasöründe {count} dosya çakışması var\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} saniye kaldı\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} kaldı\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"bir kaç saniye kaldı\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"İptal\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Tüm işlemi iptal et\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Yüklemeleri iptal et\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"İlerle\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Yeni ekle\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"öngörülen kalan süre\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Var olan sürüm\"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"İki sürümü de seçerseniz, gelen dosyanın adına bir sayı eklenir.\"] }, \"Invalid file name\": { \"msgid\": \"Invalid file name\", \"msgstr\": [\"Dosya adı geçersiz\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Son değiştirilme tarihi bilinmiyor\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Yeni\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Yeni sürüm\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"duraklatıldı\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Görsel ön izlemesi\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Yeniden adlandır\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Tüm kutuları işaretle\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Tüm var olan dosyaları seç\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Tüm yeni dosyaları seç\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Atla\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Bu dosyayı atla\", \"{count} dosyayı atla\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Boyut bilinmiyor\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Dosyaları yükle\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Klasörleri yükle\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Aygıttan yükle\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Yükleme iptal edildi\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Yükleme ilerlemesi\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Bir gelen klasör seçildiğinde, içindeki çakışan dosyaların da üzerine yazılır.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Bir gelen klasörü seçildiğinde içerik var olan klasöre yazılır ve yinelemeli bir çakışma çözümü uygulanır.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Hangi dosyaları tutmak istiyorsunuz?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"İlerlemek için her dosyanın en az bir sürümünü seçmelisiniz.\"] } } } } }, { \"locale\": \"ug\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Uyghur (https://www.transifex.com/nextcloud/teams/64236/ug/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ug\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Uyghur (https://www.transifex.com/nextcloud/teams/64236/ug/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ug\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"uk\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"O St , 2024\", \"Language-Team\": \"Ukrainian (https://app.transifex.com/nextcloud/teams/64236/uk/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"uk\", \"Plural-Forms\": \"nplurals=4; plural=(n % 1 == 0 && n % 10 == 1 && n % 100 != 11 ? 0 : n % 1 == 0 && n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 12 || n % 100 > 14) ? 1 : n % 1 == 0 && (n % 10 ==0 || (n % 10 >=5 && n % 10 <=9) || (n % 100 >=11 && n % 100 <=14 )) ? 2: 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nO St , 2024\\n\" }, \"msgstr\": [\"Last-Translator: O St , 2024\\nLanguage-Team: Ukrainian (https://app.transifex.com/nextcloud/teams/64236/uk/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: uk\\nPlural-Forms: nplurals=4; plural=(n % 1 == 0 && n % 10 == 1 && n % 100 != 11 ? 0 : n % 1 == 0 && n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 12 || n % 100 > 14) ? 1 : n % 1 == 0 && (n % 10 ==0 || (n % 10 >=5 && n % 10 <=9) || (n % 100 >=11 && n % 100 <=14 )) ? 2: 3);\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} конфліктний файл\", \"{count} конфліктних файли\", \"{count} конфліктних файлів\", \"{count} конфліктних файлів\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} конфліктний файл у каталозі {dirname}\", \"{count} конфліктних файли у каталозі {dirname}\", \"{count} конфліктних файлів у каталозі {dirname}\", \"{count} конфліктних файлів у каталозі {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"Залишилося {seconds} секунд\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"Залишилося {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"залишилося кілька секунд\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Скасувати\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Скасувати операцію повністю\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Скасувати завантаження\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Продовжити\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"оцінка часу, що залишився\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Присутня версія\"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Якщо буде вибрано обидві версії, до імени вхідного файлу було додано цифру.\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Дата останньої зміни невідома\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Нове\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Нова версія\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"призупинено\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Попередній перегляд\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Вибрати все\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Вибрати усі присутні файли\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Вибрати усі нові файли\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Пропустити файл\", \"Пропустити {count} файли\", \"Пропустити {count} файлів\", \"Пропустити {count} файлів\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Невідомий розмір\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"Завантаження скасовано\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Завантажити файли\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Поступ завантаження\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Усі конфліктні файли у вибраному каталозі призначення буде перезаписано поверх.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Якщо буде вибрано вхідний каталог, вміст буде записано до наявного каталогу та вирішено конфлікти у відповідних файлах каталогу та підкаталогів.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Які файли залишити?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Для продовження потрібно вибрати принаймні одну версію для кожного файлу.\"] } } } } }, { \"locale\": \"ur_PK\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Urdu (Pakistan) (https://www.transifex.com/nextcloud/teams/64236/ur_PK/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ur_PK\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Urdu (Pakistan) (https://www.transifex.com/nextcloud/teams/64236/ur_PK/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ur_PK\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"uz\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Uzbek (https://www.transifex.com/nextcloud/teams/64236/uz/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"uz\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Uzbek (https://www.transifex.com/nextcloud/teams/64236/uz/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: uz\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"vi\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Tung DangQuang, 2023\", \"Language-Team\": \"Vietnamese (https://app.transifex.com/nextcloud/teams/64236/vi/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"vi\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ , 2023\\nTung DangQuang, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Tung DangQuang, 2023\\nLanguage-Team: Vietnamese (https://app.transifex.com/nextcloud/teams/64236/vi/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: vi\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} Tập tin xung đột\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} tập tin lỗi trong {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"Còn {second} giây\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"Còn lại {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"Còn lại một vài giây\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Huỷ tải lên\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Tiếp Tục\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"Thời gian còn lại dự kiến\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Phiên Bản Hiện Tại\"] }, \"If you select both versions, the copied file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the copied file will have a number added to its name.\", \"msgstr\": [\"Nếu bạn chọn cả hai phiên bản, tệp được sao chép sẽ có thêm một số vào tên của nó.\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Ngày sửa dổi lần cuối không xác định\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Tạo Mới\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Phiên Bản Mới\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"đã tạm dừng\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Xem Trước Ảnh\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Chọn tất cả hộp checkbox\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Chọn tất cả các tập tin có sẵn\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Chọn tất cả các tập tin mới\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Bỏ Qua {count} tập tin\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Không rõ dung lượng\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"Dừng Tải Lên\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Tập tin tải lên\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Đang Tải Lên\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Bạn muốn giữ tập tin nào?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Bạn cần chọn ít nhất một phiên bản tập tin mới có thể tiếp tục\"] } } } } }, { \"locale\": \"zh_CN\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Hongbo Chen, 2023\", \"Language-Team\": \"Chinese (China) (https://app.transifex.com/nextcloud/teams/64236/zh_CN/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"zh_CN\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ , 2023\\nHongbo Chen, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Hongbo Chen, 2023\\nLanguage-Team: Chinese (China) (https://app.transifex.com/nextcloud/teams/64236/zh_CN/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: zh_CN\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count}文件冲突\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"在{dirname}目录下有{count}个文件冲突\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"剩余 {seconds} 秒\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"剩余 {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"还剩几秒\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"添加\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"取消上传\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"继续\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"估计剩余时间\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"版本已存在\"] }, \"If you select both versions, the copied file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the copied file will have a number added to its name.\", \"msgstr\": [\"如果选择所有的版本,新增版本的文件名为原文件名加数字\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"文件最后修改日期未知\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"新版本\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"已暂停\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"图片预览\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"选择所有的选择框\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"选择所有存在的文件\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"选择所有的新文件\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"跳过{count}个文件\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"文件大小未知\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"取消上传\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"上传文件\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"你要保留哪些文件?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"每个文件至少选择一个版本\"] } } } } }, { \"locale\": \"zh_HK\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Café Tango, 2024\", \"Language-Team\": \"Chinese (Hong Kong) (https://app.transifex.com/nextcloud/teams/64236/zh_HK/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"zh_HK\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nCafé Tango, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Café Tango, 2024\\nLanguage-Team: Chinese (Hong Kong) (https://app.transifex.com/nextcloud/teams/64236/zh_HK/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: zh_HK\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} 個檔案衝突\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{dirname} 中有 {count} 個檔案衝突\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"剩餘 {seconds} 秒\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"剩餘 {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"還剩幾秒\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"取消\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"取消整個操作\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"取消上傳\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"繼續\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"估計剩餘時間\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"既有版本\"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"若您選取兩個版本,傳入檔案的名稱將會新增編號。\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"最後修改日期不詳\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"新增\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"新版本 \"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"已暫停\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"預覽圖片\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"選取所有核取方塊\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"選取所有既有檔案\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"選取所有新檔案\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"略過 {count} 個檔案\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"大小不詳\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"已取消上傳\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"上傳檔案\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"上傳進度\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"選取傳入資料夾後,其中任何的衝突檔案都會被覆寫。\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"選擇傳入資料夾後,內容將寫入現有資料夾並執行遞歸衝突解決。\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"您想保留哪些檔案?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"您必須為每個檔案都至少選取一個版本以繼續。\"] } } } } }, { \"locale\": \"zh_TW\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"黃柏諺 , 2024\", \"Language-Team\": \"Chinese (Taiwan) (https://app.transifex.com/nextcloud/teams/64236/zh_TW/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"zh_TW\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\n黃柏諺 , 2024\\n\" }, \"msgstr\": [\"Last-Translator: 黃柏諺 , 2024\\nLanguage-Team: Chinese (Taiwan) (https://app.transifex.com/nextcloud/teams/64236/zh_TW/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: zh_TW\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} 個檔案衝突\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{dirname} 中有 {count} 個檔案衝突\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"剩餘 {seconds} 秒\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"剩餘 {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"還剩幾秒\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"取消\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"取消整個操作\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"取消上傳\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"繼續\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"估計剩餘時間\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"既有版本\"] }, \"If you select both versions, the copied file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the copied file will have a number added to its name.\", \"msgstr\": [\"若您選取兩個版本,複製的檔案的名稱將會新增編號。\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"最後修改日期未知\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"新增\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"新版本\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"已暫停\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"預覽圖片\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"選取所有核取方塊\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"選取所有既有檔案\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"選取所有新檔案\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"略過 {count} 檔案\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"未知大小\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"已取消上傳\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"上傳檔案\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"上傳進度\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"選取傳入資料夾後,其中任何的衝突檔案都會被覆寫。\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"您想保留哪些檔案?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"您必須為每個檔案都至少選取一個版本以繼續。\"] } } } } }].map((data) => gtBuilder.addTranslation(data.locale, data.json));\nconst gt = gtBuilder.build();\nconst n = gt.ngettext.bind(gt);\nconst t = gt.gettext.bind(gt);\n/**\n * @copyright 2019 Christoph Wurst \n *\n * @author Christoph Wurst \n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see .\n *\n */\nconst logger = getLoggerBuilder().setApp(\"@nextcloud/upload\").detectUser().build();\nvar Status = /* @__PURE__ */ ((Status2) => {\n Status2[Status2[\"IDLE\"] = 0] = \"IDLE\";\n Status2[Status2[\"UPLOADING\"] = 1] = \"UPLOADING\";\n Status2[Status2[\"PAUSED\"] = 2] = \"PAUSED\";\n return Status2;\n})(Status || {});\nclass Uploader {\n // Initialized via setter in the constructor\n _destinationFolder;\n _isPublic;\n // Global upload queue\n _uploadQueue = [];\n _jobQueue = new PQueue({ concurrency: 3 });\n _queueSize = 0;\n _queueProgress = 0;\n _queueStatus = 0;\n _notifiers = [];\n /**\n * Initialize uploader\n *\n * @param {boolean} isPublic are we in public mode ?\n * @param {Folder} destinationFolder the context folder to operate, relative to the root folder\n */\n constructor(isPublic = false, destinationFolder) {\n this._isPublic = isPublic;\n if (!destinationFolder) {\n const source = join(davRemoteURL, davRootPath);\n let owner;\n if (isPublic) {\n owner = \"anonymous\";\n } else {\n const user = getCurrentUser()?.uid;\n if (!user) {\n throw new Error(\"User is not logged in\");\n }\n owner = user;\n }\n destinationFolder = new Folder({\n id: 0,\n owner,\n permissions: Permission.ALL,\n root: davRootPath,\n source\n });\n }\n this.destination = destinationFolder;\n this._jobQueue.addListener(\"idle\", () => this.reset());\n logger.debug(\"Upload workspace initialized\", {\n destination: this.destination,\n root: this.root,\n isPublic,\n maxChunksSize: getMaxChunksSize()\n });\n }\n /**\n * Get the upload destination path relative to the root folder\n */\n get destination() {\n return this._destinationFolder;\n }\n /**\n * Set the upload destination path relative to the root folder\n */\n set destination(folder) {\n if (!folder) {\n throw new Error(\"Invalid destination folder\");\n }\n logger.debug(\"Destination set\", { folder });\n this._destinationFolder = folder;\n }\n /**\n * Get the root folder\n */\n get root() {\n return this._destinationFolder.source;\n }\n /**\n * Get the upload queue\n */\n get queue() {\n return this._uploadQueue;\n }\n reset() {\n this._uploadQueue.splice(0, this._uploadQueue.length);\n this._jobQueue.clear();\n this._queueSize = 0;\n this._queueProgress = 0;\n this._queueStatus = 0;\n }\n /**\n * Pause any ongoing upload(s)\n */\n pause() {\n this._jobQueue.pause();\n this._queueStatus = 2;\n }\n /**\n * Resume any pending upload(s)\n */\n start() {\n this._jobQueue.start();\n this._queueStatus = 1;\n this.updateStats();\n }\n /**\n * Get the upload queue stats\n */\n get info() {\n return {\n size: this._queueSize,\n progress: this._queueProgress,\n status: this._queueStatus\n };\n }\n updateStats() {\n const size = this._uploadQueue.map((upload2) => upload2.size).reduce((partialSum, a) => partialSum + a, 0);\n const uploaded = this._uploadQueue.map((upload2) => upload2.uploaded).reduce((partialSum, a) => partialSum + a, 0);\n this._queueSize = size;\n this._queueProgress = uploaded;\n if (this._queueStatus === 2) {\n return;\n }\n this._queueStatus = this._jobQueue.size > 0 ? 1 : 0;\n }\n addNotifier(notifier) {\n this._notifiers.push(notifier);\n }\n /**\n * Notify listeners of the upload completion\n * @param upload The upload that finished\n */\n _notifyAll(upload2) {\n for (const notifier of this._notifiers) {\n try {\n notifier(upload2);\n } catch (error) {\n logger.warn(\"Error in upload notifier\", { error, source: upload2.source });\n }\n }\n }\n /**\n * Uploads multiple files or folders while preserving the relative path (if available)\n * @param {string} destination The destination path relative to the root folder. e.g. /foo/bar (a file \"a.txt\" will be uploaded then to \"/foo/bar/a.txt\")\n * @param {Array} files The files and/or folders to upload\n * @param {Function} callback Callback that receives the nodes in the current folder and the current path to allow resolving conflicts, all nodes that are returned will be uploaded (if a folder does not exist it will be created)\n * @return Cancelable promise that resolves to an array of uploads\n *\n * @example\n * ```ts\n * // For example this is from handling the onchange event of an input[type=file]\n * async handleFiles(files: File[]) {\n * this.uploads = await this.uploader.batchUpload('uploads', files, this.handleConflicts)\n * }\n *\n * async handleConflicts(nodes: File[], currentPath: string) {\n * const conflicts = getConflicts(nodes, this.fetchContent(currentPath))\n * if (conficts.length === 0) {\n * // No conflicts so upload all\n * return nodes\n * } else {\n * // Open the conflict picker to resolve conflicts\n * try {\n * const { selected, renamed } = await openConflictPicker(currentPath, conflicts, this.fetchContent(currentPath), { recursive: true })\n * return [...selected, ...renamed]\n * } catch (e) {\n * return false\n * }\n * }\n * }\n * ```\n */\n batchUpload(destination, files, callback) {\n const rootFolder = new Directory(\"\", files);\n if (!callback) {\n callback = async (files2) => files2;\n }\n try {\n this._jobQueue.concurrency += 1;\n return new PCancelable(async (resolve, reject, onCancel) => {\n try {\n const value = await this._jobQueue.add(() => {\n const promise = this.uploadDirectory(destination, rootFolder, callback, davGetClient(this.root));\n onCancel(() => promise.cancel());\n return promise;\n });\n if (value) {\n resolve(value);\n }\n } catch (error) {\n logger.error(\"Error in batch upload\", { error });\n }\n reject(t(\"Upload has been cancelled\"));\n });\n } finally {\n this._jobQueue.concurrency -= 1;\n }\n }\n // Helper for uploading directories (recursivly)\n uploadDirectory(destination, directory, callback, client) {\n const folderPath = normalize(`${destination}/${directory.name}`).replace(/\\/$/, \"\");\n const rootPath = `${this.root.replace(/\\/$/, \"\")}/${folderPath.replace(/^\\//, \"\")}`;\n return new PCancelable(async (resolve, reject, onCancel) => {\n const abort = new AbortController();\n onCancel(() => abort.abort());\n const selectedForUpload = await callback(directory.children, folderPath);\n if (selectedForUpload === false) {\n reject(t(\"Upload has been cancelled\"));\n return;\n }\n const directories = [];\n const uploads = [];\n const currentUpload = new Upload(rootPath, false, 0, directory);\n currentUpload.signal.addEventListener(\"abort\", () => reject(t(\"Upload has been cancelled\")));\n currentUpload.status = Status$1.UPLOADING;\n try {\n if (directory.name) {\n try {\n await client.createDirectory(folderPath, { signal: abort.signal });\n uploads.push(new PCancelable((resolve2) => resolve2(currentUpload)));\n this._uploadQueue.push(currentUpload);\n } catch (error) {\n if (error && typeof error === \"object\" && \"status\" in error && error.status === 405) {\n logger.debug(\"Directory already exists, writing into it\", { directory: directory.name });\n } else {\n throw error;\n }\n }\n }\n for (const node of selectedForUpload) {\n if (node instanceof Directory) {\n directories.push(this.uploadDirectory(folderPath, node, callback, client));\n } else {\n uploads.push(this.upload(`${folderPath}/${node.name}`, node));\n }\n }\n abort.signal.addEventListener(\"abort\", () => {\n uploads.forEach((upload2) => upload2.cancel());\n directories.forEach((upload2) => upload2.cancel());\n });\n const resolvedUploads = await Promise.all(uploads);\n const resolvedDirectoryUploads = await Promise.all(directories);\n currentUpload.status = Status$1.FINISHED;\n resolve([resolvedUploads, ...resolvedDirectoryUploads].flat());\n } catch (e) {\n abort.abort(e);\n currentUpload.status = Status$1.FAILED;\n reject(e);\n } finally {\n if (directory.name) {\n this._notifyAll(currentUpload);\n this.updateStats();\n }\n }\n });\n }\n /**\n * Upload a file to the given path\n * @param {string} destination the destination path relative to the root folder. e.g. /foo/bar.txt\n * @param {File|FileSystemFileEntry} fileHandle the file to upload\n * @param {string} root the root folder to upload to\n * @param retries number of retries\n */\n upload(destination, fileHandle, root, retries = 5) {\n root = root || this.root;\n const destinationPath = `${root.replace(/\\/$/, \"\")}/${destination.replace(/^\\//, \"\")}`;\n const { origin } = new URL(destinationPath);\n const encodedDestinationFile = origin + encodePath(destinationPath.slice(origin.length));\n logger.debug(`Uploading ${fileHandle.name} to ${encodedDestinationFile}`);\n const promise = new PCancelable(async (resolve, reject, onCancel) => {\n if (isFileSystemFileEntry(fileHandle)) {\n fileHandle = await new Promise((resolve2) => fileHandle.file(resolve2, reject));\n }\n const file = fileHandle;\n const maxChunkSize = getMaxChunksSize(\"size\" in file ? file.size : void 0);\n const disabledChunkUpload = this._isPublic || maxChunkSize === 0 || \"size\" in file && file.size < maxChunkSize;\n const upload2 = new Upload(destinationPath, !disabledChunkUpload, file.size, file);\n this._uploadQueue.push(upload2);\n this.updateStats();\n onCancel(upload2.cancel);\n if (!disabledChunkUpload) {\n logger.debug(\"Initializing chunked upload\", { file, upload: upload2 });\n const tempUrl = await initChunkWorkspace(encodedDestinationFile, retries);\n const chunksQueue = [];\n for (let chunk = 0; chunk < upload2.chunks; chunk++) {\n const bufferStart = chunk * maxChunkSize;\n const bufferEnd = Math.min(bufferStart + maxChunkSize, upload2.size);\n const blob = () => getChunk(file, bufferStart, maxChunkSize);\n const request = () => {\n return uploadData(\n `${tempUrl}/${chunk + 1}`,\n blob,\n upload2.signal,\n () => this.updateStats(),\n encodedDestinationFile,\n {\n \"X-OC-Mtime\": file.lastModified / 1e3,\n \"OC-Total-Length\": file.size,\n \"Content-Type\": \"application/octet-stream\"\n },\n retries\n ).then(() => {\n upload2.uploaded = upload2.uploaded + maxChunkSize;\n }).catch((error) => {\n if (error?.response?.status === 507) {\n logger.error(\"Upload failed, not enough space on the server or quota exceeded. Cancelling the remaining chunks\", { error, upload: upload2 });\n upload2.cancel();\n upload2.status = Status$1.FAILED;\n throw error;\n }\n if (!isCancel(error)) {\n logger.error(`Chunk ${chunk + 1} ${bufferStart} - ${bufferEnd} uploading failed`, { error, upload: upload2 });\n upload2.cancel();\n upload2.status = Status$1.FAILED;\n }\n throw error;\n });\n };\n chunksQueue.push(this._jobQueue.add(request));\n }\n try {\n await Promise.all(chunksQueue);\n this.updateStats();\n upload2.response = await axios.request({\n method: \"MOVE\",\n url: `${tempUrl}/.file`,\n headers: {\n \"X-OC-Mtime\": file.lastModified / 1e3,\n \"OC-Total-Length\": file.size,\n Destination: encodedDestinationFile\n }\n });\n this.updateStats();\n upload2.status = Status$1.FINISHED;\n logger.debug(`Successfully uploaded ${file.name}`, { file, upload: upload2 });\n resolve(upload2);\n } catch (error) {\n if (!isCancel(error)) {\n upload2.status = Status$1.FAILED;\n reject(\"Failed assembling the chunks together\");\n } else {\n upload2.status = Status$1.FAILED;\n reject(t(\"Upload has been cancelled\"));\n }\n axios.request({\n method: \"DELETE\",\n url: `${tempUrl}`\n });\n }\n this._notifyAll(upload2);\n } else {\n logger.debug(\"Initializing regular upload\", { file, upload: upload2 });\n const blob = await getChunk(file, 0, upload2.size);\n const request = async () => {\n try {\n upload2.response = await uploadData(\n encodedDestinationFile,\n blob,\n upload2.signal,\n (event) => {\n upload2.uploaded = upload2.uploaded + event.bytes;\n this.updateStats();\n },\n void 0,\n {\n \"X-OC-Mtime\": file.lastModified / 1e3,\n \"Content-Type\": file.type\n }\n );\n upload2.uploaded = upload2.size;\n this.updateStats();\n logger.debug(`Successfully uploaded ${file.name}`, { file, upload: upload2 });\n resolve(upload2);\n } catch (error) {\n if (isCancel(error)) {\n upload2.status = Status$1.FAILED;\n reject(t(\"Upload has been cancelled\"));\n return;\n }\n if (error?.response) {\n upload2.response = error.response;\n }\n upload2.status = Status$1.FAILED;\n logger.error(`Failed uploading ${file.name}`, { error, file, upload: upload2 });\n reject(\"Failed uploading the file\");\n }\n this._notifyAll(upload2);\n };\n this._jobQueue.add(request);\n this.updateStats();\n }\n return upload2;\n });\n return promise;\n }\n}\nfunction normalizeComponent(scriptExports, render6, staticRenderFns, functionalTemplate, injectStyles, scopeId, moduleIdentifier, shadowMode) {\n var options = typeof scriptExports === \"function\" ? scriptExports.options : scriptExports;\n if (render6) {\n options.render = render6;\n options.staticRenderFns = staticRenderFns;\n options._compiled = true;\n }\n if (functionalTemplate) {\n options.functional = true;\n }\n if (scopeId) {\n options._scopeId = \"data-v-\" + scopeId;\n }\n var hook;\n if (moduleIdentifier) {\n hook = function(context) {\n context = context || // cached call\n this.$vnode && this.$vnode.ssrContext || // stateful\n this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext;\n if (!context && typeof __VUE_SSR_CONTEXT__ !== \"undefined\") {\n context = __VUE_SSR_CONTEXT__;\n }\n if (injectStyles) {\n injectStyles.call(this, context);\n }\n if (context && context._registeredComponents) {\n context._registeredComponents.add(moduleIdentifier);\n }\n };\n options._ssrRegister = hook;\n } else if (injectStyles) {\n hook = shadowMode ? function() {\n injectStyles.call(\n this,\n (options.functional ? this.parent : this).$root.$options.shadowRoot\n );\n } : injectStyles;\n }\n if (hook) {\n if (options.functional) {\n options._injectStyles = hook;\n var originalRender = options.render;\n options.render = function renderWithStyleInjection(h, context) {\n hook.call(context);\n return originalRender(h, context);\n };\n } else {\n var existing = options.beforeCreate;\n options.beforeCreate = existing ? [].concat(existing, hook) : [hook];\n }\n }\n return {\n exports: scriptExports,\n options\n };\n}\nconst _sfc_main$4 = {\n name: \"CancelIcon\",\n emits: [\"click\"],\n props: {\n title: {\n type: String\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n};\nvar _sfc_render$4 = function render() {\n var _vm = this, _c = _vm._self._c;\n return _c(\"span\", _vm._b({ staticClass: \"material-design-icon cancel-icon\", attrs: { \"aria-hidden\": _vm.title ? null : true, \"aria-label\": _vm.title, \"role\": \"img\" }, on: { \"click\": function($event) {\n return _vm.$emit(\"click\", $event);\n } } }, \"span\", _vm.$attrs, false), [_c(\"svg\", { staticClass: \"material-design-icon__svg\", attrs: { \"fill\": _vm.fillColor, \"width\": _vm.size, \"height\": _vm.size, \"viewBox\": \"0 0 24 24\" } }, [_c(\"path\", { attrs: { \"d\": \"M12 2C17.5 2 22 6.5 22 12S17.5 22 12 22 2 17.5 2 12 6.5 2 12 2M12 4C10.1 4 8.4 4.6 7.1 5.7L18.3 16.9C19.3 15.5 20 13.8 20 12C20 7.6 16.4 4 12 4M16.9 18.3L5.7 7.1C4.6 8.4 4 10.1 4 12C4 16.4 7.6 20 12 20C13.9 20 15.6 19.4 16.9 18.3Z\" } }, [_vm.title ? _c(\"title\", [_vm._v(_vm._s(_vm.title))]) : _vm._e()])])]);\n};\nvar _sfc_staticRenderFns$4 = [];\nvar __component__$4 = /* @__PURE__ */ normalizeComponent(\n _sfc_main$4,\n _sfc_render$4,\n _sfc_staticRenderFns$4,\n false,\n null,\n null,\n null,\n null\n);\nconst IconCancel = __component__$4.exports;\nconst _sfc_main$3 = {\n name: \"FolderUploadIcon\",\n emits: [\"click\"],\n props: {\n title: {\n type: String\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n};\nvar _sfc_render$3 = function render2() {\n var _vm = this, _c = _vm._self._c;\n return _c(\"span\", _vm._b({ staticClass: \"material-design-icon folder-upload-icon\", attrs: { \"aria-hidden\": _vm.title ? null : true, \"aria-label\": _vm.title, \"role\": \"img\" }, on: { \"click\": function($event) {\n return _vm.$emit(\"click\", $event);\n } } }, \"span\", _vm.$attrs, false), [_c(\"svg\", { staticClass: \"material-design-icon__svg\", attrs: { \"fill\": _vm.fillColor, \"width\": _vm.size, \"height\": _vm.size, \"viewBox\": \"0 0 24 24\" } }, [_c(\"path\", { attrs: { \"d\": \"M20,6A2,2 0 0,1 22,8V18A2,2 0 0,1 20,20H4A2,2 0 0,1 2,18V6A2,2 0 0,1 4,4H10L12,6H20M10.75,13H14V17H16V13H19.25L15,8.75\" } }, [_vm.title ? _c(\"title\", [_vm._v(_vm._s(_vm.title))]) : _vm._e()])])]);\n};\nvar _sfc_staticRenderFns$3 = [];\nvar __component__$3 = /* @__PURE__ */ normalizeComponent(\n _sfc_main$3,\n _sfc_render$3,\n _sfc_staticRenderFns$3,\n false,\n null,\n null,\n null,\n null\n);\nconst IconFolderUpload = __component__$3.exports;\nconst _sfc_main$2 = {\n name: \"PlusIcon\",\n emits: [\"click\"],\n props: {\n title: {\n type: String\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n};\nvar _sfc_render$2 = function render3() {\n var _vm = this, _c = _vm._self._c;\n return _c(\"span\", _vm._b({ staticClass: \"material-design-icon plus-icon\", attrs: { \"aria-hidden\": _vm.title ? null : true, \"aria-label\": _vm.title, \"role\": \"img\" }, on: { \"click\": function($event) {\n return _vm.$emit(\"click\", $event);\n } } }, \"span\", _vm.$attrs, false), [_c(\"svg\", { staticClass: \"material-design-icon__svg\", attrs: { \"fill\": _vm.fillColor, \"width\": _vm.size, \"height\": _vm.size, \"viewBox\": \"0 0 24 24\" } }, [_c(\"path\", { attrs: { \"d\": \"M19,13H13V19H11V13H5V11H11V5H13V11H19V13Z\" } }, [_vm.title ? _c(\"title\", [_vm._v(_vm._s(_vm.title))]) : _vm._e()])])]);\n};\nvar _sfc_staticRenderFns$2 = [];\nvar __component__$2 = /* @__PURE__ */ normalizeComponent(\n _sfc_main$2,\n _sfc_render$2,\n _sfc_staticRenderFns$2,\n false,\n null,\n null,\n null,\n null\n);\nconst IconPlus = __component__$2.exports;\nconst _sfc_main$1 = {\n name: \"UploadIcon\",\n emits: [\"click\"],\n props: {\n title: {\n type: String\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n};\nvar _sfc_render$1 = function render4() {\n var _vm = this, _c = _vm._self._c;\n return _c(\"span\", _vm._b({ staticClass: \"material-design-icon upload-icon\", attrs: { \"aria-hidden\": _vm.title ? null : true, \"aria-label\": _vm.title, \"role\": \"img\" }, on: { \"click\": function($event) {\n return _vm.$emit(\"click\", $event);\n } } }, \"span\", _vm.$attrs, false), [_c(\"svg\", { staticClass: \"material-design-icon__svg\", attrs: { \"fill\": _vm.fillColor, \"width\": _vm.size, \"height\": _vm.size, \"viewBox\": \"0 0 24 24\" } }, [_c(\"path\", { attrs: { \"d\": \"M9,16V10H5L12,3L19,10H15V16H9M5,20V18H19V20H5Z\" } }, [_vm.title ? _c(\"title\", [_vm._v(_vm._s(_vm.title))]) : _vm._e()])])]);\n};\nvar _sfc_staticRenderFns$1 = [];\nvar __component__$1 = /* @__PURE__ */ normalizeComponent(\n _sfc_main$1,\n _sfc_render$1,\n _sfc_staticRenderFns$1,\n false,\n null,\n null,\n null,\n null\n);\nconst IconUpload = __component__$1.exports;\nconst _sfc_main = Vue.extend({\n name: \"UploadPicker\",\n components: {\n IconCancel,\n IconFolderUpload,\n IconPlus,\n IconUpload,\n NcActionButton,\n NcActionCaption,\n NcActionSeparator,\n NcActions,\n NcButton,\n NcIconSvgWrapper,\n NcProgressBar\n },\n props: {\n accept: {\n type: Array,\n default: null\n },\n disabled: {\n type: Boolean,\n default: false\n },\n multiple: {\n type: Boolean,\n default: false\n },\n destination: {\n type: Folder,\n default: void 0\n },\n allowFolders: {\n type: Boolean,\n default: false\n },\n /**\n * List of file present in the destination folder\n * It is also possible to provide a function that takes a relative path to the current directory and returns the content of it\n * Note: If a function is passed it should return the current base directory when no path or an empty is passed\n */\n content: {\n type: [Array, Function],\n default: () => []\n },\n forbiddenCharacters: {\n type: Array,\n default: () => []\n }\n },\n setup() {\n return {\n t,\n // non reactive data / properties\n progressTimeId: `nc-uploader-progress-${Math.random().toString(36).slice(7)}`\n };\n },\n data() {\n return {\n eta: null,\n timeLeft: \"\",\n currentContent: [],\n newFileMenuEntries: [],\n uploadManager: getUploader()\n };\n },\n computed: {\n menuEntriesUpload() {\n return this.newFileMenuEntries.filter((entry) => entry.category === NewMenuEntryCategory.UploadFromDevice);\n },\n menuEntriesNew() {\n return this.newFileMenuEntries.filter((entry) => entry.category === NewMenuEntryCategory.CreateNew);\n },\n menuEntriesOther() {\n return this.newFileMenuEntries.filter((entry) => entry.category === NewMenuEntryCategory.Other);\n },\n /**\n * Check whether the current browser supports uploading directories\n * Hint: This does not check if the current connection supports this, as some browsers require a secure context!\n */\n canUploadFolders() {\n return this.allowFolders && \"webkitdirectory\" in document.createElement(\"input\");\n },\n totalQueueSize() {\n return this.uploadManager.info?.size || 0;\n },\n uploadedQueueSize() {\n return this.uploadManager.info?.progress || 0;\n },\n progress() {\n return Math.round(this.uploadedQueueSize / this.totalQueueSize * 100) || 0;\n },\n queue() {\n return this.uploadManager.queue;\n },\n hasFailure() {\n return this.queue?.filter((upload2) => upload2.status === Status$1.FAILED).length !== 0;\n },\n isUploading() {\n return this.queue?.length > 0;\n },\n isAssembling() {\n return this.queue?.filter((upload2) => upload2.status === Status$1.ASSEMBLING).length !== 0;\n },\n isPaused() {\n return this.uploadManager.info?.status === Status.PAUSED;\n },\n // Hide the button text if we're uploading\n buttonName() {\n if (this.isUploading) {\n return void 0;\n }\n return t(\"New\");\n }\n },\n watch: {\n allowFolders: {\n immediate: true,\n handler() {\n if (typeof this.content !== \"function\" && this.allowFolders) {\n logger.error(\"[UploadPicker] Setting `allowFolders` is only allowed if `content` is a function\");\n }\n }\n },\n content: {\n immediate: true,\n async handler() {\n this.currentContent = await this.getContent();\n }\n },\n destination(destination) {\n this.setDestination(destination);\n },\n totalQueueSize(size) {\n this.eta = makeEta({ min: 0, max: size });\n this.updateStatus();\n },\n uploadedQueueSize(size) {\n this.eta?.report?.(size);\n this.updateStatus();\n },\n isPaused(isPaused) {\n if (isPaused) {\n this.$emit(\"paused\", this.queue);\n } else {\n this.$emit(\"resumed\", this.queue);\n }\n }\n },\n beforeMount() {\n if (this.destination) {\n this.setDestination(this.destination);\n }\n this.uploadManager.addNotifier(this.onUploadCompletion);\n logger.debug(\"UploadPicker initialised\");\n },\n methods: {\n /**\n * Trigger file picker\n * @param uploadFolders Upload folders\n */\n onTriggerPick(uploadFolders = false) {\n const input = this.$refs.input;\n if (this.canUploadFolders) {\n input.webkitdirectory = uploadFolders;\n }\n this.$nextTick(() => input.click());\n },\n /**\n * Helper for backwards compatibility that queries the content of the current directory\n * @param path The current path\n */\n async getContent(path) {\n return Array.isArray(this.content) ? this.content : await this.content(path);\n },\n /**\n * Show a dialog to let the user decide how to proceed with invalid filenames.\n * The returned promise resolves to true if the file should be renamed and resolves to false to skip it the file.\n * The promise rejects when the user want to abort the operation.\n *\n * @param filename The invalid file name\n */\n async showInvalidFileNameDialog(filename) {\n return new PCancelable(async (resolve, reject) => {\n await new DialogBuilder().setName(t(\"Invalid file name\")).setSeverity(\"error\").setText(t('\"{filename}\" contains invalid characters, how do you want to continue?', { filename })).setButtons([\n {\n label: t(\"Cancel\"),\n type: \"error\",\n callback: reject\n },\n {\n label: t(\"Skip\"),\n callback: () => resolve(false)\n },\n {\n label: t(\"Rename\"),\n type: \"primary\",\n callback: () => resolve(true)\n }\n ]).build().show();\n });\n },\n async handleConflicts(nodes, path) {\n try {\n const content = path === \"\" ? this.currentContent : await this.getContent(path).catch(() => []);\n const conflicts = getConflicts(nodes, content);\n if (conflicts.length > 0) {\n const { selected, renamed } = await openConflictPicker(path, conflicts, content, { recursive: true });\n nodes = [...selected, ...renamed];\n }\n const filesToUpload = [];\n for (const file of nodes) {\n const invalid = this.forbiddenCharacters.some((c) => file.name.includes(c));\n if (!invalid) {\n filesToUpload.push(file);\n continue;\n }\n if (await this.showInvalidFileNameDialog(file.name)) {\n let newName = this.replaceInvalidCharacters(file.name);\n newName = getUniqueName(newName, nodes.map((node) => node.name));\n Object.defineProperty(file, \"name\", { value: newName });\n filesToUpload.push(file);\n }\n }\n return filesToUpload;\n } catch (error) {\n logger.debug(\"Upload has been cancelled\", { error });\n showWarning(t(\"Upload has been cancelled\"));\n return false;\n }\n },\n /**\n * Helper function to replace invalid characters in text\n * @param text Text to replace invalid character\n */\n replaceInvalidCharacters(text) {\n const invalidReplacement = [\"-\", \"_\", \" \"].filter((c) => !this.forbiddenCharacters.includes(c))[0] ?? \"x\";\n this.forbiddenCharacters.forEach((c) => {\n text = text.replaceAll(c, invalidReplacement);\n });\n return text;\n },\n /**\n * Start uploading\n */\n onPick() {\n const input = this.$refs.input;\n const files = input.files ? Array.from(input.files) : [];\n this.uploadManager.batchUpload(\"\", files, this.handleConflicts).catch((error) => logger.debug(\"Error while uploading\", { error })).finally(() => this.resetForm());\n },\n resetForm() {\n const form = this.$refs.form;\n form?.reset();\n },\n /**\n * Cancel ongoing queue\n */\n onCancel() {\n this.uploadManager.queue.forEach((upload2) => {\n upload2.cancel();\n });\n this.resetForm();\n },\n updateStatus() {\n if (this.isPaused) {\n this.timeLeft = t(\"paused\");\n return;\n }\n const estimate = Math.round(this.eta.estimate());\n if (estimate === Infinity) {\n this.timeLeft = t(\"estimating time left\");\n return;\n }\n if (estimate < 10) {\n this.timeLeft = t(\"a few seconds left\");\n return;\n }\n if (estimate > 60) {\n const date = /* @__PURE__ */ new Date(0);\n date.setSeconds(estimate);\n const time = date.toISOString().slice(11, 11 + 8);\n this.timeLeft = t(\"{time} left\", { time });\n return;\n }\n this.timeLeft = t(\"{seconds} seconds left\", { seconds: estimate });\n },\n setDestination(destination) {\n if (!this.destination) {\n logger.debug(\"Invalid destination\");\n return;\n }\n this.uploadManager.destination = destination;\n this.newFileMenuEntries = getNewFileMenuEntries(destination);\n },\n onUploadCompletion(upload2) {\n if (upload2.status === Status$1.FAILED) {\n this.$emit(\"failed\", upload2);\n } else {\n this.$emit(\"uploaded\", upload2);\n }\n }\n }\n});\nvar _sfc_render = function render5() {\n var _vm = this, _c = _vm._self._c;\n _vm._self._setupProxy;\n return _vm.destination ? _c(\"form\", { ref: \"form\", staticClass: \"upload-picker\", class: { \"upload-picker--uploading\": _vm.isUploading, \"upload-picker--paused\": _vm.isPaused }, attrs: { \"data-cy-upload-picker\": \"\" } }, [_vm.newFileMenuEntries && _vm.newFileMenuEntries.length === 0 ? _c(\"NcButton\", { attrs: { \"disabled\": _vm.disabled, \"data-cy-upload-picker-add\": \"\", \"type\": \"secondary\" }, on: { \"click\": function($event) {\n return _vm.onTriggerPick();\n } }, scopedSlots: _vm._u([{ key: \"icon\", fn: function() {\n return [_c(\"IconPlus\", { attrs: { \"size\": 20 } })];\n }, proxy: true }], null, false, 1991456921) }, [_vm._v(\" \" + _vm._s(_vm.buttonName) + \" \")]) : _c(\"NcActions\", { attrs: { \"menu-name\": _vm.buttonName, \"menu-title\": _vm.t(\"New\"), \"type\": \"secondary\" }, scopedSlots: _vm._u([{ key: \"icon\", fn: function() {\n return [_c(\"IconPlus\", { attrs: { \"size\": 20 } })];\n }, proxy: true }], null, false, 1991456921) }, [_c(\"NcActionCaption\", { attrs: { \"name\": _vm.t(\"Upload from device\") } }), _c(\"NcActionButton\", { attrs: { \"data-cy-upload-picker-add\": \"\", \"close-after-click\": true }, on: { \"click\": function($event) {\n return _vm.onTriggerPick();\n } }, scopedSlots: _vm._u([{ key: \"icon\", fn: function() {\n return [_c(\"IconUpload\", { attrs: { \"size\": 20 } })];\n }, proxy: true }], null, false, 337456192) }, [_vm._v(\" \" + _vm._s(_vm.t(\"Upload files\")) + \" \")]), _vm.canUploadFolders ? _c(\"NcActionButton\", { attrs: { \"close-after-click\": \"\", \"data-cy-upload-picker-add-folders\": \"\" }, on: { \"click\": function($event) {\n return _vm.onTriggerPick(true);\n } }, scopedSlots: _vm._u([{ key: \"icon\", fn: function() {\n return [_c(\"IconFolderUpload\", { staticStyle: { \"color\": \"var(--color-primary-element)\" }, attrs: { \"size\": 20 } })];\n }, proxy: true }], null, false, 1037549157) }, [_vm._v(\" \" + _vm._s(_vm.t(\"Upload folders\")) + \" \")]) : _vm._e(), _vm._l(_vm.menuEntriesUpload, function(entry) {\n return _c(\"NcActionButton\", { key: entry.id, staticClass: \"upload-picker__menu-entry\", attrs: { \"icon\": entry.iconClass, \"close-after-click\": true }, on: { \"click\": function($event) {\n return entry.handler(_vm.destination, _vm.currentContent);\n } }, scopedSlots: _vm._u([entry.iconSvgInline ? { key: \"icon\", fn: function() {\n return [_c(\"NcIconSvgWrapper\", { attrs: { \"svg\": entry.iconSvgInline } })];\n }, proxy: true } : null], null, true) }, [_vm._v(\" \" + _vm._s(entry.displayName) + \" \")]);\n }), _vm.menuEntriesNew.length > 0 ? [_c(\"NcActionSeparator\"), _c(\"NcActionCaption\", { attrs: { \"name\": _vm.t(\"Create new\") } }), _vm._l(_vm.menuEntriesNew, function(entry) {\n return _c(\"NcActionButton\", { key: entry.id, staticClass: \"upload-picker__menu-entry\", attrs: { \"icon\": entry.iconClass, \"close-after-click\": true }, on: { \"click\": function($event) {\n return entry.handler(_vm.destination, _vm.currentContent);\n } }, scopedSlots: _vm._u([entry.iconSvgInline ? { key: \"icon\", fn: function() {\n return [_c(\"NcIconSvgWrapper\", { attrs: { \"svg\": entry.iconSvgInline } })];\n }, proxy: true } : null], null, true) }, [_vm._v(\" \" + _vm._s(entry.displayName) + \" \")]);\n })] : _vm._e(), _vm.menuEntriesOther.length > 0 ? [_c(\"NcActionSeparator\"), _vm._l(_vm.menuEntriesNew, function(entry) {\n return _c(\"NcActionButton\", { key: entry.id, staticClass: \"upload-picker__menu-entry\", attrs: { \"icon\": entry.iconClass, \"close-after-click\": true }, on: { \"click\": function($event) {\n return entry.handler(_vm.destination, _vm.currentContent);\n } }, scopedSlots: _vm._u([entry.iconSvgInline ? { key: \"icon\", fn: function() {\n return [_c(\"NcIconSvgWrapper\", { attrs: { \"svg\": entry.iconSvgInline } })];\n }, proxy: true } : null], null, true) }, [_vm._v(\" \" + _vm._s(entry.displayName) + \" \")]);\n })] : _vm._e()], 2), _c(\"div\", { directives: [{ name: \"show\", rawName: \"v-show\", value: _vm.isUploading, expression: \"isUploading\" }], staticClass: \"upload-picker__progress\" }, [_c(\"NcProgressBar\", { attrs: { \"aria-label\": _vm.t(\"Upload progress\"), \"aria-describedby\": _vm.progressTimeId, \"error\": _vm.hasFailure, \"value\": _vm.progress, \"size\": \"medium\" } }), _c(\"p\", { attrs: { \"id\": _vm.progressTimeId } }, [_vm._v(\" \" + _vm._s(_vm.timeLeft) + \" \")])], 1), _vm.isUploading ? _c(\"NcButton\", { staticClass: \"upload-picker__cancel\", attrs: { \"type\": \"tertiary\", \"aria-label\": _vm.t(\"Cancel uploads\"), \"data-cy-upload-picker-cancel\": \"\" }, on: { \"click\": _vm.onCancel }, scopedSlots: _vm._u([{ key: \"icon\", fn: function() {\n return [_c(\"IconCancel\", { attrs: { \"size\": 20 } })];\n }, proxy: true }], null, false, 3076329829) }) : _vm._e(), _c(\"input\", { ref: \"input\", staticClass: \"hidden-visually\", attrs: { \"accept\": _vm.accept?.join?.(\", \"), \"multiple\": _vm.multiple, \"data-cy-upload-picker-input\": \"\", \"type\": \"file\" }, on: { \"change\": _vm.onPick } })], 1) : _vm._e();\n};\nvar _sfc_staticRenderFns = [];\nvar __component__ = /* @__PURE__ */ normalizeComponent(\n _sfc_main,\n _sfc_render,\n _sfc_staticRenderFns,\n false,\n null,\n \"1f097873\",\n null,\n null\n);\nconst UploadPicker = __component__.exports;\nlet _uploader = null;\nfunction getUploader(isPublic = isPublicShare(), forceRecreate = false) {\n if (_uploader instanceof Uploader && !forceRecreate) {\n return _uploader;\n }\n _uploader = new Uploader(isPublic);\n return _uploader;\n}\nfunction upload(destinationPath, file) {\n const uploader = getUploader();\n uploader.upload(destinationPath, file);\n return uploader;\n}\nasync function openConflictPicker(dirname, conflicts, content, options) {\n const ConflictPicker = defineAsyncComponent(() => import(\"./ConflictPicker-CLXOphvC.mjs\"));\n return new Promise((resolve, reject) => {\n const picker = new Vue({\n name: \"ConflictPickerRoot\",\n render: (h) => h(ConflictPicker, {\n props: {\n dirname,\n conflicts,\n content,\n recursiveUpload: options?.recursive === true\n },\n on: {\n submit(results) {\n resolve(results);\n picker.$destroy();\n picker.$el?.parentNode?.removeChild(picker.$el);\n },\n cancel(error) {\n reject(error ?? new Error(\"Canceled\"));\n picker.$destroy();\n picker.$el?.parentNode?.removeChild(picker.$el);\n }\n }\n })\n });\n picker.$mount();\n document.body.appendChild(picker.$el);\n });\n}\nfunction hasConflict(files, content) {\n return getConflicts(files, content).length > 0;\n}\nfunction getConflicts(files, content) {\n const contentNames = content.map((node) => node.basename);\n const conflicts = files.filter((node) => {\n const name = \"basename\" in node ? node.basename : node.name;\n return contentNames.indexOf(name) !== -1;\n });\n return conflicts;\n}\nexport {\n Status as S,\n UploadPicker as U,\n n as a,\n getConflicts as b,\n Upload as c,\n Status$1 as d,\n getUploader as g,\n hasConflict as h,\n isFileSystemEntry as i,\n logger as l,\n normalizeComponent as n,\n openConflictPicker as o,\n t,\n upload as u\n};\n","function getLocale() {\n return document.documentElement.dataset.locale || \"en\";\n}\nfunction getCanonicalLocale() {\n return getLocale().replace(/_/g, \"-\");\n}\nfunction getLanguage() {\n return document.documentElement.lang || \"en\";\n}\nfunction isRTL(language) {\n const languageCode = language || getLanguage();\n const rtlLanguages = [\n /* eslint-disable no-multi-spaces */\n \"ae\",\n // Avestan\n \"ar\",\n // 'العربية', Arabic\n \"arc\",\n // Aramaic\n \"arz\",\n // 'مصرى', Egyptian\n \"bcc\",\n // 'بلوچی مکرانی', Southern Balochi\n \"bqi\",\n // 'بختياري', Bakthiari\n \"ckb\",\n // 'Soranî / کوردی', Sorani\n \"dv\",\n // Dhivehi\n \"fa\",\n // 'فارسی', Persian\n \"glk\",\n // 'گیلکی', Gilaki\n \"ha\",\n // 'هَوُسَ', Hausa\n \"he\",\n // 'עברית', Hebrew\n \"khw\",\n // 'کھوار', Khowar\n \"ks\",\n // 'कॉशुर / کٲشُر', Kashmiri\n \"ku\",\n // 'Kurdî / كوردی', Kurdish\n \"mzn\",\n // 'مازِرونی', Mazanderani\n \"nqo\",\n // 'ߒߞߏ', N’Ko\n \"pnb\",\n // 'پنجابی', Western Punjabi\n \"ps\",\n // 'پښتو', Pashto,\n \"sd\",\n // 'سنڌي', Sindhi\n \"ug\",\n // 'Uyghurche / ئۇيغۇرچە', Uyghur\n \"ur\",\n // 'اردو', Urdu\n \"uzs\",\n // 'اوزبیکی', Uzbek Afghan\n \"yi\"\n // 'ייִדיש', Yiddish\n /* eslint-enable no-multi-spaces */\n ];\n if ((language || getCanonicalLocale()).startsWith(\"uz-AF\")) {\n return true;\n }\n return rtlLanguages.includes(languageCode);\n}\nexport {\n getLanguage as a,\n getCanonicalLocale as b,\n getLocale as g,\n isRTL as i\n};\n","import { loadState } from \"@nextcloud/initial-state\";\nfunction isPublicShare() {\n return loadState(\"files_sharing\", \"isPublic\", null) ?? document.querySelector(\n 'input#isPublic[type=\"hidden\"][name=\"isPublic\"][value=\"1\"]'\n ) !== null;\n}\nfunction getSharingToken() {\n return loadState(\"files_sharing\", \"sharingToken\", null) ?? document.querySelector('input#sharingToken[type=\"hidden\"]')?.value ?? null;\n}\nexport {\n getSharingToken,\n isPublicShare\n};\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\tid: moduleId,\n\t\tloaded: false,\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Flag the module as loaded\n\tmodule.loaded = true;\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.f = {};\n// This file contains only the entry chunk.\n// The chunk loading function for additional chunks\n__webpack_require__.e = (chunkId) => {\n\treturn Promise.all(Object.keys(__webpack_require__.f).reduce((promises, key) => {\n\t\t__webpack_require__.f[key](chunkId, promises);\n\t\treturn promises;\n\t}, []));\n};","// This function allow to reference async chunks\n__webpack_require__.u = (chunkId) => {\n\t// return url for filenames based on template\n\treturn \"\" + chunkId + \"-\" + chunkId + \".js?v=\" + {\"1110\":\"e20948a2fd7d006e5209\",\"5455\":\"f19bb30c4edfe928a23c\",\"6778\":\"05456eb4fc16e404b623\",\"8377\":\"fed1d221ffdde07bff4c\"}[chunkId] + \"\";\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.nmd = (module) => {\n\tmodule.paths = [];\n\tif (!module.children) module.children = [];\n\treturn module;\n};","__webpack_require__.j = 1171;","var scriptUrl;\nif (__webpack_require__.g.importScripts) scriptUrl = __webpack_require__.g.location + \"\";\nvar document = __webpack_require__.g.document;\nif (!scriptUrl && document) {\n\tif (document.currentScript)\n\t\tscriptUrl = document.currentScript.src;\n\tif (!scriptUrl) {\n\t\tvar scripts = document.getElementsByTagName(\"script\");\n\t\tif(scripts.length) {\n\t\t\tvar i = scripts.length - 1;\n\t\t\twhile (i > -1 && (!scriptUrl || !/^http(s?):/.test(scriptUrl))) scriptUrl = scripts[i--].src;\n\t\t}\n\t}\n}\n// When supporting browsers where an automatic publicPath is not supported you must specify an output.publicPath manually via configuration\n// or pass an empty string (\"\") and set the __webpack_public_path__ variable from your code to use your own logic.\nif (!scriptUrl) throw new Error(\"Automatic publicPath is not supported in this browser\");\nscriptUrl = scriptUrl.replace(/#.*$/, \"\").replace(/\\?.*$/, \"\").replace(/\\/[^\\/]+$/, \"/\");\n__webpack_require__.p = scriptUrl;","__webpack_require__.b = document.baseURI || self.location.href;\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t1171: 0\n};\n\n__webpack_require__.f.j = (chunkId, promises) => {\n\t\t// JSONP chunk loading for javascript\n\t\tvar installedChunkData = __webpack_require__.o(installedChunks, chunkId) ? installedChunks[chunkId] : undefined;\n\t\tif(installedChunkData !== 0) { // 0 means \"already installed\".\n\n\t\t\t// a Promise means \"currently loading\".\n\t\t\tif(installedChunkData) {\n\t\t\t\tpromises.push(installedChunkData[2]);\n\t\t\t} else {\n\t\t\t\tif(true) { // all chunks have JS\n\t\t\t\t\t// setup Promise in chunk cache\n\t\t\t\t\tvar promise = new Promise((resolve, reject) => (installedChunkData = installedChunks[chunkId] = [resolve, reject]));\n\t\t\t\t\tpromises.push(installedChunkData[2] = promise);\n\n\t\t\t\t\t// start chunk loading\n\t\t\t\t\tvar url = __webpack_require__.p + __webpack_require__.u(chunkId);\n\t\t\t\t\t// create error before stack unwound to get useful stacktrace later\n\t\t\t\t\tvar error = new Error();\n\t\t\t\t\tvar loadingEnded = (event) => {\n\t\t\t\t\t\tif(__webpack_require__.o(installedChunks, chunkId)) {\n\t\t\t\t\t\t\tinstalledChunkData = installedChunks[chunkId];\n\t\t\t\t\t\t\tif(installedChunkData !== 0) installedChunks[chunkId] = undefined;\n\t\t\t\t\t\t\tif(installedChunkData) {\n\t\t\t\t\t\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n\t\t\t\t\t\t\t\tvar realSrc = event && event.target && event.target.src;\n\t\t\t\t\t\t\t\terror.message = 'Loading chunk ' + chunkId + ' failed.\\n(' + errorType + ': ' + realSrc + ')';\n\t\t\t\t\t\t\t\terror.name = 'ChunkLoadError';\n\t\t\t\t\t\t\t\terror.type = errorType;\n\t\t\t\t\t\t\t\terror.request = realSrc;\n\t\t\t\t\t\t\t\tinstalledChunkData[1](error);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t};\n\t\t\t\t\t__webpack_require__.l(url, loadingEnded, \"chunk-\" + chunkId, chunkId);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n};\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n__webpack_require__.O.j = (chunkId) => (installedChunks[chunkId] === 0);\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = (parentChunkLoadingFunction, data) => {\n\tvar chunkIds = data[0];\n\tvar moreModules = data[1];\n\tvar runtime = data[2];\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some((id) => (installedChunks[id] !== 0))) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\treturn __webpack_require__.O(result);\n}\n\nvar chunkLoadingGlobal = self[\"webpackChunknextcloud\"] = self[\"webpackChunknextcloud\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","__webpack_require__.nc = undefined;","// startup\n// Load entry module and return exports\n// This entry module depends on other loaded chunks and execution need to be delayed\nvar __webpack_exports__ = __webpack_require__.O(undefined, [4208], () => (__webpack_require__(15076)))\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["deferred","inProgress","dataWebpackPrefix","has","Object","prototype","hasOwnProperty","prefix","Events","EE","fn","context","once","this","addListener","emitter","event","TypeError","listener","evt","_events","push","_eventsCount","clearEvent","EventEmitter","create","__proto__","eventNames","events","name","names","call","slice","getOwnPropertySymbols","concat","listeners","handlers","i","l","length","ee","Array","listenerCount","emit","a1","a2","a3","a4","a5","args","len","arguments","removeListener","undefined","apply","j","on","removeAllListeners","off","prefixed","module","exports","getLoggerBuilder","setApp","detectUser","build","canUnshareOnly","nodes","every","node","attributes","canDisconnectOnly","displayName","view","id","t","hasSharedItems","some","hasDeleteItems","isMixedUnshareAndDelete","type","FileType","File","isAllFiles","Folder","isAllFolders","queue","PQueue","concurrency","action","FileAction","iconSvgInline","enabled","map","permissions","permission","Permission","DELETE","exec","dir","axios","delete","encodedSource","error","logger","source","execBatch","Promise","resolve","window","OC","dialogs","confirmDestructive","count","YES_NO_BUTTONS","confirm","confirmClasses","cancel","decision","showInfo","all","promises","add","async","result","order","triggerDownload","url","hiddenElement","document","createElement","download","href","click","downloadNodes","secret","Math","random","toString","substring","generateUrl","files","JSON","stringify","basename","isDownloadable","READ","_node$attributes$shar","_shareAttributes$find","shareAttributes","parse","downloadAttribute","find","attribute","scope","key","_node$root","root","startsWith","fill","UPDATE","path","link","generateOcsUrl","_getCurrentUser","post","uid","getCurrentUser","location","host","encodePath","data","ocs","token","showError","openLocalClient","shouldFavorite","favorite","favoriteNode","willFavorite","tags","TAG_FAVORITE","dirname","Vue","StarSvg","_node$root$startsWith","NONE","MoveCopyAction","canMove","reduce","min","ALL","canCopy","_node$attributes","canDownload","client","davGetClient","resultToNode","davResultToNode","getContents","controller","AbortController","propfindPayload","davGetDefaultPropfind","davRootPath","CancelablePromise","reject","onCancel","abort","contentsResponse","getDirectoryContents","details","includeSelf","signal","contents","filename","debug","Error","folder","filter","Boolean","getActionForNodes","MOVE_OR_COPY","MOVE","COPY","handleCopyMoveNodeTo","destination","method","overwrite","NodeStatus","LOADING","copySuffix","index","currentPath","join","destinationPath","target","otherNodes","getUniqueName","n","suffix","ignoreFileExtension","copyFile","stat","hasConflict","selected","renamed","openConflictPicker","deleteFile","moveFile","isAxiosError","_error$response","_error$response2","_error$response3","response","status","message","openFilePickerForAction","fileIDs","fileid","filePicker","getFilePickerBuilder","allowDirectories","setFilter","includes","setMimeTypeFilter","setMultiSelect","startAt","setButtonFactory","selection","buttons","dirnames","paths","label","escape","sanitize","icon","CopyIconSvg","callback","FolderMoveSvg","pick","catch","FilePickerClosed","e","displayname","FolderSvg","isDavRessource","OCP","Files","Router","goToRoute","default","DefaultType","HIDDEN","openfile","InformationSvg","_window","_ref","_nodes$0$root","OCA","Sidebar","open","query","defineComponent","components","NcButton","NcDialog","NcTextField","props","defaultName","String","otherNames","emits","close","localDefaultName","computed","errorMessage","isUniqueName","uniqueName","watch","$nextTick","focusInput","mounted","methods","_this$$refs$input","_this$$refs$input$foc","$refs","input","focus","onCreate","$emit","onClose","state","_vm","_c","_self","_setupProxy","attrs","scopedSlots","_u","_v","_s","proxy","$event","preventDefault","ref","newNodeName","folderContent","labels","contentNames","spawnDialog","NewNodeDialog","folderName","entry","CREATE","handler","content","_getCurrentUser2","_context$attributes","_context$attributes2","_context$attributes3","encodeURIComponent","headers","Overwrite","parseInt","createNewFolder","mtime","Date","owner","showSuccess","templatesPath","loadState","directory","templatePath","copySystemTemplates","info","templates_path","initTemplatesFolder","removeNewFileMenuEntry","TemplatePickerVue","defineAsyncComponent","TemplatePicker","getTemplatePicker","mountingPoint","body","appendChild","render","h","parent","picker","el","filesContents","promise","getFavoriteNodes","then","davRemoteURL","generateFavoriteFolderView","View","generateIdFromPath","params","columns","str","hash","charCodeAt","hashCode","userConfig","show_hidden","crop_image_previews","sort_favorites_first","sort_folders_first","grid_view","pinia","createPinia","lastTwoWeeksTimestamp","round","now","currentUserId","isPersonalFile","mountType","registerFileAction","deleteAction","downloadAction","editLocallyAction","favoriteAction","moveOrCopyAction","openFolderAction","openInFilesAction","renameAction","sidebarAction","viewInFolderAction","addNewFileMenuEntry","newFolderEntry","newTemplatesFolder","forEach","provider","app","iconClass","templatePicker","extension","favoriteFolders","favoriteFoldersViews","Navigation","getNavigation","register","caption","emptyTitle","emptyCaption","subscribe","addToFavorites","_node$root2","removePathFromFavorites","updateAndSortViews","sort","a","b","localeCompare","getLanguage","ignorePunctuation","newFavoriteFolder","findIndex","splice","remove","registerFavoritesView","defaultSortKey","store","userConfigStore","defineStore","actions","onUpdate","value","update","put","_initialized","useUserConfigStore","filterHidden","split","search","davGetRecentSearch","results","getFiles","navigator","addEventListener","noRewrite","registration","serviceWorker","registerDavProperty","nc","___CSS_LOADER_EXPORT___","denyList","Set","code","def","x","d","options","RC","max","autostart","ignoreSameProgress","rate","lastTimestamp","lastProgress","historyTimeConstant","previousOutput","dt","start","report","progress","timestamp","deltaTimestamp","currentRate","reset","estimate","Infinity","estimatedTime","styleTagTransform","setAttributes","insert","domAPI","insertStyleElement","locals","CancelError","constructor","reason","super","isCanceled","promiseState","freeze","pending","Symbol","canceled","resolved","rejected","PCancelable","userFunction","arguments_","executor","description","defineProperties","shouldReject","get","set","boolean","onFulfilled","onRejected","onFinally","finally","setPrototypeOf","TimeoutError","AbortError","getDOMException","globalThis","DOMException","getAbortedReason","PriorityQueue","enqueue","run","element","priority","size","array","comparator","first","step","trunc","it","lowerBound","dequeue","item","shift","timeout","carryoverConcurrencyCount","intervalCap","Number","POSITIVE_INFINITY","interval","autoStart","queueClass","isFinite","throwOnTimeout","delay","setTimeout","clearInterval","canInitializeInterval","job","setInterval","newConcurrency","_resolve","function_","throwIfAborted","operation","milliseconds","fallback","customTimers","clearTimeout","timer","cancelablePromise","sign","aborted","timeoutError","clear","pTimeout","race","addAll","functions","pause","onEmpty","onSizeLessThan","limit","onIdle","sizeBy","isPaused","namespace","isNetworkError","SAFE_HTTP_METHODS","IDEMPOTENT_HTTP_METHODS","isRetryableError","isIdempotentRequestError","config","indexOf","isNetworkOrIdempotentRequestError","retryAfter","retryAfterHeader","retryAfterMs","valueOf","DEFAULT_OPTIONS","retries","retryCondition","retryDelay","_retryNumber","shouldResetTimeout","onRetry","onMaxRetryTimesExceeded","validateResponse","setCurrentState","defaultOptions","currentState","getRequestOptions","retryCount","lastRequestTime","axiosRetry","axiosInstance","requestInterceptorId","interceptors","request","use","validateStatus","responseInterceptorId","shouldRetryOrPromise","_err","shouldRetry","defaults","agent","httpAgent","httpsAgent","fixConfig","lastRequestDuration","transformRequest","abortListener","removeEventListener","handleRetry","handleMaxRetryTimesExceeded","isSafeRequestError","exponentialDelay","retryNumber","delayFactor","calculatedDelay","__defProp","defineProperty","__publicField","obj","enumerable","configurable","writable","__defNormalProp","GettextWrapper","locale","gt","sourceLocale","addTranslations","setLocale","subtitudePlaceholders","translated","vars","replace","r","gettext","original","placeholders","ngettext","singular","plural","isFileSystemFileEntry","o","FileSystemFileEntry","isFileSystemEntry","FileSystemEntry","uploadData","uploadData2","onUploadProgress","destinationFile","Blob","Destination","getChunk","file","getMaxChunksSize","fileSize","maxChunkSize","appConfig","max_chunk_size","minimumChunkSize","ceil","Status$1","Status2","Upload","_source","_file","_isChunked","_chunks","_size","_uploaded","_startTime","_status","_controller","_response","chunked","chunks","isChunked","startTime","uploaded","getTime","Directory","_originalName","_path","_children","children","lastModified","Map","c","addChild","sum","latest","originalName","from","values","webkitRelativePath","getChild","rootPath","FileSystemDirectoryEntry","reader","createReader","entries","readEntries","filePath","relPath","base","gtBuilder","setLanguage","language","detectLocale","documentElement","lang","addTranslation","translations","enableDebugMode","json","bind","Status","Uploader","_destinationFolder","_isPublic","_uploadQueue","_jobQueue","_queueSize","_queueProgress","_queueStatus","_notifiers","isPublic","destinationFolder","user","maxChunksSize","updateStats","upload2","partialSum","addNotifier","notifier","_notifyAll","warn","batchUpload","rootFolder","files2","uploadDirectory","folderPath","normalize","selectedForUpload","directories","uploads","currentUpload","UPLOADING","createDirectory","resolve2","upload","resolvedUploads","resolvedDirectoryUploads","FINISHED","flat","FAILED","fileHandle","origin","URL","encodedDestinationFile","disabledChunkUpload","blob","bytes","tempUrl","floor","initChunkWorkspace","chunksQueue","chunk","bufferStart","bufferEnd","normalizeComponent","scriptExports","render6","staticRenderFns","functionalTemplate","injectStyles","scopeId","moduleIdentifier","shadowMode","hook","_compiled","functional","_scopeId","$vnode","ssrContext","__VUE_SSR_CONTEXT__","_registeredComponents","_ssrRegister","$root","$options","shadowRoot","_injectStyles","originalRender","existing","beforeCreate","IconCancel","title","fillColor","_b","staticClass","$attrs","_e","IconFolderUpload","IconPlus","IconUpload","_sfc_main","extend","NcActionButton","NcActionCaption","NcActionSeparator","NcActions","NcIconSvgWrapper","NcProgressBar","accept","disabled","multiple","allowFolders","Function","forbiddenCharacters","setup","progressTimeId","eta","timeLeft","currentContent","newFileMenuEntries","uploadManager","getUploader","menuEntriesUpload","category","UploadFromDevice","menuEntriesNew","CreateNew","menuEntriesOther","Other","canUploadFolders","totalQueueSize","uploadedQueueSize","hasFailure","isUploading","isAssembling","ASSEMBLING","PAUSED","buttonName","immediate","getContent","setDestination","updateStatus","beforeMount","onUploadCompletion","onTriggerPick","uploadFolders","webkitdirectory","isArray","setName","setSeverity","setText","setButtons","show","handleConflicts","conflicts","getConflicts","recursive","filesToUpload","showInvalidFileNameDialog","newName","replaceInvalidCharacters","text","invalidReplacement","replaceAll","onPick","resetForm","form","date","setSeconds","time","toISOString","seconds","class","staticStyle","_l","directives","rawName","expression","_uploader","querySelector","isPublicShare","forceRecreate","ConflictPicker","recursiveUpload","submit","$destroy","$el","parentNode","removeChild","$mount","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","loaded","__webpack_modules__","m","O","chunkIds","notFulfilled","fulfilled","keys","getter","__esModule","definition","f","chunkId","u","g","prop","done","script","needAttach","scripts","getElementsByTagName","s","getAttribute","charset","setAttribute","src","onScriptComplete","prev","onerror","onload","doneFns","head","toStringTag","nmd","scriptUrl","importScripts","currentScript","test","p","baseURI","self","installedChunks","installedChunkData","errorType","realSrc","webpackJsonpCallback","parentChunkLoadingFunction","moreModules","runtime","chunkLoadingGlobal","__webpack_exports__"],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"files-init.js?v=9fa905f283c61f40f4ec","mappings":"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","sources":["webpack:///nextcloud/webpack/runtime/chunk loaded","webpack:///nextcloud/webpack/runtime/load script","webpack:///nextcloud/node_modules/@nextcloud/upload/node_modules/eventemitter3/index.js","webpack:///nextcloud/apps/files/src/logger.js","webpack:///nextcloud/apps/files/src/actions/deleteAction.ts","webpack:///nextcloud/apps/files/src/actions/downloadAction.ts","webpack:///nextcloud/apps/files/src/actions/editLocallyAction.ts","webpack:///nextcloud/apps/files/src/actions/favoriteAction.ts","webpack:///nextcloud/apps/files/src/actions/moveOrCopyActionUtils.ts","webpack:///nextcloud/apps/files/src/services/WebdavClient.ts","webpack:///nextcloud/apps/files/src/services/Files.ts","webpack:///nextcloud/apps/files/src/actions/moveOrCopyAction.ts","webpack:///nextcloud/apps/files/src/actions/openFolderAction.ts","webpack:///nextcloud/apps/files/src/actions/openInFilesAction.ts","webpack:///nextcloud/apps/files/src/actions/renameAction.ts","webpack:///nextcloud/apps/files/src/actions/sidebarAction.ts","webpack:///nextcloud/apps/files/src/actions/viewInFolderAction.ts","webpack:///nextcloud/apps/files/src/components/NewNodeDialog.vue","webpack:///nextcloud/apps/files/src/components/NewNodeDialog.vue?vue&type=script&lang=ts","webpack://nextcloud/./apps/files/src/components/NewNodeDialog.vue?1a36","webpack:///nextcloud/apps/files/src/utils/newNodeDialog.ts","webpack:///nextcloud/apps/files/src/newMenu/newFolder.ts","webpack:///nextcloud/apps/files/src/newMenu/newTemplatesFolder.ts","webpack:///nextcloud/apps/files/src/newMenu/newFromTemplate.ts","webpack:///nextcloud/apps/files/src/services/Favorites.ts","webpack:///nextcloud/apps/files/src/views/favorites.ts","webpack:///nextcloud/apps/files/src/utils/hashUtils.ts","webpack:///nextcloud/apps/files/src/store/userconfig.ts","webpack:///nextcloud/apps/files/src/store/index.ts","webpack:///nextcloud/apps/files/src/services/Recent.ts","webpack:///nextcloud/apps/files/src/services/PersonalFiles.ts","webpack:///nextcloud/apps/files/src/init.ts","webpack:///nextcloud/apps/files/src/views/files.ts","webpack:///nextcloud/apps/files/src/views/recent.ts","webpack:///nextcloud/apps/files/src/views/personal-files.ts","webpack:///nextcloud/apps/files/src/services/ServiceWorker.js","webpack:///nextcloud/apps/files/src/services/LivePhotos.ts","webpack:///nextcloud/node_modules/@nextcloud/upload/dist/assets/index-DiWRcN3o.css","webpack:///nextcloud/node_modules/is-retry-allowed/index.js","webpack:///nextcloud/node_modules/simple-eta/index.js","webpack://nextcloud/./node_modules/@nextcloud/upload/dist/assets/index-DiWRcN3o.css?9af4","webpack:///nextcloud/node_modules/p-cancelable/index.js","webpack:///nextcloud/node_modules/@nextcloud/upload/node_modules/p-timeout/index.js","webpack:///nextcloud/node_modules/@nextcloud/upload/node_modules/p-queue/dist/priority-queue.js","webpack:///nextcloud/node_modules/@nextcloud/upload/node_modules/p-queue/dist/lower-bound.js","webpack:///nextcloud/node_modules/@nextcloud/upload/node_modules/p-queue/dist/index.js","webpack:///nextcloud/node_modules/axios-retry/dist/esm/index.js","webpack:///nextcloud/node_modules/@nextcloud/upload/node_modules/@nextcloud/l10n/dist/gettext.mjs","webpack:///nextcloud/node_modules/@nextcloud/upload/dist/chunks/index-ifErGYeJ.mjs","webpack:///nextcloud/node_modules/@nextcloud/upload/node_modules/@nextcloud/l10n/dist/chunks/locale-BQFSYg2g.mjs","webpack:///nextcloud/node_modules/@nextcloud/upload/node_modules/@nextcloud/sharing/dist/public.mjs","webpack:///nextcloud/webpack/bootstrap","webpack:///nextcloud/webpack/runtime/compat get default export","webpack:///nextcloud/webpack/runtime/define property getters","webpack:///nextcloud/webpack/runtime/ensure chunk","webpack:///nextcloud/webpack/runtime/get javascript chunk filename","webpack:///nextcloud/webpack/runtime/global","webpack:///nextcloud/webpack/runtime/hasOwnProperty shorthand","webpack:///nextcloud/webpack/runtime/make namespace object","webpack:///nextcloud/webpack/runtime/node module decorator","webpack:///nextcloud/webpack/runtime/runtimeId","webpack:///nextcloud/webpack/runtime/publicPath","webpack:///nextcloud/webpack/runtime/jsonp chunk loading","webpack:///nextcloud/webpack/runtime/nonce","webpack:///nextcloud/webpack/startup"],"sourcesContent":["var deferred = [];\n__webpack_require__.O = (result, chunkIds, fn, priority) => {\n\tif(chunkIds) {\n\t\tpriority = priority || 0;\n\t\tfor(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];\n\t\tdeferred[i] = [chunkIds, fn, priority];\n\t\treturn;\n\t}\n\tvar notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tvar chunkIds = deferred[i][0];\n\t\tvar fn = deferred[i][1];\n\t\tvar priority = deferred[i][2];\n\t\tvar fulfilled = true;\n\t\tfor (var j = 0; j < chunkIds.length; j++) {\n\t\t\tif ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every((key) => (__webpack_require__.O[key](chunkIds[j])))) {\n\t\t\t\tchunkIds.splice(j--, 1);\n\t\t\t} else {\n\t\t\t\tfulfilled = false;\n\t\t\t\tif(priority < notFulfilled) notFulfilled = priority;\n\t\t\t}\n\t\t}\n\t\tif(fulfilled) {\n\t\t\tdeferred.splice(i--, 1)\n\t\t\tvar r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","var inProgress = {};\nvar dataWebpackPrefix = \"nextcloud:\";\n// loadScript function to load a script via script tag\n__webpack_require__.l = (url, done, key, chunkId) => {\n\tif(inProgress[url]) { inProgress[url].push(done); return; }\n\tvar script, needAttach;\n\tif(key !== undefined) {\n\t\tvar scripts = document.getElementsByTagName(\"script\");\n\t\tfor(var i = 0; i < scripts.length; i++) {\n\t\t\tvar s = scripts[i];\n\t\t\tif(s.getAttribute(\"src\") == url || s.getAttribute(\"data-webpack\") == dataWebpackPrefix + key) { script = s; break; }\n\t\t}\n\t}\n\tif(!script) {\n\t\tneedAttach = true;\n\t\tscript = document.createElement('script');\n\n\t\tscript.charset = 'utf-8';\n\t\tscript.timeout = 120;\n\t\tif (__webpack_require__.nc) {\n\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n\t\t}\n\t\tscript.setAttribute(\"data-webpack\", dataWebpackPrefix + key);\n\n\t\tscript.src = url;\n\t}\n\tinProgress[url] = [done];\n\tvar onScriptComplete = (prev, event) => {\n\t\t// avoid mem leaks in IE.\n\t\tscript.onerror = script.onload = null;\n\t\tclearTimeout(timeout);\n\t\tvar doneFns = inProgress[url];\n\t\tdelete inProgress[url];\n\t\tscript.parentNode && script.parentNode.removeChild(script);\n\t\tdoneFns && doneFns.forEach((fn) => (fn(event)));\n\t\tif(prev) return prev(event);\n\t}\n\tvar timeout = setTimeout(onScriptComplete.bind(null, undefined, { type: 'timeout', target: script }), 120000);\n\tscript.onerror = onScriptComplete.bind(null, script.onerror);\n\tscript.onload = onScriptComplete.bind(null, script.onload);\n\tneedAttach && document.head.appendChild(script);\n};","'use strict';\n\nvar has = Object.prototype.hasOwnProperty\n , prefix = '~';\n\n/**\n * Constructor to create a storage for our `EE` objects.\n * An `Events` instance is a plain object whose properties are event names.\n *\n * @constructor\n * @private\n */\nfunction Events() {}\n\n//\n// We try to not inherit from `Object.prototype`. In some engines creating an\n// instance in this way is faster than calling `Object.create(null)` directly.\n// If `Object.create(null)` is not supported we prefix the event names with a\n// character to make sure that the built-in object properties are not\n// overridden or used as an attack vector.\n//\nif (Object.create) {\n Events.prototype = Object.create(null);\n\n //\n // This hack is needed because the `__proto__` property is still inherited in\n // some old browsers like Android 4, iPhone 5.1, Opera 11 and Safari 5.\n //\n if (!new Events().__proto__) prefix = false;\n}\n\n/**\n * Representation of a single event listener.\n *\n * @param {Function} fn The listener function.\n * @param {*} context The context to invoke the listener with.\n * @param {Boolean} [once=false] Specify if the listener is a one-time listener.\n * @constructor\n * @private\n */\nfunction EE(fn, context, once) {\n this.fn = fn;\n this.context = context;\n this.once = once || false;\n}\n\n/**\n * Add a listener for a given event.\n *\n * @param {EventEmitter} emitter Reference to the `EventEmitter` instance.\n * @param {(String|Symbol)} event The event name.\n * @param {Function} fn The listener function.\n * @param {*} context The context to invoke the listener with.\n * @param {Boolean} once Specify if the listener is a one-time listener.\n * @returns {EventEmitter}\n * @private\n */\nfunction addListener(emitter, event, fn, context, once) {\n if (typeof fn !== 'function') {\n throw new TypeError('The listener must be a function');\n }\n\n var listener = new EE(fn, context || emitter, once)\n , evt = prefix ? prefix + event : event;\n\n if (!emitter._events[evt]) emitter._events[evt] = listener, emitter._eventsCount++;\n else if (!emitter._events[evt].fn) emitter._events[evt].push(listener);\n else emitter._events[evt] = [emitter._events[evt], listener];\n\n return emitter;\n}\n\n/**\n * Clear event by name.\n *\n * @param {EventEmitter} emitter Reference to the `EventEmitter` instance.\n * @param {(String|Symbol)} evt The Event name.\n * @private\n */\nfunction clearEvent(emitter, evt) {\n if (--emitter._eventsCount === 0) emitter._events = new Events();\n else delete emitter._events[evt];\n}\n\n/**\n * Minimal `EventEmitter` interface that is molded against the Node.js\n * `EventEmitter` interface.\n *\n * @constructor\n * @public\n */\nfunction EventEmitter() {\n this._events = new Events();\n this._eventsCount = 0;\n}\n\n/**\n * Return an array listing the events for which the emitter has registered\n * listeners.\n *\n * @returns {Array}\n * @public\n */\nEventEmitter.prototype.eventNames = function eventNames() {\n var names = []\n , events\n , name;\n\n if (this._eventsCount === 0) return names;\n\n for (name in (events = this._events)) {\n if (has.call(events, name)) names.push(prefix ? name.slice(1) : name);\n }\n\n if (Object.getOwnPropertySymbols) {\n return names.concat(Object.getOwnPropertySymbols(events));\n }\n\n return names;\n};\n\n/**\n * Return the listeners registered for a given event.\n *\n * @param {(String|Symbol)} event The event name.\n * @returns {Array} The registered listeners.\n * @public\n */\nEventEmitter.prototype.listeners = function listeners(event) {\n var evt = prefix ? prefix + event : event\n , handlers = this._events[evt];\n\n if (!handlers) return [];\n if (handlers.fn) return [handlers.fn];\n\n for (var i = 0, l = handlers.length, ee = new Array(l); i < l; i++) {\n ee[i] = handlers[i].fn;\n }\n\n return ee;\n};\n\n/**\n * Return the number of listeners listening to a given event.\n *\n * @param {(String|Symbol)} event The event name.\n * @returns {Number} The number of listeners.\n * @public\n */\nEventEmitter.prototype.listenerCount = function listenerCount(event) {\n var evt = prefix ? prefix + event : event\n , listeners = this._events[evt];\n\n if (!listeners) return 0;\n if (listeners.fn) return 1;\n return listeners.length;\n};\n\n/**\n * Calls each of the listeners registered for a given event.\n *\n * @param {(String|Symbol)} event The event name.\n * @returns {Boolean} `true` if the event had listeners, else `false`.\n * @public\n */\nEventEmitter.prototype.emit = function emit(event, a1, a2, a3, a4, a5) {\n var evt = prefix ? prefix + event : event;\n\n if (!this._events[evt]) return false;\n\n var listeners = this._events[evt]\n , len = arguments.length\n , args\n , i;\n\n if (listeners.fn) {\n if (listeners.once) this.removeListener(event, listeners.fn, undefined, true);\n\n switch (len) {\n case 1: return listeners.fn.call(listeners.context), true;\n case 2: return listeners.fn.call(listeners.context, a1), true;\n case 3: return listeners.fn.call(listeners.context, a1, a2), true;\n case 4: return listeners.fn.call(listeners.context, a1, a2, a3), true;\n case 5: return listeners.fn.call(listeners.context, a1, a2, a3, a4), true;\n case 6: return listeners.fn.call(listeners.context, a1, a2, a3, a4, a5), true;\n }\n\n for (i = 1, args = new Array(len -1); i < len; i++) {\n args[i - 1] = arguments[i];\n }\n\n listeners.fn.apply(listeners.context, args);\n } else {\n var length = listeners.length\n , j;\n\n for (i = 0; i < length; i++) {\n if (listeners[i].once) this.removeListener(event, listeners[i].fn, undefined, true);\n\n switch (len) {\n case 1: listeners[i].fn.call(listeners[i].context); break;\n case 2: listeners[i].fn.call(listeners[i].context, a1); break;\n case 3: listeners[i].fn.call(listeners[i].context, a1, a2); break;\n case 4: listeners[i].fn.call(listeners[i].context, a1, a2, a3); break;\n default:\n if (!args) for (j = 1, args = new Array(len -1); j < len; j++) {\n args[j - 1] = arguments[j];\n }\n\n listeners[i].fn.apply(listeners[i].context, args);\n }\n }\n }\n\n return true;\n};\n\n/**\n * Add a listener for a given event.\n *\n * @param {(String|Symbol)} event The event name.\n * @param {Function} fn The listener function.\n * @param {*} [context=this] The context to invoke the listener with.\n * @returns {EventEmitter} `this`.\n * @public\n */\nEventEmitter.prototype.on = function on(event, fn, context) {\n return addListener(this, event, fn, context, false);\n};\n\n/**\n * Add a one-time listener for a given event.\n *\n * @param {(String|Symbol)} event The event name.\n * @param {Function} fn The listener function.\n * @param {*} [context=this] The context to invoke the listener with.\n * @returns {EventEmitter} `this`.\n * @public\n */\nEventEmitter.prototype.once = function once(event, fn, context) {\n return addListener(this, event, fn, context, true);\n};\n\n/**\n * Remove the listeners of a given event.\n *\n * @param {(String|Symbol)} event The event name.\n * @param {Function} fn Only remove the listeners that match this function.\n * @param {*} context Only remove the listeners that have this context.\n * @param {Boolean} once Only remove one-time listeners.\n * @returns {EventEmitter} `this`.\n * @public\n */\nEventEmitter.prototype.removeListener = function removeListener(event, fn, context, once) {\n var evt = prefix ? prefix + event : event;\n\n if (!this._events[evt]) return this;\n if (!fn) {\n clearEvent(this, evt);\n return this;\n }\n\n var listeners = this._events[evt];\n\n if (listeners.fn) {\n if (\n listeners.fn === fn &&\n (!once || listeners.once) &&\n (!context || listeners.context === context)\n ) {\n clearEvent(this, evt);\n }\n } else {\n for (var i = 0, events = [], length = listeners.length; i < length; i++) {\n if (\n listeners[i].fn !== fn ||\n (once && !listeners[i].once) ||\n (context && listeners[i].context !== context)\n ) {\n events.push(listeners[i]);\n }\n }\n\n //\n // Reset the array, or remove it completely if we have no more listeners.\n //\n if (events.length) this._events[evt] = events.length === 1 ? events[0] : events;\n else clearEvent(this, evt);\n }\n\n return this;\n};\n\n/**\n * Remove all listeners, or those of the specified event.\n *\n * @param {(String|Symbol)} [event] The event name.\n * @returns {EventEmitter} `this`.\n * @public\n */\nEventEmitter.prototype.removeAllListeners = function removeAllListeners(event) {\n var evt;\n\n if (event) {\n evt = prefix ? prefix + event : event;\n if (this._events[evt]) clearEvent(this, evt);\n } else {\n this._events = new Events();\n this._eventsCount = 0;\n }\n\n return this;\n};\n\n//\n// Alias methods names because people roll like that.\n//\nEventEmitter.prototype.off = EventEmitter.prototype.removeListener;\nEventEmitter.prototype.addListener = EventEmitter.prototype.on;\n\n//\n// Expose the prefix.\n//\nEventEmitter.prefixed = prefix;\n\n//\n// Allow `EventEmitter` to be imported as module namespace.\n//\nEventEmitter.EventEmitter = EventEmitter;\n\n//\n// Expose the module.\n//\nif ('undefined' !== typeof module) {\n module.exports = EventEmitter;\n}\n","/**\n * SPDX-FileCopyrightText: 2022 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { getLoggerBuilder } from '@nextcloud/logger'\n\nexport default getLoggerBuilder()\n\t.setApp('files')\n\t.detectUser()\n\t.build()\n","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { emit } from '@nextcloud/event-bus';\nimport { Permission, Node, View, FileAction, FileType } from '@nextcloud/files';\nimport { showInfo } from '@nextcloud/dialogs';\nimport { translate as t } from '@nextcloud/l10n';\nimport axios from '@nextcloud/axios';\nimport CloseSvg from '@mdi/svg/svg/close.svg?raw';\nimport NetworkOffSvg from '@mdi/svg/svg/network-off.svg?raw';\nimport TrashCanSvg from '@mdi/svg/svg/trash-can.svg?raw';\nimport logger from '../logger.js';\nimport PQueue from 'p-queue';\nconst canUnshareOnly = (nodes) => {\n return nodes.every(node => node.attributes['is-mount-root'] === true\n && node.attributes['mount-type'] === 'shared');\n};\nconst canDisconnectOnly = (nodes) => {\n return nodes.every(node => node.attributes['is-mount-root'] === true\n && node.attributes['mount-type'] === 'external');\n};\nconst isMixedUnshareAndDelete = (nodes) => {\n if (nodes.length === 1) {\n return false;\n }\n const hasSharedItems = nodes.some(node => canUnshareOnly([node]));\n const hasDeleteItems = nodes.some(node => !canUnshareOnly([node]));\n return hasSharedItems && hasDeleteItems;\n};\nconst isAllFiles = (nodes) => {\n return !nodes.some(node => node.type !== FileType.File);\n};\nconst isAllFolders = (nodes) => {\n return !nodes.some(node => node.type !== FileType.Folder);\n};\nconst displayName = (nodes, view) => {\n /**\n * If we're in the trashbin, we can only delete permanently\n */\n if (view.id === 'trashbin') {\n return t('files', 'Delete permanently');\n }\n /**\n * If we're in the sharing view, we can only unshare\n */\n if (isMixedUnshareAndDelete(nodes)) {\n return t('files', 'Delete and unshare');\n }\n /**\n * If those nodes are all the root node of a\n * share, we can only unshare them.\n */\n if (canUnshareOnly(nodes)) {\n if (nodes.length === 1) {\n return t('files', 'Leave this share');\n }\n return t('files', 'Leave these shares');\n }\n /**\n * If those nodes are all the root node of an\n * external storage, we can only disconnect it.\n */\n if (canDisconnectOnly(nodes)) {\n if (nodes.length === 1) {\n return t('files', 'Disconnect storage');\n }\n return t('files', 'Disconnect storages');\n }\n /**\n * If we're only selecting files, use proper wording\n */\n if (isAllFiles(nodes)) {\n if (nodes.length === 1) {\n return t('files', 'Delete file');\n }\n return t('files', 'Delete files');\n }\n /**\n * If we're only selecting folders, use proper wording\n */\n if (isAllFolders(nodes)) {\n if (nodes.length === 1) {\n return t('files', 'Delete folder');\n }\n return t('files', 'Delete folders');\n }\n return t('files', 'Delete');\n};\nconst queue = new PQueue({ concurrency: 5 });\nexport const action = new FileAction({\n id: 'delete',\n displayName,\n iconSvgInline: (nodes) => {\n if (canUnshareOnly(nodes)) {\n return CloseSvg;\n }\n if (canDisconnectOnly(nodes)) {\n return NetworkOffSvg;\n }\n return TrashCanSvg;\n },\n enabled(nodes) {\n return nodes.length > 0 && nodes\n .map(node => node.permissions)\n .every(permission => (permission & Permission.DELETE) !== 0);\n },\n async exec(node, view, dir) {\n try {\n await axios.delete(node.encodedSource);\n // Let's delete even if it's moved to the trashbin\n // since it has been removed from the current view\n // and changing the view will trigger a reload anyway.\n emit('files:node:deleted', node);\n return true;\n }\n catch (error) {\n logger.error('Error while deleting a file', { error, source: node.source, node });\n return false;\n }\n },\n async execBatch(nodes, view, dir) {\n const confirm = await new Promise(resolve => {\n if (nodes.length >= 5 && !canUnshareOnly(nodes) && !canDisconnectOnly(nodes)) {\n // TODO use a proper dialog from @nextcloud/dialogs when available\n window.OC.dialogs.confirmDestructive(t('files', 'You are about to delete {count} items.', { count: nodes.length }), t('files', 'Confirm deletion'), {\n type: window.OC.dialogs.YES_NO_BUTTONS,\n confirm: displayName(nodes, view),\n confirmClasses: 'error',\n cancel: t('files', 'Cancel'),\n }, (decision) => {\n resolve(decision);\n });\n return;\n }\n resolve(true);\n });\n // If the user cancels the deletion, we don't want to do anything\n if (confirm === false) {\n showInfo(t('files', 'Deletion cancelled'));\n return Promise.all(nodes.map(() => false));\n }\n // Map each node to a promise that resolves with the result of exec(node)\n const promises = nodes.map(node => {\n // Create a promise that resolves with the result of exec(node)\n const promise = new Promise(resolve => {\n queue.add(async () => {\n const result = await this.exec(node, view, dir);\n resolve(result !== null ? result : false);\n });\n });\n return promise;\n });\n return Promise.all(promises);\n },\n order: 100,\n});\n","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { generateUrl } from '@nextcloud/router';\nimport { FileAction, Permission, Node, FileType, View } from '@nextcloud/files';\nimport { translate as t } from '@nextcloud/l10n';\nimport ArrowDownSvg from '@mdi/svg/svg/arrow-down.svg?raw';\nconst triggerDownload = function (url) {\n const hiddenElement = document.createElement('a');\n hiddenElement.download = '';\n hiddenElement.href = url;\n hiddenElement.click();\n};\nconst downloadNodes = function (dir, nodes) {\n const secret = Math.random().toString(36).substring(2);\n const url = generateUrl('/apps/files/ajax/download.php?dir={dir}&files={files}&downloadStartSecret={secret}', {\n dir,\n secret,\n files: JSON.stringify(nodes.map(node => node.basename)),\n });\n triggerDownload(url);\n};\nconst isDownloadable = function (node) {\n if ((node.permissions & Permission.READ) === 0) {\n return false;\n }\n // If the mount type is a share, ensure it got download permissions.\n if (node.attributes['mount-type'] === 'shared') {\n const shareAttributes = JSON.parse(node.attributes['share-attributes'] ?? 'null');\n const downloadAttribute = shareAttributes?.find?.((attribute) => attribute.scope === 'permissions' && attribute.key === 'download');\n if (downloadAttribute !== undefined && downloadAttribute.enabled === false) {\n return false;\n }\n }\n return true;\n};\nexport const action = new FileAction({\n id: 'download',\n displayName: () => t('files', 'Download'),\n iconSvgInline: () => ArrowDownSvg,\n enabled(nodes) {\n if (nodes.length === 0) {\n return false;\n }\n // We can download direct dav files. But if we have\n // some folders, we need to use the /apps/files/ajax/download.php\n // endpoint, which only supports user root folder.\n if (nodes.some(node => node.type === FileType.Folder)\n && nodes.some(node => !node.root?.startsWith('/files'))) {\n return false;\n }\n return nodes.every(isDownloadable);\n },\n async exec(node, view, dir) {\n if (node.type === FileType.Folder) {\n downloadNodes(dir, [node]);\n return null;\n }\n triggerDownload(node.encodedSource);\n return null;\n },\n async execBatch(nodes, view, dir) {\n if (nodes.length === 1) {\n this.exec(nodes[0], view, dir);\n return [null];\n }\n downloadNodes(dir, nodes);\n return new Array(nodes.length).fill(null);\n },\n order: 30,\n});\n","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { encodePath } from '@nextcloud/paths';\nimport { generateOcsUrl } from '@nextcloud/router';\nimport { getCurrentUser } from '@nextcloud/auth';\nimport { FileAction, Permission } from '@nextcloud/files';\nimport { showError } from '@nextcloud/dialogs';\nimport { translate as t } from '@nextcloud/l10n';\nimport axios from '@nextcloud/axios';\nimport LaptopSvg from '@mdi/svg/svg/laptop.svg?raw';\nconst openLocalClient = async function (path) {\n const link = generateOcsUrl('apps/files/api/v1') + '/openlocaleditor?format=json';\n try {\n const result = await axios.post(link, { path });\n const uid = getCurrentUser()?.uid;\n let url = `nc://open/${uid}@` + window.location.host + encodePath(path);\n url += '?token=' + result.data.ocs.data.token;\n window.location.href = url;\n }\n catch (error) {\n showError(t('files', 'Failed to redirect to client'));\n }\n};\nexport const action = new FileAction({\n id: 'edit-locally',\n displayName: () => t('files', 'Edit locally'),\n iconSvgInline: () => LaptopSvg,\n // Only works on single files\n enabled(nodes) {\n // Only works on single node\n if (nodes.length !== 1) {\n return false;\n }\n return (nodes[0].permissions & Permission.UPDATE) !== 0;\n },\n async exec(node) {\n openLocalClient(node.path);\n return null;\n },\n order: 25,\n});\n","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { emit } from '@nextcloud/event-bus';\nimport { generateUrl } from '@nextcloud/router';\nimport { Permission, View, FileAction } from '@nextcloud/files';\nimport { translate as t } from '@nextcloud/l10n';\nimport axios from '@nextcloud/axios';\nimport Vue from 'vue';\nimport StarOutlineSvg from '@mdi/svg/svg/star-outline.svg?raw';\nimport StarSvg from '@mdi/svg/svg/star.svg?raw';\nimport logger from '../logger.js';\nimport { encodePath } from '@nextcloud/paths';\n// If any of the nodes is not favorited, we display the favorite action.\nconst shouldFavorite = (nodes) => {\n return nodes.some(node => node.attributes.favorite !== 1);\n};\nexport const favoriteNode = async (node, view, willFavorite) => {\n try {\n // TODO: migrate to webdav tags plugin\n const url = generateUrl('/apps/files/api/v1/files') + encodePath(node.path);\n await axios.post(url, {\n tags: willFavorite\n ? [window.OC.TAG_FAVORITE]\n : [],\n });\n // Let's delete if we are in the favourites view\n // AND if it is removed from the user favorites\n // AND it's in the root of the favorites view\n if (view.id === 'favorites' && !willFavorite && node.dirname === '/') {\n emit('files:node:deleted', node);\n }\n // Update the node webdav attribute\n Vue.set(node.attributes, 'favorite', willFavorite ? 1 : 0);\n // Dispatch event to whoever is interested\n if (willFavorite) {\n emit('files:favorites:added', node);\n }\n else {\n emit('files:favorites:removed', node);\n }\n return true;\n }\n catch (error) {\n const action = willFavorite ? 'adding a file to favourites' : 'removing a file from favourites';\n logger.error('Error while ' + action, { error, source: node.source, node });\n return false;\n }\n};\nexport const action = new FileAction({\n id: 'favorite',\n displayName(nodes) {\n return shouldFavorite(nodes)\n ? t('files', 'Add to favorites')\n : t('files', 'Remove from favorites');\n },\n iconSvgInline: (nodes) => {\n return shouldFavorite(nodes)\n ? StarOutlineSvg\n : StarSvg;\n },\n enabled(nodes) {\n // We can only favorite nodes within files and with permissions\n return !nodes.some(node => !node.root?.startsWith?.('/files'))\n && nodes.every(node => node.permissions !== Permission.NONE);\n },\n async exec(node, view) {\n const willFavorite = shouldFavorite([node]);\n return await favoriteNode(node, view, willFavorite);\n },\n async execBatch(nodes, view) {\n const willFavorite = shouldFavorite(nodes);\n return Promise.all(nodes.map(async (node) => await favoriteNode(node, view, willFavorite)));\n },\n order: -50,\n});\n","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { Permission } from '@nextcloud/files';\nimport PQueue from 'p-queue';\n// This is the processing queue. We only want to allow 3 concurrent requests\nlet queue;\n// Maximum number of concurrent operations\nconst MAX_CONCURRENCY = 5;\n/**\n * Get the processing queue\n */\nexport const getQueue = () => {\n if (!queue) {\n queue = new PQueue({ concurrency: MAX_CONCURRENCY });\n }\n return queue;\n};\nexport var MoveCopyAction;\n(function (MoveCopyAction) {\n MoveCopyAction[\"MOVE\"] = \"Move\";\n MoveCopyAction[\"COPY\"] = \"Copy\";\n MoveCopyAction[\"MOVE_OR_COPY\"] = \"move-or-copy\";\n})(MoveCopyAction || (MoveCopyAction = {}));\nexport const canMove = (nodes) => {\n const minPermission = nodes.reduce((min, node) => Math.min(min, node.permissions), Permission.ALL);\n return (minPermission & Permission.UPDATE) !== 0;\n};\nexport const canDownload = (nodes) => {\n return nodes.every(node => {\n const shareAttributes = JSON.parse(node.attributes?.['share-attributes'] ?? '[]');\n return !shareAttributes.some(attribute => attribute.scope === 'permissions' && attribute.enabled === false && attribute.key === 'download');\n });\n};\nexport const canCopy = (nodes) => {\n // a shared file cannot be copied if the download is disabled\n // it can be copied if the user has at least read permissions\n return canDownload(nodes)\n && !nodes.some(node => node.permissions === Permission.NONE);\n};\n","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { davGetClient } from '@nextcloud/files';\nexport const client = davGetClient();\n","import { CancelablePromise } from 'cancelable-promise';\nimport { File, Folder, davGetDefaultPropfind, davResultToNode, davRootPath } from '@nextcloud/files';\nimport { client } from './WebdavClient.ts';\nimport logger from '../logger.js';\n/**\n * Slim wrapper over `@nextcloud/files` `davResultToNode` to allow using the function with `Array.map`\n * @param node The node returned by the webdav library\n */\nexport const resultToNode = (node) => davResultToNode(node);\nexport const getContents = (path = '/') => {\n const controller = new AbortController();\n const propfindPayload = davGetDefaultPropfind();\n path = `${davRootPath}${path}`;\n return new CancelablePromise(async (resolve, reject, onCancel) => {\n onCancel(() => controller.abort());\n try {\n const contentsResponse = await client.getDirectoryContents(path, {\n details: true,\n data: propfindPayload,\n includeSelf: true,\n signal: controller.signal,\n });\n const root = contentsResponse.data[0];\n const contents = contentsResponse.data.slice(1);\n if (root.filename !== path && `${root.filename}/` !== path) {\n logger.debug(`Exepected \"${path}\" but got filename \"${root.filename}\" instead.`);\n throw new Error('Root node does not match requested path');\n }\n resolve({\n folder: resultToNode(root),\n contents: contents.map((result) => {\n try {\n return resultToNode(result);\n }\n catch (error) {\n logger.error(`Invalid node detected '${result.basename}'`, { error });\n return null;\n }\n }).filter(Boolean),\n });\n }\n catch (error) {\n reject(error);\n }\n });\n};\n","import { isAxiosError } from '@nextcloud/axios';\nimport { FilePickerClosed, getFilePickerBuilder, showError } from '@nextcloud/dialogs';\nimport { emit } from '@nextcloud/event-bus';\nimport { FileAction, FileType, NodeStatus, davGetClient, davRootPath, davResultToNode, davGetDefaultPropfind, getUniqueName } from '@nextcloud/files';\nimport { translate as t } from '@nextcloud/l10n';\nimport { openConflictPicker, hasConflict } from '@nextcloud/upload';\nimport { basename, join } from 'path';\nimport Vue from 'vue';\nimport CopyIconSvg from '@mdi/svg/svg/folder-multiple.svg?raw';\nimport FolderMoveSvg from '@mdi/svg/svg/folder-move.svg?raw';\nimport { MoveCopyAction, canCopy, canMove, getQueue } from './moveOrCopyActionUtils';\nimport { getContents } from '../services/Files';\nimport logger from '../logger';\n/**\n * Return the action that is possible for the given nodes\n * @param {Node[]} nodes The nodes to check against\n * @return {MoveCopyAction} The action that is possible for the given nodes\n */\nconst getActionForNodes = (nodes) => {\n if (canMove(nodes)) {\n if (canCopy(nodes)) {\n return MoveCopyAction.MOVE_OR_COPY;\n }\n return MoveCopyAction.MOVE;\n }\n // Assuming we can copy as the enabled checks for copy permissions\n return MoveCopyAction.COPY;\n};\n/**\n * Handle the copy/move of a node to a destination\n * This can be imported and used by other scripts/components on server\n * @param {Node} node The node to copy/move\n * @param {Folder} destination The destination to copy/move the node to\n * @param {MoveCopyAction} method The method to use for the copy/move\n * @param {boolean} overwrite Whether to overwrite the destination if it exists\n * @return {Promise} A promise that resolves when the copy/move is done\n */\nexport const handleCopyMoveNodeTo = async (node, destination, method, overwrite = false) => {\n if (!destination) {\n return;\n }\n if (destination.type !== FileType.Folder) {\n throw new Error(t('files', 'Destination is not a folder'));\n }\n // Do not allow to MOVE a node to the same folder it is already located\n if (method === MoveCopyAction.MOVE && node.dirname === destination.path) {\n throw new Error(t('files', 'This file/folder is already in that directory'));\n }\n /**\n * Example:\n * - node: /foo/bar/file.txt -> path = /foo/bar/file.txt, destination: /foo\n * Allow move of /foo does not start with /foo/bar/file.txt so allow\n * - node: /foo , destination: /foo/bar\n * Do not allow as it would copy foo within itself\n * - node: /foo/bar.txt, destination: /foo\n * Allow copy a file to the same directory\n * - node: \"/foo/bar\", destination: \"/foo/bar 1\"\n * Allow to move or copy but we need to check with trailing / otherwise it would report false positive\n */\n if (`${destination.path}/`.startsWith(`${node.path}/`)) {\n throw new Error(t('files', 'You cannot move a file/folder onto itself or into a subfolder of itself'));\n }\n // Set loading state\n Vue.set(node, 'status', NodeStatus.LOADING);\n const queue = getQueue();\n return await queue.add(async () => {\n const copySuffix = (index) => {\n if (index === 1) {\n return t('files', '(copy)'); // TRANSLATORS: Mark a file as a copy of another file\n }\n return t('files', '(copy %n)', undefined, index); // TRANSLATORS: Meaning it is the n'th copy of a file\n };\n try {\n const client = davGetClient();\n const currentPath = join(davRootPath, node.path);\n const destinationPath = join(davRootPath, destination.path);\n if (method === MoveCopyAction.COPY) {\n let target = node.basename;\n // If we do not allow overwriting then find an unique name\n if (!overwrite) {\n const otherNodes = await client.getDirectoryContents(destinationPath);\n target = getUniqueName(node.basename, otherNodes.map((n) => n.basename), {\n suffix: copySuffix,\n ignoreFileExtension: node.type === FileType.Folder,\n });\n }\n await client.copyFile(currentPath, join(destinationPath, target));\n // If the node is copied into current directory the view needs to be updated\n if (node.dirname === destination.path) {\n const { data } = await client.stat(join(destinationPath, target), {\n details: true,\n data: davGetDefaultPropfind(),\n });\n emit('files:node:created', davResultToNode(data));\n }\n }\n else {\n // show conflict file popup if we do not allow overwriting\n const otherNodes = await getContents(destination.path);\n if (hasConflict([node], otherNodes.contents)) {\n try {\n // Let the user choose what to do with the conflicting files\n const { selected, renamed } = await openConflictPicker(destination.path, [node], otherNodes.contents);\n // if the user selected to keep the old file, and did not select the new file\n // that means they opted to delete the current node\n if (!selected.length && !renamed.length) {\n await client.deleteFile(currentPath);\n emit('files:node:deleted', node);\n return;\n }\n }\n catch (error) {\n // User cancelled\n showError(t('files', 'Move cancelled'));\n return;\n }\n }\n // getting here means either no conflict, file was renamed to keep both files\n // in a conflict, or the selected file was chosen to be kept during the conflict\n await client.moveFile(currentPath, join(destinationPath, node.basename));\n // Delete the node as it will be fetched again\n // when navigating to the destination folder\n emit('files:node:deleted', node);\n }\n }\n catch (error) {\n if (isAxiosError(error)) {\n if (error.response?.status === 412) {\n throw new Error(t('files', 'A file or folder with that name already exists in this folder'));\n }\n else if (error.response?.status === 423) {\n throw new Error(t('files', 'The files are locked'));\n }\n else if (error.response?.status === 404) {\n throw new Error(t('files', 'The file does not exist anymore'));\n }\n else if (error.message) {\n throw new Error(error.message);\n }\n }\n logger.debug(error);\n throw new Error();\n }\n finally {\n Vue.set(node, 'status', undefined);\n }\n });\n};\n/**\n * Open a file picker for the given action\n * @param {MoveCopyAction} action The action to open the file picker for\n * @param {string} dir The directory to start the file picker in\n * @param {Node[]} nodes The nodes to move/copy\n * @return {Promise} The picked destination\n */\nconst openFilePickerForAction = async (action, dir = '/', nodes) => {\n const fileIDs = nodes.map(node => node.fileid).filter(Boolean);\n const filePicker = getFilePickerBuilder(t('files', 'Choose destination'))\n .allowDirectories(true)\n .setFilter((n) => {\n // We don't want to show the current nodes in the file picker\n return !fileIDs.includes(n.fileid);\n })\n .setMimeTypeFilter([])\n .setMultiSelect(false)\n .startAt(dir);\n return new Promise((resolve, reject) => {\n filePicker.setButtonFactory((selection, path) => {\n const buttons = [];\n const target = basename(path);\n const dirnames = nodes.map(node => node.dirname);\n const paths = nodes.map(node => node.path);\n if (action === MoveCopyAction.COPY || action === MoveCopyAction.MOVE_OR_COPY) {\n buttons.push({\n label: target ? t('files', 'Copy to {target}', { target }, undefined, { escape: false, sanitize: false }) : t('files', 'Copy'),\n type: 'primary',\n icon: CopyIconSvg,\n async callback(destination) {\n resolve({\n destination: destination[0],\n action: MoveCopyAction.COPY,\n });\n },\n });\n }\n // Invalid MOVE targets (but valid copy targets)\n if (dirnames.includes(path)) {\n // This file/folder is already in that directory\n return buttons;\n }\n if (paths.includes(path)) {\n // You cannot move a file/folder onto itself\n return buttons;\n }\n if (action === MoveCopyAction.MOVE || action === MoveCopyAction.MOVE_OR_COPY) {\n buttons.push({\n label: target ? t('files', 'Move to {target}', { target }, undefined, { escape: false, sanitize: false }) : t('files', 'Move'),\n type: action === MoveCopyAction.MOVE ? 'primary' : 'secondary',\n icon: FolderMoveSvg,\n async callback(destination) {\n resolve({\n destination: destination[0],\n action: MoveCopyAction.MOVE,\n });\n },\n });\n }\n return buttons;\n });\n const picker = filePicker.build();\n picker.pick().catch((error) => {\n logger.debug(error);\n if (error instanceof FilePickerClosed) {\n reject(new Error(t('files', 'Cancelled move or copy operation')));\n }\n else {\n reject(new Error(t('files', 'Move or copy operation failed')));\n }\n });\n });\n};\nexport const action = new FileAction({\n id: 'move-copy',\n displayName(nodes) {\n switch (getActionForNodes(nodes)) {\n case MoveCopyAction.MOVE:\n return t('files', 'Move');\n case MoveCopyAction.COPY:\n return t('files', 'Copy');\n case MoveCopyAction.MOVE_OR_COPY:\n return t('files', 'Move or copy');\n }\n },\n iconSvgInline: () => FolderMoveSvg,\n enabled(nodes) {\n // We only support moving/copying files within the user folder\n if (!nodes.every(node => node.root?.startsWith('/files/'))) {\n return false;\n }\n return nodes.length > 0 && (canMove(nodes) || canCopy(nodes));\n },\n async exec(node, view, dir) {\n const action = getActionForNodes([node]);\n let result;\n try {\n result = await openFilePickerForAction(action, dir, [node]);\n }\n catch (e) {\n logger.error(e);\n return false;\n }\n try {\n await handleCopyMoveNodeTo(node, result.destination, result.action);\n return true;\n }\n catch (error) {\n if (error instanceof Error && !!error.message) {\n showError(error.message);\n // Silent action as we handle the toast\n return null;\n }\n return false;\n }\n },\n async execBatch(nodes, view, dir) {\n const action = getActionForNodes(nodes);\n const result = await openFilePickerForAction(action, dir, nodes);\n const promises = nodes.map(async (node) => {\n try {\n await handleCopyMoveNodeTo(node, result.destination, result.action);\n return true;\n }\n catch (error) {\n logger.error(`Failed to ${result.action} node`, { node, error });\n return false;\n }\n });\n // We need to keep the selection on error!\n // So we do not return null, and for batch action\n // we let the front handle the error.\n return await Promise.all(promises);\n },\n order: 15,\n});\n","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { Permission, Node, FileType, View, FileAction, DefaultType } from '@nextcloud/files';\nimport { translate as t } from '@nextcloud/l10n';\nimport FolderSvg from '@mdi/svg/svg/folder.svg?raw';\nexport const action = new FileAction({\n id: 'open-folder',\n displayName(files) {\n // Only works on single node\n const displayName = files[0].attributes.displayname || files[0].basename;\n return t('files', 'Open folder {displayName}', { displayName });\n },\n iconSvgInline: () => FolderSvg,\n enabled(nodes) {\n // Only works on single node\n if (nodes.length !== 1) {\n return false;\n }\n const node = nodes[0];\n if (!node.isDavRessource) {\n return false;\n }\n return node.type === FileType.Folder\n && (node.permissions & Permission.READ) !== 0;\n },\n async exec(node, view) {\n if (!node || node.type !== FileType.Folder) {\n return false;\n }\n window.OCP.Files.Router.goToRoute(null, { view: view.id, fileid: node.fileid }, { dir: node.path });\n return null;\n },\n // Main action if enabled, meaning folders only\n default: DefaultType.HIDDEN,\n order: -100,\n});\n","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { translate as t } from '@nextcloud/l10n';\nimport { FileType, FileAction, DefaultType } from '@nextcloud/files';\n/**\n * TODO: Move away from a redirect and handle\n * navigation straight out of the recent view\n */\nexport const action = new FileAction({\n id: 'open-in-files-recent',\n displayName: () => t('files', 'Open in Files'),\n iconSvgInline: () => '',\n enabled: (nodes, view) => view.id === 'recent',\n async exec(node) {\n let dir = node.dirname;\n if (node.type === FileType.Folder) {\n dir = dir + '/' + node.basename;\n }\n window.OCP.Files.Router.goToRoute(null, // use default route\n { view: 'files', fileid: node.fileid }, { dir, openfile: 'true' });\n return null;\n },\n // Before openFolderAction\n order: -1000,\n default: DefaultType.HIDDEN,\n});\n","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { emit } from '@nextcloud/event-bus';\nimport { Permission, FileAction } from '@nextcloud/files';\nimport { translate as t } from '@nextcloud/l10n';\nimport PencilSvg from '@mdi/svg/svg/pencil.svg?raw';\nexport const ACTION_DETAILS = 'details';\nexport const action = new FileAction({\n id: 'rename',\n displayName: () => t('files', 'Rename'),\n iconSvgInline: () => PencilSvg,\n enabled: (nodes) => {\n return nodes.length > 0 && nodes\n .map(node => node.permissions)\n .every(permission => (permission & Permission.UPDATE) !== 0);\n },\n async exec(node) {\n // Renaming is a built-in feature of the files app\n emit('files:node:rename', node);\n return null;\n },\n order: 10,\n});\n","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { Permission, View, FileAction, FileType } from '@nextcloud/files';\nimport { translate as t } from '@nextcloud/l10n';\nimport InformationSvg from '@mdi/svg/svg/information-variant.svg?raw';\nimport logger from '../logger.js';\nexport const ACTION_DETAILS = 'details';\nexport const action = new FileAction({\n id: ACTION_DETAILS,\n displayName: () => t('files', 'Open details'),\n iconSvgInline: () => InformationSvg,\n // Sidebar currently supports user folder only, /files/USER\n enabled: (nodes) => {\n // Only works on single node\n if (nodes.length !== 1) {\n return false;\n }\n if (!nodes[0]) {\n return false;\n }\n // Only work if the sidebar is available\n if (!window?.OCA?.Files?.Sidebar) {\n return false;\n }\n return (nodes[0].root?.startsWith('/files/') && nodes[0].permissions !== Permission.NONE) ?? false;\n },\n async exec(node, view, dir) {\n try {\n // TODO: migrate Sidebar to use a Node instead\n await window.OCA.Files.Sidebar.open(node.path);\n // Silently update current fileid\n window.OCP.Files.Router.goToRoute(null, { view: view.id, fileid: node.fileid }, { ...window.OCP.Files.Router.query, dir }, true);\n return null;\n }\n catch (error) {\n logger.error('Error while opening sidebar', { error });\n return false;\n }\n },\n order: -50,\n});\n","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { Node, FileType, Permission, View, FileAction } from '@nextcloud/files';\nimport { translate as t } from '@nextcloud/l10n';\nimport FolderMoveSvg from '@mdi/svg/svg/folder-move.svg?raw';\nexport const action = new FileAction({\n id: 'view-in-folder',\n displayName() {\n return t('files', 'View in folder');\n },\n iconSvgInline: () => FolderMoveSvg,\n enabled(nodes, view) {\n // Only works outside of the main files view\n if (view.id === 'files') {\n return false;\n }\n // Only works on single node\n if (nodes.length !== 1) {\n return false;\n }\n const node = nodes[0];\n if (!node.isDavRessource) {\n return false;\n }\n if (node.permissions === Permission.NONE) {\n return false;\n }\n return node.type === FileType.File;\n },\n async exec(node) {\n if (!node || node.type !== FileType.File) {\n return false;\n }\n window.OCP.Files.Router.goToRoute(null, { view: 'files', fileid: node.fileid }, { dir: node.dirname });\n return null;\n },\n order: 80,\n});\n","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('NcDialog',{attrs:{\"name\":_vm.name,\"open\":_vm.open,\"close-on-click-outside\":\"\",\"out-transition\":\"\"},on:{\"update:open\":_vm.onClose},scopedSlots:_vm._u([{key:\"actions\",fn:function(){return [_c('NcButton',{attrs:{\"type\":\"primary\",\"disabled\":!_vm.isUniqueName},on:{\"click\":_vm.onCreate}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('files', 'Create'))+\"\\n\\t\\t\")])]},proxy:true}])},[_vm._v(\" \"),_c('form',{on:{\"submit\":function($event){$event.preventDefault();return _vm.onCreate.apply(null, arguments)}}},[_c('NcTextField',{ref:\"input\",attrs:{\"error\":!_vm.isUniqueName,\"helper-text\":_vm.errorMessage,\"label\":_vm.label,\"value\":_vm.localDefaultName},on:{\"update:value\":function($event){_vm.localDefaultName=$event}}})],1)])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NewNodeDialog.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NewNodeDialog.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./NewNodeDialog.vue?vue&type=template&id=c8416a62\"\nimport script from \"./NewNodeDialog.vue?vue&type=script&lang=ts\"\nexport * from \"./NewNodeDialog.vue?vue&type=script&lang=ts\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","/**\n * SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { spawnDialog } from '@nextcloud/dialogs';\nimport NewNodeDialog from '../components/NewNodeDialog.vue';\n/**\n * Ask user for file or folder name\n * @param defaultName Default name to use\n * @param folderContent Nodes with in the current folder to check for unique name\n * @param labels Labels to set on the dialog\n * @return string if successfull otherwise null if aborted\n */\nexport function newNodeName(defaultName, folderContent, labels = {}) {\n const contentNames = folderContent.map((node) => node.basename);\n return new Promise((resolve) => {\n spawnDialog(NewNodeDialog, {\n ...labels,\n defaultName,\n otherNames: contentNames,\n }, (folderName) => {\n resolve(folderName);\n });\n });\n}\n","import { basename } from 'path';\nimport { emit } from '@nextcloud/event-bus';\nimport { getCurrentUser } from '@nextcloud/auth';\nimport { Permission, Folder } from '@nextcloud/files';\nimport { showSuccess } from '@nextcloud/dialogs';\nimport { translate as t } from '@nextcloud/l10n';\nimport axios from '@nextcloud/axios';\nimport FolderPlusSvg from '@mdi/svg/svg/folder-plus.svg?raw';\nimport { newNodeName } from '../utils/newNodeDialog';\nimport logger from '../logger';\nconst createNewFolder = async (root, name) => {\n const source = root.source + '/' + name;\n const encodedSource = root.encodedSource + '/' + encodeURIComponent(name);\n const response = await axios({\n method: 'MKCOL',\n url: encodedSource,\n headers: {\n Overwrite: 'F',\n },\n });\n return {\n fileid: parseInt(response.headers['oc-fileid']),\n source,\n };\n};\nexport const entry = {\n id: 'newFolder',\n displayName: t('files', 'New folder'),\n enabled: (context) => (context.permissions & Permission.CREATE) !== 0,\n iconSvgInline: FolderPlusSvg,\n order: 0,\n async handler(context, content) {\n const name = await newNodeName(t('files', 'New folder'), content);\n if (name !== null) {\n const { fileid, source } = await createNewFolder(context, name);\n // Create the folder in the store\n const folder = new Folder({\n source,\n id: fileid,\n mtime: new Date(),\n owner: getCurrentUser()?.uid || null,\n permissions: Permission.ALL,\n root: context?.root || '/files/' + getCurrentUser()?.uid,\n // Include mount-type from parent folder as this is inherited\n attributes: {\n 'mount-type': context.attributes?.['mount-type'],\n 'owner-id': context.attributes?.['owner-id'],\n 'owner-display-name': context.attributes?.['owner-display-name'],\n },\n });\n showSuccess(t('files', 'Created new folder \"{name}\"', { name: basename(source) }));\n logger.debug('Created new folder', { folder, source });\n emit('files:node:created', folder);\n window.OCP.Files.Router.goToRoute(null, // use default route\n { view: 'files', fileid: folder.fileid }, { dir: context.path });\n }\n },\n};\n","import { getCurrentUser } from '@nextcloud/auth';\nimport { showError } from '@nextcloud/dialogs';\nimport { Permission, removeNewFileMenuEntry } from '@nextcloud/files';\nimport { loadState } from '@nextcloud/initial-state';\nimport { translate as t } from '@nextcloud/l10n';\nimport { generateOcsUrl } from '@nextcloud/router';\nimport { join } from 'path';\nimport { newNodeName } from '../utils/newNodeDialog';\nimport PlusSvg from '@mdi/svg/svg/plus.svg?raw';\nimport axios from '@nextcloud/axios';\nimport logger from '../logger.js';\nlet templatesPath = loadState('files', 'templates_path', false);\nlogger.debug('Initial templates folder', { templatesPath });\n/**\n * Init template folder\n * @param directory Folder where to create the templates folder\n * @param name Name to use or the templates folder\n */\nconst initTemplatesFolder = async function (directory, name) {\n const templatePath = join(directory.path, name);\n try {\n logger.debug('Initializing the templates directory', { templatePath });\n const { data } = await axios.post(generateOcsUrl('apps/files/api/v1/templates/path'), {\n templatePath,\n copySystemTemplates: true,\n });\n // Go to template directory\n window.OCP.Files.Router.goToRoute(null, // use default route\n { view: 'files', fileid: undefined }, { dir: templatePath });\n logger.info('Created new templates folder', {\n ...data.ocs.data,\n });\n templatesPath = data.ocs.data.templates_path;\n }\n catch (error) {\n logger.error('Unable to initialize the templates directory');\n showError(t('files', 'Unable to initialize the templates directory'));\n }\n};\nexport const entry = {\n id: 'template-picker',\n displayName: t('files', 'Create new templates folder'),\n iconSvgInline: PlusSvg,\n order: 10,\n enabled(context) {\n // Templates folder already initialized\n if (templatesPath) {\n return false;\n }\n // Allow creation on your own folders only\n if (context.owner !== getCurrentUser()?.uid) {\n return false;\n }\n return (context.permissions & Permission.CREATE) !== 0;\n },\n async handler(context, content) {\n const name = await newNodeName(t('files', 'Templates'), content, { name: t('files', 'New template folder') });\n if (name !== null) {\n // Create the template folder\n initTemplatesFolder(context, name);\n // Remove the menu entry\n removeNewFileMenuEntry('template-picker');\n }\n },\n};\n","/**\n * SPDX-FileCopyrightText: 2020 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { Folder, Node, Permission, addNewFileMenuEntry } from '@nextcloud/files';\nimport { loadState } from '@nextcloud/initial-state';\nimport { newNodeName } from '../utils/newNodeDialog';\nimport { translate as t } from '@nextcloud/l10n';\nimport Vue, { defineAsyncComponent } from 'vue';\n// async to reduce bundle size\nconst TemplatePickerVue = defineAsyncComponent(() => import('../views/TemplatePicker.vue'));\nlet TemplatePicker = null;\nconst getTemplatePicker = async (context) => {\n if (TemplatePicker === null) {\n // Create document root\n const mountingPoint = document.createElement('div');\n mountingPoint.id = 'template-picker';\n document.body.appendChild(mountingPoint);\n // Init vue app\n TemplatePicker = new Vue({\n render: (h) => h(TemplatePickerVue, {\n ref: 'picker',\n props: {\n parent: context,\n },\n }),\n methods: { open(...args) { this.$refs.picker.open(...args); } },\n el: mountingPoint,\n });\n }\n return TemplatePicker;\n};\n/**\n * Register all new-file-menu entries for all template providers\n */\nexport function registerTemplateEntries() {\n const templates = loadState('files', 'templates', []);\n // Init template files menu\n templates.forEach((provider, index) => {\n addNewFileMenuEntry({\n id: `template-new-${provider.app}-${index}`,\n displayName: provider.label,\n iconClass: provider.iconClass || 'icon-file',\n iconSvgInline: provider.iconSvgInline,\n enabled(context) {\n return (context.permissions & Permission.CREATE) !== 0;\n },\n order: 11,\n async handler(context, content) {\n const templatePicker = getTemplatePicker(context);\n const name = await newNodeName(`${provider.label}${provider.extension}`, content, {\n label: t('files', 'Filename'),\n name: provider.label,\n });\n if (name !== null) {\n // Create the file\n const picker = await templatePicker;\n picker.open(name, provider);\n }\n },\n });\n });\n}\n","import { getCurrentUser } from '@nextcloud/auth';\nimport { Folder, Permission, davRemoteURL, davRootPath, getFavoriteNodes } from '@nextcloud/files';\nimport { CancelablePromise } from 'cancelable-promise';\nimport { getContents as filesContents } from './Files.ts';\nimport { client } from './WebdavClient.ts';\nexport const getContents = (path = '/') => {\n // We only filter root files for favorites, for subfolders we can simply reuse the files contents\n if (path !== '/') {\n return filesContents(path);\n }\n return new CancelablePromise((resolve, reject, cancel) => {\n const promise = getFavoriteNodes(client)\n .catch(reject)\n .then((contents) => {\n if (!contents) {\n reject();\n return;\n }\n resolve({\n contents,\n folder: new Folder({\n id: 0,\n source: `${davRemoteURL}${davRootPath}`,\n root: davRootPath,\n owner: getCurrentUser()?.uid || null,\n permissions: Permission.READ,\n }),\n });\n });\n cancel(() => promise.cancel());\n });\n};\n","import { subscribe } from '@nextcloud/event-bus';\nimport { FileType, View, getNavigation } from '@nextcloud/files';\nimport { loadState } from '@nextcloud/initial-state';\nimport { getLanguage, translate as t } from '@nextcloud/l10n';\nimport { basename } from 'path';\nimport FolderSvg from '@mdi/svg/svg/folder.svg?raw';\nimport StarSvg from '@mdi/svg/svg/star.svg?raw';\nimport { getContents } from '../services/Favorites';\nimport { hashCode } from '../utils/hashUtils';\nimport logger from '../logger';\nexport const generateFavoriteFolderView = function (folder, index = 0) {\n return new View({\n id: generateIdFromPath(folder.path),\n name: basename(folder.path),\n icon: FolderSvg,\n order: index,\n params: {\n dir: folder.path,\n fileid: folder.fileid.toString(),\n view: 'favorites',\n },\n parent: 'favorites',\n columns: [],\n getContents,\n });\n};\nexport const generateIdFromPath = function (path) {\n return `favorite-${hashCode(path)}`;\n};\nexport default () => {\n // Load state in function for mock testing purposes\n const favoriteFolders = loadState('files', 'favoriteFolders', []);\n const favoriteFoldersViews = favoriteFolders.map((folder, index) => generateFavoriteFolderView(folder, index));\n logger.debug('Generating favorites view', { favoriteFolders });\n const Navigation = getNavigation();\n Navigation.register(new View({\n id: 'favorites',\n name: t('files', 'Favorites'),\n caption: t('files', 'List of favorites files and folders.'),\n emptyTitle: t('files', 'No favorites yet'),\n emptyCaption: t('files', 'Files and folders you mark as favorite will show up here'),\n icon: StarSvg,\n order: 15,\n columns: [],\n getContents,\n }));\n favoriteFoldersViews.forEach(view => Navigation.register(view));\n /**\n * Update favourites navigation when a new folder is added\n */\n subscribe('files:favorites:added', (node) => {\n if (node.type !== FileType.Folder) {\n return;\n }\n // Sanity check\n if (node.path === null || !node.root?.startsWith('/files')) {\n logger.error('Favorite folder is not within user files root', { node });\n return;\n }\n addToFavorites(node);\n });\n /**\n * Remove favourites navigation when a folder is removed\n */\n subscribe('files:favorites:removed', (node) => {\n if (node.type !== FileType.Folder) {\n return;\n }\n // Sanity check\n if (node.path === null || !node.root?.startsWith('/files')) {\n logger.error('Favorite folder is not within user files root', { node });\n return;\n }\n removePathFromFavorites(node.path);\n });\n /**\n * Sort the favorites paths array and\n * update the order property of the existing views\n */\n const updateAndSortViews = function () {\n favoriteFolders.sort((a, b) => a.path.localeCompare(b.path, getLanguage(), { ignorePunctuation: true }));\n favoriteFolders.forEach((folder, index) => {\n const view = favoriteFoldersViews.find((view) => view.id === generateIdFromPath(folder.path));\n if (view) {\n view.order = index;\n }\n });\n };\n // Add a folder to the favorites paths array and update the views\n const addToFavorites = function (node) {\n const newFavoriteFolder = { path: node.path, fileid: node.fileid };\n const view = generateFavoriteFolderView(newFavoriteFolder);\n // Skip if already exists\n if (favoriteFolders.find((folder) => folder.path === node.path)) {\n return;\n }\n // Update arrays\n favoriteFolders.push(newFavoriteFolder);\n favoriteFoldersViews.push(view);\n // Update and sort views\n updateAndSortViews();\n Navigation.register(view);\n };\n // Remove a folder from the favorites paths array and update the views\n const removePathFromFavorites = function (path) {\n const id = generateIdFromPath(path);\n const index = favoriteFolders.findIndex((folder) => folder.path === path);\n // Skip if not exists\n if (index === -1) {\n return;\n }\n // Update arrays\n favoriteFolders.splice(index, 1);\n favoriteFoldersViews.splice(index, 1);\n // Update and sort views\n Navigation.remove(id);\n updateAndSortViews();\n };\n};\n","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/**\n * Simple non-secure hashing function similar to Java's `hashCode`\n * @param str The string to hash\n * @return {number} a non secure hash of the string\n */\nexport const hashCode = function (str) {\n let hash = 0;\n for (let i = 0; i < str.length; i++) {\n hash = ((hash << 5) - hash + str.charCodeAt(i)) | 0;\n }\n return (hash >>> 0);\n};\n","import { defineStore } from 'pinia';\nimport { emit, subscribe } from '@nextcloud/event-bus';\nimport { generateUrl } from '@nextcloud/router';\nimport { loadState } from '@nextcloud/initial-state';\nimport axios from '@nextcloud/axios';\nimport Vue from 'vue';\nconst userConfig = loadState('files', 'config', {\n show_hidden: false,\n crop_image_previews: true,\n sort_favorites_first: true,\n sort_folders_first: true,\n grid_view: false,\n});\nexport const useUserConfigStore = function (...args) {\n const store = defineStore('userconfig', {\n state: () => ({\n userConfig,\n }),\n actions: {\n /**\n * Update the user config local store\n */\n onUpdate(key, value) {\n Vue.set(this.userConfig, key, value);\n },\n /**\n * Update the user config local store AND on server side\n */\n async update(key, value) {\n await axios.put(generateUrl('/apps/files/api/v1/config/' + key), {\n value,\n });\n emit('files:config:updated', { key, value });\n },\n },\n });\n const userConfigStore = store(...args);\n // Make sure we only register the listeners once\n if (!userConfigStore._initialized) {\n subscribe('files:config:updated', function ({ key, value }) {\n userConfigStore.onUpdate(key, value);\n });\n userConfigStore._initialized = true;\n }\n return userConfigStore;\n};\n","/**\n * SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { createPinia } from 'pinia';\nexport const pinia = createPinia();\n","import { getCurrentUser } from '@nextcloud/auth';\nimport { Folder, Permission, davGetRecentSearch, davRootPath, davRemoteURL } from '@nextcloud/files';\nimport { CancelablePromise } from 'cancelable-promise';\nimport { useUserConfigStore } from '../store/userconfig.ts';\nimport { pinia } from '../store/index.ts';\nimport { client } from './WebdavClient.ts';\nimport { resultToNode } from './Files.ts';\nconst lastTwoWeeksTimestamp = Math.round((Date.now() / 1000) - (60 * 60 * 24 * 14));\n/**\n * Get recently changed nodes\n *\n * This takes the users preference about hidden files into account.\n * If hidden files are not shown, then also recently changed files *in* hidden directories are filtered.\n *\n * @param path Path to search for recent changes\n */\nexport const getContents = (path = '/') => {\n const store = useUserConfigStore(pinia);\n /**\n * Filter function that returns only the visible nodes - or hidden if explicitly configured\n * @param node The node to check\n */\n const filterHidden = (node) => path !== '/' // We need to hide files from hidden directories in the root if not configured to show\n || store.userConfig.show_hidden // If configured to show hidden files we can early return\n || !node.dirname.split('/').some((dir) => dir.startsWith('.')); // otherwise only include the file if non of the parent directories is hidden\n const controller = new AbortController();\n const handler = async () => {\n const contentsResponse = await client.search('/', {\n signal: controller.signal,\n details: true,\n data: davGetRecentSearch(lastTwoWeeksTimestamp),\n });\n const contents = contentsResponse.data.results\n .map(resultToNode)\n .filter(filterHidden);\n return {\n folder: new Folder({\n id: 0,\n source: `${davRemoteURL}${davRootPath}`,\n root: davRootPath,\n owner: getCurrentUser()?.uid || null,\n permissions: Permission.READ,\n }),\n contents,\n };\n };\n return new CancelablePromise(async (resolve, reject, cancel) => {\n cancel(() => controller.abort());\n resolve(handler());\n });\n};\n","import { getCurrentUser } from '@nextcloud/auth';\nimport { getContents as getFiles } from './Files';\nconst currentUserId = getCurrentUser()?.uid;\n/**\n * Filters each file/folder on its shared status\n *\n * A personal file is considered a file that has all of the following properties:\n * 1. the current user owns\n * 2. the file is not shared with anyone\n * 3. the file is not a group folder\n * @todo Move to `@nextcloud/files`\n * @param node The node to check\n */\nexport const isPersonalFile = function (node) {\n // the type of mounts that determine whether the file is shared\n const sharedMountTypes = ['group', 'shared'];\n const mountType = node.attributes['mount-type'];\n return currentUserId === node.owner && !sharedMountTypes.includes(mountType);\n};\nexport const getContents = (path = '/') => {\n // get all the files from the current path as a cancellable promise\n // then filter the files that the user does not own, or has shared / is a group folder\n return getFiles(path)\n .then((content) => {\n content.contents = content.contents.filter(isPersonalFile);\n return content;\n });\n};\n","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { addNewFileMenuEntry, registerDavProperty, registerFileAction } from '@nextcloud/files';\nimport { action as deleteAction } from './actions/deleteAction';\nimport { action as downloadAction } from './actions/downloadAction';\nimport { action as editLocallyAction } from './actions/editLocallyAction';\nimport { action as favoriteAction } from './actions/favoriteAction';\nimport { action as moveOrCopyAction } from './actions/moveOrCopyAction';\nimport { action as openFolderAction } from './actions/openFolderAction';\nimport { action as openInFilesAction } from './actions/openInFilesAction';\nimport { action as renameAction } from './actions/renameAction';\nimport { action as sidebarAction } from './actions/sidebarAction';\nimport { action as viewInFolderAction } from './actions/viewInFolderAction';\nimport { entry as newFolderEntry } from './newMenu/newFolder.ts';\nimport { entry as newTemplatesFolder } from './newMenu/newTemplatesFolder.ts';\nimport { registerTemplateEntries } from './newMenu/newFromTemplate.ts';\nimport registerFavoritesView from './views/favorites';\nimport registerRecentView from './views/recent';\nimport registerPersonalFilesView from './views/personal-files';\nimport registerFilesView from './views/files';\nimport registerPreviewServiceWorker from './services/ServiceWorker.js';\nimport { initLivePhotos } from './services/LivePhotos';\n// Register file actions\nregisterFileAction(deleteAction);\nregisterFileAction(downloadAction);\nregisterFileAction(editLocallyAction);\nregisterFileAction(favoriteAction);\nregisterFileAction(moveOrCopyAction);\nregisterFileAction(openFolderAction);\nregisterFileAction(openInFilesAction);\nregisterFileAction(renameAction);\nregisterFileAction(sidebarAction);\nregisterFileAction(viewInFolderAction);\n// Register new menu entry\naddNewFileMenuEntry(newFolderEntry);\naddNewFileMenuEntry(newTemplatesFolder);\nregisterTemplateEntries();\n// Register files views\nregisterFavoritesView();\nregisterFilesView();\nregisterRecentView();\nregisterPersonalFilesView();\n// Register preview service worker\nregisterPreviewServiceWorker();\nregisterDavProperty('nc:hidden', { nc: 'http://nextcloud.org/ns' });\nregisterDavProperty('nc:is-mount-root', { nc: 'http://nextcloud.org/ns' });\ninitLivePhotos();\n","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { translate as t } from '@nextcloud/l10n';\nimport FolderSvg from '@mdi/svg/svg/folder.svg?raw';\nimport { getContents } from '../services/Files';\nimport { View, getNavigation } from '@nextcloud/files';\nexport default () => {\n const Navigation = getNavigation();\n Navigation.register(new View({\n id: 'files',\n name: t('files', 'All files'),\n caption: t('files', 'List of your files and folders.'),\n icon: FolderSvg,\n order: 0,\n getContents,\n }));\n};\n","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { View, getNavigation } from '@nextcloud/files';\nimport { translate as t } from '@nextcloud/l10n';\nimport HistorySvg from '@mdi/svg/svg/history.svg?raw';\nimport { getContents } from '../services/Recent';\nexport default () => {\n const Navigation = getNavigation();\n Navigation.register(new View({\n id: 'recent',\n name: t('files', 'Recent'),\n caption: t('files', 'List of recently modified files and folders.'),\n emptyTitle: t('files', 'No recently modified files'),\n emptyCaption: t('files', 'Files and folders you recently modified will show up here.'),\n icon: HistorySvg,\n order: 10,\n defaultSortKey: 'mtime',\n getContents,\n }));\n};\n","/**\n * SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { translate as t } from '@nextcloud/l10n';\nimport { View, getNavigation } from '@nextcloud/files';\nimport { getContents } from '../services/PersonalFiles';\nimport AccountIcon from '@mdi/svg/svg/account.svg?raw';\nexport default () => {\n const Navigation = getNavigation();\n Navigation.register(new View({\n id: 'personal',\n name: t('files', 'Personal Files'),\n caption: t('files', 'List of your files and folders that are not shared.'),\n emptyTitle: t('files', 'No personal files found'),\n emptyCaption: t('files', 'Files that are not shared will show up here.'),\n icon: AccountIcon,\n order: 5,\n getContents,\n }));\n};\n","/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { generateUrl } from '@nextcloud/router'\nimport logger from '../logger.js'\n\nexport default () => {\n\tif ('serviceWorker' in navigator) {\n\t\t// Use the window load event to keep the page load performant\n\t\twindow.addEventListener('load', async () => {\n\t\t\ttry {\n\t\t\t\tconst url = generateUrl('/apps/files/preview-service-worker.js', {}, { noRewrite: true })\n\t\t\t\tconst registration = await navigator.serviceWorker.register(url, { scope: '/' })\n\t\t\t\tlogger.debug('SW registered: ', { registration })\n\t\t\t} catch (error) {\n\t\t\t\tlogger.error('SW registration failed: ', { error })\n\t\t\t}\n\t\t})\n\t} else {\n\t\tlogger.debug('Service Worker is not enabled on this browser.')\n\t}\n}\n","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { Node, registerDavProperty } from '@nextcloud/files';\nexport function initLivePhotos() {\n registerDavProperty('nc:metadata-files-live-photo', { nc: 'http://nextcloud.org/ns' });\n}\n/**\n * @param {Node} node - The node\n */\nexport function isLivePhoto(node) {\n return node.attributes['metadata-files-live-photo'] !== undefined;\n}\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.upload-picker[data-v-1f097873] {\n display: inline-flex;\n align-items: center;\n height: 44px;\n}\n.upload-picker__progress[data-v-1f097873] {\n width: 200px;\n max-width: 0;\n transition: max-width var(--animation-quick) ease-in-out;\n margin-top: 8px;\n}\n.upload-picker__progress p[data-v-1f097873] {\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n}\n.upload-picker--uploading .upload-picker__progress[data-v-1f097873] {\n max-width: 200px;\n margin-right: 20px;\n margin-left: 8px;\n}\n.upload-picker--paused .upload-picker__progress[data-v-1f097873] {\n animation: breathing-1f097873 3s ease-out infinite normal;\n}\n@keyframes breathing-1f097873 {\n0% {\n opacity: 0.5;\n}\n25% {\n opacity: 1;\n}\n60% {\n opacity: 0.5;\n}\n100% {\n opacity: 0.5;\n}\n}`, \"\",{\"version\":3,\"sources\":[\"webpack://./node_modules/@nextcloud/upload/dist/assets/index-DiWRcN3o.css\"],\"names\":[],\"mappings\":\"AAAA;EACE,oBAAoB;EACpB,mBAAmB;EACnB,YAAY;AACd;AACA;EACE,YAAY;EACZ,YAAY;EACZ,wDAAwD;EACxD,eAAe;AACjB;AACA;EACE,gBAAgB;EAChB,mBAAmB;EACnB,uBAAuB;AACzB;AACA;EACE,gBAAgB;EAChB,kBAAkB;EAClB,gBAAgB;AAClB;AACA;EACE,yDAAyD;AAC3D;AACA;AACA;IACI,YAAY;AAChB;AACA;IACI,UAAU;AACd;AACA;IACI,YAAY;AAChB;AACA;IACI,YAAY;AAChB;AACA\",\"sourcesContent\":[\".upload-picker[data-v-1f097873] {\\n display: inline-flex;\\n align-items: center;\\n height: 44px;\\n}\\n.upload-picker__progress[data-v-1f097873] {\\n width: 200px;\\n max-width: 0;\\n transition: max-width var(--animation-quick) ease-in-out;\\n margin-top: 8px;\\n}\\n.upload-picker__progress p[data-v-1f097873] {\\n overflow: hidden;\\n white-space: nowrap;\\n text-overflow: ellipsis;\\n}\\n.upload-picker--uploading .upload-picker__progress[data-v-1f097873] {\\n max-width: 200px;\\n margin-right: 20px;\\n margin-left: 8px;\\n}\\n.upload-picker--paused .upload-picker__progress[data-v-1f097873] {\\n animation: breathing-1f097873 3s ease-out infinite normal;\\n}\\n@keyframes breathing-1f097873 {\\n0% {\\n opacity: 0.5;\\n}\\n25% {\\n opacity: 1;\\n}\\n60% {\\n opacity: 0.5;\\n}\\n100% {\\n opacity: 0.5;\\n}\\n}\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","'use strict';\n\nconst denyList = new Set([\n\t'ENOTFOUND',\n\t'ENETUNREACH',\n\n\t// SSL errors from https://github.com/nodejs/node/blob/fc8e3e2cdc521978351de257030db0076d79e0ab/src/crypto/crypto_common.cc#L301-L328\n\t'UNABLE_TO_GET_ISSUER_CERT',\n\t'UNABLE_TO_GET_CRL',\n\t'UNABLE_TO_DECRYPT_CERT_SIGNATURE',\n\t'UNABLE_TO_DECRYPT_CRL_SIGNATURE',\n\t'UNABLE_TO_DECODE_ISSUER_PUBLIC_KEY',\n\t'CERT_SIGNATURE_FAILURE',\n\t'CRL_SIGNATURE_FAILURE',\n\t'CERT_NOT_YET_VALID',\n\t'CERT_HAS_EXPIRED',\n\t'CRL_NOT_YET_VALID',\n\t'CRL_HAS_EXPIRED',\n\t'ERROR_IN_CERT_NOT_BEFORE_FIELD',\n\t'ERROR_IN_CERT_NOT_AFTER_FIELD',\n\t'ERROR_IN_CRL_LAST_UPDATE_FIELD',\n\t'ERROR_IN_CRL_NEXT_UPDATE_FIELD',\n\t'OUT_OF_MEM',\n\t'DEPTH_ZERO_SELF_SIGNED_CERT',\n\t'SELF_SIGNED_CERT_IN_CHAIN',\n\t'UNABLE_TO_GET_ISSUER_CERT_LOCALLY',\n\t'UNABLE_TO_VERIFY_LEAF_SIGNATURE',\n\t'CERT_CHAIN_TOO_LONG',\n\t'CERT_REVOKED',\n\t'INVALID_CA',\n\t'PATH_LENGTH_EXCEEDED',\n\t'INVALID_PURPOSE',\n\t'CERT_UNTRUSTED',\n\t'CERT_REJECTED',\n\t'HOSTNAME_MISMATCH'\n]);\n\n// TODO: Use `error?.code` when targeting Node.js 14\nmodule.exports = error => !denyList.has(error && error.code);\n","// @flow\n\n/*::\ntype Options = {\n max?: number,\n min?: number,\n historyTimeConstant?: number,\n autostart?: boolean,\n ignoreSameProgress?: boolean,\n}\n*/\n\nfunction makeLowPassFilter(RC/*: number*/) {\n return function (previousOutput, input, dt) {\n const alpha = dt / (dt + RC);\n return previousOutput + alpha * (input - previousOutput);\n }\n}\n\nfunction def/*:: */(x/*: ?T*/, d/*: T*/)/*: T*/ {\n return (x === undefined || x === null) ? d : x;\n}\n\nfunction makeEta(options/*::?: Options */) {\n options = options || {};\n var max = def(options.max, 1);\n var min = def(options.min, 0);\n var autostart = def(options.autostart, true);\n var ignoreSameProgress = def(options.ignoreSameProgress, false);\n\n var rate/*: number | null */ = null;\n var lastTimestamp/*: number | null */ = null;\n var lastProgress/*: number | null */ = null;\n\n var filter = makeLowPassFilter(def(options.historyTimeConstant, 2.5));\n\n function start() {\n report(min);\n }\n\n function reset() {\n rate = null;\n lastTimestamp = null;\n lastProgress = null;\n if (autostart) {\n start();\n }\n }\n\n function report(progress /*: number */, timestamp/*::?: number */) {\n if (typeof timestamp !== 'number') {\n timestamp = Date.now();\n }\n\n if (lastTimestamp === timestamp) { return; }\n if (ignoreSameProgress && lastProgress === progress) { return; }\n\n if (lastTimestamp === null || lastProgress === null) {\n lastProgress = progress;\n lastTimestamp = timestamp;\n return;\n }\n\n var deltaProgress = progress - lastProgress;\n var deltaTimestamp = 0.001 * (timestamp - lastTimestamp);\n var currentRate = deltaProgress / deltaTimestamp;\n\n rate = rate === null\n ? currentRate\n : filter(rate, currentRate, deltaTimestamp);\n lastProgress = progress;\n lastTimestamp = timestamp;\n }\n\n function estimate(timestamp/*::?: number*/) {\n if (lastProgress === null) { return Infinity; }\n if (lastProgress >= max) { return 0; }\n if (rate === null) { return Infinity; }\n\n var estimatedTime = (max - lastProgress) / rate;\n if (typeof timestamp === 'number' && typeof lastTimestamp === 'number') {\n estimatedTime -= (timestamp - lastTimestamp) * 0.001;\n }\n return Math.max(0, estimatedTime);\n }\n\n function getRate() {\n return rate === null ? 0 : rate;\n }\n\n return {\n start: start,\n reset: reset,\n report: report,\n estimate: estimate,\n rate: getRate,\n }\n}\n\nmodule.exports = makeEta;\n","\n import API from \"!../../../../style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../css-loader/dist/cjs.js!./index-DiWRcN3o.css\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../css-loader/dist/cjs.js!./index-DiWRcN3o.css\";\n export default content && content.locals ? content.locals : undefined;\n","export class CancelError extends Error {\n\tconstructor(reason) {\n\t\tsuper(reason || 'Promise was canceled');\n\t\tthis.name = 'CancelError';\n\t}\n\n\tget isCanceled() {\n\t\treturn true;\n\t}\n}\n\nconst promiseState = Object.freeze({\n\tpending: Symbol('pending'),\n\tcanceled: Symbol('canceled'),\n\tresolved: Symbol('resolved'),\n\trejected: Symbol('rejected'),\n});\n\nexport default class PCancelable {\n\tstatic fn(userFunction) {\n\t\treturn (...arguments_) => new PCancelable((resolve, reject, onCancel) => {\n\t\t\targuments_.push(onCancel);\n\t\t\tuserFunction(...arguments_).then(resolve, reject);\n\t\t});\n\t}\n\n\t#cancelHandlers = [];\n\t#rejectOnCancel = true;\n\t#state = promiseState.pending;\n\t#promise;\n\t#reject;\n\n\tconstructor(executor) {\n\t\tthis.#promise = new Promise((resolve, reject) => {\n\t\t\tthis.#reject = reject;\n\n\t\t\tconst onResolve = value => {\n\t\t\t\tif (this.#state !== promiseState.canceled || !onCancel.shouldReject) {\n\t\t\t\t\tresolve(value);\n\t\t\t\t\tthis.#setState(promiseState.resolved);\n\t\t\t\t}\n\t\t\t};\n\n\t\t\tconst onReject = error => {\n\t\t\t\tif (this.#state !== promiseState.canceled || !onCancel.shouldReject) {\n\t\t\t\t\treject(error);\n\t\t\t\t\tthis.#setState(promiseState.rejected);\n\t\t\t\t}\n\t\t\t};\n\n\t\t\tconst onCancel = handler => {\n\t\t\t\tif (this.#state !== promiseState.pending) {\n\t\t\t\t\tthrow new Error(`The \\`onCancel\\` handler was attached after the promise ${this.#state.description}.`);\n\t\t\t\t}\n\n\t\t\t\tthis.#cancelHandlers.push(handler);\n\t\t\t};\n\n\t\t\tObject.defineProperties(onCancel, {\n\t\t\t\tshouldReject: {\n\t\t\t\t\tget: () => this.#rejectOnCancel,\n\t\t\t\t\tset: boolean => {\n\t\t\t\t\t\tthis.#rejectOnCancel = boolean;\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t});\n\n\t\t\texecutor(onResolve, onReject, onCancel);\n\t\t});\n\t}\n\n\t// eslint-disable-next-line unicorn/no-thenable\n\tthen(onFulfilled, onRejected) {\n\t\treturn this.#promise.then(onFulfilled, onRejected);\n\t}\n\n\tcatch(onRejected) {\n\t\treturn this.#promise.catch(onRejected);\n\t}\n\n\tfinally(onFinally) {\n\t\treturn this.#promise.finally(onFinally);\n\t}\n\n\tcancel(reason) {\n\t\tif (this.#state !== promiseState.pending) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.#setState(promiseState.canceled);\n\n\t\tif (this.#cancelHandlers.length > 0) {\n\t\t\ttry {\n\t\t\t\tfor (const handler of this.#cancelHandlers) {\n\t\t\t\t\thandler();\n\t\t\t\t}\n\t\t\t} catch (error) {\n\t\t\t\tthis.#reject(error);\n\t\t\t\treturn;\n\t\t\t}\n\t\t}\n\n\t\tif (this.#rejectOnCancel) {\n\t\t\tthis.#reject(new CancelError(reason));\n\t\t}\n\t}\n\n\tget isCanceled() {\n\t\treturn this.#state === promiseState.canceled;\n\t}\n\n\t#setState(state) {\n\t\tif (this.#state === promiseState.pending) {\n\t\t\tthis.#state = state;\n\t\t}\n\t}\n}\n\nObject.setPrototypeOf(PCancelable.prototype, Promise.prototype);\n","export class TimeoutError extends Error {\n\tconstructor(message) {\n\t\tsuper(message);\n\t\tthis.name = 'TimeoutError';\n\t}\n}\n\n/**\nAn error to be thrown when the request is aborted by AbortController.\nDOMException is thrown instead of this Error when DOMException is available.\n*/\nexport class AbortError extends Error {\n\tconstructor(message) {\n\t\tsuper();\n\t\tthis.name = 'AbortError';\n\t\tthis.message = message;\n\t}\n}\n\n/**\nTODO: Remove AbortError and just throw DOMException when targeting Node 18.\n*/\nconst getDOMException = errorMessage => globalThis.DOMException === undefined\n\t? new AbortError(errorMessage)\n\t: new DOMException(errorMessage);\n\n/**\nTODO: Remove below function and just 'reject(signal.reason)' when targeting Node 18.\n*/\nconst getAbortedReason = signal => {\n\tconst reason = signal.reason === undefined\n\t\t? getDOMException('This operation was aborted.')\n\t\t: signal.reason;\n\n\treturn reason instanceof Error ? reason : getDOMException(reason);\n};\n\nexport default function pTimeout(promise, options) {\n\tconst {\n\t\tmilliseconds,\n\t\tfallback,\n\t\tmessage,\n\t\tcustomTimers = {setTimeout, clearTimeout},\n\t} = options;\n\n\tlet timer;\n\n\tconst wrappedPromise = new Promise((resolve, reject) => {\n\t\tif (typeof milliseconds !== 'number' || Math.sign(milliseconds) !== 1) {\n\t\t\tthrow new TypeError(`Expected \\`milliseconds\\` to be a positive number, got \\`${milliseconds}\\``);\n\t\t}\n\n\t\tif (options.signal) {\n\t\t\tconst {signal} = options;\n\t\t\tif (signal.aborted) {\n\t\t\t\treject(getAbortedReason(signal));\n\t\t\t}\n\n\t\t\tsignal.addEventListener('abort', () => {\n\t\t\t\treject(getAbortedReason(signal));\n\t\t\t});\n\t\t}\n\n\t\tif (milliseconds === Number.POSITIVE_INFINITY) {\n\t\t\tpromise.then(resolve, reject);\n\t\t\treturn;\n\t\t}\n\n\t\t// We create the error outside of `setTimeout` to preserve the stack trace.\n\t\tconst timeoutError = new TimeoutError();\n\n\t\ttimer = customTimers.setTimeout.call(undefined, () => {\n\t\t\tif (fallback) {\n\t\t\t\ttry {\n\t\t\t\t\tresolve(fallback());\n\t\t\t\t} catch (error) {\n\t\t\t\t\treject(error);\n\t\t\t\t}\n\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif (typeof promise.cancel === 'function') {\n\t\t\t\tpromise.cancel();\n\t\t\t}\n\n\t\t\tif (message === false) {\n\t\t\t\tresolve();\n\t\t\t} else if (message instanceof Error) {\n\t\t\t\treject(message);\n\t\t\t} else {\n\t\t\t\ttimeoutError.message = message ?? `Promise timed out after ${milliseconds} milliseconds`;\n\t\t\t\treject(timeoutError);\n\t\t\t}\n\t\t}, milliseconds);\n\n\t\t(async () => {\n\t\t\ttry {\n\t\t\t\tresolve(await promise);\n\t\t\t} catch (error) {\n\t\t\t\treject(error);\n\t\t\t}\n\t\t})();\n\t});\n\n\tconst cancelablePromise = wrappedPromise.finally(() => {\n\t\tcancelablePromise.clear();\n\t});\n\n\tcancelablePromise.clear = () => {\n\t\tcustomTimers.clearTimeout.call(undefined, timer);\n\t\ttimer = undefined;\n\t};\n\n\treturn cancelablePromise;\n}\n","import lowerBound from './lower-bound.js';\nexport default class PriorityQueue {\n #queue = [];\n enqueue(run, options) {\n options = {\n priority: 0,\n ...options,\n };\n const element = {\n priority: options.priority,\n run,\n };\n if (this.size && this.#queue[this.size - 1].priority >= options.priority) {\n this.#queue.push(element);\n return;\n }\n const index = lowerBound(this.#queue, element, (a, b) => b.priority - a.priority);\n this.#queue.splice(index, 0, element);\n }\n dequeue() {\n const item = this.#queue.shift();\n return item?.run;\n }\n filter(options) {\n return this.#queue.filter((element) => element.priority === options.priority).map((element) => element.run);\n }\n get size() {\n return this.#queue.length;\n }\n}\n","// Port of lower_bound from https://en.cppreference.com/w/cpp/algorithm/lower_bound\n// Used to compute insertion index to keep queue sorted after insertion\nexport default function lowerBound(array, value, comparator) {\n let first = 0;\n let count = array.length;\n while (count > 0) {\n const step = Math.trunc(count / 2);\n let it = first + step;\n if (comparator(array[it], value) <= 0) {\n first = ++it;\n count -= step + 1;\n }\n else {\n count = step;\n }\n }\n return first;\n}\n","import { EventEmitter } from 'eventemitter3';\nimport pTimeout, { TimeoutError } from 'p-timeout';\nimport PriorityQueue from './priority-queue.js';\n/**\nPromise queue with concurrency control.\n*/\nexport default class PQueue extends EventEmitter {\n #carryoverConcurrencyCount;\n #isIntervalIgnored;\n #intervalCount = 0;\n #intervalCap;\n #interval;\n #intervalEnd = 0;\n #intervalId;\n #timeoutId;\n #queue;\n #queueClass;\n #pending = 0;\n // The `!` is needed because of https://github.com/microsoft/TypeScript/issues/32194\n #concurrency;\n #isPaused;\n #throwOnTimeout;\n /**\n Per-operation timeout in milliseconds. Operations fulfill once `timeout` elapses if they haven't already.\n\n Applies to each future operation.\n */\n timeout;\n // TODO: The `throwOnTimeout` option should affect the return types of `add()` and `addAll()`\n constructor(options) {\n super();\n // eslint-disable-next-line @typescript-eslint/consistent-type-assertions\n options = {\n carryoverConcurrencyCount: false,\n intervalCap: Number.POSITIVE_INFINITY,\n interval: 0,\n concurrency: Number.POSITIVE_INFINITY,\n autoStart: true,\n queueClass: PriorityQueue,\n ...options,\n };\n if (!(typeof options.intervalCap === 'number' && options.intervalCap >= 1)) {\n throw new TypeError(`Expected \\`intervalCap\\` to be a number from 1 and up, got \\`${options.intervalCap?.toString() ?? ''}\\` (${typeof options.intervalCap})`);\n }\n if (options.interval === undefined || !(Number.isFinite(options.interval) && options.interval >= 0)) {\n throw new TypeError(`Expected \\`interval\\` to be a finite number >= 0, got \\`${options.interval?.toString() ?? ''}\\` (${typeof options.interval})`);\n }\n this.#carryoverConcurrencyCount = options.carryoverConcurrencyCount;\n this.#isIntervalIgnored = options.intervalCap === Number.POSITIVE_INFINITY || options.interval === 0;\n this.#intervalCap = options.intervalCap;\n this.#interval = options.interval;\n this.#queue = new options.queueClass();\n this.#queueClass = options.queueClass;\n this.concurrency = options.concurrency;\n this.timeout = options.timeout;\n this.#throwOnTimeout = options.throwOnTimeout === true;\n this.#isPaused = options.autoStart === false;\n }\n get #doesIntervalAllowAnother() {\n return this.#isIntervalIgnored || this.#intervalCount < this.#intervalCap;\n }\n get #doesConcurrentAllowAnother() {\n return this.#pending < this.#concurrency;\n }\n #next() {\n this.#pending--;\n this.#tryToStartAnother();\n this.emit('next');\n }\n #onResumeInterval() {\n this.#onInterval();\n this.#initializeIntervalIfNeeded();\n this.#timeoutId = undefined;\n }\n get #isIntervalPaused() {\n const now = Date.now();\n if (this.#intervalId === undefined) {\n const delay = this.#intervalEnd - now;\n if (delay < 0) {\n // Act as the interval was done\n // We don't need to resume it here because it will be resumed on line 160\n this.#intervalCount = (this.#carryoverConcurrencyCount) ? this.#pending : 0;\n }\n else {\n // Act as the interval is pending\n if (this.#timeoutId === undefined) {\n this.#timeoutId = setTimeout(() => {\n this.#onResumeInterval();\n }, delay);\n }\n return true;\n }\n }\n return false;\n }\n #tryToStartAnother() {\n if (this.#queue.size === 0) {\n // We can clear the interval (\"pause\")\n // Because we can redo it later (\"resume\")\n if (this.#intervalId) {\n clearInterval(this.#intervalId);\n }\n this.#intervalId = undefined;\n this.emit('empty');\n if (this.#pending === 0) {\n this.emit('idle');\n }\n return false;\n }\n if (!this.#isPaused) {\n const canInitializeInterval = !this.#isIntervalPaused;\n if (this.#doesIntervalAllowAnother && this.#doesConcurrentAllowAnother) {\n const job = this.#queue.dequeue();\n if (!job) {\n return false;\n }\n this.emit('active');\n job();\n if (canInitializeInterval) {\n this.#initializeIntervalIfNeeded();\n }\n return true;\n }\n }\n return false;\n }\n #initializeIntervalIfNeeded() {\n if (this.#isIntervalIgnored || this.#intervalId !== undefined) {\n return;\n }\n this.#intervalId = setInterval(() => {\n this.#onInterval();\n }, this.#interval);\n this.#intervalEnd = Date.now() + this.#interval;\n }\n #onInterval() {\n if (this.#intervalCount === 0 && this.#pending === 0 && this.#intervalId) {\n clearInterval(this.#intervalId);\n this.#intervalId = undefined;\n }\n this.#intervalCount = this.#carryoverConcurrencyCount ? this.#pending : 0;\n this.#processQueue();\n }\n /**\n Executes all queued functions until it reaches the limit.\n */\n #processQueue() {\n // eslint-disable-next-line no-empty\n while (this.#tryToStartAnother()) { }\n }\n get concurrency() {\n return this.#concurrency;\n }\n set concurrency(newConcurrency) {\n if (!(typeof newConcurrency === 'number' && newConcurrency >= 1)) {\n throw new TypeError(`Expected \\`concurrency\\` to be a number from 1 and up, got \\`${newConcurrency}\\` (${typeof newConcurrency})`);\n }\n this.#concurrency = newConcurrency;\n this.#processQueue();\n }\n async #throwOnAbort(signal) {\n return new Promise((_resolve, reject) => {\n signal.addEventListener('abort', () => {\n reject(signal.reason);\n }, { once: true });\n });\n }\n async add(function_, options = {}) {\n options = {\n timeout: this.timeout,\n throwOnTimeout: this.#throwOnTimeout,\n ...options,\n };\n return new Promise((resolve, reject) => {\n this.#queue.enqueue(async () => {\n this.#pending++;\n this.#intervalCount++;\n try {\n options.signal?.throwIfAborted();\n let operation = function_({ signal: options.signal });\n if (options.timeout) {\n operation = pTimeout(Promise.resolve(operation), { milliseconds: options.timeout });\n }\n if (options.signal) {\n operation = Promise.race([operation, this.#throwOnAbort(options.signal)]);\n }\n const result = await operation;\n resolve(result);\n this.emit('completed', result);\n }\n catch (error) {\n if (error instanceof TimeoutError && !options.throwOnTimeout) {\n resolve();\n return;\n }\n reject(error);\n this.emit('error', error);\n }\n finally {\n this.#next();\n }\n }, options);\n this.emit('add');\n this.#tryToStartAnother();\n });\n }\n async addAll(functions, options) {\n return Promise.all(functions.map(async (function_) => this.add(function_, options)));\n }\n /**\n Start (or resume) executing enqueued tasks within concurrency limit. No need to call this if queue is not paused (via `options.autoStart = false` or by `.pause()` method.)\n */\n start() {\n if (!this.#isPaused) {\n return this;\n }\n this.#isPaused = false;\n this.#processQueue();\n return this;\n }\n /**\n Put queue execution on hold.\n */\n pause() {\n this.#isPaused = true;\n }\n /**\n Clear the queue.\n */\n clear() {\n this.#queue = new this.#queueClass();\n }\n /**\n Can be called multiple times. Useful if you for example add additional items at a later time.\n\n @returns A promise that settles when the queue becomes empty.\n */\n async onEmpty() {\n // Instantly resolve if the queue is empty\n if (this.#queue.size === 0) {\n return;\n }\n await this.#onEvent('empty');\n }\n /**\n @returns A promise that settles when the queue size is less than the given limit: `queue.size < limit`.\n\n If you want to avoid having the queue grow beyond a certain size you can `await queue.onSizeLessThan()` before adding a new item.\n\n Note that this only limits the number of items waiting to start. There could still be up to `concurrency` jobs already running that this call does not include in its calculation.\n */\n async onSizeLessThan(limit) {\n // Instantly resolve if the queue is empty.\n if (this.#queue.size < limit) {\n return;\n }\n await this.#onEvent('next', () => this.#queue.size < limit);\n }\n /**\n The difference with `.onEmpty` is that `.onIdle` guarantees that all work from the queue has finished. `.onEmpty` merely signals that the queue is empty, but it could mean that some promises haven't completed yet.\n\n @returns A promise that settles when the queue becomes empty, and all promises have completed; `queue.size === 0 && queue.pending === 0`.\n */\n async onIdle() {\n // Instantly resolve if none pending and if nothing else is queued\n if (this.#pending === 0 && this.#queue.size === 0) {\n return;\n }\n await this.#onEvent('idle');\n }\n async #onEvent(event, filter) {\n return new Promise(resolve => {\n const listener = () => {\n if (filter && !filter()) {\n return;\n }\n this.off(event, listener);\n resolve();\n };\n this.on(event, listener);\n });\n }\n /**\n Size of the queue, the number of queued items waiting to run.\n */\n get size() {\n return this.#queue.size;\n }\n /**\n Size of the queue, filtered by the given options.\n\n For example, this can be used to find the number of items remaining in the queue with a specific priority level.\n */\n sizeBy(options) {\n // eslint-disable-next-line unicorn/no-array-callback-reference\n return this.#queue.filter(options).length;\n }\n /**\n Number of running items (no longer in the queue).\n */\n get pending() {\n return this.#pending;\n }\n /**\n Whether the queue is currently paused.\n */\n get isPaused() {\n return this.#isPaused;\n }\n}\n","import isRetryAllowed from 'is-retry-allowed';\nexport const namespace = 'axios-retry';\nexport function isNetworkError(error) {\n const CODE_EXCLUDE_LIST = ['ERR_CANCELED', 'ECONNABORTED'];\n if (error.response) {\n return false;\n }\n if (!error.code) {\n return false;\n }\n // Prevents retrying timed out & cancelled requests\n if (CODE_EXCLUDE_LIST.includes(error.code)) {\n return false;\n }\n // Prevents retrying unsafe errors\n return isRetryAllowed(error);\n}\nconst SAFE_HTTP_METHODS = ['get', 'head', 'options'];\nconst IDEMPOTENT_HTTP_METHODS = SAFE_HTTP_METHODS.concat(['put', 'delete']);\nexport function isRetryableError(error) {\n return (error.code !== 'ECONNABORTED' &&\n (!error.response ||\n error.response.status === 429 ||\n (error.response.status >= 500 && error.response.status <= 599)));\n}\nexport function isSafeRequestError(error) {\n if (!error.config?.method) {\n // Cannot determine if the request can be retried\n return false;\n }\n return isRetryableError(error) && SAFE_HTTP_METHODS.indexOf(error.config.method) !== -1;\n}\nexport function isIdempotentRequestError(error) {\n if (!error.config?.method) {\n // Cannot determine if the request can be retried\n return false;\n }\n return isRetryableError(error) && IDEMPOTENT_HTTP_METHODS.indexOf(error.config.method) !== -1;\n}\nexport function isNetworkOrIdempotentRequestError(error) {\n return isNetworkError(error) || isIdempotentRequestError(error);\n}\nexport function retryAfter(error = undefined) {\n const retryAfterHeader = error?.response?.headers['retry-after'];\n if (!retryAfterHeader) {\n return 0;\n }\n // if the retry after header is a number, convert it to milliseconds\n let retryAfterMs = (Number(retryAfterHeader) || 0) * 1000;\n // If the retry after header is a date, get the number of milliseconds until that date\n if (retryAfterMs === 0) {\n retryAfterMs = (new Date(retryAfterHeader).valueOf() || 0) - Date.now();\n }\n return Math.max(0, retryAfterMs);\n}\nfunction noDelay(_retryNumber = 0, error = undefined) {\n return Math.max(0, retryAfter(error));\n}\nexport function exponentialDelay(retryNumber = 0, error = undefined, delayFactor = 100) {\n const calculatedDelay = 2 ** retryNumber * delayFactor;\n const delay = Math.max(calculatedDelay, retryAfter(error));\n const randomSum = delay * 0.2 * Math.random(); // 0-20% of the delay\n return delay + randomSum;\n}\nexport const DEFAULT_OPTIONS = {\n retries: 3,\n retryCondition: isNetworkOrIdempotentRequestError,\n retryDelay: noDelay,\n shouldResetTimeout: false,\n onRetry: () => { },\n onMaxRetryTimesExceeded: () => { },\n validateResponse: null\n};\nfunction getRequestOptions(config, defaultOptions) {\n return { ...DEFAULT_OPTIONS, ...defaultOptions, ...config[namespace] };\n}\nfunction setCurrentState(config, defaultOptions) {\n const currentState = getRequestOptions(config, defaultOptions || {});\n currentState.retryCount = currentState.retryCount || 0;\n currentState.lastRequestTime = currentState.lastRequestTime || Date.now();\n config[namespace] = currentState;\n return currentState;\n}\nfunction fixConfig(axiosInstance, config) {\n // @ts-ignore\n if (axiosInstance.defaults.agent === config.agent) {\n // @ts-ignore\n delete config.agent;\n }\n if (axiosInstance.defaults.httpAgent === config.httpAgent) {\n delete config.httpAgent;\n }\n if (axiosInstance.defaults.httpsAgent === config.httpsAgent) {\n delete config.httpsAgent;\n }\n}\nasync function shouldRetry(currentState, error) {\n const { retries, retryCondition } = currentState;\n const shouldRetryOrPromise = (currentState.retryCount || 0) < retries && retryCondition(error);\n // This could be a promise\n if (typeof shouldRetryOrPromise === 'object') {\n try {\n const shouldRetryPromiseResult = await shouldRetryOrPromise;\n // keep return true unless shouldRetryPromiseResult return false for compatibility\n return shouldRetryPromiseResult !== false;\n }\n catch (_err) {\n return false;\n }\n }\n return shouldRetryOrPromise;\n}\nasync function handleRetry(axiosInstance, currentState, error, config) {\n currentState.retryCount += 1;\n const { retryDelay, shouldResetTimeout, onRetry } = currentState;\n const delay = retryDelay(currentState.retryCount, error);\n // Axios fails merging this configuration to the default configuration because it has an issue\n // with circular structures: https://github.com/mzabriskie/axios/issues/370\n fixConfig(axiosInstance, config);\n if (!shouldResetTimeout && config.timeout && currentState.lastRequestTime) {\n const lastRequestDuration = Date.now() - currentState.lastRequestTime;\n const timeout = config.timeout - lastRequestDuration - delay;\n if (timeout <= 0) {\n return Promise.reject(error);\n }\n config.timeout = timeout;\n }\n config.transformRequest = [(data) => data];\n await onRetry(currentState.retryCount, error, config);\n if (config.signal?.aborted) {\n return Promise.resolve(axiosInstance(config));\n }\n return new Promise((resolve) => {\n const abortListener = () => {\n clearTimeout(timeout);\n resolve(axiosInstance(config));\n };\n const timeout = setTimeout(() => {\n resolve(axiosInstance(config));\n if (config.signal?.removeEventListener) {\n config.signal.removeEventListener('abort', abortListener);\n }\n }, delay);\n if (config.signal?.addEventListener) {\n config.signal.addEventListener('abort', abortListener, { once: true });\n }\n });\n}\nasync function handleMaxRetryTimesExceeded(currentState, error) {\n if (currentState.retryCount >= currentState.retries)\n await currentState.onMaxRetryTimesExceeded(error, currentState.retryCount);\n}\nconst axiosRetry = (axiosInstance, defaultOptions) => {\n const requestInterceptorId = axiosInstance.interceptors.request.use((config) => {\n setCurrentState(config, defaultOptions);\n if (config[namespace]?.validateResponse) {\n // by setting this, all HTTP responses will be go through the error interceptor first\n config.validateStatus = () => false;\n }\n return config;\n });\n const responseInterceptorId = axiosInstance.interceptors.response.use(null, async (error) => {\n const { config } = error;\n // If we have no information to retry the request\n if (!config) {\n return Promise.reject(error);\n }\n const currentState = setCurrentState(config, defaultOptions);\n if (error.response && currentState.validateResponse?.(error.response)) {\n // no issue with response\n return error.response;\n }\n if (await shouldRetry(currentState, error)) {\n return handleRetry(axiosInstance, currentState, error, config);\n }\n await handleMaxRetryTimesExceeded(currentState, error);\n return Promise.reject(error);\n });\n return { requestInterceptorId, responseInterceptorId };\n};\n// Compatibility with CommonJS\naxiosRetry.isNetworkError = isNetworkError;\naxiosRetry.isSafeRequestError = isSafeRequestError;\naxiosRetry.isIdempotentRequestError = isIdempotentRequestError;\naxiosRetry.isNetworkOrIdempotentRequestError = isNetworkOrIdempotentRequestError;\naxiosRetry.exponentialDelay = exponentialDelay;\naxiosRetry.isRetryableError = isRetryableError;\nexport default axiosRetry;\n","import GetText from \"node-gettext\";\nimport { a as getLanguage } from \"./chunks/locale-BQFSYg2g.mjs\";\nimport \"@nextcloud/router\";\nimport \"dompurify\";\nimport \"escape-html\";\nvar __defProp = Object.defineProperty;\nvar __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;\nvar __publicField = (obj, key, value) => {\n __defNormalProp(obj, typeof key !== \"symbol\" ? key + \"\" : key, value);\n return value;\n};\nclass GettextBuilder {\n constructor() {\n __publicField(this, \"locale\");\n __publicField(this, \"translations\", {});\n __publicField(this, \"debug\", false);\n }\n setLanguage(language) {\n this.locale = language;\n return this;\n }\n /** Try to detect locale from context with `en` as fallback value */\n detectLocale() {\n return this.setLanguage(getLanguage().replace(\"-\", \"_\"));\n }\n addTranslation(language, data) {\n this.translations[language] = data;\n return this;\n }\n enableDebugMode() {\n this.debug = true;\n return this;\n }\n build() {\n return new GettextWrapper(this.locale || \"en\", this.translations, this.debug);\n }\n}\nclass GettextWrapper {\n constructor(locale, data, debug) {\n __publicField(this, \"gt\");\n this.gt = new GetText({\n debug,\n sourceLocale: \"en\"\n });\n for (const key in data) {\n this.gt.addTranslations(key, \"messages\", data[key]);\n }\n this.gt.setLocale(locale);\n }\n subtitudePlaceholders(translated, vars) {\n return translated.replace(/{([^{}]*)}/g, (a, b) => {\n const r = vars[b];\n if (typeof r === \"string\" || typeof r === \"number\") {\n return r.toString();\n } else {\n return a;\n }\n });\n }\n /**\n * Get translated string (singular form), optionally with placeholders\n *\n * @param original original string to translate\n * @param placeholders map of placeholder key to value\n */\n gettext(original, placeholders = {}) {\n return this.subtitudePlaceholders(\n this.gt.gettext(original),\n placeholders\n );\n }\n /**\n * Get translated string with plural forms\n *\n * @param singular Singular text form\n * @param plural Plural text form to be used if `count` requires it\n * @param count The number to insert into the text\n * @param placeholders optional map of placeholder key to value\n */\n ngettext(singular, plural, count, placeholders = {}) {\n return this.subtitudePlaceholders(\n this.gt.ngettext(singular, plural, count).replace(/%n/g, count.toString()),\n placeholders\n );\n }\n}\nfunction getGettextBuilder() {\n return new GettextBuilder();\n}\nexport {\n getGettextBuilder\n};\n","import '../assets/index-DiWRcN3o.css';\nimport { isPublicShare } from \"@nextcloud/sharing/public\";\nimport Vue, { defineAsyncComponent } from \"vue\";\nimport { getCurrentUser } from \"@nextcloud/auth\";\nimport { davRemoteURL, davRootPath, Folder, Permission, davGetClient, NewMenuEntryCategory, getUniqueName, getNewFileMenuEntries } from \"@nextcloud/files\";\nimport { basename, encodePath } from \"@nextcloud/paths\";\nimport { join, normalize } from \"path\";\nimport axios, { isCancel } from \"@nextcloud/axios\";\nimport PCancelable from \"p-cancelable\";\nimport PQueue from \"p-queue\";\nimport { generateRemoteUrl } from \"@nextcloud/router\";\nimport axiosRetry from \"axios-retry\";\nimport { getGettextBuilder } from \"@nextcloud/l10n/gettext\";\nimport { getLoggerBuilder } from \"@nextcloud/logger\";\nimport { DialogBuilder, showWarning } from \"@nextcloud/dialogs\";\nimport makeEta from \"simple-eta\";\nimport NcActionButton from \"@nextcloud/vue/dist/Components/NcActionButton.js\";\nimport NcActionCaption from \"@nextcloud/vue/dist/Components/NcActionCaption.js\";\nimport NcActionSeparator from \"@nextcloud/vue/dist/Components/NcActionSeparator.js\";\nimport NcActions from \"@nextcloud/vue/dist/Components/NcActions.js\";\nimport NcButton from \"@nextcloud/vue/dist/Components/NcButton.js\";\nimport NcIconSvgWrapper from \"@nextcloud/vue/dist/Components/NcIconSvgWrapper.js\";\nimport NcProgressBar from \"@nextcloud/vue/dist/Components/NcProgressBar.js\";\nconst isFileSystemDirectoryEntry = (o) => \"FileSystemDirectoryEntry\" in window && o instanceof FileSystemDirectoryEntry;\nconst isFileSystemFileEntry = (o) => \"FileSystemFileEntry\" in window && o instanceof FileSystemFileEntry;\nconst isFileSystemEntry = (o) => \"FileSystemEntry\" in window && o instanceof FileSystemEntry;\naxiosRetry(axios, { retries: 0 });\nconst uploadData = async function(url, uploadData2, signal, onUploadProgress = () => {\n}, destinationFile = void 0, headers = {}, retries = 5) {\n let data;\n if (uploadData2 instanceof Blob) {\n data = uploadData2;\n } else {\n data = await uploadData2();\n }\n if (destinationFile) {\n headers.Destination = destinationFile;\n }\n if (!headers[\"Content-Type\"]) {\n headers[\"Content-Type\"] = \"application/octet-stream\";\n }\n return await axios.request({\n method: \"PUT\",\n url,\n data,\n signal,\n onUploadProgress,\n headers,\n \"axios-retry\": {\n retries,\n retryDelay: (retryCount, error) => axiosRetry.exponentialDelay(retryCount, error, 1e3)\n }\n });\n};\nconst getChunk = function(file, start, length) {\n if (start === 0 && file.size <= length) {\n return Promise.resolve(new Blob([file], { type: file.type || \"application/octet-stream\" }));\n }\n return Promise.resolve(new Blob([file.slice(start, start + length)], { type: \"application/octet-stream\" }));\n};\nconst initChunkWorkspace = async function(destinationFile = void 0, retries = 5) {\n const chunksWorkspace = generateRemoteUrl(`dav/uploads/${getCurrentUser()?.uid}`);\n const hash = [...Array(16)].map(() => Math.floor(Math.random() * 16).toString(16)).join(\"\");\n const tempWorkspace = `web-file-upload-${hash}`;\n const url = `${chunksWorkspace}/${tempWorkspace}`;\n const headers = destinationFile ? { Destination: destinationFile } : void 0;\n await axios.request({\n method: \"MKCOL\",\n url,\n headers,\n \"axios-retry\": {\n retries,\n retryDelay: (retryCount, error) => axiosRetry.exponentialDelay(retryCount, error, 1e3)\n }\n });\n return url;\n};\nconst getMaxChunksSize = function(fileSize = void 0) {\n const maxChunkSize = window.OC?.appConfig?.files?.max_chunk_size;\n if (maxChunkSize <= 0) {\n return 0;\n }\n if (!Number(maxChunkSize)) {\n return 10 * 1024 * 1024;\n }\n const minimumChunkSize = Math.max(Number(maxChunkSize), 5 * 1024 * 1024);\n if (fileSize === void 0) {\n return minimumChunkSize;\n }\n return Math.max(minimumChunkSize, Math.ceil(fileSize / 1e4));\n};\nvar Status$1 = /* @__PURE__ */ ((Status2) => {\n Status2[Status2[\"INITIALIZED\"] = 0] = \"INITIALIZED\";\n Status2[Status2[\"UPLOADING\"] = 1] = \"UPLOADING\";\n Status2[Status2[\"ASSEMBLING\"] = 2] = \"ASSEMBLING\";\n Status2[Status2[\"FINISHED\"] = 3] = \"FINISHED\";\n Status2[Status2[\"CANCELLED\"] = 4] = \"CANCELLED\";\n Status2[Status2[\"FAILED\"] = 5] = \"FAILED\";\n return Status2;\n})(Status$1 || {});\nclass Upload {\n _source;\n _file;\n _isChunked;\n _chunks;\n _size;\n _uploaded = 0;\n _startTime = 0;\n _status = 0;\n _controller;\n _response = null;\n constructor(source, chunked = false, size, file) {\n const chunks = Math.min(getMaxChunksSize() > 0 ? Math.ceil(size / getMaxChunksSize()) : 1, 1e4);\n this._source = source;\n this._isChunked = chunked && getMaxChunksSize() > 0 && chunks > 1;\n this._chunks = this._isChunked ? chunks : 1;\n this._size = size;\n this._file = file;\n this._controller = new AbortController();\n }\n get source() {\n return this._source;\n }\n get file() {\n return this._file;\n }\n get isChunked() {\n return this._isChunked;\n }\n get chunks() {\n return this._chunks;\n }\n get size() {\n return this._size;\n }\n get startTime() {\n return this._startTime;\n }\n set response(response) {\n this._response = response;\n }\n get response() {\n return this._response;\n }\n get uploaded() {\n return this._uploaded;\n }\n /**\n * Update the uploaded bytes of this upload\n */\n set uploaded(length) {\n if (length >= this._size) {\n this._status = this._isChunked ? 2 : 3;\n this._uploaded = this._size;\n return;\n }\n this._status = 1;\n this._uploaded = length;\n if (this._startTime === 0) {\n this._startTime = (/* @__PURE__ */ new Date()).getTime();\n }\n }\n get status() {\n return this._status;\n }\n /**\n * Update this upload status\n */\n set status(status) {\n this._status = status;\n }\n /**\n * Returns the axios cancel token source\n */\n get signal() {\n return this._controller.signal;\n }\n /**\n * Cancel any ongoing requests linked to this upload\n */\n cancel() {\n this._controller.abort();\n this._status = 4;\n }\n}\nclass Directory extends File {\n _originalName;\n _path;\n _children;\n constructor(path, children) {\n super([], basename(path), { type: \"httpd/unix-directory\", lastModified: 0 });\n this._children = /* @__PURE__ */ new Map();\n this._originalName = basename(path);\n this._path = path;\n if (children) {\n children.forEach((c) => this.addChild(c));\n }\n }\n get size() {\n return this.children.reduce((sum, file) => sum + file.size, 0);\n }\n get lastModified() {\n return this.children.reduce((latest, file) => Math.max(latest, file.lastModified), 0);\n }\n // We need this to keep track of renamed files\n get originalName() {\n return this._originalName;\n }\n get children() {\n return Array.from(this._children.values());\n }\n get webkitRelativePath() {\n return this._path;\n }\n getChild(name) {\n return this._children.get(name) ?? null;\n }\n async addChild(file) {\n const rootPath = this._path && `${this._path}/`;\n if (isFileSystemFileEntry(file)) {\n file = await new Promise((resolve, reject) => file.file(resolve, reject));\n } else if (isFileSystemDirectoryEntry(file)) {\n const reader = file.createReader();\n const entries = await new Promise((resolve, reject) => reader.readEntries(resolve, reject));\n this._children.set(file.name, new Directory(`${rootPath}${file.name}`, entries));\n return;\n }\n file = file;\n const filePath = file.webkitRelativePath ?? file.name;\n if (!filePath.includes(\"/\")) {\n this._children.set(file.name, file);\n } else {\n if (!filePath.startsWith(this._path)) {\n throw new Error(`File ${filePath} is not a child of ${this._path}`);\n }\n const relPath = filePath.slice(rootPath.length);\n const name = basename(relPath);\n if (name === relPath) {\n this._children.set(name, file);\n } else {\n const base = relPath.slice(0, relPath.indexOf(\"/\"));\n if (this._children.has(base)) {\n this._children.get(base).addChild(file);\n } else {\n this._children.set(base, new Directory(`${rootPath}${base}`, [file]));\n }\n }\n }\n }\n}\n/**\n * @copyright Copyright (c) 2023 Ferdinand Thiessen \n *\n * @author Ferdinand Thiessen \n * @author John Molakvoæ \n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see .\n *\n */\nconst gtBuilder = getGettextBuilder().detectLocale();\n[{ \"locale\": \"af\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Afrikaans (https://www.transifex.com/nextcloud/teams/64236/af/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"af\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Afrikaans (https://www.transifex.com/nextcloud/teams/64236/af/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: af\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ar\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Ali , 2024\", \"Language-Team\": \"Arabic (https://app.transifex.com/nextcloud/teams/64236/ar/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ar\", \"Plural-Forms\": \"nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nAli , 2024\\n\" }, \"msgstr\": [\"Last-Translator: Ali , 2024\\nLanguage-Team: Arabic (https://app.transifex.com/nextcloud/teams/64236/ar/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ar\\nPlural-Forms: nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;\\n\"] }, '\"{filename}\" contains invalid characters, how do you want to continue?': { \"msgid\": '\"{filename}\" contains invalid characters, how do you want to continue?', \"msgstr\": ['\"{filename}\" يحتوي على حروف غير مقبولة. كيف ترغب في الاستمرار؟'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} ملف متعارض\", \"{count} ملف متعارض\", \"{count} ملفان متعارضان\", \"{count} ملف متعارض\", \"{count} ملفات متعارضة\", \"{count} ملفات متعارضة\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} ملف متعارض في n {dirname}\", \"{count} ملف متعارض في n {dirname}\", \"{count} ملفان متعارضان في n {dirname}\", \"{count} ملف متعارض في n {dirname}\", \"{count} ملفات متعارضة في n {dirname}\", \"{count} ملفات متعارضة في n {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} ثانية متبقية\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} متبقية\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"باقٍ بضعُ ثوانٍ\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"إلغاء\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"إلغِ العملية بالكامل\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"إلغاء عمليات رفع الملفات\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"إستمر\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"إنشاء جديد\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"تقدير الوقت المتبقي\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"الإصدار الحالي\"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"إذا اخترت الاحتفاظ بالنسختين فسيتم إلحاق رقم عداد آخر اسم الملف الوارد.\"] }, \"Invalid file name\": { \"msgid\": \"Invalid file name\", \"msgstr\": [\"اسم الملف غير صحيح\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"تاريخ آخر تعديل غير معلوم\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"جديد\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"نسخة جديدة\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"مُجمَّد\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"معاينة الصورة\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"تغيير التسمية\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"حدِّد كل صناديق الخيارات\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"حدِّد كل الملفات الموجودة\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"حدِّد كل الملفات الجديدة\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"تخطِّي\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"تخطَّ {count} ملف\", \"تخطَّ {count} ملف\", \"تخطَّ {count} ملف\", \"تخطَّ {count} ملف\", \"تخطَّ {count} ملف\", \"تخطَّ {count} ملف\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"حجم غير معلوم\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"رفع ملفات\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"رفع مجلدات\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"الرفع من جهاز \"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"تمّ إلغاء عملية رفع الملفات\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"تقدُّم الرفع \"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"عند تحديد مجلد وارد، أي ملفات متعارضة بداخله ستتم الكتابة فوقها.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"عند تحديد مجلد وارد، ستتم كتابة المحتوى في المجلد الموجود و سيتم تنفيذ حل التعارض بشكل تعاوُدي.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"أيُّ الملفات ترغب في الإبقاء عليها؟\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"يجب أن تختار نسخة واحدة على الأقل من كل ملف للاستمرار.\"] } } } } }, { \"locale\": \"ar_SA\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Arabic (Saudi Arabia) (https://www.transifex.com/nextcloud/teams/64236/ar_SA/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ar_SA\", \"Plural-Forms\": \"nplurals=6; plural=(n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Arabic (Saudi Arabia) (https://www.transifex.com/nextcloud/teams/64236/ar_SA/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ar_SA\\nPlural-Forms: nplurals=6; plural=(n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ast\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"enolp , 2023\", \"Language-Team\": \"Asturian (https://app.transifex.com/nextcloud/teams/64236/ast/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ast\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nenolp , 2023\\n\" }, \"msgstr\": [\"Last-Translator: enolp , 2023\\nLanguage-Team: Asturian (https://app.transifex.com/nextcloud/teams/64236/ast/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ast\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} ficheru en coflictu\", \"{count} ficheros en coflictu\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} ficheru en coflictu en {dirname}\", \"{count} ficheros en coflictu en {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"Queden {seconds} segundos\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"Tiempu que queda: {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"queden unos segundos\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Encaboxar les xubes\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Siguir\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimando'l tiempu que falta\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Versión esistente\"] }, \"If you select both versions, the copied file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the copied file will have a number added to its name.\", \"msgstr\": [\"Si seleiciones dambes versiones, el ficheru copiáu va tener un númberu amestáu al so nome.\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"La data de la última modificación ye desconocida\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nuevu\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Versión nueva\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"en posa\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Previsualizar la imaxe\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Marcar toles caxelles\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Seleicionar tolos ficheros esistentes\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Seleicionar tolos ficheros nuevos\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Saltar esti ficheru\", \"Saltar {count} ficheros\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Tamañu desconocíu\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"Encaboxóse la xuba\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Xubir ficheros\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Xuba en cursu\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"¿Qué ficheros quies caltener?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Tienes de seleicionar polo menos una versión de cada ficheru pa siguir.\"] } } } } }, { \"locale\": \"az\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Rashad Aliyev , 2023\", \"Language-Team\": \"Azerbaijani (https://app.transifex.com/nextcloud/teams/64236/az/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"az\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nRashad Aliyev , 2023\\n\" }, \"msgstr\": [\"Last-Translator: Rashad Aliyev , 2023\\nLanguage-Team: Azerbaijani (https://app.transifex.com/nextcloud/teams/64236/az/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: az\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} saniyə qalıb\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"{time} qalıb\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"bir neçə saniyə qalıb\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Əlavə et\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Yükləməni imtina et\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"Təxmini qalan vaxt\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pauzadadır\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Faylları yüklə\"] } } } } }, { \"locale\": \"be\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Belarusian (https://www.transifex.com/nextcloud/teams/64236/be/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"be\", \"Plural-Forms\": \"nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Belarusian (https://www.transifex.com/nextcloud/teams/64236/be/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: be\\nPlural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"bg_BG\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Bulgarian (Bulgaria) (https://www.transifex.com/nextcloud/teams/64236/bg_BG/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"bg_BG\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Bulgarian (Bulgaria) (https://www.transifex.com/nextcloud/teams/64236/bg_BG/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: bg_BG\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"bn_BD\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Bengali (Bangladesh) (https://www.transifex.com/nextcloud/teams/64236/bn_BD/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"bn_BD\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Bengali (Bangladesh) (https://www.transifex.com/nextcloud/teams/64236/bn_BD/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: bn_BD\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"br\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Breton (https://www.transifex.com/nextcloud/teams/64236/br/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"br\", \"Plural-Forms\": \"nplurals=5; plural=((n%10 == 1) && (n%100 != 11) && (n%100 !=71) && (n%100 !=91) ? 0 :(n%10 == 2) && (n%100 != 12) && (n%100 !=72) && (n%100 !=92) ? 1 :(n%10 ==3 || n%10==4 || n%10==9) && (n%100 < 10 || n% 100 > 19) && (n%100 < 70 || n%100 > 79) && (n%100 < 90 || n%100 > 99) ? 2 :(n != 0 && n % 1000000 == 0) ? 3 : 4);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Breton (https://www.transifex.com/nextcloud/teams/64236/br/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: br\\nPlural-Forms: nplurals=5; plural=((n%10 == 1) && (n%100 != 11) && (n%100 !=71) && (n%100 !=91) ? 0 :(n%10 == 2) && (n%100 != 12) && (n%100 !=72) && (n%100 !=92) ? 1 :(n%10 ==3 || n%10==4 || n%10==9) && (n%100 < 10 || n% 100 > 19) && (n%100 < 70 || n%100 > 79) && (n%100 < 90 || n%100 > 99) ? 2 :(n != 0 && n % 1000000 == 0) ? 3 : 4);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"bs\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Bosnian (https://www.transifex.com/nextcloud/teams/64236/bs/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"bs\", \"Plural-Forms\": \"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Bosnian (https://www.transifex.com/nextcloud/teams/64236/bs/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: bs\\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ca\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Toni Hermoso Pulido , 2022\", \"Language-Team\": \"Catalan (https://www.transifex.com/nextcloud/teams/64236/ca/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ca\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nMarc Riera , 2022\\nToni Hermoso Pulido , 2022\\n\" }, \"msgstr\": [\"Last-Translator: Toni Hermoso Pulido , 2022\\nLanguage-Team: Catalan (https://www.transifex.com/nextcloud/teams/64236/ca/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ca\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"Queden {seconds} segons\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"Queden {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"Queden uns segons\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Afegeix\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Cancel·la les pujades\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"S'està estimant el temps restant\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"En pausa\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Puja els fitxers\"] } } } } }, { \"locale\": \"cs\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Pavel Borecki , 2022\", \"Language-Team\": \"Czech (https://www.transifex.com/nextcloud/teams/64236/cs/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"cs\", \"Plural-Forms\": \"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nPavel Borecki , 2022\\n\" }, \"msgstr\": [\"Last-Translator: Pavel Borecki , 2022\\nLanguage-Team: Czech (https://www.transifex.com/nextcloud/teams/64236/cs/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: cs\\nPlural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"zbývá {seconds}\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"zbývá {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"zbývá několik sekund\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Přidat\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Zrušit nahrávání\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"odhadovaný zbývající čas\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pozastaveno\"] } } } } }, { \"locale\": \"cs_CZ\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Michal Šmahel , 2024\", \"Language-Team\": \"Czech (Czech Republic) (https://app.transifex.com/nextcloud/teams/64236/cs_CZ/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"cs_CZ\", \"Plural-Forms\": \"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nMichal Šmahel , 2024\\n\" }, \"msgstr\": [\"Last-Translator: Michal Šmahel , 2024\\nLanguage-Team: Czech (Czech Republic) (https://app.transifex.com/nextcloud/teams/64236/cs_CZ/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: cs_CZ\\nPlural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} kolize souborů\", \"{count} kolize souborů\", \"{count} kolizí souborů\", \"{count} kolize souborů\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} kolize souboru v {dirname}\", \"{count} kolize souboru v {dirname}\", \"{count} kolizí souborů v {dirname}\", \"{count} kolize souboru v {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"zbývá {seconds}\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"zbývá {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"zbývá několik sekund\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Zrušit\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Zrušit celou operaci\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Zrušit nahrávání\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Pokračovat\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"odhaduje se zbývající čas\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Existující verze\"] }, \"If you select both versions, the copied file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the copied file will have a number added to its name.\", \"msgstr\": [\"Pokud vyberete obě verze, zkopírovaný soubor bude mít k názvu přidáno číslo.\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Neznámé datum poslední úpravy\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nové\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Nová verze\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pozastaveno\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Náhled obrázku\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Označit všechny zaškrtávací kolonky\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Vybrat veškeré stávající soubory\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Vybrat veškeré nové soubory\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Přeskočit tento soubor\", \"Přeskočit {count} soubory\", \"Přeskočit {count} souborů\", \"Přeskočit {count} soubory\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Neznámá velikost\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"Nahrávání zrušeno\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Nahrát soubory\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Postup v nahrávání\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Po výběru příchozí složky budou rovněž přepsány všechny v ní obsažené konfliktní soubory\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Které soubory si přejete ponechat?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Aby bylo možné pokračovat, je třeba vybrat alespoň jednu verzi od každého souboru.\"] } } } } }, { \"locale\": \"cy_GB\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Welsh (United Kingdom) (https://www.transifex.com/nextcloud/teams/64236/cy_GB/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"cy_GB\", \"Plural-Forms\": \"nplurals=4; plural=(n==1) ? 0 : (n==2) ? 1 : (n != 8 && n != 11) ? 2 : 3;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Welsh (United Kingdom) (https://www.transifex.com/nextcloud/teams/64236/cy_GB/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: cy_GB\\nPlural-Forms: nplurals=4; plural=(n==1) ? 0 : (n==2) ? 1 : (n != 8 && n != 11) ? 2 : 3;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"da\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Martin Bonde , 2024\", \"Language-Team\": \"Danish (https://app.transifex.com/nextcloud/teams/64236/da/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"da\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nMartin Bonde , 2024\\n\" }, \"msgstr\": [\"Last-Translator: Martin Bonde , 2024\\nLanguage-Team: Danish (https://app.transifex.com/nextcloud/teams/64236/da/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: da\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} fil konflikt\", \"{count} filer i konflikt\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} fil konflikt i {dirname}\", \"{count} filer i konflikt i {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{sekunder} sekunder tilbage\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{tid} tilbage\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"et par sekunder tilbage\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Annuller\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Annuller hele handlingen\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Annuller uploads\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Fortsæt\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimering af resterende tid\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Eksisterende version\"] }, \"If you select both versions, the copied file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the copied file will have a number added to its name.\", \"msgstr\": [\"Hvis du vælger begge versioner vil den kopierede fil få et nummer tilføjet til sit navn.\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Sidste modifikationsdato ukendt\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Ny\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Ny version\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pauset\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Forhåndsvisning af billede\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Vælg alle felter\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Vælg alle eksisterende filer\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Vælg alle nye filer\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Spring denne fil over\", \"Spring {count} filer over\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Ukendt størrelse\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"Upload annulleret\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Upload filer\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Upload fremskridt\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Når en indgående mappe er valgt, vil alle modstridende filer i den også blive overskrevet.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Hvilke filer ønsker du at beholde?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Du skal vælge mindst én version af hver fil for at fortsætte.\"] } } } } }, { \"locale\": \"de\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Mario Siegmann , 2024\", \"Language-Team\": \"German (https://app.transifex.com/nextcloud/teams/64236/de/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"de\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nMario Siegmann , 2024\\n\" }, \"msgstr\": [\"Last-Translator: Mario Siegmann , 2024\\nLanguage-Team: German (https://app.transifex.com/nextcloud/teams/64236/de/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: de\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} Datei-Konflikt\", \"{count} Datei-Konflikte\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} Datei-Konflikt in {dirname}\", \"{count} Datei-Konflikte in {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} Sekunden verbleibend\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} verbleibend\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"noch ein paar Sekunden\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Abbrechen\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Den gesamten Vorgang abbrechen\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Hochladen abbrechen\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Fortsetzen\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"Geschätzte verbleibende Zeit\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Vorhandene Version\"] }, \"If you select both versions, the copied file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the copied file will have a number added to its name.\", \"msgstr\": [\"Wenn du beide Versionen auswählst, wird der kopierten Datei eine Nummer zum Namen hinzugefügt.\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Datum der letzten Änderung unbekannt\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Neu\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Neue Version\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"Pausiert\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Vorschaubild\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Alle Kontrollkästchen aktivieren\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Alle vorhandenen Dateien auswählen\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Alle neuen Dateien auswählen\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Diese Datei überspringen\", \"{count} Dateien überspringen\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Unbekannte Größe\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"Hochladen abgebrochen\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Dateien hochladen\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Fortschritt beim Hochladen\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Wenn ein eingehender Ordner ausgewählt wird, werden alle darin enthaltenen Konfliktdateien ebenfalls überschrieben.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Welche Dateien möchtest du behalten?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Du musst mindestens eine Version jeder Datei auswählen, um fortzufahren.\"] } } } } }, { \"locale\": \"de_DE\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Mario Siegmann , 2024\", \"Language-Team\": \"German (Germany) (https://app.transifex.com/nextcloud/teams/64236/de_DE/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"de_DE\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nMario Siegmann , 2024\\n\" }, \"msgstr\": [\"Last-Translator: Mario Siegmann , 2024\\nLanguage-Team: German (Germany) (https://app.transifex.com/nextcloud/teams/64236/de_DE/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: de_DE\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{filename}\" contains invalid characters, how do you want to continue?': { \"msgid\": '\"{filename}\" contains invalid characters, how do you want to continue?', \"msgstr\": ['\"{filename}\" enthält ungültige Zeichen. Wie möchten Sie fortfahren?'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} Datei-Konflikt\", \"{count} Datei-Konflikte\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} Datei-Konflikt in {dirname}\", \"{count} Datei-Konflikte in {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} Sekunden verbleiben\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} verbleibend\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"ein paar Sekunden verbleiben\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Abbrechen\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Den gesamten Vorgang abbrechen\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Hochladen abbrechen\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Fortsetzen\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Neu erstellen\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"Geschätzte verbleibende Zeit\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Vorhandene Version\"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Wenn Sie beide Versionen auswählen, wird der eingehenden Datei eine Nummer zum Namen hinzugefügt.\"] }, \"Invalid file name\": { \"msgid\": \"Invalid file name\", \"msgstr\": [\"Ungültiger Dateiname\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Datum der letzten Änderung unbekannt\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Neu\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Neue Version\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"Pausiert\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Vorschaubild\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Umbenennen\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Alle Kontrollkästchen aktivieren\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Alle vorhandenen Dateien auswählen\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Alle neuen Dateien auswählen\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Überspringen\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"{count} Datei überspringen\", \"{count} Dateien überspringen\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Unbekannte Größe\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Dateien hochladen\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Ordner hochladen\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Vom Gerät hochladen\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Das Hochladen wurde abgebrochen\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Fortschritt beim Hochladen\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Wenn ein eingehender Ordner ausgewählt wird, werden alle darin enthaltenen Konfliktdateien ebenfalls überschrieben.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Bei Auswahl eines eingehenden Ordners wird der Inhalt in den vorhandenen Ordner geschrieben und eine rekursive Konfliktlösung durchgeführt.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Welche Dateien möchten Sie behalten?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Sie müssen mindestens eine Version jeder Datei auswählen, um fortzufahren.\"] } } } } }, { \"locale\": \"el\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Nik Pap, 2022\", \"Language-Team\": \"Greek (https://www.transifex.com/nextcloud/teams/64236/el/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"el\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nNik Pap, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Nik Pap, 2022\\nLanguage-Team: Greek (https://www.transifex.com/nextcloud/teams/64236/el/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: el\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"απομένουν {seconds} δευτερόλεπτα\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"απομένουν {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"απομένουν λίγα δευτερόλεπτα\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Προσθήκη\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Ακύρωση μεταφορτώσεων\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"εκτίμηση του χρόνου που απομένει\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"σε παύση\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Μεταφόρτωση αρχείων\"] } } } } }, { \"locale\": \"el_GR\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Greek (Greece) (https://www.transifex.com/nextcloud/teams/64236/el_GR/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"el_GR\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Greek (Greece) (https://www.transifex.com/nextcloud/teams/64236/el_GR/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: el_GR\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"en_GB\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Andi Chandler , 2024\", \"Language-Team\": \"English (United Kingdom) (https://app.transifex.com/nextcloud/teams/64236/en_GB/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"en_GB\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nAndi Chandler , 2024\\n\" }, \"msgstr\": [\"Last-Translator: Andi Chandler , 2024\\nLanguage-Team: English (United Kingdom) (https://app.transifex.com/nextcloud/teams/64236/en_GB/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: en_GB\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} file conflict\", \"{count} files conflict\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} file conflict in {dirname}\", \"{count} file conflicts in {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} seconds left\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} left\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"a few seconds left\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Cancel\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Cancel the entire operation\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Cancel uploads\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Continue\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimating time left\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Existing version\"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"If you select both versions, the incoming file will have a number added to its name.\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Last modified date unknown\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"New\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"New version\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"paused\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Preview image\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Select all checkboxes\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Select all existing files\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Select all new files\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Skip this file\", \"Skip {count} files\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Unknown size\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"Upload cancelled\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Upload files\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Upload progress\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"When an incoming folder is selected, any conflicting files within it will also be overwritten.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Which files do you want to keep?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"You need to select at least one version of each file to continue.\"] } } } } }, { \"locale\": \"eo\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Esperanto (https://www.transifex.com/nextcloud/teams/64236/eo/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"eo\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Esperanto (https://www.transifex.com/nextcloud/teams/64236/eo/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: eo\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Julio C. Ortega, 2024\", \"Language-Team\": \"Spanish (https://app.transifex.com/nextcloud/teams/64236/es/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nFranciscoFJ , 2024\\nJulio C. Ortega, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Julio C. Ortega, 2024\\nLanguage-Team: Spanish (https://app.transifex.com/nextcloud/teams/64236/es/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, '\"{filename}\" contains invalid characters, how do you want to continue?': { \"msgid\": '\"{filename}\" contains invalid characters, how do you want to continue?', \"msgstr\": ['\"{filename}\" contiene caracteres inválidos, ¿cómo desea continuar?'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} conflicto de archivo\", \"{count} conflictos de archivo\", \"{count} conflictos de archivo\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} conflicto de archivo en {dirname}\", \"{count} conflictos de archivo en {dirname}\", \"{count} conflictos de archivo en {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} segundos restantes\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} restante\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"quedan unos segundos\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Cancelar\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Cancelar toda la operación\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Cancelar subidas\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Continuar\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Crear nuevo\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimando tiempo restante\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Versión existente\"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Si selecciona ambas versionas, el archivo entrante le será agregado un número a su nombre.\"] }, \"Invalid file name\": { \"msgid\": \"Invalid file name\", \"msgstr\": [\"Nombre de archivo inválido\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Última fecha de modificación desconocida\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nuevo\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Nueva versión\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pausado\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Previsualizar imagen\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Renombrar\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Seleccionar todas las casillas de verificación\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Seleccionar todos los archivos existentes\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Seleccionar todos los archivos nuevos\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Saltar\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Saltar este archivo\", \"Saltar {count} archivos\", \"Saltar {count} archivos\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Tamaño desconocido\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Subir archivos\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Subir carpetas\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Subir desde dispositivo\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"La subida ha sido cancelada\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Progreso de la subida\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Cuando una carpeta entrante es seleccionada, cualquier de los archivos en conflictos también serán sobre-escritos.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Cuando una carpeta entrante es seleccionada, el contenido es escrito en la carpeta existente y se realizará una resolución de conflictos recursiva.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"¿Qué archivos desea conservar?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Debe seleccionar al menos una versión de cada archivo para continuar.\"] } } } } }, { \"locale\": \"es_419\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"ALEJANDRO CASTRO, 2022\", \"Language-Team\": \"Spanish (Latin America) (https://www.transifex.com/nextcloud/teams/64236/es_419/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_419\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nALEJANDRO CASTRO, 2022\\n\" }, \"msgstr\": [\"Last-Translator: ALEJANDRO CASTRO, 2022\\nLanguage-Team: Spanish (Latin America) (https://www.transifex.com/nextcloud/teams/64236/es_419/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_419\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} segundos restantes\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"{tiempo} restante\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"quedan pocos segundos\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"agregar\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Cancelar subidas\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimando tiempo restante\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pausado\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Subir archivos\"] } } } } }, { \"locale\": \"es_AR\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Matias Iglesias, 2022\", \"Language-Team\": \"Spanish (Argentina) (https://www.transifex.com/nextcloud/teams/64236/es_AR/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_AR\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nMatias Iglesias, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Matias Iglesias, 2022\\nLanguage-Team: Spanish (Argentina) (https://www.transifex.com/nextcloud/teams/64236/es_AR/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_AR\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} segundos restantes\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"{time} restante\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"quedan unos segundos\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Añadir\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Cancelar subidas\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimando tiempo restante\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pausado\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Subir archivos\"] } } } } }, { \"locale\": \"es_CL\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Chile) (https://www.transifex.com/nextcloud/teams/64236/es_CL/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_CL\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Chile) (https://www.transifex.com/nextcloud/teams/64236/es_CL/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_CL\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_CO\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Colombia) (https://www.transifex.com/nextcloud/teams/64236/es_CO/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_CO\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Colombia) (https://www.transifex.com/nextcloud/teams/64236/es_CO/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_CO\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_CR\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Costa Rica) (https://www.transifex.com/nextcloud/teams/64236/es_CR/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_CR\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Costa Rica) (https://www.transifex.com/nextcloud/teams/64236/es_CR/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_CR\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_DO\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Dominican Republic) (https://www.transifex.com/nextcloud/teams/64236/es_DO/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_DO\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Dominican Republic) (https://www.transifex.com/nextcloud/teams/64236/es_DO/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_DO\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_EC\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Ecuador) (https://www.transifex.com/nextcloud/teams/64236/es_EC/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_EC\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Ecuador) (https://www.transifex.com/nextcloud/teams/64236/es_EC/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_EC\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_GT\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Guatemala) (https://www.transifex.com/nextcloud/teams/64236/es_GT/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_GT\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Guatemala) (https://www.transifex.com/nextcloud/teams/64236/es_GT/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_GT\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_HN\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Honduras) (https://www.transifex.com/nextcloud/teams/64236/es_HN/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_HN\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Honduras) (https://www.transifex.com/nextcloud/teams/64236/es_HN/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_HN\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_MX\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"ALEJANDRO CASTRO, 2022\", \"Language-Team\": \"Spanish (Mexico) (https://www.transifex.com/nextcloud/teams/64236/es_MX/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_MX\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nLuis Francisco Castro, 2022\\nALEJANDRO CASTRO, 2022\\n\" }, \"msgstr\": [\"Last-Translator: ALEJANDRO CASTRO, 2022\\nLanguage-Team: Spanish (Mexico) (https://www.transifex.com/nextcloud/teams/64236/es_MX/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_MX\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} segundos restantes\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"{tiempo} restante\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"quedan pocos segundos\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"agregar\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"cancelar las cargas\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimando tiempo restante\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"en pausa\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"cargar archivos\"] } } } } }, { \"locale\": \"es_NI\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Nicaragua) (https://www.transifex.com/nextcloud/teams/64236/es_NI/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_NI\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Nicaragua) (https://www.transifex.com/nextcloud/teams/64236/es_NI/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_NI\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_PA\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Panama) (https://www.transifex.com/nextcloud/teams/64236/es_PA/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_PA\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Panama) (https://www.transifex.com/nextcloud/teams/64236/es_PA/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_PA\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_PE\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Peru) (https://www.transifex.com/nextcloud/teams/64236/es_PE/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_PE\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Peru) (https://www.transifex.com/nextcloud/teams/64236/es_PE/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_PE\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_PR\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Puerto Rico) (https://www.transifex.com/nextcloud/teams/64236/es_PR/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_PR\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Puerto Rico) (https://www.transifex.com/nextcloud/teams/64236/es_PR/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_PR\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_PY\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Paraguay) (https://www.transifex.com/nextcloud/teams/64236/es_PY/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_PY\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Paraguay) (https://www.transifex.com/nextcloud/teams/64236/es_PY/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_PY\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_SV\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (El Salvador) (https://www.transifex.com/nextcloud/teams/64236/es_SV/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_SV\", \"Plural-Forms\": \"nplurals=2; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (El Salvador) (https://www.transifex.com/nextcloud/teams/64236/es_SV/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_SV\\nPlural-Forms: nplurals=2; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_UY\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Uruguay) (https://www.transifex.com/nextcloud/teams/64236/es_UY/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_UY\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Uruguay) (https://www.transifex.com/nextcloud/teams/64236/es_UY/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_UY\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"et_EE\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Taavo Roos, 2023\", \"Language-Team\": \"Estonian (Estonia) (https://app.transifex.com/nextcloud/teams/64236/et_EE/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"et_EE\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nMait R, 2022\\nTaavo Roos, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Taavo Roos, 2023\\nLanguage-Team: Estonian (Estonia) (https://app.transifex.com/nextcloud/teams/64236/et_EE/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: et_EE\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} jäänud sekundid\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"{time} aega jäänud\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"jäänud mõni sekund\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Lisa\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Tühista üleslaadimine\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"hinnanguline järelejäänud aeg\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pausil\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Lae failid üles\"] } } } } }, { \"locale\": \"eu\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Unai Tolosa Pontesta , 2022\", \"Language-Team\": \"Basque (https://www.transifex.com/nextcloud/teams/64236/eu/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"eu\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nUnai Tolosa Pontesta , 2022\\n\" }, \"msgstr\": [\"Last-Translator: Unai Tolosa Pontesta , 2022\\nLanguage-Team: Basque (https://www.transifex.com/nextcloud/teams/64236/eu/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: eu\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} segundo geratzen dira\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"{time} geratzen da\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"segundo batzuk geratzen dira\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Gehitu\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Ezeztatu igoerak\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"kalkulatutako geratzen den denbora\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"geldituta\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Igo fitxategiak\"] } } } } }, { \"locale\": \"fa\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Fatemeh Komeily, 2023\", \"Language-Team\": \"Persian (https://app.transifex.com/nextcloud/teams/64236/fa/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"fa\", \"Plural-Forms\": \"nplurals=2; plural=(n > 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nFatemeh Komeily, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Fatemeh Komeily, 2023\\nLanguage-Team: Persian (https://app.transifex.com/nextcloud/teams/64236/fa/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: fa\\nPlural-Forms: nplurals=2; plural=(n > 1);\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"ثانیه های باقی مانده\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"باقی مانده\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"چند ثانیه مانده\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"اضافه کردن\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"کنسل کردن فایل های اپلود شده\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"تخمین زمان باقی مانده\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"مکث کردن\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"بارگذاری فایل ها\"] } } } } }, { \"locale\": \"fi_FI\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Jiri Grönroos , 2022\", \"Language-Team\": \"Finnish (Finland) (https://www.transifex.com/nextcloud/teams/64236/fi_FI/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"fi_FI\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJiri Grönroos , 2022\\n\" }, \"msgstr\": [\"Last-Translator: Jiri Grönroos , 2022\\nLanguage-Team: Finnish (Finland) (https://www.transifex.com/nextcloud/teams/64236/fi_FI/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: fi_FI\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} sekuntia jäljellä\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"{time} jäljellä\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"muutama sekunti jäljellä\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Lisää\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Peruuta lähetykset\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"arvioidaan jäljellä olevaa aikaa\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"keskeytetty\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Lähetä tiedostoja\"] } } } } }, { \"locale\": \"fo\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Faroese (https://www.transifex.com/nextcloud/teams/64236/fo/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"fo\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Faroese (https://www.transifex.com/nextcloud/teams/64236/fo/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: fo\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"fr\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"jed boulahya, 2024\", \"Language-Team\": \"French (https://app.transifex.com/nextcloud/teams/64236/fr/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"fr\", \"Plural-Forms\": \"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nBenoit Pruneau, 2024\\njed boulahya, 2024\\n\" }, \"msgstr\": [\"Last-Translator: jed boulahya, 2024\\nLanguage-Team: French (https://app.transifex.com/nextcloud/teams/64236/fr/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: fr\\nPlural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} fichier en conflit\", \"{count} fichiers en conflit\", \"{count} fichiers en conflit\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} fichier en conflit dans {dirname}\", \"{count} fichiers en conflit dans {dirname}\", \"{count} fichiers en conflit dans {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} secondes restantes\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} restant\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"quelques secondes restantes\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Annuler\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Annuler l'opération entière\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Annuler les envois\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Continuer\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimation du temps restant\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Version existante\"] }, \"If you select both versions, the copied file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the copied file will have a number added to its name.\", \"msgstr\": [\"Si vous sélectionnez les deux versions, le fichier copié aura un numéro ajouté àname.\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Date de la dernière modification est inconnue\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nouveau\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Nouvelle version\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"en pause\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Aperçu de l'image\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Sélectionner toutes les cases à cocher\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Sélectionner tous les fichiers existants\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Sélectionner tous les nouveaux fichiers\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Ignorer ce fichier\", \"Ignorer {count} fichiers\", \"Ignorer {count} fichiers\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Taille inconnue\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\" annulé\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Téléchargement des fichiers\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Progression du téléchargement\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Lorsqu'un dossier entrant est sélectionné, tous les fichiers en conflit qu'il contient seront également écrasés.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Quels fichiers souhaitez-vous conserver ?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Vous devez sélectionner au moins une version de chaque fichier pour continuer.\"] } } } } }, { \"locale\": \"ga\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Aindriú Mac Giolla Eoin, 2024\", \"Language-Team\": \"Irish (https://app.transifex.com/nextcloud/teams/64236/ga/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ga\", \"Plural-Forms\": \"nplurals=5; plural=(n==1 ? 0 : n==2 ? 1 : n<7 ? 2 : n<11 ? 3 : 4);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nAindriú Mac Giolla Eoin, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Aindriú Mac Giolla Eoin, 2024\\nLanguage-Team: Irish (https://app.transifex.com/nextcloud/teams/64236/ga/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ga\\nPlural-Forms: nplurals=5; plural=(n==1 ? 0 : n==2 ? 1 : n<7 ? 2 : n<11 ? 3 : 4);\\n\"] }, '\"{filename}\" contains invalid characters, how do you want to continue?': { \"msgid\": '\"{filename}\" contains invalid characters, how do you want to continue?', \"msgstr\": ['Tá carachtair neamhbhailí in \"{filename}\", conas ba mhaith leat leanúint ar aghaidh?'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} coimhlint comhaid\", \"coimhlint comhaid {count}\", \"coimhlint comhaid {count}\", \"coimhlint comhaid {count}\", \"coimhlint comhaid {count}\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} coimhlint comhaid i {dirname}\", \"{count} coimhlint comhaid i {dirname}\", \"{count} coimhlint comhaid i {dirname}\", \"{count} coimhlint comhaid i {dirname}\", \"{count} coimhlint comhaid i {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{soicind} fágtha\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{am} fágtha\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"cúpla soicind fágtha\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Cealaigh\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Cealaigh an oibríocht iomlán\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Cealaigh uaslódálacha\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Leanúint ar aghaidh\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Cruthaigh nua\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"ag déanamh meastachán ar an am atá fágtha\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Leagan láithreach \"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Má roghnaíonn tú an dá leagan, cuirfear uimhir leis an ainm a thagann isteach.\"] }, \"Invalid file name\": { \"msgid\": \"Invalid file name\", \"msgstr\": [\"Ainm comhaid neamhbhailí\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Dáta modhnaithe is déanaí anaithnid\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nua\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Leagan nua\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"sos\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Íomhá réamhamharc\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Athainmnigh\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Roghnaigh gach ticbhosca\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Roghnaigh gach comhad atá ann cheana féin\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Roghnaigh gach comhad nua\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Scipeáil\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Léim an comhad seo\", \"Léim ar {count} comhad\", \"Léim ar {count} comhad\", \"Léim ar {count} comhad\", \"Léim ar {count} comhad\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Méid anaithnid\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Uaslódáil comhaid\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Uaslódáil fillteáin\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Íosluchtaigh ó gléas\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Cuireadh an t-uaslódáil ar ceal\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Uaslódáil dul chun cinn\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Nuair a roghnaítear fillteán isteach, déanfar aon chomhad contrártha laistigh de a fhorscríobh freisin.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Nuair a roghnaítear fillteán isteach, scríobhtar an t-ábhar isteach san fhillteán atá ann cheana agus déantar réiteach coinbhleachta athchúrsach.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Cé na comhaid ar mhaith leat a choinneáil?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Ní mór duit leagan amháin ar a laghad de gach comhad a roghnú chun leanúint ar aghaidh.\"] } } } } }, { \"locale\": \"gd\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Gaelic, Scottish (https://www.transifex.com/nextcloud/teams/64236/gd/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"gd\", \"Plural-Forms\": \"nplurals=4; plural=(n==1 || n==11) ? 0 : (n==2 || n==12) ? 1 : (n > 2 && n < 20) ? 2 : 3;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Gaelic, Scottish (https://www.transifex.com/nextcloud/teams/64236/gd/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: gd\\nPlural-Forms: nplurals=4; plural=(n==1 || n==11) ? 0 : (n==2 || n==12) ? 1 : (n > 2 && n < 20) ? 2 : 3;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"gl\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Miguel Anxo Bouzada , 2024\", \"Language-Team\": \"Galician (https://app.transifex.com/nextcloud/teams/64236/gl/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"gl\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nMiguel Anxo Bouzada , 2024\\n\" }, \"msgstr\": [\"Last-Translator: Miguel Anxo Bouzada , 2024\\nLanguage-Team: Galician (https://app.transifex.com/nextcloud/teams/64236/gl/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: gl\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{filename}\" contains invalid characters, how do you want to continue?': { \"msgid\": '\"{filename}\" contains invalid characters, how do you want to continue?', \"msgstr\": [\"«{filename}» contén caracteres non válidos, como quere continuar?\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} conflito de ficheiros\", \"{count} conflitos de ficheiros\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} conflito de ficheiros en {dirname}\", \"{count} conflitos de ficheiros en {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"faltan {seconds} segundos\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"falta {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"faltan uns segundos\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Cancelar\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Cancela toda a operación\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Cancelar envíos\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Continuar\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Crear un novo\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"calculando canto tempo falta\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Versión existente\"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Se selecciona ambas as versións, o ficheiro entrante terá un número engadido ao seu nome.\"] }, \"Invalid file name\": { \"msgid\": \"Invalid file name\", \"msgstr\": [\"O nome de ficheiro non é válido\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Data da última modificación descoñecida\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nova\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Nova versión\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"detido\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Vista previa da imaxe\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Renomear\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Marcar todas as caixas de selección\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Seleccionar todos os ficheiros existentes\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Seleccionar todos os ficheiros novos\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Omitir\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Omita este ficheiro\", \"Omitir {count} ficheiros\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Tamaño descoñecido\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Enviar ficheiros\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Enviar cartafoles\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Enviar dende o dispositivo\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"O envío foi cancelado\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Progreso do envío\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Cando se selecciona un cartafol entrante, tamén se sobrescribirán os ficheiros en conflito dentro del.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Cando se selecciona un cartafol entrante, o contido escríbese no cartafol existente e lévase a cabo unha resolución recursiva de conflitos.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Que ficheiros quere conservar?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Debe seleccionar polo menos unha versión de cada ficheiro para continuar.\"] } } } } }, { \"locale\": \"he\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Hebrew (https://www.transifex.com/nextcloud/teams/64236/he/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"he\", \"Plural-Forms\": \"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n == 2 && n % 1 == 0) ? 1: (n % 10 == 0 && n % 1 == 0 && n > 10) ? 2 : 3;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Hebrew (https://www.transifex.com/nextcloud/teams/64236/he/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: he\\nPlural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n == 2 && n % 1 == 0) ? 1: (n % 10 == 0 && n % 1 == 0 && n > 10) ? 2 : 3;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"hi_IN\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Hindi (India) (https://www.transifex.com/nextcloud/teams/64236/hi_IN/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"hi_IN\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Hindi (India) (https://www.transifex.com/nextcloud/teams/64236/hi_IN/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: hi_IN\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"hr\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Croatian (https://www.transifex.com/nextcloud/teams/64236/hr/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"hr\", \"Plural-Forms\": \"nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Croatian (https://www.transifex.com/nextcloud/teams/64236/hr/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: hr\\nPlural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"hsb\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Upper Sorbian (https://www.transifex.com/nextcloud/teams/64236/hsb/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"hsb\", \"Plural-Forms\": \"nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Upper Sorbian (https://www.transifex.com/nextcloud/teams/64236/hsb/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: hsb\\nPlural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"hu\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Hungarian (https://www.transifex.com/nextcloud/teams/64236/hu/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"hu\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Hungarian (https://www.transifex.com/nextcloud/teams/64236/hu/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: hu\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"hu_HU\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Balázs Úr, 2022\", \"Language-Team\": \"Hungarian (Hungary) (https://www.transifex.com/nextcloud/teams/64236/hu_HU/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"hu_HU\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nBalázs Meskó , 2022\\nBalázs Úr, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Balázs Úr, 2022\\nLanguage-Team: Hungarian (Hungary) (https://www.transifex.com/nextcloud/teams/64236/hu_HU/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: hu_HU\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{} másodperc van hátra\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"{time} van hátra\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"pár másodperc van hátra\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Hozzáadás\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Feltöltések megszakítása\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"hátralévő idő becslése\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"szüneteltetve\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Fájlok feltöltése\"] } } } } }, { \"locale\": \"hy\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Armenian (https://www.transifex.com/nextcloud/teams/64236/hy/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"hy\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Armenian (https://www.transifex.com/nextcloud/teams/64236/hy/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: hy\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ia\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Interlingua (https://www.transifex.com/nextcloud/teams/64236/ia/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ia\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Interlingua (https://www.transifex.com/nextcloud/teams/64236/ia/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ia\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"id\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Linerly , 2023\", \"Language-Team\": \"Indonesian (https://app.transifex.com/nextcloud/teams/64236/id/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"id\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ , 2023\\nEmpty Slot Filler, 2023\\nLinerly , 2023\\n\" }, \"msgstr\": [\"Last-Translator: Linerly , 2023\\nLanguage-Team: Indonesian (https://app.transifex.com/nextcloud/teams/64236/id/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: id\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} berkas berkonflik\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} berkas berkonflik dalam {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} detik tersisa\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} tersisa\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"tinggal sebentar lagi\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Batalkan unggahan\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Lanjutkan\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"memperkirakan waktu yang tersisa\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Versi yang ada\"] }, \"If you select both versions, the copied file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the copied file will have a number added to its name.\", \"msgstr\": [\"Jika Anda memilih kedua versi, nama berkas yang disalin akan ditambahi angka.\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Tanggal perubahan terakhir tidak diketahui\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Baru\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Versi baru\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"dijeda\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Gambar pratinjau\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Pilih semua kotak centang\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Pilih semua berkas yang ada\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Pilih semua berkas baru\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Lewati {count} berkas\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Ukuran tidak diketahui\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"Unggahan dibatalkan\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Unggah berkas\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Berkas mana yang Anda ingin tetap simpan?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Anda harus memilih setidaknya satu versi dari masing-masing berkas untuk melanjutkan.\"] } } } } }, { \"locale\": \"ig\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Igbo (https://www.transifex.com/nextcloud/teams/64236/ig/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ig\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Igbo (https://www.transifex.com/nextcloud/teams/64236/ig/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ig\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"is\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Sveinn í Felli , 2023\", \"Language-Team\": \"Icelandic (https://app.transifex.com/nextcloud/teams/64236/is/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"is\", \"Plural-Forms\": \"nplurals=2; plural=(n % 10 != 1 || n % 100 == 11);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nSveinn í Felli , 2023\\n\" }, \"msgstr\": [\"Last-Translator: Sveinn í Felli , 2023\\nLanguage-Team: Icelandic (https://app.transifex.com/nextcloud/teams/64236/is/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: is\\nPlural-Forms: nplurals=2; plural=(n % 10 != 1 || n % 100 == 11);\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} árekstur skráa\", \"{count} árekstrar skráa\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} árekstur skráa í {dirname}\", \"{count} árekstrar skráa í {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} sekúndur eftir\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} eftir\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"nokkrar sekúndur eftir\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Hætta við innsendingar\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Halda áfram\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"áætla tíma sem eftir er\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Fyrirliggjandi útgáfa\"] }, \"If you select both versions, the copied file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the copied file will have a number added to its name.\", \"msgstr\": [\"Ef þú velur báðar útgáfur, þá mun verða bætt tölustaf aftan við heiti afrituðu skrárinnar.\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Síðasta breytingadagsetning er óþekkt\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nýtt\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Ný útgáfa\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"í bið\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Forskoðun myndar\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Velja gátreiti\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Velja allar fyrirliggjandi skrár\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Velja allar nýjar skrár\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Sleppa þessari skrá\", \"Sleppa {count} skrám\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Óþekkt stærð\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"Hætt við innsendingu\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Senda inn skrár\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Hvaða skrám vilt þú vilt halda eftir?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Þú verður að velja að minnsta kosti eina útgáfu af hverri skrá til að halda áfram.\"] } } } } }, { \"locale\": \"it\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Random_R, 2023\", \"Language-Team\": \"Italian (https://app.transifex.com/nextcloud/teams/64236/it/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"it\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ , 2023\\nLep Lep, 2023\\nRandom_R, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Random_R, 2023\\nLanguage-Team: Italian (https://app.transifex.com/nextcloud/teams/64236/it/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: it\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} file in conflitto\", \"{count} file in conflitto\", \"{count} file in conflitto\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} file in conflitto in {dirname}\", \"{count} file in conflitto in {dirname}\", \"{count} file in conflitto in {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} secondi rimanenti \"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} rimanente\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"alcuni secondi rimanenti\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Annulla i caricamenti\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Continua\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"calcolo il tempo rimanente\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Versione esistente\"] }, \"If you select both versions, the copied file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the copied file will have a number added to its name.\", \"msgstr\": [\"Se selezioni entrambe le versioni, nel nome del file copiato verrà aggiunto un numero \"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Ultima modifica sconosciuta\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nuovo\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Nuova versione\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pausa\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Anteprima immagine\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Seleziona tutte le caselle\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Seleziona tutti i file esistenti\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Seleziona tutti i nuovi file\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Salta questo file\", \"Salta {count} file\", \"Salta {count} file\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Dimensione sconosciuta\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"Caricamento cancellato\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Carica i file\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Quali file vuoi mantenere?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Devi selezionare almeno una versione di ogni file per continuare\"] } } } } }, { \"locale\": \"it_IT\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Italian (Italy) (https://www.transifex.com/nextcloud/teams/64236/it_IT/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"it_IT\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Italian (Italy) (https://www.transifex.com/nextcloud/teams/64236/it_IT/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: it_IT\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ja_JP\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"かたかめ, 2022\", \"Language-Team\": \"Japanese (Japan) (https://www.transifex.com/nextcloud/teams/64236/ja_JP/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ja_JP\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nT.S, 2022\\nかたかめ, 2022\\n\" }, \"msgstr\": [\"Last-Translator: かたかめ, 2022\\nLanguage-Team: Japanese (Japan) (https://www.transifex.com/nextcloud/teams/64236/ja_JP/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ja_JP\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"残り {seconds} 秒\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"残り {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"残り数秒\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"追加\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"アップロードをキャンセル\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"概算残り時間\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"一時停止中\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"ファイルをアップデート\"] } } } } }, { \"locale\": \"ka\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Georgian (https://www.transifex.com/nextcloud/teams/64236/ka/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ka\", \"Plural-Forms\": \"nplurals=2; plural=(n!=1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Georgian (https://www.transifex.com/nextcloud/teams/64236/ka/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ka\\nPlural-Forms: nplurals=2; plural=(n!=1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ka_GE\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Georgian (Georgia) (https://www.transifex.com/nextcloud/teams/64236/ka_GE/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ka_GE\", \"Plural-Forms\": \"nplurals=2; plural=(n!=1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Georgian (Georgia) (https://www.transifex.com/nextcloud/teams/64236/ka_GE/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ka_GE\\nPlural-Forms: nplurals=2; plural=(n!=1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"kab\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"ZiriSut, 2023\", \"Language-Team\": \"Kabyle (https://app.transifex.com/nextcloud/teams/64236/kab/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"kab\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nZiriSut, 2023\\n\" }, \"msgstr\": [\"Last-Translator: ZiriSut, 2023\\nLanguage-Team: Kabyle (https://app.transifex.com/nextcloud/teams/64236/kab/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: kab\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} tesdatin i d-yeqqimen\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"{time} i d-yeqqimen\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"qqiment-d kra n tesdatin kan\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Rnu\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Sefsex asali\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"asizel n wakud i d-yeqqimen\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"yeḥbes\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Sali-d ifuyla\"] } } } } }, { \"locale\": \"kk\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Kazakh (https://www.transifex.com/nextcloud/teams/64236/kk/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"kk\", \"Plural-Forms\": \"nplurals=2; plural=(n!=1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Kazakh (https://www.transifex.com/nextcloud/teams/64236/kk/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: kk\\nPlural-Forms: nplurals=2; plural=(n!=1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"km\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Khmer (https://www.transifex.com/nextcloud/teams/64236/km/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"km\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Khmer (https://www.transifex.com/nextcloud/teams/64236/km/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: km\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"kn\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Kannada (https://www.transifex.com/nextcloud/teams/64236/kn/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"kn\", \"Plural-Forms\": \"nplurals=2; plural=(n > 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Kannada (https://www.transifex.com/nextcloud/teams/64236/kn/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: kn\\nPlural-Forms: nplurals=2; plural=(n > 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ko\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"이상오, 2024\", \"Language-Team\": \"Korean (https://app.transifex.com/nextcloud/teams/64236/ko/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ko\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\n이상오, 2024\\n\" }, \"msgstr\": [\"Last-Translator: 이상오, 2024\\nLanguage-Team: Korean (https://app.transifex.com/nextcloud/teams/64236/ko/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ko\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, '\"{filename}\" contains invalid characters, how do you want to continue?': { \"msgid\": '\"{filename}\" contains invalid characters, how do you want to continue?', \"msgstr\": ['\"{filename}\"에 유효하지 않은 문자가 있습니다, 계속하시겠습니까?'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count}개의 파일이 충돌함\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{dirname}에서 {count}개의 파일이 충돌함\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds}초 남음\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} 남음\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"곧 완료\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"취소\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"전체 작업을 취소\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"업로드 취소\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"확인\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"새로 만들기\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"남은 시간 계산\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"현재 버전\"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"두 파일을 모두 선택하면, 들어오는 파일의 이름에 번호가 추가됩니다.\"] }, \"Invalid file name\": { \"msgid\": \"Invalid file name\", \"msgstr\": [\"잘못된 파일 이름\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"최근 수정일 알 수 없음\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"새로 만들기\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"새 버전\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"일시정지됨\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"미리보기 이미지\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"이름 바꾸기\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"모든 체크박스 선택\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"기존 파일을 모두 선택\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"새로운 파일을 모두 선택\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"건너뛰기\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"{count}개의 파일 넘기기\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"크기를 알 수 없음\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"파일 업로드\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"폴더 업로드\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"장치에서 업로드\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"업로드가 취소되었습니다.\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"업로드 진행도\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"들어오는 폴더를 선택했다면, 충돌하는 내부 파일들은 덮어쓰기 됩니다.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"들어오는 폴더를 선택했다면 내용물이 그 기존 폴더 안에 작성되고, 전체적으로 충돌 해결을 수행합니다.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"어떤 파일을 보존하시겠습니까?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"계속하기 위해서는 한 파일에 최소 하나의 버전을 선택해야 합니다.\"] } } } } }, { \"locale\": \"la\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Latin (https://www.transifex.com/nextcloud/teams/64236/la/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"la\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Latin (https://www.transifex.com/nextcloud/teams/64236/la/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: la\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"lb\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Luxembourgish (https://www.transifex.com/nextcloud/teams/64236/lb/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"lb\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Luxembourgish (https://www.transifex.com/nextcloud/teams/64236/lb/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: lb\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"lo\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Lao (https://www.transifex.com/nextcloud/teams/64236/lo/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"lo\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Lao (https://www.transifex.com/nextcloud/teams/64236/lo/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: lo\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"lt_LT\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Lithuanian (Lithuania) (https://www.transifex.com/nextcloud/teams/64236/lt_LT/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"lt_LT\", \"Plural-Forms\": \"nplurals=4; plural=(n % 10 == 1 && (n % 100 > 19 || n % 100 < 11) ? 0 : (n % 10 >= 2 && n % 10 <=9) && (n % 100 > 19 || n % 100 < 11) ? 1 : n % 1 != 0 ? 2: 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Lithuanian (Lithuania) (https://www.transifex.com/nextcloud/teams/64236/lt_LT/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: lt_LT\\nPlural-Forms: nplurals=4; plural=(n % 10 == 1 && (n % 100 > 19 || n % 100 < 11) ? 0 : (n % 10 >= 2 && n % 10 <=9) && (n % 100 > 19 || n % 100 < 11) ? 1 : n % 1 != 0 ? 2: 3);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"lv\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Latvian (https://www.transifex.com/nextcloud/teams/64236/lv/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"lv\", \"Plural-Forms\": \"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Latvian (https://www.transifex.com/nextcloud/teams/64236/lv/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: lv\\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"mk\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Сашко Тодоров , 2022\", \"Language-Team\": \"Macedonian (https://www.transifex.com/nextcloud/teams/64236/mk/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"mk\", \"Plural-Forms\": \"nplurals=2; plural=(n % 10 == 1 && n % 100 != 11) ? 0 : 1;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nСашко Тодоров , 2022\\n\" }, \"msgstr\": [\"Last-Translator: Сашко Тодоров , 2022\\nLanguage-Team: Macedonian (https://www.transifex.com/nextcloud/teams/64236/mk/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: mk\\nPlural-Forms: nplurals=2; plural=(n % 10 == 1 && n % 100 != 11) ? 0 : 1;\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"преостануваат {seconds} секунди\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"преостанува {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"уште неколку секунди\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Додади\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Прекини прикачување\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"приближно преостанато време\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"паузирано\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Прикачување датотеки\"] } } } } }, { \"locale\": \"mn\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"BATKHUYAG Ganbold, 2023\", \"Language-Team\": \"Mongolian (https://app.transifex.com/nextcloud/teams/64236/mn/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"mn\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nBATKHUYAG Ganbold, 2023\\n\" }, \"msgstr\": [\"Last-Translator: BATKHUYAG Ganbold, 2023\\nLanguage-Team: Mongolian (https://app.transifex.com/nextcloud/teams/64236/mn/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: mn\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} секунд үлдсэн\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"{time} үлдсэн\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"хэдхэн секунд үлдсэн\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Нэмэх\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Илгээлтийг цуцлах\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"Үлдсэн хугацааг тооцоолж байна\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"түр зогсоосон\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Файл илгээх\"] } } } } }, { \"locale\": \"mr\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Marathi (https://www.transifex.com/nextcloud/teams/64236/mr/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"mr\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Marathi (https://www.transifex.com/nextcloud/teams/64236/mr/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: mr\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ms_MY\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Malay (Malaysia) (https://www.transifex.com/nextcloud/teams/64236/ms_MY/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ms_MY\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Malay (Malaysia) (https://www.transifex.com/nextcloud/teams/64236/ms_MY/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ms_MY\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"my\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Burmese (https://www.transifex.com/nextcloud/teams/64236/my/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"my\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Burmese (https://www.transifex.com/nextcloud/teams/64236/my/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: my\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"nb_NO\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Syvert Fossdal, 2024\", \"Language-Team\": \"Norwegian Bokmål (Norway) (https://app.transifex.com/nextcloud/teams/64236/nb_NO/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"nb_NO\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ , 2023\\nSyvert Fossdal, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Syvert Fossdal, 2024\\nLanguage-Team: Norwegian Bokmål (Norway) (https://app.transifex.com/nextcloud/teams/64236/nb_NO/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: nb_NO\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} file conflict\", \"{count} filkonflikter\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} file conflict in {dirname}\", \"{count} filkonflikter i {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} sekunder igjen\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} igjen\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"noen få sekunder igjen\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Avbryt opplastninger\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Fortsett\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"Estimerer tid igjen\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Gjeldende versjon\"] }, \"If you select both versions, the copied file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the copied file will have a number added to its name.\", \"msgstr\": [\"Hvis du velger begge versjoner, vil den kopierte filen få et tall lagt til navnet.\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Siste gang redigert ukjent\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Ny\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Ny versjon\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pauset\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Forhåndsvis bilde\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Velg alle\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Velg alle eksisterende filer\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Velg alle nye filer\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Skip this file\", \"Hopp over {count} filer\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Ukjent størrelse\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"Opplasting avbrutt\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Last opp filer\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Fremdrift, opplasting\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Hvilke filer vil du beholde?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Du må velge minst en versjon av hver fil for å fortsette.\"] } } } } }, { \"locale\": \"ne\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Nepali (https://www.transifex.com/nextcloud/teams/64236/ne/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ne\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Nepali (https://www.transifex.com/nextcloud/teams/64236/ne/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ne\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"nl\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Rico , 2023\", \"Language-Team\": \"Dutch (https://app.transifex.com/nextcloud/teams/64236/nl/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"nl\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nRico , 2023\\n\" }, \"msgstr\": [\"Last-Translator: Rico , 2023\\nLanguage-Team: Dutch (https://app.transifex.com/nextcloud/teams/64236/nl/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: nl\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"Nog {seconds} seconden\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"{seconds} over\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"Nog een paar seconden\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Voeg toe\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Uploads annuleren\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"Schatting van de resterende tijd\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"Gepauzeerd\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Upload bestanden\"] } } } } }, { \"locale\": \"nn\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Norwegian Nynorsk (https://www.transifex.com/nextcloud/teams/64236/nn/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"nn\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Norwegian Nynorsk (https://www.transifex.com/nextcloud/teams/64236/nn/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: nn\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"nn_NO\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Norwegian Nynorsk (Norway) (https://www.transifex.com/nextcloud/teams/64236/nn_NO/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"nn_NO\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Norwegian Nynorsk (Norway) (https://www.transifex.com/nextcloud/teams/64236/nn_NO/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: nn_NO\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"oc\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Occitan (post 1500) (https://www.transifex.com/nextcloud/teams/64236/oc/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"oc\", \"Plural-Forms\": \"nplurals=2; plural=(n > 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Occitan (post 1500) (https://www.transifex.com/nextcloud/teams/64236/oc/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: oc\\nPlural-Forms: nplurals=2; plural=(n > 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"pl\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Piotr Strębski , 2024\", \"Language-Team\": \"Polish (https://app.transifex.com/nextcloud/teams/64236/pl/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"pl\", \"Plural-Forms\": \"nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nPiotr Strębski , 2024\\n\" }, \"msgstr\": [\"Last-Translator: Piotr Strębski , 2024\\nLanguage-Team: Polish (https://app.transifex.com/nextcloud/teams/64236/pl/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: pl\\nPlural-Forms: nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"konflikt 1 pliku\", \"{count} konfliktów plików\", \"{count} konfliktów plików\", \"{count} konfliktów plików\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} konfliktowy plik w {dirname}\", \"{count} konfliktowych plików w {dirname}\", \"{count} konfliktowych plików w {dirname}\", \"{count} konfliktowych plików w {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"Pozostało {seconds} sekund\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"Pozostało {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"Pozostało kilka sekund\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Anuluj\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Anuluj całą operację\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Anuluj wysyłanie\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Kontynuuj\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"Szacowanie pozostałego czasu\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Istniejąca wersja\"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Jeśli wybierzesz obie wersje, do nazwy pliku przychodzącego zostanie dodany numer.\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Nieznana data ostatniej modyfikacji\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nowy\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Nowa wersja\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"Wstrzymane\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Podgląd obrazu\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Zaznacz wszystkie boxy\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Zaznacz wszystkie istniejące pliki\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Zaznacz wszystkie nowe pliki\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Pomiń 1 plik\", \"Pomiń {count} plików\", \"Pomiń {count} plików\", \"Pomiń {count} plików\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Nieznany rozmiar\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"Anulowano wysyłanie\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Wyślij pliki\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Postęp wysyłania\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Po wybraniu folderu przychodzącego wszelkie znajdujące się w nim pliki powodujące konflikt również zostaną nadpisane.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Po wybraniu folderu przychodzącego zawartość jest zapisywana w istniejącym folderze i przeprowadzane jest rekursywne rozwiązywanie konfliktów.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Które pliki chcesz zachować?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Aby kontynuować, musisz wybrać co najmniej jedną wersję każdego pliku.\"] } } } } }, { \"locale\": \"ps\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Pashto (https://www.transifex.com/nextcloud/teams/64236/ps/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ps\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Pashto (https://www.transifex.com/nextcloud/teams/64236/ps/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ps\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"pt_BR\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Leonardo Colman Lopes , 2024\", \"Language-Team\": \"Portuguese (Brazil) (https://app.transifex.com/nextcloud/teams/64236/pt_BR/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"pt_BR\", \"Plural-Forms\": \"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nLeonardo Colman Lopes , 2024\\n\" }, \"msgstr\": [\"Last-Translator: Leonardo Colman Lopes , 2024\\nLanguage-Team: Portuguese (Brazil) (https://app.transifex.com/nextcloud/teams/64236/pt_BR/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: pt_BR\\nPlural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} arquivos em conflito\", \"{count} arquivos em conflito\", \"{count} arquivos em conflito\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} conflitos de arquivo em {dirname}\", \"{count} conflitos de arquivo em {dirname}\", \"{count} conflitos de arquivo em {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} segundos restantes\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} restante\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"alguns segundos restantes\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Cancelar\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Cancelar a operação inteira\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Cancelar uploads\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Continuar\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimando tempo restante\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Versão existente\"] }, \"If you select both versions, the copied file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the copied file will have a number added to its name.\", \"msgstr\": [\"Se você selecionar ambas as versões, o arquivo copiado terá um número adicionado ao seu nome.\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Data da última modificação desconhecida\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Novo\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Nova versão\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pausado\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Visualizar imagem\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Marque todas as caixas de seleção\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Selecione todos os arquivos existentes\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Selecione todos os novos arquivos\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Ignorar {count} arquivos\", \"Ignorar {count} arquivos\", \"Ignorar {count} arquivos\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Tamanho desconhecido\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"Envio cancelado\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Enviar arquivos\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Envio em progresso\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Quando uma pasta é selecionada, quaisquer arquivos dentro dela também serão sobrescritos.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Quais arquivos você deseja manter?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Você precisa selecionar pelo menos uma versão de cada arquivo para continuar.\"] } } } } }, { \"locale\": \"pt_PT\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Manuela Silva , 2022\", \"Language-Team\": \"Portuguese (Portugal) (https://www.transifex.com/nextcloud/teams/64236/pt_PT/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"pt_PT\", \"Plural-Forms\": \"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nManuela Silva , 2022\\n\" }, \"msgstr\": [\"Last-Translator: Manuela Silva , 2022\\nLanguage-Team: Portuguese (Portugal) (https://www.transifex.com/nextcloud/teams/64236/pt_PT/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: pt_PT\\nPlural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"faltam {seconds} segundo(s)\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"faltam {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"faltam uns segundos\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Adicionar\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Cancelar envios\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"tempo em falta estimado\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pausado\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Enviar ficheiros\"] } } } } }, { \"locale\": \"ro\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Mădălin Vasiliu , 2022\", \"Language-Team\": \"Romanian (https://www.transifex.com/nextcloud/teams/64236/ro/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ro\", \"Plural-Forms\": \"nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?2:1));\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nMădălin Vasiliu , 2022\\n\" }, \"msgstr\": [\"Last-Translator: Mădălin Vasiliu , 2022\\nLanguage-Team: Romanian (https://www.transifex.com/nextcloud/teams/64236/ro/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ro\\nPlural-Forms: nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?2:1));\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} secunde rămase\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"{time} rămas\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"câteva secunde rămase\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Adaugă\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Anulați încărcările\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimarea timpului rămas\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pus pe pauză\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Încarcă fișiere\"] } } } } }, { \"locale\": \"ru\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Влад, 2024\", \"Language-Team\": \"Russian (https://app.transifex.com/nextcloud/teams/64236/ru/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ru\", \"Plural-Forms\": \"nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nAlex , 2024\\nВлад, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Влад, 2024\\nLanguage-Team: Russian (https://app.transifex.com/nextcloud/teams/64236/ru/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ru\\nPlural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\\n\"] }, '\"{filename}\" contains invalid characters, how do you want to continue?': { \"msgid\": '\"{filename}\" contains invalid characters, how do you want to continue?', \"msgstr\": ['\"{filename}\" содержит недопустимые символы, хотите продолжить?'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"конфликт {count} файла\", \"конфликт {count} файлов\", \"конфликт {count} файлов\", \"конфликт {count} файлов\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"конфликт {count} файла в {dirname}\", \"конфликт {count} файлов в {dirname}\", \"конфликт {count} файлов в {dirname}\", \"конфликт {count} файлов в {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"осталось {seconds} секунд\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"осталось {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"осталось несколько секунд\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Отмена\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Отменить всю операцию целиком\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Отменить загрузки\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Продолжить\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Создать новое\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"оценка оставшегося времени\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Текущая версия\"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Если вы выберете обе версии, к имени входящего файла будет добавлен номер.\"] }, \"Invalid file name\": { \"msgid\": \"Invalid file name\", \"msgstr\": [\"Имя файла недопустимо\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Дата последнего изменения неизвестна\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Новый\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Новая версия\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"приостановлено\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Предварительный просмотр\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Переименовать\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Установить все флажки\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Выбрать все существующие файлы\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Выбрать все новые файлы\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Пропуск\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Пропустить файл\", \"Пропустить {count} файла\", \"Пропустить {count} файлов\", \"Пропустить {count} файлов\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Неизвестный размер\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Загрузка файлов\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Загрузка папок\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Загрузка с устройства\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Загрузка была отменена\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Состояние передачи на сервер\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Когда выбрана входящая папка, все конфликтующие файлы в ней также будут перезаписаны.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Когда выбрана входящая папка, содержимое записывается в существующую папку и выполняется рекурсивное разрешение конфликтов.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Какие файлы вы хотите сохранить?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Для продолжения вам нужно выбрать по крайней мере одну версию каждого файла.\"] } } } } }, { \"locale\": \"ru_RU\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Russian (Russia) (https://www.transifex.com/nextcloud/teams/64236/ru_RU/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ru_RU\", \"Plural-Forms\": \"nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Russian (Russia) (https://www.transifex.com/nextcloud/teams/64236/ru_RU/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ru_RU\\nPlural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"sc\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Sardinian (https://www.transifex.com/nextcloud/teams/64236/sc/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sc\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Sardinian (https://www.transifex.com/nextcloud/teams/64236/sc/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sc\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"si\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Sinhala (https://www.transifex.com/nextcloud/teams/64236/si/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"si\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Sinhala (https://www.transifex.com/nextcloud/teams/64236/si/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: si\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"si_LK\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Sinhala (Sri Lanka) (https://www.transifex.com/nextcloud/teams/64236/si_LK/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"si_LK\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Sinhala (Sri Lanka) (https://www.transifex.com/nextcloud/teams/64236/si_LK/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: si_LK\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"sk_SK\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Slovak (Slovakia) (https://www.transifex.com/nextcloud/teams/64236/sk_SK/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sk_SK\", \"Plural-Forms\": \"nplurals=4; plural=(n % 1 == 0 && n == 1 ? 0 : n % 1 == 0 && n >= 2 && n <= 4 ? 1 : n % 1 != 0 ? 2: 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Slovak (Slovakia) (https://www.transifex.com/nextcloud/teams/64236/sk_SK/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sk_SK\\nPlural-Forms: nplurals=4; plural=(n % 1 == 0 && n == 1 ? 0 : n % 1 == 0 && n >= 2 && n <= 4 ? 1 : n % 1 != 0 ? 2: 3);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"sl\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Matej Urbančič <>, 2022\", \"Language-Team\": \"Slovenian (https://www.transifex.com/nextcloud/teams/64236/sl/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sl\", \"Plural-Forms\": \"nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nMatej Urbančič <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Matej Urbančič <>, 2022\\nLanguage-Team: Slovenian (https://www.transifex.com/nextcloud/teams/64236/sl/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sl\\nPlural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"še {seconds} sekund\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"še {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"še nekaj sekund\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Dodaj\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Prekliči pošiljanje\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"ocenjen čas do konca\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"v premoru\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Pošlji datoteke\"] } } } } }, { \"locale\": \"sl_SI\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Slovenian (Slovenia) (https://www.transifex.com/nextcloud/teams/64236/sl_SI/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sl_SI\", \"Plural-Forms\": \"nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Slovenian (Slovenia) (https://www.transifex.com/nextcloud/teams/64236/sl_SI/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sl_SI\\nPlural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"sq\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Albanian (https://www.transifex.com/nextcloud/teams/64236/sq/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sq\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Albanian (https://www.transifex.com/nextcloud/teams/64236/sq/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sq\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"sr\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Иван Пешић, 2023\", \"Language-Team\": \"Serbian (https://app.transifex.com/nextcloud/teams/64236/sr/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sr\", \"Plural-Forms\": \"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ , 2023\\nИван Пешић, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Иван Пешић, 2023\\nLanguage-Team: Serbian (https://app.transifex.com/nextcloud/teams/64236/sr/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sr\\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} фајл конфликт\", \"{count} фајл конфликта\", \"{count} фајл конфликта\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} фајл конфликт у {dirname}\", \"{count} фајл конфликта у {dirname}\", \"{count} фајл конфликта у {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"преостало је {seconds} секунди\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} преостало\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"преостало је неколико секунди\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Обустави отпремања\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Настави\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"процена преосталог времена\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Постојећа верзија\"] }, \"If you select both versions, the copied file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the copied file will have a number added to its name.\", \"msgstr\": [\"Ако изаберете обе верзије, на име копираног фајла ће се додати број.\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Није познат датум последње измене\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Ново\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Нова верзија\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"паузирано\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Слика прегледа\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Штиклирај сва поља за штиклирање\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Изабери све постојеће фајлове\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Изабери све нове фајлове\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Прескочи овај фајл\", \"Прескочи {count} фајла\", \"Прескочи {count} фајлова\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Непозната величина\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"Отпремање је отказано\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Отпреми фајлове\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Напредак отпремања\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Које фајлове желите да задржите?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Морате да изаберете барем једну верзију сваког фајла да наставите.\"] } } } } }, { \"locale\": \"sr@latin\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Serbian (Latin) (https://www.transifex.com/nextcloud/teams/64236/sr@latin/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sr@latin\", \"Plural-Forms\": \"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Serbian (Latin) (https://www.transifex.com/nextcloud/teams/64236/sr@latin/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sr@latin\\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"sv\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Magnus Höglund, 2024\", \"Language-Team\": \"Swedish (https://app.transifex.com/nextcloud/teams/64236/sv/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sv\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nMagnus Höglund, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Magnus Höglund, 2024\\nLanguage-Team: Swedish (https://app.transifex.com/nextcloud/teams/64236/sv/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sv\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{filename}\" contains invalid characters, how do you want to continue?': { \"msgid\": '\"{filename}\" contains invalid characters, how do you want to continue?', \"msgstr\": ['\"{filename}\" innehåller ogiltiga tecken, hur vill du fortsätta?'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} filkonflikt\", \"{count} filkonflikter\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} filkonflikt i {dirname}\", \"{count} filkonflikter i {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} sekunder kvarstår\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} kvarstår\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"några sekunder kvar\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Avbryt\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Avbryt hela operationen\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Avbryt uppladdningar\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Fortsätt\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Skapa ny\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"uppskattar kvarstående tid\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Nuvarande version\"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Om du väljer båda versionerna kommer den inkommande filen att läggas till ett nummer i namnet.\"] }, \"Invalid file name\": { \"msgid\": \"Invalid file name\", \"msgstr\": [\"Ogiltigt filnamn\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Senaste ändringsdatum okänt\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Ny\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Ny version\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pausad\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Förhandsgranska bild\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Byt namn\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Markera alla kryssrutor\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Välj alla befintliga filer\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Välj alla nya filer\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Hoppa över\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Hoppa över denna fil\", \"Hoppa över {count} filer\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Okänd storlek\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Ladda upp filer\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Ladda upp mappar\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Ladda upp från enhet\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Uppladdningen har avbrutits\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Uppladdningsförlopp\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"När en inkommande mapp väljs skrivs även alla konfliktande filer i den över.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"När en inkommande mapp väljs skrivs innehållet in i den befintliga mappen och en rekursiv konfliktlösning utförs.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Vilka filer vill du behålla?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Du måste välja minst en version av varje fil för att fortsätta.\"] } } } } }, { \"locale\": \"sw\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Swahili (https://www.transifex.com/nextcloud/teams/64236/sw/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sw\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Swahili (https://www.transifex.com/nextcloud/teams/64236/sw/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sw\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ta\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Tamil (https://www.transifex.com/nextcloud/teams/64236/ta/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ta\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Tamil (https://www.transifex.com/nextcloud/teams/64236/ta/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ta\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ta_LK\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Tamil (Sri-Lanka) (https://www.transifex.com/nextcloud/teams/64236/ta_LK/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ta_LK\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Tamil (Sri-Lanka) (https://www.transifex.com/nextcloud/teams/64236/ta_LK/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ta_LK\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"th\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Thai (https://www.transifex.com/nextcloud/teams/64236/th/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"th\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Thai (https://www.transifex.com/nextcloud/teams/64236/th/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: th\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"th_TH\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Phongpanot Phairat , 2022\", \"Language-Team\": \"Thai (Thailand) (https://www.transifex.com/nextcloud/teams/64236/th_TH/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"th_TH\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nPhongpanot Phairat , 2022\\n\" }, \"msgstr\": [\"Last-Translator: Phongpanot Phairat , 2022\\nLanguage-Team: Thai (Thailand) (https://www.transifex.com/nextcloud/teams/64236/th_TH/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: th_TH\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"เหลืออีก {seconds} วินาที\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"เหลืออีก {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"เหลืออีกไม่กี่วินาที\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"เพิ่ม\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"ยกเลิกการอัปโหลด\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"กำลังคำนวณเวลาที่เหลือ\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"หยุดชั่วคราว\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"อัปโหลดไฟล์\"] } } } } }, { \"locale\": \"tk\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Turkmen (https://www.transifex.com/nextcloud/teams/64236/tk/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"tk\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Turkmen (https://www.transifex.com/nextcloud/teams/64236/tk/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: tk\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"tr\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Kaya Zeren , 2024\", \"Language-Team\": \"Turkish (https://app.transifex.com/nextcloud/teams/64236/tr/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"tr\", \"Plural-Forms\": \"nplurals=2; plural=(n > 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nKaya Zeren , 2024\\n\" }, \"msgstr\": [\"Last-Translator: Kaya Zeren , 2024\\nLanguage-Team: Turkish (https://app.transifex.com/nextcloud/teams/64236/tr/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: tr\\nPlural-Forms: nplurals=2; plural=(n > 1);\\n\"] }, '\"{filename}\" contains invalid characters, how do you want to continue?': { \"msgid\": '\"{filename}\" contains invalid characters, how do you want to continue?', \"msgstr\": ['\"{filename}\" içinde geçersiz karakterler var. Nasıl ilerlemek istersiniz?'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} dosya çakışması var\", \"{count} dosya çakışması var\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{dirname} klasöründe {count} dosya çakışması var\", \"{dirname} klasöründe {count} dosya çakışması var\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} saniye kaldı\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} kaldı\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"bir kaç saniye kaldı\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"İptal\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Tüm işlemi iptal et\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Yüklemeleri iptal et\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"İlerle\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Yeni ekle\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"öngörülen kalan süre\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Var olan sürüm\"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"İki sürümü de seçerseniz, gelen dosyanın adına bir sayı eklenir.\"] }, \"Invalid file name\": { \"msgid\": \"Invalid file name\", \"msgstr\": [\"Dosya adı geçersiz\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Son değiştirilme tarihi bilinmiyor\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Yeni\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Yeni sürüm\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"duraklatıldı\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Görsel ön izlemesi\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Yeniden adlandır\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Tüm kutuları işaretle\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Tüm var olan dosyaları seç\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Tüm yeni dosyaları seç\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Atla\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Bu dosyayı atla\", \"{count} dosyayı atla\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Boyut bilinmiyor\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Dosyaları yükle\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Klasörleri yükle\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Aygıttan yükle\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Yükleme iptal edildi\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Yükleme ilerlemesi\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Bir gelen klasör seçildiğinde, içindeki çakışan dosyaların da üzerine yazılır.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Bir gelen klasörü seçildiğinde içerik var olan klasöre yazılır ve yinelemeli bir çakışma çözümü uygulanır.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Hangi dosyaları tutmak istiyorsunuz?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"İlerlemek için her dosyanın en az bir sürümünü seçmelisiniz.\"] } } } } }, { \"locale\": \"ug\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Uyghur (https://www.transifex.com/nextcloud/teams/64236/ug/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ug\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Uyghur (https://www.transifex.com/nextcloud/teams/64236/ug/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ug\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"uk\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"O St , 2024\", \"Language-Team\": \"Ukrainian (https://app.transifex.com/nextcloud/teams/64236/uk/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"uk\", \"Plural-Forms\": \"nplurals=4; plural=(n % 1 == 0 && n % 10 == 1 && n % 100 != 11 ? 0 : n % 1 == 0 && n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 12 || n % 100 > 14) ? 1 : n % 1 == 0 && (n % 10 ==0 || (n % 10 >=5 && n % 10 <=9) || (n % 100 >=11 && n % 100 <=14 )) ? 2: 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nO St , 2024\\n\" }, \"msgstr\": [\"Last-Translator: O St , 2024\\nLanguage-Team: Ukrainian (https://app.transifex.com/nextcloud/teams/64236/uk/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: uk\\nPlural-Forms: nplurals=4; plural=(n % 1 == 0 && n % 10 == 1 && n % 100 != 11 ? 0 : n % 1 == 0 && n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 12 || n % 100 > 14) ? 1 : n % 1 == 0 && (n % 10 ==0 || (n % 10 >=5 && n % 10 <=9) || (n % 100 >=11 && n % 100 <=14 )) ? 2: 3);\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} конфліктний файл\", \"{count} конфліктних файли\", \"{count} конфліктних файлів\", \"{count} конфліктних файлів\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} конфліктний файл у каталозі {dirname}\", \"{count} конфліктних файли у каталозі {dirname}\", \"{count} конфліктних файлів у каталозі {dirname}\", \"{count} конфліктних файлів у каталозі {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"Залишилося {seconds} секунд\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"Залишилося {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"залишилося кілька секунд\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Скасувати\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Скасувати операцію повністю\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Скасувати завантаження\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Продовжити\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"оцінка часу, що залишився\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Присутня версія\"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Якщо буде вибрано обидві версії, до імени вхідного файлу було додано цифру.\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Дата останньої зміни невідома\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Нове\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Нова версія\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"призупинено\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Попередній перегляд\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Вибрати все\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Вибрати усі присутні файли\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Вибрати усі нові файли\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Пропустити файл\", \"Пропустити {count} файли\", \"Пропустити {count} файлів\", \"Пропустити {count} файлів\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Невідомий розмір\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"Завантаження скасовано\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Завантажити файли\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Поступ завантаження\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Усі конфліктні файли у вибраному каталозі призначення буде перезаписано поверх.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Якщо буде вибрано вхідний каталог, вміст буде записано до наявного каталогу та вирішено конфлікти у відповідних файлах каталогу та підкаталогів.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Які файли залишити?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Для продовження потрібно вибрати принаймні одну версію для кожного файлу.\"] } } } } }, { \"locale\": \"ur_PK\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Urdu (Pakistan) (https://www.transifex.com/nextcloud/teams/64236/ur_PK/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ur_PK\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Urdu (Pakistan) (https://www.transifex.com/nextcloud/teams/64236/ur_PK/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ur_PK\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"uz\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Uzbek (https://www.transifex.com/nextcloud/teams/64236/uz/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"uz\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Uzbek (https://www.transifex.com/nextcloud/teams/64236/uz/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: uz\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"vi\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Tung DangQuang, 2023\", \"Language-Team\": \"Vietnamese (https://app.transifex.com/nextcloud/teams/64236/vi/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"vi\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ , 2023\\nTung DangQuang, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Tung DangQuang, 2023\\nLanguage-Team: Vietnamese (https://app.transifex.com/nextcloud/teams/64236/vi/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: vi\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} Tập tin xung đột\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} tập tin lỗi trong {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"Còn {second} giây\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"Còn lại {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"Còn lại một vài giây\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Huỷ tải lên\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Tiếp Tục\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"Thời gian còn lại dự kiến\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Phiên Bản Hiện Tại\"] }, \"If you select both versions, the copied file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the copied file will have a number added to its name.\", \"msgstr\": [\"Nếu bạn chọn cả hai phiên bản, tệp được sao chép sẽ có thêm một số vào tên của nó.\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Ngày sửa dổi lần cuối không xác định\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Tạo Mới\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Phiên Bản Mới\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"đã tạm dừng\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Xem Trước Ảnh\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Chọn tất cả hộp checkbox\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Chọn tất cả các tập tin có sẵn\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Chọn tất cả các tập tin mới\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Bỏ Qua {count} tập tin\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Không rõ dung lượng\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"Dừng Tải Lên\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Tập tin tải lên\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Đang Tải Lên\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Bạn muốn giữ tập tin nào?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Bạn cần chọn ít nhất một phiên bản tập tin mới có thể tiếp tục\"] } } } } }, { \"locale\": \"zh_CN\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Hongbo Chen, 2023\", \"Language-Team\": \"Chinese (China) (https://app.transifex.com/nextcloud/teams/64236/zh_CN/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"zh_CN\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ , 2023\\nHongbo Chen, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Hongbo Chen, 2023\\nLanguage-Team: Chinese (China) (https://app.transifex.com/nextcloud/teams/64236/zh_CN/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: zh_CN\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count}文件冲突\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"在{dirname}目录下有{count}个文件冲突\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"剩余 {seconds} 秒\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"剩余 {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"还剩几秒\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"添加\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"取消上传\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"继续\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"估计剩余时间\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"版本已存在\"] }, \"If you select both versions, the copied file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the copied file will have a number added to its name.\", \"msgstr\": [\"如果选择所有的版本,新增版本的文件名为原文件名加数字\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"文件最后修改日期未知\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"新版本\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"已暂停\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"图片预览\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"选择所有的选择框\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"选择所有存在的文件\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"选择所有的新文件\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"跳过{count}个文件\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"文件大小未知\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"取消上传\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"上传文件\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"你要保留哪些文件?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"每个文件至少选择一个版本\"] } } } } }, { \"locale\": \"zh_HK\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Café Tango, 2024\", \"Language-Team\": \"Chinese (Hong Kong) (https://app.transifex.com/nextcloud/teams/64236/zh_HK/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"zh_HK\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nCafé Tango, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Café Tango, 2024\\nLanguage-Team: Chinese (Hong Kong) (https://app.transifex.com/nextcloud/teams/64236/zh_HK/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: zh_HK\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} 個檔案衝突\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{dirname} 中有 {count} 個檔案衝突\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"剩餘 {seconds} 秒\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"剩餘 {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"還剩幾秒\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"取消\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"取消整個操作\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"取消上傳\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"繼續\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"估計剩餘時間\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"既有版本\"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"若您選取兩個版本,傳入檔案的名稱將會新增編號。\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"最後修改日期不詳\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"新增\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"新版本 \"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"已暫停\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"預覽圖片\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"選取所有核取方塊\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"選取所有既有檔案\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"選取所有新檔案\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"略過 {count} 個檔案\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"大小不詳\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"已取消上傳\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"上傳檔案\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"上傳進度\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"選取傳入資料夾後,其中任何的衝突檔案都會被覆寫。\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"選擇傳入資料夾後,內容將寫入現有資料夾並執行遞歸衝突解決。\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"您想保留哪些檔案?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"您必須為每個檔案都至少選取一個版本以繼續。\"] } } } } }, { \"locale\": \"zh_TW\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"黃柏諺 , 2024\", \"Language-Team\": \"Chinese (Taiwan) (https://app.transifex.com/nextcloud/teams/64236/zh_TW/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"zh_TW\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\n黃柏諺 , 2024\\n\" }, \"msgstr\": [\"Last-Translator: 黃柏諺 , 2024\\nLanguage-Team: Chinese (Taiwan) (https://app.transifex.com/nextcloud/teams/64236/zh_TW/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: zh_TW\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} 個檔案衝突\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{dirname} 中有 {count} 個檔案衝突\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"剩餘 {seconds} 秒\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"剩餘 {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"還剩幾秒\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"取消\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"取消整個操作\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"取消上傳\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"繼續\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"估計剩餘時間\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"既有版本\"] }, \"If you select both versions, the copied file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the copied file will have a number added to its name.\", \"msgstr\": [\"若您選取兩個版本,複製的檔案的名稱將會新增編號。\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"最後修改日期未知\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"新增\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"新版本\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"已暫停\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"預覽圖片\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"選取所有核取方塊\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"選取所有既有檔案\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"選取所有新檔案\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"略過 {count} 檔案\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"未知大小\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"已取消上傳\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"上傳檔案\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"上傳進度\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"選取傳入資料夾後,其中任何的衝突檔案都會被覆寫。\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"您想保留哪些檔案?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"您必須為每個檔案都至少選取一個版本以繼續。\"] } } } } }].map((data) => gtBuilder.addTranslation(data.locale, data.json));\nconst gt = gtBuilder.build();\nconst n = gt.ngettext.bind(gt);\nconst t = gt.gettext.bind(gt);\n/**\n * @copyright 2019 Christoph Wurst \n *\n * @author Christoph Wurst \n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see .\n *\n */\nconst logger = getLoggerBuilder().setApp(\"@nextcloud/upload\").detectUser().build();\nvar Status = /* @__PURE__ */ ((Status2) => {\n Status2[Status2[\"IDLE\"] = 0] = \"IDLE\";\n Status2[Status2[\"UPLOADING\"] = 1] = \"UPLOADING\";\n Status2[Status2[\"PAUSED\"] = 2] = \"PAUSED\";\n return Status2;\n})(Status || {});\nclass Uploader {\n // Initialized via setter in the constructor\n _destinationFolder;\n _isPublic;\n // Global upload queue\n _uploadQueue = [];\n _jobQueue = new PQueue({ concurrency: 3 });\n _queueSize = 0;\n _queueProgress = 0;\n _queueStatus = 0;\n _notifiers = [];\n /**\n * Initialize uploader\n *\n * @param {boolean} isPublic are we in public mode ?\n * @param {Folder} destinationFolder the context folder to operate, relative to the root folder\n */\n constructor(isPublic = false, destinationFolder) {\n this._isPublic = isPublic;\n if (!destinationFolder) {\n const source = join(davRemoteURL, davRootPath);\n let owner;\n if (isPublic) {\n owner = \"anonymous\";\n } else {\n const user = getCurrentUser()?.uid;\n if (!user) {\n throw new Error(\"User is not logged in\");\n }\n owner = user;\n }\n destinationFolder = new Folder({\n id: 0,\n owner,\n permissions: Permission.ALL,\n root: davRootPath,\n source\n });\n }\n this.destination = destinationFolder;\n this._jobQueue.addListener(\"idle\", () => this.reset());\n logger.debug(\"Upload workspace initialized\", {\n destination: this.destination,\n root: this.root,\n isPublic,\n maxChunksSize: getMaxChunksSize()\n });\n }\n /**\n * Get the upload destination path relative to the root folder\n */\n get destination() {\n return this._destinationFolder;\n }\n /**\n * Set the upload destination path relative to the root folder\n */\n set destination(folder) {\n if (!folder) {\n throw new Error(\"Invalid destination folder\");\n }\n logger.debug(\"Destination set\", { folder });\n this._destinationFolder = folder;\n }\n /**\n * Get the root folder\n */\n get root() {\n return this._destinationFolder.source;\n }\n /**\n * Get the upload queue\n */\n get queue() {\n return this._uploadQueue;\n }\n reset() {\n this._uploadQueue.splice(0, this._uploadQueue.length);\n this._jobQueue.clear();\n this._queueSize = 0;\n this._queueProgress = 0;\n this._queueStatus = 0;\n }\n /**\n * Pause any ongoing upload(s)\n */\n pause() {\n this._jobQueue.pause();\n this._queueStatus = 2;\n }\n /**\n * Resume any pending upload(s)\n */\n start() {\n this._jobQueue.start();\n this._queueStatus = 1;\n this.updateStats();\n }\n /**\n * Get the upload queue stats\n */\n get info() {\n return {\n size: this._queueSize,\n progress: this._queueProgress,\n status: this._queueStatus\n };\n }\n updateStats() {\n const size = this._uploadQueue.map((upload2) => upload2.size).reduce((partialSum, a) => partialSum + a, 0);\n const uploaded = this._uploadQueue.map((upload2) => upload2.uploaded).reduce((partialSum, a) => partialSum + a, 0);\n this._queueSize = size;\n this._queueProgress = uploaded;\n if (this._queueStatus === 2) {\n return;\n }\n this._queueStatus = this._jobQueue.size > 0 ? 1 : 0;\n }\n addNotifier(notifier) {\n this._notifiers.push(notifier);\n }\n /**\n * Notify listeners of the upload completion\n * @param upload The upload that finished\n */\n _notifyAll(upload2) {\n for (const notifier of this._notifiers) {\n try {\n notifier(upload2);\n } catch (error) {\n logger.warn(\"Error in upload notifier\", { error, source: upload2.source });\n }\n }\n }\n /**\n * Uploads multiple files or folders while preserving the relative path (if available)\n * @param {string} destination The destination path relative to the root folder. e.g. /foo/bar (a file \"a.txt\" will be uploaded then to \"/foo/bar/a.txt\")\n * @param {Array} files The files and/or folders to upload\n * @param {Function} callback Callback that receives the nodes in the current folder and the current path to allow resolving conflicts, all nodes that are returned will be uploaded (if a folder does not exist it will be created)\n * @return Cancelable promise that resolves to an array of uploads\n *\n * @example\n * ```ts\n * // For example this is from handling the onchange event of an input[type=file]\n * async handleFiles(files: File[]) {\n * this.uploads = await this.uploader.batchUpload('uploads', files, this.handleConflicts)\n * }\n *\n * async handleConflicts(nodes: File[], currentPath: string) {\n * const conflicts = getConflicts(nodes, this.fetchContent(currentPath))\n * if (conficts.length === 0) {\n * // No conflicts so upload all\n * return nodes\n * } else {\n * // Open the conflict picker to resolve conflicts\n * try {\n * const { selected, renamed } = await openConflictPicker(currentPath, conflicts, this.fetchContent(currentPath), { recursive: true })\n * return [...selected, ...renamed]\n * } catch (e) {\n * return false\n * }\n * }\n * }\n * ```\n */\n batchUpload(destination, files, callback) {\n const rootFolder = new Directory(\"\", files);\n if (!callback) {\n callback = async (files2) => files2;\n }\n try {\n this._jobQueue.concurrency += 1;\n return new PCancelable(async (resolve, reject, onCancel) => {\n try {\n const value = await this._jobQueue.add(() => {\n const promise = this.uploadDirectory(destination, rootFolder, callback, davGetClient(this.root));\n onCancel(() => promise.cancel());\n return promise;\n });\n if (value) {\n resolve(value);\n }\n } catch (error) {\n logger.error(\"Error in batch upload\", { error });\n }\n reject(t(\"Upload has been cancelled\"));\n });\n } finally {\n this._jobQueue.concurrency -= 1;\n }\n }\n // Helper for uploading directories (recursivly)\n uploadDirectory(destination, directory, callback, client) {\n const folderPath = normalize(`${destination}/${directory.name}`).replace(/\\/$/, \"\");\n const rootPath = `${this.root.replace(/\\/$/, \"\")}/${folderPath.replace(/^\\//, \"\")}`;\n return new PCancelable(async (resolve, reject, onCancel) => {\n const abort = new AbortController();\n onCancel(() => abort.abort());\n const selectedForUpload = await callback(directory.children, folderPath);\n if (selectedForUpload === false) {\n reject(t(\"Upload has been cancelled\"));\n return;\n }\n const directories = [];\n const uploads = [];\n const currentUpload = new Upload(rootPath, false, 0, directory);\n currentUpload.signal.addEventListener(\"abort\", () => reject(t(\"Upload has been cancelled\")));\n currentUpload.status = Status$1.UPLOADING;\n try {\n if (directory.name) {\n try {\n await client.createDirectory(folderPath, { signal: abort.signal });\n uploads.push(new PCancelable((resolve2) => resolve2(currentUpload)));\n this._uploadQueue.push(currentUpload);\n } catch (error) {\n if (error && typeof error === \"object\" && \"status\" in error && error.status === 405) {\n logger.debug(\"Directory already exists, writing into it\", { directory: directory.name });\n } else {\n throw error;\n }\n }\n }\n for (const node of selectedForUpload) {\n if (node instanceof Directory) {\n directories.push(this.uploadDirectory(folderPath, node, callback, client));\n } else {\n uploads.push(this.upload(`${folderPath}/${node.name}`, node));\n }\n }\n abort.signal.addEventListener(\"abort\", () => {\n uploads.forEach((upload2) => upload2.cancel());\n directories.forEach((upload2) => upload2.cancel());\n });\n const resolvedUploads = await Promise.all(uploads);\n const resolvedDirectoryUploads = await Promise.all(directories);\n currentUpload.status = Status$1.FINISHED;\n resolve([resolvedUploads, ...resolvedDirectoryUploads].flat());\n } catch (e) {\n abort.abort(e);\n currentUpload.status = Status$1.FAILED;\n reject(e);\n } finally {\n if (directory.name) {\n this._notifyAll(currentUpload);\n this.updateStats();\n }\n }\n });\n }\n /**\n * Upload a file to the given path\n * @param {string} destination the destination path relative to the root folder. e.g. /foo/bar.txt\n * @param {File|FileSystemFileEntry} fileHandle the file to upload\n * @param {string} root the root folder to upload to\n * @param retries number of retries\n */\n upload(destination, fileHandle, root, retries = 5) {\n root = root || this.root;\n const destinationPath = `${root.replace(/\\/$/, \"\")}/${destination.replace(/^\\//, \"\")}`;\n const { origin } = new URL(destinationPath);\n const encodedDestinationFile = origin + encodePath(destinationPath.slice(origin.length));\n logger.debug(`Uploading ${fileHandle.name} to ${encodedDestinationFile}`);\n const promise = new PCancelable(async (resolve, reject, onCancel) => {\n if (isFileSystemFileEntry(fileHandle)) {\n fileHandle = await new Promise((resolve2) => fileHandle.file(resolve2, reject));\n }\n const file = fileHandle;\n const maxChunkSize = getMaxChunksSize(\"size\" in file ? file.size : void 0);\n const disabledChunkUpload = this._isPublic || maxChunkSize === 0 || \"size\" in file && file.size < maxChunkSize;\n const upload2 = new Upload(destinationPath, !disabledChunkUpload, file.size, file);\n this._uploadQueue.push(upload2);\n this.updateStats();\n onCancel(upload2.cancel);\n if (!disabledChunkUpload) {\n logger.debug(\"Initializing chunked upload\", { file, upload: upload2 });\n const tempUrl = await initChunkWorkspace(encodedDestinationFile, retries);\n const chunksQueue = [];\n for (let chunk = 0; chunk < upload2.chunks; chunk++) {\n const bufferStart = chunk * maxChunkSize;\n const bufferEnd = Math.min(bufferStart + maxChunkSize, upload2.size);\n const blob = () => getChunk(file, bufferStart, maxChunkSize);\n const request = () => {\n return uploadData(\n `${tempUrl}/${chunk + 1}`,\n blob,\n upload2.signal,\n () => this.updateStats(),\n encodedDestinationFile,\n {\n \"X-OC-Mtime\": file.lastModified / 1e3,\n \"OC-Total-Length\": file.size,\n \"Content-Type\": \"application/octet-stream\"\n },\n retries\n ).then(() => {\n upload2.uploaded = upload2.uploaded + maxChunkSize;\n }).catch((error) => {\n if (error?.response?.status === 507) {\n logger.error(\"Upload failed, not enough space on the server or quota exceeded. Cancelling the remaining chunks\", { error, upload: upload2 });\n upload2.cancel();\n upload2.status = Status$1.FAILED;\n throw error;\n }\n if (!isCancel(error)) {\n logger.error(`Chunk ${chunk + 1} ${bufferStart} - ${bufferEnd} uploading failed`, { error, upload: upload2 });\n upload2.cancel();\n upload2.status = Status$1.FAILED;\n }\n throw error;\n });\n };\n chunksQueue.push(this._jobQueue.add(request));\n }\n try {\n await Promise.all(chunksQueue);\n this.updateStats();\n upload2.response = await axios.request({\n method: \"MOVE\",\n url: `${tempUrl}/.file`,\n headers: {\n \"X-OC-Mtime\": file.lastModified / 1e3,\n \"OC-Total-Length\": file.size,\n Destination: encodedDestinationFile\n }\n });\n this.updateStats();\n upload2.status = Status$1.FINISHED;\n logger.debug(`Successfully uploaded ${file.name}`, { file, upload: upload2 });\n resolve(upload2);\n } catch (error) {\n if (!isCancel(error)) {\n upload2.status = Status$1.FAILED;\n reject(\"Failed assembling the chunks together\");\n } else {\n upload2.status = Status$1.FAILED;\n reject(t(\"Upload has been cancelled\"));\n }\n axios.request({\n method: \"DELETE\",\n url: `${tempUrl}`\n });\n }\n this._notifyAll(upload2);\n } else {\n logger.debug(\"Initializing regular upload\", { file, upload: upload2 });\n const blob = await getChunk(file, 0, upload2.size);\n const request = async () => {\n try {\n upload2.response = await uploadData(\n encodedDestinationFile,\n blob,\n upload2.signal,\n (event) => {\n upload2.uploaded = upload2.uploaded + event.bytes;\n this.updateStats();\n },\n void 0,\n {\n \"X-OC-Mtime\": file.lastModified / 1e3,\n \"Content-Type\": file.type\n }\n );\n upload2.uploaded = upload2.size;\n this.updateStats();\n logger.debug(`Successfully uploaded ${file.name}`, { file, upload: upload2 });\n resolve(upload2);\n } catch (error) {\n if (isCancel(error)) {\n upload2.status = Status$1.FAILED;\n reject(t(\"Upload has been cancelled\"));\n return;\n }\n if (error?.response) {\n upload2.response = error.response;\n }\n upload2.status = Status$1.FAILED;\n logger.error(`Failed uploading ${file.name}`, { error, file, upload: upload2 });\n reject(\"Failed uploading the file\");\n }\n this._notifyAll(upload2);\n };\n this._jobQueue.add(request);\n this.updateStats();\n }\n return upload2;\n });\n return promise;\n }\n}\nfunction normalizeComponent(scriptExports, render6, staticRenderFns, functionalTemplate, injectStyles, scopeId, moduleIdentifier, shadowMode) {\n var options = typeof scriptExports === \"function\" ? scriptExports.options : scriptExports;\n if (render6) {\n options.render = render6;\n options.staticRenderFns = staticRenderFns;\n options._compiled = true;\n }\n if (functionalTemplate) {\n options.functional = true;\n }\n if (scopeId) {\n options._scopeId = \"data-v-\" + scopeId;\n }\n var hook;\n if (moduleIdentifier) {\n hook = function(context) {\n context = context || // cached call\n this.$vnode && this.$vnode.ssrContext || // stateful\n this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext;\n if (!context && typeof __VUE_SSR_CONTEXT__ !== \"undefined\") {\n context = __VUE_SSR_CONTEXT__;\n }\n if (injectStyles) {\n injectStyles.call(this, context);\n }\n if (context && context._registeredComponents) {\n context._registeredComponents.add(moduleIdentifier);\n }\n };\n options._ssrRegister = hook;\n } else if (injectStyles) {\n hook = shadowMode ? function() {\n injectStyles.call(\n this,\n (options.functional ? this.parent : this).$root.$options.shadowRoot\n );\n } : injectStyles;\n }\n if (hook) {\n if (options.functional) {\n options._injectStyles = hook;\n var originalRender = options.render;\n options.render = function renderWithStyleInjection(h, context) {\n hook.call(context);\n return originalRender(h, context);\n };\n } else {\n var existing = options.beforeCreate;\n options.beforeCreate = existing ? [].concat(existing, hook) : [hook];\n }\n }\n return {\n exports: scriptExports,\n options\n };\n}\nconst _sfc_main$4 = {\n name: \"CancelIcon\",\n emits: [\"click\"],\n props: {\n title: {\n type: String\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n};\nvar _sfc_render$4 = function render() {\n var _vm = this, _c = _vm._self._c;\n return _c(\"span\", _vm._b({ staticClass: \"material-design-icon cancel-icon\", attrs: { \"aria-hidden\": _vm.title ? null : true, \"aria-label\": _vm.title, \"role\": \"img\" }, on: { \"click\": function($event) {\n return _vm.$emit(\"click\", $event);\n } } }, \"span\", _vm.$attrs, false), [_c(\"svg\", { staticClass: \"material-design-icon__svg\", attrs: { \"fill\": _vm.fillColor, \"width\": _vm.size, \"height\": _vm.size, \"viewBox\": \"0 0 24 24\" } }, [_c(\"path\", { attrs: { \"d\": \"M12 2C17.5 2 22 6.5 22 12S17.5 22 12 22 2 17.5 2 12 6.5 2 12 2M12 4C10.1 4 8.4 4.6 7.1 5.7L18.3 16.9C19.3 15.5 20 13.8 20 12C20 7.6 16.4 4 12 4M16.9 18.3L5.7 7.1C4.6 8.4 4 10.1 4 12C4 16.4 7.6 20 12 20C13.9 20 15.6 19.4 16.9 18.3Z\" } }, [_vm.title ? _c(\"title\", [_vm._v(_vm._s(_vm.title))]) : _vm._e()])])]);\n};\nvar _sfc_staticRenderFns$4 = [];\nvar __component__$4 = /* @__PURE__ */ normalizeComponent(\n _sfc_main$4,\n _sfc_render$4,\n _sfc_staticRenderFns$4,\n false,\n null,\n null,\n null,\n null\n);\nconst IconCancel = __component__$4.exports;\nconst _sfc_main$3 = {\n name: \"FolderUploadIcon\",\n emits: [\"click\"],\n props: {\n title: {\n type: String\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n};\nvar _sfc_render$3 = function render2() {\n var _vm = this, _c = _vm._self._c;\n return _c(\"span\", _vm._b({ staticClass: \"material-design-icon folder-upload-icon\", attrs: { \"aria-hidden\": _vm.title ? null : true, \"aria-label\": _vm.title, \"role\": \"img\" }, on: { \"click\": function($event) {\n return _vm.$emit(\"click\", $event);\n } } }, \"span\", _vm.$attrs, false), [_c(\"svg\", { staticClass: \"material-design-icon__svg\", attrs: { \"fill\": _vm.fillColor, \"width\": _vm.size, \"height\": _vm.size, \"viewBox\": \"0 0 24 24\" } }, [_c(\"path\", { attrs: { \"d\": \"M20,6A2,2 0 0,1 22,8V18A2,2 0 0,1 20,20H4A2,2 0 0,1 2,18V6A2,2 0 0,1 4,4H10L12,6H20M10.75,13H14V17H16V13H19.25L15,8.75\" } }, [_vm.title ? _c(\"title\", [_vm._v(_vm._s(_vm.title))]) : _vm._e()])])]);\n};\nvar _sfc_staticRenderFns$3 = [];\nvar __component__$3 = /* @__PURE__ */ normalizeComponent(\n _sfc_main$3,\n _sfc_render$3,\n _sfc_staticRenderFns$3,\n false,\n null,\n null,\n null,\n null\n);\nconst IconFolderUpload = __component__$3.exports;\nconst _sfc_main$2 = {\n name: \"PlusIcon\",\n emits: [\"click\"],\n props: {\n title: {\n type: String\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n};\nvar _sfc_render$2 = function render3() {\n var _vm = this, _c = _vm._self._c;\n return _c(\"span\", _vm._b({ staticClass: \"material-design-icon plus-icon\", attrs: { \"aria-hidden\": _vm.title ? null : true, \"aria-label\": _vm.title, \"role\": \"img\" }, on: { \"click\": function($event) {\n return _vm.$emit(\"click\", $event);\n } } }, \"span\", _vm.$attrs, false), [_c(\"svg\", { staticClass: \"material-design-icon__svg\", attrs: { \"fill\": _vm.fillColor, \"width\": _vm.size, \"height\": _vm.size, \"viewBox\": \"0 0 24 24\" } }, [_c(\"path\", { attrs: { \"d\": \"M19,13H13V19H11V13H5V11H11V5H13V11H19V13Z\" } }, [_vm.title ? _c(\"title\", [_vm._v(_vm._s(_vm.title))]) : _vm._e()])])]);\n};\nvar _sfc_staticRenderFns$2 = [];\nvar __component__$2 = /* @__PURE__ */ normalizeComponent(\n _sfc_main$2,\n _sfc_render$2,\n _sfc_staticRenderFns$2,\n false,\n null,\n null,\n null,\n null\n);\nconst IconPlus = __component__$2.exports;\nconst _sfc_main$1 = {\n name: \"UploadIcon\",\n emits: [\"click\"],\n props: {\n title: {\n type: String\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n};\nvar _sfc_render$1 = function render4() {\n var _vm = this, _c = _vm._self._c;\n return _c(\"span\", _vm._b({ staticClass: \"material-design-icon upload-icon\", attrs: { \"aria-hidden\": _vm.title ? null : true, \"aria-label\": _vm.title, \"role\": \"img\" }, on: { \"click\": function($event) {\n return _vm.$emit(\"click\", $event);\n } } }, \"span\", _vm.$attrs, false), [_c(\"svg\", { staticClass: \"material-design-icon__svg\", attrs: { \"fill\": _vm.fillColor, \"width\": _vm.size, \"height\": _vm.size, \"viewBox\": \"0 0 24 24\" } }, [_c(\"path\", { attrs: { \"d\": \"M9,16V10H5L12,3L19,10H15V16H9M5,20V18H19V20H5Z\" } }, [_vm.title ? _c(\"title\", [_vm._v(_vm._s(_vm.title))]) : _vm._e()])])]);\n};\nvar _sfc_staticRenderFns$1 = [];\nvar __component__$1 = /* @__PURE__ */ normalizeComponent(\n _sfc_main$1,\n _sfc_render$1,\n _sfc_staticRenderFns$1,\n false,\n null,\n null,\n null,\n null\n);\nconst IconUpload = __component__$1.exports;\nconst _sfc_main = Vue.extend({\n name: \"UploadPicker\",\n components: {\n IconCancel,\n IconFolderUpload,\n IconPlus,\n IconUpload,\n NcActionButton,\n NcActionCaption,\n NcActionSeparator,\n NcActions,\n NcButton,\n NcIconSvgWrapper,\n NcProgressBar\n },\n props: {\n accept: {\n type: Array,\n default: null\n },\n disabled: {\n type: Boolean,\n default: false\n },\n multiple: {\n type: Boolean,\n default: false\n },\n destination: {\n type: Folder,\n default: void 0\n },\n allowFolders: {\n type: Boolean,\n default: false\n },\n /**\n * List of file present in the destination folder\n * It is also possible to provide a function that takes a relative path to the current directory and returns the content of it\n * Note: If a function is passed it should return the current base directory when no path or an empty is passed\n */\n content: {\n type: [Array, Function],\n default: () => []\n },\n forbiddenCharacters: {\n type: Array,\n default: () => []\n }\n },\n setup() {\n return {\n t,\n // non reactive data / properties\n progressTimeId: `nc-uploader-progress-${Math.random().toString(36).slice(7)}`\n };\n },\n data() {\n return {\n eta: null,\n timeLeft: \"\",\n currentContent: [],\n newFileMenuEntries: [],\n uploadManager: getUploader()\n };\n },\n computed: {\n menuEntriesUpload() {\n return this.newFileMenuEntries.filter((entry) => entry.category === NewMenuEntryCategory.UploadFromDevice);\n },\n menuEntriesNew() {\n return this.newFileMenuEntries.filter((entry) => entry.category === NewMenuEntryCategory.CreateNew);\n },\n menuEntriesOther() {\n return this.newFileMenuEntries.filter((entry) => entry.category === NewMenuEntryCategory.Other);\n },\n /**\n * Check whether the current browser supports uploading directories\n * Hint: This does not check if the current connection supports this, as some browsers require a secure context!\n */\n canUploadFolders() {\n return this.allowFolders && \"webkitdirectory\" in document.createElement(\"input\");\n },\n totalQueueSize() {\n return this.uploadManager.info?.size || 0;\n },\n uploadedQueueSize() {\n return this.uploadManager.info?.progress || 0;\n },\n progress() {\n return Math.round(this.uploadedQueueSize / this.totalQueueSize * 100) || 0;\n },\n queue() {\n return this.uploadManager.queue;\n },\n hasFailure() {\n return this.queue?.filter((upload2) => upload2.status === Status$1.FAILED).length !== 0;\n },\n isUploading() {\n return this.queue?.length > 0;\n },\n isAssembling() {\n return this.queue?.filter((upload2) => upload2.status === Status$1.ASSEMBLING).length !== 0;\n },\n isPaused() {\n return this.uploadManager.info?.status === Status.PAUSED;\n },\n // Hide the button text if we're uploading\n buttonName() {\n if (this.isUploading) {\n return void 0;\n }\n return t(\"New\");\n }\n },\n watch: {\n allowFolders: {\n immediate: true,\n handler() {\n if (typeof this.content !== \"function\" && this.allowFolders) {\n logger.error(\"[UploadPicker] Setting `allowFolders` is only allowed if `content` is a function\");\n }\n }\n },\n content: {\n immediate: true,\n async handler() {\n this.currentContent = await this.getContent();\n }\n },\n destination(destination) {\n this.setDestination(destination);\n },\n totalQueueSize(size) {\n this.eta = makeEta({ min: 0, max: size });\n this.updateStatus();\n },\n uploadedQueueSize(size) {\n this.eta?.report?.(size);\n this.updateStatus();\n },\n isPaused(isPaused) {\n if (isPaused) {\n this.$emit(\"paused\", this.queue);\n } else {\n this.$emit(\"resumed\", this.queue);\n }\n }\n },\n beforeMount() {\n if (this.destination) {\n this.setDestination(this.destination);\n }\n this.uploadManager.addNotifier(this.onUploadCompletion);\n logger.debug(\"UploadPicker initialised\");\n },\n methods: {\n /**\n * Trigger file picker\n * @param uploadFolders Upload folders\n */\n onTriggerPick(uploadFolders = false) {\n const input = this.$refs.input;\n if (this.canUploadFolders) {\n input.webkitdirectory = uploadFolders;\n }\n this.$nextTick(() => input.click());\n },\n /**\n * Helper for backwards compatibility that queries the content of the current directory\n * @param path The current path\n */\n async getContent(path) {\n return Array.isArray(this.content) ? this.content : await this.content(path);\n },\n /**\n * Show a dialog to let the user decide how to proceed with invalid filenames.\n * The returned promise resolves to true if the file should be renamed and resolves to false to skip it the file.\n * The promise rejects when the user want to abort the operation.\n *\n * @param filename The invalid file name\n */\n async showInvalidFileNameDialog(filename) {\n return new PCancelable(async (resolve, reject) => {\n await new DialogBuilder().setName(t(\"Invalid file name\")).setSeverity(\"error\").setText(t('\"{filename}\" contains invalid characters, how do you want to continue?', { filename })).setButtons([\n {\n label: t(\"Cancel\"),\n type: \"error\",\n callback: reject\n },\n {\n label: t(\"Skip\"),\n callback: () => resolve(false)\n },\n {\n label: t(\"Rename\"),\n type: \"primary\",\n callback: () => resolve(true)\n }\n ]).build().show();\n });\n },\n async handleConflicts(nodes, path) {\n try {\n const content = path === \"\" ? this.currentContent : await this.getContent(path).catch(() => []);\n const conflicts = getConflicts(nodes, content);\n if (conflicts.length > 0) {\n const { selected, renamed } = await openConflictPicker(path, conflicts, content, { recursive: true });\n nodes = [...selected, ...renamed];\n }\n const filesToUpload = [];\n for (const file of nodes) {\n const invalid = this.forbiddenCharacters.some((c) => file.name.includes(c));\n if (!invalid) {\n filesToUpload.push(file);\n continue;\n }\n if (await this.showInvalidFileNameDialog(file.name)) {\n let newName = this.replaceInvalidCharacters(file.name);\n newName = getUniqueName(newName, nodes.map((node) => node.name));\n Object.defineProperty(file, \"name\", { value: newName });\n filesToUpload.push(file);\n }\n }\n return filesToUpload;\n } catch (error) {\n logger.debug(\"Upload has been cancelled\", { error });\n showWarning(t(\"Upload has been cancelled\"));\n return false;\n }\n },\n /**\n * Helper function to replace invalid characters in text\n * @param text Text to replace invalid character\n */\n replaceInvalidCharacters(text) {\n const invalidReplacement = [\"-\", \"_\", \" \"].filter((c) => !this.forbiddenCharacters.includes(c))[0] ?? \"x\";\n this.forbiddenCharacters.forEach((c) => {\n text = text.replaceAll(c, invalidReplacement);\n });\n return text;\n },\n /**\n * Start uploading\n */\n onPick() {\n const input = this.$refs.input;\n const files = input.files ? Array.from(input.files) : [];\n this.uploadManager.batchUpload(\"\", files, this.handleConflicts).catch((error) => logger.debug(\"Error while uploading\", { error })).finally(() => this.resetForm());\n },\n resetForm() {\n const form = this.$refs.form;\n form?.reset();\n },\n /**\n * Cancel ongoing queue\n */\n onCancel() {\n this.uploadManager.queue.forEach((upload2) => {\n upload2.cancel();\n });\n this.resetForm();\n },\n updateStatus() {\n if (this.isPaused) {\n this.timeLeft = t(\"paused\");\n return;\n }\n const estimate = Math.round(this.eta.estimate());\n if (estimate === Infinity) {\n this.timeLeft = t(\"estimating time left\");\n return;\n }\n if (estimate < 10) {\n this.timeLeft = t(\"a few seconds left\");\n return;\n }\n if (estimate > 60) {\n const date = /* @__PURE__ */ new Date(0);\n date.setSeconds(estimate);\n const time = date.toISOString().slice(11, 11 + 8);\n this.timeLeft = t(\"{time} left\", { time });\n return;\n }\n this.timeLeft = t(\"{seconds} seconds left\", { seconds: estimate });\n },\n setDestination(destination) {\n if (!this.destination) {\n logger.debug(\"Invalid destination\");\n return;\n }\n this.uploadManager.destination = destination;\n this.newFileMenuEntries = getNewFileMenuEntries(destination);\n },\n onUploadCompletion(upload2) {\n if (upload2.status === Status$1.FAILED) {\n this.$emit(\"failed\", upload2);\n } else {\n this.$emit(\"uploaded\", upload2);\n }\n }\n }\n});\nvar _sfc_render = function render5() {\n var _vm = this, _c = _vm._self._c;\n _vm._self._setupProxy;\n return _vm.destination ? _c(\"form\", { ref: \"form\", staticClass: \"upload-picker\", class: { \"upload-picker--uploading\": _vm.isUploading, \"upload-picker--paused\": _vm.isPaused }, attrs: { \"data-cy-upload-picker\": \"\" } }, [_vm.newFileMenuEntries && _vm.newFileMenuEntries.length === 0 ? _c(\"NcButton\", { attrs: { \"disabled\": _vm.disabled, \"data-cy-upload-picker-add\": \"\", \"type\": \"secondary\" }, on: { \"click\": function($event) {\n return _vm.onTriggerPick();\n } }, scopedSlots: _vm._u([{ key: \"icon\", fn: function() {\n return [_c(\"IconPlus\", { attrs: { \"size\": 20 } })];\n }, proxy: true }], null, false, 1991456921) }, [_vm._v(\" \" + _vm._s(_vm.buttonName) + \" \")]) : _c(\"NcActions\", { attrs: { \"menu-name\": _vm.buttonName, \"menu-title\": _vm.t(\"New\"), \"type\": \"secondary\" }, scopedSlots: _vm._u([{ key: \"icon\", fn: function() {\n return [_c(\"IconPlus\", { attrs: { \"size\": 20 } })];\n }, proxy: true }], null, false, 1991456921) }, [_c(\"NcActionCaption\", { attrs: { \"name\": _vm.t(\"Upload from device\") } }), _c(\"NcActionButton\", { attrs: { \"data-cy-upload-picker-add\": \"\", \"close-after-click\": true }, on: { \"click\": function($event) {\n return _vm.onTriggerPick();\n } }, scopedSlots: _vm._u([{ key: \"icon\", fn: function() {\n return [_c(\"IconUpload\", { attrs: { \"size\": 20 } })];\n }, proxy: true }], null, false, 337456192) }, [_vm._v(\" \" + _vm._s(_vm.t(\"Upload files\")) + \" \")]), _vm.canUploadFolders ? _c(\"NcActionButton\", { attrs: { \"close-after-click\": \"\", \"data-cy-upload-picker-add-folders\": \"\" }, on: { \"click\": function($event) {\n return _vm.onTriggerPick(true);\n } }, scopedSlots: _vm._u([{ key: \"icon\", fn: function() {\n return [_c(\"IconFolderUpload\", { staticStyle: { \"color\": \"var(--color-primary-element)\" }, attrs: { \"size\": 20 } })];\n }, proxy: true }], null, false, 1037549157) }, [_vm._v(\" \" + _vm._s(_vm.t(\"Upload folders\")) + \" \")]) : _vm._e(), _vm._l(_vm.menuEntriesUpload, function(entry) {\n return _c(\"NcActionButton\", { key: entry.id, staticClass: \"upload-picker__menu-entry\", attrs: { \"icon\": entry.iconClass, \"close-after-click\": true }, on: { \"click\": function($event) {\n return entry.handler(_vm.destination, _vm.currentContent);\n } }, scopedSlots: _vm._u([entry.iconSvgInline ? { key: \"icon\", fn: function() {\n return [_c(\"NcIconSvgWrapper\", { attrs: { \"svg\": entry.iconSvgInline } })];\n }, proxy: true } : null], null, true) }, [_vm._v(\" \" + _vm._s(entry.displayName) + \" \")]);\n }), _vm.menuEntriesNew.length > 0 ? [_c(\"NcActionSeparator\"), _c(\"NcActionCaption\", { attrs: { \"name\": _vm.t(\"Create new\") } }), _vm._l(_vm.menuEntriesNew, function(entry) {\n return _c(\"NcActionButton\", { key: entry.id, staticClass: \"upload-picker__menu-entry\", attrs: { \"icon\": entry.iconClass, \"close-after-click\": true }, on: { \"click\": function($event) {\n return entry.handler(_vm.destination, _vm.currentContent);\n } }, scopedSlots: _vm._u([entry.iconSvgInline ? { key: \"icon\", fn: function() {\n return [_c(\"NcIconSvgWrapper\", { attrs: { \"svg\": entry.iconSvgInline } })];\n }, proxy: true } : null], null, true) }, [_vm._v(\" \" + _vm._s(entry.displayName) + \" \")]);\n })] : _vm._e(), _vm.menuEntriesOther.length > 0 ? [_c(\"NcActionSeparator\"), _vm._l(_vm.menuEntriesNew, function(entry) {\n return _c(\"NcActionButton\", { key: entry.id, staticClass: \"upload-picker__menu-entry\", attrs: { \"icon\": entry.iconClass, \"close-after-click\": true }, on: { \"click\": function($event) {\n return entry.handler(_vm.destination, _vm.currentContent);\n } }, scopedSlots: _vm._u([entry.iconSvgInline ? { key: \"icon\", fn: function() {\n return [_c(\"NcIconSvgWrapper\", { attrs: { \"svg\": entry.iconSvgInline } })];\n }, proxy: true } : null], null, true) }, [_vm._v(\" \" + _vm._s(entry.displayName) + \" \")]);\n })] : _vm._e()], 2), _c(\"div\", { directives: [{ name: \"show\", rawName: \"v-show\", value: _vm.isUploading, expression: \"isUploading\" }], staticClass: \"upload-picker__progress\" }, [_c(\"NcProgressBar\", { attrs: { \"aria-label\": _vm.t(\"Upload progress\"), \"aria-describedby\": _vm.progressTimeId, \"error\": _vm.hasFailure, \"value\": _vm.progress, \"size\": \"medium\" } }), _c(\"p\", { attrs: { \"id\": _vm.progressTimeId } }, [_vm._v(\" \" + _vm._s(_vm.timeLeft) + \" \")])], 1), _vm.isUploading ? _c(\"NcButton\", { staticClass: \"upload-picker__cancel\", attrs: { \"type\": \"tertiary\", \"aria-label\": _vm.t(\"Cancel uploads\"), \"data-cy-upload-picker-cancel\": \"\" }, on: { \"click\": _vm.onCancel }, scopedSlots: _vm._u([{ key: \"icon\", fn: function() {\n return [_c(\"IconCancel\", { attrs: { \"size\": 20 } })];\n }, proxy: true }], null, false, 3076329829) }) : _vm._e(), _c(\"input\", { ref: \"input\", staticClass: \"hidden-visually\", attrs: { \"accept\": _vm.accept?.join?.(\", \"), \"multiple\": _vm.multiple, \"data-cy-upload-picker-input\": \"\", \"type\": \"file\" }, on: { \"change\": _vm.onPick } })], 1) : _vm._e();\n};\nvar _sfc_staticRenderFns = [];\nvar __component__ = /* @__PURE__ */ normalizeComponent(\n _sfc_main,\n _sfc_render,\n _sfc_staticRenderFns,\n false,\n null,\n \"1f097873\",\n null,\n null\n);\nconst UploadPicker = __component__.exports;\nlet _uploader = null;\nfunction getUploader(isPublic = isPublicShare(), forceRecreate = false) {\n if (_uploader instanceof Uploader && !forceRecreate) {\n return _uploader;\n }\n _uploader = new Uploader(isPublic);\n return _uploader;\n}\nfunction upload(destinationPath, file) {\n const uploader = getUploader();\n uploader.upload(destinationPath, file);\n return uploader;\n}\nasync function openConflictPicker(dirname, conflicts, content, options) {\n const ConflictPicker = defineAsyncComponent(() => import(\"./ConflictPicker-CLXOphvC.mjs\"));\n return new Promise((resolve, reject) => {\n const picker = new Vue({\n name: \"ConflictPickerRoot\",\n render: (h) => h(ConflictPicker, {\n props: {\n dirname,\n conflicts,\n content,\n recursiveUpload: options?.recursive === true\n },\n on: {\n submit(results) {\n resolve(results);\n picker.$destroy();\n picker.$el?.parentNode?.removeChild(picker.$el);\n },\n cancel(error) {\n reject(error ?? new Error(\"Canceled\"));\n picker.$destroy();\n picker.$el?.parentNode?.removeChild(picker.$el);\n }\n }\n })\n });\n picker.$mount();\n document.body.appendChild(picker.$el);\n });\n}\nfunction hasConflict(files, content) {\n return getConflicts(files, content).length > 0;\n}\nfunction getConflicts(files, content) {\n const contentNames = content.map((node) => node.basename);\n const conflicts = files.filter((node) => {\n const name = \"basename\" in node ? node.basename : node.name;\n return contentNames.indexOf(name) !== -1;\n });\n return conflicts;\n}\nexport {\n Status as S,\n UploadPicker as U,\n n as a,\n getConflicts as b,\n Upload as c,\n Status$1 as d,\n getUploader as g,\n hasConflict as h,\n isFileSystemEntry as i,\n logger as l,\n normalizeComponent as n,\n openConflictPicker as o,\n t,\n upload as u\n};\n","function getLocale() {\n return document.documentElement.dataset.locale || \"en\";\n}\nfunction getCanonicalLocale() {\n return getLocale().replace(/_/g, \"-\");\n}\nfunction getLanguage() {\n return document.documentElement.lang || \"en\";\n}\nfunction isRTL(language) {\n const languageCode = language || getLanguage();\n const rtlLanguages = [\n /* eslint-disable no-multi-spaces */\n \"ae\",\n // Avestan\n \"ar\",\n // 'العربية', Arabic\n \"arc\",\n // Aramaic\n \"arz\",\n // 'مصرى', Egyptian\n \"bcc\",\n // 'بلوچی مکرانی', Southern Balochi\n \"bqi\",\n // 'بختياري', Bakthiari\n \"ckb\",\n // 'Soranî / کوردی', Sorani\n \"dv\",\n // Dhivehi\n \"fa\",\n // 'فارسی', Persian\n \"glk\",\n // 'گیلکی', Gilaki\n \"ha\",\n // 'هَوُسَ', Hausa\n \"he\",\n // 'עברית', Hebrew\n \"khw\",\n // 'کھوار', Khowar\n \"ks\",\n // 'कॉशुर / کٲشُر', Kashmiri\n \"ku\",\n // 'Kurdî / كوردی', Kurdish\n \"mzn\",\n // 'مازِرونی', Mazanderani\n \"nqo\",\n // 'ߒߞߏ', N’Ko\n \"pnb\",\n // 'پنجابی', Western Punjabi\n \"ps\",\n // 'پښتو', Pashto,\n \"sd\",\n // 'سنڌي', Sindhi\n \"ug\",\n // 'Uyghurche / ئۇيغۇرچە', Uyghur\n \"ur\",\n // 'اردو', Urdu\n \"uzs\",\n // 'اوزبیکی', Uzbek Afghan\n \"yi\"\n // 'ייִדיש', Yiddish\n /* eslint-enable no-multi-spaces */\n ];\n if ((language || getCanonicalLocale()).startsWith(\"uz-AF\")) {\n return true;\n }\n return rtlLanguages.includes(languageCode);\n}\nexport {\n getLanguage as a,\n getCanonicalLocale as b,\n getLocale as g,\n isRTL as i\n};\n","import { loadState } from \"@nextcloud/initial-state\";\nfunction isPublicShare() {\n return loadState(\"files_sharing\", \"isPublic\", null) ?? document.querySelector(\n 'input#isPublic[type=\"hidden\"][name=\"isPublic\"][value=\"1\"]'\n ) !== null;\n}\nfunction getSharingToken() {\n return loadState(\"files_sharing\", \"sharingToken\", null) ?? document.querySelector('input#sharingToken[type=\"hidden\"]')?.value ?? null;\n}\nexport {\n getSharingToken,\n isPublicShare\n};\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\tid: moduleId,\n\t\tloaded: false,\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Flag the module as loaded\n\tmodule.loaded = true;\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.f = {};\n// This file contains only the entry chunk.\n// The chunk loading function for additional chunks\n__webpack_require__.e = (chunkId) => {\n\treturn Promise.all(Object.keys(__webpack_require__.f).reduce((promises, key) => {\n\t\t__webpack_require__.f[key](chunkId, promises);\n\t\treturn promises;\n\t}, []));\n};","// This function allow to reference async chunks\n__webpack_require__.u = (chunkId) => {\n\t// return url for filenames based on template\n\treturn \"\" + chunkId + \"-\" + chunkId + \".js?v=\" + {\"1110\":\"e20948a2fd7d006e5209\",\"5455\":\"f19bb30c4edfe928a23c\",\"6778\":\"05456eb4fc16e404b623\",\"8377\":\"fed1d221ffdde07bff4c\"}[chunkId] + \"\";\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.nmd = (module) => {\n\tmodule.paths = [];\n\tif (!module.children) module.children = [];\n\treturn module;\n};","__webpack_require__.j = 1171;","var scriptUrl;\nif (__webpack_require__.g.importScripts) scriptUrl = __webpack_require__.g.location + \"\";\nvar document = __webpack_require__.g.document;\nif (!scriptUrl && document) {\n\tif (document.currentScript)\n\t\tscriptUrl = document.currentScript.src;\n\tif (!scriptUrl) {\n\t\tvar scripts = document.getElementsByTagName(\"script\");\n\t\tif(scripts.length) {\n\t\t\tvar i = scripts.length - 1;\n\t\t\twhile (i > -1 && (!scriptUrl || !/^http(s?):/.test(scriptUrl))) scriptUrl = scripts[i--].src;\n\t\t}\n\t}\n}\n// When supporting browsers where an automatic publicPath is not supported you must specify an output.publicPath manually via configuration\n// or pass an empty string (\"\") and set the __webpack_public_path__ variable from your code to use your own logic.\nif (!scriptUrl) throw new Error(\"Automatic publicPath is not supported in this browser\");\nscriptUrl = scriptUrl.replace(/#.*$/, \"\").replace(/\\?.*$/, \"\").replace(/\\/[^\\/]+$/, \"/\");\n__webpack_require__.p = scriptUrl;","__webpack_require__.b = document.baseURI || self.location.href;\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t1171: 0\n};\n\n__webpack_require__.f.j = (chunkId, promises) => {\n\t\t// JSONP chunk loading for javascript\n\t\tvar installedChunkData = __webpack_require__.o(installedChunks, chunkId) ? installedChunks[chunkId] : undefined;\n\t\tif(installedChunkData !== 0) { // 0 means \"already installed\".\n\n\t\t\t// a Promise means \"currently loading\".\n\t\t\tif(installedChunkData) {\n\t\t\t\tpromises.push(installedChunkData[2]);\n\t\t\t} else {\n\t\t\t\tif(true) { // all chunks have JS\n\t\t\t\t\t// setup Promise in chunk cache\n\t\t\t\t\tvar promise = new Promise((resolve, reject) => (installedChunkData = installedChunks[chunkId] = [resolve, reject]));\n\t\t\t\t\tpromises.push(installedChunkData[2] = promise);\n\n\t\t\t\t\t// start chunk loading\n\t\t\t\t\tvar url = __webpack_require__.p + __webpack_require__.u(chunkId);\n\t\t\t\t\t// create error before stack unwound to get useful stacktrace later\n\t\t\t\t\tvar error = new Error();\n\t\t\t\t\tvar loadingEnded = (event) => {\n\t\t\t\t\t\tif(__webpack_require__.o(installedChunks, chunkId)) {\n\t\t\t\t\t\t\tinstalledChunkData = installedChunks[chunkId];\n\t\t\t\t\t\t\tif(installedChunkData !== 0) installedChunks[chunkId] = undefined;\n\t\t\t\t\t\t\tif(installedChunkData) {\n\t\t\t\t\t\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n\t\t\t\t\t\t\t\tvar realSrc = event && event.target && event.target.src;\n\t\t\t\t\t\t\t\terror.message = 'Loading chunk ' + chunkId + ' failed.\\n(' + errorType + ': ' + realSrc + ')';\n\t\t\t\t\t\t\t\terror.name = 'ChunkLoadError';\n\t\t\t\t\t\t\t\terror.type = errorType;\n\t\t\t\t\t\t\t\terror.request = realSrc;\n\t\t\t\t\t\t\t\tinstalledChunkData[1](error);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t};\n\t\t\t\t\t__webpack_require__.l(url, loadingEnded, \"chunk-\" + chunkId, chunkId);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n};\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n__webpack_require__.O.j = (chunkId) => (installedChunks[chunkId] === 0);\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = (parentChunkLoadingFunction, data) => {\n\tvar chunkIds = data[0];\n\tvar moreModules = data[1];\n\tvar runtime = data[2];\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some((id) => (installedChunks[id] !== 0))) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\treturn __webpack_require__.O(result);\n}\n\nvar chunkLoadingGlobal = self[\"webpackChunknextcloud\"] = self[\"webpackChunknextcloud\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","__webpack_require__.nc = undefined;","// startup\n// Load entry module and return exports\n// This entry module depends on other loaded chunks and execution need to be delayed\nvar __webpack_exports__ = __webpack_require__.O(undefined, [4208], () => (__webpack_require__(15076)))\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["deferred","inProgress","dataWebpackPrefix","has","Object","prototype","hasOwnProperty","prefix","Events","EE","fn","context","once","this","addListener","emitter","event","TypeError","listener","evt","_events","push","_eventsCount","clearEvent","EventEmitter","create","__proto__","eventNames","events","name","names","call","slice","getOwnPropertySymbols","concat","listeners","handlers","i","l","length","ee","Array","listenerCount","emit","a1","a2","a3","a4","a5","args","len","arguments","removeListener","undefined","apply","j","on","removeAllListeners","off","prefixed","module","exports","getLoggerBuilder","setApp","detectUser","build","canUnshareOnly","nodes","every","node","attributes","canDisconnectOnly","displayName","view","id","t","hasSharedItems","some","hasDeleteItems","isMixedUnshareAndDelete","type","FileType","File","isAllFiles","Folder","isAllFolders","queue","PQueue","concurrency","action","FileAction","iconSvgInline","enabled","map","permissions","permission","Permission","DELETE","exec","dir","axios","delete","encodedSource","error","logger","source","execBatch","Promise","resolve","window","OC","dialogs","confirmDestructive","count","YES_NO_BUTTONS","confirm","confirmClasses","cancel","decision","showInfo","all","promises","add","async","result","order","triggerDownload","url","hiddenElement","document","createElement","download","href","click","downloadNodes","secret","Math","random","toString","substring","generateUrl","files","JSON","stringify","basename","isDownloadable","READ","_node$attributes$shar","_shareAttributes$find","shareAttributes","parse","downloadAttribute","find","attribute","scope","key","_node$root","root","startsWith","fill","UPDATE","path","link","generateOcsUrl","_getCurrentUser","post","uid","getCurrentUser","location","host","encodePath","data","ocs","token","showError","openLocalClient","shouldFavorite","favorite","favoriteNode","willFavorite","tags","TAG_FAVORITE","dirname","Vue","StarSvg","_node$root$startsWith","NONE","MoveCopyAction","canMove","reduce","min","ALL","canCopy","_node$attributes","canDownload","client","davGetClient","resultToNode","davResultToNode","getContents","controller","AbortController","propfindPayload","davGetDefaultPropfind","davRootPath","CancelablePromise","reject","onCancel","abort","contentsResponse","getDirectoryContents","details","includeSelf","signal","contents","filename","debug","Error","folder","filter","Boolean","getActionForNodes","MOVE_OR_COPY","MOVE","COPY","handleCopyMoveNodeTo","destination","method","overwrite","NodeStatus","LOADING","copySuffix","index","currentPath","join","destinationPath","target","otherNodes","getUniqueName","n","suffix","ignoreFileExtension","copyFile","stat","hasConflict","selected","renamed","openConflictPicker","deleteFile","moveFile","isAxiosError","_error$response","_error$response2","_error$response3","response","status","message","openFilePickerForAction","fileIDs","fileid","filePicker","getFilePickerBuilder","allowDirectories","setFilter","includes","setMimeTypeFilter","setMultiSelect","startAt","setButtonFactory","selection","buttons","dirnames","paths","label","escape","sanitize","icon","CopyIconSvg","callback","FolderMoveSvg","pick","catch","FilePickerClosed","e","displayname","FolderSvg","isDavRessource","OCP","Files","Router","goToRoute","default","DefaultType","HIDDEN","openfile","InformationSvg","_window","_ref","_nodes$0$root","OCA","Sidebar","open","query","defineComponent","components","NcButton","NcDialog","NcTextField","props","defaultName","String","otherNames","emits","close","localDefaultName","computed","errorMessage","isUniqueName","uniqueName","watch","$nextTick","focusInput","mounted","methods","_this$$refs$input","_this$$refs$input$foc","$refs","input","focus","onCreate","$emit","onClose","state","_vm","_c","_self","_setupProxy","attrs","scopedSlots","_u","_v","_s","proxy","$event","preventDefault","ref","newNodeName","folderContent","labels","contentNames","spawnDialog","NewNodeDialog","folderName","entry","CREATE","handler","content","_getCurrentUser2","_context$attributes","_context$attributes2","_context$attributes3","encodeURIComponent","headers","Overwrite","parseInt","createNewFolder","mtime","Date","owner","showSuccess","templatesPath","loadState","directory","templatePath","copySystemTemplates","info","templates_path","initTemplatesFolder","removeNewFileMenuEntry","TemplatePickerVue","defineAsyncComponent","TemplatePicker","getTemplatePicker","mountingPoint","body","appendChild","render","h","parent","picker","el","filesContents","promise","getFavoriteNodes","then","davRemoteURL","generateFavoriteFolderView","View","generateIdFromPath","params","columns","str","hash","charCodeAt","hashCode","userConfig","show_hidden","crop_image_previews","sort_favorites_first","sort_folders_first","grid_view","pinia","createPinia","lastTwoWeeksTimestamp","round","now","currentUserId","isPersonalFile","mountType","registerFileAction","deleteAction","downloadAction","editLocallyAction","favoriteAction","moveOrCopyAction","openFolderAction","openInFilesAction","renameAction","sidebarAction","viewInFolderAction","addNewFileMenuEntry","newFolderEntry","newTemplatesFolder","forEach","provider","app","iconClass","templatePicker","extension","favoriteFolders","favoriteFoldersViews","Navigation","getNavigation","register","caption","emptyTitle","emptyCaption","subscribe","addToFavorites","_node$root2","removePathFromFavorites","updateAndSortViews","sort","a","b","localeCompare","getLanguage","ignorePunctuation","newFavoriteFolder","findIndex","splice","remove","registerFavoritesView","defaultSortKey","store","userConfigStore","defineStore","actions","onUpdate","value","update","put","_initialized","useUserConfigStore","filterHidden","split","search","davGetRecentSearch","results","getFiles","navigator","addEventListener","noRewrite","registration","serviceWorker","registerDavProperty","nc","___CSS_LOADER_EXPORT___","denyList","Set","code","def","x","d","options","RC","max","autostart","ignoreSameProgress","rate","lastTimestamp","lastProgress","historyTimeConstant","previousOutput","dt","start","report","progress","timestamp","deltaTimestamp","currentRate","reset","estimate","Infinity","estimatedTime","styleTagTransform","setAttributes","insert","domAPI","insertStyleElement","locals","CancelError","constructor","reason","super","isCanceled","promiseState","freeze","pending","Symbol","canceled","resolved","rejected","PCancelable","userFunction","arguments_","executor","description","defineProperties","shouldReject","get","set","boolean","onFulfilled","onRejected","onFinally","finally","setPrototypeOf","TimeoutError","AbortError","getDOMException","globalThis","DOMException","getAbortedReason","PriorityQueue","enqueue","run","element","priority","size","array","comparator","first","step","trunc","it","lowerBound","dequeue","item","shift","timeout","carryoverConcurrencyCount","intervalCap","Number","POSITIVE_INFINITY","interval","autoStart","queueClass","isFinite","throwOnTimeout","delay","setTimeout","clearInterval","canInitializeInterval","job","setInterval","newConcurrency","_resolve","function_","throwIfAborted","operation","milliseconds","fallback","customTimers","clearTimeout","timer","cancelablePromise","sign","aborted","timeoutError","clear","pTimeout","race","addAll","functions","pause","onEmpty","onSizeLessThan","limit","onIdle","sizeBy","isPaused","namespace","isNetworkError","SAFE_HTTP_METHODS","IDEMPOTENT_HTTP_METHODS","isRetryableError","isIdempotentRequestError","config","indexOf","isNetworkOrIdempotentRequestError","retryAfter","retryAfterHeader","retryAfterMs","valueOf","DEFAULT_OPTIONS","retries","retryCondition","retryDelay","_retryNumber","shouldResetTimeout","onRetry","onMaxRetryTimesExceeded","validateResponse","setCurrentState","defaultOptions","currentState","getRequestOptions","retryCount","lastRequestTime","axiosRetry","axiosInstance","requestInterceptorId","interceptors","request","use","validateStatus","responseInterceptorId","shouldRetryOrPromise","_err","shouldRetry","defaults","agent","httpAgent","httpsAgent","fixConfig","lastRequestDuration","transformRequest","abortListener","removeEventListener","handleRetry","handleMaxRetryTimesExceeded","isSafeRequestError","exponentialDelay","retryNumber","delayFactor","calculatedDelay","__defProp","defineProperty","__publicField","obj","enumerable","configurable","writable","__defNormalProp","GettextWrapper","locale","gt","sourceLocale","addTranslations","setLocale","subtitudePlaceholders","translated","vars","replace","r","gettext","original","placeholders","ngettext","singular","plural","isFileSystemFileEntry","o","FileSystemFileEntry","isFileSystemEntry","FileSystemEntry","uploadData","uploadData2","onUploadProgress","destinationFile","Blob","Destination","getChunk","file","getMaxChunksSize","fileSize","maxChunkSize","appConfig","max_chunk_size","minimumChunkSize","ceil","Status$1","Status2","Upload","_source","_file","_isChunked","_chunks","_size","_uploaded","_startTime","_status","_controller","_response","chunked","chunks","isChunked","startTime","uploaded","getTime","Directory","_originalName","_path","_children","children","lastModified","Map","c","addChild","sum","latest","originalName","from","values","webkitRelativePath","getChild","rootPath","FileSystemDirectoryEntry","reader","createReader","entries","readEntries","filePath","relPath","base","gtBuilder","setLanguage","language","detectLocale","documentElement","lang","addTranslation","translations","enableDebugMode","json","bind","Status","Uploader","_destinationFolder","_isPublic","_uploadQueue","_jobQueue","_queueSize","_queueProgress","_queueStatus","_notifiers","isPublic","destinationFolder","user","maxChunksSize","updateStats","upload2","partialSum","addNotifier","notifier","_notifyAll","warn","batchUpload","rootFolder","files2","uploadDirectory","folderPath","normalize","selectedForUpload","directories","uploads","currentUpload","UPLOADING","createDirectory","resolve2","upload","resolvedUploads","resolvedDirectoryUploads","FINISHED","flat","FAILED","fileHandle","origin","URL","encodedDestinationFile","disabledChunkUpload","blob","bytes","tempUrl","floor","initChunkWorkspace","chunksQueue","chunk","bufferStart","bufferEnd","normalizeComponent","scriptExports","render6","staticRenderFns","functionalTemplate","injectStyles","scopeId","moduleIdentifier","shadowMode","hook","_compiled","functional","_scopeId","$vnode","ssrContext","__VUE_SSR_CONTEXT__","_registeredComponents","_ssrRegister","$root","$options","shadowRoot","_injectStyles","originalRender","existing","beforeCreate","IconCancel","title","fillColor","_b","staticClass","$attrs","_e","IconFolderUpload","IconPlus","IconUpload","_sfc_main","extend","NcActionButton","NcActionCaption","NcActionSeparator","NcActions","NcIconSvgWrapper","NcProgressBar","accept","disabled","multiple","allowFolders","Function","forbiddenCharacters","setup","progressTimeId","eta","timeLeft","currentContent","newFileMenuEntries","uploadManager","getUploader","menuEntriesUpload","category","UploadFromDevice","menuEntriesNew","CreateNew","menuEntriesOther","Other","canUploadFolders","totalQueueSize","uploadedQueueSize","hasFailure","isUploading","isAssembling","ASSEMBLING","PAUSED","buttonName","immediate","getContent","setDestination","updateStatus","beforeMount","onUploadCompletion","onTriggerPick","uploadFolders","webkitdirectory","isArray","setName","setSeverity","setText","setButtons","show","handleConflicts","conflicts","getConflicts","recursive","filesToUpload","showInvalidFileNameDialog","newName","replaceInvalidCharacters","text","invalidReplacement","replaceAll","onPick","resetForm","form","date","setSeconds","time","toISOString","seconds","class","staticStyle","_l","directives","rawName","expression","_uploader","querySelector","isPublicShare","forceRecreate","ConflictPicker","recursiveUpload","submit","$destroy","$el","parentNode","removeChild","$mount","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","loaded","__webpack_modules__","m","O","chunkIds","notFulfilled","fulfilled","keys","getter","__esModule","definition","f","chunkId","u","g","prop","done","script","needAttach","scripts","getElementsByTagName","s","getAttribute","charset","setAttribute","src","onScriptComplete","prev","onerror","onload","doneFns","head","toStringTag","nmd","scriptUrl","importScripts","currentScript","test","p","baseURI","self","installedChunks","installedChunkData","errorType","realSrc","webpackJsonpCallback","parentChunkLoadingFunction","moreModules","runtime","chunkLoadingGlobal","__webpack_exports__"],"sourceRoot":""} \ No newline at end of file diff --git a/dist/files-main.js b/dist/files-main.js index 77221e8ec12a1..fb9572a17bbaa 100644 --- a/dist/files-main.js +++ b/dist/files-main.js @@ -1,2 +1,2 @@ -(()=>{var e,s,n,i={9052:e=>{"use strict";var t=Object.prototype.hasOwnProperty,s="~";function n(){}function i(e,t,s){this.fn=e,this.context=t,this.once=s||!1}function a(e,t,n,a,r){if("function"!=typeof n)throw new TypeError("The listener must be a function");var o=new i(n,a||e,r),l=s?s+t:t;return e._events[l]?e._events[l].fn?e._events[l]=[e._events[l],o]:e._events[l].push(o):(e._events[l]=o,e._eventsCount++),e}function r(e,t){0==--e._eventsCount?e._events=new n:delete e._events[t]}function o(){this._events=new n,this._eventsCount=0}Object.create&&(n.prototype=Object.create(null),(new n).__proto__||(s=!1)),o.prototype.eventNames=function(){var e,n,i=[];if(0===this._eventsCount)return i;for(n in e=this._events)t.call(e,n)&&i.push(s?n.slice(1):n);return Object.getOwnPropertySymbols?i.concat(Object.getOwnPropertySymbols(e)):i},o.prototype.listeners=function(e){var t=s?s+e:e,n=this._events[t];if(!n)return[];if(n.fn)return[n.fn];for(var i=0,a=n.length,r=new Array(a);i{"use strict";var i={};n.r(i),n.d(i,{exclude:()=>N,extract:()=>S,parse:()=>L,parseUrl:()=>U,pick:()=>P,stringify:()=>F,stringifyUrl:()=>E});var a=n(65899),r=n(26304),o=n(21777),l=n(85471);const d=(0,a.Ey)();var c=n(63814);const u="%[a-f0-9]{2}",m=new RegExp("("+u+")|([^%]+?)","gi"),g=new RegExp("("+u+")+","gi");function f(e,t){try{return[decodeURIComponent(e.join(""))]}catch{}if(1===e.length)return e;t=t||1;const s=e.slice(0,t),n=e.slice(t);return Array.prototype.concat.call([],f(s),f(n))}function p(e){try{return decodeURIComponent(e)}catch{let t=e.match(m)||[];for(let s=1;snull==e,A=e=>encodeURIComponent(e).replaceAll(/[!'()*]/g,(e=>`%${e.charCodeAt(0).toString(16).toUpperCase()}`)),C=Symbol("encodeFragmentIdentifier");function y(e){if("string"!=typeof e||1!==e.length)throw new TypeError("arrayFormatSeparator must be single character string")}function x(e,t){return t.encode?t.strict?A(e):encodeURIComponent(e):e}function b(e,t){return t.decode?function(e){if("string"!=typeof e)throw new TypeError("Expected `encodedURI` to be of type `string`, got `"+typeof e+"`");try{return decodeURIComponent(e)}catch{return function(e){const t={"%FE%FF":"��","%FF%FE":"��"};let s=g.exec(e);for(;s;){try{t[s[0]]=decodeURIComponent(s[0])}catch{const e=p(s[0]);e!==s[0]&&(t[s[0]]=e)}s=g.exec(e)}t["%C2"]="�";const n=Object.keys(t);for(const s of n)e=e.replace(new RegExp(s,"g"),t[s]);return e}(e)}}(e):e}function _(e){return Array.isArray(e)?e.sort():"object"==typeof e?_(Object.keys(e)).sort(((e,t)=>Number(e)-Number(t))).map((t=>e[t])):e}function T(e){const t=e.indexOf("#");return-1!==t&&(e=e.slice(0,t)),e}function k(e,t){return t.parseNumbers&&!Number.isNaN(Number(e))&&"string"==typeof e&&""!==e.trim()?e=Number(e):!t.parseBooleans||null===e||"true"!==e.toLowerCase()&&"false"!==e.toLowerCase()||(e="true"===e.toLowerCase()),e}function S(e){const t=(e=T(e)).indexOf("?");return-1===t?"":e.slice(t+1)}function L(e,t){y((t={decode:!0,sort:!0,arrayFormat:"none",arrayFormatSeparator:",",parseNumbers:!1,parseBooleans:!1,...t}).arrayFormatSeparator);const s=function(e){let t;switch(e.arrayFormat){case"index":return(e,s,n)=>{t=/\[(\d*)]$/.exec(e),e=e.replace(/\[\d*]$/,""),t?(void 0===n[e]&&(n[e]={}),n[e][t[1]]=s):n[e]=s};case"bracket":return(e,s,n)=>{t=/(\[])$/.exec(e),e=e.replace(/\[]$/,""),t?void 0!==n[e]?n[e]=[...n[e],s]:n[e]=[s]:n[e]=s};case"colon-list-separator":return(e,s,n)=>{t=/(:list)$/.exec(e),e=e.replace(/:list$/,""),t?void 0!==n[e]?n[e]=[...n[e],s]:n[e]=[s]:n[e]=s};case"comma":case"separator":return(t,s,n)=>{const i="string"==typeof s&&s.includes(e.arrayFormatSeparator),a="string"==typeof s&&!i&&b(s,e).includes(e.arrayFormatSeparator);s=a?b(s,e):s;const r=i||a?s.split(e.arrayFormatSeparator).map((t=>b(t,e))):null===s?s:b(s,e);n[t]=r};case"bracket-separator":return(t,s,n)=>{const i=/(\[])$/.test(t);if(t=t.replace(/\[]$/,""),!i)return void(n[t]=s?b(s,e):s);const a=null===s?[]:s.split(e.arrayFormatSeparator).map((t=>b(t,e)));void 0!==n[t]?n[t]=[...n[t],...a]:n[t]=a};default:return(e,t,s)=>{void 0!==s[e]?s[e]=[...[s[e]].flat(),t]:s[e]=t}}}(t),n=Object.create(null);if("string"!=typeof e)return n;if(!(e=e.trim().replace(/^[?#&]/,"")))return n;for(const i of e.split("&")){if(""===i)continue;const e=t.decode?i.replaceAll("+"," "):i;let[a,r]=h(e,"=");void 0===a&&(a=e),r=void 0===r?null:["comma","separator","bracket-separator"].includes(t.arrayFormat)?r:b(r,t),s(b(a,t),r,n)}for(const[e,s]of Object.entries(n))if("object"==typeof s&&null!==s)for(const[e,n]of Object.entries(s))s[e]=k(n,t);else n[e]=k(s,t);return!1===t.sort?n:(!0===t.sort?Object.keys(n).sort():Object.keys(n).sort(t.sort)).reduce(((e,t)=>{const s=n[t];return e[t]=Boolean(s)&&"object"==typeof s&&!Array.isArray(s)?_(s):s,e}),Object.create(null))}function F(e,t){if(!e)return"";y((t={encode:!0,strict:!0,arrayFormat:"none",arrayFormatSeparator:",",...t}).arrayFormatSeparator);const s=s=>t.skipNull&&w(e[s])||t.skipEmptyString&&""===e[s],n=function(e){switch(e.arrayFormat){case"index":return t=>(s,n)=>{const i=s.length;return void 0===n||e.skipNull&&null===n||e.skipEmptyString&&""===n?s:null===n?[...s,[x(t,e),"[",i,"]"].join("")]:[...s,[x(t,e),"[",x(i,e),"]=",x(n,e)].join("")]};case"bracket":return t=>(s,n)=>void 0===n||e.skipNull&&null===n||e.skipEmptyString&&""===n?s:null===n?[...s,[x(t,e),"[]"].join("")]:[...s,[x(t,e),"[]=",x(n,e)].join("")];case"colon-list-separator":return t=>(s,n)=>void 0===n||e.skipNull&&null===n||e.skipEmptyString&&""===n?s:null===n?[...s,[x(t,e),":list="].join("")]:[...s,[x(t,e),":list=",x(n,e)].join("")];case"comma":case"separator":case"bracket-separator":{const t="bracket-separator"===e.arrayFormat?"[]=":"=";return s=>(n,i)=>void 0===i||e.skipNull&&null===i||e.skipEmptyString&&""===i?n:(i=null===i?"":i,0===n.length?[[x(s,e),t,x(i,e)].join("")]:[[n,x(i,e)].join(e.arrayFormatSeparator)])}default:return t=>(s,n)=>void 0===n||e.skipNull&&null===n||e.skipEmptyString&&""===n?s:null===n?[...s,x(t,e)]:[...s,[x(t,e),"=",x(n,e)].join("")]}}(t),i={};for(const[t,n]of Object.entries(e))s(t)||(i[t]=n);const a=Object.keys(i);return!1!==t.sort&&a.sort(t.sort),a.map((s=>{const i=e[s];return void 0===i?"":null===i?x(s,t):Array.isArray(i)?0===i.length&&"bracket-separator"===t.arrayFormat?x(s,t)+"[]":i.reduce(n(s),[]).join("&"):x(s,t)+"="+x(i,t)})).filter((e=>e.length>0)).join("&")}function U(e,t){t={decode:!0,...t};let[s,n]=h(e,"#");return void 0===s&&(s=e),{url:s?.split("?")?.[0]??"",query:L(S(e),t),...t&&t.parseFragmentIdentifier&&n?{fragmentIdentifier:b(n,t)}:{}}}function E(e,t){t={encode:!0,strict:!0,[C]:!0,...t};const s=T(e.url).split("?")[0]||"";let n=F({...L(S(e.url),{sort:!1}),...e.query},t);n&&=`?${n}`;let i=function(e){let t="";const s=e.indexOf("#");return-1!==s&&(t=e.slice(s)),t}(e.url);if("string"==typeof e.fragmentIdentifier){const n=new URL(s);n.hash=e.fragmentIdentifier,i=t[C]?n.hash:`#${e.fragmentIdentifier}`}return`${s}${n}${i}`}function P(e,t,s){s={parseFragmentIdentifier:!0,[C]:!1,...s};const{url:n,query:i,fragmentIdentifier:a}=U(e,s);return E({url:n,query:v(i,t),fragmentIdentifier:a},s)}function N(e,t,s){return P(e,Array.isArray(t)?e=>!t.includes(e):(e,s)=>!t(e,s),s)}const B=i;var I=n(96763);function z(e,t){for(var s in t)e[s]=t[s];return e}var D=/[!'()*]/g,R=function(e){return"%"+e.charCodeAt(0).toString(16)},j=/%2C/g,O=function(e){return encodeURIComponent(e).replace(D,R).replace(j,",")};function M(e){try{return decodeURIComponent(e)}catch(e){}return e}var V=function(e){return null==e||"object"==typeof e?e:String(e)};function $(e){var t={};return(e=e.trim().replace(/^(\?|#|&)/,""))?(e.split("&").forEach((function(e){var s=e.replace(/\+/g," ").split("="),n=M(s.shift()),i=s.length>0?M(s.join("=")):null;void 0===t[n]?t[n]=i:Array.isArray(t[n])?t[n].push(i):t[n]=[t[n],i]})),t):t}function q(e){var t=e?Object.keys(e).map((function(t){var s=e[t];if(void 0===s)return"";if(null===s)return O(t);if(Array.isArray(s)){var n=[];return s.forEach((function(e){void 0!==e&&(null===e?n.push(O(t)):n.push(O(t)+"="+O(e)))})),n.join("&")}return O(t)+"="+O(s)})).filter((function(e){return e.length>0})).join("&"):null;return t?"?"+t:""}var H=/\/?$/;function W(e,t,s,n){var i=n&&n.options.stringifyQuery,a=t.query||{};try{a=G(a)}catch(e){}var r={name:t.name||e&&e.name,meta:e&&e.meta||{},path:t.path||"/",hash:t.hash||"",query:a,params:t.params||{},fullPath:Q(t,i),matched:e?K(e):[]};return s&&(r.redirectedFrom=Q(s,i)),Object.freeze(r)}function G(e){if(Array.isArray(e))return e.map(G);if(e&&"object"==typeof e){var t={};for(var s in e)t[s]=G(e[s]);return t}return e}var Y=W(null,{path:"/"});function K(e){for(var t=[];e;)t.unshift(e),e=e.parent;return t}function Q(e,t){var s=e.path,n=e.query;void 0===n&&(n={});var i=e.hash;return void 0===i&&(i=""),(s||"/")+(t||q)(n)+i}function J(e,t,s){return t===Y?e===t:!!t&&(e.path&&t.path?e.path.replace(H,"")===t.path.replace(H,"")&&(s||e.hash===t.hash&&Z(e.query,t.query)):!(!e.name||!t.name)&&e.name===t.name&&(s||e.hash===t.hash&&Z(e.query,t.query)&&Z(e.params,t.params)))}function Z(e,t){if(void 0===e&&(e={}),void 0===t&&(t={}),!e||!t)return e===t;var s=Object.keys(e).sort(),n=Object.keys(t).sort();return s.length===n.length&&s.every((function(s,i){var a=e[s];if(n[i]!==s)return!1;var r=t[s];return null==a||null==r?a===r:"object"==typeof a&&"object"==typeof r?Z(a,r):String(a)===String(r)}))}function X(e){for(var t=0;t=0&&(t=e.slice(n),e=e.slice(0,n));var i=e.indexOf("?");return i>=0&&(s=e.slice(i+1),e=e.slice(0,i)),{path:e,query:s,hash:t}}(i.path||""),d=t&&t.path||"/",c=l.path?se(l.path,d,s||i.append):d,u=function(e,t,s){void 0===t&&(t={});var n,i=s||$;try{n=i(e||"")}catch(e){n={}}for(var a in t){var r=t[a];n[a]=Array.isArray(r)?r.map(V):V(r)}return n}(l.query,i.query,n&&n.options.parseQuery),m=i.hash||l.hash;return m&&"#"!==m.charAt(0)&&(m="#"+m),{_normalized:!0,path:c,query:u,hash:m}}var ye,xe=function(){},be={name:"RouterLink",props:{to:{type:[String,Object],required:!0},tag:{type:String,default:"a"},custom:Boolean,exact:Boolean,exactPath:Boolean,append:Boolean,replace:Boolean,activeClass:String,exactActiveClass:String,ariaCurrentValue:{type:String,default:"page"},event:{type:[String,Array],default:"click"}},render:function(e){var t=this,s=this.$router,n=this.$route,i=s.resolve(this.to,n,this.append),a=i.location,r=i.route,o=i.href,l={},d=s.options.linkActiveClass,c=s.options.linkExactActiveClass,u=null==d?"router-link-active":d,m=null==c?"router-link-exact-active":c,g=null==this.activeClass?u:this.activeClass,f=null==this.exactActiveClass?m:this.exactActiveClass,p=r.redirectedFrom?W(null,Ce(r.redirectedFrom),null,s):r;l[f]=J(n,p,this.exactPath),l[g]=this.exact||this.exactPath?l[f]:function(e,t){return 0===e.path.replace(H,"/").indexOf(t.path.replace(H,"/"))&&(!t.hash||e.hash===t.hash)&&function(e,t){for(var s in t)if(!(s in e))return!1;return!0}(e.query,t.query)}(n,p);var h=l[f]?this.ariaCurrentValue:null,v=function(e){_e(e)&&(t.replace?s.replace(a,xe):s.push(a,xe))},w={click:_e};Array.isArray(this.event)?this.event.forEach((function(e){w[e]=v})):w[this.event]=v;var A={class:l},C=!this.$scopedSlots.$hasNormal&&this.$scopedSlots.default&&this.$scopedSlots.default({href:o,route:r,navigate:v,isActive:l[g],isExactActive:l[f]});if(C){if(1===C.length)return C[0];if(C.length>1||!C.length)return 0===C.length?e():e("span",{},C)}if("a"===this.tag)A.on=w,A.attrs={href:o,"aria-current":h};else{var y=Te(this.$slots.default);if(y){y.isStatic=!1;var x=y.data=z({},y.data);for(var b in x.on=x.on||{},x.on){var _=x.on[b];b in w&&(x.on[b]=Array.isArray(_)?_:[_])}for(var T in w)T in x.on?x.on[T].push(w[T]):x.on[T]=v;var k=y.data.attrs=z({},y.data.attrs);k.href=o,k["aria-current"]=h}else A.on=w}return e(this.tag,A,this.$slots.default)}};function _e(e){if(!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey||e.defaultPrevented||void 0!==e.button&&0!==e.button)){if(e.currentTarget&&e.currentTarget.getAttribute){var t=e.currentTarget.getAttribute("target");if(/\b_blank\b/i.test(t))return}return e.preventDefault&&e.preventDefault(),!0}}function Te(e){if(e)for(var t,s=0;s-1&&(l.params[m]=s.params[m]);return l.path=Ae(c.path,l.params),o(c,l,r)}if(l.path){l.params={};for(var g=0;g-1}function st(e,t){return tt(e)&&e._isRouter&&(null==t||e.type===t)}function nt(e,t,s){var n=function(i){i>=e.length?s():e[i]?t(e[i],(function(){n(i+1)})):n(i+1)};n(0)}function it(e,t){return at(e.map((function(e){return Object.keys(e.components).map((function(s){return t(e.components[s],e.instances[s],e,s)}))})))}function at(e){return Array.prototype.concat.apply([],e)}var rt="function"==typeof Symbol&&"symbol"==typeof Symbol.toStringTag;function ot(e){var t=!1;return function(){for(var s=[],n=arguments.length;n--;)s[n]=arguments[n];if(!t)return t=!0,e.apply(this,s)}}var lt=function(e,t){this.router=e,this.base=function(e){if(!e)if(ke){var t=document.querySelector("base");e=(e=t&&t.getAttribute("href")||"/").replace(/^https?:\/\/[^\/]+/,"")}else e="/";return"/"!==e.charAt(0)&&(e="/"+e),e.replace(/\/$/,"")}(t),this.current=Y,this.pending=null,this.ready=!1,this.readyCbs=[],this.readyErrorCbs=[],this.errorCbs=[],this.listeners=[]};function dt(e,t,s,n){var i=it(e,(function(e,n,i,a){var r=function(e,t){return"function"!=typeof e&&(e=ye.extend(e)),e.options[t]}(e,t);if(r)return Array.isArray(r)?r.map((function(e){return s(e,n,i,a)})):s(r,n,i,a)}));return at(n?i.reverse():i)}function ct(e,t){if(t)return function(){return e.apply(t,arguments)}}lt.prototype.listen=function(e){this.cb=e},lt.prototype.onReady=function(e,t){this.ready?e():(this.readyCbs.push(e),t&&this.readyErrorCbs.push(t))},lt.prototype.onError=function(e){this.errorCbs.push(e)},lt.prototype.transitionTo=function(e,t,s){var n,i=this;try{n=this.router.match(e,this.current)}catch(e){throw this.errorCbs.forEach((function(t){t(e)})),e}var a=this.current;this.confirmTransition(n,(function(){i.updateRoute(n),t&&t(n),i.ensureURL(),i.router.afterHooks.forEach((function(e){e&&e(n,a)})),i.ready||(i.ready=!0,i.readyCbs.forEach((function(e){e(n)})))}),(function(e){s&&s(e),e&&!i.ready&&(st(e,Je.redirected)&&a===Y||(i.ready=!0,i.readyErrorCbs.forEach((function(t){t(e)}))))}))},lt.prototype.confirmTransition=function(e,t,s){var n=this,i=this.current;this.pending=e;var a,r,o=function(e){!st(e)&&tt(e)&&(n.errorCbs.length?n.errorCbs.forEach((function(t){t(e)})):I.error(e)),s&&s(e)},l=e.matched.length-1,d=i.matched.length-1;if(J(e,i)&&l===d&&e.matched[l]===i.matched[d])return this.ensureURL(),e.hash&&je(this.router,i,e,!1),o(((r=Xe(a=i,e,Je.duplicated,'Avoided redundant navigation to current location: "'+a.fullPath+'".')).name="NavigationDuplicated",r));var c,u=function(e,t){var s,n=Math.max(e.length,t.length);for(s=0;s0)){var t=this.router,s=t.options.scrollBehavior,n=Ye&&s;n&&this.listeners.push(Re());var i=function(){var s=e.current,i=mt(e.base);e.current===Y&&i===e._startLocation||e.transitionTo(i,(function(e){n&&je(t,e,s,!0)}))};window.addEventListener("popstate",i),this.listeners.push((function(){window.removeEventListener("popstate",i)}))}},t.prototype.go=function(e){window.history.go(e)},t.prototype.push=function(e,t,s){var n=this,i=this.current;this.transitionTo(e,(function(e){Ke(ne(n.base+e.fullPath)),je(n.router,e,i,!1),t&&t(e)}),s)},t.prototype.replace=function(e,t,s){var n=this,i=this.current;this.transitionTo(e,(function(e){Qe(ne(n.base+e.fullPath)),je(n.router,e,i,!1),t&&t(e)}),s)},t.prototype.ensureURL=function(e){if(mt(this.base)!==this.current.fullPath){var t=ne(this.base+this.current.fullPath);e?Ke(t):Qe(t)}},t.prototype.getCurrentLocation=function(){return mt(this.base)},t}(lt);function mt(e){var t=window.location.pathname,s=t.toLowerCase(),n=e.toLowerCase();return!e||s!==n&&0!==s.indexOf(ne(n+"/"))||(t=t.slice(e.length)),(t||"/")+window.location.search+window.location.hash}var gt=function(e){function t(t,s,n){e.call(this,t,s),n&&function(e){var t=mt(e);if(!/^\/#/.test(t))return window.location.replace(ne(e+"/#"+t)),!0}(this.base)||ft()}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.setupListeners=function(){var e=this;if(!(this.listeners.length>0)){var t=this.router.options.scrollBehavior,s=Ye&&t;s&&this.listeners.push(Re());var n=function(){var t=e.current;ft()&&e.transitionTo(pt(),(function(n){s&&je(e.router,n,t,!0),Ye||wt(n.fullPath)}))},i=Ye?"popstate":"hashchange";window.addEventListener(i,n),this.listeners.push((function(){window.removeEventListener(i,n)}))}},t.prototype.push=function(e,t,s){var n=this,i=this.current;this.transitionTo(e,(function(e){vt(e.fullPath),je(n.router,e,i,!1),t&&t(e)}),s)},t.prototype.replace=function(e,t,s){var n=this,i=this.current;this.transitionTo(e,(function(e){wt(e.fullPath),je(n.router,e,i,!1),t&&t(e)}),s)},t.prototype.go=function(e){window.history.go(e)},t.prototype.ensureURL=function(e){var t=this.current.fullPath;pt()!==t&&(e?vt(t):wt(t))},t.prototype.getCurrentLocation=function(){return pt()},t}(lt);function ft(){var e=pt();return"/"===e.charAt(0)||(wt("/"+e),!1)}function pt(){var e=window.location.href,t=e.indexOf("#");return t<0?"":e=e.slice(t+1)}function ht(e){var t=window.location.href,s=t.indexOf("#");return(s>=0?t.slice(0,s):t)+"#"+e}function vt(e){Ye?Ke(ht(e)):window.location.hash=e}function wt(e){Ye?Qe(ht(e)):window.location.replace(ht(e))}var At=function(e){function t(t,s){e.call(this,t,s),this.stack=[],this.index=-1}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.push=function(e,t,s){var n=this;this.transitionTo(e,(function(e){n.stack=n.stack.slice(0,n.index+1).concat(e),n.index++,t&&t(e)}),s)},t.prototype.replace=function(e,t,s){var n=this;this.transitionTo(e,(function(e){n.stack=n.stack.slice(0,n.index).concat(e),t&&t(e)}),s)},t.prototype.go=function(e){var t=this,s=this.index+e;if(!(s<0||s>=this.stack.length)){var n=this.stack[s];this.confirmTransition(n,(function(){var e=t.current;t.index=s,t.updateRoute(n),t.router.afterHooks.forEach((function(t){t&&t(n,e)}))}),(function(e){st(e,Je.duplicated)&&(t.index=s)}))}},t.prototype.getCurrentLocation=function(){var e=this.stack[this.stack.length-1];return e?e.fullPath:"/"},t.prototype.ensureURL=function(){},t}(lt),Ct=function(e){void 0===e&&(e={}),this.app=null,this.apps=[],this.options=e,this.beforeHooks=[],this.resolveHooks=[],this.afterHooks=[],this.matcher=Ue(e.routes||[],this);var t=e.mode||"hash";switch(this.fallback="history"===t&&!Ye&&!1!==e.fallback,this.fallback&&(t="hash"),ke||(t="abstract"),this.mode=t,t){case"history":this.history=new ut(this,e.base);break;case"hash":this.history=new gt(this,e.base,this.fallback);break;case"abstract":this.history=new At(this,e.base)}},yt={currentRoute:{configurable:!0}};Ct.prototype.match=function(e,t,s){return this.matcher.match(e,t,s)},yt.currentRoute.get=function(){return this.history&&this.history.current},Ct.prototype.init=function(e){var t=this;if(this.apps.push(e),e.$once("hook:destroyed",(function(){var s=t.apps.indexOf(e);s>-1&&t.apps.splice(s,1),t.app===e&&(t.app=t.apps[0]||null),t.app||t.history.teardown()})),!this.app){this.app=e;var s=this.history;if(s instanceof ut||s instanceof gt){var n=function(e){s.setupListeners(),function(e){var n=s.current,i=t.options.scrollBehavior;Ye&&i&&"fullPath"in e&&je(t,e,n,!1)}(e)};s.transitionTo(s.getCurrentLocation(),n,n)}s.listen((function(e){t.apps.forEach((function(t){t._route=e}))}))}},Ct.prototype.beforeEach=function(e){return bt(this.beforeHooks,e)},Ct.prototype.beforeResolve=function(e){return bt(this.resolveHooks,e)},Ct.prototype.afterEach=function(e){return bt(this.afterHooks,e)},Ct.prototype.onReady=function(e,t){this.history.onReady(e,t)},Ct.prototype.onError=function(e){this.history.onError(e)},Ct.prototype.push=function(e,t,s){var n=this;if(!t&&!s&&"undefined"!=typeof Promise)return new Promise((function(t,s){n.history.push(e,t,s)}));this.history.push(e,t,s)},Ct.prototype.replace=function(e,t,s){var n=this;if(!t&&!s&&"undefined"!=typeof Promise)return new Promise((function(t,s){n.history.replace(e,t,s)}));this.history.replace(e,t,s)},Ct.prototype.go=function(e){this.history.go(e)},Ct.prototype.back=function(){this.go(-1)},Ct.prototype.forward=function(){this.go(1)},Ct.prototype.getMatchedComponents=function(e){var t=e?e.matched?e:this.resolve(e).route:this.currentRoute;return t?[].concat.apply([],t.matched.map((function(e){return Object.keys(e.components).map((function(t){return e.components[t]}))}))):[]},Ct.prototype.resolve=function(e,t,s){var n=Ce(e,t=t||this.history.current,s,this),i=this.match(n,t),a=i.redirectedFrom||i.fullPath,r=function(e,t,s){var n="hash"===s?"#"+t:t;return e?ne(e+"/"+n):n}(this.history.base,a,this.mode);return{location:n,route:i,href:r,normalizedTo:n,resolved:i}},Ct.prototype.getRoutes=function(){return this.matcher.getRoutes()},Ct.prototype.addRoute=function(e,t){this.matcher.addRoute(e,t),this.history.current!==Y&&this.history.transitionTo(this.history.getCurrentLocation())},Ct.prototype.addRoutes=function(e){this.matcher.addRoutes(e),this.history.current!==Y&&this.history.transitionTo(this.history.getCurrentLocation())},Object.defineProperties(Ct.prototype,yt);var xt=Ct;function bt(e,t){return e.push(t),function(){var s=e.indexOf(t);s>-1&&e.splice(s,1)}}Ct.install=function e(t){if(!e.installed||ye!==t){e.installed=!0,ye=t;var s=function(e){return void 0!==e},n=function(e,t){var n=e.$options._parentVnode;s(n)&&s(n=n.data)&&s(n=n.registerRouteInstance)&&n(e,t)};t.mixin({beforeCreate:function(){s(this.$options.router)?(this._routerRoot=this,this._router=this.$options.router,this._router.init(this),t.util.defineReactive(this,"_route",this._router.history.current)):this._routerRoot=this.$parent&&this.$parent._routerRoot||this,n(this,this)},destroyed:function(){n(this)}}),Object.defineProperty(t.prototype,"$router",{get:function(){return this._routerRoot._router}}),Object.defineProperty(t.prototype,"$route",{get:function(){return this._routerRoot._route}}),t.component("RouterView",ee),t.component("RouterLink",be);var i=t.config.optionMergeStrategies;i.beforeRouteEnter=i.beforeRouteLeave=i.beforeRouteUpdate=i.created}},Ct.version="3.6.5",Ct.isNavigationFailure=st,Ct.NavigationFailureType=Je,Ct.START_LOCATION=Y,ke&&window.Vue&&window.Vue.use(Ct),l.Ay.use(xt);const _t=xt.prototype.push;xt.prototype.push=function(e,t,s){return t||s?_t.call(this,e,t,s):_t.call(this,e).catch((e=>e))};const Tt=new xt({mode:"history",base:(0,c.Jv)("/apps/files"),linkActiveClass:"active",routes:[{path:"/",redirect:{name:"filelist",params:{view:"files"}}},{path:"/:view/:fileid(\\d+)?",name:"filelist",props:!0}],stringifyQuery(e){const t=B.stringify(e).replace(/%2F/gim,"/");return t?"?"+t:""}});function kt(e,t,s){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e;var s=e[Symbol.toPrimitive];if(void 0!==s){var n=s.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:s,enumerable:!0,configurable:!0,writable:!0}):e[t]=s,e}var St=n(96763);var Lt=n(22378),Ft=n(61338),Ut=n(53334);const Et={name:"CogIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};var Pt=n(14486);const Nt=(0,Pt.A)(Et,(function(){var e=this,t=e._self._c;return t("span",e._b({staticClass:"material-design-icon cog-icon",attrs:{"aria-hidden":!e.title||null,"aria-label":e.title,role:"img"},on:{click:function(t){return e.$emit("click",t)}}},"span",e.$attrs,!1),[t("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[t("path",{attrs:{d:"M12,15.5A3.5,3.5 0 0,1 8.5,12A3.5,3.5 0 0,1 12,8.5A3.5,3.5 0 0,1 15.5,12A3.5,3.5 0 0,1 12,15.5M19.43,12.97C19.47,12.65 19.5,12.33 19.5,12C19.5,11.67 19.47,11.34 19.43,11L21.54,9.37C21.73,9.22 21.78,8.95 21.66,8.73L19.66,5.27C19.54,5.05 19.27,4.96 19.05,5.05L16.56,6.05C16.04,5.66 15.5,5.32 14.87,5.07L14.5,2.42C14.46,2.18 14.25,2 14,2H10C9.75,2 9.54,2.18 9.5,2.42L9.13,5.07C8.5,5.32 7.96,5.66 7.44,6.05L4.95,5.05C4.73,4.96 4.46,5.05 4.34,5.27L2.34,8.73C2.21,8.95 2.27,9.22 2.46,9.37L4.57,11C4.53,11.34 4.5,11.67 4.5,12C4.5,12.33 4.53,12.65 4.57,12.97L2.46,14.63C2.27,14.78 2.21,15.05 2.34,15.27L4.34,18.73C4.46,18.95 4.73,19.03 4.95,18.95L7.44,17.94C7.96,18.34 8.5,18.68 9.13,18.93L9.5,21.58C9.54,21.82 9.75,22 10,22H14C14.25,22 14.46,21.82 14.5,21.58L14.87,18.93C15.5,18.67 16.04,18.34 16.56,17.94L19.05,18.95C19.27,19.03 19.54,18.95 19.66,18.73L21.66,15.27C21.78,15.05 21.73,14.78 21.54,14.63L19.43,12.97Z"}},[e.title?t("title",[e._v(e._s(e.title))]):e._e()])])])}),[],!1,null,null,null).exports;var Bt=n(42530),It=n(52439),zt=n(6695);function Dt(e,t,s){var n,i=s||{},a=i.noTrailing,r=void 0!==a&&a,o=i.noLeading,l=void 0!==o&&o,d=i.debounceMode,c=void 0===d?void 0:d,u=!1,m=0;function g(){n&&clearTimeout(n)}function f(){for(var s=arguments.length,i=new Array(s),a=0;ae?l?(m=Date.now(),r||(n=setTimeout(c?p:f,e))):f():!0!==r&&(n=setTimeout(c?p:f,void 0===c?e-d:e)))}return f.cancel=function(e){var t=(e||{}).upcomingOnly,s=void 0!==t&&t;g(),u=!s},f}var Rt=n(32981),jt=n(85168),Ot=n(65043);const Mt={name:"ChartPieIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},Vt=(0,Pt.A)(Mt,(function(){var e=this,t=e._self._c;return t("span",e._b({staticClass:"material-design-icon chart-pie-icon",attrs:{"aria-hidden":!e.title||null,"aria-label":e.title,role:"img"},on:{click:function(t){return e.$emit("click",t)}}},"span",e.$attrs,!1),[t("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[t("path",{attrs:{d:"M11,2V22C5.9,21.5 2,17.2 2,12C2,6.8 5.9,2.5 11,2M13,2V11H22C21.5,6.2 17.8,2.5 13,2M13,13V22C17.7,21.5 21.5,17.8 22,13H13Z"}},[e.title?t("title",[e._v(e._s(e.title))]):e._e()])])])}),[],!1,null,null,null).exports;var $t=n(95101);const qt=(0,n(35947).YK)().setApp("files").detectUser().build(),Ht={name:"NavigationQuota",components:{ChartPie:Vt,NcAppNavigationItem:It.A,NcProgressBar:$t.A},data:()=>({loadingStorageStats:!1,storageStats:(0,Rt.C)("files","storageStats",null)}),computed:{storageStatsTitle(){var e,t,s;const n=(0,r.v7)(null===(e=this.storageStats)||void 0===e?void 0:e.used,!1,!1),i=(0,r.v7)(null===(t=this.storageStats)||void 0===t?void 0:t.quota,!1,!1);return(null===(s=this.storageStats)||void 0===s?void 0:s.quota)<0?this.t("files","{usedQuotaByte} used",{usedQuotaByte:n}):this.t("files","{used} of {quota} used",{used:n,quota:i})},storageStatsTooltip(){return this.storageStats.relative?this.t("files","{relative}% used",this.storageStats):""}},beforeMount(){setInterval(this.throttleUpdateStorageStats,6e4),(0,Ft.B1)("files:node:created",this.throttleUpdateStorageStats),(0,Ft.B1)("files:node:deleted",this.throttleUpdateStorageStats),(0,Ft.B1)("files:node:moved",this.throttleUpdateStorageStats),(0,Ft.B1)("files:node:updated",this.throttleUpdateStorageStats)},mounted(){var e,t;(null===(e=this.storageStats)||void 0===e?void 0:e.quota)>0&&(null===(t=this.storageStats)||void 0===t?void 0:t.free)<=0&&this.showStorageFullWarning()},methods:{debounceUpdateStorageStats:(Wt={}.atBegin,Dt(200,(function(e){this.updateStorageStats(e)}),{debounceMode:!1!==(void 0!==Wt&&Wt)})),throttleUpdateStorageStats:Dt(1e3,(function(e){this.updateStorageStats(e)})),async updateStorageStats(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;if(!this.loadingStorageStats){this.loadingStorageStats=!0;try{var s,n,i,a;const e=await Ot.Ay.get((0,c.Jv)("/apps/files/api/v1/stats"));if(null==e||null===(s=e.data)||void 0===s||!s.data)throw new Error("Invalid storage stats");(null===(n=this.storageStats)||void 0===n?void 0:n.free)>0&&(null===(i=e.data.data)||void 0===i?void 0:i.free)<=0&&(null===(a=e.data.data)||void 0===a?void 0:a.quota)>0&&this.showStorageFullWarning(),this.storageStats=e.data.data}catch(s){qt.error("Could not refresh storage stats",{error:s}),e&&(0,jt.Qg)(t("files","Could not refresh storage stats"))}finally{this.loadingStorageStats=!1}}},showStorageFullWarning(){(0,jt.Qg)(this.t("files","Your storage is full, files can not be updated or synced anymore!"))},t:Ut.Tl}};var Wt,Gt=n(85072),Yt=n.n(Gt),Kt=n(97825),Qt=n.n(Kt),Jt=n(77659),Zt=n.n(Jt),Xt=n(55056),es=n.n(Xt),ts=n(10540),ss=n.n(ts),ns=n(41113),is=n.n(ns),as=n(91210),rs={};rs.styleTagTransform=is(),rs.setAttributes=es(),rs.insert=Zt().bind(null,"head"),rs.domAPI=Qt(),rs.insertStyleElement=ss(),Yt()(as.A,rs),as.A&&as.A.locals&&as.A.locals;const os=(0,Pt.A)(Ht,(function(){var e=this,t=e._self._c;return e.storageStats?t("NcAppNavigationItem",{staticClass:"app-navigation-entry__settings-quota",class:{"app-navigation-entry__settings-quota--not-unlimited":e.storageStats.quota>=0},attrs:{"aria-label":e.t("files","Storage informations"),loading:e.loadingStorageStats,name:e.storageStatsTitle,title:e.storageStatsTooltip,"data-cy-files-navigation-settings-quota":""},on:{click:function(t){return t.stopPropagation(),t.preventDefault(),e.debounceUpdateStorageStats.apply(null,arguments)}}},[t("ChartPie",{attrs:{slot:"icon",size:20},slot:"icon"}),e._v(" "),e.storageStats.quota>=0?t("NcProgressBar",{attrs:{slot:"extra",error:e.storageStats.relative>80,value:Math.min(e.storageStats.relative,100)},slot:"extra"}):e._e()],1):e._e()}),[],!1,null,"3e968815",null).exports;var ls=n(89902),ds=n(947),cs=n(32073);const us={name:"ClipboardIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},ms=(0,Pt.A)(us,(function(){var e=this,t=e._self._c;return t("span",e._b({staticClass:"material-design-icon clipboard-icon",attrs:{"aria-hidden":!e.title||null,"aria-label":e.title,role:"img"},on:{click:function(t){return e.$emit("click",t)}}},"span",e.$attrs,!1),[t("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[t("path",{attrs:{d:"M19,3H14.82C14.4,1.84 13.3,1 12,1C10.7,1 9.6,1.84 9.18,3H5A2,2 0 0,0 3,5V19A2,2 0 0,0 5,21H19A2,2 0 0,0 21,19V5A2,2 0 0,0 19,3M12,3A1,1 0 0,1 13,4A1,1 0 0,1 12,5A1,1 0 0,1 11,4A1,1 0 0,1 12,3"}},[e.title?t("title",[e._v(e._s(e.title))]):e._e()])])])}),[],!1,null,null,null).exports;var gs=n(44492);const fs={name:"Setting",props:{el:{type:Function,required:!0}},mounted(){this.$el.appendChild(this.el())}},ps=(0,Pt.A)(fs,(function(){return(0,this._self._c)("div")}),[],!1,null,null,null).exports,hs=(0,Rt.C)("files","config",{show_hidden:!1,crop_image_previews:!0,sort_favorites_first:!0,sort_folders_first:!0,grid_view:!1}),vs=function(){const e=(0,a.nY)("userconfig",{state:()=>({userConfig:hs}),actions:{onUpdate(e,t){l.Ay.set(this.userConfig,e,t)},async update(e,t){await Ot.Ay.put((0,c.Jv)("/apps/files/api/v1/config/"+e),{value:t}),(0,Ft.Ic)("files:config:updated",{key:e,value:t})}}})(...arguments);return e._initialized||((0,Ft.B1)("files:config:updated",(function(t){let{key:s,value:n}=t;e.onUpdate(s,n)})),e._initialized=!0),e},ws={name:"Settings",components:{Clipboard:ms,NcAppSettingsDialog:ls.N,NcAppSettingsSection:ds.A,NcCheckboxRadioSwitch:cs.A,NcInputField:gs.A,Setting:ps},props:{open:{type:Boolean,default:!1}},setup:()=>({userConfigStore:vs()}),data(){var e,t,s;return{settings:(null===(e=window.OCA)||void 0===e||null===(e=e.Files)||void 0===e||null===(e=e.Settings)||void 0===e?void 0:e.settings)||[],webdavUrl:(0,c.dC)("dav/files/"+encodeURIComponent(null===(t=(0,o.HW)())||void 0===t?void 0:t.uid)),webdavDocs:"https://docs.nextcloud.com/server/stable/go.php?to=user-webdav",appPasswordUrl:(0,c.Jv)("/settings/user/security#generate-app-token-section"),webdavUrlCopied:!1,enableGridView:null===(s=(0,Rt.C)("core","config",[])["enable_non-accessible_features"])||void 0===s||s}},computed:{userConfig(){return this.userConfigStore.userConfig}},beforeMount(){this.settings.forEach((e=>e.open()))},beforeDestroy(){this.settings.forEach((e=>e.close()))},methods:{onClose(){this.$emit("close")},setConfig(e,t){this.userConfigStore.update(e,t)},async copyCloudId(){document.querySelector("input#webdav-url-input").select(),navigator.clipboard?(await navigator.clipboard.writeText(this.webdavUrl),this.webdavUrlCopied=!0,(0,jt.Te)(t("files","WebDAV URL copied to clipboard")),setTimeout((()=>{this.webdavUrlCopied=!1}),5e3)):(0,jt.Qg)(t("files","Clipboard is not available"))},t:Ut.Tl}};var As=n(8645),Cs={};Cs.styleTagTransform=is(),Cs.setAttributes=es(),Cs.insert=Zt().bind(null,"head"),Cs.domAPI=Qt(),Cs.insertStyleElement=ss(),Yt()(As.A,Cs),As.A&&As.A.locals&&As.A.locals;const ys=(0,Pt.A)(ws,(function(){var e=this,t=e._self._c;return t("NcAppSettingsDialog",{attrs:{open:e.open,"show-navigation":!0,name:e.t("files","Files settings")},on:{"update:open":e.onClose}},[t("NcAppSettingsSection",{attrs:{id:"settings",name:e.t("files","Files settings")}},[t("NcCheckboxRadioSwitch",{attrs:{"data-cy-files-settings-setting":"sort_favorites_first",checked:e.userConfig.sort_favorites_first},on:{"update:checked":function(t){return e.setConfig("sort_favorites_first",t)}}},[e._v("\n\t\t\t"+e._s(e.t("files","Sort favorites first"))+"\n\t\t")]),e._v(" "),t("NcCheckboxRadioSwitch",{attrs:{"data-cy-files-settings-setting":"sort_folders_first",checked:e.userConfig.sort_folders_first},on:{"update:checked":function(t){return e.setConfig("sort_folders_first",t)}}},[e._v("\n\t\t\t"+e._s(e.t("files","Sort folders before files"))+"\n\t\t")]),e._v(" "),t("NcCheckboxRadioSwitch",{attrs:{"data-cy-files-settings-setting":"show_hidden",checked:e.userConfig.show_hidden},on:{"update:checked":function(t){return e.setConfig("show_hidden",t)}}},[e._v("\n\t\t\t"+e._s(e.t("files","Show hidden files"))+"\n\t\t")]),e._v(" "),t("NcCheckboxRadioSwitch",{attrs:{"data-cy-files-settings-setting":"crop_image_previews",checked:e.userConfig.crop_image_previews},on:{"update:checked":function(t){return e.setConfig("crop_image_previews",t)}}},[e._v("\n\t\t\t"+e._s(e.t("files","Crop image previews"))+"\n\t\t")]),e._v(" "),e.enableGridView?t("NcCheckboxRadioSwitch",{attrs:{"data-cy-files-settings-setting":"grid_view",checked:e.userConfig.grid_view},on:{"update:checked":function(t){return e.setConfig("grid_view",t)}}},[e._v("\n\t\t\t"+e._s(e.t("files","Enable the grid view"))+"\n\t\t")]):e._e()],1),e._v(" "),0!==e.settings.length?t("NcAppSettingsSection",{attrs:{id:"more-settings",name:e.t("files","Additional settings")}},[e._l(e.settings,(function(e){return[t("Setting",{key:e.name,attrs:{el:e.el}})]}))],2):e._e(),e._v(" "),t("NcAppSettingsSection",{attrs:{id:"webdav",name:e.t("files","WebDAV")}},[t("NcInputField",{attrs:{id:"webdav-url-input",label:e.t("files","WebDAV URL"),"show-trailing-button":!0,success:e.webdavUrlCopied,"trailing-button-label":e.t("files","Copy to clipboard"),value:e.webdavUrl,readonly:"readonly",type:"url"},on:{focus:function(e){return e.target.select()},"trailing-button-click":e.copyCloudId},scopedSlots:e._u([{key:"trailing-button-icon",fn:function(){return[t("Clipboard",{attrs:{size:20}})]},proxy:!0}])}),e._v(" "),t("em",[t("a",{staticClass:"setting-link",attrs:{href:e.webdavDocs,target:"_blank",rel:"noreferrer noopener"}},[e._v("\n\t\t\t\t"+e._s(e.t("files","Use this address to access your Files via WebDAV"))+" ↗\n\t\t\t")])]),e._v(" "),t("br"),e._v(" "),t("em",[t("a",{staticClass:"setting-link",attrs:{href:e.appPasswordUrl}},[e._v("\n\t\t\t\t"+e._s(e.t("files","If you have enabled 2FA, you must create and use a new app password by clicking here."))+" ↗\n\t\t\t")])])],1)],1)}),[],!1,null,"44764f8d",null).exports;function xs(){const e=(0,r.bh)(),t=(0,l.IJ)(e.views),s=(0,l.IJ)(e.active);function n(e){s.value=e.detail}function i(){t.value=e.views}return(0,l.sV)((()=>{e.addEventListener("update",i),e.addEventListener("updateActive",n)})),(0,l.hi)((()=>{e.removeEventListener("update",i),e.removeEventListener("updateActive",n)})),{currentView:s,views:t}}const bs=(0,Rt.C)("files","viewConfigs",{}),_s=function(){const e=(0,a.nY)("viewconfig",{state:()=>({viewConfig:bs}),getters:{getConfig:e=>t=>e.viewConfig[t]||{}},actions:{onUpdate(e,t,s){this.viewConfig[e]||l.Ay.set(this.viewConfig,e,{}),l.Ay.set(this.viewConfig[e],t,s)},async update(e,t,s){Ot.Ay.put((0,c.Jv)("/apps/files/api/v1/views/".concat(e,"/").concat(t)),{value:s}),(0,Ft.Ic)("files:viewconfig:updated",{view:e,key:t,value:s})},setSortingBy(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"basename",t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"files";this.update(t,"sorting_mode",e),this.update(t,"sorting_direction","asc")},toggleSortingDirection(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"files";const t="asc"===(this.getConfig(e)||{sorting_direction:"asc"}).sorting_direction?"desc":"asc";this.update(e,"sorting_direction",t)}}}),t=e(...arguments);return t._initialized||((0,Ft.B1)("files:viewconfig:updated",(function(e){let{view:s,key:n,value:i}=e;t.onUpdate(s,n,i)})),t._initialized=!0),t},Ts=(0,l.pM)({name:"Navigation",components:{IconCog:Nt,NavigationQuota:os,NcAppNavigation:Bt.A,NcAppNavigationItem:It.A,NcIconSvgWrapper:zt.A,SettingsModal:ys},setup(){const e=_s(),{currentView:t,views:s}=xs();return{currentView:t,views:s,viewConfigStore:e}},data:()=>({settingsOpened:!1}),computed:{currentViewId(){var e;return(null===(e=this.$route)||void 0===e||null===(e=e.params)||void 0===e?void 0:e.view)||"files"},parentViews(){return this.views.filter((e=>!e.parent)).sort(((e,t)=>e.order-t.order))},childViews(){return this.views.filter((e=>!!e.parent)).reduce(((e,t)=>(e[t.parent]=[...e[t.parent]||[],t],e[t.parent].sort(((e,t)=>e.order-t.order)),e)),{})}},watch:{currentViewId(e,t){var s;if(this.currentViewId!==(null===(s=this.currentView)||void 0===s?void 0:s.id)){const s=this.views.find((e=>{let{id:t}=e;return t===this.currentViewId}));this.showView(s),qt.debug("Navigation changed from ".concat(t," to ").concat(e),{to:s})}}},beforeMount(){const e=this.views.find((e=>{let{id:t}=e;return t===this.currentViewId}));this.showView(e),qt.debug("Navigation mounted. Showing requested view",{view:e})},methods:{t:Ut.Tl,useExactRouteMatching(e){var t;return(null===(t=this.childViews[e.id])||void 0===t?void 0:t.length)>0},showView(e){var t,s;null===(t=window.OCA)||void 0===t||null===(t=t.Files)||void 0===t||null===(t=t.Sidebar)||void 0===t||null===(s=t.close)||void 0===s||s.call(t),this.$navigation.setActive(e),(0,Ft.Ic)("files:navigation:changed",e)},onToggleExpand(e){const t=this.isExpanded(e);e.expanded=!t,this.viewConfigStore.update(e.id,"expanded",!t)},isExpanded(e){var t;return"boolean"==typeof(null===(t=this.viewConfigStore.getConfig(e.id))||void 0===t?void 0:t.expanded)?!0===this.viewConfigStore.getConfig(e.id).expanded:!0===e.expanded},generateToNavigation(e){if(e.params){const{dir:t}=e.params;return{name:"filelist",params:e.params,query:{dir:t}}}return{name:"filelist",params:{view:e.id}}},openSettings(){this.settingsOpened=!0},onSettingsClose(){this.settingsOpened=!1}}});var ks=n(18755),Ss={};Ss.styleTagTransform=is(),Ss.setAttributes=es(),Ss.insert=Zt().bind(null,"head"),Ss.domAPI=Qt(),Ss.insertStyleElement=ss(),Yt()(ks.A,Ss),ks.A&&ks.A.locals&&ks.A.locals;const Ls=(0,Pt.A)(Ts,(function(){var e=this,t=e._self._c;return e._self._setupProxy,t("NcAppNavigation",{attrs:{"data-cy-files-navigation":"","aria-label":e.t("files","Files")},scopedSlots:e._u([{key:"list",fn:function(){return e._l(e.parentViews,(function(s){return t("NcAppNavigationItem",{key:s.id,attrs:{"allow-collapse":!0,"data-cy-files-navigation-item":s.id,exact:e.useExactRouteMatching(s),icon:s.iconClass,name:s.name,open:e.isExpanded(s),pinned:s.sticky,to:e.generateToNavigation(s)},on:{"update:open":function(t){return e.onToggleExpand(s)}}},[s.icon?t("NcIconSvgWrapper",{attrs:{slot:"icon",svg:s.icon},slot:"icon"}):e._e(),e._v(" "),e._l(e.childViews[s.id],(function(s){return t("NcAppNavigationItem",{key:s.id,attrs:{"data-cy-files-navigation-item":s.id,"exact-path":!0,icon:s.iconClass,name:s.name,to:e.generateToNavigation(s)}},[s.icon?t("NcIconSvgWrapper",{attrs:{slot:"icon",svg:s.icon},slot:"icon"}):e._e()],1)}))],2)}))},proxy:!0},{key:"footer",fn:function(){return[t("ul",{staticClass:"app-navigation-entry__settings"},[t("NavigationQuota"),e._v(" "),t("NcAppNavigationItem",{attrs:{"aria-label":e.t("files","Open the files app settings"),name:e.t("files","Files settings"),"data-cy-files-navigation-settings-button":""},on:{click:function(t){return t.preventDefault(),t.stopPropagation(),e.openSettings.apply(null,arguments)}}},[t("IconCog",{attrs:{slot:"icon",size:20},slot:"icon"})],1)],1)]},proxy:!0}])},[e._v(" "),e._v(" "),t("SettingsModal",{attrs:{open:e.settingsOpened,"data-cy-files-navigation-settings":""},on:{close:e.onSettingsClose}})],1)}),[],!1,null,"66457116",null).exports;var Fs=n(87485),Us=n(43627),Es=n(52129),Ps=n(2069),Ns=n(89979);const Bs={name:"FormatListBulletedSquareIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},Is=(0,Pt.A)(Bs,(function(){var e=this,t=e._self._c;return t("span",e._b({staticClass:"material-design-icon format-list-bulleted-square-icon",attrs:{"aria-hidden":!e.title||null,"aria-label":e.title,role:"img"},on:{click:function(t){return e.$emit("click",t)}}},"span",e.$attrs,!1),[t("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[t("path",{attrs:{d:"M3,4H7V8H3V4M9,5V7H21V5H9M3,10H7V14H3V10M9,11V13H21V11H9M3,16H7V20H3V16M9,17V19H21V17H9"}},[e.title?t("title",[e._v(e._s(e.title))]):e._e()])])])}),[],!1,null,null,null).exports;var zs=n(18195),Ds=n(9518),Rs=n(10833),js=n(46222),Os=n(27577);const Ms={name:"AccountPlusIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},Vs=(0,Pt.A)(Ms,(function(){var e=this,t=e._self._c;return t("span",e._b({staticClass:"material-design-icon account-plus-icon",attrs:{"aria-hidden":!e.title||null,"aria-label":e.title,role:"img"},on:{click:function(t){return e.$emit("click",t)}}},"span",e.$attrs,!1),[t("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[t("path",{attrs:{d:"M15,14C12.33,14 7,15.33 7,18V20H23V18C23,15.33 17.67,14 15,14M6,10V7H4V10H1V12H4V15H6V12H9V10M15,12A4,4 0 0,0 19,8A4,4 0 0,0 15,4A4,4 0 0,0 11,8A4,4 0 0,0 15,12Z"}},[e.title?t("title",[e._v(e._s(e.title))]):e._e()])])])}),[],!1,null,null,null).exports,$s={name:"ViewGridIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},qs=(0,Pt.A)($s,(function(){var e=this,t=e._self._c;return t("span",e._b({staticClass:"material-design-icon view-grid-icon",attrs:{"aria-hidden":!e.title||null,"aria-label":e.title,role:"img"},on:{click:function(t){return e.$emit("click",t)}}},"span",e.$attrs,!1),[t("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[t("path",{attrs:{d:"M3,11H11V3H3M3,21H11V13H3M13,21H21V13H13M13,3V11H21V3"}},[e.title?t("title",[e._v(e._s(e.title))]):e._e()])])])}),[],!1,null,null,null).exports;var Hs=n(49981);const Ws=new r.hY({id:"details",displayName:()=>(0,Ut.Tl)("files","Open details"),iconSvgInline:()=>Hs,enabled:e=>{var t,s,n;return 1===e.length&&!!e[0]&&!(null===(t=window)||void 0===t||null===(t=t.OCA)||void 0===t||null===(t=t.Files)||void 0===t||!t.Sidebar)&&null!==(s=(null===(n=e[0].root)||void 0===n?void 0:n.startsWith("/files/"))&&e[0].permissions!==r.aX.NONE)&&void 0!==s&&s},async exec(e,t,s){try{return await window.OCA.Files.Sidebar.open(e.path),window.OCP.Files.Router.goToRoute(null,{view:t.id,fileid:e.fileid},{...window.OCP.Files.Router.query,dir:s},!0),null}catch(e){return qt.error("Error while opening sidebar",{error:e}),!1}},order:-50}),Gs=(0,r.H4)(),Ys=async e=>{const t=(0,r.VL)(),s=await Gs.stat("".concat(r.lJ).concat(e.path),{details:!0,data:t});return(0,r.Al)(s.data)},Ks=function(){const e=(0,a.nY)("files",{state:()=>({files:{},roots:{}}),getters:{getNode:e=>t=>e.files[t],getNodes:e=>t=>t.map((t=>e.files[t])).filter(Boolean),getNodesById:e=>t=>Object.values(e.files).filter((e=>e.fileid===t)),getRoot:e=>t=>e.roots[t]},actions:{updateNodes(e){const t=e.reduce(((e,t)=>t.fileid?(e[t.source]=t,e):(qt.error("Trying to update/set a node without fileid",{node:t}),e)),{});l.Ay.set(this,"files",{...this.files,...t})},deleteNodes(e){e.forEach((e=>{e.source&&l.Ay.delete(this.files,e.source)}))},setRoot(e){let{service:t,root:s}=e;l.Ay.set(this.roots,t,s)},onDeletedNode(e){this.deleteNodes([e])},onCreatedNode(e){this.updateNodes([e])},async onUpdatedNode(e){if(!e.fileid)return void qt.error("Trying to update/set a node without fileid",{node:e});const t=this.getNodesById(e.fileid);if(t.length>1)return await Promise.all(t.map(Ys)).then(this.updateNodes),void qt.debug(t.length+" nodes updated in store",{fileid:e.fileid});e.source!==t[0].source?Ys(e).then((e=>this.updateNodes([e]))):this.updateNodes([e])}}})(...arguments);return e._initialized||((0,Ft.B1)("files:node:created",e.onCreatedNode),(0,Ft.B1)("files:node:deleted",e.onDeletedNode),(0,Ft.B1)("files:node:updated",e.onUpdatedNode),e._initialized=!0),e},Qs=function(){const e=Ks(...arguments),t=(0,a.nY)("paths",{state:()=>({paths:{}}),getters:{getPath:e=>(t,s)=>{if(e.paths[t])return e.paths[t][s]}},actions:{addPath(e){this.paths[e.service]||l.Ay.set(this.paths,e.service,{}),l.Ay.set(this.paths[e.service],e.path,e.source)},onCreatedNode(t){var s;const n=(null===(s=(0,r.bh)())||void 0===s||null===(s=s.active)||void 0===s?void 0:s.id)||"files";if(t.fileid){if(t.type===r.pt.Folder&&this.addPath({service:n,path:t.path,source:t.source}),"/"===t.dirname){const s=e.getRoot(n);return s._children||l.Ay.set(s,"_children",[]),void s._children.push(t.source)}if(this.paths[n][t.dirname]){const s=this.paths[n][t.dirname],i=e.getNode(s);return qt.debug("Path already exists, updating children",{parentFolder:i,node:t}),i?(i._children||l.Ay.set(i,"_children",[]),void i._children.push(t.source)):void qt.error("Parent folder not found",{parentSource:s})}qt.debug("Parent path does not exists, skipping children update",{node:t})}else qt.error("Node has no fileid",{node:t})}}})(...arguments);return t._initialized||((0,Ft.B1)("files:node:created",t.onCreatedNode),t._initialized=!0),t},Js=(0,a.nY)("selection",{state:()=>({selected:[],lastSelection:[],lastSelectedIndex:null}),actions:{set(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];l.Ay.set(this,"selected",[...new Set(e)])},setLastIndex(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;l.Ay.set(this,"lastSelection",e?this.selected:[]),l.Ay.set(this,"lastSelectedIndex",e)},reset(){l.Ay.set(this,"selected",[]),l.Ay.set(this,"lastSelection",[]),l.Ay.set(this,"lastSelectedIndex",null)}}});let Zs;const Xs=function(){return Zs=(0,Ps.g)(),(0,a.nY)("uploader",{state:()=>({queue:Zs.queue})})(...arguments)};function en(e){return e instanceof Date?e.toISOString():String(e)}var tn=n(91680),sn=n(49296),nn=n(71089),an=n(96763);class rn extends File{constructor(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];super([],e,{type:"httpd/unix-directory"}),function(e,t,s){(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e;var s=e[Symbol.toPrimitive];if(void 0!==s){var n=s.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:s,enumerable:!0,configurable:!0,writable:!0}):e[t]=s}(this,"_contents",void 0),this._contents=t}set contents(e){this._contents=e}get contents(){return this._contents}get size(){return this._computeDirectorySize(this)}get lastModified(){return 0===this._contents.length?Date.now():this._computeDirectoryMtime(this)}_computeDirectoryMtime(e){return e.contents.reduce(((e,t)=>t.lastModified>e?t.lastModified:e),0)}_computeDirectorySize(e){return e.contents.reduce(((e,t)=>e+t.size),0)}}const on=async e=>{if(e.isFile)return new Promise(((t,s)=>{e.file(t,s)}));qt.debug("Handling recursive file tree",{entry:e.name});const t=e,s=await ln(t),n=(await Promise.all(s.map(on))).flat();return new rn(t.name,n)},ln=e=>{const t=e.createReader();return new Promise(((e,s)=>{const n=[],i=()=>{t.readEntries((t=>{t.length?(n.push(...t),i()):e(n)}),(e=>{s(e)}))};i()}))},dn=async e=>{const t=(0,r.H4)();if(!await t.exists(e)){qt.debug("Directory does not exist, creating it",{absolutePath:e}),await t.createDirectory(e,{recursive:!0});const s=await t.stat(e,{details:!0,data:(0,r.VL)()});(0,Ft.Ic)("files:node:created",(0,r.Al)(s.data))}},cn=async(e,t,s)=>{try{const n=e.filter((e=>s.find((t=>t.basename===(e instanceof File?e.name:e.basename))))).filter(Boolean),i=e.filter((e=>!n.includes(e))),{selected:a,renamed:r}=await(0,Ps.o)(t.path,n,s);return qt.debug("Conflict resolution",{uploads:i,selected:a,renamed:r}),0===a.length&&0===r.length?((0,jt.cf)((0,Ut.Tl)("files","Conflicts resolution skipped")),qt.info("User skipped the conflict resolution"),[]):[...i,...a,...r]}catch(e){an.error(e),(0,jt.Qg)((0,Ut.Tl)("files","Upload cancelled")),qt.error("User cancelled the upload")}return[]};var un=n(36882),mn=n(39285),gn=n(49264);let fn;const pn=()=>(fn||(fn=new gn.A({concurrency:3})),fn);var hn;!function(e){e.MOVE="Move",e.COPY="Copy",e.MOVE_OR_COPY="move-or-copy"}(hn||(hn={}));const vn=e=>0!=(e.reduce(((e,t)=>Math.min(e,t.permissions)),r.aX.ALL)&r.aX.UPDATE),wn=e=>(e=>e.every((e=>{var t,s;return!JSON.parse(null!==(t=null===(s=e.attributes)||void 0===s?void 0:s["share-attributes"])&&void 0!==t?t:"[]").some((e=>"permissions"===e.scope&&!1===e.enabled&&"download"===e.key))})))(e)&&!e.some((e=>e.permissions===r.aX.NONE));var An=n(36117);const Cn=e=>(0,r.Al)(e),yn=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"/";const t=new AbortController,s=(0,r.VL)();return e="".concat(r.lJ).concat(e),new An.CancelablePromise((async(n,i,a)=>{a((()=>t.abort()));try{const i=await Gs.getDirectoryContents(e,{details:!0,data:s,includeSelf:!0,signal:t.signal}),a=i.data[0],r=i.data.slice(1);if(a.filename!==e&&"".concat(a.filename,"/")!==e)throw qt.debug('Exepected "'.concat(e,'" but got filename "').concat(a.filename,'" instead.')),new Error("Root node does not match requested path");n({folder:Cn(a),contents:r.map((e=>{try{return Cn(e)}catch(t){return qt.error("Invalid node detected '".concat(e.basename,"'"),{error:t}),null}})).filter(Boolean)})}catch(e){i(e)}}))},xn=e=>vn(e)?wn(e)?hn.MOVE_OR_COPY:hn.MOVE:hn.COPY,bn=async function(e,t,s){let n=arguments.length>3&&void 0!==arguments[3]&&arguments[3];if(!t)return;if(t.type!==r.pt.Folder)throw new Error((0,Ut.Tl)("files","Destination is not a folder"));if(s===hn.MOVE&&e.dirname===t.path)throw new Error((0,Ut.Tl)("files","This file/folder is already in that directory"));if("".concat(t.path,"/").startsWith("".concat(e.path,"/")))throw new Error((0,Ut.Tl)("files","You cannot move a file/folder onto itself or into a subfolder of itself"));l.Ay.set(e,"status",r.zI.LOADING);const i=pn();return await i.add((async()=>{const i=e=>1===e?(0,Ut.Tl)("files","(copy)"):(0,Ut.Tl)("files","(copy %n)",void 0,e);try{const a=(0,r.H4)(),o=(0,Us.join)(r.lJ,e.path),l=(0,Us.join)(r.lJ,t.path);if(s===hn.COPY){let s=e.basename;if(!n){const t=await a.getDirectoryContents(l);s=(0,r.E6)(e.basename,t.map((e=>e.basename)),{suffix:i,ignoreFileExtension:e.type===r.pt.Folder})}if(await a.copyFile(o,(0,Us.join)(l,s)),e.dirname===t.path){const{data:e}=await a.stat((0,Us.join)(l,s),{details:!0,data:(0,r.VL)()});(0,Ft.Ic)("files:node:created",(0,r.Al)(e))}}else{const s=await yn(t.path);if((0,Ps.h)([e],s.contents))try{const{selected:n,renamed:i}=await(0,Ps.o)(t.path,[e],s.contents);if(!n.length&&!i.length)return await a.deleteFile(o),void(0,Ft.Ic)("files:node:deleted",e)}catch(e){return void(0,jt.Qg)((0,Ut.Tl)("files","Move cancelled"))}await a.moveFile(o,(0,Us.join)(l,e.basename)),(0,Ft.Ic)("files:node:deleted",e)}}catch(e){if((0,Ot.F0)(e)){var a,o,d;if(412===(null===(a=e.response)||void 0===a?void 0:a.status))throw new Error((0,Ut.Tl)("files","A file or folder with that name already exists in this folder"));if(423===(null===(o=e.response)||void 0===o?void 0:o.status))throw new Error((0,Ut.Tl)("files","The files are locked"));if(404===(null===(d=e.response)||void 0===d?void 0:d.status))throw new Error((0,Ut.Tl)("files","The file does not exist anymore"));if(e.message)throw new Error(e.message)}throw qt.debug(e),new Error}finally{l.Ay.set(e,"status",void 0)}}))},_n=async function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"/",s=arguments.length>2?arguments[2]:void 0;const n=s.map((e=>e.fileid)).filter(Boolean),i=(0,jt.a1)((0,Ut.Tl)("files","Choose destination")).allowDirectories(!0).setFilter((e=>!n.includes(e.fileid))).setMimeTypeFilter([]).setMultiSelect(!1).startAt(t);return new Promise(((t,n)=>{i.setButtonFactory(((n,i)=>{const a=[],r=(0,Us.basename)(i),o=s.map((e=>e.dirname)),l=s.map((e=>e.path));return e!==hn.COPY&&e!==hn.MOVE_OR_COPY||a.push({label:r?(0,Ut.Tl)("files","Copy to {target}",{target:r},void 0,{escape:!1,sanitize:!1}):(0,Ut.Tl)("files","Copy"),type:"primary",icon:un,async callback(e){t({destination:e[0],action:hn.COPY})}}),o.includes(i)||l.includes(i)||e!==hn.MOVE&&e!==hn.MOVE_OR_COPY||a.push({label:r?(0,Ut.Tl)("files","Move to {target}",{target:r},void 0,{escape:!1,sanitize:!1}):(0,Ut.Tl)("files","Move"),type:e===hn.MOVE?"primary":"secondary",icon:mn,async callback(e){t({destination:e[0],action:hn.MOVE})}}),a})),i.build().pick().catch((e=>{qt.debug(e),e instanceof jt.vT?n(new Error((0,Ut.Tl)("files","Cancelled move or copy operation"))):n(new Error((0,Ut.Tl)("files","Move or copy operation failed")))}))}))};new r.hY({id:"move-copy",displayName(e){switch(xn(e)){case hn.MOVE:return(0,Ut.Tl)("files","Move");case hn.COPY:return(0,Ut.Tl)("files","Copy");case hn.MOVE_OR_COPY:return(0,Ut.Tl)("files","Move or copy")}},iconSvgInline:()=>mn,enabled:e=>!!e.every((e=>{var t;return null===(t=e.root)||void 0===t?void 0:t.startsWith("/files/")}))&&e.length>0&&(vn(e)||wn(e)),async exec(e,t,s){const n=xn([e]);let i;try{i=await _n(n,s,[e])}catch(e){return qt.error(e),!1}try{return await bn(e,i.destination,i.action),!0}catch(e){return!!(e instanceof Error&&e.message)&&((0,jt.Qg)(e.message),null)}},async execBatch(e,t,s){const n=xn(e),i=await _n(n,s,e),a=e.map((async e=>{try{return await bn(e,i.destination,i.action),!0}catch(t){return qt.error("Failed to ".concat(i.action," node"),{node:e,error:t}),!1}}));return await Promise.all(a)},order:15});var Tn=n(96763);const kn=async e=>{const t=e.filter((e=>"file"===e.kind||(qt.debug("Skipping dropped item",{kind:e.kind,type:e.type}),!1))).map((e=>{var t,s,n,i;return null!==(t=null!==(s=null==e||null===(n=e.getAsEntry)||void 0===n?void 0:n.call(e))&&void 0!==s?s:null==e||null===(i=e.webkitGetAsEntry)||void 0===i?void 0:i.call(e))&&void 0!==t?t:e}));let s=!1;const n=new rn("root");for(const e of t)if(e instanceof DataTransferItem){qt.warn("Could not get FilesystemEntry of item, falling back to file");const t=e.getAsFile();if(null===t){qt.warn("Could not process DataTransferItem",{type:e.type,kind:e.kind}),(0,jt.Qg)((0,Ut.Tl)("files","One of the dropped files could not be processed"));continue}if("httpd/unix-directory"===t.type||!t.type){s||(qt.warn("Browser does not support Filesystem API. Directories will not be uploaded"),(0,jt.I9)((0,Ut.Tl)("files","Your browser does not support the Filesystem API. Directories will not be uploaded")),s=!0);continue}n.contents.push(t)}else try{n.contents.push(await on(e))}catch(e){qt.error("Error while traversing file tree",{error:e})}return n},Sn=async(e,t,s)=>{const n=(0,Ps.g)();if(await(0,Ps.h)(e.contents,s)&&(e.contents=await cn(e.contents,t,s)),0===e.contents.length)return qt.info("No files to upload",{root:e}),(0,jt.cf)((0,Ut.Tl)("files","No files to upload")),[];qt.debug("Uploading files to ".concat(t.path),{root:e,contents:e.contents});const i=[],a=async(e,s)=>{for(const o of e.contents){const e=(0,Us.join)(s,o.name);if(o instanceof rn){const s=(0,nn.HS)(r.lJ,t.path,e);try{Tn.debug("Processing directory",{relativePath:e}),await dn(s),await a(o,e)}catch(e){(0,jt.Qg)((0,Ut.Tl)("files","Unable to create the directory {directory}",{directory:o.name})),qt.error("",{error:e,absolutePath:s,directory:o})}}else qt.debug("Uploading file to "+(0,Us.join)(t.path,e),{file:o}),i.push(n.upload(e,o,t.source))}};n.pause(),await a(e,"/"),n.start();const o=(await Promise.allSettled(i)).filter((e=>"rejected"===e.status));return o.length>0?(qt.error("Error while uploading files",{errors:o}),(0,jt.Qg)((0,Ut.Tl)("files","Some files could not be uploaded")),[]):(qt.debug("Files uploaded successfully"),(0,jt.Te)((0,Ut.Tl)("files","Files uploaded successfully")),Promise.all(i))},Ln=async function(e,t,s){let n=arguments.length>3&&void 0!==arguments[3]&&arguments[3];const i=[];if(await(0,Ps.h)(e,s)&&(e=await cn(e,t,s)),0===e.length)return qt.info("No files to process",{nodes:e}),void(0,jt.cf)((0,Ut.Tl)("files","No files to process"));for(const s of e)l.Ay.set(s,"status",r.zI.LOADING),i.push(bn(s,t,n?hn.COPY:hn.MOVE));const a=await Promise.allSettled(i);e.forEach((e=>l.Ay.set(e,"status",void 0)));const o=a.filter((e=>"rejected"===e.status));if(o.length>0)return qt.error("Error while copying or moving files",{errors:o}),void(0,jt.Qg)(n?(0,Ut.Tl)("files","Some files could not be copied"):(0,Ut.Tl)("files","Some files could not be moved"));qt.debug("Files copy/move successful"),(0,jt.Te)(n?(0,Ut.Tl)("files","Files copied successfully"):(0,Ut.Tl)("files","Files moved successfully"))},Fn=(0,a.nY)("dragging",{state:()=>({dragging:[]}),actions:{set(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];l.Ay.set(this,"dragging",e)},reset(){l.Ay.set(this,"dragging",[])}}}),Un=(0,l.pM)({data:()=>({filesListWidth:0}),mounted(){var e;const t=document.querySelector("#app-content-vue");this.filesListWidth=null!==(e=null==t?void 0:t.clientWidth)&&void 0!==e?e:0,this.$resizeObserver=new ResizeObserver((e=>{e.length>0&&e[0].target===t&&(this.filesListWidth=e[0].contentRect.width)})),this.$resizeObserver.observe(t)},beforeDestroy(){this.$resizeObserver.disconnect()}}),En=(0,l.pM)({name:"BreadCrumbs",components:{NcBreadcrumbs:sn.N,NcBreadcrumb:tn.N,NcIconSvgWrapper:zt.A},mixins:[Un],props:{path:{type:String,default:"/"}},setup(){const e=Fn(),t=Ks(),s=Qs(),n=Js(),i=Xs(),{currentView:a}=xs();return{draggingStore:e,filesStore:t,pathsStore:s,selectionStore:n,uploaderStore:i,currentView:a}},computed:{dirs(){var e;return["/",...this.path.split("/").filter(Boolean).map((e="/",t=>e+="".concat(t,"/"))).map((e=>e.replace(/^(.+)\/$/,"$1")))]},sections(){return this.dirs.map(((e,t)=>{const s=this.getFileSourceFromPath(e),n=s?this.getNodeFromSource(s):void 0,i={...this.$route,params:{node:null==n?void 0:n.fileid},query:{dir:e}};return{dir:e,exact:!0,name:this.getDirDisplayName(e),to:i,disableDrop:t===this.dirs.length-1}}))},isUploadInProgress(){return 0!==this.uploaderStore.queue.length},wrapUploadProgressBar(){return this.isUploadInProgress&&this.filesListWidth<512},viewIcon(){var e,t;return null!==(e=null===(t=this.currentView)||void 0===t?void 0:t.icon)&&void 0!==e?e:''},selectedFiles(){return this.selectionStore.selected},draggingFiles(){return this.draggingStore.dragging}},methods:{getNodeFromSource(e){return this.filesStore.getNode(e)},getFileSourceFromPath(e){var t;return null!==(t=this.currentView&&this.pathsStore.getPath(this.currentView.id,e))&&void 0!==t?t:null},getDirDisplayName(e){var t,s;if("/"===e)return(null===(s=this.$navigation)||void 0===s||null===(s=s.active)||void 0===s?void 0:s.name)||(0,Ut.Tl)("files","Home");const n=this.getFileSourceFromPath(e),i=n?this.getNodeFromSource(n):void 0;return(null==i||null===(t=i.attributes)||void 0===t?void 0:t.displayname)||(0,Us.basename)(e)},onClick(e){var t;(null==e||null===(t=e.query)||void 0===t?void 0:t.dir)===this.$route.query.dir&&this.$emit("reload")},onDragOver(e,t){e.dataTransfer&&(t!==this.dirs[this.dirs.length-1]?e.ctrlKey?e.dataTransfer.dropEffect="copy":e.dataTransfer.dropEffect="move":e.dataTransfer.dropEffect="none")},async onDrop(e,t){var s,n,i;if(!(this.draggingFiles||null!==(s=e.dataTransfer)&&void 0!==s&&null!==(s=s.items)&&void 0!==s&&s.length))return;e.preventDefault();const a=this.draggingFiles,o=[...(null===(n=e.dataTransfer)||void 0===n?void 0:n.items)||[]],l=await kn(o),d=await(null===(i=this.currentView)||void 0===i?void 0:i.getContents(t)),c=null==d?void 0:d.folder;if(!c)return void(0,jt.Qg)(this.t("files","Target folder does not exist any more"));const u=0!=(c.permissions&r.aX.CREATE),m=e.ctrlKey;if(!u||0!==e.button)return;if(qt.debug("Dropped",{event:e,folder:c,selection:a,fileTree:l}),l.contents.length>0)return void await Sn(l,c,d.contents);const g=a.map((e=>this.filesStore.getNode(e)));await Ln(g,c,d.contents,m),a.some((e=>this.selectedFiles.includes(e)))&&(qt.debug("Dropped selection, resetting select store..."),this.selectionStore.reset())},titleForSection(e,t){var s;return(null==t||null===(s=t.to)||void 0===s||null===(s=s.query)||void 0===s?void 0:s.dir)===this.$route.query.dir?(0,Ut.Tl)("files","Reload current directory"):0===e?(0,Ut.Tl)("files",'Go to the "{dir}" directory',t):null},ariaForSection(e){var t;return(null==e||null===(t=e.to)||void 0===t||null===(t=t.query)||void 0===t?void 0:t.dir)===this.$route.query.dir?(0,Ut.Tl)("files","Reload current directory"):null},t:Ut.Tl}});var Pn=n(12938),Nn={};Nn.styleTagTransform=is(),Nn.setAttributes=es(),Nn.insert=Zt().bind(null,"head"),Nn.domAPI=Qt(),Nn.insertStyleElement=ss(),Yt()(Pn.A,Nn),Pn.A&&Pn.A.locals&&Pn.A.locals;const Bn=(0,Pt.A)(En,(function(){var e=this,t=e._self._c;return e._self._setupProxy,t("NcBreadcrumbs",{staticClass:"files-list__breadcrumbs",class:{"files-list__breadcrumbs--with-progress":e.wrapUploadProgressBar},attrs:{"data-cy-files-content-breadcrumbs":"","aria-label":e.t("files","Current directory path")},scopedSlots:e._u([{key:"actions",fn:function(){return[e._t("actions")]},proxy:!0}],null,!0)},e._l(e.sections,(function(s,n){return t("NcBreadcrumb",e._b({key:s.dir,attrs:{dir:"auto",to:s.to,"force-icon-text":0===n&&e.filesListWidth>=486,title:e.titleForSection(n,s),"aria-description":e.ariaForSection(s)},on:{drop:function(t){return e.onDrop(t,s.dir)}},nativeOn:{click:function(t){return e.onClick(s.to)},dragover:function(t){return e.onDragOver(t,s.dir)}},scopedSlots:e._u([0===n?{key:"icon",fn:function(){return[t("NcIconSvgWrapper",{attrs:{size:20,svg:e.viewIcon}})]},proxy:!0}:null],null,!0)},"NcBreadcrumb",s,!1))})),1)}),[],!1,null,"7a939202",null).exports,In=e=>{const t=e.filter((e=>e.type===r.pt.File)).length,s=e.filter((e=>e.type===r.pt.Folder)).length;return 0===t?(0,Ut.zw)("files","{folderCount} folder","{folderCount} folders",s,{folderCount:s}):0===s?(0,Ut.zw)("files","{fileCount} file","{fileCount} files",t,{fileCount:t}):1===t?(0,Ut.zw)("files","1 file and {folderCount} folder","1 file and {folderCount} folders",s,{folderCount:s}):1===s?(0,Ut.zw)("files","{fileCount} file and 1 folder","{fileCount} files and 1 folder",t,{fileCount:t}):(0,Ut.Tl)("files","{fileCount} files and {folderCount} folders",{fileCount:t,folderCount:s})};var zn=n(51651);const Dn=(0,a.nY)("actionsmenu",{state:()=>({opened:null})}),Rn=function(){const e=(0,a.nY)("renaming",{state:()=>({renamingNode:void 0,newName:""})})(...arguments);return e._initialized||((0,Ft.B1)("files:node:rename",(function(t){e.renamingNode=t,e.newName=t.basename})),e._initialized=!0),e};var jn=n(55042);const On={name:"FileMultipleIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},Mn=(0,Pt.A)(On,(function(){var e=this,t=e._self._c;return t("span",e._b({staticClass:"material-design-icon file-multiple-icon",attrs:{"aria-hidden":!e.title||null,"aria-label":e.title,role:"img"},on:{click:function(t){return e.$emit("click",t)}}},"span",e.$attrs,!1),[t("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[t("path",{attrs:{d:"M15,7H20.5L15,1.5V7M8,0H16L22,6V18A2,2 0 0,1 20,20H8C6.89,20 6,19.1 6,18V2A2,2 0 0,1 8,0M4,4V22H20V24H4A2,2 0 0,1 2,22V4H4Z"}},[e.title?t("title",[e._v(e._s(e.title))]):e._e()])])])}),[],!1,null,null,null).exports;var Vn=n(11358);const $n=l.Ay.extend({name:"DragAndDropPreview",components:{FileMultipleIcon:Mn,FolderIcon:Vn.A},data:()=>({nodes:[]}),computed:{isSingleNode(){return 1===this.nodes.length},isSingleFolder(){return this.isSingleNode&&this.nodes[0].type===r.pt.Folder},name(){return this.size?"".concat(this.summary," – ").concat(this.size):this.summary},size(){const e=this.nodes.reduce(((e,t)=>e+t.size||0),0),t=parseInt(e,10)||0;return"number"!=typeof t||t<0?null:(0,r.v7)(t,!0)},summary(){if(this.isSingleNode){var e;const t=this.nodes[0];return(null===(e=t.attributes)||void 0===e?void 0:e.displayname)||t.basename}return In(this.nodes)}},methods:{update(e){this.nodes=e,this.$refs.previewImg.replaceChildren(),e.slice(0,3).forEach((e=>{const t=document.querySelector('[data-cy-files-list-row-fileid="'.concat(e.fileid,'"] .files-list__row-icon img'));t&&this.$refs.previewImg.appendChild(t.parentNode.cloneNode(!0))})),this.$nextTick((()=>{this.$emit("loaded",this.$el)}))}}}),qn=$n;var Hn=n(12617),Wn={};Wn.styleTagTransform=is(),Wn.setAttributes=es(),Wn.insert=Zt().bind(null,"head"),Wn.domAPI=Qt(),Wn.insertStyleElement=ss(),Yt()(Hn.A,Wn),Hn.A&&Hn.A.locals&&Hn.A.locals;const Gn=(0,Pt.A)(qn,(function(){var e=this,t=e._self._c;return e._self._setupProxy,t("div",{staticClass:"files-list-drag-image"},[t("span",{staticClass:"files-list-drag-image__icon"},[t("span",{ref:"previewImg"}),e._v(" "),e.isSingleFolder?t("FolderIcon"):t("FileMultipleIcon")],1),e._v(" "),t("span",{staticClass:"files-list-drag-image__name"},[e._v(e._s(e.name))])])}),[],!1,null,null,null).exports,Yn=l.Ay.extend(Gn);let Kn;l.Ay.directive("onClickOutside",jn.z0);const Qn=(0,l.pM)({props:{source:{type:[r.vd,r.ZH,r.bP],required:!0},nodes:{type:Array,required:!0},filesListWidth:{type:Number,default:0}},data:()=>({loading:"",dragover:!1,gridMode:!1}),computed:{currentDir(){var e;return((null===(e=this.$route.query)||void 0===e||null===(e=e.dir)||void 0===e?void 0:e.toString())||"/").replace(/^(.+)\/$/,"$1")},currentFileId(){var e,t;return(null===(e=this.$route.params)||void 0===e?void 0:e.fileid)||(null===(t=this.$route.query)||void 0===t?void 0:t.fileid)||null},fileid(){var e;return null!==(e=this.source.fileid)&&void 0!==e?e:0},uniqueId(){return function(e){let t=0;for(let s=0;s>>0}(this.source.source)},isLoading(){return this.source.status===r.zI.LOADING},extension(){var e;return null!==(e=this.source.attributes)&&void 0!==e&&e.displayname?(0,Us.extname)(this.source.attributes.displayname):this.source.extension||""},displayName(){const e=this.extension,t=String(this.source.attributes.displayname||this.source.basename);return e?t.slice(0,0-e.length):t},draggingFiles(){return this.draggingStore.dragging},selectedFiles(){return this.selectionStore.selected},isSelected(){return this.selectedFiles.includes(this.source.source)},isRenaming(){return this.renamingStore.renamingNode===this.source},isRenamingSmallScreen(){return this.isRenaming&&this.filesListWidth<512},isActive(){return String(this.fileid)===String(this.currentFileId)},isFailedSource(){return this.source.status===r.zI.FAILED},canDrag(){if(this.isRenaming)return!1;const e=e=>0!=((null==e?void 0:e.permissions)&r.aX.UPDATE);return this.selectedFiles.length>0?this.selectedFiles.map((e=>this.filesStore.getNode(e))).every(e):e(this.source)},canDrop(){return this.source.type===r.pt.Folder&&!this.draggingFiles.includes(this.source.source)&&0!=(this.source.permissions&r.aX.CREATE)},openedMenu:{get(){return this.actionsMenuStore.opened===this.uniqueId.toString()},set(e){this.actionsMenuStore.opened=e?this.uniqueId.toString():null}},isRenaming(){return this.renamingStore.renamingNode===this.source}},watch:{source(e,t){e.source!==t.source&&this.resetState()}},beforeDestroy(){this.resetState()},methods:{resetState(){var e,t;this.loading="",null===(e=this.$refs)||void 0===e||null===(e=e.preview)||void 0===e||null===(t=e.reset)||void 0===t||t.call(e),this.openedMenu=!1},onRightClick(e){if(this.openedMenu)return;if(this.gridMode){var t;const e=null===(t=this.$el)||void 0===t?void 0:t.closest("main.app-content");e.style.removeProperty("--mouse-pos-x"),e.style.removeProperty("--mouse-pos-y")}else{var s;const t=null===(s=this.$el)||void 0===s?void 0:s.closest("main.app-content"),n=t.getBoundingClientRect();t.style.setProperty("--mouse-pos-x",Math.max(0,e.clientX-n.left-200)+"px"),t.style.setProperty("--mouse-pos-y",Math.max(0,e.clientY-n.top)+"px")}const n=this.selectedFiles.length>1;this.actionsMenuStore.opened=this.isSelected&&n?"global":this.uniqueId.toString(),e.preventDefault(),e.stopPropagation()},execDefaultAction(e){if(!(this.isRenaming||e.button>1))return e.ctrlKey||e.metaKey||1===e.button?(e.preventDefault(),window.open((0,c.Jv)("/f/{fileId}",{fileId:this.fileid})),!1):void this.$refs.actions.execDefaultAction(e)},openDetailsIfAvailable(e){var t;e.preventDefault(),e.stopPropagation(),null!=Ws&&null!==(t=Ws.enabled)&&void 0!==t&&t.call(Ws,[this.source],this.currentView)&&Ws.exec(this.source,this.currentView,this.currentDir)},onDragOver(e){this.dragover=this.canDrop,this.canDrop?e.ctrlKey?e.dataTransfer.dropEffect="copy":e.dataTransfer.dropEffect="move":e.dataTransfer.dropEffect="none"},onDragLeave(e){const t=e.currentTarget;null!=t&&t.contains(e.relatedTarget)||(this.dragover=!1)},async onDragStart(e){var t,s,n;if(e.stopPropagation(),!this.canDrag||!this.fileid)return e.preventDefault(),void e.stopPropagation();qt.debug("Drag started",{event:e}),null===(t=e.dataTransfer)||void 0===t||null===(s=t.clearData)||void 0===s||s.call(t),this.renamingStore.$reset(),this.selectedFiles.includes(this.source.source)?this.draggingStore.set(this.selectedFiles):this.draggingStore.set([this.source.source]);const i=this.draggingStore.dragging.map((e=>this.filesStore.getNode(e))),a=await(async e=>new Promise((t=>{Kn||(Kn=(new Yn).$mount(),document.body.appendChild(Kn.$el)),Kn.update(e),Kn.$on("loaded",(()=>{t(Kn.$el),Kn.$off("loaded")}))})))(i);null===(n=e.dataTransfer)||void 0===n||n.setDragImage(a,-10,-10)},onDragEnd(){this.draggingStore.reset(),this.dragover=!1,qt.debug("Drag ended")},async onDrop(e){var t,s,n;if(!(this.draggingFiles||null!==(t=e.dataTransfer)&&void 0!==t&&null!==(t=t.items)&&void 0!==t&&t.length))return;e.preventDefault(),e.stopPropagation();const i=this.draggingFiles,a=[...(null===(s=e.dataTransfer)||void 0===s?void 0:s.items)||[]],r=await kn(a),o=await(null===(n=this.currentView)||void 0===n?void 0:n.getContents(this.source.path)),l=null==o?void 0:o.folder;if(!l)return void(0,jt.Qg)(this.t("files","Target folder does not exist any more"));if(!this.canDrop||e.button)return;const d=e.ctrlKey;if(this.dragover=!1,qt.debug("Dropped",{event:e,folder:l,selection:i,fileTree:r}),r.contents.length>0)return void await Sn(r,l,o.contents);const c=i.map((e=>this.filesStore.getNode(e)));await Ln(c,l,o.contents,d),i.some((e=>this.selectedFiles.includes(e)))&&(qt.debug("Dropped selection, resetting select store..."),this.selectionStore.reset())},t:Ut.Tl}});var Jn=n(4604);const Zn={name:"CustomElementRender",props:{source:{type:Object,required:!0},currentView:{type:Object,required:!0},render:{type:Function,required:!0}},watch:{source(){this.updateRootElement()},currentView(){this.updateRootElement()}},mounted(){this.updateRootElement()},methods:{async updateRootElement(){const e=await this.render(this.source,this.currentView);e?this.$el.replaceChildren(e):this.$el.replaceChildren()}}},Xn=(0,Pt.A)(Zn,(function(){return(0,this._self._c)("span")}),[],!1,null,null,null).exports;var ei=n(63420),ti=n(24764),si=n(10501);const ni={name:"ArrowLeftIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},ii=(0,Pt.A)(ni,(function(){var e=this,t=e._self._c;return t("span",e._b({staticClass:"material-design-icon arrow-left-icon",attrs:{"aria-hidden":!e.title||null,"aria-label":e.title,role:"img"},on:{click:function(t){return e.$emit("click",t)}}},"span",e.$attrs,!1),[t("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[t("path",{attrs:{d:"M20,11V13H8L13.5,18.5L12.08,19.92L4.16,12L12.08,4.08L13.5,5.5L8,11H20Z"}},[e.title?t("title",[e._v(e._s(e.title))]):e._e()])])])}),[],!1,null,null,null).exports,ai=(0,r.qK)(),ri=(0,l.pM)({name:"FileEntryActions",components:{ArrowLeftIcon:ii,CustomElementRender:Xn,NcActionButton:ei.A,NcActions:ti.A,NcActionSeparator:si.A,NcIconSvgWrapper:zt.A,NcLoadingIcon:js.A},props:{filesListWidth:{type:Number,required:!0},loading:{type:String,required:!0},opened:{type:Boolean,default:!1},source:{type:Object,required:!0},gridMode:{type:Boolean,default:!1}},setup(){const{currentView:e}=xs();return{currentView:e}},data:()=>({openedSubmenu:null}),computed:{currentDir(){var e;return((null===(e=this.$route)||void 0===e||null===(e=e.query)||void 0===e||null===(e=e.dir)||void 0===e?void 0:e.toString())||"/").replace(/^(.+)\/$/,"$1")},isLoading(){return this.source.status===r.zI.LOADING},enabledActions(){return this.source.status===r.zI.FAILED?[]:ai.filter((e=>!e.enabled||e.enabled([this.source],this.currentView))).sort(((e,t)=>(e.order||0)-(t.order||0)))},enabledInlineActions(){return this.filesListWidth<768||this.gridMode?[]:this.enabledActions.filter((e=>{var t;return null==e||null===(t=e.inline)||void 0===t?void 0:t.call(e,this.source,this.currentView)}))},enabledRenderActions(){return this.gridMode?[]:this.enabledActions.filter((e=>"function"==typeof e.renderInline))},enabledDefaultActions(){return this.enabledActions.filter((e=>!(null==e||!e.default)))},enabledMenuActions(){if(this.openedSubmenu)return this.enabledInlineActions;const e=[...this.enabledInlineActions,...this.enabledActions.filter((e=>e.default!==r.m9.HIDDEN&&"function"!=typeof e.renderInline))].filter(((e,t,s)=>t===s.findIndex((t=>t.id===e.id)))),t=e.filter((e=>!e.parent)).map((e=>e.id));return e.filter((e=>!(e.parent&&t.includes(e.parent))))},enabledSubmenuActions(){return this.enabledActions.filter((e=>e.parent)).reduce(((e,t)=>(e[t.parent]||(e[t.parent]=[]),e[t.parent].push(t),e)),{})},openedMenu:{get(){return this.opened},set(e){this.$emit("update:opened",e)}},getBoundariesElement:()=>document.querySelector(".app-content > .files-list"),mountType(){return this.source.attributes["mount-type"]}},methods:{actionDisplayName(e){if((this.gridMode||this.filesListWidth<768&&e.inline)&&"function"==typeof e.title){const t=e.title([this.source],this.currentView);if(t)return t}return e.displayName([this.source],this.currentView)},async onActionClick(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];if(this.isLoading||""!==this.loading)return;if(this.enabledSubmenuActions[e.id])return void(this.openedSubmenu=e);const s=e.displayName([this.source],this.currentView);try{this.$emit("update:loading",e.id),this.$set(this.source,"status",r.zI.LOADING);const t=await e.exec(this.source,this.currentView,this.currentDir);if(null==t)return;if(t)return void(0,jt.Te)((0,Ut.Tl)("files",'"{displayName}" action executed successfully',{displayName:s}));(0,jt.Qg)((0,Ut.Tl)("files",'"{displayName}" action failed',{displayName:s}))}catch(t){qt.error("Error while executing action",{action:e,e:t}),(0,jt.Qg)((0,Ut.Tl)("files",'"{displayName}" action failed',{displayName:s}))}finally{this.$emit("update:loading",""),this.$set(this.source,"status",void 0),t&&(this.openedSubmenu=null)}},execDefaultAction(e){this.enabledDefaultActions.length>0&&(e.preventDefault(),e.stopPropagation(),this.enabledDefaultActions[0].exec(this.source,this.currentView,this.currentDir))},isMenu(e){var t;return(null===(t=this.enabledSubmenuActions[e])||void 0===t?void 0:t.length)>0},async onBackToMenuClick(e){this.openedSubmenu=null,await this.$nextTick(),this.$nextTick((()=>{var t;const s=null===(t=this.$refs["action-".concat(e.id)])||void 0===t?void 0:t[0];var n;s&&(null===(n=s.$el.querySelector("button"))||void 0===n||n.focus())}))},t:Ut.Tl}}),oi=ri;var li=n(10379),di={};di.styleTagTransform=is(),di.setAttributes=es(),di.insert=Zt().bind(null,"head"),di.domAPI=Qt(),di.insertStyleElement=ss(),Yt()(li.A,di),li.A&&li.A.locals&&li.A.locals;var ci=n(64931),ui={};ui.styleTagTransform=is(),ui.setAttributes=es(),ui.insert=Zt().bind(null,"head"),ui.domAPI=Qt(),ui.insertStyleElement=ss(),Yt()(ci.A,ui),ci.A&&ci.A.locals&&ci.A.locals;var mi=(0,Pt.A)(oi,(function(){var e,t,s=this,n=s._self._c;return s._self._setupProxy,n("td",{staticClass:"files-list__row-actions",attrs:{"data-cy-files-list-row-actions":""}},[s._l(s.enabledRenderActions,(function(e){return n("CustomElementRender",{key:e.id,staticClass:"files-list__row-action--inline",class:"files-list__row-action-"+e.id,attrs:{"current-view":s.currentView,render:e.renderInline,source:s.source}})})),s._v(" "),n("NcActions",{ref:"actionsMenu",attrs:{"boundaries-element":s.getBoundariesElement,container:s.getBoundariesElement,"force-name":!0,type:"tertiary","force-menu":0===s.enabledInlineActions.length,inline:s.enabledInlineActions.length,open:s.openedMenu},on:{"update:open":function(e){s.openedMenu=e},close:function(e){s.openedSubmenu=null}}},[s._l(s.enabledMenuActions,(function(e){var t;return n("NcActionButton",{key:e.id,ref:"action-".concat(e.id),refInFor:!0,class:{["files-list__row-action-".concat(e.id)]:!0,"files-list__row-action--menu":s.isMenu(e.id)},attrs:{"close-after-click":!s.isMenu(e.id),"data-cy-files-list-row-action":e.id,"is-menu":s.isMenu(e.id),title:null===(t=e.title)||void 0===t?void 0:t.call(e,[s.source],s.currentView)},on:{click:function(t){return s.onActionClick(e)}},scopedSlots:s._u([{key:"icon",fn:function(){return[s.loading===e.id?n("NcLoadingIcon",{attrs:{size:18}}):n("NcIconSvgWrapper",{attrs:{svg:e.iconSvgInline([s.source],s.currentView)}})]},proxy:!0}],null,!0)},[s._v("\n\t\t\t"+s._s("shared"===s.mountType&&"sharing-status"===e.id?"":s.actionDisplayName(e))+"\n\t\t")])})),s._v(" "),s.openedSubmenu&&s.enabledSubmenuActions[null===(e=s.openedSubmenu)||void 0===e?void 0:e.id]?[n("NcActionButton",{staticClass:"files-list__row-action-back",on:{click:function(e){return s.onBackToMenuClick(s.openedSubmenu)}},scopedSlots:s._u([{key:"icon",fn:function(){return[n("ArrowLeftIcon")]},proxy:!0}],null,!1,3001860362)},[s._v("\n\t\t\t\t"+s._s(s.actionDisplayName(s.openedSubmenu))+"\n\t\t\t")]),s._v(" "),n("NcActionSeparator"),s._v(" "),s._l(s.enabledSubmenuActions[null===(t=s.openedSubmenu)||void 0===t?void 0:t.id],(function(e){var t;return n("NcActionButton",{key:e.id,staticClass:"files-list__row-action--submenu",class:"files-list__row-action-".concat(e.id),attrs:{"close-after-click":"","data-cy-files-list-row-action":e.id,title:null===(t=e.title)||void 0===t?void 0:t.call(e,[s.source],s.currentView)},on:{click:function(t){return s.onActionClick(e)}},scopedSlots:s._u([{key:"icon",fn:function(){return[s.loading===e.id?n("NcLoadingIcon",{attrs:{size:18}}):n("NcIconSvgWrapper",{attrs:{svg:e.iconSvgInline([s.source],s.currentView)}})]},proxy:!0}],null,!0)},[s._v("\n\t\t\t\t"+s._s(s.actionDisplayName(e))+"\n\t\t\t")])}))]:s._e()],2)],2)}),[],!1,null,"801e4784",null);const gi=mi.exports,fi=(0,l.pM)({name:"FileEntryCheckbox",components:{NcCheckboxRadioSwitch:cs.A,NcLoadingIcon:js.A},props:{fileid:{type:Number,required:!0},isLoading:{type:Boolean,default:!1},nodes:{type:Array,required:!0},source:{type:Object,required:!0}},setup(){const e=Js(),t=function(){const e=(0,a.nY)("keyboard",{state:()=>({altKey:!1,ctrlKey:!1,metaKey:!1,shiftKey:!1}),actions:{onEvent(e){e||(e=window.event),l.Ay.set(this,"altKey",!!e.altKey),l.Ay.set(this,"ctrlKey",!!e.ctrlKey),l.Ay.set(this,"metaKey",!!e.metaKey),l.Ay.set(this,"shiftKey",!!e.shiftKey)}}})(...arguments);return e._initialized||(window.addEventListener("keydown",e.onEvent),window.addEventListener("keyup",e.onEvent),window.addEventListener("mousemove",e.onEvent),e._initialized=!0),e}();return{keyboardStore:t,selectionStore:e}},computed:{selectedFiles(){return this.selectionStore.selected},isSelected(){return this.selectedFiles.includes(this.source.source)},index(){return this.nodes.findIndex((e=>e.source===this.source.source))},isFile(){return this.source.type===r.pt.File},ariaLabel(){return this.isFile?(0,Ut.Tl)("files",'Toggle selection for file "{displayName}"',{displayName:this.source.basename}):(0,Ut.Tl)("files",'Toggle selection for folder "{displayName}"',{displayName:this.source.basename})}},methods:{onSelectionChange(e){var t;const s=this.index,n=this.selectionStore.lastSelectedIndex;if(null!==(t=this.keyboardStore)&&void 0!==t&&t.shiftKey&&null!==n){const e=this.selectedFiles.includes(this.source.source),t=Math.min(s,n),i=Math.max(n,s),a=this.selectionStore.lastSelection,r=this.nodes.map((e=>e.source)).slice(t,i+1).filter(Boolean),o=[...a,...r].filter((t=>!e||t!==this.source.source));return qt.debug("Shift key pressed, selecting all files in between",{start:t,end:i,filesToSelect:r,isAlreadySelected:e}),void this.selectionStore.set(o)}const i=e?[...this.selectedFiles,this.source.source]:this.selectedFiles.filter((e=>e!==this.source.source));qt.debug("Updating selection",{selection:i}),this.selectionStore.set(i),this.selectionStore.setLastIndex(s)},resetSelection(){this.selectionStore.reset()},t:Ut.Tl}}),pi=(0,Pt.A)(fi,(function(){var e=this,t=e._self._c;return e._self._setupProxy,t("td",{staticClass:"files-list__row-checkbox",on:{keyup:function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"esc",27,t.key,["Esc","Escape"])||t.ctrlKey||t.shiftKey||t.altKey||t.metaKey?null:e.resetSelection.apply(null,arguments)}}},[e.isLoading?t("NcLoadingIcon"):t("NcCheckboxRadioSwitch",{attrs:{"aria-label":e.ariaLabel,checked:e.isSelected},on:{"update:checked":e.onSelectionChange}})],1)}),[],!1,null,null,null).exports;var hi=n(82182);const vi=(0,Rt.C)("files","forbiddenCharacters",[]),wi=(0,l.pM)({name:"FileEntryName",components:{NcTextField:hi.A},props:{displayName:{type:String,required:!0},extension:{type:String,required:!0},filesListWidth:{type:Number,required:!0},nodes:{type:Array,required:!0},source:{type:Object,required:!0},gridMode:{type:Boolean,default:!1}},setup(){const{currentView:e}=xs();return{currentView:e,renamingStore:Rn()}},computed:{isRenaming(){return this.renamingStore.renamingNode===this.source},isRenamingSmallScreen(){return this.isRenaming&&this.filesListWidth<512},newName:{get(){return this.renamingStore.newName},set(e){this.renamingStore.newName=e}},renameLabel(){return{[r.pt.File]:(0,Ut.Tl)("files","File name"),[r.pt.Folder]:(0,Ut.Tl)("files","Folder name")}[this.source.type]},linkTo(){var e,t;if(this.source.status===r.zI.FAILED)return{is:"span",params:{title:(0,Ut.Tl)("files","This node is unavailable")}};const s=null===(e=this.$parent)||void 0===e||null===(e=e.$refs)||void 0===e||null===(e=e.actions)||void 0===e?void 0:e.enabledDefaultActions;return(null==s?void 0:s.length)>0?{is:"a",params:{title:s[0].displayName([this.source],this.currentView),role:"button",tabindex:"0"}}:(null===(t=this.source)||void 0===t?void 0:t.permissions)&r.aX.READ?{is:"a",params:{download:this.source.basename,href:this.source.source,title:(0,Ut.Tl)("files","Download file {name}",{name:this.displayName}),tabindex:"0"}}:{is:"span"}}},watch:{isRenaming:{immediate:!0,handler(e){e&&this.startRenaming()}}},methods:{checkInputValidity(e){var t,s;const n=e.target,i=(null===(t=(s=this.newName).trim)||void 0===t?void 0:t.call(s))||"";qt.debug("Checking input validity",{newName:i});try{this.isFileNameValid(i),n.setCustomValidity(""),n.title=""}catch(e){e instanceof Error?(n.setCustomValidity(e.message),n.title=e.message):n.setCustomValidity((0,Ut.Tl)("files","Invalid file name"))}finally{n.reportValidity()}},isFileNameValid(e){const t=e.trim();if("."===t||".."===t)throw new Error((0,Ut.Tl)("files",'"{name}" is an invalid file name.',{name:e}));if(0===t.length)throw new Error((0,Ut.Tl)("files","File name cannot be empty."));if(-1!==t.indexOf("/"))throw new Error((0,Ut.Tl)("files",'"/" is not allowed inside a file name.'));if(t.match(window.OC.config.blacklist_files_regex))throw new Error((0,Ut.Tl)("files",'"{name}" is not an allowed filetype.',{name:e}));if(this.checkIfNodeExists(e))throw new Error((0,Ut.Tl)("files","{newName} already exists.",{newName:e}));const s=vi.find((e=>t.includes(e)));if(s)throw new Error((0,Ut.Tl)("files",'"{char}" is not allowed inside a file name.',{char:s}));return!0},checkIfNodeExists(e){return this.nodes.find((t=>t.basename===e&&t!==this.source))},startRenaming(){this.$nextTick((()=>{var e;const t=(this.source.extension||"").split("").length,s=this.source.basename.split("").length-t,n=null===(e=this.$refs.renameInput)||void 0===e||null===(e=e.$refs)||void 0===e||null===(e=e.inputField)||void 0===e||null===(e=e.$refs)||void 0===e?void 0:e.input;n?(n.setSelectionRange(0,s),n.focus(),n.dispatchEvent(new Event("keyup"))):qt.error("Could not find the rename input")}))},stopRenaming(){this.isRenaming&&this.renamingStore.$reset()},async onRename(){var e,t;const s=this.source.basename,n=this.source.encodedSource,i=(null===(e=(t=this.newName).trim)||void 0===e?void 0:e.call(t))||"";if(""!==i)if(s!==i)if(this.checkIfNodeExists(i))(0,jt.Qg)((0,Ut.Tl)("files","Another entry with the same name already exists"));else{this.$set(this.source,"status",r.zI.LOADING),this.source.rename(i),qt.debug("Moving file to",{destination:this.source.encodedSource,oldEncodedSource:n});try{await(0,Ot.Ay)({method:"MOVE",url:n,headers:{Destination:this.source.encodedSource,Overwrite:"F"}}),(0,Ft.Ic)("files:node:updated",this.source),(0,Ft.Ic)("files:node:renamed",this.source),(0,jt.Te)((0,Ut.Tl)("files",'Renamed "{oldName}" to "{newName}"',{oldName:s,newName:i})),this.stopRenaming(),this.$nextTick((()=>{var e;null===(e=this.$refs.basename)||void 0===e||e.focus()}))}catch(e){var a;if(qt.error("Error while renaming file",{error:e}),this.source.rename(s),null===(a=this.$refs.renameInput)||void 0===a||a.focus(),(0,Ot.F0)(e)){var o,l;if(404===(null==e||null===(o=e.response)||void 0===o?void 0:o.status))return void(0,jt.Qg)((0,Ut.Tl)("files",'Could not rename "{oldName}", it does not exist any more',{oldName:s}));if(412===(null==e||null===(l=e.response)||void 0===l?void 0:l.status))return void(0,jt.Qg)((0,Ut.Tl)("files",'The name "{newName}" is already used in the folder "{dir}". Please choose a different name.',{newName:i,dir:this.currentDir}))}(0,jt.Qg)((0,Ut.Tl)("files",'Could not rename "{oldName}"',{oldName:s}))}finally{this.$set(this.source,"status",void 0)}}else this.stopRenaming();else(0,jt.Qg)((0,Ut.Tl)("files","Name cannot be empty"))},t:Ut.Tl}}),Ai=(0,Pt.A)(wi,(function(){var e=this,t=e._self._c;return e._self._setupProxy,e.isRenaming?t("form",{directives:[{name:"on-click-outside",rawName:"v-on-click-outside",value:e.onRename,expression:"onRename"}],staticClass:"files-list__row-rename",attrs:{"aria-label":e.t("files","Rename file")},on:{submit:function(t){return t.preventDefault(),t.stopPropagation(),e.onRename.apply(null,arguments)}}},[t("NcTextField",{ref:"renameInput",attrs:{label:e.renameLabel,autofocus:!0,minlength:1,required:!0,value:e.newName,enterkeyhint:"done"},on:{"update:value":function(t){e.newName=t},keyup:[e.checkInputValidity,function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"esc",27,t.key,["Esc","Escape"])?null:e.stopRenaming.apply(null,arguments)}]}})],1):t(e.linkTo.is,e._b({ref:"basename",tag:"component",staticClass:"files-list__row-name-link",attrs:{"aria-hidden":e.isRenaming,"data-cy-files-list-row-name-link":""}},"component",e.linkTo.params,!1),[t("span",{staticClass:"files-list__row-name-text"},[t("span",{staticClass:"files-list__row-name-",domProps:{textContent:e._s(e.displayName)}}),e._v(" "),t("span",{staticClass:"files-list__row-name-ext",domProps:{textContent:e._s(e.extension)}})])])}),[],!1,null,null,null).exports;var Ci=n(72755);const yi={name:"FileIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},xi=(0,Pt.A)(yi,(function(){var e=this,t=e._self._c;return t("span",e._b({staticClass:"material-design-icon file-icon",attrs:{"aria-hidden":!e.title||null,"aria-label":e.title,role:"img"},on:{click:function(t){return e.$emit("click",t)}}},"span",e.$attrs,!1),[t("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[t("path",{attrs:{d:"M13,9V3.5L18.5,9M6,2C4.89,2 4,2.89 4,4V20A2,2 0 0,0 6,22H18A2,2 0 0,0 20,20V8L14,2H6Z"}},[e.title?t("title",[e._v(e._s(e.title))]):e._e()])])])}),[],!1,null,null,null).exports,bi={name:"FolderOpenIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},_i=(0,Pt.A)(bi,(function(){var e=this,t=e._self._c;return t("span",e._b({staticClass:"material-design-icon folder-open-icon",attrs:{"aria-hidden":!e.title||null,"aria-label":e.title,role:"img"},on:{click:function(t){return e.$emit("click",t)}}},"span",e.$attrs,!1),[t("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[t("path",{attrs:{d:"M19,20H4C2.89,20 2,19.1 2,18V6C2,4.89 2.89,4 4,4H10L12,6H19A2,2 0 0,1 21,8H21L4,8V18L6.14,10H23.21L20.93,18.5C20.7,19.37 19.92,20 19,20Z"}},[e.title?t("title",[e._v(e._s(e.title))]):e._e()])])])}),[],!1,null,null,null).exports,Ti={name:"KeyIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},ki=(0,Pt.A)(Ti,(function(){var e=this,t=e._self._c;return t("span",e._b({staticClass:"material-design-icon key-icon",attrs:{"aria-hidden":!e.title||null,"aria-label":e.title,role:"img"},on:{click:function(t){return e.$emit("click",t)}}},"span",e.$attrs,!1),[t("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[t("path",{attrs:{d:"M7 14C5.9 14 5 13.1 5 12S5.9 10 7 10 9 10.9 9 12 8.1 14 7 14M12.6 10C11.8 7.7 9.6 6 7 6C3.7 6 1 8.7 1 12S3.7 18 7 18C9.6 18 11.8 16.3 12.6 14H16V18H20V14H23V10H12.6Z"}},[e.title?t("title",[e._v(e._s(e.title))]):e._e()])])])}),[],!1,null,null,null).exports,Si={name:"NetworkIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},Li=(0,Pt.A)(Si,(function(){var e=this,t=e._self._c;return t("span",e._b({staticClass:"material-design-icon network-icon",attrs:{"aria-hidden":!e.title||null,"aria-label":e.title,role:"img"},on:{click:function(t){return e.$emit("click",t)}}},"span",e.$attrs,!1),[t("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[t("path",{attrs:{d:"M17,3A2,2 0 0,1 19,5V15A2,2 0 0,1 17,17H13V19H14A1,1 0 0,1 15,20H22V22H15A1,1 0 0,1 14,23H10A1,1 0 0,1 9,22H2V20H9A1,1 0 0,1 10,19H11V17H7C5.89,17 5,16.1 5,15V5A2,2 0 0,1 7,3H17Z"}},[e.title?t("title",[e._v(e._s(e.title))]):e._e()])])])}),[],!1,null,null,null).exports,Fi={name:"TagIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},Ui=(0,Pt.A)(Fi,(function(){var e=this,t=e._self._c;return t("span",e._b({staticClass:"material-design-icon tag-icon",attrs:{"aria-hidden":!e.title||null,"aria-label":e.title,role:"img"},on:{click:function(t){return e.$emit("click",t)}}},"span",e.$attrs,!1),[t("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[t("path",{attrs:{d:"M5.5,7A1.5,1.5 0 0,1 4,5.5A1.5,1.5 0 0,1 5.5,4A1.5,1.5 0 0,1 7,5.5A1.5,1.5 0 0,1 5.5,7M21.41,11.58L12.41,2.58C12.05,2.22 11.55,2 11,2H4C2.89,2 2,2.89 2,4V11C2,11.55 2.22,12.05 2.59,12.41L11.58,21.41C11.95,21.77 12.45,22 13,22C13.55,22 14.05,21.77 14.41,21.41L21.41,14.41C21.78,14.05 22,13.55 22,13C22,12.44 21.77,11.94 21.41,11.58Z"}},[e.title?t("title",[e._v(e._s(e.title))]):e._e()])])])}),[],!1,null,null,null).exports,Ei={name:"PlayCircleIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},Pi=(0,Pt.A)(Ei,(function(){var e=this,t=e._self._c;return t("span",e._b({staticClass:"material-design-icon play-circle-icon",attrs:{"aria-hidden":!e.title||null,"aria-label":e.title,role:"img"},on:{click:function(t){return e.$emit("click",t)}}},"span",e.$attrs,!1),[t("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[t("path",{attrs:{d:"M10,16.5V7.5L16,12M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2Z"}},[e.title?t("title",[e._v(e._s(e.title))]):e._e()])])])}),[],!1,null,null,null).exports,Ni={name:"CollectivesIcon",props:{title:{type:String,default:""},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},Bi=(0,Pt.A)(Ni,(function(){var e=this,t=e._self._c;return t("span",e._b({staticClass:"material-design-icon collectives-icon",attrs:{"aria-hidden":!e.title,"aria-label":e.title,role:"img"},on:{click:function(t){return e.$emit("click",t)}}},"span",e.$attrs,!1),[t("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 16 16"}},[t("path",{attrs:{d:"M2.9,8.8c0-1.2,0.4-2.4,1.2-3.3L0.3,6c-0.2,0-0.3,0.3-0.1,0.4l2.7,2.6C2.9,9,2.9,8.9,2.9,8.8z"}}),e._v(" "),t("path",{attrs:{d:"M8,3.7c0.7,0,1.3,0.1,1.9,0.4L8.2,0.6c-0.1-0.2-0.3-0.2-0.4,0L6.1,4C6.7,3.8,7.3,3.7,8,3.7z"}}),e._v(" "),t("path",{attrs:{d:"M3.7,11.5L3,15.2c0,0.2,0.2,0.4,0.4,0.3l3.3-1.7C5.4,13.4,4.4,12.6,3.7,11.5z"}}),e._v(" "),t("path",{attrs:{d:"M15.7,6l-3.7-0.5c0.7,0.9,1.2,2,1.2,3.3c0,0.1,0,0.2,0,0.3l2.7-2.6C15.9,6.3,15.9,6.1,15.7,6z"}}),e._v(" "),t("path",{attrs:{d:"M12.3,11.5c-0.7,1.1-1.8,1.9-3,2.2l3.3,1.7c0.2,0.1,0.4-0.1,0.4-0.3L12.3,11.5z"}}),e._v(" "),t("path",{attrs:{d:"M9.6,10.1c-0.4,0.5-1,0.8-1.6,0.8c-1.1,0-2-0.9-2.1-2C5.9,7.7,6.8,6.7,8,6.7c0.6,0,1.1,0.3,1.5,0.7 c0.1,0.1,0.1,0.1,0.2,0.1h1.4c0.2,0,0.4-0.2,0.3-0.5c-0.7-1.3-2.1-2.2-3.8-2.1C5.8,5,4.3,6.6,4.1,8.5C4,10.8,5.8,12.7,8,12.7 c1.6,0,2.9-0.9,3.5-2.3c0.1-0.2-0.1-0.4-0.3-0.4H9.9C9.8,10,9.7,10,9.6,10.1z"}})])])}),[],!1,null,null,null).exports,Ii=(0,l.pM)({name:"FavoriteIcon",components:{NcIconSvgWrapper:zt.A},data:()=>({StarSvg:''}),async mounted(){var e;await this.$nextTick();const t=this.$el.querySelector("svg");null==t||null===(e=t.setAttribute)||void 0===e||e.call(t,"viewBox","-4 -4 30 30")},methods:{t:Ut.Tl}});var zi=n(4575),Di={};Di.styleTagTransform=is(),Di.setAttributes=es(),Di.insert=Zt().bind(null,"head"),Di.domAPI=Qt(),Di.insertStyleElement=ss(),Yt()(zi.A,Di),zi.A&&zi.A.locals&&zi.A.locals;const Ri=(0,Pt.A)(Ii,(function(){var e=this,t=e._self._c;return e._self._setupProxy,t("NcIconSvgWrapper",{staticClass:"favorite-marker-icon",attrs:{name:e.t("files","Favorite"),svg:e.StarSvg}})}),[],!1,null,"f2d0cf6e",null).exports,ji=l.Ay.extend({name:"FileEntryPreview",components:{AccountGroupIcon:Ci.A,AccountPlusIcon:Vs,CollectivesIcon:Bi,FavoriteIcon:Ri,FileIcon:xi,FolderIcon:Vn.A,FolderOpenIcon:_i,KeyIcon:ki,LinkIcon:Ns.A,NetworkIcon:Li,TagIcon:Ui},props:{source:{type:Object,required:!0},dragover:{type:Boolean,default:!1},gridMode:{type:Boolean,default:!1}},setup:()=>({userConfigStore:vs()}),data:()=>({backgroundFailed:void 0}),computed:{fileid(){var e,t;return null===(e=this.source)||void 0===e||null===(e=e.fileid)||void 0===e||null===(t=e.toString)||void 0===t?void 0:t.call(e)},isFavorite(){return 1===this.source.attributes.favorite},userConfig(){return this.userConfigStore.userConfig},cropPreviews(){return!0===this.userConfig.crop_image_previews},previewUrl(){if(this.source.type===r.pt.Folder)return null;if(!0===this.backgroundFailed)return null;try{var e;const t=this.source.attributes.previewUrl||(0,c.Jv)("/core/preview?fileId={fileid}",{fileid:this.fileid}),s=new URL(window.location.origin+t);s.searchParams.set("x",this.gridMode?"128":"32"),s.searchParams.set("y",this.gridMode?"128":"32"),s.searchParams.set("mimeFallback","true");const n=(null===(e=this.source)||void 0===e||null===(e=e.attributes)||void 0===e?void 0:e.etag)||"";return s.searchParams.set("v",n.slice(0,6)),s.searchParams.set("a",!0===this.cropPreviews?"0":"1"),s.href}catch(e){return null}},fileOverlay(){return void 0!==this.source.attributes["metadata-files-live-photo"]?Pi:null},folderOverlay(){var e,t,s,n;if(this.source.type!==r.pt.Folder)return null;if(1===(null===(e=this.source)||void 0===e||null===(e=e.attributes)||void 0===e?void 0:e["is-encrypted"]))return ki;if(null!==(t=this.source)&&void 0!==t&&null!==(t=t.attributes)&&void 0!==t&&t["is-tag"])return Ui;const i=Object.values((null===(s=this.source)||void 0===s||null===(s=s.attributes)||void 0===s?void 0:s["share-types"])||{}).flat();if(i.some((e=>e===Es.Z.SHARE_TYPE_LINK||e===Es.Z.SHARE_TYPE_EMAIL)))return Ns.A;if(i.length>0)return Vs;switch(null===(n=this.source)||void 0===n||null===(n=n.attributes)||void 0===n?void 0:n["mount-type"]){case"external":case"external-session":return Li;case"group":return Ci.A;case"collective":return Bi}return null}},methods:{reset(){this.backgroundFailed=void 0,this.$refs.previewImg&&(this.$refs.previewImg.src="")},onBackgroundError(e){var t;""!==(null===(t=e.target)||void 0===t?void 0:t.src)&&(this.backgroundFailed=!0)},t:Ut.Tl}}),Oi=(0,Pt.A)(ji,(function(){var e=this,t=e._self._c;return e._self._setupProxy,t("span",{staticClass:"files-list__row-icon"},["folder"===e.source.type?[e.dragover?e._m(0):[e._m(1),e._v(" "),e.folderOverlay?t(e.folderOverlay,{tag:"OverlayIcon",staticClass:"files-list__row-icon-overlay"}):e._e()]]:e.previewUrl&&!0!==e.backgroundFailed?t("img",{ref:"previewImg",staticClass:"files-list__row-icon-preview",class:{"files-list__row-icon-preview--loaded":!1===e.backgroundFailed},attrs:{alt:"",loading:"lazy",src:e.previewUrl},on:{error:e.onBackgroundError,load:function(t){e.backgroundFailed=!1}}}):e._m(2),e._v(" "),e.isFavorite?t("span",{staticClass:"files-list__row-icon-favorite"},[e._m(3)],1):e._e(),e._v(" "),e.fileOverlay?t(e.fileOverlay,{tag:"OverlayIcon",staticClass:"files-list__row-icon-overlay files-list__row-icon-overlay--file"}):e._e()],2)}),[function(){var e=this._self._c;return this._self._setupProxy,e("FolderOpenIcon")},function(){var e=this._self._c;return this._self._setupProxy,e("FolderIcon")},function(){var e=this._self._c;return this._self._setupProxy,e("FileIcon")},function(){var e=this._self._c;return this._self._setupProxy,e("FavoriteIcon")}],!1,null,null,null).exports,Mi=(0,l.pM)({name:"FileEntry",components:{CustomElementRender:Xn,FileEntryActions:gi,FileEntryCheckbox:pi,FileEntryName:Ai,FileEntryPreview:Oi,NcDateTime:Jn.A},mixins:[Qn],props:{isMtimeAvailable:{type:Boolean,default:!1},isSizeAvailable:{type:Boolean,default:!1},compact:{type:Boolean,default:!1}},setup(){const e=Dn(),t=Fn(),s=Ks(),n=Rn(),i=Js(),{currentView:a}=xs();return{actionsMenuStore:e,draggingStore:t,filesStore:s,renamingStore:n,selectionStore:i,currentView:a}},computed:{rowListeners(){return{...this.isRenaming?{}:{dragstart:this.onDragStart,dragover:this.onDragOver},contextmenu:this.onRightClick,dragleave:this.onDragLeave,dragend:this.onDragEnd,drop:this.onDrop}},columns(){var e;return this.filesListWidth<512||this.compact?[]:(null===(e=this.currentView)||void 0===e?void 0:e.columns)||[]},size(){const e=this.source.size;return!e||e<0?this.t("files","Pending"):(0,r.v7)(e,!0)},sizeOpacity(){const e=this.source.size;if(!e||isNaN(e)||e<0)return{};const t=Math.round(Math.min(100,100*Math.pow(e/10485760,2)));return{color:"color-mix(in srgb, var(--color-main-text) ".concat(t,"%, var(--color-text-maxcontrast))")}},mtimeOpacity(){var e,t;const s=26784e5,n=null===(e=this.source.mtime)||void 0===e||null===(t=e.getTime)||void 0===t?void 0:t.call(e);if(!n)return{};const i=Math.round(Math.min(100,100*(s-(Date.now()-n))/s));return i<0?{}:{color:"color-mix(in srgb, var(--color-main-text) ".concat(i,"%, var(--color-text-maxcontrast))")}},mtimeTitle(){return this.source.mtime?(0,zn.A)(this.source.mtime).format("LLL"):""}},methods:{formatFileSize:r.v7}}),Vi=(0,Pt.A)(Mi,(function(){var e=this,t=e._self._c;return e._self._setupProxy,t("tr",e._g({staticClass:"files-list__row",class:{"files-list__row--dragover":e.dragover,"files-list__row--loading":e.isLoading,"files-list__row--active":e.isActive},attrs:{"data-cy-files-list-row":"","data-cy-files-list-row-fileid":e.fileid,"data-cy-files-list-row-name":e.source.basename,draggable:e.canDrag}},e.rowListeners),[e.isFailedSource?t("span",{staticClass:"files-list__row--failed"}):e._e(),e._v(" "),t("FileEntryCheckbox",{attrs:{fileid:e.fileid,"is-loading":e.isLoading,nodes:e.nodes,source:e.source}}),e._v(" "),t("td",{staticClass:"files-list__row-name",attrs:{"data-cy-files-list-row-name":""}},[t("FileEntryPreview",{ref:"preview",attrs:{source:e.source,dragover:e.dragover},nativeOn:{auxclick:function(t){return e.execDefaultAction.apply(null,arguments)},click:function(t){return e.execDefaultAction.apply(null,arguments)}}}),e._v(" "),t("FileEntryName",{ref:"name",attrs:{"display-name":e.displayName,extension:e.extension,"files-list-width":e.filesListWidth,nodes:e.nodes,source:e.source},nativeOn:{auxclick:function(t){return e.execDefaultAction.apply(null,arguments)},click:function(t){return e.execDefaultAction.apply(null,arguments)}}})],1),e._v(" "),t("FileEntryActions",{directives:[{name:"show",rawName:"v-show",value:!e.isRenamingSmallScreen,expression:"!isRenamingSmallScreen"}],ref:"actions",class:"files-list__row-actions-".concat(e.uniqueId),attrs:{"files-list-width":e.filesListWidth,loading:e.loading,opened:e.openedMenu,source:e.source},on:{"update:loading":function(t){e.loading=t},"update:opened":function(t){e.openedMenu=t}}}),e._v(" "),!e.compact&&e.isSizeAvailable?t("td",{staticClass:"files-list__row-size",style:e.sizeOpacity,attrs:{"data-cy-files-list-row-size":""},on:{click:e.openDetailsIfAvailable}},[t("span",[e._v(e._s(e.size))])]):e._e(),e._v(" "),!e.compact&&e.isMtimeAvailable?t("td",{staticClass:"files-list__row-mtime",style:e.mtimeOpacity,attrs:{"data-cy-files-list-row-mtime":""},on:{click:e.openDetailsIfAvailable}},[e.source.mtime?t("NcDateTime",{attrs:{timestamp:e.source.mtime,"ignore-seconds":!0}}):e._e()],1):e._e(),e._v(" "),e._l(e.columns,(function(s){var n;return t("td",{key:s.id,staticClass:"files-list__row-column-custom",class:"files-list__row-".concat(null===(n=e.currentView)||void 0===n?void 0:n.id,"-").concat(s.id),attrs:{"data-cy-files-list-row-column-custom":s.id},on:{click:e.openDetailsIfAvailable}},[t("CustomElementRender",{attrs:{"current-view":e.currentView,render:s.render,source:e.source}})],1)}))],2)}),[],!1,null,null,null).exports,$i=(0,l.pM)({name:"FileEntryGrid",components:{FileEntryActions:gi,FileEntryCheckbox:pi,FileEntryName:Ai,FileEntryPreview:Oi},mixins:[Qn],inheritAttrs:!1,setup(){const e=Dn(),t=Fn(),s=Ks(),n=Rn(),i=Js(),{currentView:a}=xs();return{actionsMenuStore:e,draggingStore:t,filesStore:s,renamingStore:n,selectionStore:i,currentView:a}},data:()=>({gridMode:!0})}),qi=(0,Pt.A)($i,(function(){var e=this,t=e._self._c;return e._self._setupProxy,t("tr",{staticClass:"files-list__row",class:{"files-list__row--active":e.isActive,"files-list__row--dragover":e.dragover,"files-list__row--loading":e.isLoading},attrs:{"data-cy-files-list-row":"","data-cy-files-list-row-fileid":e.fileid,"data-cy-files-list-row-name":e.source.basename,draggable:e.canDrag},on:{contextmenu:e.onRightClick,dragover:e.onDragOver,dragleave:e.onDragLeave,dragstart:e.onDragStart,dragend:e.onDragEnd,drop:e.onDrop}},[e.isFailedSource?t("span",{staticClass:"files-list__row--failed"}):e._e(),e._v(" "),t("FileEntryCheckbox",{attrs:{fileid:e.fileid,"is-loading":e.isLoading,nodes:e.nodes,source:e.source}}),e._v(" "),t("td",{staticClass:"files-list__row-name",attrs:{"data-cy-files-list-row-name":""}},[t("FileEntryPreview",{ref:"preview",attrs:{dragover:e.dragover,"grid-mode":!0,source:e.source},nativeOn:{auxclick:function(t){return e.execDefaultAction.apply(null,arguments)},click:function(t){return e.execDefaultAction.apply(null,arguments)}}}),e._v(" "),t("FileEntryName",{ref:"name",attrs:{"display-name":e.displayName,extension:e.extension,"files-list-width":e.filesListWidth,"grid-mode":!0,nodes:e.nodes,source:e.source},nativeOn:{auxclick:function(t){return e.execDefaultAction.apply(null,arguments)},click:function(t){return e.execDefaultAction.apply(null,arguments)}}})],1),e._v(" "),t("FileEntryActions",{ref:"actions",class:"files-list__row-actions-".concat(e.uniqueId),attrs:{"files-list-width":e.filesListWidth,"grid-mode":!0,loading:e.loading,opened:e.openedMenu,source:e.source},on:{"update:loading":function(t){e.loading=t},"update:opened":function(t){e.openedMenu=t}}})],1)}),[],!1,null,null,null).exports;var Hi=n(96763);const Wi={name:"FilesListHeader",props:{header:{type:Object,required:!0},currentFolder:{type:Object,required:!0},currentView:{type:Object,required:!0}},computed:{enabled(){return this.header.enabled(this.currentFolder,this.currentView)}},watch:{enabled(e){e&&this.header.updated(this.currentFolder,this.currentView)},currentFolder(){this.header.updated(this.currentFolder,this.currentView)}},mounted(){Hi.debug("Mounted",this.header.id),this.header.render(this.$refs.mount,this.currentFolder,this.currentView)}},Gi=(0,Pt.A)(Wi,(function(){var e=this,t=e._self._c;return t("div",{directives:[{name:"show",rawName:"v-show",value:e.enabled,expression:"enabled"}],class:"files-list__header-".concat(e.header.id)},[t("span",{ref:"mount"})])}),[],!1,null,null,null).exports,Yi=(0,l.pM)({name:"FilesListTableFooter",props:{currentView:{type:r.Ss,required:!0},isMtimeAvailable:{type:Boolean,default:!1},isSizeAvailable:{type:Boolean,default:!1},nodes:{type:Array,required:!0},summary:{type:String,default:""},filesListWidth:{type:Number,default:0}},setup(){const e=Qs();return{filesStore:Ks(),pathsStore:e}},computed:{dir(){var e;return((null===(e=this.$route)||void 0===e||null===(e=e.query)||void 0===e?void 0:e.dir)||"/").replace(/^(.+)\/$/,"$1")},currentFolder(){var e;if(null===(e=this.currentView)||void 0===e||!e.id)return;if("/"===this.dir)return this.filesStore.getRoot(this.currentView.id);const t=this.pathsStore.getPath(this.currentView.id,this.dir);return this.filesStore.getNode(t)},columns(){var e;return this.filesListWidth<512?[]:(null===(e=this.currentView)||void 0===e?void 0:e.columns)||[]},totalSize(){var e;return null!==(e=this.currentFolder)&&void 0!==e&&e.size?(0,r.v7)(this.currentFolder.size,!0):(0,r.v7)(this.nodes.reduce(((e,t)=>{var s;return e+(null!==(s=t.size)&&void 0!==s?s:0)}),0),!0)}},methods:{classForColumn(e){return{"files-list__row-column-custom":!0,["files-list__row-".concat(this.currentView.id,"-").concat(e.id)]:!0}},t:Ut.Tl}});var Ki=n(6049),Qi={};Qi.styleTagTransform=is(),Qi.setAttributes=es(),Qi.insert=Zt().bind(null,"head"),Qi.domAPI=Qt(),Qi.insertStyleElement=ss(),Yt()(Ki.A,Qi),Ki.A&&Ki.A.locals&&Ki.A.locals;const Ji=(0,Pt.A)(Yi,(function(){var e=this,t=e._self._c;return e._self._setupProxy,t("tr",[t("th",{staticClass:"files-list__row-checkbox"},[t("span",{staticClass:"hidden-visually"},[e._v(e._s(e.t("files","Total rows summary")))])]),e._v(" "),t("td",{staticClass:"files-list__row-name"},[t("span",{staticClass:"files-list__row-icon"}),e._v(" "),t("span",[e._v(e._s(e.summary))])]),e._v(" "),t("td",{staticClass:"files-list__row-actions"}),e._v(" "),e.isSizeAvailable?t("td",{staticClass:"files-list__column files-list__row-size"},[t("span",[e._v(e._s(e.totalSize))])]):e._e(),e._v(" "),e.isMtimeAvailable?t("td",{staticClass:"files-list__column files-list__row-mtime"}):e._e(),e._v(" "),e._l(e.columns,(function(s){var n;return t("th",{key:s.id,class:e.classForColumn(s)},[t("span",[e._v(e._s(null===(n=s.summary)||void 0===n?void 0:n.call(s,e.nodes,e.currentView)))])])}))],2)}),[],!1,null,"130ade4f",null).exports;var Zi=n(1795),Xi=n(33017);const ea=l.Ay.extend({computed:{...(0,a.aH)(_s,["getConfig","setSortingBy","toggleSortingDirection"]),currentView(){return this.$navigation.active},sortingMode(){var e,t;return(null===(e=this.getConfig(this.currentView.id))||void 0===e?void 0:e.sorting_mode)||(null===(t=this.currentView)||void 0===t?void 0:t.defaultSortKey)||"basename"},isAscSorting(){var e;return"desc"!==(null===(e=this.getConfig(this.currentView.id))||void 0===e?void 0:e.sorting_direction)}},methods:{toggleSortBy(e){this.sortingMode!==e?this.setSortingBy(e,this.currentView.id):this.toggleSortingDirection(this.currentView.id)}}}),ta=(0,l.pM)({name:"FilesListTableHeaderButton",components:{MenuDown:Zi.A,MenuUp:Xi.A,NcButton:Ds.A},mixins:[ea],props:{name:{type:String,required:!0},mode:{type:String,required:!0}},methods:{t:Ut.Tl}});var sa=n(413),na={};na.styleTagTransform=is(),na.setAttributes=es(),na.insert=Zt().bind(null,"head"),na.domAPI=Qt(),na.insertStyleElement=ss(),Yt()(sa.A,na),sa.A&&sa.A.locals&&sa.A.locals;const ia=(0,Pt.A)(ta,(function(){var e=this,t=e._self._c;return e._self._setupProxy,t("NcButton",{class:["files-list__column-sort-button",{"files-list__column-sort-button--active":e.sortingMode===e.mode,"files-list__column-sort-button--size":"size"===e.sortingMode}],attrs:{alignment:"size"===e.mode?"end":"start-reverse",type:"tertiary"},on:{click:function(t){return e.toggleSortBy(e.mode)}},scopedSlots:e._u([{key:"icon",fn:function(){return[e.sortingMode!==e.mode||e.isAscSorting?t("MenuUp",{staticClass:"files-list__column-sort-button-icon"}):t("MenuDown",{staticClass:"files-list__column-sort-button-icon"})]},proxy:!0}])},[e._v(" "),t("span",{staticClass:"files-list__column-sort-button-text"},[e._v(e._s(e.name))])])}),[],!1,null,"4e97a5c6",null).exports,aa=(0,l.pM)({name:"FilesListTableHeader",components:{FilesListTableHeaderButton:ia,NcCheckboxRadioSwitch:cs.A},mixins:[ea],props:{isMtimeAvailable:{type:Boolean,default:!1},isSizeAvailable:{type:Boolean,default:!1},nodes:{type:Array,required:!0},filesListWidth:{type:Number,default:0}},setup(){const e=Ks(),t=Js(),{currentView:s}=xs();return{filesStore:e,selectionStore:t,currentView:s}},computed:{columns(){var e;return this.filesListWidth<512?[]:(null===(e=this.currentView)||void 0===e?void 0:e.columns)||[]},dir(){var e;return((null===(e=this.$route)||void 0===e||null===(e=e.query)||void 0===e?void 0:e.dir)||"/").replace(/^(.+)\/$/,"$1")},selectAllBind(){const e=(0,Ut.Tl)("files","Toggle selection for all files and folders");return{"aria-label":e,checked:this.isAllSelected,indeterminate:this.isSomeSelected,title:e}},selectedNodes(){return this.selectionStore.selected},isAllSelected(){return this.selectedNodes.length===this.nodes.length},isNoneSelected(){return 0===this.selectedNodes.length},isSomeSelected(){return!this.isAllSelected&&!this.isNoneSelected}},methods:{ariaSortForMode(e){return this.sortingMode===e?this.isAscSorting?"ascending":"descending":null},classForColumn(e){var t;return{"files-list__column":!0,"files-list__column--sortable":!!e.sort,"files-list__row-column-custom":!0,["files-list__row-".concat(null===(t=this.currentView)||void 0===t?void 0:t.id,"-").concat(e.id)]:!0}},onToggleAll(e){if(e){const e=this.nodes.map((e=>e.source)).filter(Boolean);qt.debug("Added all nodes to selection",{selection:e}),this.selectionStore.setLastIndex(null),this.selectionStore.set(e)}else qt.debug("Cleared selection"),this.selectionStore.reset()},resetSelection(){this.selectionStore.reset()},t:Ut.Tl}});var ra=n(55963),oa={};oa.styleTagTransform=is(),oa.setAttributes=es(),oa.insert=Zt().bind(null,"head"),oa.domAPI=Qt(),oa.insertStyleElement=ss(),Yt()(ra.A,oa),ra.A&&ra.A.locals&&ra.A.locals;const la=(0,Pt.A)(aa,(function(){var e=this,t=e._self._c;return e._self._setupProxy,t("tr",{staticClass:"files-list__row-head"},[t("th",{staticClass:"files-list__column files-list__row-checkbox",on:{keyup:function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"esc",27,t.key,["Esc","Escape"])||t.ctrlKey||t.shiftKey||t.altKey||t.metaKey?null:e.resetSelection.apply(null,arguments)}}},[t("NcCheckboxRadioSwitch",e._b({on:{"update:checked":e.onToggleAll}},"NcCheckboxRadioSwitch",e.selectAllBind,!1))],1),e._v(" "),t("th",{staticClass:"files-list__column files-list__row-name files-list__column--sortable",attrs:{"aria-sort":e.ariaSortForMode("basename")}},[t("span",{staticClass:"files-list__row-icon"}),e._v(" "),t("FilesListTableHeaderButton",{attrs:{name:e.t("files","Name"),mode:"basename"}})],1),e._v(" "),t("th",{staticClass:"files-list__row-actions"}),e._v(" "),e.isSizeAvailable?t("th",{staticClass:"files-list__column files-list__row-size",class:{"files-list__column--sortable":e.isSizeAvailable},attrs:{"aria-sort":e.ariaSortForMode("size")}},[t("FilesListTableHeaderButton",{attrs:{name:e.t("files","Size"),mode:"size"}})],1):e._e(),e._v(" "),e.isMtimeAvailable?t("th",{staticClass:"files-list__column files-list__row-mtime",class:{"files-list__column--sortable":e.isMtimeAvailable},attrs:{"aria-sort":e.ariaSortForMode("mtime")}},[t("FilesListTableHeaderButton",{attrs:{name:e.t("files","Modified"),mode:"mtime"}})],1):e._e(),e._v(" "),e._l(e.columns,(function(s){return t("th",{key:s.id,class:e.classForColumn(s),attrs:{"aria-sort":e.ariaSortForMode(s.id)}},[s.sort?t("FilesListTableHeaderButton",{attrs:{name:s.title,mode:s.id}}):t("span",[e._v("\n\t\t\t"+e._s(s.title)+"\n\t\t")])],1)}))],2)}),[],!1,null,"6eaeabb8",null).exports;var da=n(17334),ca=n.n(da),ua=n(96763);const ma=l.Ay.extend({name:"VirtualList",mixins:[Un],props:{dataComponent:{type:[Object,Function],required:!0},dataKey:{type:String,required:!0},dataSources:{type:Array,required:!0},extraProps:{type:Object,default:()=>({})},scrollToIndex:{type:Number,default:0},gridMode:{type:Boolean,default:!1},caption:{type:String,default:""}},data(){return{index:this.scrollToIndex,beforeHeight:0,headerHeight:0,tableHeight:0,resizeObserver:null}},computed:{isReady(){return this.tableHeight>0},bufferItems(){return this.gridMode?this.columnCount:3},itemHeight(){return this.gridMode?197:55},itemWidth:()=>175,rowCount(){return Math.ceil((this.tableHeight-this.headerHeight)/this.itemHeight)+this.bufferItems/this.columnCount*2+1},columnCount(){return this.gridMode?Math.floor(this.filesListWidth/this.itemWidth):1},startIndex(){return Math.max(0,this.index-this.bufferItems)},shownItems(){return this.gridMode?this.rowCount*this.columnCount:this.rowCount},renderedItems(){if(!this.isReady)return[];const e=this.dataSources.slice(this.startIndex,this.startIndex+this.shownItems),t=e.filter((e=>Object.values(this.$_recycledPool).includes(e[this.dataKey]))).map((e=>e[this.dataKey])),s=Object.keys(this.$_recycledPool).filter((e=>!t.includes(this.$_recycledPool[e])));return e.map((e=>{const t=Object.values(this.$_recycledPool).indexOf(e[this.dataKey]);if(-1!==t)return{key:Object.keys(this.$_recycledPool)[t],item:e};const n=s.pop()||Math.random().toString(36).substr(2);return this.$_recycledPool[n]=e[this.dataKey],{key:n,item:e}}))},totalRowCount(){return Math.floor(this.dataSources.length/this.columnCount)},tbodyStyle(){const e=this.startIndex+this.rowCount>this.dataSources.length,t=this.dataSources.length-this.startIndex-this.shownItems,s=Math.floor(Math.min(this.dataSources.length-this.startIndex,t)/this.columnCount);return{paddingTop:"".concat(Math.floor(this.startIndex/this.columnCount)*this.itemHeight,"px"),paddingBottom:e?0:"".concat(s*this.itemHeight,"px"),minHeight:"".concat(this.totalRowCount*this.itemHeight+this.beforeHeight,"px")}}},watch:{scrollToIndex(e){this.scrollTo(e)},totalRowCount(){this.scrollToIndex&&this.$nextTick((()=>this.scrollTo(this.scrollToIndex)))},columnCount(e,t){0!==t?this.scrollTo(this.index):ua.debug("VirtualList: columnCount is 0, skipping scroll")}},mounted(){var e,t;const s=null===(e=this.$refs)||void 0===e?void 0:e.before,n=this.$el,i=null===(t=this.$refs)||void 0===t?void 0:t.thead;this.resizeObserver=new ResizeObserver(ca()((()=>{var e,t,a;this.beforeHeight=null!==(e=null==s?void 0:s.clientHeight)&&void 0!==e?e:0,this.headerHeight=null!==(t=null==i?void 0:i.clientHeight)&&void 0!==t?t:0,this.tableHeight=null!==(a=null==n?void 0:n.clientHeight)&&void 0!==a?a:0,qt.debug("VirtualList: resizeObserver updated"),this.onScroll()}),100,!1)),this.resizeObserver.observe(s),this.resizeObserver.observe(n),this.resizeObserver.observe(i),this.scrollToIndex&&this.scrollTo(this.scrollToIndex),this.$el.addEventListener("scroll",this.onScroll,{passive:!0}),this.$_recycledPool={}},beforeDestroy(){this.resizeObserver&&this.resizeObserver.disconnect()},methods:{scrollTo(e){const t=Math.ceil(this.dataSources.length/this.columnCount);if(t{this._onScrollHandle=null;const e=this.$el.scrollTop-this.beforeHeight,t=Math.floor(e/this.itemHeight)*this.columnCount;this.index=Math.max(0,t),this.$emit("scroll")})))}}}),ga=(0,Pt.A)(ma,(function(){var e=this,t=e._self._c;return e._self._setupProxy,t("div",{staticClass:"files-list",attrs:{"data-cy-files-list":""}},[t("div",{ref:"before",staticClass:"files-list__before"},[e._t("before")],2),e._v(" "),e.$scopedSlots["header-overlay"]?t("div",{staticClass:"files-list__thead-overlay"},[e._t("header-overlay")],2):e._e(),e._v(" "),t("table",{staticClass:"files-list__table",class:{"files-list__table--with-thead-overlay":!!e.$scopedSlots["header-overlay"]}},[e.caption?t("caption",{staticClass:"hidden-visually"},[e._v("\n\t\t\t"+e._s(e.caption)+"\n\t\t")]):e._e(),e._v(" "),t("thead",{ref:"thead",staticClass:"files-list__thead",attrs:{"data-cy-files-list-thead":""}},[e._t("header")],2),e._v(" "),t("tbody",{staticClass:"files-list__tbody",class:e.gridMode?"files-list__tbody--grid":"files-list__tbody--list",style:e.tbodyStyle,attrs:{"data-cy-files-list-tbody":""}},e._l(e.renderedItems,(function(s,n){let{key:i,item:a}=s;return t(e.dataComponent,e._b({key:i,tag:"component",attrs:{source:a,index:n}},"component",e.extraProps,!1))})),1),e._v(" "),t("tfoot",{directives:[{name:"show",rawName:"v-show",value:e.isReady,expression:"isReady"}],staticClass:"files-list__tfoot",attrs:{"data-cy-files-list-tfoot":""}},[e._t("footer")],2)])])}),[],!1,null,null,null).exports,fa=(0,r.qK)(),pa=(0,l.pM)({name:"FilesListTableHeaderActions",components:{NcActions:ti.A,NcActionButton:ei.A,NcIconSvgWrapper:zt.A,NcLoadingIcon:js.A},mixins:[Un],props:{currentView:{type:Object,required:!0},selectedNodes:{type:Array,default:()=>[]}},setup:()=>({actionsMenuStore:Dn(),filesStore:Ks(),selectionStore:Js()}),data:()=>({loading:null}),computed:{dir(){var e;return((null===(e=this.$route)||void 0===e||null===(e=e.query)||void 0===e?void 0:e.dir)||"/").replace(/^(.+)\/$/,"$1")},enabledActions(){return fa.filter((e=>e.execBatch)).filter((e=>!e.enabled||e.enabled(this.nodes,this.currentView))).sort(((e,t)=>(e.order||0)-(t.order||0)))},nodes(){return this.selectedNodes.map((e=>this.getNode(e))).filter(Boolean)},areSomeNodesLoading(){return this.nodes.some((e=>e.status===r.zI.LOADING))},openedMenu:{get(){return"global"===this.actionsMenuStore.opened},set(e){this.actionsMenuStore.opened=e?"global":null}},inlineActions(){return this.filesListWidth<512?0:this.filesListWidth<768?1:this.filesListWidth<1024?2:3}},methods:{getNode(e){return this.filesStore.getNode(e)},async onActionClick(e){const t=e.displayName(this.nodes,this.currentView),s=this.selectedNodes;try{this.loading=e.id,this.nodes.forEach((e=>{l.Ay.set(e,"status",r.zI.LOADING)}));const n=await e.execBatch(this.nodes,this.currentView,this.dir);if(!n.some((e=>null!==e)))return void this.selectionStore.reset();if(n.some((e=>!1===e))){const e=s.filter(((e,t)=>!1===n[t]));if(this.selectionStore.set(e),n.some((e=>null===e)))return;return void(0,jt.Qg)(this.t("files",'"{displayName}" failed on some elements ',{displayName:t}))}(0,jt.Te)(this.t("files",'"{displayName}" batch action executed successfully',{displayName:t})),this.selectionStore.reset()}catch(s){qt.error("Error while executing action",{action:e,e:s}),(0,jt.Qg)(this.t("files",'"{displayName}" action failed',{displayName:t}))}finally{this.loading=null,this.nodes.forEach((e=>{l.Ay.set(e,"status",void 0)}))}},t:Ut.Tl}}),ha=pa;var va=n(98645),wa={};wa.styleTagTransform=is(),wa.setAttributes=es(),wa.insert=Zt().bind(null,"head"),wa.domAPI=Qt(),wa.insertStyleElement=ss(),Yt()(va.A,wa),va.A&&va.A.locals&&va.A.locals;var Aa=(0,Pt.A)(ha,(function(){var e=this,t=e._self._c;return e._self._setupProxy,t("div",{staticClass:"files-list__column files-list__row-actions-batch"},[t("NcActions",{ref:"actionsMenu",attrs:{disabled:!!e.loading||e.areSomeNodesLoading,"force-name":!0,inline:e.inlineActions,"menu-name":e.inlineActions<=1?e.t("files","Actions"):null,open:e.openedMenu},on:{"update:open":function(t){e.openedMenu=t}}},e._l(e.enabledActions,(function(s){return t("NcActionButton",{key:s.id,class:"files-list__row-actions-batch-"+s.id,on:{click:function(t){return e.onActionClick(s)}},scopedSlots:e._u([{key:"icon",fn:function(){return[e.loading===s.id?t("NcLoadingIcon",{attrs:{size:18}}):t("NcIconSvgWrapper",{attrs:{svg:s.iconSvgInline(e.nodes,e.currentView)}})]},proxy:!0}],null,!0)},[e._v("\n\t\t\t"+e._s(s.displayName(e.nodes,e.currentView))+"\n\t\t")])})),1)],1)}),[],!1,null,"1284c4be",null);const Ca=Aa.exports,ya=(0,l.pM)({name:"FilesListVirtual",components:{FilesListHeader:Gi,FilesListTableFooter:Ji,FilesListTableHeader:la,VirtualList:ga,FilesListTableHeaderActions:Ca},mixins:[Un],props:{currentView:{type:r.Ss,required:!0},currentFolder:{type:r.vd,required:!0},nodes:{type:Array,required:!0}},setup:()=>({userConfigStore:vs(),selectionStore:Js()}),data:()=>({FileEntry:Vi,FileEntryGrid:qi,headers:(0,r.By)(),scrollToIndex:0,openFileId:null}),computed:{userConfig(){return this.userConfigStore.userConfig},fileId(){return parseInt(this.$route.params.fileid)||null},openFile(){return!!this.$route.query.openfile},summary(){return In(this.nodes)},isMtimeAvailable(){return!(this.filesListWidth<768)&&this.nodes.some((e=>void 0!==e.mtime))},isSizeAvailable(){return!(this.filesListWidth<768)&&this.nodes.some((e=>void 0!==e.size))},sortedHeaders(){return this.currentFolder&&this.currentView?[...this.headers].sort(((e,t)=>e.order-t.order)):[]},caption(){const e=(0,Ut.Tl)("files","List of files and folders."),t=this.currentView.caption||e,s=(0,Ut.Tl)("files","Column headers with buttons are sortable."),n=(0,Ut.Tl)("files","This list is not fully rendered for performance reasons. The files will be rendered as you navigate through the list.");return"".concat(t,"\n").concat(s,"\n").concat(n)},selectedNodes(){return this.selectionStore.selected},isNoneSelected(){return 0===this.selectedNodes.length}},watch:{fileId(e){this.scrollToFile(e,!1)},openFile(e){e&&this.$nextTick((()=>this.handleOpenFile(this.fileId)))}},mounted(){window.document.querySelector("main.app-content").addEventListener("dragover",this.onDragOver);const{id:e}=(0,Rt.C)("files","fileInfo",{});this.scrollToFile(null!=e?e:this.fileId),this.openSidebarForFile(null!=e?e:this.fileId),this.handleOpenFile(null!=e?e:null)},beforeDestroy(){window.document.querySelector("main.app-content").removeEventListener("dragover",this.onDragOver)},methods:{openSidebarForFile(e){if(document.documentElement.clientWidth>1024&&this.currentFolder.fileid!==e){var t;const s=this.nodes.find((t=>t.fileid===e));s&&null!=Ws&&null!==(t=Ws.enabled)&&void 0!==t&&t.call(Ws,[s],this.currentView)&&(qt.debug("Opening sidebar on file "+s.path,{node:s}),Ws.exec(s,this.currentView,this.currentFolder.path))}},scrollToFile(e){let t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];if(e){const s=this.nodes.findIndex((t=>t.fileid===e));t&&-1===s&&e!==this.currentFolder.fileid&&(0,jt.Qg)(this.t("files","File not found")),this.scrollToIndex=Math.max(0,s)}},handleOpenFile(e){if(!this.openFile)return;if(null===e||this.openFileId===e)return;const t=this.nodes.find((t=>t.fileid===e));if(void 0===t||t.type===r.pt.Folder)return;qt.debug("Opening file "+t.path,{node:t}),this.openFileId=e;const s=(0,r.qK)().filter((e=>!(null==e||!e.default))).filter((e=>!e.enabled||e.enabled([t],this.currentView))).sort(((e,t)=>(e.order||0)-(t.order||0))).at(0);null==s||s.exec(t,this.currentView,this.currentFolder.path)},onDragOver(e){var t;if(null===(t=e.dataTransfer)||void 0===t?void 0:t.types.includes("Files"))return;e.preventDefault(),e.stopPropagation();const s=this.$refs.table.$el,n=s.getBoundingClientRect().top,i=n+s.getBoundingClientRect().height;e.clientYi-50&&(s.scrollTop=s.scrollTop+25)},t:Ut.Tl}});var xa=n(47738),ba={};ba.styleTagTransform=is(),ba.setAttributes=es(),ba.insert=Zt().bind(null,"head"),ba.domAPI=Qt(),ba.insertStyleElement=ss(),Yt()(xa.A,ba),xa.A&&xa.A.locals&&xa.A.locals;var _a=n(27982),Ta={};Ta.styleTagTransform=is(),Ta.setAttributes=es(),Ta.insert=Zt().bind(null,"head"),Ta.domAPI=Qt(),Ta.insertStyleElement=ss(),Yt()(_a.A,Ta),_a.A&&_a.A.locals&&_a.A.locals;const ka=(0,Pt.A)(ya,(function(){var e=this,t=e._self._c;return e._self._setupProxy,t("VirtualList",{ref:"table",attrs:{"data-component":e.userConfig.grid_view?e.FileEntryGrid:e.FileEntry,"data-key":"source","data-sources":e.nodes,"grid-mode":e.userConfig.grid_view,"extra-props":{isMtimeAvailable:e.isMtimeAvailable,isSizeAvailable:e.isSizeAvailable,nodes:e.nodes,filesListWidth:e.filesListWidth},"scroll-to-index":e.scrollToIndex,caption:e.caption},scopedSlots:e._u([e.isNoneSelected?null:{key:"header-overlay",fn:function(){return[t("span",{staticClass:"files-list__selected"},[e._v(e._s(e.t("files","{count} selected",{count:e.selectedNodes.length})))]),e._v(" "),t("FilesListTableHeaderActions",{attrs:{"current-view":e.currentView,"selected-nodes":e.selectedNodes}})]},proxy:!0},{key:"before",fn:function(){return e._l(e.sortedHeaders,(function(s){return t("FilesListHeader",{key:s.id,attrs:{"current-folder":e.currentFolder,"current-view":e.currentView,header:s}})}))},proxy:!0},{key:"header",fn:function(){return[t("FilesListTableHeader",{ref:"thead",attrs:{"files-list-width":e.filesListWidth,"is-mtime-available":e.isMtimeAvailable,"is-size-available":e.isSizeAvailable,nodes:e.nodes}})]},proxy:!0},{key:"footer",fn:function(){return[t("FilesListTableFooter",{attrs:{"current-view":e.currentView,"files-list-width":e.filesListWidth,"is-mtime-available":e.isMtimeAvailable,"is-size-available":e.isSizeAvailable,nodes:e.nodes,summary:e.summary}})]},proxy:!0}],null,!0)})}),[],!1,null,"1287bfe2",null).exports,Sa={name:"TrayArrowDownIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},La=(0,Pt.A)(Sa,(function(){var e=this,t=e._self._c;return t("span",e._b({staticClass:"material-design-icon tray-arrow-down-icon",attrs:{"aria-hidden":!e.title||null,"aria-label":e.title,role:"img"},on:{click:function(t){return e.$emit("click",t)}}},"span",e.$attrs,!1),[t("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[t("path",{attrs:{d:"M2 12H4V17H20V12H22V17C22 18.11 21.11 19 20 19H4C2.9 19 2 18.11 2 17V12M12 15L17.55 9.54L16.13 8.13L13 11.25V2H11V11.25L7.88 8.13L6.46 9.55L12 15Z"}},[e.title?t("title",[e._v(e._s(e.title))]):e._e()])])])}),[],!1,null,null,null).exports,Fa=(0,l.pM)({name:"DragAndDropNotice",components:{TrayArrowDownIcon:La},props:{currentFolder:{type:Object,required:!0}},setup(){const{currentView:e}=xs();return{currentView:e}},data:()=>({dragover:!1}),computed:{canUpload(){return this.currentFolder&&0!=(this.currentFolder.permissions&r.aX.CREATE)},isQuotaExceeded(){var e;return 0===(null===(e=this.currentFolder)||void 0===e||null===(e=e.attributes)||void 0===e?void 0:e["quota-available-bytes"])},cantUploadLabel(){return this.isQuotaExceeded?this.t("files","Your have used your space quota and cannot upload files anymore"):this.canUpload?null:this.t("files","You don’t have permission to upload or create files here")}},mounted(){const e=window.document.querySelector("main.app-content");e.addEventListener("dragover",this.onDragOver),e.addEventListener("dragleave",this.onDragLeave),e.addEventListener("drop",this.onContentDrop)},beforeDestroy(){const e=window.document.querySelector("main.app-content");e.removeEventListener("dragover",this.onDragOver),e.removeEventListener("dragleave",this.onDragLeave),e.removeEventListener("drop",this.onContentDrop)},methods:{onDragOver(e){var t;e.preventDefault(),(null===(t=e.dataTransfer)||void 0===t?void 0:t.types.includes("Files"))&&(this.dragover=!0)},onDragLeave(e){var t;const s=e.currentTarget;null!=s&&s.contains(null!==(t=e.relatedTarget)&&void 0!==t?t:e.target)||this.dragover&&(this.dragover=!1)},onContentDrop(e){qt.debug("Drag and drop cancelled, dropped on empty space",{event:e}),e.preventDefault(),this.dragover&&(this.dragover=!1)},async onDrop(e){var t,s,n;if(this.cantUploadLabel)return void(0,jt.Qg)(this.cantUploadLabel);if(null!==(t=this.$el.querySelector("tbody"))&&void 0!==t&&t.contains(e.target))return;e.preventDefault(),e.stopPropagation();const i=[...(null===(s=e.dataTransfer)||void 0===s?void 0:s.items)||[]],a=await kn(i),r=await(null===(n=this.currentView)||void 0===n?void 0:n.getContents(this.currentFolder.path)),o=null==r?void 0:r.folder;if(!o)return void(0,jt.Qg)(this.t("files","Target folder does not exist any more"));if(e.button)return;qt.debug("Dropped",{event:e,folder:o,fileTree:a});const l=(await Sn(a,o,r.contents)).findLast((e=>{var t;return e.status!==Ps.d.FAILED&&!e.file.webkitRelativePath.includes("/")&&(null===(t=e.response)||void 0===t||null===(t=t.headers)||void 0===t?void 0:t["oc-fileid"])&&2===e.source.replace(o.source,"").split("/").length}));var d,c;void 0!==l&&(qt.debug("Scrolling to last upload in current folder",{lastUpload:l}),this.$router.push({...this.$route,params:{view:null!==(d=null===(c=this.$route.params)||void 0===c?void 0:c.view)&&void 0!==d?d:"files",fileid:parseInt(l.response.headers["oc-fileid"])}})),this.dragover=!1},t:Ut.Tl}});var Ua=n(93259),Ea={};Ea.styleTagTransform=is(),Ea.setAttributes=es(),Ea.insert=Zt().bind(null,"head"),Ea.domAPI=Qt(),Ea.insertStyleElement=ss(),Yt()(Ua.A,Ea),Ua.A&&Ua.A.locals&&Ua.A.locals;const Pa=(0,Pt.A)(Fa,(function(){var e=this,t=e._self._c;return e._self._setupProxy,t("div",{directives:[{name:"show",rawName:"v-show",value:e.dragover,expression:"dragover"}],staticClass:"files-list__drag-drop-notice",attrs:{"data-cy-files-drag-drop-area":""},on:{drop:e.onDrop}},[t("div",{staticClass:"files-list__drag-drop-notice-wrapper"},[e.canUpload&&!e.isQuotaExceeded?[t("TrayArrowDownIcon",{attrs:{size:48}}),e._v(" "),t("h3",{staticClass:"files-list-drag-drop-notice__title"},[e._v("\n\t\t\t\t"+e._s(e.t("files","Drag and drop files here to upload"))+"\n\t\t\t")])]:[t("h3",{staticClass:"files-list-drag-drop-notice__title"},[e._v("\n\t\t\t\t"+e._s(e.cantUploadLabel)+"\n\t\t\t")])]],2)])}),[],!1,null,"7f8a4132",null).exports;var Na,Ba=n(96763);const Ia=void 0!==(null===(Na=(0,Fs.F)())||void 0===Na?void 0:Na.files_sharing),za=(0,l.pM)({name:"FilesList",components:{BreadCrumbs:Bn,DragAndDropNotice:Pa,FilesListVirtual:ka,LinkIcon:Ns.A,ListViewIcon:Is,NcAppContent:zs.A,NcButton:Ds.A,NcEmptyContent:Rs.A,NcIconSvgWrapper:zt.A,NcLoadingIcon:js.A,PlusIcon:Os.A,AccountPlusIcon:Vs,UploadPicker:Ps.U,ViewGridIcon:qs},mixins:[Un,ea],setup(){var e;const t=Ks(),s=Qs(),n=Js(),i=Xs(),a=vs(),r=_s(),{currentView:o}=xs();return{currentView:o,filesStore:t,pathsStore:s,selectionStore:n,uploaderStore:i,userConfigStore:a,viewConfigStore:r,enableGridView:null===(e=(0,Rt.C)("core","config",[])["enable_non-accessible_features"])||void 0===e||e,forbiddenCharacters:(0,Rt.C)("files","forbiddenCharacters",[]),Type:Es.Z}},data:()=>({filterText:"",loading:!0,promise:null,unsubscribeStoreCallback:()=>{}}),computed:{onSearch(){return ca()((e=>{Ba.debug("Files app handling search event from unified search...",e),this.filterText=e.query}),500)},getContent(){const e=this.currentView;return async t=>{var s,n;const i=(0,Us.normalize)("".concat(null!==(s=null===(n=this.currentFolder)||void 0===n?void 0:n.path)&&void 0!==s?s:"","/").concat(null!=t?t:""));return(await e.getContents(i)).contents}},userConfig(){return this.userConfigStore.userConfig},pageHeading(){var e,t;return null!==(e=null===(t=this.currentView)||void 0===t?void 0:t.name)&&void 0!==e?e:(0,Ut.Tl)("files","Files")},dir(){var e;return((null===(e=this.$route)||void 0===e||null===(e=e.query)||void 0===e||null===(e=e.dir)||void 0===e?void 0:e.toString())||"/").replace(/^(.+)\/$/,"$1")},fileId(){var e,t;const s=Number.parseInt(null!==(e=null===(t=this.$route)||void 0===t?void 0:t.params.fileid)&&void 0!==e?e:"");return Number.isNaN(s)?null:s},currentFolder(){var e;if(null===(e=this.currentView)||void 0===e||!e.id)return;if("/"===this.dir)return this.filesStore.getRoot(this.currentView.id);const t=this.pathsStore.getPath(this.currentView.id,this.dir);return void 0!==t?this.filesStore.getNode(t):void 0},sortingParameters(){return[[...this.userConfig.sort_favorites_first?[e=>{var t;return 1!==(null===(t=e.attributes)||void 0===t?void 0:t.favorite)}]:[],...this.userConfig.sort_folders_first?[e=>"folder"!==e.type]:[],..."basename"!==this.sortingMode?[e=>e[this.sortingMode]]:[],e=>{var t;return(null===(t=e.attributes)||void 0===t?void 0:t.displayname)||e.basename},e=>e.basename],[...this.userConfig.sort_favorites_first?["asc"]:[],...this.userConfig.sort_folders_first?["asc"]:[],..."mtime"===this.sortingMode?[this.isAscSorting?"desc":"asc"]:[],..."mtime"!==this.sortingMode&&"basename"!==this.sortingMode?[this.isAscSorting?"asc":"desc"]:[],this.isAscSorting?"asc":"desc",this.isAscSorting?"asc":"desc"]]},dirContentsSorted(){var e;if(!this.currentView)return[];let t=[...this.dirContents];this.filterText&&(t=t.filter((e=>e.basename.toLowerCase().includes(this.filterText.toLowerCase()))),Ba.debug("Files view filtered",t));const s=((null===(e=this.currentView)||void 0===e?void 0:e.columns)||[]).find((e=>e.id===this.sortingMode));if(null!=s&&s.sort&&"function"==typeof s.sort){const e=[...this.dirContents].sort(s.sort);return this.isAscSorting?e:e.reverse()}return function(e,t,s){var n,i;t=null!==(n=t)&&void 0!==n?n:[e=>e],s=null!==(i=s)&&void 0!==i?i:[];const a=t.map(((e,t)=>{var n;return"asc"===(null!==(n=s[t])&&void 0!==n?n:"asc")?1:-1})),r=Intl.Collator([(0,Ut.Z0)(),(0,Ut.lO)()],{numeric:!0,usage:"sort"});return[...e].sort(((e,s)=>{for(const[n,i]of t.entries()){const t=r.compare(en(i(e)),en(i(s)));if(0!==t)return t*a[n]}return 0}))}(t,...this.sortingParameters)},dirContents(){var e,t;const s=null===(e=this.userConfigStore)||void 0===e?void 0:e.userConfig.show_hidden;return((null===(t=this.currentFolder)||void 0===t?void 0:t._children)||[]).map(this.getNode).filter((e=>{var t;return s?!!e:e&&!0!==(null==e||null===(t=e.attributes)||void 0===t?void 0:t.hidden)&&!(null!=e&&e.basename.startsWith("."))}))},isEmptyDir(){return 0===this.dirContents.length},isRefreshing(){return void 0!==this.currentFolder&&!this.isEmptyDir&&this.loading},toPreviousDir(){const e=this.dir.split("/").slice(0,-1).join("/")||"/";return{...this.$route,query:{dir:e}}},shareAttributes(){var e,t;if(null!==(e=this.currentFolder)&&void 0!==e&&null!==(e=e.attributes)&&void 0!==e&&e["share-types"])return Object.values((null===(t=this.currentFolder)||void 0===t||null===(t=t.attributes)||void 0===t?void 0:t["share-types"])||{}).flat()},shareButtonLabel(){return this.shareAttributes?this.shareButtonType===Es.Z.SHARE_TYPE_LINK?(0,Ut.Tl)("files","Shared by link"):(0,Ut.Tl)("files","Shared"):(0,Ut.Tl)("files","Share")},shareButtonType(){return this.shareAttributes?this.shareAttributes.some((e=>e===Es.Z.SHARE_TYPE_LINK))?Es.Z.SHARE_TYPE_LINK:Es.Z.SHARE_TYPE_USER:null},gridViewButtonLabel(){return this.userConfig.grid_view?(0,Ut.Tl)("files","Switch to list view"):(0,Ut.Tl)("files","Switch to grid view")},canUpload(){return this.currentFolder&&0!=(this.currentFolder.permissions&r.aX.CREATE)},isQuotaExceeded(){var e;return 0===(null===(e=this.currentFolder)||void 0===e||null===(e=e.attributes)||void 0===e?void 0:e["quota-available-bytes"])},cantUploadLabel(){return this.isQuotaExceeded?(0,Ut.Tl)("files","Your have used your space quota and cannot upload files anymore"):(0,Ut.Tl)("files","You don’t have permission to upload or create files here")},canShare(){return Ia&&this.currentFolder&&0!=(this.currentFolder.permissions&r.aX.SHARE)}},watch:{currentView(e,t){(null==e?void 0:e.id)!==(null==t?void 0:t.id)&&(qt.debug("View changed",{newView:e,oldView:t}),this.selectionStore.reset(),this.resetSearch(),this.fetchContent())},dir(e,t){var s;qt.debug("Directory changed",{newDir:e,oldDir:t}),this.selectionStore.reset(),this.resetSearch(),this.fetchContent();const n=null===(s=this.$refs)||void 0===s?void 0:s.filesListVirtual;null!=n&&n.$el&&(n.$el.scrollTop=0)},dirContents(e){qt.debug("Directory contents changed",{view:this.currentView,folder:this.currentFolder,contents:e}),(0,Ft.Ic)("files:list:updated",{view:this.currentView,folder:this.currentFolder,contents:e})}},mounted(){this.fetchContent(),(0,Ft.B1)("files:node:deleted",this.onNodeDeleted),(0,Ft.B1)("files:node:updated",this.onUpdatedNode),(0,Ft.B1)("nextcloud:unified-search.search",this.onSearch),(0,Ft.B1)("nextcloud:unified-search.reset",this.resetSearch),this.unsubscribeStoreCallback=this.userConfigStore.$subscribe((()=>this.fetchContent()),{deep:!0})},unmounted(){(0,Ft.al)("files:node:deleted",this.onNodeDeleted),(0,Ft.al)("files:node:updated",this.onUpdatedNode),(0,Ft.al)("nextcloud:unified-search.search",this.onSearch),(0,Ft.al)("nextcloud:unified-search.reset",this.resetSearch),this.unsubscribeStoreCallback()},methods:{t:Ut.Tl,async fetchContent(){this.loading=!0;const e=this.dir,t=this.currentView;if(t){this.promise&&"cancel"in this.promise&&(this.promise.cancel(),qt.debug("Cancelled previous ongoing fetch")),this.promise=t.getContents(e);try{const{folder:s,contents:n}=await this.promise;qt.debug("Fetched contents",{dir:e,folder:s,contents:n}),this.filesStore.updateNodes(n),this.$set(s,"_children",n.map((e=>e.source))),"/"===e?this.filesStore.setRoot({service:t.id,root:s}):s.fileid?(this.filesStore.updateNodes([s]),this.pathsStore.addPath({service:t.id,source:s.source,path:e})):qt.fatal("Invalid root folder returned",{dir:e,folder:s,currentView:t}),n.filter((e=>"folder"===e.type)).forEach((s=>{this.pathsStore.addPath({service:t.id,source:s.source,path:(0,Us.join)(e,s.basename)})}))}catch(e){qt.error("Error while fetching content",{error:e})}finally{this.loading=!1}}else qt.debug("The current view doesn't exists or is not ready.",{currentView:t})},getNode(e){return this.filesStore.getNode(e)},onNodeDeleted(e){var t,s,n;e.fileid&&e.fileid===this.fileId&&(e.fileid===(null===(t=this.currentFolder)||void 0===t?void 0:t.fileid)?window.OCP.Files.Router.goToRoute(null,{view:this.$route.params.view},{dir:null!==(s=null===(n=this.currentFolder)||void 0===n?void 0:n.dirname)&&void 0!==s?s:"/"}):window.OCP.Files.Router.goToRoute(null,{...this.$route.params,fileid:void 0},{...this.$route.query,openfile:void 0}))},onUpload(e){(0,Us.dirname)(e.source)===this.currentFolder.source&&this.fetchContent()},async onUploadFail(e){var t,s;const n=(null===(t=e.response)||void 0===t?void 0:t.status)||0;if(e.status!==Ps.d.CANCELLED)if(507!==n)if(404!==n&&409!==n)if(403!==n){if("string"==typeof(null===(s=e.response)||void 0===s?void 0:s.data))try{var i,a;const t=null!==(i=null===(a=(new DOMParser).parseFromString(e.response.data,"text/xml").getElementsByTagName("s:message")[0])||void 0===a?void 0:a.textContent)&&void 0!==i?i:"";if(""!==t.trim())return void(0,jt.Qg)((0,Ut.Tl)("files","Error during upload: {message}",{message:t}))}catch(e){qt.error("Could not parse message",{error:e})}0===n?(0,jt.Qg)((0,Ut.Tl)("files","Unknown error during upload")):(0,jt.Qg)((0,Ut.Tl)("files","Error during upload, status code {status}",{status:n}))}else(0,jt.Qg)((0,Ut.Tl)("files","Operation is blocked by access control"));else(0,jt.Qg)((0,Ut.Tl)("files","Target folder does not exist any more"));else(0,jt.Qg)((0,Ut.Tl)("files","Not enough free space"));else(0,jt.I9)((0,Ut.Tl)("files","Upload was cancelled by user"))},onUpdatedNode(e){var t;(null==e?void 0:e.fileid)===(null===(t=this.currentFolder)||void 0===t?void 0:t.fileid)&&this.fetchContent()},resetSearch(){this.onSearch.clear(),this.filterText=""},openSharingSidebar(){var e;this.currentFolder?(null!==(e=window)&&void 0!==e&&null!==(e=e.OCA)&&void 0!==e&&null!==(e=e.Files)&&void 0!==e&&null!==(e=e.Sidebar)&&void 0!==e&&e.setActiveTab&&window.OCA.Files.Sidebar.setActiveTab("sharing"),Ws.exec(this.currentFolder,this.currentView,this.currentFolder.path)):qt.debug("No current folder found for opening sharing sidebar")},toggleGridView(){this.userConfigStore.update("grid_view",!this.userConfig.grid_view)}}});var Da=n(48885),Ra={};Ra.styleTagTransform=is(),Ra.setAttributes=es(),Ra.insert=Zt().bind(null,"head"),Ra.domAPI=Qt(),Ra.insertStyleElement=ss(),Yt()(Da.A,Ra),Da.A&&Da.A.locals&&Da.A.locals;const ja=(0,Pt.A)(za,(function(){var e,t,s=this,n=s._self._c;return s._self._setupProxy,n("NcAppContent",{attrs:{"page-heading":s.pageHeading,"data-cy-files-content":""}},[n("div",{staticClass:"files-list__header"},[n("BreadCrumbs",{attrs:{path:s.dir},on:{reload:s.fetchContent},scopedSlots:s._u([{key:"actions",fn:function(){return[s.canShare&&s.filesListWidth>=512?n("NcButton",{staticClass:"files-list__header-share-button",class:{"files-list__header-share-button--shared":s.shareButtonType},attrs:{"aria-label":s.shareButtonLabel,title:s.shareButtonLabel,type:"tertiary"},on:{click:s.openSharingSidebar},scopedSlots:s._u([{key:"icon",fn:function(){return[s.shareButtonType===s.Type.SHARE_TYPE_LINK?n("LinkIcon"):n("AccountPlusIcon",{attrs:{size:20}})]},proxy:!0}],null,!1,2969853559)}):s._e(),s._v(" "),!s.canUpload||s.isQuotaExceeded?n("NcButton",{staticClass:"files-list__header-upload-button--disabled",attrs:{"aria-label":s.cantUploadLabel,title:s.cantUploadLabel,disabled:!0,type:"secondary"},scopedSlots:s._u([{key:"icon",fn:function(){return[n("PlusIcon",{attrs:{size:20}})]},proxy:!0}],null,!1,2953566425)},[s._v("\n\t\t\t\t\t"+s._s(s.t("files","New"))+"\n\t\t\t\t")]):s.currentFolder?n("UploadPicker",{staticClass:"files-list__header-upload-button",attrs:{"allow-folders":"",content:s.getContent,destination:s.currentFolder,"forbidden-characters":s.forbiddenCharacters,multiple:""},on:{failed:s.onUploadFail,uploaded:s.onUpload}}):s._e()]},proxy:!0}])}),s._v(" "),s.filesListWidth>=512&&s.enableGridView?n("NcButton",{staticClass:"files-list__header-grid-button",attrs:{"aria-label":s.gridViewButtonLabel,title:s.gridViewButtonLabel,type:"tertiary"},on:{click:s.toggleGridView},scopedSlots:s._u([{key:"icon",fn:function(){return[s.userConfig.grid_view?n("ListViewIcon"):n("ViewGridIcon")]},proxy:!0}],null,!1,1682960703)}):s._e(),s._v(" "),s.isRefreshing?n("NcLoadingIcon",{staticClass:"files-list__refresh-icon"}):s._e()],1),s._v(" "),!s.loading&&s.canUpload?n("DragAndDropNotice",{attrs:{"current-folder":s.currentFolder}}):s._e(),s._v(" "),s.loading&&!s.isRefreshing?n("NcLoadingIcon",{staticClass:"files-list__loading-icon",attrs:{size:38,name:s.t("files","Loading current folder")}}):!s.loading&&s.isEmptyDir?n("NcEmptyContent",{attrs:{name:(null===(e=s.currentView)||void 0===e?void 0:e.emptyTitle)||s.t("files","No files in here"),description:(null===(t=s.currentView)||void 0===t?void 0:t.emptyCaption)||s.t("files","Upload some content or sync with your devices!"),"data-cy-files-content-empty":""},scopedSlots:s._u(["/"!==s.dir?{key:"action",fn:function(){return[s.currentFolder&&s.canUpload&&!s.isQuotaExceeded?n("UploadPicker",{staticClass:"files-list__header-upload-button",attrs:{"allow-folders":"",content:s.getContent,destination:s.currentFolder,"forbidden-characters":s.forbiddenCharacters,multiple:""},on:{failed:s.onUploadFail,uploaded:s.onUpload}}):n("NcButton",{attrs:{"aria-label":s.t("files","Go to the previous folder"),to:s.toPreviousDir,type:"primary"}},[s._v("\n\t\t\t\t"+s._s(s.t("files","Go back"))+"\n\t\t\t")])]},proxy:!0}:null,{key:"icon",fn:function(){return[n("NcIconSvgWrapper",{attrs:{svg:s.currentView.icon}})]},proxy:!0}],null,!0)}):n("FilesListVirtual",{ref:"filesListVirtual",attrs:{"current-folder":s.currentFolder,"current-view":s.currentView,nodes:s.dirContentsSorted}})],1)}),[],!1,null,"0e2ac83a",null).exports,Oa=(0,l.pM)({name:"FilesApp",components:{NcContent:Lt.A,FilesList:ja,Navigation:Ls}}),Ma=(0,Pt.A)(Oa,(function(){var e=this,t=e._self._c;return e._self._setupProxy,t("NcContent",{attrs:{"app-name":"files"}},[t("Navigation"),e._v(" "),t("FilesList")],1)}),[],!1,null,null,null).exports;var Va,$a;n.nc=btoa((0,o.do)()),window.OCA.Files=null!==(Va=window.OCA.Files)&&void 0!==Va?Va:{},window.OCP.Files=null!==($a=window.OCP.Files)&&void 0!==$a?$a:{};const qa=new class{constructor(e){(function(e,t,s){(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e;var s=e[Symbol.toPrimitive];if(void 0!==s){var n=s.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:s,enumerable:!0,configurable:!0,writable:!0}):e[t]=s})(this,"_router",void 0),this._router=e}get name(){return this._router.currentRoute.name}get query(){return this._router.currentRoute.query||{}}get params(){return this._router.currentRoute.params||{}}goTo(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return this._router.push({path:e,replace:t})}goToRoute(e,t,s,n){return this._router.push({name:e,query:s,params:t,replace:n})}}(Tt);Object.assign(window.OCP.Files,{Router:qa}),l.Ay.use(a.R2);const Ha=l.Ay.observable((0,r.bh)());l.Ay.prototype.$navigation=Ha;const Wa=new class{constructor(){(function(e,t,s){(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e;var s=e[Symbol.toPrimitive];if(void 0!==s){var n=s.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:s,enumerable:!0,configurable:!0,writable:!0}):e[t]=s})(this,"_settings",void 0),this._settings=[],St.debug("OCA.Files.Settings initialized")}register(e){return this._settings.filter((t=>t.name===e.name)).length>0?(St.error("A setting with the same name is already registered"),!1):(this._settings.push(e),!0)}get settings(){return this._settings}};Object.assign(window.OCA.Files,{Settings:Wa}),Object.assign(window.OCA.Files.Settings,{Setting:class{constructor(e,t){let{el:s,open:n,close:i}=t;kt(this,"_close",void 0),kt(this,"_el",void 0),kt(this,"_name",void 0),kt(this,"_open",void 0),this._name=e,this._el=s,this._open=n,this._close=i,"function"!=typeof this._open&&(this._open=()=>{}),"function"!=typeof this._close&&(this._close=()=>{})}get name(){return this._name}get el(){return this._el}get open(){return this._open}get close(){return this._close}}}),new(l.Ay.extend(Ma))({router:Tt,pinia:d}).$mount("#content")},18141:(e,t,s)=>{"use strict";s.d(t,{A:()=>o});var n=s(71354),i=s.n(n),a=s(76314),r=s.n(a)()(i());r.push([e.id,".upload-picker[data-v-1f097873] {\n display: inline-flex;\n align-items: center;\n height: 44px;\n}\n.upload-picker__progress[data-v-1f097873] {\n width: 200px;\n max-width: 0;\n transition: max-width var(--animation-quick) ease-in-out;\n margin-top: 8px;\n}\n.upload-picker__progress p[data-v-1f097873] {\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n}\n.upload-picker--uploading .upload-picker__progress[data-v-1f097873] {\n max-width: 200px;\n margin-right: 20px;\n margin-left: 8px;\n}\n.upload-picker--paused .upload-picker__progress[data-v-1f097873] {\n animation: breathing-1f097873 3s ease-out infinite normal;\n}\n@keyframes breathing-1f097873 {\n0% {\n opacity: 0.5;\n}\n25% {\n opacity: 1;\n}\n60% {\n opacity: 0.5;\n}\n100% {\n opacity: 0.5;\n}\n}","",{version:3,sources:["webpack://./node_modules/@nextcloud/upload/dist/assets/index-DiWRcN3o.css"],names:[],mappings:"AAAA;EACE,oBAAoB;EACpB,mBAAmB;EACnB,YAAY;AACd;AACA;EACE,YAAY;EACZ,YAAY;EACZ,wDAAwD;EACxD,eAAe;AACjB;AACA;EACE,gBAAgB;EAChB,mBAAmB;EACnB,uBAAuB;AACzB;AACA;EACE,gBAAgB;EAChB,kBAAkB;EAClB,gBAAgB;AAClB;AACA;EACE,yDAAyD;AAC3D;AACA;AACA;IACI,YAAY;AAChB;AACA;IACI,UAAU;AACd;AACA;IACI,YAAY;AAChB;AACA;IACI,YAAY;AAChB;AACA",sourcesContent:[".upload-picker[data-v-1f097873] {\n display: inline-flex;\n align-items: center;\n height: 44px;\n}\n.upload-picker__progress[data-v-1f097873] {\n width: 200px;\n max-width: 0;\n transition: max-width var(--animation-quick) ease-in-out;\n margin-top: 8px;\n}\n.upload-picker__progress p[data-v-1f097873] {\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n}\n.upload-picker--uploading .upload-picker__progress[data-v-1f097873] {\n max-width: 200px;\n margin-right: 20px;\n margin-left: 8px;\n}\n.upload-picker--paused .upload-picker__progress[data-v-1f097873] {\n animation: breathing-1f097873 3s ease-out infinite normal;\n}\n@keyframes breathing-1f097873 {\n0% {\n opacity: 0.5;\n}\n25% {\n opacity: 1;\n}\n60% {\n opacity: 0.5;\n}\n100% {\n opacity: 0.5;\n}\n}"],sourceRoot:""}]);const o=r},12938:(e,t,s)=>{"use strict";s.d(t,{A:()=>o});var n=s(71354),i=s.n(n),a=s(76314),r=s.n(a)()(i());r.push([e.id,".files-list__breadcrumbs[data-v-7a939202]{flex:1 1 100% !important;width:100%;height:100%;margin-block:0;margin-inline:10px}.files-list__breadcrumbs[data-v-7a939202] a{cursor:pointer !important}.files-list__breadcrumbs--with-progress[data-v-7a939202]{flex-direction:column !important;align-items:flex-start !important}","",{version:3,sources:["webpack://./apps/files/src/components/BreadCrumbs.vue"],names:[],mappings:"AACA,0CAEC,wBAAA,CACA,UAAA,CACA,WAAA,CACA,cAAA,CACA,kBAAA,CAGC,6CACC,yBAAA,CAIF,yDACC,gCAAA,CACA,iCAAA",sourcesContent:["\n.files-list__breadcrumbs {\n\t// Take as much space as possible\n\tflex: 1 1 100% !important;\n\twidth: 100%;\n\theight: 100%;\n\tmargin-block: 0;\n\tmargin-inline: 10px;\n\n\t:deep() {\n\t\ta {\n\t\t\tcursor: pointer !important;\n\t\t}\n\t}\n\n\t&--with-progress {\n\t\tflex-direction: column !important;\n\t\talign-items: flex-start !important;\n\t}\n}\n"],sourceRoot:""}]);const o=r},93259:(e,t,s)=>{"use strict";s.d(t,{A:()=>o});var n=s(71354),i=s.n(n),a=s(76314),r=s.n(a)()(i());r.push([e.id,".files-list__drag-drop-notice[data-v-7f8a4132]{display:flex;align-items:center;justify-content:center;width:100%;min-height:113px;margin:0;user-select:none;color:var(--color-text-maxcontrast);background-color:var(--color-main-background);border-color:#000}.files-list__drag-drop-notice h3[data-v-7f8a4132]{margin-left:16px;color:inherit}.files-list__drag-drop-notice-wrapper[data-v-7f8a4132]{display:flex;align-items:center;justify-content:center;height:15vh;max-height:70%;padding:0 5vw;border:2px var(--color-border-dark) dashed;border-radius:var(--border-radius-large)}","",{version:3,sources:["webpack://./apps/files/src/components/DragAndDropNotice.vue"],names:[],mappings:"AACA,+CACC,YAAA,CACA,kBAAA,CACA,sBAAA,CACA,UAAA,CAEA,gBAAA,CACA,QAAA,CACA,gBAAA,CACA,mCAAA,CACA,6CAAA,CACA,iBAAA,CAEA,kDACC,gBAAA,CACA,aAAA,CAGD,uDACC,YAAA,CACA,kBAAA,CACA,sBAAA,CACA,WAAA,CACA,cAAA,CACA,aAAA,CACA,0CAAA,CACA,wCAAA",sourcesContent:["\n.files-list__drag-drop-notice {\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: center;\n\twidth: 100%;\n\t// Breadcrumbs height + row thead height\n\tmin-height: calc(58px + 55px);\n\tmargin: 0;\n\tuser-select: none;\n\tcolor: var(--color-text-maxcontrast);\n\tbackground-color: var(--color-main-background);\n\tborder-color: black;\n\n\th3 {\n\t\tmargin-left: 16px;\n\t\tcolor: inherit;\n\t}\n\n\t&-wrapper {\n\t\tdisplay: flex;\n\t\talign-items: center;\n\t\tjustify-content: center;\n\t\theight: 15vh;\n\t\tmax-height: 70%;\n\t\tpadding: 0 5vw;\n\t\tborder: 2px var(--color-border-dark) dashed;\n\t\tborder-radius: var(--border-radius-large);\n\t}\n}\n\n"],sourceRoot:""}]);const o=r},12617:(e,t,s)=>{"use strict";s.d(t,{A:()=>o});var n=s(71354),i=s.n(n),a=s(76314),r=s.n(a)()(i());r.push([e.id,".files-list-drag-image{position:absolute;top:-9999px;left:-9999px;display:flex;overflow:hidden;align-items:center;height:44px;padding:6px 12px;background:var(--color-main-background)}.files-list-drag-image__icon,.files-list-drag-image .files-list__row-icon{display:flex;overflow:hidden;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--border-radius)}.files-list-drag-image__icon{overflow:visible;margin-right:12px}.files-list-drag-image__icon img{max-width:100%;max-height:100%}.files-list-drag-image__icon .material-design-icon{color:var(--color-text-maxcontrast)}.files-list-drag-image__icon .material-design-icon.folder-icon{color:var(--color-primary-element)}.files-list-drag-image__icon>span{display:flex}.files-list-drag-image__icon>span .files-list__row-icon+.files-list__row-icon{margin-top:6px;margin-left:-26px}.files-list-drag-image__icon>span .files-list__row-icon+.files-list__row-icon+.files-list__row-icon{margin-top:12px}.files-list-drag-image__icon>span:not(:empty)+*{display:none}.files-list-drag-image__name{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}","",{version:3,sources:["webpack://./apps/files/src/components/DragAndDropPreview.vue"],names:[],mappings:"AAIA,uBACC,iBAAA,CACA,WAAA,CACA,YAAA,CACA,YAAA,CACA,eAAA,CACA,kBAAA,CACA,WAAA,CACA,gBAAA,CACA,uCAAA,CAEA,0EAEC,YAAA,CACA,eAAA,CACA,kBAAA,CACA,sBAAA,CACA,UAAA,CACA,WAAA,CACA,kCAAA,CAGD,6BACC,gBAAA,CACA,iBAAA,CAEA,iCACC,cAAA,CACA,eAAA,CAGD,mDACC,mCAAA,CACA,+DACC,kCAAA,CAKF,kCACC,YAAA,CAGA,8EACC,cA9CU,CA+CV,iBAAA,CACA,oGACC,eAAA,CAKF,gDACC,YAAA,CAKH,6BACC,eAAA,CACA,kBAAA,CACA,sBAAA",sourcesContent:["\n$size: 32px;\n$stack-shift: 6px;\n\n.files-list-drag-image {\n\tposition: absolute;\n\ttop: -9999px;\n\tleft: -9999px;\n\tdisplay: flex;\n\toverflow: hidden;\n\talign-items: center;\n\theight: 44px;\n\tpadding: 6px 12px;\n\tbackground: var(--color-main-background);\n\n\t&__icon,\n\t.files-list__row-icon {\n\t\tdisplay: flex;\n\t\toverflow: hidden;\n\t\talign-items: center;\n\t\tjustify-content: center;\n\t\twidth: 32px;\n\t\theight: 32px;\n\t\tborder-radius: var(--border-radius);\n\t}\n\n\t&__icon {\n\t\toverflow: visible;\n\t\tmargin-right: 12px;\n\n\t\timg {\n\t\t\tmax-width: 100%;\n\t\t\tmax-height: 100%;\n\t\t}\n\n\t\t.material-design-icon {\n\t\t\tcolor: var(--color-text-maxcontrast);\n\t\t\t&.folder-icon {\n\t\t\t\tcolor: var(--color-primary-element);\n\t\t\t}\n\t\t}\n\n\t\t// Previews container\n\t\t> span {\n\t\t\tdisplay: flex;\n\n\t\t\t// Stack effect if more than one element\n\t\t\t.files-list__row-icon + .files-list__row-icon {\n\t\t\t\tmargin-top: $stack-shift;\n\t\t\t\tmargin-left: $stack-shift - $size;\n\t\t\t\t& + .files-list__row-icon {\n\t\t\t\t\tmargin-top: $stack-shift * 2;\n\t\t\t\t}\n\t\t\t}\n\t\t\t// If we have manually clone the preview,\n\t\t\t// let's hide any fallback icons\n\t\t\t&:not(:empty) + * {\n\t\t\t\tdisplay: none;\n\t\t\t}\n\t\t}\n\t}\n\n\t&__name {\n\t\toverflow: hidden;\n\t\twhite-space: nowrap;\n\t\ttext-overflow: ellipsis;\n\t}\n}\n\n"],sourceRoot:""}]);const o=r},4575:(e,t,s)=>{"use strict";s.d(t,{A:()=>o});var n=s(71354),i=s.n(n),a=s(76314),r=s.n(a)()(i());r.push([e.id,".favorite-marker-icon[data-v-f2d0cf6e]{color:var(--color-favorite);min-width:unset !important;min-height:unset !important}.favorite-marker-icon[data-v-f2d0cf6e] svg{width:26px !important;height:26px !important;max-width:unset !important;max-height:unset !important}.favorite-marker-icon[data-v-f2d0cf6e] svg path{stroke:var(--color-main-background);stroke-width:8px;stroke-linejoin:round;paint-order:stroke}","",{version:3,sources:["webpack://./apps/files/src/components/FileEntry/FavoriteIcon.vue"],names:[],mappings:"AACA,uCACC,2BAAA,CAEA,0BAAA,CACG,2BAAA,CAGF,4CAEC,qBAAA,CACA,sBAAA,CAGA,0BAAA,CACA,2BAAA,CAGA,iDACC,mCAAA,CACA,gBAAA,CACA,qBAAA,CACA,kBAAA",sourcesContent:["\n.favorite-marker-icon {\n\tcolor: var(--color-favorite);\n\t// Override NcIconSvgWrapper defaults (clickable area)\n\tmin-width: unset !important;\n min-height: unset !important;\n\n\t:deep() {\n\t\tsvg {\n\t\t\t// We added a stroke for a11y so we must increase the size to include the stroke\n\t\t\twidth: 26px !important;\n\t\t\theight: 26px !important;\n\n\t\t\t// Override NcIconSvgWrapper defaults of 20px\n\t\t\tmax-width: unset !important;\n\t\t\tmax-height: unset !important;\n\n\t\t\t// Sow a border around the icon for better contrast\n\t\t\tpath {\n\t\t\t\tstroke: var(--color-main-background);\n\t\t\t\tstroke-width: 8px;\n\t\t\t\tstroke-linejoin: round;\n\t\t\t\tpaint-order: stroke;\n\t\t\t}\n\t\t}\n\t}\n}\n"],sourceRoot:""}]);const o=r},10379:(e,t,s)=>{"use strict";s.d(t,{A:()=>o});var n=s(71354),i=s.n(n),a=s(76314),r=s.n(a)()(i());r.push([e.id,"main.app-content[style*=mouse-pos-x] .v-popper__popper{transform:translate3d(var(--mouse-pos-x), var(--mouse-pos-y), 0px) !important}main.app-content[style*=mouse-pos-x] .v-popper__popper[data-popper-placement=top]{transform:translate3d(var(--mouse-pos-x), calc(var(--mouse-pos-y) - 50vh + 34px), 0px) !important}main.app-content[style*=mouse-pos-x] .v-popper__popper .v-popper__arrow-container{display:none}","",{version:3,sources:["webpack://./apps/files/src/components/FileEntry/FileEntryActions.vue"],names:[],mappings:"AAGA,uDACC,6EAAA,CAGA,kFAEC,iGAAA,CAGD,kFACC,YAAA",sourcesContent:['\n// Allow right click to define the position of the menu\n// only if defined\nmain.app-content[style*="mouse-pos-x"] .v-popper__popper {\n\ttransform: translate3d(var(--mouse-pos-x), var(--mouse-pos-y), 0px) !important;\n\n\t// If the menu is too close to the bottom, we move it up\n\t&[data-popper-placement="top"] {\n\t\t// 34px added to align with the top of the cursor\n\t\ttransform: translate3d(var(--mouse-pos-x), calc(var(--mouse-pos-y) - 50vh + 34px), 0px) !important;\n\t}\n\t// Hide arrow if floating\n\t.v-popper__arrow-container {\n\t\tdisplay: none;\n\t}\n}\n'],sourceRoot:""}]);const o=r},64931:(e,t,s)=>{"use strict";s.d(t,{A:()=>o});var n=s(71354),i=s.n(n),a=s(76314),r=s.n(a)()(i());r.push([e.id,"[data-v-801e4784] .button-vue--icon-and-text .button-vue__text{color:var(--color-primary-element)}[data-v-801e4784] .button-vue--icon-and-text .button-vue__icon{color:var(--color-primary-element)}","",{version:3,sources:["webpack://./apps/files/src/components/FileEntry/FileEntryActions.vue"],names:[],mappings:"AAEC,+DACC,kCAAA,CAED,+DACC,kCAAA",sourcesContent:["\n:deep(.button-vue--icon-and-text, .files-list__row-action-sharing-status) {\n\t.button-vue__text {\n\t\tcolor: var(--color-primary-element);\n\t}\n\t.button-vue__icon {\n\t\tcolor: var(--color-primary-element);\n\t}\n}\n"],sourceRoot:""}]);const o=r},6049:(e,t,s)=>{"use strict";s.d(t,{A:()=>o});var n=s(71354),i=s.n(n),a=s(76314),r=s.n(a)()(i());r.push([e.id,"tr[data-v-130ade4f]{margin-bottom:300px;border-top:1px solid var(--color-border);background-color:rgba(0,0,0,0) !important;border-bottom:none !important}tr td[data-v-130ade4f]{user-select:none;color:var(--color-text-maxcontrast) !important}","",{version:3,sources:["webpack://./apps/files/src/components/FilesListTableFooter.vue"],names:[],mappings:"AAEA,oBACC,mBAAA,CACA,wCAAA,CAEA,yCAAA,CACA,6BAAA,CAEA,uBACC,gBAAA,CAEA,8CAAA",sourcesContent:["\n// Scoped row\ntr {\n\tmargin-bottom: 300px;\n\tborder-top: 1px solid var(--color-border);\n\t// Prevent hover effect on the whole row\n\tbackground-color: transparent !important;\n\tborder-bottom: none !important;\n\n\ttd {\n\t\tuser-select: none;\n\t\t// Make sure the cell colors don't apply to column headers\n\t\tcolor: var(--color-text-maxcontrast) !important;\n\t}\n}\n"],sourceRoot:""}]);const o=r},55963:(e,t,s)=>{"use strict";s.d(t,{A:()=>o});var n=s(71354),i=s.n(n),a=s(76314),r=s.n(a)()(i());r.push([e.id,".files-list__column[data-v-6eaeabb8]{user-select:none;color:var(--color-text-maxcontrast) !important}.files-list__column--sortable[data-v-6eaeabb8]{cursor:pointer}","",{version:3,sources:["webpack://./apps/files/src/components/FilesListTableHeader.vue"],names:[],mappings:"AACA,qCACC,gBAAA,CAEA,8CAAA,CAEA,+CACC,cAAA",sourcesContent:["\n.files-list__column {\n\tuser-select: none;\n\t// Make sure the cell colors don't apply to column headers\n\tcolor: var(--color-text-maxcontrast) !important;\n\n\t&--sortable {\n\t\tcursor: pointer;\n\t}\n}\n\n"],sourceRoot:""}]);const o=r},98645:(e,t,s)=>{"use strict";s.d(t,{A:()=>o});var n=s(71354),i=s.n(n),a=s(76314),r=s.n(a)()(i());r.push([e.id,".files-list__row-actions-batch[data-v-1284c4be]{flex:1 1 100% !important;max-width:100%}","",{version:3,sources:["webpack://./apps/files/src/components/FilesListTableHeaderActions.vue"],names:[],mappings:"AACA,gDACC,wBAAA,CACA,cAAA",sourcesContent:["\n.files-list__row-actions-batch {\n\tflex: 1 1 100% !important;\n\tmax-width: 100%;\n}\n"],sourceRoot:""}]);const o=r},413:(e,t,s)=>{"use strict";s.d(t,{A:()=>o});var n=s(71354),i=s.n(n),a=s(76314),r=s.n(a)()(i());r.push([e.id,".files-list__column-sort-button[data-v-4e97a5c6]{margin:0 calc(var(--cell-margin)*-1);min-width:calc(100% - 3*var(--cell-margin)) !important}.files-list__column-sort-button-text[data-v-4e97a5c6]{color:var(--color-text-maxcontrast);font-weight:normal}.files-list__column-sort-button-icon[data-v-4e97a5c6]{color:var(--color-text-maxcontrast);opacity:0;transition:opacity var(--animation-quick);inset-inline-start:-10px}.files-list__column-sort-button--size .files-list__column-sort-button-icon[data-v-4e97a5c6]{inset-inline-start:10px}.files-list__column-sort-button--active .files-list__column-sort-button-icon[data-v-4e97a5c6],.files-list__column-sort-button:hover .files-list__column-sort-button-icon[data-v-4e97a5c6],.files-list__column-sort-button:focus .files-list__column-sort-button-icon[data-v-4e97a5c6],.files-list__column-sort-button:active .files-list__column-sort-button-icon[data-v-4e97a5c6]{opacity:1}","",{version:3,sources:["webpack://./apps/files/src/components/FilesListTableHeaderButton.vue"],names:[],mappings:"AACA,iDAEC,oCAAA,CACA,sDAAA,CAEA,sDACC,mCAAA,CACA,kBAAA,CAGD,sDACC,mCAAA,CACA,SAAA,CACA,yCAAA,CACA,wBAAA,CAGD,4FACC,uBAAA,CAGD,mXAIC,SAAA",sourcesContent:["\n.files-list__column-sort-button {\n\t// Compensate for cells margin\n\tmargin: 0 calc(var(--cell-margin) * -1);\n\tmin-width: calc(100% - 3 * var(--cell-margin))!important;\n\n\t&-text {\n\t\tcolor: var(--color-text-maxcontrast);\n\t\tfont-weight: normal;\n\t}\n\n\t&-icon {\n\t\tcolor: var(--color-text-maxcontrast);\n\t\topacity: 0;\n\t\ttransition: opacity var(--animation-quick);\n\t\tinset-inline-start: -10px;\n\t}\n\n\t&--size &-icon {\n\t\tinset-inline-start: 10px;\n\t}\n\n\t&--active &-icon,\n\t&:hover &-icon,\n\t&:focus &-icon,\n\t&:active &-icon {\n\t\topacity: 1;\n\t}\n}\n"],sourceRoot:""}]);const o=r},47738:(e,t,s)=>{"use strict";s.d(t,{A:()=>o});var n=s(71354),i=s.n(n),a=s(76314),r=s.n(a)()(i());r.push([e.id,".files-list[data-v-1287bfe2]{--row-height: 55px;--cell-margin: 14px;--checkbox-padding: calc((var(--row-height) - var(--checkbox-size)) / 2);--checkbox-size: 24px;--clickable-area: 44px;--icon-preview-size: 32px;overflow:auto;height:100%;will-change:scroll-position}.files-list[data-v-1287bfe2] tbody{will-change:padding;contain:layout paint style;display:flex;flex-direction:column;width:100%;position:relative}.files-list[data-v-1287bfe2] tbody tr{contain:strict}.files-list[data-v-1287bfe2] tbody tr:hover,.files-list[data-v-1287bfe2] tbody tr:focus{background-color:var(--color-background-dark)}.files-list[data-v-1287bfe2] .files-list__before{display:flex;flex-direction:column}.files-list[data-v-1287bfe2] .files-list__selected{padding-right:12px;white-space:nowrap}.files-list[data-v-1287bfe2] .files-list__table{display:block}.files-list[data-v-1287bfe2] .files-list__table.files-list__table--with-thead-overlay{margin-top:calc(-1*var(--row-height))}.files-list[data-v-1287bfe2] .files-list__thead-overlay{position:sticky;top:0;margin-left:var(--row-height);z-index:20;display:flex;align-items:center;background-color:var(--color-main-background);border-bottom:1px solid var(--color-border);height:var(--row-height)}.files-list[data-v-1287bfe2] .files-list__thead,.files-list[data-v-1287bfe2] .files-list__tfoot{display:flex;flex-direction:column;width:100%;background-color:var(--color-main-background)}.files-list[data-v-1287bfe2] .files-list__thead{position:sticky;z-index:10;top:0}.files-list[data-v-1287bfe2] .files-list__tfoot{min-height:300px}.files-list[data-v-1287bfe2] tr{position:relative;display:flex;align-items:center;width:100%;user-select:none;border-bottom:1px solid var(--color-border);box-sizing:border-box;user-select:none;height:var(--row-height)}.files-list[data-v-1287bfe2] td,.files-list[data-v-1287bfe2] th{display:flex;align-items:center;flex:0 0 auto;justify-content:left;width:var(--row-height);height:var(--row-height);margin:0;padding:0;color:var(--color-text-maxcontrast);border:none}.files-list[data-v-1287bfe2] td span,.files-list[data-v-1287bfe2] th span{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.files-list[data-v-1287bfe2] .files-list__row--failed{position:absolute;display:block;top:0;left:0;right:0;bottom:0;opacity:.1;z-index:-1;background:var(--color-error)}.files-list[data-v-1287bfe2] .files-list__row-checkbox{justify-content:center}.files-list[data-v-1287bfe2] .files-list__row-checkbox .checkbox-radio-switch{display:flex;justify-content:center;--icon-size: var(--checkbox-size)}.files-list[data-v-1287bfe2] .files-list__row-checkbox .checkbox-radio-switch label.checkbox-radio-switch__label{width:var(--clickable-area);height:var(--clickable-area);margin:0;padding:calc((var(--clickable-area) - var(--checkbox-size))/2)}.files-list[data-v-1287bfe2] .files-list__row-checkbox .checkbox-radio-switch .checkbox-radio-switch__icon{margin:0 !important}.files-list[data-v-1287bfe2] .files-list__row:hover,.files-list[data-v-1287bfe2] .files-list__row:focus,.files-list[data-v-1287bfe2] .files-list__row:active,.files-list[data-v-1287bfe2] .files-list__row--active,.files-list[data-v-1287bfe2] .files-list__row--dragover{background-color:var(--color-background-hover);--color-text-maxcontrast: var(--color-main-text)}.files-list[data-v-1287bfe2] .files-list__row:hover>*,.files-list[data-v-1287bfe2] .files-list__row:focus>*,.files-list[data-v-1287bfe2] .files-list__row:active>*,.files-list[data-v-1287bfe2] .files-list__row--active>*,.files-list[data-v-1287bfe2] .files-list__row--dragover>*{--color-border: var(--color-border-dark)}.files-list[data-v-1287bfe2] .files-list__row:hover .favorite-marker-icon svg path,.files-list[data-v-1287bfe2] .files-list__row:focus .favorite-marker-icon svg path,.files-list[data-v-1287bfe2] .files-list__row:active .favorite-marker-icon svg path,.files-list[data-v-1287bfe2] .files-list__row--active .favorite-marker-icon svg path,.files-list[data-v-1287bfe2] .files-list__row--dragover .favorite-marker-icon svg path{stroke:var(--color-background-hover)}.files-list[data-v-1287bfe2] .files-list__row--dragover *{pointer-events:none}.files-list[data-v-1287bfe2] .files-list__row-icon{position:relative;display:flex;overflow:visible;align-items:center;flex:0 0 var(--icon-preview-size);justify-content:center;width:var(--icon-preview-size);height:100%;margin-right:var(--checkbox-padding);color:var(--color-primary-element)}.files-list[data-v-1287bfe2] .files-list__row-icon *{cursor:pointer}.files-list[data-v-1287bfe2] .files-list__row-icon>span{justify-content:flex-start}.files-list[data-v-1287bfe2] .files-list__row-icon>span:not(.files-list__row-icon-favorite) svg{width:var(--icon-preview-size);height:var(--icon-preview-size)}.files-list[data-v-1287bfe2] .files-list__row-icon>span.folder-icon,.files-list[data-v-1287bfe2] .files-list__row-icon>span.folder-open-icon{margin:-3px}.files-list[data-v-1287bfe2] .files-list__row-icon>span.folder-icon svg,.files-list[data-v-1287bfe2] .files-list__row-icon>span.folder-open-icon svg{width:calc(var(--icon-preview-size) + 6px);height:calc(var(--icon-preview-size) + 6px)}.files-list[data-v-1287bfe2] .files-list__row-icon-preview{overflow:hidden;width:var(--icon-preview-size);height:var(--icon-preview-size);border-radius:var(--border-radius);object-fit:contain;object-position:center}.files-list[data-v-1287bfe2] .files-list__row-icon-preview:not(.files-list__row-icon-preview--loaded){background:var(--color-loading-dark)}.files-list[data-v-1287bfe2] .files-list__row-icon-favorite{position:absolute;top:0px;right:-10px}.files-list[data-v-1287bfe2] .files-list__row-icon-overlay{position:absolute;max-height:calc(var(--icon-preview-size)*.5);max-width:calc(var(--icon-preview-size)*.5);color:var(--color-primary-element-text);margin-top:2px}.files-list[data-v-1287bfe2] .files-list__row-icon-overlay--file{color:var(--color-main-text);background:var(--color-main-background);border-radius:100%}.files-list[data-v-1287bfe2] .files-list__row-name{overflow:hidden;flex:1 1 auto}.files-list[data-v-1287bfe2] .files-list__row-name a{display:flex;align-items:center;width:100%;height:100%;min-width:0}.files-list[data-v-1287bfe2] .files-list__row-name a:focus-visible{outline:none}.files-list[data-v-1287bfe2] .files-list__row-name a:focus .files-list__row-name-text{outline:2px solid var(--color-main-text) !important;border-radius:20px}.files-list[data-v-1287bfe2] .files-list__row-name a:focus:not(:focus-visible) .files-list__row-name-text{outline:none !important}.files-list[data-v-1287bfe2] .files-list__row-name .files-list__row-name-text{color:var(--color-main-text);padding:5px 10px;margin-left:-10px;display:inline-flex}.files-list[data-v-1287bfe2] .files-list__row-name .files-list__row-name-ext{color:var(--color-text-maxcontrast);overflow:visible}.files-list[data-v-1287bfe2] .files-list__row-rename{width:100%;max-width:600px}.files-list[data-v-1287bfe2] .files-list__row-rename input{width:100%;margin-left:-8px;padding:2px 6px;border-width:2px}.files-list[data-v-1287bfe2] .files-list__row-rename input:invalid{border-color:var(--color-error);color:red}.files-list[data-v-1287bfe2] .files-list__row-actions{width:auto}.files-list[data-v-1287bfe2] .files-list__row-actions~td,.files-list[data-v-1287bfe2] .files-list__row-actions~th{margin:0 var(--cell-margin)}.files-list[data-v-1287bfe2] .files-list__row-actions button .button-vue__text{font-weight:normal}.files-list[data-v-1287bfe2] .files-list__row-action--inline{margin-right:7px}.files-list[data-v-1287bfe2] .files-list__row-mtime,.files-list[data-v-1287bfe2] .files-list__row-size{color:var(--color-text-maxcontrast)}.files-list[data-v-1287bfe2] .files-list__row-size{width:calc(var(--row-height)*1.5);justify-content:flex-end}.files-list[data-v-1287bfe2] .files-list__row-mtime{width:calc(var(--row-height)*2)}.files-list[data-v-1287bfe2] .files-list__row-column-custom{width:calc(var(--row-height)*2)}","",{version:3,sources:["webpack://./apps/files/src/components/FilesListVirtual.vue"],names:[],mappings:"AACA,6BACC,kBAAA,CACA,mBAAA,CAEA,wEAAA,CACA,qBAAA,CACA,sBAAA,CACA,yBAAA,CAEA,aAAA,CACA,WAAA,CACA,2BAAA,CAIC,oCACC,mBAAA,CACA,0BAAA,CACA,YAAA,CACA,qBAAA,CACA,UAAA,CAEA,iBAAA,CAGA,uCACC,cAAA,CACA,0FAEC,6CAAA,CAMH,kDACC,YAAA,CACA,qBAAA,CAGD,oDACC,kBAAA,CACA,kBAAA,CAGD,iDACC,aAAA,CAEA,uFAEC,qCAAA,CAIF,yDAEC,eAAA,CACA,KAAA,CAEA,6BAAA,CAEA,UAAA,CAEA,YAAA,CACA,kBAAA,CAGA,6CAAA,CACA,2CAAA,CACA,wBAAA,CAGD,kGAEC,YAAA,CACA,qBAAA,CACA,UAAA,CACA,6CAAA,CAKD,iDAEC,eAAA,CACA,UAAA,CACA,KAAA,CAID,iDACC,gBAAA,CAGD,iCACC,iBAAA,CACA,YAAA,CACA,kBAAA,CACA,UAAA,CACA,gBAAA,CACA,2CAAA,CACA,qBAAA,CACA,gBAAA,CACA,wBAAA,CAGD,kEACC,YAAA,CACA,kBAAA,CACA,aAAA,CACA,oBAAA,CACA,uBAAA,CACA,wBAAA,CACA,QAAA,CACA,SAAA,CACA,mCAAA,CACA,WAAA,CAKA,4EACC,eAAA,CACA,kBAAA,CACA,sBAAA,CAIF,uDACC,iBAAA,CACA,aAAA,CACA,KAAA,CACA,MAAA,CACA,OAAA,CACA,QAAA,CACA,UAAA,CACA,UAAA,CACA,6BAAA,CAGD,wDACC,sBAAA,CAEA,+EACC,YAAA,CACA,sBAAA,CAEA,iCAAA,CAEA,kHACC,2BAAA,CACA,4BAAA,CACA,QAAA,CACA,8DAAA,CAGD,4GACC,mBAAA,CAMF,gRAEC,8CAAA,CAGA,gDAAA,CACA,0RACC,wCAAA,CAID,2aACC,oCAAA,CAIF,2DAEC,mBAAA,CAKF,oDACC,iBAAA,CACA,YAAA,CACA,gBAAA,CACA,kBAAA,CAEA,iCAAA,CACA,sBAAA,CACA,8BAAA,CACA,WAAA,CAEA,oCAAA,CACA,kCAAA,CAGA,sDACC,cAAA,CAGD,yDACC,0BAAA,CAEA,iGACC,8BAAA,CACA,+BAAA,CAID,+IAEC,WAAA,CACA,uJACC,0CAAA,CACA,2CAAA,CAKH,4DACC,eAAA,CACA,8BAAA,CACA,+BAAA,CACA,kCAAA,CAEA,kBAAA,CACA,sBAAA,CAGA,uGACC,oCAAA,CAKF,6DACC,iBAAA,CACA,OAAA,CACA,WAAA,CAID,4DACC,iBAAA,CACA,4CAAA,CACA,2CAAA,CACA,uCAAA,CAEA,cAAA,CAGA,kEACC,4BAAA,CACA,uCAAA,CACA,kBAAA,CAMH,oDAEC,eAAA,CAEA,aAAA,CAEA,sDACC,YAAA,CACA,kBAAA,CAEA,UAAA,CACA,WAAA,CAEA,WAAA,CAGA,oEACC,YAAA,CAID,uFACC,mDAAA,CACA,kBAAA,CAED,2GACC,uBAAA,CAIF,+EACC,4BAAA,CAEA,gBAAA,CACA,iBAAA,CAEA,mBAAA,CAGD,8EACC,mCAAA,CAEA,gBAAA,CAKF,sDACC,UAAA,CACA,eAAA,CACA,4DACC,UAAA,CAEA,gBAAA,CACA,eAAA,CACA,gBAAA,CAEA,oEAEC,+BAAA,CACA,SAAA,CAKH,uDAEC,UAAA,CAGA,oHAEC,2BAAA,CAIA,gFAEC,kBAAA,CAKH,8DACC,gBAAA,CAGD,yGAEC,mCAAA,CAED,oDACC,iCAAA,CAEA,wBAAA,CAGD,qDACC,+BAAA,CAGD,6DACC,+BAAA",sourcesContent:["\n.files-list {\n\t--row-height: 55px;\n\t--cell-margin: 14px;\n\n\t--checkbox-padding: calc((var(--row-height) - var(--checkbox-size)) / 2);\n\t--checkbox-size: 24px;\n\t--clickable-area: 44px;\n\t--icon-preview-size: 32px;\n\n\toverflow: auto;\n\theight: 100%;\n\twill-change: scroll-position;\n\n\t& :deep() {\n\t\t// Table head, body and footer\n\t\ttbody {\n\t\t\twill-change: padding;\n\t\t\tcontain: layout paint style;\n\t\t\tdisplay: flex;\n\t\t\tflex-direction: column;\n\t\t\twidth: 100%;\n\t\t\t// Necessary for virtual scrolling absolute\n\t\t\tposition: relative;\n\n\t\t\t/* Hover effect on tbody lines only */\n\t\t\ttr {\n\t\t\t\tcontain: strict;\n\t\t\t\t&:hover,\n\t\t\t\t&:focus {\n\t\t\t\t\tbackground-color: var(--color-background-dark);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t// Before table and thead\n\t\t.files-list__before {\n\t\t\tdisplay: flex;\n\t\t\tflex-direction: column;\n\t\t}\n\n\t\t.files-list__selected {\n\t\t\tpadding-right: 12px;\n\t\t\twhite-space: nowrap;\n\t\t}\n\n\t\t.files-list__table {\n\t\t\tdisplay: block;\n\n\t\t\t&.files-list__table--with-thead-overlay {\n\t\t\t\t// Hide the table header below the overlay\n\t\t\t\tmargin-top: calc(-1 * var(--row-height));\n\t\t\t}\n\t\t}\n\n\t\t.files-list__thead-overlay {\n\t\t\t// Pinned on top when scrolling\n\t\t\tposition: sticky;\n\t\t\ttop: 0;\n\t\t\t// Save space for a row checkbox\n\t\t\tmargin-left: var(--row-height);\n\t\t\t// More than .files-list__thead\n\t\t\tz-index: 20;\n\n\t\t\tdisplay: flex;\n\t\t\talign-items: center;\n\n\t\t\t// Reuse row styles\n\t\t\tbackground-color: var(--color-main-background);\n\t\t\tborder-bottom: 1px solid var(--color-border);\n\t\t\theight: var(--row-height);\n\t\t}\n\n\t\t.files-list__thead,\n\t\t.files-list__tfoot {\n\t\t\tdisplay: flex;\n\t\t\tflex-direction: column;\n\t\t\twidth: 100%;\n\t\t\tbackground-color: var(--color-main-background);\n\n\t\t}\n\n\t\t// Table header\n\t\t.files-list__thead {\n\t\t\t// Pinned on top when scrolling\n\t\t\tposition: sticky;\n\t\t\tz-index: 10;\n\t\t\ttop: 0;\n\t\t}\n\n\t\t// Table footer\n\t\t.files-list__tfoot {\n\t\t\tmin-height: 300px;\n\t\t}\n\n\t\ttr {\n\t\t\tposition: relative;\n\t\t\tdisplay: flex;\n\t\t\talign-items: center;\n\t\t\twidth: 100%;\n\t\t\tuser-select: none;\n\t\t\tborder-bottom: 1px solid var(--color-border);\n\t\t\tbox-sizing: border-box;\n\t\t\tuser-select: none;\n\t\t\theight: var(--row-height);\n\t\t}\n\n\t\ttd, th {\n\t\t\tdisplay: flex;\n\t\t\talign-items: center;\n\t\t\tflex: 0 0 auto;\n\t\t\tjustify-content: left;\n\t\t\twidth: var(--row-height);\n\t\t\theight: var(--row-height);\n\t\t\tmargin: 0;\n\t\t\tpadding: 0;\n\t\t\tcolor: var(--color-text-maxcontrast);\n\t\t\tborder: none;\n\n\t\t\t// Columns should try to add any text\n\t\t\t// node wrapped in a span. That should help\n\t\t\t// with the ellipsis on overflow.\n\t\t\tspan {\n\t\t\t\toverflow: hidden;\n\t\t\t\twhite-space: nowrap;\n\t\t\t\ttext-overflow: ellipsis;\n\t\t\t}\n\t\t}\n\n\t\t.files-list__row--failed {\n\t\t\tposition: absolute;\n\t\t\tdisplay: block;\n\t\t\ttop: 0;\n\t\t\tleft: 0;\n\t\t\tright: 0;\n\t\t\tbottom: 0;\n\t\t\topacity: .1;\n\t\t\tz-index: -1;\n\t\t\tbackground: var(--color-error);\n\t\t}\n\n\t\t.files-list__row-checkbox {\n\t\t\tjustify-content: center;\n\n\t\t\t.checkbox-radio-switch {\n\t\t\t\tdisplay: flex;\n\t\t\t\tjustify-content: center;\n\n\t\t\t\t--icon-size: var(--checkbox-size);\n\n\t\t\t\tlabel.checkbox-radio-switch__label {\n\t\t\t\t\twidth: var(--clickable-area);\n\t\t\t\t\theight: var(--clickable-area);\n\t\t\t\t\tmargin: 0;\n\t\t\t\t\tpadding: calc((var(--clickable-area) - var(--checkbox-size)) / 2);\n\t\t\t\t}\n\n\t\t\t\t.checkbox-radio-switch__icon {\n\t\t\t\t\tmargin: 0 !important;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t.files-list__row {\n\t\t\t&:hover, &:focus, &:active, &--active, &--dragover {\n\t\t\t\t// WCAG AA compliant\n\t\t\t\tbackground-color: var(--color-background-hover);\n\t\t\t\t// text-maxcontrast have been designed to pass WCAG AA over\n\t\t\t\t// a white background, we need to adjust then.\n\t\t\t\t--color-text-maxcontrast: var(--color-main-text);\n\t\t\t\t> * {\n\t\t\t\t\t--color-border: var(--color-border-dark);\n\t\t\t\t}\n\n\t\t\t\t// Hover state of the row should also change the favorite markers background\n\t\t\t\t.favorite-marker-icon svg path {\n\t\t\t\t\tstroke: var(--color-background-hover);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t&--dragover * {\n\t\t\t\t// Prevent dropping on row children\n\t\t\t\tpointer-events: none;\n\t\t\t}\n\t\t}\n\n\t\t// Entry preview or mime icon\n\t\t.files-list__row-icon {\n\t\t\tposition: relative;\n\t\t\tdisplay: flex;\n\t\t\toverflow: visible;\n\t\t\talign-items: center;\n\t\t\t// No shrinking or growing allowed\n\t\t\tflex: 0 0 var(--icon-preview-size);\n\t\t\tjustify-content: center;\n\t\t\twidth: var(--icon-preview-size);\n\t\t\theight: 100%;\n\t\t\t// Show same padding as the checkbox right padding for visual balance\n\t\t\tmargin-right: var(--checkbox-padding);\n\t\t\tcolor: var(--color-primary-element);\n\n\t\t\t// Icon is also clickable\n\t\t\t* {\n\t\t\t\tcursor: pointer;\n\t\t\t}\n\n\t\t\t& > span {\n\t\t\t\tjustify-content: flex-start;\n\n\t\t\t\t&:not(.files-list__row-icon-favorite) svg {\n\t\t\t\t\twidth: var(--icon-preview-size);\n\t\t\t\t\theight: var(--icon-preview-size);\n\t\t\t\t}\n\n\t\t\t\t// Slightly increase the size of the folder icon\n\t\t\t\t&.folder-icon,\n\t\t\t\t&.folder-open-icon {\n\t\t\t\t\tmargin: -3px;\n\t\t\t\t\tsvg {\n\t\t\t\t\t\twidth: calc(var(--icon-preview-size) + 6px);\n\t\t\t\t\t\theight: calc(var(--icon-preview-size) + 6px);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t&-preview {\n\t\t\t\toverflow: hidden;\n\t\t\t\twidth: var(--icon-preview-size);\n\t\t\t\theight: var(--icon-preview-size);\n\t\t\t\tborder-radius: var(--border-radius);\n\t\t\t\t// Center and contain the preview\n\t\t\t\tobject-fit: contain;\n\t\t\t\tobject-position: center;\n\n\t\t\t\t/* Preview not loaded animation effect */\n\t\t\t\t&:not(.files-list__row-icon-preview--loaded) {\n\t\t\t\t\tbackground: var(--color-loading-dark);\n\t\t\t\t\t// animation: preview-gradient-fade 1.2s ease-in-out infinite;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t&-favorite {\n\t\t\t\tposition: absolute;\n\t\t\t\ttop: 0px;\n\t\t\t\tright: -10px;\n\t\t\t}\n\n\t\t\t// File and folder overlay\n\t\t\t&-overlay {\n\t\t\t\tposition: absolute;\n\t\t\t\tmax-height: calc(var(--icon-preview-size) * 0.5);\n\t\t\t\tmax-width: calc(var(--icon-preview-size) * 0.5);\n\t\t\t\tcolor: var(--color-primary-element-text);\n\t\t\t\t// better alignment with the folder icon\n\t\t\t\tmargin-top: 2px;\n\n\t\t\t\t// Improve icon contrast with a background for files\n\t\t\t\t&--file {\n\t\t\t\t\tcolor: var(--color-main-text);\n\t\t\t\t\tbackground: var(--color-main-background);\n\t\t\t\t\tborder-radius: 100%;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t// Entry link\n\t\t.files-list__row-name {\n\t\t\t// Prevent link from overflowing\n\t\t\toverflow: hidden;\n\t\t\t// Take as much space as possible\n\t\t\tflex: 1 1 auto;\n\n\t\t\ta {\n\t\t\t\tdisplay: flex;\n\t\t\t\talign-items: center;\n\t\t\t\t// Fill cell height and width\n\t\t\t\twidth: 100%;\n\t\t\t\theight: 100%;\n\t\t\t\t// Necessary for flex grow to work\n\t\t\t\tmin-width: 0;\n\n\t\t\t\t// Already added to the inner text, see rule below\n\t\t\t\t&:focus-visible {\n\t\t\t\t\toutline: none;\n\t\t\t\t}\n\n\t\t\t\t// Keyboard indicator a11y\n\t\t\t\t&:focus .files-list__row-name-text {\n\t\t\t\t\toutline: 2px solid var(--color-main-text) !important;\n\t\t\t\t\tborder-radius: 20px;\n\t\t\t\t}\n\t\t\t\t&:focus:not(:focus-visible) .files-list__row-name-text {\n\t\t\t\t\toutline: none !important;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t.files-list__row-name-text {\n\t\t\t\tcolor: var(--color-main-text);\n\t\t\t\t// Make some space for the outline\n\t\t\t\tpadding: 5px 10px;\n\t\t\t\tmargin-left: -10px;\n\t\t\t\t// Align two name and ext\n\t\t\t\tdisplay: inline-flex;\n\t\t\t}\n\n\t\t\t.files-list__row-name-ext {\n\t\t\t\tcolor: var(--color-text-maxcontrast);\n\t\t\t\t// always show the extension\n\t\t\t\toverflow: visible;\n\t\t\t}\n\t\t}\n\n\t\t// Rename form\n\t\t.files-list__row-rename {\n\t\t\twidth: 100%;\n\t\t\tmax-width: 600px;\n\t\t\tinput {\n\t\t\t\twidth: 100%;\n\t\t\t\t// Align with text, 0 - padding - border\n\t\t\t\tmargin-left: -8px;\n\t\t\t\tpadding: 2px 6px;\n\t\t\t\tborder-width: 2px;\n\n\t\t\t\t&:invalid {\n\t\t\t\t\t// Show red border on invalid input\n\t\t\t\t\tborder-color: var(--color-error);\n\t\t\t\t\tcolor: red;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t.files-list__row-actions {\n\t\t\t// take as much space as necessary\n\t\t\twidth: auto;\n\n\t\t\t// Add margin to all cells after the actions\n\t\t\t& ~ td,\n\t\t\t& ~ th {\n\t\t\t\tmargin: 0 var(--cell-margin);\n\t\t\t}\n\n\t\t\tbutton {\n\t\t\t\t.button-vue__text {\n\t\t\t\t\t// Remove bold from default button styling\n\t\t\t\t\tfont-weight: normal;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t.files-list__row-action--inline {\n\t\t\tmargin-right: 7px;\n\t\t}\n\n\t\t.files-list__row-mtime,\n\t\t.files-list__row-size {\n\t\t\tcolor: var(--color-text-maxcontrast);\n\t\t}\n\t\t.files-list__row-size {\n\t\t\twidth: calc(var(--row-height) * 1.5);\n\t\t\t// Right align content/text\n\t\t\tjustify-content: flex-end;\n\t\t}\n\n\t\t.files-list__row-mtime {\n\t\t\twidth: calc(var(--row-height) * 2);\n\t\t}\n\n\t\t.files-list__row-column-custom {\n\t\t\twidth: calc(var(--row-height) * 2);\n\t\t}\n\t}\n}\n"],sourceRoot:""}]);const o=r},27982:(e,t,s)=>{"use strict";s.d(t,{A:()=>o});var n=s(71354),i=s.n(n),a=s(76314),r=s.n(a)()(i());r.push([e.id,"tbody.files-list__tbody.files-list__tbody--grid{--half-clickable-area: calc(var(--clickable-area) / 2);--row-width: 160px;--row-height: calc(var(--row-width) - var(--half-clickable-area));--icon-preview-size: calc(var(--row-width) - var(--clickable-area));--checkbox-padding: 0px;display:grid;grid-template-columns:repeat(auto-fill, var(--row-width));grid-gap:15px;row-gap:15px;align-content:center;align-items:center;justify-content:space-around;justify-items:center}tbody.files-list__tbody.files-list__tbody--grid tr{width:var(--row-width);height:calc(var(--row-height) + var(--clickable-area));border:none;border-radius:var(--border-radius)}tbody.files-list__tbody.files-list__tbody--grid .files-list__row-checkbox{position:absolute;z-index:9;top:0;left:0;overflow:hidden;width:var(--clickable-area);height:var(--clickable-area);border-radius:var(--half-clickable-area)}tbody.files-list__tbody.files-list__tbody--grid .files-list__row-icon-favorite{position:absolute;top:0;right:0;display:flex;align-items:center;justify-content:center;width:var(--clickable-area);height:var(--clickable-area)}tbody.files-list__tbody.files-list__tbody--grid .files-list__row-name{display:grid;justify-content:stretch;width:100%;height:100%;grid-auto-rows:var(--row-height) var(--clickable-area)}tbody.files-list__tbody.files-list__tbody--grid .files-list__row-name span.files-list__row-icon{width:100%;height:100%;padding-top:var(--half-clickable-area)}tbody.files-list__tbody.files-list__tbody--grid .files-list__row-name a.files-list__row-name-link{width:calc(100% - var(--clickable-area));height:var(--clickable-area)}tbody.files-list__tbody.files-list__tbody--grid .files-list__row-name .files-list__row-name-text{margin:0;padding-right:0}tbody.files-list__tbody.files-list__tbody--grid .files-list__row-actions{position:absolute;right:0;bottom:0;width:var(--clickable-area);height:var(--clickable-area)}","",{version:3,sources:["webpack://./apps/files/src/components/FilesListVirtual.vue"],names:[],mappings:"AAEA,gDACC,sDAAA,CACA,kBAAA,CAEA,iEAAA,CACA,mEAAA,CACA,uBAAA,CAEA,YAAA,CACA,yDAAA,CACA,aAAA,CACA,YAAA,CAEA,oBAAA,CACA,kBAAA,CACA,4BAAA,CACA,oBAAA,CAEA,mDACC,sBAAA,CACA,sDAAA,CACA,WAAA,CACA,kCAAA,CAID,0EACC,iBAAA,CACA,SAAA,CACA,KAAA,CACA,MAAA,CACA,eAAA,CACA,2BAAA,CACA,4BAAA,CACA,wCAAA,CAID,+EACC,iBAAA,CACA,KAAA,CACA,OAAA,CACA,YAAA,CACA,kBAAA,CACA,sBAAA,CACA,2BAAA,CACA,4BAAA,CAGD,sEACC,YAAA,CACA,uBAAA,CACA,UAAA,CACA,WAAA,CACA,sDAAA,CAEA,gGACC,UAAA,CACA,WAAA,CAGA,sCAAA,CAGD,kGAEC,wCAAA,CACA,4BAAA,CAGD,iGACC,QAAA,CACA,eAAA,CAIF,yEACC,iBAAA,CACA,OAAA,CACA,QAAA,CACA,2BAAA,CACA,4BAAA",sourcesContent:["\n// Grid mode\ntbody.files-list__tbody.files-list__tbody--grid {\n\t--half-clickable-area: calc(var(--clickable-area) / 2);\n\t--row-width: 160px;\n\t// We use half of the clickable area as visual balance margin\n\t--row-height: calc(var(--row-width) - var(--half-clickable-area));\n\t--icon-preview-size: calc(var(--row-width) - var(--clickable-area));\n\t--checkbox-padding: 0px;\n\n\tdisplay: grid;\n\tgrid-template-columns: repeat(auto-fill, var(--row-width));\n\tgrid-gap: 15px;\n\trow-gap: 15px;\n\n\talign-content: center;\n\talign-items: center;\n\tjustify-content: space-around;\n\tjustify-items: center;\n\n\ttr {\n\t\twidth: var(--row-width);\n\t\theight: calc(var(--row-height) + var(--clickable-area));\n\t\tborder: none;\n\t\tborder-radius: var(--border-radius);\n\t}\n\n\t// Checkbox in the top left\n\t.files-list__row-checkbox {\n\t\tposition: absolute;\n\t\tz-index: 9;\n\t\ttop: 0;\n\t\tleft: 0;\n\t\toverflow: hidden;\n\t\twidth: var(--clickable-area);\n\t\theight: var(--clickable-area);\n\t\tborder-radius: var(--half-clickable-area);\n\t}\n\n\t// Star icon in the top right\n\t.files-list__row-icon-favorite {\n\t\tposition: absolute;\n\t\ttop: 0;\n\t\tright: 0;\n\t\tdisplay: flex;\n\t\talign-items: center;\n\t\tjustify-content: center;\n\t\twidth: var(--clickable-area);\n\t\theight: var(--clickable-area);\n\t}\n\n\t.files-list__row-name {\n\t\tdisplay: grid;\n\t\tjustify-content: stretch;\n\t\twidth: 100%;\n\t\theight: 100%;\n\t\tgrid-auto-rows: var(--row-height) var(--clickable-area);\n\n\t\tspan.files-list__row-icon {\n\t\t\twidth: 100%;\n\t\t\theight: 100%;\n\t\t\t// Visual balance, we use half of the clickable area\n\t\t\t// as a margin around the preview\n\t\t\tpadding-top: var(--half-clickable-area);\n\t\t}\n\n\t\ta.files-list__row-name-link {\n\t\t\t// Minus action menu\n\t\t\twidth: calc(100% - var(--clickable-area));\n\t\t\theight: var(--clickable-area);\n\t\t}\n\n\t\t.files-list__row-name-text {\n\t\t\tmargin: 0;\n\t\t\tpadding-right: 0;\n\t\t}\n\t}\n\n\t.files-list__row-actions {\n\t\tposition: absolute;\n\t\tright: 0;\n\t\tbottom: 0;\n\t\twidth: var(--clickable-area);\n\t\theight: var(--clickable-area);\n\t}\n}\n"],sourceRoot:""}]);const o=r},91210:(e,t,s)=>{"use strict";s.d(t,{A:()=>o});var n=s(71354),i=s.n(n),a=s(76314),r=s.n(a)()(i());r.push([e.id,".app-navigation-entry__settings-quota--not-unlimited[data-v-3e968815] .app-navigation-entry__name{margin-top:-6px}.app-navigation-entry__settings-quota progress[data-v-3e968815]{position:absolute;bottom:12px;margin-left:44px;width:calc(100% - 44px - 22px)}","",{version:3,sources:["webpack://./apps/files/src/components/NavigationQuota.vue"],names:[],mappings:"AAIC,kGACC,eAAA,CAGD,gEACC,iBAAA,CACA,WAAA,CACA,gBAAA,CACA,8BAAA",sourcesContent:["\n// User storage stats display\n.app-navigation-entry__settings-quota {\n\t// Align title with progress and icon\n\t&--not-unlimited::v-deep .app-navigation-entry__name {\n\t\tmargin-top: -6px;\n\t}\n\n\tprogress {\n\t\tposition: absolute;\n\t\tbottom: 12px;\n\t\tmargin-left: 44px;\n\t\twidth: calc(100% - 44px - 22px);\n\t}\n}\n"],sourceRoot:""}]);const o=r},48885:(e,t,s)=>{"use strict";s.d(t,{A:()=>o});var n=s(71354),i=s.n(n),a=s(76314),r=s.n(a)()(i());r.push([e.id,".app-content[data-v-0e2ac83a]{display:flex;overflow:hidden;flex-direction:column;max-height:100%;position:relative !important}.files-list__header[data-v-0e2ac83a]{display:flex;align-items:center;flex:0 0;max-width:100%;margin-block:var(--app-navigation-padding, 4px);margin-inline:calc(var(--default-clickable-area, 44px) + 2*var(--app-navigation-padding, 4px)) var(--app-navigation-padding, 4px)}.files-list__header>*[data-v-0e2ac83a]{flex:0 0}.files-list__header-share-button[data-v-0e2ac83a]{color:var(--color-text-maxcontrast) !important}.files-list__header-share-button--shared[data-v-0e2ac83a]{color:var(--color-main-text) !important}.files-list__refresh-icon[data-v-0e2ac83a]{flex:0 0 44px;width:44px;height:44px}.files-list__loading-icon[data-v-0e2ac83a]{margin:auto}","",{version:3,sources:["webpack://./apps/files/src/views/FilesList.vue"],names:[],mappings:"AACA,8BAEC,YAAA,CACA,eAAA,CACA,qBAAA,CACA,eAAA,CACA,4BAAA,CAIA,qCACC,YAAA,CACA,kBAAA,CAEA,QAAA,CACA,cAAA,CAEA,+CAAA,CACA,iIAAA,CAEA,uCAGC,QAAA,CAGD,kDACC,8CAAA,CAEA,0DACC,uCAAA,CAKH,2CACC,aAAA,CACA,UAAA,CACA,WAAA,CAGD,2CACC,WAAA",sourcesContent:["\n.app-content {\n\t// Virtual list needs to be full height and is scrollable\n\tdisplay: flex;\n\toverflow: hidden;\n\tflex-direction: column;\n\tmax-height: 100%;\n\tposition: relative !important;\n}\n\n.files-list {\n\t&__header {\n\t\tdisplay: flex;\n\t\talign-items: center;\n\t\t// Do not grow or shrink (vertically)\n\t\tflex: 0 0;\n\t\tmax-width: 100%;\n\t\t// Align with the navigation toggle icon\n\t\tmargin-block: var(--app-navigation-padding, 4px);\n\t\tmargin-inline: calc(var(--default-clickable-area, 44px) + 2 * var(--app-navigation-padding, 4px)) var(--app-navigation-padding, 4px);\n\n\t\t>* {\n\t\t\t// Do not grow or shrink (horizontally)\n\t\t\t// Only the breadcrumbs shrinks\n\t\t\tflex: 0 0;\n\t\t}\n\n\t\t&-share-button {\n\t\t\tcolor: var(--color-text-maxcontrast) !important;\n\n\t\t\t&--shared {\n\t\t\t\tcolor: var(--color-main-text) !important;\n\t\t\t}\n\t\t}\n\t}\n\n\t&__refresh-icon {\n\t\tflex: 0 0 44px;\n\t\twidth: 44px;\n\t\theight: 44px;\n\t}\n\n\t&__loading-icon {\n\t\tmargin: auto;\n\t}\n}\n"],sourceRoot:""}]);const o=r},18755:(e,t,s)=>{"use strict";s.d(t,{A:()=>o});var n=s(71354),i=s.n(n),a=s(76314),r=s.n(a)()(i());r.push([e.id,".app-navigation[data-v-66457116] .app-navigation-entry-icon{background-repeat:no-repeat;background-position:center}.app-navigation[data-v-66457116] .app-navigation-entry.active .button-vue.icon-collapse:not(:hover){color:var(--color-primary-element-text)}.app-navigation>ul.app-navigation__list[data-v-66457116]{padding-bottom:var(--default-grid-baseline, 4px)}.app-navigation-entry__settings[data-v-66457116]{height:auto !important;overflow:hidden !important;padding-top:0 !important;flex:0 0 auto}","",{version:3,sources:["webpack://./apps/files/src/views/Navigation.vue"],names:[],mappings:"AAEA,4DACC,2BAAA,CACA,0BAAA,CAGD,oGACC,uCAAA,CAGD,yDAEC,gDAAA,CAGD,iDACC,sBAAA,CACA,0BAAA,CACA,wBAAA,CAEA,aAAA",sourcesContent:["\n// TODO: remove when https://github.com/nextcloud/nextcloud-vue/pull/3539 is in\n.app-navigation::v-deep .app-navigation-entry-icon {\n\tbackground-repeat: no-repeat;\n\tbackground-position: center;\n}\n\n.app-navigation::v-deep .app-navigation-entry.active .button-vue.icon-collapse:not(:hover) {\n\tcolor: var(--color-primary-element-text);\n}\n\n.app-navigation > ul.app-navigation__list {\n\t// Use flex gap value for more elegant spacing\n\tpadding-bottom: var(--default-grid-baseline, 4px);\n}\n\n.app-navigation-entry__settings {\n\theight: auto !important;\n\toverflow: hidden !important;\n\tpadding-top: 0 !important;\n\t// Prevent shrinking or growing\n\tflex: 0 0 auto;\n}\n"],sourceRoot:""}]);const o=r},8645:(e,t,s)=>{"use strict";s.d(t,{A:()=>o});var n=s(71354),i=s.n(n),a=s(76314),r=s.n(a)()(i());r.push([e.id,".setting-link[data-v-44764f8d]:hover{text-decoration:underline}","",{version:3,sources:["webpack://./apps/files/src/views/Settings.vue"],names:[],mappings:"AACA,qCACC,yBAAA",sourcesContent:["\n.setting-link:hover {\n\ttext-decoration: underline;\n}\n"],sourceRoot:""}]);const o=r},51111:e=>{"use strict";const t=new Set(["ENOTFOUND","ENETUNREACH","UNABLE_TO_GET_ISSUER_CERT","UNABLE_TO_GET_CRL","UNABLE_TO_DECRYPT_CERT_SIGNATURE","UNABLE_TO_DECRYPT_CRL_SIGNATURE","UNABLE_TO_DECODE_ISSUER_PUBLIC_KEY","CERT_SIGNATURE_FAILURE","CRL_SIGNATURE_FAILURE","CERT_NOT_YET_VALID","CERT_HAS_EXPIRED","CRL_NOT_YET_VALID","CRL_HAS_EXPIRED","ERROR_IN_CERT_NOT_BEFORE_FIELD","ERROR_IN_CERT_NOT_AFTER_FIELD","ERROR_IN_CRL_LAST_UPDATE_FIELD","ERROR_IN_CRL_NEXT_UPDATE_FIELD","OUT_OF_MEM","DEPTH_ZERO_SELF_SIGNED_CERT","SELF_SIGNED_CERT_IN_CHAIN","UNABLE_TO_GET_ISSUER_CERT_LOCALLY","UNABLE_TO_VERIFY_LEAF_SIGNATURE","CERT_CHAIN_TOO_LONG","CERT_REVOKED","INVALID_CA","PATH_LENGTH_EXCEEDED","INVALID_PURPOSE","CERT_UNTRUSTED","CERT_REJECTED","HOSTNAME_MISMATCH"]);e.exports=e=>!t.has(e&&e.code)},75270:e=>{function t(e,t){return null==e?t:e}e.exports=function(e){var s,n=t((e=e||{}).max,1),i=t(e.min,0),a=t(e.autostart,!0),r=t(e.ignoreSameProgress,!1),o=null,l=null,d=null,c=(s=t(e.historyTimeConstant,2.5),function(e,t,n){return e+n/(n+s)*(t-e)});function u(){m(i)}function m(e,t){if("number"!=typeof t&&(t=Date.now()),l!==t&&(!r||d!==e)){if(null===l||null===d)return d=e,void(l=t);var s=.001*(t-l),n=(e-d)/s;o=null===o?n:c(o,n,s),d=e,l=t}}return{start:u,reset:function(){o=null,l=null,d=null,a&&u()},report:m,estimate:function(e){if(null===d)return 1/0;if(d>=n)return 0;if(null===o)return 1/0;var t=(n-d)/o;return"number"==typeof e&&"number"==typeof l&&(t-=.001*(e-l)),Math.max(0,t)},rate:function(){return null===o?0:o}}}},2069:(e,t,s)=>{"use strict";s.d(t,{U:()=>Fe,a:()=>we,d:()=>ge,g:()=>Ee,h:()=>Ne,i:()=>de,l:()=>Ce,n:()=>be,o:()=>Pe,t:()=>Ae});var n=s(85072),i=s.n(n),a=s(97825),r=s.n(a),o=s(77659),l=s.n(o),d=s(55056),c=s.n(d),u=s(10540),m=s.n(u),g=s(41113),f=s.n(g),p=s(18141),h={};h.styleTagTransform=f(),h.setAttributes=c(),h.insert=l().bind(null,"head"),h.domAPI=r(),h.insertStyleElement=m(),i()(p.A,h),p.A&&p.A.locals&&p.A.locals;var v=s(32981),w=s(85471),A=s(21777),C=s(26304),y=s(71089),x=s(43627),b=s(65043);class _ extends Error{constructor(e){super(e||"Promise was canceled"),this.name="CancelError"}get isCanceled(){return!0}}const T=Object.freeze({pending:Symbol("pending"),canceled:Symbol("canceled"),resolved:Symbol("resolved"),rejected:Symbol("rejected")});class k{static fn(e){return(...t)=>new k(((s,n,i)=>{t.push(i),e(...t).then(s,n)}))}#e=[];#t=!0;#s=T.pending;#n;#i;constructor(e){this.#n=new Promise(((t,s)=>{this.#i=s;const n=e=>{if(this.#s!==T.pending)throw new Error(`The \`onCancel\` handler was attached after the promise ${this.#s.description}.`);this.#e.push(e)};Object.defineProperties(n,{shouldReject:{get:()=>this.#t,set:e=>{this.#t=e}}}),e((e=>{this.#s===T.canceled&&n.shouldReject||(t(e),this.#a(T.resolved))}),(e=>{this.#s===T.canceled&&n.shouldReject||(s(e),this.#a(T.rejected))}),n)}))}then(e,t){return this.#n.then(e,t)}catch(e){return this.#n.catch(e)}finally(e){return this.#n.finally(e)}cancel(e){if(this.#s===T.pending){if(this.#a(T.canceled),this.#e.length>0)try{for(const e of this.#e)e()}catch(e){return void this.#i(e)}this.#t&&this.#i(new _(e))}}get isCanceled(){return this.#s===T.canceled}#a(e){this.#s===T.pending&&(this.#s=e)}}Object.setPrototypeOf(k.prototype,Promise.prototype);var S=s(9052);class L extends Error{constructor(e){super(e),this.name="TimeoutError"}}class F extends Error{constructor(e){super(),this.name="AbortError",this.message=e}}const U=e=>void 0===globalThis.DOMException?new F(e):new DOMException(e),E=e=>{const t=void 0===e.reason?U("This operation was aborted."):e.reason;return t instanceof Error?t:U(t)};class P{#r=[];enqueue(e,t){const s={priority:(t={priority:0,...t}).priority,run:e};if(this.size&&this.#r[this.size-1].priority>=t.priority)return void this.#r.push(s);const n=function(e,t,s){let n=0,i=e.length;for(;i>0;){const s=Math.trunc(i/2);let r=n+s;a=e[r],t.priority-a.priority<=0?(n=++r,i-=s+1):i=s}var a;return n}(this.#r,s);this.#r.splice(n,0,s)}dequeue(){const e=this.#r.shift();return e?.run}filter(e){return this.#r.filter((t=>t.priority===e.priority)).map((e=>e.run))}get size(){return this.#r.length}}class N extends S{#o;#l;#d=0;#c;#u;#m=0;#g;#f;#r;#p;#h=0;#v;#w;#A;timeout;constructor(e){if(super(),!("number"==typeof(e={carryoverConcurrencyCount:!1,intervalCap:Number.POSITIVE_INFINITY,interval:0,concurrency:Number.POSITIVE_INFINITY,autoStart:!0,queueClass:P,...e}).intervalCap&&e.intervalCap>=1))throw new TypeError(`Expected \`intervalCap\` to be a number from 1 and up, got \`${e.intervalCap?.toString()??""}\` (${typeof e.intervalCap})`);if(void 0===e.interval||!(Number.isFinite(e.interval)&&e.interval>=0))throw new TypeError(`Expected \`interval\` to be a finite number >= 0, got \`${e.interval?.toString()??""}\` (${typeof e.interval})`);this.#o=e.carryoverConcurrencyCount,this.#l=e.intervalCap===Number.POSITIVE_INFINITY||0===e.interval,this.#c=e.intervalCap,this.#u=e.interval,this.#r=new e.queueClass,this.#p=e.queueClass,this.concurrency=e.concurrency,this.timeout=e.timeout,this.#A=!0===e.throwOnTimeout,this.#w=!1===e.autoStart}get#C(){return this.#l||this.#d{this.#_()}),t)),!0;this.#d=this.#o?this.#h:0}return!1}#b(){if(0===this.#r.size)return this.#g&&clearInterval(this.#g),this.#g=void 0,this.emit("empty"),0===this.#h&&this.emit("idle"),!1;if(!this.#w){const e=!this.#S;if(this.#C&&this.#y){const t=this.#r.dequeue();return!!t&&(this.emit("active"),t(),e&&this.#k(),!0)}}return!1}#k(){this.#l||void 0!==this.#g||(this.#g=setInterval((()=>{this.#T()}),this.#u),this.#m=Date.now()+this.#u)}#T(){0===this.#d&&0===this.#h&&this.#g&&(clearInterval(this.#g),this.#g=void 0),this.#d=this.#o?this.#h:0,this.#L()}#L(){for(;this.#b(););}get concurrency(){return this.#v}set concurrency(e){if(!("number"==typeof e&&e>=1))throw new TypeError(`Expected \`concurrency\` to be a number from 1 and up, got \`${e}\` (${typeof e})`);this.#v=e,this.#L()}async#F(e){return new Promise(((t,s)=>{e.addEventListener("abort",(()=>{s(e.reason)}),{once:!0})}))}async add(e,t={}){return t={timeout:this.timeout,throwOnTimeout:this.#A,...t},new Promise(((s,n)=>{this.#r.enqueue((async()=>{this.#h++,this.#d++;try{t.signal?.throwIfAborted();let n=e({signal:t.signal});t.timeout&&(n=function(e,t){const{milliseconds:s,fallback:n,message:i,customTimers:a={setTimeout,clearTimeout}}=t;let r;const o=new Promise(((o,l)=>{if("number"!=typeof s||1!==Math.sign(s))throw new TypeError(`Expected \`milliseconds\` to be a positive number, got \`${s}\``);if(t.signal){const{signal:e}=t;e.aborted&&l(E(e)),e.addEventListener("abort",(()=>{l(E(e))}))}if(s===Number.POSITIVE_INFINITY)return void e.then(o,l);const d=new L;r=a.setTimeout.call(void 0,(()=>{if(n)try{o(n())}catch(e){l(e)}else"function"==typeof e.cancel&&e.cancel(),!1===i?o():i instanceof Error?l(i):(d.message=i??`Promise timed out after ${s} milliseconds`,l(d))}),s),(async()=>{try{o(await e)}catch(e){l(e)}})()})).finally((()=>{o.clear()}));return o.clear=()=>{a.clearTimeout.call(void 0,r),r=void 0},o}(Promise.resolve(n),{milliseconds:t.timeout})),t.signal&&(n=Promise.race([n,this.#F(t.signal)]));const i=await n;s(i),this.emit("completed",i)}catch(e){if(e instanceof L&&!t.throwOnTimeout)return void s();n(e),this.emit("error",e)}finally{this.#x()}}),t),this.emit("add"),this.#b()}))}async addAll(e,t){return Promise.all(e.map((async e=>this.add(e,t))))}start(){return this.#w?(this.#w=!1,this.#L(),this):this}pause(){this.#w=!0}clear(){this.#r=new this.#p}async onEmpty(){0!==this.#r.size&&await this.#U("empty")}async onSizeLessThan(e){this.#r.sizethis.#r.size{const n=()=>{t&&!t()||(this.off(e,n),s())};this.on(e,n)}))}get size(){return this.#r.size}sizeBy(e){return this.#r.filter(e).length}get pending(){return this.#h}get isPaused(){return this.#w}}var B=s(63814),I=s(51111);const z="axios-retry";function D(e){return!e.response&&!!e.code&&!["ERR_CANCELED","ECONNABORTED"].includes(e.code)&&I(e)}const R=["get","head","options"],j=R.concat(["put","delete"]);function O(e){return"ECONNABORTED"!==e.code&&(!e.response||429===e.response.status||e.response.status>=500&&e.response.status<=599)}function M(e){return!!e.config?.method&&O(e)&&-1!==j.indexOf(e.config.method)}function V(e){return D(e)||M(e)}function $(e=void 0){const t=e?.response?.headers["retry-after"];if(!t)return 0;let s=1e3*(Number(t)||0);return 0===s&&(s=(new Date(t).valueOf()||0)-Date.now()),Math.max(0,s)}const q={retries:3,retryCondition:V,retryDelay:function(e=0,t=void 0){return Math.max(0,$(t))},shouldResetTimeout:!1,onRetry:()=>{},onMaxRetryTimesExceeded:()=>{},validateResponse:null};function H(e,t){const s=function(e,t){return{...q,...t,...e[z]}}(e,t||{});return s.retryCount=s.retryCount||0,s.lastRequestTime=s.lastRequestTime||Date.now(),e[z]=s,s}const W=(e,t)=>{const s=e.interceptors.request.use((e=>(H(e,t),e[z]?.validateResponse&&(e.validateStatus=()=>!1),e))),n=e.interceptors.response.use(null,(async s=>{const{config:n}=s;if(!n)return Promise.reject(s);const i=H(n,t);return s.response&&i.validateResponse?.(s.response)?s.response:await async function(e,t){const{retries:s,retryCondition:n}=e,i=(e.retryCount||0)e],await r(t.retryCount,s,n),n.signal?.aborted?Promise.resolve(e(n)):new Promise((t=>{const s=()=>{clearTimeout(i),t(e(n))},i=setTimeout((()=>{t(e(n)),n.signal?.removeEventListener&&n.signal.removeEventListener("abort",s)}),o);n.signal?.addEventListener&&n.signal.addEventListener("abort",s,{once:!0})}))}(e,i,s,n):(await async function(e,t){e.retryCount>=e.retries&&await e.onMaxRetryTimesExceeded(t,e.retryCount)}(i,s),Promise.reject(s))}));return{requestInterceptorId:s,responseInterceptorId:n}};W.isNetworkError=D,W.isSafeRequestError=function(e){return!!e.config?.method&&O(e)&&-1!==R.indexOf(e.config.method)},W.isIdempotentRequestError=M,W.isNetworkOrIdempotentRequestError=V,W.exponentialDelay=function(e=0,t=void 0,s=100){const n=2**e*s,i=Math.max(n,$(t));return i+.2*i*Math.random()},W.isRetryableError=O;const G=W;var Y=s(82148);s(42838),s(70580);var K=Object.defineProperty,Q=(e,t,s)=>(((e,t,s)=>{t in e?K(e,t,{enumerable:!0,configurable:!0,writable:!0,value:s}):e[t]=s})(e,"symbol"!=typeof t?t+"":t,s),s);class J{constructor(e,t,s){Q(this,"gt"),this.gt=new Y({debug:s,sourceLocale:"en"});for(const e in t)this.gt.addTranslations(e,"messages",t[e]);this.gt.setLocale(e)}subtitudePlaceholders(e,t){return e.replace(/{([^{}]*)}/g,((e,s)=>{const n=t[s];return"string"==typeof n||"number"==typeof n?n.toString():e}))}gettext(e,t={}){return this.subtitudePlaceholders(this.gt.gettext(e),t)}ngettext(e,t,s,n={}){return this.subtitudePlaceholders(this.gt.ngettext(e,t,s).replace(/%n/g,s.toString()),n)}}var Z=s(35947),X=s(85168),ee=s(75270),te=s(63420),se=s(50953),ne=s(10501),ie=s(24764),ae=s(9518),re=s(6695),oe=s(95101);const le=e=>"FileSystemFileEntry"in window&&e instanceof FileSystemFileEntry,de=e=>"FileSystemEntry"in window&&e instanceof FileSystemEntry;G(b.Ay,{retries:0});const ce=async function(e,t,s,n=(()=>{}),i=void 0,a={},r=5){let o;return o=t instanceof Blob?t:await t(),i&&(a.Destination=i),a["Content-Type"]||(a["Content-Type"]="application/octet-stream"),await b.Ay.request({method:"PUT",url:e,data:o,signal:s,onUploadProgress:n,headers:a,"axios-retry":{retries:r,retryDelay:(e,t)=>G.exponentialDelay(e,t,1e3)}})},ue=function(e,t,s){return 0===t&&e.size<=s?Promise.resolve(new Blob([e],{type:e.type||"application/octet-stream"})):Promise.resolve(new Blob([e.slice(t,t+s)],{type:"application/octet-stream"}))},me=function(e=void 0){const t=window.OC?.appConfig?.files?.max_chunk_size;if(t<=0)return 0;if(!Number(t))return 10485760;const s=Math.max(Number(t),5242880);return void 0===e?s:Math.max(s,Math.ceil(e/1e4))};var ge=(e=>(e[e.INITIALIZED=0]="INITIALIZED",e[e.UPLOADING=1]="UPLOADING",e[e.ASSEMBLING=2]="ASSEMBLING",e[e.FINISHED=3]="FINISHED",e[e.CANCELLED=4]="CANCELLED",e[e.FAILED=5]="FAILED",e))(ge||{});class fe{_source;_file;_isChunked;_chunks;_size;_uploaded=0;_startTime=0;_status=0;_controller;_response=null;constructor(e,t=!1,s,n){const i=Math.min(me()>0?Math.ceil(s/me()):1,1e4);this._source=e,this._isChunked=t&&me()>0&&i>1,this._chunks=this._isChunked?i:1,this._size=s,this._file=n,this._controller=new AbortController}get source(){return this._source}get file(){return this._file}get isChunked(){return this._isChunked}get chunks(){return this._chunks}get size(){return this._size}get startTime(){return this._startTime}set response(e){this._response=e}get response(){return this._response}get uploaded(){return this._uploaded}set uploaded(e){if(e>=this._size)return this._status=this._isChunked?2:3,void(this._uploaded=this._size);this._status=1,this._uploaded=e,0===this._startTime&&(this._startTime=(new Date).getTime())}get status(){return this._status}set status(e){this._status=e}get signal(){return this._controller.signal}cancel(){this._controller.abort(),this._status=4}}class pe extends File{_originalName;_path;_children;constructor(e,t){super([],(0,y.P8)(e),{type:"httpd/unix-directory",lastModified:0}),this._children=new Map,this._originalName=(0,y.P8)(e),this._path=e,t&&t.forEach((e=>this.addChild(e)))}get size(){return this.children.reduce(((e,t)=>e+t.size),0)}get lastModified(){return this.children.reduce(((e,t)=>Math.max(e,t.lastModified)),0)}get originalName(){return this._originalName}get children(){return Array.from(this._children.values())}get webkitRelativePath(){return this._path}getChild(e){return this._children.get(e)??null}async addChild(e){const t=this._path&&`${this._path}/`;if(le(e))e=await new Promise(((t,s)=>e.file(t,s)));else if("FileSystemDirectoryEntry"in window&&e instanceof FileSystemDirectoryEntry){const s=e.createReader(),n=await new Promise(((e,t)=>s.readEntries(e,t)));return void this._children.set(e.name,new pe(`${t}${e.name}`,n))}const s=e.webkitRelativePath??e.name;if(s.includes("/")){if(!s.startsWith(this._path))throw new Error(`File ${s} is not a child of ${this._path}`);const n=s.slice(t.length),i=(0,y.P8)(n);if(i===n)this._children.set(i,e);else{const s=n.slice(0,n.indexOf("/"));this._children.has(s)?this._children.get(s).addChild(e):this._children.set(s,new pe(`${t}${s}`,[e]))}}else this._children.set(e.name,e)}}const he=(new class{constructor(){Q(this,"locale"),Q(this,"translations",{}),Q(this,"debug",!1)}setLanguage(e){return this.locale=e,this}detectLocale(){return this.setLanguage((document.documentElement.lang||"en").replace("-","_"))}addTranslation(e,t){return this.translations[e]=t,this}enableDebugMode(){return this.debug=!0,this}build(){return new J(this.locale||"en",this.translations,this.debug)}}).detectLocale();[{locale:"af",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Afrikaans (https://www.transifex.com/nextcloud/teams/64236/af/)","Content-Type":"text/plain; charset=UTF-8",Language:"af","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Afrikaans (https://www.transifex.com/nextcloud/teams/64236/af/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: af\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"ar",json:{charset:"utf-8",headers:{"Last-Translator":"Ali , 2024","Language-Team":"Arabic (https://app.transifex.com/nextcloud/teams/64236/ar/)","Content-Type":"text/plain; charset=UTF-8",Language:"ar","Plural-Forms":"nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nAli , 2024\n"},msgstr:["Last-Translator: Ali , 2024\nLanguage-Team: Arabic (https://app.transifex.com/nextcloud/teams/64236/ar/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ar\nPlural-Forms: nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;\n"]},'"{filename}" contains invalid characters, how do you want to continue?':{msgid:'"{filename}" contains invalid characters, how do you want to continue?',msgstr:['"{filename}" يحتوي على حروف غير مقبولة. كيف ترغب في الاستمرار؟']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} ملف متعارض","{count} ملف متعارض","{count} ملفان متعارضان","{count} ملف متعارض","{count} ملفات متعارضة","{count} ملفات متعارضة"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} ملف متعارض في n {dirname}","{count} ملف متعارض في n {dirname}","{count} ملفان متعارضان في n {dirname}","{count} ملف متعارض في n {dirname}","{count} ملفات متعارضة في n {dirname}","{count} ملفات متعارضة في n {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} ثانية متبقية"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} متبقية"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["باقٍ بضعُ ثوانٍ"]},Cancel:{msgid:"Cancel",msgstr:["إلغاء"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["إلغِ العملية بالكامل"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["إلغاء عمليات رفع الملفات"]},Continue:{msgid:"Continue",msgstr:["إستمر"]},"Create new":{msgid:"Create new",msgstr:["إنشاء جديد"]},"estimating time left":{msgid:"estimating time left",msgstr:["تقدير الوقت المتبقي"]},"Existing version":{msgid:"Existing version",msgstr:["الإصدار الحالي"]},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["إذا اخترت الاحتفاظ بالنسختين فسيتم إلحاق رقم عداد آخر اسم الملف الوارد."]},"Invalid file name":{msgid:"Invalid file name",msgstr:["اسم الملف غير صحيح"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["تاريخ آخر تعديل غير معلوم"]},New:{msgid:"New",msgstr:["جديد"]},"New version":{msgid:"New version",msgstr:["نسخة جديدة"]},paused:{msgid:"paused",msgstr:["مُجمَّد"]},"Preview image":{msgid:"Preview image",msgstr:["معاينة الصورة"]},Rename:{msgid:"Rename",msgstr:["تغيير التسمية"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["حدِّد كل صناديق الخيارات"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["حدِّد كل الملفات الموجودة"]},"Select all new files":{msgid:"Select all new files",msgstr:["حدِّد كل الملفات الجديدة"]},Skip:{msgid:"Skip",msgstr:["تخطِّي"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["تخطَّ {count} ملف","تخطَّ {count} ملف","تخطَّ {count} ملف","تخطَّ {count} ملف","تخطَّ {count} ملف","تخطَّ {count} ملف"]},"Unknown size":{msgid:"Unknown size",msgstr:["حجم غير معلوم"]},"Upload files":{msgid:"Upload files",msgstr:["رفع ملفات"]},"Upload folders":{msgid:"Upload folders",msgstr:["رفع مجلدات"]},"Upload from device":{msgid:"Upload from device",msgstr:["الرفع من جهاز "]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["تمّ إلغاء عملية رفع الملفات"]},"Upload progress":{msgid:"Upload progress",msgstr:["تقدُّم الرفع "]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["عند تحديد مجلد وارد، أي ملفات متعارضة بداخله ستتم الكتابة فوقها."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["عند تحديد مجلد وارد، ستتم كتابة المحتوى في المجلد الموجود و سيتم تنفيذ حل التعارض بشكل تعاوُدي."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["أيُّ الملفات ترغب في الإبقاء عليها؟"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["يجب أن تختار نسخة واحدة على الأقل من كل ملف للاستمرار."]}}}}},{locale:"ar_SA",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Arabic (Saudi Arabia) (https://www.transifex.com/nextcloud/teams/64236/ar_SA/)","Content-Type":"text/plain; charset=UTF-8",Language:"ar_SA","Plural-Forms":"nplurals=6; plural=(n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Arabic (Saudi Arabia) (https://www.transifex.com/nextcloud/teams/64236/ar_SA/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ar_SA\nPlural-Forms: nplurals=6; plural=(n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"ast",json:{charset:"utf-8",headers:{"Last-Translator":"enolp , 2023","Language-Team":"Asturian (https://app.transifex.com/nextcloud/teams/64236/ast/)","Content-Type":"text/plain; charset=UTF-8",Language:"ast","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nenolp , 2023\n"},msgstr:["Last-Translator: enolp , 2023\nLanguage-Team: Asturian (https://app.transifex.com/nextcloud/teams/64236/ast/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ast\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} ficheru en coflictu","{count} ficheros en coflictu"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} ficheru en coflictu en {dirname}","{count} ficheros en coflictu en {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["Queden {seconds} segundos"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["Tiempu que queda: {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["queden unos segundos"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Encaboxar les xubes"]},Continue:{msgid:"Continue",msgstr:["Siguir"]},"estimating time left":{msgid:"estimating time left",msgstr:["estimando'l tiempu que falta"]},"Existing version":{msgid:"Existing version",msgstr:["Versión esistente"]},"If you select both versions, the copied file will have a number added to its name.":{msgid:"If you select both versions, the copied file will have a number added to its name.",msgstr:["Si seleiciones dambes versiones, el ficheru copiáu va tener un númberu amestáu al so nome."]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["La data de la última modificación ye desconocida"]},New:{msgid:"New",msgstr:["Nuevu"]},"New version":{msgid:"New version",msgstr:["Versión nueva"]},paused:{msgid:"paused",msgstr:["en posa"]},"Preview image":{msgid:"Preview image",msgstr:["Previsualizar la imaxe"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Marcar toles caxelles"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Seleicionar tolos ficheros esistentes"]},"Select all new files":{msgid:"Select all new files",msgstr:["Seleicionar tolos ficheros nuevos"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Saltar esti ficheru","Saltar {count} ficheros"]},"Unknown size":{msgid:"Unknown size",msgstr:["Tamañu desconocíu"]},"Upload cancelled":{msgid:"Upload cancelled",msgstr:["Encaboxóse la xuba"]},"Upload files":{msgid:"Upload files",msgstr:["Xubir ficheros"]},"Upload progress":{msgid:"Upload progress",msgstr:["Xuba en cursu"]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["¿Qué ficheros quies caltener?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Tienes de seleicionar polo menos una versión de cada ficheru pa siguir."]}}}}},{locale:"az",json:{charset:"utf-8",headers:{"Last-Translator":"Rashad Aliyev , 2023","Language-Team":"Azerbaijani (https://app.transifex.com/nextcloud/teams/64236/az/)","Content-Type":"text/plain; charset=UTF-8",Language:"az","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nRashad Aliyev , 2023\n"},msgstr:["Last-Translator: Rashad Aliyev , 2023\nLanguage-Team: Azerbaijani (https://app.transifex.com/nextcloud/teams/64236/az/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: az\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} saniyə qalıb"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["{time} qalıb"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["bir neçə saniyə qalıb"]},Add:{msgid:"Add",msgstr:["Əlavə et"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Yükləməni imtina et"]},"estimating time left":{msgid:"estimating time left",msgstr:["Təxmini qalan vaxt"]},paused:{msgid:"paused",msgstr:["pauzadadır"]},"Upload files":{msgid:"Upload files",msgstr:["Faylları yüklə"]}}}}},{locale:"be",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Belarusian (https://www.transifex.com/nextcloud/teams/64236/be/)","Content-Type":"text/plain; charset=UTF-8",Language:"be","Plural-Forms":"nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Belarusian (https://www.transifex.com/nextcloud/teams/64236/be/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: be\nPlural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"bg_BG",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Bulgarian (Bulgaria) (https://www.transifex.com/nextcloud/teams/64236/bg_BG/)","Content-Type":"text/plain; charset=UTF-8",Language:"bg_BG","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Bulgarian (Bulgaria) (https://www.transifex.com/nextcloud/teams/64236/bg_BG/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: bg_BG\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"bn_BD",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Bengali (Bangladesh) (https://www.transifex.com/nextcloud/teams/64236/bn_BD/)","Content-Type":"text/plain; charset=UTF-8",Language:"bn_BD","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Bengali (Bangladesh) (https://www.transifex.com/nextcloud/teams/64236/bn_BD/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: bn_BD\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"br",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Breton (https://www.transifex.com/nextcloud/teams/64236/br/)","Content-Type":"text/plain; charset=UTF-8",Language:"br","Plural-Forms":"nplurals=5; plural=((n%10 == 1) && (n%100 != 11) && (n%100 !=71) && (n%100 !=91) ? 0 :(n%10 == 2) && (n%100 != 12) && (n%100 !=72) && (n%100 !=92) ? 1 :(n%10 ==3 || n%10==4 || n%10==9) && (n%100 < 10 || n% 100 > 19) && (n%100 < 70 || n%100 > 79) && (n%100 < 90 || n%100 > 99) ? 2 :(n != 0 && n % 1000000 == 0) ? 3 : 4);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Breton (https://www.transifex.com/nextcloud/teams/64236/br/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: br\nPlural-Forms: nplurals=5; plural=((n%10 == 1) && (n%100 != 11) && (n%100 !=71) && (n%100 !=91) ? 0 :(n%10 == 2) && (n%100 != 12) && (n%100 !=72) && (n%100 !=92) ? 1 :(n%10 ==3 || n%10==4 || n%10==9) && (n%100 < 10 || n% 100 > 19) && (n%100 < 70 || n%100 > 79) && (n%100 < 90 || n%100 > 99) ? 2 :(n != 0 && n % 1000000 == 0) ? 3 : 4);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"bs",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Bosnian (https://www.transifex.com/nextcloud/teams/64236/bs/)","Content-Type":"text/plain; charset=UTF-8",Language:"bs","Plural-Forms":"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Bosnian (https://www.transifex.com/nextcloud/teams/64236/bs/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: bs\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"ca",json:{charset:"utf-8",headers:{"Last-Translator":"Toni Hermoso Pulido , 2022","Language-Team":"Catalan (https://www.transifex.com/nextcloud/teams/64236/ca/)","Content-Type":"text/plain; charset=UTF-8",Language:"ca","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nMarc Riera , 2022\nToni Hermoso Pulido , 2022\n"},msgstr:["Last-Translator: Toni Hermoso Pulido , 2022\nLanguage-Team: Catalan (https://www.transifex.com/nextcloud/teams/64236/ca/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ca\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["Queden {seconds} segons"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["Queden {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["Queden uns segons"]},Add:{msgid:"Add",msgstr:["Afegeix"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Cancel·la les pujades"]},"estimating time left":{msgid:"estimating time left",msgstr:["S'està estimant el temps restant"]},paused:{msgid:"paused",msgstr:["En pausa"]},"Upload files":{msgid:"Upload files",msgstr:["Puja els fitxers"]}}}}},{locale:"cs",json:{charset:"utf-8",headers:{"Last-Translator":"Pavel Borecki , 2022","Language-Team":"Czech (https://www.transifex.com/nextcloud/teams/64236/cs/)","Content-Type":"text/plain; charset=UTF-8",Language:"cs","Plural-Forms":"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nPavel Borecki , 2022\n"},msgstr:["Last-Translator: Pavel Borecki , 2022\nLanguage-Team: Czech (https://www.transifex.com/nextcloud/teams/64236/cs/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: cs\nPlural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["zbývá {seconds}"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["zbývá {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["zbývá několik sekund"]},Add:{msgid:"Add",msgstr:["Přidat"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Zrušit nahrávání"]},"estimating time left":{msgid:"estimating time left",msgstr:["odhadovaný zbývající čas"]},paused:{msgid:"paused",msgstr:["pozastaveno"]}}}}},{locale:"cs_CZ",json:{charset:"utf-8",headers:{"Last-Translator":"Michal Šmahel , 2024","Language-Team":"Czech (Czech Republic) (https://app.transifex.com/nextcloud/teams/64236/cs_CZ/)","Content-Type":"text/plain; charset=UTF-8",Language:"cs_CZ","Plural-Forms":"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nMichal Šmahel , 2024\n"},msgstr:["Last-Translator: Michal Šmahel , 2024\nLanguage-Team: Czech (Czech Republic) (https://app.transifex.com/nextcloud/teams/64236/cs_CZ/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: cs_CZ\nPlural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\n"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} kolize souborů","{count} kolize souborů","{count} kolizí souborů","{count} kolize souborů"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} kolize souboru v {dirname}","{count} kolize souboru v {dirname}","{count} kolizí souborů v {dirname}","{count} kolize souboru v {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["zbývá {seconds}"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["zbývá {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["zbývá několik sekund"]},Cancel:{msgid:"Cancel",msgstr:["Zrušit"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Zrušit celou operaci"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Zrušit nahrávání"]},Continue:{msgid:"Continue",msgstr:["Pokračovat"]},"estimating time left":{msgid:"estimating time left",msgstr:["odhaduje se zbývající čas"]},"Existing version":{msgid:"Existing version",msgstr:["Existující verze"]},"If you select both versions, the copied file will have a number added to its name.":{msgid:"If you select both versions, the copied file will have a number added to its name.",msgstr:["Pokud vyberete obě verze, zkopírovaný soubor bude mít k názvu přidáno číslo."]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Neznámé datum poslední úpravy"]},New:{msgid:"New",msgstr:["Nové"]},"New version":{msgid:"New version",msgstr:["Nová verze"]},paused:{msgid:"paused",msgstr:["pozastaveno"]},"Preview image":{msgid:"Preview image",msgstr:["Náhled obrázku"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Označit všechny zaškrtávací kolonky"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Vybrat veškeré stávající soubory"]},"Select all new files":{msgid:"Select all new files",msgstr:["Vybrat veškeré nové soubory"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Přeskočit tento soubor","Přeskočit {count} soubory","Přeskočit {count} souborů","Přeskočit {count} soubory"]},"Unknown size":{msgid:"Unknown size",msgstr:["Neznámá velikost"]},"Upload cancelled":{msgid:"Upload cancelled",msgstr:["Nahrávání zrušeno"]},"Upload files":{msgid:"Upload files",msgstr:["Nahrát soubory"]},"Upload progress":{msgid:"Upload progress",msgstr:["Postup v nahrávání"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Po výběru příchozí složky budou rovněž přepsány všechny v ní obsažené konfliktní soubory"]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Které soubory si přejete ponechat?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Aby bylo možné pokračovat, je třeba vybrat alespoň jednu verzi od každého souboru."]}}}}},{locale:"cy_GB",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Welsh (United Kingdom) (https://www.transifex.com/nextcloud/teams/64236/cy_GB/)","Content-Type":"text/plain; charset=UTF-8",Language:"cy_GB","Plural-Forms":"nplurals=4; plural=(n==1) ? 0 : (n==2) ? 1 : (n != 8 && n != 11) ? 2 : 3;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Welsh (United Kingdom) (https://www.transifex.com/nextcloud/teams/64236/cy_GB/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: cy_GB\nPlural-Forms: nplurals=4; plural=(n==1) ? 0 : (n==2) ? 1 : (n != 8 && n != 11) ? 2 : 3;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"da",json:{charset:"utf-8",headers:{"Last-Translator":"Martin Bonde , 2024","Language-Team":"Danish (https://app.transifex.com/nextcloud/teams/64236/da/)","Content-Type":"text/plain; charset=UTF-8",Language:"da","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nMartin Bonde , 2024\n"},msgstr:["Last-Translator: Martin Bonde , 2024\nLanguage-Team: Danish (https://app.transifex.com/nextcloud/teams/64236/da/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: da\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} fil konflikt","{count} filer i konflikt"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} fil konflikt i {dirname}","{count} filer i konflikt i {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{sekunder} sekunder tilbage"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{tid} tilbage"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["et par sekunder tilbage"]},Cancel:{msgid:"Cancel",msgstr:["Annuller"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Annuller hele handlingen"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Annuller uploads"]},Continue:{msgid:"Continue",msgstr:["Fortsæt"]},"estimating time left":{msgid:"estimating time left",msgstr:["estimering af resterende tid"]},"Existing version":{msgid:"Existing version",msgstr:["Eksisterende version"]},"If you select both versions, the copied file will have a number added to its name.":{msgid:"If you select both versions, the copied file will have a number added to its name.",msgstr:["Hvis du vælger begge versioner vil den kopierede fil få et nummer tilføjet til sit navn."]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Sidste modifikationsdato ukendt"]},New:{msgid:"New",msgstr:["Ny"]},"New version":{msgid:"New version",msgstr:["Ny version"]},paused:{msgid:"paused",msgstr:["pauset"]},"Preview image":{msgid:"Preview image",msgstr:["Forhåndsvisning af billede"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Vælg alle felter"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Vælg alle eksisterende filer"]},"Select all new files":{msgid:"Select all new files",msgstr:["Vælg alle nye filer"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Spring denne fil over","Spring {count} filer over"]},"Unknown size":{msgid:"Unknown size",msgstr:["Ukendt størrelse"]},"Upload cancelled":{msgid:"Upload cancelled",msgstr:["Upload annulleret"]},"Upload files":{msgid:"Upload files",msgstr:["Upload filer"]},"Upload progress":{msgid:"Upload progress",msgstr:["Upload fremskridt"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Når en indgående mappe er valgt, vil alle modstridende filer i den også blive overskrevet."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Hvilke filer ønsker du at beholde?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Du skal vælge mindst én version af hver fil for at fortsætte."]}}}}},{locale:"de",json:{charset:"utf-8",headers:{"Last-Translator":"Mario Siegmann , 2024","Language-Team":"German (https://app.transifex.com/nextcloud/teams/64236/de/)","Content-Type":"text/plain; charset=UTF-8",Language:"de","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nMario Siegmann , 2024\n"},msgstr:["Last-Translator: Mario Siegmann , 2024\nLanguage-Team: German (https://app.transifex.com/nextcloud/teams/64236/de/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: de\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} Datei-Konflikt","{count} Datei-Konflikte"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} Datei-Konflikt in {dirname}","{count} Datei-Konflikte in {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} Sekunden verbleibend"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} verbleibend"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["noch ein paar Sekunden"]},Cancel:{msgid:"Cancel",msgstr:["Abbrechen"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Den gesamten Vorgang abbrechen"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Hochladen abbrechen"]},Continue:{msgid:"Continue",msgstr:["Fortsetzen"]},"estimating time left":{msgid:"estimating time left",msgstr:["Geschätzte verbleibende Zeit"]},"Existing version":{msgid:"Existing version",msgstr:["Vorhandene Version"]},"If you select both versions, the copied file will have a number added to its name.":{msgid:"If you select both versions, the copied file will have a number added to its name.",msgstr:["Wenn du beide Versionen auswählst, wird der kopierten Datei eine Nummer zum Namen hinzugefügt."]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Datum der letzten Änderung unbekannt"]},New:{msgid:"New",msgstr:["Neu"]},"New version":{msgid:"New version",msgstr:["Neue Version"]},paused:{msgid:"paused",msgstr:["Pausiert"]},"Preview image":{msgid:"Preview image",msgstr:["Vorschaubild"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Alle Kontrollkästchen aktivieren"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Alle vorhandenen Dateien auswählen"]},"Select all new files":{msgid:"Select all new files",msgstr:["Alle neuen Dateien auswählen"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Diese Datei überspringen","{count} Dateien überspringen"]},"Unknown size":{msgid:"Unknown size",msgstr:["Unbekannte Größe"]},"Upload cancelled":{msgid:"Upload cancelled",msgstr:["Hochladen abgebrochen"]},"Upload files":{msgid:"Upload files",msgstr:["Dateien hochladen"]},"Upload progress":{msgid:"Upload progress",msgstr:["Fortschritt beim Hochladen"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Wenn ein eingehender Ordner ausgewählt wird, werden alle darin enthaltenen Konfliktdateien ebenfalls überschrieben."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Welche Dateien möchtest du behalten?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Du musst mindestens eine Version jeder Datei auswählen, um fortzufahren."]}}}}},{locale:"de_DE",json:{charset:"utf-8",headers:{"Last-Translator":"Mario Siegmann , 2024","Language-Team":"German (Germany) (https://app.transifex.com/nextcloud/teams/64236/de_DE/)","Content-Type":"text/plain; charset=UTF-8",Language:"de_DE","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nMario Siegmann , 2024\n"},msgstr:["Last-Translator: Mario Siegmann , 2024\nLanguage-Team: German (Germany) (https://app.transifex.com/nextcloud/teams/64236/de_DE/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: de_DE\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{filename}" contains invalid characters, how do you want to continue?':{msgid:'"{filename}" contains invalid characters, how do you want to continue?',msgstr:['"{filename}" enthält ungültige Zeichen. Wie möchten Sie fortfahren?']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} Datei-Konflikt","{count} Datei-Konflikte"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} Datei-Konflikt in {dirname}","{count} Datei-Konflikte in {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} Sekunden verbleiben"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} verbleibend"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["ein paar Sekunden verbleiben"]},Cancel:{msgid:"Cancel",msgstr:["Abbrechen"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Den gesamten Vorgang abbrechen"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Hochladen abbrechen"]},Continue:{msgid:"Continue",msgstr:["Fortsetzen"]},"Create new":{msgid:"Create new",msgstr:["Neu erstellen"]},"estimating time left":{msgid:"estimating time left",msgstr:["Geschätzte verbleibende Zeit"]},"Existing version":{msgid:"Existing version",msgstr:["Vorhandene Version"]},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Wenn Sie beide Versionen auswählen, wird der eingehenden Datei eine Nummer zum Namen hinzugefügt."]},"Invalid file name":{msgid:"Invalid file name",msgstr:["Ungültiger Dateiname"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Datum der letzten Änderung unbekannt"]},New:{msgid:"New",msgstr:["Neu"]},"New version":{msgid:"New version",msgstr:["Neue Version"]},paused:{msgid:"paused",msgstr:["Pausiert"]},"Preview image":{msgid:"Preview image",msgstr:["Vorschaubild"]},Rename:{msgid:"Rename",msgstr:["Umbenennen"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Alle Kontrollkästchen aktivieren"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Alle vorhandenen Dateien auswählen"]},"Select all new files":{msgid:"Select all new files",msgstr:["Alle neuen Dateien auswählen"]},Skip:{msgid:"Skip",msgstr:["Überspringen"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["{count} Datei überspringen","{count} Dateien überspringen"]},"Unknown size":{msgid:"Unknown size",msgstr:["Unbekannte Größe"]},"Upload files":{msgid:"Upload files",msgstr:["Dateien hochladen"]},"Upload folders":{msgid:"Upload folders",msgstr:["Ordner hochladen"]},"Upload from device":{msgid:"Upload from device",msgstr:["Vom Gerät hochladen"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Das Hochladen wurde abgebrochen"]},"Upload progress":{msgid:"Upload progress",msgstr:["Fortschritt beim Hochladen"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Wenn ein eingehender Ordner ausgewählt wird, werden alle darin enthaltenen Konfliktdateien ebenfalls überschrieben."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Bei Auswahl eines eingehenden Ordners wird der Inhalt in den vorhandenen Ordner geschrieben und eine rekursive Konfliktlösung durchgeführt."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Welche Dateien möchten Sie behalten?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Sie müssen mindestens eine Version jeder Datei auswählen, um fortzufahren."]}}}}},{locale:"el",json:{charset:"utf-8",headers:{"Last-Translator":"Nik Pap, 2022","Language-Team":"Greek (https://www.transifex.com/nextcloud/teams/64236/el/)","Content-Type":"text/plain; charset=UTF-8",Language:"el","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nNik Pap, 2022\n"},msgstr:["Last-Translator: Nik Pap, 2022\nLanguage-Team: Greek (https://www.transifex.com/nextcloud/teams/64236/el/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: el\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["απομένουν {seconds} δευτερόλεπτα"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["απομένουν {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["απομένουν λίγα δευτερόλεπτα"]},Add:{msgid:"Add",msgstr:["Προσθήκη"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Ακύρωση μεταφορτώσεων"]},"estimating time left":{msgid:"estimating time left",msgstr:["εκτίμηση του χρόνου που απομένει"]},paused:{msgid:"paused",msgstr:["σε παύση"]},"Upload files":{msgid:"Upload files",msgstr:["Μεταφόρτωση αρχείων"]}}}}},{locale:"el_GR",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Greek (Greece) (https://www.transifex.com/nextcloud/teams/64236/el_GR/)","Content-Type":"text/plain; charset=UTF-8",Language:"el_GR","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Greek (Greece) (https://www.transifex.com/nextcloud/teams/64236/el_GR/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: el_GR\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"en_GB",json:{charset:"utf-8",headers:{"Last-Translator":"Andi Chandler , 2024","Language-Team":"English (United Kingdom) (https://app.transifex.com/nextcloud/teams/64236/en_GB/)","Content-Type":"text/plain; charset=UTF-8",Language:"en_GB","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nAndi Chandler , 2024\n"},msgstr:["Last-Translator: Andi Chandler , 2024\nLanguage-Team: English (United Kingdom) (https://app.transifex.com/nextcloud/teams/64236/en_GB/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: en_GB\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} file conflict","{count} files conflict"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} file conflict in {dirname}","{count} file conflicts in {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} seconds left"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} left"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["a few seconds left"]},Cancel:{msgid:"Cancel",msgstr:["Cancel"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Cancel the entire operation"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Cancel uploads"]},Continue:{msgid:"Continue",msgstr:["Continue"]},"estimating time left":{msgid:"estimating time left",msgstr:["estimating time left"]},"Existing version":{msgid:"Existing version",msgstr:["Existing version"]},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["If you select both versions, the incoming file will have a number added to its name."]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Last modified date unknown"]},New:{msgid:"New",msgstr:["New"]},"New version":{msgid:"New version",msgstr:["New version"]},paused:{msgid:"paused",msgstr:["paused"]},"Preview image":{msgid:"Preview image",msgstr:["Preview image"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Select all checkboxes"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Select all existing files"]},"Select all new files":{msgid:"Select all new files",msgstr:["Select all new files"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Skip this file","Skip {count} files"]},"Unknown size":{msgid:"Unknown size",msgstr:["Unknown size"]},"Upload cancelled":{msgid:"Upload cancelled",msgstr:["Upload cancelled"]},"Upload files":{msgid:"Upload files",msgstr:["Upload files"]},"Upload progress":{msgid:"Upload progress",msgstr:["Upload progress"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["When an incoming folder is selected, any conflicting files within it will also be overwritten."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Which files do you want to keep?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["You need to select at least one version of each file to continue."]}}}}},{locale:"eo",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Esperanto (https://www.transifex.com/nextcloud/teams/64236/eo/)","Content-Type":"text/plain; charset=UTF-8",Language:"eo","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Esperanto (https://www.transifex.com/nextcloud/teams/64236/eo/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: eo\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es",json:{charset:"utf-8",headers:{"Last-Translator":"Julio C. Ortega, 2024","Language-Team":"Spanish (https://app.transifex.com/nextcloud/teams/64236/es/)","Content-Type":"text/plain; charset=UTF-8",Language:"es","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nFranciscoFJ , 2024\nJulio C. Ortega, 2024\n"},msgstr:["Last-Translator: Julio C. Ortega, 2024\nLanguage-Team: Spanish (https://app.transifex.com/nextcloud/teams/64236/es/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},'"{filename}" contains invalid characters, how do you want to continue?':{msgid:'"{filename}" contains invalid characters, how do you want to continue?',msgstr:['"{filename}" contiene caracteres inválidos, ¿cómo desea continuar?']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} conflicto de archivo","{count} conflictos de archivo","{count} conflictos de archivo"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} conflicto de archivo en {dirname}","{count} conflictos de archivo en {dirname}","{count} conflictos de archivo en {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} segundos restantes"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} restante"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["quedan unos segundos"]},Cancel:{msgid:"Cancel",msgstr:["Cancelar"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Cancelar toda la operación"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Cancelar subidas"]},Continue:{msgid:"Continue",msgstr:["Continuar"]},"Create new":{msgid:"Create new",msgstr:["Crear nuevo"]},"estimating time left":{msgid:"estimating time left",msgstr:["estimando tiempo restante"]},"Existing version":{msgid:"Existing version",msgstr:["Versión existente"]},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Si selecciona ambas versionas, el archivo entrante le será agregado un número a su nombre."]},"Invalid file name":{msgid:"Invalid file name",msgstr:["Nombre de archivo inválido"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Última fecha de modificación desconocida"]},New:{msgid:"New",msgstr:["Nuevo"]},"New version":{msgid:"New version",msgstr:["Nueva versión"]},paused:{msgid:"paused",msgstr:["pausado"]},"Preview image":{msgid:"Preview image",msgstr:["Previsualizar imagen"]},Rename:{msgid:"Rename",msgstr:["Renombrar"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Seleccionar todas las casillas de verificación"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Seleccionar todos los archivos existentes"]},"Select all new files":{msgid:"Select all new files",msgstr:["Seleccionar todos los archivos nuevos"]},Skip:{msgid:"Skip",msgstr:["Saltar"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Saltar este archivo","Saltar {count} archivos","Saltar {count} archivos"]},"Unknown size":{msgid:"Unknown size",msgstr:["Tamaño desconocido"]},"Upload files":{msgid:"Upload files",msgstr:["Subir archivos"]},"Upload folders":{msgid:"Upload folders",msgstr:["Subir carpetas"]},"Upload from device":{msgid:"Upload from device",msgstr:["Subir desde dispositivo"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["La subida ha sido cancelada"]},"Upload progress":{msgid:"Upload progress",msgstr:["Progreso de la subida"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Cuando una carpeta entrante es seleccionada, cualquier de los archivos en conflictos también serán sobre-escritos."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Cuando una carpeta entrante es seleccionada, el contenido es escrito en la carpeta existente y se realizará una resolución de conflictos recursiva."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["¿Qué archivos desea conservar?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Debe seleccionar al menos una versión de cada archivo para continuar."]}}}}},{locale:"es_419",json:{charset:"utf-8",headers:{"Last-Translator":"ALEJANDRO CASTRO, 2022","Language-Team":"Spanish (Latin America) (https://www.transifex.com/nextcloud/teams/64236/es_419/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_419","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nALEJANDRO CASTRO, 2022\n"},msgstr:["Last-Translator: ALEJANDRO CASTRO, 2022\nLanguage-Team: Spanish (Latin America) (https://www.transifex.com/nextcloud/teams/64236/es_419/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_419\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} segundos restantes"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["{tiempo} restante"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["quedan pocos segundos"]},Add:{msgid:"Add",msgstr:["agregar"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Cancelar subidas"]},"estimating time left":{msgid:"estimating time left",msgstr:["estimando tiempo restante"]},paused:{msgid:"paused",msgstr:["pausado"]},"Upload files":{msgid:"Upload files",msgstr:["Subir archivos"]}}}}},{locale:"es_AR",json:{charset:"utf-8",headers:{"Last-Translator":"Matias Iglesias, 2022","Language-Team":"Spanish (Argentina) (https://www.transifex.com/nextcloud/teams/64236/es_AR/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_AR","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nMatias Iglesias, 2022\n"},msgstr:["Last-Translator: Matias Iglesias, 2022\nLanguage-Team: Spanish (Argentina) (https://www.transifex.com/nextcloud/teams/64236/es_AR/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_AR\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} segundos restantes"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["{time} restante"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["quedan unos segundos"]},Add:{msgid:"Add",msgstr:["Añadir"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Cancelar subidas"]},"estimating time left":{msgid:"estimating time left",msgstr:["estimando tiempo restante"]},paused:{msgid:"paused",msgstr:["pausado"]},"Upload files":{msgid:"Upload files",msgstr:["Subir archivos"]}}}}},{locale:"es_CL",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Chile) (https://www.transifex.com/nextcloud/teams/64236/es_CL/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_CL","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Chile) (https://www.transifex.com/nextcloud/teams/64236/es_CL/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_CL\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_CO",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Colombia) (https://www.transifex.com/nextcloud/teams/64236/es_CO/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_CO","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Colombia) (https://www.transifex.com/nextcloud/teams/64236/es_CO/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_CO\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_CR",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Costa Rica) (https://www.transifex.com/nextcloud/teams/64236/es_CR/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_CR","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Costa Rica) (https://www.transifex.com/nextcloud/teams/64236/es_CR/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_CR\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_DO",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Dominican Republic) (https://www.transifex.com/nextcloud/teams/64236/es_DO/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_DO","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Dominican Republic) (https://www.transifex.com/nextcloud/teams/64236/es_DO/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_DO\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_EC",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Ecuador) (https://www.transifex.com/nextcloud/teams/64236/es_EC/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_EC","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Ecuador) (https://www.transifex.com/nextcloud/teams/64236/es_EC/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_EC\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_GT",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Guatemala) (https://www.transifex.com/nextcloud/teams/64236/es_GT/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_GT","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Guatemala) (https://www.transifex.com/nextcloud/teams/64236/es_GT/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_GT\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_HN",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Honduras) (https://www.transifex.com/nextcloud/teams/64236/es_HN/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_HN","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Honduras) (https://www.transifex.com/nextcloud/teams/64236/es_HN/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_HN\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_MX",json:{charset:"utf-8",headers:{"Last-Translator":"ALEJANDRO CASTRO, 2022","Language-Team":"Spanish (Mexico) (https://www.transifex.com/nextcloud/teams/64236/es_MX/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_MX","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nLuis Francisco Castro, 2022\nALEJANDRO CASTRO, 2022\n"},msgstr:["Last-Translator: ALEJANDRO CASTRO, 2022\nLanguage-Team: Spanish (Mexico) (https://www.transifex.com/nextcloud/teams/64236/es_MX/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_MX\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} segundos restantes"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["{tiempo} restante"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["quedan pocos segundos"]},Add:{msgid:"Add",msgstr:["agregar"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["cancelar las cargas"]},"estimating time left":{msgid:"estimating time left",msgstr:["estimando tiempo restante"]},paused:{msgid:"paused",msgstr:["en pausa"]},"Upload files":{msgid:"Upload files",msgstr:["cargar archivos"]}}}}},{locale:"es_NI",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Nicaragua) (https://www.transifex.com/nextcloud/teams/64236/es_NI/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_NI","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Nicaragua) (https://www.transifex.com/nextcloud/teams/64236/es_NI/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_NI\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_PA",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Panama) (https://www.transifex.com/nextcloud/teams/64236/es_PA/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_PA","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Panama) (https://www.transifex.com/nextcloud/teams/64236/es_PA/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_PA\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_PE",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Peru) (https://www.transifex.com/nextcloud/teams/64236/es_PE/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_PE","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Peru) (https://www.transifex.com/nextcloud/teams/64236/es_PE/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_PE\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_PR",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Puerto Rico) (https://www.transifex.com/nextcloud/teams/64236/es_PR/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_PR","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Puerto Rico) (https://www.transifex.com/nextcloud/teams/64236/es_PR/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_PR\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_PY",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Paraguay) (https://www.transifex.com/nextcloud/teams/64236/es_PY/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_PY","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Paraguay) (https://www.transifex.com/nextcloud/teams/64236/es_PY/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_PY\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_SV",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (El Salvador) (https://www.transifex.com/nextcloud/teams/64236/es_SV/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_SV","Plural-Forms":"nplurals=2; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (El Salvador) (https://www.transifex.com/nextcloud/teams/64236/es_SV/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_SV\nPlural-Forms: nplurals=2; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_UY",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Uruguay) (https://www.transifex.com/nextcloud/teams/64236/es_UY/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_UY","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Uruguay) (https://www.transifex.com/nextcloud/teams/64236/es_UY/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_UY\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"et_EE",json:{charset:"utf-8",headers:{"Last-Translator":"Taavo Roos, 2023","Language-Team":"Estonian (Estonia) (https://app.transifex.com/nextcloud/teams/64236/et_EE/)","Content-Type":"text/plain; charset=UTF-8",Language:"et_EE","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nMait R, 2022\nTaavo Roos, 2023\n"},msgstr:["Last-Translator: Taavo Roos, 2023\nLanguage-Team: Estonian (Estonia) (https://app.transifex.com/nextcloud/teams/64236/et_EE/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: et_EE\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} jäänud sekundid"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["{time} aega jäänud"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["jäänud mõni sekund"]},Add:{msgid:"Add",msgstr:["Lisa"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Tühista üleslaadimine"]},"estimating time left":{msgid:"estimating time left",msgstr:["hinnanguline järelejäänud aeg"]},paused:{msgid:"paused",msgstr:["pausil"]},"Upload files":{msgid:"Upload files",msgstr:["Lae failid üles"]}}}}},{locale:"eu",json:{charset:"utf-8",headers:{"Last-Translator":"Unai Tolosa Pontesta , 2022","Language-Team":"Basque (https://www.transifex.com/nextcloud/teams/64236/eu/)","Content-Type":"text/plain; charset=UTF-8",Language:"eu","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nUnai Tolosa Pontesta , 2022\n"},msgstr:["Last-Translator: Unai Tolosa Pontesta , 2022\nLanguage-Team: Basque (https://www.transifex.com/nextcloud/teams/64236/eu/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: eu\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} segundo geratzen dira"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["{time} geratzen da"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["segundo batzuk geratzen dira"]},Add:{msgid:"Add",msgstr:["Gehitu"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Ezeztatu igoerak"]},"estimating time left":{msgid:"estimating time left",msgstr:["kalkulatutako geratzen den denbora"]},paused:{msgid:"paused",msgstr:["geldituta"]},"Upload files":{msgid:"Upload files",msgstr:["Igo fitxategiak"]}}}}},{locale:"fa",json:{charset:"utf-8",headers:{"Last-Translator":"Fatemeh Komeily, 2023","Language-Team":"Persian (https://app.transifex.com/nextcloud/teams/64236/fa/)","Content-Type":"text/plain; charset=UTF-8",Language:"fa","Plural-Forms":"nplurals=2; plural=(n > 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nFatemeh Komeily, 2023\n"},msgstr:["Last-Translator: Fatemeh Komeily, 2023\nLanguage-Team: Persian (https://app.transifex.com/nextcloud/teams/64236/fa/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: fa\nPlural-Forms: nplurals=2; plural=(n > 1);\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["ثانیه های باقی مانده"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["باقی مانده"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["چند ثانیه مانده"]},Add:{msgid:"Add",msgstr:["اضافه کردن"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["کنسل کردن فایل های اپلود شده"]},"estimating time left":{msgid:"estimating time left",msgstr:["تخمین زمان باقی مانده"]},paused:{msgid:"paused",msgstr:["مکث کردن"]},"Upload files":{msgid:"Upload files",msgstr:["بارگذاری فایل ها"]}}}}},{locale:"fi_FI",json:{charset:"utf-8",headers:{"Last-Translator":"Jiri Grönroos , 2022","Language-Team":"Finnish (Finland) (https://www.transifex.com/nextcloud/teams/64236/fi_FI/)","Content-Type":"text/plain; charset=UTF-8",Language:"fi_FI","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJiri Grönroos , 2022\n"},msgstr:["Last-Translator: Jiri Grönroos , 2022\nLanguage-Team: Finnish (Finland) (https://www.transifex.com/nextcloud/teams/64236/fi_FI/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: fi_FI\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} sekuntia jäljellä"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["{time} jäljellä"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["muutama sekunti jäljellä"]},Add:{msgid:"Add",msgstr:["Lisää"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Peruuta lähetykset"]},"estimating time left":{msgid:"estimating time left",msgstr:["arvioidaan jäljellä olevaa aikaa"]},paused:{msgid:"paused",msgstr:["keskeytetty"]},"Upload files":{msgid:"Upload files",msgstr:["Lähetä tiedostoja"]}}}}},{locale:"fo",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Faroese (https://www.transifex.com/nextcloud/teams/64236/fo/)","Content-Type":"text/plain; charset=UTF-8",Language:"fo","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Faroese (https://www.transifex.com/nextcloud/teams/64236/fo/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: fo\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"fr",json:{charset:"utf-8",headers:{"Last-Translator":"jed boulahya, 2024","Language-Team":"French (https://app.transifex.com/nextcloud/teams/64236/fr/)","Content-Type":"text/plain; charset=UTF-8",Language:"fr","Plural-Forms":"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nBenoit Pruneau, 2024\njed boulahya, 2024\n"},msgstr:["Last-Translator: jed boulahya, 2024\nLanguage-Team: French (https://app.transifex.com/nextcloud/teams/64236/fr/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: fr\nPlural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} fichier en conflit","{count} fichiers en conflit","{count} fichiers en conflit"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} fichier en conflit dans {dirname}","{count} fichiers en conflit dans {dirname}","{count} fichiers en conflit dans {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} secondes restantes"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} restant"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["quelques secondes restantes"]},Cancel:{msgid:"Cancel",msgstr:["Annuler"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Annuler l'opération entière"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Annuler les envois"]},Continue:{msgid:"Continue",msgstr:["Continuer"]},"estimating time left":{msgid:"estimating time left",msgstr:["estimation du temps restant"]},"Existing version":{msgid:"Existing version",msgstr:["Version existante"]},"If you select both versions, the copied file will have a number added to its name.":{msgid:"If you select both versions, the copied file will have a number added to its name.",msgstr:["Si vous sélectionnez les deux versions, le fichier copié aura un numéro ajouté àname."]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Date de la dernière modification est inconnue"]},New:{msgid:"New",msgstr:["Nouveau"]},"New version":{msgid:"New version",msgstr:["Nouvelle version"]},paused:{msgid:"paused",msgstr:["en pause"]},"Preview image":{msgid:"Preview image",msgstr:["Aperçu de l'image"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Sélectionner toutes les cases à cocher"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Sélectionner tous les fichiers existants"]},"Select all new files":{msgid:"Select all new files",msgstr:["Sélectionner tous les nouveaux fichiers"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Ignorer ce fichier","Ignorer {count} fichiers","Ignorer {count} fichiers"]},"Unknown size":{msgid:"Unknown size",msgstr:["Taille inconnue"]},"Upload cancelled":{msgid:"Upload cancelled",msgstr:[" annulé"]},"Upload files":{msgid:"Upload files",msgstr:["Téléchargement des fichiers"]},"Upload progress":{msgid:"Upload progress",msgstr:["Progression du téléchargement"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Lorsqu'un dossier entrant est sélectionné, tous les fichiers en conflit qu'il contient seront également écrasés."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Quels fichiers souhaitez-vous conserver ?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Vous devez sélectionner au moins une version de chaque fichier pour continuer."]}}}}},{locale:"ga",json:{charset:"utf-8",headers:{"Last-Translator":"Aindriú Mac Giolla Eoin, 2024","Language-Team":"Irish (https://app.transifex.com/nextcloud/teams/64236/ga/)","Content-Type":"text/plain; charset=UTF-8",Language:"ga","Plural-Forms":"nplurals=5; plural=(n==1 ? 0 : n==2 ? 1 : n<7 ? 2 : n<11 ? 3 : 4);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nAindriú Mac Giolla Eoin, 2024\n"},msgstr:["Last-Translator: Aindriú Mac Giolla Eoin, 2024\nLanguage-Team: Irish (https://app.transifex.com/nextcloud/teams/64236/ga/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ga\nPlural-Forms: nplurals=5; plural=(n==1 ? 0 : n==2 ? 1 : n<7 ? 2 : n<11 ? 3 : 4);\n"]},'"{filename}" contains invalid characters, how do you want to continue?':{msgid:'"{filename}" contains invalid characters, how do you want to continue?',msgstr:['Tá carachtair neamhbhailí in "{filename}", conas ba mhaith leat leanúint ar aghaidh?']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} coimhlint comhaid","coimhlint comhaid {count}","coimhlint comhaid {count}","coimhlint comhaid {count}","coimhlint comhaid {count}"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} coimhlint comhaid i {dirname}","{count} coimhlint comhaid i {dirname}","{count} coimhlint comhaid i {dirname}","{count} coimhlint comhaid i {dirname}","{count} coimhlint comhaid i {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{soicind} fágtha"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{am} fágtha"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["cúpla soicind fágtha"]},Cancel:{msgid:"Cancel",msgstr:["Cealaigh"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Cealaigh an oibríocht iomlán"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Cealaigh uaslódálacha"]},Continue:{msgid:"Continue",msgstr:["Leanúint ar aghaidh"]},"Create new":{msgid:"Create new",msgstr:["Cruthaigh nua"]},"estimating time left":{msgid:"estimating time left",msgstr:["ag déanamh meastachán ar an am atá fágtha"]},"Existing version":{msgid:"Existing version",msgstr:["Leagan láithreach "]},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Má roghnaíonn tú an dá leagan, cuirfear uimhir leis an ainm a thagann isteach."]},"Invalid file name":{msgid:"Invalid file name",msgstr:["Ainm comhaid neamhbhailí"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Dáta modhnaithe is déanaí anaithnid"]},New:{msgid:"New",msgstr:["Nua"]},"New version":{msgid:"New version",msgstr:["Leagan nua"]},paused:{msgid:"paused",msgstr:["sos"]},"Preview image":{msgid:"Preview image",msgstr:["Íomhá réamhamharc"]},Rename:{msgid:"Rename",msgstr:["Athainmnigh"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Roghnaigh gach ticbhosca"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Roghnaigh gach comhad atá ann cheana féin"]},"Select all new files":{msgid:"Select all new files",msgstr:["Roghnaigh gach comhad nua"]},Skip:{msgid:"Skip",msgstr:["Scipeáil"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Léim an comhad seo","Léim ar {count} comhad","Léim ar {count} comhad","Léim ar {count} comhad","Léim ar {count} comhad"]},"Unknown size":{msgid:"Unknown size",msgstr:["Méid anaithnid"]},"Upload files":{msgid:"Upload files",msgstr:["Uaslódáil comhaid"]},"Upload folders":{msgid:"Upload folders",msgstr:["Uaslódáil fillteáin"]},"Upload from device":{msgid:"Upload from device",msgstr:["Íosluchtaigh ó gléas"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Cuireadh an t-uaslódáil ar ceal"]},"Upload progress":{msgid:"Upload progress",msgstr:["Uaslódáil dul chun cinn"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Nuair a roghnaítear fillteán isteach, déanfar aon chomhad contrártha laistigh de a fhorscríobh freisin."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Nuair a roghnaítear fillteán isteach, scríobhtar an t-ábhar isteach san fhillteán atá ann cheana agus déantar réiteach coinbhleachta athchúrsach."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Cé na comhaid ar mhaith leat a choinneáil?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Ní mór duit leagan amháin ar a laghad de gach comhad a roghnú chun leanúint ar aghaidh."]}}}}},{locale:"gd",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Gaelic, Scottish (https://www.transifex.com/nextcloud/teams/64236/gd/)","Content-Type":"text/plain; charset=UTF-8",Language:"gd","Plural-Forms":"nplurals=4; plural=(n==1 || n==11) ? 0 : (n==2 || n==12) ? 1 : (n > 2 && n < 20) ? 2 : 3;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Gaelic, Scottish (https://www.transifex.com/nextcloud/teams/64236/gd/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: gd\nPlural-Forms: nplurals=4; plural=(n==1 || n==11) ? 0 : (n==2 || n==12) ? 1 : (n > 2 && n < 20) ? 2 : 3;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"gl",json:{charset:"utf-8",headers:{"Last-Translator":"Miguel Anxo Bouzada , 2024","Language-Team":"Galician (https://app.transifex.com/nextcloud/teams/64236/gl/)","Content-Type":"text/plain; charset=UTF-8",Language:"gl","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nMiguel Anxo Bouzada , 2024\n"},msgstr:["Last-Translator: Miguel Anxo Bouzada , 2024\nLanguage-Team: Galician (https://app.transifex.com/nextcloud/teams/64236/gl/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: gl\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{filename}" contains invalid characters, how do you want to continue?':{msgid:'"{filename}" contains invalid characters, how do you want to continue?',msgstr:["«{filename}» contén caracteres non válidos, como quere continuar?"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} conflito de ficheiros","{count} conflitos de ficheiros"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} conflito de ficheiros en {dirname}","{count} conflitos de ficheiros en {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["faltan {seconds} segundos"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["falta {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["faltan uns segundos"]},Cancel:{msgid:"Cancel",msgstr:["Cancelar"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Cancela toda a operación"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Cancelar envíos"]},Continue:{msgid:"Continue",msgstr:["Continuar"]},"Create new":{msgid:"Create new",msgstr:["Crear un novo"]},"estimating time left":{msgid:"estimating time left",msgstr:["calculando canto tempo falta"]},"Existing version":{msgid:"Existing version",msgstr:["Versión existente"]},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Se selecciona ambas as versións, o ficheiro entrante terá un número engadido ao seu nome."]},"Invalid file name":{msgid:"Invalid file name",msgstr:["O nome de ficheiro non é válido"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Data da última modificación descoñecida"]},New:{msgid:"New",msgstr:["Nova"]},"New version":{msgid:"New version",msgstr:["Nova versión"]},paused:{msgid:"paused",msgstr:["detido"]},"Preview image":{msgid:"Preview image",msgstr:["Vista previa da imaxe"]},Rename:{msgid:"Rename",msgstr:["Renomear"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Marcar todas as caixas de selección"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Seleccionar todos os ficheiros existentes"]},"Select all new files":{msgid:"Select all new files",msgstr:["Seleccionar todos os ficheiros novos"]},Skip:{msgid:"Skip",msgstr:["Omitir"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Omita este ficheiro","Omitir {count} ficheiros"]},"Unknown size":{msgid:"Unknown size",msgstr:["Tamaño descoñecido"]},"Upload files":{msgid:"Upload files",msgstr:["Enviar ficheiros"]},"Upload folders":{msgid:"Upload folders",msgstr:["Enviar cartafoles"]},"Upload from device":{msgid:"Upload from device",msgstr:["Enviar dende o dispositivo"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["O envío foi cancelado"]},"Upload progress":{msgid:"Upload progress",msgstr:["Progreso do envío"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Cando se selecciona un cartafol entrante, tamén se sobrescribirán os ficheiros en conflito dentro del."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Cando se selecciona un cartafol entrante, o contido escríbese no cartafol existente e lévase a cabo unha resolución recursiva de conflitos."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Que ficheiros quere conservar?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Debe seleccionar polo menos unha versión de cada ficheiro para continuar."]}}}}},{locale:"he",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Hebrew (https://www.transifex.com/nextcloud/teams/64236/he/)","Content-Type":"text/plain; charset=UTF-8",Language:"he","Plural-Forms":"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n == 2 && n % 1 == 0) ? 1: (n % 10 == 0 && n % 1 == 0 && n > 10) ? 2 : 3;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Hebrew (https://www.transifex.com/nextcloud/teams/64236/he/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: he\nPlural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n == 2 && n % 1 == 0) ? 1: (n % 10 == 0 && n % 1 == 0 && n > 10) ? 2 : 3;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"hi_IN",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Hindi (India) (https://www.transifex.com/nextcloud/teams/64236/hi_IN/)","Content-Type":"text/plain; charset=UTF-8",Language:"hi_IN","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Hindi (India) (https://www.transifex.com/nextcloud/teams/64236/hi_IN/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: hi_IN\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"hr",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Croatian (https://www.transifex.com/nextcloud/teams/64236/hr/)","Content-Type":"text/plain; charset=UTF-8",Language:"hr","Plural-Forms":"nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Croatian (https://www.transifex.com/nextcloud/teams/64236/hr/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: hr\nPlural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"hsb",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Upper Sorbian (https://www.transifex.com/nextcloud/teams/64236/hsb/)","Content-Type":"text/plain; charset=UTF-8",Language:"hsb","Plural-Forms":"nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Upper Sorbian (https://www.transifex.com/nextcloud/teams/64236/hsb/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: hsb\nPlural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"hu",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Hungarian (https://www.transifex.com/nextcloud/teams/64236/hu/)","Content-Type":"text/plain; charset=UTF-8",Language:"hu","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Hungarian (https://www.transifex.com/nextcloud/teams/64236/hu/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: hu\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"hu_HU",json:{charset:"utf-8",headers:{"Last-Translator":"Balázs Úr, 2022","Language-Team":"Hungarian (Hungary) (https://www.transifex.com/nextcloud/teams/64236/hu_HU/)","Content-Type":"text/plain; charset=UTF-8",Language:"hu_HU","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nBalázs Meskó , 2022\nBalázs Úr, 2022\n"},msgstr:["Last-Translator: Balázs Úr, 2022\nLanguage-Team: Hungarian (Hungary) (https://www.transifex.com/nextcloud/teams/64236/hu_HU/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: hu_HU\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{} másodperc van hátra"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["{time} van hátra"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["pár másodperc van hátra"]},Add:{msgid:"Add",msgstr:["Hozzáadás"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Feltöltések megszakítása"]},"estimating time left":{msgid:"estimating time left",msgstr:["hátralévő idő becslése"]},paused:{msgid:"paused",msgstr:["szüneteltetve"]},"Upload files":{msgid:"Upload files",msgstr:["Fájlok feltöltése"]}}}}},{locale:"hy",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Armenian (https://www.transifex.com/nextcloud/teams/64236/hy/)","Content-Type":"text/plain; charset=UTF-8",Language:"hy","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Armenian (https://www.transifex.com/nextcloud/teams/64236/hy/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: hy\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"ia",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Interlingua (https://www.transifex.com/nextcloud/teams/64236/ia/)","Content-Type":"text/plain; charset=UTF-8",Language:"ia","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Interlingua (https://www.transifex.com/nextcloud/teams/64236/ia/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ia\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"id",json:{charset:"utf-8",headers:{"Last-Translator":"Linerly , 2023","Language-Team":"Indonesian (https://app.transifex.com/nextcloud/teams/64236/id/)","Content-Type":"text/plain; charset=UTF-8",Language:"id","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ , 2023\nEmpty Slot Filler, 2023\nLinerly , 2023\n"},msgstr:["Last-Translator: Linerly , 2023\nLanguage-Team: Indonesian (https://app.transifex.com/nextcloud/teams/64236/id/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: id\nPlural-Forms: nplurals=1; plural=0;\n"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} berkas berkonflik"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} berkas berkonflik dalam {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} detik tersisa"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} tersisa"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["tinggal sebentar lagi"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Batalkan unggahan"]},Continue:{msgid:"Continue",msgstr:["Lanjutkan"]},"estimating time left":{msgid:"estimating time left",msgstr:["memperkirakan waktu yang tersisa"]},"Existing version":{msgid:"Existing version",msgstr:["Versi yang ada"]},"If you select both versions, the copied file will have a number added to its name.":{msgid:"If you select both versions, the copied file will have a number added to its name.",msgstr:["Jika Anda memilih kedua versi, nama berkas yang disalin akan ditambahi angka."]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Tanggal perubahan terakhir tidak diketahui"]},New:{msgid:"New",msgstr:["Baru"]},"New version":{msgid:"New version",msgstr:["Versi baru"]},paused:{msgid:"paused",msgstr:["dijeda"]},"Preview image":{msgid:"Preview image",msgstr:["Gambar pratinjau"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Pilih semua kotak centang"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Pilih semua berkas yang ada"]},"Select all new files":{msgid:"Select all new files",msgstr:["Pilih semua berkas baru"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Lewati {count} berkas"]},"Unknown size":{msgid:"Unknown size",msgstr:["Ukuran tidak diketahui"]},"Upload cancelled":{msgid:"Upload cancelled",msgstr:["Unggahan dibatalkan"]},"Upload files":{msgid:"Upload files",msgstr:["Unggah berkas"]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Berkas mana yang Anda ingin tetap simpan?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Anda harus memilih setidaknya satu versi dari masing-masing berkas untuk melanjutkan."]}}}}},{locale:"ig",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Igbo (https://www.transifex.com/nextcloud/teams/64236/ig/)","Content-Type":"text/plain; charset=UTF-8",Language:"ig","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Igbo (https://www.transifex.com/nextcloud/teams/64236/ig/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ig\nPlural-Forms: nplurals=1; plural=0;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"is",json:{charset:"utf-8",headers:{"Last-Translator":"Sveinn í Felli , 2023","Language-Team":"Icelandic (https://app.transifex.com/nextcloud/teams/64236/is/)","Content-Type":"text/plain; charset=UTF-8",Language:"is","Plural-Forms":"nplurals=2; plural=(n % 10 != 1 || n % 100 == 11);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nSveinn í Felli , 2023\n"},msgstr:["Last-Translator: Sveinn í Felli , 2023\nLanguage-Team: Icelandic (https://app.transifex.com/nextcloud/teams/64236/is/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: is\nPlural-Forms: nplurals=2; plural=(n % 10 != 1 || n % 100 == 11);\n"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} árekstur skráa","{count} árekstrar skráa"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} árekstur skráa í {dirname}","{count} árekstrar skráa í {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} sekúndur eftir"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} eftir"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["nokkrar sekúndur eftir"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Hætta við innsendingar"]},Continue:{msgid:"Continue",msgstr:["Halda áfram"]},"estimating time left":{msgid:"estimating time left",msgstr:["áætla tíma sem eftir er"]},"Existing version":{msgid:"Existing version",msgstr:["Fyrirliggjandi útgáfa"]},"If you select both versions, the copied file will have a number added to its name.":{msgid:"If you select both versions, the copied file will have a number added to its name.",msgstr:["Ef þú velur báðar útgáfur, þá mun verða bætt tölustaf aftan við heiti afrituðu skrárinnar."]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Síðasta breytingadagsetning er óþekkt"]},New:{msgid:"New",msgstr:["Nýtt"]},"New version":{msgid:"New version",msgstr:["Ný útgáfa"]},paused:{msgid:"paused",msgstr:["í bið"]},"Preview image":{msgid:"Preview image",msgstr:["Forskoðun myndar"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Velja gátreiti"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Velja allar fyrirliggjandi skrár"]},"Select all new files":{msgid:"Select all new files",msgstr:["Velja allar nýjar skrár"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Sleppa þessari skrá","Sleppa {count} skrám"]},"Unknown size":{msgid:"Unknown size",msgstr:["Óþekkt stærð"]},"Upload cancelled":{msgid:"Upload cancelled",msgstr:["Hætt við innsendingu"]},"Upload files":{msgid:"Upload files",msgstr:["Senda inn skrár"]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Hvaða skrám vilt þú vilt halda eftir?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Þú verður að velja að minnsta kosti eina útgáfu af hverri skrá til að halda áfram."]}}}}},{locale:"it",json:{charset:"utf-8",headers:{"Last-Translator":"Random_R, 2023","Language-Team":"Italian (https://app.transifex.com/nextcloud/teams/64236/it/)","Content-Type":"text/plain; charset=UTF-8",Language:"it","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ , 2023\nLep Lep, 2023\nRandom_R, 2023\n"},msgstr:["Last-Translator: Random_R, 2023\nLanguage-Team: Italian (https://app.transifex.com/nextcloud/teams/64236/it/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: it\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} file in conflitto","{count} file in conflitto","{count} file in conflitto"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} file in conflitto in {dirname}","{count} file in conflitto in {dirname}","{count} file in conflitto in {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} secondi rimanenti "]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} rimanente"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["alcuni secondi rimanenti"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Annulla i caricamenti"]},Continue:{msgid:"Continue",msgstr:["Continua"]},"estimating time left":{msgid:"estimating time left",msgstr:["calcolo il tempo rimanente"]},"Existing version":{msgid:"Existing version",msgstr:["Versione esistente"]},"If you select both versions, the copied file will have a number added to its name.":{msgid:"If you select both versions, the copied file will have a number added to its name.",msgstr:["Se selezioni entrambe le versioni, nel nome del file copiato verrà aggiunto un numero "]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Ultima modifica sconosciuta"]},New:{msgid:"New",msgstr:["Nuovo"]},"New version":{msgid:"New version",msgstr:["Nuova versione"]},paused:{msgid:"paused",msgstr:["pausa"]},"Preview image":{msgid:"Preview image",msgstr:["Anteprima immagine"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Seleziona tutte le caselle"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Seleziona tutti i file esistenti"]},"Select all new files":{msgid:"Select all new files",msgstr:["Seleziona tutti i nuovi file"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Salta questo file","Salta {count} file","Salta {count} file"]},"Unknown size":{msgid:"Unknown size",msgstr:["Dimensione sconosciuta"]},"Upload cancelled":{msgid:"Upload cancelled",msgstr:["Caricamento cancellato"]},"Upload files":{msgid:"Upload files",msgstr:["Carica i file"]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Quali file vuoi mantenere?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Devi selezionare almeno una versione di ogni file per continuare"]}}}}},{locale:"it_IT",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Italian (Italy) (https://www.transifex.com/nextcloud/teams/64236/it_IT/)","Content-Type":"text/plain; charset=UTF-8",Language:"it_IT","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Italian (Italy) (https://www.transifex.com/nextcloud/teams/64236/it_IT/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: it_IT\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"ja_JP",json:{charset:"utf-8",headers:{"Last-Translator":"かたかめ, 2022","Language-Team":"Japanese (Japan) (https://www.transifex.com/nextcloud/teams/64236/ja_JP/)","Content-Type":"text/plain; charset=UTF-8",Language:"ja_JP","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nT.S, 2022\nかたかめ, 2022\n"},msgstr:["Last-Translator: かたかめ, 2022\nLanguage-Team: Japanese (Japan) (https://www.transifex.com/nextcloud/teams/64236/ja_JP/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ja_JP\nPlural-Forms: nplurals=1; plural=0;\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["残り {seconds} 秒"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["残り {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["残り数秒"]},Add:{msgid:"Add",msgstr:["追加"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["アップロードをキャンセル"]},"estimating time left":{msgid:"estimating time left",msgstr:["概算残り時間"]},paused:{msgid:"paused",msgstr:["一時停止中"]},"Upload files":{msgid:"Upload files",msgstr:["ファイルをアップデート"]}}}}},{locale:"ka",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Georgian (https://www.transifex.com/nextcloud/teams/64236/ka/)","Content-Type":"text/plain; charset=UTF-8",Language:"ka","Plural-Forms":"nplurals=2; plural=(n!=1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Georgian (https://www.transifex.com/nextcloud/teams/64236/ka/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ka\nPlural-Forms: nplurals=2; plural=(n!=1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"ka_GE",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Georgian (Georgia) (https://www.transifex.com/nextcloud/teams/64236/ka_GE/)","Content-Type":"text/plain; charset=UTF-8",Language:"ka_GE","Plural-Forms":"nplurals=2; plural=(n!=1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Georgian (Georgia) (https://www.transifex.com/nextcloud/teams/64236/ka_GE/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ka_GE\nPlural-Forms: nplurals=2; plural=(n!=1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"kab",json:{charset:"utf-8",headers:{"Last-Translator":"ZiriSut, 2023","Language-Team":"Kabyle (https://app.transifex.com/nextcloud/teams/64236/kab/)","Content-Type":"text/plain; charset=UTF-8",Language:"kab","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nZiriSut, 2023\n"},msgstr:["Last-Translator: ZiriSut, 2023\nLanguage-Team: Kabyle (https://app.transifex.com/nextcloud/teams/64236/kab/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: kab\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} tesdatin i d-yeqqimen"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["{time} i d-yeqqimen"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["qqiment-d kra n tesdatin kan"]},Add:{msgid:"Add",msgstr:["Rnu"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Sefsex asali"]},"estimating time left":{msgid:"estimating time left",msgstr:["asizel n wakud i d-yeqqimen"]},paused:{msgid:"paused",msgstr:["yeḥbes"]},"Upload files":{msgid:"Upload files",msgstr:["Sali-d ifuyla"]}}}}},{locale:"kk",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Kazakh (https://www.transifex.com/nextcloud/teams/64236/kk/)","Content-Type":"text/plain; charset=UTF-8",Language:"kk","Plural-Forms":"nplurals=2; plural=(n!=1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Kazakh (https://www.transifex.com/nextcloud/teams/64236/kk/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: kk\nPlural-Forms: nplurals=2; plural=(n!=1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"km",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Khmer (https://www.transifex.com/nextcloud/teams/64236/km/)","Content-Type":"text/plain; charset=UTF-8",Language:"km","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Khmer (https://www.transifex.com/nextcloud/teams/64236/km/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: km\nPlural-Forms: nplurals=1; plural=0;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"kn",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Kannada (https://www.transifex.com/nextcloud/teams/64236/kn/)","Content-Type":"text/plain; charset=UTF-8",Language:"kn","Plural-Forms":"nplurals=2; plural=(n > 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Kannada (https://www.transifex.com/nextcloud/teams/64236/kn/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: kn\nPlural-Forms: nplurals=2; plural=(n > 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"ko",json:{charset:"utf-8",headers:{"Last-Translator":"이상오, 2024","Language-Team":"Korean (https://app.transifex.com/nextcloud/teams/64236/ko/)","Content-Type":"text/plain; charset=UTF-8",Language:"ko","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\n이상오, 2024\n"},msgstr:["Last-Translator: 이상오, 2024\nLanguage-Team: Korean (https://app.transifex.com/nextcloud/teams/64236/ko/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ko\nPlural-Forms: nplurals=1; plural=0;\n"]},'"{filename}" contains invalid characters, how do you want to continue?':{msgid:'"{filename}" contains invalid characters, how do you want to continue?',msgstr:['"{filename}"에 유효하지 않은 문자가 있습니다, 계속하시겠습니까?']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count}개의 파일이 충돌함"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{dirname}에서 {count}개의 파일이 충돌함"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds}초 남음"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} 남음"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["곧 완료"]},Cancel:{msgid:"Cancel",msgstr:["취소"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["전체 작업을 취소"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["업로드 취소"]},Continue:{msgid:"Continue",msgstr:["확인"]},"Create new":{msgid:"Create new",msgstr:["새로 만들기"]},"estimating time left":{msgid:"estimating time left",msgstr:["남은 시간 계산"]},"Existing version":{msgid:"Existing version",msgstr:["현재 버전"]},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["두 파일을 모두 선택하면, 들어오는 파일의 이름에 번호가 추가됩니다."]},"Invalid file name":{msgid:"Invalid file name",msgstr:["잘못된 파일 이름"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["최근 수정일 알 수 없음"]},New:{msgid:"New",msgstr:["새로 만들기"]},"New version":{msgid:"New version",msgstr:["새 버전"]},paused:{msgid:"paused",msgstr:["일시정지됨"]},"Preview image":{msgid:"Preview image",msgstr:["미리보기 이미지"]},Rename:{msgid:"Rename",msgstr:["이름 바꾸기"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["모든 체크박스 선택"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["기존 파일을 모두 선택"]},"Select all new files":{msgid:"Select all new files",msgstr:["새로운 파일을 모두 선택"]},Skip:{msgid:"Skip",msgstr:["건너뛰기"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["{count}개의 파일 넘기기"]},"Unknown size":{msgid:"Unknown size",msgstr:["크기를 알 수 없음"]},"Upload files":{msgid:"Upload files",msgstr:["파일 업로드"]},"Upload folders":{msgid:"Upload folders",msgstr:["폴더 업로드"]},"Upload from device":{msgid:"Upload from device",msgstr:["장치에서 업로드"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["업로드가 취소되었습니다."]},"Upload progress":{msgid:"Upload progress",msgstr:["업로드 진행도"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["들어오는 폴더를 선택했다면, 충돌하는 내부 파일들은 덮어쓰기 됩니다."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["들어오는 폴더를 선택했다면 내용물이 그 기존 폴더 안에 작성되고, 전체적으로 충돌 해결을 수행합니다."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["어떤 파일을 보존하시겠습니까?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["계속하기 위해서는 한 파일에 최소 하나의 버전을 선택해야 합니다."]}}}}},{locale:"la",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Latin (https://www.transifex.com/nextcloud/teams/64236/la/)","Content-Type":"text/plain; charset=UTF-8",Language:"la","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Latin (https://www.transifex.com/nextcloud/teams/64236/la/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: la\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"lb",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Luxembourgish (https://www.transifex.com/nextcloud/teams/64236/lb/)","Content-Type":"text/plain; charset=UTF-8",Language:"lb","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Luxembourgish (https://www.transifex.com/nextcloud/teams/64236/lb/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: lb\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"lo",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Lao (https://www.transifex.com/nextcloud/teams/64236/lo/)","Content-Type":"text/plain; charset=UTF-8",Language:"lo","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Lao (https://www.transifex.com/nextcloud/teams/64236/lo/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: lo\nPlural-Forms: nplurals=1; plural=0;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"lt_LT",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Lithuanian (Lithuania) (https://www.transifex.com/nextcloud/teams/64236/lt_LT/)","Content-Type":"text/plain; charset=UTF-8",Language:"lt_LT","Plural-Forms":"nplurals=4; plural=(n % 10 == 1 && (n % 100 > 19 || n % 100 < 11) ? 0 : (n % 10 >= 2 && n % 10 <=9) && (n % 100 > 19 || n % 100 < 11) ? 1 : n % 1 != 0 ? 2: 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Lithuanian (Lithuania) (https://www.transifex.com/nextcloud/teams/64236/lt_LT/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: lt_LT\nPlural-Forms: nplurals=4; plural=(n % 10 == 1 && (n % 100 > 19 || n % 100 < 11) ? 0 : (n % 10 >= 2 && n % 10 <=9) && (n % 100 > 19 || n % 100 < 11) ? 1 : n % 1 != 0 ? 2: 3);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"lv",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Latvian (https://www.transifex.com/nextcloud/teams/64236/lv/)","Content-Type":"text/plain; charset=UTF-8",Language:"lv","Plural-Forms":"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Latvian (https://www.transifex.com/nextcloud/teams/64236/lv/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: lv\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"mk",json:{charset:"utf-8",headers:{"Last-Translator":"Сашко Тодоров , 2022","Language-Team":"Macedonian (https://www.transifex.com/nextcloud/teams/64236/mk/)","Content-Type":"text/plain; charset=UTF-8",Language:"mk","Plural-Forms":"nplurals=2; plural=(n % 10 == 1 && n % 100 != 11) ? 0 : 1;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nСашко Тодоров , 2022\n"},msgstr:["Last-Translator: Сашко Тодоров , 2022\nLanguage-Team: Macedonian (https://www.transifex.com/nextcloud/teams/64236/mk/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: mk\nPlural-Forms: nplurals=2; plural=(n % 10 == 1 && n % 100 != 11) ? 0 : 1;\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["преостануваат {seconds} секунди"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["преостанува {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["уште неколку секунди"]},Add:{msgid:"Add",msgstr:["Додади"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Прекини прикачување"]},"estimating time left":{msgid:"estimating time left",msgstr:["приближно преостанато време"]},paused:{msgid:"paused",msgstr:["паузирано"]},"Upload files":{msgid:"Upload files",msgstr:["Прикачување датотеки"]}}}}},{locale:"mn",json:{charset:"utf-8",headers:{"Last-Translator":"BATKHUYAG Ganbold, 2023","Language-Team":"Mongolian (https://app.transifex.com/nextcloud/teams/64236/mn/)","Content-Type":"text/plain; charset=UTF-8",Language:"mn","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nBATKHUYAG Ganbold, 2023\n"},msgstr:["Last-Translator: BATKHUYAG Ganbold, 2023\nLanguage-Team: Mongolian (https://app.transifex.com/nextcloud/teams/64236/mn/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: mn\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} секунд үлдсэн"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["{time} үлдсэн"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["хэдхэн секунд үлдсэн"]},Add:{msgid:"Add",msgstr:["Нэмэх"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Илгээлтийг цуцлах"]},"estimating time left":{msgid:"estimating time left",msgstr:["Үлдсэн хугацааг тооцоолж байна"]},paused:{msgid:"paused",msgstr:["түр зогсоосон"]},"Upload files":{msgid:"Upload files",msgstr:["Файл илгээх"]}}}}},{locale:"mr",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Marathi (https://www.transifex.com/nextcloud/teams/64236/mr/)","Content-Type":"text/plain; charset=UTF-8",Language:"mr","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Marathi (https://www.transifex.com/nextcloud/teams/64236/mr/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: mr\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"ms_MY",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Malay (Malaysia) (https://www.transifex.com/nextcloud/teams/64236/ms_MY/)","Content-Type":"text/plain; charset=UTF-8",Language:"ms_MY","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Malay (Malaysia) (https://www.transifex.com/nextcloud/teams/64236/ms_MY/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ms_MY\nPlural-Forms: nplurals=1; plural=0;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"my",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Burmese (https://www.transifex.com/nextcloud/teams/64236/my/)","Content-Type":"text/plain; charset=UTF-8",Language:"my","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Burmese (https://www.transifex.com/nextcloud/teams/64236/my/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: my\nPlural-Forms: nplurals=1; plural=0;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"nb_NO",json:{charset:"utf-8",headers:{"Last-Translator":"Syvert Fossdal, 2024","Language-Team":"Norwegian Bokmål (Norway) (https://app.transifex.com/nextcloud/teams/64236/nb_NO/)","Content-Type":"text/plain; charset=UTF-8",Language:"nb_NO","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ , 2023\nSyvert Fossdal, 2024\n"},msgstr:["Last-Translator: Syvert Fossdal, 2024\nLanguage-Team: Norwegian Bokmål (Norway) (https://app.transifex.com/nextcloud/teams/64236/nb_NO/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: nb_NO\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} file conflict","{count} filkonflikter"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} file conflict in {dirname}","{count} filkonflikter i {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} sekunder igjen"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} igjen"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["noen få sekunder igjen"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Avbryt opplastninger"]},Continue:{msgid:"Continue",msgstr:["Fortsett"]},"estimating time left":{msgid:"estimating time left",msgstr:["Estimerer tid igjen"]},"Existing version":{msgid:"Existing version",msgstr:["Gjeldende versjon"]},"If you select both versions, the copied file will have a number added to its name.":{msgid:"If you select both versions, the copied file will have a number added to its name.",msgstr:["Hvis du velger begge versjoner, vil den kopierte filen få et tall lagt til navnet."]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Siste gang redigert ukjent"]},New:{msgid:"New",msgstr:["Ny"]},"New version":{msgid:"New version",msgstr:["Ny versjon"]},paused:{msgid:"paused",msgstr:["pauset"]},"Preview image":{msgid:"Preview image",msgstr:["Forhåndsvis bilde"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Velg alle"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Velg alle eksisterende filer"]},"Select all new files":{msgid:"Select all new files",msgstr:["Velg alle nye filer"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Skip this file","Hopp over {count} filer"]},"Unknown size":{msgid:"Unknown size",msgstr:["Ukjent størrelse"]},"Upload cancelled":{msgid:"Upload cancelled",msgstr:["Opplasting avbrutt"]},"Upload files":{msgid:"Upload files",msgstr:["Last opp filer"]},"Upload progress":{msgid:"Upload progress",msgstr:["Fremdrift, opplasting"]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Hvilke filer vil du beholde?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Du må velge minst en versjon av hver fil for å fortsette."]}}}}},{locale:"ne",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Nepali (https://www.transifex.com/nextcloud/teams/64236/ne/)","Content-Type":"text/plain; charset=UTF-8",Language:"ne","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Nepali (https://www.transifex.com/nextcloud/teams/64236/ne/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ne\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"nl",json:{charset:"utf-8",headers:{"Last-Translator":"Rico , 2023","Language-Team":"Dutch (https://app.transifex.com/nextcloud/teams/64236/nl/)","Content-Type":"text/plain; charset=UTF-8",Language:"nl","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nRico , 2023\n"},msgstr:["Last-Translator: Rico , 2023\nLanguage-Team: Dutch (https://app.transifex.com/nextcloud/teams/64236/nl/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: nl\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["Nog {seconds} seconden"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["{seconds} over"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["Nog een paar seconden"]},Add:{msgid:"Add",msgstr:["Voeg toe"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Uploads annuleren"]},"estimating time left":{msgid:"estimating time left",msgstr:["Schatting van de resterende tijd"]},paused:{msgid:"paused",msgstr:["Gepauzeerd"]},"Upload files":{msgid:"Upload files",msgstr:["Upload bestanden"]}}}}},{locale:"nn",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Norwegian Nynorsk (https://www.transifex.com/nextcloud/teams/64236/nn/)","Content-Type":"text/plain; charset=UTF-8",Language:"nn","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Norwegian Nynorsk (https://www.transifex.com/nextcloud/teams/64236/nn/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: nn\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"nn_NO",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Norwegian Nynorsk (Norway) (https://www.transifex.com/nextcloud/teams/64236/nn_NO/)","Content-Type":"text/plain; charset=UTF-8",Language:"nn_NO","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Norwegian Nynorsk (Norway) (https://www.transifex.com/nextcloud/teams/64236/nn_NO/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: nn_NO\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"oc",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Occitan (post 1500) (https://www.transifex.com/nextcloud/teams/64236/oc/)","Content-Type":"text/plain; charset=UTF-8",Language:"oc","Plural-Forms":"nplurals=2; plural=(n > 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Occitan (post 1500) (https://www.transifex.com/nextcloud/teams/64236/oc/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: oc\nPlural-Forms: nplurals=2; plural=(n > 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"pl",json:{charset:"utf-8",headers:{"Last-Translator":"Piotr Strębski , 2024","Language-Team":"Polish (https://app.transifex.com/nextcloud/teams/64236/pl/)","Content-Type":"text/plain; charset=UTF-8",Language:"pl","Plural-Forms":"nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nPiotr Strębski , 2024\n"},msgstr:["Last-Translator: Piotr Strębski , 2024\nLanguage-Team: Polish (https://app.transifex.com/nextcloud/teams/64236/pl/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: pl\nPlural-Forms: nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);\n"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["konflikt 1 pliku","{count} konfliktów plików","{count} konfliktów plików","{count} konfliktów plików"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} konfliktowy plik w {dirname}","{count} konfliktowych plików w {dirname}","{count} konfliktowych plików w {dirname}","{count} konfliktowych plików w {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["Pozostało {seconds} sekund"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["Pozostało {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["Pozostało kilka sekund"]},Cancel:{msgid:"Cancel",msgstr:["Anuluj"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Anuluj całą operację"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Anuluj wysyłanie"]},Continue:{msgid:"Continue",msgstr:["Kontynuuj"]},"estimating time left":{msgid:"estimating time left",msgstr:["Szacowanie pozostałego czasu"]},"Existing version":{msgid:"Existing version",msgstr:["Istniejąca wersja"]},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Jeśli wybierzesz obie wersje, do nazwy pliku przychodzącego zostanie dodany numer."]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Nieznana data ostatniej modyfikacji"]},New:{msgid:"New",msgstr:["Nowy"]},"New version":{msgid:"New version",msgstr:["Nowa wersja"]},paused:{msgid:"paused",msgstr:["Wstrzymane"]},"Preview image":{msgid:"Preview image",msgstr:["Podgląd obrazu"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Zaznacz wszystkie boxy"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Zaznacz wszystkie istniejące pliki"]},"Select all new files":{msgid:"Select all new files",msgstr:["Zaznacz wszystkie nowe pliki"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Pomiń 1 plik","Pomiń {count} plików","Pomiń {count} plików","Pomiń {count} plików"]},"Unknown size":{msgid:"Unknown size",msgstr:["Nieznany rozmiar"]},"Upload cancelled":{msgid:"Upload cancelled",msgstr:["Anulowano wysyłanie"]},"Upload files":{msgid:"Upload files",msgstr:["Wyślij pliki"]},"Upload progress":{msgid:"Upload progress",msgstr:["Postęp wysyłania"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Po wybraniu folderu przychodzącego wszelkie znajdujące się w nim pliki powodujące konflikt również zostaną nadpisane."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Po wybraniu folderu przychodzącego zawartość jest zapisywana w istniejącym folderze i przeprowadzane jest rekursywne rozwiązywanie konfliktów."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Które pliki chcesz zachować?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Aby kontynuować, musisz wybrać co najmniej jedną wersję każdego pliku."]}}}}},{locale:"ps",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Pashto (https://www.transifex.com/nextcloud/teams/64236/ps/)","Content-Type":"text/plain; charset=UTF-8",Language:"ps","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Pashto (https://www.transifex.com/nextcloud/teams/64236/ps/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ps\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"pt_BR",json:{charset:"utf-8",headers:{"Last-Translator":"Leonardo Colman Lopes , 2024","Language-Team":"Portuguese (Brazil) (https://app.transifex.com/nextcloud/teams/64236/pt_BR/)","Content-Type":"text/plain; charset=UTF-8",Language:"pt_BR","Plural-Forms":"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nLeonardo Colman Lopes , 2024\n"},msgstr:["Last-Translator: Leonardo Colman Lopes , 2024\nLanguage-Team: Portuguese (Brazil) (https://app.transifex.com/nextcloud/teams/64236/pt_BR/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: pt_BR\nPlural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} arquivos em conflito","{count} arquivos em conflito","{count} arquivos em conflito"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} conflitos de arquivo em {dirname}","{count} conflitos de arquivo em {dirname}","{count} conflitos de arquivo em {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} segundos restantes"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} restante"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["alguns segundos restantes"]},Cancel:{msgid:"Cancel",msgstr:["Cancelar"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Cancelar a operação inteira"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Cancelar uploads"]},Continue:{msgid:"Continue",msgstr:["Continuar"]},"estimating time left":{msgid:"estimating time left",msgstr:["estimando tempo restante"]},"Existing version":{msgid:"Existing version",msgstr:["Versão existente"]},"If you select both versions, the copied file will have a number added to its name.":{msgid:"If you select both versions, the copied file will have a number added to its name.",msgstr:["Se você selecionar ambas as versões, o arquivo copiado terá um número adicionado ao seu nome."]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Data da última modificação desconhecida"]},New:{msgid:"New",msgstr:["Novo"]},"New version":{msgid:"New version",msgstr:["Nova versão"]},paused:{msgid:"paused",msgstr:["pausado"]},"Preview image":{msgid:"Preview image",msgstr:["Visualizar imagem"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Marque todas as caixas de seleção"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Selecione todos os arquivos existentes"]},"Select all new files":{msgid:"Select all new files",msgstr:["Selecione todos os novos arquivos"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Ignorar {count} arquivos","Ignorar {count} arquivos","Ignorar {count} arquivos"]},"Unknown size":{msgid:"Unknown size",msgstr:["Tamanho desconhecido"]},"Upload cancelled":{msgid:"Upload cancelled",msgstr:["Envio cancelado"]},"Upload files":{msgid:"Upload files",msgstr:["Enviar arquivos"]},"Upload progress":{msgid:"Upload progress",msgstr:["Envio em progresso"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Quando uma pasta é selecionada, quaisquer arquivos dentro dela também serão sobrescritos."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Quais arquivos você deseja manter?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Você precisa selecionar pelo menos uma versão de cada arquivo para continuar."]}}}}},{locale:"pt_PT",json:{charset:"utf-8",headers:{"Last-Translator":"Manuela Silva , 2022","Language-Team":"Portuguese (Portugal) (https://www.transifex.com/nextcloud/teams/64236/pt_PT/)","Content-Type":"text/plain; charset=UTF-8",Language:"pt_PT","Plural-Forms":"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nManuela Silva , 2022\n"},msgstr:["Last-Translator: Manuela Silva , 2022\nLanguage-Team: Portuguese (Portugal) (https://www.transifex.com/nextcloud/teams/64236/pt_PT/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: pt_PT\nPlural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["faltam {seconds} segundo(s)"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["faltam {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["faltam uns segundos"]},Add:{msgid:"Add",msgstr:["Adicionar"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Cancelar envios"]},"estimating time left":{msgid:"estimating time left",msgstr:["tempo em falta estimado"]},paused:{msgid:"paused",msgstr:["pausado"]},"Upload files":{msgid:"Upload files",msgstr:["Enviar ficheiros"]}}}}},{locale:"ro",json:{charset:"utf-8",headers:{"Last-Translator":"Mădălin Vasiliu , 2022","Language-Team":"Romanian (https://www.transifex.com/nextcloud/teams/64236/ro/)","Content-Type":"text/plain; charset=UTF-8",Language:"ro","Plural-Forms":"nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?2:1));"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nMădălin Vasiliu , 2022\n"},msgstr:["Last-Translator: Mădălin Vasiliu , 2022\nLanguage-Team: Romanian (https://www.transifex.com/nextcloud/teams/64236/ro/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ro\nPlural-Forms: nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?2:1));\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} secunde rămase"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["{time} rămas"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["câteva secunde rămase"]},Add:{msgid:"Add",msgstr:["Adaugă"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Anulați încărcările"]},"estimating time left":{msgid:"estimating time left",msgstr:["estimarea timpului rămas"]},paused:{msgid:"paused",msgstr:["pus pe pauză"]},"Upload files":{msgid:"Upload files",msgstr:["Încarcă fișiere"]}}}}},{locale:"ru",json:{charset:"utf-8",headers:{"Last-Translator":"Влад, 2024","Language-Team":"Russian (https://app.transifex.com/nextcloud/teams/64236/ru/)","Content-Type":"text/plain; charset=UTF-8",Language:"ru","Plural-Forms":"nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nAlex , 2024\nВлад, 2024\n"},msgstr:["Last-Translator: Влад, 2024\nLanguage-Team: Russian (https://app.transifex.com/nextcloud/teams/64236/ru/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ru\nPlural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\n"]},'"{filename}" contains invalid characters, how do you want to continue?':{msgid:'"{filename}" contains invalid characters, how do you want to continue?',msgstr:['"{filename}" содержит недопустимые символы, хотите продолжить?']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["конфликт {count} файла","конфликт {count} файлов","конфликт {count} файлов","конфликт {count} файлов"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["конфликт {count} файла в {dirname}","конфликт {count} файлов в {dirname}","конфликт {count} файлов в {dirname}","конфликт {count} файлов в {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["осталось {seconds} секунд"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["осталось {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["осталось несколько секунд"]},Cancel:{msgid:"Cancel",msgstr:["Отмена"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Отменить всю операцию целиком"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Отменить загрузки"]},Continue:{msgid:"Continue",msgstr:["Продолжить"]},"Create new":{msgid:"Create new",msgstr:["Создать новое"]},"estimating time left":{msgid:"estimating time left",msgstr:["оценка оставшегося времени"]},"Existing version":{msgid:"Existing version",msgstr:["Текущая версия"]},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Если вы выберете обе версии, к имени входящего файла будет добавлен номер."]},"Invalid file name":{msgid:"Invalid file name",msgstr:["Имя файла недопустимо"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Дата последнего изменения неизвестна"]},New:{msgid:"New",msgstr:["Новый"]},"New version":{msgid:"New version",msgstr:["Новая версия"]},paused:{msgid:"paused",msgstr:["приостановлено"]},"Preview image":{msgid:"Preview image",msgstr:["Предварительный просмотр"]},Rename:{msgid:"Rename",msgstr:["Переименовать"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Установить все флажки"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Выбрать все существующие файлы"]},"Select all new files":{msgid:"Select all new files",msgstr:["Выбрать все новые файлы"]},Skip:{msgid:"Skip",msgstr:["Пропуск"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Пропустить файл","Пропустить {count} файла","Пропустить {count} файлов","Пропустить {count} файлов"]},"Unknown size":{msgid:"Unknown size",msgstr:["Неизвестный размер"]},"Upload files":{msgid:"Upload files",msgstr:["Загрузка файлов"]},"Upload folders":{msgid:"Upload folders",msgstr:["Загрузка папок"]},"Upload from device":{msgid:"Upload from device",msgstr:["Загрузка с устройства"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Загрузка была отменена"]},"Upload progress":{msgid:"Upload progress",msgstr:["Состояние передачи на сервер"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Когда выбрана входящая папка, все конфликтующие файлы в ней также будут перезаписаны."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Когда выбрана входящая папка, содержимое записывается в существующую папку и выполняется рекурсивное разрешение конфликтов."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Какие файлы вы хотите сохранить?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Для продолжения вам нужно выбрать по крайней мере одну версию каждого файла."]}}}}},{locale:"ru_RU",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Russian (Russia) (https://www.transifex.com/nextcloud/teams/64236/ru_RU/)","Content-Type":"text/plain; charset=UTF-8",Language:"ru_RU","Plural-Forms":"nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Russian (Russia) (https://www.transifex.com/nextcloud/teams/64236/ru_RU/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ru_RU\nPlural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"sc",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Sardinian (https://www.transifex.com/nextcloud/teams/64236/sc/)","Content-Type":"text/plain; charset=UTF-8",Language:"sc","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Sardinian (https://www.transifex.com/nextcloud/teams/64236/sc/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sc\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"si",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Sinhala (https://www.transifex.com/nextcloud/teams/64236/si/)","Content-Type":"text/plain; charset=UTF-8",Language:"si","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Sinhala (https://www.transifex.com/nextcloud/teams/64236/si/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: si\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"si_LK",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Sinhala (Sri Lanka) (https://www.transifex.com/nextcloud/teams/64236/si_LK/)","Content-Type":"text/plain; charset=UTF-8",Language:"si_LK","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Sinhala (Sri Lanka) (https://www.transifex.com/nextcloud/teams/64236/si_LK/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: si_LK\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"sk_SK",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Slovak (Slovakia) (https://www.transifex.com/nextcloud/teams/64236/sk_SK/)","Content-Type":"text/plain; charset=UTF-8",Language:"sk_SK","Plural-Forms":"nplurals=4; plural=(n % 1 == 0 && n == 1 ? 0 : n % 1 == 0 && n >= 2 && n <= 4 ? 1 : n % 1 != 0 ? 2: 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Slovak (Slovakia) (https://www.transifex.com/nextcloud/teams/64236/sk_SK/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sk_SK\nPlural-Forms: nplurals=4; plural=(n % 1 == 0 && n == 1 ? 0 : n % 1 == 0 && n >= 2 && n <= 4 ? 1 : n % 1 != 0 ? 2: 3);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"sl",json:{charset:"utf-8",headers:{"Last-Translator":"Matej Urbančič <>, 2022","Language-Team":"Slovenian (https://www.transifex.com/nextcloud/teams/64236/sl/)","Content-Type":"text/plain; charset=UTF-8",Language:"sl","Plural-Forms":"nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nMatej Urbančič <>, 2022\n"},msgstr:["Last-Translator: Matej Urbančič <>, 2022\nLanguage-Team: Slovenian (https://www.transifex.com/nextcloud/teams/64236/sl/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sl\nPlural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["še {seconds} sekund"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["še {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["še nekaj sekund"]},Add:{msgid:"Add",msgstr:["Dodaj"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Prekliči pošiljanje"]},"estimating time left":{msgid:"estimating time left",msgstr:["ocenjen čas do konca"]},paused:{msgid:"paused",msgstr:["v premoru"]},"Upload files":{msgid:"Upload files",msgstr:["Pošlji datoteke"]}}}}},{locale:"sl_SI",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Slovenian (Slovenia) (https://www.transifex.com/nextcloud/teams/64236/sl_SI/)","Content-Type":"text/plain; charset=UTF-8",Language:"sl_SI","Plural-Forms":"nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Slovenian (Slovenia) (https://www.transifex.com/nextcloud/teams/64236/sl_SI/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sl_SI\nPlural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"sq",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Albanian (https://www.transifex.com/nextcloud/teams/64236/sq/)","Content-Type":"text/plain; charset=UTF-8",Language:"sq","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Albanian (https://www.transifex.com/nextcloud/teams/64236/sq/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sq\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"sr",json:{charset:"utf-8",headers:{"Last-Translator":"Иван Пешић, 2023","Language-Team":"Serbian (https://app.transifex.com/nextcloud/teams/64236/sr/)","Content-Type":"text/plain; charset=UTF-8",Language:"sr","Plural-Forms":"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ , 2023\nИван Пешић, 2023\n"},msgstr:["Last-Translator: Иван Пешић, 2023\nLanguage-Team: Serbian (https://app.transifex.com/nextcloud/teams/64236/sr/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sr\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} фајл конфликт","{count} фајл конфликта","{count} фајл конфликта"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} фајл конфликт у {dirname}","{count} фајл конфликта у {dirname}","{count} фајл конфликта у {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["преостало је {seconds} секунди"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} преостало"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["преостало је неколико секунди"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Обустави отпремања"]},Continue:{msgid:"Continue",msgstr:["Настави"]},"estimating time left":{msgid:"estimating time left",msgstr:["процена преосталог времена"]},"Existing version":{msgid:"Existing version",msgstr:["Постојећа верзија"]},"If you select both versions, the copied file will have a number added to its name.":{msgid:"If you select both versions, the copied file will have a number added to its name.",msgstr:["Ако изаберете обе верзије, на име копираног фајла ће се додати број."]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Није познат датум последње измене"]},New:{msgid:"New",msgstr:["Ново"]},"New version":{msgid:"New version",msgstr:["Нова верзија"]},paused:{msgid:"paused",msgstr:["паузирано"]},"Preview image":{msgid:"Preview image",msgstr:["Слика прегледа"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Штиклирај сва поља за штиклирање"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Изабери све постојеће фајлове"]},"Select all new files":{msgid:"Select all new files",msgstr:["Изабери све нове фајлове"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Прескочи овај фајл","Прескочи {count} фајла","Прескочи {count} фајлова"]},"Unknown size":{msgid:"Unknown size",msgstr:["Непозната величина"]},"Upload cancelled":{msgid:"Upload cancelled",msgstr:["Отпремање је отказано"]},"Upload files":{msgid:"Upload files",msgstr:["Отпреми фајлове"]},"Upload progress":{msgid:"Upload progress",msgstr:["Напредак отпремања"]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Које фајлове желите да задржите?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Морате да изаберете барем једну верзију сваког фајла да наставите."]}}}}},{locale:"sr@latin",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Serbian (Latin) (https://www.transifex.com/nextcloud/teams/64236/sr@latin/)","Content-Type":"text/plain; charset=UTF-8",Language:"sr@latin","Plural-Forms":"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Serbian (Latin) (https://www.transifex.com/nextcloud/teams/64236/sr@latin/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sr@latin\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"sv",json:{charset:"utf-8",headers:{"Last-Translator":"Magnus Höglund, 2024","Language-Team":"Swedish (https://app.transifex.com/nextcloud/teams/64236/sv/)","Content-Type":"text/plain; charset=UTF-8",Language:"sv","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nMagnus Höglund, 2024\n"},msgstr:["Last-Translator: Magnus Höglund, 2024\nLanguage-Team: Swedish (https://app.transifex.com/nextcloud/teams/64236/sv/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sv\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{filename}" contains invalid characters, how do you want to continue?':{msgid:'"{filename}" contains invalid characters, how do you want to continue?',msgstr:['"{filename}" innehåller ogiltiga tecken, hur vill du fortsätta?']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} filkonflikt","{count} filkonflikter"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} filkonflikt i {dirname}","{count} filkonflikter i {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} sekunder kvarstår"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} kvarstår"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["några sekunder kvar"]},Cancel:{msgid:"Cancel",msgstr:["Avbryt"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Avbryt hela operationen"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Avbryt uppladdningar"]},Continue:{msgid:"Continue",msgstr:["Fortsätt"]},"Create new":{msgid:"Create new",msgstr:["Skapa ny"]},"estimating time left":{msgid:"estimating time left",msgstr:["uppskattar kvarstående tid"]},"Existing version":{msgid:"Existing version",msgstr:["Nuvarande version"]},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Om du väljer båda versionerna kommer den inkommande filen att läggas till ett nummer i namnet."]},"Invalid file name":{msgid:"Invalid file name",msgstr:["Ogiltigt filnamn"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Senaste ändringsdatum okänt"]},New:{msgid:"New",msgstr:["Ny"]},"New version":{msgid:"New version",msgstr:["Ny version"]},paused:{msgid:"paused",msgstr:["pausad"]},"Preview image":{msgid:"Preview image",msgstr:["Förhandsgranska bild"]},Rename:{msgid:"Rename",msgstr:["Byt namn"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Markera alla kryssrutor"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Välj alla befintliga filer"]},"Select all new files":{msgid:"Select all new files",msgstr:["Välj alla nya filer"]},Skip:{msgid:"Skip",msgstr:["Hoppa över"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Hoppa över denna fil","Hoppa över {count} filer"]},"Unknown size":{msgid:"Unknown size",msgstr:["Okänd storlek"]},"Upload files":{msgid:"Upload files",msgstr:["Ladda upp filer"]},"Upload folders":{msgid:"Upload folders",msgstr:["Ladda upp mappar"]},"Upload from device":{msgid:"Upload from device",msgstr:["Ladda upp från enhet"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Uppladdningen har avbrutits"]},"Upload progress":{msgid:"Upload progress",msgstr:["Uppladdningsförlopp"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["När en inkommande mapp väljs skrivs även alla konfliktande filer i den över."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["När en inkommande mapp väljs skrivs innehållet in i den befintliga mappen och en rekursiv konfliktlösning utförs."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Vilka filer vill du behålla?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Du måste välja minst en version av varje fil för att fortsätta."]}}}}},{locale:"sw",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Swahili (https://www.transifex.com/nextcloud/teams/64236/sw/)","Content-Type":"text/plain; charset=UTF-8",Language:"sw","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Swahili (https://www.transifex.com/nextcloud/teams/64236/sw/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sw\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"ta",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Tamil (https://www.transifex.com/nextcloud/teams/64236/ta/)","Content-Type":"text/plain; charset=UTF-8",Language:"ta","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Tamil (https://www.transifex.com/nextcloud/teams/64236/ta/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ta\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"ta_LK",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Tamil (Sri-Lanka) (https://www.transifex.com/nextcloud/teams/64236/ta_LK/)","Content-Type":"text/plain; charset=UTF-8",Language:"ta_LK","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Tamil (Sri-Lanka) (https://www.transifex.com/nextcloud/teams/64236/ta_LK/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ta_LK\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"th",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Thai (https://www.transifex.com/nextcloud/teams/64236/th/)","Content-Type":"text/plain; charset=UTF-8",Language:"th","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Thai (https://www.transifex.com/nextcloud/teams/64236/th/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: th\nPlural-Forms: nplurals=1; plural=0;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"th_TH",json:{charset:"utf-8",headers:{"Last-Translator":"Phongpanot Phairat , 2022","Language-Team":"Thai (Thailand) (https://www.transifex.com/nextcloud/teams/64236/th_TH/)","Content-Type":"text/plain; charset=UTF-8",Language:"th_TH","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nPhongpanot Phairat , 2022\n"},msgstr:["Last-Translator: Phongpanot Phairat , 2022\nLanguage-Team: Thai (Thailand) (https://www.transifex.com/nextcloud/teams/64236/th_TH/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: th_TH\nPlural-Forms: nplurals=1; plural=0;\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["เหลืออีก {seconds} วินาที"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["เหลืออีก {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["เหลืออีกไม่กี่วินาที"]},Add:{msgid:"Add",msgstr:["เพิ่ม"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["ยกเลิกการอัปโหลด"]},"estimating time left":{msgid:"estimating time left",msgstr:["กำลังคำนวณเวลาที่เหลือ"]},paused:{msgid:"paused",msgstr:["หยุดชั่วคราว"]},"Upload files":{msgid:"Upload files",msgstr:["อัปโหลดไฟล์"]}}}}},{locale:"tk",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Turkmen (https://www.transifex.com/nextcloud/teams/64236/tk/)","Content-Type":"text/plain; charset=UTF-8",Language:"tk","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Turkmen (https://www.transifex.com/nextcloud/teams/64236/tk/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: tk\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"tr",json:{charset:"utf-8",headers:{"Last-Translator":"Kaya Zeren , 2024","Language-Team":"Turkish (https://app.transifex.com/nextcloud/teams/64236/tr/)","Content-Type":"text/plain; charset=UTF-8",Language:"tr","Plural-Forms":"nplurals=2; plural=(n > 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nKaya Zeren , 2024\n"},msgstr:["Last-Translator: Kaya Zeren , 2024\nLanguage-Team: Turkish (https://app.transifex.com/nextcloud/teams/64236/tr/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: tr\nPlural-Forms: nplurals=2; plural=(n > 1);\n"]},'"{filename}" contains invalid characters, how do you want to continue?':{msgid:'"{filename}" contains invalid characters, how do you want to continue?',msgstr:['"{filename}" içinde geçersiz karakterler var. Nasıl ilerlemek istersiniz?']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} dosya çakışması var","{count} dosya çakışması var"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{dirname} klasöründe {count} dosya çakışması var","{dirname} klasöründe {count} dosya çakışması var"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} saniye kaldı"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} kaldı"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["bir kaç saniye kaldı"]},Cancel:{msgid:"Cancel",msgstr:["İptal"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Tüm işlemi iptal et"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Yüklemeleri iptal et"]},Continue:{msgid:"Continue",msgstr:["İlerle"]},"Create new":{msgid:"Create new",msgstr:["Yeni ekle"]},"estimating time left":{msgid:"estimating time left",msgstr:["öngörülen kalan süre"]},"Existing version":{msgid:"Existing version",msgstr:["Var olan sürüm"]},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["İki sürümü de seçerseniz, gelen dosyanın adına bir sayı eklenir."]},"Invalid file name":{msgid:"Invalid file name",msgstr:["Dosya adı geçersiz"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Son değiştirilme tarihi bilinmiyor"]},New:{msgid:"New",msgstr:["Yeni"]},"New version":{msgid:"New version",msgstr:["Yeni sürüm"]},paused:{msgid:"paused",msgstr:["duraklatıldı"]},"Preview image":{msgid:"Preview image",msgstr:["Görsel ön izlemesi"]},Rename:{msgid:"Rename",msgstr:["Yeniden adlandır"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Tüm kutuları işaretle"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Tüm var olan dosyaları seç"]},"Select all new files":{msgid:"Select all new files",msgstr:["Tüm yeni dosyaları seç"]},Skip:{msgid:"Skip",msgstr:["Atla"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Bu dosyayı atla","{count} dosyayı atla"]},"Unknown size":{msgid:"Unknown size",msgstr:["Boyut bilinmiyor"]},"Upload files":{msgid:"Upload files",msgstr:["Dosyaları yükle"]},"Upload folders":{msgid:"Upload folders",msgstr:["Klasörleri yükle"]},"Upload from device":{msgid:"Upload from device",msgstr:["Aygıttan yükle"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Yükleme iptal edildi"]},"Upload progress":{msgid:"Upload progress",msgstr:["Yükleme ilerlemesi"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Bir gelen klasör seçildiğinde, içindeki çakışan dosyaların da üzerine yazılır."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Bir gelen klasörü seçildiğinde içerik var olan klasöre yazılır ve yinelemeli bir çakışma çözümü uygulanır."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Hangi dosyaları tutmak istiyorsunuz?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["İlerlemek için her dosyanın en az bir sürümünü seçmelisiniz."]}}}}},{locale:"ug",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Uyghur (https://www.transifex.com/nextcloud/teams/64236/ug/)","Content-Type":"text/plain; charset=UTF-8",Language:"ug","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Uyghur (https://www.transifex.com/nextcloud/teams/64236/ug/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ug\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"uk",json:{charset:"utf-8",headers:{"Last-Translator":"O St , 2024","Language-Team":"Ukrainian (https://app.transifex.com/nextcloud/teams/64236/uk/)","Content-Type":"text/plain; charset=UTF-8",Language:"uk","Plural-Forms":"nplurals=4; plural=(n % 1 == 0 && n % 10 == 1 && n % 100 != 11 ? 0 : n % 1 == 0 && n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 12 || n % 100 > 14) ? 1 : n % 1 == 0 && (n % 10 ==0 || (n % 10 >=5 && n % 10 <=9) || (n % 100 >=11 && n % 100 <=14 )) ? 2: 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nO St , 2024\n"},msgstr:["Last-Translator: O St , 2024\nLanguage-Team: Ukrainian (https://app.transifex.com/nextcloud/teams/64236/uk/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: uk\nPlural-Forms: nplurals=4; plural=(n % 1 == 0 && n % 10 == 1 && n % 100 != 11 ? 0 : n % 1 == 0 && n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 12 || n % 100 > 14) ? 1 : n % 1 == 0 && (n % 10 ==0 || (n % 10 >=5 && n % 10 <=9) || (n % 100 >=11 && n % 100 <=14 )) ? 2: 3);\n"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} конфліктний файл","{count} конфліктних файли","{count} конфліктних файлів","{count} конфліктних файлів"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} конфліктний файл у каталозі {dirname}","{count} конфліктних файли у каталозі {dirname}","{count} конфліктних файлів у каталозі {dirname}","{count} конфліктних файлів у каталозі {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["Залишилося {seconds} секунд"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["Залишилося {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["залишилося кілька секунд"]},Cancel:{msgid:"Cancel",msgstr:["Скасувати"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Скасувати операцію повністю"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Скасувати завантаження"]},Continue:{msgid:"Continue",msgstr:["Продовжити"]},"estimating time left":{msgid:"estimating time left",msgstr:["оцінка часу, що залишився"]},"Existing version":{msgid:"Existing version",msgstr:["Присутня версія"]},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Якщо буде вибрано обидві версії, до імени вхідного файлу було додано цифру."]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Дата останньої зміни невідома"]},New:{msgid:"New",msgstr:["Нове"]},"New version":{msgid:"New version",msgstr:["Нова версія"]},paused:{msgid:"paused",msgstr:["призупинено"]},"Preview image":{msgid:"Preview image",msgstr:["Попередній перегляд"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Вибрати все"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Вибрати усі присутні файли"]},"Select all new files":{msgid:"Select all new files",msgstr:["Вибрати усі нові файли"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Пропустити файл","Пропустити {count} файли","Пропустити {count} файлів","Пропустити {count} файлів"]},"Unknown size":{msgid:"Unknown size",msgstr:["Невідомий розмір"]},"Upload cancelled":{msgid:"Upload cancelled",msgstr:["Завантаження скасовано"]},"Upload files":{msgid:"Upload files",msgstr:["Завантажити файли"]},"Upload progress":{msgid:"Upload progress",msgstr:["Поступ завантаження"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Усі конфліктні файли у вибраному каталозі призначення буде перезаписано поверх."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Якщо буде вибрано вхідний каталог, вміст буде записано до наявного каталогу та вирішено конфлікти у відповідних файлах каталогу та підкаталогів."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Які файли залишити?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Для продовження потрібно вибрати принаймні одну версію для кожного файлу."]}}}}},{locale:"ur_PK",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Urdu (Pakistan) (https://www.transifex.com/nextcloud/teams/64236/ur_PK/)","Content-Type":"text/plain; charset=UTF-8",Language:"ur_PK","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Urdu (Pakistan) (https://www.transifex.com/nextcloud/teams/64236/ur_PK/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ur_PK\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"uz",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Uzbek (https://www.transifex.com/nextcloud/teams/64236/uz/)","Content-Type":"text/plain; charset=UTF-8",Language:"uz","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Uzbek (https://www.transifex.com/nextcloud/teams/64236/uz/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: uz\nPlural-Forms: nplurals=1; plural=0;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"vi",json:{charset:"utf-8",headers:{"Last-Translator":"Tung DangQuang, 2023","Language-Team":"Vietnamese (https://app.transifex.com/nextcloud/teams/64236/vi/)","Content-Type":"text/plain; charset=UTF-8",Language:"vi","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ , 2023\nTung DangQuang, 2023\n"},msgstr:["Last-Translator: Tung DangQuang, 2023\nLanguage-Team: Vietnamese (https://app.transifex.com/nextcloud/teams/64236/vi/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: vi\nPlural-Forms: nplurals=1; plural=0;\n"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} Tập tin xung đột"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} tập tin lỗi trong {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["Còn {second} giây"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["Còn lại {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["Còn lại một vài giây"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Huỷ tải lên"]},Continue:{msgid:"Continue",msgstr:["Tiếp Tục"]},"estimating time left":{msgid:"estimating time left",msgstr:["Thời gian còn lại dự kiến"]},"Existing version":{msgid:"Existing version",msgstr:["Phiên Bản Hiện Tại"]},"If you select both versions, the copied file will have a number added to its name.":{msgid:"If you select both versions, the copied file will have a number added to its name.",msgstr:["Nếu bạn chọn cả hai phiên bản, tệp được sao chép sẽ có thêm một số vào tên của nó."]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Ngày sửa dổi lần cuối không xác định"]},New:{msgid:"New",msgstr:["Tạo Mới"]},"New version":{msgid:"New version",msgstr:["Phiên Bản Mới"]},paused:{msgid:"paused",msgstr:["đã tạm dừng"]},"Preview image":{msgid:"Preview image",msgstr:["Xem Trước Ảnh"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Chọn tất cả hộp checkbox"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Chọn tất cả các tập tin có sẵn"]},"Select all new files":{msgid:"Select all new files",msgstr:["Chọn tất cả các tập tin mới"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Bỏ Qua {count} tập tin"]},"Unknown size":{msgid:"Unknown size",msgstr:["Không rõ dung lượng"]},"Upload cancelled":{msgid:"Upload cancelled",msgstr:["Dừng Tải Lên"]},"Upload files":{msgid:"Upload files",msgstr:["Tập tin tải lên"]},"Upload progress":{msgid:"Upload progress",msgstr:["Đang Tải Lên"]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Bạn muốn giữ tập tin nào?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Bạn cần chọn ít nhất một phiên bản tập tin mới có thể tiếp tục"]}}}}},{locale:"zh_CN",json:{charset:"utf-8",headers:{"Last-Translator":"Hongbo Chen, 2023","Language-Team":"Chinese (China) (https://app.transifex.com/nextcloud/teams/64236/zh_CN/)","Content-Type":"text/plain; charset=UTF-8",Language:"zh_CN","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ , 2023\nHongbo Chen, 2023\n"},msgstr:["Last-Translator: Hongbo Chen, 2023\nLanguage-Team: Chinese (China) (https://app.transifex.com/nextcloud/teams/64236/zh_CN/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: zh_CN\nPlural-Forms: nplurals=1; plural=0;\n"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count}文件冲突"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["在{dirname}目录下有{count}个文件冲突"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["剩余 {seconds} 秒"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["剩余 {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["还剩几秒"]},Add:{msgid:"Add",msgstr:["添加"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["取消上传"]},Continue:{msgid:"Continue",msgstr:["继续"]},"estimating time left":{msgid:"estimating time left",msgstr:["估计剩余时间"]},"Existing version":{msgid:"Existing version",msgstr:["版本已存在"]},"If you select both versions, the copied file will have a number added to its name.":{msgid:"If you select both versions, the copied file will have a number added to its name.",msgstr:["如果选择所有的版本,新增版本的文件名为原文件名加数字"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["文件最后修改日期未知"]},"New version":{msgid:"New version",msgstr:["新版本"]},paused:{msgid:"paused",msgstr:["已暂停"]},"Preview image":{msgid:"Preview image",msgstr:["图片预览"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["选择所有的选择框"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["选择所有存在的文件"]},"Select all new files":{msgid:"Select all new files",msgstr:["选择所有的新文件"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["跳过{count}个文件"]},"Unknown size":{msgid:"Unknown size",msgstr:["文件大小未知"]},"Upload cancelled":{msgid:"Upload cancelled",msgstr:["取消上传"]},"Upload files":{msgid:"Upload files",msgstr:["上传文件"]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["你要保留哪些文件?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["每个文件至少选择一个版本"]}}}}},{locale:"zh_HK",json:{charset:"utf-8",headers:{"Last-Translator":"Café Tango, 2024","Language-Team":"Chinese (Hong Kong) (https://app.transifex.com/nextcloud/teams/64236/zh_HK/)","Content-Type":"text/plain; charset=UTF-8",Language:"zh_HK","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nCafé Tango, 2024\n"},msgstr:["Last-Translator: Café Tango, 2024\nLanguage-Team: Chinese (Hong Kong) (https://app.transifex.com/nextcloud/teams/64236/zh_HK/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: zh_HK\nPlural-Forms: nplurals=1; plural=0;\n"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} 個檔案衝突"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{dirname} 中有 {count} 個檔案衝突"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["剩餘 {seconds} 秒"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["剩餘 {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["還剩幾秒"]},Cancel:{msgid:"Cancel",msgstr:["取消"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["取消整個操作"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["取消上傳"]},Continue:{msgid:"Continue",msgstr:["繼續"]},"estimating time left":{msgid:"estimating time left",msgstr:["估計剩餘時間"]},"Existing version":{msgid:"Existing version",msgstr:["既有版本"]},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["若您選取兩個版本,傳入檔案的名稱將會新增編號。"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["最後修改日期不詳"]},New:{msgid:"New",msgstr:["新增"]},"New version":{msgid:"New version",msgstr:["新版本 "]},paused:{msgid:"paused",msgstr:["已暫停"]},"Preview image":{msgid:"Preview image",msgstr:["預覽圖片"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["選取所有核取方塊"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["選取所有既有檔案"]},"Select all new files":{msgid:"Select all new files",msgstr:["選取所有新檔案"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["略過 {count} 個檔案"]},"Unknown size":{msgid:"Unknown size",msgstr:["大小不詳"]},"Upload cancelled":{msgid:"Upload cancelled",msgstr:["已取消上傳"]},"Upload files":{msgid:"Upload files",msgstr:["上傳檔案"]},"Upload progress":{msgid:"Upload progress",msgstr:["上傳進度"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["選取傳入資料夾後,其中任何的衝突檔案都會被覆寫。"]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["選擇傳入資料夾後,內容將寫入現有資料夾並執行遞歸衝突解決。"]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["您想保留哪些檔案?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["您必須為每個檔案都至少選取一個版本以繼續。"]}}}}},{locale:"zh_TW",json:{charset:"utf-8",headers:{"Last-Translator":"黃柏諺 , 2024","Language-Team":"Chinese (Taiwan) (https://app.transifex.com/nextcloud/teams/64236/zh_TW/)","Content-Type":"text/plain; charset=UTF-8",Language:"zh_TW","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\n黃柏諺 , 2024\n"},msgstr:["Last-Translator: 黃柏諺 , 2024\nLanguage-Team: Chinese (Taiwan) (https://app.transifex.com/nextcloud/teams/64236/zh_TW/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: zh_TW\nPlural-Forms: nplurals=1; plural=0;\n"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} 個檔案衝突"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{dirname} 中有 {count} 個檔案衝突"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["剩餘 {seconds} 秒"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["剩餘 {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["還剩幾秒"]},Cancel:{msgid:"Cancel",msgstr:["取消"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["取消整個操作"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["取消上傳"]},Continue:{msgid:"Continue",msgstr:["繼續"]},"estimating time left":{msgid:"estimating time left",msgstr:["估計剩餘時間"]},"Existing version":{msgid:"Existing version",msgstr:["既有版本"]},"If you select both versions, the copied file will have a number added to its name.":{msgid:"If you select both versions, the copied file will have a number added to its name.",msgstr:["若您選取兩個版本,複製的檔案的名稱將會新增編號。"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["最後修改日期未知"]},New:{msgid:"New",msgstr:["新增"]},"New version":{msgid:"New version",msgstr:["新版本"]},paused:{msgid:"paused",msgstr:["已暫停"]},"Preview image":{msgid:"Preview image",msgstr:["預覽圖片"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["選取所有核取方塊"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["選取所有既有檔案"]},"Select all new files":{msgid:"Select all new files",msgstr:["選取所有新檔案"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["略過 {count} 檔案"]},"Unknown size":{msgid:"Unknown size",msgstr:["未知大小"]},"Upload cancelled":{msgid:"Upload cancelled",msgstr:["已取消上傳"]},"Upload files":{msgid:"Upload files",msgstr:["上傳檔案"]},"Upload progress":{msgid:"Upload progress",msgstr:["上傳進度"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["選取傳入資料夾後,其中任何的衝突檔案都會被覆寫。"]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["您想保留哪些檔案?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["您必須為每個檔案都至少選取一個版本以繼續。"]}}}}}].map((e=>he.addTranslation(e.locale,e.json)));const ve=he.build(),we=ve.ngettext.bind(ve),Ae=ve.gettext.bind(ve),Ce=(0,Z.YK)().setApp("@nextcloud/upload").detectUser().build();var ye=(e=>(e[e.IDLE=0]="IDLE",e[e.UPLOADING=1]="UPLOADING",e[e.PAUSED=2]="PAUSED",e))(ye||{});class xe{_destinationFolder;_isPublic;_uploadQueue=[];_jobQueue=new N({concurrency:3});_queueSize=0;_queueProgress=0;_queueStatus=0;_notifiers=[];constructor(e=!1,t){if(this._isPublic=e,!t){const s=(0,x.join)(C.PY,C.lJ);let n;if(e)n="anonymous";else{const e=(0,A.HW)()?.uid;if(!e)throw new Error("User is not logged in");n=e}t=new C.vd({id:0,owner:n,permissions:C.aX.ALL,root:C.lJ,source:s})}this.destination=t,this._jobQueue.addListener("idle",(()=>this.reset())),Ce.debug("Upload workspace initialized",{destination:this.destination,root:this.root,isPublic:e,maxChunksSize:me()})}get destination(){return this._destinationFolder}set destination(e){if(!e)throw new Error("Invalid destination folder");Ce.debug("Destination set",{folder:e}),this._destinationFolder=e}get root(){return this._destinationFolder.source}get queue(){return this._uploadQueue}reset(){this._uploadQueue.splice(0,this._uploadQueue.length),this._jobQueue.clear(),this._queueSize=0,this._queueProgress=0,this._queueStatus=0}pause(){this._jobQueue.pause(),this._queueStatus=2}start(){this._jobQueue.start(),this._queueStatus=1,this.updateStats()}get info(){return{size:this._queueSize,progress:this._queueProgress,status:this._queueStatus}}updateStats(){const e=this._uploadQueue.map((e=>e.size)).reduce(((e,t)=>e+t),0),t=this._uploadQueue.map((e=>e.uploaded)).reduce(((e,t)=>e+t),0);this._queueSize=e,this._queueProgress=t,2!==this._queueStatus&&(this._queueStatus=this._jobQueue.size>0?1:0)}addNotifier(e){this._notifiers.push(e)}_notifyAll(e){for(const t of this._notifiers)try{t(e)}catch(t){Ce.warn("Error in upload notifier",{error:t,source:e.source})}}batchUpload(e,t,s){const n=new pe("",t);s||(s=async e=>e);try{return this._jobQueue.concurrency+=1,new k((async(t,i,a)=>{try{const i=await this._jobQueue.add((()=>{const t=this.uploadDirectory(e,n,s,(0,C.H4)(this.root));return a((()=>t.cancel())),t}));i&&t(i)}catch(e){Ce.error("Error in batch upload",{error:e})}i(Ae("Upload has been cancelled"))}))}finally{this._jobQueue.concurrency-=1}}uploadDirectory(e,t,s,n){const i=(0,x.normalize)(`${e}/${t.name}`).replace(/\/$/,""),a=`${this.root.replace(/\/$/,"")}/${i.replace(/^\//,"")}`;return new k((async(e,r,o)=>{const l=new AbortController;o((()=>l.abort()));const d=await s(t.children,i);if(!1===d)return void r(Ae("Upload has been cancelled"));const c=[],u=[],m=new fe(a,!1,0,t);m.signal.addEventListener("abort",(()=>r(Ae("Upload has been cancelled")))),m.status=ge.UPLOADING;try{if(t.name)try{await n.createDirectory(i,{signal:l.signal}),u.push(new k((e=>e(m)))),this._uploadQueue.push(m)}catch(e){if(!e||"object"!=typeof e||!("status"in e)||405!==e.status)throw e;Ce.debug("Directory already exists, writing into it",{directory:t.name})}for(const e of d)e instanceof pe?c.push(this.uploadDirectory(i,e,s,n)):u.push(this.upload(`${i}/${e.name}`,e));l.signal.addEventListener("abort",(()=>{u.forEach((e=>e.cancel())),c.forEach((e=>e.cancel()))}));const a=await Promise.all(u),r=await Promise.all(c);m.status=ge.FINISHED,e([a,...r].flat())}catch(e){l.abort(e),m.status=ge.FAILED,r(e)}finally{t.name&&(this._notifyAll(m),this.updateStats())}}))}upload(e,t,s,n=5){const i=`${(s=s||this.root).replace(/\/$/,"")}/${e.replace(/^\//,"")}`,{origin:a}=new URL(i),r=a+(0,y.O0)(i.slice(a.length));return Ce.debug(`Uploading ${t.name} to ${r}`),new k((async(e,s,a)=>{le(t)&&(t=await new Promise((e=>t.file(e,s))));const o=t,l=me("size"in o?o.size:void 0),d=this._isPublic||0===l||"size"in o&&o.size{try{c.response=await ce(r,t,c.signal,(e=>{c.uploaded=c.uploaded+e.bytes,this.updateStats()}),void 0,{"X-OC-Mtime":o.lastModified/1e3,"Content-Type":o.type}),c.uploaded=c.size,this.updateStats(),Ce.debug(`Successfully uploaded ${o.name}`,{file:o,upload:c}),e(c)}catch(e){if((0,b.FZ)(e))return c.status=ge.FAILED,void s(Ae("Upload has been cancelled"));e?.response&&(c.response=e.response),c.status=ge.FAILED,Ce.error(`Failed uploading ${o.name}`,{error:e,file:o,upload:c}),s("Failed uploading the file")}this._notifyAll(c)};this._jobQueue.add(n),this.updateStats()}else{Ce.debug("Initializing chunked upload",{file:o,upload:c});const t=await async function(e,t=5){const s=`${(0,B.dC)(`dav/uploads/${(0,A.HW)()?.uid}`)}/web-file-upload-${[...Array(16)].map((()=>Math.floor(16*Math.random()).toString(16))).join("")}`,n=e?{Destination:e}:void 0;return await b.Ay.request({method:"MKCOL",url:s,headers:n,"axios-retry":{retries:t,retryDelay:(e,t)=>G.exponentialDelay(e,t,1e3)}}),s}(r,n),i=[];for(let e=0;eue(o,s,l),u=()=>ce(`${t}/${e+1}`,d,c.signal,(()=>this.updateStats()),r,{"X-OC-Mtime":o.lastModified/1e3,"OC-Total-Length":o.size,"Content-Type":"application/octet-stream"},n).then((()=>{c.uploaded=c.uploaded+l})).catch((t=>{if(507===t?.response?.status)throw Ce.error("Upload failed, not enough space on the server or quota exceeded. Cancelling the remaining chunks",{error:t,upload:c}),c.cancel(),c.status=ge.FAILED,t;throw(0,b.FZ)(t)||(Ce.error(`Chunk ${e+1} ${s} - ${a} uploading failed`,{error:t,upload:c}),c.cancel(),c.status=ge.FAILED),t}));i.push(this._jobQueue.add(u))}try{await Promise.all(i),this.updateStats(),c.response=await b.Ay.request({method:"MOVE",url:`${t}/.file`,headers:{"X-OC-Mtime":o.lastModified/1e3,"OC-Total-Length":o.size,Destination:r}}),this.updateStats(),c.status=ge.FINISHED,Ce.debug(`Successfully uploaded ${o.name}`,{file:o,upload:c}),e(c)}catch(e){(0,b.FZ)(e)?(c.status=ge.FAILED,s(Ae("Upload has been cancelled"))):(c.status=ge.FAILED,s("Failed assembling the chunks together")),b.Ay.request({method:"DELETE",url:`${t}`})}this._notifyAll(c)}return c}))}}function be(e,t,s,n,i,a,r,o){var l,d="function"==typeof e?e.options:e;if(t&&(d.render=t,d.staticRenderFns=s,d._compiled=!0),n&&(d.functional=!0),a&&(d._scopeId="data-v-"+a),r?(l=function(e){(e=e||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext)||"undefined"==typeof __VUE_SSR_CONTEXT__||(e=__VUE_SSR_CONTEXT__),i&&i.call(this,e),e&&e._registeredComponents&&e._registeredComponents.add(r)},d._ssrRegister=l):i&&(l=o?function(){i.call(this,(d.functional?this.parent:this).$root.$options.shadowRoot)}:i),l)if(d.functional){d._injectStyles=l;var c=d.render;d.render=function(e,t){return l.call(t),c(e,t)}}else{var u=d.beforeCreate;d.beforeCreate=u?[].concat(u,l):[l]}return{exports:e,options:d}}const _e=be({name:"CancelIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},(function(){var e=this,t=e._self._c;return t("span",e._b({staticClass:"material-design-icon cancel-icon",attrs:{"aria-hidden":!e.title||null,"aria-label":e.title,role:"img"},on:{click:function(t){return e.$emit("click",t)}}},"span",e.$attrs,!1),[t("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[t("path",{attrs:{d:"M12 2C17.5 2 22 6.5 22 12S17.5 22 12 22 2 17.5 2 12 6.5 2 12 2M12 4C10.1 4 8.4 4.6 7.1 5.7L18.3 16.9C19.3 15.5 20 13.8 20 12C20 7.6 16.4 4 12 4M16.9 18.3L5.7 7.1C4.6 8.4 4 10.1 4 12C4 16.4 7.6 20 12 20C13.9 20 15.6 19.4 16.9 18.3Z"}},[e.title?t("title",[e._v(e._s(e.title))]):e._e()])])])}),[],!1,null,null,null,null).exports,Te=be({name:"FolderUploadIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},(function(){var e=this,t=e._self._c;return t("span",e._b({staticClass:"material-design-icon folder-upload-icon",attrs:{"aria-hidden":!e.title||null,"aria-label":e.title,role:"img"},on:{click:function(t){return e.$emit("click",t)}}},"span",e.$attrs,!1),[t("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[t("path",{attrs:{d:"M20,6A2,2 0 0,1 22,8V18A2,2 0 0,1 20,20H4A2,2 0 0,1 2,18V6A2,2 0 0,1 4,4H10L12,6H20M10.75,13H14V17H16V13H19.25L15,8.75"}},[e.title?t("title",[e._v(e._s(e.title))]):e._e()])])])}),[],!1,null,null,null,null).exports,ke=be({name:"PlusIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},(function(){var e=this,t=e._self._c;return t("span",e._b({staticClass:"material-design-icon plus-icon",attrs:{"aria-hidden":!e.title||null,"aria-label":e.title,role:"img"},on:{click:function(t){return e.$emit("click",t)}}},"span",e.$attrs,!1),[t("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[t("path",{attrs:{d:"M19,13H13V19H11V13H5V11H11V5H13V11H19V13Z"}},[e.title?t("title",[e._v(e._s(e.title))]):e._e()])])])}),[],!1,null,null,null,null).exports,Se=be({name:"UploadIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},(function(){var e=this,t=e._self._c;return t("span",e._b({staticClass:"material-design-icon upload-icon",attrs:{"aria-hidden":!e.title||null,"aria-label":e.title,role:"img"},on:{click:function(t){return e.$emit("click",t)}}},"span",e.$attrs,!1),[t("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[t("path",{attrs:{d:"M9,16V10H5L12,3L19,10H15V16H9M5,20V18H19V20H5Z"}},[e.title?t("title",[e._v(e._s(e.title))]):e._e()])])])}),[],!1,null,null,null,null).exports,Le=w.Ay.extend({name:"UploadPicker",components:{IconCancel:_e,IconFolderUpload:Te,IconPlus:ke,IconUpload:Se,NcActionButton:te.A,NcActionCaption:se.A,NcActionSeparator:ne.A,NcActions:ie.A,NcButton:ae.A,NcIconSvgWrapper:re.A,NcProgressBar:oe.A},props:{accept:{type:Array,default:null},disabled:{type:Boolean,default:!1},multiple:{type:Boolean,default:!1},destination:{type:C.vd,default:void 0},allowFolders:{type:Boolean,default:!1},content:{type:[Array,Function],default:()=>[]},forbiddenCharacters:{type:Array,default:()=>[]}},setup:()=>({t:Ae,progressTimeId:`nc-uploader-progress-${Math.random().toString(36).slice(7)}`}),data:()=>({eta:null,timeLeft:"",currentContent:[],newFileMenuEntries:[],uploadManager:Ee()}),computed:{menuEntriesUpload(){return this.newFileMenuEntries.filter((e=>e.category===C.a7.UploadFromDevice))},menuEntriesNew(){return this.newFileMenuEntries.filter((e=>e.category===C.a7.CreateNew))},menuEntriesOther(){return this.newFileMenuEntries.filter((e=>e.category===C.a7.Other))},canUploadFolders(){return this.allowFolders&&"webkitdirectory"in document.createElement("input")},totalQueueSize(){return this.uploadManager.info?.size||0},uploadedQueueSize(){return this.uploadManager.info?.progress||0},progress(){return Math.round(this.uploadedQueueSize/this.totalQueueSize*100)||0},queue(){return this.uploadManager.queue},hasFailure(){return 0!==this.queue?.filter((e=>e.status===ge.FAILED)).length},isUploading(){return this.queue?.length>0},isAssembling(){return 0!==this.queue?.filter((e=>e.status===ge.ASSEMBLING)).length},isPaused(){return this.uploadManager.info?.status===ye.PAUSED},buttonName(){if(!this.isUploading)return Ae("New")}},watch:{allowFolders:{immediate:!0,handler(){"function"!=typeof this.content&&this.allowFolders&&Ce.error("[UploadPicker] Setting `allowFolders` is only allowed if `content` is a function")}},content:{immediate:!0,async handler(){this.currentContent=await this.getContent()}},destination(e){this.setDestination(e)},totalQueueSize(e){this.eta=ee({min:0,max:e}),this.updateStatus()},uploadedQueueSize(e){this.eta?.report?.(e),this.updateStatus()},isPaused(e){e?this.$emit("paused",this.queue):this.$emit("resumed",this.queue)}},beforeMount(){this.destination&&this.setDestination(this.destination),this.uploadManager.addNotifier(this.onUploadCompletion),Ce.debug("UploadPicker initialised")},methods:{onTriggerPick(e=!1){const t=this.$refs.input;this.canUploadFolders&&(t.webkitdirectory=e),this.$nextTick((()=>t.click()))},async getContent(e){return Array.isArray(this.content)?this.content:await this.content(e)},showInvalidFileNameDialog:async e=>new k((async(t,s)=>{await(new X.ik).setName(Ae("Invalid file name")).setSeverity("error").setText(Ae('"{filename}" contains invalid characters, how do you want to continue?',{filename:e})).setButtons([{label:Ae("Cancel"),type:"error",callback:s},{label:Ae("Skip"),callback:()=>t(!1)},{label:Ae("Rename"),type:"primary",callback:()=>t(!0)}]).build().show()})),async handleConflicts(e,t){try{const s=""===t?this.currentContent:await this.getContent(t).catch((()=>[])),n=Be(e,s);if(n.length>0){const{selected:i,renamed:a}=await Pe(t,n,s,{recursive:!0});e=[...i,...a]}const i=[];for(const t of e)if(this.forbiddenCharacters.some((e=>t.name.includes(e)))){if(await this.showInvalidFileNameDialog(t.name)){let s=this.replaceInvalidCharacters(t.name);s=(0,C.E6)(s,e.map((e=>e.name))),Object.defineProperty(t,"name",{value:s}),i.push(t)}}else i.push(t);return i}catch(e){return Ce.debug("Upload has been cancelled",{error:e}),(0,X.I9)(Ae("Upload has been cancelled")),!1}},replaceInvalidCharacters(e){const t=["-","_"," "].filter((e=>!this.forbiddenCharacters.includes(e)))[0]??"x";return this.forbiddenCharacters.forEach((s=>{e=e.replaceAll(s,t)})),e},onPick(){const e=this.$refs.input,t=e.files?Array.from(e.files):[];this.uploadManager.batchUpload("",t,this.handleConflicts).catch((e=>Ce.debug("Error while uploading",{error:e}))).finally((()=>this.resetForm()))},resetForm(){const e=this.$refs.form;e?.reset()},onCancel(){this.uploadManager.queue.forEach((e=>{e.cancel()})),this.resetForm()},updateStatus(){if(this.isPaused)return void(this.timeLeft=Ae("paused"));const e=Math.round(this.eta.estimate());if(e!==1/0)if(e<10)this.timeLeft=Ae("a few seconds left");else if(e>60){const t=new Date(0);t.setSeconds(e);const s=t.toISOString().slice(11,19);this.timeLeft=Ae("{time} left",{time:s})}else this.timeLeft=Ae("{seconds} seconds left",{seconds:e});else this.timeLeft=Ae("estimating time left")},setDestination(e){this.destination?(this.uploadManager.destination=e,this.newFileMenuEntries=(0,C.m1)(e)):Ce.debug("Invalid destination")},onUploadCompletion(e){e.status===ge.FAILED?this.$emit("failed",e):this.$emit("uploaded",e)}}}),Fe=be(Le,(function(){var e=this,t=e._self._c;return e._self._setupProxy,e.destination?t("form",{ref:"form",staticClass:"upload-picker",class:{"upload-picker--uploading":e.isUploading,"upload-picker--paused":e.isPaused},attrs:{"data-cy-upload-picker":""}},[e.newFileMenuEntries&&0===e.newFileMenuEntries.length?t("NcButton",{attrs:{disabled:e.disabled,"data-cy-upload-picker-add":"",type:"secondary"},on:{click:function(t){return e.onTriggerPick()}},scopedSlots:e._u([{key:"icon",fn:function(){return[t("IconPlus",{attrs:{size:20}})]},proxy:!0}],null,!1,1991456921)},[e._v(" "+e._s(e.buttonName)+" ")]):t("NcActions",{attrs:{"menu-name":e.buttonName,"menu-title":e.t("New"),type:"secondary"},scopedSlots:e._u([{key:"icon",fn:function(){return[t("IconPlus",{attrs:{size:20}})]},proxy:!0}],null,!1,1991456921)},[t("NcActionCaption",{attrs:{name:e.t("Upload from device")}}),t("NcActionButton",{attrs:{"data-cy-upload-picker-add":"","close-after-click":!0},on:{click:function(t){return e.onTriggerPick()}},scopedSlots:e._u([{key:"icon",fn:function(){return[t("IconUpload",{attrs:{size:20}})]},proxy:!0}],null,!1,337456192)},[e._v(" "+e._s(e.t("Upload files"))+" ")]),e.canUploadFolders?t("NcActionButton",{attrs:{"close-after-click":"","data-cy-upload-picker-add-folders":""},on:{click:function(t){return e.onTriggerPick(!0)}},scopedSlots:e._u([{key:"icon",fn:function(){return[t("IconFolderUpload",{staticStyle:{color:"var(--color-primary-element)"},attrs:{size:20}})]},proxy:!0}],null,!1,1037549157)},[e._v(" "+e._s(e.t("Upload folders"))+" ")]):e._e(),e._l(e.menuEntriesUpload,(function(s){return t("NcActionButton",{key:s.id,staticClass:"upload-picker__menu-entry",attrs:{icon:s.iconClass,"close-after-click":!0},on:{click:function(t){return s.handler(e.destination,e.currentContent)}},scopedSlots:e._u([s.iconSvgInline?{key:"icon",fn:function(){return[t("NcIconSvgWrapper",{attrs:{svg:s.iconSvgInline}})]},proxy:!0}:null],null,!0)},[e._v(" "+e._s(s.displayName)+" ")])})),e.menuEntriesNew.length>0?[t("NcActionSeparator"),t("NcActionCaption",{attrs:{name:e.t("Create new")}}),e._l(e.menuEntriesNew,(function(s){return t("NcActionButton",{key:s.id,staticClass:"upload-picker__menu-entry",attrs:{icon:s.iconClass,"close-after-click":!0},on:{click:function(t){return s.handler(e.destination,e.currentContent)}},scopedSlots:e._u([s.iconSvgInline?{key:"icon",fn:function(){return[t("NcIconSvgWrapper",{attrs:{svg:s.iconSvgInline}})]},proxy:!0}:null],null,!0)},[e._v(" "+e._s(s.displayName)+" ")])}))]:e._e(),e.menuEntriesOther.length>0?[t("NcActionSeparator"),e._l(e.menuEntriesNew,(function(s){return t("NcActionButton",{key:s.id,staticClass:"upload-picker__menu-entry",attrs:{icon:s.iconClass,"close-after-click":!0},on:{click:function(t){return s.handler(e.destination,e.currentContent)}},scopedSlots:e._u([s.iconSvgInline?{key:"icon",fn:function(){return[t("NcIconSvgWrapper",{attrs:{svg:s.iconSvgInline}})]},proxy:!0}:null],null,!0)},[e._v(" "+e._s(s.displayName)+" ")])}))]:e._e()],2),t("div",{directives:[{name:"show",rawName:"v-show",value:e.isUploading,expression:"isUploading"}],staticClass:"upload-picker__progress"},[t("NcProgressBar",{attrs:{"aria-label":e.t("Upload progress"),"aria-describedby":e.progressTimeId,error:e.hasFailure,value:e.progress,size:"medium"}}),t("p",{attrs:{id:e.progressTimeId}},[e._v(" "+e._s(e.timeLeft)+" ")])],1),e.isUploading?t("NcButton",{staticClass:"upload-picker__cancel",attrs:{type:"tertiary","aria-label":e.t("Cancel uploads"),"data-cy-upload-picker-cancel":""},on:{click:e.onCancel},scopedSlots:e._u([{key:"icon",fn:function(){return[t("IconCancel",{attrs:{size:20}})]},proxy:!0}],null,!1,3076329829)}):e._e(),t("input",{ref:"input",staticClass:"hidden-visually",attrs:{accept:e.accept?.join?.(", "),multiple:e.multiple,"data-cy-upload-picker-input":"",type:"file"},on:{change:e.onPick}})],1):e._e()}),[],!1,null,"1f097873",null,null).exports;let Ue=null;function Ee(e=function(){return(0,v.C)("files_sharing","isPublic",null)??null!==document.querySelector('input#isPublic[type="hidden"][name="isPublic"][value="1"]')}(),t=!1){return Ue instanceof xe&&!t||(Ue=new xe(e)),Ue}async function Pe(e,t,n,i){const a=(0,w.$V)((()=>Promise.all([s.e(4208),s.e(6778)]).then(s.bind(s,26778))));return new Promise(((s,r)=>{const o=new w.Ay({name:"ConflictPickerRoot",render:l=>l(a,{props:{dirname:e,conflicts:t,content:n,recursiveUpload:!0===i?.recursive},on:{submit(e){s(e),o.$destroy(),o.$el?.parentNode?.removeChild(o.$el)},cancel(e){r(e??new Error("Canceled")),o.$destroy(),o.$el?.parentNode?.removeChild(o.$el)}}})});o.$mount(),document.body.appendChild(o.$el)}))}function Ne(e,t){return Be(e,t).length>0}function Be(e,t){const s=t.map((e=>e.basename));return e.filter((e=>{const t="basename"in e?e.basename:e.name;return-1!==s.indexOf(t)}))}}},a={};function r(e){var t=a[e];if(void 0!==t)return t.exports;var s=a[e]={id:e,loaded:!1,exports:{}};return i[e].call(s.exports,s,s.exports,r),s.loaded=!0,s.exports}r.m=i,e=[],r.O=(t,s,n,i)=>{if(!s){var a=1/0;for(c=0;c=i)&&Object.keys(r.O).every((e=>r.O[e](s[l])))?s.splice(l--,1):(o=!1,i0&&e[c-1][2]>i;c--)e[c]=e[c-1];e[c]=[s,n,i]},r.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return r.d(t,{a:t}),t},r.d=(e,t)=>{for(var s in t)r.o(t,s)&&!r.o(e,s)&&Object.defineProperty(e,s,{enumerable:!0,get:t[s]})},r.f={},r.e=e=>Promise.all(Object.keys(r.f).reduce(((t,s)=>(r.f[s](e,t),t)),[])),r.u=e=>e+"-"+e+".js?v="+{1110:"e20948a2fd7d006e5209",5455:"f19bb30c4edfe928a23c",6778:"05456eb4fc16e404b623"}[e],r.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),s={},n="nextcloud:",r.l=(e,t,i,a)=>{if(s[e])s[e].push(t);else{var o,l;if(void 0!==i)for(var d=document.getElementsByTagName("script"),c=0;c{o.onerror=o.onload=null,clearTimeout(g);var i=s[e];if(delete s[e],o.parentNode&&o.parentNode.removeChild(o),i&&i.forEach((e=>e(n))),t)return t(n)},g=setTimeout(m.bind(null,void 0,{type:"timeout",target:o}),12e4);o.onerror=m.bind(null,o.onerror),o.onload=m.bind(null,o.onload),l&&document.head.appendChild(o)}},r.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.nmd=e=>(e.paths=[],e.children||(e.children=[]),e),r.j=2882,(()=>{var e;r.g.importScripts&&(e=r.g.location+"");var t=r.g.document;if(!e&&t&&(t.currentScript&&(e=t.currentScript.src),!e)){var s=t.getElementsByTagName("script");if(s.length)for(var n=s.length-1;n>-1&&(!e||!/^http(s?):/.test(e));)e=s[n--].src}if(!e)throw new Error("Automatic publicPath is not supported in this browser");e=e.replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),r.p=e})(),(()=>{r.b=document.baseURI||self.location.href;var e={2882:0};r.f.j=(t,s)=>{var n=r.o(e,t)?e[t]:void 0;if(0!==n)if(n)s.push(n[2]);else{var i=new Promise(((s,i)=>n=e[t]=[s,i]));s.push(n[2]=i);var a=r.p+r.u(t),o=new Error;r.l(a,(s=>{if(r.o(e,t)&&(0!==(n=e[t])&&(e[t]=void 0),n)){var i=s&&("load"===s.type?"missing":s.type),a=s&&s.target&&s.target.src;o.message="Loading chunk "+t+" failed.\n("+i+": "+a+")",o.name="ChunkLoadError",o.type=i,o.request=a,n[1](o)}}),"chunk-"+t,t)}},r.O.j=t=>0===e[t];var t=(t,s)=>{var n,i,a=s[0],o=s[1],l=s[2],d=0;if(a.some((t=>0!==e[t]))){for(n in o)r.o(o,n)&&(r.m[n]=o[n]);if(l)var c=l(r)}for(t&&t(s);dr(81139)));o=r.O(o)})(); -//# sourceMappingURL=files-main.js.map?v=ad2a5b01443e9a82f104 \ No newline at end of file +(()=>{var e,s,n,i={9052:e=>{"use strict";var t=Object.prototype.hasOwnProperty,s="~";function n(){}function i(e,t,s){this.fn=e,this.context=t,this.once=s||!1}function a(e,t,n,a,r){if("function"!=typeof n)throw new TypeError("The listener must be a function");var o=new i(n,a||e,r),l=s?s+t:t;return e._events[l]?e._events[l].fn?e._events[l]=[e._events[l],o]:e._events[l].push(o):(e._events[l]=o,e._eventsCount++),e}function r(e,t){0==--e._eventsCount?e._events=new n:delete e._events[t]}function o(){this._events=new n,this._eventsCount=0}Object.create&&(n.prototype=Object.create(null),(new n).__proto__||(s=!1)),o.prototype.eventNames=function(){var e,n,i=[];if(0===this._eventsCount)return i;for(n in e=this._events)t.call(e,n)&&i.push(s?n.slice(1):n);return Object.getOwnPropertySymbols?i.concat(Object.getOwnPropertySymbols(e)):i},o.prototype.listeners=function(e){var t=s?s+e:e,n=this._events[t];if(!n)return[];if(n.fn)return[n.fn];for(var i=0,a=n.length,r=new Array(a);i{"use strict";var i={};n.r(i),n.d(i,{exclude:()=>N,extract:()=>S,parse:()=>L,parseUrl:()=>U,pick:()=>P,stringify:()=>F,stringifyUrl:()=>E});var a=n(65899),r=n(26304),o=n(21777),l=n(85471);const d=(0,a.Ey)();var c=n(63814);const u="%[a-f0-9]{2}",m=new RegExp("("+u+")|([^%]+?)","gi"),g=new RegExp("("+u+")+","gi");function f(e,t){try{return[decodeURIComponent(e.join(""))]}catch{}if(1===e.length)return e;t=t||1;const s=e.slice(0,t),n=e.slice(t);return Array.prototype.concat.call([],f(s),f(n))}function p(e){try{return decodeURIComponent(e)}catch{let t=e.match(m)||[];for(let s=1;snull==e,A=e=>encodeURIComponent(e).replaceAll(/[!'()*]/g,(e=>`%${e.charCodeAt(0).toString(16).toUpperCase()}`)),C=Symbol("encodeFragmentIdentifier");function y(e){if("string"!=typeof e||1!==e.length)throw new TypeError("arrayFormatSeparator must be single character string")}function x(e,t){return t.encode?t.strict?A(e):encodeURIComponent(e):e}function b(e,t){return t.decode?function(e){if("string"!=typeof e)throw new TypeError("Expected `encodedURI` to be of type `string`, got `"+typeof e+"`");try{return decodeURIComponent(e)}catch{return function(e){const t={"%FE%FF":"��","%FF%FE":"��"};let s=g.exec(e);for(;s;){try{t[s[0]]=decodeURIComponent(s[0])}catch{const e=p(s[0]);e!==s[0]&&(t[s[0]]=e)}s=g.exec(e)}t["%C2"]="�";const n=Object.keys(t);for(const s of n)e=e.replace(new RegExp(s,"g"),t[s]);return e}(e)}}(e):e}function _(e){return Array.isArray(e)?e.sort():"object"==typeof e?_(Object.keys(e)).sort(((e,t)=>Number(e)-Number(t))).map((t=>e[t])):e}function T(e){const t=e.indexOf("#");return-1!==t&&(e=e.slice(0,t)),e}function k(e,t){return t.parseNumbers&&!Number.isNaN(Number(e))&&"string"==typeof e&&""!==e.trim()?e=Number(e):!t.parseBooleans||null===e||"true"!==e.toLowerCase()&&"false"!==e.toLowerCase()||(e="true"===e.toLowerCase()),e}function S(e){const t=(e=T(e)).indexOf("?");return-1===t?"":e.slice(t+1)}function L(e,t){y((t={decode:!0,sort:!0,arrayFormat:"none",arrayFormatSeparator:",",parseNumbers:!1,parseBooleans:!1,...t}).arrayFormatSeparator);const s=function(e){let t;switch(e.arrayFormat){case"index":return(e,s,n)=>{t=/\[(\d*)]$/.exec(e),e=e.replace(/\[\d*]$/,""),t?(void 0===n[e]&&(n[e]={}),n[e][t[1]]=s):n[e]=s};case"bracket":return(e,s,n)=>{t=/(\[])$/.exec(e),e=e.replace(/\[]$/,""),t?void 0!==n[e]?n[e]=[...n[e],s]:n[e]=[s]:n[e]=s};case"colon-list-separator":return(e,s,n)=>{t=/(:list)$/.exec(e),e=e.replace(/:list$/,""),t?void 0!==n[e]?n[e]=[...n[e],s]:n[e]=[s]:n[e]=s};case"comma":case"separator":return(t,s,n)=>{const i="string"==typeof s&&s.includes(e.arrayFormatSeparator),a="string"==typeof s&&!i&&b(s,e).includes(e.arrayFormatSeparator);s=a?b(s,e):s;const r=i||a?s.split(e.arrayFormatSeparator).map((t=>b(t,e))):null===s?s:b(s,e);n[t]=r};case"bracket-separator":return(t,s,n)=>{const i=/(\[])$/.test(t);if(t=t.replace(/\[]$/,""),!i)return void(n[t]=s?b(s,e):s);const a=null===s?[]:s.split(e.arrayFormatSeparator).map((t=>b(t,e)));void 0!==n[t]?n[t]=[...n[t],...a]:n[t]=a};default:return(e,t,s)=>{void 0!==s[e]?s[e]=[...[s[e]].flat(),t]:s[e]=t}}}(t),n=Object.create(null);if("string"!=typeof e)return n;if(!(e=e.trim().replace(/^[?#&]/,"")))return n;for(const i of e.split("&")){if(""===i)continue;const e=t.decode?i.replaceAll("+"," "):i;let[a,r]=h(e,"=");void 0===a&&(a=e),r=void 0===r?null:["comma","separator","bracket-separator"].includes(t.arrayFormat)?r:b(r,t),s(b(a,t),r,n)}for(const[e,s]of Object.entries(n))if("object"==typeof s&&null!==s)for(const[e,n]of Object.entries(s))s[e]=k(n,t);else n[e]=k(s,t);return!1===t.sort?n:(!0===t.sort?Object.keys(n).sort():Object.keys(n).sort(t.sort)).reduce(((e,t)=>{const s=n[t];return e[t]=Boolean(s)&&"object"==typeof s&&!Array.isArray(s)?_(s):s,e}),Object.create(null))}function F(e,t){if(!e)return"";y((t={encode:!0,strict:!0,arrayFormat:"none",arrayFormatSeparator:",",...t}).arrayFormatSeparator);const s=s=>t.skipNull&&w(e[s])||t.skipEmptyString&&""===e[s],n=function(e){switch(e.arrayFormat){case"index":return t=>(s,n)=>{const i=s.length;return void 0===n||e.skipNull&&null===n||e.skipEmptyString&&""===n?s:null===n?[...s,[x(t,e),"[",i,"]"].join("")]:[...s,[x(t,e),"[",x(i,e),"]=",x(n,e)].join("")]};case"bracket":return t=>(s,n)=>void 0===n||e.skipNull&&null===n||e.skipEmptyString&&""===n?s:null===n?[...s,[x(t,e),"[]"].join("")]:[...s,[x(t,e),"[]=",x(n,e)].join("")];case"colon-list-separator":return t=>(s,n)=>void 0===n||e.skipNull&&null===n||e.skipEmptyString&&""===n?s:null===n?[...s,[x(t,e),":list="].join("")]:[...s,[x(t,e),":list=",x(n,e)].join("")];case"comma":case"separator":case"bracket-separator":{const t="bracket-separator"===e.arrayFormat?"[]=":"=";return s=>(n,i)=>void 0===i||e.skipNull&&null===i||e.skipEmptyString&&""===i?n:(i=null===i?"":i,0===n.length?[[x(s,e),t,x(i,e)].join("")]:[[n,x(i,e)].join(e.arrayFormatSeparator)])}default:return t=>(s,n)=>void 0===n||e.skipNull&&null===n||e.skipEmptyString&&""===n?s:null===n?[...s,x(t,e)]:[...s,[x(t,e),"=",x(n,e)].join("")]}}(t),i={};for(const[t,n]of Object.entries(e))s(t)||(i[t]=n);const a=Object.keys(i);return!1!==t.sort&&a.sort(t.sort),a.map((s=>{const i=e[s];return void 0===i?"":null===i?x(s,t):Array.isArray(i)?0===i.length&&"bracket-separator"===t.arrayFormat?x(s,t)+"[]":i.reduce(n(s),[]).join("&"):x(s,t)+"="+x(i,t)})).filter((e=>e.length>0)).join("&")}function U(e,t){t={decode:!0,...t};let[s,n]=h(e,"#");return void 0===s&&(s=e),{url:s?.split("?")?.[0]??"",query:L(S(e),t),...t&&t.parseFragmentIdentifier&&n?{fragmentIdentifier:b(n,t)}:{}}}function E(e,t){t={encode:!0,strict:!0,[C]:!0,...t};const s=T(e.url).split("?")[0]||"";let n=F({...L(S(e.url),{sort:!1}),...e.query},t);n&&=`?${n}`;let i=function(e){let t="";const s=e.indexOf("#");return-1!==s&&(t=e.slice(s)),t}(e.url);if("string"==typeof e.fragmentIdentifier){const n=new URL(s);n.hash=e.fragmentIdentifier,i=t[C]?n.hash:`#${e.fragmentIdentifier}`}return`${s}${n}${i}`}function P(e,t,s){s={parseFragmentIdentifier:!0,[C]:!1,...s};const{url:n,query:i,fragmentIdentifier:a}=U(e,s);return E({url:n,query:v(i,t),fragmentIdentifier:a},s)}function N(e,t,s){return P(e,Array.isArray(t)?e=>!t.includes(e):(e,s)=>!t(e,s),s)}const B=i;var I=n(96763);function z(e,t){for(var s in t)e[s]=t[s];return e}var D=/[!'()*]/g,R=function(e){return"%"+e.charCodeAt(0).toString(16)},j=/%2C/g,O=function(e){return encodeURIComponent(e).replace(D,R).replace(j,",")};function M(e){try{return decodeURIComponent(e)}catch(e){}return e}var V=function(e){return null==e||"object"==typeof e?e:String(e)};function $(e){var t={};return(e=e.trim().replace(/^(\?|#|&)/,""))?(e.split("&").forEach((function(e){var s=e.replace(/\+/g," ").split("="),n=M(s.shift()),i=s.length>0?M(s.join("=")):null;void 0===t[n]?t[n]=i:Array.isArray(t[n])?t[n].push(i):t[n]=[t[n],i]})),t):t}function q(e){var t=e?Object.keys(e).map((function(t){var s=e[t];if(void 0===s)return"";if(null===s)return O(t);if(Array.isArray(s)){var n=[];return s.forEach((function(e){void 0!==e&&(null===e?n.push(O(t)):n.push(O(t)+"="+O(e)))})),n.join("&")}return O(t)+"="+O(s)})).filter((function(e){return e.length>0})).join("&"):null;return t?"?"+t:""}var H=/\/?$/;function W(e,t,s,n){var i=n&&n.options.stringifyQuery,a=t.query||{};try{a=G(a)}catch(e){}var r={name:t.name||e&&e.name,meta:e&&e.meta||{},path:t.path||"/",hash:t.hash||"",query:a,params:t.params||{},fullPath:Q(t,i),matched:e?K(e):[]};return s&&(r.redirectedFrom=Q(s,i)),Object.freeze(r)}function G(e){if(Array.isArray(e))return e.map(G);if(e&&"object"==typeof e){var t={};for(var s in e)t[s]=G(e[s]);return t}return e}var Y=W(null,{path:"/"});function K(e){for(var t=[];e;)t.unshift(e),e=e.parent;return t}function Q(e,t){var s=e.path,n=e.query;void 0===n&&(n={});var i=e.hash;return void 0===i&&(i=""),(s||"/")+(t||q)(n)+i}function J(e,t,s){return t===Y?e===t:!!t&&(e.path&&t.path?e.path.replace(H,"")===t.path.replace(H,"")&&(s||e.hash===t.hash&&Z(e.query,t.query)):!(!e.name||!t.name)&&e.name===t.name&&(s||e.hash===t.hash&&Z(e.query,t.query)&&Z(e.params,t.params)))}function Z(e,t){if(void 0===e&&(e={}),void 0===t&&(t={}),!e||!t)return e===t;var s=Object.keys(e).sort(),n=Object.keys(t).sort();return s.length===n.length&&s.every((function(s,i){var a=e[s];if(n[i]!==s)return!1;var r=t[s];return null==a||null==r?a===r:"object"==typeof a&&"object"==typeof r?Z(a,r):String(a)===String(r)}))}function X(e){for(var t=0;t=0&&(t=e.slice(n),e=e.slice(0,n));var i=e.indexOf("?");return i>=0&&(s=e.slice(i+1),e=e.slice(0,i)),{path:e,query:s,hash:t}}(i.path||""),d=t&&t.path||"/",c=l.path?se(l.path,d,s||i.append):d,u=function(e,t,s){void 0===t&&(t={});var n,i=s||$;try{n=i(e||"")}catch(e){n={}}for(var a in t){var r=t[a];n[a]=Array.isArray(r)?r.map(V):V(r)}return n}(l.query,i.query,n&&n.options.parseQuery),m=i.hash||l.hash;return m&&"#"!==m.charAt(0)&&(m="#"+m),{_normalized:!0,path:c,query:u,hash:m}}var ye,xe=function(){},be={name:"RouterLink",props:{to:{type:[String,Object],required:!0},tag:{type:String,default:"a"},custom:Boolean,exact:Boolean,exactPath:Boolean,append:Boolean,replace:Boolean,activeClass:String,exactActiveClass:String,ariaCurrentValue:{type:String,default:"page"},event:{type:[String,Array],default:"click"}},render:function(e){var t=this,s=this.$router,n=this.$route,i=s.resolve(this.to,n,this.append),a=i.location,r=i.route,o=i.href,l={},d=s.options.linkActiveClass,c=s.options.linkExactActiveClass,u=null==d?"router-link-active":d,m=null==c?"router-link-exact-active":c,g=null==this.activeClass?u:this.activeClass,f=null==this.exactActiveClass?m:this.exactActiveClass,p=r.redirectedFrom?W(null,Ce(r.redirectedFrom),null,s):r;l[f]=J(n,p,this.exactPath),l[g]=this.exact||this.exactPath?l[f]:function(e,t){return 0===e.path.replace(H,"/").indexOf(t.path.replace(H,"/"))&&(!t.hash||e.hash===t.hash)&&function(e,t){for(var s in t)if(!(s in e))return!1;return!0}(e.query,t.query)}(n,p);var h=l[f]?this.ariaCurrentValue:null,v=function(e){_e(e)&&(t.replace?s.replace(a,xe):s.push(a,xe))},w={click:_e};Array.isArray(this.event)?this.event.forEach((function(e){w[e]=v})):w[this.event]=v;var A={class:l},C=!this.$scopedSlots.$hasNormal&&this.$scopedSlots.default&&this.$scopedSlots.default({href:o,route:r,navigate:v,isActive:l[g],isExactActive:l[f]});if(C){if(1===C.length)return C[0];if(C.length>1||!C.length)return 0===C.length?e():e("span",{},C)}if("a"===this.tag)A.on=w,A.attrs={href:o,"aria-current":h};else{var y=Te(this.$slots.default);if(y){y.isStatic=!1;var x=y.data=z({},y.data);for(var b in x.on=x.on||{},x.on){var _=x.on[b];b in w&&(x.on[b]=Array.isArray(_)?_:[_])}for(var T in w)T in x.on?x.on[T].push(w[T]):x.on[T]=v;var k=y.data.attrs=z({},y.data.attrs);k.href=o,k["aria-current"]=h}else A.on=w}return e(this.tag,A,this.$slots.default)}};function _e(e){if(!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey||e.defaultPrevented||void 0!==e.button&&0!==e.button)){if(e.currentTarget&&e.currentTarget.getAttribute){var t=e.currentTarget.getAttribute("target");if(/\b_blank\b/i.test(t))return}return e.preventDefault&&e.preventDefault(),!0}}function Te(e){if(e)for(var t,s=0;s-1&&(l.params[m]=s.params[m]);return l.path=Ae(c.path,l.params),o(c,l,r)}if(l.path){l.params={};for(var g=0;g-1}function st(e,t){return tt(e)&&e._isRouter&&(null==t||e.type===t)}function nt(e,t,s){var n=function(i){i>=e.length?s():e[i]?t(e[i],(function(){n(i+1)})):n(i+1)};n(0)}function it(e,t){return at(e.map((function(e){return Object.keys(e.components).map((function(s){return t(e.components[s],e.instances[s],e,s)}))})))}function at(e){return Array.prototype.concat.apply([],e)}var rt="function"==typeof Symbol&&"symbol"==typeof Symbol.toStringTag;function ot(e){var t=!1;return function(){for(var s=[],n=arguments.length;n--;)s[n]=arguments[n];if(!t)return t=!0,e.apply(this,s)}}var lt=function(e,t){this.router=e,this.base=function(e){if(!e)if(ke){var t=document.querySelector("base");e=(e=t&&t.getAttribute("href")||"/").replace(/^https?:\/\/[^\/]+/,"")}else e="/";return"/"!==e.charAt(0)&&(e="/"+e),e.replace(/\/$/,"")}(t),this.current=Y,this.pending=null,this.ready=!1,this.readyCbs=[],this.readyErrorCbs=[],this.errorCbs=[],this.listeners=[]};function dt(e,t,s,n){var i=it(e,(function(e,n,i,a){var r=function(e,t){return"function"!=typeof e&&(e=ye.extend(e)),e.options[t]}(e,t);if(r)return Array.isArray(r)?r.map((function(e){return s(e,n,i,a)})):s(r,n,i,a)}));return at(n?i.reverse():i)}function ct(e,t){if(t)return function(){return e.apply(t,arguments)}}lt.prototype.listen=function(e){this.cb=e},lt.prototype.onReady=function(e,t){this.ready?e():(this.readyCbs.push(e),t&&this.readyErrorCbs.push(t))},lt.prototype.onError=function(e){this.errorCbs.push(e)},lt.prototype.transitionTo=function(e,t,s){var n,i=this;try{n=this.router.match(e,this.current)}catch(e){throw this.errorCbs.forEach((function(t){t(e)})),e}var a=this.current;this.confirmTransition(n,(function(){i.updateRoute(n),t&&t(n),i.ensureURL(),i.router.afterHooks.forEach((function(e){e&&e(n,a)})),i.ready||(i.ready=!0,i.readyCbs.forEach((function(e){e(n)})))}),(function(e){s&&s(e),e&&!i.ready&&(st(e,Je.redirected)&&a===Y||(i.ready=!0,i.readyErrorCbs.forEach((function(t){t(e)}))))}))},lt.prototype.confirmTransition=function(e,t,s){var n=this,i=this.current;this.pending=e;var a,r,o=function(e){!st(e)&&tt(e)&&(n.errorCbs.length?n.errorCbs.forEach((function(t){t(e)})):I.error(e)),s&&s(e)},l=e.matched.length-1,d=i.matched.length-1;if(J(e,i)&&l===d&&e.matched[l]===i.matched[d])return this.ensureURL(),e.hash&&je(this.router,i,e,!1),o(((r=Xe(a=i,e,Je.duplicated,'Avoided redundant navigation to current location: "'+a.fullPath+'".')).name="NavigationDuplicated",r));var c,u=function(e,t){var s,n=Math.max(e.length,t.length);for(s=0;s0)){var t=this.router,s=t.options.scrollBehavior,n=Ye&&s;n&&this.listeners.push(Re());var i=function(){var s=e.current,i=mt(e.base);e.current===Y&&i===e._startLocation||e.transitionTo(i,(function(e){n&&je(t,e,s,!0)}))};window.addEventListener("popstate",i),this.listeners.push((function(){window.removeEventListener("popstate",i)}))}},t.prototype.go=function(e){window.history.go(e)},t.prototype.push=function(e,t,s){var n=this,i=this.current;this.transitionTo(e,(function(e){Ke(ne(n.base+e.fullPath)),je(n.router,e,i,!1),t&&t(e)}),s)},t.prototype.replace=function(e,t,s){var n=this,i=this.current;this.transitionTo(e,(function(e){Qe(ne(n.base+e.fullPath)),je(n.router,e,i,!1),t&&t(e)}),s)},t.prototype.ensureURL=function(e){if(mt(this.base)!==this.current.fullPath){var t=ne(this.base+this.current.fullPath);e?Ke(t):Qe(t)}},t.prototype.getCurrentLocation=function(){return mt(this.base)},t}(lt);function mt(e){var t=window.location.pathname,s=t.toLowerCase(),n=e.toLowerCase();return!e||s!==n&&0!==s.indexOf(ne(n+"/"))||(t=t.slice(e.length)),(t||"/")+window.location.search+window.location.hash}var gt=function(e){function t(t,s,n){e.call(this,t,s),n&&function(e){var t=mt(e);if(!/^\/#/.test(t))return window.location.replace(ne(e+"/#"+t)),!0}(this.base)||ft()}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.setupListeners=function(){var e=this;if(!(this.listeners.length>0)){var t=this.router.options.scrollBehavior,s=Ye&&t;s&&this.listeners.push(Re());var n=function(){var t=e.current;ft()&&e.transitionTo(pt(),(function(n){s&&je(e.router,n,t,!0),Ye||wt(n.fullPath)}))},i=Ye?"popstate":"hashchange";window.addEventListener(i,n),this.listeners.push((function(){window.removeEventListener(i,n)}))}},t.prototype.push=function(e,t,s){var n=this,i=this.current;this.transitionTo(e,(function(e){vt(e.fullPath),je(n.router,e,i,!1),t&&t(e)}),s)},t.prototype.replace=function(e,t,s){var n=this,i=this.current;this.transitionTo(e,(function(e){wt(e.fullPath),je(n.router,e,i,!1),t&&t(e)}),s)},t.prototype.go=function(e){window.history.go(e)},t.prototype.ensureURL=function(e){var t=this.current.fullPath;pt()!==t&&(e?vt(t):wt(t))},t.prototype.getCurrentLocation=function(){return pt()},t}(lt);function ft(){var e=pt();return"/"===e.charAt(0)||(wt("/"+e),!1)}function pt(){var e=window.location.href,t=e.indexOf("#");return t<0?"":e=e.slice(t+1)}function ht(e){var t=window.location.href,s=t.indexOf("#");return(s>=0?t.slice(0,s):t)+"#"+e}function vt(e){Ye?Ke(ht(e)):window.location.hash=e}function wt(e){Ye?Qe(ht(e)):window.location.replace(ht(e))}var At=function(e){function t(t,s){e.call(this,t,s),this.stack=[],this.index=-1}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.push=function(e,t,s){var n=this;this.transitionTo(e,(function(e){n.stack=n.stack.slice(0,n.index+1).concat(e),n.index++,t&&t(e)}),s)},t.prototype.replace=function(e,t,s){var n=this;this.transitionTo(e,(function(e){n.stack=n.stack.slice(0,n.index).concat(e),t&&t(e)}),s)},t.prototype.go=function(e){var t=this,s=this.index+e;if(!(s<0||s>=this.stack.length)){var n=this.stack[s];this.confirmTransition(n,(function(){var e=t.current;t.index=s,t.updateRoute(n),t.router.afterHooks.forEach((function(t){t&&t(n,e)}))}),(function(e){st(e,Je.duplicated)&&(t.index=s)}))}},t.prototype.getCurrentLocation=function(){var e=this.stack[this.stack.length-1];return e?e.fullPath:"/"},t.prototype.ensureURL=function(){},t}(lt),Ct=function(e){void 0===e&&(e={}),this.app=null,this.apps=[],this.options=e,this.beforeHooks=[],this.resolveHooks=[],this.afterHooks=[],this.matcher=Ue(e.routes||[],this);var t=e.mode||"hash";switch(this.fallback="history"===t&&!Ye&&!1!==e.fallback,this.fallback&&(t="hash"),ke||(t="abstract"),this.mode=t,t){case"history":this.history=new ut(this,e.base);break;case"hash":this.history=new gt(this,e.base,this.fallback);break;case"abstract":this.history=new At(this,e.base)}},yt={currentRoute:{configurable:!0}};Ct.prototype.match=function(e,t,s){return this.matcher.match(e,t,s)},yt.currentRoute.get=function(){return this.history&&this.history.current},Ct.prototype.init=function(e){var t=this;if(this.apps.push(e),e.$once("hook:destroyed",(function(){var s=t.apps.indexOf(e);s>-1&&t.apps.splice(s,1),t.app===e&&(t.app=t.apps[0]||null),t.app||t.history.teardown()})),!this.app){this.app=e;var s=this.history;if(s instanceof ut||s instanceof gt){var n=function(e){s.setupListeners(),function(e){var n=s.current,i=t.options.scrollBehavior;Ye&&i&&"fullPath"in e&&je(t,e,n,!1)}(e)};s.transitionTo(s.getCurrentLocation(),n,n)}s.listen((function(e){t.apps.forEach((function(t){t._route=e}))}))}},Ct.prototype.beforeEach=function(e){return bt(this.beforeHooks,e)},Ct.prototype.beforeResolve=function(e){return bt(this.resolveHooks,e)},Ct.prototype.afterEach=function(e){return bt(this.afterHooks,e)},Ct.prototype.onReady=function(e,t){this.history.onReady(e,t)},Ct.prototype.onError=function(e){this.history.onError(e)},Ct.prototype.push=function(e,t,s){var n=this;if(!t&&!s&&"undefined"!=typeof Promise)return new Promise((function(t,s){n.history.push(e,t,s)}));this.history.push(e,t,s)},Ct.prototype.replace=function(e,t,s){var n=this;if(!t&&!s&&"undefined"!=typeof Promise)return new Promise((function(t,s){n.history.replace(e,t,s)}));this.history.replace(e,t,s)},Ct.prototype.go=function(e){this.history.go(e)},Ct.prototype.back=function(){this.go(-1)},Ct.prototype.forward=function(){this.go(1)},Ct.prototype.getMatchedComponents=function(e){var t=e?e.matched?e:this.resolve(e).route:this.currentRoute;return t?[].concat.apply([],t.matched.map((function(e){return Object.keys(e.components).map((function(t){return e.components[t]}))}))):[]},Ct.prototype.resolve=function(e,t,s){var n=Ce(e,t=t||this.history.current,s,this),i=this.match(n,t),a=i.redirectedFrom||i.fullPath,r=function(e,t,s){var n="hash"===s?"#"+t:t;return e?ne(e+"/"+n):n}(this.history.base,a,this.mode);return{location:n,route:i,href:r,normalizedTo:n,resolved:i}},Ct.prototype.getRoutes=function(){return this.matcher.getRoutes()},Ct.prototype.addRoute=function(e,t){this.matcher.addRoute(e,t),this.history.current!==Y&&this.history.transitionTo(this.history.getCurrentLocation())},Ct.prototype.addRoutes=function(e){this.matcher.addRoutes(e),this.history.current!==Y&&this.history.transitionTo(this.history.getCurrentLocation())},Object.defineProperties(Ct.prototype,yt);var xt=Ct;function bt(e,t){return e.push(t),function(){var s=e.indexOf(t);s>-1&&e.splice(s,1)}}Ct.install=function e(t){if(!e.installed||ye!==t){e.installed=!0,ye=t;var s=function(e){return void 0!==e},n=function(e,t){var n=e.$options._parentVnode;s(n)&&s(n=n.data)&&s(n=n.registerRouteInstance)&&n(e,t)};t.mixin({beforeCreate:function(){s(this.$options.router)?(this._routerRoot=this,this._router=this.$options.router,this._router.init(this),t.util.defineReactive(this,"_route",this._router.history.current)):this._routerRoot=this.$parent&&this.$parent._routerRoot||this,n(this,this)},destroyed:function(){n(this)}}),Object.defineProperty(t.prototype,"$router",{get:function(){return this._routerRoot._router}}),Object.defineProperty(t.prototype,"$route",{get:function(){return this._routerRoot._route}}),t.component("RouterView",ee),t.component("RouterLink",be);var i=t.config.optionMergeStrategies;i.beforeRouteEnter=i.beforeRouteLeave=i.beforeRouteUpdate=i.created}},Ct.version="3.6.5",Ct.isNavigationFailure=st,Ct.NavigationFailureType=Je,Ct.START_LOCATION=Y,ke&&window.Vue&&window.Vue.use(Ct),l.Ay.use(xt);const _t=xt.prototype.push;xt.prototype.push=function(e,t,s){return t||s?_t.call(this,e,t,s):_t.call(this,e).catch((e=>e))};const Tt=new xt({mode:"history",base:(0,c.Jv)("/apps/files"),linkActiveClass:"active",routes:[{path:"/",redirect:{name:"filelist",params:{view:"files"}}},{path:"/:view/:fileid(\\d+)?",name:"filelist",props:!0}],stringifyQuery(e){const t=B.stringify(e).replace(/%2F/gim,"/");return t?"?"+t:""}});function kt(e,t,s){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e;var s=e[Symbol.toPrimitive];if(void 0!==s){var n=s.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:s,enumerable:!0,configurable:!0,writable:!0}):e[t]=s,e}var St=n(96763);var Lt=n(22378),Ft=n(61338),Ut=n(53334);const Et={name:"CogIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};var Pt=n(14486);const Nt=(0,Pt.A)(Et,(function(){var e=this,t=e._self._c;return t("span",e._b({staticClass:"material-design-icon cog-icon",attrs:{"aria-hidden":!e.title||null,"aria-label":e.title,role:"img"},on:{click:function(t){return e.$emit("click",t)}}},"span",e.$attrs,!1),[t("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[t("path",{attrs:{d:"M12,15.5A3.5,3.5 0 0,1 8.5,12A3.5,3.5 0 0,1 12,8.5A3.5,3.5 0 0,1 15.5,12A3.5,3.5 0 0,1 12,15.5M19.43,12.97C19.47,12.65 19.5,12.33 19.5,12C19.5,11.67 19.47,11.34 19.43,11L21.54,9.37C21.73,9.22 21.78,8.95 21.66,8.73L19.66,5.27C19.54,5.05 19.27,4.96 19.05,5.05L16.56,6.05C16.04,5.66 15.5,5.32 14.87,5.07L14.5,2.42C14.46,2.18 14.25,2 14,2H10C9.75,2 9.54,2.18 9.5,2.42L9.13,5.07C8.5,5.32 7.96,5.66 7.44,6.05L4.95,5.05C4.73,4.96 4.46,5.05 4.34,5.27L2.34,8.73C2.21,8.95 2.27,9.22 2.46,9.37L4.57,11C4.53,11.34 4.5,11.67 4.5,12C4.5,12.33 4.53,12.65 4.57,12.97L2.46,14.63C2.27,14.78 2.21,15.05 2.34,15.27L4.34,18.73C4.46,18.95 4.73,19.03 4.95,18.95L7.44,17.94C7.96,18.34 8.5,18.68 9.13,18.93L9.5,21.58C9.54,21.82 9.75,22 10,22H14C14.25,22 14.46,21.82 14.5,21.58L14.87,18.93C15.5,18.67 16.04,18.34 16.56,17.94L19.05,18.95C19.27,19.03 19.54,18.95 19.66,18.73L21.66,15.27C21.78,15.05 21.73,14.78 21.54,14.63L19.43,12.97Z"}},[e.title?t("title",[e._v(e._s(e.title))]):e._e()])])])}),[],!1,null,null,null).exports;var Bt=n(42530),It=n(52439),zt=n(6695);function Dt(e,t,s){var n,i=s||{},a=i.noTrailing,r=void 0!==a&&a,o=i.noLeading,l=void 0!==o&&o,d=i.debounceMode,c=void 0===d?void 0:d,u=!1,m=0;function g(){n&&clearTimeout(n)}function f(){for(var s=arguments.length,i=new Array(s),a=0;ae?l?(m=Date.now(),r||(n=setTimeout(c?p:f,e))):f():!0!==r&&(n=setTimeout(c?p:f,void 0===c?e-d:e)))}return f.cancel=function(e){var t=(e||{}).upcomingOnly,s=void 0!==t&&t;g(),u=!s},f}var Rt=n(32981),jt=n(85168),Ot=n(65043);const Mt={name:"ChartPieIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},Vt=(0,Pt.A)(Mt,(function(){var e=this,t=e._self._c;return t("span",e._b({staticClass:"material-design-icon chart-pie-icon",attrs:{"aria-hidden":!e.title||null,"aria-label":e.title,role:"img"},on:{click:function(t){return e.$emit("click",t)}}},"span",e.$attrs,!1),[t("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[t("path",{attrs:{d:"M11,2V22C5.9,21.5 2,17.2 2,12C2,6.8 5.9,2.5 11,2M13,2V11H22C21.5,6.2 17.8,2.5 13,2M13,13V22C17.7,21.5 21.5,17.8 22,13H13Z"}},[e.title?t("title",[e._v(e._s(e.title))]):e._e()])])])}),[],!1,null,null,null).exports;var $t=n(95101);const qt=(0,n(35947).YK)().setApp("files").detectUser().build(),Ht={name:"NavigationQuota",components:{ChartPie:Vt,NcAppNavigationItem:It.A,NcProgressBar:$t.A},data:()=>({loadingStorageStats:!1,storageStats:(0,Rt.C)("files","storageStats",null)}),computed:{storageStatsTitle(){var e,t,s;const n=(0,r.v7)(null===(e=this.storageStats)||void 0===e?void 0:e.used,!1,!1),i=(0,r.v7)(null===(t=this.storageStats)||void 0===t?void 0:t.quota,!1,!1);return(null===(s=this.storageStats)||void 0===s?void 0:s.quota)<0?this.t("files","{usedQuotaByte} used",{usedQuotaByte:n}):this.t("files","{used} of {quota} used",{used:n,quota:i})},storageStatsTooltip(){return this.storageStats.relative?this.t("files","{relative}% used",this.storageStats):""}},beforeMount(){setInterval(this.throttleUpdateStorageStats,6e4),(0,Ft.B1)("files:node:created",this.throttleUpdateStorageStats),(0,Ft.B1)("files:node:deleted",this.throttleUpdateStorageStats),(0,Ft.B1)("files:node:moved",this.throttleUpdateStorageStats),(0,Ft.B1)("files:node:updated",this.throttleUpdateStorageStats)},mounted(){var e,t;(null===(e=this.storageStats)||void 0===e?void 0:e.quota)>0&&(null===(t=this.storageStats)||void 0===t?void 0:t.free)<=0&&this.showStorageFullWarning()},methods:{debounceUpdateStorageStats:(Wt={}.atBegin,Dt(200,(function(e){this.updateStorageStats(e)}),{debounceMode:!1!==(void 0!==Wt&&Wt)})),throttleUpdateStorageStats:Dt(1e3,(function(e){this.updateStorageStats(e)})),async updateStorageStats(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;if(!this.loadingStorageStats){this.loadingStorageStats=!0;try{var s,n,i,a;const e=await Ot.Ay.get((0,c.Jv)("/apps/files/api/v1/stats"));if(null==e||null===(s=e.data)||void 0===s||!s.data)throw new Error("Invalid storage stats");(null===(n=this.storageStats)||void 0===n?void 0:n.free)>0&&(null===(i=e.data.data)||void 0===i?void 0:i.free)<=0&&(null===(a=e.data.data)||void 0===a?void 0:a.quota)>0&&this.showStorageFullWarning(),this.storageStats=e.data.data}catch(s){qt.error("Could not refresh storage stats",{error:s}),e&&(0,jt.Qg)(t("files","Could not refresh storage stats"))}finally{this.loadingStorageStats=!1}}},showStorageFullWarning(){(0,jt.Qg)(this.t("files","Your storage is full, files can not be updated or synced anymore!"))},t:Ut.Tl}};var Wt,Gt=n(85072),Yt=n.n(Gt),Kt=n(97825),Qt=n.n(Kt),Jt=n(77659),Zt=n.n(Jt),Xt=n(55056),es=n.n(Xt),ts=n(10540),ss=n.n(ts),ns=n(41113),is=n.n(ns),as=n(91210),rs={};rs.styleTagTransform=is(),rs.setAttributes=es(),rs.insert=Zt().bind(null,"head"),rs.domAPI=Qt(),rs.insertStyleElement=ss(),Yt()(as.A,rs),as.A&&as.A.locals&&as.A.locals;const os=(0,Pt.A)(Ht,(function(){var e=this,t=e._self._c;return e.storageStats?t("NcAppNavigationItem",{staticClass:"app-navigation-entry__settings-quota",class:{"app-navigation-entry__settings-quota--not-unlimited":e.storageStats.quota>=0},attrs:{"aria-label":e.t("files","Storage informations"),loading:e.loadingStorageStats,name:e.storageStatsTitle,title:e.storageStatsTooltip,"data-cy-files-navigation-settings-quota":""},on:{click:function(t){return t.stopPropagation(),t.preventDefault(),e.debounceUpdateStorageStats.apply(null,arguments)}}},[t("ChartPie",{attrs:{slot:"icon",size:20},slot:"icon"}),e._v(" "),e.storageStats.quota>=0?t("NcProgressBar",{attrs:{slot:"extra",error:e.storageStats.relative>80,value:Math.min(e.storageStats.relative,100)},slot:"extra"}):e._e()],1):e._e()}),[],!1,null,"3e968815",null).exports;var ls=n(89902),ds=n(947),cs=n(32073);const us={name:"ClipboardIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},ms=(0,Pt.A)(us,(function(){var e=this,t=e._self._c;return t("span",e._b({staticClass:"material-design-icon clipboard-icon",attrs:{"aria-hidden":!e.title||null,"aria-label":e.title,role:"img"},on:{click:function(t){return e.$emit("click",t)}}},"span",e.$attrs,!1),[t("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[t("path",{attrs:{d:"M19,3H14.82C14.4,1.84 13.3,1 12,1C10.7,1 9.6,1.84 9.18,3H5A2,2 0 0,0 3,5V19A2,2 0 0,0 5,21H19A2,2 0 0,0 21,19V5A2,2 0 0,0 19,3M12,3A1,1 0 0,1 13,4A1,1 0 0,1 12,5A1,1 0 0,1 11,4A1,1 0 0,1 12,3"}},[e.title?t("title",[e._v(e._s(e.title))]):e._e()])])])}),[],!1,null,null,null).exports;var gs=n(44492);const fs={name:"Setting",props:{el:{type:Function,required:!0}},mounted(){this.$el.appendChild(this.el())}},ps=(0,Pt.A)(fs,(function(){return(0,this._self._c)("div")}),[],!1,null,null,null).exports,hs=(0,Rt.C)("files","config",{show_hidden:!1,crop_image_previews:!0,sort_favorites_first:!0,sort_folders_first:!0,grid_view:!1}),vs=function(){const e=(0,a.nY)("userconfig",{state:()=>({userConfig:hs}),actions:{onUpdate(e,t){l.Ay.set(this.userConfig,e,t)},async update(e,t){await Ot.Ay.put((0,c.Jv)("/apps/files/api/v1/config/"+e),{value:t}),(0,Ft.Ic)("files:config:updated",{key:e,value:t})}}})(...arguments);return e._initialized||((0,Ft.B1)("files:config:updated",(function(t){let{key:s,value:n}=t;e.onUpdate(s,n)})),e._initialized=!0),e},ws={name:"Settings",components:{Clipboard:ms,NcAppSettingsDialog:ls.N,NcAppSettingsSection:ds.A,NcCheckboxRadioSwitch:cs.A,NcInputField:gs.A,Setting:ps},props:{open:{type:Boolean,default:!1}},setup:()=>({userConfigStore:vs()}),data(){var e,t,s;return{settings:(null===(e=window.OCA)||void 0===e||null===(e=e.Files)||void 0===e||null===(e=e.Settings)||void 0===e?void 0:e.settings)||[],webdavUrl:(0,c.dC)("dav/files/"+encodeURIComponent(null===(t=(0,o.HW)())||void 0===t?void 0:t.uid)),webdavDocs:"https://docs.nextcloud.com/server/stable/go.php?to=user-webdav",appPasswordUrl:(0,c.Jv)("/settings/user/security#generate-app-token-section"),webdavUrlCopied:!1,enableGridView:null===(s=(0,Rt.C)("core","config",[])["enable_non-accessible_features"])||void 0===s||s}},computed:{userConfig(){return this.userConfigStore.userConfig}},beforeMount(){this.settings.forEach((e=>e.open()))},beforeDestroy(){this.settings.forEach((e=>e.close()))},methods:{onClose(){this.$emit("close")},setConfig(e,t){this.userConfigStore.update(e,t)},async copyCloudId(){document.querySelector("input#webdav-url-input").select(),navigator.clipboard?(await navigator.clipboard.writeText(this.webdavUrl),this.webdavUrlCopied=!0,(0,jt.Te)(t("files","WebDAV URL copied to clipboard")),setTimeout((()=>{this.webdavUrlCopied=!1}),5e3)):(0,jt.Qg)(t("files","Clipboard is not available"))},t:Ut.Tl}};var As=n(8645),Cs={};Cs.styleTagTransform=is(),Cs.setAttributes=es(),Cs.insert=Zt().bind(null,"head"),Cs.domAPI=Qt(),Cs.insertStyleElement=ss(),Yt()(As.A,Cs),As.A&&As.A.locals&&As.A.locals;const ys=(0,Pt.A)(ws,(function(){var e=this,t=e._self._c;return t("NcAppSettingsDialog",{attrs:{open:e.open,"show-navigation":!0,name:e.t("files","Files settings")},on:{"update:open":e.onClose}},[t("NcAppSettingsSection",{attrs:{id:"settings",name:e.t("files","Files settings")}},[t("NcCheckboxRadioSwitch",{attrs:{"data-cy-files-settings-setting":"sort_favorites_first",checked:e.userConfig.sort_favorites_first},on:{"update:checked":function(t){return e.setConfig("sort_favorites_first",t)}}},[e._v("\n\t\t\t"+e._s(e.t("files","Sort favorites first"))+"\n\t\t")]),e._v(" "),t("NcCheckboxRadioSwitch",{attrs:{"data-cy-files-settings-setting":"sort_folders_first",checked:e.userConfig.sort_folders_first},on:{"update:checked":function(t){return e.setConfig("sort_folders_first",t)}}},[e._v("\n\t\t\t"+e._s(e.t("files","Sort folders before files"))+"\n\t\t")]),e._v(" "),t("NcCheckboxRadioSwitch",{attrs:{"data-cy-files-settings-setting":"show_hidden",checked:e.userConfig.show_hidden},on:{"update:checked":function(t){return e.setConfig("show_hidden",t)}}},[e._v("\n\t\t\t"+e._s(e.t("files","Show hidden files"))+"\n\t\t")]),e._v(" "),t("NcCheckboxRadioSwitch",{attrs:{"data-cy-files-settings-setting":"crop_image_previews",checked:e.userConfig.crop_image_previews},on:{"update:checked":function(t){return e.setConfig("crop_image_previews",t)}}},[e._v("\n\t\t\t"+e._s(e.t("files","Crop image previews"))+"\n\t\t")]),e._v(" "),e.enableGridView?t("NcCheckboxRadioSwitch",{attrs:{"data-cy-files-settings-setting":"grid_view",checked:e.userConfig.grid_view},on:{"update:checked":function(t){return e.setConfig("grid_view",t)}}},[e._v("\n\t\t\t"+e._s(e.t("files","Enable the grid view"))+"\n\t\t")]):e._e()],1),e._v(" "),0!==e.settings.length?t("NcAppSettingsSection",{attrs:{id:"more-settings",name:e.t("files","Additional settings")}},[e._l(e.settings,(function(e){return[t("Setting",{key:e.name,attrs:{el:e.el}})]}))],2):e._e(),e._v(" "),t("NcAppSettingsSection",{attrs:{id:"webdav",name:e.t("files","WebDAV")}},[t("NcInputField",{attrs:{id:"webdav-url-input",label:e.t("files","WebDAV URL"),"show-trailing-button":!0,success:e.webdavUrlCopied,"trailing-button-label":e.t("files","Copy to clipboard"),value:e.webdavUrl,readonly:"readonly",type:"url"},on:{focus:function(e){return e.target.select()},"trailing-button-click":e.copyCloudId},scopedSlots:e._u([{key:"trailing-button-icon",fn:function(){return[t("Clipboard",{attrs:{size:20}})]},proxy:!0}])}),e._v(" "),t("em",[t("a",{staticClass:"setting-link",attrs:{href:e.webdavDocs,target:"_blank",rel:"noreferrer noopener"}},[e._v("\n\t\t\t\t"+e._s(e.t("files","Use this address to access your Files via WebDAV"))+" ↗\n\t\t\t")])]),e._v(" "),t("br"),e._v(" "),t("em",[t("a",{staticClass:"setting-link",attrs:{href:e.appPasswordUrl}},[e._v("\n\t\t\t\t"+e._s(e.t("files","If you have enabled 2FA, you must create and use a new app password by clicking here."))+" ↗\n\t\t\t")])])],1)],1)}),[],!1,null,"44764f8d",null).exports;function xs(){const e=(0,r.bh)(),t=(0,l.IJ)(e.views),s=(0,l.IJ)(e.active);function n(e){s.value=e.detail}function i(){t.value=e.views}return(0,l.sV)((()=>{e.addEventListener("update",i),e.addEventListener("updateActive",n)})),(0,l.hi)((()=>{e.removeEventListener("update",i),e.removeEventListener("updateActive",n)})),{currentView:s,views:t}}const bs=(0,Rt.C)("files","viewConfigs",{}),_s=function(){const e=(0,a.nY)("viewconfig",{state:()=>({viewConfig:bs}),getters:{getConfig:e=>t=>e.viewConfig[t]||{}},actions:{onUpdate(e,t,s){this.viewConfig[e]||l.Ay.set(this.viewConfig,e,{}),l.Ay.set(this.viewConfig[e],t,s)},async update(e,t,s){Ot.Ay.put((0,c.Jv)("/apps/files/api/v1/views/".concat(e,"/").concat(t)),{value:s}),(0,Ft.Ic)("files:viewconfig:updated",{view:e,key:t,value:s})},setSortingBy(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"basename",t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"files";this.update(t,"sorting_mode",e),this.update(t,"sorting_direction","asc")},toggleSortingDirection(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"files";const t="asc"===(this.getConfig(e)||{sorting_direction:"asc"}).sorting_direction?"desc":"asc";this.update(e,"sorting_direction",t)}}}),t=e(...arguments);return t._initialized||((0,Ft.B1)("files:viewconfig:updated",(function(e){let{view:s,key:n,value:i}=e;t.onUpdate(s,n,i)})),t._initialized=!0),t},Ts=(0,l.pM)({name:"Navigation",components:{IconCog:Nt,NavigationQuota:os,NcAppNavigation:Bt.A,NcAppNavigationItem:It.A,NcIconSvgWrapper:zt.A,SettingsModal:ys},setup(){const e=_s(),{currentView:t,views:s}=xs();return{currentView:t,views:s,viewConfigStore:e}},data:()=>({settingsOpened:!1}),computed:{currentViewId(){var e;return(null===(e=this.$route)||void 0===e||null===(e=e.params)||void 0===e?void 0:e.view)||"files"},parentViews(){return this.views.filter((e=>!e.parent)).sort(((e,t)=>e.order-t.order))},childViews(){return this.views.filter((e=>!!e.parent)).reduce(((e,t)=>(e[t.parent]=[...e[t.parent]||[],t],e[t.parent].sort(((e,t)=>e.order-t.order)),e)),{})}},watch:{currentViewId(e,t){var s;if(this.currentViewId!==(null===(s=this.currentView)||void 0===s?void 0:s.id)){const s=this.views.find((e=>{let{id:t}=e;return t===this.currentViewId}));this.showView(s),qt.debug("Navigation changed from ".concat(t," to ").concat(e),{to:s})}}},beforeMount(){const e=this.views.find((e=>{let{id:t}=e;return t===this.currentViewId}));this.showView(e),qt.debug("Navigation mounted. Showing requested view",{view:e})},methods:{t:Ut.Tl,useExactRouteMatching(e){var t;return(null===(t=this.childViews[e.id])||void 0===t?void 0:t.length)>0},showView(e){var t,s;null===(t=window.OCA)||void 0===t||null===(t=t.Files)||void 0===t||null===(t=t.Sidebar)||void 0===t||null===(s=t.close)||void 0===s||s.call(t),this.$navigation.setActive(e),(0,Ft.Ic)("files:navigation:changed",e)},onToggleExpand(e){const t=this.isExpanded(e);e.expanded=!t,this.viewConfigStore.update(e.id,"expanded",!t)},isExpanded(e){var t;return"boolean"==typeof(null===(t=this.viewConfigStore.getConfig(e.id))||void 0===t?void 0:t.expanded)?!0===this.viewConfigStore.getConfig(e.id).expanded:!0===e.expanded},generateToNavigation(e){if(e.params){const{dir:t}=e.params;return{name:"filelist",params:e.params,query:{dir:t}}}return{name:"filelist",params:{view:e.id}}},openSettings(){this.settingsOpened=!0},onSettingsClose(){this.settingsOpened=!1}}});var ks=n(18755),Ss={};Ss.styleTagTransform=is(),Ss.setAttributes=es(),Ss.insert=Zt().bind(null,"head"),Ss.domAPI=Qt(),Ss.insertStyleElement=ss(),Yt()(ks.A,Ss),ks.A&&ks.A.locals&&ks.A.locals;const Ls=(0,Pt.A)(Ts,(function(){var e=this,t=e._self._c;return e._self._setupProxy,t("NcAppNavigation",{attrs:{"data-cy-files-navigation":"","aria-label":e.t("files","Files")},scopedSlots:e._u([{key:"list",fn:function(){return e._l(e.parentViews,(function(s){return t("NcAppNavigationItem",{key:s.id,attrs:{"allow-collapse":!0,"data-cy-files-navigation-item":s.id,exact:e.useExactRouteMatching(s),icon:s.iconClass,name:s.name,open:e.isExpanded(s),pinned:s.sticky,to:e.generateToNavigation(s)},on:{"update:open":function(t){return e.onToggleExpand(s)}}},[s.icon?t("NcIconSvgWrapper",{attrs:{slot:"icon",svg:s.icon},slot:"icon"}):e._e(),e._v(" "),e._l(e.childViews[s.id],(function(s){return t("NcAppNavigationItem",{key:s.id,attrs:{"data-cy-files-navigation-item":s.id,"exact-path":!0,icon:s.iconClass,name:s.name,to:e.generateToNavigation(s)}},[s.icon?t("NcIconSvgWrapper",{attrs:{slot:"icon",svg:s.icon},slot:"icon"}):e._e()],1)}))],2)}))},proxy:!0},{key:"footer",fn:function(){return[t("ul",{staticClass:"app-navigation-entry__settings"},[t("NavigationQuota"),e._v(" "),t("NcAppNavigationItem",{attrs:{"aria-label":e.t("files","Open the files app settings"),name:e.t("files","Files settings"),"data-cy-files-navigation-settings-button":""},on:{click:function(t){return t.preventDefault(),t.stopPropagation(),e.openSettings.apply(null,arguments)}}},[t("IconCog",{attrs:{slot:"icon",size:20},slot:"icon"})],1)],1)]},proxy:!0}])},[e._v(" "),e._v(" "),t("SettingsModal",{attrs:{open:e.settingsOpened,"data-cy-files-navigation-settings":""},on:{close:e.onSettingsClose}})],1)}),[],!1,null,"66457116",null).exports;var Fs=n(87485),Us=n(43627),Es=n(52129),Ps=n(2069),Ns=n(89979);const Bs={name:"FormatListBulletedSquareIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},Is=(0,Pt.A)(Bs,(function(){var e=this,t=e._self._c;return t("span",e._b({staticClass:"material-design-icon format-list-bulleted-square-icon",attrs:{"aria-hidden":!e.title||null,"aria-label":e.title,role:"img"},on:{click:function(t){return e.$emit("click",t)}}},"span",e.$attrs,!1),[t("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[t("path",{attrs:{d:"M3,4H7V8H3V4M9,5V7H21V5H9M3,10H7V14H3V10M9,11V13H21V11H9M3,16H7V20H3V16M9,17V19H21V17H9"}},[e.title?t("title",[e._v(e._s(e.title))]):e._e()])])])}),[],!1,null,null,null).exports;var zs=n(18195),Ds=n(9518),Rs=n(10833),js=n(46222),Os=n(27577);const Ms={name:"AccountPlusIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},Vs=(0,Pt.A)(Ms,(function(){var e=this,t=e._self._c;return t("span",e._b({staticClass:"material-design-icon account-plus-icon",attrs:{"aria-hidden":!e.title||null,"aria-label":e.title,role:"img"},on:{click:function(t){return e.$emit("click",t)}}},"span",e.$attrs,!1),[t("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[t("path",{attrs:{d:"M15,14C12.33,14 7,15.33 7,18V20H23V18C23,15.33 17.67,14 15,14M6,10V7H4V10H1V12H4V15H6V12H9V10M15,12A4,4 0 0,0 19,8A4,4 0 0,0 15,4A4,4 0 0,0 11,8A4,4 0 0,0 15,12Z"}},[e.title?t("title",[e._v(e._s(e.title))]):e._e()])])])}),[],!1,null,null,null).exports,$s={name:"ViewGridIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},qs=(0,Pt.A)($s,(function(){var e=this,t=e._self._c;return t("span",e._b({staticClass:"material-design-icon view-grid-icon",attrs:{"aria-hidden":!e.title||null,"aria-label":e.title,role:"img"},on:{click:function(t){return e.$emit("click",t)}}},"span",e.$attrs,!1),[t("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[t("path",{attrs:{d:"M3,11H11V3H3M3,21H11V13H3M13,21H21V13H13M13,3V11H21V3"}},[e.title?t("title",[e._v(e._s(e.title))]):e._e()])])])}),[],!1,null,null,null).exports;var Hs=n(49981);const Ws=new r.hY({id:"details",displayName:()=>(0,Ut.Tl)("files","Open details"),iconSvgInline:()=>Hs,enabled:e=>{var t,s,n;return 1===e.length&&!!e[0]&&!(null===(t=window)||void 0===t||null===(t=t.OCA)||void 0===t||null===(t=t.Files)||void 0===t||!t.Sidebar)&&null!==(s=(null===(n=e[0].root)||void 0===n?void 0:n.startsWith("/files/"))&&e[0].permissions!==r.aX.NONE)&&void 0!==s&&s},async exec(e,t,s){try{return await window.OCA.Files.Sidebar.open(e.path),window.OCP.Files.Router.goToRoute(null,{view:t.id,fileid:e.fileid},{...window.OCP.Files.Router.query,dir:s},!0),null}catch(e){return qt.error("Error while opening sidebar",{error:e}),!1}},order:-50}),Gs=(0,r.H4)(),Ys=async e=>{const t=(0,r.VL)(),s=await Gs.stat("".concat(r.lJ).concat(e.path),{details:!0,data:t});return(0,r.Al)(s.data)},Ks=function(){const e=(0,a.nY)("files",{state:()=>({files:{},roots:{}}),getters:{getNode:e=>t=>e.files[t],getNodes:e=>t=>t.map((t=>e.files[t])).filter(Boolean),getNodesById:e=>t=>Object.values(e.files).filter((e=>e.fileid===t)),getRoot:e=>t=>e.roots[t]},actions:{updateNodes(e){const t=e.reduce(((e,t)=>t.fileid?(e[t.source]=t,e):(qt.error("Trying to update/set a node without fileid",{node:t}),e)),{});l.Ay.set(this,"files",{...this.files,...t})},deleteNodes(e){e.forEach((e=>{e.source&&l.Ay.delete(this.files,e.source)}))},setRoot(e){let{service:t,root:s}=e;l.Ay.set(this.roots,t,s)},onDeletedNode(e){this.deleteNodes([e])},onCreatedNode(e){this.updateNodes([e])},async onUpdatedNode(e){if(!e.fileid)return void qt.error("Trying to update/set a node without fileid",{node:e});const t=this.getNodesById(e.fileid);if(t.length>1)return await Promise.all(t.map(Ys)).then(this.updateNodes),void qt.debug(t.length+" nodes updated in store",{fileid:e.fileid});e.source!==t[0].source?Ys(e).then((e=>this.updateNodes([e]))):this.updateNodes([e])}}})(...arguments);return e._initialized||((0,Ft.B1)("files:node:created",e.onCreatedNode),(0,Ft.B1)("files:node:deleted",e.onDeletedNode),(0,Ft.B1)("files:node:updated",e.onUpdatedNode),e._initialized=!0),e},Qs=function(){const e=Ks(...arguments),t=(0,a.nY)("paths",{state:()=>({paths:{}}),getters:{getPath:e=>(t,s)=>{if(e.paths[t])return e.paths[t][s]}},actions:{addPath(e){this.paths[e.service]||l.Ay.set(this.paths,e.service,{}),l.Ay.set(this.paths[e.service],e.path,e.source)},onCreatedNode(t){var s;const n=(null===(s=(0,r.bh)())||void 0===s||null===(s=s.active)||void 0===s?void 0:s.id)||"files";if(t.fileid){if(t.type===r.pt.Folder&&this.addPath({service:n,path:t.path,source:t.source}),"/"===t.dirname){const s=e.getRoot(n);return s._children||l.Ay.set(s,"_children",[]),void s._children.push(t.source)}if(this.paths[n][t.dirname]){const s=this.paths[n][t.dirname],i=e.getNode(s);return qt.debug("Path already exists, updating children",{parentFolder:i,node:t}),i?(i._children||l.Ay.set(i,"_children",[]),void i._children.push(t.source)):void qt.error("Parent folder not found",{parentSource:s})}qt.debug("Parent path does not exists, skipping children update",{node:t})}else qt.error("Node has no fileid",{node:t})}}})(...arguments);return t._initialized||((0,Ft.B1)("files:node:created",t.onCreatedNode),t._initialized=!0),t},Js=(0,a.nY)("selection",{state:()=>({selected:[],lastSelection:[],lastSelectedIndex:null}),actions:{set(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];l.Ay.set(this,"selected",[...new Set(e)])},setLastIndex(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;l.Ay.set(this,"lastSelection",e?this.selected:[]),l.Ay.set(this,"lastSelectedIndex",e)},reset(){l.Ay.set(this,"selected",[]),l.Ay.set(this,"lastSelection",[]),l.Ay.set(this,"lastSelectedIndex",null)}}});let Zs;const Xs=function(){return Zs=(0,Ps.g)(),(0,a.nY)("uploader",{state:()=>({queue:Zs.queue})})(...arguments)};function en(e){return e instanceof Date?e.toISOString():String(e)}var tn=n(91680),sn=n(49296),nn=n(71089),an=n(96763);class rn extends File{constructor(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];super([],e,{type:"httpd/unix-directory"}),function(e,t,s){(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e;var s=e[Symbol.toPrimitive];if(void 0!==s){var n=s.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:s,enumerable:!0,configurable:!0,writable:!0}):e[t]=s}(this,"_contents",void 0),this._contents=t}set contents(e){this._contents=e}get contents(){return this._contents}get size(){return this._computeDirectorySize(this)}get lastModified(){return 0===this._contents.length?Date.now():this._computeDirectoryMtime(this)}_computeDirectoryMtime(e){return e.contents.reduce(((e,t)=>t.lastModified>e?t.lastModified:e),0)}_computeDirectorySize(e){return e.contents.reduce(((e,t)=>e+t.size),0)}}const on=async e=>{if(e.isFile)return new Promise(((t,s)=>{e.file(t,s)}));qt.debug("Handling recursive file tree",{entry:e.name});const t=e,s=await ln(t),n=(await Promise.all(s.map(on))).flat();return new rn(t.name,n)},ln=e=>{const t=e.createReader();return new Promise(((e,s)=>{const n=[],i=()=>{t.readEntries((t=>{t.length?(n.push(...t),i()):e(n)}),(e=>{s(e)}))};i()}))},dn=async e=>{const t=(0,r.H4)();if(!await t.exists(e)){qt.debug("Directory does not exist, creating it",{absolutePath:e}),await t.createDirectory(e,{recursive:!0});const s=await t.stat(e,{details:!0,data:(0,r.VL)()});(0,Ft.Ic)("files:node:created",(0,r.Al)(s.data))}},cn=async(e,t,s)=>{try{const n=e.filter((e=>s.find((t=>t.basename===(e instanceof File?e.name:e.basename))))).filter(Boolean),i=e.filter((e=>!n.includes(e))),{selected:a,renamed:r}=await(0,Ps.o)(t.path,n,s);return qt.debug("Conflict resolution",{uploads:i,selected:a,renamed:r}),0===a.length&&0===r.length?((0,jt.cf)((0,Ut.Tl)("files","Conflicts resolution skipped")),qt.info("User skipped the conflict resolution"),[]):[...i,...a,...r]}catch(e){an.error(e),(0,jt.Qg)((0,Ut.Tl)("files","Upload cancelled")),qt.error("User cancelled the upload")}return[]};var un=n(36882),mn=n(39285),gn=n(49264);let fn;const pn=()=>(fn||(fn=new gn.A({concurrency:5})),fn);var hn;!function(e){e.MOVE="Move",e.COPY="Copy",e.MOVE_OR_COPY="move-or-copy"}(hn||(hn={}));const vn=e=>0!=(e.reduce(((e,t)=>Math.min(e,t.permissions)),r.aX.ALL)&r.aX.UPDATE),wn=e=>(e=>e.every((e=>{var t,s;return!JSON.parse(null!==(t=null===(s=e.attributes)||void 0===s?void 0:s["share-attributes"])&&void 0!==t?t:"[]").some((e=>"permissions"===e.scope&&!1===e.enabled&&"download"===e.key))})))(e)&&!e.some((e=>e.permissions===r.aX.NONE));var An=n(36117);const Cn=e=>(0,r.Al)(e),yn=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"/";const t=new AbortController,s=(0,r.VL)();return e="".concat(r.lJ).concat(e),new An.CancelablePromise((async(n,i,a)=>{a((()=>t.abort()));try{const i=await Gs.getDirectoryContents(e,{details:!0,data:s,includeSelf:!0,signal:t.signal}),a=i.data[0],r=i.data.slice(1);if(a.filename!==e&&"".concat(a.filename,"/")!==e)throw qt.debug('Exepected "'.concat(e,'" but got filename "').concat(a.filename,'" instead.')),new Error("Root node does not match requested path");n({folder:Cn(a),contents:r.map((e=>{try{return Cn(e)}catch(t){return qt.error("Invalid node detected '".concat(e.basename,"'"),{error:t}),null}})).filter(Boolean)})}catch(e){i(e)}}))},xn=e=>vn(e)?wn(e)?hn.MOVE_OR_COPY:hn.MOVE:hn.COPY,bn=async function(e,t,s){let n=arguments.length>3&&void 0!==arguments[3]&&arguments[3];if(!t)return;if(t.type!==r.pt.Folder)throw new Error((0,Ut.Tl)("files","Destination is not a folder"));if(s===hn.MOVE&&e.dirname===t.path)throw new Error((0,Ut.Tl)("files","This file/folder is already in that directory"));if("".concat(t.path,"/").startsWith("".concat(e.path,"/")))throw new Error((0,Ut.Tl)("files","You cannot move a file/folder onto itself or into a subfolder of itself"));l.Ay.set(e,"status",r.zI.LOADING);const i=pn();return await i.add((async()=>{const i=e=>1===e?(0,Ut.Tl)("files","(copy)"):(0,Ut.Tl)("files","(copy %n)",void 0,e);try{const a=(0,r.H4)(),o=(0,Us.join)(r.lJ,e.path),l=(0,Us.join)(r.lJ,t.path);if(s===hn.COPY){let s=e.basename;if(!n){const t=await a.getDirectoryContents(l);s=(0,r.E6)(e.basename,t.map((e=>e.basename)),{suffix:i,ignoreFileExtension:e.type===r.pt.Folder})}if(await a.copyFile(o,(0,Us.join)(l,s)),e.dirname===t.path){const{data:e}=await a.stat((0,Us.join)(l,s),{details:!0,data:(0,r.VL)()});(0,Ft.Ic)("files:node:created",(0,r.Al)(e))}}else{const s=await yn(t.path);if((0,Ps.h)([e],s.contents))try{const{selected:n,renamed:i}=await(0,Ps.o)(t.path,[e],s.contents);if(!n.length&&!i.length)return await a.deleteFile(o),void(0,Ft.Ic)("files:node:deleted",e)}catch(e){return void(0,jt.Qg)((0,Ut.Tl)("files","Move cancelled"))}await a.moveFile(o,(0,Us.join)(l,e.basename)),(0,Ft.Ic)("files:node:deleted",e)}}catch(e){if((0,Ot.F0)(e)){var a,o,d;if(412===(null===(a=e.response)||void 0===a?void 0:a.status))throw new Error((0,Ut.Tl)("files","A file or folder with that name already exists in this folder"));if(423===(null===(o=e.response)||void 0===o?void 0:o.status))throw new Error((0,Ut.Tl)("files","The files are locked"));if(404===(null===(d=e.response)||void 0===d?void 0:d.status))throw new Error((0,Ut.Tl)("files","The file does not exist anymore"));if(e.message)throw new Error(e.message)}throw qt.debug(e),new Error}finally{l.Ay.set(e,"status",void 0)}}))},_n=async function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"/",s=arguments.length>2?arguments[2]:void 0;const n=s.map((e=>e.fileid)).filter(Boolean),i=(0,jt.a1)((0,Ut.Tl)("files","Choose destination")).allowDirectories(!0).setFilter((e=>!n.includes(e.fileid))).setMimeTypeFilter([]).setMultiSelect(!1).startAt(t);return new Promise(((t,n)=>{i.setButtonFactory(((n,i)=>{const a=[],r=(0,Us.basename)(i),o=s.map((e=>e.dirname)),l=s.map((e=>e.path));return e!==hn.COPY&&e!==hn.MOVE_OR_COPY||a.push({label:r?(0,Ut.Tl)("files","Copy to {target}",{target:r},void 0,{escape:!1,sanitize:!1}):(0,Ut.Tl)("files","Copy"),type:"primary",icon:un,async callback(e){t({destination:e[0],action:hn.COPY})}}),o.includes(i)||l.includes(i)||e!==hn.MOVE&&e!==hn.MOVE_OR_COPY||a.push({label:r?(0,Ut.Tl)("files","Move to {target}",{target:r},void 0,{escape:!1,sanitize:!1}):(0,Ut.Tl)("files","Move"),type:e===hn.MOVE?"primary":"secondary",icon:mn,async callback(e){t({destination:e[0],action:hn.MOVE})}}),a})),i.build().pick().catch((e=>{qt.debug(e),e instanceof jt.vT?n(new Error((0,Ut.Tl)("files","Cancelled move or copy operation"))):n(new Error((0,Ut.Tl)("files","Move or copy operation failed")))}))}))};new r.hY({id:"move-copy",displayName(e){switch(xn(e)){case hn.MOVE:return(0,Ut.Tl)("files","Move");case hn.COPY:return(0,Ut.Tl)("files","Copy");case hn.MOVE_OR_COPY:return(0,Ut.Tl)("files","Move or copy")}},iconSvgInline:()=>mn,enabled:e=>!!e.every((e=>{var t;return null===(t=e.root)||void 0===t?void 0:t.startsWith("/files/")}))&&e.length>0&&(vn(e)||wn(e)),async exec(e,t,s){const n=xn([e]);let i;try{i=await _n(n,s,[e])}catch(e){return qt.error(e),!1}try{return await bn(e,i.destination,i.action),!0}catch(e){return!!(e instanceof Error&&e.message)&&((0,jt.Qg)(e.message),null)}},async execBatch(e,t,s){const n=xn(e),i=await _n(n,s,e),a=e.map((async e=>{try{return await bn(e,i.destination,i.action),!0}catch(t){return qt.error("Failed to ".concat(i.action," node"),{node:e,error:t}),!1}}));return await Promise.all(a)},order:15});var Tn=n(96763);const kn=async e=>{const t=e.filter((e=>"file"===e.kind||(qt.debug("Skipping dropped item",{kind:e.kind,type:e.type}),!1))).map((e=>{var t,s,n,i;return null!==(t=null!==(s=null==e||null===(n=e.getAsEntry)||void 0===n?void 0:n.call(e))&&void 0!==s?s:null==e||null===(i=e.webkitGetAsEntry)||void 0===i?void 0:i.call(e))&&void 0!==t?t:e}));let s=!1;const n=new rn("root");for(const e of t)if(e instanceof DataTransferItem){qt.warn("Could not get FilesystemEntry of item, falling back to file");const t=e.getAsFile();if(null===t){qt.warn("Could not process DataTransferItem",{type:e.type,kind:e.kind}),(0,jt.Qg)((0,Ut.Tl)("files","One of the dropped files could not be processed"));continue}if("httpd/unix-directory"===t.type||!t.type){s||(qt.warn("Browser does not support Filesystem API. Directories will not be uploaded"),(0,jt.I9)((0,Ut.Tl)("files","Your browser does not support the Filesystem API. Directories will not be uploaded")),s=!0);continue}n.contents.push(t)}else try{n.contents.push(await on(e))}catch(e){qt.error("Error while traversing file tree",{error:e})}return n},Sn=async(e,t,s)=>{const n=(0,Ps.g)();if(await(0,Ps.h)(e.contents,s)&&(e.contents=await cn(e.contents,t,s)),0===e.contents.length)return qt.info("No files to upload",{root:e}),(0,jt.cf)((0,Ut.Tl)("files","No files to upload")),[];qt.debug("Uploading files to ".concat(t.path),{root:e,contents:e.contents});const i=[],a=async(e,s)=>{for(const o of e.contents){const e=(0,Us.join)(s,o.name);if(o instanceof rn){const s=(0,nn.HS)(r.lJ,t.path,e);try{Tn.debug("Processing directory",{relativePath:e}),await dn(s),await a(o,e)}catch(e){(0,jt.Qg)((0,Ut.Tl)("files","Unable to create the directory {directory}",{directory:o.name})),qt.error("",{error:e,absolutePath:s,directory:o})}}else qt.debug("Uploading file to "+(0,Us.join)(t.path,e),{file:o}),i.push(n.upload(e,o,t.source))}};n.pause(),await a(e,"/"),n.start();const o=(await Promise.allSettled(i)).filter((e=>"rejected"===e.status));return o.length>0?(qt.error("Error while uploading files",{errors:o}),(0,jt.Qg)((0,Ut.Tl)("files","Some files could not be uploaded")),[]):(qt.debug("Files uploaded successfully"),(0,jt.Te)((0,Ut.Tl)("files","Files uploaded successfully")),Promise.all(i))},Ln=async function(e,t,s){let n=arguments.length>3&&void 0!==arguments[3]&&arguments[3];const i=[];if(await(0,Ps.h)(e,s)&&(e=await cn(e,t,s)),0===e.length)return qt.info("No files to process",{nodes:e}),void(0,jt.cf)((0,Ut.Tl)("files","No files to process"));for(const s of e)l.Ay.set(s,"status",r.zI.LOADING),i.push(bn(s,t,n?hn.COPY:hn.MOVE));const a=await Promise.allSettled(i);e.forEach((e=>l.Ay.set(e,"status",void 0)));const o=a.filter((e=>"rejected"===e.status));if(o.length>0)return qt.error("Error while copying or moving files",{errors:o}),void(0,jt.Qg)(n?(0,Ut.Tl)("files","Some files could not be copied"):(0,Ut.Tl)("files","Some files could not be moved"));qt.debug("Files copy/move successful"),(0,jt.Te)(n?(0,Ut.Tl)("files","Files copied successfully"):(0,Ut.Tl)("files","Files moved successfully"))},Fn=(0,a.nY)("dragging",{state:()=>({dragging:[]}),actions:{set(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];l.Ay.set(this,"dragging",e)},reset(){l.Ay.set(this,"dragging",[])}}}),Un=(0,l.pM)({data:()=>({filesListWidth:0}),mounted(){var e;const t=document.querySelector("#app-content-vue");this.filesListWidth=null!==(e=null==t?void 0:t.clientWidth)&&void 0!==e?e:0,this.$resizeObserver=new ResizeObserver((e=>{e.length>0&&e[0].target===t&&(this.filesListWidth=e[0].contentRect.width)})),this.$resizeObserver.observe(t)},beforeDestroy(){this.$resizeObserver.disconnect()}}),En=(0,l.pM)({name:"BreadCrumbs",components:{NcBreadcrumbs:sn.N,NcBreadcrumb:tn.N,NcIconSvgWrapper:zt.A},mixins:[Un],props:{path:{type:String,default:"/"}},setup(){const e=Fn(),t=Ks(),s=Qs(),n=Js(),i=Xs(),{currentView:a}=xs();return{draggingStore:e,filesStore:t,pathsStore:s,selectionStore:n,uploaderStore:i,currentView:a}},computed:{dirs(){var e;return["/",...this.path.split("/").filter(Boolean).map((e="/",t=>e+="".concat(t,"/"))).map((e=>e.replace(/^(.+)\/$/,"$1")))]},sections(){return this.dirs.map(((e,t)=>{const s=this.getFileSourceFromPath(e),n=s?this.getNodeFromSource(s):void 0,i={...this.$route,params:{node:null==n?void 0:n.fileid},query:{dir:e}};return{dir:e,exact:!0,name:this.getDirDisplayName(e),to:i,disableDrop:t===this.dirs.length-1}}))},isUploadInProgress(){return 0!==this.uploaderStore.queue.length},wrapUploadProgressBar(){return this.isUploadInProgress&&this.filesListWidth<512},viewIcon(){var e,t;return null!==(e=null===(t=this.currentView)||void 0===t?void 0:t.icon)&&void 0!==e?e:''},selectedFiles(){return this.selectionStore.selected},draggingFiles(){return this.draggingStore.dragging}},methods:{getNodeFromSource(e){return this.filesStore.getNode(e)},getFileSourceFromPath(e){var t;return null!==(t=this.currentView&&this.pathsStore.getPath(this.currentView.id,e))&&void 0!==t?t:null},getDirDisplayName(e){var t,s;if("/"===e)return(null===(s=this.$navigation)||void 0===s||null===(s=s.active)||void 0===s?void 0:s.name)||(0,Ut.Tl)("files","Home");const n=this.getFileSourceFromPath(e),i=n?this.getNodeFromSource(n):void 0;return(null==i||null===(t=i.attributes)||void 0===t?void 0:t.displayname)||(0,Us.basename)(e)},onClick(e){var t;(null==e||null===(t=e.query)||void 0===t?void 0:t.dir)===this.$route.query.dir&&this.$emit("reload")},onDragOver(e,t){e.dataTransfer&&(t!==this.dirs[this.dirs.length-1]?e.ctrlKey?e.dataTransfer.dropEffect="copy":e.dataTransfer.dropEffect="move":e.dataTransfer.dropEffect="none")},async onDrop(e,t){var s,n,i;if(!(this.draggingFiles||null!==(s=e.dataTransfer)&&void 0!==s&&null!==(s=s.items)&&void 0!==s&&s.length))return;e.preventDefault();const a=this.draggingFiles,o=[...(null===(n=e.dataTransfer)||void 0===n?void 0:n.items)||[]],l=await kn(o),d=await(null===(i=this.currentView)||void 0===i?void 0:i.getContents(t)),c=null==d?void 0:d.folder;if(!c)return void(0,jt.Qg)(this.t("files","Target folder does not exist any more"));const u=0!=(c.permissions&r.aX.CREATE),m=e.ctrlKey;if(!u||0!==e.button)return;if(qt.debug("Dropped",{event:e,folder:c,selection:a,fileTree:l}),l.contents.length>0)return void await Sn(l,c,d.contents);const g=a.map((e=>this.filesStore.getNode(e)));await Ln(g,c,d.contents,m),a.some((e=>this.selectedFiles.includes(e)))&&(qt.debug("Dropped selection, resetting select store..."),this.selectionStore.reset())},titleForSection(e,t){var s;return(null==t||null===(s=t.to)||void 0===s||null===(s=s.query)||void 0===s?void 0:s.dir)===this.$route.query.dir?(0,Ut.Tl)("files","Reload current directory"):0===e?(0,Ut.Tl)("files",'Go to the "{dir}" directory',t):null},ariaForSection(e){var t;return(null==e||null===(t=e.to)||void 0===t||null===(t=t.query)||void 0===t?void 0:t.dir)===this.$route.query.dir?(0,Ut.Tl)("files","Reload current directory"):null},t:Ut.Tl}});var Pn=n(12938),Nn={};Nn.styleTagTransform=is(),Nn.setAttributes=es(),Nn.insert=Zt().bind(null,"head"),Nn.domAPI=Qt(),Nn.insertStyleElement=ss(),Yt()(Pn.A,Nn),Pn.A&&Pn.A.locals&&Pn.A.locals;const Bn=(0,Pt.A)(En,(function(){var e=this,t=e._self._c;return e._self._setupProxy,t("NcBreadcrumbs",{staticClass:"files-list__breadcrumbs",class:{"files-list__breadcrumbs--with-progress":e.wrapUploadProgressBar},attrs:{"data-cy-files-content-breadcrumbs":"","aria-label":e.t("files","Current directory path")},scopedSlots:e._u([{key:"actions",fn:function(){return[e._t("actions")]},proxy:!0}],null,!0)},e._l(e.sections,(function(s,n){return t("NcBreadcrumb",e._b({key:s.dir,attrs:{dir:"auto",to:s.to,"force-icon-text":0===n&&e.filesListWidth>=486,title:e.titleForSection(n,s),"aria-description":e.ariaForSection(s)},on:{drop:function(t){return e.onDrop(t,s.dir)}},nativeOn:{click:function(t){return e.onClick(s.to)},dragover:function(t){return e.onDragOver(t,s.dir)}},scopedSlots:e._u([0===n?{key:"icon",fn:function(){return[t("NcIconSvgWrapper",{attrs:{size:20,svg:e.viewIcon}})]},proxy:!0}:null],null,!0)},"NcBreadcrumb",s,!1))})),1)}),[],!1,null,"7a939202",null).exports,In=e=>{const t=e.filter((e=>e.type===r.pt.File)).length,s=e.filter((e=>e.type===r.pt.Folder)).length;return 0===t?(0,Ut.zw)("files","{folderCount} folder","{folderCount} folders",s,{folderCount:s}):0===s?(0,Ut.zw)("files","{fileCount} file","{fileCount} files",t,{fileCount:t}):1===t?(0,Ut.zw)("files","1 file and {folderCount} folder","1 file and {folderCount} folders",s,{folderCount:s}):1===s?(0,Ut.zw)("files","{fileCount} file and 1 folder","{fileCount} files and 1 folder",t,{fileCount:t}):(0,Ut.Tl)("files","{fileCount} files and {folderCount} folders",{fileCount:t,folderCount:s})};var zn=n(51651);const Dn=(0,a.nY)("actionsmenu",{state:()=>({opened:null})}),Rn=function(){const e=(0,a.nY)("renaming",{state:()=>({renamingNode:void 0,newName:""})})(...arguments);return e._initialized||((0,Ft.B1)("files:node:rename",(function(t){e.renamingNode=t,e.newName=t.basename})),e._initialized=!0),e};var jn=n(55042);const On={name:"FileMultipleIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},Mn=(0,Pt.A)(On,(function(){var e=this,t=e._self._c;return t("span",e._b({staticClass:"material-design-icon file-multiple-icon",attrs:{"aria-hidden":!e.title||null,"aria-label":e.title,role:"img"},on:{click:function(t){return e.$emit("click",t)}}},"span",e.$attrs,!1),[t("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[t("path",{attrs:{d:"M15,7H20.5L15,1.5V7M8,0H16L22,6V18A2,2 0 0,1 20,20H8C6.89,20 6,19.1 6,18V2A2,2 0 0,1 8,0M4,4V22H20V24H4A2,2 0 0,1 2,22V4H4Z"}},[e.title?t("title",[e._v(e._s(e.title))]):e._e()])])])}),[],!1,null,null,null).exports;var Vn=n(11358);const $n=l.Ay.extend({name:"DragAndDropPreview",components:{FileMultipleIcon:Mn,FolderIcon:Vn.A},data:()=>({nodes:[]}),computed:{isSingleNode(){return 1===this.nodes.length},isSingleFolder(){return this.isSingleNode&&this.nodes[0].type===r.pt.Folder},name(){return this.size?"".concat(this.summary," – ").concat(this.size):this.summary},size(){const e=this.nodes.reduce(((e,t)=>e+t.size||0),0),t=parseInt(e,10)||0;return"number"!=typeof t||t<0?null:(0,r.v7)(t,!0)},summary(){if(this.isSingleNode){var e;const t=this.nodes[0];return(null===(e=t.attributes)||void 0===e?void 0:e.displayname)||t.basename}return In(this.nodes)}},methods:{update(e){this.nodes=e,this.$refs.previewImg.replaceChildren(),e.slice(0,3).forEach((e=>{const t=document.querySelector('[data-cy-files-list-row-fileid="'.concat(e.fileid,'"] .files-list__row-icon img'));t&&this.$refs.previewImg.appendChild(t.parentNode.cloneNode(!0))})),this.$nextTick((()=>{this.$emit("loaded",this.$el)}))}}}),qn=$n;var Hn=n(12617),Wn={};Wn.styleTagTransform=is(),Wn.setAttributes=es(),Wn.insert=Zt().bind(null,"head"),Wn.domAPI=Qt(),Wn.insertStyleElement=ss(),Yt()(Hn.A,Wn),Hn.A&&Hn.A.locals&&Hn.A.locals;const Gn=(0,Pt.A)(qn,(function(){var e=this,t=e._self._c;return e._self._setupProxy,t("div",{staticClass:"files-list-drag-image"},[t("span",{staticClass:"files-list-drag-image__icon"},[t("span",{ref:"previewImg"}),e._v(" "),e.isSingleFolder?t("FolderIcon"):t("FileMultipleIcon")],1),e._v(" "),t("span",{staticClass:"files-list-drag-image__name"},[e._v(e._s(e.name))])])}),[],!1,null,null,null).exports,Yn=l.Ay.extend(Gn);let Kn;l.Ay.directive("onClickOutside",jn.z0);const Qn=(0,l.pM)({props:{source:{type:[r.vd,r.ZH,r.bP],required:!0},nodes:{type:Array,required:!0},filesListWidth:{type:Number,default:0}},data:()=>({loading:"",dragover:!1,gridMode:!1}),computed:{currentDir(){var e;return((null===(e=this.$route.query)||void 0===e||null===(e=e.dir)||void 0===e?void 0:e.toString())||"/").replace(/^(.+)\/$/,"$1")},currentFileId(){var e,t;return(null===(e=this.$route.params)||void 0===e?void 0:e.fileid)||(null===(t=this.$route.query)||void 0===t?void 0:t.fileid)||null},fileid(){var e;return null!==(e=this.source.fileid)&&void 0!==e?e:0},uniqueId(){return function(e){let t=0;for(let s=0;s>>0}(this.source.source)},isLoading(){return this.source.status===r.zI.LOADING},extension(){var e;return null!==(e=this.source.attributes)&&void 0!==e&&e.displayname?(0,Us.extname)(this.source.attributes.displayname):this.source.extension||""},displayName(){const e=this.extension,t=String(this.source.attributes.displayname||this.source.basename);return e?t.slice(0,0-e.length):t},draggingFiles(){return this.draggingStore.dragging},selectedFiles(){return this.selectionStore.selected},isSelected(){return this.selectedFiles.includes(this.source.source)},isRenaming(){return this.renamingStore.renamingNode===this.source},isRenamingSmallScreen(){return this.isRenaming&&this.filesListWidth<512},isActive(){return String(this.fileid)===String(this.currentFileId)},isFailedSource(){return this.source.status===r.zI.FAILED},canDrag(){if(this.isRenaming)return!1;const e=e=>0!=((null==e?void 0:e.permissions)&r.aX.UPDATE);return this.selectedFiles.length>0?this.selectedFiles.map((e=>this.filesStore.getNode(e))).every(e):e(this.source)},canDrop(){return this.source.type===r.pt.Folder&&!this.draggingFiles.includes(this.source.source)&&0!=(this.source.permissions&r.aX.CREATE)},openedMenu:{get(){return this.actionsMenuStore.opened===this.uniqueId.toString()},set(e){this.actionsMenuStore.opened=e?this.uniqueId.toString():null}},isRenaming(){return this.renamingStore.renamingNode===this.source}},watch:{source(e,t){e.source!==t.source&&this.resetState()}},beforeDestroy(){this.resetState()},methods:{resetState(){var e,t;this.loading="",null===(e=this.$refs)||void 0===e||null===(e=e.preview)||void 0===e||null===(t=e.reset)||void 0===t||t.call(e),this.openedMenu=!1},onRightClick(e){if(this.openedMenu)return;if(this.gridMode){var t;const e=null===(t=this.$el)||void 0===t?void 0:t.closest("main.app-content");e.style.removeProperty("--mouse-pos-x"),e.style.removeProperty("--mouse-pos-y")}else{var s;const t=null===(s=this.$el)||void 0===s?void 0:s.closest("main.app-content"),n=t.getBoundingClientRect();t.style.setProperty("--mouse-pos-x",Math.max(0,e.clientX-n.left-200)+"px"),t.style.setProperty("--mouse-pos-y",Math.max(0,e.clientY-n.top)+"px")}const n=this.selectedFiles.length>1;this.actionsMenuStore.opened=this.isSelected&&n?"global":this.uniqueId.toString(),e.preventDefault(),e.stopPropagation()},execDefaultAction(e){if(!(this.isRenaming||e.button>1))return e.ctrlKey||e.metaKey||1===e.button?(e.preventDefault(),window.open((0,c.Jv)("/f/{fileId}",{fileId:this.fileid})),!1):void this.$refs.actions.execDefaultAction(e)},openDetailsIfAvailable(e){var t;e.preventDefault(),e.stopPropagation(),null!=Ws&&null!==(t=Ws.enabled)&&void 0!==t&&t.call(Ws,[this.source],this.currentView)&&Ws.exec(this.source,this.currentView,this.currentDir)},onDragOver(e){this.dragover=this.canDrop,this.canDrop?e.ctrlKey?e.dataTransfer.dropEffect="copy":e.dataTransfer.dropEffect="move":e.dataTransfer.dropEffect="none"},onDragLeave(e){const t=e.currentTarget;null!=t&&t.contains(e.relatedTarget)||(this.dragover=!1)},async onDragStart(e){var t,s,n;if(e.stopPropagation(),!this.canDrag||!this.fileid)return e.preventDefault(),void e.stopPropagation();qt.debug("Drag started",{event:e}),null===(t=e.dataTransfer)||void 0===t||null===(s=t.clearData)||void 0===s||s.call(t),this.renamingStore.$reset(),this.selectedFiles.includes(this.source.source)?this.draggingStore.set(this.selectedFiles):this.draggingStore.set([this.source.source]);const i=this.draggingStore.dragging.map((e=>this.filesStore.getNode(e))),a=await(async e=>new Promise((t=>{Kn||(Kn=(new Yn).$mount(),document.body.appendChild(Kn.$el)),Kn.update(e),Kn.$on("loaded",(()=>{t(Kn.$el),Kn.$off("loaded")}))})))(i);null===(n=e.dataTransfer)||void 0===n||n.setDragImage(a,-10,-10)},onDragEnd(){this.draggingStore.reset(),this.dragover=!1,qt.debug("Drag ended")},async onDrop(e){var t,s,n;if(!(this.draggingFiles||null!==(t=e.dataTransfer)&&void 0!==t&&null!==(t=t.items)&&void 0!==t&&t.length))return;e.preventDefault(),e.stopPropagation();const i=this.draggingFiles,a=[...(null===(s=e.dataTransfer)||void 0===s?void 0:s.items)||[]],r=await kn(a),o=await(null===(n=this.currentView)||void 0===n?void 0:n.getContents(this.source.path)),l=null==o?void 0:o.folder;if(!l)return void(0,jt.Qg)(this.t("files","Target folder does not exist any more"));if(!this.canDrop||e.button)return;const d=e.ctrlKey;if(this.dragover=!1,qt.debug("Dropped",{event:e,folder:l,selection:i,fileTree:r}),r.contents.length>0)return void await Sn(r,l,o.contents);const c=i.map((e=>this.filesStore.getNode(e)));await Ln(c,l,o.contents,d),i.some((e=>this.selectedFiles.includes(e)))&&(qt.debug("Dropped selection, resetting select store..."),this.selectionStore.reset())},t:Ut.Tl}});var Jn=n(4604);const Zn={name:"CustomElementRender",props:{source:{type:Object,required:!0},currentView:{type:Object,required:!0},render:{type:Function,required:!0}},watch:{source(){this.updateRootElement()},currentView(){this.updateRootElement()}},mounted(){this.updateRootElement()},methods:{async updateRootElement(){const e=await this.render(this.source,this.currentView);e?this.$el.replaceChildren(e):this.$el.replaceChildren()}}},Xn=(0,Pt.A)(Zn,(function(){return(0,this._self._c)("span")}),[],!1,null,null,null).exports;var ei=n(63420),ti=n(24764),si=n(10501);const ni={name:"ArrowLeftIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},ii=(0,Pt.A)(ni,(function(){var e=this,t=e._self._c;return t("span",e._b({staticClass:"material-design-icon arrow-left-icon",attrs:{"aria-hidden":!e.title||null,"aria-label":e.title,role:"img"},on:{click:function(t){return e.$emit("click",t)}}},"span",e.$attrs,!1),[t("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[t("path",{attrs:{d:"M20,11V13H8L13.5,18.5L12.08,19.92L4.16,12L12.08,4.08L13.5,5.5L8,11H20Z"}},[e.title?t("title",[e._v(e._s(e.title))]):e._e()])])])}),[],!1,null,null,null).exports,ai=(0,r.qK)(),ri=(0,l.pM)({name:"FileEntryActions",components:{ArrowLeftIcon:ii,CustomElementRender:Xn,NcActionButton:ei.A,NcActions:ti.A,NcActionSeparator:si.A,NcIconSvgWrapper:zt.A,NcLoadingIcon:js.A},props:{filesListWidth:{type:Number,required:!0},loading:{type:String,required:!0},opened:{type:Boolean,default:!1},source:{type:Object,required:!0},gridMode:{type:Boolean,default:!1}},setup(){const{currentView:e}=xs();return{currentView:e}},data:()=>({openedSubmenu:null}),computed:{currentDir(){var e;return((null===(e=this.$route)||void 0===e||null===(e=e.query)||void 0===e||null===(e=e.dir)||void 0===e?void 0:e.toString())||"/").replace(/^(.+)\/$/,"$1")},isLoading(){return this.source.status===r.zI.LOADING},enabledActions(){return this.source.status===r.zI.FAILED?[]:ai.filter((e=>!e.enabled||e.enabled([this.source],this.currentView))).sort(((e,t)=>(e.order||0)-(t.order||0)))},enabledInlineActions(){return this.filesListWidth<768||this.gridMode?[]:this.enabledActions.filter((e=>{var t;return null==e||null===(t=e.inline)||void 0===t?void 0:t.call(e,this.source,this.currentView)}))},enabledRenderActions(){return this.gridMode?[]:this.enabledActions.filter((e=>"function"==typeof e.renderInline))},enabledDefaultActions(){return this.enabledActions.filter((e=>!(null==e||!e.default)))},enabledMenuActions(){if(this.openedSubmenu)return this.enabledInlineActions;const e=[...this.enabledInlineActions,...this.enabledActions.filter((e=>e.default!==r.m9.HIDDEN&&"function"!=typeof e.renderInline))].filter(((e,t,s)=>t===s.findIndex((t=>t.id===e.id)))),t=e.filter((e=>!e.parent)).map((e=>e.id));return e.filter((e=>!(e.parent&&t.includes(e.parent))))},enabledSubmenuActions(){return this.enabledActions.filter((e=>e.parent)).reduce(((e,t)=>(e[t.parent]||(e[t.parent]=[]),e[t.parent].push(t),e)),{})},openedMenu:{get(){return this.opened},set(e){this.$emit("update:opened",e)}},getBoundariesElement:()=>document.querySelector(".app-content > .files-list"),mountType(){return this.source.attributes["mount-type"]}},methods:{actionDisplayName(e){if((this.gridMode||this.filesListWidth<768&&e.inline)&&"function"==typeof e.title){const t=e.title([this.source],this.currentView);if(t)return t}return e.displayName([this.source],this.currentView)},async onActionClick(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];if(this.isLoading||""!==this.loading)return;if(this.enabledSubmenuActions[e.id])return void(this.openedSubmenu=e);const s=e.displayName([this.source],this.currentView);try{this.$emit("update:loading",e.id),this.$set(this.source,"status",r.zI.LOADING);const t=await e.exec(this.source,this.currentView,this.currentDir);if(null==t)return;if(t)return void(0,jt.Te)((0,Ut.Tl)("files",'"{displayName}" action executed successfully',{displayName:s}));(0,jt.Qg)((0,Ut.Tl)("files",'"{displayName}" action failed',{displayName:s}))}catch(t){qt.error("Error while executing action",{action:e,e:t}),(0,jt.Qg)((0,Ut.Tl)("files",'"{displayName}" action failed',{displayName:s}))}finally{this.$emit("update:loading",""),this.$set(this.source,"status",void 0),t&&(this.openedSubmenu=null)}},execDefaultAction(e){this.enabledDefaultActions.length>0&&(e.preventDefault(),e.stopPropagation(),this.enabledDefaultActions[0].exec(this.source,this.currentView,this.currentDir))},isMenu(e){var t;return(null===(t=this.enabledSubmenuActions[e])||void 0===t?void 0:t.length)>0},async onBackToMenuClick(e){this.openedSubmenu=null,await this.$nextTick(),this.$nextTick((()=>{var t;const s=null===(t=this.$refs["action-".concat(e.id)])||void 0===t?void 0:t[0];var n;s&&(null===(n=s.$el.querySelector("button"))||void 0===n||n.focus())}))},t:Ut.Tl}}),oi=ri;var li=n(10379),di={};di.styleTagTransform=is(),di.setAttributes=es(),di.insert=Zt().bind(null,"head"),di.domAPI=Qt(),di.insertStyleElement=ss(),Yt()(li.A,di),li.A&&li.A.locals&&li.A.locals;var ci=n(64931),ui={};ui.styleTagTransform=is(),ui.setAttributes=es(),ui.insert=Zt().bind(null,"head"),ui.domAPI=Qt(),ui.insertStyleElement=ss(),Yt()(ci.A,ui),ci.A&&ci.A.locals&&ci.A.locals;var mi=(0,Pt.A)(oi,(function(){var e,t,s=this,n=s._self._c;return s._self._setupProxy,n("td",{staticClass:"files-list__row-actions",attrs:{"data-cy-files-list-row-actions":""}},[s._l(s.enabledRenderActions,(function(e){return n("CustomElementRender",{key:e.id,staticClass:"files-list__row-action--inline",class:"files-list__row-action-"+e.id,attrs:{"current-view":s.currentView,render:e.renderInline,source:s.source}})})),s._v(" "),n("NcActions",{ref:"actionsMenu",attrs:{"boundaries-element":s.getBoundariesElement,container:s.getBoundariesElement,"force-name":!0,type:"tertiary","force-menu":0===s.enabledInlineActions.length,inline:s.enabledInlineActions.length,open:s.openedMenu},on:{"update:open":function(e){s.openedMenu=e},close:function(e){s.openedSubmenu=null}}},[s._l(s.enabledMenuActions,(function(e){var t;return n("NcActionButton",{key:e.id,ref:"action-".concat(e.id),refInFor:!0,class:{["files-list__row-action-".concat(e.id)]:!0,"files-list__row-action--menu":s.isMenu(e.id)},attrs:{"close-after-click":!s.isMenu(e.id),"data-cy-files-list-row-action":e.id,"is-menu":s.isMenu(e.id),title:null===(t=e.title)||void 0===t?void 0:t.call(e,[s.source],s.currentView)},on:{click:function(t){return s.onActionClick(e)}},scopedSlots:s._u([{key:"icon",fn:function(){return[s.loading===e.id?n("NcLoadingIcon",{attrs:{size:18}}):n("NcIconSvgWrapper",{attrs:{svg:e.iconSvgInline([s.source],s.currentView)}})]},proxy:!0}],null,!0)},[s._v("\n\t\t\t"+s._s("shared"===s.mountType&&"sharing-status"===e.id?"":s.actionDisplayName(e))+"\n\t\t")])})),s._v(" "),s.openedSubmenu&&s.enabledSubmenuActions[null===(e=s.openedSubmenu)||void 0===e?void 0:e.id]?[n("NcActionButton",{staticClass:"files-list__row-action-back",on:{click:function(e){return s.onBackToMenuClick(s.openedSubmenu)}},scopedSlots:s._u([{key:"icon",fn:function(){return[n("ArrowLeftIcon")]},proxy:!0}],null,!1,3001860362)},[s._v("\n\t\t\t\t"+s._s(s.actionDisplayName(s.openedSubmenu))+"\n\t\t\t")]),s._v(" "),n("NcActionSeparator"),s._v(" "),s._l(s.enabledSubmenuActions[null===(t=s.openedSubmenu)||void 0===t?void 0:t.id],(function(e){var t;return n("NcActionButton",{key:e.id,staticClass:"files-list__row-action--submenu",class:"files-list__row-action-".concat(e.id),attrs:{"close-after-click":"","data-cy-files-list-row-action":e.id,title:null===(t=e.title)||void 0===t?void 0:t.call(e,[s.source],s.currentView)},on:{click:function(t){return s.onActionClick(e)}},scopedSlots:s._u([{key:"icon",fn:function(){return[s.loading===e.id?n("NcLoadingIcon",{attrs:{size:18}}):n("NcIconSvgWrapper",{attrs:{svg:e.iconSvgInline([s.source],s.currentView)}})]},proxy:!0}],null,!0)},[s._v("\n\t\t\t\t"+s._s(s.actionDisplayName(e))+"\n\t\t\t")])}))]:s._e()],2)],2)}),[],!1,null,"801e4784",null);const gi=mi.exports,fi=(0,l.pM)({name:"FileEntryCheckbox",components:{NcCheckboxRadioSwitch:cs.A,NcLoadingIcon:js.A},props:{fileid:{type:Number,required:!0},isLoading:{type:Boolean,default:!1},nodes:{type:Array,required:!0},source:{type:Object,required:!0}},setup(){const e=Js(),t=function(){const e=(0,a.nY)("keyboard",{state:()=>({altKey:!1,ctrlKey:!1,metaKey:!1,shiftKey:!1}),actions:{onEvent(e){e||(e=window.event),l.Ay.set(this,"altKey",!!e.altKey),l.Ay.set(this,"ctrlKey",!!e.ctrlKey),l.Ay.set(this,"metaKey",!!e.metaKey),l.Ay.set(this,"shiftKey",!!e.shiftKey)}}})(...arguments);return e._initialized||(window.addEventListener("keydown",e.onEvent),window.addEventListener("keyup",e.onEvent),window.addEventListener("mousemove",e.onEvent),e._initialized=!0),e}();return{keyboardStore:t,selectionStore:e}},computed:{selectedFiles(){return this.selectionStore.selected},isSelected(){return this.selectedFiles.includes(this.source.source)},index(){return this.nodes.findIndex((e=>e.source===this.source.source))},isFile(){return this.source.type===r.pt.File},ariaLabel(){return this.isFile?(0,Ut.Tl)("files",'Toggle selection for file "{displayName}"',{displayName:this.source.basename}):(0,Ut.Tl)("files",'Toggle selection for folder "{displayName}"',{displayName:this.source.basename})}},methods:{onSelectionChange(e){var t;const s=this.index,n=this.selectionStore.lastSelectedIndex;if(null!==(t=this.keyboardStore)&&void 0!==t&&t.shiftKey&&null!==n){const e=this.selectedFiles.includes(this.source.source),t=Math.min(s,n),i=Math.max(n,s),a=this.selectionStore.lastSelection,r=this.nodes.map((e=>e.source)).slice(t,i+1).filter(Boolean),o=[...a,...r].filter((t=>!e||t!==this.source.source));return qt.debug("Shift key pressed, selecting all files in between",{start:t,end:i,filesToSelect:r,isAlreadySelected:e}),void this.selectionStore.set(o)}const i=e?[...this.selectedFiles,this.source.source]:this.selectedFiles.filter((e=>e!==this.source.source));qt.debug("Updating selection",{selection:i}),this.selectionStore.set(i),this.selectionStore.setLastIndex(s)},resetSelection(){this.selectionStore.reset()},t:Ut.Tl}}),pi=(0,Pt.A)(fi,(function(){var e=this,t=e._self._c;return e._self._setupProxy,t("td",{staticClass:"files-list__row-checkbox",on:{keyup:function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"esc",27,t.key,["Esc","Escape"])||t.ctrlKey||t.shiftKey||t.altKey||t.metaKey?null:e.resetSelection.apply(null,arguments)}}},[e.isLoading?t("NcLoadingIcon"):t("NcCheckboxRadioSwitch",{attrs:{"aria-label":e.ariaLabel,checked:e.isSelected},on:{"update:checked":e.onSelectionChange}})],1)}),[],!1,null,null,null).exports;var hi=n(82182);const vi=(0,Rt.C)("files","forbiddenCharacters",[]),wi=(0,l.pM)({name:"FileEntryName",components:{NcTextField:hi.A},props:{displayName:{type:String,required:!0},extension:{type:String,required:!0},filesListWidth:{type:Number,required:!0},nodes:{type:Array,required:!0},source:{type:Object,required:!0},gridMode:{type:Boolean,default:!1}},setup(){const{currentView:e}=xs();return{currentView:e,renamingStore:Rn()}},computed:{isRenaming(){return this.renamingStore.renamingNode===this.source},isRenamingSmallScreen(){return this.isRenaming&&this.filesListWidth<512},newName:{get(){return this.renamingStore.newName},set(e){this.renamingStore.newName=e}},renameLabel(){return{[r.pt.File]:(0,Ut.Tl)("files","File name"),[r.pt.Folder]:(0,Ut.Tl)("files","Folder name")}[this.source.type]},linkTo(){var e,t;if(this.source.status===r.zI.FAILED)return{is:"span",params:{title:(0,Ut.Tl)("files","This node is unavailable")}};const s=null===(e=this.$parent)||void 0===e||null===(e=e.$refs)||void 0===e||null===(e=e.actions)||void 0===e?void 0:e.enabledDefaultActions;return(null==s?void 0:s.length)>0?{is:"a",params:{title:s[0].displayName([this.source],this.currentView),role:"button",tabindex:"0"}}:(null===(t=this.source)||void 0===t?void 0:t.permissions)&r.aX.READ?{is:"a",params:{download:this.source.basename,href:this.source.source,title:(0,Ut.Tl)("files","Download file {name}",{name:this.displayName}),tabindex:"0"}}:{is:"span"}}},watch:{isRenaming:{immediate:!0,handler(e){e&&this.startRenaming()}}},methods:{checkInputValidity(e){var t,s;const n=e.target,i=(null===(t=(s=this.newName).trim)||void 0===t?void 0:t.call(s))||"";qt.debug("Checking input validity",{newName:i});try{this.isFileNameValid(i),n.setCustomValidity(""),n.title=""}catch(e){e instanceof Error?(n.setCustomValidity(e.message),n.title=e.message):n.setCustomValidity((0,Ut.Tl)("files","Invalid file name"))}finally{n.reportValidity()}},isFileNameValid(e){const t=e.trim();if("."===t||".."===t)throw new Error((0,Ut.Tl)("files",'"{name}" is an invalid file name.',{name:e}));if(0===t.length)throw new Error((0,Ut.Tl)("files","File name cannot be empty."));if(-1!==t.indexOf("/"))throw new Error((0,Ut.Tl)("files",'"/" is not allowed inside a file name.'));if(t.match(window.OC.config.blacklist_files_regex))throw new Error((0,Ut.Tl)("files",'"{name}" is not an allowed filetype.',{name:e}));if(this.checkIfNodeExists(e))throw new Error((0,Ut.Tl)("files","{newName} already exists.",{newName:e}));const s=vi.find((e=>t.includes(e)));if(s)throw new Error((0,Ut.Tl)("files",'"{char}" is not allowed inside a file name.',{char:s}));return!0},checkIfNodeExists(e){return this.nodes.find((t=>t.basename===e&&t!==this.source))},startRenaming(){this.$nextTick((()=>{var e;const t=(this.source.extension||"").split("").length,s=this.source.basename.split("").length-t,n=null===(e=this.$refs.renameInput)||void 0===e||null===(e=e.$refs)||void 0===e||null===(e=e.inputField)||void 0===e||null===(e=e.$refs)||void 0===e?void 0:e.input;n?(n.setSelectionRange(0,s),n.focus(),n.dispatchEvent(new Event("keyup"))):qt.error("Could not find the rename input")}))},stopRenaming(){this.isRenaming&&this.renamingStore.$reset()},async onRename(){var e,t;const s=this.source.basename,n=this.source.encodedSource,i=(null===(e=(t=this.newName).trim)||void 0===e?void 0:e.call(t))||"";if(""!==i)if(s!==i)if(this.checkIfNodeExists(i))(0,jt.Qg)((0,Ut.Tl)("files","Another entry with the same name already exists"));else{this.$set(this.source,"status",r.zI.LOADING),this.source.rename(i),qt.debug("Moving file to",{destination:this.source.encodedSource,oldEncodedSource:n});try{await(0,Ot.Ay)({method:"MOVE",url:n,headers:{Destination:this.source.encodedSource,Overwrite:"F"}}),(0,Ft.Ic)("files:node:updated",this.source),(0,Ft.Ic)("files:node:renamed",this.source),(0,jt.Te)((0,Ut.Tl)("files",'Renamed "{oldName}" to "{newName}"',{oldName:s,newName:i})),this.stopRenaming(),this.$nextTick((()=>{var e;null===(e=this.$refs.basename)||void 0===e||e.focus()}))}catch(e){var a;if(qt.error("Error while renaming file",{error:e}),this.source.rename(s),null===(a=this.$refs.renameInput)||void 0===a||a.focus(),(0,Ot.F0)(e)){var o,l;if(404===(null==e||null===(o=e.response)||void 0===o?void 0:o.status))return void(0,jt.Qg)((0,Ut.Tl)("files",'Could not rename "{oldName}", it does not exist any more',{oldName:s}));if(412===(null==e||null===(l=e.response)||void 0===l?void 0:l.status))return void(0,jt.Qg)((0,Ut.Tl)("files",'The name "{newName}" is already used in the folder "{dir}". Please choose a different name.',{newName:i,dir:this.currentDir}))}(0,jt.Qg)((0,Ut.Tl)("files",'Could not rename "{oldName}"',{oldName:s}))}finally{this.$set(this.source,"status",void 0)}}else this.stopRenaming();else(0,jt.Qg)((0,Ut.Tl)("files","Name cannot be empty"))},t:Ut.Tl}}),Ai=(0,Pt.A)(wi,(function(){var e=this,t=e._self._c;return e._self._setupProxy,e.isRenaming?t("form",{directives:[{name:"on-click-outside",rawName:"v-on-click-outside",value:e.onRename,expression:"onRename"}],staticClass:"files-list__row-rename",attrs:{"aria-label":e.t("files","Rename file")},on:{submit:function(t){return t.preventDefault(),t.stopPropagation(),e.onRename.apply(null,arguments)}}},[t("NcTextField",{ref:"renameInput",attrs:{label:e.renameLabel,autofocus:!0,minlength:1,required:!0,value:e.newName,enterkeyhint:"done"},on:{"update:value":function(t){e.newName=t},keyup:[e.checkInputValidity,function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"esc",27,t.key,["Esc","Escape"])?null:e.stopRenaming.apply(null,arguments)}]}})],1):t(e.linkTo.is,e._b({ref:"basename",tag:"component",staticClass:"files-list__row-name-link",attrs:{"aria-hidden":e.isRenaming,"data-cy-files-list-row-name-link":""}},"component",e.linkTo.params,!1),[t("span",{staticClass:"files-list__row-name-text"},[t("span",{staticClass:"files-list__row-name-",domProps:{textContent:e._s(e.displayName)}}),e._v(" "),t("span",{staticClass:"files-list__row-name-ext",domProps:{textContent:e._s(e.extension)}})])])}),[],!1,null,null,null).exports;var Ci=n(72755);const yi={name:"FileIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},xi=(0,Pt.A)(yi,(function(){var e=this,t=e._self._c;return t("span",e._b({staticClass:"material-design-icon file-icon",attrs:{"aria-hidden":!e.title||null,"aria-label":e.title,role:"img"},on:{click:function(t){return e.$emit("click",t)}}},"span",e.$attrs,!1),[t("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[t("path",{attrs:{d:"M13,9V3.5L18.5,9M6,2C4.89,2 4,2.89 4,4V20A2,2 0 0,0 6,22H18A2,2 0 0,0 20,20V8L14,2H6Z"}},[e.title?t("title",[e._v(e._s(e.title))]):e._e()])])])}),[],!1,null,null,null).exports,bi={name:"FolderOpenIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},_i=(0,Pt.A)(bi,(function(){var e=this,t=e._self._c;return t("span",e._b({staticClass:"material-design-icon folder-open-icon",attrs:{"aria-hidden":!e.title||null,"aria-label":e.title,role:"img"},on:{click:function(t){return e.$emit("click",t)}}},"span",e.$attrs,!1),[t("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[t("path",{attrs:{d:"M19,20H4C2.89,20 2,19.1 2,18V6C2,4.89 2.89,4 4,4H10L12,6H19A2,2 0 0,1 21,8H21L4,8V18L6.14,10H23.21L20.93,18.5C20.7,19.37 19.92,20 19,20Z"}},[e.title?t("title",[e._v(e._s(e.title))]):e._e()])])])}),[],!1,null,null,null).exports,Ti={name:"KeyIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},ki=(0,Pt.A)(Ti,(function(){var e=this,t=e._self._c;return t("span",e._b({staticClass:"material-design-icon key-icon",attrs:{"aria-hidden":!e.title||null,"aria-label":e.title,role:"img"},on:{click:function(t){return e.$emit("click",t)}}},"span",e.$attrs,!1),[t("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[t("path",{attrs:{d:"M7 14C5.9 14 5 13.1 5 12S5.9 10 7 10 9 10.9 9 12 8.1 14 7 14M12.6 10C11.8 7.7 9.6 6 7 6C3.7 6 1 8.7 1 12S3.7 18 7 18C9.6 18 11.8 16.3 12.6 14H16V18H20V14H23V10H12.6Z"}},[e.title?t("title",[e._v(e._s(e.title))]):e._e()])])])}),[],!1,null,null,null).exports,Si={name:"NetworkIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},Li=(0,Pt.A)(Si,(function(){var e=this,t=e._self._c;return t("span",e._b({staticClass:"material-design-icon network-icon",attrs:{"aria-hidden":!e.title||null,"aria-label":e.title,role:"img"},on:{click:function(t){return e.$emit("click",t)}}},"span",e.$attrs,!1),[t("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[t("path",{attrs:{d:"M17,3A2,2 0 0,1 19,5V15A2,2 0 0,1 17,17H13V19H14A1,1 0 0,1 15,20H22V22H15A1,1 0 0,1 14,23H10A1,1 0 0,1 9,22H2V20H9A1,1 0 0,1 10,19H11V17H7C5.89,17 5,16.1 5,15V5A2,2 0 0,1 7,3H17Z"}},[e.title?t("title",[e._v(e._s(e.title))]):e._e()])])])}),[],!1,null,null,null).exports,Fi={name:"TagIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},Ui=(0,Pt.A)(Fi,(function(){var e=this,t=e._self._c;return t("span",e._b({staticClass:"material-design-icon tag-icon",attrs:{"aria-hidden":!e.title||null,"aria-label":e.title,role:"img"},on:{click:function(t){return e.$emit("click",t)}}},"span",e.$attrs,!1),[t("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[t("path",{attrs:{d:"M5.5,7A1.5,1.5 0 0,1 4,5.5A1.5,1.5 0 0,1 5.5,4A1.5,1.5 0 0,1 7,5.5A1.5,1.5 0 0,1 5.5,7M21.41,11.58L12.41,2.58C12.05,2.22 11.55,2 11,2H4C2.89,2 2,2.89 2,4V11C2,11.55 2.22,12.05 2.59,12.41L11.58,21.41C11.95,21.77 12.45,22 13,22C13.55,22 14.05,21.77 14.41,21.41L21.41,14.41C21.78,14.05 22,13.55 22,13C22,12.44 21.77,11.94 21.41,11.58Z"}},[e.title?t("title",[e._v(e._s(e.title))]):e._e()])])])}),[],!1,null,null,null).exports,Ei={name:"PlayCircleIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},Pi=(0,Pt.A)(Ei,(function(){var e=this,t=e._self._c;return t("span",e._b({staticClass:"material-design-icon play-circle-icon",attrs:{"aria-hidden":!e.title||null,"aria-label":e.title,role:"img"},on:{click:function(t){return e.$emit("click",t)}}},"span",e.$attrs,!1),[t("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[t("path",{attrs:{d:"M10,16.5V7.5L16,12M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2Z"}},[e.title?t("title",[e._v(e._s(e.title))]):e._e()])])])}),[],!1,null,null,null).exports,Ni={name:"CollectivesIcon",props:{title:{type:String,default:""},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},Bi=(0,Pt.A)(Ni,(function(){var e=this,t=e._self._c;return t("span",e._b({staticClass:"material-design-icon collectives-icon",attrs:{"aria-hidden":!e.title,"aria-label":e.title,role:"img"},on:{click:function(t){return e.$emit("click",t)}}},"span",e.$attrs,!1),[t("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 16 16"}},[t("path",{attrs:{d:"M2.9,8.8c0-1.2,0.4-2.4,1.2-3.3L0.3,6c-0.2,0-0.3,0.3-0.1,0.4l2.7,2.6C2.9,9,2.9,8.9,2.9,8.8z"}}),e._v(" "),t("path",{attrs:{d:"M8,3.7c0.7,0,1.3,0.1,1.9,0.4L8.2,0.6c-0.1-0.2-0.3-0.2-0.4,0L6.1,4C6.7,3.8,7.3,3.7,8,3.7z"}}),e._v(" "),t("path",{attrs:{d:"M3.7,11.5L3,15.2c0,0.2,0.2,0.4,0.4,0.3l3.3-1.7C5.4,13.4,4.4,12.6,3.7,11.5z"}}),e._v(" "),t("path",{attrs:{d:"M15.7,6l-3.7-0.5c0.7,0.9,1.2,2,1.2,3.3c0,0.1,0,0.2,0,0.3l2.7-2.6C15.9,6.3,15.9,6.1,15.7,6z"}}),e._v(" "),t("path",{attrs:{d:"M12.3,11.5c-0.7,1.1-1.8,1.9-3,2.2l3.3,1.7c0.2,0.1,0.4-0.1,0.4-0.3L12.3,11.5z"}}),e._v(" "),t("path",{attrs:{d:"M9.6,10.1c-0.4,0.5-1,0.8-1.6,0.8c-1.1,0-2-0.9-2.1-2C5.9,7.7,6.8,6.7,8,6.7c0.6,0,1.1,0.3,1.5,0.7 c0.1,0.1,0.1,0.1,0.2,0.1h1.4c0.2,0,0.4-0.2,0.3-0.5c-0.7-1.3-2.1-2.2-3.8-2.1C5.8,5,4.3,6.6,4.1,8.5C4,10.8,5.8,12.7,8,12.7 c1.6,0,2.9-0.9,3.5-2.3c0.1-0.2-0.1-0.4-0.3-0.4H9.9C9.8,10,9.7,10,9.6,10.1z"}})])])}),[],!1,null,null,null).exports,Ii=(0,l.pM)({name:"FavoriteIcon",components:{NcIconSvgWrapper:zt.A},data:()=>({StarSvg:''}),async mounted(){var e;await this.$nextTick();const t=this.$el.querySelector("svg");null==t||null===(e=t.setAttribute)||void 0===e||e.call(t,"viewBox","-4 -4 30 30")},methods:{t:Ut.Tl}});var zi=n(4575),Di={};Di.styleTagTransform=is(),Di.setAttributes=es(),Di.insert=Zt().bind(null,"head"),Di.domAPI=Qt(),Di.insertStyleElement=ss(),Yt()(zi.A,Di),zi.A&&zi.A.locals&&zi.A.locals;const Ri=(0,Pt.A)(Ii,(function(){var e=this,t=e._self._c;return e._self._setupProxy,t("NcIconSvgWrapper",{staticClass:"favorite-marker-icon",attrs:{name:e.t("files","Favorite"),svg:e.StarSvg}})}),[],!1,null,"f2d0cf6e",null).exports,ji=l.Ay.extend({name:"FileEntryPreview",components:{AccountGroupIcon:Ci.A,AccountPlusIcon:Vs,CollectivesIcon:Bi,FavoriteIcon:Ri,FileIcon:xi,FolderIcon:Vn.A,FolderOpenIcon:_i,KeyIcon:ki,LinkIcon:Ns.A,NetworkIcon:Li,TagIcon:Ui},props:{source:{type:Object,required:!0},dragover:{type:Boolean,default:!1},gridMode:{type:Boolean,default:!1}},setup:()=>({userConfigStore:vs()}),data:()=>({backgroundFailed:void 0}),computed:{fileid(){var e,t;return null===(e=this.source)||void 0===e||null===(e=e.fileid)||void 0===e||null===(t=e.toString)||void 0===t?void 0:t.call(e)},isFavorite(){return 1===this.source.attributes.favorite},userConfig(){return this.userConfigStore.userConfig},cropPreviews(){return!0===this.userConfig.crop_image_previews},previewUrl(){if(this.source.type===r.pt.Folder)return null;if(!0===this.backgroundFailed)return null;try{var e;const t=this.source.attributes.previewUrl||(0,c.Jv)("/core/preview?fileId={fileid}",{fileid:this.fileid}),s=new URL(window.location.origin+t);s.searchParams.set("x",this.gridMode?"128":"32"),s.searchParams.set("y",this.gridMode?"128":"32"),s.searchParams.set("mimeFallback","true");const n=(null===(e=this.source)||void 0===e||null===(e=e.attributes)||void 0===e?void 0:e.etag)||"";return s.searchParams.set("v",n.slice(0,6)),s.searchParams.set("a",!0===this.cropPreviews?"0":"1"),s.href}catch(e){return null}},fileOverlay(){return void 0!==this.source.attributes["metadata-files-live-photo"]?Pi:null},folderOverlay(){var e,t,s,n;if(this.source.type!==r.pt.Folder)return null;if(1===(null===(e=this.source)||void 0===e||null===(e=e.attributes)||void 0===e?void 0:e["is-encrypted"]))return ki;if(null!==(t=this.source)&&void 0!==t&&null!==(t=t.attributes)&&void 0!==t&&t["is-tag"])return Ui;const i=Object.values((null===(s=this.source)||void 0===s||null===(s=s.attributes)||void 0===s?void 0:s["share-types"])||{}).flat();if(i.some((e=>e===Es.Z.SHARE_TYPE_LINK||e===Es.Z.SHARE_TYPE_EMAIL)))return Ns.A;if(i.length>0)return Vs;switch(null===(n=this.source)||void 0===n||null===(n=n.attributes)||void 0===n?void 0:n["mount-type"]){case"external":case"external-session":return Li;case"group":return Ci.A;case"collective":return Bi}return null}},methods:{reset(){this.backgroundFailed=void 0,this.$refs.previewImg&&(this.$refs.previewImg.src="")},onBackgroundError(e){var t;""!==(null===(t=e.target)||void 0===t?void 0:t.src)&&(this.backgroundFailed=!0)},t:Ut.Tl}}),Oi=(0,Pt.A)(ji,(function(){var e=this,t=e._self._c;return e._self._setupProxy,t("span",{staticClass:"files-list__row-icon"},["folder"===e.source.type?[e.dragover?e._m(0):[e._m(1),e._v(" "),e.folderOverlay?t(e.folderOverlay,{tag:"OverlayIcon",staticClass:"files-list__row-icon-overlay"}):e._e()]]:e.previewUrl&&!0!==e.backgroundFailed?t("img",{ref:"previewImg",staticClass:"files-list__row-icon-preview",class:{"files-list__row-icon-preview--loaded":!1===e.backgroundFailed},attrs:{alt:"",loading:"lazy",src:e.previewUrl},on:{error:e.onBackgroundError,load:function(t){e.backgroundFailed=!1}}}):e._m(2),e._v(" "),e.isFavorite?t("span",{staticClass:"files-list__row-icon-favorite"},[e._m(3)],1):e._e(),e._v(" "),e.fileOverlay?t(e.fileOverlay,{tag:"OverlayIcon",staticClass:"files-list__row-icon-overlay files-list__row-icon-overlay--file"}):e._e()],2)}),[function(){var e=this._self._c;return this._self._setupProxy,e("FolderOpenIcon")},function(){var e=this._self._c;return this._self._setupProxy,e("FolderIcon")},function(){var e=this._self._c;return this._self._setupProxy,e("FileIcon")},function(){var e=this._self._c;return this._self._setupProxy,e("FavoriteIcon")}],!1,null,null,null).exports,Mi=(0,l.pM)({name:"FileEntry",components:{CustomElementRender:Xn,FileEntryActions:gi,FileEntryCheckbox:pi,FileEntryName:Ai,FileEntryPreview:Oi,NcDateTime:Jn.A},mixins:[Qn],props:{isMtimeAvailable:{type:Boolean,default:!1},isSizeAvailable:{type:Boolean,default:!1},compact:{type:Boolean,default:!1}},setup(){const e=Dn(),t=Fn(),s=Ks(),n=Rn(),i=Js(),{currentView:a}=xs();return{actionsMenuStore:e,draggingStore:t,filesStore:s,renamingStore:n,selectionStore:i,currentView:a}},computed:{rowListeners(){return{...this.isRenaming?{}:{dragstart:this.onDragStart,dragover:this.onDragOver},contextmenu:this.onRightClick,dragleave:this.onDragLeave,dragend:this.onDragEnd,drop:this.onDrop}},columns(){var e;return this.filesListWidth<512||this.compact?[]:(null===(e=this.currentView)||void 0===e?void 0:e.columns)||[]},size(){const e=this.source.size;return!e||e<0?this.t("files","Pending"):(0,r.v7)(e,!0)},sizeOpacity(){const e=this.source.size;if(!e||isNaN(e)||e<0)return{};const t=Math.round(Math.min(100,100*Math.pow(e/10485760,2)));return{color:"color-mix(in srgb, var(--color-main-text) ".concat(t,"%, var(--color-text-maxcontrast))")}},mtimeOpacity(){var e,t;const s=26784e5,n=null===(e=this.source.mtime)||void 0===e||null===(t=e.getTime)||void 0===t?void 0:t.call(e);if(!n)return{};const i=Math.round(Math.min(100,100*(s-(Date.now()-n))/s));return i<0?{}:{color:"color-mix(in srgb, var(--color-main-text) ".concat(i,"%, var(--color-text-maxcontrast))")}},mtimeTitle(){return this.source.mtime?(0,zn.A)(this.source.mtime).format("LLL"):""}},methods:{formatFileSize:r.v7}}),Vi=(0,Pt.A)(Mi,(function(){var e=this,t=e._self._c;return e._self._setupProxy,t("tr",e._g({staticClass:"files-list__row",class:{"files-list__row--dragover":e.dragover,"files-list__row--loading":e.isLoading,"files-list__row--active":e.isActive},attrs:{"data-cy-files-list-row":"","data-cy-files-list-row-fileid":e.fileid,"data-cy-files-list-row-name":e.source.basename,draggable:e.canDrag}},e.rowListeners),[e.isFailedSource?t("span",{staticClass:"files-list__row--failed"}):e._e(),e._v(" "),t("FileEntryCheckbox",{attrs:{fileid:e.fileid,"is-loading":e.isLoading,nodes:e.nodes,source:e.source}}),e._v(" "),t("td",{staticClass:"files-list__row-name",attrs:{"data-cy-files-list-row-name":""}},[t("FileEntryPreview",{ref:"preview",attrs:{source:e.source,dragover:e.dragover},nativeOn:{auxclick:function(t){return e.execDefaultAction.apply(null,arguments)},click:function(t){return e.execDefaultAction.apply(null,arguments)}}}),e._v(" "),t("FileEntryName",{ref:"name",attrs:{"display-name":e.displayName,extension:e.extension,"files-list-width":e.filesListWidth,nodes:e.nodes,source:e.source},nativeOn:{auxclick:function(t){return e.execDefaultAction.apply(null,arguments)},click:function(t){return e.execDefaultAction.apply(null,arguments)}}})],1),e._v(" "),t("FileEntryActions",{directives:[{name:"show",rawName:"v-show",value:!e.isRenamingSmallScreen,expression:"!isRenamingSmallScreen"}],ref:"actions",class:"files-list__row-actions-".concat(e.uniqueId),attrs:{"files-list-width":e.filesListWidth,loading:e.loading,opened:e.openedMenu,source:e.source},on:{"update:loading":function(t){e.loading=t},"update:opened":function(t){e.openedMenu=t}}}),e._v(" "),!e.compact&&e.isSizeAvailable?t("td",{staticClass:"files-list__row-size",style:e.sizeOpacity,attrs:{"data-cy-files-list-row-size":""},on:{click:e.openDetailsIfAvailable}},[t("span",[e._v(e._s(e.size))])]):e._e(),e._v(" "),!e.compact&&e.isMtimeAvailable?t("td",{staticClass:"files-list__row-mtime",style:e.mtimeOpacity,attrs:{"data-cy-files-list-row-mtime":""},on:{click:e.openDetailsIfAvailable}},[e.source.mtime?t("NcDateTime",{attrs:{timestamp:e.source.mtime,"ignore-seconds":!0}}):e._e()],1):e._e(),e._v(" "),e._l(e.columns,(function(s){var n;return t("td",{key:s.id,staticClass:"files-list__row-column-custom",class:"files-list__row-".concat(null===(n=e.currentView)||void 0===n?void 0:n.id,"-").concat(s.id),attrs:{"data-cy-files-list-row-column-custom":s.id},on:{click:e.openDetailsIfAvailable}},[t("CustomElementRender",{attrs:{"current-view":e.currentView,render:s.render,source:e.source}})],1)}))],2)}),[],!1,null,null,null).exports,$i=(0,l.pM)({name:"FileEntryGrid",components:{FileEntryActions:gi,FileEntryCheckbox:pi,FileEntryName:Ai,FileEntryPreview:Oi},mixins:[Qn],inheritAttrs:!1,setup(){const e=Dn(),t=Fn(),s=Ks(),n=Rn(),i=Js(),{currentView:a}=xs();return{actionsMenuStore:e,draggingStore:t,filesStore:s,renamingStore:n,selectionStore:i,currentView:a}},data:()=>({gridMode:!0})}),qi=(0,Pt.A)($i,(function(){var e=this,t=e._self._c;return e._self._setupProxy,t("tr",{staticClass:"files-list__row",class:{"files-list__row--active":e.isActive,"files-list__row--dragover":e.dragover,"files-list__row--loading":e.isLoading},attrs:{"data-cy-files-list-row":"","data-cy-files-list-row-fileid":e.fileid,"data-cy-files-list-row-name":e.source.basename,draggable:e.canDrag},on:{contextmenu:e.onRightClick,dragover:e.onDragOver,dragleave:e.onDragLeave,dragstart:e.onDragStart,dragend:e.onDragEnd,drop:e.onDrop}},[e.isFailedSource?t("span",{staticClass:"files-list__row--failed"}):e._e(),e._v(" "),t("FileEntryCheckbox",{attrs:{fileid:e.fileid,"is-loading":e.isLoading,nodes:e.nodes,source:e.source}}),e._v(" "),t("td",{staticClass:"files-list__row-name",attrs:{"data-cy-files-list-row-name":""}},[t("FileEntryPreview",{ref:"preview",attrs:{dragover:e.dragover,"grid-mode":!0,source:e.source},nativeOn:{auxclick:function(t){return e.execDefaultAction.apply(null,arguments)},click:function(t){return e.execDefaultAction.apply(null,arguments)}}}),e._v(" "),t("FileEntryName",{ref:"name",attrs:{"display-name":e.displayName,extension:e.extension,"files-list-width":e.filesListWidth,"grid-mode":!0,nodes:e.nodes,source:e.source},nativeOn:{auxclick:function(t){return e.execDefaultAction.apply(null,arguments)},click:function(t){return e.execDefaultAction.apply(null,arguments)}}})],1),e._v(" "),t("FileEntryActions",{ref:"actions",class:"files-list__row-actions-".concat(e.uniqueId),attrs:{"files-list-width":e.filesListWidth,"grid-mode":!0,loading:e.loading,opened:e.openedMenu,source:e.source},on:{"update:loading":function(t){e.loading=t},"update:opened":function(t){e.openedMenu=t}}})],1)}),[],!1,null,null,null).exports;var Hi=n(96763);const Wi={name:"FilesListHeader",props:{header:{type:Object,required:!0},currentFolder:{type:Object,required:!0},currentView:{type:Object,required:!0}},computed:{enabled(){return this.header.enabled(this.currentFolder,this.currentView)}},watch:{enabled(e){e&&this.header.updated(this.currentFolder,this.currentView)},currentFolder(){this.header.updated(this.currentFolder,this.currentView)}},mounted(){Hi.debug("Mounted",this.header.id),this.header.render(this.$refs.mount,this.currentFolder,this.currentView)}},Gi=(0,Pt.A)(Wi,(function(){var e=this,t=e._self._c;return t("div",{directives:[{name:"show",rawName:"v-show",value:e.enabled,expression:"enabled"}],class:"files-list__header-".concat(e.header.id)},[t("span",{ref:"mount"})])}),[],!1,null,null,null).exports,Yi=(0,l.pM)({name:"FilesListTableFooter",props:{currentView:{type:r.Ss,required:!0},isMtimeAvailable:{type:Boolean,default:!1},isSizeAvailable:{type:Boolean,default:!1},nodes:{type:Array,required:!0},summary:{type:String,default:""},filesListWidth:{type:Number,default:0}},setup(){const e=Qs();return{filesStore:Ks(),pathsStore:e}},computed:{dir(){var e;return((null===(e=this.$route)||void 0===e||null===(e=e.query)||void 0===e?void 0:e.dir)||"/").replace(/^(.+)\/$/,"$1")},currentFolder(){var e;if(null===(e=this.currentView)||void 0===e||!e.id)return;if("/"===this.dir)return this.filesStore.getRoot(this.currentView.id);const t=this.pathsStore.getPath(this.currentView.id,this.dir);return this.filesStore.getNode(t)},columns(){var e;return this.filesListWidth<512?[]:(null===(e=this.currentView)||void 0===e?void 0:e.columns)||[]},totalSize(){var e;return null!==(e=this.currentFolder)&&void 0!==e&&e.size?(0,r.v7)(this.currentFolder.size,!0):(0,r.v7)(this.nodes.reduce(((e,t)=>{var s;return e+(null!==(s=t.size)&&void 0!==s?s:0)}),0),!0)}},methods:{classForColumn(e){return{"files-list__row-column-custom":!0,["files-list__row-".concat(this.currentView.id,"-").concat(e.id)]:!0}},t:Ut.Tl}});var Ki=n(6049),Qi={};Qi.styleTagTransform=is(),Qi.setAttributes=es(),Qi.insert=Zt().bind(null,"head"),Qi.domAPI=Qt(),Qi.insertStyleElement=ss(),Yt()(Ki.A,Qi),Ki.A&&Ki.A.locals&&Ki.A.locals;const Ji=(0,Pt.A)(Yi,(function(){var e=this,t=e._self._c;return e._self._setupProxy,t("tr",[t("th",{staticClass:"files-list__row-checkbox"},[t("span",{staticClass:"hidden-visually"},[e._v(e._s(e.t("files","Total rows summary")))])]),e._v(" "),t("td",{staticClass:"files-list__row-name"},[t("span",{staticClass:"files-list__row-icon"}),e._v(" "),t("span",[e._v(e._s(e.summary))])]),e._v(" "),t("td",{staticClass:"files-list__row-actions"}),e._v(" "),e.isSizeAvailable?t("td",{staticClass:"files-list__column files-list__row-size"},[t("span",[e._v(e._s(e.totalSize))])]):e._e(),e._v(" "),e.isMtimeAvailable?t("td",{staticClass:"files-list__column files-list__row-mtime"}):e._e(),e._v(" "),e._l(e.columns,(function(s){var n;return t("th",{key:s.id,class:e.classForColumn(s)},[t("span",[e._v(e._s(null===(n=s.summary)||void 0===n?void 0:n.call(s,e.nodes,e.currentView)))])])}))],2)}),[],!1,null,"130ade4f",null).exports;var Zi=n(1795),Xi=n(33017);const ea=l.Ay.extend({computed:{...(0,a.aH)(_s,["getConfig","setSortingBy","toggleSortingDirection"]),currentView(){return this.$navigation.active},sortingMode(){var e,t;return(null===(e=this.getConfig(this.currentView.id))||void 0===e?void 0:e.sorting_mode)||(null===(t=this.currentView)||void 0===t?void 0:t.defaultSortKey)||"basename"},isAscSorting(){var e;return"desc"!==(null===(e=this.getConfig(this.currentView.id))||void 0===e?void 0:e.sorting_direction)}},methods:{toggleSortBy(e){this.sortingMode!==e?this.setSortingBy(e,this.currentView.id):this.toggleSortingDirection(this.currentView.id)}}}),ta=(0,l.pM)({name:"FilesListTableHeaderButton",components:{MenuDown:Zi.A,MenuUp:Xi.A,NcButton:Ds.A},mixins:[ea],props:{name:{type:String,required:!0},mode:{type:String,required:!0}},methods:{t:Ut.Tl}});var sa=n(413),na={};na.styleTagTransform=is(),na.setAttributes=es(),na.insert=Zt().bind(null,"head"),na.domAPI=Qt(),na.insertStyleElement=ss(),Yt()(sa.A,na),sa.A&&sa.A.locals&&sa.A.locals;const ia=(0,Pt.A)(ta,(function(){var e=this,t=e._self._c;return e._self._setupProxy,t("NcButton",{class:["files-list__column-sort-button",{"files-list__column-sort-button--active":e.sortingMode===e.mode,"files-list__column-sort-button--size":"size"===e.sortingMode}],attrs:{alignment:"size"===e.mode?"end":"start-reverse",type:"tertiary"},on:{click:function(t){return e.toggleSortBy(e.mode)}},scopedSlots:e._u([{key:"icon",fn:function(){return[e.sortingMode!==e.mode||e.isAscSorting?t("MenuUp",{staticClass:"files-list__column-sort-button-icon"}):t("MenuDown",{staticClass:"files-list__column-sort-button-icon"})]},proxy:!0}])},[e._v(" "),t("span",{staticClass:"files-list__column-sort-button-text"},[e._v(e._s(e.name))])])}),[],!1,null,"4e97a5c6",null).exports,aa=(0,l.pM)({name:"FilesListTableHeader",components:{FilesListTableHeaderButton:ia,NcCheckboxRadioSwitch:cs.A},mixins:[ea],props:{isMtimeAvailable:{type:Boolean,default:!1},isSizeAvailable:{type:Boolean,default:!1},nodes:{type:Array,required:!0},filesListWidth:{type:Number,default:0}},setup(){const e=Ks(),t=Js(),{currentView:s}=xs();return{filesStore:e,selectionStore:t,currentView:s}},computed:{columns(){var e;return this.filesListWidth<512?[]:(null===(e=this.currentView)||void 0===e?void 0:e.columns)||[]},dir(){var e;return((null===(e=this.$route)||void 0===e||null===(e=e.query)||void 0===e?void 0:e.dir)||"/").replace(/^(.+)\/$/,"$1")},selectAllBind(){const e=(0,Ut.Tl)("files","Toggle selection for all files and folders");return{"aria-label":e,checked:this.isAllSelected,indeterminate:this.isSomeSelected,title:e}},selectedNodes(){return this.selectionStore.selected},isAllSelected(){return this.selectedNodes.length===this.nodes.length},isNoneSelected(){return 0===this.selectedNodes.length},isSomeSelected(){return!this.isAllSelected&&!this.isNoneSelected}},methods:{ariaSortForMode(e){return this.sortingMode===e?this.isAscSorting?"ascending":"descending":null},classForColumn(e){var t;return{"files-list__column":!0,"files-list__column--sortable":!!e.sort,"files-list__row-column-custom":!0,["files-list__row-".concat(null===(t=this.currentView)||void 0===t?void 0:t.id,"-").concat(e.id)]:!0}},onToggleAll(e){if(e){const e=this.nodes.map((e=>e.source)).filter(Boolean);qt.debug("Added all nodes to selection",{selection:e}),this.selectionStore.setLastIndex(null),this.selectionStore.set(e)}else qt.debug("Cleared selection"),this.selectionStore.reset()},resetSelection(){this.selectionStore.reset()},t:Ut.Tl}});var ra=n(55963),oa={};oa.styleTagTransform=is(),oa.setAttributes=es(),oa.insert=Zt().bind(null,"head"),oa.domAPI=Qt(),oa.insertStyleElement=ss(),Yt()(ra.A,oa),ra.A&&ra.A.locals&&ra.A.locals;const la=(0,Pt.A)(aa,(function(){var e=this,t=e._self._c;return e._self._setupProxy,t("tr",{staticClass:"files-list__row-head"},[t("th",{staticClass:"files-list__column files-list__row-checkbox",on:{keyup:function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"esc",27,t.key,["Esc","Escape"])||t.ctrlKey||t.shiftKey||t.altKey||t.metaKey?null:e.resetSelection.apply(null,arguments)}}},[t("NcCheckboxRadioSwitch",e._b({on:{"update:checked":e.onToggleAll}},"NcCheckboxRadioSwitch",e.selectAllBind,!1))],1),e._v(" "),t("th",{staticClass:"files-list__column files-list__row-name files-list__column--sortable",attrs:{"aria-sort":e.ariaSortForMode("basename")}},[t("span",{staticClass:"files-list__row-icon"}),e._v(" "),t("FilesListTableHeaderButton",{attrs:{name:e.t("files","Name"),mode:"basename"}})],1),e._v(" "),t("th",{staticClass:"files-list__row-actions"}),e._v(" "),e.isSizeAvailable?t("th",{staticClass:"files-list__column files-list__row-size",class:{"files-list__column--sortable":e.isSizeAvailable},attrs:{"aria-sort":e.ariaSortForMode("size")}},[t("FilesListTableHeaderButton",{attrs:{name:e.t("files","Size"),mode:"size"}})],1):e._e(),e._v(" "),e.isMtimeAvailable?t("th",{staticClass:"files-list__column files-list__row-mtime",class:{"files-list__column--sortable":e.isMtimeAvailable},attrs:{"aria-sort":e.ariaSortForMode("mtime")}},[t("FilesListTableHeaderButton",{attrs:{name:e.t("files","Modified"),mode:"mtime"}})],1):e._e(),e._v(" "),e._l(e.columns,(function(s){return t("th",{key:s.id,class:e.classForColumn(s),attrs:{"aria-sort":e.ariaSortForMode(s.id)}},[s.sort?t("FilesListTableHeaderButton",{attrs:{name:s.title,mode:s.id}}):t("span",[e._v("\n\t\t\t"+e._s(s.title)+"\n\t\t")])],1)}))],2)}),[],!1,null,"6eaeabb8",null).exports;var da=n(17334),ca=n.n(da),ua=n(96763);const ma=l.Ay.extend({name:"VirtualList",mixins:[Un],props:{dataComponent:{type:[Object,Function],required:!0},dataKey:{type:String,required:!0},dataSources:{type:Array,required:!0},extraProps:{type:Object,default:()=>({})},scrollToIndex:{type:Number,default:0},gridMode:{type:Boolean,default:!1},caption:{type:String,default:""}},data(){return{index:this.scrollToIndex,beforeHeight:0,headerHeight:0,tableHeight:0,resizeObserver:null}},computed:{isReady(){return this.tableHeight>0},bufferItems(){return this.gridMode?this.columnCount:3},itemHeight(){return this.gridMode?197:55},itemWidth:()=>175,rowCount(){return Math.ceil((this.tableHeight-this.headerHeight)/this.itemHeight)+this.bufferItems/this.columnCount*2+1},columnCount(){return this.gridMode?Math.floor(this.filesListWidth/this.itemWidth):1},startIndex(){return Math.max(0,this.index-this.bufferItems)},shownItems(){return this.gridMode?this.rowCount*this.columnCount:this.rowCount},renderedItems(){if(!this.isReady)return[];const e=this.dataSources.slice(this.startIndex,this.startIndex+this.shownItems),t=e.filter((e=>Object.values(this.$_recycledPool).includes(e[this.dataKey]))).map((e=>e[this.dataKey])),s=Object.keys(this.$_recycledPool).filter((e=>!t.includes(this.$_recycledPool[e])));return e.map((e=>{const t=Object.values(this.$_recycledPool).indexOf(e[this.dataKey]);if(-1!==t)return{key:Object.keys(this.$_recycledPool)[t],item:e};const n=s.pop()||Math.random().toString(36).substr(2);return this.$_recycledPool[n]=e[this.dataKey],{key:n,item:e}}))},totalRowCount(){return Math.floor(this.dataSources.length/this.columnCount)},tbodyStyle(){const e=this.startIndex+this.rowCount>this.dataSources.length,t=this.dataSources.length-this.startIndex-this.shownItems,s=Math.floor(Math.min(this.dataSources.length-this.startIndex,t)/this.columnCount);return{paddingTop:"".concat(Math.floor(this.startIndex/this.columnCount)*this.itemHeight,"px"),paddingBottom:e?0:"".concat(s*this.itemHeight,"px"),minHeight:"".concat(this.totalRowCount*this.itemHeight+this.beforeHeight,"px")}}},watch:{scrollToIndex(e){this.scrollTo(e)},totalRowCount(){this.scrollToIndex&&this.$nextTick((()=>this.scrollTo(this.scrollToIndex)))},columnCount(e,t){0!==t?this.scrollTo(this.index):ua.debug("VirtualList: columnCount is 0, skipping scroll")}},mounted(){var e,t;const s=null===(e=this.$refs)||void 0===e?void 0:e.before,n=this.$el,i=null===(t=this.$refs)||void 0===t?void 0:t.thead;this.resizeObserver=new ResizeObserver(ca()((()=>{var e,t,a;this.beforeHeight=null!==(e=null==s?void 0:s.clientHeight)&&void 0!==e?e:0,this.headerHeight=null!==(t=null==i?void 0:i.clientHeight)&&void 0!==t?t:0,this.tableHeight=null!==(a=null==n?void 0:n.clientHeight)&&void 0!==a?a:0,qt.debug("VirtualList: resizeObserver updated"),this.onScroll()}),100,!1)),this.resizeObserver.observe(s),this.resizeObserver.observe(n),this.resizeObserver.observe(i),this.scrollToIndex&&this.scrollTo(this.scrollToIndex),this.$el.addEventListener("scroll",this.onScroll,{passive:!0}),this.$_recycledPool={}},beforeDestroy(){this.resizeObserver&&this.resizeObserver.disconnect()},methods:{scrollTo(e){const t=Math.ceil(this.dataSources.length/this.columnCount);if(t{this._onScrollHandle=null;const e=this.$el.scrollTop-this.beforeHeight,t=Math.floor(e/this.itemHeight)*this.columnCount;this.index=Math.max(0,t),this.$emit("scroll")})))}}}),ga=(0,Pt.A)(ma,(function(){var e=this,t=e._self._c;return e._self._setupProxy,t("div",{staticClass:"files-list",attrs:{"data-cy-files-list":""}},[t("div",{ref:"before",staticClass:"files-list__before"},[e._t("before")],2),e._v(" "),e.$scopedSlots["header-overlay"]?t("div",{staticClass:"files-list__thead-overlay"},[e._t("header-overlay")],2):e._e(),e._v(" "),t("table",{staticClass:"files-list__table",class:{"files-list__table--with-thead-overlay":!!e.$scopedSlots["header-overlay"]}},[e.caption?t("caption",{staticClass:"hidden-visually"},[e._v("\n\t\t\t"+e._s(e.caption)+"\n\t\t")]):e._e(),e._v(" "),t("thead",{ref:"thead",staticClass:"files-list__thead",attrs:{"data-cy-files-list-thead":""}},[e._t("header")],2),e._v(" "),t("tbody",{staticClass:"files-list__tbody",class:e.gridMode?"files-list__tbody--grid":"files-list__tbody--list",style:e.tbodyStyle,attrs:{"data-cy-files-list-tbody":""}},e._l(e.renderedItems,(function(s,n){let{key:i,item:a}=s;return t(e.dataComponent,e._b({key:i,tag:"component",attrs:{source:a,index:n}},"component",e.extraProps,!1))})),1),e._v(" "),t("tfoot",{directives:[{name:"show",rawName:"v-show",value:e.isReady,expression:"isReady"}],staticClass:"files-list__tfoot",attrs:{"data-cy-files-list-tfoot":""}},[e._t("footer")],2)])])}),[],!1,null,null,null).exports,fa=(0,r.qK)(),pa=(0,l.pM)({name:"FilesListTableHeaderActions",components:{NcActions:ti.A,NcActionButton:ei.A,NcIconSvgWrapper:zt.A,NcLoadingIcon:js.A},mixins:[Un],props:{currentView:{type:Object,required:!0},selectedNodes:{type:Array,default:()=>[]}},setup:()=>({actionsMenuStore:Dn(),filesStore:Ks(),selectionStore:Js()}),data:()=>({loading:null}),computed:{dir(){var e;return((null===(e=this.$route)||void 0===e||null===(e=e.query)||void 0===e?void 0:e.dir)||"/").replace(/^(.+)\/$/,"$1")},enabledActions(){return fa.filter((e=>e.execBatch)).filter((e=>!e.enabled||e.enabled(this.nodes,this.currentView))).sort(((e,t)=>(e.order||0)-(t.order||0)))},nodes(){return this.selectedNodes.map((e=>this.getNode(e))).filter(Boolean)},areSomeNodesLoading(){return this.nodes.some((e=>e.status===r.zI.LOADING))},openedMenu:{get(){return"global"===this.actionsMenuStore.opened},set(e){this.actionsMenuStore.opened=e?"global":null}},inlineActions(){return this.filesListWidth<512?0:this.filesListWidth<768?1:this.filesListWidth<1024?2:3}},methods:{getNode(e){return this.filesStore.getNode(e)},async onActionClick(e){const t=e.displayName(this.nodes,this.currentView),s=this.selectedNodes;try{this.loading=e.id,this.nodes.forEach((e=>{l.Ay.set(e,"status",r.zI.LOADING)}));const n=await e.execBatch(this.nodes,this.currentView,this.dir);if(!n.some((e=>null!==e)))return void this.selectionStore.reset();if(n.some((e=>!1===e))){const e=s.filter(((e,t)=>!1===n[t]));if(this.selectionStore.set(e),n.some((e=>null===e)))return;return void(0,jt.Qg)(this.t("files",'"{displayName}" failed on some elements ',{displayName:t}))}(0,jt.Te)(this.t("files",'"{displayName}" batch action executed successfully',{displayName:t})),this.selectionStore.reset()}catch(s){qt.error("Error while executing action",{action:e,e:s}),(0,jt.Qg)(this.t("files",'"{displayName}" action failed',{displayName:t}))}finally{this.loading=null,this.nodes.forEach((e=>{l.Ay.set(e,"status",void 0)}))}},t:Ut.Tl}}),ha=pa;var va=n(98645),wa={};wa.styleTagTransform=is(),wa.setAttributes=es(),wa.insert=Zt().bind(null,"head"),wa.domAPI=Qt(),wa.insertStyleElement=ss(),Yt()(va.A,wa),va.A&&va.A.locals&&va.A.locals;var Aa=(0,Pt.A)(ha,(function(){var e=this,t=e._self._c;return e._self._setupProxy,t("div",{staticClass:"files-list__column files-list__row-actions-batch"},[t("NcActions",{ref:"actionsMenu",attrs:{disabled:!!e.loading||e.areSomeNodesLoading,"force-name":!0,inline:e.inlineActions,"menu-name":e.inlineActions<=1?e.t("files","Actions"):null,open:e.openedMenu},on:{"update:open":function(t){e.openedMenu=t}}},e._l(e.enabledActions,(function(s){return t("NcActionButton",{key:s.id,class:"files-list__row-actions-batch-"+s.id,on:{click:function(t){return e.onActionClick(s)}},scopedSlots:e._u([{key:"icon",fn:function(){return[e.loading===s.id?t("NcLoadingIcon",{attrs:{size:18}}):t("NcIconSvgWrapper",{attrs:{svg:s.iconSvgInline(e.nodes,e.currentView)}})]},proxy:!0}],null,!0)},[e._v("\n\t\t\t"+e._s(s.displayName(e.nodes,e.currentView))+"\n\t\t")])})),1)],1)}),[],!1,null,"1284c4be",null);const Ca=Aa.exports,ya=(0,l.pM)({name:"FilesListVirtual",components:{FilesListHeader:Gi,FilesListTableFooter:Ji,FilesListTableHeader:la,VirtualList:ga,FilesListTableHeaderActions:Ca},mixins:[Un],props:{currentView:{type:r.Ss,required:!0},currentFolder:{type:r.vd,required:!0},nodes:{type:Array,required:!0}},setup:()=>({userConfigStore:vs(),selectionStore:Js()}),data:()=>({FileEntry:Vi,FileEntryGrid:qi,headers:(0,r.By)(),scrollToIndex:0,openFileId:null}),computed:{userConfig(){return this.userConfigStore.userConfig},fileId(){return parseInt(this.$route.params.fileid)||null},openFile(){return!!this.$route.query.openfile},summary(){return In(this.nodes)},isMtimeAvailable(){return!(this.filesListWidth<768)&&this.nodes.some((e=>void 0!==e.mtime))},isSizeAvailable(){return!(this.filesListWidth<768)&&this.nodes.some((e=>void 0!==e.size))},sortedHeaders(){return this.currentFolder&&this.currentView?[...this.headers].sort(((e,t)=>e.order-t.order)):[]},caption(){const e=(0,Ut.Tl)("files","List of files and folders."),t=this.currentView.caption||e,s=(0,Ut.Tl)("files","Column headers with buttons are sortable."),n=(0,Ut.Tl)("files","This list is not fully rendered for performance reasons. The files will be rendered as you navigate through the list.");return"".concat(t,"\n").concat(s,"\n").concat(n)},selectedNodes(){return this.selectionStore.selected},isNoneSelected(){return 0===this.selectedNodes.length}},watch:{fileId(e){this.scrollToFile(e,!1)},openFile(e){e&&this.$nextTick((()=>this.handleOpenFile(this.fileId)))}},mounted(){window.document.querySelector("main.app-content").addEventListener("dragover",this.onDragOver);const{id:e}=(0,Rt.C)("files","fileInfo",{});this.scrollToFile(null!=e?e:this.fileId),this.openSidebarForFile(null!=e?e:this.fileId),this.handleOpenFile(null!=e?e:null)},beforeDestroy(){window.document.querySelector("main.app-content").removeEventListener("dragover",this.onDragOver)},methods:{openSidebarForFile(e){if(document.documentElement.clientWidth>1024&&this.currentFolder.fileid!==e){var t;const s=this.nodes.find((t=>t.fileid===e));s&&null!=Ws&&null!==(t=Ws.enabled)&&void 0!==t&&t.call(Ws,[s],this.currentView)&&(qt.debug("Opening sidebar on file "+s.path,{node:s}),Ws.exec(s,this.currentView,this.currentFolder.path))}},scrollToFile(e){let t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];if(e){const s=this.nodes.findIndex((t=>t.fileid===e));t&&-1===s&&e!==this.currentFolder.fileid&&(0,jt.Qg)(this.t("files","File not found")),this.scrollToIndex=Math.max(0,s)}},handleOpenFile(e){if(!this.openFile)return;if(null===e||this.openFileId===e)return;const t=this.nodes.find((t=>t.fileid===e));if(void 0===t||t.type===r.pt.Folder)return;qt.debug("Opening file "+t.path,{node:t}),this.openFileId=e;const s=(0,r.qK)().filter((e=>!(null==e||!e.default))).filter((e=>!e.enabled||e.enabled([t],this.currentView))).sort(((e,t)=>(e.order||0)-(t.order||0))).at(0);null==s||s.exec(t,this.currentView,this.currentFolder.path)},onDragOver(e){var t;if(null===(t=e.dataTransfer)||void 0===t?void 0:t.types.includes("Files"))return;e.preventDefault(),e.stopPropagation();const s=this.$refs.table.$el,n=s.getBoundingClientRect().top,i=n+s.getBoundingClientRect().height;e.clientYi-50&&(s.scrollTop=s.scrollTop+25)},t:Ut.Tl}});var xa=n(47738),ba={};ba.styleTagTransform=is(),ba.setAttributes=es(),ba.insert=Zt().bind(null,"head"),ba.domAPI=Qt(),ba.insertStyleElement=ss(),Yt()(xa.A,ba),xa.A&&xa.A.locals&&xa.A.locals;var _a=n(27982),Ta={};Ta.styleTagTransform=is(),Ta.setAttributes=es(),Ta.insert=Zt().bind(null,"head"),Ta.domAPI=Qt(),Ta.insertStyleElement=ss(),Yt()(_a.A,Ta),_a.A&&_a.A.locals&&_a.A.locals;const ka=(0,Pt.A)(ya,(function(){var e=this,t=e._self._c;return e._self._setupProxy,t("VirtualList",{ref:"table",attrs:{"data-component":e.userConfig.grid_view?e.FileEntryGrid:e.FileEntry,"data-key":"source","data-sources":e.nodes,"grid-mode":e.userConfig.grid_view,"extra-props":{isMtimeAvailable:e.isMtimeAvailable,isSizeAvailable:e.isSizeAvailable,nodes:e.nodes,filesListWidth:e.filesListWidth},"scroll-to-index":e.scrollToIndex,caption:e.caption},scopedSlots:e._u([e.isNoneSelected?null:{key:"header-overlay",fn:function(){return[t("span",{staticClass:"files-list__selected"},[e._v(e._s(e.t("files","{count} selected",{count:e.selectedNodes.length})))]),e._v(" "),t("FilesListTableHeaderActions",{attrs:{"current-view":e.currentView,"selected-nodes":e.selectedNodes}})]},proxy:!0},{key:"before",fn:function(){return e._l(e.sortedHeaders,(function(s){return t("FilesListHeader",{key:s.id,attrs:{"current-folder":e.currentFolder,"current-view":e.currentView,header:s}})}))},proxy:!0},{key:"header",fn:function(){return[t("FilesListTableHeader",{ref:"thead",attrs:{"files-list-width":e.filesListWidth,"is-mtime-available":e.isMtimeAvailable,"is-size-available":e.isSizeAvailable,nodes:e.nodes}})]},proxy:!0},{key:"footer",fn:function(){return[t("FilesListTableFooter",{attrs:{"current-view":e.currentView,"files-list-width":e.filesListWidth,"is-mtime-available":e.isMtimeAvailable,"is-size-available":e.isSizeAvailable,nodes:e.nodes,summary:e.summary}})]},proxy:!0}],null,!0)})}),[],!1,null,"1287bfe2",null).exports,Sa={name:"TrayArrowDownIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},La=(0,Pt.A)(Sa,(function(){var e=this,t=e._self._c;return t("span",e._b({staticClass:"material-design-icon tray-arrow-down-icon",attrs:{"aria-hidden":!e.title||null,"aria-label":e.title,role:"img"},on:{click:function(t){return e.$emit("click",t)}}},"span",e.$attrs,!1),[t("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[t("path",{attrs:{d:"M2 12H4V17H20V12H22V17C22 18.11 21.11 19 20 19H4C2.9 19 2 18.11 2 17V12M12 15L17.55 9.54L16.13 8.13L13 11.25V2H11V11.25L7.88 8.13L6.46 9.55L12 15Z"}},[e.title?t("title",[e._v(e._s(e.title))]):e._e()])])])}),[],!1,null,null,null).exports,Fa=(0,l.pM)({name:"DragAndDropNotice",components:{TrayArrowDownIcon:La},props:{currentFolder:{type:Object,required:!0}},setup(){const{currentView:e}=xs();return{currentView:e}},data:()=>({dragover:!1}),computed:{canUpload(){return this.currentFolder&&0!=(this.currentFolder.permissions&r.aX.CREATE)},isQuotaExceeded(){var e;return 0===(null===(e=this.currentFolder)||void 0===e||null===(e=e.attributes)||void 0===e?void 0:e["quota-available-bytes"])},cantUploadLabel(){return this.isQuotaExceeded?this.t("files","Your have used your space quota and cannot upload files anymore"):this.canUpload?null:this.t("files","You don’t have permission to upload or create files here")}},mounted(){const e=window.document.querySelector("main.app-content");e.addEventListener("dragover",this.onDragOver),e.addEventListener("dragleave",this.onDragLeave),e.addEventListener("drop",this.onContentDrop)},beforeDestroy(){const e=window.document.querySelector("main.app-content");e.removeEventListener("dragover",this.onDragOver),e.removeEventListener("dragleave",this.onDragLeave),e.removeEventListener("drop",this.onContentDrop)},methods:{onDragOver(e){var t;e.preventDefault(),(null===(t=e.dataTransfer)||void 0===t?void 0:t.types.includes("Files"))&&(this.dragover=!0)},onDragLeave(e){var t;const s=e.currentTarget;null!=s&&s.contains(null!==(t=e.relatedTarget)&&void 0!==t?t:e.target)||this.dragover&&(this.dragover=!1)},onContentDrop(e){qt.debug("Drag and drop cancelled, dropped on empty space",{event:e}),e.preventDefault(),this.dragover&&(this.dragover=!1)},async onDrop(e){var t,s,n;if(this.cantUploadLabel)return void(0,jt.Qg)(this.cantUploadLabel);if(null!==(t=this.$el.querySelector("tbody"))&&void 0!==t&&t.contains(e.target))return;e.preventDefault(),e.stopPropagation();const i=[...(null===(s=e.dataTransfer)||void 0===s?void 0:s.items)||[]],a=await kn(i),r=await(null===(n=this.currentView)||void 0===n?void 0:n.getContents(this.currentFolder.path)),o=null==r?void 0:r.folder;if(!o)return void(0,jt.Qg)(this.t("files","Target folder does not exist any more"));if(e.button)return;qt.debug("Dropped",{event:e,folder:o,fileTree:a});const l=(await Sn(a,o,r.contents)).findLast((e=>{var t;return e.status!==Ps.d.FAILED&&!e.file.webkitRelativePath.includes("/")&&(null===(t=e.response)||void 0===t||null===(t=t.headers)||void 0===t?void 0:t["oc-fileid"])&&2===e.source.replace(o.source,"").split("/").length}));var d,c;void 0!==l&&(qt.debug("Scrolling to last upload in current folder",{lastUpload:l}),this.$router.push({...this.$route,params:{view:null!==(d=null===(c=this.$route.params)||void 0===c?void 0:c.view)&&void 0!==d?d:"files",fileid:parseInt(l.response.headers["oc-fileid"])}})),this.dragover=!1},t:Ut.Tl}});var Ua=n(93259),Ea={};Ea.styleTagTransform=is(),Ea.setAttributes=es(),Ea.insert=Zt().bind(null,"head"),Ea.domAPI=Qt(),Ea.insertStyleElement=ss(),Yt()(Ua.A,Ea),Ua.A&&Ua.A.locals&&Ua.A.locals;const Pa=(0,Pt.A)(Fa,(function(){var e=this,t=e._self._c;return e._self._setupProxy,t("div",{directives:[{name:"show",rawName:"v-show",value:e.dragover,expression:"dragover"}],staticClass:"files-list__drag-drop-notice",attrs:{"data-cy-files-drag-drop-area":""},on:{drop:e.onDrop}},[t("div",{staticClass:"files-list__drag-drop-notice-wrapper"},[e.canUpload&&!e.isQuotaExceeded?[t("TrayArrowDownIcon",{attrs:{size:48}}),e._v(" "),t("h3",{staticClass:"files-list-drag-drop-notice__title"},[e._v("\n\t\t\t\t"+e._s(e.t("files","Drag and drop files here to upload"))+"\n\t\t\t")])]:[t("h3",{staticClass:"files-list-drag-drop-notice__title"},[e._v("\n\t\t\t\t"+e._s(e.cantUploadLabel)+"\n\t\t\t")])]],2)])}),[],!1,null,"7f8a4132",null).exports;var Na,Ba=n(96763);const Ia=void 0!==(null===(Na=(0,Fs.F)())||void 0===Na?void 0:Na.files_sharing),za=(0,l.pM)({name:"FilesList",components:{BreadCrumbs:Bn,DragAndDropNotice:Pa,FilesListVirtual:ka,LinkIcon:Ns.A,ListViewIcon:Is,NcAppContent:zs.A,NcButton:Ds.A,NcEmptyContent:Rs.A,NcIconSvgWrapper:zt.A,NcLoadingIcon:js.A,PlusIcon:Os.A,AccountPlusIcon:Vs,UploadPicker:Ps.U,ViewGridIcon:qs},mixins:[Un,ea],setup(){var e;const t=Ks(),s=Qs(),n=Js(),i=Xs(),a=vs(),r=_s(),{currentView:o}=xs();return{currentView:o,filesStore:t,pathsStore:s,selectionStore:n,uploaderStore:i,userConfigStore:a,viewConfigStore:r,enableGridView:null===(e=(0,Rt.C)("core","config",[])["enable_non-accessible_features"])||void 0===e||e,forbiddenCharacters:(0,Rt.C)("files","forbiddenCharacters",[]),Type:Es.Z}},data:()=>({filterText:"",loading:!0,promise:null,unsubscribeStoreCallback:()=>{}}),computed:{onSearch(){return ca()((e=>{Ba.debug("Files app handling search event from unified search...",e),this.filterText=e.query}),500)},getContent(){const e=this.currentView;return async t=>{var s,n;const i=(0,Us.normalize)("".concat(null!==(s=null===(n=this.currentFolder)||void 0===n?void 0:n.path)&&void 0!==s?s:"","/").concat(null!=t?t:""));return(await e.getContents(i)).contents}},userConfig(){return this.userConfigStore.userConfig},pageHeading(){var e,t;return null!==(e=null===(t=this.currentView)||void 0===t?void 0:t.name)&&void 0!==e?e:(0,Ut.Tl)("files","Files")},dir(){var e;return((null===(e=this.$route)||void 0===e||null===(e=e.query)||void 0===e||null===(e=e.dir)||void 0===e?void 0:e.toString())||"/").replace(/^(.+)\/$/,"$1")},fileId(){var e,t;const s=Number.parseInt(null!==(e=null===(t=this.$route)||void 0===t?void 0:t.params.fileid)&&void 0!==e?e:"");return Number.isNaN(s)?null:s},currentFolder(){var e;if(null===(e=this.currentView)||void 0===e||!e.id)return;if("/"===this.dir)return this.filesStore.getRoot(this.currentView.id);const t=this.pathsStore.getPath(this.currentView.id,this.dir);return void 0!==t?this.filesStore.getNode(t):void 0},sortingParameters(){return[[...this.userConfig.sort_favorites_first?[e=>{var t;return 1!==(null===(t=e.attributes)||void 0===t?void 0:t.favorite)}]:[],...this.userConfig.sort_folders_first?[e=>"folder"!==e.type]:[],..."basename"!==this.sortingMode?[e=>e[this.sortingMode]]:[],e=>{var t;return(null===(t=e.attributes)||void 0===t?void 0:t.displayname)||e.basename},e=>e.basename],[...this.userConfig.sort_favorites_first?["asc"]:[],...this.userConfig.sort_folders_first?["asc"]:[],..."mtime"===this.sortingMode?[this.isAscSorting?"desc":"asc"]:[],..."mtime"!==this.sortingMode&&"basename"!==this.sortingMode?[this.isAscSorting?"asc":"desc"]:[],this.isAscSorting?"asc":"desc",this.isAscSorting?"asc":"desc"]]},dirContentsSorted(){var e;if(!this.currentView)return[];let t=[...this.dirContents];this.filterText&&(t=t.filter((e=>e.basename.toLowerCase().includes(this.filterText.toLowerCase()))),Ba.debug("Files view filtered",t));const s=((null===(e=this.currentView)||void 0===e?void 0:e.columns)||[]).find((e=>e.id===this.sortingMode));if(null!=s&&s.sort&&"function"==typeof s.sort){const e=[...this.dirContents].sort(s.sort);return this.isAscSorting?e:e.reverse()}return function(e,t,s){var n,i;t=null!==(n=t)&&void 0!==n?n:[e=>e],s=null!==(i=s)&&void 0!==i?i:[];const a=t.map(((e,t)=>{var n;return"asc"===(null!==(n=s[t])&&void 0!==n?n:"asc")?1:-1})),r=Intl.Collator([(0,Ut.Z0)(),(0,Ut.lO)()],{numeric:!0,usage:"sort"});return[...e].sort(((e,s)=>{for(const[n,i]of t.entries()){const t=r.compare(en(i(e)),en(i(s)));if(0!==t)return t*a[n]}return 0}))}(t,...this.sortingParameters)},dirContents(){var e,t;const s=null===(e=this.userConfigStore)||void 0===e?void 0:e.userConfig.show_hidden;return((null===(t=this.currentFolder)||void 0===t?void 0:t._children)||[]).map(this.getNode).filter((e=>{var t;return s?!!e:e&&!0!==(null==e||null===(t=e.attributes)||void 0===t?void 0:t.hidden)&&!(null!=e&&e.basename.startsWith("."))}))},isEmptyDir(){return 0===this.dirContents.length},isRefreshing(){return void 0!==this.currentFolder&&!this.isEmptyDir&&this.loading},toPreviousDir(){const e=this.dir.split("/").slice(0,-1).join("/")||"/";return{...this.$route,query:{dir:e}}},shareAttributes(){var e,t;if(null!==(e=this.currentFolder)&&void 0!==e&&null!==(e=e.attributes)&&void 0!==e&&e["share-types"])return Object.values((null===(t=this.currentFolder)||void 0===t||null===(t=t.attributes)||void 0===t?void 0:t["share-types"])||{}).flat()},shareButtonLabel(){return this.shareAttributes?this.shareButtonType===Es.Z.SHARE_TYPE_LINK?(0,Ut.Tl)("files","Shared by link"):(0,Ut.Tl)("files","Shared"):(0,Ut.Tl)("files","Share")},shareButtonType(){return this.shareAttributes?this.shareAttributes.some((e=>e===Es.Z.SHARE_TYPE_LINK))?Es.Z.SHARE_TYPE_LINK:Es.Z.SHARE_TYPE_USER:null},gridViewButtonLabel(){return this.userConfig.grid_view?(0,Ut.Tl)("files","Switch to list view"):(0,Ut.Tl)("files","Switch to grid view")},canUpload(){return this.currentFolder&&0!=(this.currentFolder.permissions&r.aX.CREATE)},isQuotaExceeded(){var e;return 0===(null===(e=this.currentFolder)||void 0===e||null===(e=e.attributes)||void 0===e?void 0:e["quota-available-bytes"])},cantUploadLabel(){return this.isQuotaExceeded?(0,Ut.Tl)("files","Your have used your space quota and cannot upload files anymore"):(0,Ut.Tl)("files","You don’t have permission to upload or create files here")},canShare(){return Ia&&this.currentFolder&&0!=(this.currentFolder.permissions&r.aX.SHARE)}},watch:{currentView(e,t){(null==e?void 0:e.id)!==(null==t?void 0:t.id)&&(qt.debug("View changed",{newView:e,oldView:t}),this.selectionStore.reset(),this.resetSearch(),this.fetchContent())},dir(e,t){var s;qt.debug("Directory changed",{newDir:e,oldDir:t}),this.selectionStore.reset(),this.resetSearch(),this.fetchContent();const n=null===(s=this.$refs)||void 0===s?void 0:s.filesListVirtual;null!=n&&n.$el&&(n.$el.scrollTop=0)},dirContents(e){qt.debug("Directory contents changed",{view:this.currentView,folder:this.currentFolder,contents:e}),(0,Ft.Ic)("files:list:updated",{view:this.currentView,folder:this.currentFolder,contents:e})}},mounted(){this.fetchContent(),(0,Ft.B1)("files:node:deleted",this.onNodeDeleted),(0,Ft.B1)("files:node:updated",this.onUpdatedNode),(0,Ft.B1)("nextcloud:unified-search.search",this.onSearch),(0,Ft.B1)("nextcloud:unified-search.reset",this.resetSearch),this.unsubscribeStoreCallback=this.userConfigStore.$subscribe((()=>this.fetchContent()),{deep:!0})},unmounted(){(0,Ft.al)("files:node:deleted",this.onNodeDeleted),(0,Ft.al)("files:node:updated",this.onUpdatedNode),(0,Ft.al)("nextcloud:unified-search.search",this.onSearch),(0,Ft.al)("nextcloud:unified-search.reset",this.resetSearch),this.unsubscribeStoreCallback()},methods:{t:Ut.Tl,async fetchContent(){this.loading=!0;const e=this.dir,t=this.currentView;if(t){this.promise&&"cancel"in this.promise&&(this.promise.cancel(),qt.debug("Cancelled previous ongoing fetch")),this.promise=t.getContents(e);try{const{folder:s,contents:n}=await this.promise;qt.debug("Fetched contents",{dir:e,folder:s,contents:n}),this.filesStore.updateNodes(n),this.$set(s,"_children",n.map((e=>e.source))),"/"===e?this.filesStore.setRoot({service:t.id,root:s}):s.fileid?(this.filesStore.updateNodes([s]),this.pathsStore.addPath({service:t.id,source:s.source,path:e})):qt.fatal("Invalid root folder returned",{dir:e,folder:s,currentView:t}),n.filter((e=>"folder"===e.type)).forEach((s=>{this.pathsStore.addPath({service:t.id,source:s.source,path:(0,Us.join)(e,s.basename)})}))}catch(e){qt.error("Error while fetching content",{error:e})}finally{this.loading=!1}}else qt.debug("The current view doesn't exists or is not ready.",{currentView:t})},getNode(e){return this.filesStore.getNode(e)},onNodeDeleted(e){var t,s,n;e.fileid&&e.fileid===this.fileId&&(e.fileid===(null===(t=this.currentFolder)||void 0===t?void 0:t.fileid)?window.OCP.Files.Router.goToRoute(null,{view:this.$route.params.view},{dir:null!==(s=null===(n=this.currentFolder)||void 0===n?void 0:n.dirname)&&void 0!==s?s:"/"}):window.OCP.Files.Router.goToRoute(null,{...this.$route.params,fileid:void 0},{...this.$route.query,openfile:void 0}))},onUpload(e){(0,Us.dirname)(e.source)===this.currentFolder.source&&this.fetchContent()},async onUploadFail(e){var t,s;const n=(null===(t=e.response)||void 0===t?void 0:t.status)||0;if(e.status!==Ps.d.CANCELLED)if(507!==n)if(404!==n&&409!==n)if(403!==n){if("string"==typeof(null===(s=e.response)||void 0===s?void 0:s.data))try{var i,a;const t=null!==(i=null===(a=(new DOMParser).parseFromString(e.response.data,"text/xml").getElementsByTagName("s:message")[0])||void 0===a?void 0:a.textContent)&&void 0!==i?i:"";if(""!==t.trim())return void(0,jt.Qg)((0,Ut.Tl)("files","Error during upload: {message}",{message:t}))}catch(e){qt.error("Could not parse message",{error:e})}0===n?(0,jt.Qg)((0,Ut.Tl)("files","Unknown error during upload")):(0,jt.Qg)((0,Ut.Tl)("files","Error during upload, status code {status}",{status:n}))}else(0,jt.Qg)((0,Ut.Tl)("files","Operation is blocked by access control"));else(0,jt.Qg)((0,Ut.Tl)("files","Target folder does not exist any more"));else(0,jt.Qg)((0,Ut.Tl)("files","Not enough free space"));else(0,jt.I9)((0,Ut.Tl)("files","Upload was cancelled by user"))},onUpdatedNode(e){var t;(null==e?void 0:e.fileid)===(null===(t=this.currentFolder)||void 0===t?void 0:t.fileid)&&this.fetchContent()},resetSearch(){this.onSearch.clear(),this.filterText=""},openSharingSidebar(){var e;this.currentFolder?(null!==(e=window)&&void 0!==e&&null!==(e=e.OCA)&&void 0!==e&&null!==(e=e.Files)&&void 0!==e&&null!==(e=e.Sidebar)&&void 0!==e&&e.setActiveTab&&window.OCA.Files.Sidebar.setActiveTab("sharing"),Ws.exec(this.currentFolder,this.currentView,this.currentFolder.path)):qt.debug("No current folder found for opening sharing sidebar")},toggleGridView(){this.userConfigStore.update("grid_view",!this.userConfig.grid_view)}}});var Da=n(48885),Ra={};Ra.styleTagTransform=is(),Ra.setAttributes=es(),Ra.insert=Zt().bind(null,"head"),Ra.domAPI=Qt(),Ra.insertStyleElement=ss(),Yt()(Da.A,Ra),Da.A&&Da.A.locals&&Da.A.locals;const ja=(0,Pt.A)(za,(function(){var e,t,s=this,n=s._self._c;return s._self._setupProxy,n("NcAppContent",{attrs:{"page-heading":s.pageHeading,"data-cy-files-content":""}},[n("div",{staticClass:"files-list__header"},[n("BreadCrumbs",{attrs:{path:s.dir},on:{reload:s.fetchContent},scopedSlots:s._u([{key:"actions",fn:function(){return[s.canShare&&s.filesListWidth>=512?n("NcButton",{staticClass:"files-list__header-share-button",class:{"files-list__header-share-button--shared":s.shareButtonType},attrs:{"aria-label":s.shareButtonLabel,title:s.shareButtonLabel,type:"tertiary"},on:{click:s.openSharingSidebar},scopedSlots:s._u([{key:"icon",fn:function(){return[s.shareButtonType===s.Type.SHARE_TYPE_LINK?n("LinkIcon"):n("AccountPlusIcon",{attrs:{size:20}})]},proxy:!0}],null,!1,2969853559)}):s._e(),s._v(" "),!s.canUpload||s.isQuotaExceeded?n("NcButton",{staticClass:"files-list__header-upload-button--disabled",attrs:{"aria-label":s.cantUploadLabel,title:s.cantUploadLabel,disabled:!0,type:"secondary"},scopedSlots:s._u([{key:"icon",fn:function(){return[n("PlusIcon",{attrs:{size:20}})]},proxy:!0}],null,!1,2953566425)},[s._v("\n\t\t\t\t\t"+s._s(s.t("files","New"))+"\n\t\t\t\t")]):s.currentFolder?n("UploadPicker",{staticClass:"files-list__header-upload-button",attrs:{"allow-folders":"",content:s.getContent,destination:s.currentFolder,"forbidden-characters":s.forbiddenCharacters,multiple:""},on:{failed:s.onUploadFail,uploaded:s.onUpload}}):s._e()]},proxy:!0}])}),s._v(" "),s.filesListWidth>=512&&s.enableGridView?n("NcButton",{staticClass:"files-list__header-grid-button",attrs:{"aria-label":s.gridViewButtonLabel,title:s.gridViewButtonLabel,type:"tertiary"},on:{click:s.toggleGridView},scopedSlots:s._u([{key:"icon",fn:function(){return[s.userConfig.grid_view?n("ListViewIcon"):n("ViewGridIcon")]},proxy:!0}],null,!1,1682960703)}):s._e(),s._v(" "),s.isRefreshing?n("NcLoadingIcon",{staticClass:"files-list__refresh-icon"}):s._e()],1),s._v(" "),!s.loading&&s.canUpload?n("DragAndDropNotice",{attrs:{"current-folder":s.currentFolder}}):s._e(),s._v(" "),s.loading&&!s.isRefreshing?n("NcLoadingIcon",{staticClass:"files-list__loading-icon",attrs:{size:38,name:s.t("files","Loading current folder")}}):!s.loading&&s.isEmptyDir?n("NcEmptyContent",{attrs:{name:(null===(e=s.currentView)||void 0===e?void 0:e.emptyTitle)||s.t("files","No files in here"),description:(null===(t=s.currentView)||void 0===t?void 0:t.emptyCaption)||s.t("files","Upload some content or sync with your devices!"),"data-cy-files-content-empty":""},scopedSlots:s._u(["/"!==s.dir?{key:"action",fn:function(){return[s.currentFolder&&s.canUpload&&!s.isQuotaExceeded?n("UploadPicker",{staticClass:"files-list__header-upload-button",attrs:{"allow-folders":"",content:s.getContent,destination:s.currentFolder,"forbidden-characters":s.forbiddenCharacters,multiple:""},on:{failed:s.onUploadFail,uploaded:s.onUpload}}):n("NcButton",{attrs:{"aria-label":s.t("files","Go to the previous folder"),to:s.toPreviousDir,type:"primary"}},[s._v("\n\t\t\t\t"+s._s(s.t("files","Go back"))+"\n\t\t\t")])]},proxy:!0}:null,{key:"icon",fn:function(){return[n("NcIconSvgWrapper",{attrs:{svg:s.currentView.icon}})]},proxy:!0}],null,!0)}):n("FilesListVirtual",{ref:"filesListVirtual",attrs:{"current-folder":s.currentFolder,"current-view":s.currentView,nodes:s.dirContentsSorted}})],1)}),[],!1,null,"0e2ac83a",null).exports,Oa=(0,l.pM)({name:"FilesApp",components:{NcContent:Lt.A,FilesList:ja,Navigation:Ls}}),Ma=(0,Pt.A)(Oa,(function(){var e=this,t=e._self._c;return e._self._setupProxy,t("NcContent",{attrs:{"app-name":"files"}},[t("Navigation"),e._v(" "),t("FilesList")],1)}),[],!1,null,null,null).exports;var Va,$a;n.nc=btoa((0,o.do)()),window.OCA.Files=null!==(Va=window.OCA.Files)&&void 0!==Va?Va:{},window.OCP.Files=null!==($a=window.OCP.Files)&&void 0!==$a?$a:{};const qa=new class{constructor(e){(function(e,t,s){(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e;var s=e[Symbol.toPrimitive];if(void 0!==s){var n=s.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:s,enumerable:!0,configurable:!0,writable:!0}):e[t]=s})(this,"_router",void 0),this._router=e}get name(){return this._router.currentRoute.name}get query(){return this._router.currentRoute.query||{}}get params(){return this._router.currentRoute.params||{}}goTo(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return this._router.push({path:e,replace:t})}goToRoute(e,t,s,n){return this._router.push({name:e,query:s,params:t,replace:n})}}(Tt);Object.assign(window.OCP.Files,{Router:qa}),l.Ay.use(a.R2);const Ha=l.Ay.observable((0,r.bh)());l.Ay.prototype.$navigation=Ha;const Wa=new class{constructor(){(function(e,t,s){(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e;var s=e[Symbol.toPrimitive];if(void 0!==s){var n=s.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:s,enumerable:!0,configurable:!0,writable:!0}):e[t]=s})(this,"_settings",void 0),this._settings=[],St.debug("OCA.Files.Settings initialized")}register(e){return this._settings.filter((t=>t.name===e.name)).length>0?(St.error("A setting with the same name is already registered"),!1):(this._settings.push(e),!0)}get settings(){return this._settings}};Object.assign(window.OCA.Files,{Settings:Wa}),Object.assign(window.OCA.Files.Settings,{Setting:class{constructor(e,t){let{el:s,open:n,close:i}=t;kt(this,"_close",void 0),kt(this,"_el",void 0),kt(this,"_name",void 0),kt(this,"_open",void 0),this._name=e,this._el=s,this._open=n,this._close=i,"function"!=typeof this._open&&(this._open=()=>{}),"function"!=typeof this._close&&(this._close=()=>{})}get name(){return this._name}get el(){return this._el}get open(){return this._open}get close(){return this._close}}}),new(l.Ay.extend(Ma))({router:Tt,pinia:d}).$mount("#content")},18141:(e,t,s)=>{"use strict";s.d(t,{A:()=>o});var n=s(71354),i=s.n(n),a=s(76314),r=s.n(a)()(i());r.push([e.id,".upload-picker[data-v-1f097873] {\n display: inline-flex;\n align-items: center;\n height: 44px;\n}\n.upload-picker__progress[data-v-1f097873] {\n width: 200px;\n max-width: 0;\n transition: max-width var(--animation-quick) ease-in-out;\n margin-top: 8px;\n}\n.upload-picker__progress p[data-v-1f097873] {\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n}\n.upload-picker--uploading .upload-picker__progress[data-v-1f097873] {\n max-width: 200px;\n margin-right: 20px;\n margin-left: 8px;\n}\n.upload-picker--paused .upload-picker__progress[data-v-1f097873] {\n animation: breathing-1f097873 3s ease-out infinite normal;\n}\n@keyframes breathing-1f097873 {\n0% {\n opacity: 0.5;\n}\n25% {\n opacity: 1;\n}\n60% {\n opacity: 0.5;\n}\n100% {\n opacity: 0.5;\n}\n}","",{version:3,sources:["webpack://./node_modules/@nextcloud/upload/dist/assets/index-DiWRcN3o.css"],names:[],mappings:"AAAA;EACE,oBAAoB;EACpB,mBAAmB;EACnB,YAAY;AACd;AACA;EACE,YAAY;EACZ,YAAY;EACZ,wDAAwD;EACxD,eAAe;AACjB;AACA;EACE,gBAAgB;EAChB,mBAAmB;EACnB,uBAAuB;AACzB;AACA;EACE,gBAAgB;EAChB,kBAAkB;EAClB,gBAAgB;AAClB;AACA;EACE,yDAAyD;AAC3D;AACA;AACA;IACI,YAAY;AAChB;AACA;IACI,UAAU;AACd;AACA;IACI,YAAY;AAChB;AACA;IACI,YAAY;AAChB;AACA",sourcesContent:[".upload-picker[data-v-1f097873] {\n display: inline-flex;\n align-items: center;\n height: 44px;\n}\n.upload-picker__progress[data-v-1f097873] {\n width: 200px;\n max-width: 0;\n transition: max-width var(--animation-quick) ease-in-out;\n margin-top: 8px;\n}\n.upload-picker__progress p[data-v-1f097873] {\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n}\n.upload-picker--uploading .upload-picker__progress[data-v-1f097873] {\n max-width: 200px;\n margin-right: 20px;\n margin-left: 8px;\n}\n.upload-picker--paused .upload-picker__progress[data-v-1f097873] {\n animation: breathing-1f097873 3s ease-out infinite normal;\n}\n@keyframes breathing-1f097873 {\n0% {\n opacity: 0.5;\n}\n25% {\n opacity: 1;\n}\n60% {\n opacity: 0.5;\n}\n100% {\n opacity: 0.5;\n}\n}"],sourceRoot:""}]);const o=r},12938:(e,t,s)=>{"use strict";s.d(t,{A:()=>o});var n=s(71354),i=s.n(n),a=s(76314),r=s.n(a)()(i());r.push([e.id,".files-list__breadcrumbs[data-v-7a939202]{flex:1 1 100% !important;width:100%;height:100%;margin-block:0;margin-inline:10px}.files-list__breadcrumbs[data-v-7a939202] a{cursor:pointer !important}.files-list__breadcrumbs--with-progress[data-v-7a939202]{flex-direction:column !important;align-items:flex-start !important}","",{version:3,sources:["webpack://./apps/files/src/components/BreadCrumbs.vue"],names:[],mappings:"AACA,0CAEC,wBAAA,CACA,UAAA,CACA,WAAA,CACA,cAAA,CACA,kBAAA,CAGC,6CACC,yBAAA,CAIF,yDACC,gCAAA,CACA,iCAAA",sourcesContent:["\n.files-list__breadcrumbs {\n\t// Take as much space as possible\n\tflex: 1 1 100% !important;\n\twidth: 100%;\n\theight: 100%;\n\tmargin-block: 0;\n\tmargin-inline: 10px;\n\n\t:deep() {\n\t\ta {\n\t\t\tcursor: pointer !important;\n\t\t}\n\t}\n\n\t&--with-progress {\n\t\tflex-direction: column !important;\n\t\talign-items: flex-start !important;\n\t}\n}\n"],sourceRoot:""}]);const o=r},93259:(e,t,s)=>{"use strict";s.d(t,{A:()=>o});var n=s(71354),i=s.n(n),a=s(76314),r=s.n(a)()(i());r.push([e.id,".files-list__drag-drop-notice[data-v-7f8a4132]{display:flex;align-items:center;justify-content:center;width:100%;min-height:113px;margin:0;user-select:none;color:var(--color-text-maxcontrast);background-color:var(--color-main-background);border-color:#000}.files-list__drag-drop-notice h3[data-v-7f8a4132]{margin-left:16px;color:inherit}.files-list__drag-drop-notice-wrapper[data-v-7f8a4132]{display:flex;align-items:center;justify-content:center;height:15vh;max-height:70%;padding:0 5vw;border:2px var(--color-border-dark) dashed;border-radius:var(--border-radius-large)}","",{version:3,sources:["webpack://./apps/files/src/components/DragAndDropNotice.vue"],names:[],mappings:"AACA,+CACC,YAAA,CACA,kBAAA,CACA,sBAAA,CACA,UAAA,CAEA,gBAAA,CACA,QAAA,CACA,gBAAA,CACA,mCAAA,CACA,6CAAA,CACA,iBAAA,CAEA,kDACC,gBAAA,CACA,aAAA,CAGD,uDACC,YAAA,CACA,kBAAA,CACA,sBAAA,CACA,WAAA,CACA,cAAA,CACA,aAAA,CACA,0CAAA,CACA,wCAAA",sourcesContent:["\n.files-list__drag-drop-notice {\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: center;\n\twidth: 100%;\n\t// Breadcrumbs height + row thead height\n\tmin-height: calc(58px + 55px);\n\tmargin: 0;\n\tuser-select: none;\n\tcolor: var(--color-text-maxcontrast);\n\tbackground-color: var(--color-main-background);\n\tborder-color: black;\n\n\th3 {\n\t\tmargin-left: 16px;\n\t\tcolor: inherit;\n\t}\n\n\t&-wrapper {\n\t\tdisplay: flex;\n\t\talign-items: center;\n\t\tjustify-content: center;\n\t\theight: 15vh;\n\t\tmax-height: 70%;\n\t\tpadding: 0 5vw;\n\t\tborder: 2px var(--color-border-dark) dashed;\n\t\tborder-radius: var(--border-radius-large);\n\t}\n}\n\n"],sourceRoot:""}]);const o=r},12617:(e,t,s)=>{"use strict";s.d(t,{A:()=>o});var n=s(71354),i=s.n(n),a=s(76314),r=s.n(a)()(i());r.push([e.id,".files-list-drag-image{position:absolute;top:-9999px;left:-9999px;display:flex;overflow:hidden;align-items:center;height:44px;padding:6px 12px;background:var(--color-main-background)}.files-list-drag-image__icon,.files-list-drag-image .files-list__row-icon{display:flex;overflow:hidden;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--border-radius)}.files-list-drag-image__icon{overflow:visible;margin-right:12px}.files-list-drag-image__icon img{max-width:100%;max-height:100%}.files-list-drag-image__icon .material-design-icon{color:var(--color-text-maxcontrast)}.files-list-drag-image__icon .material-design-icon.folder-icon{color:var(--color-primary-element)}.files-list-drag-image__icon>span{display:flex}.files-list-drag-image__icon>span .files-list__row-icon+.files-list__row-icon{margin-top:6px;margin-left:-26px}.files-list-drag-image__icon>span .files-list__row-icon+.files-list__row-icon+.files-list__row-icon{margin-top:12px}.files-list-drag-image__icon>span:not(:empty)+*{display:none}.files-list-drag-image__name{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}","",{version:3,sources:["webpack://./apps/files/src/components/DragAndDropPreview.vue"],names:[],mappings:"AAIA,uBACC,iBAAA,CACA,WAAA,CACA,YAAA,CACA,YAAA,CACA,eAAA,CACA,kBAAA,CACA,WAAA,CACA,gBAAA,CACA,uCAAA,CAEA,0EAEC,YAAA,CACA,eAAA,CACA,kBAAA,CACA,sBAAA,CACA,UAAA,CACA,WAAA,CACA,kCAAA,CAGD,6BACC,gBAAA,CACA,iBAAA,CAEA,iCACC,cAAA,CACA,eAAA,CAGD,mDACC,mCAAA,CACA,+DACC,kCAAA,CAKF,kCACC,YAAA,CAGA,8EACC,cA9CU,CA+CV,iBAAA,CACA,oGACC,eAAA,CAKF,gDACC,YAAA,CAKH,6BACC,eAAA,CACA,kBAAA,CACA,sBAAA",sourcesContent:["\n$size: 32px;\n$stack-shift: 6px;\n\n.files-list-drag-image {\n\tposition: absolute;\n\ttop: -9999px;\n\tleft: -9999px;\n\tdisplay: flex;\n\toverflow: hidden;\n\talign-items: center;\n\theight: 44px;\n\tpadding: 6px 12px;\n\tbackground: var(--color-main-background);\n\n\t&__icon,\n\t.files-list__row-icon {\n\t\tdisplay: flex;\n\t\toverflow: hidden;\n\t\talign-items: center;\n\t\tjustify-content: center;\n\t\twidth: 32px;\n\t\theight: 32px;\n\t\tborder-radius: var(--border-radius);\n\t}\n\n\t&__icon {\n\t\toverflow: visible;\n\t\tmargin-right: 12px;\n\n\t\timg {\n\t\t\tmax-width: 100%;\n\t\t\tmax-height: 100%;\n\t\t}\n\n\t\t.material-design-icon {\n\t\t\tcolor: var(--color-text-maxcontrast);\n\t\t\t&.folder-icon {\n\t\t\t\tcolor: var(--color-primary-element);\n\t\t\t}\n\t\t}\n\n\t\t// Previews container\n\t\t> span {\n\t\t\tdisplay: flex;\n\n\t\t\t// Stack effect if more than one element\n\t\t\t.files-list__row-icon + .files-list__row-icon {\n\t\t\t\tmargin-top: $stack-shift;\n\t\t\t\tmargin-left: $stack-shift - $size;\n\t\t\t\t& + .files-list__row-icon {\n\t\t\t\t\tmargin-top: $stack-shift * 2;\n\t\t\t\t}\n\t\t\t}\n\t\t\t// If we have manually clone the preview,\n\t\t\t// let's hide any fallback icons\n\t\t\t&:not(:empty) + * {\n\t\t\t\tdisplay: none;\n\t\t\t}\n\t\t}\n\t}\n\n\t&__name {\n\t\toverflow: hidden;\n\t\twhite-space: nowrap;\n\t\ttext-overflow: ellipsis;\n\t}\n}\n\n"],sourceRoot:""}]);const o=r},4575:(e,t,s)=>{"use strict";s.d(t,{A:()=>o});var n=s(71354),i=s.n(n),a=s(76314),r=s.n(a)()(i());r.push([e.id,".favorite-marker-icon[data-v-f2d0cf6e]{color:var(--color-favorite);min-width:unset !important;min-height:unset !important}.favorite-marker-icon[data-v-f2d0cf6e] svg{width:26px !important;height:26px !important;max-width:unset !important;max-height:unset !important}.favorite-marker-icon[data-v-f2d0cf6e] svg path{stroke:var(--color-main-background);stroke-width:8px;stroke-linejoin:round;paint-order:stroke}","",{version:3,sources:["webpack://./apps/files/src/components/FileEntry/FavoriteIcon.vue"],names:[],mappings:"AACA,uCACC,2BAAA,CAEA,0BAAA,CACG,2BAAA,CAGF,4CAEC,qBAAA,CACA,sBAAA,CAGA,0BAAA,CACA,2BAAA,CAGA,iDACC,mCAAA,CACA,gBAAA,CACA,qBAAA,CACA,kBAAA",sourcesContent:["\n.favorite-marker-icon {\n\tcolor: var(--color-favorite);\n\t// Override NcIconSvgWrapper defaults (clickable area)\n\tmin-width: unset !important;\n min-height: unset !important;\n\n\t:deep() {\n\t\tsvg {\n\t\t\t// We added a stroke for a11y so we must increase the size to include the stroke\n\t\t\twidth: 26px !important;\n\t\t\theight: 26px !important;\n\n\t\t\t// Override NcIconSvgWrapper defaults of 20px\n\t\t\tmax-width: unset !important;\n\t\t\tmax-height: unset !important;\n\n\t\t\t// Sow a border around the icon for better contrast\n\t\t\tpath {\n\t\t\t\tstroke: var(--color-main-background);\n\t\t\t\tstroke-width: 8px;\n\t\t\t\tstroke-linejoin: round;\n\t\t\t\tpaint-order: stroke;\n\t\t\t}\n\t\t}\n\t}\n}\n"],sourceRoot:""}]);const o=r},10379:(e,t,s)=>{"use strict";s.d(t,{A:()=>o});var n=s(71354),i=s.n(n),a=s(76314),r=s.n(a)()(i());r.push([e.id,"main.app-content[style*=mouse-pos-x] .v-popper__popper{transform:translate3d(var(--mouse-pos-x), var(--mouse-pos-y), 0px) !important}main.app-content[style*=mouse-pos-x] .v-popper__popper[data-popper-placement=top]{transform:translate3d(var(--mouse-pos-x), calc(var(--mouse-pos-y) - 50vh + 34px), 0px) !important}main.app-content[style*=mouse-pos-x] .v-popper__popper .v-popper__arrow-container{display:none}","",{version:3,sources:["webpack://./apps/files/src/components/FileEntry/FileEntryActions.vue"],names:[],mappings:"AAGA,uDACC,6EAAA,CAGA,kFAEC,iGAAA,CAGD,kFACC,YAAA",sourcesContent:['\n// Allow right click to define the position of the menu\n// only if defined\nmain.app-content[style*="mouse-pos-x"] .v-popper__popper {\n\ttransform: translate3d(var(--mouse-pos-x), var(--mouse-pos-y), 0px) !important;\n\n\t// If the menu is too close to the bottom, we move it up\n\t&[data-popper-placement="top"] {\n\t\t// 34px added to align with the top of the cursor\n\t\ttransform: translate3d(var(--mouse-pos-x), calc(var(--mouse-pos-y) - 50vh + 34px), 0px) !important;\n\t}\n\t// Hide arrow if floating\n\t.v-popper__arrow-container {\n\t\tdisplay: none;\n\t}\n}\n'],sourceRoot:""}]);const o=r},64931:(e,t,s)=>{"use strict";s.d(t,{A:()=>o});var n=s(71354),i=s.n(n),a=s(76314),r=s.n(a)()(i());r.push([e.id,"[data-v-801e4784] .button-vue--icon-and-text .button-vue__text{color:var(--color-primary-element)}[data-v-801e4784] .button-vue--icon-and-text .button-vue__icon{color:var(--color-primary-element)}","",{version:3,sources:["webpack://./apps/files/src/components/FileEntry/FileEntryActions.vue"],names:[],mappings:"AAEC,+DACC,kCAAA,CAED,+DACC,kCAAA",sourcesContent:["\n:deep(.button-vue--icon-and-text, .files-list__row-action-sharing-status) {\n\t.button-vue__text {\n\t\tcolor: var(--color-primary-element);\n\t}\n\t.button-vue__icon {\n\t\tcolor: var(--color-primary-element);\n\t}\n}\n"],sourceRoot:""}]);const o=r},6049:(e,t,s)=>{"use strict";s.d(t,{A:()=>o});var n=s(71354),i=s.n(n),a=s(76314),r=s.n(a)()(i());r.push([e.id,"tr[data-v-130ade4f]{margin-bottom:300px;border-top:1px solid var(--color-border);background-color:rgba(0,0,0,0) !important;border-bottom:none !important}tr td[data-v-130ade4f]{user-select:none;color:var(--color-text-maxcontrast) !important}","",{version:3,sources:["webpack://./apps/files/src/components/FilesListTableFooter.vue"],names:[],mappings:"AAEA,oBACC,mBAAA,CACA,wCAAA,CAEA,yCAAA,CACA,6BAAA,CAEA,uBACC,gBAAA,CAEA,8CAAA",sourcesContent:["\n// Scoped row\ntr {\n\tmargin-bottom: 300px;\n\tborder-top: 1px solid var(--color-border);\n\t// Prevent hover effect on the whole row\n\tbackground-color: transparent !important;\n\tborder-bottom: none !important;\n\n\ttd {\n\t\tuser-select: none;\n\t\t// Make sure the cell colors don't apply to column headers\n\t\tcolor: var(--color-text-maxcontrast) !important;\n\t}\n}\n"],sourceRoot:""}]);const o=r},55963:(e,t,s)=>{"use strict";s.d(t,{A:()=>o});var n=s(71354),i=s.n(n),a=s(76314),r=s.n(a)()(i());r.push([e.id,".files-list__column[data-v-6eaeabb8]{user-select:none;color:var(--color-text-maxcontrast) !important}.files-list__column--sortable[data-v-6eaeabb8]{cursor:pointer}","",{version:3,sources:["webpack://./apps/files/src/components/FilesListTableHeader.vue"],names:[],mappings:"AACA,qCACC,gBAAA,CAEA,8CAAA,CAEA,+CACC,cAAA",sourcesContent:["\n.files-list__column {\n\tuser-select: none;\n\t// Make sure the cell colors don't apply to column headers\n\tcolor: var(--color-text-maxcontrast) !important;\n\n\t&--sortable {\n\t\tcursor: pointer;\n\t}\n}\n\n"],sourceRoot:""}]);const o=r},98645:(e,t,s)=>{"use strict";s.d(t,{A:()=>o});var n=s(71354),i=s.n(n),a=s(76314),r=s.n(a)()(i());r.push([e.id,".files-list__row-actions-batch[data-v-1284c4be]{flex:1 1 100% !important;max-width:100%}","",{version:3,sources:["webpack://./apps/files/src/components/FilesListTableHeaderActions.vue"],names:[],mappings:"AACA,gDACC,wBAAA,CACA,cAAA",sourcesContent:["\n.files-list__row-actions-batch {\n\tflex: 1 1 100% !important;\n\tmax-width: 100%;\n}\n"],sourceRoot:""}]);const o=r},413:(e,t,s)=>{"use strict";s.d(t,{A:()=>o});var n=s(71354),i=s.n(n),a=s(76314),r=s.n(a)()(i());r.push([e.id,".files-list__column-sort-button[data-v-4e97a5c6]{margin:0 calc(var(--cell-margin)*-1);min-width:calc(100% - 3*var(--cell-margin)) !important}.files-list__column-sort-button-text[data-v-4e97a5c6]{color:var(--color-text-maxcontrast);font-weight:normal}.files-list__column-sort-button-icon[data-v-4e97a5c6]{color:var(--color-text-maxcontrast);opacity:0;transition:opacity var(--animation-quick);inset-inline-start:-10px}.files-list__column-sort-button--size .files-list__column-sort-button-icon[data-v-4e97a5c6]{inset-inline-start:10px}.files-list__column-sort-button--active .files-list__column-sort-button-icon[data-v-4e97a5c6],.files-list__column-sort-button:hover .files-list__column-sort-button-icon[data-v-4e97a5c6],.files-list__column-sort-button:focus .files-list__column-sort-button-icon[data-v-4e97a5c6],.files-list__column-sort-button:active .files-list__column-sort-button-icon[data-v-4e97a5c6]{opacity:1}","",{version:3,sources:["webpack://./apps/files/src/components/FilesListTableHeaderButton.vue"],names:[],mappings:"AACA,iDAEC,oCAAA,CACA,sDAAA,CAEA,sDACC,mCAAA,CACA,kBAAA,CAGD,sDACC,mCAAA,CACA,SAAA,CACA,yCAAA,CACA,wBAAA,CAGD,4FACC,uBAAA,CAGD,mXAIC,SAAA",sourcesContent:["\n.files-list__column-sort-button {\n\t// Compensate for cells margin\n\tmargin: 0 calc(var(--cell-margin) * -1);\n\tmin-width: calc(100% - 3 * var(--cell-margin))!important;\n\n\t&-text {\n\t\tcolor: var(--color-text-maxcontrast);\n\t\tfont-weight: normal;\n\t}\n\n\t&-icon {\n\t\tcolor: var(--color-text-maxcontrast);\n\t\topacity: 0;\n\t\ttransition: opacity var(--animation-quick);\n\t\tinset-inline-start: -10px;\n\t}\n\n\t&--size &-icon {\n\t\tinset-inline-start: 10px;\n\t}\n\n\t&--active &-icon,\n\t&:hover &-icon,\n\t&:focus &-icon,\n\t&:active &-icon {\n\t\topacity: 1;\n\t}\n}\n"],sourceRoot:""}]);const o=r},47738:(e,t,s)=>{"use strict";s.d(t,{A:()=>o});var n=s(71354),i=s.n(n),a=s(76314),r=s.n(a)()(i());r.push([e.id,".files-list[data-v-1287bfe2]{--row-height: 55px;--cell-margin: 14px;--checkbox-padding: calc((var(--row-height) - var(--checkbox-size)) / 2);--checkbox-size: 24px;--clickable-area: 44px;--icon-preview-size: 32px;overflow:auto;height:100%;will-change:scroll-position}.files-list[data-v-1287bfe2] tbody{will-change:padding;contain:layout paint style;display:flex;flex-direction:column;width:100%;position:relative}.files-list[data-v-1287bfe2] tbody tr{contain:strict}.files-list[data-v-1287bfe2] tbody tr:hover,.files-list[data-v-1287bfe2] tbody tr:focus{background-color:var(--color-background-dark)}.files-list[data-v-1287bfe2] .files-list__before{display:flex;flex-direction:column}.files-list[data-v-1287bfe2] .files-list__selected{padding-right:12px;white-space:nowrap}.files-list[data-v-1287bfe2] .files-list__table{display:block}.files-list[data-v-1287bfe2] .files-list__table.files-list__table--with-thead-overlay{margin-top:calc(-1*var(--row-height))}.files-list[data-v-1287bfe2] .files-list__thead-overlay{position:sticky;top:0;margin-left:var(--row-height);z-index:20;display:flex;align-items:center;background-color:var(--color-main-background);border-bottom:1px solid var(--color-border);height:var(--row-height)}.files-list[data-v-1287bfe2] .files-list__thead,.files-list[data-v-1287bfe2] .files-list__tfoot{display:flex;flex-direction:column;width:100%;background-color:var(--color-main-background)}.files-list[data-v-1287bfe2] .files-list__thead{position:sticky;z-index:10;top:0}.files-list[data-v-1287bfe2] .files-list__tfoot{min-height:300px}.files-list[data-v-1287bfe2] tr{position:relative;display:flex;align-items:center;width:100%;user-select:none;border-bottom:1px solid var(--color-border);box-sizing:border-box;user-select:none;height:var(--row-height)}.files-list[data-v-1287bfe2] td,.files-list[data-v-1287bfe2] th{display:flex;align-items:center;flex:0 0 auto;justify-content:left;width:var(--row-height);height:var(--row-height);margin:0;padding:0;color:var(--color-text-maxcontrast);border:none}.files-list[data-v-1287bfe2] td span,.files-list[data-v-1287bfe2] th span{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.files-list[data-v-1287bfe2] .files-list__row--failed{position:absolute;display:block;top:0;left:0;right:0;bottom:0;opacity:.1;z-index:-1;background:var(--color-error)}.files-list[data-v-1287bfe2] .files-list__row-checkbox{justify-content:center}.files-list[data-v-1287bfe2] .files-list__row-checkbox .checkbox-radio-switch{display:flex;justify-content:center;--icon-size: var(--checkbox-size)}.files-list[data-v-1287bfe2] .files-list__row-checkbox .checkbox-radio-switch label.checkbox-radio-switch__label{width:var(--clickable-area);height:var(--clickable-area);margin:0;padding:calc((var(--clickable-area) - var(--checkbox-size))/2)}.files-list[data-v-1287bfe2] .files-list__row-checkbox .checkbox-radio-switch .checkbox-radio-switch__icon{margin:0 !important}.files-list[data-v-1287bfe2] .files-list__row:hover,.files-list[data-v-1287bfe2] .files-list__row:focus,.files-list[data-v-1287bfe2] .files-list__row:active,.files-list[data-v-1287bfe2] .files-list__row--active,.files-list[data-v-1287bfe2] .files-list__row--dragover{background-color:var(--color-background-hover);--color-text-maxcontrast: var(--color-main-text)}.files-list[data-v-1287bfe2] .files-list__row:hover>*,.files-list[data-v-1287bfe2] .files-list__row:focus>*,.files-list[data-v-1287bfe2] .files-list__row:active>*,.files-list[data-v-1287bfe2] .files-list__row--active>*,.files-list[data-v-1287bfe2] .files-list__row--dragover>*{--color-border: var(--color-border-dark)}.files-list[data-v-1287bfe2] .files-list__row:hover .favorite-marker-icon svg path,.files-list[data-v-1287bfe2] .files-list__row:focus .favorite-marker-icon svg path,.files-list[data-v-1287bfe2] .files-list__row:active .favorite-marker-icon svg path,.files-list[data-v-1287bfe2] .files-list__row--active .favorite-marker-icon svg path,.files-list[data-v-1287bfe2] .files-list__row--dragover .favorite-marker-icon svg path{stroke:var(--color-background-hover)}.files-list[data-v-1287bfe2] .files-list__row--dragover *{pointer-events:none}.files-list[data-v-1287bfe2] .files-list__row-icon{position:relative;display:flex;overflow:visible;align-items:center;flex:0 0 var(--icon-preview-size);justify-content:center;width:var(--icon-preview-size);height:100%;margin-right:var(--checkbox-padding);color:var(--color-primary-element)}.files-list[data-v-1287bfe2] .files-list__row-icon *{cursor:pointer}.files-list[data-v-1287bfe2] .files-list__row-icon>span{justify-content:flex-start}.files-list[data-v-1287bfe2] .files-list__row-icon>span:not(.files-list__row-icon-favorite) svg{width:var(--icon-preview-size);height:var(--icon-preview-size)}.files-list[data-v-1287bfe2] .files-list__row-icon>span.folder-icon,.files-list[data-v-1287bfe2] .files-list__row-icon>span.folder-open-icon{margin:-3px}.files-list[data-v-1287bfe2] .files-list__row-icon>span.folder-icon svg,.files-list[data-v-1287bfe2] .files-list__row-icon>span.folder-open-icon svg{width:calc(var(--icon-preview-size) + 6px);height:calc(var(--icon-preview-size) + 6px)}.files-list[data-v-1287bfe2] .files-list__row-icon-preview{overflow:hidden;width:var(--icon-preview-size);height:var(--icon-preview-size);border-radius:var(--border-radius);object-fit:contain;object-position:center}.files-list[data-v-1287bfe2] .files-list__row-icon-preview:not(.files-list__row-icon-preview--loaded){background:var(--color-loading-dark)}.files-list[data-v-1287bfe2] .files-list__row-icon-favorite{position:absolute;top:0px;right:-10px}.files-list[data-v-1287bfe2] .files-list__row-icon-overlay{position:absolute;max-height:calc(var(--icon-preview-size)*.5);max-width:calc(var(--icon-preview-size)*.5);color:var(--color-primary-element-text);margin-top:2px}.files-list[data-v-1287bfe2] .files-list__row-icon-overlay--file{color:var(--color-main-text);background:var(--color-main-background);border-radius:100%}.files-list[data-v-1287bfe2] .files-list__row-name{overflow:hidden;flex:1 1 auto}.files-list[data-v-1287bfe2] .files-list__row-name a{display:flex;align-items:center;width:100%;height:100%;min-width:0}.files-list[data-v-1287bfe2] .files-list__row-name a:focus-visible{outline:none}.files-list[data-v-1287bfe2] .files-list__row-name a:focus .files-list__row-name-text{outline:2px solid var(--color-main-text) !important;border-radius:20px}.files-list[data-v-1287bfe2] .files-list__row-name a:focus:not(:focus-visible) .files-list__row-name-text{outline:none !important}.files-list[data-v-1287bfe2] .files-list__row-name .files-list__row-name-text{color:var(--color-main-text);padding:5px 10px;margin-left:-10px;display:inline-flex}.files-list[data-v-1287bfe2] .files-list__row-name .files-list__row-name-ext{color:var(--color-text-maxcontrast);overflow:visible}.files-list[data-v-1287bfe2] .files-list__row-rename{width:100%;max-width:600px}.files-list[data-v-1287bfe2] .files-list__row-rename input{width:100%;margin-left:-8px;padding:2px 6px;border-width:2px}.files-list[data-v-1287bfe2] .files-list__row-rename input:invalid{border-color:var(--color-error);color:red}.files-list[data-v-1287bfe2] .files-list__row-actions{width:auto}.files-list[data-v-1287bfe2] .files-list__row-actions~td,.files-list[data-v-1287bfe2] .files-list__row-actions~th{margin:0 var(--cell-margin)}.files-list[data-v-1287bfe2] .files-list__row-actions button .button-vue__text{font-weight:normal}.files-list[data-v-1287bfe2] .files-list__row-action--inline{margin-right:7px}.files-list[data-v-1287bfe2] .files-list__row-mtime,.files-list[data-v-1287bfe2] .files-list__row-size{color:var(--color-text-maxcontrast)}.files-list[data-v-1287bfe2] .files-list__row-size{width:calc(var(--row-height)*1.5);justify-content:flex-end}.files-list[data-v-1287bfe2] .files-list__row-mtime{width:calc(var(--row-height)*2)}.files-list[data-v-1287bfe2] .files-list__row-column-custom{width:calc(var(--row-height)*2)}","",{version:3,sources:["webpack://./apps/files/src/components/FilesListVirtual.vue"],names:[],mappings:"AACA,6BACC,kBAAA,CACA,mBAAA,CAEA,wEAAA,CACA,qBAAA,CACA,sBAAA,CACA,yBAAA,CAEA,aAAA,CACA,WAAA,CACA,2BAAA,CAIC,oCACC,mBAAA,CACA,0BAAA,CACA,YAAA,CACA,qBAAA,CACA,UAAA,CAEA,iBAAA,CAGA,uCACC,cAAA,CACA,0FAEC,6CAAA,CAMH,kDACC,YAAA,CACA,qBAAA,CAGD,oDACC,kBAAA,CACA,kBAAA,CAGD,iDACC,aAAA,CAEA,uFAEC,qCAAA,CAIF,yDAEC,eAAA,CACA,KAAA,CAEA,6BAAA,CAEA,UAAA,CAEA,YAAA,CACA,kBAAA,CAGA,6CAAA,CACA,2CAAA,CACA,wBAAA,CAGD,kGAEC,YAAA,CACA,qBAAA,CACA,UAAA,CACA,6CAAA,CAKD,iDAEC,eAAA,CACA,UAAA,CACA,KAAA,CAID,iDACC,gBAAA,CAGD,iCACC,iBAAA,CACA,YAAA,CACA,kBAAA,CACA,UAAA,CACA,gBAAA,CACA,2CAAA,CACA,qBAAA,CACA,gBAAA,CACA,wBAAA,CAGD,kEACC,YAAA,CACA,kBAAA,CACA,aAAA,CACA,oBAAA,CACA,uBAAA,CACA,wBAAA,CACA,QAAA,CACA,SAAA,CACA,mCAAA,CACA,WAAA,CAKA,4EACC,eAAA,CACA,kBAAA,CACA,sBAAA,CAIF,uDACC,iBAAA,CACA,aAAA,CACA,KAAA,CACA,MAAA,CACA,OAAA,CACA,QAAA,CACA,UAAA,CACA,UAAA,CACA,6BAAA,CAGD,wDACC,sBAAA,CAEA,+EACC,YAAA,CACA,sBAAA,CAEA,iCAAA,CAEA,kHACC,2BAAA,CACA,4BAAA,CACA,QAAA,CACA,8DAAA,CAGD,4GACC,mBAAA,CAMF,gRAEC,8CAAA,CAGA,gDAAA,CACA,0RACC,wCAAA,CAID,2aACC,oCAAA,CAIF,2DAEC,mBAAA,CAKF,oDACC,iBAAA,CACA,YAAA,CACA,gBAAA,CACA,kBAAA,CAEA,iCAAA,CACA,sBAAA,CACA,8BAAA,CACA,WAAA,CAEA,oCAAA,CACA,kCAAA,CAGA,sDACC,cAAA,CAGD,yDACC,0BAAA,CAEA,iGACC,8BAAA,CACA,+BAAA,CAID,+IAEC,WAAA,CACA,uJACC,0CAAA,CACA,2CAAA,CAKH,4DACC,eAAA,CACA,8BAAA,CACA,+BAAA,CACA,kCAAA,CAEA,kBAAA,CACA,sBAAA,CAGA,uGACC,oCAAA,CAKF,6DACC,iBAAA,CACA,OAAA,CACA,WAAA,CAID,4DACC,iBAAA,CACA,4CAAA,CACA,2CAAA,CACA,uCAAA,CAEA,cAAA,CAGA,kEACC,4BAAA,CACA,uCAAA,CACA,kBAAA,CAMH,oDAEC,eAAA,CAEA,aAAA,CAEA,sDACC,YAAA,CACA,kBAAA,CAEA,UAAA,CACA,WAAA,CAEA,WAAA,CAGA,oEACC,YAAA,CAID,uFACC,mDAAA,CACA,kBAAA,CAED,2GACC,uBAAA,CAIF,+EACC,4BAAA,CAEA,gBAAA,CACA,iBAAA,CAEA,mBAAA,CAGD,8EACC,mCAAA,CAEA,gBAAA,CAKF,sDACC,UAAA,CACA,eAAA,CACA,4DACC,UAAA,CAEA,gBAAA,CACA,eAAA,CACA,gBAAA,CAEA,oEAEC,+BAAA,CACA,SAAA,CAKH,uDAEC,UAAA,CAGA,oHAEC,2BAAA,CAIA,gFAEC,kBAAA,CAKH,8DACC,gBAAA,CAGD,yGAEC,mCAAA,CAED,oDACC,iCAAA,CAEA,wBAAA,CAGD,qDACC,+BAAA,CAGD,6DACC,+BAAA",sourcesContent:["\n.files-list {\n\t--row-height: 55px;\n\t--cell-margin: 14px;\n\n\t--checkbox-padding: calc((var(--row-height) - var(--checkbox-size)) / 2);\n\t--checkbox-size: 24px;\n\t--clickable-area: 44px;\n\t--icon-preview-size: 32px;\n\n\toverflow: auto;\n\theight: 100%;\n\twill-change: scroll-position;\n\n\t& :deep() {\n\t\t// Table head, body and footer\n\t\ttbody {\n\t\t\twill-change: padding;\n\t\t\tcontain: layout paint style;\n\t\t\tdisplay: flex;\n\t\t\tflex-direction: column;\n\t\t\twidth: 100%;\n\t\t\t// Necessary for virtual scrolling absolute\n\t\t\tposition: relative;\n\n\t\t\t/* Hover effect on tbody lines only */\n\t\t\ttr {\n\t\t\t\tcontain: strict;\n\t\t\t\t&:hover,\n\t\t\t\t&:focus {\n\t\t\t\t\tbackground-color: var(--color-background-dark);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t// Before table and thead\n\t\t.files-list__before {\n\t\t\tdisplay: flex;\n\t\t\tflex-direction: column;\n\t\t}\n\n\t\t.files-list__selected {\n\t\t\tpadding-right: 12px;\n\t\t\twhite-space: nowrap;\n\t\t}\n\n\t\t.files-list__table {\n\t\t\tdisplay: block;\n\n\t\t\t&.files-list__table--with-thead-overlay {\n\t\t\t\t// Hide the table header below the overlay\n\t\t\t\tmargin-top: calc(-1 * var(--row-height));\n\t\t\t}\n\t\t}\n\n\t\t.files-list__thead-overlay {\n\t\t\t// Pinned on top when scrolling\n\t\t\tposition: sticky;\n\t\t\ttop: 0;\n\t\t\t// Save space for a row checkbox\n\t\t\tmargin-left: var(--row-height);\n\t\t\t// More than .files-list__thead\n\t\t\tz-index: 20;\n\n\t\t\tdisplay: flex;\n\t\t\talign-items: center;\n\n\t\t\t// Reuse row styles\n\t\t\tbackground-color: var(--color-main-background);\n\t\t\tborder-bottom: 1px solid var(--color-border);\n\t\t\theight: var(--row-height);\n\t\t}\n\n\t\t.files-list__thead,\n\t\t.files-list__tfoot {\n\t\t\tdisplay: flex;\n\t\t\tflex-direction: column;\n\t\t\twidth: 100%;\n\t\t\tbackground-color: var(--color-main-background);\n\n\t\t}\n\n\t\t// Table header\n\t\t.files-list__thead {\n\t\t\t// Pinned on top when scrolling\n\t\t\tposition: sticky;\n\t\t\tz-index: 10;\n\t\t\ttop: 0;\n\t\t}\n\n\t\t// Table footer\n\t\t.files-list__tfoot {\n\t\t\tmin-height: 300px;\n\t\t}\n\n\t\ttr {\n\t\t\tposition: relative;\n\t\t\tdisplay: flex;\n\t\t\talign-items: center;\n\t\t\twidth: 100%;\n\t\t\tuser-select: none;\n\t\t\tborder-bottom: 1px solid var(--color-border);\n\t\t\tbox-sizing: border-box;\n\t\t\tuser-select: none;\n\t\t\theight: var(--row-height);\n\t\t}\n\n\t\ttd, th {\n\t\t\tdisplay: flex;\n\t\t\talign-items: center;\n\t\t\tflex: 0 0 auto;\n\t\t\tjustify-content: left;\n\t\t\twidth: var(--row-height);\n\t\t\theight: var(--row-height);\n\t\t\tmargin: 0;\n\t\t\tpadding: 0;\n\t\t\tcolor: var(--color-text-maxcontrast);\n\t\t\tborder: none;\n\n\t\t\t// Columns should try to add any text\n\t\t\t// node wrapped in a span. That should help\n\t\t\t// with the ellipsis on overflow.\n\t\t\tspan {\n\t\t\t\toverflow: hidden;\n\t\t\t\twhite-space: nowrap;\n\t\t\t\ttext-overflow: ellipsis;\n\t\t\t}\n\t\t}\n\n\t\t.files-list__row--failed {\n\t\t\tposition: absolute;\n\t\t\tdisplay: block;\n\t\t\ttop: 0;\n\t\t\tleft: 0;\n\t\t\tright: 0;\n\t\t\tbottom: 0;\n\t\t\topacity: .1;\n\t\t\tz-index: -1;\n\t\t\tbackground: var(--color-error);\n\t\t}\n\n\t\t.files-list__row-checkbox {\n\t\t\tjustify-content: center;\n\n\t\t\t.checkbox-radio-switch {\n\t\t\t\tdisplay: flex;\n\t\t\t\tjustify-content: center;\n\n\t\t\t\t--icon-size: var(--checkbox-size);\n\n\t\t\t\tlabel.checkbox-radio-switch__label {\n\t\t\t\t\twidth: var(--clickable-area);\n\t\t\t\t\theight: var(--clickable-area);\n\t\t\t\t\tmargin: 0;\n\t\t\t\t\tpadding: calc((var(--clickable-area) - var(--checkbox-size)) / 2);\n\t\t\t\t}\n\n\t\t\t\t.checkbox-radio-switch__icon {\n\t\t\t\t\tmargin: 0 !important;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t.files-list__row {\n\t\t\t&:hover, &:focus, &:active, &--active, &--dragover {\n\t\t\t\t// WCAG AA compliant\n\t\t\t\tbackground-color: var(--color-background-hover);\n\t\t\t\t// text-maxcontrast have been designed to pass WCAG AA over\n\t\t\t\t// a white background, we need to adjust then.\n\t\t\t\t--color-text-maxcontrast: var(--color-main-text);\n\t\t\t\t> * {\n\t\t\t\t\t--color-border: var(--color-border-dark);\n\t\t\t\t}\n\n\t\t\t\t// Hover state of the row should also change the favorite markers background\n\t\t\t\t.favorite-marker-icon svg path {\n\t\t\t\t\tstroke: var(--color-background-hover);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t&--dragover * {\n\t\t\t\t// Prevent dropping on row children\n\t\t\t\tpointer-events: none;\n\t\t\t}\n\t\t}\n\n\t\t// Entry preview or mime icon\n\t\t.files-list__row-icon {\n\t\t\tposition: relative;\n\t\t\tdisplay: flex;\n\t\t\toverflow: visible;\n\t\t\talign-items: center;\n\t\t\t// No shrinking or growing allowed\n\t\t\tflex: 0 0 var(--icon-preview-size);\n\t\t\tjustify-content: center;\n\t\t\twidth: var(--icon-preview-size);\n\t\t\theight: 100%;\n\t\t\t// Show same padding as the checkbox right padding for visual balance\n\t\t\tmargin-right: var(--checkbox-padding);\n\t\t\tcolor: var(--color-primary-element);\n\n\t\t\t// Icon is also clickable\n\t\t\t* {\n\t\t\t\tcursor: pointer;\n\t\t\t}\n\n\t\t\t& > span {\n\t\t\t\tjustify-content: flex-start;\n\n\t\t\t\t&:not(.files-list__row-icon-favorite) svg {\n\t\t\t\t\twidth: var(--icon-preview-size);\n\t\t\t\t\theight: var(--icon-preview-size);\n\t\t\t\t}\n\n\t\t\t\t// Slightly increase the size of the folder icon\n\t\t\t\t&.folder-icon,\n\t\t\t\t&.folder-open-icon {\n\t\t\t\t\tmargin: -3px;\n\t\t\t\t\tsvg {\n\t\t\t\t\t\twidth: calc(var(--icon-preview-size) + 6px);\n\t\t\t\t\t\theight: calc(var(--icon-preview-size) + 6px);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t&-preview {\n\t\t\t\toverflow: hidden;\n\t\t\t\twidth: var(--icon-preview-size);\n\t\t\t\theight: var(--icon-preview-size);\n\t\t\t\tborder-radius: var(--border-radius);\n\t\t\t\t// Center and contain the preview\n\t\t\t\tobject-fit: contain;\n\t\t\t\tobject-position: center;\n\n\t\t\t\t/* Preview not loaded animation effect */\n\t\t\t\t&:not(.files-list__row-icon-preview--loaded) {\n\t\t\t\t\tbackground: var(--color-loading-dark);\n\t\t\t\t\t// animation: preview-gradient-fade 1.2s ease-in-out infinite;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t&-favorite {\n\t\t\t\tposition: absolute;\n\t\t\t\ttop: 0px;\n\t\t\t\tright: -10px;\n\t\t\t}\n\n\t\t\t// File and folder overlay\n\t\t\t&-overlay {\n\t\t\t\tposition: absolute;\n\t\t\t\tmax-height: calc(var(--icon-preview-size) * 0.5);\n\t\t\t\tmax-width: calc(var(--icon-preview-size) * 0.5);\n\t\t\t\tcolor: var(--color-primary-element-text);\n\t\t\t\t// better alignment with the folder icon\n\t\t\t\tmargin-top: 2px;\n\n\t\t\t\t// Improve icon contrast with a background for files\n\t\t\t\t&--file {\n\t\t\t\t\tcolor: var(--color-main-text);\n\t\t\t\t\tbackground: var(--color-main-background);\n\t\t\t\t\tborder-radius: 100%;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t// Entry link\n\t\t.files-list__row-name {\n\t\t\t// Prevent link from overflowing\n\t\t\toverflow: hidden;\n\t\t\t// Take as much space as possible\n\t\t\tflex: 1 1 auto;\n\n\t\t\ta {\n\t\t\t\tdisplay: flex;\n\t\t\t\talign-items: center;\n\t\t\t\t// Fill cell height and width\n\t\t\t\twidth: 100%;\n\t\t\t\theight: 100%;\n\t\t\t\t// Necessary for flex grow to work\n\t\t\t\tmin-width: 0;\n\n\t\t\t\t// Already added to the inner text, see rule below\n\t\t\t\t&:focus-visible {\n\t\t\t\t\toutline: none;\n\t\t\t\t}\n\n\t\t\t\t// Keyboard indicator a11y\n\t\t\t\t&:focus .files-list__row-name-text {\n\t\t\t\t\toutline: 2px solid var(--color-main-text) !important;\n\t\t\t\t\tborder-radius: 20px;\n\t\t\t\t}\n\t\t\t\t&:focus:not(:focus-visible) .files-list__row-name-text {\n\t\t\t\t\toutline: none !important;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t.files-list__row-name-text {\n\t\t\t\tcolor: var(--color-main-text);\n\t\t\t\t// Make some space for the outline\n\t\t\t\tpadding: 5px 10px;\n\t\t\t\tmargin-left: -10px;\n\t\t\t\t// Align two name and ext\n\t\t\t\tdisplay: inline-flex;\n\t\t\t}\n\n\t\t\t.files-list__row-name-ext {\n\t\t\t\tcolor: var(--color-text-maxcontrast);\n\t\t\t\t// always show the extension\n\t\t\t\toverflow: visible;\n\t\t\t}\n\t\t}\n\n\t\t// Rename form\n\t\t.files-list__row-rename {\n\t\t\twidth: 100%;\n\t\t\tmax-width: 600px;\n\t\t\tinput {\n\t\t\t\twidth: 100%;\n\t\t\t\t// Align with text, 0 - padding - border\n\t\t\t\tmargin-left: -8px;\n\t\t\t\tpadding: 2px 6px;\n\t\t\t\tborder-width: 2px;\n\n\t\t\t\t&:invalid {\n\t\t\t\t\t// Show red border on invalid input\n\t\t\t\t\tborder-color: var(--color-error);\n\t\t\t\t\tcolor: red;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t.files-list__row-actions {\n\t\t\t// take as much space as necessary\n\t\t\twidth: auto;\n\n\t\t\t// Add margin to all cells after the actions\n\t\t\t& ~ td,\n\t\t\t& ~ th {\n\t\t\t\tmargin: 0 var(--cell-margin);\n\t\t\t}\n\n\t\t\tbutton {\n\t\t\t\t.button-vue__text {\n\t\t\t\t\t// Remove bold from default button styling\n\t\t\t\t\tfont-weight: normal;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t.files-list__row-action--inline {\n\t\t\tmargin-right: 7px;\n\t\t}\n\n\t\t.files-list__row-mtime,\n\t\t.files-list__row-size {\n\t\t\tcolor: var(--color-text-maxcontrast);\n\t\t}\n\t\t.files-list__row-size {\n\t\t\twidth: calc(var(--row-height) * 1.5);\n\t\t\t// Right align content/text\n\t\t\tjustify-content: flex-end;\n\t\t}\n\n\t\t.files-list__row-mtime {\n\t\t\twidth: calc(var(--row-height) * 2);\n\t\t}\n\n\t\t.files-list__row-column-custom {\n\t\t\twidth: calc(var(--row-height) * 2);\n\t\t}\n\t}\n}\n"],sourceRoot:""}]);const o=r},27982:(e,t,s)=>{"use strict";s.d(t,{A:()=>o});var n=s(71354),i=s.n(n),a=s(76314),r=s.n(a)()(i());r.push([e.id,"tbody.files-list__tbody.files-list__tbody--grid{--half-clickable-area: calc(var(--clickable-area) / 2);--row-width: 160px;--row-height: calc(var(--row-width) - var(--half-clickable-area));--icon-preview-size: calc(var(--row-width) - var(--clickable-area));--checkbox-padding: 0px;display:grid;grid-template-columns:repeat(auto-fill, var(--row-width));grid-gap:15px;row-gap:15px;align-content:center;align-items:center;justify-content:space-around;justify-items:center}tbody.files-list__tbody.files-list__tbody--grid tr{width:var(--row-width);height:calc(var(--row-height) + var(--clickable-area));border:none;border-radius:var(--border-radius)}tbody.files-list__tbody.files-list__tbody--grid .files-list__row-checkbox{position:absolute;z-index:9;top:0;left:0;overflow:hidden;width:var(--clickable-area);height:var(--clickable-area);border-radius:var(--half-clickable-area)}tbody.files-list__tbody.files-list__tbody--grid .files-list__row-icon-favorite{position:absolute;top:0;right:0;display:flex;align-items:center;justify-content:center;width:var(--clickable-area);height:var(--clickable-area)}tbody.files-list__tbody.files-list__tbody--grid .files-list__row-name{display:grid;justify-content:stretch;width:100%;height:100%;grid-auto-rows:var(--row-height) var(--clickable-area)}tbody.files-list__tbody.files-list__tbody--grid .files-list__row-name span.files-list__row-icon{width:100%;height:100%;padding-top:var(--half-clickable-area)}tbody.files-list__tbody.files-list__tbody--grid .files-list__row-name a.files-list__row-name-link{width:calc(100% - var(--clickable-area));height:var(--clickable-area)}tbody.files-list__tbody.files-list__tbody--grid .files-list__row-name .files-list__row-name-text{margin:0;padding-right:0}tbody.files-list__tbody.files-list__tbody--grid .files-list__row-actions{position:absolute;right:0;bottom:0;width:var(--clickable-area);height:var(--clickable-area)}","",{version:3,sources:["webpack://./apps/files/src/components/FilesListVirtual.vue"],names:[],mappings:"AAEA,gDACC,sDAAA,CACA,kBAAA,CAEA,iEAAA,CACA,mEAAA,CACA,uBAAA,CAEA,YAAA,CACA,yDAAA,CACA,aAAA,CACA,YAAA,CAEA,oBAAA,CACA,kBAAA,CACA,4BAAA,CACA,oBAAA,CAEA,mDACC,sBAAA,CACA,sDAAA,CACA,WAAA,CACA,kCAAA,CAID,0EACC,iBAAA,CACA,SAAA,CACA,KAAA,CACA,MAAA,CACA,eAAA,CACA,2BAAA,CACA,4BAAA,CACA,wCAAA,CAID,+EACC,iBAAA,CACA,KAAA,CACA,OAAA,CACA,YAAA,CACA,kBAAA,CACA,sBAAA,CACA,2BAAA,CACA,4BAAA,CAGD,sEACC,YAAA,CACA,uBAAA,CACA,UAAA,CACA,WAAA,CACA,sDAAA,CAEA,gGACC,UAAA,CACA,WAAA,CAGA,sCAAA,CAGD,kGAEC,wCAAA,CACA,4BAAA,CAGD,iGACC,QAAA,CACA,eAAA,CAIF,yEACC,iBAAA,CACA,OAAA,CACA,QAAA,CACA,2BAAA,CACA,4BAAA",sourcesContent:["\n// Grid mode\ntbody.files-list__tbody.files-list__tbody--grid {\n\t--half-clickable-area: calc(var(--clickable-area) / 2);\n\t--row-width: 160px;\n\t// We use half of the clickable area as visual balance margin\n\t--row-height: calc(var(--row-width) - var(--half-clickable-area));\n\t--icon-preview-size: calc(var(--row-width) - var(--clickable-area));\n\t--checkbox-padding: 0px;\n\n\tdisplay: grid;\n\tgrid-template-columns: repeat(auto-fill, var(--row-width));\n\tgrid-gap: 15px;\n\trow-gap: 15px;\n\n\talign-content: center;\n\talign-items: center;\n\tjustify-content: space-around;\n\tjustify-items: center;\n\n\ttr {\n\t\twidth: var(--row-width);\n\t\theight: calc(var(--row-height) + var(--clickable-area));\n\t\tborder: none;\n\t\tborder-radius: var(--border-radius);\n\t}\n\n\t// Checkbox in the top left\n\t.files-list__row-checkbox {\n\t\tposition: absolute;\n\t\tz-index: 9;\n\t\ttop: 0;\n\t\tleft: 0;\n\t\toverflow: hidden;\n\t\twidth: var(--clickable-area);\n\t\theight: var(--clickable-area);\n\t\tborder-radius: var(--half-clickable-area);\n\t}\n\n\t// Star icon in the top right\n\t.files-list__row-icon-favorite {\n\t\tposition: absolute;\n\t\ttop: 0;\n\t\tright: 0;\n\t\tdisplay: flex;\n\t\talign-items: center;\n\t\tjustify-content: center;\n\t\twidth: var(--clickable-area);\n\t\theight: var(--clickable-area);\n\t}\n\n\t.files-list__row-name {\n\t\tdisplay: grid;\n\t\tjustify-content: stretch;\n\t\twidth: 100%;\n\t\theight: 100%;\n\t\tgrid-auto-rows: var(--row-height) var(--clickable-area);\n\n\t\tspan.files-list__row-icon {\n\t\t\twidth: 100%;\n\t\t\theight: 100%;\n\t\t\t// Visual balance, we use half of the clickable area\n\t\t\t// as a margin around the preview\n\t\t\tpadding-top: var(--half-clickable-area);\n\t\t}\n\n\t\ta.files-list__row-name-link {\n\t\t\t// Minus action menu\n\t\t\twidth: calc(100% - var(--clickable-area));\n\t\t\theight: var(--clickable-area);\n\t\t}\n\n\t\t.files-list__row-name-text {\n\t\t\tmargin: 0;\n\t\t\tpadding-right: 0;\n\t\t}\n\t}\n\n\t.files-list__row-actions {\n\t\tposition: absolute;\n\t\tright: 0;\n\t\tbottom: 0;\n\t\twidth: var(--clickable-area);\n\t\theight: var(--clickable-area);\n\t}\n}\n"],sourceRoot:""}]);const o=r},91210:(e,t,s)=>{"use strict";s.d(t,{A:()=>o});var n=s(71354),i=s.n(n),a=s(76314),r=s.n(a)()(i());r.push([e.id,".app-navigation-entry__settings-quota--not-unlimited[data-v-3e968815] .app-navigation-entry__name{margin-top:-6px}.app-navigation-entry__settings-quota progress[data-v-3e968815]{position:absolute;bottom:12px;margin-left:44px;width:calc(100% - 44px - 22px)}","",{version:3,sources:["webpack://./apps/files/src/components/NavigationQuota.vue"],names:[],mappings:"AAIC,kGACC,eAAA,CAGD,gEACC,iBAAA,CACA,WAAA,CACA,gBAAA,CACA,8BAAA",sourcesContent:["\n// User storage stats display\n.app-navigation-entry__settings-quota {\n\t// Align title with progress and icon\n\t&--not-unlimited::v-deep .app-navigation-entry__name {\n\t\tmargin-top: -6px;\n\t}\n\n\tprogress {\n\t\tposition: absolute;\n\t\tbottom: 12px;\n\t\tmargin-left: 44px;\n\t\twidth: calc(100% - 44px - 22px);\n\t}\n}\n"],sourceRoot:""}]);const o=r},48885:(e,t,s)=>{"use strict";s.d(t,{A:()=>o});var n=s(71354),i=s.n(n),a=s(76314),r=s.n(a)()(i());r.push([e.id,".app-content[data-v-0e2ac83a]{display:flex;overflow:hidden;flex-direction:column;max-height:100%;position:relative !important}.files-list__header[data-v-0e2ac83a]{display:flex;align-items:center;flex:0 0;max-width:100%;margin-block:var(--app-navigation-padding, 4px);margin-inline:calc(var(--default-clickable-area, 44px) + 2*var(--app-navigation-padding, 4px)) var(--app-navigation-padding, 4px)}.files-list__header>*[data-v-0e2ac83a]{flex:0 0}.files-list__header-share-button[data-v-0e2ac83a]{color:var(--color-text-maxcontrast) !important}.files-list__header-share-button--shared[data-v-0e2ac83a]{color:var(--color-main-text) !important}.files-list__refresh-icon[data-v-0e2ac83a]{flex:0 0 44px;width:44px;height:44px}.files-list__loading-icon[data-v-0e2ac83a]{margin:auto}","",{version:3,sources:["webpack://./apps/files/src/views/FilesList.vue"],names:[],mappings:"AACA,8BAEC,YAAA,CACA,eAAA,CACA,qBAAA,CACA,eAAA,CACA,4BAAA,CAIA,qCACC,YAAA,CACA,kBAAA,CAEA,QAAA,CACA,cAAA,CAEA,+CAAA,CACA,iIAAA,CAEA,uCAGC,QAAA,CAGD,kDACC,8CAAA,CAEA,0DACC,uCAAA,CAKH,2CACC,aAAA,CACA,UAAA,CACA,WAAA,CAGD,2CACC,WAAA",sourcesContent:["\n.app-content {\n\t// Virtual list needs to be full height and is scrollable\n\tdisplay: flex;\n\toverflow: hidden;\n\tflex-direction: column;\n\tmax-height: 100%;\n\tposition: relative !important;\n}\n\n.files-list {\n\t&__header {\n\t\tdisplay: flex;\n\t\talign-items: center;\n\t\t// Do not grow or shrink (vertically)\n\t\tflex: 0 0;\n\t\tmax-width: 100%;\n\t\t// Align with the navigation toggle icon\n\t\tmargin-block: var(--app-navigation-padding, 4px);\n\t\tmargin-inline: calc(var(--default-clickable-area, 44px) + 2 * var(--app-navigation-padding, 4px)) var(--app-navigation-padding, 4px);\n\n\t\t>* {\n\t\t\t// Do not grow or shrink (horizontally)\n\t\t\t// Only the breadcrumbs shrinks\n\t\t\tflex: 0 0;\n\t\t}\n\n\t\t&-share-button {\n\t\t\tcolor: var(--color-text-maxcontrast) !important;\n\n\t\t\t&--shared {\n\t\t\t\tcolor: var(--color-main-text) !important;\n\t\t\t}\n\t\t}\n\t}\n\n\t&__refresh-icon {\n\t\tflex: 0 0 44px;\n\t\twidth: 44px;\n\t\theight: 44px;\n\t}\n\n\t&__loading-icon {\n\t\tmargin: auto;\n\t}\n}\n"],sourceRoot:""}]);const o=r},18755:(e,t,s)=>{"use strict";s.d(t,{A:()=>o});var n=s(71354),i=s.n(n),a=s(76314),r=s.n(a)()(i());r.push([e.id,".app-navigation[data-v-66457116] .app-navigation-entry-icon{background-repeat:no-repeat;background-position:center}.app-navigation[data-v-66457116] .app-navigation-entry.active .button-vue.icon-collapse:not(:hover){color:var(--color-primary-element-text)}.app-navigation>ul.app-navigation__list[data-v-66457116]{padding-bottom:var(--default-grid-baseline, 4px)}.app-navigation-entry__settings[data-v-66457116]{height:auto !important;overflow:hidden !important;padding-top:0 !important;flex:0 0 auto}","",{version:3,sources:["webpack://./apps/files/src/views/Navigation.vue"],names:[],mappings:"AAEA,4DACC,2BAAA,CACA,0BAAA,CAGD,oGACC,uCAAA,CAGD,yDAEC,gDAAA,CAGD,iDACC,sBAAA,CACA,0BAAA,CACA,wBAAA,CAEA,aAAA",sourcesContent:["\n// TODO: remove when https://github.com/nextcloud/nextcloud-vue/pull/3539 is in\n.app-navigation::v-deep .app-navigation-entry-icon {\n\tbackground-repeat: no-repeat;\n\tbackground-position: center;\n}\n\n.app-navigation::v-deep .app-navigation-entry.active .button-vue.icon-collapse:not(:hover) {\n\tcolor: var(--color-primary-element-text);\n}\n\n.app-navigation > ul.app-navigation__list {\n\t// Use flex gap value for more elegant spacing\n\tpadding-bottom: var(--default-grid-baseline, 4px);\n}\n\n.app-navigation-entry__settings {\n\theight: auto !important;\n\toverflow: hidden !important;\n\tpadding-top: 0 !important;\n\t// Prevent shrinking or growing\n\tflex: 0 0 auto;\n}\n"],sourceRoot:""}]);const o=r},8645:(e,t,s)=>{"use strict";s.d(t,{A:()=>o});var n=s(71354),i=s.n(n),a=s(76314),r=s.n(a)()(i());r.push([e.id,".setting-link[data-v-44764f8d]:hover{text-decoration:underline}","",{version:3,sources:["webpack://./apps/files/src/views/Settings.vue"],names:[],mappings:"AACA,qCACC,yBAAA",sourcesContent:["\n.setting-link:hover {\n\ttext-decoration: underline;\n}\n"],sourceRoot:""}]);const o=r},51111:e=>{"use strict";const t=new Set(["ENOTFOUND","ENETUNREACH","UNABLE_TO_GET_ISSUER_CERT","UNABLE_TO_GET_CRL","UNABLE_TO_DECRYPT_CERT_SIGNATURE","UNABLE_TO_DECRYPT_CRL_SIGNATURE","UNABLE_TO_DECODE_ISSUER_PUBLIC_KEY","CERT_SIGNATURE_FAILURE","CRL_SIGNATURE_FAILURE","CERT_NOT_YET_VALID","CERT_HAS_EXPIRED","CRL_NOT_YET_VALID","CRL_HAS_EXPIRED","ERROR_IN_CERT_NOT_BEFORE_FIELD","ERROR_IN_CERT_NOT_AFTER_FIELD","ERROR_IN_CRL_LAST_UPDATE_FIELD","ERROR_IN_CRL_NEXT_UPDATE_FIELD","OUT_OF_MEM","DEPTH_ZERO_SELF_SIGNED_CERT","SELF_SIGNED_CERT_IN_CHAIN","UNABLE_TO_GET_ISSUER_CERT_LOCALLY","UNABLE_TO_VERIFY_LEAF_SIGNATURE","CERT_CHAIN_TOO_LONG","CERT_REVOKED","INVALID_CA","PATH_LENGTH_EXCEEDED","INVALID_PURPOSE","CERT_UNTRUSTED","CERT_REJECTED","HOSTNAME_MISMATCH"]);e.exports=e=>!t.has(e&&e.code)},75270:e=>{function t(e,t){return null==e?t:e}e.exports=function(e){var s,n=t((e=e||{}).max,1),i=t(e.min,0),a=t(e.autostart,!0),r=t(e.ignoreSameProgress,!1),o=null,l=null,d=null,c=(s=t(e.historyTimeConstant,2.5),function(e,t,n){return e+n/(n+s)*(t-e)});function u(){m(i)}function m(e,t){if("number"!=typeof t&&(t=Date.now()),l!==t&&(!r||d!==e)){if(null===l||null===d)return d=e,void(l=t);var s=.001*(t-l),n=(e-d)/s;o=null===o?n:c(o,n,s),d=e,l=t}}return{start:u,reset:function(){o=null,l=null,d=null,a&&u()},report:m,estimate:function(e){if(null===d)return 1/0;if(d>=n)return 0;if(null===o)return 1/0;var t=(n-d)/o;return"number"==typeof e&&"number"==typeof l&&(t-=.001*(e-l)),Math.max(0,t)},rate:function(){return null===o?0:o}}}},2069:(e,t,s)=>{"use strict";s.d(t,{U:()=>Fe,a:()=>we,d:()=>ge,g:()=>Ee,h:()=>Ne,i:()=>de,l:()=>Ce,n:()=>be,o:()=>Pe,t:()=>Ae});var n=s(85072),i=s.n(n),a=s(97825),r=s.n(a),o=s(77659),l=s.n(o),d=s(55056),c=s.n(d),u=s(10540),m=s.n(u),g=s(41113),f=s.n(g),p=s(18141),h={};h.styleTagTransform=f(),h.setAttributes=c(),h.insert=l().bind(null,"head"),h.domAPI=r(),h.insertStyleElement=m(),i()(p.A,h),p.A&&p.A.locals&&p.A.locals;var v=s(32981),w=s(85471),A=s(21777),C=s(26304),y=s(71089),x=s(43627),b=s(65043);class _ extends Error{constructor(e){super(e||"Promise was canceled"),this.name="CancelError"}get isCanceled(){return!0}}const T=Object.freeze({pending:Symbol("pending"),canceled:Symbol("canceled"),resolved:Symbol("resolved"),rejected:Symbol("rejected")});class k{static fn(e){return(...t)=>new k(((s,n,i)=>{t.push(i),e(...t).then(s,n)}))}#e=[];#t=!0;#s=T.pending;#n;#i;constructor(e){this.#n=new Promise(((t,s)=>{this.#i=s;const n=e=>{if(this.#s!==T.pending)throw new Error(`The \`onCancel\` handler was attached after the promise ${this.#s.description}.`);this.#e.push(e)};Object.defineProperties(n,{shouldReject:{get:()=>this.#t,set:e=>{this.#t=e}}}),e((e=>{this.#s===T.canceled&&n.shouldReject||(t(e),this.#a(T.resolved))}),(e=>{this.#s===T.canceled&&n.shouldReject||(s(e),this.#a(T.rejected))}),n)}))}then(e,t){return this.#n.then(e,t)}catch(e){return this.#n.catch(e)}finally(e){return this.#n.finally(e)}cancel(e){if(this.#s===T.pending){if(this.#a(T.canceled),this.#e.length>0)try{for(const e of this.#e)e()}catch(e){return void this.#i(e)}this.#t&&this.#i(new _(e))}}get isCanceled(){return this.#s===T.canceled}#a(e){this.#s===T.pending&&(this.#s=e)}}Object.setPrototypeOf(k.prototype,Promise.prototype);var S=s(9052);class L extends Error{constructor(e){super(e),this.name="TimeoutError"}}class F extends Error{constructor(e){super(),this.name="AbortError",this.message=e}}const U=e=>void 0===globalThis.DOMException?new F(e):new DOMException(e),E=e=>{const t=void 0===e.reason?U("This operation was aborted."):e.reason;return t instanceof Error?t:U(t)};class P{#r=[];enqueue(e,t){const s={priority:(t={priority:0,...t}).priority,run:e};if(this.size&&this.#r[this.size-1].priority>=t.priority)return void this.#r.push(s);const n=function(e,t,s){let n=0,i=e.length;for(;i>0;){const s=Math.trunc(i/2);let r=n+s;a=e[r],t.priority-a.priority<=0?(n=++r,i-=s+1):i=s}var a;return n}(this.#r,s);this.#r.splice(n,0,s)}dequeue(){const e=this.#r.shift();return e?.run}filter(e){return this.#r.filter((t=>t.priority===e.priority)).map((e=>e.run))}get size(){return this.#r.length}}class N extends S{#o;#l;#d=0;#c;#u;#m=0;#g;#f;#r;#p;#h=0;#v;#w;#A;timeout;constructor(e){if(super(),!("number"==typeof(e={carryoverConcurrencyCount:!1,intervalCap:Number.POSITIVE_INFINITY,interval:0,concurrency:Number.POSITIVE_INFINITY,autoStart:!0,queueClass:P,...e}).intervalCap&&e.intervalCap>=1))throw new TypeError(`Expected \`intervalCap\` to be a number from 1 and up, got \`${e.intervalCap?.toString()??""}\` (${typeof e.intervalCap})`);if(void 0===e.interval||!(Number.isFinite(e.interval)&&e.interval>=0))throw new TypeError(`Expected \`interval\` to be a finite number >= 0, got \`${e.interval?.toString()??""}\` (${typeof e.interval})`);this.#o=e.carryoverConcurrencyCount,this.#l=e.intervalCap===Number.POSITIVE_INFINITY||0===e.interval,this.#c=e.intervalCap,this.#u=e.interval,this.#r=new e.queueClass,this.#p=e.queueClass,this.concurrency=e.concurrency,this.timeout=e.timeout,this.#A=!0===e.throwOnTimeout,this.#w=!1===e.autoStart}get#C(){return this.#l||this.#d{this.#_()}),t)),!0;this.#d=this.#o?this.#h:0}return!1}#b(){if(0===this.#r.size)return this.#g&&clearInterval(this.#g),this.#g=void 0,this.emit("empty"),0===this.#h&&this.emit("idle"),!1;if(!this.#w){const e=!this.#S;if(this.#C&&this.#y){const t=this.#r.dequeue();return!!t&&(this.emit("active"),t(),e&&this.#k(),!0)}}return!1}#k(){this.#l||void 0!==this.#g||(this.#g=setInterval((()=>{this.#T()}),this.#u),this.#m=Date.now()+this.#u)}#T(){0===this.#d&&0===this.#h&&this.#g&&(clearInterval(this.#g),this.#g=void 0),this.#d=this.#o?this.#h:0,this.#L()}#L(){for(;this.#b(););}get concurrency(){return this.#v}set concurrency(e){if(!("number"==typeof e&&e>=1))throw new TypeError(`Expected \`concurrency\` to be a number from 1 and up, got \`${e}\` (${typeof e})`);this.#v=e,this.#L()}async#F(e){return new Promise(((t,s)=>{e.addEventListener("abort",(()=>{s(e.reason)}),{once:!0})}))}async add(e,t={}){return t={timeout:this.timeout,throwOnTimeout:this.#A,...t},new Promise(((s,n)=>{this.#r.enqueue((async()=>{this.#h++,this.#d++;try{t.signal?.throwIfAborted();let n=e({signal:t.signal});t.timeout&&(n=function(e,t){const{milliseconds:s,fallback:n,message:i,customTimers:a={setTimeout,clearTimeout}}=t;let r;const o=new Promise(((o,l)=>{if("number"!=typeof s||1!==Math.sign(s))throw new TypeError(`Expected \`milliseconds\` to be a positive number, got \`${s}\``);if(t.signal){const{signal:e}=t;e.aborted&&l(E(e)),e.addEventListener("abort",(()=>{l(E(e))}))}if(s===Number.POSITIVE_INFINITY)return void e.then(o,l);const d=new L;r=a.setTimeout.call(void 0,(()=>{if(n)try{o(n())}catch(e){l(e)}else"function"==typeof e.cancel&&e.cancel(),!1===i?o():i instanceof Error?l(i):(d.message=i??`Promise timed out after ${s} milliseconds`,l(d))}),s),(async()=>{try{o(await e)}catch(e){l(e)}})()})).finally((()=>{o.clear()}));return o.clear=()=>{a.clearTimeout.call(void 0,r),r=void 0},o}(Promise.resolve(n),{milliseconds:t.timeout})),t.signal&&(n=Promise.race([n,this.#F(t.signal)]));const i=await n;s(i),this.emit("completed",i)}catch(e){if(e instanceof L&&!t.throwOnTimeout)return void s();n(e),this.emit("error",e)}finally{this.#x()}}),t),this.emit("add"),this.#b()}))}async addAll(e,t){return Promise.all(e.map((async e=>this.add(e,t))))}start(){return this.#w?(this.#w=!1,this.#L(),this):this}pause(){this.#w=!0}clear(){this.#r=new this.#p}async onEmpty(){0!==this.#r.size&&await this.#U("empty")}async onSizeLessThan(e){this.#r.sizethis.#r.size{const n=()=>{t&&!t()||(this.off(e,n),s())};this.on(e,n)}))}get size(){return this.#r.size}sizeBy(e){return this.#r.filter(e).length}get pending(){return this.#h}get isPaused(){return this.#w}}var B=s(63814),I=s(51111);const z="axios-retry";function D(e){return!e.response&&!!e.code&&!["ERR_CANCELED","ECONNABORTED"].includes(e.code)&&I(e)}const R=["get","head","options"],j=R.concat(["put","delete"]);function O(e){return"ECONNABORTED"!==e.code&&(!e.response||429===e.response.status||e.response.status>=500&&e.response.status<=599)}function M(e){return!!e.config?.method&&O(e)&&-1!==j.indexOf(e.config.method)}function V(e){return D(e)||M(e)}function $(e=void 0){const t=e?.response?.headers["retry-after"];if(!t)return 0;let s=1e3*(Number(t)||0);return 0===s&&(s=(new Date(t).valueOf()||0)-Date.now()),Math.max(0,s)}const q={retries:3,retryCondition:V,retryDelay:function(e=0,t=void 0){return Math.max(0,$(t))},shouldResetTimeout:!1,onRetry:()=>{},onMaxRetryTimesExceeded:()=>{},validateResponse:null};function H(e,t){const s=function(e,t){return{...q,...t,...e[z]}}(e,t||{});return s.retryCount=s.retryCount||0,s.lastRequestTime=s.lastRequestTime||Date.now(),e[z]=s,s}const W=(e,t)=>{const s=e.interceptors.request.use((e=>(H(e,t),e[z]?.validateResponse&&(e.validateStatus=()=>!1),e))),n=e.interceptors.response.use(null,(async s=>{const{config:n}=s;if(!n)return Promise.reject(s);const i=H(n,t);return s.response&&i.validateResponse?.(s.response)?s.response:await async function(e,t){const{retries:s,retryCondition:n}=e,i=(e.retryCount||0)e],await r(t.retryCount,s,n),n.signal?.aborted?Promise.resolve(e(n)):new Promise((t=>{const s=()=>{clearTimeout(i),t(e(n))},i=setTimeout((()=>{t(e(n)),n.signal?.removeEventListener&&n.signal.removeEventListener("abort",s)}),o);n.signal?.addEventListener&&n.signal.addEventListener("abort",s,{once:!0})}))}(e,i,s,n):(await async function(e,t){e.retryCount>=e.retries&&await e.onMaxRetryTimesExceeded(t,e.retryCount)}(i,s),Promise.reject(s))}));return{requestInterceptorId:s,responseInterceptorId:n}};W.isNetworkError=D,W.isSafeRequestError=function(e){return!!e.config?.method&&O(e)&&-1!==R.indexOf(e.config.method)},W.isIdempotentRequestError=M,W.isNetworkOrIdempotentRequestError=V,W.exponentialDelay=function(e=0,t=void 0,s=100){const n=2**e*s,i=Math.max(n,$(t));return i+.2*i*Math.random()},W.isRetryableError=O;const G=W;var Y=s(82148);s(42838),s(70580);var K=Object.defineProperty,Q=(e,t,s)=>(((e,t,s)=>{t in e?K(e,t,{enumerable:!0,configurable:!0,writable:!0,value:s}):e[t]=s})(e,"symbol"!=typeof t?t+"":t,s),s);class J{constructor(e,t,s){Q(this,"gt"),this.gt=new Y({debug:s,sourceLocale:"en"});for(const e in t)this.gt.addTranslations(e,"messages",t[e]);this.gt.setLocale(e)}subtitudePlaceholders(e,t){return e.replace(/{([^{}]*)}/g,((e,s)=>{const n=t[s];return"string"==typeof n||"number"==typeof n?n.toString():e}))}gettext(e,t={}){return this.subtitudePlaceholders(this.gt.gettext(e),t)}ngettext(e,t,s,n={}){return this.subtitudePlaceholders(this.gt.ngettext(e,t,s).replace(/%n/g,s.toString()),n)}}var Z=s(35947),X=s(85168),ee=s(75270),te=s(63420),se=s(50953),ne=s(10501),ie=s(24764),ae=s(9518),re=s(6695),oe=s(95101);const le=e=>"FileSystemFileEntry"in window&&e instanceof FileSystemFileEntry,de=e=>"FileSystemEntry"in window&&e instanceof FileSystemEntry;G(b.Ay,{retries:0});const ce=async function(e,t,s,n=(()=>{}),i=void 0,a={},r=5){let o;return o=t instanceof Blob?t:await t(),i&&(a.Destination=i),a["Content-Type"]||(a["Content-Type"]="application/octet-stream"),await b.Ay.request({method:"PUT",url:e,data:o,signal:s,onUploadProgress:n,headers:a,"axios-retry":{retries:r,retryDelay:(e,t)=>G.exponentialDelay(e,t,1e3)}})},ue=function(e,t,s){return 0===t&&e.size<=s?Promise.resolve(new Blob([e],{type:e.type||"application/octet-stream"})):Promise.resolve(new Blob([e.slice(t,t+s)],{type:"application/octet-stream"}))},me=function(e=void 0){const t=window.OC?.appConfig?.files?.max_chunk_size;if(t<=0)return 0;if(!Number(t))return 10485760;const s=Math.max(Number(t),5242880);return void 0===e?s:Math.max(s,Math.ceil(e/1e4))};var ge=(e=>(e[e.INITIALIZED=0]="INITIALIZED",e[e.UPLOADING=1]="UPLOADING",e[e.ASSEMBLING=2]="ASSEMBLING",e[e.FINISHED=3]="FINISHED",e[e.CANCELLED=4]="CANCELLED",e[e.FAILED=5]="FAILED",e))(ge||{});class fe{_source;_file;_isChunked;_chunks;_size;_uploaded=0;_startTime=0;_status=0;_controller;_response=null;constructor(e,t=!1,s,n){const i=Math.min(me()>0?Math.ceil(s/me()):1,1e4);this._source=e,this._isChunked=t&&me()>0&&i>1,this._chunks=this._isChunked?i:1,this._size=s,this._file=n,this._controller=new AbortController}get source(){return this._source}get file(){return this._file}get isChunked(){return this._isChunked}get chunks(){return this._chunks}get size(){return this._size}get startTime(){return this._startTime}set response(e){this._response=e}get response(){return this._response}get uploaded(){return this._uploaded}set uploaded(e){if(e>=this._size)return this._status=this._isChunked?2:3,void(this._uploaded=this._size);this._status=1,this._uploaded=e,0===this._startTime&&(this._startTime=(new Date).getTime())}get status(){return this._status}set status(e){this._status=e}get signal(){return this._controller.signal}cancel(){this._controller.abort(),this._status=4}}class pe extends File{_originalName;_path;_children;constructor(e,t){super([],(0,y.P8)(e),{type:"httpd/unix-directory",lastModified:0}),this._children=new Map,this._originalName=(0,y.P8)(e),this._path=e,t&&t.forEach((e=>this.addChild(e)))}get size(){return this.children.reduce(((e,t)=>e+t.size),0)}get lastModified(){return this.children.reduce(((e,t)=>Math.max(e,t.lastModified)),0)}get originalName(){return this._originalName}get children(){return Array.from(this._children.values())}get webkitRelativePath(){return this._path}getChild(e){return this._children.get(e)??null}async addChild(e){const t=this._path&&`${this._path}/`;if(le(e))e=await new Promise(((t,s)=>e.file(t,s)));else if("FileSystemDirectoryEntry"in window&&e instanceof FileSystemDirectoryEntry){const s=e.createReader(),n=await new Promise(((e,t)=>s.readEntries(e,t)));return void this._children.set(e.name,new pe(`${t}${e.name}`,n))}const s=e.webkitRelativePath??e.name;if(s.includes("/")){if(!s.startsWith(this._path))throw new Error(`File ${s} is not a child of ${this._path}`);const n=s.slice(t.length),i=(0,y.P8)(n);if(i===n)this._children.set(i,e);else{const s=n.slice(0,n.indexOf("/"));this._children.has(s)?this._children.get(s).addChild(e):this._children.set(s,new pe(`${t}${s}`,[e]))}}else this._children.set(e.name,e)}}const he=(new class{constructor(){Q(this,"locale"),Q(this,"translations",{}),Q(this,"debug",!1)}setLanguage(e){return this.locale=e,this}detectLocale(){return this.setLanguage((document.documentElement.lang||"en").replace("-","_"))}addTranslation(e,t){return this.translations[e]=t,this}enableDebugMode(){return this.debug=!0,this}build(){return new J(this.locale||"en",this.translations,this.debug)}}).detectLocale();[{locale:"af",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Afrikaans (https://www.transifex.com/nextcloud/teams/64236/af/)","Content-Type":"text/plain; charset=UTF-8",Language:"af","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Afrikaans (https://www.transifex.com/nextcloud/teams/64236/af/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: af\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"ar",json:{charset:"utf-8",headers:{"Last-Translator":"Ali , 2024","Language-Team":"Arabic (https://app.transifex.com/nextcloud/teams/64236/ar/)","Content-Type":"text/plain; charset=UTF-8",Language:"ar","Plural-Forms":"nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nAli , 2024\n"},msgstr:["Last-Translator: Ali , 2024\nLanguage-Team: Arabic (https://app.transifex.com/nextcloud/teams/64236/ar/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ar\nPlural-Forms: nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;\n"]},'"{filename}" contains invalid characters, how do you want to continue?':{msgid:'"{filename}" contains invalid characters, how do you want to continue?',msgstr:['"{filename}" يحتوي على حروف غير مقبولة. كيف ترغب في الاستمرار؟']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} ملف متعارض","{count} ملف متعارض","{count} ملفان متعارضان","{count} ملف متعارض","{count} ملفات متعارضة","{count} ملفات متعارضة"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} ملف متعارض في n {dirname}","{count} ملف متعارض في n {dirname}","{count} ملفان متعارضان في n {dirname}","{count} ملف متعارض في n {dirname}","{count} ملفات متعارضة في n {dirname}","{count} ملفات متعارضة في n {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} ثانية متبقية"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} متبقية"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["باقٍ بضعُ ثوانٍ"]},Cancel:{msgid:"Cancel",msgstr:["إلغاء"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["إلغِ العملية بالكامل"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["إلغاء عمليات رفع الملفات"]},Continue:{msgid:"Continue",msgstr:["إستمر"]},"Create new":{msgid:"Create new",msgstr:["إنشاء جديد"]},"estimating time left":{msgid:"estimating time left",msgstr:["تقدير الوقت المتبقي"]},"Existing version":{msgid:"Existing version",msgstr:["الإصدار الحالي"]},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["إذا اخترت الاحتفاظ بالنسختين فسيتم إلحاق رقم عداد آخر اسم الملف الوارد."]},"Invalid file name":{msgid:"Invalid file name",msgstr:["اسم الملف غير صحيح"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["تاريخ آخر تعديل غير معلوم"]},New:{msgid:"New",msgstr:["جديد"]},"New version":{msgid:"New version",msgstr:["نسخة جديدة"]},paused:{msgid:"paused",msgstr:["مُجمَّد"]},"Preview image":{msgid:"Preview image",msgstr:["معاينة الصورة"]},Rename:{msgid:"Rename",msgstr:["تغيير التسمية"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["حدِّد كل صناديق الخيارات"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["حدِّد كل الملفات الموجودة"]},"Select all new files":{msgid:"Select all new files",msgstr:["حدِّد كل الملفات الجديدة"]},Skip:{msgid:"Skip",msgstr:["تخطِّي"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["تخطَّ {count} ملف","تخطَّ {count} ملف","تخطَّ {count} ملف","تخطَّ {count} ملف","تخطَّ {count} ملف","تخطَّ {count} ملف"]},"Unknown size":{msgid:"Unknown size",msgstr:["حجم غير معلوم"]},"Upload files":{msgid:"Upload files",msgstr:["رفع ملفات"]},"Upload folders":{msgid:"Upload folders",msgstr:["رفع مجلدات"]},"Upload from device":{msgid:"Upload from device",msgstr:["الرفع من جهاز "]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["تمّ إلغاء عملية رفع الملفات"]},"Upload progress":{msgid:"Upload progress",msgstr:["تقدُّم الرفع "]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["عند تحديد مجلد وارد، أي ملفات متعارضة بداخله ستتم الكتابة فوقها."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["عند تحديد مجلد وارد، ستتم كتابة المحتوى في المجلد الموجود و سيتم تنفيذ حل التعارض بشكل تعاوُدي."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["أيُّ الملفات ترغب في الإبقاء عليها؟"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["يجب أن تختار نسخة واحدة على الأقل من كل ملف للاستمرار."]}}}}},{locale:"ar_SA",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Arabic (Saudi Arabia) (https://www.transifex.com/nextcloud/teams/64236/ar_SA/)","Content-Type":"text/plain; charset=UTF-8",Language:"ar_SA","Plural-Forms":"nplurals=6; plural=(n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Arabic (Saudi Arabia) (https://www.transifex.com/nextcloud/teams/64236/ar_SA/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ar_SA\nPlural-Forms: nplurals=6; plural=(n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"ast",json:{charset:"utf-8",headers:{"Last-Translator":"enolp , 2023","Language-Team":"Asturian (https://app.transifex.com/nextcloud/teams/64236/ast/)","Content-Type":"text/plain; charset=UTF-8",Language:"ast","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nenolp , 2023\n"},msgstr:["Last-Translator: enolp , 2023\nLanguage-Team: Asturian (https://app.transifex.com/nextcloud/teams/64236/ast/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ast\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} ficheru en coflictu","{count} ficheros en coflictu"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} ficheru en coflictu en {dirname}","{count} ficheros en coflictu en {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["Queden {seconds} segundos"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["Tiempu que queda: {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["queden unos segundos"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Encaboxar les xubes"]},Continue:{msgid:"Continue",msgstr:["Siguir"]},"estimating time left":{msgid:"estimating time left",msgstr:["estimando'l tiempu que falta"]},"Existing version":{msgid:"Existing version",msgstr:["Versión esistente"]},"If you select both versions, the copied file will have a number added to its name.":{msgid:"If you select both versions, the copied file will have a number added to its name.",msgstr:["Si seleiciones dambes versiones, el ficheru copiáu va tener un númberu amestáu al so nome."]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["La data de la última modificación ye desconocida"]},New:{msgid:"New",msgstr:["Nuevu"]},"New version":{msgid:"New version",msgstr:["Versión nueva"]},paused:{msgid:"paused",msgstr:["en posa"]},"Preview image":{msgid:"Preview image",msgstr:["Previsualizar la imaxe"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Marcar toles caxelles"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Seleicionar tolos ficheros esistentes"]},"Select all new files":{msgid:"Select all new files",msgstr:["Seleicionar tolos ficheros nuevos"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Saltar esti ficheru","Saltar {count} ficheros"]},"Unknown size":{msgid:"Unknown size",msgstr:["Tamañu desconocíu"]},"Upload cancelled":{msgid:"Upload cancelled",msgstr:["Encaboxóse la xuba"]},"Upload files":{msgid:"Upload files",msgstr:["Xubir ficheros"]},"Upload progress":{msgid:"Upload progress",msgstr:["Xuba en cursu"]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["¿Qué ficheros quies caltener?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Tienes de seleicionar polo menos una versión de cada ficheru pa siguir."]}}}}},{locale:"az",json:{charset:"utf-8",headers:{"Last-Translator":"Rashad Aliyev , 2023","Language-Team":"Azerbaijani (https://app.transifex.com/nextcloud/teams/64236/az/)","Content-Type":"text/plain; charset=UTF-8",Language:"az","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nRashad Aliyev , 2023\n"},msgstr:["Last-Translator: Rashad Aliyev , 2023\nLanguage-Team: Azerbaijani (https://app.transifex.com/nextcloud/teams/64236/az/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: az\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} saniyə qalıb"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["{time} qalıb"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["bir neçə saniyə qalıb"]},Add:{msgid:"Add",msgstr:["Əlavə et"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Yükləməni imtina et"]},"estimating time left":{msgid:"estimating time left",msgstr:["Təxmini qalan vaxt"]},paused:{msgid:"paused",msgstr:["pauzadadır"]},"Upload files":{msgid:"Upload files",msgstr:["Faylları yüklə"]}}}}},{locale:"be",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Belarusian (https://www.transifex.com/nextcloud/teams/64236/be/)","Content-Type":"text/plain; charset=UTF-8",Language:"be","Plural-Forms":"nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Belarusian (https://www.transifex.com/nextcloud/teams/64236/be/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: be\nPlural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"bg_BG",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Bulgarian (Bulgaria) (https://www.transifex.com/nextcloud/teams/64236/bg_BG/)","Content-Type":"text/plain; charset=UTF-8",Language:"bg_BG","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Bulgarian (Bulgaria) (https://www.transifex.com/nextcloud/teams/64236/bg_BG/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: bg_BG\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"bn_BD",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Bengali (Bangladesh) (https://www.transifex.com/nextcloud/teams/64236/bn_BD/)","Content-Type":"text/plain; charset=UTF-8",Language:"bn_BD","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Bengali (Bangladesh) (https://www.transifex.com/nextcloud/teams/64236/bn_BD/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: bn_BD\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"br",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Breton (https://www.transifex.com/nextcloud/teams/64236/br/)","Content-Type":"text/plain; charset=UTF-8",Language:"br","Plural-Forms":"nplurals=5; plural=((n%10 == 1) && (n%100 != 11) && (n%100 !=71) && (n%100 !=91) ? 0 :(n%10 == 2) && (n%100 != 12) && (n%100 !=72) && (n%100 !=92) ? 1 :(n%10 ==3 || n%10==4 || n%10==9) && (n%100 < 10 || n% 100 > 19) && (n%100 < 70 || n%100 > 79) && (n%100 < 90 || n%100 > 99) ? 2 :(n != 0 && n % 1000000 == 0) ? 3 : 4);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Breton (https://www.transifex.com/nextcloud/teams/64236/br/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: br\nPlural-Forms: nplurals=5; plural=((n%10 == 1) && (n%100 != 11) && (n%100 !=71) && (n%100 !=91) ? 0 :(n%10 == 2) && (n%100 != 12) && (n%100 !=72) && (n%100 !=92) ? 1 :(n%10 ==3 || n%10==4 || n%10==9) && (n%100 < 10 || n% 100 > 19) && (n%100 < 70 || n%100 > 79) && (n%100 < 90 || n%100 > 99) ? 2 :(n != 0 && n % 1000000 == 0) ? 3 : 4);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"bs",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Bosnian (https://www.transifex.com/nextcloud/teams/64236/bs/)","Content-Type":"text/plain; charset=UTF-8",Language:"bs","Plural-Forms":"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Bosnian (https://www.transifex.com/nextcloud/teams/64236/bs/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: bs\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"ca",json:{charset:"utf-8",headers:{"Last-Translator":"Toni Hermoso Pulido , 2022","Language-Team":"Catalan (https://www.transifex.com/nextcloud/teams/64236/ca/)","Content-Type":"text/plain; charset=UTF-8",Language:"ca","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nMarc Riera , 2022\nToni Hermoso Pulido , 2022\n"},msgstr:["Last-Translator: Toni Hermoso Pulido , 2022\nLanguage-Team: Catalan (https://www.transifex.com/nextcloud/teams/64236/ca/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ca\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["Queden {seconds} segons"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["Queden {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["Queden uns segons"]},Add:{msgid:"Add",msgstr:["Afegeix"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Cancel·la les pujades"]},"estimating time left":{msgid:"estimating time left",msgstr:["S'està estimant el temps restant"]},paused:{msgid:"paused",msgstr:["En pausa"]},"Upload files":{msgid:"Upload files",msgstr:["Puja els fitxers"]}}}}},{locale:"cs",json:{charset:"utf-8",headers:{"Last-Translator":"Pavel Borecki , 2022","Language-Team":"Czech (https://www.transifex.com/nextcloud/teams/64236/cs/)","Content-Type":"text/plain; charset=UTF-8",Language:"cs","Plural-Forms":"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nPavel Borecki , 2022\n"},msgstr:["Last-Translator: Pavel Borecki , 2022\nLanguage-Team: Czech (https://www.transifex.com/nextcloud/teams/64236/cs/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: cs\nPlural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["zbývá {seconds}"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["zbývá {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["zbývá několik sekund"]},Add:{msgid:"Add",msgstr:["Přidat"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Zrušit nahrávání"]},"estimating time left":{msgid:"estimating time left",msgstr:["odhadovaný zbývající čas"]},paused:{msgid:"paused",msgstr:["pozastaveno"]}}}}},{locale:"cs_CZ",json:{charset:"utf-8",headers:{"Last-Translator":"Michal Šmahel , 2024","Language-Team":"Czech (Czech Republic) (https://app.transifex.com/nextcloud/teams/64236/cs_CZ/)","Content-Type":"text/plain; charset=UTF-8",Language:"cs_CZ","Plural-Forms":"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nMichal Šmahel , 2024\n"},msgstr:["Last-Translator: Michal Šmahel , 2024\nLanguage-Team: Czech (Czech Republic) (https://app.transifex.com/nextcloud/teams/64236/cs_CZ/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: cs_CZ\nPlural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\n"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} kolize souborů","{count} kolize souborů","{count} kolizí souborů","{count} kolize souborů"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} kolize souboru v {dirname}","{count} kolize souboru v {dirname}","{count} kolizí souborů v {dirname}","{count} kolize souboru v {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["zbývá {seconds}"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["zbývá {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["zbývá několik sekund"]},Cancel:{msgid:"Cancel",msgstr:["Zrušit"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Zrušit celou operaci"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Zrušit nahrávání"]},Continue:{msgid:"Continue",msgstr:["Pokračovat"]},"estimating time left":{msgid:"estimating time left",msgstr:["odhaduje se zbývající čas"]},"Existing version":{msgid:"Existing version",msgstr:["Existující verze"]},"If you select both versions, the copied file will have a number added to its name.":{msgid:"If you select both versions, the copied file will have a number added to its name.",msgstr:["Pokud vyberete obě verze, zkopírovaný soubor bude mít k názvu přidáno číslo."]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Neznámé datum poslední úpravy"]},New:{msgid:"New",msgstr:["Nové"]},"New version":{msgid:"New version",msgstr:["Nová verze"]},paused:{msgid:"paused",msgstr:["pozastaveno"]},"Preview image":{msgid:"Preview image",msgstr:["Náhled obrázku"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Označit všechny zaškrtávací kolonky"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Vybrat veškeré stávající soubory"]},"Select all new files":{msgid:"Select all new files",msgstr:["Vybrat veškeré nové soubory"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Přeskočit tento soubor","Přeskočit {count} soubory","Přeskočit {count} souborů","Přeskočit {count} soubory"]},"Unknown size":{msgid:"Unknown size",msgstr:["Neznámá velikost"]},"Upload cancelled":{msgid:"Upload cancelled",msgstr:["Nahrávání zrušeno"]},"Upload files":{msgid:"Upload files",msgstr:["Nahrát soubory"]},"Upload progress":{msgid:"Upload progress",msgstr:["Postup v nahrávání"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Po výběru příchozí složky budou rovněž přepsány všechny v ní obsažené konfliktní soubory"]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Které soubory si přejete ponechat?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Aby bylo možné pokračovat, je třeba vybrat alespoň jednu verzi od každého souboru."]}}}}},{locale:"cy_GB",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Welsh (United Kingdom) (https://www.transifex.com/nextcloud/teams/64236/cy_GB/)","Content-Type":"text/plain; charset=UTF-8",Language:"cy_GB","Plural-Forms":"nplurals=4; plural=(n==1) ? 0 : (n==2) ? 1 : (n != 8 && n != 11) ? 2 : 3;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Welsh (United Kingdom) (https://www.transifex.com/nextcloud/teams/64236/cy_GB/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: cy_GB\nPlural-Forms: nplurals=4; plural=(n==1) ? 0 : (n==2) ? 1 : (n != 8 && n != 11) ? 2 : 3;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"da",json:{charset:"utf-8",headers:{"Last-Translator":"Martin Bonde , 2024","Language-Team":"Danish (https://app.transifex.com/nextcloud/teams/64236/da/)","Content-Type":"text/plain; charset=UTF-8",Language:"da","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nMartin Bonde , 2024\n"},msgstr:["Last-Translator: Martin Bonde , 2024\nLanguage-Team: Danish (https://app.transifex.com/nextcloud/teams/64236/da/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: da\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} fil konflikt","{count} filer i konflikt"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} fil konflikt i {dirname}","{count} filer i konflikt i {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{sekunder} sekunder tilbage"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{tid} tilbage"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["et par sekunder tilbage"]},Cancel:{msgid:"Cancel",msgstr:["Annuller"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Annuller hele handlingen"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Annuller uploads"]},Continue:{msgid:"Continue",msgstr:["Fortsæt"]},"estimating time left":{msgid:"estimating time left",msgstr:["estimering af resterende tid"]},"Existing version":{msgid:"Existing version",msgstr:["Eksisterende version"]},"If you select both versions, the copied file will have a number added to its name.":{msgid:"If you select both versions, the copied file will have a number added to its name.",msgstr:["Hvis du vælger begge versioner vil den kopierede fil få et nummer tilføjet til sit navn."]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Sidste modifikationsdato ukendt"]},New:{msgid:"New",msgstr:["Ny"]},"New version":{msgid:"New version",msgstr:["Ny version"]},paused:{msgid:"paused",msgstr:["pauset"]},"Preview image":{msgid:"Preview image",msgstr:["Forhåndsvisning af billede"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Vælg alle felter"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Vælg alle eksisterende filer"]},"Select all new files":{msgid:"Select all new files",msgstr:["Vælg alle nye filer"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Spring denne fil over","Spring {count} filer over"]},"Unknown size":{msgid:"Unknown size",msgstr:["Ukendt størrelse"]},"Upload cancelled":{msgid:"Upload cancelled",msgstr:["Upload annulleret"]},"Upload files":{msgid:"Upload files",msgstr:["Upload filer"]},"Upload progress":{msgid:"Upload progress",msgstr:["Upload fremskridt"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Når en indgående mappe er valgt, vil alle modstridende filer i den også blive overskrevet."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Hvilke filer ønsker du at beholde?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Du skal vælge mindst én version af hver fil for at fortsætte."]}}}}},{locale:"de",json:{charset:"utf-8",headers:{"Last-Translator":"Mario Siegmann , 2024","Language-Team":"German (https://app.transifex.com/nextcloud/teams/64236/de/)","Content-Type":"text/plain; charset=UTF-8",Language:"de","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nMario Siegmann , 2024\n"},msgstr:["Last-Translator: Mario Siegmann , 2024\nLanguage-Team: German (https://app.transifex.com/nextcloud/teams/64236/de/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: de\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} Datei-Konflikt","{count} Datei-Konflikte"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} Datei-Konflikt in {dirname}","{count} Datei-Konflikte in {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} Sekunden verbleibend"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} verbleibend"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["noch ein paar Sekunden"]},Cancel:{msgid:"Cancel",msgstr:["Abbrechen"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Den gesamten Vorgang abbrechen"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Hochladen abbrechen"]},Continue:{msgid:"Continue",msgstr:["Fortsetzen"]},"estimating time left":{msgid:"estimating time left",msgstr:["Geschätzte verbleibende Zeit"]},"Existing version":{msgid:"Existing version",msgstr:["Vorhandene Version"]},"If you select both versions, the copied file will have a number added to its name.":{msgid:"If you select both versions, the copied file will have a number added to its name.",msgstr:["Wenn du beide Versionen auswählst, wird der kopierten Datei eine Nummer zum Namen hinzugefügt."]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Datum der letzten Änderung unbekannt"]},New:{msgid:"New",msgstr:["Neu"]},"New version":{msgid:"New version",msgstr:["Neue Version"]},paused:{msgid:"paused",msgstr:["Pausiert"]},"Preview image":{msgid:"Preview image",msgstr:["Vorschaubild"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Alle Kontrollkästchen aktivieren"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Alle vorhandenen Dateien auswählen"]},"Select all new files":{msgid:"Select all new files",msgstr:["Alle neuen Dateien auswählen"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Diese Datei überspringen","{count} Dateien überspringen"]},"Unknown size":{msgid:"Unknown size",msgstr:["Unbekannte Größe"]},"Upload cancelled":{msgid:"Upload cancelled",msgstr:["Hochladen abgebrochen"]},"Upload files":{msgid:"Upload files",msgstr:["Dateien hochladen"]},"Upload progress":{msgid:"Upload progress",msgstr:["Fortschritt beim Hochladen"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Wenn ein eingehender Ordner ausgewählt wird, werden alle darin enthaltenen Konfliktdateien ebenfalls überschrieben."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Welche Dateien möchtest du behalten?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Du musst mindestens eine Version jeder Datei auswählen, um fortzufahren."]}}}}},{locale:"de_DE",json:{charset:"utf-8",headers:{"Last-Translator":"Mario Siegmann , 2024","Language-Team":"German (Germany) (https://app.transifex.com/nextcloud/teams/64236/de_DE/)","Content-Type":"text/plain; charset=UTF-8",Language:"de_DE","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nMario Siegmann , 2024\n"},msgstr:["Last-Translator: Mario Siegmann , 2024\nLanguage-Team: German (Germany) (https://app.transifex.com/nextcloud/teams/64236/de_DE/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: de_DE\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{filename}" contains invalid characters, how do you want to continue?':{msgid:'"{filename}" contains invalid characters, how do you want to continue?',msgstr:['"{filename}" enthält ungültige Zeichen. Wie möchten Sie fortfahren?']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} Datei-Konflikt","{count} Datei-Konflikte"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} Datei-Konflikt in {dirname}","{count} Datei-Konflikte in {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} Sekunden verbleiben"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} verbleibend"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["ein paar Sekunden verbleiben"]},Cancel:{msgid:"Cancel",msgstr:["Abbrechen"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Den gesamten Vorgang abbrechen"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Hochladen abbrechen"]},Continue:{msgid:"Continue",msgstr:["Fortsetzen"]},"Create new":{msgid:"Create new",msgstr:["Neu erstellen"]},"estimating time left":{msgid:"estimating time left",msgstr:["Geschätzte verbleibende Zeit"]},"Existing version":{msgid:"Existing version",msgstr:["Vorhandene Version"]},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Wenn Sie beide Versionen auswählen, wird der eingehenden Datei eine Nummer zum Namen hinzugefügt."]},"Invalid file name":{msgid:"Invalid file name",msgstr:["Ungültiger Dateiname"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Datum der letzten Änderung unbekannt"]},New:{msgid:"New",msgstr:["Neu"]},"New version":{msgid:"New version",msgstr:["Neue Version"]},paused:{msgid:"paused",msgstr:["Pausiert"]},"Preview image":{msgid:"Preview image",msgstr:["Vorschaubild"]},Rename:{msgid:"Rename",msgstr:["Umbenennen"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Alle Kontrollkästchen aktivieren"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Alle vorhandenen Dateien auswählen"]},"Select all new files":{msgid:"Select all new files",msgstr:["Alle neuen Dateien auswählen"]},Skip:{msgid:"Skip",msgstr:["Überspringen"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["{count} Datei überspringen","{count} Dateien überspringen"]},"Unknown size":{msgid:"Unknown size",msgstr:["Unbekannte Größe"]},"Upload files":{msgid:"Upload files",msgstr:["Dateien hochladen"]},"Upload folders":{msgid:"Upload folders",msgstr:["Ordner hochladen"]},"Upload from device":{msgid:"Upload from device",msgstr:["Vom Gerät hochladen"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Das Hochladen wurde abgebrochen"]},"Upload progress":{msgid:"Upload progress",msgstr:["Fortschritt beim Hochladen"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Wenn ein eingehender Ordner ausgewählt wird, werden alle darin enthaltenen Konfliktdateien ebenfalls überschrieben."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Bei Auswahl eines eingehenden Ordners wird der Inhalt in den vorhandenen Ordner geschrieben und eine rekursive Konfliktlösung durchgeführt."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Welche Dateien möchten Sie behalten?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Sie müssen mindestens eine Version jeder Datei auswählen, um fortzufahren."]}}}}},{locale:"el",json:{charset:"utf-8",headers:{"Last-Translator":"Nik Pap, 2022","Language-Team":"Greek (https://www.transifex.com/nextcloud/teams/64236/el/)","Content-Type":"text/plain; charset=UTF-8",Language:"el","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nNik Pap, 2022\n"},msgstr:["Last-Translator: Nik Pap, 2022\nLanguage-Team: Greek (https://www.transifex.com/nextcloud/teams/64236/el/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: el\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["απομένουν {seconds} δευτερόλεπτα"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["απομένουν {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["απομένουν λίγα δευτερόλεπτα"]},Add:{msgid:"Add",msgstr:["Προσθήκη"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Ακύρωση μεταφορτώσεων"]},"estimating time left":{msgid:"estimating time left",msgstr:["εκτίμηση του χρόνου που απομένει"]},paused:{msgid:"paused",msgstr:["σε παύση"]},"Upload files":{msgid:"Upload files",msgstr:["Μεταφόρτωση αρχείων"]}}}}},{locale:"el_GR",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Greek (Greece) (https://www.transifex.com/nextcloud/teams/64236/el_GR/)","Content-Type":"text/plain; charset=UTF-8",Language:"el_GR","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Greek (Greece) (https://www.transifex.com/nextcloud/teams/64236/el_GR/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: el_GR\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"en_GB",json:{charset:"utf-8",headers:{"Last-Translator":"Andi Chandler , 2024","Language-Team":"English (United Kingdom) (https://app.transifex.com/nextcloud/teams/64236/en_GB/)","Content-Type":"text/plain; charset=UTF-8",Language:"en_GB","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nAndi Chandler , 2024\n"},msgstr:["Last-Translator: Andi Chandler , 2024\nLanguage-Team: English (United Kingdom) (https://app.transifex.com/nextcloud/teams/64236/en_GB/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: en_GB\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} file conflict","{count} files conflict"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} file conflict in {dirname}","{count} file conflicts in {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} seconds left"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} left"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["a few seconds left"]},Cancel:{msgid:"Cancel",msgstr:["Cancel"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Cancel the entire operation"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Cancel uploads"]},Continue:{msgid:"Continue",msgstr:["Continue"]},"estimating time left":{msgid:"estimating time left",msgstr:["estimating time left"]},"Existing version":{msgid:"Existing version",msgstr:["Existing version"]},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["If you select both versions, the incoming file will have a number added to its name."]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Last modified date unknown"]},New:{msgid:"New",msgstr:["New"]},"New version":{msgid:"New version",msgstr:["New version"]},paused:{msgid:"paused",msgstr:["paused"]},"Preview image":{msgid:"Preview image",msgstr:["Preview image"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Select all checkboxes"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Select all existing files"]},"Select all new files":{msgid:"Select all new files",msgstr:["Select all new files"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Skip this file","Skip {count} files"]},"Unknown size":{msgid:"Unknown size",msgstr:["Unknown size"]},"Upload cancelled":{msgid:"Upload cancelled",msgstr:["Upload cancelled"]},"Upload files":{msgid:"Upload files",msgstr:["Upload files"]},"Upload progress":{msgid:"Upload progress",msgstr:["Upload progress"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["When an incoming folder is selected, any conflicting files within it will also be overwritten."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Which files do you want to keep?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["You need to select at least one version of each file to continue."]}}}}},{locale:"eo",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Esperanto (https://www.transifex.com/nextcloud/teams/64236/eo/)","Content-Type":"text/plain; charset=UTF-8",Language:"eo","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Esperanto (https://www.transifex.com/nextcloud/teams/64236/eo/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: eo\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es",json:{charset:"utf-8",headers:{"Last-Translator":"Julio C. Ortega, 2024","Language-Team":"Spanish (https://app.transifex.com/nextcloud/teams/64236/es/)","Content-Type":"text/plain; charset=UTF-8",Language:"es","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nFranciscoFJ , 2024\nJulio C. Ortega, 2024\n"},msgstr:["Last-Translator: Julio C. Ortega, 2024\nLanguage-Team: Spanish (https://app.transifex.com/nextcloud/teams/64236/es/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},'"{filename}" contains invalid characters, how do you want to continue?':{msgid:'"{filename}" contains invalid characters, how do you want to continue?',msgstr:['"{filename}" contiene caracteres inválidos, ¿cómo desea continuar?']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} conflicto de archivo","{count} conflictos de archivo","{count} conflictos de archivo"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} conflicto de archivo en {dirname}","{count} conflictos de archivo en {dirname}","{count} conflictos de archivo en {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} segundos restantes"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} restante"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["quedan unos segundos"]},Cancel:{msgid:"Cancel",msgstr:["Cancelar"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Cancelar toda la operación"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Cancelar subidas"]},Continue:{msgid:"Continue",msgstr:["Continuar"]},"Create new":{msgid:"Create new",msgstr:["Crear nuevo"]},"estimating time left":{msgid:"estimating time left",msgstr:["estimando tiempo restante"]},"Existing version":{msgid:"Existing version",msgstr:["Versión existente"]},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Si selecciona ambas versionas, el archivo entrante le será agregado un número a su nombre."]},"Invalid file name":{msgid:"Invalid file name",msgstr:["Nombre de archivo inválido"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Última fecha de modificación desconocida"]},New:{msgid:"New",msgstr:["Nuevo"]},"New version":{msgid:"New version",msgstr:["Nueva versión"]},paused:{msgid:"paused",msgstr:["pausado"]},"Preview image":{msgid:"Preview image",msgstr:["Previsualizar imagen"]},Rename:{msgid:"Rename",msgstr:["Renombrar"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Seleccionar todas las casillas de verificación"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Seleccionar todos los archivos existentes"]},"Select all new files":{msgid:"Select all new files",msgstr:["Seleccionar todos los archivos nuevos"]},Skip:{msgid:"Skip",msgstr:["Saltar"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Saltar este archivo","Saltar {count} archivos","Saltar {count} archivos"]},"Unknown size":{msgid:"Unknown size",msgstr:["Tamaño desconocido"]},"Upload files":{msgid:"Upload files",msgstr:["Subir archivos"]},"Upload folders":{msgid:"Upload folders",msgstr:["Subir carpetas"]},"Upload from device":{msgid:"Upload from device",msgstr:["Subir desde dispositivo"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["La subida ha sido cancelada"]},"Upload progress":{msgid:"Upload progress",msgstr:["Progreso de la subida"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Cuando una carpeta entrante es seleccionada, cualquier de los archivos en conflictos también serán sobre-escritos."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Cuando una carpeta entrante es seleccionada, el contenido es escrito en la carpeta existente y se realizará una resolución de conflictos recursiva."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["¿Qué archivos desea conservar?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Debe seleccionar al menos una versión de cada archivo para continuar."]}}}}},{locale:"es_419",json:{charset:"utf-8",headers:{"Last-Translator":"ALEJANDRO CASTRO, 2022","Language-Team":"Spanish (Latin America) (https://www.transifex.com/nextcloud/teams/64236/es_419/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_419","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nALEJANDRO CASTRO, 2022\n"},msgstr:["Last-Translator: ALEJANDRO CASTRO, 2022\nLanguage-Team: Spanish (Latin America) (https://www.transifex.com/nextcloud/teams/64236/es_419/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_419\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} segundos restantes"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["{tiempo} restante"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["quedan pocos segundos"]},Add:{msgid:"Add",msgstr:["agregar"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Cancelar subidas"]},"estimating time left":{msgid:"estimating time left",msgstr:["estimando tiempo restante"]},paused:{msgid:"paused",msgstr:["pausado"]},"Upload files":{msgid:"Upload files",msgstr:["Subir archivos"]}}}}},{locale:"es_AR",json:{charset:"utf-8",headers:{"Last-Translator":"Matias Iglesias, 2022","Language-Team":"Spanish (Argentina) (https://www.transifex.com/nextcloud/teams/64236/es_AR/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_AR","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nMatias Iglesias, 2022\n"},msgstr:["Last-Translator: Matias Iglesias, 2022\nLanguage-Team: Spanish (Argentina) (https://www.transifex.com/nextcloud/teams/64236/es_AR/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_AR\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} segundos restantes"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["{time} restante"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["quedan unos segundos"]},Add:{msgid:"Add",msgstr:["Añadir"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Cancelar subidas"]},"estimating time left":{msgid:"estimating time left",msgstr:["estimando tiempo restante"]},paused:{msgid:"paused",msgstr:["pausado"]},"Upload files":{msgid:"Upload files",msgstr:["Subir archivos"]}}}}},{locale:"es_CL",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Chile) (https://www.transifex.com/nextcloud/teams/64236/es_CL/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_CL","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Chile) (https://www.transifex.com/nextcloud/teams/64236/es_CL/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_CL\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_CO",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Colombia) (https://www.transifex.com/nextcloud/teams/64236/es_CO/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_CO","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Colombia) (https://www.transifex.com/nextcloud/teams/64236/es_CO/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_CO\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_CR",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Costa Rica) (https://www.transifex.com/nextcloud/teams/64236/es_CR/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_CR","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Costa Rica) (https://www.transifex.com/nextcloud/teams/64236/es_CR/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_CR\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_DO",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Dominican Republic) (https://www.transifex.com/nextcloud/teams/64236/es_DO/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_DO","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Dominican Republic) (https://www.transifex.com/nextcloud/teams/64236/es_DO/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_DO\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_EC",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Ecuador) (https://www.transifex.com/nextcloud/teams/64236/es_EC/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_EC","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Ecuador) (https://www.transifex.com/nextcloud/teams/64236/es_EC/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_EC\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_GT",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Guatemala) (https://www.transifex.com/nextcloud/teams/64236/es_GT/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_GT","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Guatemala) (https://www.transifex.com/nextcloud/teams/64236/es_GT/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_GT\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_HN",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Honduras) (https://www.transifex.com/nextcloud/teams/64236/es_HN/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_HN","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Honduras) (https://www.transifex.com/nextcloud/teams/64236/es_HN/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_HN\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_MX",json:{charset:"utf-8",headers:{"Last-Translator":"ALEJANDRO CASTRO, 2022","Language-Team":"Spanish (Mexico) (https://www.transifex.com/nextcloud/teams/64236/es_MX/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_MX","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nLuis Francisco Castro, 2022\nALEJANDRO CASTRO, 2022\n"},msgstr:["Last-Translator: ALEJANDRO CASTRO, 2022\nLanguage-Team: Spanish (Mexico) (https://www.transifex.com/nextcloud/teams/64236/es_MX/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_MX\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} segundos restantes"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["{tiempo} restante"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["quedan pocos segundos"]},Add:{msgid:"Add",msgstr:["agregar"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["cancelar las cargas"]},"estimating time left":{msgid:"estimating time left",msgstr:["estimando tiempo restante"]},paused:{msgid:"paused",msgstr:["en pausa"]},"Upload files":{msgid:"Upload files",msgstr:["cargar archivos"]}}}}},{locale:"es_NI",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Nicaragua) (https://www.transifex.com/nextcloud/teams/64236/es_NI/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_NI","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Nicaragua) (https://www.transifex.com/nextcloud/teams/64236/es_NI/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_NI\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_PA",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Panama) (https://www.transifex.com/nextcloud/teams/64236/es_PA/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_PA","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Panama) (https://www.transifex.com/nextcloud/teams/64236/es_PA/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_PA\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_PE",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Peru) (https://www.transifex.com/nextcloud/teams/64236/es_PE/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_PE","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Peru) (https://www.transifex.com/nextcloud/teams/64236/es_PE/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_PE\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_PR",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Puerto Rico) (https://www.transifex.com/nextcloud/teams/64236/es_PR/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_PR","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Puerto Rico) (https://www.transifex.com/nextcloud/teams/64236/es_PR/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_PR\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_PY",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Paraguay) (https://www.transifex.com/nextcloud/teams/64236/es_PY/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_PY","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Paraguay) (https://www.transifex.com/nextcloud/teams/64236/es_PY/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_PY\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_SV",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (El Salvador) (https://www.transifex.com/nextcloud/teams/64236/es_SV/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_SV","Plural-Forms":"nplurals=2; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (El Salvador) (https://www.transifex.com/nextcloud/teams/64236/es_SV/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_SV\nPlural-Forms: nplurals=2; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_UY",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Uruguay) (https://www.transifex.com/nextcloud/teams/64236/es_UY/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_UY","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Uruguay) (https://www.transifex.com/nextcloud/teams/64236/es_UY/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_UY\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"et_EE",json:{charset:"utf-8",headers:{"Last-Translator":"Taavo Roos, 2023","Language-Team":"Estonian (Estonia) (https://app.transifex.com/nextcloud/teams/64236/et_EE/)","Content-Type":"text/plain; charset=UTF-8",Language:"et_EE","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nMait R, 2022\nTaavo Roos, 2023\n"},msgstr:["Last-Translator: Taavo Roos, 2023\nLanguage-Team: Estonian (Estonia) (https://app.transifex.com/nextcloud/teams/64236/et_EE/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: et_EE\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} jäänud sekundid"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["{time} aega jäänud"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["jäänud mõni sekund"]},Add:{msgid:"Add",msgstr:["Lisa"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Tühista üleslaadimine"]},"estimating time left":{msgid:"estimating time left",msgstr:["hinnanguline järelejäänud aeg"]},paused:{msgid:"paused",msgstr:["pausil"]},"Upload files":{msgid:"Upload files",msgstr:["Lae failid üles"]}}}}},{locale:"eu",json:{charset:"utf-8",headers:{"Last-Translator":"Unai Tolosa Pontesta , 2022","Language-Team":"Basque (https://www.transifex.com/nextcloud/teams/64236/eu/)","Content-Type":"text/plain; charset=UTF-8",Language:"eu","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nUnai Tolosa Pontesta , 2022\n"},msgstr:["Last-Translator: Unai Tolosa Pontesta , 2022\nLanguage-Team: Basque (https://www.transifex.com/nextcloud/teams/64236/eu/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: eu\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} segundo geratzen dira"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["{time} geratzen da"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["segundo batzuk geratzen dira"]},Add:{msgid:"Add",msgstr:["Gehitu"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Ezeztatu igoerak"]},"estimating time left":{msgid:"estimating time left",msgstr:["kalkulatutako geratzen den denbora"]},paused:{msgid:"paused",msgstr:["geldituta"]},"Upload files":{msgid:"Upload files",msgstr:["Igo fitxategiak"]}}}}},{locale:"fa",json:{charset:"utf-8",headers:{"Last-Translator":"Fatemeh Komeily, 2023","Language-Team":"Persian (https://app.transifex.com/nextcloud/teams/64236/fa/)","Content-Type":"text/plain; charset=UTF-8",Language:"fa","Plural-Forms":"nplurals=2; plural=(n > 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nFatemeh Komeily, 2023\n"},msgstr:["Last-Translator: Fatemeh Komeily, 2023\nLanguage-Team: Persian (https://app.transifex.com/nextcloud/teams/64236/fa/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: fa\nPlural-Forms: nplurals=2; plural=(n > 1);\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["ثانیه های باقی مانده"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["باقی مانده"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["چند ثانیه مانده"]},Add:{msgid:"Add",msgstr:["اضافه کردن"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["کنسل کردن فایل های اپلود شده"]},"estimating time left":{msgid:"estimating time left",msgstr:["تخمین زمان باقی مانده"]},paused:{msgid:"paused",msgstr:["مکث کردن"]},"Upload files":{msgid:"Upload files",msgstr:["بارگذاری فایل ها"]}}}}},{locale:"fi_FI",json:{charset:"utf-8",headers:{"Last-Translator":"Jiri Grönroos , 2022","Language-Team":"Finnish (Finland) (https://www.transifex.com/nextcloud/teams/64236/fi_FI/)","Content-Type":"text/plain; charset=UTF-8",Language:"fi_FI","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJiri Grönroos , 2022\n"},msgstr:["Last-Translator: Jiri Grönroos , 2022\nLanguage-Team: Finnish (Finland) (https://www.transifex.com/nextcloud/teams/64236/fi_FI/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: fi_FI\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} sekuntia jäljellä"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["{time} jäljellä"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["muutama sekunti jäljellä"]},Add:{msgid:"Add",msgstr:["Lisää"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Peruuta lähetykset"]},"estimating time left":{msgid:"estimating time left",msgstr:["arvioidaan jäljellä olevaa aikaa"]},paused:{msgid:"paused",msgstr:["keskeytetty"]},"Upload files":{msgid:"Upload files",msgstr:["Lähetä tiedostoja"]}}}}},{locale:"fo",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Faroese (https://www.transifex.com/nextcloud/teams/64236/fo/)","Content-Type":"text/plain; charset=UTF-8",Language:"fo","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Faroese (https://www.transifex.com/nextcloud/teams/64236/fo/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: fo\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"fr",json:{charset:"utf-8",headers:{"Last-Translator":"jed boulahya, 2024","Language-Team":"French (https://app.transifex.com/nextcloud/teams/64236/fr/)","Content-Type":"text/plain; charset=UTF-8",Language:"fr","Plural-Forms":"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nBenoit Pruneau, 2024\njed boulahya, 2024\n"},msgstr:["Last-Translator: jed boulahya, 2024\nLanguage-Team: French (https://app.transifex.com/nextcloud/teams/64236/fr/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: fr\nPlural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} fichier en conflit","{count} fichiers en conflit","{count} fichiers en conflit"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} fichier en conflit dans {dirname}","{count} fichiers en conflit dans {dirname}","{count} fichiers en conflit dans {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} secondes restantes"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} restant"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["quelques secondes restantes"]},Cancel:{msgid:"Cancel",msgstr:["Annuler"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Annuler l'opération entière"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Annuler les envois"]},Continue:{msgid:"Continue",msgstr:["Continuer"]},"estimating time left":{msgid:"estimating time left",msgstr:["estimation du temps restant"]},"Existing version":{msgid:"Existing version",msgstr:["Version existante"]},"If you select both versions, the copied file will have a number added to its name.":{msgid:"If you select both versions, the copied file will have a number added to its name.",msgstr:["Si vous sélectionnez les deux versions, le fichier copié aura un numéro ajouté àname."]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Date de la dernière modification est inconnue"]},New:{msgid:"New",msgstr:["Nouveau"]},"New version":{msgid:"New version",msgstr:["Nouvelle version"]},paused:{msgid:"paused",msgstr:["en pause"]},"Preview image":{msgid:"Preview image",msgstr:["Aperçu de l'image"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Sélectionner toutes les cases à cocher"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Sélectionner tous les fichiers existants"]},"Select all new files":{msgid:"Select all new files",msgstr:["Sélectionner tous les nouveaux fichiers"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Ignorer ce fichier","Ignorer {count} fichiers","Ignorer {count} fichiers"]},"Unknown size":{msgid:"Unknown size",msgstr:["Taille inconnue"]},"Upload cancelled":{msgid:"Upload cancelled",msgstr:[" annulé"]},"Upload files":{msgid:"Upload files",msgstr:["Téléchargement des fichiers"]},"Upload progress":{msgid:"Upload progress",msgstr:["Progression du téléchargement"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Lorsqu'un dossier entrant est sélectionné, tous les fichiers en conflit qu'il contient seront également écrasés."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Quels fichiers souhaitez-vous conserver ?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Vous devez sélectionner au moins une version de chaque fichier pour continuer."]}}}}},{locale:"ga",json:{charset:"utf-8",headers:{"Last-Translator":"Aindriú Mac Giolla Eoin, 2024","Language-Team":"Irish (https://app.transifex.com/nextcloud/teams/64236/ga/)","Content-Type":"text/plain; charset=UTF-8",Language:"ga","Plural-Forms":"nplurals=5; plural=(n==1 ? 0 : n==2 ? 1 : n<7 ? 2 : n<11 ? 3 : 4);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nAindriú Mac Giolla Eoin, 2024\n"},msgstr:["Last-Translator: Aindriú Mac Giolla Eoin, 2024\nLanguage-Team: Irish (https://app.transifex.com/nextcloud/teams/64236/ga/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ga\nPlural-Forms: nplurals=5; plural=(n==1 ? 0 : n==2 ? 1 : n<7 ? 2 : n<11 ? 3 : 4);\n"]},'"{filename}" contains invalid characters, how do you want to continue?':{msgid:'"{filename}" contains invalid characters, how do you want to continue?',msgstr:['Tá carachtair neamhbhailí in "{filename}", conas ba mhaith leat leanúint ar aghaidh?']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} coimhlint comhaid","coimhlint comhaid {count}","coimhlint comhaid {count}","coimhlint comhaid {count}","coimhlint comhaid {count}"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} coimhlint comhaid i {dirname}","{count} coimhlint comhaid i {dirname}","{count} coimhlint comhaid i {dirname}","{count} coimhlint comhaid i {dirname}","{count} coimhlint comhaid i {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{soicind} fágtha"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{am} fágtha"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["cúpla soicind fágtha"]},Cancel:{msgid:"Cancel",msgstr:["Cealaigh"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Cealaigh an oibríocht iomlán"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Cealaigh uaslódálacha"]},Continue:{msgid:"Continue",msgstr:["Leanúint ar aghaidh"]},"Create new":{msgid:"Create new",msgstr:["Cruthaigh nua"]},"estimating time left":{msgid:"estimating time left",msgstr:["ag déanamh meastachán ar an am atá fágtha"]},"Existing version":{msgid:"Existing version",msgstr:["Leagan láithreach "]},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Má roghnaíonn tú an dá leagan, cuirfear uimhir leis an ainm a thagann isteach."]},"Invalid file name":{msgid:"Invalid file name",msgstr:["Ainm comhaid neamhbhailí"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Dáta modhnaithe is déanaí anaithnid"]},New:{msgid:"New",msgstr:["Nua"]},"New version":{msgid:"New version",msgstr:["Leagan nua"]},paused:{msgid:"paused",msgstr:["sos"]},"Preview image":{msgid:"Preview image",msgstr:["Íomhá réamhamharc"]},Rename:{msgid:"Rename",msgstr:["Athainmnigh"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Roghnaigh gach ticbhosca"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Roghnaigh gach comhad atá ann cheana féin"]},"Select all new files":{msgid:"Select all new files",msgstr:["Roghnaigh gach comhad nua"]},Skip:{msgid:"Skip",msgstr:["Scipeáil"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Léim an comhad seo","Léim ar {count} comhad","Léim ar {count} comhad","Léim ar {count} comhad","Léim ar {count} comhad"]},"Unknown size":{msgid:"Unknown size",msgstr:["Méid anaithnid"]},"Upload files":{msgid:"Upload files",msgstr:["Uaslódáil comhaid"]},"Upload folders":{msgid:"Upload folders",msgstr:["Uaslódáil fillteáin"]},"Upload from device":{msgid:"Upload from device",msgstr:["Íosluchtaigh ó gléas"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Cuireadh an t-uaslódáil ar ceal"]},"Upload progress":{msgid:"Upload progress",msgstr:["Uaslódáil dul chun cinn"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Nuair a roghnaítear fillteán isteach, déanfar aon chomhad contrártha laistigh de a fhorscríobh freisin."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Nuair a roghnaítear fillteán isteach, scríobhtar an t-ábhar isteach san fhillteán atá ann cheana agus déantar réiteach coinbhleachta athchúrsach."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Cé na comhaid ar mhaith leat a choinneáil?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Ní mór duit leagan amháin ar a laghad de gach comhad a roghnú chun leanúint ar aghaidh."]}}}}},{locale:"gd",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Gaelic, Scottish (https://www.transifex.com/nextcloud/teams/64236/gd/)","Content-Type":"text/plain; charset=UTF-8",Language:"gd","Plural-Forms":"nplurals=4; plural=(n==1 || n==11) ? 0 : (n==2 || n==12) ? 1 : (n > 2 && n < 20) ? 2 : 3;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Gaelic, Scottish (https://www.transifex.com/nextcloud/teams/64236/gd/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: gd\nPlural-Forms: nplurals=4; plural=(n==1 || n==11) ? 0 : (n==2 || n==12) ? 1 : (n > 2 && n < 20) ? 2 : 3;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"gl",json:{charset:"utf-8",headers:{"Last-Translator":"Miguel Anxo Bouzada , 2024","Language-Team":"Galician (https://app.transifex.com/nextcloud/teams/64236/gl/)","Content-Type":"text/plain; charset=UTF-8",Language:"gl","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nMiguel Anxo Bouzada , 2024\n"},msgstr:["Last-Translator: Miguel Anxo Bouzada , 2024\nLanguage-Team: Galician (https://app.transifex.com/nextcloud/teams/64236/gl/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: gl\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{filename}" contains invalid characters, how do you want to continue?':{msgid:'"{filename}" contains invalid characters, how do you want to continue?',msgstr:["«{filename}» contén caracteres non válidos, como quere continuar?"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} conflito de ficheiros","{count} conflitos de ficheiros"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} conflito de ficheiros en {dirname}","{count} conflitos de ficheiros en {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["faltan {seconds} segundos"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["falta {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["faltan uns segundos"]},Cancel:{msgid:"Cancel",msgstr:["Cancelar"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Cancela toda a operación"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Cancelar envíos"]},Continue:{msgid:"Continue",msgstr:["Continuar"]},"Create new":{msgid:"Create new",msgstr:["Crear un novo"]},"estimating time left":{msgid:"estimating time left",msgstr:["calculando canto tempo falta"]},"Existing version":{msgid:"Existing version",msgstr:["Versión existente"]},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Se selecciona ambas as versións, o ficheiro entrante terá un número engadido ao seu nome."]},"Invalid file name":{msgid:"Invalid file name",msgstr:["O nome de ficheiro non é válido"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Data da última modificación descoñecida"]},New:{msgid:"New",msgstr:["Nova"]},"New version":{msgid:"New version",msgstr:["Nova versión"]},paused:{msgid:"paused",msgstr:["detido"]},"Preview image":{msgid:"Preview image",msgstr:["Vista previa da imaxe"]},Rename:{msgid:"Rename",msgstr:["Renomear"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Marcar todas as caixas de selección"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Seleccionar todos os ficheiros existentes"]},"Select all new files":{msgid:"Select all new files",msgstr:["Seleccionar todos os ficheiros novos"]},Skip:{msgid:"Skip",msgstr:["Omitir"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Omita este ficheiro","Omitir {count} ficheiros"]},"Unknown size":{msgid:"Unknown size",msgstr:["Tamaño descoñecido"]},"Upload files":{msgid:"Upload files",msgstr:["Enviar ficheiros"]},"Upload folders":{msgid:"Upload folders",msgstr:["Enviar cartafoles"]},"Upload from device":{msgid:"Upload from device",msgstr:["Enviar dende o dispositivo"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["O envío foi cancelado"]},"Upload progress":{msgid:"Upload progress",msgstr:["Progreso do envío"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Cando se selecciona un cartafol entrante, tamén se sobrescribirán os ficheiros en conflito dentro del."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Cando se selecciona un cartafol entrante, o contido escríbese no cartafol existente e lévase a cabo unha resolución recursiva de conflitos."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Que ficheiros quere conservar?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Debe seleccionar polo menos unha versión de cada ficheiro para continuar."]}}}}},{locale:"he",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Hebrew (https://www.transifex.com/nextcloud/teams/64236/he/)","Content-Type":"text/plain; charset=UTF-8",Language:"he","Plural-Forms":"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n == 2 && n % 1 == 0) ? 1: (n % 10 == 0 && n % 1 == 0 && n > 10) ? 2 : 3;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Hebrew (https://www.transifex.com/nextcloud/teams/64236/he/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: he\nPlural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n == 2 && n % 1 == 0) ? 1: (n % 10 == 0 && n % 1 == 0 && n > 10) ? 2 : 3;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"hi_IN",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Hindi (India) (https://www.transifex.com/nextcloud/teams/64236/hi_IN/)","Content-Type":"text/plain; charset=UTF-8",Language:"hi_IN","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Hindi (India) (https://www.transifex.com/nextcloud/teams/64236/hi_IN/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: hi_IN\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"hr",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Croatian (https://www.transifex.com/nextcloud/teams/64236/hr/)","Content-Type":"text/plain; charset=UTF-8",Language:"hr","Plural-Forms":"nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Croatian (https://www.transifex.com/nextcloud/teams/64236/hr/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: hr\nPlural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"hsb",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Upper Sorbian (https://www.transifex.com/nextcloud/teams/64236/hsb/)","Content-Type":"text/plain; charset=UTF-8",Language:"hsb","Plural-Forms":"nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Upper Sorbian (https://www.transifex.com/nextcloud/teams/64236/hsb/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: hsb\nPlural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"hu",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Hungarian (https://www.transifex.com/nextcloud/teams/64236/hu/)","Content-Type":"text/plain; charset=UTF-8",Language:"hu","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Hungarian (https://www.transifex.com/nextcloud/teams/64236/hu/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: hu\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"hu_HU",json:{charset:"utf-8",headers:{"Last-Translator":"Balázs Úr, 2022","Language-Team":"Hungarian (Hungary) (https://www.transifex.com/nextcloud/teams/64236/hu_HU/)","Content-Type":"text/plain; charset=UTF-8",Language:"hu_HU","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nBalázs Meskó , 2022\nBalázs Úr, 2022\n"},msgstr:["Last-Translator: Balázs Úr, 2022\nLanguage-Team: Hungarian (Hungary) (https://www.transifex.com/nextcloud/teams/64236/hu_HU/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: hu_HU\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{} másodperc van hátra"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["{time} van hátra"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["pár másodperc van hátra"]},Add:{msgid:"Add",msgstr:["Hozzáadás"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Feltöltések megszakítása"]},"estimating time left":{msgid:"estimating time left",msgstr:["hátralévő idő becslése"]},paused:{msgid:"paused",msgstr:["szüneteltetve"]},"Upload files":{msgid:"Upload files",msgstr:["Fájlok feltöltése"]}}}}},{locale:"hy",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Armenian (https://www.transifex.com/nextcloud/teams/64236/hy/)","Content-Type":"text/plain; charset=UTF-8",Language:"hy","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Armenian (https://www.transifex.com/nextcloud/teams/64236/hy/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: hy\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"ia",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Interlingua (https://www.transifex.com/nextcloud/teams/64236/ia/)","Content-Type":"text/plain; charset=UTF-8",Language:"ia","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Interlingua (https://www.transifex.com/nextcloud/teams/64236/ia/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ia\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"id",json:{charset:"utf-8",headers:{"Last-Translator":"Linerly , 2023","Language-Team":"Indonesian (https://app.transifex.com/nextcloud/teams/64236/id/)","Content-Type":"text/plain; charset=UTF-8",Language:"id","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ , 2023\nEmpty Slot Filler, 2023\nLinerly , 2023\n"},msgstr:["Last-Translator: Linerly , 2023\nLanguage-Team: Indonesian (https://app.transifex.com/nextcloud/teams/64236/id/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: id\nPlural-Forms: nplurals=1; plural=0;\n"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} berkas berkonflik"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} berkas berkonflik dalam {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} detik tersisa"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} tersisa"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["tinggal sebentar lagi"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Batalkan unggahan"]},Continue:{msgid:"Continue",msgstr:["Lanjutkan"]},"estimating time left":{msgid:"estimating time left",msgstr:["memperkirakan waktu yang tersisa"]},"Existing version":{msgid:"Existing version",msgstr:["Versi yang ada"]},"If you select both versions, the copied file will have a number added to its name.":{msgid:"If you select both versions, the copied file will have a number added to its name.",msgstr:["Jika Anda memilih kedua versi, nama berkas yang disalin akan ditambahi angka."]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Tanggal perubahan terakhir tidak diketahui"]},New:{msgid:"New",msgstr:["Baru"]},"New version":{msgid:"New version",msgstr:["Versi baru"]},paused:{msgid:"paused",msgstr:["dijeda"]},"Preview image":{msgid:"Preview image",msgstr:["Gambar pratinjau"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Pilih semua kotak centang"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Pilih semua berkas yang ada"]},"Select all new files":{msgid:"Select all new files",msgstr:["Pilih semua berkas baru"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Lewati {count} berkas"]},"Unknown size":{msgid:"Unknown size",msgstr:["Ukuran tidak diketahui"]},"Upload cancelled":{msgid:"Upload cancelled",msgstr:["Unggahan dibatalkan"]},"Upload files":{msgid:"Upload files",msgstr:["Unggah berkas"]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Berkas mana yang Anda ingin tetap simpan?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Anda harus memilih setidaknya satu versi dari masing-masing berkas untuk melanjutkan."]}}}}},{locale:"ig",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Igbo (https://www.transifex.com/nextcloud/teams/64236/ig/)","Content-Type":"text/plain; charset=UTF-8",Language:"ig","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Igbo (https://www.transifex.com/nextcloud/teams/64236/ig/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ig\nPlural-Forms: nplurals=1; plural=0;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"is",json:{charset:"utf-8",headers:{"Last-Translator":"Sveinn í Felli , 2023","Language-Team":"Icelandic (https://app.transifex.com/nextcloud/teams/64236/is/)","Content-Type":"text/plain; charset=UTF-8",Language:"is","Plural-Forms":"nplurals=2; plural=(n % 10 != 1 || n % 100 == 11);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nSveinn í Felli , 2023\n"},msgstr:["Last-Translator: Sveinn í Felli , 2023\nLanguage-Team: Icelandic (https://app.transifex.com/nextcloud/teams/64236/is/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: is\nPlural-Forms: nplurals=2; plural=(n % 10 != 1 || n % 100 == 11);\n"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} árekstur skráa","{count} árekstrar skráa"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} árekstur skráa í {dirname}","{count} árekstrar skráa í {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} sekúndur eftir"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} eftir"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["nokkrar sekúndur eftir"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Hætta við innsendingar"]},Continue:{msgid:"Continue",msgstr:["Halda áfram"]},"estimating time left":{msgid:"estimating time left",msgstr:["áætla tíma sem eftir er"]},"Existing version":{msgid:"Existing version",msgstr:["Fyrirliggjandi útgáfa"]},"If you select both versions, the copied file will have a number added to its name.":{msgid:"If you select both versions, the copied file will have a number added to its name.",msgstr:["Ef þú velur báðar útgáfur, þá mun verða bætt tölustaf aftan við heiti afrituðu skrárinnar."]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Síðasta breytingadagsetning er óþekkt"]},New:{msgid:"New",msgstr:["Nýtt"]},"New version":{msgid:"New version",msgstr:["Ný útgáfa"]},paused:{msgid:"paused",msgstr:["í bið"]},"Preview image":{msgid:"Preview image",msgstr:["Forskoðun myndar"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Velja gátreiti"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Velja allar fyrirliggjandi skrár"]},"Select all new files":{msgid:"Select all new files",msgstr:["Velja allar nýjar skrár"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Sleppa þessari skrá","Sleppa {count} skrám"]},"Unknown size":{msgid:"Unknown size",msgstr:["Óþekkt stærð"]},"Upload cancelled":{msgid:"Upload cancelled",msgstr:["Hætt við innsendingu"]},"Upload files":{msgid:"Upload files",msgstr:["Senda inn skrár"]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Hvaða skrám vilt þú vilt halda eftir?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Þú verður að velja að minnsta kosti eina útgáfu af hverri skrá til að halda áfram."]}}}}},{locale:"it",json:{charset:"utf-8",headers:{"Last-Translator":"Random_R, 2023","Language-Team":"Italian (https://app.transifex.com/nextcloud/teams/64236/it/)","Content-Type":"text/plain; charset=UTF-8",Language:"it","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ , 2023\nLep Lep, 2023\nRandom_R, 2023\n"},msgstr:["Last-Translator: Random_R, 2023\nLanguage-Team: Italian (https://app.transifex.com/nextcloud/teams/64236/it/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: it\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} file in conflitto","{count} file in conflitto","{count} file in conflitto"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} file in conflitto in {dirname}","{count} file in conflitto in {dirname}","{count} file in conflitto in {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} secondi rimanenti "]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} rimanente"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["alcuni secondi rimanenti"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Annulla i caricamenti"]},Continue:{msgid:"Continue",msgstr:["Continua"]},"estimating time left":{msgid:"estimating time left",msgstr:["calcolo il tempo rimanente"]},"Existing version":{msgid:"Existing version",msgstr:["Versione esistente"]},"If you select both versions, the copied file will have a number added to its name.":{msgid:"If you select both versions, the copied file will have a number added to its name.",msgstr:["Se selezioni entrambe le versioni, nel nome del file copiato verrà aggiunto un numero "]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Ultima modifica sconosciuta"]},New:{msgid:"New",msgstr:["Nuovo"]},"New version":{msgid:"New version",msgstr:["Nuova versione"]},paused:{msgid:"paused",msgstr:["pausa"]},"Preview image":{msgid:"Preview image",msgstr:["Anteprima immagine"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Seleziona tutte le caselle"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Seleziona tutti i file esistenti"]},"Select all new files":{msgid:"Select all new files",msgstr:["Seleziona tutti i nuovi file"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Salta questo file","Salta {count} file","Salta {count} file"]},"Unknown size":{msgid:"Unknown size",msgstr:["Dimensione sconosciuta"]},"Upload cancelled":{msgid:"Upload cancelled",msgstr:["Caricamento cancellato"]},"Upload files":{msgid:"Upload files",msgstr:["Carica i file"]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Quali file vuoi mantenere?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Devi selezionare almeno una versione di ogni file per continuare"]}}}}},{locale:"it_IT",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Italian (Italy) (https://www.transifex.com/nextcloud/teams/64236/it_IT/)","Content-Type":"text/plain; charset=UTF-8",Language:"it_IT","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Italian (Italy) (https://www.transifex.com/nextcloud/teams/64236/it_IT/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: it_IT\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"ja_JP",json:{charset:"utf-8",headers:{"Last-Translator":"かたかめ, 2022","Language-Team":"Japanese (Japan) (https://www.transifex.com/nextcloud/teams/64236/ja_JP/)","Content-Type":"text/plain; charset=UTF-8",Language:"ja_JP","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nT.S, 2022\nかたかめ, 2022\n"},msgstr:["Last-Translator: かたかめ, 2022\nLanguage-Team: Japanese (Japan) (https://www.transifex.com/nextcloud/teams/64236/ja_JP/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ja_JP\nPlural-Forms: nplurals=1; plural=0;\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["残り {seconds} 秒"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["残り {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["残り数秒"]},Add:{msgid:"Add",msgstr:["追加"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["アップロードをキャンセル"]},"estimating time left":{msgid:"estimating time left",msgstr:["概算残り時間"]},paused:{msgid:"paused",msgstr:["一時停止中"]},"Upload files":{msgid:"Upload files",msgstr:["ファイルをアップデート"]}}}}},{locale:"ka",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Georgian (https://www.transifex.com/nextcloud/teams/64236/ka/)","Content-Type":"text/plain; charset=UTF-8",Language:"ka","Plural-Forms":"nplurals=2; plural=(n!=1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Georgian (https://www.transifex.com/nextcloud/teams/64236/ka/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ka\nPlural-Forms: nplurals=2; plural=(n!=1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"ka_GE",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Georgian (Georgia) (https://www.transifex.com/nextcloud/teams/64236/ka_GE/)","Content-Type":"text/plain; charset=UTF-8",Language:"ka_GE","Plural-Forms":"nplurals=2; plural=(n!=1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Georgian (Georgia) (https://www.transifex.com/nextcloud/teams/64236/ka_GE/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ka_GE\nPlural-Forms: nplurals=2; plural=(n!=1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"kab",json:{charset:"utf-8",headers:{"Last-Translator":"ZiriSut, 2023","Language-Team":"Kabyle (https://app.transifex.com/nextcloud/teams/64236/kab/)","Content-Type":"text/plain; charset=UTF-8",Language:"kab","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nZiriSut, 2023\n"},msgstr:["Last-Translator: ZiriSut, 2023\nLanguage-Team: Kabyle (https://app.transifex.com/nextcloud/teams/64236/kab/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: kab\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} tesdatin i d-yeqqimen"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["{time} i d-yeqqimen"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["qqiment-d kra n tesdatin kan"]},Add:{msgid:"Add",msgstr:["Rnu"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Sefsex asali"]},"estimating time left":{msgid:"estimating time left",msgstr:["asizel n wakud i d-yeqqimen"]},paused:{msgid:"paused",msgstr:["yeḥbes"]},"Upload files":{msgid:"Upload files",msgstr:["Sali-d ifuyla"]}}}}},{locale:"kk",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Kazakh (https://www.transifex.com/nextcloud/teams/64236/kk/)","Content-Type":"text/plain; charset=UTF-8",Language:"kk","Plural-Forms":"nplurals=2; plural=(n!=1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Kazakh (https://www.transifex.com/nextcloud/teams/64236/kk/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: kk\nPlural-Forms: nplurals=2; plural=(n!=1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"km",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Khmer (https://www.transifex.com/nextcloud/teams/64236/km/)","Content-Type":"text/plain; charset=UTF-8",Language:"km","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Khmer (https://www.transifex.com/nextcloud/teams/64236/km/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: km\nPlural-Forms: nplurals=1; plural=0;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"kn",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Kannada (https://www.transifex.com/nextcloud/teams/64236/kn/)","Content-Type":"text/plain; charset=UTF-8",Language:"kn","Plural-Forms":"nplurals=2; plural=(n > 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Kannada (https://www.transifex.com/nextcloud/teams/64236/kn/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: kn\nPlural-Forms: nplurals=2; plural=(n > 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"ko",json:{charset:"utf-8",headers:{"Last-Translator":"이상오, 2024","Language-Team":"Korean (https://app.transifex.com/nextcloud/teams/64236/ko/)","Content-Type":"text/plain; charset=UTF-8",Language:"ko","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\n이상오, 2024\n"},msgstr:["Last-Translator: 이상오, 2024\nLanguage-Team: Korean (https://app.transifex.com/nextcloud/teams/64236/ko/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ko\nPlural-Forms: nplurals=1; plural=0;\n"]},'"{filename}" contains invalid characters, how do you want to continue?':{msgid:'"{filename}" contains invalid characters, how do you want to continue?',msgstr:['"{filename}"에 유효하지 않은 문자가 있습니다, 계속하시겠습니까?']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count}개의 파일이 충돌함"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{dirname}에서 {count}개의 파일이 충돌함"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds}초 남음"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} 남음"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["곧 완료"]},Cancel:{msgid:"Cancel",msgstr:["취소"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["전체 작업을 취소"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["업로드 취소"]},Continue:{msgid:"Continue",msgstr:["확인"]},"Create new":{msgid:"Create new",msgstr:["새로 만들기"]},"estimating time left":{msgid:"estimating time left",msgstr:["남은 시간 계산"]},"Existing version":{msgid:"Existing version",msgstr:["현재 버전"]},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["두 파일을 모두 선택하면, 들어오는 파일의 이름에 번호가 추가됩니다."]},"Invalid file name":{msgid:"Invalid file name",msgstr:["잘못된 파일 이름"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["최근 수정일 알 수 없음"]},New:{msgid:"New",msgstr:["새로 만들기"]},"New version":{msgid:"New version",msgstr:["새 버전"]},paused:{msgid:"paused",msgstr:["일시정지됨"]},"Preview image":{msgid:"Preview image",msgstr:["미리보기 이미지"]},Rename:{msgid:"Rename",msgstr:["이름 바꾸기"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["모든 체크박스 선택"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["기존 파일을 모두 선택"]},"Select all new files":{msgid:"Select all new files",msgstr:["새로운 파일을 모두 선택"]},Skip:{msgid:"Skip",msgstr:["건너뛰기"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["{count}개의 파일 넘기기"]},"Unknown size":{msgid:"Unknown size",msgstr:["크기를 알 수 없음"]},"Upload files":{msgid:"Upload files",msgstr:["파일 업로드"]},"Upload folders":{msgid:"Upload folders",msgstr:["폴더 업로드"]},"Upload from device":{msgid:"Upload from device",msgstr:["장치에서 업로드"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["업로드가 취소되었습니다."]},"Upload progress":{msgid:"Upload progress",msgstr:["업로드 진행도"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["들어오는 폴더를 선택했다면, 충돌하는 내부 파일들은 덮어쓰기 됩니다."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["들어오는 폴더를 선택했다면 내용물이 그 기존 폴더 안에 작성되고, 전체적으로 충돌 해결을 수행합니다."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["어떤 파일을 보존하시겠습니까?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["계속하기 위해서는 한 파일에 최소 하나의 버전을 선택해야 합니다."]}}}}},{locale:"la",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Latin (https://www.transifex.com/nextcloud/teams/64236/la/)","Content-Type":"text/plain; charset=UTF-8",Language:"la","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Latin (https://www.transifex.com/nextcloud/teams/64236/la/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: la\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"lb",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Luxembourgish (https://www.transifex.com/nextcloud/teams/64236/lb/)","Content-Type":"text/plain; charset=UTF-8",Language:"lb","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Luxembourgish (https://www.transifex.com/nextcloud/teams/64236/lb/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: lb\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"lo",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Lao (https://www.transifex.com/nextcloud/teams/64236/lo/)","Content-Type":"text/plain; charset=UTF-8",Language:"lo","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Lao (https://www.transifex.com/nextcloud/teams/64236/lo/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: lo\nPlural-Forms: nplurals=1; plural=0;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"lt_LT",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Lithuanian (Lithuania) (https://www.transifex.com/nextcloud/teams/64236/lt_LT/)","Content-Type":"text/plain; charset=UTF-8",Language:"lt_LT","Plural-Forms":"nplurals=4; plural=(n % 10 == 1 && (n % 100 > 19 || n % 100 < 11) ? 0 : (n % 10 >= 2 && n % 10 <=9) && (n % 100 > 19 || n % 100 < 11) ? 1 : n % 1 != 0 ? 2: 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Lithuanian (Lithuania) (https://www.transifex.com/nextcloud/teams/64236/lt_LT/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: lt_LT\nPlural-Forms: nplurals=4; plural=(n % 10 == 1 && (n % 100 > 19 || n % 100 < 11) ? 0 : (n % 10 >= 2 && n % 10 <=9) && (n % 100 > 19 || n % 100 < 11) ? 1 : n % 1 != 0 ? 2: 3);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"lv",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Latvian (https://www.transifex.com/nextcloud/teams/64236/lv/)","Content-Type":"text/plain; charset=UTF-8",Language:"lv","Plural-Forms":"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Latvian (https://www.transifex.com/nextcloud/teams/64236/lv/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: lv\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"mk",json:{charset:"utf-8",headers:{"Last-Translator":"Сашко Тодоров , 2022","Language-Team":"Macedonian (https://www.transifex.com/nextcloud/teams/64236/mk/)","Content-Type":"text/plain; charset=UTF-8",Language:"mk","Plural-Forms":"nplurals=2; plural=(n % 10 == 1 && n % 100 != 11) ? 0 : 1;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nСашко Тодоров , 2022\n"},msgstr:["Last-Translator: Сашко Тодоров , 2022\nLanguage-Team: Macedonian (https://www.transifex.com/nextcloud/teams/64236/mk/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: mk\nPlural-Forms: nplurals=2; plural=(n % 10 == 1 && n % 100 != 11) ? 0 : 1;\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["преостануваат {seconds} секунди"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["преостанува {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["уште неколку секунди"]},Add:{msgid:"Add",msgstr:["Додади"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Прекини прикачување"]},"estimating time left":{msgid:"estimating time left",msgstr:["приближно преостанато време"]},paused:{msgid:"paused",msgstr:["паузирано"]},"Upload files":{msgid:"Upload files",msgstr:["Прикачување датотеки"]}}}}},{locale:"mn",json:{charset:"utf-8",headers:{"Last-Translator":"BATKHUYAG Ganbold, 2023","Language-Team":"Mongolian (https://app.transifex.com/nextcloud/teams/64236/mn/)","Content-Type":"text/plain; charset=UTF-8",Language:"mn","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nBATKHUYAG Ganbold, 2023\n"},msgstr:["Last-Translator: BATKHUYAG Ganbold, 2023\nLanguage-Team: Mongolian (https://app.transifex.com/nextcloud/teams/64236/mn/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: mn\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} секунд үлдсэн"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["{time} үлдсэн"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["хэдхэн секунд үлдсэн"]},Add:{msgid:"Add",msgstr:["Нэмэх"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Илгээлтийг цуцлах"]},"estimating time left":{msgid:"estimating time left",msgstr:["Үлдсэн хугацааг тооцоолж байна"]},paused:{msgid:"paused",msgstr:["түр зогсоосон"]},"Upload files":{msgid:"Upload files",msgstr:["Файл илгээх"]}}}}},{locale:"mr",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Marathi (https://www.transifex.com/nextcloud/teams/64236/mr/)","Content-Type":"text/plain; charset=UTF-8",Language:"mr","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Marathi (https://www.transifex.com/nextcloud/teams/64236/mr/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: mr\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"ms_MY",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Malay (Malaysia) (https://www.transifex.com/nextcloud/teams/64236/ms_MY/)","Content-Type":"text/plain; charset=UTF-8",Language:"ms_MY","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Malay (Malaysia) (https://www.transifex.com/nextcloud/teams/64236/ms_MY/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ms_MY\nPlural-Forms: nplurals=1; plural=0;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"my",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Burmese (https://www.transifex.com/nextcloud/teams/64236/my/)","Content-Type":"text/plain; charset=UTF-8",Language:"my","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Burmese (https://www.transifex.com/nextcloud/teams/64236/my/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: my\nPlural-Forms: nplurals=1; plural=0;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"nb_NO",json:{charset:"utf-8",headers:{"Last-Translator":"Syvert Fossdal, 2024","Language-Team":"Norwegian Bokmål (Norway) (https://app.transifex.com/nextcloud/teams/64236/nb_NO/)","Content-Type":"text/plain; charset=UTF-8",Language:"nb_NO","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ , 2023\nSyvert Fossdal, 2024\n"},msgstr:["Last-Translator: Syvert Fossdal, 2024\nLanguage-Team: Norwegian Bokmål (Norway) (https://app.transifex.com/nextcloud/teams/64236/nb_NO/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: nb_NO\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} file conflict","{count} filkonflikter"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} file conflict in {dirname}","{count} filkonflikter i {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} sekunder igjen"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} igjen"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["noen få sekunder igjen"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Avbryt opplastninger"]},Continue:{msgid:"Continue",msgstr:["Fortsett"]},"estimating time left":{msgid:"estimating time left",msgstr:["Estimerer tid igjen"]},"Existing version":{msgid:"Existing version",msgstr:["Gjeldende versjon"]},"If you select both versions, the copied file will have a number added to its name.":{msgid:"If you select both versions, the copied file will have a number added to its name.",msgstr:["Hvis du velger begge versjoner, vil den kopierte filen få et tall lagt til navnet."]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Siste gang redigert ukjent"]},New:{msgid:"New",msgstr:["Ny"]},"New version":{msgid:"New version",msgstr:["Ny versjon"]},paused:{msgid:"paused",msgstr:["pauset"]},"Preview image":{msgid:"Preview image",msgstr:["Forhåndsvis bilde"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Velg alle"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Velg alle eksisterende filer"]},"Select all new files":{msgid:"Select all new files",msgstr:["Velg alle nye filer"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Skip this file","Hopp over {count} filer"]},"Unknown size":{msgid:"Unknown size",msgstr:["Ukjent størrelse"]},"Upload cancelled":{msgid:"Upload cancelled",msgstr:["Opplasting avbrutt"]},"Upload files":{msgid:"Upload files",msgstr:["Last opp filer"]},"Upload progress":{msgid:"Upload progress",msgstr:["Fremdrift, opplasting"]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Hvilke filer vil du beholde?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Du må velge minst en versjon av hver fil for å fortsette."]}}}}},{locale:"ne",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Nepali (https://www.transifex.com/nextcloud/teams/64236/ne/)","Content-Type":"text/plain; charset=UTF-8",Language:"ne","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Nepali (https://www.transifex.com/nextcloud/teams/64236/ne/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ne\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"nl",json:{charset:"utf-8",headers:{"Last-Translator":"Rico , 2023","Language-Team":"Dutch (https://app.transifex.com/nextcloud/teams/64236/nl/)","Content-Type":"text/plain; charset=UTF-8",Language:"nl","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nRico , 2023\n"},msgstr:["Last-Translator: Rico , 2023\nLanguage-Team: Dutch (https://app.transifex.com/nextcloud/teams/64236/nl/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: nl\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["Nog {seconds} seconden"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["{seconds} over"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["Nog een paar seconden"]},Add:{msgid:"Add",msgstr:["Voeg toe"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Uploads annuleren"]},"estimating time left":{msgid:"estimating time left",msgstr:["Schatting van de resterende tijd"]},paused:{msgid:"paused",msgstr:["Gepauzeerd"]},"Upload files":{msgid:"Upload files",msgstr:["Upload bestanden"]}}}}},{locale:"nn",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Norwegian Nynorsk (https://www.transifex.com/nextcloud/teams/64236/nn/)","Content-Type":"text/plain; charset=UTF-8",Language:"nn","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Norwegian Nynorsk (https://www.transifex.com/nextcloud/teams/64236/nn/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: nn\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"nn_NO",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Norwegian Nynorsk (Norway) (https://www.transifex.com/nextcloud/teams/64236/nn_NO/)","Content-Type":"text/plain; charset=UTF-8",Language:"nn_NO","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Norwegian Nynorsk (Norway) (https://www.transifex.com/nextcloud/teams/64236/nn_NO/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: nn_NO\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"oc",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Occitan (post 1500) (https://www.transifex.com/nextcloud/teams/64236/oc/)","Content-Type":"text/plain; charset=UTF-8",Language:"oc","Plural-Forms":"nplurals=2; plural=(n > 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Occitan (post 1500) (https://www.transifex.com/nextcloud/teams/64236/oc/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: oc\nPlural-Forms: nplurals=2; plural=(n > 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"pl",json:{charset:"utf-8",headers:{"Last-Translator":"Piotr Strębski , 2024","Language-Team":"Polish (https://app.transifex.com/nextcloud/teams/64236/pl/)","Content-Type":"text/plain; charset=UTF-8",Language:"pl","Plural-Forms":"nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nPiotr Strębski , 2024\n"},msgstr:["Last-Translator: Piotr Strębski , 2024\nLanguage-Team: Polish (https://app.transifex.com/nextcloud/teams/64236/pl/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: pl\nPlural-Forms: nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);\n"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["konflikt 1 pliku","{count} konfliktów plików","{count} konfliktów plików","{count} konfliktów plików"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} konfliktowy plik w {dirname}","{count} konfliktowych plików w {dirname}","{count} konfliktowych plików w {dirname}","{count} konfliktowych plików w {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["Pozostało {seconds} sekund"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["Pozostało {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["Pozostało kilka sekund"]},Cancel:{msgid:"Cancel",msgstr:["Anuluj"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Anuluj całą operację"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Anuluj wysyłanie"]},Continue:{msgid:"Continue",msgstr:["Kontynuuj"]},"estimating time left":{msgid:"estimating time left",msgstr:["Szacowanie pozostałego czasu"]},"Existing version":{msgid:"Existing version",msgstr:["Istniejąca wersja"]},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Jeśli wybierzesz obie wersje, do nazwy pliku przychodzącego zostanie dodany numer."]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Nieznana data ostatniej modyfikacji"]},New:{msgid:"New",msgstr:["Nowy"]},"New version":{msgid:"New version",msgstr:["Nowa wersja"]},paused:{msgid:"paused",msgstr:["Wstrzymane"]},"Preview image":{msgid:"Preview image",msgstr:["Podgląd obrazu"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Zaznacz wszystkie boxy"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Zaznacz wszystkie istniejące pliki"]},"Select all new files":{msgid:"Select all new files",msgstr:["Zaznacz wszystkie nowe pliki"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Pomiń 1 plik","Pomiń {count} plików","Pomiń {count} plików","Pomiń {count} plików"]},"Unknown size":{msgid:"Unknown size",msgstr:["Nieznany rozmiar"]},"Upload cancelled":{msgid:"Upload cancelled",msgstr:["Anulowano wysyłanie"]},"Upload files":{msgid:"Upload files",msgstr:["Wyślij pliki"]},"Upload progress":{msgid:"Upload progress",msgstr:["Postęp wysyłania"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Po wybraniu folderu przychodzącego wszelkie znajdujące się w nim pliki powodujące konflikt również zostaną nadpisane."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Po wybraniu folderu przychodzącego zawartość jest zapisywana w istniejącym folderze i przeprowadzane jest rekursywne rozwiązywanie konfliktów."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Które pliki chcesz zachować?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Aby kontynuować, musisz wybrać co najmniej jedną wersję każdego pliku."]}}}}},{locale:"ps",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Pashto (https://www.transifex.com/nextcloud/teams/64236/ps/)","Content-Type":"text/plain; charset=UTF-8",Language:"ps","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Pashto (https://www.transifex.com/nextcloud/teams/64236/ps/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ps\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"pt_BR",json:{charset:"utf-8",headers:{"Last-Translator":"Leonardo Colman Lopes , 2024","Language-Team":"Portuguese (Brazil) (https://app.transifex.com/nextcloud/teams/64236/pt_BR/)","Content-Type":"text/plain; charset=UTF-8",Language:"pt_BR","Plural-Forms":"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nLeonardo Colman Lopes , 2024\n"},msgstr:["Last-Translator: Leonardo Colman Lopes , 2024\nLanguage-Team: Portuguese (Brazil) (https://app.transifex.com/nextcloud/teams/64236/pt_BR/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: pt_BR\nPlural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} arquivos em conflito","{count} arquivos em conflito","{count} arquivos em conflito"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} conflitos de arquivo em {dirname}","{count} conflitos de arquivo em {dirname}","{count} conflitos de arquivo em {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} segundos restantes"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} restante"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["alguns segundos restantes"]},Cancel:{msgid:"Cancel",msgstr:["Cancelar"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Cancelar a operação inteira"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Cancelar uploads"]},Continue:{msgid:"Continue",msgstr:["Continuar"]},"estimating time left":{msgid:"estimating time left",msgstr:["estimando tempo restante"]},"Existing version":{msgid:"Existing version",msgstr:["Versão existente"]},"If you select both versions, the copied file will have a number added to its name.":{msgid:"If you select both versions, the copied file will have a number added to its name.",msgstr:["Se você selecionar ambas as versões, o arquivo copiado terá um número adicionado ao seu nome."]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Data da última modificação desconhecida"]},New:{msgid:"New",msgstr:["Novo"]},"New version":{msgid:"New version",msgstr:["Nova versão"]},paused:{msgid:"paused",msgstr:["pausado"]},"Preview image":{msgid:"Preview image",msgstr:["Visualizar imagem"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Marque todas as caixas de seleção"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Selecione todos os arquivos existentes"]},"Select all new files":{msgid:"Select all new files",msgstr:["Selecione todos os novos arquivos"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Ignorar {count} arquivos","Ignorar {count} arquivos","Ignorar {count} arquivos"]},"Unknown size":{msgid:"Unknown size",msgstr:["Tamanho desconhecido"]},"Upload cancelled":{msgid:"Upload cancelled",msgstr:["Envio cancelado"]},"Upload files":{msgid:"Upload files",msgstr:["Enviar arquivos"]},"Upload progress":{msgid:"Upload progress",msgstr:["Envio em progresso"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Quando uma pasta é selecionada, quaisquer arquivos dentro dela também serão sobrescritos."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Quais arquivos você deseja manter?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Você precisa selecionar pelo menos uma versão de cada arquivo para continuar."]}}}}},{locale:"pt_PT",json:{charset:"utf-8",headers:{"Last-Translator":"Manuela Silva , 2022","Language-Team":"Portuguese (Portugal) (https://www.transifex.com/nextcloud/teams/64236/pt_PT/)","Content-Type":"text/plain; charset=UTF-8",Language:"pt_PT","Plural-Forms":"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nManuela Silva , 2022\n"},msgstr:["Last-Translator: Manuela Silva , 2022\nLanguage-Team: Portuguese (Portugal) (https://www.transifex.com/nextcloud/teams/64236/pt_PT/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: pt_PT\nPlural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["faltam {seconds} segundo(s)"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["faltam {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["faltam uns segundos"]},Add:{msgid:"Add",msgstr:["Adicionar"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Cancelar envios"]},"estimating time left":{msgid:"estimating time left",msgstr:["tempo em falta estimado"]},paused:{msgid:"paused",msgstr:["pausado"]},"Upload files":{msgid:"Upload files",msgstr:["Enviar ficheiros"]}}}}},{locale:"ro",json:{charset:"utf-8",headers:{"Last-Translator":"Mădălin Vasiliu , 2022","Language-Team":"Romanian (https://www.transifex.com/nextcloud/teams/64236/ro/)","Content-Type":"text/plain; charset=UTF-8",Language:"ro","Plural-Forms":"nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?2:1));"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nMădălin Vasiliu , 2022\n"},msgstr:["Last-Translator: Mădălin Vasiliu , 2022\nLanguage-Team: Romanian (https://www.transifex.com/nextcloud/teams/64236/ro/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ro\nPlural-Forms: nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?2:1));\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} secunde rămase"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["{time} rămas"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["câteva secunde rămase"]},Add:{msgid:"Add",msgstr:["Adaugă"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Anulați încărcările"]},"estimating time left":{msgid:"estimating time left",msgstr:["estimarea timpului rămas"]},paused:{msgid:"paused",msgstr:["pus pe pauză"]},"Upload files":{msgid:"Upload files",msgstr:["Încarcă fișiere"]}}}}},{locale:"ru",json:{charset:"utf-8",headers:{"Last-Translator":"Влад, 2024","Language-Team":"Russian (https://app.transifex.com/nextcloud/teams/64236/ru/)","Content-Type":"text/plain; charset=UTF-8",Language:"ru","Plural-Forms":"nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nAlex , 2024\nВлад, 2024\n"},msgstr:["Last-Translator: Влад, 2024\nLanguage-Team: Russian (https://app.transifex.com/nextcloud/teams/64236/ru/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ru\nPlural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\n"]},'"{filename}" contains invalid characters, how do you want to continue?':{msgid:'"{filename}" contains invalid characters, how do you want to continue?',msgstr:['"{filename}" содержит недопустимые символы, хотите продолжить?']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["конфликт {count} файла","конфликт {count} файлов","конфликт {count} файлов","конфликт {count} файлов"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["конфликт {count} файла в {dirname}","конфликт {count} файлов в {dirname}","конфликт {count} файлов в {dirname}","конфликт {count} файлов в {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["осталось {seconds} секунд"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["осталось {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["осталось несколько секунд"]},Cancel:{msgid:"Cancel",msgstr:["Отмена"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Отменить всю операцию целиком"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Отменить загрузки"]},Continue:{msgid:"Continue",msgstr:["Продолжить"]},"Create new":{msgid:"Create new",msgstr:["Создать новое"]},"estimating time left":{msgid:"estimating time left",msgstr:["оценка оставшегося времени"]},"Existing version":{msgid:"Existing version",msgstr:["Текущая версия"]},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Если вы выберете обе версии, к имени входящего файла будет добавлен номер."]},"Invalid file name":{msgid:"Invalid file name",msgstr:["Имя файла недопустимо"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Дата последнего изменения неизвестна"]},New:{msgid:"New",msgstr:["Новый"]},"New version":{msgid:"New version",msgstr:["Новая версия"]},paused:{msgid:"paused",msgstr:["приостановлено"]},"Preview image":{msgid:"Preview image",msgstr:["Предварительный просмотр"]},Rename:{msgid:"Rename",msgstr:["Переименовать"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Установить все флажки"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Выбрать все существующие файлы"]},"Select all new files":{msgid:"Select all new files",msgstr:["Выбрать все новые файлы"]},Skip:{msgid:"Skip",msgstr:["Пропуск"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Пропустить файл","Пропустить {count} файла","Пропустить {count} файлов","Пропустить {count} файлов"]},"Unknown size":{msgid:"Unknown size",msgstr:["Неизвестный размер"]},"Upload files":{msgid:"Upload files",msgstr:["Загрузка файлов"]},"Upload folders":{msgid:"Upload folders",msgstr:["Загрузка папок"]},"Upload from device":{msgid:"Upload from device",msgstr:["Загрузка с устройства"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Загрузка была отменена"]},"Upload progress":{msgid:"Upload progress",msgstr:["Состояние передачи на сервер"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Когда выбрана входящая папка, все конфликтующие файлы в ней также будут перезаписаны."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Когда выбрана входящая папка, содержимое записывается в существующую папку и выполняется рекурсивное разрешение конфликтов."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Какие файлы вы хотите сохранить?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Для продолжения вам нужно выбрать по крайней мере одну версию каждого файла."]}}}}},{locale:"ru_RU",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Russian (Russia) (https://www.transifex.com/nextcloud/teams/64236/ru_RU/)","Content-Type":"text/plain; charset=UTF-8",Language:"ru_RU","Plural-Forms":"nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Russian (Russia) (https://www.transifex.com/nextcloud/teams/64236/ru_RU/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ru_RU\nPlural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"sc",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Sardinian (https://www.transifex.com/nextcloud/teams/64236/sc/)","Content-Type":"text/plain; charset=UTF-8",Language:"sc","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Sardinian (https://www.transifex.com/nextcloud/teams/64236/sc/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sc\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"si",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Sinhala (https://www.transifex.com/nextcloud/teams/64236/si/)","Content-Type":"text/plain; charset=UTF-8",Language:"si","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Sinhala (https://www.transifex.com/nextcloud/teams/64236/si/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: si\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"si_LK",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Sinhala (Sri Lanka) (https://www.transifex.com/nextcloud/teams/64236/si_LK/)","Content-Type":"text/plain; charset=UTF-8",Language:"si_LK","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Sinhala (Sri Lanka) (https://www.transifex.com/nextcloud/teams/64236/si_LK/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: si_LK\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"sk_SK",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Slovak (Slovakia) (https://www.transifex.com/nextcloud/teams/64236/sk_SK/)","Content-Type":"text/plain; charset=UTF-8",Language:"sk_SK","Plural-Forms":"nplurals=4; plural=(n % 1 == 0 && n == 1 ? 0 : n % 1 == 0 && n >= 2 && n <= 4 ? 1 : n % 1 != 0 ? 2: 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Slovak (Slovakia) (https://www.transifex.com/nextcloud/teams/64236/sk_SK/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sk_SK\nPlural-Forms: nplurals=4; plural=(n % 1 == 0 && n == 1 ? 0 : n % 1 == 0 && n >= 2 && n <= 4 ? 1 : n % 1 != 0 ? 2: 3);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"sl",json:{charset:"utf-8",headers:{"Last-Translator":"Matej Urbančič <>, 2022","Language-Team":"Slovenian (https://www.transifex.com/nextcloud/teams/64236/sl/)","Content-Type":"text/plain; charset=UTF-8",Language:"sl","Plural-Forms":"nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nMatej Urbančič <>, 2022\n"},msgstr:["Last-Translator: Matej Urbančič <>, 2022\nLanguage-Team: Slovenian (https://www.transifex.com/nextcloud/teams/64236/sl/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sl\nPlural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["še {seconds} sekund"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["še {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["še nekaj sekund"]},Add:{msgid:"Add",msgstr:["Dodaj"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Prekliči pošiljanje"]},"estimating time left":{msgid:"estimating time left",msgstr:["ocenjen čas do konca"]},paused:{msgid:"paused",msgstr:["v premoru"]},"Upload files":{msgid:"Upload files",msgstr:["Pošlji datoteke"]}}}}},{locale:"sl_SI",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Slovenian (Slovenia) (https://www.transifex.com/nextcloud/teams/64236/sl_SI/)","Content-Type":"text/plain; charset=UTF-8",Language:"sl_SI","Plural-Forms":"nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Slovenian (Slovenia) (https://www.transifex.com/nextcloud/teams/64236/sl_SI/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sl_SI\nPlural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"sq",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Albanian (https://www.transifex.com/nextcloud/teams/64236/sq/)","Content-Type":"text/plain; charset=UTF-8",Language:"sq","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Albanian (https://www.transifex.com/nextcloud/teams/64236/sq/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sq\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"sr",json:{charset:"utf-8",headers:{"Last-Translator":"Иван Пешић, 2023","Language-Team":"Serbian (https://app.transifex.com/nextcloud/teams/64236/sr/)","Content-Type":"text/plain; charset=UTF-8",Language:"sr","Plural-Forms":"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ , 2023\nИван Пешић, 2023\n"},msgstr:["Last-Translator: Иван Пешић, 2023\nLanguage-Team: Serbian (https://app.transifex.com/nextcloud/teams/64236/sr/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sr\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} фајл конфликт","{count} фајл конфликта","{count} фајл конфликта"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} фајл конфликт у {dirname}","{count} фајл конфликта у {dirname}","{count} фајл конфликта у {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["преостало је {seconds} секунди"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} преостало"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["преостало је неколико секунди"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Обустави отпремања"]},Continue:{msgid:"Continue",msgstr:["Настави"]},"estimating time left":{msgid:"estimating time left",msgstr:["процена преосталог времена"]},"Existing version":{msgid:"Existing version",msgstr:["Постојећа верзија"]},"If you select both versions, the copied file will have a number added to its name.":{msgid:"If you select both versions, the copied file will have a number added to its name.",msgstr:["Ако изаберете обе верзије, на име копираног фајла ће се додати број."]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Није познат датум последње измене"]},New:{msgid:"New",msgstr:["Ново"]},"New version":{msgid:"New version",msgstr:["Нова верзија"]},paused:{msgid:"paused",msgstr:["паузирано"]},"Preview image":{msgid:"Preview image",msgstr:["Слика прегледа"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Штиклирај сва поља за штиклирање"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Изабери све постојеће фајлове"]},"Select all new files":{msgid:"Select all new files",msgstr:["Изабери све нове фајлове"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Прескочи овај фајл","Прескочи {count} фајла","Прескочи {count} фајлова"]},"Unknown size":{msgid:"Unknown size",msgstr:["Непозната величина"]},"Upload cancelled":{msgid:"Upload cancelled",msgstr:["Отпремање је отказано"]},"Upload files":{msgid:"Upload files",msgstr:["Отпреми фајлове"]},"Upload progress":{msgid:"Upload progress",msgstr:["Напредак отпремања"]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Које фајлове желите да задржите?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Морате да изаберете барем једну верзију сваког фајла да наставите."]}}}}},{locale:"sr@latin",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Serbian (Latin) (https://www.transifex.com/nextcloud/teams/64236/sr@latin/)","Content-Type":"text/plain; charset=UTF-8",Language:"sr@latin","Plural-Forms":"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Serbian (Latin) (https://www.transifex.com/nextcloud/teams/64236/sr@latin/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sr@latin\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"sv",json:{charset:"utf-8",headers:{"Last-Translator":"Magnus Höglund, 2024","Language-Team":"Swedish (https://app.transifex.com/nextcloud/teams/64236/sv/)","Content-Type":"text/plain; charset=UTF-8",Language:"sv","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nMagnus Höglund, 2024\n"},msgstr:["Last-Translator: Magnus Höglund, 2024\nLanguage-Team: Swedish (https://app.transifex.com/nextcloud/teams/64236/sv/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sv\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{filename}" contains invalid characters, how do you want to continue?':{msgid:'"{filename}" contains invalid characters, how do you want to continue?',msgstr:['"{filename}" innehåller ogiltiga tecken, hur vill du fortsätta?']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} filkonflikt","{count} filkonflikter"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} filkonflikt i {dirname}","{count} filkonflikter i {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} sekunder kvarstår"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} kvarstår"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["några sekunder kvar"]},Cancel:{msgid:"Cancel",msgstr:["Avbryt"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Avbryt hela operationen"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Avbryt uppladdningar"]},Continue:{msgid:"Continue",msgstr:["Fortsätt"]},"Create new":{msgid:"Create new",msgstr:["Skapa ny"]},"estimating time left":{msgid:"estimating time left",msgstr:["uppskattar kvarstående tid"]},"Existing version":{msgid:"Existing version",msgstr:["Nuvarande version"]},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Om du väljer båda versionerna kommer den inkommande filen att läggas till ett nummer i namnet."]},"Invalid file name":{msgid:"Invalid file name",msgstr:["Ogiltigt filnamn"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Senaste ändringsdatum okänt"]},New:{msgid:"New",msgstr:["Ny"]},"New version":{msgid:"New version",msgstr:["Ny version"]},paused:{msgid:"paused",msgstr:["pausad"]},"Preview image":{msgid:"Preview image",msgstr:["Förhandsgranska bild"]},Rename:{msgid:"Rename",msgstr:["Byt namn"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Markera alla kryssrutor"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Välj alla befintliga filer"]},"Select all new files":{msgid:"Select all new files",msgstr:["Välj alla nya filer"]},Skip:{msgid:"Skip",msgstr:["Hoppa över"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Hoppa över denna fil","Hoppa över {count} filer"]},"Unknown size":{msgid:"Unknown size",msgstr:["Okänd storlek"]},"Upload files":{msgid:"Upload files",msgstr:["Ladda upp filer"]},"Upload folders":{msgid:"Upload folders",msgstr:["Ladda upp mappar"]},"Upload from device":{msgid:"Upload from device",msgstr:["Ladda upp från enhet"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Uppladdningen har avbrutits"]},"Upload progress":{msgid:"Upload progress",msgstr:["Uppladdningsförlopp"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["När en inkommande mapp väljs skrivs även alla konfliktande filer i den över."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["När en inkommande mapp väljs skrivs innehållet in i den befintliga mappen och en rekursiv konfliktlösning utförs."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Vilka filer vill du behålla?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Du måste välja minst en version av varje fil för att fortsätta."]}}}}},{locale:"sw",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Swahili (https://www.transifex.com/nextcloud/teams/64236/sw/)","Content-Type":"text/plain; charset=UTF-8",Language:"sw","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Swahili (https://www.transifex.com/nextcloud/teams/64236/sw/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sw\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"ta",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Tamil (https://www.transifex.com/nextcloud/teams/64236/ta/)","Content-Type":"text/plain; charset=UTF-8",Language:"ta","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Tamil (https://www.transifex.com/nextcloud/teams/64236/ta/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ta\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"ta_LK",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Tamil (Sri-Lanka) (https://www.transifex.com/nextcloud/teams/64236/ta_LK/)","Content-Type":"text/plain; charset=UTF-8",Language:"ta_LK","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Tamil (Sri-Lanka) (https://www.transifex.com/nextcloud/teams/64236/ta_LK/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ta_LK\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"th",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Thai (https://www.transifex.com/nextcloud/teams/64236/th/)","Content-Type":"text/plain; charset=UTF-8",Language:"th","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Thai (https://www.transifex.com/nextcloud/teams/64236/th/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: th\nPlural-Forms: nplurals=1; plural=0;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"th_TH",json:{charset:"utf-8",headers:{"Last-Translator":"Phongpanot Phairat , 2022","Language-Team":"Thai (Thailand) (https://www.transifex.com/nextcloud/teams/64236/th_TH/)","Content-Type":"text/plain; charset=UTF-8",Language:"th_TH","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nPhongpanot Phairat , 2022\n"},msgstr:["Last-Translator: Phongpanot Phairat , 2022\nLanguage-Team: Thai (Thailand) (https://www.transifex.com/nextcloud/teams/64236/th_TH/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: th_TH\nPlural-Forms: nplurals=1; plural=0;\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["เหลืออีก {seconds} วินาที"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["เหลืออีก {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["เหลืออีกไม่กี่วินาที"]},Add:{msgid:"Add",msgstr:["เพิ่ม"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["ยกเลิกการอัปโหลด"]},"estimating time left":{msgid:"estimating time left",msgstr:["กำลังคำนวณเวลาที่เหลือ"]},paused:{msgid:"paused",msgstr:["หยุดชั่วคราว"]},"Upload files":{msgid:"Upload files",msgstr:["อัปโหลดไฟล์"]}}}}},{locale:"tk",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Turkmen (https://www.transifex.com/nextcloud/teams/64236/tk/)","Content-Type":"text/plain; charset=UTF-8",Language:"tk","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Turkmen (https://www.transifex.com/nextcloud/teams/64236/tk/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: tk\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"tr",json:{charset:"utf-8",headers:{"Last-Translator":"Kaya Zeren , 2024","Language-Team":"Turkish (https://app.transifex.com/nextcloud/teams/64236/tr/)","Content-Type":"text/plain; charset=UTF-8",Language:"tr","Plural-Forms":"nplurals=2; plural=(n > 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nKaya Zeren , 2024\n"},msgstr:["Last-Translator: Kaya Zeren , 2024\nLanguage-Team: Turkish (https://app.transifex.com/nextcloud/teams/64236/tr/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: tr\nPlural-Forms: nplurals=2; plural=(n > 1);\n"]},'"{filename}" contains invalid characters, how do you want to continue?':{msgid:'"{filename}" contains invalid characters, how do you want to continue?',msgstr:['"{filename}" içinde geçersiz karakterler var. Nasıl ilerlemek istersiniz?']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} dosya çakışması var","{count} dosya çakışması var"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{dirname} klasöründe {count} dosya çakışması var","{dirname} klasöründe {count} dosya çakışması var"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} saniye kaldı"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} kaldı"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["bir kaç saniye kaldı"]},Cancel:{msgid:"Cancel",msgstr:["İptal"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Tüm işlemi iptal et"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Yüklemeleri iptal et"]},Continue:{msgid:"Continue",msgstr:["İlerle"]},"Create new":{msgid:"Create new",msgstr:["Yeni ekle"]},"estimating time left":{msgid:"estimating time left",msgstr:["öngörülen kalan süre"]},"Existing version":{msgid:"Existing version",msgstr:["Var olan sürüm"]},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["İki sürümü de seçerseniz, gelen dosyanın adına bir sayı eklenir."]},"Invalid file name":{msgid:"Invalid file name",msgstr:["Dosya adı geçersiz"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Son değiştirilme tarihi bilinmiyor"]},New:{msgid:"New",msgstr:["Yeni"]},"New version":{msgid:"New version",msgstr:["Yeni sürüm"]},paused:{msgid:"paused",msgstr:["duraklatıldı"]},"Preview image":{msgid:"Preview image",msgstr:["Görsel ön izlemesi"]},Rename:{msgid:"Rename",msgstr:["Yeniden adlandır"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Tüm kutuları işaretle"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Tüm var olan dosyaları seç"]},"Select all new files":{msgid:"Select all new files",msgstr:["Tüm yeni dosyaları seç"]},Skip:{msgid:"Skip",msgstr:["Atla"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Bu dosyayı atla","{count} dosyayı atla"]},"Unknown size":{msgid:"Unknown size",msgstr:["Boyut bilinmiyor"]},"Upload files":{msgid:"Upload files",msgstr:["Dosyaları yükle"]},"Upload folders":{msgid:"Upload folders",msgstr:["Klasörleri yükle"]},"Upload from device":{msgid:"Upload from device",msgstr:["Aygıttan yükle"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Yükleme iptal edildi"]},"Upload progress":{msgid:"Upload progress",msgstr:["Yükleme ilerlemesi"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Bir gelen klasör seçildiğinde, içindeki çakışan dosyaların da üzerine yazılır."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Bir gelen klasörü seçildiğinde içerik var olan klasöre yazılır ve yinelemeli bir çakışma çözümü uygulanır."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Hangi dosyaları tutmak istiyorsunuz?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["İlerlemek için her dosyanın en az bir sürümünü seçmelisiniz."]}}}}},{locale:"ug",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Uyghur (https://www.transifex.com/nextcloud/teams/64236/ug/)","Content-Type":"text/plain; charset=UTF-8",Language:"ug","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Uyghur (https://www.transifex.com/nextcloud/teams/64236/ug/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ug\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"uk",json:{charset:"utf-8",headers:{"Last-Translator":"O St , 2024","Language-Team":"Ukrainian (https://app.transifex.com/nextcloud/teams/64236/uk/)","Content-Type":"text/plain; charset=UTF-8",Language:"uk","Plural-Forms":"nplurals=4; plural=(n % 1 == 0 && n % 10 == 1 && n % 100 != 11 ? 0 : n % 1 == 0 && n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 12 || n % 100 > 14) ? 1 : n % 1 == 0 && (n % 10 ==0 || (n % 10 >=5 && n % 10 <=9) || (n % 100 >=11 && n % 100 <=14 )) ? 2: 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nO St , 2024\n"},msgstr:["Last-Translator: O St , 2024\nLanguage-Team: Ukrainian (https://app.transifex.com/nextcloud/teams/64236/uk/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: uk\nPlural-Forms: nplurals=4; plural=(n % 1 == 0 && n % 10 == 1 && n % 100 != 11 ? 0 : n % 1 == 0 && n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 12 || n % 100 > 14) ? 1 : n % 1 == 0 && (n % 10 ==0 || (n % 10 >=5 && n % 10 <=9) || (n % 100 >=11 && n % 100 <=14 )) ? 2: 3);\n"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} конфліктний файл","{count} конфліктних файли","{count} конфліктних файлів","{count} конфліктних файлів"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} конфліктний файл у каталозі {dirname}","{count} конфліктних файли у каталозі {dirname}","{count} конфліктних файлів у каталозі {dirname}","{count} конфліктних файлів у каталозі {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["Залишилося {seconds} секунд"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["Залишилося {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["залишилося кілька секунд"]},Cancel:{msgid:"Cancel",msgstr:["Скасувати"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Скасувати операцію повністю"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Скасувати завантаження"]},Continue:{msgid:"Continue",msgstr:["Продовжити"]},"estimating time left":{msgid:"estimating time left",msgstr:["оцінка часу, що залишився"]},"Existing version":{msgid:"Existing version",msgstr:["Присутня версія"]},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Якщо буде вибрано обидві версії, до імени вхідного файлу було додано цифру."]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Дата останньої зміни невідома"]},New:{msgid:"New",msgstr:["Нове"]},"New version":{msgid:"New version",msgstr:["Нова версія"]},paused:{msgid:"paused",msgstr:["призупинено"]},"Preview image":{msgid:"Preview image",msgstr:["Попередній перегляд"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Вибрати все"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Вибрати усі присутні файли"]},"Select all new files":{msgid:"Select all new files",msgstr:["Вибрати усі нові файли"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Пропустити файл","Пропустити {count} файли","Пропустити {count} файлів","Пропустити {count} файлів"]},"Unknown size":{msgid:"Unknown size",msgstr:["Невідомий розмір"]},"Upload cancelled":{msgid:"Upload cancelled",msgstr:["Завантаження скасовано"]},"Upload files":{msgid:"Upload files",msgstr:["Завантажити файли"]},"Upload progress":{msgid:"Upload progress",msgstr:["Поступ завантаження"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Усі конфліктні файли у вибраному каталозі призначення буде перезаписано поверх."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Якщо буде вибрано вхідний каталог, вміст буде записано до наявного каталогу та вирішено конфлікти у відповідних файлах каталогу та підкаталогів."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Які файли залишити?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Для продовження потрібно вибрати принаймні одну версію для кожного файлу."]}}}}},{locale:"ur_PK",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Urdu (Pakistan) (https://www.transifex.com/nextcloud/teams/64236/ur_PK/)","Content-Type":"text/plain; charset=UTF-8",Language:"ur_PK","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Urdu (Pakistan) (https://www.transifex.com/nextcloud/teams/64236/ur_PK/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ur_PK\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"uz",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Uzbek (https://www.transifex.com/nextcloud/teams/64236/uz/)","Content-Type":"text/plain; charset=UTF-8",Language:"uz","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Uzbek (https://www.transifex.com/nextcloud/teams/64236/uz/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: uz\nPlural-Forms: nplurals=1; plural=0;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"vi",json:{charset:"utf-8",headers:{"Last-Translator":"Tung DangQuang, 2023","Language-Team":"Vietnamese (https://app.transifex.com/nextcloud/teams/64236/vi/)","Content-Type":"text/plain; charset=UTF-8",Language:"vi","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ , 2023\nTung DangQuang, 2023\n"},msgstr:["Last-Translator: Tung DangQuang, 2023\nLanguage-Team: Vietnamese (https://app.transifex.com/nextcloud/teams/64236/vi/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: vi\nPlural-Forms: nplurals=1; plural=0;\n"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} Tập tin xung đột"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} tập tin lỗi trong {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["Còn {second} giây"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["Còn lại {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["Còn lại một vài giây"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Huỷ tải lên"]},Continue:{msgid:"Continue",msgstr:["Tiếp Tục"]},"estimating time left":{msgid:"estimating time left",msgstr:["Thời gian còn lại dự kiến"]},"Existing version":{msgid:"Existing version",msgstr:["Phiên Bản Hiện Tại"]},"If you select both versions, the copied file will have a number added to its name.":{msgid:"If you select both versions, the copied file will have a number added to its name.",msgstr:["Nếu bạn chọn cả hai phiên bản, tệp được sao chép sẽ có thêm một số vào tên của nó."]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Ngày sửa dổi lần cuối không xác định"]},New:{msgid:"New",msgstr:["Tạo Mới"]},"New version":{msgid:"New version",msgstr:["Phiên Bản Mới"]},paused:{msgid:"paused",msgstr:["đã tạm dừng"]},"Preview image":{msgid:"Preview image",msgstr:["Xem Trước Ảnh"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Chọn tất cả hộp checkbox"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Chọn tất cả các tập tin có sẵn"]},"Select all new files":{msgid:"Select all new files",msgstr:["Chọn tất cả các tập tin mới"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Bỏ Qua {count} tập tin"]},"Unknown size":{msgid:"Unknown size",msgstr:["Không rõ dung lượng"]},"Upload cancelled":{msgid:"Upload cancelled",msgstr:["Dừng Tải Lên"]},"Upload files":{msgid:"Upload files",msgstr:["Tập tin tải lên"]},"Upload progress":{msgid:"Upload progress",msgstr:["Đang Tải Lên"]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Bạn muốn giữ tập tin nào?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Bạn cần chọn ít nhất một phiên bản tập tin mới có thể tiếp tục"]}}}}},{locale:"zh_CN",json:{charset:"utf-8",headers:{"Last-Translator":"Hongbo Chen, 2023","Language-Team":"Chinese (China) (https://app.transifex.com/nextcloud/teams/64236/zh_CN/)","Content-Type":"text/plain; charset=UTF-8",Language:"zh_CN","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ , 2023\nHongbo Chen, 2023\n"},msgstr:["Last-Translator: Hongbo Chen, 2023\nLanguage-Team: Chinese (China) (https://app.transifex.com/nextcloud/teams/64236/zh_CN/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: zh_CN\nPlural-Forms: nplurals=1; plural=0;\n"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count}文件冲突"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["在{dirname}目录下有{count}个文件冲突"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["剩余 {seconds} 秒"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["剩余 {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["还剩几秒"]},Add:{msgid:"Add",msgstr:["添加"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["取消上传"]},Continue:{msgid:"Continue",msgstr:["继续"]},"estimating time left":{msgid:"estimating time left",msgstr:["估计剩余时间"]},"Existing version":{msgid:"Existing version",msgstr:["版本已存在"]},"If you select both versions, the copied file will have a number added to its name.":{msgid:"If you select both versions, the copied file will have a number added to its name.",msgstr:["如果选择所有的版本,新增版本的文件名为原文件名加数字"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["文件最后修改日期未知"]},"New version":{msgid:"New version",msgstr:["新版本"]},paused:{msgid:"paused",msgstr:["已暂停"]},"Preview image":{msgid:"Preview image",msgstr:["图片预览"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["选择所有的选择框"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["选择所有存在的文件"]},"Select all new files":{msgid:"Select all new files",msgstr:["选择所有的新文件"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["跳过{count}个文件"]},"Unknown size":{msgid:"Unknown size",msgstr:["文件大小未知"]},"Upload cancelled":{msgid:"Upload cancelled",msgstr:["取消上传"]},"Upload files":{msgid:"Upload files",msgstr:["上传文件"]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["你要保留哪些文件?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["每个文件至少选择一个版本"]}}}}},{locale:"zh_HK",json:{charset:"utf-8",headers:{"Last-Translator":"Café Tango, 2024","Language-Team":"Chinese (Hong Kong) (https://app.transifex.com/nextcloud/teams/64236/zh_HK/)","Content-Type":"text/plain; charset=UTF-8",Language:"zh_HK","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nCafé Tango, 2024\n"},msgstr:["Last-Translator: Café Tango, 2024\nLanguage-Team: Chinese (Hong Kong) (https://app.transifex.com/nextcloud/teams/64236/zh_HK/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: zh_HK\nPlural-Forms: nplurals=1; plural=0;\n"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} 個檔案衝突"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{dirname} 中有 {count} 個檔案衝突"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["剩餘 {seconds} 秒"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["剩餘 {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["還剩幾秒"]},Cancel:{msgid:"Cancel",msgstr:["取消"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["取消整個操作"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["取消上傳"]},Continue:{msgid:"Continue",msgstr:["繼續"]},"estimating time left":{msgid:"estimating time left",msgstr:["估計剩餘時間"]},"Existing version":{msgid:"Existing version",msgstr:["既有版本"]},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["若您選取兩個版本,傳入檔案的名稱將會新增編號。"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["最後修改日期不詳"]},New:{msgid:"New",msgstr:["新增"]},"New version":{msgid:"New version",msgstr:["新版本 "]},paused:{msgid:"paused",msgstr:["已暫停"]},"Preview image":{msgid:"Preview image",msgstr:["預覽圖片"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["選取所有核取方塊"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["選取所有既有檔案"]},"Select all new files":{msgid:"Select all new files",msgstr:["選取所有新檔案"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["略過 {count} 個檔案"]},"Unknown size":{msgid:"Unknown size",msgstr:["大小不詳"]},"Upload cancelled":{msgid:"Upload cancelled",msgstr:["已取消上傳"]},"Upload files":{msgid:"Upload files",msgstr:["上傳檔案"]},"Upload progress":{msgid:"Upload progress",msgstr:["上傳進度"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["選取傳入資料夾後,其中任何的衝突檔案都會被覆寫。"]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["選擇傳入資料夾後,內容將寫入現有資料夾並執行遞歸衝突解決。"]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["您想保留哪些檔案?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["您必須為每個檔案都至少選取一個版本以繼續。"]}}}}},{locale:"zh_TW",json:{charset:"utf-8",headers:{"Last-Translator":"黃柏諺 , 2024","Language-Team":"Chinese (Taiwan) (https://app.transifex.com/nextcloud/teams/64236/zh_TW/)","Content-Type":"text/plain; charset=UTF-8",Language:"zh_TW","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\n黃柏諺 , 2024\n"},msgstr:["Last-Translator: 黃柏諺 , 2024\nLanguage-Team: Chinese (Taiwan) (https://app.transifex.com/nextcloud/teams/64236/zh_TW/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: zh_TW\nPlural-Forms: nplurals=1; plural=0;\n"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} 個檔案衝突"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{dirname} 中有 {count} 個檔案衝突"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["剩餘 {seconds} 秒"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["剩餘 {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["還剩幾秒"]},Cancel:{msgid:"Cancel",msgstr:["取消"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["取消整個操作"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["取消上傳"]},Continue:{msgid:"Continue",msgstr:["繼續"]},"estimating time left":{msgid:"estimating time left",msgstr:["估計剩餘時間"]},"Existing version":{msgid:"Existing version",msgstr:["既有版本"]},"If you select both versions, the copied file will have a number added to its name.":{msgid:"If you select both versions, the copied file will have a number added to its name.",msgstr:["若您選取兩個版本,複製的檔案的名稱將會新增編號。"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["最後修改日期未知"]},New:{msgid:"New",msgstr:["新增"]},"New version":{msgid:"New version",msgstr:["新版本"]},paused:{msgid:"paused",msgstr:["已暫停"]},"Preview image":{msgid:"Preview image",msgstr:["預覽圖片"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["選取所有核取方塊"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["選取所有既有檔案"]},"Select all new files":{msgid:"Select all new files",msgstr:["選取所有新檔案"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["略過 {count} 檔案"]},"Unknown size":{msgid:"Unknown size",msgstr:["未知大小"]},"Upload cancelled":{msgid:"Upload cancelled",msgstr:["已取消上傳"]},"Upload files":{msgid:"Upload files",msgstr:["上傳檔案"]},"Upload progress":{msgid:"Upload progress",msgstr:["上傳進度"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["選取傳入資料夾後,其中任何的衝突檔案都會被覆寫。"]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["您想保留哪些檔案?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["您必須為每個檔案都至少選取一個版本以繼續。"]}}}}}].map((e=>he.addTranslation(e.locale,e.json)));const ve=he.build(),we=ve.ngettext.bind(ve),Ae=ve.gettext.bind(ve),Ce=(0,Z.YK)().setApp("@nextcloud/upload").detectUser().build();var ye=(e=>(e[e.IDLE=0]="IDLE",e[e.UPLOADING=1]="UPLOADING",e[e.PAUSED=2]="PAUSED",e))(ye||{});class xe{_destinationFolder;_isPublic;_uploadQueue=[];_jobQueue=new N({concurrency:3});_queueSize=0;_queueProgress=0;_queueStatus=0;_notifiers=[];constructor(e=!1,t){if(this._isPublic=e,!t){const s=(0,x.join)(C.PY,C.lJ);let n;if(e)n="anonymous";else{const e=(0,A.HW)()?.uid;if(!e)throw new Error("User is not logged in");n=e}t=new C.vd({id:0,owner:n,permissions:C.aX.ALL,root:C.lJ,source:s})}this.destination=t,this._jobQueue.addListener("idle",(()=>this.reset())),Ce.debug("Upload workspace initialized",{destination:this.destination,root:this.root,isPublic:e,maxChunksSize:me()})}get destination(){return this._destinationFolder}set destination(e){if(!e)throw new Error("Invalid destination folder");Ce.debug("Destination set",{folder:e}),this._destinationFolder=e}get root(){return this._destinationFolder.source}get queue(){return this._uploadQueue}reset(){this._uploadQueue.splice(0,this._uploadQueue.length),this._jobQueue.clear(),this._queueSize=0,this._queueProgress=0,this._queueStatus=0}pause(){this._jobQueue.pause(),this._queueStatus=2}start(){this._jobQueue.start(),this._queueStatus=1,this.updateStats()}get info(){return{size:this._queueSize,progress:this._queueProgress,status:this._queueStatus}}updateStats(){const e=this._uploadQueue.map((e=>e.size)).reduce(((e,t)=>e+t),0),t=this._uploadQueue.map((e=>e.uploaded)).reduce(((e,t)=>e+t),0);this._queueSize=e,this._queueProgress=t,2!==this._queueStatus&&(this._queueStatus=this._jobQueue.size>0?1:0)}addNotifier(e){this._notifiers.push(e)}_notifyAll(e){for(const t of this._notifiers)try{t(e)}catch(t){Ce.warn("Error in upload notifier",{error:t,source:e.source})}}batchUpload(e,t,s){const n=new pe("",t);s||(s=async e=>e);try{return this._jobQueue.concurrency+=1,new k((async(t,i,a)=>{try{const i=await this._jobQueue.add((()=>{const t=this.uploadDirectory(e,n,s,(0,C.H4)(this.root));return a((()=>t.cancel())),t}));i&&t(i)}catch(e){Ce.error("Error in batch upload",{error:e})}i(Ae("Upload has been cancelled"))}))}finally{this._jobQueue.concurrency-=1}}uploadDirectory(e,t,s,n){const i=(0,x.normalize)(`${e}/${t.name}`).replace(/\/$/,""),a=`${this.root.replace(/\/$/,"")}/${i.replace(/^\//,"")}`;return new k((async(e,r,o)=>{const l=new AbortController;o((()=>l.abort()));const d=await s(t.children,i);if(!1===d)return void r(Ae("Upload has been cancelled"));const c=[],u=[],m=new fe(a,!1,0,t);m.signal.addEventListener("abort",(()=>r(Ae("Upload has been cancelled")))),m.status=ge.UPLOADING;try{if(t.name)try{await n.createDirectory(i,{signal:l.signal}),u.push(new k((e=>e(m)))),this._uploadQueue.push(m)}catch(e){if(!e||"object"!=typeof e||!("status"in e)||405!==e.status)throw e;Ce.debug("Directory already exists, writing into it",{directory:t.name})}for(const e of d)e instanceof pe?c.push(this.uploadDirectory(i,e,s,n)):u.push(this.upload(`${i}/${e.name}`,e));l.signal.addEventListener("abort",(()=>{u.forEach((e=>e.cancel())),c.forEach((e=>e.cancel()))}));const a=await Promise.all(u),r=await Promise.all(c);m.status=ge.FINISHED,e([a,...r].flat())}catch(e){l.abort(e),m.status=ge.FAILED,r(e)}finally{t.name&&(this._notifyAll(m),this.updateStats())}}))}upload(e,t,s,n=5){const i=`${(s=s||this.root).replace(/\/$/,"")}/${e.replace(/^\//,"")}`,{origin:a}=new URL(i),r=a+(0,y.O0)(i.slice(a.length));return Ce.debug(`Uploading ${t.name} to ${r}`),new k((async(e,s,a)=>{le(t)&&(t=await new Promise((e=>t.file(e,s))));const o=t,l=me("size"in o?o.size:void 0),d=this._isPublic||0===l||"size"in o&&o.size{try{c.response=await ce(r,t,c.signal,(e=>{c.uploaded=c.uploaded+e.bytes,this.updateStats()}),void 0,{"X-OC-Mtime":o.lastModified/1e3,"Content-Type":o.type}),c.uploaded=c.size,this.updateStats(),Ce.debug(`Successfully uploaded ${o.name}`,{file:o,upload:c}),e(c)}catch(e){if((0,b.FZ)(e))return c.status=ge.FAILED,void s(Ae("Upload has been cancelled"));e?.response&&(c.response=e.response),c.status=ge.FAILED,Ce.error(`Failed uploading ${o.name}`,{error:e,file:o,upload:c}),s("Failed uploading the file")}this._notifyAll(c)};this._jobQueue.add(n),this.updateStats()}else{Ce.debug("Initializing chunked upload",{file:o,upload:c});const t=await async function(e,t=5){const s=`${(0,B.dC)(`dav/uploads/${(0,A.HW)()?.uid}`)}/web-file-upload-${[...Array(16)].map((()=>Math.floor(16*Math.random()).toString(16))).join("")}`,n=e?{Destination:e}:void 0;return await b.Ay.request({method:"MKCOL",url:s,headers:n,"axios-retry":{retries:t,retryDelay:(e,t)=>G.exponentialDelay(e,t,1e3)}}),s}(r,n),i=[];for(let e=0;eue(o,s,l),u=()=>ce(`${t}/${e+1}`,d,c.signal,(()=>this.updateStats()),r,{"X-OC-Mtime":o.lastModified/1e3,"OC-Total-Length":o.size,"Content-Type":"application/octet-stream"},n).then((()=>{c.uploaded=c.uploaded+l})).catch((t=>{if(507===t?.response?.status)throw Ce.error("Upload failed, not enough space on the server or quota exceeded. Cancelling the remaining chunks",{error:t,upload:c}),c.cancel(),c.status=ge.FAILED,t;throw(0,b.FZ)(t)||(Ce.error(`Chunk ${e+1} ${s} - ${a} uploading failed`,{error:t,upload:c}),c.cancel(),c.status=ge.FAILED),t}));i.push(this._jobQueue.add(u))}try{await Promise.all(i),this.updateStats(),c.response=await b.Ay.request({method:"MOVE",url:`${t}/.file`,headers:{"X-OC-Mtime":o.lastModified/1e3,"OC-Total-Length":o.size,Destination:r}}),this.updateStats(),c.status=ge.FINISHED,Ce.debug(`Successfully uploaded ${o.name}`,{file:o,upload:c}),e(c)}catch(e){(0,b.FZ)(e)?(c.status=ge.FAILED,s(Ae("Upload has been cancelled"))):(c.status=ge.FAILED,s("Failed assembling the chunks together")),b.Ay.request({method:"DELETE",url:`${t}`})}this._notifyAll(c)}return c}))}}function be(e,t,s,n,i,a,r,o){var l,d="function"==typeof e?e.options:e;if(t&&(d.render=t,d.staticRenderFns=s,d._compiled=!0),n&&(d.functional=!0),a&&(d._scopeId="data-v-"+a),r?(l=function(e){(e=e||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext)||"undefined"==typeof __VUE_SSR_CONTEXT__||(e=__VUE_SSR_CONTEXT__),i&&i.call(this,e),e&&e._registeredComponents&&e._registeredComponents.add(r)},d._ssrRegister=l):i&&(l=o?function(){i.call(this,(d.functional?this.parent:this).$root.$options.shadowRoot)}:i),l)if(d.functional){d._injectStyles=l;var c=d.render;d.render=function(e,t){return l.call(t),c(e,t)}}else{var u=d.beforeCreate;d.beforeCreate=u?[].concat(u,l):[l]}return{exports:e,options:d}}const _e=be({name:"CancelIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},(function(){var e=this,t=e._self._c;return t("span",e._b({staticClass:"material-design-icon cancel-icon",attrs:{"aria-hidden":!e.title||null,"aria-label":e.title,role:"img"},on:{click:function(t){return e.$emit("click",t)}}},"span",e.$attrs,!1),[t("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[t("path",{attrs:{d:"M12 2C17.5 2 22 6.5 22 12S17.5 22 12 22 2 17.5 2 12 6.5 2 12 2M12 4C10.1 4 8.4 4.6 7.1 5.7L18.3 16.9C19.3 15.5 20 13.8 20 12C20 7.6 16.4 4 12 4M16.9 18.3L5.7 7.1C4.6 8.4 4 10.1 4 12C4 16.4 7.6 20 12 20C13.9 20 15.6 19.4 16.9 18.3Z"}},[e.title?t("title",[e._v(e._s(e.title))]):e._e()])])])}),[],!1,null,null,null,null).exports,Te=be({name:"FolderUploadIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},(function(){var e=this,t=e._self._c;return t("span",e._b({staticClass:"material-design-icon folder-upload-icon",attrs:{"aria-hidden":!e.title||null,"aria-label":e.title,role:"img"},on:{click:function(t){return e.$emit("click",t)}}},"span",e.$attrs,!1),[t("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[t("path",{attrs:{d:"M20,6A2,2 0 0,1 22,8V18A2,2 0 0,1 20,20H4A2,2 0 0,1 2,18V6A2,2 0 0,1 4,4H10L12,6H20M10.75,13H14V17H16V13H19.25L15,8.75"}},[e.title?t("title",[e._v(e._s(e.title))]):e._e()])])])}),[],!1,null,null,null,null).exports,ke=be({name:"PlusIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},(function(){var e=this,t=e._self._c;return t("span",e._b({staticClass:"material-design-icon plus-icon",attrs:{"aria-hidden":!e.title||null,"aria-label":e.title,role:"img"},on:{click:function(t){return e.$emit("click",t)}}},"span",e.$attrs,!1),[t("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[t("path",{attrs:{d:"M19,13H13V19H11V13H5V11H11V5H13V11H19V13Z"}},[e.title?t("title",[e._v(e._s(e.title))]):e._e()])])])}),[],!1,null,null,null,null).exports,Se=be({name:"UploadIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},(function(){var e=this,t=e._self._c;return t("span",e._b({staticClass:"material-design-icon upload-icon",attrs:{"aria-hidden":!e.title||null,"aria-label":e.title,role:"img"},on:{click:function(t){return e.$emit("click",t)}}},"span",e.$attrs,!1),[t("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[t("path",{attrs:{d:"M9,16V10H5L12,3L19,10H15V16H9M5,20V18H19V20H5Z"}},[e.title?t("title",[e._v(e._s(e.title))]):e._e()])])])}),[],!1,null,null,null,null).exports,Le=w.Ay.extend({name:"UploadPicker",components:{IconCancel:_e,IconFolderUpload:Te,IconPlus:ke,IconUpload:Se,NcActionButton:te.A,NcActionCaption:se.A,NcActionSeparator:ne.A,NcActions:ie.A,NcButton:ae.A,NcIconSvgWrapper:re.A,NcProgressBar:oe.A},props:{accept:{type:Array,default:null},disabled:{type:Boolean,default:!1},multiple:{type:Boolean,default:!1},destination:{type:C.vd,default:void 0},allowFolders:{type:Boolean,default:!1},content:{type:[Array,Function],default:()=>[]},forbiddenCharacters:{type:Array,default:()=>[]}},setup:()=>({t:Ae,progressTimeId:`nc-uploader-progress-${Math.random().toString(36).slice(7)}`}),data:()=>({eta:null,timeLeft:"",currentContent:[],newFileMenuEntries:[],uploadManager:Ee()}),computed:{menuEntriesUpload(){return this.newFileMenuEntries.filter((e=>e.category===C.a7.UploadFromDevice))},menuEntriesNew(){return this.newFileMenuEntries.filter((e=>e.category===C.a7.CreateNew))},menuEntriesOther(){return this.newFileMenuEntries.filter((e=>e.category===C.a7.Other))},canUploadFolders(){return this.allowFolders&&"webkitdirectory"in document.createElement("input")},totalQueueSize(){return this.uploadManager.info?.size||0},uploadedQueueSize(){return this.uploadManager.info?.progress||0},progress(){return Math.round(this.uploadedQueueSize/this.totalQueueSize*100)||0},queue(){return this.uploadManager.queue},hasFailure(){return 0!==this.queue?.filter((e=>e.status===ge.FAILED)).length},isUploading(){return this.queue?.length>0},isAssembling(){return 0!==this.queue?.filter((e=>e.status===ge.ASSEMBLING)).length},isPaused(){return this.uploadManager.info?.status===ye.PAUSED},buttonName(){if(!this.isUploading)return Ae("New")}},watch:{allowFolders:{immediate:!0,handler(){"function"!=typeof this.content&&this.allowFolders&&Ce.error("[UploadPicker] Setting `allowFolders` is only allowed if `content` is a function")}},content:{immediate:!0,async handler(){this.currentContent=await this.getContent()}},destination(e){this.setDestination(e)},totalQueueSize(e){this.eta=ee({min:0,max:e}),this.updateStatus()},uploadedQueueSize(e){this.eta?.report?.(e),this.updateStatus()},isPaused(e){e?this.$emit("paused",this.queue):this.$emit("resumed",this.queue)}},beforeMount(){this.destination&&this.setDestination(this.destination),this.uploadManager.addNotifier(this.onUploadCompletion),Ce.debug("UploadPicker initialised")},methods:{onTriggerPick(e=!1){const t=this.$refs.input;this.canUploadFolders&&(t.webkitdirectory=e),this.$nextTick((()=>t.click()))},async getContent(e){return Array.isArray(this.content)?this.content:await this.content(e)},showInvalidFileNameDialog:async e=>new k((async(t,s)=>{await(new X.ik).setName(Ae("Invalid file name")).setSeverity("error").setText(Ae('"{filename}" contains invalid characters, how do you want to continue?',{filename:e})).setButtons([{label:Ae("Cancel"),type:"error",callback:s},{label:Ae("Skip"),callback:()=>t(!1)},{label:Ae("Rename"),type:"primary",callback:()=>t(!0)}]).build().show()})),async handleConflicts(e,t){try{const s=""===t?this.currentContent:await this.getContent(t).catch((()=>[])),n=Be(e,s);if(n.length>0){const{selected:i,renamed:a}=await Pe(t,n,s,{recursive:!0});e=[...i,...a]}const i=[];for(const t of e)if(this.forbiddenCharacters.some((e=>t.name.includes(e)))){if(await this.showInvalidFileNameDialog(t.name)){let s=this.replaceInvalidCharacters(t.name);s=(0,C.E6)(s,e.map((e=>e.name))),Object.defineProperty(t,"name",{value:s}),i.push(t)}}else i.push(t);return i}catch(e){return Ce.debug("Upload has been cancelled",{error:e}),(0,X.I9)(Ae("Upload has been cancelled")),!1}},replaceInvalidCharacters(e){const t=["-","_"," "].filter((e=>!this.forbiddenCharacters.includes(e)))[0]??"x";return this.forbiddenCharacters.forEach((s=>{e=e.replaceAll(s,t)})),e},onPick(){const e=this.$refs.input,t=e.files?Array.from(e.files):[];this.uploadManager.batchUpload("",t,this.handleConflicts).catch((e=>Ce.debug("Error while uploading",{error:e}))).finally((()=>this.resetForm()))},resetForm(){const e=this.$refs.form;e?.reset()},onCancel(){this.uploadManager.queue.forEach((e=>{e.cancel()})),this.resetForm()},updateStatus(){if(this.isPaused)return void(this.timeLeft=Ae("paused"));const e=Math.round(this.eta.estimate());if(e!==1/0)if(e<10)this.timeLeft=Ae("a few seconds left");else if(e>60){const t=new Date(0);t.setSeconds(e);const s=t.toISOString().slice(11,19);this.timeLeft=Ae("{time} left",{time:s})}else this.timeLeft=Ae("{seconds} seconds left",{seconds:e});else this.timeLeft=Ae("estimating time left")},setDestination(e){this.destination?(this.uploadManager.destination=e,this.newFileMenuEntries=(0,C.m1)(e)):Ce.debug("Invalid destination")},onUploadCompletion(e){e.status===ge.FAILED?this.$emit("failed",e):this.$emit("uploaded",e)}}}),Fe=be(Le,(function(){var e=this,t=e._self._c;return e._self._setupProxy,e.destination?t("form",{ref:"form",staticClass:"upload-picker",class:{"upload-picker--uploading":e.isUploading,"upload-picker--paused":e.isPaused},attrs:{"data-cy-upload-picker":""}},[e.newFileMenuEntries&&0===e.newFileMenuEntries.length?t("NcButton",{attrs:{disabled:e.disabled,"data-cy-upload-picker-add":"",type:"secondary"},on:{click:function(t){return e.onTriggerPick()}},scopedSlots:e._u([{key:"icon",fn:function(){return[t("IconPlus",{attrs:{size:20}})]},proxy:!0}],null,!1,1991456921)},[e._v(" "+e._s(e.buttonName)+" ")]):t("NcActions",{attrs:{"menu-name":e.buttonName,"menu-title":e.t("New"),type:"secondary"},scopedSlots:e._u([{key:"icon",fn:function(){return[t("IconPlus",{attrs:{size:20}})]},proxy:!0}],null,!1,1991456921)},[t("NcActionCaption",{attrs:{name:e.t("Upload from device")}}),t("NcActionButton",{attrs:{"data-cy-upload-picker-add":"","close-after-click":!0},on:{click:function(t){return e.onTriggerPick()}},scopedSlots:e._u([{key:"icon",fn:function(){return[t("IconUpload",{attrs:{size:20}})]},proxy:!0}],null,!1,337456192)},[e._v(" "+e._s(e.t("Upload files"))+" ")]),e.canUploadFolders?t("NcActionButton",{attrs:{"close-after-click":"","data-cy-upload-picker-add-folders":""},on:{click:function(t){return e.onTriggerPick(!0)}},scopedSlots:e._u([{key:"icon",fn:function(){return[t("IconFolderUpload",{staticStyle:{color:"var(--color-primary-element)"},attrs:{size:20}})]},proxy:!0}],null,!1,1037549157)},[e._v(" "+e._s(e.t("Upload folders"))+" ")]):e._e(),e._l(e.menuEntriesUpload,(function(s){return t("NcActionButton",{key:s.id,staticClass:"upload-picker__menu-entry",attrs:{icon:s.iconClass,"close-after-click":!0},on:{click:function(t){return s.handler(e.destination,e.currentContent)}},scopedSlots:e._u([s.iconSvgInline?{key:"icon",fn:function(){return[t("NcIconSvgWrapper",{attrs:{svg:s.iconSvgInline}})]},proxy:!0}:null],null,!0)},[e._v(" "+e._s(s.displayName)+" ")])})),e.menuEntriesNew.length>0?[t("NcActionSeparator"),t("NcActionCaption",{attrs:{name:e.t("Create new")}}),e._l(e.menuEntriesNew,(function(s){return t("NcActionButton",{key:s.id,staticClass:"upload-picker__menu-entry",attrs:{icon:s.iconClass,"close-after-click":!0},on:{click:function(t){return s.handler(e.destination,e.currentContent)}},scopedSlots:e._u([s.iconSvgInline?{key:"icon",fn:function(){return[t("NcIconSvgWrapper",{attrs:{svg:s.iconSvgInline}})]},proxy:!0}:null],null,!0)},[e._v(" "+e._s(s.displayName)+" ")])}))]:e._e(),e.menuEntriesOther.length>0?[t("NcActionSeparator"),e._l(e.menuEntriesNew,(function(s){return t("NcActionButton",{key:s.id,staticClass:"upload-picker__menu-entry",attrs:{icon:s.iconClass,"close-after-click":!0},on:{click:function(t){return s.handler(e.destination,e.currentContent)}},scopedSlots:e._u([s.iconSvgInline?{key:"icon",fn:function(){return[t("NcIconSvgWrapper",{attrs:{svg:s.iconSvgInline}})]},proxy:!0}:null],null,!0)},[e._v(" "+e._s(s.displayName)+" ")])}))]:e._e()],2),t("div",{directives:[{name:"show",rawName:"v-show",value:e.isUploading,expression:"isUploading"}],staticClass:"upload-picker__progress"},[t("NcProgressBar",{attrs:{"aria-label":e.t("Upload progress"),"aria-describedby":e.progressTimeId,error:e.hasFailure,value:e.progress,size:"medium"}}),t("p",{attrs:{id:e.progressTimeId}},[e._v(" "+e._s(e.timeLeft)+" ")])],1),e.isUploading?t("NcButton",{staticClass:"upload-picker__cancel",attrs:{type:"tertiary","aria-label":e.t("Cancel uploads"),"data-cy-upload-picker-cancel":""},on:{click:e.onCancel},scopedSlots:e._u([{key:"icon",fn:function(){return[t("IconCancel",{attrs:{size:20}})]},proxy:!0}],null,!1,3076329829)}):e._e(),t("input",{ref:"input",staticClass:"hidden-visually",attrs:{accept:e.accept?.join?.(", "),multiple:e.multiple,"data-cy-upload-picker-input":"",type:"file"},on:{change:e.onPick}})],1):e._e()}),[],!1,null,"1f097873",null,null).exports;let Ue=null;function Ee(e=function(){return(0,v.C)("files_sharing","isPublic",null)??null!==document.querySelector('input#isPublic[type="hidden"][name="isPublic"][value="1"]')}(),t=!1){return Ue instanceof xe&&!t||(Ue=new xe(e)),Ue}async function Pe(e,t,n,i){const a=(0,w.$V)((()=>Promise.all([s.e(4208),s.e(6778)]).then(s.bind(s,26778))));return new Promise(((s,r)=>{const o=new w.Ay({name:"ConflictPickerRoot",render:l=>l(a,{props:{dirname:e,conflicts:t,content:n,recursiveUpload:!0===i?.recursive},on:{submit(e){s(e),o.$destroy(),o.$el?.parentNode?.removeChild(o.$el)},cancel(e){r(e??new Error("Canceled")),o.$destroy(),o.$el?.parentNode?.removeChild(o.$el)}}})});o.$mount(),document.body.appendChild(o.$el)}))}function Ne(e,t){return Be(e,t).length>0}function Be(e,t){const s=t.map((e=>e.basename));return e.filter((e=>{const t="basename"in e?e.basename:e.name;return-1!==s.indexOf(t)}))}}},a={};function r(e){var t=a[e];if(void 0!==t)return t.exports;var s=a[e]={id:e,loaded:!1,exports:{}};return i[e].call(s.exports,s,s.exports,r),s.loaded=!0,s.exports}r.m=i,e=[],r.O=(t,s,n,i)=>{if(!s){var a=1/0;for(c=0;c=i)&&Object.keys(r.O).every((e=>r.O[e](s[l])))?s.splice(l--,1):(o=!1,i0&&e[c-1][2]>i;c--)e[c]=e[c-1];e[c]=[s,n,i]},r.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return r.d(t,{a:t}),t},r.d=(e,t)=>{for(var s in t)r.o(t,s)&&!r.o(e,s)&&Object.defineProperty(e,s,{enumerable:!0,get:t[s]})},r.f={},r.e=e=>Promise.all(Object.keys(r.f).reduce(((t,s)=>(r.f[s](e,t),t)),[])),r.u=e=>e+"-"+e+".js?v="+{1110:"e20948a2fd7d006e5209",5455:"f19bb30c4edfe928a23c",6778:"05456eb4fc16e404b623"}[e],r.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),s={},n="nextcloud:",r.l=(e,t,i,a)=>{if(s[e])s[e].push(t);else{var o,l;if(void 0!==i)for(var d=document.getElementsByTagName("script"),c=0;c{o.onerror=o.onload=null,clearTimeout(g);var i=s[e];if(delete s[e],o.parentNode&&o.parentNode.removeChild(o),i&&i.forEach((e=>e(n))),t)return t(n)},g=setTimeout(m.bind(null,void 0,{type:"timeout",target:o}),12e4);o.onerror=m.bind(null,o.onerror),o.onload=m.bind(null,o.onload),l&&document.head.appendChild(o)}},r.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.nmd=e=>(e.paths=[],e.children||(e.children=[]),e),r.j=2882,(()=>{var e;r.g.importScripts&&(e=r.g.location+"");var t=r.g.document;if(!e&&t&&(t.currentScript&&(e=t.currentScript.src),!e)){var s=t.getElementsByTagName("script");if(s.length)for(var n=s.length-1;n>-1&&(!e||!/^http(s?):/.test(e));)e=s[n--].src}if(!e)throw new Error("Automatic publicPath is not supported in this browser");e=e.replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),r.p=e})(),(()=>{r.b=document.baseURI||self.location.href;var e={2882:0};r.f.j=(t,s)=>{var n=r.o(e,t)?e[t]:void 0;if(0!==n)if(n)s.push(n[2]);else{var i=new Promise(((s,i)=>n=e[t]=[s,i]));s.push(n[2]=i);var a=r.p+r.u(t),o=new Error;r.l(a,(s=>{if(r.o(e,t)&&(0!==(n=e[t])&&(e[t]=void 0),n)){var i=s&&("load"===s.type?"missing":s.type),a=s&&s.target&&s.target.src;o.message="Loading chunk "+t+" failed.\n("+i+": "+a+")",o.name="ChunkLoadError",o.type=i,o.request=a,n[1](o)}}),"chunk-"+t,t)}},r.O.j=t=>0===e[t];var t=(t,s)=>{var n,i,a=s[0],o=s[1],l=s[2],d=0;if(a.some((t=>0!==e[t]))){for(n in o)r.o(o,n)&&(r.m[n]=o[n]);if(l)var c=l(r)}for(t&&t(s);dr(81139)));o=r.O(o)})(); +//# sourceMappingURL=files-main.js.map?v=7c53ceb560b697190c5c \ No newline at end of file diff --git a/dist/files-main.js.map b/dist/files-main.js.map index 434b923e8cecc..945eba23586da 100644 --- a/dist/files-main.js.map +++ b/dist/files-main.js.map @@ -1 +1 @@ -{"version":3,"file":"files-main.js?v=ad2a5b01443e9a82f104","mappings":"UAAIA,ECAAC,EACAC,E,yBCCJ,IAAIC,EAAMC,OAAOC,UAAUC,eACvBC,EAAS,IASb,SAASC,IAAU,CA4BnB,SAASC,EAAGC,EAAIC,EAASC,GACvBC,KAAKH,GAAKA,EACVG,KAAKF,QAAUA,EACfE,KAAKD,KAAOA,IAAQ,CACtB,CAaA,SAASE,EAAYC,EAASC,EAAON,EAAIC,EAASC,GAChD,GAAkB,mBAAPF,EACT,MAAM,IAAIO,UAAU,mCAGtB,IAAIC,EAAW,IAAIT,EAAGC,EAAIC,GAAWI,EAASH,GAC1CO,EAAMZ,EAASA,EAASS,EAAQA,EAMpC,OAJKD,EAAQK,QAAQD,GACXJ,EAAQK,QAAQD,GAAKT,GAC1BK,EAAQK,QAAQD,GAAO,CAACJ,EAAQK,QAAQD,GAAMD,GADhBH,EAAQK,QAAQD,GAAKE,KAAKH,IADlCH,EAAQK,QAAQD,GAAOD,EAAUH,EAAQO,gBAI7DP,CACT,CASA,SAASQ,EAAWR,EAASI,GACI,KAAzBJ,EAAQO,aAAoBP,EAAQK,QAAU,IAAIZ,SAC5CO,EAAQK,QAAQD,EAC9B,CASA,SAASK,IACPX,KAAKO,QAAU,IAAIZ,EACnBK,KAAKS,aAAe,CACtB,CAzEIlB,OAAOqB,SACTjB,EAAOH,UAAYD,OAAOqB,OAAO,OAM5B,IAAIjB,GAASkB,YAAWnB,GAAS,IA2ExCiB,EAAanB,UAAUsB,WAAa,WAClC,IACIC,EACAC,EAFAC,EAAQ,GAIZ,GAA0B,IAAtBjB,KAAKS,aAAoB,OAAOQ,EAEpC,IAAKD,KAASD,EAASf,KAAKO,QACtBjB,EAAI4B,KAAKH,EAAQC,IAAOC,EAAMT,KAAKd,EAASsB,EAAKG,MAAM,GAAKH,GAGlE,OAAIzB,OAAO6B,sBACFH,EAAMI,OAAO9B,OAAO6B,sBAAsBL,IAG5CE,CACT,EASAN,EAAanB,UAAU8B,UAAY,SAAmBnB,GACpD,IAAIG,EAAMZ,EAASA,EAASS,EAAQA,EAChCoB,EAAWvB,KAAKO,QAAQD,GAE5B,IAAKiB,EAAU,MAAO,GACtB,GAAIA,EAAS1B,GAAI,MAAO,CAAC0B,EAAS1B,IAElC,IAAK,IAAI2B,EAAI,EAAGC,EAAIF,EAASG,OAAQC,EAAK,IAAIC,MAAMH,GAAID,EAAIC,EAAGD,IAC7DG,EAAGH,GAAKD,EAASC,GAAG3B,GAGtB,OAAO8B,CACT,EASAhB,EAAanB,UAAUqC,cAAgB,SAAuB1B,GAC5D,IAAIG,EAAMZ,EAASA,EAASS,EAAQA,EAChCmB,EAAYtB,KAAKO,QAAQD,GAE7B,OAAKgB,EACDA,EAAUzB,GAAW,EAClByB,EAAUI,OAFM,CAGzB,EASAf,EAAanB,UAAUsC,KAAO,SAAc3B,EAAO4B,EAAIC,EAAIC,EAAIC,EAAIC,GACjE,IAAI7B,EAAMZ,EAASA,EAASS,EAAQA,EAEpC,IAAKH,KAAKO,QAAQD,GAAM,OAAO,EAE/B,IAEI8B,EACAZ,EAHAF,EAAYtB,KAAKO,QAAQD,GACzB+B,EAAMC,UAAUZ,OAIpB,GAAIJ,EAAUzB,GAAI,CAGhB,OAFIyB,EAAUvB,MAAMC,KAAKuC,eAAepC,EAAOmB,EAAUzB,QAAI2C,GAAW,GAEhEH,GACN,KAAK,EAAG,OAAOf,EAAUzB,GAAGqB,KAAKI,EAAUxB,UAAU,EACrD,KAAK,EAAG,OAAOwB,EAAUzB,GAAGqB,KAAKI,EAAUxB,QAASiC,IAAK,EACzD,KAAK,EAAG,OAAOT,EAAUzB,GAAGqB,KAAKI,EAAUxB,QAASiC,EAAIC,IAAK,EAC7D,KAAK,EAAG,OAAOV,EAAUzB,GAAGqB,KAAKI,EAAUxB,QAASiC,EAAIC,EAAIC,IAAK,EACjE,KAAK,EAAG,OAAOX,EAAUzB,GAAGqB,KAAKI,EAAUxB,QAASiC,EAAIC,EAAIC,EAAIC,IAAK,EACrE,KAAK,EAAG,OAAOZ,EAAUzB,GAAGqB,KAAKI,EAAUxB,QAASiC,EAAIC,EAAIC,EAAIC,EAAIC,IAAK,EAG3E,IAAKX,EAAI,EAAGY,EAAO,IAAIR,MAAMS,EAAK,GAAIb,EAAIa,EAAKb,IAC7CY,EAAKZ,EAAI,GAAKc,UAAUd,GAG1BF,EAAUzB,GAAG4C,MAAMnB,EAAUxB,QAASsC,EACxC,KAAO,CACL,IACIM,EADAhB,EAASJ,EAAUI,OAGvB,IAAKF,EAAI,EAAGA,EAAIE,EAAQF,IAGtB,OAFIF,EAAUE,GAAGzB,MAAMC,KAAKuC,eAAepC,EAAOmB,EAAUE,GAAG3B,QAAI2C,GAAW,GAEtEH,GACN,KAAK,EAAGf,EAAUE,GAAG3B,GAAGqB,KAAKI,EAAUE,GAAG1B,SAAU,MACpD,KAAK,EAAGwB,EAAUE,GAAG3B,GAAGqB,KAAKI,EAAUE,GAAG1B,QAASiC,GAAK,MACxD,KAAK,EAAGT,EAAUE,GAAG3B,GAAGqB,KAAKI,EAAUE,GAAG1B,QAASiC,EAAIC,GAAK,MAC5D,KAAK,EAAGV,EAAUE,GAAG3B,GAAGqB,KAAKI,EAAUE,GAAG1B,QAASiC,EAAIC,EAAIC,GAAK,MAChE,QACE,IAAKG,EAAM,IAAKM,EAAI,EAAGN,EAAO,IAAIR,MAAMS,EAAK,GAAIK,EAAIL,EAAKK,IACxDN,EAAKM,EAAI,GAAKJ,UAAUI,GAG1BpB,EAAUE,GAAG3B,GAAG4C,MAAMnB,EAAUE,GAAG1B,QAASsC,GAGpD,CAEA,OAAO,CACT,EAWAzB,EAAanB,UAAUmD,GAAK,SAAYxC,EAAON,EAAIC,GACjD,OAAOG,EAAYD,KAAMG,EAAON,EAAIC,GAAS,EAC/C,EAWAa,EAAanB,UAAUO,KAAO,SAAcI,EAAON,EAAIC,GACrD,OAAOG,EAAYD,KAAMG,EAAON,EAAIC,GAAS,EAC/C,EAYAa,EAAanB,UAAU+C,eAAiB,SAAwBpC,EAAON,EAAIC,EAASC,GAClF,IAAIO,EAAMZ,EAASA,EAASS,EAAQA,EAEpC,IAAKH,KAAKO,QAAQD,GAAM,OAAON,KAC/B,IAAKH,EAEH,OADAa,EAAWV,KAAMM,GACVN,KAGT,IAAIsB,EAAYtB,KAAKO,QAAQD,GAE7B,GAAIgB,EAAUzB,GAEVyB,EAAUzB,KAAOA,GACfE,IAAQuB,EAAUvB,MAClBD,GAAWwB,EAAUxB,UAAYA,GAEnCY,EAAWV,KAAMM,OAEd,CACL,IAAK,IAAIkB,EAAI,EAAGT,EAAS,GAAIW,EAASJ,EAAUI,OAAQF,EAAIE,EAAQF,KAEhEF,EAAUE,GAAG3B,KAAOA,GACnBE,IAASuB,EAAUE,GAAGzB,MACtBD,GAAWwB,EAAUE,GAAG1B,UAAYA,IAErCiB,EAAOP,KAAKc,EAAUE,IAOtBT,EAAOW,OAAQ1B,KAAKO,QAAQD,GAAyB,IAAlBS,EAAOW,OAAeX,EAAO,GAAKA,EACpEL,EAAWV,KAAMM,EACxB,CAEA,OAAON,IACT,EASAW,EAAanB,UAAUoD,mBAAqB,SAA4BzC,GACtE,IAAIG,EAUJ,OARIH,GACFG,EAAMZ,EAASA,EAASS,EAAQA,EAC5BH,KAAKO,QAAQD,IAAMI,EAAWV,KAAMM,KAExCN,KAAKO,QAAU,IAAIZ,EACnBK,KAAKS,aAAe,GAGfT,IACT,EAKAW,EAAanB,UAAUqD,IAAMlC,EAAanB,UAAU+C,eACpD5B,EAAanB,UAAUS,YAAcU,EAAanB,UAAUmD,GAK5DhC,EAAamC,SAAWpD,EAKxBiB,EAAaA,aAAeA,EAM1BoC,EAAOC,QAAUrC,C,6MCzUZ,MAAMsC,GAAQC,EAAAA,EAAAA,M,eCLrB,MAAMC,EAAQ,eACRC,EAAgB,IAAIC,OAAO,IAAMF,EAAQ,aAAc,MACvDG,EAAe,IAAID,OAAO,IAAMF,EAAQ,KAAM,MAEpD,SAASI,EAAiBC,EAAYC,GACrC,IAEC,MAAO,CAACC,mBAAmBF,EAAWG,KAAK,KAC5C,CAAE,MAEF,CAEA,GAA0B,IAAtBH,EAAW9B,OACd,OAAO8B,EAGRC,EAAQA,GAAS,EAGjB,MAAMG,EAAOJ,EAAWrC,MAAM,EAAGsC,GAC3BI,EAAQL,EAAWrC,MAAMsC,GAE/B,OAAO7B,MAAMpC,UAAU6B,OAAOH,KAAK,GAAIqC,EAAiBK,GAAOL,EAAiBM,GACjF,CAEA,SAASC,EAAOC,GACf,IACC,OAAOL,mBAAmBK,EAC3B,CAAE,MACD,IAAIC,EAASD,EAAME,MAAMb,IAAkB,GAE3C,IAAK,IAAI5B,EAAI,EAAGA,EAAIwC,EAAOtC,OAAQF,IAGlCwC,GAFAD,EAAQR,EAAiBS,EAAQxC,GAAGmC,KAAK,KAE1BM,MAAMb,IAAkB,GAGxC,OAAOW,CACR,CACD,CCvCe,SAASG,EAAaC,EAAQC,GAC5C,GAAwB,iBAAXD,GAA4C,iBAAdC,EAC1C,MAAM,IAAIhE,UAAU,iDAGrB,GAAe,KAAX+D,GAA+B,KAAdC,EACpB,MAAO,GAGR,MAAMC,EAAiBF,EAAOG,QAAQF,GAEtC,OAAwB,IAApBC,EACI,GAGD,CACNF,EAAOhD,MAAM,EAAGkD,GAChBF,EAAOhD,MAAMkD,EAAiBD,EAAU1C,QAE1C,CCnBO,SAAS6C,EAAYC,EAAQC,GACnC,MAAMC,EAAS,CAAC,EAEhB,GAAI9C,MAAM+C,QAAQF,GACjB,IAAK,MAAMG,KAAOH,EAAW,CAC5B,MAAMI,EAAatF,OAAOuF,yBAAyBN,EAAQI,GACvDC,GAAYE,YACfxF,OAAOyF,eAAeN,EAAQE,EAAKC,EAErC,MAGA,IAAK,MAAMD,KAAOK,QAAQC,QAAQV,GAAS,CAC1C,MAAMK,EAAatF,OAAOuF,yBAAyBN,EAAQI,GACvDC,EAAWE,YAEVN,EAAUG,EADAJ,EAAOI,GACKJ,IACzBjF,OAAOyF,eAAeN,EAAQE,EAAKC,EAGtC,CAGD,OAAOH,CACR,CCpBA,MAAMS,EAAoBC,GAASA,QAG7BC,EAAkBlB,GAAUmB,mBAAmBnB,GAAQoB,WAAW,YAAYC,GAAK,IAAIA,EAAEC,WAAW,GAAGC,SAAS,IAAIC,kBAEpHC,EAA2BC,OAAO,4BA8OxC,SAASC,EAA6BV,GACrC,GAAqB,iBAAVA,GAAuC,IAAjBA,EAAM1D,OACtC,MAAM,IAAItB,UAAU,uDAEtB,CAEA,SAAS2F,EAAOX,EAAOY,GACtB,OAAIA,EAAQD,OACJC,EAAQC,OAASZ,EAAgBD,GAASE,mBAAmBF,GAG9DA,CACR,CAEA,SAAS,EAAOA,EAAOY,GACtB,OAAIA,EAAQlC,OHzLE,SAA4BoC,GAC1C,GAA0B,iBAAfA,EACV,MAAM,IAAI9F,UAAU,6DAA+D8F,EAAa,KAGjG,IAEC,OAAOxC,mBAAmBwC,EAC3B,CAAE,MAED,OA9CF,SAAkCnC,GAEjC,MAAMoC,EAAa,CAClB,SAAU,KACV,SAAU,MAGX,IAAIlC,EAAQX,EAAa8C,KAAKrC,GAC9B,KAAOE,GAAO,CACb,IAECkC,EAAWlC,EAAM,IAAMP,mBAAmBO,EAAM,GACjD,CAAE,MACD,MAAMS,EAASZ,EAAOG,EAAM,IAExBS,IAAWT,EAAM,KACpBkC,EAAWlC,EAAM,IAAMS,EAEzB,CAEAT,EAAQX,EAAa8C,KAAKrC,EAC3B,CAGAoC,EAAW,OAAS,IAEpB,MAAME,EAAU9G,OAAO+G,KAAKH,GAE5B,IAAK,MAAMvB,KAAOyB,EAEjBtC,EAAQA,EAAMwC,QAAQ,IAAIlD,OAAOuB,EAAK,KAAMuB,EAAWvB,IAGxD,OAAOb,CACR,CAYSyC,CAAyBN,EACjC,CACD,CG8KS,CAAgBd,GAGjBA,CACR,CAEA,SAASqB,EAAW1C,GACnB,OAAInC,MAAM+C,QAAQZ,GACVA,EAAM2C,OAGO,iBAAV3C,EACH0C,EAAWlH,OAAO+G,KAAKvC,IAC5B2C,MAAK,CAACC,EAAGC,IAAMC,OAAOF,GAAKE,OAAOD,KAClCE,KAAIlC,GAAOb,EAAMa,KAGbb,CACR,CAEA,SAASgD,EAAWhD,GACnB,MAAMiD,EAAYjD,EAAMO,QAAQ,KAKhC,OAJmB,IAAf0C,IACHjD,EAAQA,EAAM5C,MAAM,EAAG6F,IAGjBjD,CACR,CAYA,SAASkD,EAAW7B,EAAOY,GAO1B,OANIA,EAAQkB,eAAiBL,OAAOM,MAAMN,OAAOzB,KAA6B,iBAAVA,GAAuC,KAAjBA,EAAMgC,OAC/FhC,EAAQyB,OAAOzB,IACLY,EAAQqB,eAA2B,OAAVjC,GAA2C,SAAxBA,EAAMkC,eAAoD,UAAxBlC,EAAMkC,gBAC9FlC,EAAgC,SAAxBA,EAAMkC,eAGRlC,CACR,CAEO,SAASmC,EAAQxD,GAEvB,MAAMyD,GADNzD,EAAQgD,EAAWhD,IACMO,QAAQ,KACjC,OAAoB,IAAhBkD,EACI,GAGDzD,EAAM5C,MAAMqG,EAAa,EACjC,CAEO,SAASC,EAAMC,EAAO1B,GAW5BF,GAVAE,EAAU,CACTlC,QAAQ,EACR4C,MAAM,EACNiB,YAAa,OACbC,qBAAsB,IACtBV,cAAc,EACdG,eAAe,KACZrB,IAGiC4B,sBAErC,MAAMC,EApMP,SAA8B7B,GAC7B,IAAItB,EAEJ,OAAQsB,EAAQ2B,aACf,IAAK,QACJ,MAAO,CAAC/C,EAAKQ,EAAO0C,KACnBpD,EAAS,YAAY0B,KAAKxB,GAE1BA,EAAMA,EAAI2B,QAAQ,UAAW,IAExB7B,QAKoBlC,IAArBsF,EAAYlD,KACfkD,EAAYlD,GAAO,CAAC,GAGrBkD,EAAYlD,GAAKF,EAAO,IAAMU,GAR7B0C,EAAYlD,GAAOQ,CAQe,EAIrC,IAAK,UACJ,MAAO,CAACR,EAAKQ,EAAO0C,KACnBpD,EAAS,SAAS0B,KAAKxB,GACvBA,EAAMA,EAAI2B,QAAQ,OAAQ,IAErB7B,OAKoBlC,IAArBsF,EAAYlD,GAKhBkD,EAAYlD,GAAO,IAAIkD,EAAYlD,GAAMQ,GAJxC0C,EAAYlD,GAAO,CAACQ,GALpB0C,EAAYlD,GAAOQ,CAS2B,EAIjD,IAAK,uBACJ,MAAO,CAACR,EAAKQ,EAAO0C,KACnBpD,EAAS,WAAW0B,KAAKxB,GACzBA,EAAMA,EAAI2B,QAAQ,SAAU,IAEvB7B,OAKoBlC,IAArBsF,EAAYlD,GAKhBkD,EAAYlD,GAAO,IAAIkD,EAAYlD,GAAMQ,GAJxC0C,EAAYlD,GAAO,CAACQ,GALpB0C,EAAYlD,GAAOQ,CAS2B,EAIjD,IAAK,QACL,IAAK,YACJ,MAAO,CAACR,EAAKQ,EAAO0C,KACnB,MAAMnD,EAA2B,iBAAVS,GAAsBA,EAAM2C,SAAS/B,EAAQ4B,sBAC9DI,EAAmC,iBAAV5C,IAAuBT,GAAW,EAAOS,EAAOY,GAAS+B,SAAS/B,EAAQ4B,sBACzGxC,EAAQ4C,EAAiB,EAAO5C,EAAOY,GAAWZ,EAClD,MAAM6C,EAAWtD,GAAWqD,EAAiB5C,EAAM3B,MAAMuC,EAAQ4B,sBAAsBd,KAAIoB,GAAQ,EAAOA,EAAMlC,KAAuB,OAAVZ,EAAiBA,EAAQ,EAAOA,EAAOY,GACpK8B,EAAYlD,GAAOqD,CAAQ,EAI7B,IAAK,oBACJ,MAAO,CAACrD,EAAKQ,EAAO0C,KACnB,MAAMnD,EAAU,SAASwD,KAAKvD,GAG9B,GAFAA,EAAMA,EAAI2B,QAAQ,OAAQ,KAErB5B,EAEJ,YADAmD,EAAYlD,GAAOQ,EAAQ,EAAOA,EAAOY,GAAWZ,GAIrD,MAAMgD,EAAuB,OAAVhD,EAChB,GACAA,EAAM3B,MAAMuC,EAAQ4B,sBAAsBd,KAAIoB,GAAQ,EAAOA,EAAMlC,UAE7CxD,IAArBsF,EAAYlD,GAKhBkD,EAAYlD,GAAO,IAAIkD,EAAYlD,MAASwD,GAJ3CN,EAAYlD,GAAOwD,CAImC,EAIzD,QACC,MAAO,CAACxD,EAAKQ,EAAO0C,UACMtF,IAArBsF,EAAYlD,GAKhBkD,EAAYlD,GAAO,IAAI,CAACkD,EAAYlD,IAAMyD,OAAQjD,GAJjD0C,EAAYlD,GAAOQ,CAIoC,EAI5D,CA0FmBkD,CAAqBtC,GAGjCuC,EAAchJ,OAAOqB,OAAO,MAElC,GAAqB,iBAAV8G,EACV,OAAOa,EAKR,KAFAb,EAAQA,EAAMN,OAAOb,QAAQ,SAAU,KAGtC,OAAOgC,EAGR,IAAK,MAAMC,KAAad,EAAMjE,MAAM,KAAM,CACzC,GAAkB,KAAd+E,EACH,SAGD,MAAMC,EAAazC,EAAQlC,OAAS0E,EAAUjD,WAAW,IAAK,KAAOiD,EAErE,IAAK5D,EAAKQ,GAASlB,EAAauE,EAAY,UAEhCjG,IAARoC,IACHA,EAAM6D,GAKPrD,OAAkB5C,IAAV4C,EAAsB,KAAQ,CAAC,QAAS,YAAa,qBAAqB2C,SAAS/B,EAAQ2B,aAAevC,EAAQ,EAAOA,EAAOY,GACxI6B,EAAU,EAAOjD,EAAKoB,GAAUZ,EAAOmD,EACxC,CAEA,IAAK,MAAO3D,EAAKQ,KAAU7F,OAAO8G,QAAQkC,GACzC,GAAqB,iBAAVnD,GAAgC,OAAVA,EAChC,IAAK,MAAOsD,EAAMC,KAAWpJ,OAAO8G,QAAQjB,GAC3CA,EAAMsD,GAAQzB,EAAW0B,EAAQ3C,QAGlCuC,EAAY3D,GAAOqC,EAAW7B,EAAOY,GAIvC,OAAqB,IAAjBA,EAAQU,KACJ6B,IAKiB,IAAjBvC,EAAQU,KAAgBnH,OAAO+G,KAAKiC,GAAa7B,OAASnH,OAAO+G,KAAKiC,GAAa7B,KAAKV,EAAQU,OAAOkC,QAAO,CAAClE,EAAQE,KAC9H,MAAMQ,EAAQmD,EAAY3D,GAE1B,OADAF,EAAOE,GAAOiE,QAAQzD,IAA2B,iBAAVA,IAAuBxD,MAAM+C,QAAQS,GAASqB,EAAWrB,GAASA,EAClGV,CAAM,GACXnF,OAAOqB,OAAO,MAClB,CAEO,SAASkI,EAAUtE,EAAQwB,GACjC,IAAKxB,EACJ,MAAO,GAWRsB,GARAE,EAAU,CACTD,QAAQ,EACRE,QAAQ,EACR0B,YAAa,OACbC,qBAAsB,OACnB5B,IAGiC4B,sBAErC,MAAMmB,EAAenE,GACnBoB,EAAQgD,UAAY7D,EAAkBX,EAAOI,KAC1CoB,EAAQiD,iBAAmC,KAAhBzE,EAAOI,GAGjCiD,EAjZP,SAA+B7B,GAC9B,OAAQA,EAAQ2B,aACf,IAAK,QACJ,OAAO/C,GAAO,CAACF,EAAQU,KACtB,MAAM8D,EAAQxE,EAAOhD,OAErB,YACWc,IAAV4C,GACIY,EAAQgD,UAAsB,OAAV5D,GACpBY,EAAQiD,iBAA6B,KAAV7D,EAExBV,EAGM,OAAVU,EACI,IACHV,EAAQ,CAACqB,EAAOnB,EAAKoB,GAAU,IAAKkD,EAAO,KAAKvF,KAAK,KAInD,IACHe,EACH,CAACqB,EAAOnB,EAAKoB,GAAU,IAAKD,EAAOmD,EAAOlD,GAAU,KAAMD,EAAOX,EAAOY,IAAUrC,KAAK,IACvF,EAIH,IAAK,UACJ,OAAOiB,GAAO,CAACF,EAAQU,SAEX5C,IAAV4C,GACIY,EAAQgD,UAAsB,OAAV5D,GACpBY,EAAQiD,iBAA6B,KAAV7D,EAExBV,EAGM,OAAVU,EACI,IACHV,EACH,CAACqB,EAAOnB,EAAKoB,GAAU,MAAMrC,KAAK,KAI7B,IACHe,EACH,CAACqB,EAAOnB,EAAKoB,GAAU,MAAOD,EAAOX,EAAOY,IAAUrC,KAAK,KAK9D,IAAK,uBACJ,OAAOiB,GAAO,CAACF,EAAQU,SAEX5C,IAAV4C,GACIY,EAAQgD,UAAsB,OAAV5D,GACpBY,EAAQiD,iBAA6B,KAAV7D,EAExBV,EAGM,OAAVU,EACI,IACHV,EACH,CAACqB,EAAOnB,EAAKoB,GAAU,UAAUrC,KAAK,KAIjC,IACHe,EACH,CAACqB,EAAOnB,EAAKoB,GAAU,SAAUD,EAAOX,EAAOY,IAAUrC,KAAK,KAKjE,IAAK,QACL,IAAK,YACL,IAAK,oBAAqB,CACzB,MAAMwF,EAA4C,sBAAxBnD,EAAQ2B,YAC/B,MACA,IAEH,OAAO/C,GAAO,CAACF,EAAQU,SAEX5C,IAAV4C,GACIY,EAAQgD,UAAsB,OAAV5D,GACpBY,EAAQiD,iBAA6B,KAAV7D,EAExBV,GAIRU,EAAkB,OAAVA,EAAiB,GAAKA,EAER,IAAlBV,EAAOhD,OACH,CAAC,CAACqE,EAAOnB,EAAKoB,GAAUmD,EAAmBpD,EAAOX,EAAOY,IAAUrC,KAAK,KAGzE,CAAC,CAACe,EAAQqB,EAAOX,EAAOY,IAAUrC,KAAKqC,EAAQ4B,uBAExD,CAEA,QACC,OAAOhD,GAAO,CAACF,EAAQU,SAEX5C,IAAV4C,GACIY,EAAQgD,UAAsB,OAAV5D,GACpBY,EAAQiD,iBAA6B,KAAV7D,EAExBV,EAGM,OAAVU,EACI,IACHV,EACHqB,EAAOnB,EAAKoB,IAIP,IACHtB,EACH,CAACqB,EAAOnB,EAAKoB,GAAU,IAAKD,EAAOX,EAAOY,IAAUrC,KAAK,KAK9D,CAmRmByF,CAAsBpD,GAElCqD,EAAa,CAAC,EAEpB,IAAK,MAAOzE,EAAKQ,KAAU7F,OAAO8G,QAAQ7B,GACpCuE,EAAanE,KACjByE,EAAWzE,GAAOQ,GAIpB,MAAMkB,EAAO/G,OAAO+G,KAAK+C,GAMzB,OAJqB,IAAjBrD,EAAQU,MACXJ,EAAKI,KAAKV,EAAQU,MAGZJ,EAAKQ,KAAIlC,IACf,MAAMQ,EAAQZ,EAAOI,GAErB,YAAcpC,IAAV4C,EACI,GAGM,OAAVA,EACIW,EAAOnB,EAAKoB,GAGhBpE,MAAM+C,QAAQS,GACI,IAAjBA,EAAM1D,QAAwC,sBAAxBsE,EAAQ2B,YAC1B5B,EAAOnB,EAAKoB,GAAW,KAGxBZ,EACLwD,OAAOf,EAAUjD,GAAM,IACvBjB,KAAK,KAGDoC,EAAOnB,EAAKoB,GAAW,IAAMD,EAAOX,EAAOY,EAAQ,IACxDsD,QAAO9D,GAAKA,EAAE9D,OAAS,IAAGiC,KAAK,IACnC,CAEO,SAAS4F,EAASC,EAAKxD,GAC7BA,EAAU,CACTlC,QAAQ,KACLkC,GAGJ,IAAKyD,EAAMC,GAAQxF,EAAasF,EAAK,KAMrC,YAJahH,IAATiH,IACHA,EAAOD,GAGD,CACNA,IAAKC,GAAMhG,MAAM,OAAO,IAAM,GAC9BiE,MAAOD,EAAMF,EAAQiC,GAAMxD,MACvBA,GAAWA,EAAQ2D,yBAA2BD,EAAO,CAACE,mBAAoB,EAAOF,EAAM1D,IAAY,CAAC,EAE1G,CAEO,SAAS6D,EAAarF,EAAQwB,GACpCA,EAAU,CACTD,QAAQ,EACRE,QAAQ,EACR,CAACL,IAA2B,KACzBI,GAGJ,MAAMwD,EAAMzC,EAAWvC,EAAOgF,KAAK/F,MAAM,KAAK,IAAM,GAQpD,IAAIqG,EAAchB,EALJ,IACVrB,EAHiBF,EAAQ/C,EAAOgF,KAGZ,CAAC9C,MAAM,OAC3BlC,EAAOkD,OAGwB1B,GACnC8D,IAAgB,IAAIA,IAEpB,IAAIJ,EAvML,SAAiBF,GAChB,IAAIE,EAAO,GACX,MAAM1C,EAAYwC,EAAIlF,QAAQ,KAK9B,OAJmB,IAAf0C,IACH0C,EAAOF,EAAIrI,MAAM6F,IAGX0C,CACR,CA+LYK,CAAQvF,EAAOgF,KAC1B,GAAyC,iBAA9BhF,EAAOoF,mBAAiC,CAClD,MAAMI,EAA6B,IAAIC,IAAIT,GAC3CQ,EAA2BN,KAAOlF,EAAOoF,mBACzCF,EAAO1D,EAAQJ,GAA4BoE,EAA2BN,KAAO,IAAIlF,EAAOoF,oBACzF,CAEA,MAAO,GAAGJ,IAAMM,IAAcJ,GAC/B,CAEO,SAASQ,EAAKnG,EAAOuF,EAAQtD,GACnCA,EAAU,CACT2D,yBAAyB,EACzB,CAAC/D,IAA2B,KACzBI,GAGJ,MAAM,IAACwD,EAAG,MAAE9B,EAAK,mBAAEkC,GAAsBL,EAASxF,EAAOiC,GAEzD,OAAO6D,EAAa,CACnBL,MACA9B,MAAOnD,EAAYmD,EAAO4B,GAC1BM,sBACE5D,EACJ,CAEO,SAASmE,EAAQpG,EAAOuF,EAAQtD,GAGtC,OAAOkE,EAAKnG,EAFYnC,MAAM+C,QAAQ2E,GAAU1E,IAAQ0E,EAAOvB,SAASnD,GAAO,CAACA,EAAKQ,KAAWkE,EAAO1E,EAAKQ,GAExEY,EACrC,CCvgBA,U,eCiBA,SAASoE,EAAQzD,EAAGC,GAClB,IAAK,IAAIhC,KAAOgC,EACdD,EAAE/B,GAAOgC,EAAEhC,GAEb,OAAO+B,CACT,CAIA,IAAI0D,EAAkB,WAClBC,EAAwB,SAAUC,GAAK,MAAO,IAAMA,EAAE9E,WAAW,GAAGC,SAAS,GAAK,EAClF8E,EAAU,OAKV,EAAS,SAAUC,GAAO,OAAOnF,mBAAmBmF,GACnDlE,QAAQ8D,EAAiBC,GACzB/D,QAAQiE,EAAS,IAAM,EAE5B,SAAS,EAAQC,GACf,IACE,OAAO/G,mBAAmB+G,EAC5B,CAAE,MAAOC,GAIT,CACA,OAAOD,CACT,CA0BA,IAAIE,EAAsB,SAAUvF,GAAS,OAAiB,MAATA,GAAkC,iBAAVA,EAAqBA,EAAQwF,OAAOxF,EAAS,EAE1H,SAASyF,EAAYnD,GACnB,IAAIoD,EAAM,CAAC,EAIX,OAFApD,EAAQA,EAAMN,OAAOb,QAAQ,YAAa,MAM1CmB,EAAMjE,MAAM,KAAKsH,SAAQ,SAAUC,GACjC,IAAIC,EAAQD,EAAMzE,QAAQ,MAAO,KAAK9C,MAAM,KACxCmB,EAAM,EAAOqG,EAAMC,SACnBC,EAAMF,EAAMvJ,OAAS,EAAI,EAAOuJ,EAAMtH,KAAK,MAAQ,UAEtCnB,IAAbsI,EAAIlG,GACNkG,EAAIlG,GAAOuG,EACFvJ,MAAM+C,QAAQmG,EAAIlG,IAC3BkG,EAAIlG,GAAKpE,KAAK2K,GAEdL,EAAIlG,GAAO,CAACkG,EAAIlG,GAAMuG,EAE1B,IAEOL,GAjBEA,CAkBX,CAEA,SAASM,EAAgBC,GACvB,IAAIP,EAAMO,EACN9L,OAAO+G,KAAK+E,GACXvE,KAAI,SAAUlC,GACb,IAAIuG,EAAME,EAAIzG,GAEd,QAAYpC,IAAR2I,EACF,MAAO,GAGT,GAAY,OAARA,EACF,OAAO,EAAOvG,GAGhB,GAAIhD,MAAM+C,QAAQwG,GAAM,CACtB,IAAIzG,EAAS,GAWb,OAVAyG,EAAIJ,SAAQ,SAAUO,QACP9I,IAAT8I,IAGS,OAATA,EACF5G,EAAOlE,KAAK,EAAOoE,IAEnBF,EAAOlE,KAAK,EAAOoE,GAAO,IAAM,EAAO0G,IAE3C,IACO5G,EAAOf,KAAK,IACrB,CAEA,OAAO,EAAOiB,GAAO,IAAM,EAAOuG,EACpC,IACC7B,QAAO,SAAU9D,GAAK,OAAOA,EAAE9D,OAAS,CAAG,IAC3CiC,KAAK,KACN,KACJ,OAAOmH,EAAO,IAAMA,EAAO,EAC7B,CAIA,IAAIS,EAAkB,OAEtB,SAASC,EACPC,EACAC,EACAC,EACAC,GAEA,IAAIR,EAAiBQ,GAAUA,EAAO5F,QAAQoF,eAE1C1D,EAAQgE,EAAShE,OAAS,CAAC,EAC/B,IACEA,EAAQmE,EAAMnE,EAChB,CAAE,MAAOoE,GAAI,CAEb,IAAIC,EAAQ,CACV/K,KAAM0K,EAAS1K,MAASyK,GAAUA,EAAOzK,KACzCgL,KAAOP,GAAUA,EAAOO,MAAS,CAAC,EAClCC,KAAMP,EAASO,MAAQ,IACvBvC,KAAMgC,EAAShC,MAAQ,GACvBhC,MAAOA,EACPwE,OAAQR,EAASQ,QAAU,CAAC,EAC5BC,SAAUC,EAAYV,EAAUN,GAChCiB,QAASZ,EAASa,EAAYb,GAAU,IAK1C,OAHIE,IACFI,EAAMJ,eAAiBS,EAAYT,EAAgBP,IAE9C7L,OAAOgN,OAAOR,EACvB,CAEA,SAASF,EAAOzG,GACd,GAAIxD,MAAM+C,QAAQS,GAChB,OAAOA,EAAM0B,IAAI+E,GACZ,GAAIzG,GAA0B,iBAAVA,EAAoB,CAC7C,IAAI0F,EAAM,CAAC,EACX,IAAK,IAAIlG,KAAOQ,EACd0F,EAAIlG,GAAOiH,EAAMzG,EAAMR,IAEzB,OAAOkG,CACT,CACE,OAAO1F,CAEX,CAGA,IAAIoH,EAAQhB,EAAY,KAAM,CAC5BS,KAAM,MAGR,SAASK,EAAab,GAEpB,IADA,IAAIX,EAAM,GACHW,GACLX,EAAI2B,QAAQhB,GACZA,EAASA,EAAOiB,OAElB,OAAO5B,CACT,CAEA,SAASsB,EACPO,EACAC,GAEA,IAAIX,EAAOU,EAAIV,KACXvE,EAAQiF,EAAIjF,WAAsB,IAAVA,IAAmBA,EAAQ,CAAC,GACxD,IAAIgC,EAAOiD,EAAIjD,KAGf,YAHmC,IAATA,IAAkBA,EAAO,KAG3CuC,GAAQ,MADAW,GAAmBxB,GACF1D,GAASgC,CAC5C,CAEA,SAASmD,EAAalG,EAAGC,EAAGkG,GAC1B,OAAIlG,IAAM4F,EACD7F,IAAMC,IACHA,IAEDD,EAAEsF,MAAQrF,EAAEqF,KACdtF,EAAEsF,KAAK1F,QAAQgF,EAAiB,MAAQ3E,EAAEqF,KAAK1F,QAAQgF,EAAiB,MAAQuB,GACrFnG,EAAE+C,OAAS9C,EAAE8C,MACbqD,EAAcpG,EAAEe,MAAOd,EAAEc,WAClBf,EAAE3F,OAAQ4F,EAAE5F,OAEnB2F,EAAE3F,OAAS4F,EAAE5F,OACZ8L,GACCnG,EAAE+C,OAAS9C,EAAE8C,MACfqD,EAAcpG,EAAEe,MAAOd,EAAEc,QACzBqF,EAAcpG,EAAEuF,OAAQtF,EAAEsF,SAMhC,CAEA,SAASa,EAAepG,EAAGC,GAKzB,QAJW,IAAND,IAAeA,EAAI,CAAC,QACd,IAANC,IAAeA,EAAI,CAAC,IAGpBD,IAAMC,EAAK,OAAOD,IAAMC,EAC7B,IAAIoG,EAAQzN,OAAO+G,KAAKK,GAAGD,OACvBuG,EAAQ1N,OAAO+G,KAAKM,GAAGF,OAC3B,OAAIsG,EAAMtL,SAAWuL,EAAMvL,QAGpBsL,EAAME,OAAM,SAAUtI,EAAKpD,GAChC,IAAI2L,EAAOxG,EAAE/B,GAEb,GADWqI,EAAMzL,KACJoD,EAAO,OAAO,EAC3B,IAAIwI,EAAOxG,EAAEhC,GAEb,OAAY,MAARuI,GAAwB,MAARC,EAAuBD,IAASC,EAEhC,iBAATD,GAAqC,iBAATC,EAC9BL,EAAcI,EAAMC,GAEtBxC,OAAOuC,KAAUvC,OAAOwC,EACjC,GACF,CAqBA,SAASC,EAAoBtB,GAC3B,IAAK,IAAIvK,EAAI,EAAGA,EAAIuK,EAAMM,QAAQ3K,OAAQF,IAAK,CAC7C,IAAIiK,EAASM,EAAMM,QAAQ7K,GAC3B,IAAK,IAAIR,KAAQyK,EAAO6B,UAAW,CACjC,IAAIC,EAAW9B,EAAO6B,UAAUtM,GAC5BwM,EAAM/B,EAAOgC,WAAWzM,GAC5B,GAAKuM,GAAaC,EAAlB,QACO/B,EAAOgC,WAAWzM,GACzB,IAAK,IAAI0M,EAAM,EAAGA,EAAMF,EAAI9L,OAAQgM,IAC7BH,EAASI,mBAAqBH,EAAIE,GAAKH,EAHZ,CAKpC,CACF,CACF,CAEA,IAAIK,GAAO,CACT5M,KAAM,aACN6M,YAAY,EACZC,MAAO,CACL9M,KAAM,CACJ+M,KAAMnD,OACNoD,QAAS,YAGbC,OAAQ,SAAiBC,EAAGvB,GAC1B,IAAImB,EAAQnB,EAAImB,MACZK,EAAWxB,EAAIwB,SACfzB,EAASC,EAAID,OACb0B,EAAOzB,EAAIyB,KAGfA,EAAKC,YAAa,EAalB,IATA,IAAIC,EAAI5B,EAAO6B,eACXvN,EAAO8M,EAAM9M,KACb+K,EAAQW,EAAO8B,OACfC,EAAQ/B,EAAOgC,mBAAqBhC,EAAOgC,iBAAmB,CAAC,GAI/DC,EAAQ,EACRC,GAAW,EACRlC,GAAUA,EAAOmC,cAAgBnC,GAAQ,CAC9C,IAAIoC,EAAYpC,EAAOqC,OAASrC,EAAOqC,OAAOX,KAAO,CAAC,EAClDU,EAAUT,YACZM,IAEEG,EAAUE,WAAatC,EAAOuC,iBAAmBvC,EAAOwC,YAC1DN,GAAW,GAEblC,EAASA,EAAOyC,OAClB,CAIA,GAHAf,EAAKgB,gBAAkBT,EAGnBC,EAAU,CACZ,IAAIS,EAAaZ,EAAMzN,GACnBsO,EAAkBD,GAAcA,EAAWE,UAC/C,OAAID,GAGED,EAAWG,aACbC,GAAgBH,EAAiBlB,EAAMiB,EAAWtD,MAAOsD,EAAWG,aAE/DlB,EAAEgB,EAAiBlB,EAAMD,IAGzBG,GAEX,CAEA,IAAIjC,EAAUN,EAAMM,QAAQsC,GACxBY,EAAYlD,GAAWA,EAAQ7I,WAAWxC,GAG9C,IAAKqL,IAAYkD,EAEf,OADAd,EAAMzN,GAAQ,KACPsN,IAITG,EAAMzN,GAAQ,CAAEuO,UAAWA,GAI3BnB,EAAKsB,sBAAwB,SAAUC,EAAIxE,GAEzC,IAAIyE,EAAUvD,EAAQiB,UAAUtM,IAE7BmK,GAAOyE,IAAYD,IAClBxE,GAAOyE,IAAYD,KAErBtD,EAAQiB,UAAUtM,GAAQmK,EAE9B,GAIEiD,EAAKyB,OAASzB,EAAKyB,KAAO,CAAC,IAAIC,SAAW,SAAU5B,EAAG6B,GACvD1D,EAAQiB,UAAUtM,GAAQ+O,EAAMC,iBAClC,EAIA5B,EAAKyB,KAAKI,KAAO,SAAUF,GACrBA,EAAM3B,KAAKY,WACbe,EAAMC,mBACND,EAAMC,oBAAsB3D,EAAQiB,UAAUtM,KAE9CqL,EAAQiB,UAAUtM,GAAQ+O,EAAMC,mBAMlC3C,EAAmBtB,EACrB,EAEA,IAAIyD,EAAcnD,EAAQyB,OAASzB,EAAQyB,MAAM9M,GAUjD,OARIwO,IACFpF,EAAOqE,EAAMzN,GAAO,CAClB+K,MAAOA,EACPyD,YAAaA,IAEfC,GAAgBF,EAAWnB,EAAMrC,EAAOyD,IAGnClB,EAAEiB,EAAWnB,EAAMD,EAC5B,GAGF,SAASsB,GAAiBF,EAAWnB,EAAMrC,EAAOyD,GAEhD,IAAIU,EAAc9B,EAAKN,MAezB,SAAuB/B,EAAOoE,GAC5B,cAAeA,GACb,IAAK,YACH,OACF,IAAK,SACH,OAAOA,EACT,IAAK,WACH,OAAOA,EAAOpE,GAChB,IAAK,UACH,OAAOoE,EAASpE,EAAMG,YAAS1J,EAUrC,CAlCiC4N,CAAarE,EAAOyD,GACnD,GAAIU,EAAa,CAEfA,EAAc9B,EAAKN,MAAQ1D,EAAO,CAAC,EAAG8F,GAEtC,IAAIG,EAAQjC,EAAKiC,MAAQjC,EAAKiC,OAAS,CAAC,EACxC,IAAK,IAAIzL,KAAOsL,EACTX,EAAUzB,OAAWlJ,KAAO2K,EAAUzB,QACzCuC,EAAMzL,GAAOsL,EAAYtL,UAClBsL,EAAYtL,GAGzB,CACF,CAyBA,SAAS0L,GACPC,EACAC,EACAC,GAEA,IAAIC,EAAYH,EAASI,OAAO,GAChC,GAAkB,MAAdD,EACF,OAAOH,EAGT,GAAkB,MAAdG,GAAmC,MAAdA,EACvB,OAAOF,EAAOD,EAGhB,IAAIK,EAAQJ,EAAK/M,MAAM,KAKlBgN,GAAWG,EAAMA,EAAMlP,OAAS,IACnCkP,EAAMC,MAKR,IADA,IAAIC,EAAWP,EAAShK,QAAQ,MAAO,IAAI9C,MAAM,KACxCjC,EAAI,EAAGA,EAAIsP,EAASpP,OAAQF,IAAK,CACxC,IAAIuP,EAAUD,EAAStP,GACP,OAAZuP,EACFH,EAAMC,MACe,MAAZE,GACTH,EAAMpQ,KAAKuQ,EAEf,CAOA,MAJiB,KAAbH,EAAM,IACRA,EAAMnE,QAAQ,IAGTmE,EAAMjN,KAAK,IACpB,CAyBA,SAASqN,GAAW/E,GAClB,OAAOA,EAAK1F,QAAQ,gBAAiB,IACvC,CAEA,IAAI0K,GAAUrP,MAAM+C,SAAW,SAAUuM,GACvC,MAA8C,kBAAvC3R,OAAOC,UAAUkG,SAASxE,KAAKgQ,EACxC,EAKIC,GAmZJ,SAASC,EAAcnF,EAAM3F,EAAMN,GAQjC,OAPKiL,GAAQ3K,KACXN,EAAkCM,GAAQN,EAC1CM,EAAO,IAGTN,EAAUA,GAAW,CAAC,EAElBiG,aAAgB5I,OAlJtB,SAAyB4I,EAAM3F,GAE7B,IAAI+K,EAASpF,EAAKqF,OAAOrN,MAAM,aAE/B,GAAIoN,EACF,IAAK,IAAI7P,EAAI,EAAGA,EAAI6P,EAAO3P,OAAQF,IACjC8E,EAAK9F,KAAK,CACRQ,KAAMQ,EACN9B,OAAQ,KACR6R,UAAW,KACXC,UAAU,EACVC,QAAQ,EACRC,SAAS,EACTC,UAAU,EACVC,QAAS,OAKf,OAAOC,GAAW5F,EAAM3F,EAC1B,CA+HWwL,CAAe7F,EAA4B,GAGhDgF,GAAQhF,GAxHd,SAAwBA,EAAM3F,EAAMN,GAGlC,IAFA,IAAIiF,EAAQ,GAEHzJ,EAAI,EAAGA,EAAIyK,EAAKvK,OAAQF,IAC/ByJ,EAAMzK,KAAK4Q,EAAanF,EAAKzK,GAAI8E,EAAMN,GAASsL,QAKlD,OAAOO,GAFM,IAAIxO,OAAO,MAAQ4H,EAAMtH,KAAK,KAAO,IAAKoO,GAAM/L,IAEnCM,EAC5B,CA+GW0L,CAAoC,EAA8B,EAAQhM,GArGrF,SAAyBiG,EAAM3F,EAAMN,GACnC,OAAOiM,GAAe,GAAMhG,EAAMjG,GAAUM,EAAMN,EACpD,CAsGSkM,CAAqC,EAA8B,EAAQlM,EACpF,EAnaImM,GAAU,GAEVC,GAAqBC,GACrBC,GAAmBL,GAOnBM,GAAc,IAAIlP,OAAO,CAG3B,UAOA,0GACAM,KAAK,KAAM,KASb,SAAS,GAAO8G,EAAKzE,GAQnB,IAPA,IAKI8E,EALA9G,EAAS,GACTY,EAAM,EACNsE,EAAQ,EACR+C,EAAO,GACPuG,EAAmBxM,GAAWA,EAAQuL,WAAa,IAGf,OAAhCzG,EAAMyH,GAAYnM,KAAKqE,KAAe,CAC5C,IAAIgI,EAAI3H,EAAI,GACR4H,EAAU5H,EAAI,GACd6H,EAAS7H,EAAI5B,MAKjB,GAJA+C,GAAQxB,EAAItJ,MAAM+H,EAAOyJ,GACzBzJ,EAAQyJ,EAASF,EAAE/Q,OAGfgR,EACFzG,GAAQyG,EAAQ,OADlB,CAKA,IAAIE,EAAOnI,EAAIvB,GACXxJ,EAASoL,EAAI,GACb9J,EAAO8J,EAAI,GACX+H,EAAU/H,EAAI,GACdgI,EAAQhI,EAAI,GACZiI,EAAWjI,EAAI,GACf6G,EAAW7G,EAAI,GAGfmB,IACFjI,EAAOxD,KAAKyL,GACZA,EAAO,IAGT,IAAIyF,EAAoB,MAAVhS,GAA0B,MAARkT,GAAgBA,IAASlT,EACrD+R,EAAsB,MAAbsB,GAAiC,MAAbA,EAC7BvB,EAAwB,MAAbuB,GAAiC,MAAbA,EAC/BxB,EAAYzG,EAAI,IAAM0H,EACtBZ,EAAUiB,GAAWC,EAEzB9O,EAAOxD,KAAK,CACVQ,KAAMA,GAAQ4D,IACdlF,OAAQA,GAAU,GAClB6R,UAAWA,EACXC,SAAUA,EACVC,OAAQA,EACRC,QAASA,EACTC,WAAYA,EACZC,QAASA,EAAUoB,GAAYpB,GAAYD,EAAW,KAAO,KAAOsB,GAAa1B,GAAa,OA9BhG,CAgCF,CAYA,OATIrI,EAAQuB,EAAI/I,SACduK,GAAQxB,EAAIyI,OAAOhK,IAIjB+C,GACFjI,EAAOxD,KAAKyL,GAGPjI,CACT,CAmBA,SAASmP,GAA0B1I,GACjC,OAAO2I,UAAU3I,GAAKlE,QAAQ,WAAW,SAAUgE,GACjD,MAAO,IAAMA,EAAE9E,WAAW,GAAGC,SAAS,IAAIC,aAC5C,GACF,CAiBA,SAAS0M,GAAkBrO,EAAQgC,GAKjC,IAHA,IAAIqN,EAAU,IAAIzR,MAAMoC,EAAOtC,QAGtBF,EAAI,EAAGA,EAAIwC,EAAOtC,OAAQF,IACR,iBAAdwC,EAAOxC,KAChB6R,EAAQ7R,GAAK,IAAI6B,OAAO,OAASW,EAAOxC,GAAGoQ,QAAU,KAAMG,GAAM/L,KAIrE,OAAO,SAAUqF,EAAKiI,GAMpB,IALA,IAAIrH,EAAO,GACPmC,EAAO/C,GAAO,CAAC,EAEftF,GADUuN,GAAQ,CAAC,GACFC,OAASJ,GAA2B7N,mBAEhD9D,EAAI,EAAGA,EAAIwC,EAAOtC,OAAQF,IAAK,CACtC,IAAI2B,EAAQa,EAAOxC,GAEnB,GAAqB,iBAAV2B,EAAX,CAMA,IACI4N,EADA3L,EAAQgJ,EAAKjL,EAAMnC,MAGvB,GAAa,MAAToE,EAAe,CACjB,GAAIjC,EAAMqO,SAAU,CAEdrO,EAAMuO,UACRzF,GAAQ9I,EAAMzD,QAGhB,QACF,CACE,MAAM,IAAIU,UAAU,aAAe+C,EAAMnC,KAAO,kBAEpD,CAEA,GAAIiQ,GAAQ7L,GAAZ,CACE,IAAKjC,EAAMsO,OACT,MAAM,IAAIrR,UAAU,aAAe+C,EAAMnC,KAAO,kCAAoCwS,KAAK1K,UAAU1D,GAAS,KAG9G,GAAqB,IAAjBA,EAAM1D,OAAc,CACtB,GAAIyB,EAAMqO,SACR,SAEA,MAAM,IAAIpR,UAAU,aAAe+C,EAAMnC,KAAO,oBAEpD,CAEA,IAAK,IAAI0B,EAAI,EAAGA,EAAI0C,EAAM1D,OAAQgB,IAAK,CAGrC,GAFAqO,EAAUhL,EAAOX,EAAM1C,KAElB2Q,EAAQ7R,GAAG2G,KAAK4I,GACnB,MAAM,IAAI3Q,UAAU,iBAAmB+C,EAAMnC,KAAO,eAAiBmC,EAAMyO,QAAU,oBAAsB4B,KAAK1K,UAAUiI,GAAW,KAGvI9E,IAAe,IAANvJ,EAAUS,EAAMzD,OAASyD,EAAMoO,WAAaR,CACvD,CAGF,KAxBA,CA4BA,GAFAA,EAAU5N,EAAMwO,SA5EbyB,UA4EuChO,GA5ExBmB,QAAQ,SAAS,SAAUgE,GAC/C,MAAO,IAAMA,EAAE9E,WAAW,GAAGC,SAAS,IAAIC,aAC5C,IA0EuDI,EAAOX,IAErDiO,EAAQ7R,GAAG2G,KAAK4I,GACnB,MAAM,IAAI3Q,UAAU,aAAe+C,EAAMnC,KAAO,eAAiBmC,EAAMyO,QAAU,oBAAsBb,EAAU,KAGnH9E,GAAQ9I,EAAMzD,OAASqR,CARvB,CA1CA,MAHE9E,GAAQ9I,CAsDZ,CAEA,OAAO8I,CACT,CACF,CAQA,SAASgH,GAAcxI,GACrB,OAAOA,EAAIlE,QAAQ,6BAA8B,OACnD,CAQA,SAASyM,GAAaF,GACpB,OAAOA,EAAMvM,QAAQ,gBAAiB,OACxC,CASA,SAASsL,GAAY4B,EAAInN,GAEvB,OADAmN,EAAGnN,KAAOA,EACHmN,CACT,CAQA,SAAS1B,GAAO/L,GACd,OAAOA,GAAWA,EAAQ0N,UAAY,GAAK,GAC7C,CAuEA,SAASzB,GAAgBjO,EAAQsC,EAAMN,GAChCiL,GAAQ3K,KACXN,EAAkCM,GAAQN,EAC1CM,EAAO,IAUT,IALA,IAAIL,GAFJD,EAAUA,GAAW,CAAC,GAEDC,OACjB0N,GAAsB,IAAhB3N,EAAQ2N,IACd5H,EAAQ,GAGHvK,EAAI,EAAGA,EAAIwC,EAAOtC,OAAQF,IAAK,CACtC,IAAI2B,EAAQa,EAAOxC,GAEnB,GAAqB,iBAAV2B,EACT4I,GAASkH,GAAa9P,OACjB,CACL,IAAIzD,EAASuT,GAAa9P,EAAMzD,QAC5BmT,EAAU,MAAQ1P,EAAMyO,QAAU,IAEtCtL,EAAK9F,KAAK2C,GAENA,EAAMsO,SACRoB,GAAW,MAAQnT,EAASmT,EAAU,MAaxC9G,GANI8G,EAJA1P,EAAMqO,SACHrO,EAAMuO,QAGChS,EAAS,IAAMmT,EAAU,KAFzB,MAAQnT,EAAS,IAAMmT,EAAU,MAKnCnT,EAAS,IAAMmT,EAAU,GAIvC,CACF,CAEA,IAAItB,EAAY0B,GAAajN,EAAQuL,WAAa,KAC9CqC,EAAoB7H,EAAM5K,OAAOoQ,EAAU7P,UAAY6P,EAkB3D,OAZKtL,IACH8F,GAAS6H,EAAoB7H,EAAM5K,MAAM,GAAIoQ,EAAU7P,QAAUqK,GAAS,MAAQwF,EAAY,WAI9FxF,GADE4H,EACO,IAIA1N,GAAU2N,EAAoB,GAAK,MAAQrC,EAAY,MAG3DM,GAAW,IAAIxO,OAAO,IAAM0I,EAAOgG,GAAM/L,IAAWM,EAC7D,CAgCA6K,GAAe1J,MAAQ0K,GACvBhB,GAAe0C,QA9Tf,SAAkBpJ,EAAKzE,GACrB,OAAOqM,GAAiB,GAAM5H,EAAKzE,GAAUA,EAC/C,EA6TAmL,GAAekB,iBAAmBD,GAClCjB,GAAec,eAAiBK,GAKhC,IAAIwB,GAAqBvU,OAAOqB,OAAO,MAEvC,SAASmT,GACP9H,EACAC,EACA8H,GAEA9H,EAASA,GAAU,CAAC,EACpB,IACE,IAAI+H,EACFH,GAAmB7H,KAClB6H,GAAmB7H,GAAQkF,GAAe0C,QAAQ5H,IAMrD,MAFgC,iBAArBC,EAAOgI,YAA0BhI,EAAO,GAAKA,EAAOgI,WAExDD,EAAO/H,EAAQ,CAAEqH,QAAQ,GAClC,CAAE,MAAOzH,GAKP,MAAO,EACT,CAAE,eAEOI,EAAO,EAChB,CACF,CAIA,SAASiI,GACPC,EACAxE,EACAa,EACA7E,GAEA,IAAIgH,EAAsB,iBAARwB,EAAmB,CAAEnI,KAAMmI,GAAQA,EAErD,GAAIxB,EAAKyB,YACP,OAAOzB,EACF,GAAIA,EAAK5R,KAAM,CAEpB,IAAIkL,GADJ0G,EAAOxI,EAAO,CAAC,EAAGgK,IACAlI,OAIlB,OAHIA,GAA4B,iBAAXA,IACnB0G,EAAK1G,OAAS9B,EAAO,CAAC,EAAG8B,IAEpB0G,CACT,CAGA,IAAKA,EAAK3G,MAAQ2G,EAAK1G,QAAU0D,EAAS,EACxCgD,EAAOxI,EAAO,CAAC,EAAGwI,IACbyB,aAAc,EACnB,IAAIC,EAAWlK,EAAOA,EAAO,CAAC,EAAGwF,EAAQ1D,QAAS0G,EAAK1G,QACvD,GAAI0D,EAAQ5O,KACV4R,EAAK5R,KAAO4O,EAAQ5O,KACpB4R,EAAK1G,OAASoI,OACT,GAAI1E,EAAQvD,QAAQ3K,OAAQ,CACjC,IAAI6S,EAAU3E,EAAQvD,QAAQuD,EAAQvD,QAAQ3K,OAAS,GAAGuK,KAC1D2G,EAAK3G,KAAO8H,GAAWQ,EAASD,EAAsB1E,EAAY,KACpE,CAGA,OAAOgD,CACT,CAEA,IAAI4B,EAnhBN,SAAoBvI,GAClB,IAAIvC,EAAO,GACPhC,EAAQ,GAER+M,EAAYxI,EAAK3H,QAAQ,KACzBmQ,GAAa,IACf/K,EAAOuC,EAAK9K,MAAMsT,GAClBxI,EAAOA,EAAK9K,MAAM,EAAGsT,IAGvB,IAAIC,EAAazI,EAAK3H,QAAQ,KAM9B,OALIoQ,GAAc,IAChBhN,EAAQuE,EAAK9K,MAAMuT,EAAa,GAChCzI,EAAOA,EAAK9K,MAAM,EAAGuT,IAGhB,CACLzI,KAAMA,EACNvE,MAAOA,EACPgC,KAAMA,EAEV,CA8fmBiL,CAAU/B,EAAK3G,MAAQ,IACpC2I,EAAYhF,GAAWA,EAAQ3D,MAAS,IACxCA,EAAOuI,EAAWvI,KAClBqE,GAAYkE,EAAWvI,KAAM2I,EAAUnE,GAAUmC,EAAKnC,QACtDmE,EAEAlN,EAv9BN,SACEA,EACAmN,EACAC,QAEoB,IAAfD,IAAwBA,EAAa,CAAC,GAE3C,IACIE,EADAtN,EAAQqN,GAAejK,EAE3B,IACEkK,EAActN,EAAMC,GAAS,GAC/B,CAAE,MAAOoE,GAEPiJ,EAAc,CAAC,CACjB,CACA,IAAK,IAAInQ,KAAOiQ,EAAY,CAC1B,IAAIzP,EAAQyP,EAAWjQ,GACvBmQ,EAAYnQ,GAAOhD,MAAM+C,QAAQS,GAC7BA,EAAM0B,IAAI6D,GACVA,EAAoBvF,EAC1B,CACA,OAAO2P,CACT,CAi8BcC,CACVR,EAAW9M,MACXkL,EAAKlL,MACLkE,GAAUA,EAAO5F,QAAQ6E,YAGvBnB,EAAOkJ,EAAKlJ,MAAQ8K,EAAW9K,KAKnC,OAJIA,GAA2B,MAAnBA,EAAKiH,OAAO,KACtBjH,EAAO,IAAMA,GAGR,CACL2K,aAAa,EACbpI,KAAMA,EACNvE,MAAOA,EACPgC,KAAMA,EAEV,CAKA,IA4NIuL,GAzNAC,GAAO,WAAa,EAMpBC,GAAO,CACTnU,KAAM,aACN8M,MAAO,CACLsH,GAAI,CACFrH,KAbQ,CAACnD,OAAQrL,QAcjB8V,UAAU,GAEZC,IAAK,CACHvH,KAAMnD,OACNoD,QAAS,KAEXuH,OAAQ1M,QACR2M,MAAO3M,QACP4M,UAAW5M,QACX4H,OAAQ5H,QACRtC,QAASsC,QACT6M,YAAa9K,OACb+K,iBAAkB/K,OAClBgL,iBAAkB,CAChB7H,KAAMnD,OACNoD,QAAS,QAEX7N,MAAO,CACL4N,KA/BW,CAACnD,OAAQhJ,OAgCpBoM,QAAS,UAGbC,OAAQ,SAAiBK,GACvB,IAAIuH,EAAW7V,KAEX4L,EAAS5L,KAAK8V,QACdlG,EAAU5P,KAAKwO,OACf7B,EAAMf,EAAOmK,QACf/V,KAAKoV,GACLxF,EACA5P,KAAKyQ,QAEH/E,EAAWiB,EAAIjB,SACfK,EAAQY,EAAIZ,MACZiK,EAAOrJ,EAAIqJ,KAEXC,EAAU,CAAC,EACXC,EAAoBtK,EAAO5F,QAAQmQ,gBACnCC,EAAyBxK,EAAO5F,QAAQqQ,qBAExCC,EACmB,MAArBJ,EAA4B,qBAAuBA,EACjDK,EACwB,MAA1BH,EACI,2BACAA,EACFV,EACkB,MAApB1V,KAAK0V,YAAsBY,EAAsBtW,KAAK0V,YACpDC,EACuB,MAAzB3V,KAAK2V,iBACDY,EACAvW,KAAK2V,iBAEPa,EAAgBzK,EAAMJ,eACtBH,EAAY,KAAM2I,GAAkBpI,EAAMJ,gBAAiB,KAAMC,GACjEG,EAEJkK,EAAQN,GAAoB9I,EAAY+C,EAAS4G,EAAexW,KAAKyV,WACrEQ,EAAQP,GAAe1V,KAAKwV,OAASxV,KAAKyV,UACtCQ,EAAQN,GAn2BhB,SAA0B/F,EAAS6G,GACjC,OAGQ,IAFN7G,EAAQ3D,KAAK1F,QAAQgF,EAAiB,KAAKjH,QACzCmS,EAAOxK,KAAK1F,QAAQgF,EAAiB,SAErCkL,EAAO/M,MAAQkG,EAAQlG,OAAS+M,EAAO/M,OAK7C,SAAwBkG,EAAS6G,GAC/B,IAAK,IAAI7R,KAAO6R,EACd,KAAM7R,KAAOgL,GACX,OAAO,EAGX,OAAO,CACT,CAXI8G,CAAc9G,EAAQlI,MAAO+O,EAAO/O,MAExC,CA41BQiP,CAAgB/G,EAAS4G,GAE7B,IAAIZ,EAAmBK,EAAQN,GAAoB3V,KAAK4V,iBAAmB,KAEvEgB,EAAU,SAAU9K,GAClB+K,GAAW/K,KACT+J,EAAStP,QACXqF,EAAOrF,QAAQmF,EAAUwJ,IAEzBtJ,EAAOpL,KAAKkL,EAAUwJ,IAG5B,EAEIvS,EAAK,CAAEmU,MAAOD,IACdjV,MAAM+C,QAAQ3E,KAAKG,OACrBH,KAAKG,MAAM4K,SAAQ,SAAUe,GAC3BnJ,EAAGmJ,GAAK8K,CACV,IAEAjU,EAAG3C,KAAKG,OAASyW,EAGnB,IAAIxI,EAAO,CAAE2I,MAAOd,GAEhBe,GACDhX,KAAKiX,aAAaC,YACnBlX,KAAKiX,aAAajJ,SAClBhO,KAAKiX,aAAajJ,QAAQ,CACxBgI,KAAMA,EACNjK,MAAOA,EACPoL,SAAUP,EACVQ,SAAUnB,EAAQP,GAClB2B,cAAepB,EAAQN,KAG3B,GAAIqB,EAAY,CAKd,GAA0B,IAAtBA,EAAWtV,OACb,OAAOsV,EAAW,GACb,GAAIA,EAAWtV,OAAS,IAAMsV,EAAWtV,OAO9C,OAA6B,IAAtBsV,EAAWtV,OAAe4M,IAAMA,EAAE,OAAQ,CAAC,EAAG0I,EAEzD,CAmBA,GAAiB,MAAbhX,KAAKsV,IACPlH,EAAKzL,GAAKA,EACVyL,EAAKiC,MAAQ,CAAE2F,KAAMA,EAAM,eAAgBJ,OACtC,CAEL,IAAIjP,EAAI2Q,GAAWtX,KAAKuX,OAAOvJ,SAC/B,GAAIrH,EAAG,CAELA,EAAE6Q,UAAW,EACb,IAAIC,EAAS9Q,EAAEyH,KAAOhE,EAAO,CAAC,EAAGzD,EAAEyH,MAGnC,IAAK,IAAIjO,KAFTsX,EAAM9U,GAAK8U,EAAM9U,IAAM,CAAC,EAEN8U,EAAM9U,GAAI,CAC1B,IAAI+U,EAAYD,EAAM9U,GAAGxC,GACrBA,KAASwC,IACX8U,EAAM9U,GAAGxC,GAASyB,MAAM+C,QAAQ+S,GAAaA,EAAY,CAACA,GAE9D,CAEA,IAAK,IAAIC,KAAWhV,EACdgV,KAAWF,EAAM9U,GAEnB8U,EAAM9U,GAAGgV,GAASnX,KAAKmC,EAAGgV,IAE1BF,EAAM9U,GAAGgV,GAAWf,EAIxB,IAAIgB,EAAUjR,EAAEyH,KAAKiC,MAAQjG,EAAO,CAAC,EAAGzD,EAAEyH,KAAKiC,OAC/CuH,EAAO5B,KAAOA,EACd4B,EAAO,gBAAkBhC,CAC3B,MAEExH,EAAKzL,GAAKA,CAEd,CAEA,OAAO2L,EAAEtO,KAAKsV,IAAKlH,EAAMpO,KAAKuX,OAAOvJ,QACvC,GAGF,SAAS6I,GAAY/K,GAEnB,KAAIA,EAAE+L,SAAW/L,EAAEgM,QAAUhM,EAAEiM,SAAWjM,EAAEkM,UAExClM,EAAEmM,uBAEWzV,IAAbsJ,EAAEoM,QAAqC,IAAbpM,EAAEoM,QAAhC,CAEA,GAAIpM,EAAEqM,eAAiBrM,EAAEqM,cAAcC,aAAc,CACnD,IAAI3B,EAAS3K,EAAEqM,cAAcC,aAAa,UAC1C,GAAI,cAAcjQ,KAAKsO,GAAW,MACpC,CAKA,OAHI3K,EAAEuM,gBACJvM,EAAEuM,kBAEG,CAVgD,CAWzD,CAEA,SAASf,GAAYnJ,GACnB,GAAIA,EAEF,IADA,IAAImK,EACK9W,EAAI,EAAGA,EAAI2M,EAASzM,OAAQF,IAAK,CAExC,GAAkB,OADlB8W,EAAQnK,EAAS3M,IACP8T,IACR,OAAOgD,EAET,GAAIA,EAAMnK,WAAamK,EAAQhB,GAAWgB,EAAMnK,WAC9C,OAAOmK,CAEX,CAEJ,CAsDA,IAAIC,GAA8B,oBAAXC,OAIvB,SAASC,GACPC,EACAC,EACAC,EACAC,EACAC,GAGA,IAAIC,EAAWJ,GAAe,GAE1BK,EAAUJ,GAAcrZ,OAAOqB,OAAO,MAEtCqY,EAAUJ,GAActZ,OAAOqB,OAAO,MAE1C8X,EAAO3N,SAAQ,SAAUgB,GACvBmN,GAAeH,EAAUC,EAASC,EAASlN,EAAO+M,EACpD,IAGA,IAAK,IAAItX,EAAI,EAAGC,EAAIsX,EAASrX,OAAQF,EAAIC,EAAGD,IACtB,MAAhBuX,EAASvX,KACXuX,EAASvY,KAAKuY,EAASI,OAAO3X,EAAG,GAAG,IACpCC,IACAD,KAgBJ,MAAO,CACLuX,SAAUA,EACVC,QAASA,EACTC,QAASA,EAEb,CAEA,SAASC,GACPH,EACAC,EACAC,EACAlN,EACAW,EACA0M,GAEA,IAAInN,EAAOF,EAAME,KACbjL,EAAO+K,EAAM/K,KAmBbqY,EACFtN,EAAMsN,qBAAuB,CAAC,EAC5BC,EA2HN,SACErN,EACAS,EACAzG,GAGA,OADKA,IAAUgG,EAAOA,EAAK1F,QAAQ,MAAO,KAC1B,MAAZ0F,EAAK,IACK,MAAVS,EAD0BT,EAEvB+E,GAAYtE,EAAW,KAAI,IAAMT,EAC1C,CApIuBsN,CAActN,EAAMS,EAAQ2M,EAAoBpT,QAElC,kBAAxB8F,EAAMyN,gBACfH,EAAoB3F,UAAY3H,EAAMyN,eAGxC,IAAI/N,EAAS,CACXQ,KAAMqN,EACNG,MAAOC,GAAkBJ,EAAgBD,GACzC7V,WAAYuI,EAAMvI,YAAc,CAAEwK,QAASjC,EAAMwD,WACjDoK,MAAO5N,EAAM4N,MACc,iBAAhB5N,EAAM4N,MACX,CAAC5N,EAAM4N,OACP5N,EAAM4N,MACR,GACJrM,UAAW,CAAC,EACZG,WAAY,CAAC,EACbzM,KAAMA,EACN0L,OAAQA,EACR0M,QAASA,EACTQ,SAAU7N,EAAM6N,SAChBC,YAAa9N,EAAM8N,YACnB7N,KAAMD,EAAMC,MAAQ,CAAC,EACrB8B,MACiB,MAAf/B,EAAM+B,MACF,CAAC,EACD/B,EAAMvI,WACJuI,EAAM+B,MACN,CAAEE,QAASjC,EAAM+B,QAoC3B,GAjCI/B,EAAMoC,UAoBRpC,EAAMoC,SAASpD,SAAQ,SAAUuN,GAC/B,IAAIwB,EAAeV,EACfpI,GAAWoI,EAAU,IAAOd,EAAU,WACtC9V,EACJ0W,GAAeH,EAAUC,EAASC,EAASX,EAAO7M,EAAQqO,EAC5D,IAGGd,EAAQvN,EAAOQ,QAClB8M,EAASvY,KAAKiL,EAAOQ,MACrB+M,EAAQvN,EAAOQ,MAAQR,QAGLjJ,IAAhBuJ,EAAM4N,MAER,IADA,IAAII,EAAUnY,MAAM+C,QAAQoH,EAAM4N,OAAS5N,EAAM4N,MAAQ,CAAC5N,EAAM4N,OACvDnY,EAAI,EAAGA,EAAIuY,EAAQrY,SAAUF,EAAG,CAWvC,IAAIwY,EAAa,CACf/N,KAXU8N,EAAQvY,GAYlB2M,SAAUpC,EAAMoC,UAElB+K,GACEH,EACAC,EACAC,EACAe,EACAtN,EACAjB,EAAOQ,MAAQ,IAEnB,CAGEjL,IACGiY,EAAQjY,KACXiY,EAAQjY,GAAQyK,GAStB,CAEA,SAASiO,GACPzN,EACAoN,GAaA,OAXYlI,GAAelF,EAAM,GAAIoN,EAYvC,CAiBA,SAASY,GACPvB,EACA9M,GAEA,IAAIe,EAAM8L,GAAeC,GACrBK,EAAWpM,EAAIoM,SACfC,EAAUrM,EAAIqM,QACdC,EAAUtM,EAAIsM,QA4BlB,SAAShV,EACPmQ,EACA8F,EACAvO,GAEA,IAAID,EAAWyI,GAAkBC,EAAK8F,GAAc,EAAOtO,GACvD5K,EAAO0K,EAAS1K,KAEpB,GAAIA,EAAM,CACR,IAAIyK,EAASwN,EAAQjY,GAIrB,IAAKyK,EAAU,OAAO0O,EAAa,KAAMzO,GACzC,IAAI0O,EAAa3O,EAAOgO,MAAMnT,KAC3BgD,QAAO,SAAU1E,GAAO,OAAQA,EAAI4M,QAAU,IAC9C1K,KAAI,SAAUlC,GAAO,OAAOA,EAAI5D,IAAM,IAMzC,GAJ+B,iBAApB0K,EAASQ,SAClBR,EAASQ,OAAS,CAAC,GAGjBgO,GAA+C,iBAAxBA,EAAahO,OACtC,IAAK,IAAItH,KAAOsV,EAAahO,SACrBtH,KAAO8G,EAASQ,SAAWkO,EAAW9V,QAAQM,IAAQ,IAC1D8G,EAASQ,OAAOtH,GAAOsV,EAAahO,OAAOtH,IAMjD,OADA8G,EAASO,KAAO8H,GAAWtI,EAAOQ,KAAMP,EAASQ,QAC1CiO,EAAa1O,EAAQC,EAAUC,EACxC,CAAO,GAAID,EAASO,KAAM,CACxBP,EAASQ,OAAS,CAAC,EACnB,IAAK,IAAI1K,EAAI,EAAGA,EAAIuX,EAASrX,OAAQF,IAAK,CACxC,IAAIyK,EAAO8M,EAASvX,GAChB6Y,EAAWrB,EAAQ/M,GACvB,GAAIqO,GAAWD,EAASZ,MAAO/N,EAASO,KAAMP,EAASQ,QACrD,OAAOiO,EAAaE,EAAU3O,EAAUC,EAE5C,CACF,CAEA,OAAOwO,EAAa,KAAMzO,EAC5B,CAsFA,SAASyO,EACP1O,EACAC,EACAC,GAEA,OAAIF,GAAUA,EAAOmO,SAzFvB,SACEnO,EACAC,GAEA,IAAI6O,EAAmB9O,EAAOmO,SAC1BA,EAAuC,mBAArBW,EAClBA,EAAiB/O,EAAYC,EAAQC,EAAU,KAAME,IACrD2O,EAMJ,GAJwB,iBAAbX,IACTA,EAAW,CAAE3N,KAAM2N,KAGhBA,GAAgC,iBAAbA,EAMtB,OAAOO,EAAa,KAAMzO,GAG5B,IAAI+H,EAAKmG,EACL5Y,EAAOyS,EAAGzS,KACViL,EAAOwH,EAAGxH,KACVvE,EAAQgE,EAAShE,MACjBgC,EAAOgC,EAAShC,KAChBwC,EAASR,EAASQ,OAKtB,GAJAxE,EAAQ+L,EAAGhU,eAAe,SAAWgU,EAAG/L,MAAQA,EAChDgC,EAAO+J,EAAGhU,eAAe,QAAUgU,EAAG/J,KAAOA,EAC7CwC,EAASuH,EAAGhU,eAAe,UAAYgU,EAAGvH,OAASA,EAE/ClL,EAMF,OAJmBiY,EAAQjY,GAIpBiD,EAAM,CACXoQ,aAAa,EACbrT,KAAMA,EACN0G,MAAOA,EACPgC,KAAMA,EACNwC,OAAQA,QACP1J,EAAWkJ,GACT,GAAIO,EAAM,CAEf,IAAIsI,EAmFV,SAA4BtI,EAAMR,GAChC,OAAO6E,GAAYrE,EAAMR,EAAOiB,OAASjB,EAAOiB,OAAOT,KAAO,KAAK,EACrE,CArFoBuO,CAAkBvO,EAAMR,GAItC,OAAOxH,EAAM,CACXoQ,aAAa,EACbpI,KAJiB8H,GAAWQ,EAASrI,GAKrCxE,MAAOA,EACPgC,KAAMA,QACLlH,EAAWkJ,EAChB,CAIE,OAAOyO,EAAa,KAAMzO,EAE9B,CA2BWkO,CAASnO,EAAQE,GAAkBD,GAExCD,GAAUA,EAAO2N,QA3BvB,SACE3N,EACAC,EACA0N,GAEA,IACIqB,EAAexW,EAAM,CACvBoQ,aAAa,EACbpI,KAHgB8H,GAAWqF,EAAS1N,EAASQ,UAK/C,GAAIuO,EAAc,CAChB,IAAIpO,EAAUoO,EAAapO,QACvBqO,EAAgBrO,EAAQA,EAAQ3K,OAAS,GAE7C,OADAgK,EAASQ,OAASuO,EAAavO,OACxBiO,EAAaO,EAAehP,EACrC,CACA,OAAOyO,EAAa,KAAMzO,EAC5B,CAWWiO,CAAMlO,EAAQC,EAAUD,EAAO2N,SAEjC5N,EAAYC,EAAQC,EAAUC,EAAgBC,EACvD,CAEA,MAAO,CACL3H,MAAOA,EACP0W,SAxKF,SAAmBC,EAAe7O,GAChC,IAAIW,EAAmC,iBAAlBkO,EAA8B3B,EAAQ2B,QAAiBpY,EAE5EiW,GAAe,CAAC1M,GAAS6O,GAAgB7B,EAAUC,EAASC,EAASvM,GAGjEA,GAAUA,EAAOiN,MAAMjY,QACzB+W,GAEE/L,EAAOiN,MAAM7S,KAAI,SAAU6S,GAAS,MAAO,CAAG1N,KAAM0N,EAAOxL,SAAU,CAACpC,GAAW,IACjFgN,EACAC,EACAC,EACAvM,EAGN,EAyJEmO,UAvJF,WACE,OAAO9B,EAASjS,KAAI,SAAUmF,GAAQ,OAAO+M,EAAQ/M,EAAO,GAC9D,EAsJE6O,UA9KF,SAAoBpC,GAClBD,GAAeC,EAAQK,EAAUC,EAASC,EAC5C,EA8KF,CAEA,SAASqB,GACPb,EACAxN,EACAC,GAEA,IAAIuG,EAAIxG,EAAKhI,MAAMwV,GAEnB,IAAKhH,EACH,OAAO,EACF,IAAKvG,EACV,OAAO,EAGT,IAAK,IAAI1K,EAAI,EAAGa,EAAMoQ,EAAE/Q,OAAQF,EAAIa,IAAOb,EAAG,CAC5C,IAAIoD,EAAM6U,EAAMnT,KAAK9E,EAAI,GACrBoD,IAEFsH,EAAOtH,EAAI5D,MAAQ,aAA+B,iBAATyR,EAAEjR,GAAkB,EAAOiR,EAAEjR,IAAMiR,EAAEjR,GAElF,CAEA,OAAO,CACT,CASA,IAAIuZ,GACFxC,IAAaC,OAAOwC,aAAexC,OAAOwC,YAAYC,IAClDzC,OAAOwC,YACPE,KAEN,SAASC,KACP,OAAOJ,GAAKE,MAAMG,QAAQ,EAC5B,CAEA,IAAIC,GAAOF,KAEX,SAASG,KACP,OAAOD,EACT,CAEA,SAASE,GAAa3W,GACpB,OAAQyW,GAAOzW,CACjB,CAIA,IAAI4W,GAAgBjc,OAAOqB,OAAO,MAElC,SAAS6a,KAEH,sBAAuBjD,OAAOkD,UAChClD,OAAOkD,QAAQC,kBAAoB,UAOrC,IAAIC,EAAkBpD,OAAO9M,SAASmQ,SAAW,KAAOrD,OAAO9M,SAASoQ,KACpEC,EAAevD,OAAO9M,SAASsK,KAAKzP,QAAQqV,EAAiB,IAE7DI,EAAY5R,EAAO,CAAC,EAAGoO,OAAOkD,QAAQO,OAI1C,OAHAD,EAAUpX,IAAM0W,KAChB9C,OAAOkD,QAAQQ,aAAaF,EAAW,GAAID,GAC3CvD,OAAO2D,iBAAiB,WAAYC,IAC7B,WACL5D,OAAO6D,oBAAoB,WAAYD,GACzC,CACF,CAEA,SAASE,GACP1Q,EACAwJ,EACAmH,EACAC,GAEA,GAAK5Q,EAAO6Q,IAAZ,CAIA,IAAIC,EAAW9Q,EAAO5F,QAAQ2W,eACzBD,GASL9Q,EAAO6Q,IAAIG,WAAU,WACnB,IAAIC,EA6CR,WACE,IAAIjY,EAAM0W,KACV,GAAI1W,EACF,OAAO4W,GAAc5W,EAEzB,CAlDmBkY,GACXC,EAAeL,EAASxb,KAC1B0K,EACAwJ,EACAmH,EACAC,EAAQK,EAAW,MAGhBE,IAI4B,mBAAtBA,EAAaC,KACtBD,EACGC,MAAK,SAAUD,GACdE,GAAiB,EAAgBJ,EACnC,IACCK,OAAM,SAAUxS,GAIjB,IAEFuS,GAAiBF,EAAcF,GAEnC,GAtCA,CAuCF,CAEA,SAASM,KACP,IAAIvY,EAAM0W,KACN1W,IACF4W,GAAc5W,GAAO,CACnBY,EAAGgT,OAAO4E,YACVC,EAAG7E,OAAO8E,aAGhB,CAEA,SAASlB,GAAgBtQ,GACvBqR,KACIrR,EAAEmQ,OAASnQ,EAAEmQ,MAAMrX,KACrB2W,GAAYzP,EAAEmQ,MAAMrX,IAExB,CAmBA,SAAS2Y,GAAiBlS,GACxB,OAAOmS,GAASnS,EAAI7F,IAAMgY,GAASnS,EAAIgS,EACzC,CAEA,SAASI,GAAmBpS,GAC1B,MAAO,CACL7F,EAAGgY,GAASnS,EAAI7F,GAAK6F,EAAI7F,EAAIgT,OAAO4E,YACpCC,EAAGG,GAASnS,EAAIgS,GAAKhS,EAAIgS,EAAI7E,OAAO8E,YAExC,CASA,SAASE,GAAUE,GACjB,MAAoB,iBAANA,CAChB,CAEA,IAAIC,GAAyB,OAE7B,SAASV,GAAkBF,EAAcF,GACvC,IAdwBxR,EAcpBuS,EAAmC,iBAAjBb,EACtB,GAAIa,GAA6C,iBAA1Bb,EAAac,SAAuB,CAGzD,IAAIC,EAAKH,GAAuBxV,KAAK4U,EAAac,UAC9CE,SAASC,eAAejB,EAAac,SAAS1c,MAAM,IACpD4c,SAASE,cAAclB,EAAac,UAExC,GAAIC,EAAI,CACN,IAAInL,EACFoK,EAAapK,QAAyC,iBAAxBoK,EAAapK,OACvCoK,EAAapK,OACb,CAAC,EAEPkK,EAjDN,SAA6BiB,EAAInL,GAC/B,IACIuL,EADQH,SAASI,gBACDC,wBAChBC,EAASP,EAAGM,wBAChB,MAAO,CACL5Y,EAAG6Y,EAAOza,KAAOsa,EAAQta,KAAO+O,EAAOnN,EACvC6X,EAAGgB,EAAOC,IAAMJ,EAAQI,IAAM3L,EAAO0K,EAEzC,CAyCiBkB,CAAmBT,EAD9BnL,EA1BG,CACLnN,EAAGgY,IAFmBnS,EA2BKsH,GAzBXnN,GAAK6F,EAAI7F,EAAI,EAC7B6X,EAAGG,GAASnS,EAAIgS,GAAKhS,EAAIgS,EAAI,GA0B7B,MAAWE,GAAgBR,KACzBF,EAAWY,GAAkBV,GAEjC,MAAWa,GAAYL,GAAgBR,KACrCF,EAAWY,GAAkBV,IAG3BF,IAEE,mBAAoBkB,SAASI,gBAAgBK,MAC/ChG,OAAOiG,SAAS,CACd7a,KAAMiZ,EAASrX,EACf8Y,IAAKzB,EAASQ,EAEdX,SAAUK,EAAaL,WAGzBlE,OAAOiG,SAAS5B,EAASrX,EAAGqX,EAASQ,GAG3C,CAIA,IAGQqB,GAHJC,GACFpG,MAKmC,KAH7BmG,GAAKlG,OAAOoG,UAAUC,WAGpBva,QAAQ,gBAAuD,IAA/Boa,GAAGpa,QAAQ,iBACd,IAAjCoa,GAAGpa,QAAQ,mBACe,IAA1Boa,GAAGpa,QAAQ,YACsB,IAAjCoa,GAAGpa,QAAQ,mBAKNkU,OAAOkD,SAA+C,mBAA7BlD,OAAOkD,QAAQoD,UAGnD,SAASA,GAAWtV,EAAKjD,GACvB4W,KAGA,IAAIzB,EAAUlD,OAAOkD,QACrB,IACE,GAAInV,EAAS,CAEX,IAAIyV,EAAY5R,EAAO,CAAC,EAAGsR,EAAQO,OACnCD,EAAUpX,IAAM0W,KAChBI,EAAQQ,aAAaF,EAAW,GAAIxS,EACtC,MACEkS,EAAQoD,UAAU,CAAEla,IAAK2W,GAAYJ,OAAkB,GAAI3R,EAE/D,CAAE,MAAOsC,GACP0M,OAAO9M,SAASnF,EAAU,UAAY,UAAUiD,EAClD,CACF,CAEA,SAAS0S,GAAc1S,GACrBsV,GAAUtV,GAAK,EACjB,CAGA,IAAIuV,GAAwB,CAC1BC,WAAY,EACZC,QAAS,EACTC,UAAW,EACXC,WAAY,IA0Bd,SAASC,GAAgC7C,EAAMnH,GAC7C,OAAOiK,GACL9C,EACAnH,EACA2J,GAAsBG,UACrB,8BAAkC3C,EAAa,SAAI,SAAcnH,EAAW,SAAI,2BAErF,CAWA,SAASiK,GAAmB9C,EAAMnH,EAAIrH,EAAMuR,GAC1C,IAAIC,EAAQ,IAAIC,MAAMF,GAMtB,OALAC,EAAME,WAAY,EAClBF,EAAMhD,KAAOA,EACbgD,EAAMnK,GAAKA,EACXmK,EAAMxR,KAAOA,EAENwR,CACT,CAEA,IAAIG,GAAkB,CAAC,SAAU,QAAS,QAY1C,SAASC,GAASjV,GAChB,OAAOnL,OAAOC,UAAUkG,SAASxE,KAAKwJ,GAAKpG,QAAQ,UAAY,CACjE,CAEA,SAASsb,GAAqBlV,EAAKmV,GACjC,OACEF,GAAQjV,IACRA,EAAI+U,YACU,MAAbI,GAAqBnV,EAAIqD,OAAS8R,EAEvC,CAIA,SAASC,GAAUC,EAAOlgB,EAAImgB,GAC5B,IAAIC,EAAO,SAAU/W,GACfA,GAAS6W,EAAMre,OACjBse,IAEID,EAAM7W,GACRrJ,EAAGkgB,EAAM7W,IAAQ,WACf+W,EAAK/W,EAAQ,EACf,IAEA+W,EAAK/W,EAAQ,EAGnB,EACA+W,EAAK,EACP,CAsEA,SAASC,GACP7T,EACAxM,GAEA,OAAOsgB,GAAQ9T,EAAQvF,KAAI,SAAU2L,GACnC,OAAOlT,OAAO+G,KAAKmM,EAAEjP,YAAYsD,KAAI,SAAUlC,GAAO,OAAO/E,EAC3D4S,EAAEjP,WAAWoB,GACb6N,EAAEnF,UAAU1I,GACZ6N,EAAG7N,EACF,GACL,IACF,CAEA,SAASub,GAASjP,GAChB,OAAOtP,MAAMpC,UAAU6B,OAAOoB,MAAM,GAAIyO,EAC1C,CAEA,IAAIkP,GACgB,mBAAXva,QACuB,iBAAvBA,OAAOwa,YAUhB,SAAStgB,GAAMF,GACb,IAAIygB,GAAS,EACb,OAAO,WAEL,IADA,IAAIle,EAAO,GAAIC,EAAMC,UAAUZ,OACvBW,KAAQD,EAAMC,GAAQC,UAAWD,GAEzC,IAAIie,EAEJ,OADAA,GAAS,EACFzgB,EAAG4C,MAAMzC,KAAMoC,EACxB,CACF,CAIA,IAAIme,GAAU,SAAkB3U,EAAQ4E,GACtCxQ,KAAK4L,OAASA,EACd5L,KAAKwQ,KAgOP,SAAwBA,GACtB,IAAKA,EACH,GAAI+H,GAAW,CAEb,IAAIiI,EAASzC,SAASE,cAAc,QAGpCzN,GAFAA,EAAQgQ,GAAUA,EAAOpI,aAAa,SAAY,KAEtC7R,QAAQ,qBAAsB,GAC5C,MACEiK,EAAO,IAQX,MAJuB,MAAnBA,EAAKG,OAAO,KACdH,EAAO,IAAMA,GAGRA,EAAKjK,QAAQ,MAAO,GAC7B,CAlPcka,CAAcjQ,GAE1BxQ,KAAK4P,QAAUpD,EACfxM,KAAK0gB,QAAU,KACf1gB,KAAK2gB,OAAQ,EACb3gB,KAAK4gB,SAAW,GAChB5gB,KAAK6gB,cAAgB,GACrB7gB,KAAK8gB,SAAW,GAChB9gB,KAAKsB,UAAY,EACnB,EA6PA,SAASyf,GACPC,EACAhgB,EACAigB,EACAC,GAEA,IAAIC,EAASjB,GAAkBc,GAAS,SAAUI,EAAK7T,EAAUtJ,EAAOW,GACtE,IAAIyc,EAUR,SACED,EACAxc,GAMA,MAJmB,mBAARwc,IAETA,EAAMnM,GAAK7K,OAAOgX,IAEbA,EAAIpb,QAAQpB,EACrB,CAnBgB0c,CAAaF,EAAKpgB,GAC9B,GAAIqgB,EACF,OAAOzf,MAAM+C,QAAQ0c,GACjBA,EAAMva,KAAI,SAAUua,GAAS,OAAOJ,EAAKI,EAAO9T,EAAUtJ,EAAOW,EAAM,IACvEqc,EAAKI,EAAO9T,EAAUtJ,EAAOW,EAErC,IACA,OAAOub,GAAQe,EAAUC,EAAOD,UAAYC,EAC9C,CAqBA,SAASI,GAAWF,EAAO9T,GACzB,GAAIA,EACF,OAAO,WACL,OAAO8T,EAAM5e,MAAM8K,EAAUjL,UAC/B,CAEJ,CArSAie,GAAQ/gB,UAAUgiB,OAAS,SAAiBxB,GAC1ChgB,KAAKggB,GAAKA,CACZ,EAEAO,GAAQ/gB,UAAUiiB,QAAU,SAAkBzB,EAAI0B,GAC5C1hB,KAAK2gB,MACPX,KAEAhgB,KAAK4gB,SAASpgB,KAAKwf,GACf0B,GACF1hB,KAAK6gB,cAAcrgB,KAAKkhB,GAG9B,EAEAnB,GAAQ/gB,UAAUmiB,QAAU,SAAkBD,GAC5C1hB,KAAK8gB,SAAStgB,KAAKkhB,EACrB,EAEAnB,GAAQ/gB,UAAUoiB,aAAe,SAC/BlW,EACAmW,EACAC,GAEE,IAEE/V,EAFE8J,EAAW7V,KAIjB,IACE+L,EAAQ/L,KAAK4L,OAAO3H,MAAMyH,EAAU1L,KAAK4P,QAC3C,CAAE,MAAO9D,GAKP,MAJA9L,KAAK8gB,SAAS/V,SAAQ,SAAUiV,GAC9BA,EAAGlU,EACL,IAEMA,CACR,CACA,IAAIiW,EAAO/hB,KAAK4P,QAChB5P,KAAKgiB,kBACHjW,GACA,WACE8J,EAASoM,YAAYlW,GACrB8V,GAAcA,EAAW9V,GACzB8J,EAASqM,YACTrM,EAASjK,OAAOuW,WAAWpX,SAAQ,SAAU8E,GAC3CA,GAAQA,EAAK9D,EAAOgW,EACtB,IAGKlM,EAAS8K,QACZ9K,EAAS8K,OAAQ,EACjB9K,EAAS+K,SAAS7V,SAAQ,SAAUiV,GAClCA,EAAGjU,EACL,IAEJ,IACA,SAAUrB,GACJoX,GACFA,EAAQpX,GAENA,IAAQmL,EAAS8K,QAKdf,GAAoBlV,EAAKqU,GAAsBC,aAAe+C,IAASvV,IAC1EqJ,EAAS8K,OAAQ,EACjB9K,EAASgL,cAAc9V,SAAQ,SAAUiV,GACvCA,EAAGtV,EACL,KAGN,GAEJ,EAEA6V,GAAQ/gB,UAAUwiB,kBAAoB,SAA4BjW,EAAO8V,EAAYC,GACjF,IAAIjM,EAAW7V,KAEb4P,EAAU5P,KAAK4P,QACnB5P,KAAK0gB,QAAU3U,EACf,IAhSwCwQ,EACpCgD,EA+RA6C,EAAQ,SAAU1X,IAIfkV,GAAoBlV,IAAQiV,GAAQjV,KACnCmL,EAASiL,SAASpf,OACpBmU,EAASiL,SAAS/V,SAAQ,SAAUiV,GAClCA,EAAGtV,EACL,IAKA2X,EAAQ9C,MAAM7U,IAGlBoX,GAAWA,EAAQpX,EACrB,EACI4X,EAAiBvW,EAAMM,QAAQ3K,OAAS,EACxC6gB,EAAmB3S,EAAQvD,QAAQ3K,OAAS,EAChD,GACEmL,EAAYd,EAAO6D,IAEnB0S,IAAmBC,GACnBxW,EAAMM,QAAQiW,KAAoB1S,EAAQvD,QAAQkW,GAMlD,OAJAviB,KAAKkiB,YACDnW,EAAMrC,MACR4S,GAAatc,KAAK4L,OAAQgE,EAAS7D,GAAO,GAErCqW,IA7TL7C,EAAQF,GAD4B9C,EA8TO3M,EAAS7D,EA1TtDgT,GAAsBI,WACrB,sDAA0D5C,EAAa,SAAI,OAGxEvb,KAAO,uBACNue,IAwTP,IA5O+BlT,EA4O3BM,EAuHN,SACEiD,EACAgD,GAEA,IAAIpR,EACAghB,EAAMC,KAAKD,IAAI5S,EAAQlO,OAAQkR,EAAKlR,QACxC,IAAKF,EAAI,EAAGA,EAAIghB,GACV5S,EAAQpO,KAAOoR,EAAKpR,GADLA,KAKrB,MAAO,CACLkhB,QAAS9P,EAAKzR,MAAM,EAAGK,GACvBmhB,UAAW/P,EAAKzR,MAAMK,GACtBohB,YAAahT,EAAQzO,MAAMK,GAE/B,CAvIYqhB,CACR7iB,KAAK4P,QAAQvD,QACbN,EAAMM,SAEFqW,EAAU/V,EAAI+V,QACdE,EAAcjW,EAAIiW,YAClBD,EAAYhW,EAAIgW,UAElB5C,EAAQ,GAAG1e,OA6JjB,SAA6BuhB,GAC3B,OAAO7B,GAAc6B,EAAa,mBAAoBrB,IAAW,EACnE,CA7JIuB,CAAmBF,GAEnB5iB,KAAK4L,OAAOmX,YA6JhB,SAA6BL,GAC3B,OAAO3B,GAAc2B,EAAS,oBAAqBnB,GACrD,CA7JIyB,CAAmBN,GAEnBC,EAAU7b,KAAI,SAAU2L,GAAK,OAAOA,EAAEoH,WAAa,KA5PtBxN,EA8PNsW,EA7PlB,SAAUvN,EAAImH,EAAM3J,GACzB,IAAIqQ,GAAW,EACXvC,EAAU,EACVnB,EAAQ,KAEZW,GAAkB7T,GAAS,SAAU+U,EAAKlT,EAAGjK,EAAOW,GAMlD,GAAmB,mBAARwc,QAAkC5e,IAAZ4e,EAAI8B,IAAmB,CACtDD,GAAW,EACXvC,IAEA,IA0BI5V,EA1BAiL,EAAUhW,IAAK,SAAUojB,GAuErC,IAAqB9X,MAtEI8X,GAuEZC,YAAehD,IAAyC,WAA5B/U,EAAIxF,OAAOwa,gBAtExC8C,EAAcA,EAAYnV,SAG5BoT,EAAIiC,SAAkC,mBAAhBF,EAClBA,EACAlO,GAAK7K,OAAO+Y,GAChBlf,EAAMT,WAAWoB,GAAOue,IACxBzC,GACe,GACb9N,GAEJ,IAEI0Q,EAASvjB,IAAK,SAAUwjB,GAC1B,IAAIC,EAAM,qCAAuC5e,EAAM,KAAO2e,EAEzDhE,IACHA,EAAQI,GAAQ4D,GACZA,EACA,IAAI/D,MAAMgE,GACd5Q,EAAK2M,GAET,IAGA,IACEzU,EAAMsW,EAAIrL,EAASuN,EACrB,CAAE,MAAOxX,GACPwX,EAAOxX,EACT,CACA,GAAIhB,EACF,GAAwB,mBAAbA,EAAIkS,KACblS,EAAIkS,KAAKjH,EAASuN,OACb,CAEL,IAAIG,EAAO3Y,EAAIyE,UACXkU,GAA6B,mBAAdA,EAAKzG,MACtByG,EAAKzG,KAAKjH,EAASuN,EAEvB,CAEJ,CACF,IAEKL,GAAYrQ,GACnB,IAkMI8Q,EAAW,SAAU7T,EAAM+C,GAC7B,GAAIiD,EAAS6K,UAAY3U,EACvB,OAAOqW,EAAMhD,GAA+BxP,EAAS7D,IAEvD,IACE8D,EAAK9D,EAAO6D,GAAS,SAAUwF,IAClB,IAAPA,GAEFS,EAASqM,WAAU,GACnBE,EA1UV,SAAuC7F,EAAMnH,GAC3C,OAAOiK,GACL9C,EACAnH,EACA2J,GAAsBE,QACrB,4BAAgC1C,EAAa,SAAI,SAAcnH,EAAW,SAAI,4BAEnF,CAmUgBuO,CAA6B/T,EAAS7D,KACnC4T,GAAQvK,IACjBS,EAASqM,WAAU,GACnBE,EAAMhN,IAEQ,iBAAPA,GACQ,iBAAPA,IACc,iBAAZA,EAAGnJ,MAAwC,iBAAZmJ,EAAGpU,OAG5CohB,EApXV,SAA0C7F,EAAMnH,GAC9C,OAAOiK,GACL9C,EACAnH,EACA2J,GAAsBC,WACrB,+BAAmCzC,EAAa,SAAI,SAgDzD,SAAyBnH,GACvB,GAAkB,iBAAPA,EAAmB,OAAOA,EACrC,GAAI,SAAUA,EAAM,OAAOA,EAAGnJ,KAC9B,IAAIP,EAAW,CAAC,EAIhB,OAHAgU,GAAgB3U,SAAQ,SAAUnG,GAC5BA,KAAOwQ,IAAM1J,EAAS9G,GAAOwQ,EAAGxQ,GACtC,IACO4O,KAAK1K,UAAU4C,EAAU,KAAM,EACxC,CAxDsE,CAChE0J,GACG,4BAET,CA2WgBwO,CAAgChU,EAAS7D,IAC7B,iBAAPqJ,GAAmBA,EAAG7O,QAC/BsP,EAAStP,QAAQ6O,GAEjBS,EAASrV,KAAK4U,IAIhBxC,EAAKwC,EAET,GACF,CAAE,MAAOtJ,GACPsW,EAAMtW,EACR,CACF,EAEAgU,GAASC,EAAO2D,GAAU,WAGxB,IAAIG,EA0HR,SACElB,GAEA,OAAO5B,GACL4B,EACA,oBACA,SAAUtB,EAAOnT,EAAGjK,EAAOW,GACzB,OAKN,SACEyc,EACApd,EACAW,GAEA,OAAO,SAA0BwQ,EAAImH,EAAM3J,GACzC,OAAOyO,EAAMjM,EAAImH,GAAM,SAAUyD,GACb,mBAAPA,IACJ/b,EAAMwJ,WAAW7I,KACpBX,EAAMwJ,WAAW7I,GAAO,IAE1BX,EAAMwJ,WAAW7I,GAAKpE,KAAKwf,IAE7BpN,EAAKoN,EACP,GACF,CACF,CArBa8D,CAAezC,EAAOpd,EAAOW,EACtC,GAEJ,CApIsBmf,CAAmBpB,GAErC7C,GADY+D,EAAYxiB,OAAOwU,EAASjK,OAAOoY,cAC/BN,GAAU,WACxB,GAAI7N,EAAS6K,UAAY3U,EACvB,OAAOqW,EAAMhD,GAA+BxP,EAAS7D,IAEvD8J,EAAS6K,QAAU,KACnBmB,EAAW9V,GACP8J,EAASjK,OAAO6Q,KAClB5G,EAASjK,OAAO6Q,IAAIG,WAAU,WAC5BvP,EAAmBtB,EACrB,GAEJ,GACF,GACF,EAEAwU,GAAQ/gB,UAAUyiB,YAAc,SAAsBlW,GACpD/L,KAAK4P,QAAU7D,EACf/L,KAAKggB,IAAMhgB,KAAKggB,GAAGjU,EACrB,EAEAwU,GAAQ/gB,UAAUykB,eAAiB,WAEnC,EAEA1D,GAAQ/gB,UAAU0kB,SAAW,WAG3BlkB,KAAKsB,UAAUyJ,SAAQ,SAAUoZ,GAC/BA,GACF,IACAnkB,KAAKsB,UAAY,GAIjBtB,KAAK4P,QAAUpD,EACfxM,KAAK0gB,QAAU,IACjB,EAoHA,IAAI0D,GAA6B,SAAU7D,GACzC,SAAS6D,EAAcxY,EAAQ4E,GAC7B+P,EAAQrf,KAAKlB,KAAM4L,EAAQ4E,GAE3BxQ,KAAKqkB,eAAiBC,GAAYtkB,KAAKwQ,KACzC,CAkFA,OAhFK+P,IAAU6D,EAAavjB,UAAY0f,GACxC6D,EAAa5kB,UAAYD,OAAOqB,OAAQ2f,GAAWA,EAAQ/gB,WAC3D4kB,EAAa5kB,UAAU+kB,YAAcH,EAErCA,EAAa5kB,UAAUykB,eAAiB,WACtC,IAAIpO,EAAW7V,KAEf,KAAIA,KAAKsB,UAAUI,OAAS,GAA5B,CAIA,IAAIkK,EAAS5L,KAAK4L,OACd4Y,EAAe5Y,EAAO5F,QAAQ2W,eAC9B8H,EAAiB9F,IAAqB6F,EAEtCC,GACFzkB,KAAKsB,UAAUd,KAAKib,MAGtB,IAAIiJ,EAAqB,WACvB,IAAI9U,EAAUiG,EAASjG,QAInBlE,EAAW4Y,GAAYzO,EAASrF,MAChCqF,EAASjG,UAAYpD,GAASd,IAAamK,EAASwO,gBAIxDxO,EAAS+L,aAAalW,GAAU,SAAUK,GACpC0Y,GACFnI,GAAa1Q,EAAQG,EAAO6D,GAAS,EAEzC,GACF,EACA4I,OAAO2D,iBAAiB,WAAYuI,GACpC1kB,KAAKsB,UAAUd,MAAK,WAClBgY,OAAO6D,oBAAoB,WAAYqI,EACzC,GA7BA,CA8BF,EAEAN,EAAa5kB,UAAUmlB,GAAK,SAAaC,GACvCpM,OAAOkD,QAAQiJ,GAAGC,EACpB,EAEAR,EAAa5kB,UAAUgB,KAAO,SAAekL,EAAUmW,EAAYC,GACjE,IAAIjM,EAAW7V,KAGX6kB,EADM7kB,KACU4P,QACpB5P,KAAK4hB,aAAalW,GAAU,SAAUK,GACpC+S,GAAU9N,GAAU6E,EAASrF,KAAOzE,EAAMI,WAC1CmQ,GAAazG,EAASjK,OAAQG,EAAO8Y,GAAW,GAChDhD,GAAcA,EAAW9V,EAC3B,GAAG+V,EACL,EAEAsC,EAAa5kB,UAAU+G,QAAU,SAAkBmF,EAAUmW,EAAYC,GACvE,IAAIjM,EAAW7V,KAGX6kB,EADM7kB,KACU4P,QACpB5P,KAAK4hB,aAAalW,GAAU,SAAUK,GACpCmQ,GAAalL,GAAU6E,EAASrF,KAAOzE,EAAMI,WAC7CmQ,GAAazG,EAASjK,OAAQG,EAAO8Y,GAAW,GAChDhD,GAAcA,EAAW9V,EAC3B,GAAG+V,EACL,EAEAsC,EAAa5kB,UAAU0iB,UAAY,SAAoB1hB,GACrD,GAAI8jB,GAAYtkB,KAAKwQ,QAAUxQ,KAAK4P,QAAQzD,SAAU,CACpD,IAAIyD,EAAUoB,GAAUhR,KAAKwQ,KAAOxQ,KAAK4P,QAAQzD,UACjD3L,EAAOse,GAAUlP,GAAWsM,GAAatM,EAC3C,CACF,EAEAwU,EAAa5kB,UAAUslB,mBAAqB,WAC1C,OAAOR,GAAYtkB,KAAKwQ,KAC1B,EAEO4T,CACT,CAxFgC,CAwF9B7D,IAEF,SAAS+D,GAAa9T,GACpB,IAAIvE,EAAOuM,OAAO9M,SAASqZ,SACvBC,EAAgB/Y,EAAK3E,cACrB2d,EAAgBzU,EAAKlJ,cAQzB,OAJIkJ,GAAUwU,IAAkBC,GAC6B,IAA1DD,EAAc1gB,QAAQ0M,GAAUiU,EAAgB,QACjDhZ,EAAOA,EAAK9K,MAAMqP,EAAK9O,UAEjBuK,GAAQ,KAAOuM,OAAO9M,SAASwZ,OAAS1M,OAAO9M,SAAShC,IAClE,CAIA,IAAIyb,GAA4B,SAAU5E,GACxC,SAAS4E,EAAavZ,EAAQ4E,EAAM4U,GAClC7E,EAAQrf,KAAKlB,KAAM4L,EAAQ4E,GAEvB4U,GAqGR,SAAwB5U,GACtB,IAAI9E,EAAW4Y,GAAY9T,GAC3B,IAAK,OAAOrI,KAAKuD,GAEf,OADA8M,OAAO9M,SAASnF,QAAQyK,GAAUR,EAAO,KAAO9E,KACzC,CAEX,CA3GoB2Z,CAAcrlB,KAAKwQ,OAGnC8U,IACF,CA8FA,OA5FK/E,IAAU4E,EAAYtkB,UAAY0f,GACvC4E,EAAY3lB,UAAYD,OAAOqB,OAAQ2f,GAAWA,EAAQ/gB,WAC1D2lB,EAAY3lB,UAAU+kB,YAAcY,EAIpCA,EAAY3lB,UAAUykB,eAAiB,WACrC,IAAIpO,EAAW7V,KAEf,KAAIA,KAAKsB,UAAUI,OAAS,GAA5B,CAIA,IACI8iB,EADSxkB,KAAK4L,OACQ5F,QAAQ2W,eAC9B8H,EAAiB9F,IAAqB6F,EAEtCC,GACFzkB,KAAKsB,UAAUd,KAAKib,MAGtB,IAAIiJ,EAAqB,WACvB,IAAI9U,EAAUiG,EAASjG,QAClB0V,MAGLzP,EAAS+L,aAAa,MAAW,SAAU7V,GACrC0Y,GACFnI,GAAazG,EAASjK,OAAQG,EAAO6D,GAAS,GAE3C+O,IACH4G,GAAYxZ,EAAMI,SAEtB,GACF,EACIqZ,EAAY7G,GAAoB,WAAa,aACjDnG,OAAO2D,iBACLqJ,EACAd,GAEF1kB,KAAKsB,UAAUd,MAAK,WAClBgY,OAAO6D,oBAAoBmJ,EAAWd,EACxC,GA/BA,CAgCF,EAEAS,EAAY3lB,UAAUgB,KAAO,SAAekL,EAAUmW,EAAYC,GAChE,IAAIjM,EAAW7V,KAGX6kB,EADM7kB,KACU4P,QACpB5P,KAAK4hB,aACHlW,GACA,SAAUK,GACR0Z,GAAS1Z,EAAMI,UACfmQ,GAAazG,EAASjK,OAAQG,EAAO8Y,GAAW,GAChDhD,GAAcA,EAAW9V,EAC3B,GACA+V,EAEJ,EAEAqD,EAAY3lB,UAAU+G,QAAU,SAAkBmF,EAAUmW,EAAYC,GACtE,IAAIjM,EAAW7V,KAGX6kB,EADM7kB,KACU4P,QACpB5P,KAAK4hB,aACHlW,GACA,SAAUK,GACRwZ,GAAYxZ,EAAMI,UAClBmQ,GAAazG,EAASjK,OAAQG,EAAO8Y,GAAW,GAChDhD,GAAcA,EAAW9V,EAC3B,GACA+V,EAEJ,EAEAqD,EAAY3lB,UAAUmlB,GAAK,SAAaC,GACtCpM,OAAOkD,QAAQiJ,GAAGC,EACpB,EAEAO,EAAY3lB,UAAU0iB,UAAY,SAAoB1hB,GACpD,IAAIoP,EAAU5P,KAAK4P,QAAQzD,SACvB,OAAcyD,IAChBpP,EAAOilB,GAAS7V,GAAW2V,GAAY3V,GAE3C,EAEAuV,EAAY3lB,UAAUslB,mBAAqB,WACzC,OAAO,IACT,EAEOK,CACT,CAvG+B,CAuG7B5E,IAUF,SAAS+E,KACP,IAAIrZ,EAAO,KACX,MAAuB,MAAnBA,EAAK0E,OAAO,KAGhB4U,GAAY,IAAMtZ,IACX,EACT,CAEA,SAAS,KAGP,IAAI+J,EAAOwC,OAAO9M,SAASsK,KACvB9M,EAAQ8M,EAAK1R,QAAQ,KAEzB,OAAI4E,EAAQ,EAAY,GAExB8M,EAAOA,EAAK7U,MAAM+H,EAAQ,EAG5B,CAEA,SAASwc,GAAQzZ,GACf,IAAI+J,EAAOwC,OAAO9M,SAASsK,KACvBxU,EAAIwU,EAAK1R,QAAQ,KAErB,OADW9C,GAAK,EAAIwU,EAAK7U,MAAM,EAAGK,GAAKwU,GACxB,IAAM/J,CACvB,CAEA,SAASwZ,GAAUxZ,GACb0S,GACFG,GAAU4G,GAAOzZ,IAEjBuM,OAAO9M,SAAShC,KAAOuC,CAE3B,CAEA,SAASsZ,GAAatZ,GAChB0S,GACFzC,GAAawJ,GAAOzZ,IAEpBuM,OAAO9M,SAASnF,QAAQmf,GAAOzZ,GAEnC,CAIA,IAAI0Z,GAAgC,SAAUpF,GAC5C,SAASoF,EAAiB/Z,EAAQ4E,GAChC+P,EAAQrf,KAAKlB,KAAM4L,EAAQ4E,GAC3BxQ,KAAK4Q,MAAQ,GACb5Q,KAAKkJ,OAAS,CAChB,CAoEA,OAlEKqX,IAAUoF,EAAgB9kB,UAAY0f,GAC3CoF,EAAgBnmB,UAAYD,OAAOqB,OAAQ2f,GAAWA,EAAQ/gB,WAC9DmmB,EAAgBnmB,UAAU+kB,YAAcoB,EAExCA,EAAgBnmB,UAAUgB,KAAO,SAAekL,EAAUmW,EAAYC,GACpE,IAAIjM,EAAW7V,KAEfA,KAAK4hB,aACHlW,GACA,SAAUK,GACR8J,EAASjF,MAAQiF,EAASjF,MAAMzP,MAAM,EAAG0U,EAAS3M,MAAQ,GAAG7H,OAAO0K,GACpE8J,EAAS3M,QACT2Y,GAAcA,EAAW9V,EAC3B,GACA+V,EAEJ,EAEA6D,EAAgBnmB,UAAU+G,QAAU,SAAkBmF,EAAUmW,EAAYC,GAC1E,IAAIjM,EAAW7V,KAEfA,KAAK4hB,aACHlW,GACA,SAAUK,GACR8J,EAASjF,MAAQiF,EAASjF,MAAMzP,MAAM,EAAG0U,EAAS3M,OAAO7H,OAAO0K,GAChE8V,GAAcA,EAAW9V,EAC3B,GACA+V,EAEJ,EAEA6D,EAAgBnmB,UAAUmlB,GAAK,SAAaC,GAC1C,IAAI/O,EAAW7V,KAEX4lB,EAAc5lB,KAAKkJ,MAAQ0b,EAC/B,KAAIgB,EAAc,GAAKA,GAAe5lB,KAAK4Q,MAAMlP,QAAjD,CAGA,IAAIqK,EAAQ/L,KAAK4Q,MAAMgV,GACvB5lB,KAAKgiB,kBACHjW,GACA,WACE,IAAIgW,EAAOlM,EAASjG,QACpBiG,EAAS3M,MAAQ0c,EACjB/P,EAASoM,YAAYlW,GACrB8J,EAASjK,OAAOuW,WAAWpX,SAAQ,SAAU8E,GAC3CA,GAAQA,EAAK9D,EAAOgW,EACtB,GACF,IACA,SAAUrX,GACJkV,GAAoBlV,EAAKqU,GAAsBI,cACjDtJ,EAAS3M,MAAQ0c,EAErB,GAhBF,CAkBF,EAEAD,EAAgBnmB,UAAUslB,mBAAqB,WAC7C,IAAIlV,EAAU5P,KAAK4Q,MAAM5Q,KAAK4Q,MAAMlP,OAAS,GAC7C,OAAOkO,EAAUA,EAAQzD,SAAW,GACtC,EAEAwZ,EAAgBnmB,UAAU0iB,UAAY,WAEtC,EAEOyD,CACT,CA1EmC,CA0EjCpF,IAMEsF,GAAY,SAAoB7f,QACjB,IAAZA,IAAqBA,EAAU,CAAC,GAKrChG,KAAKyc,IAAM,KACXzc,KAAK8lB,KAAO,GACZ9lB,KAAKgG,QAAUA,EACfhG,KAAK+iB,YAAc,GACnB/iB,KAAKgkB,aAAe,GACpBhkB,KAAKmiB,WAAa,GAClBniB,KAAK+lB,QAAU9L,GAAcjU,EAAQ0S,QAAU,GAAI1Y,MAEnD,IAAIgmB,EAAOhgB,EAAQggB,MAAQ,OAW3B,OAVAhmB,KAAKolB,SACM,YAATY,IAAuBrH,KAA0C,IAArB3Y,EAAQof,SAClDplB,KAAKolB,WACPY,EAAO,QAEJzN,KACHyN,EAAO,YAEThmB,KAAKgmB,KAAOA,EAEJA,GACN,IAAK,UACHhmB,KAAK0b,QAAU,IAAI0I,GAAapkB,KAAMgG,EAAQwK,MAC9C,MACF,IAAK,OACHxQ,KAAK0b,QAAU,IAAIyJ,GAAYnlB,KAAMgG,EAAQwK,KAAMxQ,KAAKolB,UACxD,MACF,IAAK,WACHplB,KAAK0b,QAAU,IAAIiK,GAAgB3lB,KAAMgG,EAAQwK,MAOvD,EAEIyV,GAAqB,CAAE/L,aAAc,CAAEgM,cAAc,IAEzDL,GAAUrmB,UAAUyE,MAAQ,SAAgBmQ,EAAKxE,EAASjE,GACxD,OAAO3L,KAAK+lB,QAAQ9hB,MAAMmQ,EAAKxE,EAASjE,EAC1C,EAEAsa,GAAmB/L,aAAaiM,IAAM,WACpC,OAAOnmB,KAAK0b,SAAW1b,KAAK0b,QAAQ9L,OACtC,EAEAiW,GAAUrmB,UAAUyQ,KAAO,SAAewM,GACtC,IAAI5G,EAAW7V,KA0BjB,GAjBAA,KAAK8lB,KAAKtlB,KAAKic,GAIfA,EAAI2J,MAAM,kBAAkB,WAE1B,IAAIld,EAAQ2M,EAASiQ,KAAKxhB,QAAQmY,GAC9BvT,GAAS,GAAK2M,EAASiQ,KAAK3M,OAAOjQ,EAAO,GAG1C2M,EAAS4G,MAAQA,IAAO5G,EAAS4G,IAAM5G,EAASiQ,KAAK,IAAM,MAE1DjQ,EAAS4G,KAAO5G,EAAS6F,QAAQwI,UACxC,KAIIlkB,KAAKyc,IAAT,CAIAzc,KAAKyc,IAAMA,EAEX,IAAIf,EAAU1b,KAAK0b,QAEnB,GAAIA,aAAmB0I,IAAgB1I,aAAmByJ,GAAa,CACrE,IASIlB,EAAiB,SAAUoC,GAC7B3K,EAAQuI,iBAVgB,SAAUoC,GAClC,IAAI9J,EAAOb,EAAQ9L,QACf4U,EAAe3O,EAAS7P,QAAQ2W,eACfgC,IAAqB6F,GAEpB,aAAc6B,GAClC/J,GAAazG,EAAUwQ,EAAc9J,GAAM,EAE/C,CAGE+J,CAAoBD,EACtB,EACA3K,EAAQkG,aACNlG,EAAQoJ,qBACRb,EACAA,EAEJ,CAEAvI,EAAQ8F,QAAO,SAAUzV,GACvB8J,EAASiQ,KAAK/a,SAAQ,SAAU0R,GAC9BA,EAAI8J,OAASxa,CACf,GACF,GA/BA,CAgCF,EAEA8Z,GAAUrmB,UAAUgnB,WAAa,SAAqB3mB,GACpD,OAAO4mB,GAAazmB,KAAK+iB,YAAaljB,EACxC,EAEAgmB,GAAUrmB,UAAUknB,cAAgB,SAAwB7mB,GAC1D,OAAO4mB,GAAazmB,KAAKgkB,aAAcnkB,EACzC,EAEAgmB,GAAUrmB,UAAUmnB,UAAY,SAAoB9mB,GAClD,OAAO4mB,GAAazmB,KAAKmiB,WAAYtiB,EACvC,EAEAgmB,GAAUrmB,UAAUiiB,QAAU,SAAkBzB,EAAI0B,GAClD1hB,KAAK0b,QAAQ+F,QAAQzB,EAAI0B,EAC3B,EAEAmE,GAAUrmB,UAAUmiB,QAAU,SAAkBD,GAC9C1hB,KAAK0b,QAAQiG,QAAQD,EACvB,EAEAmE,GAAUrmB,UAAUgB,KAAO,SAAekL,EAAUmW,EAAYC,GAC5D,IAAIjM,EAAW7V,KAGjB,IAAK6hB,IAAeC,GAA8B,oBAAZ8E,QACpC,OAAO,IAAIA,SAAQ,SAAU7Q,EAASuN,GACpCzN,EAAS6F,QAAQlb,KAAKkL,EAAUqK,EAASuN,EAC3C,IAEAtjB,KAAK0b,QAAQlb,KAAKkL,EAAUmW,EAAYC,EAE5C,EAEA+D,GAAUrmB,UAAU+G,QAAU,SAAkBmF,EAAUmW,EAAYC,GAClE,IAAIjM,EAAW7V,KAGjB,IAAK6hB,IAAeC,GAA8B,oBAAZ8E,QACpC,OAAO,IAAIA,SAAQ,SAAU7Q,EAASuN,GACpCzN,EAAS6F,QAAQnV,QAAQmF,EAAUqK,EAASuN,EAC9C,IAEAtjB,KAAK0b,QAAQnV,QAAQmF,EAAUmW,EAAYC,EAE/C,EAEA+D,GAAUrmB,UAAUmlB,GAAK,SAAaC,GACpC5kB,KAAK0b,QAAQiJ,GAAGC,EAClB,EAEAiB,GAAUrmB,UAAUqnB,KAAO,WACzB7mB,KAAK2kB,IAAI,EACX,EAEAkB,GAAUrmB,UAAUsnB,QAAU,WAC5B9mB,KAAK2kB,GAAG,EACV,EAEAkB,GAAUrmB,UAAUunB,qBAAuB,SAA+B3R,GACxE,IAAIrJ,EAAQqJ,EACRA,EAAG/I,QACD+I,EACApV,KAAK+V,QAAQX,GAAIrJ,MACnB/L,KAAKka,aACT,OAAKnO,EAGE,GAAG1K,OAAOoB,MACf,GACAsJ,EAAMM,QAAQvF,KAAI,SAAU2L,GAC1B,OAAOlT,OAAO+G,KAAKmM,EAAEjP,YAAYsD,KAAI,SAAUlC,GAC7C,OAAO6N,EAAEjP,WAAWoB,EACtB,GACF,KARO,EAUX,EAEAihB,GAAUrmB,UAAUuW,QAAU,SAC5BX,EACAxF,EACAa,GAGA,IAAI/E,EAAWyI,GAAkBiB,EADjCxF,EAAUA,GAAW5P,KAAK0b,QAAQ9L,QACYa,EAAQzQ,MAClD+L,EAAQ/L,KAAKiE,MAAMyH,EAAUkE,GAC7BzD,EAAWJ,EAAMJ,gBAAkBI,EAAMI,SAEzC6J,EA4CN,SAAqBxF,EAAMrE,EAAU6Z,GACnC,IAAI/Z,EAAgB,SAAT+Z,EAAkB,IAAM7Z,EAAWA,EAC9C,OAAOqE,EAAOQ,GAAUR,EAAO,IAAMvE,GAAQA,CAC/C,CA/Ca+a,CADAhnB,KAAK0b,QAAQlL,KACIrE,EAAUnM,KAAKgmB,MAC3C,MAAO,CACLta,SAAUA,EACVK,MAAOA,EACPiK,KAAMA,EAENiR,aAAcvb,EACd2X,SAAUtX,EAEd,EAEA8Z,GAAUrmB,UAAUqb,UAAY,WAC9B,OAAO7a,KAAK+lB,QAAQlL,WACtB,EAEAgL,GAAUrmB,UAAUmb,SAAW,SAAmBC,EAAe7O,GAC/D/L,KAAK+lB,QAAQpL,SAASC,EAAe7O,GACjC/L,KAAK0b,QAAQ9L,UAAYpD,GAC3BxM,KAAK0b,QAAQkG,aAAa5hB,KAAK0b,QAAQoJ,qBAE3C,EAEAe,GAAUrmB,UAAUsb,UAAY,SAAoBpC,GAIlD1Y,KAAK+lB,QAAQjL,UAAUpC,GACnB1Y,KAAK0b,QAAQ9L,UAAYpD,GAC3BxM,KAAK0b,QAAQkG,aAAa5hB,KAAK0b,QAAQoJ,qBAE3C,EAEAvlB,OAAO2nB,iBAAkBrB,GAAUrmB,UAAWymB,IAE9C,IAAIkB,GAActB,GAElB,SAASY,GAAcW,EAAMvnB,GAE3B,OADAunB,EAAK5mB,KAAKX,GACH,WACL,IAAI2B,EAAI4lB,EAAK9iB,QAAQzE,GACjB2B,GAAK,GAAK4lB,EAAKjO,OAAO3X,EAAG,EAC/B,CACF,CAQAqkB,GAAUwB,QA70DV,SAASA,EAASC,GAChB,IAAID,EAAQE,WAAatS,KAASqS,EAAlC,CACAD,EAAQE,WAAY,EAEpBtS,GAAOqS,EAEP,IAAIE,EAAQ,SAAU9J,GAAK,YAAalb,IAANkb,CAAiB,EAE/C+J,EAAmB,SAAU9X,EAAI+X,GACnC,IAAIlmB,EAAImO,EAAGgY,SAASC,aAChBJ,EAAMhmB,IAAMgmB,EAAMhmB,EAAIA,EAAE4M,OAASoZ,EAAMhmB,EAAIA,EAAEkO,wBAC/ClO,EAAEmO,EAAI+X,EAEV,EAEAJ,EAAIO,MAAM,CACRC,aAAc,WACRN,EAAMxnB,KAAK2nB,SAAS/b,SACtB5L,KAAK6O,YAAc7O,KACnBA,KAAK+nB,QAAU/nB,KAAK2nB,SAAS/b,OAC7B5L,KAAK+nB,QAAQ9X,KAAKjQ,MAClBsnB,EAAIU,KAAKC,eAAejoB,KAAM,SAAUA,KAAK+nB,QAAQrM,QAAQ9L,UAE7D5P,KAAK6O,YAAe7O,KAAKmP,SAAWnP,KAAKmP,QAAQN,aAAgB7O,KAEnEynB,EAAiBznB,KAAMA,KACzB,EACAkoB,UAAW,WACTT,EAAiBznB,KACnB,IAGFT,OAAOyF,eAAesiB,EAAI9nB,UAAW,UAAW,CAC9C2mB,IAAK,WAAkB,OAAOnmB,KAAK6O,YAAYkZ,OAAQ,IAGzDxoB,OAAOyF,eAAesiB,EAAI9nB,UAAW,SAAU,CAC7C2mB,IAAK,WAAkB,OAAOnmB,KAAK6O,YAAY0X,MAAO,IAGxDe,EAAI/X,UAAU,aAAc3B,IAC5B0Z,EAAI/X,UAAU,aAAc4F,IAE5B,IAAIgT,EAASb,EAAInX,OAAOiY,sBAExBD,EAAOE,iBAAmBF,EAAOG,iBAAmBH,EAAOI,kBAAoBJ,EAAOK,OA5CtC,CA6ClD,EAgyDA3C,GAAU4C,QAAU,QACpB5C,GAAUjG,oBAAsBA,GAChCiG,GAAU9G,sBAAwBA,GAClC8G,GAAU6C,eAAiBlc,EAEvB+L,IAAaC,OAAO8O,KACtB9O,OAAO8O,IAAIqB,IAAI9C,IC7kGjByB,EAAAA,GAAIqB,IAAIC,IAER,MAAMC,GAAeD,GAAOppB,UAAUgB,KACtCooB,GAAOppB,UAAUgB,KAAO,SAAc4U,EAAIyM,EAAYC,GAClD,OAAID,GAAcC,EACP+G,GAAa3nB,KAAKlB,KAAMoV,EAAIyM,EAAYC,GAC5C+G,GAAa3nB,KAAKlB,KAAMoV,GAAI8H,OAAMxS,GAAOA,GACpD,EACA,MAwBA,GAxBe,IAAIke,GAAO,CACtB5C,KAAM,UAGNxV,MAAMsY,EAAAA,EAAAA,IAAY,eAClB3S,gBAAiB,SACjBuC,OAAQ,CACJ,CACIzM,KAAM,IAEN2N,SAAU,CAAE5Y,KAAM,WAAYkL,OAAQ,CAAE6c,KAAM,WAElD,CACI9c,KAAM,wBACNjL,KAAM,WACN8M,OAAO,IAIf1C,cAAAA,CAAe1D,GACX,MAAMhD,EAASoF,EAAYhB,UAAUpB,GAAOnB,QAAQ,SAAU,KAC9D,OAAO7B,EAAU,IAAMA,EAAU,EACrC,I,4aClCJ,I,oCCoBA,MCpBsG,GDoBtG,CACE1D,KAAM,UACNgoB,MAAO,CAAC,SACRlb,MAAO,CACLmb,MAAO,CACLlb,KAAMnD,QAERse,UAAW,CACTnb,KAAMnD,OACNoD,QAAS,gBAEXmb,KAAM,CACJpb,KAAMlH,OACNmH,QAAS,M,gBEff,UAXgB,QACd,ICRW,WAAkB,IAAIob,EAAIppB,KAAKqpB,EAAGD,EAAIE,MAAMD,GAAG,OAAOA,EAAG,OAAOD,EAAIG,GAAG,CAACC,YAAY,gCAAgCnZ,MAAM,CAAC,eAAc+Y,EAAIH,OAAQ,KAAY,aAAaG,EAAIH,MAAM,KAAO,OAAOtmB,GAAG,CAAC,MAAQ,SAAS8mB,GAAQ,OAAOL,EAAIM,MAAM,QAASD,EAAO,IAAI,OAAOL,EAAIO,QAAO,GAAO,CAACN,EAAG,MAAM,CAACG,YAAY,4BAA4BnZ,MAAM,CAAC,KAAO+Y,EAAIF,UAAU,MAAQE,EAAID,KAAK,OAASC,EAAID,KAAK,QAAU,cAAc,CAACE,EAAG,OAAO,CAAChZ,MAAM,CAAC,EAAI,g5BAAg5B,CAAE+Y,EAAS,MAAEC,EAAG,QAAQ,CAACD,EAAIQ,GAAGR,EAAIS,GAAGT,EAAIH,UAAUG,EAAIU,UACx5C,GACsB,IDSpB,EACA,KACA,KACA,MAI8B,Q,uCEKhC,SAASC,GAAUC,EAAOC,EAAUjkB,GAClC,IAcIkkB,EAdAC,EAAOnkB,GAAW,CAAC,EACnBokB,EAAkBD,EAAKE,WACvBA,OAAiC,IAApBD,GAAqCA,EAClDE,EAAiBH,EAAKI,UACtBA,OAA+B,IAAnBD,GAAoCA,EAChDE,EAAoBL,EAAKM,aACzBA,OAAqC,IAAtBD,OAA+BhoB,EAAYgoB,EAS1DtL,GAAY,EAEZwL,EAAW,EAEf,SAASC,IACHT,GACFU,aAAaV,EAEjB,CAkBA,SAASW,IACP,IAAK,IAAIC,EAAOxoB,UAAUZ,OAAQqpB,EAAa,IAAInpB,MAAMkpB,GAAOzP,EAAO,EAAGA,EAAOyP,EAAMzP,IACrF0P,EAAW1P,GAAQ/Y,UAAU+Y,GAG/B,IAAI2P,EAAOhrB,KACPirB,EAAU/P,KAAKD,MAAQyP,EAO3B,SAAStkB,IACPskB,EAAWxP,KAAKD,MAChBgP,EAASxnB,MAAMuoB,EAAMD,EACvB,CAOA,SAASG,IACPhB,OAAY1nB,CACd,CAjBI0c,IAmBCqL,IAAaE,GAAiBP,GAMjC9jB,IAGFukB,SAEqBnoB,IAAjBioB,GAA8BQ,EAAUjB,EACtCO,GAMFG,EAAWxP,KAAKD,MAEXoP,IACHH,EAAYiB,WAAWV,EAAeS,EAAQ9kB,EAAM4jB,KAOtD5jB,KAEsB,IAAfikB,IAYTH,EAAYiB,WAAWV,EAAeS,EAAQ9kB,OAAuB5D,IAAjBioB,EAA6BT,EAAQiB,EAAUjB,IAEvG,CAIA,OAFAa,EAAQO,OAxFR,SAAgBplB,GACd,IACIqlB,GADQrlB,GAAW,CAAC,GACOslB,aAC3BA,OAAsC,IAAvBD,GAAwCA,EAE3DV,IACAzL,GAAaoM,CACf,EAmFOT,CACT,C,wCCzHA,MCpB2G,GDoB3G,CACE7pB,KAAM,eACNgoB,MAAO,CAAC,SACRlb,MAAO,CACLmb,MAAO,CACLlb,KAAMnD,QAERse,UAAW,CACTnb,KAAMnD,OACNoD,QAAS,gBAEXmb,KAAM,CACJpb,KAAMlH,OACNmH,QAAS,MEff,IAXgB,QACd,ICRW,WAAkB,IAAIob,EAAIppB,KAAKqpB,EAAGD,EAAIE,MAAMD,GAAG,OAAOA,EAAG,OAAOD,EAAIG,GAAG,CAACC,YAAY,sCAAsCnZ,MAAM,CAAC,eAAc+Y,EAAIH,OAAQ,KAAY,aAAaG,EAAIH,MAAM,KAAO,OAAOtmB,GAAG,CAAC,MAAQ,SAAS8mB,GAAQ,OAAOL,EAAIM,MAAM,QAASD,EAAO,IAAI,OAAOL,EAAIO,QAAO,GAAO,CAACN,EAAG,MAAM,CAACG,YAAY,4BAA4BnZ,MAAM,CAAC,KAAO+Y,EAAIF,UAAU,MAAQE,EAAID,KAAK,OAASC,EAAID,KAAK,QAAU,cAAc,CAACE,EAAG,OAAO,CAAChZ,MAAM,CAAC,EAAI,8HAA8H,CAAE+Y,EAAS,MAAEC,EAAG,QAAQ,CAACD,EAAIQ,GAAGR,EAAIS,GAAGT,EAAIH,UAAUG,EAAIU,UAC5oB,GACsB,IDSpB,EACA,KACA,KACA,MAI8B,Q,gBEZhC,UAAeyB,E,SAAAA,MACbC,OAAO,SACPC,aACAC,QCTyL,GCwC3L,CACA1qB,KAAA,kBAEAwC,WAAA,CACAmoB,SAAA,GACAC,oBAAA,KACAC,cAAAA,GAAAA,GAGAzd,KAAAA,KACA,CACA0d,qBAAA,EACAC,cAAAC,EAAAA,GAAAA,GAAA,+BAIAC,SAAA,CACAC,iBAAAA,GAAA,IAAAC,EAAAC,EAAAC,EACA,MAAAC,GAAAC,EAAAA,EAAAA,IAAA,QAAAJ,EAAA,KAAAJ,oBAAA,IAAAI,OAAA,EAAAA,EAAAK,MAAA,MACAC,GAAAF,EAAAA,EAAAA,IAAA,QAAAH,EAAA,KAAAL,oBAAA,IAAAK,OAAA,EAAAA,EAAAM,OAAA,MAGA,eAAAL,EAAA,KAAAN,oBAAA,IAAAM,OAAA,EAAAA,EAAAK,OAAA,EACA,KAAAC,EAAA,gCAAAL,kBAGA,KAAAK,EAAA,kCACAH,KAAAF,EACAI,MAAAD,GAEA,EACAG,mBAAAA,GACA,YAAAb,aAAAxb,SAIA,KAAAoc,EAAA,gCAAAZ,cAHA,EAIA,GAGAc,WAAAA,GAKAC,YAAA,KAAAC,2BAAA,MAEAC,EAAAA,GAAAA,IAAA,0BAAAD,6BACAC,EAAAA,GAAAA,IAAA,0BAAAD,6BACAC,EAAAA,GAAAA,IAAA,wBAAAD,6BACAC,EAAAA,GAAAA,IAAA,0BAAAD,2BACA,EAEAE,OAAAA,GAAA,IAAAC,EAAAC,GAWA,QAAAD,EAAA,KAAAnB,oBAAA,IAAAmB,OAAA,EAAAA,EAAAR,OAAA,YAAAS,EAAA,KAAApB,oBAAA,IAAAoB,OAAA,EAAAA,EAAAC,OAAA,GACA,KAAAC,wBAEA,EAEAC,QAAA,CAEAC,4BPmDMC,GADkB,CAAC,EACCC,QAGjB1D,GOtDT,cAAA5pB,GACA,KAAAutB,mBAAAvtB,EACA,GPoDmC,CAC/BsqB,cAA0B,UAHG,IAAjB+C,IAAkCA,OOhDlDT,2BAAAhD,GAAA,cAAA5pB,GACA,KAAAutB,mBAAAvtB,EACA,IAQA,wBAAAutB,GAAA,IAAAvtB,EAAAmC,UAAAZ,OAAA,QAAAc,IAAAF,UAAA,GAAAA,UAAA,QACA,SAAAwpB,oBAAA,CAIA,KAAAA,qBAAA,EACA,QAAA6B,EAAAC,EAAAC,EAAAC,EACA,MAAAC,QAAAC,GAAAA,GAAA7H,KAAA2C,EAAAA,EAAAA,IAAA,6BACA,GAAAiF,SAAA,QAAAJ,EAAAI,EAAA3f,YAAA,IAAAuf,IAAAA,EAAAvf,KACA,UAAAoR,MAAA,0BAKA,QAAAoO,EAAA,KAAA7B,oBAAA,IAAA6B,OAAA,EAAAA,EAAAR,MAAA,YAAAS,EAAAE,EAAA3f,KAAAA,YAAA,IAAAyf,OAAA,EAAAA,EAAAT,OAAA,YAAAU,EAAAC,EAAA3f,KAAAA,YAAA,IAAA0f,OAAA,EAAAA,EAAApB,OAAA,GACA,KAAAW,yBAGA,KAAAtB,aAAAgC,EAAA3f,KAAAA,IACA,OAAAmR,GACA0O,GAAA1O,MAAA,mCAAAA,UAEApf,IACA+tB,EAAAA,GAAAA,IAAAvB,EAAA,2CAEA,SACA,KAAAb,qBAAA,CACA,CAxBA,CAyBA,EAEAuB,sBAAAA,IACAa,EAAAA,GAAAA,IAAA,KAAAvB,EAAA,6EACA,EAEAA,EAAAwB,GAAAA,KPCA,IAEMX,G,sJQvJFxnB,GAAU,CAAC,EAEfA,GAAQooB,kBAAoB,KAC5BpoB,GAAQqoB,cAAgB,KAElBroB,GAAQsoB,OAAS,UAAc,KAAM,QAE3CtoB,GAAQuoB,OAAS,KACjBvoB,GAAQwoB,mBAAqB,KAEhB,KAAI,KAASxoB,IAKJ,MAAW,KAAQyoB,QAAS,KAAQA,OCP1D,UAXgB,QACd,ICTW,WAAkB,IAAIrF,EAAIppB,KAAKqpB,EAAGD,EAAIE,MAAMD,GAAG,OAAQD,EAAI2C,aAAc1C,EAAG,sBAAsB,CAACG,YAAY,uCAAuCzS,MAAM,CAAE,sDAAuDqS,EAAI2C,aAAaW,OAAS,GAAGrc,MAAM,CAAC,aAAa+Y,EAAIuD,EAAE,QAAS,wBAAwB,QAAUvD,EAAI0C,oBAAoB,KAAO1C,EAAI8C,kBAAkB,MAAQ9C,EAAIwD,oBAAoB,0CAA0C,IAAIjqB,GAAG,CAAC,MAAQ,SAAS8mB,GAAyD,OAAjDA,EAAOiF,kBAAkBjF,EAAOpR,iBAAwB+Q,EAAImE,2BAA2B9qB,MAAM,KAAMH,UAAU,IAAI,CAAC+mB,EAAG,WAAW,CAAChZ,MAAM,CAAC,KAAO,OAAO,KAAO,IAAIse,KAAK,SAASvF,EAAIQ,GAAG,KAAMR,EAAI2C,aAAaW,OAAS,EAAGrD,EAAG,gBAAgB,CAAChZ,MAAM,CAAC,KAAO,QAAQ,MAAQ+Y,EAAI2C,aAAaxb,SAAW,GAAG,MAAQkS,KAAKmM,IAAIxF,EAAI2C,aAAaxb,SAAU,MAAMoe,KAAK,UAAUvF,EAAIU,MAAM,GAAGV,EAAIU,IACh2B,GACsB,IDUpB,EACA,KACA,WACA,MAI8B,QEnBhC,I,kCCoBA,MCpB4G,GDoB5G,CACE9oB,KAAM,gBACNgoB,MAAO,CAAC,SACRlb,MAAO,CACLmb,MAAO,CACLlb,KAAMnD,QAERse,UAAW,CACTnb,KAAMnD,OACNoD,QAAS,gBAEXmb,KAAM,CACJpb,KAAMlH,OACNmH,QAAS,MEff,IAXgB,QACd,ICRW,WAAkB,IAAIob,EAAIppB,KAAKqpB,EAAGD,EAAIE,MAAMD,GAAG,OAAOA,EAAG,OAAOD,EAAIG,GAAG,CAACC,YAAY,sCAAsCnZ,MAAM,CAAC,eAAc+Y,EAAIH,OAAQ,KAAY,aAAaG,EAAIH,MAAM,KAAO,OAAOtmB,GAAG,CAAC,MAAQ,SAAS8mB,GAAQ,OAAOL,EAAIM,MAAM,QAASD,EAAO,IAAI,OAAOL,EAAIO,QAAO,GAAO,CAACN,EAAG,MAAM,CAACG,YAAY,4BAA4BnZ,MAAM,CAAC,KAAO+Y,EAAIF,UAAU,MAAQE,EAAID,KAAK,OAASC,EAAID,KAAK,QAAU,cAAc,CAACE,EAAG,OAAO,CAAChZ,MAAM,CAAC,EAAI,oMAAoM,CAAE+Y,EAAS,MAAEC,EAAG,QAAQ,CAACD,EAAIQ,GAAGR,EAAIS,GAAGT,EAAIH,UAAUG,EAAIU,UACltB,GACsB,IDSpB,EACA,KACA,KACA,MAI8B,Q,gBEThC,MCTmL,GDSnL,CACA9oB,KAAA,UACA8M,MAAA,CACAgQ,GAAA,CACA/P,KAAA8gB,SACAxZ,UAAA,IAGA4X,OAAAA,GACA,KAAA6B,IAAAC,YAAA,KAAAjR,KACA,GEDA,IAXgB,QACd,ICRW,WAA+C,OAAOuL,EAA5BrpB,KAAYspB,MAAMD,IAAa,MACtE,GACsB,IDSpB,EACA,KACA,KACA,MAI8B,QEZ1B2F,IAAahD,EAAAA,GAAAA,GAAU,QAAS,SAAU,CAC5CiD,aAAa,EACbC,qBAAqB,EACrBC,sBAAsB,EACtBC,oBAAoB,EACpBC,WAAW,IAEFC,GAAqB,WAC9B,MAsBMC,GAtBQC,EAAAA,EAAAA,IAAY,aAAc,CACpCvT,MAAOA,KAAA,CACH+S,gBAEJS,QAAS,CAILC,QAAAA,CAAS9qB,EAAKQ,GACVkiB,EAAAA,GAAAA,IAAQtnB,KAAKgvB,WAAYpqB,EAAKQ,EAClC,EAIA,YAAMuqB,CAAO/qB,EAAKQ,SACR4oB,GAAAA,GAAM4B,KAAI9G,EAAAA,EAAAA,IAAY,6BAA+BlkB,GAAM,CAC7DQ,WAEJtD,EAAAA,GAAAA,IAAK,uBAAwB,CAAE8C,MAAKQ,SACxC,IAGgByqB,IAAMvtB,WAQ9B,OANKitB,EAAgBO,gBACjB9C,EAAAA,GAAAA,IAAU,wBAAwB,SAAA7C,GAA0B,IAAhB,IAAEvlB,EAAG,MAAEQ,GAAO+kB,EACtDoF,EAAgBG,SAAS9qB,EAAKQ,EAClC,IACAmqB,EAAgBO,cAAe,GAE5BP,CACX,EC7CoL,GCiGpL,CACAvuB,KAAA,WACAwC,WAAA,CACAusB,UAAA,GACAC,oBAAA,KACAC,qBAAA,KACAC,sBAAA,KACAC,aAAA,KACAC,QAAAA,IAGAtiB,MAAA,CACAuiB,KAAA,CACAtiB,KAAAlF,QACAmF,SAAA,IAIAsiB,MAAAA,KAEA,CACAf,gBAFAD,OAMAlhB,IAAAA,GAAA,IAAAmiB,EAAAC,EAAAC,EACA,OAEAC,UAAA,QAAAH,EAAA/X,OAAAmY,WAAA,IAAAJ,GAAA,QAAAA,EAAAA,EAAAK,aAAA,IAAAL,GAAA,QAAAA,EAAAA,EAAAM,gBAAA,IAAAN,OAAA,EAAAA,EAAAG,WAAA,GAGAI,WAAAC,EAAAA,EAAAA,IAAA,aAAAzrB,mBAAA,QAAAkrB,GAAAQ,EAAAA,EAAAA,aAAA,IAAAR,OAAA,EAAAA,EAAAS,MACAC,WAAA,iEACAC,gBAAArI,EAAAA,EAAAA,IAAA,sDACAsI,iBAAA,EACAC,eAAA,QAAAZ,GAAAzE,EAAAA,GAAAA,GAAA,iEAAAyE,GAAAA,EAEA,EAEAxE,SAAA,CACA+C,UAAAA,GACA,YAAAO,gBAAAP,UACA,GAGAnC,WAAAA,GAEA,KAAA6D,SAAA3lB,SAAAumB,GAAAA,EAAAjB,QACA,EAEAkB,aAAAA,GAEA,KAAAb,SAAA3lB,SAAAumB,GAAAA,EAAAE,SACA,EAEAlE,QAAA,CACAmE,OAAAA,GACA,KAAA/H,MAAA,QACA,EAEAgI,SAAAA,CAAA9sB,EAAAQ,GACA,KAAAmqB,gBAAAI,OAAA/qB,EAAAQ,EACA,EAEA,iBAAAusB,GACA5T,SAAAE,cAAA,0BAAA2T,SAEAhT,UAAAiT,iBAMAjT,UAAAiT,UAAAC,UAAA,KAAAhB,WACA,KAAAM,iBAAA,GACAW,EAAAA,GAAAA,IAAApF,EAAA,2CACAxB,YAAA,KACA,KAAAiG,iBAAA,IACA,OATAlD,EAAAA,GAAAA,IAAAvB,EAAA,sCAUA,EAEAA,EAAAwB,GAAAA,K,eCvKI,GAAU,CAAC,EAEf,GAAQC,kBAAoB,KAC5B,GAAQC,cAAgB,KAElB,GAAQC,OAAS,UAAc,KAAM,QAE3C,GAAQC,OAAS,KACjB,GAAQC,mBAAqB,KAEhB,KAAI,KAAS,IAKJ,MAAW,KAAQC,QAAS,KAAQA,OCP1D,UAXgB,QACd,IbTW,WAAkB,IAAIrF,EAAIppB,KAAKqpB,EAAGD,EAAIE,MAAMD,GAAG,OAAOA,EAAG,sBAAsB,CAAChZ,MAAM,CAAC,KAAO+Y,EAAIiH,KAAK,mBAAkB,EAAK,KAAOjH,EAAIuD,EAAE,QAAS,mBAAmBhqB,GAAG,CAAC,cAAcymB,EAAIqI,UAAU,CAACpI,EAAG,uBAAuB,CAAChZ,MAAM,CAAC,GAAK,WAAW,KAAO+Y,EAAIuD,EAAE,QAAS,oBAAoB,CAACtD,EAAG,wBAAwB,CAAChZ,MAAM,CAAC,iCAAiC,uBAAuB,QAAU+Y,EAAI4F,WAAWG,sBAAsBxsB,GAAG,CAAC,iBAAiB,SAAS8mB,GAAQ,OAAOL,EAAIsI,UAAU,uBAAwBjI,EAAO,IAAI,CAACL,EAAIQ,GAAG,WAAWR,EAAIS,GAAGT,EAAIuD,EAAE,QAAS,yBAAyB,YAAYvD,EAAIQ,GAAG,KAAKP,EAAG,wBAAwB,CAAChZ,MAAM,CAAC,iCAAiC,qBAAqB,QAAU+Y,EAAI4F,WAAWI,oBAAoBzsB,GAAG,CAAC,iBAAiB,SAAS8mB,GAAQ,OAAOL,EAAIsI,UAAU,qBAAsBjI,EAAO,IAAI,CAACL,EAAIQ,GAAG,WAAWR,EAAIS,GAAGT,EAAIuD,EAAE,QAAS,8BAA8B,YAAYvD,EAAIQ,GAAG,KAAKP,EAAG,wBAAwB,CAAChZ,MAAM,CAAC,iCAAiC,cAAc,QAAU+Y,EAAI4F,WAAWC,aAAatsB,GAAG,CAAC,iBAAiB,SAAS8mB,GAAQ,OAAOL,EAAIsI,UAAU,cAAejI,EAAO,IAAI,CAACL,EAAIQ,GAAG,WAAWR,EAAIS,GAAGT,EAAIuD,EAAE,QAAS,sBAAsB,YAAYvD,EAAIQ,GAAG,KAAKP,EAAG,wBAAwB,CAAChZ,MAAM,CAAC,iCAAiC,sBAAsB,QAAU+Y,EAAI4F,WAAWE,qBAAqBvsB,GAAG,CAAC,iBAAiB,SAAS8mB,GAAQ,OAAOL,EAAIsI,UAAU,sBAAuBjI,EAAO,IAAI,CAACL,EAAIQ,GAAG,WAAWR,EAAIS,GAAGT,EAAIuD,EAAE,QAAS,wBAAwB,YAAYvD,EAAIQ,GAAG,KAAMR,EAAIiI,eAAgBhI,EAAG,wBAAwB,CAAChZ,MAAM,CAAC,iCAAiC,YAAY,QAAU+Y,EAAI4F,WAAWK,WAAW1sB,GAAG,CAAC,iBAAiB,SAAS8mB,GAAQ,OAAOL,EAAIsI,UAAU,YAAajI,EAAO,IAAI,CAACL,EAAIQ,GAAG,WAAWR,EAAIS,GAAGT,EAAIuD,EAAE,QAAS,yBAAyB,YAAYvD,EAAIU,MAAM,GAAGV,EAAIQ,GAAG,KAA8B,IAAxBR,EAAIsH,SAAShvB,OAAc2nB,EAAG,uBAAuB,CAAChZ,MAAM,CAAC,GAAK,gBAAgB,KAAO+Y,EAAIuD,EAAE,QAAS,yBAAyB,CAACvD,EAAI4I,GAAI5I,EAAIsH,UAAU,SAASY,GAAS,MAAO,CAACjI,EAAG,UAAU,CAACzkB,IAAI0sB,EAAQtwB,KAAKqP,MAAM,CAAC,GAAKihB,EAAQxT,MAAM,KAAI,GAAGsL,EAAIU,KAAKV,EAAIQ,GAAG,KAAKP,EAAG,uBAAuB,CAAChZ,MAAM,CAAC,GAAK,SAAS,KAAO+Y,EAAIuD,EAAE,QAAS,YAAY,CAACtD,EAAG,eAAe,CAAChZ,MAAM,CAAC,GAAK,mBAAmB,MAAQ+Y,EAAIuD,EAAE,QAAS,cAAc,wBAAuB,EAAK,QAAUvD,EAAIgI,gBAAgB,wBAAwBhI,EAAIuD,EAAE,QAAS,qBAAqB,MAAQvD,EAAI0H,UAAU,SAAW,WAAW,KAAO,OAAOnuB,GAAG,CAAC,MAAQ,SAAS8mB,GAAQ,OAAOA,EAAOhT,OAAOmb,QAAQ,EAAE,wBAAwBxI,EAAIuI,aAAaM,YAAY7I,EAAI8I,GAAG,CAAC,CAACttB,IAAI,uBAAuB/E,GAAG,WAAW,MAAO,CAACwpB,EAAG,YAAY,CAAChZ,MAAM,CAAC,KAAO,MAAM,EAAE8hB,OAAM,OAAU/I,EAAIQ,GAAG,KAAKP,EAAG,KAAK,CAACA,EAAG,IAAI,CAACG,YAAY,eAAenZ,MAAM,CAAC,KAAO+Y,EAAI8H,WAAW,OAAS,SAAS,IAAM,wBAAwB,CAAC9H,EAAIQ,GAAG,aAAaR,EAAIS,GAAGT,EAAIuD,EAAE,QAAS,qDAAqD,kBAAkBvD,EAAIQ,GAAG,KAAKP,EAAG,MAAMD,EAAIQ,GAAG,KAAKP,EAAG,KAAK,CAACA,EAAG,IAAI,CAACG,YAAY,eAAenZ,MAAM,CAAC,KAAO+Y,EAAI+H,iBAAiB,CAAC/H,EAAIQ,GAAG,aAAaR,EAAIS,GAAGT,EAAIuD,EAAE,QAAS,0FAA0F,mBAAmB,IAAI,EAChqG,GACsB,IaUpB,EACA,KACA,WACA,MAI8B,QCdzB,SAASyF,KACZ,MAAMC,GAAaC,EAAAA,EAAAA,MACbC,GAAQC,EAAAA,EAAAA,IAAWH,EAAWE,OAC9BE,GAAcD,EAAAA,EAAAA,IAAWH,EAAWK,QAK1C,SAASC,EAAexyB,GACpBsyB,EAAYrtB,MAAQjF,EAAMyyB,MAC9B,CAIA,SAASC,IACLN,EAAMntB,MAAQitB,EAAWE,KAC7B,CASA,OARAO,EAAAA,EAAAA,KAAU,KACNT,EAAWlW,iBAAiB,SAAU0W,GACtCR,EAAWlW,iBAAiB,eAAgBwW,EAAe,KAE/DI,EAAAA,EAAAA,KAAY,KACRV,EAAWhW,oBAAoB,SAAUwW,GACzCR,EAAWhW,oBAAoB,eAAgBsW,EAAe,IAE3D,CACHF,cACAF,QAER,CCxBA,MAAMS,IAAahH,EAAAA,GAAAA,GAAU,QAAS,cAAe,CAAC,GACzCiH,GAAqB,WAC9B,MAAMpD,GAAQL,EAAAA,EAAAA,IAAY,aAAc,CACpCvT,MAAOA,KAAA,CACH+W,gBAEJE,QAAS,CACLC,UAAYlX,GAAW8M,GAAS9M,EAAM+W,WAAWjK,IAAS,CAAC,GAE/D0G,QAAS,CAILC,QAAAA,CAAS3G,EAAMnkB,EAAKQ,GACXpF,KAAKgzB,WAAWjK,IACjBzB,EAAAA,GAAAA,IAAQtnB,KAAKgzB,WAAYjK,EAAM,CAAC,GAEpCzB,EAAAA,GAAAA,IAAQtnB,KAAKgzB,WAAWjK,GAAOnkB,EAAKQ,EACxC,EAIA,YAAMuqB,CAAO5G,EAAMnkB,EAAKQ,GACpB4oB,GAAAA,GAAM4B,KAAI9G,EAAAA,EAAAA,IAAY,4BAADznB,OAA6B0nB,EAAI,KAAA1nB,OAAIuD,IAAQ,CAC9DQ,WAEJtD,EAAAA,GAAAA,IAAK,2BAA4B,CAAEinB,OAAMnkB,MAAKQ,SAClD,EAMAguB,YAAAA,GAA+C,IAAlCxuB,EAAGtC,UAAAZ,OAAA,QAAAc,IAAAF,UAAA,GAAAA,UAAA,GAAG,WAAYymB,EAAIzmB,UAAAZ,OAAA,QAAAc,IAAAF,UAAA,GAAAA,UAAA,GAAG,QAElCtC,KAAK2vB,OAAO5G,EAAM,eAAgBnkB,GAClC5E,KAAK2vB,OAAO5G,EAAM,oBAAqB,MAC3C,EAIAsK,sBAAAA,GAAuC,IAAhBtK,EAAIzmB,UAAAZ,OAAA,QAAAc,IAAAF,UAAA,GAAAA,UAAA,GAAG,QAC1B,MACMgxB,EAA4C,SADnCtzB,KAAKmzB,UAAUpK,IAAS,CAAEwK,kBAAmB,QAChCA,kBAA8B,OAAS,MAEnEvzB,KAAK2vB,OAAO5G,EAAM,oBAAqBuK,EAC3C,KAGFE,EAAkB3D,KAAMvtB,WAQ9B,OANKkxB,EAAgB1D,gBACjB9C,EAAAA,GAAAA,IAAU,4BAA4B,SAAA7C,GAAgC,IAAtB,KAAEpB,EAAI,IAAEnkB,EAAG,MAAEQ,GAAO+kB,EAChEqJ,EAAgB9D,SAAS3G,EAAMnkB,EAAKQ,EACxC,IACAouB,EAAgB1D,cAAe,GAE5B0D,CACX,ECpE0P,ICY3OC,EAAAA,EAAAA,IAAgB,CAC3BzyB,KAAM,aACNwC,WAAY,CACRkwB,QAAO,GACPC,gBAAe,GACfC,gBAAe,KACfhI,oBAAmB,KACnBiI,iBAAgB,KAChBC,cAAaA,IAEjBxD,KAAAA,GACI,MAAMkD,EAAkBP,MAClB,YAAER,EAAW,MAAEF,GAAUH,KAC/B,MAAO,CACHK,cACAF,QACAiB,kBAER,EACAplB,KAAIA,KACO,CACH2lB,gBAAgB,IAGxB9H,SAAU,CAIN+H,aAAAA,GAAgB,IAAAC,EACZ,OAAkB,QAAXA,EAAA,KAAKzlB,cAAM,IAAAylB,GAAQ,QAARA,EAAXA,EAAa/nB,cAAM,IAAA+nB,OAAA,EAAnBA,EAAqBlL,OAAQ,OACxC,EACAmL,WAAAA,GACI,OAAO,KAAK3B,MAEPjpB,QAAOyf,IAASA,EAAKrc,SAErBhG,MAAK,CAACC,EAAGC,IACHD,EAAEwtB,MAAQvtB,EAAEutB,OAE3B,EACAC,UAAAA,GACI,OAAO,KAAK7B,MAEPjpB,QAAOyf,KAAUA,EAAKrc,SAEtB9D,QAAO,CAACwe,EAAM2B,KACf3B,EAAK2B,EAAKrc,QAAU,IAAK0a,EAAK2B,EAAKrc,SAAW,GAAKqc,GAEnD3B,EAAK2B,EAAKrc,QAAQhG,MAAK,CAACC,EAAGC,IAChBD,EAAEwtB,MAAQvtB,EAAEutB,QAEhB/M,IACR,CAAC,EACR,GAEJiN,MAAO,CACHL,aAAAA,CAAcM,EAASC,GAAS,IAAAC,EAC5B,GAAI,KAAKR,iBAAkC,QAArBQ,EAAK,KAAK/B,mBAAW,IAAA+B,OAAA,EAAhBA,EAAkBC,IAAI,CAE7C,MAAM1L,EAAO,KAAKwJ,MAAMmC,MAAKvK,IAAA,IAAC,GAAEsK,GAAItK,EAAA,OAAKsK,IAAO,KAAKT,aAAa,IAElE,KAAKW,SAAS5L,GACdkF,GAAO2G,MAAK,2BAAAvzB,OAA4BkzB,EAAO,QAAAlzB,OAAOizB,GAAW,CAAElf,GAAI2T,GAC3E,CACJ,GAEJ8D,WAAAA,GAEI,MAAM9D,EAAO,KAAKwJ,MAAMmC,MAAKG,IAAA,IAAC,GAAEJ,GAAII,EAAA,OAAKJ,IAAO,KAAKT,aAAa,IAClE,KAAKW,SAAS5L,GACdkF,GAAO2G,MAAM,6CAA8C,CAAE7L,QACjE,EACAuE,QAAS,CACLX,EAAC,MAODmI,qBAAAA,CAAsB/L,GAAM,IAAAgM,EACxB,OAA+B,QAAxBA,EAAA,KAAKX,WAAWrL,EAAK0L,WAAG,IAAAM,OAAA,EAAxBA,EAA0BrzB,QAAS,CAC9C,EAKAizB,QAAAA,CAAS5L,GAAM,IAAAwH,EAAAyE,EAED,QAAVzE,EAAA/X,OAAOmY,WAAG,IAAAJ,GAAO,QAAPA,EAAVA,EAAYK,aAAK,IAAAL,GAAS,QAATA,EAAjBA,EAAmB0E,eAAO,IAAA1E,GAAO,QAAPyE,EAA1BzE,EAA4BiB,aAAK,IAAAwD,GAAjCA,EAAA9zB,KAAAqvB,GACA,KAAK2E,YAAYC,UAAUpM,IAC3BjnB,EAAAA,GAAAA,IAAK,2BAA4BinB,EACrC,EAMAqM,cAAAA,CAAerM,GAEX,MAAMsM,EAAa,KAAKA,WAAWtM,GAEnCA,EAAKuM,UAAYD,EACjB,KAAK7B,gBAAgB7D,OAAO5G,EAAK0L,GAAI,YAAaY,EACtD,EAMAA,UAAAA,CAAWtM,GAAM,IAAAwM,EACb,MAAoE,kBAAf,QAA9CA,EAAO,KAAK/B,gBAAgBL,UAAUpK,EAAK0L,WAAG,IAAAc,OAAA,EAAvCA,EAAyCD,WACI,IAArD,KAAK9B,gBAAgBL,UAAUpK,EAAK0L,IAAIa,UACtB,IAAlBvM,EAAKuM,QACf,EAKAE,oBAAAA,CAAqBzM,GACjB,GAAIA,EAAK7c,OAAQ,CACb,MAAM,IAAEupB,GAAQ1M,EAAK7c,OACrB,MAAO,CAAElL,KAAM,WAAYkL,OAAQ6c,EAAK7c,OAAQxE,MAAO,CAAE+tB,OAC7D,CACA,MAAO,CAAEz0B,KAAM,WAAYkL,OAAQ,CAAE6c,KAAMA,EAAK0L,IACpD,EAIAiB,YAAAA,GACI,KAAK3B,gBAAiB,CAC1B,EAIA4B,eAAAA,GACI,KAAK5B,gBAAiB,CAC1B,K,gBC1IJ,GAAU,CAAC,EAEf,GAAQ3F,kBAAoB,KAC5B,GAAQC,cAAgB,KAElB,GAAQC,OAAS,UAAc,KAAM,QAE3C,GAAQC,OAAS,KACjB,GAAQC,mBAAqB,KAEhB,KAAI,KAAS,IAKJ,MAAW,KAAQC,QAAS,KAAQA,OCP1D,UAXgB,QACd,IFTW,WAAkB,IAAIrF,EAAIppB,KAAKqpB,EAAGD,EAAIE,MAAMD,GAAgC,OAAtBD,EAAIE,MAAMsM,YAAmBvM,EAAG,kBAAkB,CAAChZ,MAAM,CAAC,2BAA2B,GAAG,aAAa+Y,EAAIuD,EAAE,QAAS,UAAUsF,YAAY7I,EAAI8I,GAAG,CAAC,CAACttB,IAAI,OAAO/E,GAAG,WAAW,OAAOupB,EAAI4I,GAAI5I,EAAI8K,aAAa,SAASnL,GAAM,OAAOM,EAAG,sBAAsB,CAACzkB,IAAImkB,EAAK0L,GAAGpkB,MAAM,CAAC,kBAAiB,EAAK,gCAAgC0Y,EAAK0L,GAAG,MAAQrL,EAAI0L,sBAAsB/L,GAAM,KAAOA,EAAK8M,UAAU,KAAO9M,EAAK/nB,KAAK,KAAOooB,EAAIiM,WAAWtM,GAAM,OAASA,EAAK+M,OAAO,GAAK1M,EAAIoM,qBAAqBzM,IAAOpmB,GAAG,CAAC,cAAc,SAAS8mB,GAAQ,OAAOL,EAAIgM,eAAerM,EAAK,IAAI,CAAEA,EAAKgN,KAAM1M,EAAG,mBAAmB,CAAChZ,MAAM,CAAC,KAAO,OAAO,IAAM0Y,EAAKgN,MAAMpH,KAAK,SAASvF,EAAIU,KAAKV,EAAIQ,GAAG,KAAKR,EAAI4I,GAAI5I,EAAIgL,WAAWrL,EAAK0L,KAAK,SAASnc,GAAO,OAAO+Q,EAAG,sBAAsB,CAACzkB,IAAI0T,EAAMmc,GAAGpkB,MAAM,CAAC,gCAAgCiI,EAAMmc,GAAG,cAAa,EAAK,KAAOnc,EAAMud,UAAU,KAAOvd,EAAMtX,KAAK,GAAKooB,EAAIoM,qBAAqBld,KAAS,CAAEA,EAAMyd,KAAM1M,EAAG,mBAAmB,CAAChZ,MAAM,CAAC,KAAO,OAAO,IAAMiI,EAAMyd,MAAMpH,KAAK,SAASvF,EAAIU,MAAM,EAAE,KAAI,EAAE,GAAE,EAAEqI,OAAM,GAAM,CAACvtB,IAAI,SAAS/E,GAAG,WAAW,MAAO,CAACwpB,EAAG,KAAK,CAACG,YAAY,kCAAkC,CAACH,EAAG,mBAAmBD,EAAIQ,GAAG,KAAKP,EAAG,sBAAsB,CAAChZ,MAAM,CAAC,aAAa+Y,EAAIuD,EAAE,QAAS,+BAA+B,KAAOvD,EAAIuD,EAAE,QAAS,kBAAkB,2CAA2C,IAAIhqB,GAAG,CAAC,MAAQ,SAAS8mB,GAAyD,OAAjDA,EAAOpR,iBAAiBoR,EAAOiF,kBAAyBtF,EAAIsM,aAAajzB,MAAM,KAAMH,UAAU,IAAI,CAAC+mB,EAAG,UAAU,CAAChZ,MAAM,CAAC,KAAO,OAAO,KAAO,IAAIse,KAAK,UAAU,IAAI,GAAG,EAAEwD,OAAM,MAAS,CAAC/I,EAAIQ,GAAG,KAAKR,EAAIQ,GAAG,KAAKP,EAAG,gBAAgB,CAAChZ,MAAM,CAAC,KAAO+Y,EAAI2K,eAAe,oCAAoC,IAAIpxB,GAAG,CAAC,MAAQymB,EAAIuM,oBAAoB,EACtvD,GACsB,IEUpB,EACA,KACA,WACA,MAI8B,QCnBhC,I,2DCoBA,MCpB2H,GDoB3H,CACE30B,KAAM,+BACNgoB,MAAO,CAAC,SACRlb,MAAO,CACLmb,MAAO,CACLlb,KAAMnD,QAERse,UAAW,CACTnb,KAAMnD,OACNoD,QAAS,gBAEXmb,KAAM,CACJpb,KAAMlH,OACNmH,QAAS,MEff,IAXgB,QACd,ICRW,WAAkB,IAAIob,EAAIppB,KAAKqpB,EAAGD,EAAIE,MAAMD,GAAG,OAAOA,EAAG,OAAOD,EAAIG,GAAG,CAACC,YAAY,wDAAwDnZ,MAAM,CAAC,eAAc+Y,EAAIH,OAAQ,KAAY,aAAaG,EAAIH,MAAM,KAAO,OAAOtmB,GAAG,CAAC,MAAQ,SAAS8mB,GAAQ,OAAOL,EAAIM,MAAM,QAASD,EAAO,IAAI,OAAOL,EAAIO,QAAO,GAAO,CAACN,EAAG,MAAM,CAACG,YAAY,4BAA4BnZ,MAAM,CAAC,KAAO+Y,EAAIF,UAAU,MAAQE,EAAID,KAAK,OAASC,EAAID,KAAK,QAAU,cAAc,CAACE,EAAG,OAAO,CAAChZ,MAAM,CAAC,EAAI,4FAA4F,CAAE+Y,EAAS,MAAEC,EAAG,QAAQ,CAACD,EAAIQ,GAAGR,EAAIS,GAAGT,EAAIH,UAAUG,EAAIU,UAC5nB,GACsB,IDSpB,EACA,KACA,KACA,MAI8B,Q,+DEEhC,MCpB8G,GDoB9G,CACE9oB,KAAM,kBACNgoB,MAAO,CAAC,SACRlb,MAAO,CACLmb,MAAO,CACLlb,KAAMnD,QAERse,UAAW,CACTnb,KAAMnD,OACNoD,QAAS,gBAEXmb,KAAM,CACJpb,KAAMlH,OACNmH,QAAS,MEff,IAXgB,QACd,ICRW,WAAkB,IAAIob,EAAIppB,KAAKqpB,EAAGD,EAAIE,MAAMD,GAAG,OAAOA,EAAG,OAAOD,EAAIG,GAAG,CAACC,YAAY,yCAAyCnZ,MAAM,CAAC,eAAc+Y,EAAIH,OAAQ,KAAY,aAAaG,EAAIH,MAAM,KAAO,OAAOtmB,GAAG,CAAC,MAAQ,SAAS8mB,GAAQ,OAAOL,EAAIM,MAAM,QAASD,EAAO,IAAI,OAAOL,EAAIO,QAAO,GAAO,CAACN,EAAG,MAAM,CAACG,YAAY,4BAA4BnZ,MAAM,CAAC,KAAO+Y,EAAIF,UAAU,MAAQE,EAAID,KAAK,OAASC,EAAID,KAAK,QAAU,cAAc,CAACE,EAAG,OAAO,CAAChZ,MAAM,CAAC,EAAI,sKAAsK,CAAE+Y,EAAS,MAAEC,EAAG,QAAQ,CAACD,EAAIQ,GAAGR,EAAIS,GAAGT,EAAIH,UAAUG,EAAIU,UACvrB,GACsB,IDSpB,EACA,KACA,KACA,MAI8B,QElB2E,GCoB3G,CACE9oB,KAAM,eACNgoB,MAAO,CAAC,SACRlb,MAAO,CACLmb,MAAO,CACLlb,KAAMnD,QAERse,UAAW,CACTnb,KAAMnD,OACNoD,QAAS,gBAEXmb,KAAM,CACJpb,KAAMlH,OACNmH,QAAS,MCff,IAXgB,QACd,ICRW,WAAkB,IAAIob,EAAIppB,KAAKqpB,EAAGD,EAAIE,MAAMD,GAAG,OAAOA,EAAG,OAAOD,EAAIG,GAAG,CAACC,YAAY,sCAAsCnZ,MAAM,CAAC,eAAc+Y,EAAIH,OAAQ,KAAY,aAAaG,EAAIH,MAAM,KAAO,OAAOtmB,GAAG,CAAC,MAAQ,SAAS8mB,GAAQ,OAAOL,EAAIM,MAAM,QAASD,EAAO,IAAI,OAAOL,EAAIO,QAAO,GAAO,CAACN,EAAG,MAAM,CAACG,YAAY,4BAA4BnZ,MAAM,CAAC,KAAO+Y,EAAIF,UAAU,MAAQE,EAAID,KAAK,OAASC,EAAID,KAAK,QAAU,cAAc,CAACE,EAAG,OAAO,CAAChZ,MAAM,CAAC,EAAI,0DAA0D,CAAE+Y,EAAS,MAAEC,EAAG,QAAQ,CAACD,EAAIQ,GAAGR,EAAIS,GAAGT,EAAIH,UAAUG,EAAIU,UACxkB,GACsB,IDSpB,EACA,KACA,KACA,MAI8B,Q,gBEVzB,MACMkM,GAAS,IAAIC,EAAAA,GAAW,CACjCxB,GAF0B,UAG1ByB,YAAaA,KAAMvJ,EAAAA,GAAAA,IAAE,QAAS,gBAC9BwJ,cAAeA,IAAMC,GAErBC,QAAUC,IAAU,IAAAC,EAAApM,EAAAqM,EAEhB,OAAqB,IAAjBF,EAAM50B,UAGL40B,EAAM,MAIA,QAAPC,EAAC/d,cAAM,IAAA+d,GAAK,QAALA,EAANA,EAAQ5F,WAAG,IAAA4F,GAAO,QAAPA,EAAXA,EAAa3F,aAAK,IAAA2F,IAAlBA,EAAoBtB,UAG+D,QAAxF9K,GAAqB,QAAbqM,EAAAF,EAAM,GAAGG,YAAI,IAAAD,OAAA,EAAbA,EAAeE,WAAW,aAAcJ,EAAM,GAAGK,cAAgBC,EAAAA,GAAWC,YAAI,IAAA1M,GAAAA,CAAU,EAEtG,UAAM/jB,CAAK0wB,EAAM/N,EAAM0M,GACnB,IAKI,aAHMjd,OAAOmY,IAAIC,MAAMqE,QAAQ5E,KAAKyG,EAAK7qB,MAEzCuM,OAAOue,IAAInG,MAAMhI,OAAOoO,UAAU,KAAM,CAAEjO,KAAMA,EAAK0L,GAAIwC,OAAQH,EAAKG,QAAU,IAAKze,OAAOue,IAAInG,MAAMhI,OAAOlhB,MAAO+tB,QAAO,GACpH,IACX,CACA,MAAOlW,GAEH,OADA0O,GAAO1O,MAAM,8BAA+B,CAAEA,WACvC,CACX,CACJ,EACA4U,OAAQ,KCpCC+C,IAASC,EAAAA,EAAAA,MCKhBC,GAAYC,UACd,MAAMC,GAAkBC,EAAAA,EAAAA,MAClB7yB,QAAewyB,GAAOM,KAAK,GAADn2B,OAAIo2B,EAAAA,IAAWp2B,OAAGy1B,EAAK7qB,MAAQ,CAC3DyrB,SAAS,EACTtpB,KAAMkpB,IAEV,OAAOK,EAAAA,EAAAA,IAAgBjzB,EAAO0J,KAAK,EAE1BwpB,GAAgB,WACzB,MA+EMC,GA/EQrI,EAAAA,EAAAA,IAAY,QAAS,CAC/BvT,MAAOA,KAAA,CACH6b,MAAO,CAAC,EACRC,MAAO,CAAC,IAEZ7E,QAAS,CAIL8E,QAAU/b,GAAW3K,GAAW2K,EAAM6b,MAAMxmB,GAK5C2mB,SAAWhc,GAAWic,GAAYA,EAC7BpxB,KAAIwK,GAAU2K,EAAM6b,MAAMxmB,KAC1BhI,OAAOT,SAMZsvB,aAAelc,GAAWmc,GAAW74B,OAAO84B,OAAOpc,EAAM6b,OAAOxuB,QAAOwtB,GAAQA,EAAKG,SAAWmB,IAI/FE,QAAUrc,GAAWsc,GAAYtc,EAAM8b,MAAMQ,IAEjD9I,QAAS,CACL+I,WAAAA,CAAYlC,GAER,MAAMwB,EAAQxB,EAAM1tB,QAAO,CAAC6vB,EAAK3B,IACxBA,EAAKG,QAIVwB,EAAI3B,EAAKxlB,QAAUwlB,EACZ2B,IAJHxK,GAAO1O,MAAM,6CAA8C,CAAEuX,SACtD2B,IAIZ,CAAC,GACJnR,EAAAA,GAAAA,IAAQtnB,KAAM,QAAS,IAAKA,KAAK83B,SAAUA,GAC/C,EACAY,WAAAA,CAAYpC,GACRA,EAAMvrB,SAAQ+rB,IACNA,EAAKxlB,QACLgW,EAAAA,GAAIqR,OAAO34B,KAAK83B,MAAOhB,EAAKxlB,OAChC,GAER,EACAsnB,OAAAA,CAAOzO,GAAoB,IAAnB,QAAEoO,EAAO,KAAE9B,GAAMtM,EACrB7C,EAAAA,GAAAA,IAAQtnB,KAAK+3B,MAAOQ,EAAS9B,EACjC,EACAoC,aAAAA,CAAc/B,GACV92B,KAAK04B,YAAY,CAAC5B,GACtB,EACAgC,aAAAA,CAAchC,GACV92B,KAAKw4B,YAAY,CAAC1B,GACtB,EACA,mBAAMiC,CAAcjC,GAChB,IAAKA,EAAKG,OAEN,YADAhJ,GAAO1O,MAAM,6CAA8C,CAAEuX,SAIjE,MAAMR,EAAQt2B,KAAKm4B,aAAarB,EAAKG,QACrC,GAAIX,EAAM50B,OAAS,EAGf,aAFMklB,QAAQoS,IAAI1C,EAAMxvB,IAAIswB,KAAYpa,KAAKhd,KAAKw4B,kBAClDvK,GAAO2G,MAAM0B,EAAM50B,OAAS,0BAA2B,CAAEu1B,OAAQH,EAAKG,SAItEH,EAAKxlB,SAAWglB,EAAM,GAAGhlB,OAK7B8lB,GAAUN,GAAM9Z,MAAK4H,GAAK5kB,KAAKw4B,YAAY,CAAC5T,MAJxC5kB,KAAKw4B,YAAY,CAAC1B,GAK1B,IAGUjH,IAAMvtB,WAQxB,OANKu1B,EAAU/H,gBACX9C,EAAAA,GAAAA,IAAU,qBAAsB6K,EAAUiB,gBAC1C9L,EAAAA,GAAAA,IAAU,qBAAsB6K,EAAUgB,gBAC1C7L,EAAAA,GAAAA,IAAU,qBAAsB6K,EAAUkB,eAC1ClB,EAAU/H,cAAe,GAEtB+H,CACX,ECrGaoB,GAAgB,WACzB,MAAMnB,EAAQF,MAAct1B,WAoEtB42B,GAnEQ1J,EAAAA,EAAAA,IAAY,QAAS,CAC/BvT,MAAOA,KAAA,CACHkd,MAAO,CAAC,IAEZjG,QAAS,CACLkG,QAAUnd,GACC,CAACsc,EAAStsB,KACb,GAAKgQ,EAAMkd,MAAMZ,GAGjB,OAAOtc,EAAMkd,MAAMZ,GAAStsB,EAAK,GAI7CwjB,QAAS,CACL4J,OAAAA,CAAQC,GAECt5B,KAAKm5B,MAAMG,EAAQf,UACpBjR,EAAAA,GAAAA,IAAQtnB,KAAKm5B,MAAOG,EAAQf,QAAS,CAAC,GAG1CjR,EAAAA,GAAAA,IAAQtnB,KAAKm5B,MAAMG,EAAQf,SAAUe,EAAQrtB,KAAMqtB,EAAQhoB,OAC/D,EACAwnB,aAAAA,CAAchC,GAAM,IAAAyC,EAChB,MAAMhB,GAAyB,QAAfgB,GAAAjH,EAAAA,EAAAA,aAAe,IAAAiH,GAAQ,QAARA,EAAfA,EAAiB7G,cAAM,IAAA6G,OAAA,EAAvBA,EAAyB9E,KAAM,QAC/C,GAAKqC,EAAKG,OAAV,CAcA,GATIH,EAAK/oB,OAASyrB,EAAAA,GAASC,QACvBz5B,KAAKq5B,QAAQ,CACTd,UACAtsB,KAAM6qB,EAAK7qB,KACXqF,OAAQwlB,EAAKxlB,SAKA,MAAjBwlB,EAAK4C,QAAiB,CACtB,MAAMjD,EAAOqB,EAAMQ,QAAQC,GAK3B,OAJK9B,EAAKkD,WACNrS,EAAAA,GAAAA,IAAQmP,EAAM,YAAa,SAE/BA,EAAKkD,UAAUn5B,KAAKs2B,EAAKxlB,OAE7B,CAGA,GAAItR,KAAKm5B,MAAMZ,GAASzB,EAAK4C,SAAU,CACnC,MAAME,EAAe55B,KAAKm5B,MAAMZ,GAASzB,EAAK4C,SACxCG,EAAe/B,EAAME,QAAQ4B,GAEnC,OADA3L,GAAO2G,MAAM,yCAA0C,CAAEiF,eAAc/C,SAClE+C,GAIAA,EAAaF,WACdrS,EAAAA,GAAAA,IAAQuS,EAAc,YAAa,SAEvCA,EAAaF,UAAUn5B,KAAKs2B,EAAKxlB,cAN7B2c,GAAO1O,MAAM,0BAA2B,CAAEqa,gBAQlD,CACA3L,GAAO2G,MAAM,wDAAyD,CAAEkC,QAnCxE,MAFI7I,GAAO1O,MAAM,qBAAsB,CAAEuX,QAsC7C,IAGWjH,IAAMvtB,WASzB,OAPK42B,EAAWpJ,gBAEZ9C,EAAAA,GAAAA,IAAU,qBAAsBkM,EAAWJ,eAG3CI,EAAWpJ,cAAe,GAEvBoJ,CACX,ECnFaY,IAAoBtK,EAAAA,EAAAA,IAAY,YAAa,CACtDvT,MAAOA,KAAA,CACH8d,SAAU,GACVC,cAAe,GACfC,kBAAmB,OAEvBxK,QAAS,CAILyK,GAAAA,GAAoB,IAAhBC,EAAS73B,UAAAZ,OAAA,QAAAc,IAAAF,UAAA,GAAAA,UAAA,GAAG,GACZglB,EAAAA,GAAAA,IAAQtnB,KAAM,WAAY,IAAI,IAAIo6B,IAAID,IAC1C,EAIAE,YAAAA,GAAuC,IAA1BJ,EAAiB33B,UAAAZ,OAAA,QAAAc,IAAAF,UAAA,GAAAA,UAAA,GAAG,KAE7BglB,EAAAA,GAAAA,IAAQtnB,KAAM,gBAAiBi6B,EAAoBj6B,KAAK+5B,SAAW,IACnEzS,EAAAA,GAAAA,IAAQtnB,KAAM,oBAAqBi6B,EACvC,EAIAK,KAAAA,GACIhT,EAAAA,GAAAA,IAAQtnB,KAAM,WAAY,IAC1BsnB,EAAAA,GAAAA,IAAQtnB,KAAM,gBAAiB,IAC/BsnB,EAAAA,GAAAA,IAAQtnB,KAAM,oBAAqB,KACvC,KC5BR,IAAIu6B,GACG,MAAMC,GAAmB,WAQ5B,OANAD,IAAWE,EAAAA,GAAAA,MACGjL,EAAAA,EAAAA,IAAY,WAAY,CAClCvT,MAAOA,KAAA,CACH8D,MAAOwa,GAASxa,SAGjB8P,IAAMvtB,UACjB,ECHA,SAASwG,GAAU1D,GAEf,OAAIA,aAAiB8V,KACV9V,EAAMs1B,cAEV9vB,OAAOxF,EAClB,C,oDCFO,MAAMu1B,WAAkBC,KAG3BrW,WAAAA,CAAYvjB,GAAqB,IAAf65B,EAAQv4B,UAAAZ,OAAA,QAAAc,IAAAF,UAAA,GAAAA,UAAA,GAAG,GACzBw4B,MAAM,GAAI95B,EAAM,CAAE+M,KAAM,yB,iZAH5BgtB,CAAA,yBAII/6B,KAAKg7B,UAAYH,CACrB,CACA,YAAIA,CAASA,GACT76B,KAAKg7B,UAAYH,CACrB,CACA,YAAIA,GACA,OAAO76B,KAAKg7B,SAChB,CACA,QAAI7R,GACA,OAAOnpB,KAAKi7B,sBAAsBj7B,KACtC,CACA,gBAAIk7B,GACA,OAA8B,IAA1Bl7B,KAAKg7B,UAAUt5B,OACRwZ,KAAKD,MAETjb,KAAKm7B,uBAAuBn7B,KACvC,CAMAm7B,sBAAAA,CAAuBC,GACnB,OAAOA,EAAUP,SAASjyB,QAAO,CAAC6vB,EAAK4C,IAC5BA,EAAKH,aAAezC,EAIrB4C,EAAKH,aACLzC,GACP,EACP,CAKAwC,qBAAAA,CAAsBG,GAClB,OAAOA,EAAUP,SAASjyB,QAAO,CAAC6vB,EAAK6C,IAI5B7C,EAAM6C,EAAMnS,MACpB,EACP,EAMG,MAAMoS,GAAelE,UAExB,GAAIiE,EAAME,OACN,OAAO,IAAI5U,SAAQ,CAAC7Q,EAASuN,KACzBgY,EAAMD,KAAKtlB,EAASuN,EAAO,IAInC2K,GAAO2G,MAAM,+BAAgC,CAAE0G,MAAOA,EAAMt6B,OAC5D,MAAMo6B,EAAYE,EACZj1B,QAAgBo1B,GAAcL,GAC9BP,SAAkBjU,QAAQoS,IAAI3yB,EAAQS,IAAIy0B,MAAgBlzB,OAChE,OAAO,IAAIsyB,GAAUS,EAAUp6B,KAAM65B,EAAS,EAM5CY,GAAiBL,IACnB,MAAMM,EAAYN,EAAUO,eAC5B,OAAO,IAAI/U,SAAQ,CAAC7Q,EAASuN,KACzB,MAAMjd,EAAU,GACVu1B,EAAaA,KACfF,EAAUG,aAAaC,IACfA,EAAQp6B,QACR2E,EAAQ7F,QAAQs7B,GAChBF,KAGA7lB,EAAQ1P,EACZ,IACAkZ,IACA+D,EAAO/D,EAAM,GACf,EAENqc,GAAY,GACd,EAEOG,GAA6B1E,UACtC,MAAM2E,GAAY7E,EAAAA,EAAAA,MAElB,UADwB6E,EAAUC,OAAOlgB,GACzB,CACZkS,GAAO2G,MAAM,wCAAyC,CAAE7Y,uBAClDigB,EAAUE,gBAAgBngB,EAAc,CAAEogB,WAAW,IAC3D,MAAM3E,QAAawE,EAAUxE,KAAKzb,EAAc,CAAE2b,SAAS,EAAMtpB,MAAMmpB,EAAAA,EAAAA,SACvEz1B,EAAAA,GAAAA,IAAK,sBAAsB61B,EAAAA,EAAAA,IAAgBH,EAAKppB,MACpD,GAESguB,GAAkB/E,MAAOS,EAAOuE,EAAaxB,KACtD,IAEI,MAAMyB,EAAYxE,EAAMxuB,QAAQ+xB,GACrBR,EAASnG,MAAMoC,GAASA,EAAKyF,YAAclB,aAAgBT,KAAOS,EAAKr6B,KAAOq6B,EAAKkB,cAC3FjzB,OAAOT,SAEJ2zB,EAAU1E,EAAMxuB,QAAQ+xB,IAClBiB,EAAUv0B,SAASszB,MAGzB,SAAEtB,EAAQ,QAAE0C,SAAkBC,EAAAA,GAAAA,GAAmBL,EAAYpwB,KAAMqwB,EAAWzB,GAGpF,OAFA5M,GAAO2G,MAAM,sBAAuB,CAAE4H,UAASzC,WAAU0C,YAEjC,IAApB1C,EAASr4B,QAAmC,IAAnB+6B,EAAQ/6B,SAEjCi7B,EAAAA,GAAAA,KAAShQ,EAAAA,GAAAA,IAAE,QAAS,iCACpBsB,GAAO2O,KAAK,wCACL,IAGJ,IAAIJ,KAAYzC,KAAa0C,EACxC,CACA,MAAOld,GACH8C,GAAQ9C,MAAMA,IAEd2O,EAAAA,GAAAA,KAAUvB,EAAAA,GAAAA,IAAE,QAAS,qBACrBsB,GAAO1O,MAAM,4BACjB,CACA,MAAO,EAAE,E,wCCzIb,IAAIQ,GAIG,MAAM8c,GAAWA,KACf9c,KACDA,GAAQ,IAAI+c,GAAAA,EAAO,CAAEC,YAAa,KAE/Bhd,IAEJ,IAAIid,IACX,SAAWA,GACPA,EAAqB,KAAI,OACzBA,EAAqB,KAAI,OACzBA,EAA6B,aAAI,cACpC,CAJD,CAIGA,KAAmBA,GAAiB,CAAC,IACjC,MAAMC,GAAW3G,GAE2B,IADzBA,EAAM1tB,QAAO,CAACgmB,EAAKkI,IAASrU,KAAKmM,IAAIA,EAAKkI,EAAKH,cAAcC,EAAAA,GAAWsG,KACtEtG,EAAAA,GAAWuG,QAQ1BC,GAAW9G,GANIA,IACjBA,EAAMppB,OAAM4pB,IAAQ,IAAAuG,EAAAC,EAEvB,OADwB9pB,KAAK/L,MAA2C,QAAtC41B,EAAgB,QAAhBC,EAACxG,EAAKyG,kBAAU,IAAAD,OAAA,EAAfA,EAAkB,2BAAmB,IAAAD,EAAAA,EAAI,MACpDG,MAAKC,GAAiC,gBAApBA,EAAUC,QAAiD,IAAtBD,EAAUpH,SAAuC,aAAlBoH,EAAU74B,KAAmB,IAMxI+4B,CAAYrH,KACXA,EAAMkH,MAAK1G,GAAQA,EAAKH,cAAgBC,EAAAA,GAAWC,O,gBC7BxD,MAAM+G,GAAgB9G,IAASa,EAAAA,EAAAA,IAAgBb,GACzC+G,GAAc,WAAgB,IAAf5xB,EAAI3J,UAAAZ,OAAA,QAAAc,IAAAF,UAAA,GAAAA,UAAA,GAAG,IAC/B,MAAMw7B,EAAa,IAAIC,gBACjBzG,GAAkBC,EAAAA,EAAAA,MAExB,OADAtrB,EAAO,GAAH5K,OAAMo2B,EAAAA,IAAWp2B,OAAG4K,GACjB,IAAI+xB,GAAAA,mBAAkB3G,MAAOthB,EAASuN,EAAQ2a,KACjDA,GAAS,IAAMH,EAAW1b,UAC1B,IACI,MAAM8b,QAAyBhH,GAAOiH,qBAAqBlyB,EAAM,CAC7DyrB,SAAS,EACTtpB,KAAMkpB,EACN8G,aAAa,EACbC,OAAQP,EAAWO,SAEjB5H,EAAOyH,EAAiB9vB,KAAK,GAC7BysB,EAAWqD,EAAiB9vB,KAAKjN,MAAM,GAC7C,GAAIs1B,EAAK6H,WAAaryB,GAAQ,GAAA5K,OAAGo1B,EAAK6H,SAAQ,OAAQryB,EAElD,MADAgiB,GAAO2G,MAAM,cAADvzB,OAAe4K,EAAI,wBAAA5K,OAAuBo1B,EAAK6H,SAAQ,eAC7D,IAAI9e,MAAM,2CAEpBzJ,EAAQ,CACJwoB,OAAQX,GAAanH,GACrBoE,SAAUA,EAAS/zB,KAAKpC,IACpB,IACI,OAAOk5B,GAAal5B,EACxB,CACA,MAAO6a,GAEH,OADA0O,GAAO1O,MAAM,0BAADle,OAA2BqD,EAAO63B,SAAQ,KAAK,CAAEhd,UACtD,IACX,KACDjW,OAAOT,UAElB,CACA,MAAO0W,GACH+D,EAAO/D,EACX,IAER,EC3BMif,GAAqBlI,GACnB2G,GAAQ3G,GACJ8G,GAAQ9G,GACD0G,GAAeyB,aAEnBzB,GAAe0B,KAGnB1B,GAAe2B,KAWbC,GAAuBvH,eAAOP,EAAMuF,EAAawC,GAA8B,IAAtBC,EAASx8B,UAAAZ,OAAA,QAAAc,IAAAF,UAAA,IAAAA,UAAA,GAC3E,IAAK+5B,EACD,OAEJ,GAAIA,EAAYtuB,OAASyrB,EAAAA,GAASC,OAC9B,MAAM,IAAIja,OAAMmN,EAAAA,GAAAA,IAAE,QAAS,gCAG/B,GAAIkS,IAAW7B,GAAe0B,MAAQ5H,EAAK4C,UAAY2C,EAAYpwB,KAC/D,MAAM,IAAIuT,OAAMmN,EAAAA,GAAAA,IAAE,QAAS,kDAa/B,GAAI,GAAAtrB,OAAGg7B,EAAYpwB,KAAI,KAAIyqB,WAAW,GAADr1B,OAAIy1B,EAAK7qB,KAAI,MAC9C,MAAM,IAAIuT,OAAMmN,EAAAA,GAAAA,IAAE,QAAS,4EAG/BrF,EAAAA,GAAAA,IAAQwP,EAAM,SAAUiI,EAAAA,GAAWC,SACnC,MAAMjf,EAAQ8c,KACd,aAAa9c,EAAMkf,KAAI5H,UACnB,MAAM6H,EAAch2B,GACF,IAAVA,GACOyjB,EAAAA,GAAAA,IAAE,QAAS,WAEfA,EAAAA,GAAAA,IAAE,QAAS,iBAAanqB,EAAW0G,GAE9C,IACI,MAAMguB,GAASC,EAAAA,EAAAA,MACTgI,GAAcx7B,EAAAA,GAAAA,MAAK8zB,EAAAA,GAAaX,EAAK7qB,MACrCmzB,GAAkBz7B,EAAAA,GAAAA,MAAK8zB,EAAAA,GAAa4E,EAAYpwB,MACtD,GAAI4yB,IAAW7B,GAAe2B,KAAM,CAChC,IAAIloB,EAASqgB,EAAKyF,SAElB,IAAKuC,EAAW,CACZ,MAAMO,QAAmBnI,EAAOiH,qBAAqBiB,GACrD3oB,GAAS6oB,EAAAA,EAAAA,IAAcxI,EAAKyF,SAAU8C,EAAWv4B,KAAK8d,GAAMA,EAAE2X,WAAW,CACrEgD,OAAQL,EACRM,oBAAqB1I,EAAK/oB,OAASyrB,EAAAA,GAASC,QAEpD,CAGA,SAFMvC,EAAOuI,SAASN,GAAax7B,EAAAA,GAAAA,MAAKy7B,EAAiB3oB,IAErDqgB,EAAK4C,UAAY2C,EAAYpwB,KAAM,CACnC,MAAM,KAAEmC,SAAe8oB,EAAOM,MAAK7zB,EAAAA,GAAAA,MAAKy7B,EAAiB3oB,GAAS,CAC9DihB,SAAS,EACTtpB,MAAMmpB,EAAAA,EAAAA,SAEVz1B,EAAAA,GAAAA,IAAK,sBAAsB61B,EAAAA,EAAAA,IAAgBvpB,GAC/C,CACJ,KACK,CAED,MAAMixB,QAAmBxB,GAAYxB,EAAYpwB,MACjD,IAAIyzB,EAAAA,GAAAA,GAAY,CAAC5I,GAAOuI,EAAWxE,UAC/B,IAEI,MAAM,SAAEd,EAAQ,QAAE0C,SAAkBC,EAAAA,GAAAA,GAAmBL,EAAYpwB,KAAM,CAAC6qB,GAAOuI,EAAWxE,UAG5F,IAAKd,EAASr4B,SAAW+6B,EAAQ/6B,OAG7B,aAFMw1B,EAAOyI,WAAWR,QACxBr9B,EAAAA,GAAAA,IAAK,qBAAsBg1B,EAGnC,CACA,MAAOvX,GAGH,YADA2O,EAAAA,GAAAA,KAAUvB,EAAAA,GAAAA,IAAE,QAAS,kBAEzB,OAIEuK,EAAO0I,SAAST,GAAax7B,EAAAA,GAAAA,MAAKy7B,EAAiBtI,EAAKyF,YAG9Dz6B,EAAAA,GAAAA,IAAK,qBAAsBg1B,EAC/B,CACJ,CACA,MAAOvX,GACH,IAAIsgB,EAAAA,GAAAA,IAAatgB,GAAQ,KAAAugB,EAAAC,EAAAC,EACrB,GAA+B,OAAb,QAAdF,EAAAvgB,EAAMwO,gBAAQ,IAAA+R,OAAA,EAAdA,EAAgBG,QAChB,MAAM,IAAIzgB,OAAMmN,EAAAA,GAAAA,IAAE,QAAS,kEAE1B,GAA+B,OAAb,QAAdoT,EAAAxgB,EAAMwO,gBAAQ,IAAAgS,OAAA,EAAdA,EAAgBE,QACrB,MAAM,IAAIzgB,OAAMmN,EAAAA,GAAAA,IAAE,QAAS,yBAE1B,GAA+B,OAAb,QAAdqT,EAAAzgB,EAAMwO,gBAAQ,IAAAiS,OAAA,EAAdA,EAAgBC,QACrB,MAAM,IAAIzgB,OAAMmN,EAAAA,GAAAA,IAAE,QAAS,oCAE1B,GAAIpN,EAAMD,QACX,MAAM,IAAIE,MAAMD,EAAMD,QAE9B,CAEA,MADA2O,GAAO2G,MAAMrV,GACP,IAAIC,KACd,CAAC,QAEG8H,EAAAA,GAAAA,IAAQwP,EAAM,cAAUt0B,EAC5B,IAER,EAQM09B,GAA0B7I,eAAOrB,GAA6B,IAArBP,EAAGnzB,UAAAZ,OAAA,QAAAc,IAAAF,UAAA,GAAAA,UAAA,GAAG,IAAKg0B,EAAKh0B,UAAAZ,OAAA,EAAAY,UAAA,QAAAE,EAC3D,MAAM29B,EAAU7J,EAAMxvB,KAAIgwB,GAAQA,EAAKG,SAAQ3tB,OAAOT,SAChDu3B,GAAaC,EAAAA,GAAAA,KAAqB1T,EAAAA,GAAAA,IAAE,QAAS,uBAC9C2T,kBAAiB,GACjBC,WAAW3b,IAEJub,EAAQp4B,SAAS6c,EAAEqS,UAE1BuJ,kBAAkB,IAClBC,gBAAe,GACfC,QAAQjL,GACb,OAAO,IAAI7O,SAAQ,CAAC7Q,EAASuN,KACzB8c,EAAWO,kBAAiB,CAACxG,EAAWluB,KACpC,MAAM20B,EAAU,GACVnqB,GAAS8lB,EAAAA,GAAAA,UAAStwB,GAClB40B,EAAWvK,EAAMxvB,KAAIgwB,GAAQA,EAAK4C,UAClCP,EAAQ7C,EAAMxvB,KAAIgwB,GAAQA,EAAK7qB,OAerC,OAdI+pB,IAAWgH,GAAe2B,MAAQ3I,IAAWgH,GAAeyB,cAC5DmC,EAAQpgC,KAAK,CACTsgC,MAAOrqB,GAASkW,EAAAA,GAAAA,IAAE,QAAS,mBAAoB,CAAElW,eAAUjU,EAAW,CAAEu+B,QAAQ,EAAOC,UAAU,KAAWrU,EAAAA,GAAAA,IAAE,QAAS,QACvH5e,KAAM,UACNgoB,KAAMkL,GACN,cAAMhX,CAASoS,GACXtmB,EAAQ,CACJsmB,YAAaA,EAAY,GACzBrG,OAAQgH,GAAe2B,MAE/B,IAIJkC,EAAS94B,SAASkE,IAIlBktB,EAAMpxB,SAASkE,IAIf+pB,IAAWgH,GAAe0B,MAAQ1I,IAAWgH,GAAeyB,cAC5DmC,EAAQpgC,KAAK,CACTsgC,MAAOrqB,GAASkW,EAAAA,GAAAA,IAAE,QAAS,mBAAoB,CAAElW,eAAUjU,EAAW,CAAEu+B,QAAQ,EAAOC,UAAU,KAAWrU,EAAAA,GAAAA,IAAE,QAAS,QACvH5e,KAAMioB,IAAWgH,GAAe0B,KAAO,UAAY,YACnD3I,KAAMmL,GACN,cAAMjX,CAASoS,GACXtmB,EAAQ,CACJsmB,YAAaA,EAAY,GACzBrG,OAAQgH,GAAe0B,MAE/B,IAhBGkC,CAmBG,IAEHR,EAAW1U,QACnBxhB,OAAOgT,OAAOqC,IACjB0O,GAAO2G,MAAMrV,GACTA,aAAiB4hB,GAAAA,GACjB7d,EAAO,IAAI9D,OAAMmN,EAAAA,GAAAA,IAAE,QAAS,sCAG5BrJ,EAAO,IAAI9D,OAAMmN,EAAAA,GAAAA,IAAE,QAAS,kCAChC,GACF,GAEV,EACsB,IAAIsJ,EAAAA,GAAW,CACjCxB,GAAI,YACJyB,WAAAA,CAAYI,GACR,OAAQkI,GAAkBlI,IACtB,KAAK0G,GAAe0B,KAChB,OAAO/R,EAAAA,GAAAA,IAAE,QAAS,QACtB,KAAKqQ,GAAe2B,KAChB,OAAOhS,EAAAA,GAAAA,IAAE,QAAS,QACtB,KAAKqQ,GAAeyB,aAChB,OAAO9R,EAAAA,GAAAA,IAAE,QAAS,gBAE9B,EACAwJ,cAAeA,IAAM+K,GACrB7K,QAAQC,KAECA,EAAMppB,OAAM4pB,IAAI,IAAAsK,EAAA,OAAa,QAAbA,EAAItK,EAAKL,YAAI,IAAA2K,OAAA,EAATA,EAAW1K,WAAW,UAAU,KAGlDJ,EAAM50B,OAAS,IAAMu7B,GAAQ3G,IAAU8G,GAAQ9G,IAE1D,UAAMlwB,CAAK0wB,EAAM/N,EAAM0M,GACnB,MAAMO,EAASwI,GAAkB,CAAC1H,IAClC,IAAIpyB,EACJ,IACIA,QAAew7B,GAAwBlK,EAAQP,EAAK,CAACqB,GACzD,CACA,MAAOhrB,GAEH,OADAmiB,GAAO1O,MAAMzT,IACN,CACX,CACA,IAEI,aADM8yB,GAAqB9H,EAAMpyB,EAAO23B,YAAa33B,EAAOsxB,SACrD,CACX,CACA,MAAOzW,GACH,SAAIA,aAAiBC,OAAWD,EAAMD,YAClC4O,EAAAA,GAAAA,IAAU3O,EAAMD,SAET,KAGf,CACJ,EACA,eAAM+hB,CAAU/K,EAAOvN,EAAM0M,GACzB,MAAMO,EAASwI,GAAkBlI,GAC3B5xB,QAAew7B,GAAwBlK,EAAQP,EAAKa,GACpDgL,EAAWhL,EAAMxvB,KAAIuwB,UACvB,IAEI,aADMuH,GAAqB9H,EAAMpyB,EAAO23B,YAAa33B,EAAOsxB,SACrD,CACX,CACA,MAAOzW,GAEH,OADA0O,GAAO1O,MAAM,aAADle,OAAcqD,EAAOsxB,OAAM,SAAS,CAAEc,OAAMvX,WACjD,CACX,KAKJ,aAAaqH,QAAQoS,IAAIsI,EAC7B,EACAnN,MAAO,K,gBClQJ,MAAMoN,GAAyBlK,UAIlC,MAAMhxB,EAAUm7B,EACXl4B,QAAQpB,GACS,SAAdA,EAAKu5B,OACLxT,GAAO2G,MAAM,wBAAyB,CAAE6M,KAAMv5B,EAAKu5B,KAAM1zB,KAAM7F,EAAK6F,QAC7D,KAGZjH,KAAKoB,IAAS,IAAAiiB,EAAAuX,EAAAC,EAAAC,EAEb,OACiC,QADjCzX,EAA2B,QAA3BuX,EAAOx5B,SAAgB,QAAZy5B,EAAJz5B,EAAM25B,kBAAU,IAAAF,OAAA,EAAhBA,EAAAzgC,KAAAgH,UAAoB,IAAAw5B,EAAAA,EACpBx5B,SAAsB,QAAlB05B,EAAJ15B,EAAM45B,wBAAgB,IAAAF,OAAA,EAAtBA,EAAA1gC,KAAAgH,UAA0B,IAAAiiB,EAAAA,EAC1BjiB,CAAI,IAEf,IAAI65B,GAAS,EACb,MAAMC,EAAW,IAAIrH,GAAU,QAE/B,IAAK,MAAMW,KAASj1B,EAEhB,GAAIi1B,aAAiB2G,iBAArB,CACIhU,GAAOiU,KAAK,+DACZ,MAAM7G,EAAOC,EAAM6G,YACnB,GAAa,OAAT9G,EAAe,CACfpN,GAAOiU,KAAK,qCAAsC,CAAEn0B,KAAMutB,EAAMvtB,KAAM0zB,KAAMnG,EAAMmG,QAClFvT,EAAAA,GAAAA,KAAUvB,EAAAA,GAAAA,IAAE,QAAS,oDACrB,QACJ,CAGA,GAAkB,yBAAd0O,EAAKttB,OAAoCstB,EAAKttB,KAAM,CAC/Cg0B,IACD9T,GAAOiU,KAAK,8EACZE,EAAAA,GAAAA,KAAYzV,EAAAA,GAAAA,IAAE,QAAS,uFACvBoV,GAAS,GAEb,QACJ,CACAC,EAASnH,SAASr6B,KAAK66B,EAE3B,MAEA,IACI2G,EAASnH,SAASr6B,WAAW+6B,GAAaD,GAC9C,CACA,MAAO/b,GAEH0O,GAAO1O,MAAM,mCAAoC,CAAEA,SACvD,CAEJ,OAAOyiB,CAAQ,EAENK,GAAsBhL,MAAOZ,EAAM4F,EAAaxB,KACzD,MAAMN,GAAWE,EAAAA,GAAAA,KAKjB,SAHUiF,EAAAA,GAAAA,GAAYjJ,EAAKoE,SAAUA,KACjCpE,EAAKoE,eAAiBuB,GAAgB3F,EAAKoE,SAAUwB,EAAaxB,IAEzC,IAAzBpE,EAAKoE,SAASn5B,OAGd,OAFAusB,GAAO2O,KAAK,qBAAsB,CAAEnG,UACpCkG,EAAAA,GAAAA,KAAShQ,EAAAA,GAAAA,IAAE,QAAS,uBACb,GAGXsB,GAAO2G,MAAM,sBAADvzB,OAAuBg7B,EAAYpwB,MAAQ,CAAEwqB,OAAMoE,SAAUpE,EAAKoE,WAC9E,MAAM9a,EAAQ,GACRuiB,EAA0BjL,MAAO+D,EAAWnvB,KAC9C,IAAK,MAAMovB,KAAQD,EAAUP,SAAU,CAGnC,MAAM0H,GAAe5+B,EAAAA,GAAAA,MAAKsI,EAAMovB,EAAKr6B,MAGrC,GAAIq6B,aAAgBV,GAApB,CACI,MAAM5e,GAAeymB,EAAAA,GAAAA,IAAU/K,EAAAA,GAAa4E,EAAYpwB,KAAMs2B,GAC9D,IACIlgB,GAAQuS,MAAM,uBAAwB,CAAE2N,uBAClCxG,GAA2BhgB,SAC3BumB,EAAwBjH,EAAMkH,EACxC,CACA,MAAOhjB,IACH2O,EAAAA,GAAAA,KAAUvB,EAAAA,GAAAA,IAAE,QAAS,6CAA8C,CAAEyO,UAAWC,EAAKr6B,QACrFitB,GAAO1O,MAAM,GAAI,CAAEA,QAAOxD,eAAcqf,UAAWC,GACvD,CAEJ,MAEApN,GAAO2G,MAAM,sBAAuBjxB,EAAAA,GAAAA,MAAK04B,EAAYpwB,KAAMs2B,GAAe,CAAElH,SAE5Etb,EAAMvf,KAAK+5B,EAASkI,OAAOF,EAAclH,EAAMgB,EAAY/qB,QAC/D,GAIJipB,EAASmI,cAGHJ,EAAwB7L,EAAM,KACpC8D,EAASoI,QAET,MAEMC,SAFgBhc,QAAQic,WAAW9iB,IAElBzW,QAAO5E,GAA4B,aAAlBA,EAAOu7B,SAC/C,OAAI2C,EAAOlhC,OAAS,GAChBusB,GAAO1O,MAAM,8BAA+B,CAAEqjB,YAC9C1U,EAAAA,GAAAA,KAAUvB,EAAAA,GAAAA,IAAE,QAAS,qCACd,KAEXsB,GAAO2G,MAAM,gCACb7C,EAAAA,GAAAA,KAAYpF,EAAAA,GAAAA,IAAE,QAAS,gCAChB/F,QAAQoS,IAAIjZ,GAAM,EAEhB+iB,GAAsBzL,eAAOf,EAAO+F,EAAaxB,GAA6B,IAAnBkI,EAAMzgC,UAAAZ,OAAA,QAAAc,IAAAF,UAAA,IAAAA,UAAA,GAC1E,MAAMyd,EAAQ,GAKd,SAHU2f,EAAAA,GAAAA,GAAYpJ,EAAOuE,KACzBvE,QAAc8F,GAAgB9F,EAAO+F,EAAaxB,IAEjC,IAAjBvE,EAAM50B,OAGN,OAFAusB,GAAO2O,KAAK,sBAAuB,CAAEtG,eACrCqG,EAAAA,GAAAA,KAAShQ,EAAAA,GAAAA,IAAE,QAAS,wBAGxB,IAAK,MAAMmK,KAAQR,EACfhP,EAAAA,GAAAA,IAAQwP,EAAM,SAAUiI,EAAAA,GAAWC,SAEnCjf,EAAMvf,KAAKo+B,GAAqB9H,EAAMuF,EAAa0G,EAAS/F,GAAe2B,KAAO3B,GAAe0B,OAGrG,MAAM5C,QAAgBlV,QAAQic,WAAW9iB,GACzCuW,EAAMvrB,SAAQ+rB,GAAQxP,EAAAA,GAAAA,IAAQwP,EAAM,cAAUt0B,KAE9C,MAAMogC,EAAS9G,EAAQxyB,QAAO5E,GAA4B,aAAlBA,EAAOu7B,SAC/C,GAAI2C,EAAOlhC,OAAS,EAGhB,OAFAusB,GAAO1O,MAAM,sCAAuC,CAAEqjB,gBACtD1U,EAAAA,GAAAA,IAAU6U,GAASpW,EAAAA,GAAAA,IAAE,QAAS,mCAAoCA,EAAAA,GAAAA,IAAE,QAAS,kCAGjFsB,GAAO2G,MAAM,+BACb7C,EAAAA,GAAAA,IAAYgR,GAASpW,EAAAA,GAAAA,IAAE,QAAS,8BAA+BA,EAAAA,GAAAA,IAAE,QAAS,4BAC9E,EChKaqW,IAAsBxT,EAAAA,EAAAA,IAAY,WAAY,CACvDvT,MAAOA,KAAA,CACHgnB,SAAU,KAEdxT,QAAS,CAILyK,GAAAA,GAAoB,IAAhBC,EAAS73B,UAAAZ,OAAA,QAAAc,IAAAF,UAAA,GAAAA,UAAA,GAAG,GACZglB,EAAAA,GAAAA,IAAQtnB,KAAM,WAAYm6B,EAC9B,EAIAG,KAAAA,GACIhT,EAAAA,GAAAA,IAAQtnB,KAAM,WAAY,GAC9B,KCjBR,IAAeyzB,EAAAA,EAAAA,IAAgB,CAC3BrlB,KAAIA,KACO,CACH80B,eAAgB,IAGxBjW,OAAAA,GAAU,IAAAkW,EACN,MAAMC,EAAarlB,SAASE,cAAc,oBAC1Cje,KAAKkjC,eAAwC,QAA1BC,EAAGC,aAAU,EAAVA,EAAYC,mBAAW,IAAAF,EAAAA,EAAI,EAEjDnjC,KAAKsjC,gBAAkB,IAAIC,gBAAgBl9B,IACnCA,EAAQ3E,OAAS,GAAK2E,EAAQ,GAAGoQ,SAAW2sB,IAC5CpjC,KAAKkjC,eAAiB78B,EAAQ,GAAGm9B,YAAYC,MACjD,IAGJzjC,KAAKsjC,gBAAgBI,QAAQN,EACjC,EACA7R,aAAAA,GAEIvxB,KAAKsjC,gBAAgBK,YACzB,IC1BuP,ICkB5OlQ,EAAAA,EAAAA,IAAgB,CAC3BzyB,KAAM,cACNwC,WAAY,CACRogC,cAAa,KACbC,aAAY,KACZhQ,iBAAgBA,GAAAA,GAEpBiQ,OAAQ,CACJC,IAEJj2B,MAAO,CACH7B,KAAM,CACF8B,KAAMnD,OACNoD,QAAS,MAGjBsiB,KAAAA,GACI,MAAM0T,EAAgBhB,KAChBiB,EAAarM,KACbsB,EAAaD,KACbiL,EAAiBpK,KACjBqK,EAAgB3J,MAChB,YAAE/H,GAAgBL,KACxB,MAAO,CACH4R,gBACAC,aACA/K,aACAgL,iBACAC,gBACA1R,cAER,EACAxG,SAAU,CACNmY,IAAAA,GAC4B3L,MAIxB,MAAO,CAAC,OAFM,KAAKxsB,KAAKxI,MAAM,KAAK6F,OAAOT,SAAS/B,KAF3B2xB,EAE8C,IAFrCrzB,GAAWqzB,GAAG,GAAAp3B,OAAO+D,EAAK,OAIrC0B,KAAKmF,GAASA,EAAK1F,QAAQ,WAAY,QACjE,EACA89B,QAAAA,GACI,OAAO,KAAKD,KAAKt9B,KAAI,CAAC2uB,EAAKvsB,KACvB,MAAMoI,EAAS,KAAKgzB,sBAAsB7O,GACpCqB,EAAOxlB,EAAS,KAAKizB,kBAAkBjzB,QAAU9O,EACjD4S,EAAK,IAAK,KAAK5G,OAAQtC,OAAQ,CAAE4qB,KAAMA,aAAI,EAAJA,EAAMG,QAAUvvB,MAAO,CAAE+tB,QACtE,MAAO,CACHA,MACAjgB,OAAO,EACPxU,KAAM,KAAKwjC,kBAAkB/O,GAC7BrgB,KAEAqvB,YAAav7B,IAAU,KAAKk7B,KAAK1iC,OAAS,EAC7C,GAET,EACAgjC,kBAAAA,GACI,OAA2C,IAApC,KAAKP,cAAcpkB,MAAMre,MACpC,EAEAijC,qBAAAA,GAGI,OAAO,KAAKD,oBAAsB,KAAKxB,eAAiB,GAC5D,EAEA0B,QAAAA,GAAW,IAAAC,EAAArQ,EACP,OAA6B,QAA7BqQ,EAAuB,QAAvBrQ,EAAO,KAAK/B,mBAAW,IAAA+B,OAAA,EAAhBA,EAAkBuB,YAAI,IAAA8O,EAAAA,E,0IACjC,EACAC,aAAAA,GACI,OAAO,KAAKZ,eAAenK,QAC/B,EACAgL,aAAAA,GACI,OAAO,KAAKf,cAAcf,QAC9B,GAEJ3V,QAAS,CACLiX,iBAAAA,CAAkBjzB,GACd,OAAO,KAAK2yB,WAAWjM,QAAQ1mB,EACnC,EACAgzB,qBAAAA,CAAsBr4B,GAAM,IAAAke,EACxB,OAA8E,QAA9EA,EAAQ,KAAKsI,aAAe,KAAKyG,WAAWE,QAAQ,KAAK3G,YAAYgC,GAAIxoB,UAAK,IAAAke,EAAAA,EAAK,IACvF,EACAqa,iBAAAA,CAAkBv4B,GAAM,IAAAqxB,EACF0H,EAAlB,GAAa,MAAT/4B,EACA,OAAuB,QAAhB+4B,EAAA,KAAK9P,mBAAW,IAAA8P,GAAQ,QAARA,EAAhBA,EAAkBtS,cAAM,IAAAsS,OAAA,EAAxBA,EAA0BhkC,QAAQ2rB,EAAAA,GAAAA,IAAE,QAAS,QAExD,MAAMrb,EAAS,KAAKgzB,sBAAsBr4B,GACpC6qB,EAAOxlB,EAAS,KAAKizB,kBAAkBjzB,QAAU9O,EACvD,OAAOs0B,SAAgB,QAAZwG,EAAJxG,EAAMyG,kBAAU,IAAAD,OAAA,EAAhBA,EAAkB2H,eAAe1I,EAAAA,GAAAA,UAAStwB,EACrD,EACAi5B,OAAAA,CAAQ9vB,GAAI,IAAA+vB,GACJ/vB,SAAS,QAAP+vB,EAAF/vB,EAAI1N,aAAK,IAAAy9B,OAAA,EAATA,EAAW1P,OAAQ,KAAKjnB,OAAO9G,MAAM+tB,KACrC,KAAK/L,MAAM,SAEnB,EACA0b,UAAAA,CAAWjlC,EAAO8L,GACT9L,EAAMklC,eAIPp5B,IAAS,KAAKm4B,KAAK,KAAKA,KAAK1iC,OAAS,GAKtCvB,EAAM4X,QACN5X,EAAMklC,aAAaC,WAAa,OAGhCnlC,EAAMklC,aAAaC,WAAa,OARhCnlC,EAAMklC,aAAaC,WAAa,OAUxC,EACA,YAAMC,CAAOplC,EAAO8L,GAAM,IAAAu5B,EAAAC,EAAAC,EAEtB,KAAK,KAAKX,eAAoC,QAAnBS,EAACrlC,EAAMklC,oBAAY,IAAAG,GAAO,QAAPA,EAAlBA,EAAoBhE,aAAK,IAAAgE,GAAzBA,EAA2B9jC,QACnD,OAKJvB,EAAMkY,iBAEN,MAAM8hB,EAAY,KAAK4K,cACjBvD,EAAQ,KAAsB,QAAlBiE,EAAAtlC,EAAMklC,oBAAY,IAAAI,OAAA,EAAlBA,EAAoBjE,QAAS,IAGzCQ,QAAiBT,GAAuBC,GAExC3G,QAAiC,QAAtB6K,EAAM,KAAKjT,mBAAW,IAAAiT,OAAA,EAAhBA,EAAkB7H,YAAY5xB,IAC/CsyB,EAAS1D,aAAQ,EAARA,EAAU0D,OACzB,IAAKA,EAED,YADArQ,EAAAA,GAAAA,IAAU,KAAKvB,EAAE,QAAS,0CAG9B,MAAMgZ,EAAuD,IAA5CpH,EAAO5H,YAAcC,EAAAA,GAAWgP,QAC3C7C,EAAS5iC,EAAM4X,QAGrB,IAAK4tB,GAA4B,IAAjBxlC,EAAM+X,OAClB,OAIJ,GAFA+V,GAAO2G,MAAM,UAAW,CAAEz0B,QAAOo+B,SAAQpE,YAAW6H,aAEhDA,EAASnH,SAASn5B,OAAS,EAE3B,kBADM2gC,GAAoBL,EAAUzD,EAAQ1D,EAASA,UAIzD,MAAMvE,EAAQ6D,EAAUrzB,KAAIwK,GAAU,KAAK2yB,WAAWjM,QAAQ1mB,WACxDwxB,GAAoBxM,EAAOiI,EAAQ1D,EAASA,SAAUkI,GAGxD5I,EAAUqD,MAAKlsB,GAAU,KAAKwzB,cAAc/8B,SAASuJ,OACrD2c,GAAO2G,MAAM,gDACb,KAAKsP,eAAe5J,QAE5B,EACAuL,eAAAA,CAAgB38B,EAAO48B,GAAS,IAAAC,EAC5B,OAAID,SAAW,QAAJC,EAAPD,EAAS1wB,UAAE,IAAA2wB,GAAO,QAAPA,EAAXA,EAAar+B,aAAK,IAAAq+B,OAAA,EAAlBA,EAAoBtQ,OAAQ,KAAKjnB,OAAO9G,MAAM+tB,KACvC9I,EAAAA,GAAAA,IAAE,QAAS,4BAEH,IAAVzjB,GACEyjB,EAAAA,GAAAA,IAAE,QAAS,8BAA+BmZ,GAE9C,IACX,EACAE,cAAAA,CAAeF,GAAS,IAAAG,EACpB,OAAIH,SAAW,QAAJG,EAAPH,EAAS1wB,UAAE,IAAA6wB,GAAO,QAAPA,EAAXA,EAAav+B,aAAK,IAAAu+B,OAAA,EAAlBA,EAAoBxQ,OAAQ,KAAKjnB,OAAO9G,MAAM+tB,KACvC9I,EAAAA,GAAAA,IAAE,QAAS,4BAEf,IACX,EACAA,EAACA,GAAAA,M,gBCnLL,GAAU,CAAC,EAEf,GAAQyB,kBAAoB,KAC5B,GAAQC,cAAgB,KAElB,GAAQC,OAAS,UAAc,KAAM,QAE3C,GAAQC,OAAS,KACjB,GAAQC,mBAAqB,KAEhB,KAAI,KAAS,IAKJ,MAAW,KAAQC,QAAS,KAAQA,OCP1D,UAXgB,QACd,IFTW,WAAkB,IAAIrF,EAAIppB,KAAKqpB,EAAGD,EAAIE,MAAMD,GAAgC,OAAtBD,EAAIE,MAAMsM,YAAmBvM,EAAG,gBAAgB,CAACG,YAAY,0BAA0BzS,MAAM,CAAE,yCAA0CqS,EAAIub,uBAAwBt0B,MAAM,CAAC,oCAAoC,GAAG,aAAa+Y,EAAIuD,EAAE,QAAS,2BAA2BsF,YAAY7I,EAAI8I,GAAG,CAAC,CAACttB,IAAI,UAAU/E,GAAG,WAAW,MAAO,CAACupB,EAAI8c,GAAG,WAAW,EAAE/T,OAAM,IAAO,MAAK,IAAO/I,EAAI4I,GAAI5I,EAAIib,UAAU,SAASyB,EAAQ58B,GAAO,OAAOmgB,EAAG,eAAeD,EAAIG,GAAG,CAAC3kB,IAAIkhC,EAAQrQ,IAAIplB,MAAM,CAAC,IAAM,OAAO,GAAKy1B,EAAQ1wB,GAAG,kBAA4B,IAAVlM,GAAekgB,EAAI8Z,gBAAkB,IAAI,MAAQ9Z,EAAIyc,gBAAgB38B,EAAO48B,GAAS,mBAAmB1c,EAAI4c,eAAeF,IAAUnjC,GAAG,CAAC,KAAO,SAAS8mB,GAAQ,OAAOL,EAAImc,OAAO9b,EAAQqc,EAAQrQ,IAAI,GAAG0Q,SAAS,CAAC,MAAQ,SAAS1c,GAAQ,OAAOL,EAAI8b,QAAQY,EAAQ1wB,GAAG,EAAE,SAAW,SAASqU,GAAQ,OAAOL,EAAIgc,WAAW3b,EAAQqc,EAAQrQ,IAAI,GAAGxD,YAAY7I,EAAI8I,GAAG,CAAY,IAAVhpB,EAAa,CAACtE,IAAI,OAAO/E,GAAG,WAAW,MAAO,CAACwpB,EAAG,mBAAmB,CAAChZ,MAAM,CAAC,KAAO,GAAG,IAAM+Y,EAAIwb,YAAY,EAAEzS,OAAM,GAAM,MAAM,MAAK,IAAO,eAAe2T,GAAQ,GAAO,IAAG,EACjmC,GACsB,IEUpB,EACA,KACA,WACA,MAI8B,QCInBM,GAAiB9P,IAC1B,MAAM+P,EAAY/P,EAAMhtB,QAAOwtB,GAAQA,EAAK/oB,OAASyrB,EAAAA,GAASoB,OAAMl5B,OAC9D4kC,EAAchQ,EAAMhtB,QAAOwtB,GAAQA,EAAK/oB,OAASyrB,EAAAA,GAASC,SAAQ/3B,OACxE,OAAkB,IAAd2kC,GACOzhB,EAAAA,GAAAA,IAAE,QAAS,uBAAwB,wBAAyB0hB,EAAa,CAAEA,gBAE7D,IAAhBA,GACE1hB,EAAAA,GAAAA,IAAE,QAAS,mBAAoB,oBAAqByhB,EAAW,CAAEA,cAE1D,IAAdA,GACOzhB,EAAAA,GAAAA,IAAE,QAAS,kCAAmC,mCAAoC0hB,EAAa,CAAEA,gBAExF,IAAhBA,GACO1hB,EAAAA,GAAAA,IAAE,QAAS,gCAAiC,iCAAkCyhB,EAAW,CAAEA,eAE/F1Z,EAAAA,GAAAA,IAAE,QAAS,8CAA+C,CAAE0Z,YAAWC,eAAc,ECtChG,I,YCKO,MAAMC,IAAsB/W,EAAAA,EAAAA,IAAY,cAAe,CAC1DvT,MAAOA,KAAA,CACHuqB,OAAQ,SCDHC,GAAmB,WAC5B,MAMMC,GANQlX,EAAAA,EAAAA,IAAY,WAAY,CAClCvT,MAAOA,KAAA,CACH0qB,kBAAcnkC,EACdokC,QAAS,MAGK/W,IAAMvtB,WAS5B,OAPKokC,EAAc5W,gBACf9C,EAAAA,GAAAA,IAAU,qBAAqB,SAAU8J,GACrC4P,EAAcC,aAAe7P,EAC7B4P,EAAcE,QAAU9P,EAAKyF,QACjC,IACAmK,EAAc5W,cAAe,GAE1B4W,CACX,E,gBCHA,MCpB+G,GDoB/G,CACE1lC,KAAM,mBACNgoB,MAAO,CAAC,SACRlb,MAAO,CACLmb,MAAO,CACLlb,KAAMnD,QAERse,UAAW,CACTnb,KAAMnD,OACNoD,QAAS,gBAEXmb,KAAM,CACJpb,KAAMlH,OACNmH,QAAS,MEff,IAXgB,QACd,ICRW,WAAkB,IAAIob,EAAIppB,KAAKqpB,EAAGD,EAAIE,MAAMD,GAAG,OAAOA,EAAG,OAAOD,EAAIG,GAAG,CAACC,YAAY,0CAA0CnZ,MAAM,CAAC,eAAc+Y,EAAIH,OAAQ,KAAY,aAAaG,EAAIH,MAAM,KAAO,OAAOtmB,GAAG,CAAC,MAAQ,SAAS8mB,GAAQ,OAAOL,EAAIM,MAAM,QAASD,EAAO,IAAI,OAAOL,EAAIO,QAAO,GAAO,CAACN,EAAG,MAAM,CAACG,YAAY,4BAA4BnZ,MAAM,CAAC,KAAO+Y,EAAIF,UAAU,MAAQE,EAAID,KAAK,OAASC,EAAID,KAAK,QAAU,cAAc,CAACE,EAAG,OAAO,CAAChZ,MAAM,CAAC,EAAI,gIAAgI,CAAE+Y,EAAS,MAAEC,EAAG,QAAQ,CAACD,EAAIQ,GAAGR,EAAIS,GAAGT,EAAIH,UAAUG,EAAIU,UAClpB,GACsB,IDSpB,EACA,KACA,KACA,MAI8B,Q,gBEbhC,SAAexC,EAAAA,GAAIld,OAAO,CACtBpJ,KAAM,qBACNwC,WAAY,CACRqjC,iBAAgB,GAChBC,WAAUA,GAAAA,GAEd14B,KAAIA,KACO,CACHkoB,MAAO,KAGfrK,SAAU,CACN8a,YAAAA,GACI,OAA6B,IAAtB,KAAKzQ,MAAM50B,MACtB,EACAslC,cAAAA,GACI,OAAO,KAAKD,cACL,KAAKzQ,MAAM,GAAGvoB,OAASyrB,EAAAA,GAASC,MAC3C,EACAz4B,IAAAA,GACI,OAAK,KAAKmoB,KAGV,GAAA9nB,OAAU,KAAK4lC,QAAO,OAAA5lC,OAAM,KAAK8nB,MAFtB,KAAK8d,OAGpB,EACA9d,IAAAA,GACI,MAAM+d,EAAY,KAAK5Q,MAAM1tB,QAAO,CAACu+B,EAAOrQ,IAASqQ,EAAQrQ,EAAK3N,MAAQ,GAAG,GACvEA,EAAOie,SAASF,EAAW,KAAO,EACxC,MAAoB,iBAAT/d,GAAqBA,EAAO,EAC5B,MAEJoD,EAAAA,EAAAA,IAAepD,GAAM,EAChC,EACA8d,OAAAA,GACI,GAAI,KAAKF,aAAc,KAAAzJ,EACnB,MAAMxG,EAAO,KAAKR,MAAM,GACxB,OAAsB,QAAfgH,EAAAxG,EAAKyG,kBAAU,IAAAD,OAAA,EAAfA,EAAiB2H,cAAenO,EAAKyF,QAChD,CACA,OAAO6J,GAAc,KAAK9P,MAC9B,GAEJhJ,QAAS,CACLqC,MAAAA,CAAO2G,GACH,KAAKA,MAAQA,EACb,KAAK+Q,MAAMC,WAAWC,kBAEtBjR,EAAMn1B,MAAM,EAAG,GAAG4J,SAAQ+rB,IACtB,MAAM0Q,EAAUzpB,SAASE,cAAa,mCAAA5c,OAAoCy1B,EAAKG,OAAM,iCACjFuQ,GACoB,KAAKH,MAAMC,WACnBvY,YAAYyY,EAAQC,WAAWC,WAAU,GACzD,IAEJ,KAAK9qB,WAAU,KACX,KAAK8M,MAAM,SAAU,KAAKoF,IAAI,GAEtC,KC7D0P,M,gBCW9P,GAAU,CAAC,EAEf,GAAQV,kBAAoB,KAC5B,GAAQC,cAAgB,KAElB,GAAQC,OAAS,UAAc,KAAM,QAE3C,GAAQC,OAAS,KACjB,GAAQC,mBAAqB,KAEhB,KAAI,KAAS,IAKJ,MAAW,KAAQC,QAAS,KAAQA,OCP1D,UAXgB,QACd,IHTW,WAAkB,IAAIrF,EAAIppB,KAAKqpB,EAAGD,EAAIE,MAAMD,GAAgC,OAAtBD,EAAIE,MAAMsM,YAAmBvM,EAAG,MAAM,CAACG,YAAY,yBAAyB,CAACH,EAAG,OAAO,CAACG,YAAY,+BAA+B,CAACH,EAAG,OAAO,CAAC1c,IAAI,eAAeyc,EAAIQ,GAAG,KAAMR,EAAI4d,eAAgB3d,EAAG,cAAcA,EAAG,qBAAqB,GAAGD,EAAIQ,GAAG,KAAKP,EAAG,OAAO,CAACG,YAAY,+BAA+B,CAACJ,EAAIQ,GAAGR,EAAIS,GAAGT,EAAIpoB,UACvY,GACsB,IGUpB,EACA,KACA,KACA,MAI8B,QCjB1B2mC,GAAUrgB,EAAAA,GAAIld,OAAOw9B,IAC3B,IAAIJ,GCcJlgB,EAAAA,GAAIugB,UAAU,iBAAkBC,GAAAA,IAChC,UAAerU,EAAAA,EAAAA,IAAgB,CAC3B3lB,MAAO,CACHwD,OAAQ,CACJvD,KAAM,CAAC0rB,EAAAA,GAAQsO,EAAAA,GAAQC,EAAAA,IACvB3yB,UAAU,GAEdihB,MAAO,CACHvoB,KAAMnM,MACNyT,UAAU,GAEd6tB,eAAgB,CACZn1B,KAAMlH,OACNmH,QAAS,IAGjBI,KAAIA,KACO,CACH65B,QAAS,GACTC,UAAU,EACVC,UAAU,IAGlBlc,SAAU,CACNmc,UAAAA,GAAa,IAAAC,EAET,QAAyB,QAAjBA,EAAAroC,KAAKwO,OAAO9G,aAAK,IAAA2gC,GAAK,QAALA,EAAjBA,EAAmB5S,WAAG,IAAA4S,OAAA,EAAtBA,EAAwB3iC,aAAc,KAAKa,QAAQ,WAAY,KAC3E,EACA+hC,aAAAA,GAAgB,IAAAC,EAAAC,EACZ,OAAyB,QAAlBD,EAAAvoC,KAAKwO,OAAOtC,cAAM,IAAAq8B,OAAA,EAAlBA,EAAoBtR,UAA2B,QAArBuR,EAAIxoC,KAAKwO,OAAO9G,aAAK,IAAA8gC,OAAA,EAAjBA,EAAmBvR,SAAU,IACtE,EACAA,MAAAA,GAAS,IAAAwR,EACL,OAAyB,QAAzBA,EAAOzoC,KAAKsR,OAAO2lB,cAAM,IAAAwR,EAAAA,EAAI,CACjC,EACAC,QAAAA,GACI,OC3CY,SAAUj+B,GAC9B,IAAIf,EAAO,EACX,IAAK,IAAIlI,EAAI,EAAGA,EAAIiJ,EAAI/I,OAAQF,IAC5BkI,GAASA,GAAQ,GAAKA,EAAOe,EAAIhF,WAAWjE,GAAM,EAEtD,OAAQkI,IAAS,CACrB,CDqCmBi/B,CAAS3oC,KAAKsR,OAAOA,OAChC,EACAs3B,SAAAA,GACI,OAAO5oC,KAAKsR,OAAO2uB,SAAWlB,EAAAA,GAAWC,OAC7C,EACA6J,SAAAA,GAAY,IAAAC,EACR,OAA0B,QAA1BA,EAAI9oC,KAAKsR,OAAOisB,kBAAU,IAAAuL,GAAtBA,EAAwB7D,aACjB8D,EAAAA,GAAAA,SAAQ/oC,KAAKsR,OAAOisB,WAAW0H,aAEnCjlC,KAAKsR,OAAOu3B,WAAa,EACpC,EACA3S,WAAAA,GACI,MAAM8S,EAAMhpC,KAAK6oC,UACX7nC,EAAO4J,OAAO5K,KAAKsR,OAAOisB,WAAW0H,aACpCjlC,KAAKsR,OAAOirB,UAEnB,OAAQyM,EAAahoC,EAAKG,MAAM,EAAG,EAAI6nC,EAAItnC,QAA7BV,CAClB,EACA+jC,aAAAA,GACI,OAAO/kC,KAAKgkC,cAAcf,QAC9B,EACA6B,aAAAA,GACI,OAAO9kC,KAAKkkC,eAAenK,QAC/B,EACAkP,UAAAA,GACI,OAAOjpC,KAAK8kC,cAAc/8B,SAAS/H,KAAKsR,OAAOA,OACnD,EACA43B,UAAAA,GACI,OAAOlpC,KAAK0mC,cAAcC,eAAiB3mC,KAAKsR,MACpD,EACA63B,qBAAAA,GACI,OAAOnpC,KAAKkpC,YAAclpC,KAAKkjC,eAAiB,GACpD,EACA9rB,QAAAA,GACI,OAAOxM,OAAO5K,KAAKi3B,UAAYrsB,OAAO5K,KAAKsoC,cAC/C,EAIAc,cAAAA,GACI,OAAOppC,KAAKsR,OAAO2uB,SAAWlB,EAAAA,GAAWsK,MAC7C,EACAC,OAAAA,GACI,GAAItpC,KAAKkpC,WACL,OAAO,EAEX,MAAMI,EAAWxS,GACsC,KAA3CA,aAAI,EAAJA,EAAMH,aAAcC,EAAAA,GAAWuG,QAG3C,OAAIn9B,KAAK8kC,cAAcpjC,OAAS,EACd1B,KAAK8kC,cAAch+B,KAAIwK,GAAUtR,KAAKikC,WAAWjM,QAAQ1mB,KAC1DpE,MAAMo8B,GAEhBA,EAAQtpC,KAAKsR,OACxB,EACAq0B,OAAAA,GACI,OAAI3lC,KAAKsR,OAAOvD,OAASyrB,EAAAA,GAASC,SAI9Bz5B,KAAK+kC,cAAch9B,SAAS/H,KAAKsR,OAAOA,SAGa,IAAjDtR,KAAKsR,OAAOqlB,YAAcC,EAAAA,GAAWgP,OACjD,EACA2D,WAAY,CACRpjB,GAAAA,GACI,OAAOnmB,KAAKwpC,iBAAiBhD,SAAWxmC,KAAK0oC,SAAShjC,UAC1D,EACAw0B,GAAAA,CAAIsM,GACAxmC,KAAKwpC,iBAAiBhD,OAASA,EAASxmC,KAAK0oC,SAAShjC,WAAa,IACvE,GAEJwjC,UAAAA,GACI,OAAOlpC,KAAK0mC,cAAcC,eAAiB3mC,KAAKsR,MACpD,GAEJ+iB,MAAO,CAKH/iB,MAAAA,CAAO3K,EAAGC,GACFD,EAAE2K,SAAW1K,EAAE0K,QACftR,KAAKypC,YAEb,GAEJlY,aAAAA,GACIvxB,KAAKypC,YACT,EACAnc,QAAS,CACLmc,UAAAA,GAAa,IAAAC,EAAAC,EAET3pC,KAAKioC,QAAU,GAEL,QAAVyB,EAAA1pC,KAAKqnC,aAAK,IAAAqC,GAAS,QAATA,EAAVA,EAAYlC,eAAO,IAAAkC,GAAO,QAAPC,EAAnBD,EAAqBpP,aAAK,IAAAqP,GAA1BA,EAAAzoC,KAAAwoC,GAEA1pC,KAAKupC,YAAa,CACtB,EAEAK,YAAAA,CAAazpC,GAET,GAAIH,KAAKupC,WACL,OAIJ,GAAKvpC,KAAKmoC,SASL,KAAA0B,EAED,MAAMpT,EAAe,QAAXoT,EAAG7pC,KAAK8uB,WAAG,IAAA+a,OAAA,EAARA,EAAUC,QAAQ,oBAC/BrT,EAAKjY,MAAMurB,eAAe,iBAC1BtT,EAAKjY,MAAMurB,eAAe,gBAC9B,KAdoB,KAAAC,EAEhB,MAAMvT,EAAe,QAAXuT,EAAGhqC,KAAK8uB,WAAG,IAAAkb,OAAA,EAARA,EAAUF,QAAQ,oBACzBtG,EAAc/M,EAAKrY,wBAGzBqY,EAAKjY,MAAMyrB,YAAY,gBAAiBxnB,KAAKD,IAAI,EAAGriB,EAAM+pC,QAAU1G,EAAY5/B,KAAO,KAAO,MAC9F6yB,EAAKjY,MAAMyrB,YAAY,gBAAiBxnB,KAAKD,IAAI,EAAGriB,EAAMgqC,QAAU3G,EAAYllB,KAAO,KAC3F,CAQA,MAAM8rB,EAAwBpqC,KAAK8kC,cAAcpjC,OAAS,EAC1D1B,KAAKwpC,iBAAiBhD,OAASxmC,KAAKipC,YAAcmB,EAAwB,SAAWpqC,KAAK0oC,SAAShjC,WAEnGvF,EAAMkY,iBACNlY,EAAMuuB,iBACV,EACA2b,iBAAAA,CAAkBlqC,GAEd,KAAIH,KAAKkpC,YAIL/oC,EAAM+X,OAAS,GAInB,OAAI/X,EAAM4X,SAAW5X,EAAM0X,SAA4B,IAAjB1X,EAAM+X,QACxC/X,EAAMkY,iBACNG,OAAO6X,MAAKvH,EAAAA,EAAAA,IAAY,cAAe,CAAEsP,OAAQp4B,KAAKi3B,WAC/C,QAEKj3B,KAAKqnC,MAAM5X,QACnB4a,kBAAkBlqC,EAC9B,EACAmqC,sBAAAA,CAAuBnqC,GAAO,IAAAoqC,EAC1BpqC,EAAMkY,iBACNlY,EAAMuuB,kBACF8b,UAAsB,QAATD,EAAbC,GAAenU,eAAO,IAAAkU,GAAtBA,EAAArpC,KAAAspC,GAAyB,CAACxqC,KAAKsR,QAAStR,KAAKyyB,cAC7C+X,GAAcpkC,KAAKpG,KAAKsR,OAAQtR,KAAKyyB,YAAazyB,KAAKooC,WAE/D,EACAhD,UAAAA,CAAWjlC,GACPH,KAAKkoC,SAAWloC,KAAK2lC,QAChB3lC,KAAK2lC,QAKNxlC,EAAM4X,QACN5X,EAAMklC,aAAaC,WAAa,OAGhCnlC,EAAMklC,aAAaC,WAAa,OARhCnlC,EAAMklC,aAAaC,WAAa,MAUxC,EACAmF,WAAAA,CAAYtqC,GAGR,MAAMgY,EAAgBhY,EAAMgY,cACxBA,SAAAA,EAAeuyB,SAASvqC,EAAMwqC,iBAGlC3qC,KAAKkoC,UAAW,EACpB,EACA,iBAAM0C,CAAYzqC,GAAO,IAAAqlC,EAAAqF,EAAApF,EAErB,GADAtlC,EAAMuuB,mBACD1uB,KAAKspC,UAAYtpC,KAAKi3B,OAGvB,OAFA92B,EAAMkY,sBACNlY,EAAMuuB,kBAGVT,GAAO2G,MAAM,eAAgB,CAAEz0B,UAEb,QAAlBqlC,EAAArlC,EAAMklC,oBAAY,IAAAG,GAAW,QAAXqF,EAAlBrF,EAAoBsF,iBAAS,IAAAD,GAA7BA,EAAA3pC,KAAAskC,GAEAxlC,KAAK0mC,cAAcqE,SAGf/qC,KAAK8kC,cAAc/8B,SAAS/H,KAAKsR,OAAOA,QACxCtR,KAAKgkC,cAAc9J,IAAIl6B,KAAK8kC,eAG5B9kC,KAAKgkC,cAAc9J,IAAI,CAACl6B,KAAKsR,OAAOA,SAExC,MAAMglB,EAAQt2B,KAAKgkC,cAAcf,SAC5Bn8B,KAAIwK,GAAUtR,KAAKikC,WAAWjM,QAAQ1mB,KACrC05B,ODzPmB3T,UAC1B,IAAIzQ,SAAS7Q,IACXyxB,KACDA,IAAU,IAAIG,IAAUsD,SACxBltB,SAASmtB,KAAKnc,YAAYyY,GAAQ1Y,MAEtC0Y,GAAQ7X,OAAO2G,GACfkR,GAAQ2D,IAAI,UAAU,KAClBp1B,EAAQyxB,GAAQ1Y,KAChB0Y,GAAQ4D,KAAK,SAAS,GACxB,IC+OsBC,CAAsB/U,GACxB,QAAlBmP,EAAAtlC,EAAMklC,oBAAY,IAAAI,GAAlBA,EAAoB6F,aAAaN,GAAQ,IAAK,GAClD,EACAO,SAAAA,GACIvrC,KAAKgkC,cAAc1J,QACnBt6B,KAAKkoC,UAAW,EAChBja,GAAO2G,MAAM,aACjB,EACA,YAAM2Q,CAAOplC,GAAO,IAAAqrC,EAAAC,EAAAjX,EAEhB,KAAKx0B,KAAK+kC,eAAoC,QAAnByG,EAACrrC,EAAMklC,oBAAY,IAAAmG,GAAO,QAAPA,EAAlBA,EAAoBhK,aAAK,IAAAgK,GAAzBA,EAA2B9pC,QACnD,OAEJvB,EAAMkY,iBACNlY,EAAMuuB,kBAEN,MAAMyL,EAAYn6B,KAAK+kC,cACjBvD,EAAQ,KAAsB,QAAlBiK,EAAAtrC,EAAMklC,oBAAY,IAAAoG,OAAA,EAAlBA,EAAoBjK,QAAS,IAGzCQ,QAAiBT,GAAuBC,GAExC3G,QAAiC,QAAtBrG,EAAMx0B,KAAKyyB,mBAAW,IAAA+B,OAAA,EAAhBA,EAAkBqJ,YAAY79B,KAAKsR,OAAOrF,OAC3DsyB,EAAS1D,aAAQ,EAARA,EAAU0D,OACzB,IAAKA,EAED,YADArQ,EAAAA,GAAAA,IAAUluB,KAAK2sB,EAAE,QAAS,0CAK9B,IAAK3sB,KAAK2lC,SAAWxlC,EAAM+X,OACvB,OAEJ,MAAM6qB,EAAS5iC,EAAM4X,QAIrB,GAHA/X,KAAKkoC,UAAW,EAChBja,GAAO2G,MAAM,UAAW,CAAEz0B,QAAOo+B,SAAQpE,YAAW6H,aAEhDA,EAASnH,SAASn5B,OAAS,EAE3B,kBADM2gC,GAAoBL,EAAUzD,EAAQ1D,EAASA,UAIzD,MAAMvE,EAAQ6D,EAAUrzB,KAAIwK,GAAUtR,KAAKikC,WAAWjM,QAAQ1mB,WACxDwxB,GAAoBxM,EAAOiI,EAAQ1D,EAASA,SAAUkI,GAGxD5I,EAAUqD,MAAKlsB,GAAUtR,KAAK8kC,cAAc/8B,SAASuJ,OACrD2c,GAAO2G,MAAM,gDACb50B,KAAKkkC,eAAe5J,QAE5B,EACA3N,EAACA,GAAAA,M,eE1ST,MCNmQ,GDMnQ,CACI3rB,KAAM,sBACN8M,MAAO,CACHwD,OAAQ,CACJvD,KAAMxO,OACN8V,UAAU,GAEdod,YAAa,CACT1kB,KAAMxO,OACN8V,UAAU,GAEdpH,OAAQ,CACJF,KAAM8gB,SACNxZ,UAAU,IAGlBgf,MAAO,CACH/iB,MAAAA,GACI,KAAKo6B,mBACT,EACAjZ,WAAAA,GACI,KAAKiZ,mBACT,GAEJze,OAAAA,GACI,KAAKye,mBACT,EACApe,QAAS,CACL,uBAAMoe,GACF,MAAMC,QAAgB,KAAK19B,OAAO,KAAKqD,OAAQ,KAAKmhB,aAChDkZ,EACA,KAAK7c,IAAIyY,gBAAgBoE,GAGzB,KAAK7c,IAAIyY,iBAEjB,IExBR,IAXgB,QACd,IFRW,WAA+C,OAAOle,EAA5BrpB,KAAYspB,MAAMD,IAAa,OACtE,GACsB,IESpB,EACA,KACA,KACA,MAI8B,QClBhC,I,oCCoBA,MCpB4G,GDoB5G,CACEroB,KAAM,gBACNgoB,MAAO,CAAC,SACRlb,MAAO,CACLmb,MAAO,CACLlb,KAAMnD,QAERse,UAAW,CACTnb,KAAMnD,OACNoD,QAAS,gBAEXmb,KAAM,CACJpb,KAAMlH,OACNmH,QAAS,MEff,IAXgB,QACd,ICRW,WAAkB,IAAIob,EAAIppB,KAAKqpB,EAAGD,EAAIE,MAAMD,GAAG,OAAOA,EAAG,OAAOD,EAAIG,GAAG,CAACC,YAAY,uCAAuCnZ,MAAM,CAAC,eAAc+Y,EAAIH,OAAQ,KAAY,aAAaG,EAAIH,MAAM,KAAO,OAAOtmB,GAAG,CAAC,MAAQ,SAAS8mB,GAAQ,OAAOL,EAAIM,MAAM,QAASD,EAAO,IAAI,OAAOL,EAAIO,QAAO,GAAO,CAACN,EAAG,MAAM,CAACG,YAAY,4BAA4BnZ,MAAM,CAAC,KAAO+Y,EAAIF,UAAU,MAAQE,EAAID,KAAK,OAASC,EAAID,KAAK,QAAU,cAAc,CAACE,EAAG,OAAO,CAAChZ,MAAM,CAAC,EAAI,2EAA2E,CAAE+Y,EAAS,MAAEC,EAAG,QAAQ,CAACD,EAAIQ,GAAGR,EAAIS,GAAGT,EAAIH,UAAUG,EAAIU,UAC1lB,GACsB,IDSpB,EACA,KACA,KACA,MAI8B,QHJ1B2F,IAAUmc,EAAAA,EAAAA,MAChB,IAAenY,EAAAA,EAAAA,IAAgB,CAC3BzyB,KAAM,mBACNwC,WAAY,CACRqoC,cAAa,GACbC,oBAAmB,GACnBC,eAAc,KACdC,UAAS,KACTC,kBAAiB,KACjBpY,iBAAgB,KAChBqY,cAAaA,GAAAA,GAEjBp+B,MAAO,CACHo1B,eAAgB,CACZn1B,KAAMlH,OACNwO,UAAU,GAEd4yB,QAAS,CACLl6B,KAAMnD,OACNyK,UAAU,GAEdmxB,OAAQ,CACJz4B,KAAMlF,QACNmF,SAAS,GAEbsD,OAAQ,CACJvD,KAAMxO,OACN8V,UAAU,GAEd8yB,SAAU,CACNp6B,KAAMlF,QACNmF,SAAS,IAGjBsiB,KAAAA,GACI,MAAM,YAAEmC,GAAgBL,KACxB,MAAO,CAEHK,YAAaA,EAErB,EACArkB,KAAIA,KACO,CACH+9B,cAAe,OAGvBlgB,SAAU,CACNmc,UAAAA,GAAa,IAAAnU,EAET,QAAmB,QAAXA,EAAA,KAAKzlB,cAAM,IAAAylB,GAAO,QAAPA,EAAXA,EAAavsB,aAAK,IAAAusB,GAAK,QAALA,EAAlBA,EAAoBwB,WAAG,IAAAxB,OAAA,EAAvBA,EAAyBvuB,aAAc,KAAKa,QAAQ,WAAY,KAC5E,EACAqiC,SAAAA,GACI,OAAO,KAAKt3B,OAAO2uB,SAAWlB,EAAAA,GAAWC,OAC7C,EAEAoN,cAAAA,GACI,OAAI,KAAK96B,OAAO2uB,SAAWlB,EAAAA,GAAWsK,OAC3B,GAEJ5Z,GACFnmB,QAAO0sB,IAAWA,EAAOK,SAAWL,EAAOK,QAAQ,CAAC,KAAK/kB,QAAS,KAAKmhB,eACvE/rB,MAAK,CAACC,EAAGC,KAAOD,EAAEwtB,OAAS,IAAMvtB,EAAEutB,OAAS,IACrD,EAEAkY,oBAAAA,GACI,OAAI,KAAKnJ,eAAiB,KAAO,KAAKiF,SAC3B,GAEJ,KAAKiE,eAAe9iC,QAAO0sB,IAAM,IAAAsW,EAAA,OAAItW,SAAc,QAARsW,EAANtW,EAAQuW,cAAM,IAAAD,OAAA,EAAdA,EAAAprC,KAAA80B,EAAiB,KAAK1kB,OAAQ,KAAKmhB,YAAY,GAC/F,EAEA+Z,oBAAAA,GACI,OAAI,KAAKrE,SACE,GAEJ,KAAKiE,eAAe9iC,QAAO0sB,GAAyC,mBAAxBA,EAAOyW,cAC9D,EAEAC,qBAAAA,GACI,OAAO,KAAKN,eAAe9iC,QAAO0sB,KAAYA,UAAAA,EAAQhoB,UAC1D,EAEA2+B,kBAAAA,GAGI,GAAI,KAAKR,cACL,OAAO,KAAKE,qBAEhB,MAAM5c,EAAU,IAET,KAAK4c,wBAEL,KAAKD,eAAe9iC,QAAO0sB,GAAUA,EAAOhoB,UAAY4+B,EAAAA,GAAYC,QAAyC,mBAAxB7W,EAAOyW,gBACjGnjC,QAAO,CAAClE,EAAO8D,EAAO8hB,IAEb9hB,IAAU8hB,EAAK8hB,WAAU9W,GAAUA,EAAOvB,KAAOrvB,EAAMqvB,OAG5DsY,EAAgBtd,EAAQnmB,QAAO0sB,IAAWA,EAAOtpB,SAAQ5F,KAAIkvB,GAAUA,EAAOvB,KAEpF,OAAOhF,EAAQnmB,QAAO0sB,KAAYA,EAAOtpB,QAAUqgC,EAAchlC,SAASiuB,EAAOtpB,UACrF,EACAsgC,qBAAAA,GACI,OAAO,KAAKZ,eACP9iC,QAAO0sB,GAAUA,EAAOtpB,SACxB9D,QAAO,CAACsI,EAAK8kB,KACT9kB,EAAI8kB,EAAOtpB,UACZwE,EAAI8kB,EAAOtpB,QAAU,IAEzBwE,EAAI8kB,EAAOtpB,QAAQlM,KAAKw1B,GACjB9kB,IACR,CAAC,EACR,EACAq4B,WAAY,CACRpjB,GAAAA,GACI,OAAO,KAAKqgB,MAChB,EACAtM,GAAAA,CAAI90B,GACA,KAAKskB,MAAM,gBAAiBtkB,EAChC,GAOJ6nC,qBAAoBA,IACTlvB,SAASE,cAAc,8BAElCivB,SAAAA,GACI,OAAO,KAAK57B,OAAOisB,WAAW,aAClC,GAEJjQ,QAAS,CACL6f,iBAAAA,CAAkBnX,GACd,IAAK,KAAKmS,UAAa,KAAKjF,eAAiB,KAAOlN,EAAOuW,SAAoC,mBAAjBvW,EAAO/M,MAAsB,CAGvG,MAAMA,EAAQ+M,EAAO/M,MAAM,CAAC,KAAK3X,QAAS,KAAKmhB,aAC/C,GAAIxJ,EACA,OAAOA,CACf,CACA,OAAO+M,EAAOE,YAAY,CAAC,KAAK5kB,QAAS,KAAKmhB,YAClD,EACA,mBAAM2a,CAAcpX,GAA2B,IAAnBqX,EAAS/qC,UAAAZ,OAAA,QAAAc,IAAAF,UAAA,IAAAA,UAAA,GAEjC,GAAI,KAAKsmC,WAA8B,KAAjB,KAAKX,QACvB,OAGJ,GAAI,KAAK+E,sBAAsBhX,EAAOvB,IAElC,YADA,KAAK0X,cAAgBnW,GAGzB,MAAME,EAAcF,EAAOE,YAAY,CAAC,KAAK5kB,QAAS,KAAKmhB,aAC3D,IAEI,KAAK/I,MAAM,iBAAkBsM,EAAOvB,IACpC,KAAK6Y,KAAK,KAAKh8B,OAAQ,SAAUytB,EAAAA,GAAWC,SAC5C,MAAMuO,QAAgBvX,EAAO5vB,KAAK,KAAKkL,OAAQ,KAAKmhB,YAAa,KAAK2V,YAEtE,GAAImF,QACA,OAEJ,GAAIA,EAEA,YADAxb,EAAAA,GAAAA,KAAYpF,EAAAA,GAAAA,IAAE,QAAS,+CAAgD,CAAEuJ,kBAG7EhI,EAAAA,GAAAA,KAAUvB,EAAAA,GAAAA,IAAE,QAAS,gCAAiC,CAAEuJ,gBAC5D,CACA,MAAOpqB,GACHmiB,GAAO1O,MAAM,+BAAgC,CAAEyW,SAAQlqB,OACvDoiB,EAAAA,GAAAA,KAAUvB,EAAAA,GAAAA,IAAE,QAAS,gCAAiC,CAAEuJ,gBAC5D,CAAC,QAGG,KAAKxM,MAAM,iBAAkB,IAC7B,KAAK4jB,KAAK,KAAKh8B,OAAQ,cAAU9O,GAE7B6qC,IACA,KAAKlB,cAAgB,KAE7B,CACJ,EACA9B,iBAAAA,CAAkBlqC,GACV,KAAKusC,sBAAsBhrC,OAAS,IACpCvB,EAAMkY,iBACNlY,EAAMuuB,kBAEN,KAAKge,sBAAsB,GAAGtmC,KAAK,KAAKkL,OAAQ,KAAKmhB,YAAa,KAAK2V,YAE/E,EACAoF,MAAAA,CAAO/Y,GAAI,IAAAgZ,EACP,OAAqC,QAA9BA,EAAA,KAAKT,sBAAsBvY,UAAG,IAAAgZ,OAAA,EAA9BA,EAAgC/rC,QAAS,CACpD,EACA,uBAAMgsC,CAAkB1X,GACpB,KAAKmW,cAAgB,WAEf,KAAKvvB,YAEX,KAAKA,WAAU,KAAM,IAAA8sB,EAEjB,MAAMiE,EAA8C,QAApCjE,EAAG,KAAKrC,MAAK,UAAAhmC,OAAW20B,EAAOvB,YAAK,IAAAiV,OAAA,EAAjCA,EAAoC,GACvC,IAAAkE,EAAZD,IACsC,QAAtCC,EAAAD,EAAW7e,IAAI7Q,cAAc,iBAAS,IAAA2vB,GAAtCA,EAAwCC,QAC5C,GAER,EACAlhB,EAACA,GAAAA,MK9NgQ,M,gBCWrQ,GAAU,CAAC,EAEf,GAAQyB,kBAAoB,KAC5B,GAAQC,cAAgB,KAElB,GAAQC,OAAS,UAAc,KAAM,QAE3C,GAAQC,OAAS,KACjB,GAAQC,mBAAqB,KAEhB,KAAI,KAAS,IAKJ,MAAW,KAAQC,QAAS,KAAQA,O,gBCftD,GAAU,CAAC,EAEf,GAAQL,kBAAoB,KAC5B,GAAQC,cAAgB,KAElB,GAAQC,OAAS,UAAc,KAAM,QAE3C,GAAQC,OAAS,KACjB,GAAQC,mBAAqB,KAEhB,KAAI,KAAS,IAKJ,MAAW,KAAQC,QAAS,KAAQA,OCjB1D,IAAI,IAAY,QACd,IRVW,WAAiB,IAAAqf,EAAAC,EAAK3kB,EAAIppB,KAAKqpB,EAAGD,EAAIE,MAAMD,GAAgC,OAAtBD,EAAIE,MAAMsM,YAAmBvM,EAAG,KAAK,CAACG,YAAY,0BAA0BnZ,MAAM,CAAC,iCAAiC,KAAK,CAAC+Y,EAAI4I,GAAI5I,EAAIojB,sBAAsB,SAASxW,GAAQ,OAAO3M,EAAG,sBAAsB,CAACzkB,IAAIoxB,EAAOvB,GAAGjL,YAAY,iCAAiCzS,MAAM,0BAA4Bif,EAAOvB,GAAGpkB,MAAM,CAAC,eAAe+Y,EAAIqJ,YAAY,OAASuD,EAAOyW,aAAa,OAASrjB,EAAI9X,SAAS,IAAG8X,EAAIQ,GAAG,KAAKP,EAAG,YAAY,CAAC1c,IAAI,cAAc0D,MAAM,CAAC,qBAAqB+Y,EAAI6jB,qBAAqB,UAAY7jB,EAAI6jB,qBAAqB,cAAa,EAAK,KAAO,WAAW,aAAiD,IAApC7jB,EAAIijB,qBAAqB3qC,OAAuD,OAAS0nB,EAAIijB,qBAAqB3qC,OAAO,KAAO0nB,EAAImgB,YAAY5mC,GAAG,CAAC,cAAc,SAAS8mB,GAAQL,EAAImgB,WAAW9f,CAAM,EAAE,MAAQ,SAASA,GAAQL,EAAI+iB,cAAgB,IAAI,IAAI,CAAC/iB,EAAI4I,GAAI5I,EAAIujB,oBAAoB,SAAS3W,GAAO,IAAAgY,EAAC,OAAO3kB,EAAG,iBAAiB,CAACzkB,IAAIoxB,EAAOvB,GAAG9nB,IAAG,UAAAtL,OAAW20B,EAAOvB,IAAKwZ,UAAS,EAAKl3B,MAAM,CAClhC,CAAC,0BAAD1V,OAA2B20B,EAAOvB,MAAO,EACzC,+BAAkCrL,EAAIokB,OAAOxX,EAAOvB,KACnDpkB,MAAM,CAAC,qBAAqB+Y,EAAIokB,OAAOxX,EAAOvB,IAAI,gCAAgCuB,EAAOvB,GAAG,UAAUrL,EAAIokB,OAAOxX,EAAOvB,IAAI,MAAoB,QAAbuZ,EAAChY,EAAO/M,aAAK,IAAA+kB,OAAA,EAAZA,EAAA9sC,KAAA80B,EAAe,CAAC5M,EAAI9X,QAAS8X,EAAIqJ,cAAc9vB,GAAG,CAAC,MAAQ,SAAS8mB,GAAQ,OAAOL,EAAIgkB,cAAcpX,EAAO,GAAG/D,YAAY7I,EAAI8I,GAAG,CAAC,CAACttB,IAAI,OAAO/E,GAAG,WAAW,MAAO,CAAEupB,EAAI6e,UAAYjS,EAAOvB,GAAIpL,EAAG,gBAAgB,CAAChZ,MAAM,CAAC,KAAO,MAAMgZ,EAAG,mBAAmB,CAAChZ,MAAM,CAAC,IAAM2lB,EAAOG,cAAc,CAAC/M,EAAI9X,QAAS8X,EAAIqJ,gBAAgB,EAAEN,OAAM,IAAO,MAAK,IAAO,CAAC/I,EAAIQ,GAAG,WAAWR,EAAIS,GAAqB,WAAlBT,EAAI8jB,WAAwC,mBAAdlX,EAAOvB,GAA0B,GAAKrL,EAAI+jB,kBAAkBnX,IAAS,WAAW,IAAG5M,EAAIQ,GAAG,KAAMR,EAAI+iB,eAAiB/iB,EAAI4jB,sBAAuC,QAAlBc,EAAC1kB,EAAI+iB,qBAAa,IAAA2B,OAAA,EAAjBA,EAAmBrZ,IAAK,CAACpL,EAAG,iBAAiB,CAACG,YAAY,8BAA8B7mB,GAAG,CAAC,MAAQ,SAAS8mB,GAAQ,OAAOL,EAAIskB,kBAAkBtkB,EAAI+iB,cAAc,GAAGla,YAAY7I,EAAI8I,GAAG,CAAC,CAACttB,IAAI,OAAO/E,GAAG,WAAW,MAAO,CAACwpB,EAAG,iBAAiB,EAAE8I,OAAM,IAAO,MAAK,EAAM,aAAa,CAAC/I,EAAIQ,GAAG,aAAaR,EAAIS,GAAGT,EAAI+jB,kBAAkB/jB,EAAI+iB,gBAAgB,cAAc/iB,EAAIQ,GAAG,KAAKP,EAAG,qBAAqBD,EAAIQ,GAAG,KAAKR,EAAI4I,GAAI5I,EAAI4jB,sBAAuC,QAAlBe,EAAC3kB,EAAI+iB,qBAAa,IAAA4B,OAAA,EAAjBA,EAAmBtZ,KAAK,SAASuB,GAAO,IAAAkY,EAAC,OAAO7kB,EAAG,iBAAiB,CAACzkB,IAAIoxB,EAAOvB,GAAGjL,YAAY,kCAAkCzS,MAAK,0BAAA1V,OAA2B20B,EAAOvB,IAAKpkB,MAAM,CAAC,oBAAoB,GAAG,gCAAgC2lB,EAAOvB,GAAG,MAAoB,QAAbyZ,EAAClY,EAAO/M,aAAK,IAAAilB,OAAA,EAAZA,EAAAhtC,KAAA80B,EAAe,CAAC5M,EAAI9X,QAAS8X,EAAIqJ,cAAc9vB,GAAG,CAAC,MAAQ,SAAS8mB,GAAQ,OAAOL,EAAIgkB,cAAcpX,EAAO,GAAG/D,YAAY7I,EAAI8I,GAAG,CAAC,CAACttB,IAAI,OAAO/E,GAAG,WAAW,MAAO,CAAEupB,EAAI6e,UAAYjS,EAAOvB,GAAIpL,EAAG,gBAAgB,CAAChZ,MAAM,CAAC,KAAO,MAAMgZ,EAAG,mBAAmB,CAAChZ,MAAM,CAAC,IAAM2lB,EAAOG,cAAc,CAAC/M,EAAI9X,QAAS8X,EAAIqJ,gBAAgB,EAAEN,OAAM,IAAO,MAAK,IAAO,CAAC/I,EAAIQ,GAAG,aAAaR,EAAIS,GAAGT,EAAI+jB,kBAAkBnX,IAAS,aAAa,KAAI5M,EAAIU,MAAM,IAAI,EACnyD,GACsB,IQQpB,EACA,KACA,WACA,MAIF,SAAe,GAAiB,QCpB0O,ICQ3P2J,EAAAA,EAAAA,IAAgB,CAC3BzyB,KAAM,oBACNwC,WAAY,CACR0sB,sBAAqB,KACrBgc,cAAaA,GAAAA,GAEjBp+B,MAAO,CACHmpB,OAAQ,CACJlpB,KAAMlH,OACNwO,UAAU,GAEduzB,UAAW,CACP76B,KAAMlF,QACNmF,SAAS,GAEbsoB,MAAO,CACHvoB,KAAMnM,MACNyT,UAAU,GAEd/D,OAAQ,CACJvD,KAAMxO,OACN8V,UAAU,IAGlBib,KAAAA,GACI,MAAM4T,EAAiBpK,KACjBqU,ECvBkB,WAC5B,MAmBMA,GAnBQ3e,EAAAA,EAAAA,IAAY,WAAY,CAClCvT,MAAOA,KAAA,CACHnE,QAAQ,EACRC,SAAS,EACTF,SAAS,EACTG,UAAU,IAEdyX,QAAS,CACL2e,OAAAA,CAAQjuC,GACCA,IACDA,EAAQqY,OAAOrY,OAEnBmnB,EAAAA,GAAAA,IAAQtnB,KAAM,WAAYG,EAAM2X,QAChCwP,EAAAA,GAAAA,IAAQtnB,KAAM,YAAaG,EAAM4X,SACjCuP,EAAAA,GAAAA,IAAQtnB,KAAM,YAAaG,EAAM0X,SACjCyP,EAAAA,GAAAA,IAAQtnB,KAAM,aAAcG,EAAM6X,SACtC,IAGc6X,IAAMvtB,WAQ5B,OANK6rC,EAAcre,eACftX,OAAO2D,iBAAiB,UAAWgyB,EAAcC,SACjD51B,OAAO2D,iBAAiB,QAASgyB,EAAcC,SAC/C51B,OAAO2D,iBAAiB,YAAagyB,EAAcC,SACnDD,EAAcre,cAAe,GAE1Bqe,CACX,CDN8BE,GACtB,MAAO,CACHF,gBACAjK,iBAER,EACAjY,SAAU,CACN6Y,aAAAA,GACI,OAAO,KAAKZ,eAAenK,QAC/B,EACAkP,UAAAA,GACI,OAAO,KAAKnE,cAAc/8B,SAAS,KAAKuJ,OAAOA,OACnD,EACApI,KAAAA,GACI,OAAO,KAAKotB,MAAMwW,WAAWhW,GAASA,EAAKxlB,SAAW,KAAKA,OAAOA,QACtE,EACAkqB,MAAAA,GACI,OAAO,KAAKlqB,OAAOvD,OAASyrB,EAAAA,GAASoB,IACzC,EACA0T,SAAAA,GACI,OAAO,KAAK9S,QACN7O,EAAAA,GAAAA,IAAE,QAAS,4CAA6C,CAAEuJ,YAAa,KAAK5kB,OAAOirB,YACnF5P,EAAAA,GAAAA,IAAE,QAAS,8CAA+C,CAAEuJ,YAAa,KAAK5kB,OAAOirB,UAC/F,GAEJjP,QAAS,CACLihB,iBAAAA,CAAkBxU,GAAU,IAAAyU,EACxB,MAAMC,EAAmB,KAAKvlC,MACxB+wB,EAAoB,KAAKiK,eAAejK,kBAE9C,GAAsB,QAAlBuU,EAAA,KAAKL,qBAAa,IAAAK,GAAlBA,EAAoBx2B,UAAkC,OAAtBiiB,EAA4B,CAC5D,MAAMyU,EAAoB,KAAK5J,cAAc/8B,SAAS,KAAKuJ,OAAOA,QAC5DqxB,EAAQlgB,KAAKmM,IAAI6f,EAAkBxU,GACnCtmB,EAAM8O,KAAKD,IAAIyX,EAAmBwU,GAClCzU,EAAgB,KAAKkK,eAAelK,cACpC2U,EAAgB,KAAKrY,MACtBxvB,KAAIu0B,GAAQA,EAAK/pB,SACjBnQ,MAAMwhC,EAAOhvB,EAAM,GACnBrK,OAAOT,SAENsxB,EAAY,IAAIH,KAAkB2U,GACnCrlC,QAAOgI,IAAWo9B,GAAqBp9B,IAAW,KAAKA,OAAOA,SAInE,OAHA2c,GAAO2G,MAAM,oDAAqD,CAAE+N,QAAOhvB,MAAKg7B,gBAAeD,2BAE/F,KAAKxK,eAAehK,IAAIC,EAE5B,CACA,MAAMA,EAAYJ,EACZ,IAAI,KAAK+K,cAAe,KAAKxzB,OAAOA,QACpC,KAAKwzB,cAAcx7B,QAAOgI,GAAUA,IAAW,KAAKA,OAAOA,SACjE2c,GAAO2G,MAAM,qBAAsB,CAAEuF,cACrC,KAAK+J,eAAehK,IAAIC,GACxB,KAAK+J,eAAe7J,aAAaoU,EACrC,EACAG,cAAAA,GACI,KAAK1K,eAAe5J,OACxB,EACA3N,EAACA,GAAAA,MEzET,IAXgB,QACd,IFRW,WAAkB,IAAIvD,EAAIppB,KAAKqpB,EAAGD,EAAIE,MAAMD,GAAgC,OAAtBD,EAAIE,MAAMsM,YAAmBvM,EAAG,KAAK,CAACG,YAAY,2BAA2B7mB,GAAG,CAAC,MAAQ,SAAS8mB,GAAQ,OAAIA,EAAO1b,KAAKzJ,QAAQ,QAAQ8kB,EAAIylB,GAAGplB,EAAOqlB,QAAQ,MAAM,GAAGrlB,EAAO7kB,IAAI,CAAC,MAAM,YAA0B6kB,EAAO1R,SAAS0R,EAAOzR,UAAUyR,EAAO3R,QAAQ2R,EAAO5R,QAA/D,KAA0FuR,EAAIwlB,eAAensC,MAAM,KAAMH,UAAU,IAAI,CAAE8mB,EAAIwf,UAAWvf,EAAG,iBAAiBA,EAAG,wBAAwB,CAAChZ,MAAM,CAAC,aAAa+Y,EAAIklB,UAAU,QAAUllB,EAAI6f,YAAYtmC,GAAG,CAAC,iBAAiBymB,EAAImlB,sBAAsB,EACnkB,GACsB,IESpB,EACA,KACA,KACA,MAI8B,QClBhC,I,YAWA,MAAMQ,IAAsB/iB,EAAAA,GAAAA,GAAU,QAAS,sBAAuB,ICXgM,IDYvPyH,EAAAA,EAAAA,IAAgB,CAC3BzyB,KAAM,gBACNwC,WAAY,CACRwrC,YAAWA,GAAAA,GAEflhC,MAAO,CACHooB,YAAa,CACTnoB,KAAMnD,OACNyK,UAAU,GAEdwzB,UAAW,CACP96B,KAAMnD,OACNyK,UAAU,GAEd6tB,eAAgB,CACZn1B,KAAMlH,OACNwO,UAAU,GAEdihB,MAAO,CACHvoB,KAAMnM,MACNyT,UAAU,GAEd/D,OAAQ,CACJvD,KAAMxO,OACN8V,UAAU,GAEd8yB,SAAU,CACNp6B,KAAMlF,QACNmF,SAAS,IAGjBsiB,KAAAA,GACI,MAAM,YAAEmC,GAAgBL,KAExB,MAAO,CACHK,cACAiU,cAHkBD,KAK1B,EACAxa,SAAU,CACNid,UAAAA,GACI,OAAO,KAAKxC,cAAcC,eAAiB,KAAKr1B,MACpD,EACA63B,qBAAAA,GACI,OAAO,KAAKD,YAAc,KAAKhG,eAAiB,GACpD,EACA0D,QAAS,CACLzgB,GAAAA,GACI,OAAO,KAAKugB,cAAcE,OAC9B,EACA1M,GAAAA,CAAI0M,GACA,KAAKF,cAAcE,QAAUA,CACjC,GAEJqI,WAAAA,GAKI,MAJmB,CACf,CAACzV,EAAAA,GAASoB,OAAOjO,EAAAA,GAAAA,IAAE,QAAS,aAC5B,CAAC6M,EAAAA,GAASC,SAAS9M,EAAAA,GAAAA,IAAE,QAAS,gBAEhB,KAAKrb,OAAOvD,KAClC,EACAmhC,MAAAA,GAAS,IAAAC,EAAAC,EACL,GAAI,KAAK99B,OAAO2uB,SAAWlB,EAAAA,GAAWsK,OAClC,MAAO,CACHgG,GAAI,OACJnjC,OAAQ,CACJ+c,OAAO0D,EAAAA,GAAAA,IAAE,QAAS,8BAI9B,MAAM+f,EAAoC,QAAfyC,EAAG,KAAKhgC,eAAO,IAAAggC,GAAO,QAAPA,EAAZA,EAAc9H,aAAK,IAAA8H,GAAS,QAATA,EAAnBA,EAAqB1f,eAAO,IAAA0f,OAAA,EAA5BA,EAA8BzC,sBAC5D,OAAIA,aAAqB,EAArBA,EAAuBhrC,QAAS,EAGzB,CACH2tC,GAAI,IACJnjC,OAAQ,CACJ+c,MALOyjB,EAAsB,GACVxW,YAAY,CAAC,KAAK5kB,QAAS,KAAKmhB,aAKnD6c,KAAM,SACNC,SAAU,OAIP,QAAXH,EAAA,KAAK99B,cAAM,IAAA89B,OAAA,EAAXA,EAAazY,aAAcC,EAAAA,GAAW4Y,KAC/B,CACHH,GAAI,IACJnjC,OAAQ,CACJujC,SAAU,KAAKn+B,OAAOirB,SACtBvmB,KAAM,KAAK1E,OAAOA,OAClB2X,OAAO0D,EAAAA,GAAAA,IAAE,QAAS,uBAAwB,CAAE3rB,KAAM,KAAKk1B,cACvDqZ,SAAU,MAIf,CACHF,GAAI,OAEZ,GAEJhb,MAAO,CAMH6U,WAAY,CACRwG,WAAW,EACX94B,OAAAA,CAAQ+4B,GACAA,GACA,KAAKC,eAEb,IAGRtiB,QAAS,CAMLuiB,kBAAAA,CAAmB1vC,GAAO,IAAA2vC,EAAAC,EACtB,MAAMhsC,EAAQ5D,EAAMsW,OACdmwB,GAA2B,QAAjBkJ,GAAAC,EAAA,KAAKnJ,SAAQx/B,YAAI,IAAA0oC,OAAA,EAAjBA,EAAA5uC,KAAA6uC,KAAyB,GACzC9hB,GAAO2G,MAAM,0BAA2B,CAAEgS,YAC1C,IACI,KAAKoJ,gBAAgBpJ,GACrB7iC,EAAMksC,kBAAkB,IACxBlsC,EAAMklB,MAAQ,EAClB,CACA,MAAOnd,GACCA,aAAa0T,OACbzb,EAAMksC,kBAAkBnkC,EAAEwT,SAC1Bvb,EAAMklB,MAAQnd,EAAEwT,SAGhBvb,EAAMksC,mBAAkBtjB,EAAAA,GAAAA,IAAE,QAAS,qBAE3C,CAAC,QAEG5oB,EAAMmsC,gBACV,CACJ,EACAF,eAAAA,CAAgBhvC,GACZ,MAAMmvC,EAAcnvC,EAAKoG,OACzB,GAAoB,MAAhB+oC,GAAuC,OAAhBA,EACvB,MAAM,IAAI3wB,OAAMmN,EAAAA,GAAAA,IAAE,QAAS,oCAAqC,CAAE3rB,UAEjE,GAA2B,IAAvBmvC,EAAYzuC,OACjB,MAAM,IAAI8d,OAAMmN,EAAAA,GAAAA,IAAE,QAAS,+BAE1B,IAAkC,IAA9BwjB,EAAY7rC,QAAQ,KACzB,MAAM,IAAIkb,OAAMmN,EAAAA,GAAAA,IAAE,QAAS,2CAE1B,GAAIwjB,EAAYlsC,MAAMuU,OAAO43B,GAAGjgC,OAAOkgC,uBACxC,MAAM,IAAI7wB,OAAMmN,EAAAA,GAAAA,IAAE,QAAS,uCAAwC,CAAE3rB,UAEpE,GAAI,KAAKsvC,kBAAkBtvC,GAC5B,MAAM,IAAIwe,OAAMmN,EAAAA,GAAAA,IAAE,QAAS,4BAA6B,CAAEia,QAAS5lC,KAEvE,MAAMuvC,EAAOxB,GAAoBra,MAAM6b,GAASJ,EAAYpoC,SAASwoC,KACrE,GAAIA,EACA,MAAM,IAAI/wB,OAAMmN,EAAAA,GAAAA,IAAE,QAAS,8CAA+C,CAAE4jB,UAEhF,OAAO,CACX,EACAD,iBAAAA,CAAkBtvC,GACd,OAAO,KAAKs1B,MAAM5B,MAAKoC,GAAQA,EAAKyF,WAAav7B,GAAQ81B,IAAS,KAAKxlB,QAC3E,EACAs+B,aAAAA,GACI,KAAKhzB,WAAU,KAAM,IAAA4zB,EAEjB,MAAMC,GAAa,KAAKn/B,OAAOu3B,WAAa,IAAIplC,MAAM,IAAI/B,OACpDA,EAAS,KAAK4P,OAAOirB,SAAS94B,MAAM,IAAI/B,OAAS+uC,EACjD1sC,EAA8B,QAAzBysC,EAAG,KAAKnJ,MAAMqJ,mBAAW,IAAAF,GAAO,QAAPA,EAAtBA,EAAwBnJ,aAAK,IAAAmJ,GAAY,QAAZA,EAA7BA,EAA+BG,kBAAU,IAAAH,GAAO,QAAPA,EAAzCA,EAA2CnJ,aAAK,IAAAmJ,OAAA,EAAhDA,EAAkDzsC,MAC3DA,GAILA,EAAM6sC,kBAAkB,EAAGlvC,GAC3BqC,EAAM8pC,QAEN9pC,EAAM8sC,cAAc,IAAIC,MAAM,WAN1B7iB,GAAO1O,MAAM,kCAMsB,GAE/C,EACAwxB,YAAAA,GACS,KAAK7H,YAIV,KAAKxC,cAAcqE,QACvB,EAEA,cAAMiG,GAAW,IAAAC,EAAAC,EACb,MAAMC,EAAU,KAAK7/B,OAAOirB,SACtB6U,EAAmB,KAAK9/B,OAAO+/B,cAC/BzK,GAA2B,QAAjBqK,GAAAC,EAAA,KAAKtK,SAAQx/B,YAAI,IAAA6pC,OAAA,EAAjBA,EAAA/vC,KAAAgwC,KAAyB,GACzC,GAAgB,KAAZtK,EAIJ,GAAIuK,IAAYvK,EAKhB,GAAI,KAAK0J,kBAAkB1J,IACvB1Y,EAAAA,GAAAA,KAAUvB,EAAAA,GAAAA,IAAE,QAAS,wDADzB,CAKA,KAAK2gB,KAAK,KAAKh8B,OAAQ,SAAUytB,EAAAA,GAAWC,SAE5C,KAAK1tB,OAAOggC,OAAO1K,GACnB3Y,GAAO2G,MAAM,iBAAkB,CAAEyH,YAAa,KAAK/qB,OAAO+/B,cAAeD,qBACzE,UACUpjB,EAAAA,GAAAA,IAAM,CACR6Q,OAAQ,OACRr1B,IAAK4nC,EACLG,QAAS,CACLC,YAAa,KAAKlgC,OAAO+/B,cACzBI,UAAW,QAInB3vC,EAAAA,GAAAA,IAAK,qBAAsB,KAAKwP,SAChCxP,EAAAA,GAAAA,IAAK,qBAAsB,KAAKwP,SAChCygB,EAAAA,GAAAA,KAAYpF,EAAAA,GAAAA,IAAE,QAAS,qCAAsC,CAAEwkB,UAASvK,aAExE,KAAKmK,eACL,KAAKn0B,WAAU,KAAM,IAAA80B,EACE,QAAnBA,EAAA,KAAKrK,MAAM9K,gBAAQ,IAAAmV,GAAnBA,EAAqB7D,OAAO,GAEpC,CACA,MAAOtuB,GAAO,IAAAoyB,EAIV,GAHA1jB,GAAO1O,MAAM,4BAA6B,CAAEA,UAC5C,KAAKjO,OAAOggC,OAAOH,GACG,QAAtBQ,EAAA,KAAKtK,MAAMqJ,mBAAW,IAAAiB,GAAtBA,EAAwB9D,SACpBhO,EAAAA,GAAAA,IAAatgB,GAAQ,KAAAugB,EAAAC,EAErB,GAAgC,OAA5BxgB,SAAe,QAAVugB,EAALvgB,EAAOwO,gBAAQ,IAAA+R,OAAA,EAAfA,EAAiBG,QAEjB,YADA/R,EAAAA,GAAAA,KAAUvB,EAAAA,GAAAA,IAAE,QAAS,2DAA4D,CAAEwkB,aAGlF,GAAgC,OAA5B5xB,SAAe,QAAVwgB,EAALxgB,EAAOwO,gBAAQ,IAAAgS,OAAA,EAAfA,EAAiBE,QAEtB,YADA/R,EAAAA,GAAAA,KAAUvB,EAAAA,GAAAA,IAAE,QAAS,8FAA+F,CAAEia,UAASnR,IAAK,KAAK2S,aAGjJ,EAEAla,EAAAA,GAAAA,KAAUvB,EAAAA,GAAAA,IAAE,QAAS,+BAAgC,CAAEwkB,YAC3D,CAAC,QAEG,KAAK7D,KAAK,KAAKh8B,OAAQ,cAAU9O,EACrC,CA7CA,MAPI,KAAKuuC,oBAJL7iB,EAAAA,GAAAA,KAAUvB,EAAAA,GAAAA,IAAE,QAAS,wBAyD7B,EACAA,EAACA,GAAAA,MEzPT,IAXgB,QACd,IFRW,WAAkB,IAAIvD,EAAIppB,KAAKqpB,EAAGD,EAAIE,MAAMD,GAAgC,OAAtBD,EAAIE,MAAMsM,YAAoBxM,EAAI8f,WAAY7f,EAAG,OAAO,CAACuoB,WAAW,CAAC,CAAC5wC,KAAK,mBAAmB6wC,QAAQ,qBAAqBzsC,MAAOgkB,EAAI4nB,SAAUc,WAAW,aAAatoB,YAAY,yBAAyBnZ,MAAM,CAAC,aAAa+Y,EAAIuD,EAAE,QAAS,gBAAgBhqB,GAAG,CAAC,OAAS,SAAS8mB,GAAyD,OAAjDA,EAAOpR,iBAAiBoR,EAAOiF,kBAAyBtF,EAAI4nB,SAASvuC,MAAM,KAAMH,UAAU,IAAI,CAAC+mB,EAAG,cAAc,CAAC1c,IAAI,cAAc0D,MAAM,CAAC,MAAQ+Y,EAAI6lB,YAAY,WAAY,EAAK,UAAY,EAAE,UAAW,EAAK,MAAQ7lB,EAAIwd,QAAQ,aAAe,QAAQjkC,GAAG,CAAC,eAAe,SAAS8mB,GAAQL,EAAIwd,QAAQnd,CAAM,EAAE,MAAQ,CAACL,EAAIymB,mBAAmB,SAASpmB,GAAQ,OAAIA,EAAO1b,KAAKzJ,QAAQ,QAAQ8kB,EAAIylB,GAAGplB,EAAOqlB,QAAQ,MAAM,GAAGrlB,EAAO7kB,IAAI,CAAC,MAAM,WAAkB,KAAYwkB,EAAI2nB,aAAatuC,MAAM,KAAMH,UAAU,OAAO,GAAG+mB,EAAGD,EAAI8lB,OAAOG,GAAGjmB,EAAIG,GAAG,CAAC5c,IAAI,WAAW2I,IAAI,YAAYkU,YAAY,4BAA4BnZ,MAAM,CAAC,cAAc+Y,EAAI8f,WAAW,mCAAmC,KAAK,YAAY9f,EAAI8lB,OAAOhjC,QAAO,GAAO,CAACmd,EAAG,OAAO,CAACG,YAAY,6BAA6B,CAACH,EAAG,OAAO,CAACG,YAAY,wBAAwBuoB,SAAS,CAAC,YAAc3oB,EAAIS,GAAGT,EAAI8M,gBAAgB9M,EAAIQ,GAAG,KAAKP,EAAG,OAAO,CAACG,YAAY,2BAA2BuoB,SAAS,CAAC,YAAc3oB,EAAIS,GAAGT,EAAIyf,iBACjzC,GACsB,IESpB,EACA,KACA,KACA,MAI8B,QClBhC,I,YCoBA,MCpBuG,GDoBvG,CACE7nC,KAAM,WACNgoB,MAAO,CAAC,SACRlb,MAAO,CACLmb,MAAO,CACLlb,KAAMnD,QAERse,UAAW,CACTnb,KAAMnD,OACNoD,QAAS,gBAEXmb,KAAM,CACJpb,KAAMlH,OACNmH,QAAS,MEff,IAXgB,QACd,ICRW,WAAkB,IAAIob,EAAIppB,KAAKqpB,EAAGD,EAAIE,MAAMD,GAAG,OAAOA,EAAG,OAAOD,EAAIG,GAAG,CAACC,YAAY,iCAAiCnZ,MAAM,CAAC,eAAc+Y,EAAIH,OAAQ,KAAY,aAAaG,EAAIH,MAAM,KAAO,OAAOtmB,GAAG,CAAC,MAAQ,SAAS8mB,GAAQ,OAAOL,EAAIM,MAAM,QAASD,EAAO,IAAI,OAAOL,EAAIO,QAAO,GAAO,CAACN,EAAG,MAAM,CAACG,YAAY,4BAA4BnZ,MAAM,CAAC,KAAO+Y,EAAIF,UAAU,MAAQE,EAAID,KAAK,OAASC,EAAID,KAAK,QAAU,cAAc,CAACE,EAAG,OAAO,CAAChZ,MAAM,CAAC,EAAI,0FAA0F,CAAE+Y,EAAS,MAAEC,EAAG,QAAQ,CAACD,EAAIQ,GAAGR,EAAIS,GAAGT,EAAIH,UAAUG,EAAIU,UACnmB,GACsB,IDSpB,EACA,KACA,KACA,MAI8B,QElB6E,GCoB7G,CACE9oB,KAAM,iBACNgoB,MAAO,CAAC,SACRlb,MAAO,CACLmb,MAAO,CACLlb,KAAMnD,QAERse,UAAW,CACTnb,KAAMnD,OACNoD,QAAS,gBAEXmb,KAAM,CACJpb,KAAMlH,OACNmH,QAAS,MCff,IAXgB,QACd,ICRW,WAAkB,IAAIob,EAAIppB,KAAKqpB,EAAGD,EAAIE,MAAMD,GAAG,OAAOA,EAAG,OAAOD,EAAIG,GAAG,CAACC,YAAY,wCAAwCnZ,MAAM,CAAC,eAAc+Y,EAAIH,OAAQ,KAAY,aAAaG,EAAIH,MAAM,KAAO,OAAOtmB,GAAG,CAAC,MAAQ,SAAS8mB,GAAQ,OAAOL,EAAIM,MAAM,QAASD,EAAO,IAAI,OAAOL,EAAIO,QAAO,GAAO,CAACN,EAAG,MAAM,CAACG,YAAY,4BAA4BnZ,MAAM,CAAC,KAAO+Y,EAAIF,UAAU,MAAQE,EAAID,KAAK,OAASC,EAAID,KAAK,QAAU,cAAc,CAACE,EAAG,OAAO,CAAChZ,MAAM,CAAC,EAAI,6IAA6I,CAAE+Y,EAAS,MAAEC,EAAG,QAAQ,CAACD,EAAIQ,GAAGR,EAAIS,GAAGT,EAAIH,UAAUG,EAAIU,UAC7pB,GACsB,IDSpB,EACA,KACA,KACA,MAI8B,QElBsE,GCoBtG,CACE9oB,KAAM,UACNgoB,MAAO,CAAC,SACRlb,MAAO,CACLmb,MAAO,CACLlb,KAAMnD,QAERse,UAAW,CACTnb,KAAMnD,OACNoD,QAAS,gBAEXmb,KAAM,CACJpb,KAAMlH,OACNmH,QAAS,MCff,IAXgB,QACd,ICRW,WAAkB,IAAIob,EAAIppB,KAAKqpB,EAAGD,EAAIE,MAAMD,GAAG,OAAOA,EAAG,OAAOD,EAAIG,GAAG,CAACC,YAAY,gCAAgCnZ,MAAM,CAAC,eAAc+Y,EAAIH,OAAQ,KAAY,aAAaG,EAAIH,MAAM,KAAO,OAAOtmB,GAAG,CAAC,MAAQ,SAAS8mB,GAAQ,OAAOL,EAAIM,MAAM,QAASD,EAAO,IAAI,OAAOL,EAAIO,QAAO,GAAO,CAACN,EAAG,MAAM,CAACG,YAAY,4BAA4BnZ,MAAM,CAAC,KAAO+Y,EAAIF,UAAU,MAAQE,EAAID,KAAK,OAASC,EAAID,KAAK,QAAU,cAAc,CAACE,EAAG,OAAO,CAAChZ,MAAM,CAAC,EAAI,0KAA0K,CAAE+Y,EAAS,MAAEC,EAAG,QAAQ,CAACD,EAAIQ,GAAGR,EAAIS,GAAGT,EAAIH,UAAUG,EAAIU,UAClrB,GACsB,IDSpB,EACA,KACA,KACA,MAI8B,QElB0E,GCoB1G,CACE9oB,KAAM,cACNgoB,MAAO,CAAC,SACRlb,MAAO,CACLmb,MAAO,CACLlb,KAAMnD,QAERse,UAAW,CACTnb,KAAMnD,OACNoD,QAAS,gBAEXmb,KAAM,CACJpb,KAAMlH,OACNmH,QAAS,MCff,IAXgB,QACd,ICRW,WAAkB,IAAIob,EAAIppB,KAAKqpB,EAAGD,EAAIE,MAAMD,GAAG,OAAOA,EAAG,OAAOD,EAAIG,GAAG,CAACC,YAAY,oCAAoCnZ,MAAM,CAAC,eAAc+Y,EAAIH,OAAQ,KAAY,aAAaG,EAAIH,MAAM,KAAO,OAAOtmB,GAAG,CAAC,MAAQ,SAAS8mB,GAAQ,OAAOL,EAAIM,MAAM,QAASD,EAAO,IAAI,OAAOL,EAAIO,QAAO,GAAO,CAACN,EAAG,MAAM,CAACG,YAAY,4BAA4BnZ,MAAM,CAAC,KAAO+Y,EAAIF,UAAU,MAAQE,EAAID,KAAK,OAASC,EAAID,KAAK,QAAU,cAAc,CAACE,EAAG,OAAO,CAAChZ,MAAM,CAAC,EAAI,uLAAuL,CAAE+Y,EAAS,MAAEC,EAAG,QAAQ,CAACD,EAAIQ,GAAGR,EAAIS,GAAGT,EAAIH,UAAUG,EAAIU,UACnsB,GACsB,IDSpB,EACA,KACA,KACA,MAI8B,QElBsE,GCoBtG,CACE9oB,KAAM,UACNgoB,MAAO,CAAC,SACRlb,MAAO,CACLmb,MAAO,CACLlb,KAAMnD,QAERse,UAAW,CACTnb,KAAMnD,OACNoD,QAAS,gBAEXmb,KAAM,CACJpb,KAAMlH,OACNmH,QAAS,MCff,IAXgB,QACd,ICRW,WAAkB,IAAIob,EAAIppB,KAAKqpB,EAAGD,EAAIE,MAAMD,GAAG,OAAOA,EAAG,OAAOD,EAAIG,GAAG,CAACC,YAAY,gCAAgCnZ,MAAM,CAAC,eAAc+Y,EAAIH,OAAQ,KAAY,aAAaG,EAAIH,MAAM,KAAO,OAAOtmB,GAAG,CAAC,MAAQ,SAAS8mB,GAAQ,OAAOL,EAAIM,MAAM,QAASD,EAAO,IAAI,OAAOL,EAAIO,QAAO,GAAO,CAACN,EAAG,MAAM,CAACG,YAAY,4BAA4BnZ,MAAM,CAAC,KAAO+Y,EAAIF,UAAU,MAAQE,EAAID,KAAK,OAASC,EAAID,KAAK,QAAU,cAAc,CAACE,EAAG,OAAO,CAAChZ,MAAM,CAAC,EAAI,gVAAgV,CAAE+Y,EAAS,MAAEC,EAAG,QAAQ,CAACD,EAAIQ,GAAGR,EAAIS,GAAGT,EAAIH,UAAUG,EAAIU,UACx1B,GACsB,IDSpB,EACA,KACA,KACA,MAI8B,QElB6E,GCoB7G,CACE9oB,KAAM,iBACNgoB,MAAO,CAAC,SACRlb,MAAO,CACLmb,MAAO,CACLlb,KAAMnD,QAERse,UAAW,CACTnb,KAAMnD,OACNoD,QAAS,gBAEXmb,KAAM,CACJpb,KAAMlH,OACNmH,QAAS,MCff,IAXgB,QACd,ICRW,WAAkB,IAAIob,EAAIppB,KAAKqpB,EAAGD,EAAIE,MAAMD,GAAG,OAAOA,EAAG,OAAOD,EAAIG,GAAG,CAACC,YAAY,wCAAwCnZ,MAAM,CAAC,eAAc+Y,EAAIH,OAAQ,KAAY,aAAaG,EAAIH,MAAM,KAAO,OAAOtmB,GAAG,CAAC,MAAQ,SAAS8mB,GAAQ,OAAOL,EAAIM,MAAM,QAASD,EAAO,IAAI,OAAOL,EAAIO,QAAO,GAAO,CAACN,EAAG,MAAM,CAACG,YAAY,4BAA4BnZ,MAAM,CAAC,KAAO+Y,EAAIF,UAAU,MAAQE,EAAID,KAAK,OAASC,EAAID,KAAK,QAAU,cAAc,CAACE,EAAG,OAAO,CAAChZ,MAAM,CAAC,EAAI,mGAAmG,CAAE+Y,EAAS,MAAEC,EAAG,QAAQ,CAACD,EAAIQ,GAAGR,EAAIS,GAAGT,EAAIH,UAAUG,EAAIU,UACnnB,GACsB,IDSpB,EACA,KACA,KACA,MAI8B,QElBiK,GC2BjM,CACA9oB,KAAA,kBACA8M,MAAA,CACAmb,MAAA,CACAlb,KAAAnD,OACAoD,QAAA,IAEAkb,UAAA,CACAnb,KAAAnD,OACAoD,QAAA,gBAEAmb,KAAA,CACApb,KAAAlH,OACAmH,QAAA,MCtBA,IAXgB,QACd,ICRW,WAAkB,IAAIob,EAAIppB,KAAKqpB,EAAGD,EAAIE,MAAMD,GAAG,OAAOA,EAAG,OAAOD,EAAIG,GAAG,CAACC,YAAY,wCAAwCnZ,MAAM,CAAC,eAAe+Y,EAAIH,MAAM,aAAaG,EAAIH,MAAM,KAAO,OAAOtmB,GAAG,CAAC,MAAQ,SAAS8mB,GAAQ,OAAOL,EAAIM,MAAM,QAASD,EAAO,IAAI,OAAOL,EAAIO,QAAO,GAAO,CAACN,EAAG,MAAM,CAACG,YAAY,4BAA4BnZ,MAAM,CAAC,KAAO+Y,EAAIF,UAAU,MAAQE,EAAID,KAAK,OAASC,EAAID,KAAK,QAAU,cAAc,CAACE,EAAG,OAAO,CAAChZ,MAAM,CAAC,EAAI,gGAAgG+Y,EAAIQ,GAAG,KAAKP,EAAG,OAAO,CAAChZ,MAAM,CAAC,EAAI,8FAA8F+Y,EAAIQ,GAAG,KAAKP,EAAG,OAAO,CAAChZ,MAAM,CAAC,EAAI,gFAAgF+Y,EAAIQ,GAAG,KAAKP,EAAG,OAAO,CAAChZ,MAAM,CAAC,EAAI,gGAAgG+Y,EAAIQ,GAAG,KAAKP,EAAG,OAAO,CAAChZ,MAAM,CAAC,EAAI,kFAAkF+Y,EAAIQ,GAAG,KAAKP,EAAG,OAAO,CAAChZ,MAAM,CAAC,EAAI,4SACpjC,GACsB,IDSpB,EACA,KACA,KACA,MAI8B,QElBqO,ICetPojB,EAAAA,EAAAA,IAAgB,CAC3BzyB,KAAM,eACNwC,WAAY,CACRqwB,iBAAgBA,GAAAA,GAEpBzlB,KAAIA,KACO,CACH4jC,Q,sMAGR,aAAM/kB,GAAU,IAAAglB,QACN,KAAKr1B,YAEX,MAAMkB,EAAK,KAAKgR,IAAI7Q,cAAc,OAClCH,SAAgB,QAAdm0B,EAAFn0B,EAAIo0B,oBAAY,IAAAD,GAAhBA,EAAA/wC,KAAA4c,EAAmB,UAAW,cAClC,EACAwP,QAAS,CACLX,EAACA,GAAAA,M,eCrBL,GAAU,CAAC,EAEf,GAAQyB,kBAAoB,KAC5B,GAAQC,cAAgB,KAElB,GAAQC,OAAS,UAAc,KAAM,QAE3C,GAAQC,OAAS,KACjB,GAAQC,mBAAqB,KAEhB,KAAI,KAAS,IAKJ,MAAW,KAAQC,QAAS,KAAQA,OCP1D,UAXgB,QACd,IFTW,WAAkB,IAAIrF,EAAIppB,KAAKqpB,EAAGD,EAAIE,MAAMD,GAAgC,OAAtBD,EAAIE,MAAMsM,YAAmBvM,EAAG,mBAAmB,CAACG,YAAY,uBAAuBnZ,MAAM,CAAC,KAAO+Y,EAAIuD,EAAE,QAAS,YAAY,IAAMvD,EAAI4oB,UAC7M,GACsB,IEUpB,EACA,KACA,WACA,MAI8B,QCnByO,GjCmB1P1qB,EAAAA,GAAIld,OAAO,CACtBpJ,KAAM,mBACNwC,WAAY,CACR2uC,iBAAgB,KAChBC,gBAAe,GACfC,gBAAe,GACfC,aAAY,GACZC,SAAQ,GACRzL,WAAU,KACV0L,eAAc,GACdC,QAAO,GACPC,SAAQ,KACRC,YAAW,GACXC,QAAOA,IAEX9kC,MAAO,CACHwD,OAAQ,CACJvD,KAAMxO,OACN8V,UAAU,GAEd6yB,SAAU,CACNn6B,KAAMlF,QACNmF,SAAS,GAEbm6B,SAAU,CACNp6B,KAAMlF,QACNmF,SAAS,IAGjBsiB,MAAKA,KAEM,CACHf,gBAFoBD,OAK5BlhB,KAAIA,KACO,CACHykC,sBAAkBrwC,IAG1BypB,SAAU,CACNgL,MAAAA,GAAS,IAAAmY,EAAA0D,EACL,OAAkB,QAAlB1D,EAAO,KAAK99B,cAAM,IAAA89B,GAAQ,QAARA,EAAXA,EAAanY,cAAM,IAAAmY,GAAU,QAAV0D,EAAnB1D,EAAqB1pC,gBAAQ,IAAAotC,OAAA,EAA7BA,EAAA5xC,KAAAkuC,EACX,EACA2D,UAAAA,GACI,OAA2C,IAApC,KAAKzhC,OAAOisB,WAAWyV,QAClC,EACAhkB,UAAAA,GACI,OAAO,KAAKO,gBAAgBP,UAChC,EACAikB,YAAAA,GACI,OAA+C,IAAxC,KAAKjkB,WAAWE,mBAC3B,EACAgkB,UAAAA,GACI,GAAI,KAAK5hC,OAAOvD,OAASyrB,EAAAA,GAASC,OAC9B,OAAO,KAEX,IAA8B,IAA1B,KAAKoZ,iBACL,OAAO,KAEX,IAAI,IAAAM,EACA,MAAMD,EAAa,KAAK5hC,OAAOisB,WAAW2V,aACnCpqB,EAAAA,EAAAA,IAAY,gCAAiC,CAC5CmO,OAAQ,KAAKA,SAEfztB,EAAM,IAAIS,IAAIuO,OAAO9M,SAAS0nC,OAASF,GAE7C1pC,EAAI6pC,aAAanZ,IAAI,IAAK,KAAKiO,SAAW,MAAQ,MAClD3+B,EAAI6pC,aAAanZ,IAAI,IAAK,KAAKiO,SAAW,MAAQ,MAClD3+B,EAAI6pC,aAAanZ,IAAI,eAAgB,QAErC,MAAMoZ,GAAkB,QAAXH,EAAA,KAAK7hC,cAAM,IAAA6hC,GAAY,QAAZA,EAAXA,EAAa5V,kBAAU,IAAA4V,OAAA,EAAvBA,EAAyBG,OAAQ,GAI9C,OAHA9pC,EAAI6pC,aAAanZ,IAAI,IAAKoZ,EAAKnyC,MAAM,EAAG,IAExCqI,EAAI6pC,aAAanZ,IAAI,KAA2B,IAAtB,KAAK+Y,aAAwB,IAAM,KACtDzpC,EAAIwM,IACf,CACA,MAAOlK,GACH,OAAO,IACX,CACJ,EACAynC,WAAAA,GACI,YkCzFgD/wC,IlCyFhC,KAAK8O,OkCzFjBisB,WAAW,6BlC0FJiW,GAEJ,IACX,EACAC,aAAAA,GAAgB,IAAAC,EAAAC,EAAAC,EAAAC,EACZ,GAAI,KAAKviC,OAAOvD,OAASyrB,EAAAA,GAASC,OAC9B,OAAO,KAGX,GAAkD,KAAnC,QAAXia,EAAA,KAAKpiC,cAAM,IAAAoiC,GAAY,QAAZA,EAAXA,EAAanW,kBAAU,IAAAmW,OAAA,EAAvBA,EAA0B,iBAC1B,OAAOjB,GAGX,GAAe,QAAfkB,EAAI,KAAKriC,cAAM,IAAAqiC,GAAY,QAAZA,EAAXA,EAAapW,kBAAU,IAAAoW,GAAvBA,EAA0B,UAC1B,OAAOf,GAGX,MAAMkB,EAAav0C,OAAO84B,QAAkB,QAAXub,EAAA,KAAKtiC,cAAM,IAAAsiC,GAAY,QAAZA,EAAXA,EAAarW,kBAAU,IAAAqW,OAAA,EAAvBA,EAA0B,iBAAkB,CAAC,GAAGvrC,OACjF,GAAIyrC,EAAWtW,MAAKzvB,GAAQA,IAASgmC,GAAAA,EAAUC,iBAAmBjmC,IAASgmC,GAAAA,EAAUE,mBACjF,OAAOvB,GAAAA,EAGX,GAAIoB,EAAWpyC,OAAS,EACpB,OAAO0wC,GAEX,OAAmB,QAAnByB,EAAQ,KAAKviC,cAAM,IAAAuiC,GAAY,QAAZA,EAAXA,EAAatW,kBAAU,IAAAsW,OAAA,EAAvBA,EAA0B,eAC9B,IAAK,WACL,IAAK,mBACD,OAAOlB,GACX,IAAK,QACD,OAAOR,GAAAA,EACX,IAAK,aACD,OAAOE,GAEf,OAAO,IACX,GAEJ/kB,QAAS,CAELgN,KAAAA,GAEI,KAAKuY,sBAAmBrwC,EACpB,KAAK6kC,MAAMC,aACX,KAAKD,MAAMC,WAAW4M,IAAM,GAEpC,EACAC,iBAAAA,CAAkBh0C,GAAO,IAAAi0C,EAEK,MAAV,QAAZA,EAAAj0C,EAAMsW,cAAM,IAAA29B,OAAA,EAAZA,EAAcF,OAGlB,KAAKrB,kBAAmB,EAC5B,EACAlmB,EAACA,GAAAA,MmCzIT,IAXgB,QACd,InCRW,WAAkB,IAAIvD,EAAIppB,KAAKqpB,EAAGD,EAAIE,MAAMD,GAAgC,OAAtBD,EAAIE,MAAMsM,YAAmBvM,EAAG,OAAO,CAACG,YAAY,wBAAwB,CAAsB,WAApBJ,EAAI9X,OAAOvD,KAAmB,CAAEqb,EAAI8e,SAAU9e,EAAIirB,GAAG,GAAG,CAACjrB,EAAIirB,GAAG,GAAGjrB,EAAIQ,GAAG,KAAMR,EAAIqqB,cAAepqB,EAAGD,EAAIqqB,cAAc,CAACn+B,IAAI,cAAckU,YAAY,iCAAiCJ,EAAIU,OAAQV,EAAI8pB,aAAuC,IAAzB9pB,EAAIypB,iBAA2BxpB,EAAG,MAAM,CAAC1c,IAAI,aAAa6c,YAAY,+BAA+BzS,MAAM,CAAC,wCAAiE,IAAzBqS,EAAIypB,kBAA4BxiC,MAAM,CAAC,IAAM,GAAG,QAAU,OAAO,IAAM+Y,EAAI8pB,YAAYvwC,GAAG,CAAC,MAAQymB,EAAI+qB,kBAAkB,KAAO,SAAS1qB,GAAQL,EAAIypB,kBAAmB,CAAK,KAAKzpB,EAAIirB,GAAG,GAAGjrB,EAAIQ,GAAG,KAAMR,EAAI2pB,WAAY1pB,EAAG,OAAO,CAACG,YAAY,iCAAiC,CAACJ,EAAIirB,GAAG,IAAI,GAAGjrB,EAAIU,KAAKV,EAAIQ,GAAG,KAAMR,EAAImqB,YAAalqB,EAAGD,EAAImqB,YAAY,CAACj+B,IAAI,cAAckU,YAAY,oEAAoEJ,EAAIU,MAAM,EACl8B,GACsB,CAAC,WAAY,IAAaT,EAALrpB,KAAYspB,MAAMD,GAAgC,OAAlDrpB,KAAgCspB,MAAMsM,YAAmBvM,EAAG,iBACvG,EAAE,WAAY,IAAaA,EAALrpB,KAAYspB,MAAMD,GAAgC,OAAlDrpB,KAAgCspB,MAAMsM,YAAmBvM,EAAG,aAClF,EAAE,WAAY,IAAaA,EAALrpB,KAAYspB,MAAMD,GAAgC,OAAlDrpB,KAAgCspB,MAAMsM,YAAmBvM,EAAG,WAClF,EAAE,WAAY,IAAaA,EAALrpB,KAAYspB,MAAMD,GAAgC,OAAlDrpB,KAAgCspB,MAAMsM,YAAmBvM,EAAG,eAClF,ImCKE,EACA,KACA,KACA,MAI8B,QClByN,IrEgB1OoK,EAAAA,EAAAA,IAAgB,CAC3BzyB,KAAM,YACNwC,WAAY,CACRsoC,oBAAmB,GACnBwI,iBAAgB,GAChBC,kBAAiB,GACjBC,cAAa,GACbC,iBAAgB,GAChBC,WAAUA,GAAAA,GAEd5Q,OAAQ,CACJ6Q,IAEJ7mC,MAAO,CACH8mC,iBAAkB,CACd7mC,KAAMlF,QACNmF,SAAS,GAEb6mC,gBAAiB,CACb9mC,KAAMlF,QACNmF,SAAS,GAEb8mC,QAAS,CACL/mC,KAAMlF,QACNmF,SAAS,IAGjBsiB,KAAAA,GACI,MAAMkZ,EAAmBjD,KACnBvC,EAAgBhB,KAChBiB,EAAarM,KACb8O,EAAgBD,KAChBvC,EAAiBpK,MACjB,YAAErH,GAAgBL,KACxB,MAAO,CACHoX,mBACAxF,gBACAC,aACAyC,gBACAxC,iBACAzR,cAER,EACAxG,SAAU,CAKN8oB,YAAAA,GAOI,MAAO,IANc,KAAK7L,WACpB,CAAC,EACD,CACE8L,UAAW,KAAKpK,YAChB1C,SAAU,KAAK9C,YAInB6P,YAAa,KAAKrL,aAClBsL,UAAW,KAAKzK,YAChB0K,QAAS,KAAK5J,UACd6J,KAAM,KAAK7P,OAEnB,EACA8P,OAAAA,GAAU,IAAA7gB,EAEN,OAAI,KAAK0O,eAAiB,KAAO,KAAK4R,QAC3B,IAEY,QAAhBtgB,EAAA,KAAK/B,mBAAW,IAAA+B,OAAA,EAAhBA,EAAkB6gB,UAAW,EACxC,EACAlsB,IAAAA,GACI,MAAMA,EAAO,KAAK7X,OAAO6X,KACzB,OAAKA,GAAQA,EAAO,EACT,KAAKwD,EAAE,QAAS,YAEpBJ,EAAAA,EAAAA,IAAepD,GAAM,EAChC,EACAmsB,WAAAA,GACI,MACMnsB,EAAO,KAAK7X,OAAO6X,KACzB,IAAKA,GAAQhiB,MAAMgiB,IAASA,EAAO,EAC/B,MAAO,CAAC,EAEZ,MAAMosB,EAAQ9yB,KAAK+yB,MAAM/yB,KAAKmM,IAAI,IAAK,IAAMnM,KAAKgzB,IAAKtsB,EALhC,SAKwD,KAC/E,MAAO,CACHusB,MAAK,6CAAAr0C,OAA+Ck0C,EAAK,qCAEjE,EACAI,YAAAA,GAAe,IAAAC,EAAAC,EACX,MAAMC,EAAiB,QACjBC,EAAyB,QAApBH,EAAG,KAAKtkC,OAAOykC,aAAK,IAAAH,GAAS,QAATC,EAAjBD,EAAmBI,eAAO,IAAAH,OAAA,EAA1BA,EAAA30C,KAAA00C,GACd,IAAKG,EACD,MAAO,CAAC,EAGZ,MAAMR,EAAQ9yB,KAAK+yB,MAAM/yB,KAAKmM,IAAI,IAAK,KAAOknB,GAAkB56B,KAAKD,MAAQ86B,IAAUD,IACvF,OAAIP,EAAQ,EACD,CAAC,EAEL,CACHG,MAAK,6CAAAr0C,OAA+Ck0C,EAAK,qCAEjE,EACAU,UAAAA,GACI,OAAI,KAAK3kC,OAAOykC,OACLG,EAAAA,GAAAA,GAAO,KAAK5kC,OAAOykC,OAAOI,OAAO,OAErC,EACX,GAEJ7oB,QAAS,CACLf,eAAcA,EAAAA,MsE7GtB,IAXgB,QACd,ItERW,WAAkB,IAAInD,EAAIppB,KAAKqpB,EAAGD,EAAIE,MAAMD,GAAgC,OAAtBD,EAAIE,MAAMsM,YAAmBvM,EAAG,KAAKD,EAAIgtB,GAAG,CAAC5sB,YAAY,kBAAkBzS,MAAM,CAClJ,4BAA6BqS,EAAI8e,SACjC,2BAA4B9e,EAAIwf,UAChC,0BAA2Bxf,EAAIhS,UAC9B/G,MAAM,CAAC,yBAAyB,GAAG,gCAAgC+Y,EAAI6N,OAAO,8BAA8B7N,EAAI9X,OAAOirB,SAAS,UAAYnT,EAAIkgB,UAAUlgB,EAAI2rB,cAAc,CAAE3rB,EAAIggB,eAAgB/f,EAAG,OAAO,CAACG,YAAY,4BAA4BJ,EAAIU,KAAKV,EAAIQ,GAAG,KAAKP,EAAG,oBAAoB,CAAChZ,MAAM,CAAC,OAAS+Y,EAAI6N,OAAO,aAAa7N,EAAIwf,UAAU,MAAQxf,EAAIkN,MAAM,OAASlN,EAAI9X,UAAU8X,EAAIQ,GAAG,KAAKP,EAAG,KAAK,CAACG,YAAY,uBAAuBnZ,MAAM,CAAC,8BAA8B,KAAK,CAACgZ,EAAG,mBAAmB,CAAC1c,IAAI,UAAU0D,MAAM,CAAC,OAAS+Y,EAAI9X,OAAO,SAAW8X,EAAI8e,UAAU/B,SAAS,CAAC,SAAW,SAAS1c,GAAQ,OAAOL,EAAIihB,kBAAkB5nC,MAAM,KAAMH,UAAU,EAAE,MAAQ,SAASmnB,GAAQ,OAAOL,EAAIihB,kBAAkB5nC,MAAM,KAAMH,UAAU,KAAK8mB,EAAIQ,GAAG,KAAKP,EAAG,gBAAgB,CAAC1c,IAAI,OAAO0D,MAAM,CAAC,eAAe+Y,EAAI8M,YAAY,UAAY9M,EAAIyf,UAAU,mBAAmBzf,EAAI8Z,eAAe,MAAQ9Z,EAAIkN,MAAM,OAASlN,EAAI9X,QAAQ60B,SAAS,CAAC,SAAW,SAAS1c,GAAQ,OAAOL,EAAIihB,kBAAkB5nC,MAAM,KAAMH,UAAU,EAAE,MAAQ,SAASmnB,GAAQ,OAAOL,EAAIihB,kBAAkB5nC,MAAM,KAAMH,UAAU,MAAM,GAAG8mB,EAAIQ,GAAG,KAAKP,EAAG,mBAAmB,CAACuoB,WAAW,CAAC,CAAC5wC,KAAK,OAAO6wC,QAAQ,SAASzsC,OAAQgkB,EAAI+f,sBAAuB2I,WAAW,2BAA2BnlC,IAAI,UAAUoK,MAAK,2BAAA1V,OAA4B+nB,EAAIsf,UAAWr4B,MAAM,CAAC,mBAAmB+Y,EAAI8Z,eAAe,QAAU9Z,EAAI6e,QAAQ,OAAS7e,EAAImgB,WAAW,OAASngB,EAAI9X,QAAQ3O,GAAG,CAAC,iBAAiB,SAAS8mB,GAAQL,EAAI6e,QAAQxe,CAAM,EAAE,gBAAgB,SAASA,GAAQL,EAAImgB,WAAW9f,CAAM,KAAKL,EAAIQ,GAAG,MAAOR,EAAI0rB,SAAW1rB,EAAIyrB,gBAAiBxrB,EAAG,KAAK,CAACG,YAAY,uBAAuBhL,MAAO4K,EAAIksB,YAAajlC,MAAM,CAAC,8BAA8B,IAAI1N,GAAG,CAAC,MAAQymB,EAAIkhB,yBAAyB,CAACjhB,EAAG,OAAO,CAACD,EAAIQ,GAAGR,EAAIS,GAAGT,EAAID,WAAWC,EAAIU,KAAKV,EAAIQ,GAAG,MAAOR,EAAI0rB,SAAW1rB,EAAIwrB,iBAAkBvrB,EAAG,KAAK,CAACG,YAAY,wBAAwBhL,MAAO4K,EAAIusB,aAActlC,MAAM,CAAC,+BAA+B,IAAI1N,GAAG,CAAC,MAAQymB,EAAIkhB,yBAAyB,CAAElhB,EAAI9X,OAAOykC,MAAO1sB,EAAG,aAAa,CAAChZ,MAAM,CAAC,UAAY+Y,EAAI9X,OAAOykC,MAAM,kBAAiB,KAAQ3sB,EAAIU,MAAM,GAAGV,EAAIU,KAAKV,EAAIQ,GAAG,KAAKR,EAAI4I,GAAI5I,EAAIisB,SAAS,SAASgB,GAAO,IAAAC,EAAC,OAAOjtB,EAAG,KAAK,CAACzkB,IAAIyxC,EAAO5hB,GAAGjL,YAAY,gCAAgCzS,MAAK,mBAAA1V,OAAmC,QAAnCi1C,EAAoBltB,EAAIqJ,mBAAW,IAAA6jB,OAAA,EAAfA,EAAiB7hB,GAAE,KAAApzB,OAAIg1C,EAAO5hB,IAAKpkB,MAAM,CAAC,uCAAuCgmC,EAAO5hB,IAAI9xB,GAAG,CAAC,MAAQymB,EAAIkhB,yBAAyB,CAACjhB,EAAG,sBAAsB,CAAChZ,MAAM,CAAC,eAAe+Y,EAAIqJ,YAAY,OAAS4jB,EAAOpoC,OAAO,OAASmb,EAAI9X,WAAW,EAAE,KAAI,EAC39E,GACsB,IsEKpB,EACA,KACA,KACA,MAI8B,QClB6N,ICY9OmiB,EAAAA,EAAAA,IAAgB,CAC3BzyB,KAAM,gBACNwC,WAAY,CACR8wC,iBAAgB,GAChBC,kBAAiB,GACjBC,cAAa,GACbC,iBAAgBA,IAEpB3Q,OAAQ,CACJ6Q,IAEJ4B,cAAc,EACdjmB,KAAAA,GACI,MAAMkZ,EAAmBjD,KACnBvC,EAAgBhB,KAChBiB,EAAarM,KACb8O,EAAgBD,KAChBvC,EAAiBpK,MACjB,YAAErH,GAAgBL,KACxB,MAAO,CACHoX,mBACAxF,gBACAC,aACAyC,gBACAxC,iBACAzR,cAER,EACArkB,KAAIA,KACO,CACH+5B,UAAU,MCxBtB,IAXgB,QACd,IDRW,WAAkB,IAAI/e,EAAIppB,KAAKqpB,EAAGD,EAAIE,MAAMD,GAAgC,OAAtBD,EAAIE,MAAMsM,YAAmBvM,EAAG,KAAK,CAACG,YAAY,kBAAkBzS,MAAM,CAAC,0BAA2BqS,EAAIhS,SAAU,4BAA6BgS,EAAI8e,SAAU,2BAA4B9e,EAAIwf,WAAWv4B,MAAM,CAAC,yBAAyB,GAAG,gCAAgC+Y,EAAI6N,OAAO,8BAA8B7N,EAAI9X,OAAOirB,SAAS,UAAYnT,EAAIkgB,SAAS3mC,GAAG,CAAC,YAAcymB,EAAIwgB,aAAa,SAAWxgB,EAAIgc,WAAW,UAAYhc,EAAIqhB,YAAY,UAAYrhB,EAAIwhB,YAAY,QAAUxhB,EAAImiB,UAAU,KAAOniB,EAAImc,SAAS,CAAEnc,EAAIggB,eAAgB/f,EAAG,OAAO,CAACG,YAAY,4BAA4BJ,EAAIU,KAAKV,EAAIQ,GAAG,KAAKP,EAAG,oBAAoB,CAAChZ,MAAM,CAAC,OAAS+Y,EAAI6N,OAAO,aAAa7N,EAAIwf,UAAU,MAAQxf,EAAIkN,MAAM,OAASlN,EAAI9X,UAAU8X,EAAIQ,GAAG,KAAKP,EAAG,KAAK,CAACG,YAAY,uBAAuBnZ,MAAM,CAAC,8BAA8B,KAAK,CAACgZ,EAAG,mBAAmB,CAAC1c,IAAI,UAAU0D,MAAM,CAAC,SAAW+Y,EAAI8e,SAAS,aAAY,EAAK,OAAS9e,EAAI9X,QAAQ60B,SAAS,CAAC,SAAW,SAAS1c,GAAQ,OAAOL,EAAIihB,kBAAkB5nC,MAAM,KAAMH,UAAU,EAAE,MAAQ,SAASmnB,GAAQ,OAAOL,EAAIihB,kBAAkB5nC,MAAM,KAAMH,UAAU,KAAK8mB,EAAIQ,GAAG,KAAKP,EAAG,gBAAgB,CAAC1c,IAAI,OAAO0D,MAAM,CAAC,eAAe+Y,EAAI8M,YAAY,UAAY9M,EAAIyf,UAAU,mBAAmBzf,EAAI8Z,eAAe,aAAY,EAAK,MAAQ9Z,EAAIkN,MAAM,OAASlN,EAAI9X,QAAQ60B,SAAS,CAAC,SAAW,SAAS1c,GAAQ,OAAOL,EAAIihB,kBAAkB5nC,MAAM,KAAMH,UAAU,EAAE,MAAQ,SAASmnB,GAAQ,OAAOL,EAAIihB,kBAAkB5nC,MAAM,KAAMH,UAAU,MAAM,GAAG8mB,EAAIQ,GAAG,KAAKP,EAAG,mBAAmB,CAAC1c,IAAI,UAAUoK,MAAK,2BAAA1V,OAA4B+nB,EAAIsf,UAAWr4B,MAAM,CAAC,mBAAmB+Y,EAAI8Z,eAAe,aAAY,EAAK,QAAU9Z,EAAI6e,QAAQ,OAAS7e,EAAImgB,WAAW,OAASngB,EAAI9X,QAAQ3O,GAAG,CAAC,iBAAiB,SAAS8mB,GAAQL,EAAI6e,QAAQxe,CAAM,EAAE,gBAAgB,SAASA,GAAQL,EAAImgB,WAAW9f,CAAM,MAAM,EACt2D,GACsB,ICSpB,EACA,KACA,KACA,MAI8B,QClBhC,I,YAMA,MCN+P,GDM/P,CACIzoB,KAAM,kBACN8M,MAAO,CACH0oC,OAAQ,CACJzoC,KAAMxO,OACN8V,UAAU,GAEdohC,cAAe,CACX1oC,KAAMxO,OACN8V,UAAU,GAEdod,YAAa,CACT1kB,KAAMxO,OACN8V,UAAU,IAGlB4W,SAAU,CACNoK,OAAAA,GACI,OAAO,KAAKmgB,OAAOngB,QAAQ,KAAKogB,cAAe,KAAKhkB,YACxD,GAEJ4B,MAAO,CACHgC,OAAAA,CAAQA,GACCA,GAGL,KAAKmgB,OAAO9zB,QAAQ,KAAK+zB,cAAe,KAAKhkB,YACjD,EACAgkB,aAAAA,GACI,KAAKD,OAAO9zB,QAAQ,KAAK+zB,cAAe,KAAKhkB,YACjD,GAEJxF,OAAAA,GACI5K,GAAQuS,MAAM,UAAW,KAAK4hB,OAAO/hB,IACrC,KAAK+hB,OAAOvoC,OAAO,KAAKo5B,MAAMqP,MAAO,KAAKD,cAAe,KAAKhkB,YAClE,GEvBJ,IAXgB,QACd,IFRW,WAAkB,IAAIrJ,EAAIppB,KAAKqpB,EAAGD,EAAIE,MAAMD,GAAG,OAAOA,EAAG,MAAM,CAACuoB,WAAW,CAAC,CAAC5wC,KAAK,OAAO6wC,QAAQ,SAASzsC,MAAOgkB,EAAIiN,QAASyb,WAAW,YAAY/6B,MAAK,sBAAA1V,OAAuB+nB,EAAIotB,OAAO/hB,KAAM,CAACpL,EAAG,OAAO,CAAC1c,IAAI,WAC/N,GACsB,IESpB,EACA,KACA,KACA,MAI8B,QClBoO,ICKrP8mB,EAAAA,EAAAA,IAAgB,CAC3BzyB,KAAM,uBACN8M,MAAO,CACH2kB,YAAa,CACT1kB,KAAMH,EAAAA,GACNyH,UAAU,GAEdu/B,iBAAkB,CACd7mC,KAAMlF,QACNmF,SAAS,GAEb6mC,gBAAiB,CACb9mC,KAAMlF,QACNmF,SAAS,GAEbsoB,MAAO,CACHvoB,KAAMnM,MACNyT,UAAU,GAEd4xB,QAAS,CACLl5B,KAAMnD,OACNoD,QAAS,IAEbk1B,eAAgB,CACZn1B,KAAMlH,OACNmH,QAAS,IAGjBsiB,KAAAA,GACI,MAAM4I,EAAaD,KAEnB,MAAO,CACHgL,WAFerM,KAGfsB,aAER,EACAjN,SAAU,CACNwJ,GAAAA,GAAM,IAAAxB,EAEF,QAAmB,QAAXA,EAAA,KAAKzlB,cAAM,IAAAylB,GAAO,QAAPA,EAAXA,EAAavsB,aAAK,IAAAusB,OAAA,EAAlBA,EAAoBwB,MAAO,KAAKlvB,QAAQ,WAAY,KAChE,EACAkwC,aAAAA,GAAgB,IAAAjiB,EACZ,GAAqB,QAAjBA,EAAC,KAAK/B,mBAAW,IAAA+B,IAAhBA,EAAkBC,GACnB,OAEJ,GAAiB,MAAb,KAAKgB,IACL,OAAO,KAAKwO,WAAW3L,QAAQ,KAAK7F,YAAYgC,IAEpD,MAAM2D,EAAS,KAAKc,WAAWE,QAAQ,KAAK3G,YAAYgC,GAAI,KAAKgB,KACjE,OAAO,KAAKwO,WAAWjM,QAAQI,EACnC,EACAid,OAAAA,GAAU,IAAA3P,EAEN,OAAI,KAAKxC,eAAiB,IACf,IAEY,QAAhBwC,EAAA,KAAKjT,mBAAW,IAAAiT,OAAA,EAAhBA,EAAkB2P,UAAW,EACxC,EACAnO,SAAAA,GAAY,IAAAyP,EAER,OAAsB,QAAtBA,EAAI,KAAKF,qBAAa,IAAAE,GAAlBA,EAAoBxtB,MACboD,EAAAA,EAAAA,IAAe,KAAKkqB,cAActtB,MAAM,IAG5CoD,EAAAA,EAAAA,IAAe,KAAK+J,MAAM1tB,QAAO,CAACu+B,EAAOrQ,KAAI,IAAA8f,EAAA,OAAKzP,GAAkB,QAAbyP,EAAI9f,EAAK3N,YAAI,IAAAytB,EAAAA,EAAI,EAAE,GAAE,IAAI,EAC3F,GAEJtpB,QAAS,CACLupB,cAAAA,CAAeR,GACX,MAAO,CACH,iCAAiC,EACjC,oBAAAh1C,OAAoB,KAAKoxB,YAAYgC,GAAE,KAAApzB,OAAIg1C,EAAO5hB,MAAO,EAEjE,EACA9H,EAAGwB,GAAAA,M,eCpEP,GAAU,CAAC,EAEf,GAAQC,kBAAoB,KAC5B,GAAQC,cAAgB,KAElB,GAAQC,OAAS,UAAc,KAAM,QAE3C,GAAQC,OAAS,KACjB,GAAQC,mBAAqB,KAEhB,KAAI,KAAS,IAKJ,MAAW,KAAQC,QAAS,KAAQA,OCP1D,UAXgB,QACd,IFTW,WAAkB,IAAIrF,EAAIppB,KAAKqpB,EAAGD,EAAIE,MAAMD,GAAgC,OAAtBD,EAAIE,MAAMsM,YAAmBvM,EAAG,KAAK,CAACA,EAAG,KAAK,CAACG,YAAY,4BAA4B,CAACH,EAAG,OAAO,CAACG,YAAY,mBAAmB,CAACJ,EAAIQ,GAAGR,EAAIS,GAAGT,EAAIuD,EAAE,QAAS,4BAA4BvD,EAAIQ,GAAG,KAAKP,EAAG,KAAK,CAACG,YAAY,wBAAwB,CAACH,EAAG,OAAO,CAACG,YAAY,yBAAyBJ,EAAIQ,GAAG,KAAKP,EAAG,OAAO,CAACD,EAAIQ,GAAGR,EAAIS,GAAGT,EAAI6d,cAAc7d,EAAIQ,GAAG,KAAKP,EAAG,KAAK,CAACG,YAAY,4BAA4BJ,EAAIQ,GAAG,KAAMR,EAAIyrB,gBAAiBxrB,EAAG,KAAK,CAACG,YAAY,2CAA2C,CAACH,EAAG,OAAO,CAACD,EAAIQ,GAAGR,EAAIS,GAAGT,EAAI8d,gBAAgB9d,EAAIU,KAAKV,EAAIQ,GAAG,KAAMR,EAAIwrB,iBAAkBvrB,EAAG,KAAK,CAACG,YAAY,6CAA6CJ,EAAIU,KAAKV,EAAIQ,GAAG,KAAKR,EAAI4I,GAAI5I,EAAIisB,SAAS,SAASgB,GAAO,IAAAS,EAAC,OAAOztB,EAAG,KAAK,CAACzkB,IAAIyxC,EAAO5hB,GAAG1d,MAAMqS,EAAIytB,eAAeR,IAAS,CAAChtB,EAAG,OAAO,CAACD,EAAIQ,GAAGR,EAAIS,GAAiB,QAAfitB,EAACT,EAAOpP,eAAO,IAAA6P,OAAA,EAAdA,EAAA51C,KAAAm1C,EAAiBjtB,EAAIkN,MAAOlN,EAAIqJ,kBAAkB,KAAI,EACt6B,GACsB,IEUpB,EACA,KACA,WACA,MAI8B,QCnBhC,I,uBCQA,SAAenL,EAAAA,GAAIld,OAAO,CACtB6hB,SAAU,KACH8qB,EAAAA,EAAAA,IAAS9jB,GAAoB,CAAC,YAAa,eAAgB,2BAC9DR,WAAAA,GACI,OAAOzyB,KAAKk1B,YAAYxC,MAC5B,EAIAskB,WAAAA,GAAc,IAAAC,EAAAziB,EACV,OAA0C,QAAnCyiB,EAAAj3C,KAAKmzB,UAAUnzB,KAAKyyB,YAAYgC,WAAG,IAAAwiB,OAAA,EAAnCA,EAAqCC,gBACrB,QADiC1iB,EACjDx0B,KAAKyyB,mBAAW,IAAA+B,OAAA,EAAhBA,EAAkB2iB,iBAClB,UACX,EAIAC,YAAAA,GAAe,IAAAC,EAEX,MAA4B,UADgC,QAAtCA,EAAGr3C,KAAKmzB,UAAUnzB,KAAKyyB,YAAYgC,WAAG,IAAA4iB,OAAA,EAAnCA,EAAqC9jB,kBAElE,GAEJjG,QAAS,CACLgqB,YAAAA,CAAa1yC,GAEL5E,KAAKg3C,cAAgBpyC,EAKzB5E,KAAKozB,aAAaxuB,EAAK5E,KAAKyyB,YAAYgC,IAJpCz0B,KAAKqzB,uBAAuBrzB,KAAKyyB,YAAYgC,GAKrD,KCvCkQ,ICM3PhB,EAAAA,EAAAA,IAAgB,CAC3BzyB,KAAM,6BACNwC,WAAY,CACR+zC,SAAQ,KACRC,OAAM,KACNC,SAAQA,GAAAA,GAEZ3T,OAAQ,CACJ4T,IAEJ5pC,MAAO,CACH9M,KAAM,CACF+M,KAAMnD,OACNyK,UAAU,GAEd2Q,KAAM,CACFjY,KAAMnD,OACNyK,UAAU,IAGlBiY,QAAS,CACLX,EAAGwB,GAAAA,M,cChBP,GAAU,CAAC,EAEf,GAAQC,kBAAoB,KAC5B,GAAQC,cAAgB,KAElB,GAAQC,OAAS,UAAc,KAAM,QAE3C,GAAQC,OAAS,KACjB,GAAQC,mBAAqB,KAEhB,KAAI,KAAS,IAKJ,MAAW,KAAQC,QAAS,KAAQA,OCP1D,UAXgB,QACd,IFTW,WAAkB,IAAIrF,EAAIppB,KAAKqpB,EAAGD,EAAIE,MAAMD,GAAgC,OAAtBD,EAAIE,MAAMsM,YAAmBvM,EAAG,WAAW,CAACtS,MAAM,CAAC,iCAAkC,CACtJ,yCAA0CqS,EAAI4tB,cAAgB5tB,EAAIpD,KAClE,uCAA4D,SAApBoD,EAAI4tB,cAC1C3mC,MAAM,CAAC,UAAyB,SAAb+Y,EAAIpD,KAAkB,MAAQ,gBAAgB,KAAO,YAAYrjB,GAAG,CAAC,MAAQ,SAAS8mB,GAAQ,OAAOL,EAAIkuB,aAAaluB,EAAIpD,KAAK,GAAGiM,YAAY7I,EAAI8I,GAAG,CAAC,CAACttB,IAAI,OAAO/E,GAAG,WAAW,MAAO,CAAEupB,EAAI4tB,cAAgB5tB,EAAIpD,MAAQoD,EAAIguB,aAAc/tB,EAAG,SAAS,CAACG,YAAY,wCAAwCH,EAAG,WAAW,CAACG,YAAY,wCAAwC,EAAE2I,OAAM,MAAS,CAAC/I,EAAIQ,GAAG,KAAKP,EAAG,OAAO,CAACG,YAAY,uCAAuC,CAACJ,EAAIQ,GAAGR,EAAIS,GAAGT,EAAIpoB,UACrf,GACsB,IEOpB,EACA,KACA,WACA,MAI8B,QCnBoO,INSrPyyB,EAAAA,EAAAA,IAAgB,CAC3BzyB,KAAM,uBACNwC,WAAY,CACRm0C,2BAA0B,GAC1BznB,sBAAqBA,GAAAA,GAEzB4T,OAAQ,CACJ4T,IAEJ5pC,MAAO,CACH8mC,iBAAkB,CACd7mC,KAAMlF,QACNmF,SAAS,GAEb6mC,gBAAiB,CACb9mC,KAAMlF,QACNmF,SAAS,GAEbsoB,MAAO,CACHvoB,KAAMnM,MACNyT,UAAU,GAEd6tB,eAAgB,CACZn1B,KAAMlH,OACNmH,QAAS,IAGjBsiB,KAAAA,GACI,MAAM2T,EAAarM,KACbsM,EAAiBpK,MACjB,YAAErH,GAAgBL,KACxB,MAAO,CACH6R,aACAC,iBACAzR,cAER,EACAxG,SAAU,CACNopB,OAAAA,GAAU,IAAA7gB,EAEN,OAAI,KAAK0O,eAAiB,IACf,IAEY,QAAhB1O,EAAA,KAAK/B,mBAAW,IAAA+B,OAAA,EAAhBA,EAAkB6gB,UAAW,EACxC,EACA5f,GAAAA,GAAM,IAAAxB,EAEF,QAAmB,QAAXA,EAAA,KAAKzlB,cAAM,IAAAylB,GAAO,QAAPA,EAAXA,EAAavsB,aAAK,IAAAusB,OAAA,EAAlBA,EAAoBwB,MAAO,KAAKlvB,QAAQ,WAAY,KAChE,EACAqxC,aAAAA,GACI,MAAM9W,GAAQnU,EAAAA,GAAAA,IAAE,QAAS,8CACzB,MAAO,CACH,aAAcmU,EACd+W,QAAS,KAAKC,cACdC,cAAe,KAAKC,eACpB/uB,MAAO6X,EAEf,EACAmX,aAAAA,GACI,OAAO,KAAK/T,eAAenK,QAC/B,EACA+d,aAAAA,GACI,OAAO,KAAKG,cAAcv2C,SAAW,KAAK40B,MAAM50B,MACpD,EACAw2C,cAAAA,GACI,OAAqC,IAA9B,KAAKD,cAAcv2C,MAC9B,EACAs2C,cAAAA,GACI,OAAQ,KAAKF,gBAAkB,KAAKI,cACxC,GAEJ5qB,QAAS,CACL6qB,eAAAA,CAAgBnyB,GACZ,OAAI,KAAKgxB,cAAgBhxB,EACd,KAAKoxB,aAAe,YAAc,aAEtC,IACX,EACAP,cAAAA,CAAeR,GAAQ,IAAA3Q,EACnB,MAAO,CACH,sBAAsB,EACtB,iCAAkC2Q,EAAO3vC,KACzC,iCAAiC,EACjC,oBAAArF,OAAoC,QAApCqkC,EAAoB,KAAKjT,mBAAW,IAAAiT,OAAA,EAAhBA,EAAkBjR,GAAE,KAAApzB,OAAIg1C,EAAO5hB,MAAO,EAElE,EACA2jB,WAAAA,CAAYre,GACR,GAAIA,EAAU,CACV,MAAMI,EAAY,KAAK7D,MAAMxvB,KAAIgwB,GAAQA,EAAKxlB,SAAQhI,OAAOT,SAC7DolB,GAAO2G,MAAM,+BAAgC,CAAEuF,cAC/C,KAAK+J,eAAe7J,aAAa,MACjC,KAAK6J,eAAehK,IAAIC,EAC5B,MAEIlM,GAAO2G,MAAM,qBACb,KAAKsP,eAAe5J,OAE5B,EACAsU,cAAAA,GACI,KAAK1K,eAAe5J,OACxB,EACA3N,EAACA,GAAAA,M,gBOnGL,GAAU,CAAC,EAEf,GAAQyB,kBAAoB,KAC5B,GAAQC,cAAgB,KAElB,GAAQC,OAAS,UAAc,KAAM,QAE3C,GAAQC,OAAS,KACjB,GAAQC,mBAAqB,KAEhB,KAAI,KAAS,IAKJ,MAAW,KAAQC,QAAS,KAAQA,OCP1D,UAXgB,QACd,IRTW,WAAkB,IAAIrF,EAAIppB,KAAKqpB,EAAGD,EAAIE,MAAMD,GAAgC,OAAtBD,EAAIE,MAAMsM,YAAmBvM,EAAG,KAAK,CAACG,YAAY,wBAAwB,CAACH,EAAG,KAAK,CAACG,YAAY,8CAA8C7mB,GAAG,CAAC,MAAQ,SAAS8mB,GAAQ,OAAIA,EAAO1b,KAAKzJ,QAAQ,QAAQ8kB,EAAIylB,GAAGplB,EAAOqlB,QAAQ,MAAM,GAAGrlB,EAAO7kB,IAAI,CAAC,MAAM,YAA0B6kB,EAAO1R,SAAS0R,EAAOzR,UAAUyR,EAAO3R,QAAQ2R,EAAO5R,QAA/D,KAA0FuR,EAAIwlB,eAAensC,MAAM,KAAMH,UAAU,IAAI,CAAC+mB,EAAG,wBAAwBD,EAAIG,GAAG,CAAC5mB,GAAG,CAAC,iBAAiBymB,EAAIgvB,cAAc,wBAAwBhvB,EAAIwuB,eAAc,KAAS,GAAGxuB,EAAIQ,GAAG,KAAKP,EAAG,KAAK,CAACG,YAAY,uEAAuEnZ,MAAM,CAAC,YAAY+Y,EAAI+uB,gBAAgB,cAAc,CAAC9uB,EAAG,OAAO,CAACG,YAAY,yBAAyBJ,EAAIQ,GAAG,KAAKP,EAAG,6BAA6B,CAAChZ,MAAM,CAAC,KAAO+Y,EAAIuD,EAAE,QAAS,QAAQ,KAAO,eAAe,GAAGvD,EAAIQ,GAAG,KAAKP,EAAG,KAAK,CAACG,YAAY,4BAA4BJ,EAAIQ,GAAG,KAAMR,EAAIyrB,gBAAiBxrB,EAAG,KAAK,CAACG,YAAY,0CAA0CzS,MAAM,CAAE,+BAAgCqS,EAAIyrB,iBAAkBxkC,MAAM,CAAC,YAAY+Y,EAAI+uB,gBAAgB,UAAU,CAAC9uB,EAAG,6BAA6B,CAAChZ,MAAM,CAAC,KAAO+Y,EAAIuD,EAAE,QAAS,QAAQ,KAAO,WAAW,GAAGvD,EAAIU,KAAKV,EAAIQ,GAAG,KAAMR,EAAIwrB,iBAAkBvrB,EAAG,KAAK,CAACG,YAAY,2CAA2CzS,MAAM,CAAE,+BAAgCqS,EAAIwrB,kBAAmBvkC,MAAM,CAAC,YAAY+Y,EAAI+uB,gBAAgB,WAAW,CAAC9uB,EAAG,6BAA6B,CAAChZ,MAAM,CAAC,KAAO+Y,EAAIuD,EAAE,QAAS,YAAY,KAAO,YAAY,GAAGvD,EAAIU,KAAKV,EAAIQ,GAAG,KAAKR,EAAI4I,GAAI5I,EAAIisB,SAAS,SAASgB,GAAQ,OAAOhtB,EAAG,KAAK,CAACzkB,IAAIyxC,EAAO5hB,GAAG1d,MAAMqS,EAAIytB,eAAeR,GAAQhmC,MAAM,CAAC,YAAY+Y,EAAI+uB,gBAAgB9B,EAAO5hB,MAAM,CAAI4hB,EAAO3vC,KAAM2iB,EAAG,6BAA6B,CAAChZ,MAAM,CAAC,KAAOgmC,EAAOptB,MAAM,KAAOotB,EAAO5hB,MAAMpL,EAAG,OAAO,CAACD,EAAIQ,GAAG,WAAWR,EAAIS,GAAGwsB,EAAOptB,OAAO,aAAa,EAAE,KAAI,EAC74D,GACsB,IQUpB,EACA,KACA,WACA,MAI8B,QCnBhC,I,mCAIA,MCJ2P,GDI5O3B,EAAAA,GAAIld,OAAO,CACtBpJ,KAAM,cACN8iC,OAAQ,CAACC,IACTj2B,MAAO,CACHuqC,cAAe,CACXtqC,KAAM,CAACxO,OAAQsvB,UACfxZ,UAAU,GAEdijC,QAAS,CACLvqC,KAAMnD,OACNyK,UAAU,GAEdkjC,YAAa,CACTxqC,KAAMnM,MACNyT,UAAU,GAEdmjC,WAAY,CACRzqC,KAAMxO,OACNyO,QAASA,KAAA,CAAS,IAEtByqC,cAAe,CACX1qC,KAAMlH,OACNmH,QAAS,GAEbm6B,SAAU,CACNp6B,KAAMlF,QACNmF,SAAS,GAKb0qC,QAAS,CACL3qC,KAAMnD,OACNoD,QAAS,KAGjBI,IAAAA,GACI,MAAO,CACHlF,MAAO,KAAKuvC,cACZE,aAAc,EACdC,aAAc,EACdC,YAAa,EACbC,eAAgB,KAExB,EACA7sB,SAAU,CAEN8sB,OAAAA,GACI,OAAO,KAAKF,YAAc,CAC9B,EAEAG,WAAAA,GACI,OAAI,KAAK7Q,SACE,KAAK8Q,YAET,CACX,EACAC,UAAAA,GAGI,OAAO,KAAK/Q,SAAY,IAAiB,EAC7C,EAEAgR,UAASA,IAEE,IAEXC,QAAAA,GACI,OAAO32B,KAAK42B,MAAM,KAAKR,YAAc,KAAKD,cAAgB,KAAKM,YAAe,KAAKF,YAAc,KAAKC,YAAe,EAAI,CAC7H,EACAA,WAAAA,GACI,OAAK,KAAK9Q,SAGH1lB,KAAK62B,MAAM,KAAKpW,eAAiB,KAAKiW,WAFlC,CAGf,EAIAI,UAAAA,GACI,OAAO92B,KAAKD,IAAI,EAAG,KAAKtZ,MAAQ,KAAK8vC,YACzC,EAKAQ,UAAAA,GAEI,OAAI,KAAKrR,SACE,KAAKiR,SAAW,KAAKH,YAEzB,KAAKG,QAChB,EACAK,aAAAA,GACI,IAAK,KAAKV,QACN,MAAO,GAEX,MAAMvX,EAAQ,KAAK+W,YAAYp3C,MAAM,KAAKo4C,WAAY,KAAKA,WAAa,KAAKC,YAEvEE,EADWlY,EAAMl4B,QAAOpB,GAAQ3I,OAAO84B,OAAO,KAAKshB,gBAAgB5xC,SAASG,EAAK,KAAKowC,YAC9DxxC,KAAIoB,GAAQA,EAAK,KAAKowC,WAC9CsB,EAAar6C,OAAO+G,KAAK,KAAKqzC,gBAAgBrwC,QAAO1E,IAAQ80C,EAAa3xC,SAAS,KAAK4xC,eAAe/0C,MAC7G,OAAO48B,EAAM16B,KAAIoB,IACb,MAAMgB,EAAQ3J,OAAO84B,OAAO,KAAKshB,gBAAgBr1C,QAAQ4D,EAAK,KAAKowC,UAEnE,IAAe,IAAXpvC,EACA,MAAO,CACHtE,IAAKrF,OAAO+G,KAAK,KAAKqzC,gBAAgBzwC,GACtChB,QAIR,MAAMtD,EAAMg1C,EAAW/oC,OAAS4R,KAAKo3B,SAASn0C,SAAS,IAAIwN,OAAO,GAElE,OADA,KAAKymC,eAAe/0C,GAAOsD,EAAK,KAAKowC,SAC9B,CAAE1zC,MAAKsD,OAAM,GAE5B,EAIA4xC,aAAAA,GACI,OAAOr3B,KAAK62B,MAAM,KAAKf,YAAY72C,OAAS,KAAKu3C,YACrD,EACAc,UAAAA,GACI,MAAMC,EAAiB,KAAKT,WAAa,KAAKH,SAAW,KAAKb,YAAY72C,OACpEu4C,EAAY,KAAK1B,YAAY72C,OAAS,KAAK63C,WAAa,KAAKC,WAC7DU,EAAmBz3B,KAAK62B,MAAM72B,KAAKmM,IAAI,KAAK2pB,YAAY72C,OAAS,KAAK63C,WAAYU,GAAa,KAAKhB,aAC1G,MAAO,CACHkB,WAAU,GAAA94C,OAAKohB,KAAK62B,MAAM,KAAKC,WAAa,KAAKN,aAAe,KAAKC,WAAU,MAC/EkB,cAAeJ,EAAiB,EAAC,GAAA34C,OAAM64C,EAAmB,KAAKhB,WAAU,MACzEmB,UAAS,GAAAh5C,OAAK,KAAKy4C,cAAgB,KAAKZ,WAAa,KAAKP,aAAY,MAE9E,GAEJtkB,MAAO,CACHokB,aAAAA,CAAcvvC,GACV,KAAKuV,SAASvV,EAClB,EACA4wC,aAAAA,GACQ,KAAKrB,eACL,KAAK77B,WAAU,IAAM,KAAK6B,SAAS,KAAKg6B,gBAEhD,EACAQ,WAAAA,CAAYA,EAAaqB,GACE,IAAnBA,EAQJ,KAAK77B,SAAS,KAAKvV,OALfmZ,GAAQuS,MAAM,iDAMtB,GAEJ3H,OAAAA,GAAU,IAAAyc,EAAA6Q,EACN,MAAMC,EAAmB,QAAb9Q,EAAG,KAAKrC,aAAK,IAAAqC,OAAA,EAAVA,EAAY8Q,OACrB/jB,EAAO,KAAK3H,IACZ2rB,EAAkB,QAAbF,EAAG,KAAKlT,aAAK,IAAAkT,OAAA,EAAVA,EAAYE,MAC1B,KAAK3B,eAAiB,IAAIvV,eAAemX,MAAS,KAAM,IAAAC,EAAAC,EAAAC,EACpD,KAAKlC,aAAmC,QAAvBgC,EAAGH,aAAM,EAANA,EAAQM,oBAAY,IAAAH,EAAAA,EAAI,EAC5C,KAAK/B,aAAkC,QAAtBgC,EAAGH,aAAK,EAALA,EAAOK,oBAAY,IAAAF,EAAAA,EAAI,EAC3C,KAAK/B,YAAgC,QAArBgC,EAAGpkB,aAAI,EAAJA,EAAMqkB,oBAAY,IAAAD,EAAAA,EAAI,EACzC5sB,GAAO2G,MAAM,uCACb,KAAKmmB,UAAU,GAChB,KAAK,IACR,KAAKjC,eAAepV,QAAQ8W,GAC5B,KAAK1B,eAAepV,QAAQjN,GAC5B,KAAKqiB,eAAepV,QAAQ+W,GACxB,KAAKhC,eACL,KAAKh6B,SAAS,KAAKg6B,eAGvB,KAAK3pB,IAAI3S,iBAAiB,SAAU,KAAK4+B,SAAU,CAAEC,SAAS,IAC9D,KAAKrB,eAAiB,CAAC,CAC3B,EACApoB,aAAAA,GACQ,KAAKunB,gBACL,KAAKA,eAAenV,YAE5B,EACArW,QAAS,CACL7O,QAAAA,CAASvV,GACL,MAAM+xC,EAAYx4B,KAAK42B,KAAK,KAAKd,YAAY72C,OAAS,KAAKu3C,aAC3D,GAAIgC,EAAY,KAAK7B,SAEjB,YADAnrB,GAAO2G,MAAM,iDAAkD,CAAE1rB,QAAO+xC,YAAW7B,SAAU,KAAKA,WAGtG,KAAKlwC,MAAQA,EAEb,MAAMgyC,GAAaz4B,KAAK62B,MAAMpwC,EAAQ,KAAK+vC,aAAe,IAAO,KAAKC,WAAa,KAAKP,aACxF1qB,GAAO2G,MAAM,mCAAqC1rB,EAAO,CAAEgyC,YAAWjC,YAAa,KAAKA,cACxF,KAAKnqB,IAAIosB,UAAYA,CACzB,EACAH,QAAAA,GAAW,IAAAI,EACa,QAApBA,EAAA,KAAKC,uBAAe,IAAAD,IAApB,KAAKC,gBAAoBC,uBAAsB,KAC3C,KAAKD,gBAAkB,KACvB,MAAME,EAAY,KAAKxsB,IAAIosB,UAAY,KAAKvC,aACtCzvC,EAAQuZ,KAAK62B,MAAMgC,EAAY,KAAKpC,YAAc,KAAKD,YAE7D,KAAK/vC,MAAQuZ,KAAKD,IAAI,EAAGtZ,GACzB,KAAKwgB,MAAM,SAAS,IAE5B,KE5LR,IAXgB,QACd,IFRW,WAAkB,IAAIN,EAAIppB,KAAKqpB,EAAGD,EAAIE,MAAMD,GAAgC,OAAtBD,EAAIE,MAAMsM,YAAmBvM,EAAG,MAAM,CAACG,YAAY,aAAanZ,MAAM,CAAC,qBAAqB,KAAK,CAACgZ,EAAG,MAAM,CAAC1c,IAAI,SAAS6c,YAAY,sBAAsB,CAACJ,EAAI8c,GAAG,WAAW,GAAG9c,EAAIQ,GAAG,KAAQR,EAAInS,aAAa,kBAAmBoS,EAAG,MAAM,CAACG,YAAY,6BAA6B,CAACJ,EAAI8c,GAAG,mBAAmB,GAAG9c,EAAIU,KAAKV,EAAIQ,GAAG,KAAKP,EAAG,QAAQ,CAACG,YAAY,oBAAoBzS,MAAM,CAAE,0CAA2CqS,EAAInS,aAAa,oBAAqB,CAAEmS,EAAIsvB,QAASrvB,EAAG,UAAU,CAACG,YAAY,mBAAmB,CAACJ,EAAIQ,GAAG,WAAWR,EAAIS,GAAGT,EAAIsvB,SAAS,YAAYtvB,EAAIU,KAAKV,EAAIQ,GAAG,KAAKP,EAAG,QAAQ,CAAC1c,IAAI,QAAQ6c,YAAY,oBAAoBnZ,MAAM,CAAC,2BAA2B,KAAK,CAAC+Y,EAAI8c,GAAG,WAAW,GAAG9c,EAAIQ,GAAG,KAAKP,EAAG,QAAQ,CAACG,YAAY,oBAAoBzS,MAAMqS,EAAI+e,SAAW,0BAA4B,0BAA0B3pB,MAAO4K,EAAI2wB,WAAY1pC,MAAM,CAAC,2BAA2B,KAAK+Y,EAAI4I,GAAI5I,EAAIqwB,eAAe,SAAAtvB,EAAqB3oB,GAAE,IAAd,IAACoD,EAAG,KAAEsD,GAAKiiB,EAAI,OAAOd,EAAGD,EAAIivB,cAAcjvB,EAAIG,GAAG,CAAC3kB,IAAIA,EAAI0Q,IAAI,YAAYjF,MAAM,CAAC,OAASnI,EAAK,MAAQ1G,IAAI,YAAY4nB,EAAIovB,YAAW,GAAO,IAAG,GAAGpvB,EAAIQ,GAAG,KAAKP,EAAG,QAAQ,CAACuoB,WAAW,CAAC,CAAC5wC,KAAK,OAAO6wC,QAAQ,SAASzsC,MAAOgkB,EAAI2vB,QAASjH,WAAW,YAAYtoB,YAAY,oBAAoBnZ,MAAM,CAAC,2BAA2B,KAAK,CAAC+Y,EAAI8c,GAAG,WAAW,MAC30C,GACsB,IESpB,EACA,KACA,KACA,MAI8B,QCJ1BzW,IAAUmc,EAAAA,EAAAA,MAChB,IAAenY,EAAAA,EAAAA,IAAgB,CAC3BzyB,KAAM,8BACNwC,WAAY,CACRwoC,UAAS,KACTD,eAAc,KACdlY,iBAAgB,KAChBqY,cAAaA,GAAAA,GAEjBpI,OAAQ,CACJC,IAEJj2B,MAAO,CACH2kB,YAAa,CACT1kB,KAAMxO,OACN8V,UAAU,GAEd4iC,cAAe,CACXlqC,KAAMnM,MACNoM,QAASA,IAAO,KAGxBsiB,MAAKA,KAIM,CACHkZ,iBAJqBjD,KAKrBtC,WAJerM,KAKfsM,eAJmBpK,OAO3B1rB,KAAIA,KACO,CACH65B,QAAS,OAGjBhc,SAAU,CACNwJ,GAAAA,GAAM,IAAAxB,EAEF,QAAmB,QAAXA,EAAA,KAAKzlB,cAAM,IAAAylB,GAAO,QAAPA,EAAXA,EAAavsB,aAAK,IAAAusB,OAAA,EAAlBA,EAAoBwB,MAAO,KAAKlvB,QAAQ,WAAY,KAChE,EACA6lC,cAAAA,GACI,OAAO3c,GACFnmB,QAAO0sB,GAAUA,EAAOqL,YACxB/3B,QAAO0sB,IAAWA,EAAOK,SAAWL,EAAOK,QAAQ,KAAKC,MAAO,KAAK7D,eACpE/rB,MAAK,CAACC,EAAGC,KAAOD,EAAEwtB,OAAS,IAAMvtB,EAAEutB,OAAS,IACrD,EACAmC,KAAAA,GACI,OAAO,KAAK2hB,cACPnxC,KAAIwK,GAAU,KAAK0mB,QAAQ1mB,KAC3BhI,OAAOT,QAChB,EACA0yC,mBAAAA,GACI,OAAO,KAAKjlB,MAAMkH,MAAK1G,GAAQA,EAAKmJ,SAAWlB,EAAAA,GAAWC,SAC9D,EACAuK,WAAY,CACRpjB,GAAAA,GACI,MAAwC,WAAjC,KAAKqjB,iBAAiBhD,MACjC,EACAtM,GAAAA,CAAIsM,GACA,KAAKgD,iBAAiBhD,OAASA,EAAS,SAAW,IACvD,GAEJgV,aAAAA,GACI,OAAI,KAAKtY,eAAiB,IACf,EAEP,KAAKA,eAAiB,IACf,EAEP,KAAKA,eAAiB,KACf,EAEJ,CACX,GAEJ5V,QAAS,CAOL0K,OAAAA,CAAQI,GACJ,OAAO,KAAK6L,WAAWjM,QAAQI,EACnC,EACA,mBAAMgV,CAAcpX,GAChB,MAAME,EAAcF,EAAOE,YAAY,KAAKI,MAAO,KAAK7D,aAClDgpB,EAAmB,KAAKxD,cAC9B,IAEI,KAAKhQ,QAAUjS,EAAOvB,GACtB,KAAK6B,MAAMvrB,SAAQ+rB,IACfxP,EAAAA,GAAAA,IAAQwP,EAAM,SAAUiI,EAAAA,GAAWC,QAAQ,IAG/C,MAAMlD,QAAgB9F,EAAOqL,UAAU,KAAK/K,MAAO,KAAK7D,YAAa,KAAKgD,KAE1E,IAAKqG,EAAQ0B,MAAK94B,GAAqB,OAAXA,IAGxB,YADA,KAAKw/B,eAAe5J,QAIxB,GAAIwB,EAAQ0B,MAAK94B,IAAqB,IAAXA,IAAmB,CAE1C,MAAMg3C,EAAgBD,EACjBnyC,QAAO,CAACgI,EAAQpI,KAA6B,IAAnB4yB,EAAQ5yB,KAEvC,GADA,KAAKg7B,eAAehK,IAAIwhB,GACpB5f,EAAQ0B,MAAK94B,GAAqB,OAAXA,IAGvB,OAGJ,YADAwpB,EAAAA,GAAAA,IAAU,KAAKvB,EAAE,QAAS,2CAA4C,CAAEuJ,gBAE5E,EAEAnE,EAAAA,GAAAA,IAAY,KAAKpF,EAAE,QAAS,qDAAsD,CAAEuJ,iBACpF,KAAKgO,eAAe5J,OACxB,CACA,MAAOxuB,GACHmiB,GAAO1O,MAAM,+BAAgC,CAAEyW,SAAQlqB,OACvDoiB,EAAAA,GAAAA,IAAU,KAAKvB,EAAE,QAAS,gCAAiC,CAAEuJ,gBACjE,CAAC,QAGG,KAAK+R,QAAU,KACf,KAAK3R,MAAMvrB,SAAQ+rB,IACfxP,EAAAA,GAAAA,IAAQwP,EAAM,cAAUt0B,EAAU,GAE1C,CACJ,EACAmqB,EAAGwB,GAAAA,MCpJgQ,M,gBCWvQ,GAAU,CAAC,EAEf,GAAQC,kBAAoB,KAC5B,GAAQC,cAAgB,KAElB,GAAQC,OAAS,UAAc,KAAM,QAE3C,GAAQC,OAAS,KACjB,GAAQC,mBAAqB,KAEhB,KAAI,KAAS,IAKJ,MAAW,KAAQC,QAAS,KAAQA,OClB1D,IAAI,IAAY,QACd,IHTW,WAAkB,IAAIrF,EAAIppB,KAAKqpB,EAAGD,EAAIE,MAAMD,GAAgC,OAAtBD,EAAIE,MAAMsM,YAAmBvM,EAAG,MAAM,CAACG,YAAY,oDAAoD,CAACH,EAAG,YAAY,CAAC1c,IAAI,cAAc0D,MAAM,CAAC,WAAa+Y,EAAI6e,SAAW7e,EAAImyB,oBAAoB,cAAa,EAAK,OAASnyB,EAAIoyB,cAAc,YAAYpyB,EAAIoyB,eAAiB,EAAIpyB,EAAIuD,EAAE,QAAS,WAAa,KAAK,KAAOvD,EAAImgB,YAAY5mC,GAAG,CAAC,cAAc,SAAS8mB,GAAQL,EAAImgB,WAAW9f,CAAM,IAAIL,EAAI4I,GAAI5I,EAAIgjB,gBAAgB,SAASpW,GAAQ,OAAO3M,EAAG,iBAAiB,CAACzkB,IAAIoxB,EAAOvB,GAAG1d,MAAM,iCAAmCif,EAAOvB,GAAG9xB,GAAG,CAAC,MAAQ,SAAS8mB,GAAQ,OAAOL,EAAIgkB,cAAcpX,EAAO,GAAG/D,YAAY7I,EAAI8I,GAAG,CAAC,CAACttB,IAAI,OAAO/E,GAAG,WAAW,MAAO,CAAEupB,EAAI6e,UAAYjS,EAAOvB,GAAIpL,EAAG,gBAAgB,CAAChZ,MAAM,CAAC,KAAO,MAAMgZ,EAAG,mBAAmB,CAAChZ,MAAM,CAAC,IAAM2lB,EAAOG,cAAc/M,EAAIkN,MAAOlN,EAAIqJ,gBAAgB,EAAEN,OAAM,IAAO,MAAK,IAAO,CAAC/I,EAAIQ,GAAG,WAAWR,EAAIS,GAAGmM,EAAOE,YAAY9M,EAAIkN,MAAOlN,EAAIqJ,cAAc,WAAW,IAAG,IAAI,EACj+B,GACsB,IGUpB,EACA,KACA,WACA,MAIF,SAAe,GAAiB,QCnBgO,ICkBjPgB,EAAAA,EAAAA,IAAgB,CAC3BzyB,KAAM,mBACNwC,WAAY,CACRm4C,gBAAe,GACfC,qBAAoB,GACpBC,qBAAoB,GACpBC,YAAW,GACXC,4BAA2BA,IAE/BjY,OAAQ,CACJC,IAEJj2B,MAAO,CACH2kB,YAAa,CACT1kB,KAAMH,EAAAA,GACNyH,UAAU,GAEdohC,cAAe,CACX1oC,KAAM0rB,EAAAA,GACNpkB,UAAU,GAEdihB,MAAO,CACHvoB,KAAMnM,MACNyT,UAAU,IAGlBib,MAAKA,KAGM,CACHf,gBAHoBD,KAIpB4U,eAHmBpK,OAM3B1rB,KAAIA,KACO,CACH4tC,UAAS,GACTC,cAAa,GACb1K,SAAS2K,EAAAA,EAAAA,MACTzD,cAAe,EACf0D,WAAY,OAGpBlwB,SAAU,CACN+C,UAAAA,GACI,OAAO,KAAKO,gBAAgBP,UAChC,EACAoJ,MAAAA,GACI,OAAOgP,SAAS,KAAK54B,OAAOtC,OAAO+qB,SAAW,IAClD,EAKAmlB,QAAAA,GACI,QAAS,KAAK5tC,OAAO9G,MAAM20C,QAC/B,EACApV,OAAAA,GACI,OAAOb,GAAc,KAAK9P,MAC9B,EACAse,gBAAAA,GAEI,QAAI,KAAK1R,eAAiB,MAGnB,KAAK5M,MAAMkH,MAAK1G,QAAuBt0B,IAAfs0B,EAAKif,OACxC,EACAlB,eAAAA,GAEI,QAAI,KAAK3R,eAAiB,MAGnB,KAAK5M,MAAMkH,MAAK1G,QAAsBt0B,IAAds0B,EAAK3N,MACxC,EACAmzB,aAAAA,GACI,OAAK,KAAK7F,eAAkB,KAAKhkB,YAG1B,IAAI,KAAK8e,SAAS7qC,MAAK,CAACC,EAAGC,IAAMD,EAAEwtB,MAAQvtB,EAAEutB,QAFzC,EAGf,EACAukB,OAAAA,GACI,MAAM6D,GAAiB5vB,EAAAA,GAAAA,IAAE,QAAS,8BAC5B6vB,EAAc,KAAK/pB,YAAYimB,SAAW6D,EAC1CE,GAAkB9vB,EAAAA,GAAAA,IAAE,QAAS,6CAC7B+vB,GAAkB/vB,EAAAA,GAAAA,IAAE,QAAS,yHACnC,SAAAtrB,OAAUm7C,EAAW,MAAAn7C,OAAKo7C,EAAe,MAAAp7C,OAAKq7C,EAClD,EACAzE,aAAAA,GACI,OAAO,KAAK/T,eAAenK,QAC/B,EACAme,cAAAA,GACI,OAAqC,IAA9B,KAAKD,cAAcv2C,MAC9B,GAEJ2yB,MAAO,CACH+D,MAAAA,CAAOA,GACH,KAAKukB,aAAavkB,GAAQ,EAC9B,EACAgkB,QAAAA,CAAS/rB,GACDA,GACA,KAAKzT,WAAU,IAAM,KAAKggC,eAAe,KAAKxkB,SAEtD,GAEJnL,OAAAA,GAEwBzU,OAAOuF,SAASE,cAAc,oBACtC9B,iBAAiB,WAAY,KAAKipB,YAC9C,MAAM,GAAE3Q,IAAOzI,EAAAA,GAAAA,GAAU,QAAS,WAAY,CAAC,GAC/C,KAAK2wB,aAAaloB,QAAAA,EAAM,KAAK2D,QAC7B,KAAKykB,mBAAmBpoB,QAAAA,EAAM,KAAK2D,QACnC,KAAKwkB,eAAenoB,QAAAA,EAAM,KAC9B,EACAlD,aAAAA,GACwB/Y,OAAOuF,SAASE,cAAc,oBACtC5B,oBAAoB,WAAY,KAAK+oB,WACrD,EACA9X,QAAS,CAGLuvB,kBAAAA,CAAmBzkB,GACf,GAAIra,SAASI,gBAAgBklB,YAAc,MAAQ,KAAKoT,cAAcxf,SAAWmB,EAAQ,KAAAmS,EAGrF,MAAMzT,EAAO,KAAKR,MAAM5B,MAAK9P,GAAKA,EAAEqS,SAAWmB,IAC3CtB,SAAQ0T,IAAsB,QAATD,EAAbC,GAAenU,eAAO,IAAAkU,GAAtBA,EAAArpC,KAAAspC,GAAyB,CAAC1T,GAAO,KAAKrE,eAC9CxE,GAAO2G,MAAM,2BAA6BkC,EAAK7qB,KAAM,CAAE6qB,SACvD0T,GAAcpkC,KAAK0wB,EAAM,KAAKrE,YAAa,KAAKgkB,cAAcxqC,MAEtE,CACJ,EACA0wC,YAAAA,CAAavkB,GAAqB,IAAb8J,IAAI5/B,UAAAZ,OAAA,QAAAc,IAAAF,UAAA,KAAAA,UAAA,GACrB,GAAI81B,EAAQ,CACR,MAAMlvB,EAAQ,KAAKotB,MAAMwW,WAAUhW,GAAQA,EAAKG,SAAWmB,IACvD8J,IAAmB,IAAXh5B,GAAgBkvB,IAAW,KAAKqe,cAAcxf,SACtD/I,EAAAA,GAAAA,IAAU,KAAKvB,EAAE,QAAS,mBAE9B,KAAK8rB,cAAgBh2B,KAAKD,IAAI,EAAGtZ,EACrC,CACJ,EAKA0zC,cAAAA,CAAexkB,GACX,IAAK,KAAKgkB,SACN,OAEJ,GAAe,OAAXhkB,GAAmB,KAAK+jB,aAAe/jB,EACvC,OAEJ,MAAMtB,EAAO,KAAKR,MAAM5B,MAAK9P,GAAKA,EAAEqS,SAAWmB,IAC/C,QAAa51B,IAATs0B,GAAsBA,EAAK/oB,OAASyrB,EAAAA,GAASC,OAC7C,OAEJxL,GAAO2G,MAAM,gBAAkBkC,EAAK7qB,KAAM,CAAE6qB,SAC5C,KAAKqlB,WAAa/jB,EAClB,MAAM0kB,GAAgBlR,EAAAA,EAAAA,MAEjBtiC,QAAO0sB,KAAYA,UAAAA,EAAQhoB,WAE3B1E,QAAQ0sB,IAAYA,EAAOK,SAAWL,EAAOK,QAAQ,CAACS,GAAO,KAAKrE,eAElE/rB,MAAK,CAACC,EAAGC,KAAOD,EAAEwtB,OAAS,IAAMvtB,EAAEutB,OAAS,KAE5C4oB,GAAG,GAGRD,SAAAA,EAAe12C,KAAK0wB,EAAM,KAAKrE,YAAa,KAAKgkB,cAAcxqC,KACnE,EACAm5B,UAAAA,CAAWjlC,GAAO,IAAAqlC,EAGd,GADwC,QAArBA,EAAGrlC,EAAMklC,oBAAY,IAAAG,OAAA,EAAlBA,EAAoBwX,MAAMj1C,SAAS,SAIrD,OAEJ5H,EAAMkY,iBACNlY,EAAMuuB,kBACN,MAAMuuB,EAAe,KAAK5V,MAAM6V,MAAMpuB,IAChCquB,EAAWF,EAAa7+B,wBAAwBE,IAChD8+B,EAAcD,EAAWF,EAAa7+B,wBAAwBi/B,OAEhEl9C,EAAMgqC,QAAUgT,EAAW,IAC3BF,EAAa/B,UAAY+B,EAAa/B,UAAY,GAIlD/6C,EAAMgqC,QAAUiT,EAAc,KAC9BH,EAAa/B,UAAY+B,EAAa/B,UAAY,GAE1D,EACAvuB,EAACA,GAAAA,M,gBCxML,GAAU,CAAC,EAEf,GAAQyB,kBAAoB,KAC5B,GAAQC,cAAgB,KAElB,GAAQC,OAAS,UAAc,KAAM,QAE3C,GAAQC,OAAS,KACjB,GAAQC,mBAAqB,KAEhB,KAAI,KAAS,IAKJ,MAAW,KAAQC,QAAS,KAAQA,O,gBCftD,GAAU,CAAC,EAEf,GAAQL,kBAAoB,KAC5B,GAAQC,cAAgB,KAElB,GAAQC,OAAS,UAAc,KAAM,QAE3C,GAAQC,OAAS,KACjB,GAAQC,mBAAqB,KAEhB,KAAI,KAAS,IAKJ,MAAW,KAAQC,QAAS,KAAQA,OCN1D,UAXgB,QACd,IHVW,WAAkB,IAAIrF,EAAIppB,KAAKqpB,EAAGD,EAAIE,MAAMD,GAAgC,OAAtBD,EAAIE,MAAMsM,YAAmBvM,EAAG,cAAc,CAAC1c,IAAI,QAAQ0D,MAAM,CAAC,iBAAiB+Y,EAAI4F,WAAWK,UAAYjG,EAAI6yB,cAAgB7yB,EAAI4yB,UAAU,WAAW,SAAS,eAAe5yB,EAAIkN,MAAM,YAAYlN,EAAI4F,WAAWK,UAAU,cAAc,CACjTulB,iBAAkBxrB,EAAIwrB,iBACtBC,gBAAiBzrB,EAAIyrB,gBACrBve,MAAOlN,EAAIkN,MACX4M,eAAgB9Z,EAAI8Z,gBACnB,kBAAkB9Z,EAAIqvB,cAAc,QAAUrvB,EAAIsvB,SAASzmB,YAAY7I,EAAI8I,GAAG,CAAG9I,EAAI8uB,eAA8U,KAA9T,CAACtzC,IAAI,iBAAiB/E,GAAG,WAAW,MAAO,CAACwpB,EAAG,OAAO,CAACG,YAAY,wBAAwB,CAACJ,EAAIQ,GAAGR,EAAIS,GAAGT,EAAIuD,EAAE,QAAS,mBAAoB,CAAE2wB,MAAOl0B,EAAI6uB,cAAcv2C,aAAc0nB,EAAIQ,GAAG,KAAKP,EAAG,8BAA8B,CAAChZ,MAAM,CAAC,eAAe+Y,EAAIqJ,YAAY,iBAAiBrJ,EAAI6uB,iBAAiB,EAAE9lB,OAAM,GAAW,CAACvtB,IAAI,SAAS/E,GAAG,WAAW,OAAOupB,EAAI4I,GAAI5I,EAAIkzB,eAAe,SAAS9F,GAAQ,OAAOntB,EAAG,kBAAkB,CAACzkB,IAAI4xC,EAAO/hB,GAAGpkB,MAAM,CAAC,iBAAiB+Y,EAAIqtB,cAAc,eAAertB,EAAIqJ,YAAY,OAAS+jB,IAAS,GAAE,EAAErkB,OAAM,GAAM,CAACvtB,IAAI,SAAS/E,GAAG,WAAW,MAAO,CAACwpB,EAAG,uBAAuB,CAAC1c,IAAI,QAAQ0D,MAAM,CAAC,mBAAmB+Y,EAAI8Z,eAAe,qBAAqB9Z,EAAIwrB,iBAAiB,oBAAoBxrB,EAAIyrB,gBAAgB,MAAQzrB,EAAIkN,SAAS,EAAEnE,OAAM,GAAM,CAACvtB,IAAI,SAAS/E,GAAG,WAAW,MAAO,CAACwpB,EAAG,uBAAuB,CAAChZ,MAAM,CAAC,eAAe+Y,EAAIqJ,YAAY,mBAAmBrJ,EAAI8Z,eAAe,qBAAqB9Z,EAAIwrB,iBAAiB,oBAAoBxrB,EAAIyrB,gBAAgB,MAAQzrB,EAAIkN,MAAM,QAAUlN,EAAI6d,WAAW,EAAE9U,OAAM,IAAO,MAAK,IACzpC,GACsB,IGMpB,EACA,KACA,WACA,MAI8B,QCpBgF,GCoBhH,CACEnxB,KAAM,oBACNgoB,MAAO,CAAC,SACRlb,MAAO,CACLmb,MAAO,CACLlb,KAAMnD,QAERse,UAAW,CACTnb,KAAMnD,OACNoD,QAAS,gBAEXmb,KAAM,CACJpb,KAAMlH,OACNmH,QAAS,MCff,IAXgB,QACd,ICRW,WAAkB,IAAIob,EAAIppB,KAAKqpB,EAAGD,EAAIE,MAAMD,GAAG,OAAOA,EAAG,OAAOD,EAAIG,GAAG,CAACC,YAAY,4CAA4CnZ,MAAM,CAAC,eAAc+Y,EAAIH,OAAQ,KAAY,aAAaG,EAAIH,MAAM,KAAO,OAAOtmB,GAAG,CAAC,MAAQ,SAAS8mB,GAAQ,OAAOL,EAAIM,MAAM,QAASD,EAAO,IAAI,OAAOL,EAAIO,QAAO,GAAO,CAACN,EAAG,MAAM,CAACG,YAAY,4BAA4BnZ,MAAM,CAAC,KAAO+Y,EAAIF,UAAU,MAAQE,EAAID,KAAK,OAASC,EAAID,KAAK,QAAU,cAAc,CAACE,EAAG,OAAO,CAAChZ,MAAM,CAAC,EAAI,uJAAuJ,CAAE+Y,EAAS,MAAEC,EAAG,QAAQ,CAACD,EAAIQ,GAAGR,EAAIS,GAAGT,EAAIH,UAAUG,EAAIU,UAC3qB,GACsB,IDSpB,EACA,KACA,KACA,MAI8B,QElBiO,ICSlP2J,EAAAA,EAAAA,IAAgB,CAC3BzyB,KAAM,oBACNwC,WAAY,CACR+5C,kBAAiBA,IAErBzvC,MAAO,CACH2oC,cAAe,CACX1oC,KAAMxO,OACN8V,UAAU,IAGlBib,KAAAA,GACI,MAAM,YAAEmC,GAAgBL,KACxB,MAAO,CACHK,cAER,EACArkB,KAAIA,KACO,CACH85B,UAAU,IAGlBjc,SAAU,CAINuxB,SAAAA,GACI,OAAO,KAAK/G,eAA0E,IAAxD,KAAKA,cAAc9f,YAAcC,EAAAA,GAAWgP,OAC9E,EACA6X,eAAAA,GAAkB,IAAA9G,EACd,OAAqE,KAA5C,QAAlBA,EAAA,KAAKF,qBAAa,IAAAE,GAAY,QAAZA,EAAlBA,EAAoBpZ,kBAAU,IAAAoZ,OAAA,EAA9BA,EAAiC,yBAC5C,EACA+G,eAAAA,GACI,OAAI,KAAKD,gBACE,KAAK9wB,EAAE,QAAS,mEAEjB,KAAK6wB,UAGR,KAFI,KAAK7wB,EAAE,QAAS,2DAG/B,GAEJM,OAAAA,GAEI,MAAM0wB,EAAcnlC,OAAOuF,SAASE,cAAc,oBAClD0/B,EAAYxhC,iBAAiB,WAAY,KAAKipB,YAC9CuY,EAAYxhC,iBAAiB,YAAa,KAAKsuB,aAC/CkT,EAAYxhC,iBAAiB,OAAQ,KAAKyhC,cAC9C,EACArsB,aAAAA,GACI,MAAMosB,EAAcnlC,OAAOuF,SAASE,cAAc,oBAClD0/B,EAAYthC,oBAAoB,WAAY,KAAK+oB,YACjDuY,EAAYthC,oBAAoB,YAAa,KAAKouB,aAClDkT,EAAYthC,oBAAoB,OAAQ,KAAKuhC,cACjD,EACAtwB,QAAS,CACL8X,UAAAA,CAAWjlC,GAAO,IAAAqlC,EAEdrlC,EAAMkY,kBACkC,QAArBmtB,EAAGrlC,EAAMklC,oBAAY,IAAAG,OAAA,EAAlBA,EAAoBwX,MAAMj1C,SAAS,YAGrD,KAAKmgC,UAAW,EAExB,EACAuC,WAAAA,CAAYtqC,GAAO,IAAA09C,EAIf,MAAM1lC,EAAgBhY,EAAMgY,cACxBA,SAAAA,EAAeuyB,SAA6B,QAArBmT,EAAE19C,EAAMwqC,qBAAa,IAAAkT,EAAAA,EAAI19C,EAAMsW,SAGtD,KAAKyxB,WACL,KAAKA,UAAW,EAExB,EACA0V,aAAAA,CAAcz9C,GACV8tB,GAAO2G,MAAM,kDAAmD,CAAEz0B,UAClEA,EAAMkY,iBACF,KAAK6vB,WACL,KAAKA,UAAW,EAExB,EACA,YAAM3C,CAAOplC,GAAO,IAAA29C,EAAArY,EAAAjR,EAEhB,GAAI,KAAKkpB,gBAEL,YADAxvB,EAAAA,GAAAA,IAAU,KAAKwvB,iBAGnB,GAAmC,QAAnCI,EAAI,KAAKhvB,IAAI7Q,cAAc,gBAAQ,IAAA6/B,GAA/BA,EAAiCpT,SAASvqC,EAAMsW,QAChD,OAEJtW,EAAMkY,iBACNlY,EAAMuuB,kBAEN,MAAM8S,EAAQ,KAAsB,QAAlBiE,EAAAtlC,EAAMklC,oBAAY,IAAAI,OAAA,EAAlBA,EAAoBjE,QAAS,IAGzCQ,QAAiBT,GAAuBC,GAExC3G,QAAiC,QAAtBrG,EAAM,KAAK/B,mBAAW,IAAA+B,OAAA,EAAhBA,EAAkBqJ,YAAY,KAAK4Y,cAAcxqC,OAClEsyB,EAAS1D,aAAQ,EAARA,EAAU0D,OACzB,IAAKA,EAED,YADArQ,EAAAA,GAAAA,IAAU,KAAKvB,EAAE,QAAS,0CAK9B,GAAIxsB,EAAM+X,OACN,OAEJ+V,GAAO2G,MAAM,UAAW,CAAEz0B,QAAOo+B,SAAQyD,aAEzC,MAEM+b,SAFgB1b,GAAoBL,EAAUzD,EAAQ1D,EAASA,WAE1CmjB,UAAUvb,IAAM,IAAAwb,EAAA,OAAKxb,EAAOxC,SAAWie,GAAAA,EAAa7U,SACvE5G,EAAOpH,KAAK8iB,mBAAmBp2C,SAAS,OAC1B,QAD8Bk2C,EAC7Cxb,EAAO1U,gBAAQ,IAAAkwB,GAAS,QAATA,EAAfA,EAAiB1M,eAAO,IAAA0M,OAAA,EAAxBA,EAA2B,eAEoC,IAA/Dxb,EAAOnxB,OAAO/K,QAAQg4B,EAAOjtB,OAAQ,IAAI7N,MAAM,KAAK/B,MAAY,IACzC,IAAA08C,EAAA7V,OAAX/lC,IAAfu7C,IACA9vB,GAAO2G,MAAM,6CAA8C,CAAEmpB,eAC7D,KAAKjoC,QAAQtV,KAAK,IACX,KAAKgO,OACRtC,OAAQ,CACJ6c,KAA8B,QAA1Bq1B,EAAoB,QAApB7V,EAAE,KAAK/5B,OAAOtC,cAAM,IAAAq8B,OAAA,EAAlBA,EAAoBxf,YAAI,IAAAq1B,EAAAA,EAAI,QAClCnnB,OAAQmQ,SAAS2W,EAAWhwB,SAASwjB,QAAQ,kBAIzD,KAAKrJ,UAAW,CACpB,EACAvb,EAACA,GAAAA,M,gBCnIL,GAAU,CAAC,EAEf,GAAQyB,kBAAoB,KAC5B,GAAQC,cAAgB,KAElB,GAAQC,OAAS,UAAc,KAAM,QAE3C,GAAQC,OAAS,KACjB,GAAQC,mBAAqB,KAEhB,KAAI,KAAS,IAKJ,MAAW,KAAQC,QAAS,KAAQA,OCP1D,UAXgB,QACd,IFTW,WAAkB,IAAIrF,EAAIppB,KAAKqpB,EAAGD,EAAIE,MAAMD,GAAgC,OAAtBD,EAAIE,MAAMsM,YAAmBvM,EAAG,MAAM,CAACuoB,WAAW,CAAC,CAAC5wC,KAAK,OAAO6wC,QAAQ,SAASzsC,MAAOgkB,EAAI8e,SAAU4J,WAAW,aAAatoB,YAAY,+BAA+BnZ,MAAM,CAAC,+BAA+B,IAAI1N,GAAG,CAAC,KAAOymB,EAAImc,SAAS,CAAClc,EAAG,MAAM,CAACG,YAAY,wCAAwC,CAAEJ,EAAIo0B,YAAcp0B,EAAIq0B,gBAAiB,CAACp0B,EAAG,oBAAoB,CAAChZ,MAAM,CAAC,KAAO,MAAM+Y,EAAIQ,GAAG,KAAKP,EAAG,KAAK,CAACG,YAAY,sCAAsC,CAACJ,EAAIQ,GAAG,aAAaR,EAAIS,GAAGT,EAAIuD,EAAE,QAAS,uCAAuC,eAAe,CAACtD,EAAG,KAAK,CAACG,YAAY,sCAAsC,CAACJ,EAAIQ,GAAG,aAAaR,EAAIS,GAAGT,EAAIs0B,iBAAiB,gBAAgB,IACxuB,GACsB,IEUpB,EACA,KACA,WACA,MAI8B,Q,mB7IiBhC,MAAMW,QAAwD77C,KAApB,QAAjB87C,IAAAC,EAAAA,GAAAA,YAAiB,IAAAD,QAAA,EAAjBA,GAAmBE,e8IpC6M,I9IqC1O/qB,EAAAA,EAAAA,IAAgB,CAC3BzyB,KAAM,YACNwC,WAAY,CACRi7C,YAAW,GACXC,kBAAiB,GACjBC,iBAAgB,GAChBjM,SAAQ,KACRkM,aAAY,GACZC,aAAY,KACZpH,SAAQ,KACRqH,eAAc,KACdjrB,iBAAgB,KAChBqY,cAAa,KACb6S,SAAQ,KACR3M,gBAAe,GACf4M,aAAY,KACZC,aAAYA,IAEhBnb,OAAQ,CACJC,GACA2T,IAEJpnB,KAAAA,GAAQ,IAAAG,EACJ,MAAMwT,EAAarM,KACbsB,EAAaD,KACbiL,EAAiBpK,KACjBqK,EAAgB3J,KAChBjL,EAAkBD,KAClBkE,EAAkBP,MAClB,YAAER,GAAgBL,KAGxB,MAAO,CACHK,cACAwR,aACA/K,aACAgL,iBACAC,gBACA5U,kBACAiE,kBAEAnC,eAXqF,QAArEZ,GAAIzE,EAAAA,GAAAA,GAAU,OAAQ,SAAU,IAAI,yCAAiC,IAAAyE,GAAAA,EAYrFse,qBAXwB/iB,EAAAA,GAAAA,GAAU,QAAS,sBAAuB,IAYlEkzB,KAAIA,GAAAA,EAEZ,EACA9wC,KAAIA,KACO,CACH+wC,WAAY,GACZlX,SAAS,EACTmX,QAAS,KACTC,yBAA0BA,SAGlCpzB,SAAU,CAINqzB,QAAAA,GACI,OAAO5E,MAAU6E,IACbl9B,GAAQuS,MAAM,yDAA0D2qB,GACxE,KAAKJ,WAAaI,EAAY73C,KAAK,GACpC,IACP,EAIA83C,UAAAA,GACI,MAAMz2B,EAAO,KAAK0J,YAClB,OAAO,UAAgB,IAAAgtB,EAAA9I,EAEnB,MAAMr9B,GAAiBomC,EAAAA,GAAAA,WAAS,GAAAr+C,OAA4B,QAA5Bo+C,EAAsB,QAAtB9I,EAAI,KAAKF,qBAAa,IAAAE,OAAA,EAAlBA,EAAoB1qC,YAAI,IAAAwzC,EAAAA,EAAI,GAAE,KAAAp+C,OAAI4K,QAAAA,EAAQ,KAE9E,aAAc8c,EAAK8U,YAAYvkB,IAAiBuhB,QAAQ,CAEhE,EACA7L,UAAAA,GACI,OAAO,KAAKO,gBAAgBP,UAChC,EACA2wB,WAAAA,GAAc,IAAAC,EAAAprB,EACV,OAA6B,QAA7BorB,EAAuB,QAAvBprB,EAAO,KAAK/B,mBAAW,IAAA+B,OAAA,EAAhBA,EAAkBxzB,YAAI,IAAA4+C,EAAAA,GAAIjzB,EAAAA,GAAAA,IAAE,QAAS,QAChD,EAIA8I,GAAAA,GAAM,IAAAxB,EAEF,QAAmB,QAAXA,EAAA,KAAKzlB,cAAM,IAAAylB,GAAO,QAAPA,EAAXA,EAAavsB,aAAK,IAAAusB,GAAK,QAALA,EAAlBA,EAAoBwB,WAAG,IAAAxB,OAAA,EAAvBA,EAAyBvuB,aAAc,KAAKa,QAAQ,WAAY,KAC5E,EAIA6xB,MAAAA,GAAS,IAAAynB,EAAAC,EACL,MAAMC,EAASl5C,OAAOugC,SAAmC,QAA3ByY,EAAY,QAAZC,EAAC,KAAKtxC,cAAM,IAAAsxC,OAAA,EAAXA,EAAa5zC,OAAO+qB,cAAM,IAAA4oB,EAAAA,EAAI,IAC7D,OAAOh5C,OAAOM,MAAM44C,GAAU,KAAOA,CACzC,EAIAtJ,aAAAA,GAAgB,IAAA/Q,EACZ,GAAqB,QAAjBA,EAAC,KAAKjT,mBAAW,IAAAiT,IAAhBA,EAAkBjR,GACnB,OAEJ,GAAiB,MAAb,KAAKgB,IACL,OAAO,KAAKwO,WAAW3L,QAAQ,KAAK7F,YAAYgC,IAEpD,MAAMnjB,EAAS,KAAK4nB,WAAWE,QAAQ,KAAK3G,YAAYgC,GAAI,KAAKgB,KACjE,YAAejzB,IAAX8O,EAGG,KAAK2yB,WAAWjM,QAAQ1mB,QAH/B,CAIJ,EAKA0uC,iBAAAA,GA2BI,MAAO,CA1Ba,IAEZ,KAAKhxB,WAAWG,qBAAuB,CAACzR,IAAC,IAAAuiC,EAAA,OAA+B,KAAf,QAAZA,EAAAviC,EAAE6f,kBAAU,IAAA0iB,OAAA,EAAZA,EAAcjN,SAAc,GAAI,MAE7E,KAAKhkB,WAAWI,mBAAqB,CAAC1R,GAAgB,WAAXA,EAAE3P,MAAqB,MAE7C,aAArB,KAAKipC,YAA6B,CAACt5B,GAAKA,EAAE,KAAKs5B,cAAgB,GAEnEt5B,IAAC,IAAAwiC,EAAA,OAAgB,QAAZA,EAAAxiC,EAAE6f,kBAAU,IAAA2iB,OAAA,EAAZA,EAAcjb,cAAevnB,EAAE6e,QAAQ,EAE5C7e,GAAKA,EAAE6e,UAEI,IAEP,KAAKvN,WAAWG,qBAAuB,CAAC,OAAS,MAEjD,KAAKH,WAAWI,mBAAqB,CAAC,OAAS,MAE1B,UAArB,KAAK4nB,YAA0B,CAAC,KAAKI,aAAe,OAAS,OAAS,MAEjD,UAArB,KAAKJ,aAAgD,aAArB,KAAKA,YAA6B,CAAC,KAAKI,aAAe,MAAQ,QAAU,GAE7G,KAAKA,aAAe,MAAQ,OAE5B,KAAKA,aAAe,MAAQ,QAGpC,EAIA+I,iBAAAA,GAAoB,IAAAC,EAChB,IAAK,KAAK3tB,YACN,MAAO,GAEX,IAAI4tB,EAAqB,IAAI,KAAKC,aAE9B,KAAKnB,aACLkB,EAAqBA,EAAmB/2C,QAAOwtB,GACpCA,EAAKyF,SAASj1B,cAAcS,SAAS,KAAKo3C,WAAW73C,iBAEhE+a,GAAQuS,MAAM,sBAAuByrB,IAEzC,MAAME,IAAgC,QAAhBH,EAAA,KAAK3tB,mBAAW,IAAA2tB,OAAA,EAAhBA,EAAkB/K,UAAW,IAC9C3gB,MAAK2hB,GAAUA,EAAO5hB,KAAO,KAAKuiB,cAEvC,GAAIuJ,SAAAA,EAAc75C,MAAqC,mBAAtB65C,EAAa75C,KAAqB,CAC/D,MAAMo1B,EAAU,IAAI,KAAKwkB,aAAa55C,KAAK65C,EAAa75C,MACxD,OAAO,KAAK0wC,aAAetb,EAAUA,EAAQ5a,SACjD,CACA,OmBpLL,SAAiBs/B,EAAYC,EAAaC,GAAQ,IAAAC,EAAAC,EAErDH,EAAyB,QAAdE,EAAGF,SAAW,IAAAE,EAAAA,EAAI,CAAEv7C,GAAUA,GAEzCs7C,EAAe,QAATE,EAAGF,SAAM,IAAAE,EAAAA,EAAI,GACnB,MAAMC,EAAUJ,EAAY35C,KAAI,CAACoH,EAAGhF,KAAK,IAAA43C,EAAA,MAAkC,SAAf,QAAdA,EAACJ,EAAOx3C,UAAM,IAAA43C,EAAAA,EAAI,OAAmB,GAAK,CAAC,IACnFC,EAAWC,KAAKC,SAAS,EAACC,EAAAA,GAAAA,OAAeC,EAAAA,GAAAA,OAAuB,CAElEC,SAAS,EACTC,MAAO,SAEX,MAAO,IAAIb,GAAY95C,MAAK,CAACC,EAAGC,KAC5B,IAAK,MAAOsC,EAAOo4C,KAAeb,EAAYp6C,UAAW,CAErD,MAAMjB,EAAQ27C,EAASQ,QAAQz4C,GAAUw4C,EAAW36C,IAAKmC,GAAUw4C,EAAW16C,KAE9E,GAAc,IAAVxB,EACA,OAAOA,EAAQy7C,EAAQ33C,EAG/B,CAEA,OAAO,CAAC,GAEhB,CnB4JmBs4C,CAAQnB,KAAuB,KAAKL,kBAC/C,EACAM,WAAAA,GAAc,IAAAmB,EAAAC,EACV,MAAMC,EAAiC,QAAvBF,EAAG,KAAKlyB,uBAAe,IAAAkyB,OAAA,EAApBA,EAAsBzyB,WAAWC,YACpD,QAA0B,QAAlByyB,EAAA,KAAKjL,qBAAa,IAAAiL,OAAA,EAAlBA,EAAoB/nB,YAAa,IACpC7yB,IAAI,KAAKkxB,SACT1uB,QAAO+xB,IACS,IAAAumB,EAAjB,OAAKD,IAGItmB,EAFEA,IAAqC,KAA7BA,SAAgB,QAAZumB,EAAJvmB,EAAMkC,kBAAU,IAAAqkB,OAAA,EAAhBA,EAAkBC,WAAoBxmB,SAAAA,EAAMkB,SAAS7F,WAAW,KAEtE,GAErB,EAIAorB,UAAAA,GACI,OAAmC,IAA5B,KAAKxB,YAAY5+C,MAC5B,EAMAqgD,YAAAA,GACI,YAA8Bv/C,IAAvB,KAAKi0C,gBACJ,KAAKqL,YACN,KAAK7Z,OAChB,EAIA+Z,aAAAA,GACI,MAAMvsB,EAAM,KAAKA,IAAIhyB,MAAM,KAAKtC,MAAM,GAAI,GAAGwC,KAAK,MAAQ,IAC1D,MAAO,IAAK,KAAK6K,OAAQ9G,MAAO,CAAE+tB,OACtC,EACAwsB,eAAAA,GAAkB,IAAAC,EAAAC,EACd,GAAuB,QAAnBD,EAAC,KAAKzL,qBAAa,IAAAyL,GAAY,QAAZA,EAAlBA,EAAoB3kB,kBAAU,IAAA2kB,GAA9BA,EAAiC,eAGtC,OAAO3iD,OAAO84B,QAAyB,QAAlB8pB,EAAA,KAAK1L,qBAAa,IAAA0L,GAAY,QAAZA,EAAlBA,EAAoB5kB,kBAAU,IAAA4kB,OAAA,EAA9BA,EAAiC,iBAAkB,CAAC,GAAG95C,MAChF,EACA+5C,gBAAAA,GACI,OAAK,KAAKH,gBAGN,KAAKI,kBAAoBnD,GAAAA,EAAKlL,iBACvBrnB,EAAAA,GAAAA,IAAE,QAAS,mBAEfA,EAAAA,GAAAA,IAAE,QAAS,WALPA,EAAAA,GAAAA,IAAE,QAAS,QAM1B,EACA01B,eAAAA,GACI,OAAK,KAAKJ,gBAIN,KAAKA,gBAAgBzkB,MAAKzvB,GAAQA,IAASmxC,GAAAA,EAAKlL,kBACzCkL,GAAAA,EAAKlL,gBAETkL,GAAAA,EAAKoD,gBAND,IAOf,EACAC,mBAAAA,GACI,OAAO,KAAKvzB,WAAWK,WACjB1C,EAAAA,GAAAA,IAAE,QAAS,wBACXA,EAAAA,GAAAA,IAAE,QAAS,sBACrB,EAIA6wB,SAAAA,GACI,OAAO,KAAK/G,eAA0E,IAAxD,KAAKA,cAAc9f,YAAcC,EAAAA,GAAWgP,OAC9E,EACA6X,eAAAA,GAAkB,IAAA+E,EACd,OAAqE,KAA5C,QAAlBA,EAAA,KAAK/L,qBAAa,IAAA+L,GAAY,QAAZA,EAAlBA,EAAoBjlB,kBAAU,IAAAilB,OAAA,EAA9BA,EAAiC,yBAC5C,EACA9E,eAAAA,GACI,OAAI,KAAKD,iBACE9wB,EAAAA,GAAAA,IAAE,QAAS,oEAEfA,EAAAA,GAAAA,IAAE,QAAS,2DACtB,EAIA81B,QAAAA,GACI,OAAOpE,IACA,KAAK5H,eAAyE,IAAvD,KAAKA,cAAc9f,YAAcC,EAAAA,GAAW8rB,MAC9E,GAEJruB,MAAO,CACH5B,WAAAA,CAAY6B,EAASC,IACbD,aAAO,EAAPA,EAASG,OAAOF,aAAO,EAAPA,EAASE,MAG7BxG,GAAO2G,MAAM,eAAgB,CAAEN,UAASC,YACxC,KAAK2P,eAAe5J,QACpB,KAAKqoB,cACL,KAAKC,eACT,EACAntB,GAAAA,CAAIotB,EAAQC,GAAQ,IAAApZ,EAChBzb,GAAO2G,MAAM,oBAAqB,CAAEiuB,SAAQC,WAE5C,KAAK5e,eAAe5J,QACpB,KAAKqoB,cACL,KAAKC,eAEL,MAAMG,EAA6B,QAAbrZ,EAAG,KAAKrC,aAAK,IAAAqC,OAAA,EAAVA,EAAYqZ,iBACjCA,SAAAA,EAAkBj0B,MAClBi0B,EAAiBj0B,IAAIosB,UAAY,EAEzC,EACAoF,WAAAA,CAAYzlB,GACR5M,GAAO2G,MAAM,6BAA8B,CAAE7L,KAAM,KAAK0J,YAAa8L,OAAQ,KAAKkY,cAAe5b,cACjG/4B,EAAAA,GAAAA,IAAK,qBAAsB,CAAEinB,KAAM,KAAK0J,YAAa8L,OAAQ,KAAKkY,cAAe5b,YACrF,GAEJ5N,OAAAA,GACI,KAAK21B,gBACL51B,EAAAA,GAAAA,IAAU,qBAAsB,KAAKg2B,gBACrCh2B,EAAAA,GAAAA,IAAU,qBAAsB,KAAK+L,gBACrC/L,EAAAA,GAAAA,IAAU,kCAAmC,KAAKsyB,WAClDtyB,EAAAA,GAAAA,IAAU,iCAAkC,KAAK21B,aAEjD,KAAKtD,yBAA2B,KAAK9vB,gBAAgB0zB,YAAW,IAAM,KAAKL,gBAAgB,CAAEM,MAAM,GACvG,EACAC,SAAAA,IACIC,EAAAA,GAAAA,IAAY,qBAAsB,KAAKJ,gBACvCI,EAAAA,GAAAA,IAAY,qBAAsB,KAAKrqB,gBACvCqqB,EAAAA,GAAAA,IAAY,kCAAmC,KAAK9D,WACpD8D,EAAAA,GAAAA,IAAY,iCAAkC,KAAKT,aACnD,KAAKtD,0BACT,EACA/xB,QAAS,CACLX,EAAC,MACD,kBAAMi2B,GACF,KAAK3a,SAAU,EACf,MAAMxS,EAAM,KAAKA,IACXhD,EAAc,KAAKA,YACzB,GAAKA,EAAL,CAKI,KAAK2sB,SAAW,WAAY,KAAKA,UACjC,KAAKA,QAAQh0B,SACb6C,GAAO2G,MAAM,qCAGjB,KAAKwqB,QAAU3sB,EAAYoL,YAAYpI,GACvC,IACI,MAAM,OAAE8I,EAAM,SAAE1D,SAAmB,KAAKukB,QACxCnxB,GAAO2G,MAAM,mBAAoB,CAAEa,MAAK8I,SAAQ1D,aAEhD,KAAKoJ,WAAWzL,YAAYqC,GAG5B,KAAKyS,KAAK/O,EAAQ,YAAa1D,EAAS/zB,KAAIgwB,GAAQA,EAAKxlB,UAE7C,MAARmkB,EACA,KAAKwO,WAAWrL,QAAQ,CAAEL,QAAS9F,EAAYgC,GAAIgC,KAAM8H,IAIrDA,EAAOtH,QACP,KAAKgN,WAAWzL,YAAY,CAAC+F,IAC7B,KAAKrF,WAAWG,QAAQ,CAAEd,QAAS9F,EAAYgC,GAAInjB,OAAQitB,EAAOjtB,OAAQrF,KAAMwpB,KAIhFxH,GAAOo1B,MAAM,+BAAgC,CAAE5tB,MAAK8I,SAAQ9L,gBAIpDoI,EAASvxB,QAAOwtB,GAAsB,WAAdA,EAAK/oB,OACrChD,SAAS+rB,IACb,KAAKoC,WAAWG,QAAQ,CAAEd,QAAS9F,EAAYgC,GAAInjB,OAAQwlB,EAAKxlB,OAAQrF,MAAMtI,EAAAA,GAAAA,MAAK8xB,EAAKqB,EAAKyF,WAAY,GAEjH,CACA,MAAOhd,GACH0O,GAAO1O,MAAM,+BAAgC,CAAEA,SACnD,CAAC,QAEG,KAAK0oB,SAAU,CACnB,CA1CA,MAFIha,GAAO2G,MAAM,mDAAqD,CAAEnC,eA6C5E,EAOAuF,OAAAA,CAAQI,GACJ,OAAO,KAAK6L,WAAWjM,QAAQI,EACnC,EAKA4qB,aAAAA,CAAclsB,GACsC,IAAAwsB,EACIC,EAAAC,EADhD1sB,EAAKG,QAAUH,EAAKG,SAAW,KAAKmB,SAChCtB,EAAKG,UAA6B,QAAvBqsB,EAAK,KAAK7M,qBAAa,IAAA6M,OAAA,EAAlBA,EAAoBrsB,QAGpCze,OAAOue,IAAInG,MAAMhI,OAAOoO,UAAU,KAAM,CAAEjO,KAAM,KAAKva,OAAOtC,OAAO6c,MAAQ,CAAE0M,IAAgC,QAA7B8tB,EAAoB,QAApBC,EAAE,KAAK/M,qBAAa,IAAA+M,OAAA,EAAlBA,EAAoB9pB,eAAO,IAAA6pB,EAAAA,EAAI,MAIjH/qC,OAAOue,IAAInG,MAAMhI,OAAOoO,UAAU,KAAM,IAAK,KAAKxoB,OAAOtC,OAAQ+qB,YAAQz0B,GAAa,IAAK,KAAKgM,OAAO9G,MAAO20C,cAAU75C,IAGpI,EAKAihD,QAAAA,CAAShhB,IAGgB/I,EAAAA,GAAAA,SAAQ+I,EAAOnxB,UAAY,KAAKmlC,cAAcnlC,QAK/D,KAAKsxC,cAEb,EACA,kBAAMc,CAAajhB,GAAQ,IAAAwb,EAAA0F,EACvB,MAAM1jB,GAAwB,QAAfge,EAAAxb,EAAO1U,gBAAQ,IAAAkwB,OAAA,EAAfA,EAAiBhe,SAAU,EAC1C,GAAIwC,EAAOxC,SAAWie,GAAAA,EAAa0F,UAKnC,GAAe,MAAX3jB,EAIC,GAAe,MAAXA,GAA6B,MAAXA,EAItB,GAAe,MAAXA,EAAJ,CAKL,GAAqC,iBAAX,QAAtB0jB,EAAOlhB,EAAO1U,gBAAQ,IAAA41B,OAAA,EAAfA,EAAiBv1C,MACxB,IAAI,IAAAy1C,EAAAC,EACA,MAEMxkC,EAA+D,QAAxDukC,EAA2C,QAA3CC,GAFE,IAAIC,WACAC,gBAAgBvhB,EAAO1U,SAAS3f,KAAM,YACrC61C,qBAAqB,aAAa,UAAE,IAAAH,OAAA,EAAxCA,EAA0CI,mBAAW,IAAAL,EAAAA,EAAI,GACzE,GAAuB,KAAnBvkC,EAAQlY,OAGR,YADA8mB,EAAAA,GAAAA,KAAUvB,EAAAA,GAAAA,IAAE,QAAS,iCAAkC,CAAErN,YAGjE,CACA,MAAOC,GACH0O,GAAO1O,MAAM,0BAA2B,CAAEA,SAC9C,CAGW,IAAX0gB,GAIJ/R,EAAAA,GAAAA,KAAUvB,EAAAA,GAAAA,IAAE,QAAS,iCAHjBuB,EAAAA,GAAAA,KAAUvB,EAAAA,GAAAA,IAAE,QAAS,4CAA6C,CAAEsT,WAnBxE,MAFI/R,EAAAA,GAAAA,KAAUvB,EAAAA,GAAAA,IAAE,QAAS,gDAJrBuB,EAAAA,GAAAA,KAAUvB,EAAAA,GAAAA,IAAE,QAAS,+CAJrBuB,EAAAA,GAAAA,KAAUvB,EAAAA,GAAAA,IAAE,QAAS,+BALrByV,EAAAA,GAAAA,KAAYzV,EAAAA,GAAAA,IAAE,QAAS,gCAsC/B,EAMAoM,aAAAA,CAAcjC,GAAM,IAAAqtB,GACZrtB,aAAI,EAAJA,EAAMG,WAA6B,QAAvBktB,EAAK,KAAK1N,qBAAa,IAAA0N,OAAA,EAAlBA,EAAoBltB,SACrC,KAAK2rB,cAEb,EAIAD,WAAAA,GAEI,KAAKrD,SAASp0B,QAEd,KAAKi0B,WAAa,EACtB,EACAiF,kBAAAA,GAAqB,IAAA7tB,EACZ,KAAKkgB,eAIA,QAAVlgB,EAAI/d,cAAM,IAAA+d,GAAK,QAALA,EAANA,EAAQ5F,WAAG,IAAA4F,GAAO,QAAPA,EAAXA,EAAa3F,aAAK,IAAA2F,GAAS,QAATA,EAAlBA,EAAoBtB,eAAO,IAAAsB,GAA3BA,EAA6B8tB,cAC7B7rC,OAAOmY,IAAIC,MAAMqE,QAAQovB,aAAa,WAE1C7Z,GAAcpkC,KAAK,KAAKqwC,cAAe,KAAKhkB,YAAa,KAAKgkB,cAAcxqC,OANxEgiB,GAAO2G,MAAM,sDAOrB,EACA0vB,cAAAA,GACI,KAAK/0B,gBAAgBI,OAAO,aAAc,KAAKX,WAAWK,UAC9D,K,gB+I5eJ,GAAU,CAAC,EAEf,GAAQjB,kBAAoB,KAC5B,GAAQC,cAAgB,KAElB,GAAQC,OAAS,UAAc,KAAM,QAE3C,GAAQC,OAAS,KACjB,GAAQC,mBAAqB,KAEhB,KAAI,KAAS,IAKJ,MAAW,KAAQC,QAAS,KAAQA,OCP1D,UAXgB,QACd,IhJTW,WAAiB,IAAA6nB,EAAAiO,EAAKn7B,EAAIppB,KAAKqpB,EAAGD,EAAIE,MAAMD,GAAgC,OAAtBD,EAAIE,MAAMsM,YAAmBvM,EAAG,eAAe,CAAChZ,MAAM,CAAC,eAAe+Y,EAAIu2B,YAAY,wBAAwB,KAAK,CAACt2B,EAAG,MAAM,CAACG,YAAY,sBAAsB,CAACH,EAAG,cAAc,CAAChZ,MAAM,CAAC,KAAO+Y,EAAIqM,KAAK9yB,GAAG,CAAC,OAASymB,EAAIw5B,cAAc3wB,YAAY7I,EAAI8I,GAAG,CAAC,CAACttB,IAAI,UAAU/E,GAAG,WAAW,MAAO,CAAEupB,EAAIq5B,UAAYr5B,EAAI8Z,gBAAkB,IAAK7Z,EAAG,WAAW,CAACG,YAAY,kCAAkCzS,MAAM,CAAE,0CAA2CqS,EAAIi5B,iBAAkBhyC,MAAM,CAAC,aAAa+Y,EAAIg5B,iBAAiB,MAAQh5B,EAAIg5B,iBAAiB,KAAO,YAAYz/C,GAAG,CAAC,MAAQymB,EAAIg7B,oBAAoBnyB,YAAY7I,EAAI8I,GAAG,CAAC,CAACttB,IAAI,OAAO/E,GAAG,WAAW,MAAO,CAAEupB,EAAIi5B,kBAAoBj5B,EAAI81B,KAAKlL,gBAAiB3qB,EAAG,YAAYA,EAAG,kBAAkB,CAAChZ,MAAM,CAAC,KAAO,MAAM,EAAE8hB,OAAM,IAAO,MAAK,EAAM,cAAc/I,EAAIU,KAAKV,EAAIQ,GAAG,MAAOR,EAAIo0B,WAAap0B,EAAIq0B,gBAAiBp0B,EAAG,WAAW,CAACG,YAAY,6CAA6CnZ,MAAM,CAAC,aAAa+Y,EAAIs0B,gBAAgB,MAAQt0B,EAAIs0B,gBAAgB,UAAW,EAAK,KAAO,aAAazrB,YAAY7I,EAAI8I,GAAG,CAAC,CAACttB,IAAI,OAAO/E,GAAG,WAAW,MAAO,CAACwpB,EAAG,WAAW,CAAChZ,MAAM,CAAC,KAAO,MAAM,EAAE8hB,OAAM,IAAO,MAAK,EAAM,aAAa,CAAC/I,EAAIQ,GAAG,eAAeR,EAAIS,GAAGT,EAAIuD,EAAE,QAAS,QAAQ,gBAAiBvD,EAAIqtB,cAAeptB,EAAG,eAAe,CAACG,YAAY,mCAAmCnZ,MAAM,CAAC,gBAAgB,GAAG,QAAU+Y,EAAIo2B,WAAW,YAAcp2B,EAAIqtB,cAAc,uBAAuBrtB,EAAI2lB,oBAAoB,SAAW,IAAIpsC,GAAG,CAAC,OAASymB,EAAIs6B,aAAa,SAAWt6B,EAAIq6B,YAAYr6B,EAAIU,KAAK,EAAEqI,OAAM,OAAU/I,EAAIQ,GAAG,KAAMR,EAAI8Z,gBAAkB,KAAO9Z,EAAIiI,eAAgBhI,EAAG,WAAW,CAACG,YAAY,iCAAiCnZ,MAAM,CAAC,aAAa+Y,EAAIm5B,oBAAoB,MAAQn5B,EAAIm5B,oBAAoB,KAAO,YAAY5/C,GAAG,CAAC,MAAQymB,EAAIk7B,gBAAgBryB,YAAY7I,EAAI8I,GAAG,CAAC,CAACttB,IAAI,OAAO/E,GAAG,WAAW,MAAO,CAAEupB,EAAI4F,WAAWK,UAAWhG,EAAG,gBAAgBA,EAAG,gBAAgB,EAAE8I,OAAM,IAAO,MAAK,EAAM,cAAc/I,EAAIU,KAAKV,EAAIQ,GAAG,KAAMR,EAAI24B,aAAc14B,EAAG,gBAAgB,CAACG,YAAY,6BAA6BJ,EAAIU,MAAM,GAAGV,EAAIQ,GAAG,MAAOR,EAAI6e,SAAW7e,EAAIo0B,UAAWn0B,EAAG,oBAAoB,CAAChZ,MAAM,CAAC,iBAAiB+Y,EAAIqtB,iBAAiBrtB,EAAIU,KAAKV,EAAIQ,GAAG,KAAMR,EAAI6e,UAAY7e,EAAI24B,aAAc14B,EAAG,gBAAgB,CAACG,YAAY,2BAA2BnZ,MAAM,CAAC,KAAO,GAAG,KAAO+Y,EAAIuD,EAAE,QAAS,8BAA+BvD,EAAI6e,SAAW7e,EAAI04B,WAAYz4B,EAAG,iBAAiB,CAAChZ,MAAM,CAAC,MAAsB,QAAfimC,EAAAltB,EAAIqJ,mBAAW,IAAA6jB,OAAA,EAAfA,EAAiBkO,aAAcp7B,EAAIuD,EAAE,QAAS,oBAAoB,aAA6B,QAAf43B,EAAAn7B,EAAIqJ,mBAAW,IAAA8xB,OAAA,EAAfA,EAAiBE,eAAgBr7B,EAAIuD,EAAE,QAAS,kDAAkD,8BAA8B,IAAIsF,YAAY7I,EAAI8I,GAAG,CAAc,MAAZ9I,EAAIqM,IAAa,CAAC7wB,IAAI,SAAS/E,GAAG,WAAW,MAAO,CAAEupB,EAAIqtB,eAAiBrtB,EAAIo0B,YAAcp0B,EAAIq0B,gBAAiBp0B,EAAG,eAAe,CAACG,YAAY,mCAAmCnZ,MAAM,CAAC,gBAAgB,GAAG,QAAU+Y,EAAIo2B,WAAW,YAAcp2B,EAAIqtB,cAAc,uBAAuBrtB,EAAI2lB,oBAAoB,SAAW,IAAIpsC,GAAG,CAAC,OAASymB,EAAIs6B,aAAa,SAAWt6B,EAAIq6B,YAAYp6B,EAAG,WAAW,CAAChZ,MAAM,CAAC,aAAa+Y,EAAIuD,EAAE,QAAS,6BAA6B,GAAKvD,EAAI44B,cAAc,KAAO,YAAY,CAAC54B,EAAIQ,GAAG,aAAaR,EAAIS,GAAGT,EAAIuD,EAAE,QAAS,YAAY,cAAc,EAAEwF,OAAM,GAAM,KAAK,CAACvtB,IAAI,OAAO/E,GAAG,WAAW,MAAO,CAACwpB,EAAG,mBAAmB,CAAChZ,MAAM,CAAC,IAAM+Y,EAAIqJ,YAAYsD,QAAQ,EAAE5D,OAAM,IAAO,MAAK,KAAQ9I,EAAG,mBAAmB,CAAC1c,IAAI,mBAAmB0D,MAAM,CAAC,iBAAiB+Y,EAAIqtB,cAAc,eAAertB,EAAIqJ,YAAY,MAAQrJ,EAAI+2B,sBAAsB,EAC5gH,GACsB,IgJUpB,EACA,KACA,WACA,MAI8B,QCnB+M,IrLIhO1sB,EAAAA,EAAAA,IAAgB,CAC3BzyB,KAAM,WACNwC,WAAY,CACRkhD,UAAS,KACTC,UAAS,GACTC,WAAUA,MsLSlB,IAXgB,QACd,ItLRW,WAAkB,IAAIx7B,EAAIppB,KAAKqpB,EAAGD,EAAIE,MAAMD,GAAgC,OAAtBD,EAAIE,MAAMsM,YAAmBvM,EAAG,YAAY,CAAChZ,MAAM,CAAC,WAAW,UAAU,CAACgZ,EAAG,cAAcD,EAAIQ,GAAG,KAAKP,EAAG,cAAc,EAC3L,GACsB,IsLSpB,EACA,KACA,KACA,MAI8B,Q,UCHhCw7B,EAAAA,GAAoBC,MAAKC,EAAAA,EAAAA,OAEzBvsC,OAAOmY,IAAIC,MAAwB,QAAnBo0B,GAAGxsC,OAAOmY,IAAIC,aAAK,IAAAo0B,GAAAA,GAAI,CAAC,EACxCxsC,OAAOue,IAAInG,MAAwB,QAAnBq0B,GAAGzsC,OAAOue,IAAInG,aAAK,IAAAq0B,GAAAA,GAAI,CAAC,EAExC,MAAMr8B,GAAS,ICpBA,MAEXrE,WAAAA,CAAY3Y,I,kZAAQmvB,CAAA,uBAChB/6B,KAAK+nB,QAAUnc,CACnB,CACA,QAAI5K,GACA,OAAOhB,KAAK+nB,QAAQ7N,aAAalZ,IACrC,CACA,SAAI0G,GACA,OAAO1H,KAAK+nB,QAAQ7N,aAAaxS,OAAS,CAAC,CAC/C,CACA,UAAIwE,GACA,OAAOlM,KAAK+nB,QAAQ7N,aAAahO,QAAU,CAAC,CAChD,CAQAg5C,IAAAA,CAAKj5C,GAAuB,IAAjB1F,EAAOjE,UAAAZ,OAAA,QAAAc,IAAAF,UAAA,IAAAA,UAAA,GACd,OAAOtC,KAAK+nB,QAAQvnB,KAAK,CACrByL,OACA1F,WAER,CAUAywB,SAAAA,CAAUh2B,EAAMkL,EAAQxE,EAAOnB,GAC3B,OAAOvG,KAAK+nB,QAAQvnB,KAAK,CACrBQ,OACA0G,QACAwE,SACA3F,WAER,GDvB6BqF,IACjCrM,OAAO4lD,OAAO3sC,OAAOue,IAAInG,MAAO,CAAEhI,YAElCtB,EAAAA,GAAIqB,IAAIy8B,EAAAA,IAGR,MAAMR,GAAat9B,EAAAA,GAAI+9B,YAAW/yB,EAAAA,EAAAA,OAClChL,EAAAA,GAAI9nB,UAAU01B,YAAc0vB,GAE5B,MAAM/zB,GAAW,IExBF,MAIdtM,WAAAA,I,kZAAcwW,CAAA,yBACb/6B,KAAKslD,UAAY,GACjBjjC,GAAQuS,MAAM,iCACf,CASA2wB,QAAAA,CAASx8B,GACR,OAAI/oB,KAAKslD,UAAUh8C,QAAOwC,GAAKA,EAAE9K,OAAS+nB,EAAK/nB,OAAMU,OAAS,GAC7D2gB,GAAQ9C,MAAM,uDACP,IAERvf,KAAKslD,UAAU9kD,KAAKuoB,IACb,EACR,CAOA,YAAI2H,GACH,OAAO1wB,KAAKslD,SACb,GFPD/lD,OAAO4lD,OAAO3sC,OAAOmY,IAAIC,MAAO,CAAEC,SAAQA,KAC1CtxB,OAAO4lD,OAAO3sC,OAAOmY,IAAIC,MAAMC,SAAU,CAAET,QG1B5B,MAiBd7L,WAAAA,CAAYvjB,EAAImpB,GAAuB,IAArB,GAAErM,EAAE,KAAEuS,EAAI,MAAEmB,GAAOrH,EAAA4Q,GAAA,sBAAAA,GAAA,mBAAAA,GAAA,qBAAAA,GAAA,qBACpC/6B,KAAKwlD,MAAQxkD,EACbhB,KAAKylD,IAAM3nC,EACX9d,KAAK0lD,MAAQr1B,EACbrwB,KAAK2lD,OAASn0B,EAEY,mBAAfxxB,KAAK0lD,QACf1lD,KAAK0lD,MAAQ,QAGa,mBAAhB1lD,KAAK2lD,SACf3lD,KAAK2lD,OAAS,OAEhB,CAEA,QAAI3kD,GACH,OAAOhB,KAAKwlD,KACb,CAEA,MAAI1nC,GACH,OAAO9d,KAAKylD,GACb,CAEA,QAAIp1B,GACH,OAAOrwB,KAAK0lD,KACb,CAEA,SAAIl0B,GACH,OAAOxxB,KAAK2lD,MACb,KHlBD,IADoBr+B,EAAAA,GAAIld,OAAOw7C,IAC/B,CAAgB,CACZh6C,OAAM,GACN3I,MAAKA,IACNgoC,OAAO,W,mFIjCN4a,E,MAA0B,GAA4B,KAE1DA,EAAwBrlD,KAAK,CAACuC,EAAO0xB,GAAI,6yBAqCrC,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,6EAA6E,MAAQ,GAAG,SAAW,4TAA4T,eAAiB,CAAC,8yBAA8yB,WAAa,MAE3wC,S,mFCzCIoxB,E,MAA0B,GAA4B,KAE1DA,EAAwBrlD,KAAK,CAACuC,EAAO0xB,GAAI,kUAAmU,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,yDAAyD,MAAQ,GAAG,SAAW,yGAAyG,eAAiB,CAAC,0WAA0W,WAAa,MAEx8B,S,mFCJIoxB,E,MAA0B,GAA4B,KAE1DA,EAAwBrlD,KAAK,CAACuC,EAAO0xB,GAAI,+jBAAgkB,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,+DAA+D,MAAQ,GAAG,SAAW,wOAAwO,eAAiB,CAAC,sqBAAsqB,WAAa,MAEtoD,S,mFCJIoxB,E,MAA0B,GAA4B,KAE1DA,EAAwBrlD,KAAK,CAACuC,EAAO0xB,GAAI,omCAAqmC,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,gEAAgE,MAAQ,GAAG,SAAW,gYAAgY,eAAiB,CAAC,23CAA23C,WAAa,MAEzhG,S,kFCJIoxB,E,MAA0B,GAA4B,KAE1DA,EAAwBrlD,KAAK,CAACuC,EAAO0xB,GAAI,4ZAA6Z,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,oEAAoE,MAAQ,GAAG,SAAW,6IAA6I,eAAiB,CAAC,2tBAA2tB,WAAa,MAEl8C,S,mFCJIoxB,E,MAA0B,GAA4B,KAE1DA,EAAwBrlD,KAAK,CAACuC,EAAO0xB,GAAI,2ZAA4Z,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,wEAAwE,MAAQ,GAAG,SAAW,oDAAoD,eAAiB,CAAC,kkBAAskB,WAAa,MAEvtC,S,mFCJIoxB,E,MAA0B,GAA4B,KAE1DA,EAAwBrlD,KAAK,CAACuC,EAAO0xB,GAAI,uMAAwM,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,wEAAwE,MAAQ,GAAG,SAAW,oCAAoC,eAAiB,CAAC,kOAAkO,WAAa,MAE/oB,S,kFCJIoxB,E,MAA0B,GAA4B,KAE1DA,EAAwBrlD,KAAK,CAACuC,EAAO0xB,GAAI,mPAAoP,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,kEAAkE,MAAQ,GAAG,SAAW,gFAAgF,eAAiB,CAAC,8XAA8X,WAAa,MAE73B,S,mFCJIoxB,E,MAA0B,GAA4B,KAE1DA,EAAwBrlD,KAAK,CAACuC,EAAO0xB,GAAI,sKAAuK,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,kEAAkE,MAAQ,GAAG,SAAW,8CAA8C,eAAiB,CAAC,wNAAwN,WAAa,MAExmB,S,mFCJIoxB,E,MAA0B,GAA4B,KAE1DA,EAAwBrlD,KAAK,CAACuC,EAAO0xB,GAAI,2FAA4F,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,yEAAyE,MAAQ,GAAG,SAAW,6BAA6B,eAAiB,CAAC,6FAA6F,WAAa,MAExZ,S,iFCJIoxB,E,MAA0B,GAA4B,KAE1DA,EAAwBrlD,KAAK,CAACuC,EAAO0xB,GAAI,q5BAAs5B,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,wEAAwE,MAAQ,GAAG,SAAW,4IAA4I,eAAiB,CAAC,ilBAAilB,WAAa,MAEpzD,S,mFCJIoxB,E,MAA0B,GAA4B,KAE1DA,EAAwBrlD,KAAK,CAACuC,EAAO0xB,GAAI,m0PAAo0P,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,8DAA8D,MAAQ,GAAG,SAAW,w6DAAw6D,eAAiB,CAAC,mtSAAmtS,WAAa,MAEtnmB,S,mFCJIoxB,E,MAA0B,GAA4B,KAE1DA,EAAwBrlD,KAAK,CAACuC,EAAO0xB,GAAI,y2DAA02D,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,8DAA8D,MAAQ,GAAG,SAAW,0kBAA0kB,eAAiB,CAAC,6nEAA6nE,WAAa,MAExuJ,S,mFCJIoxB,E,MAA0B,GAA4B,KAE1DA,EAAwBrlD,KAAK,CAACuC,EAAO0xB,GAAI,mQAAoQ,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,6DAA6D,MAAQ,GAAG,SAAW,mEAAmE,eAAiB,CAAC,+UAA+U,WAAa,MAE50B,S,mFCJIoxB,E,MAA0B,GAA4B,KAE1DA,EAAwBrlD,KAAK,CAACuC,EAAO0xB,GAAI,0wBAA2wB,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,kDAAkD,MAAQ,GAAG,SAAW,uOAAuO,eAAiB,CAAC,8gCAA8gC,WAAa,MAE3qE,S,mFCJIoxB,E,MAA0B,GAA4B,KAE1DA,EAAwBrlD,KAAK,CAACuC,EAAO0xB,GAAI,sfAAuf,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,mDAAmD,MAAQ,GAAG,SAAW,iHAAiH,eAAiB,CAAC,mrBAAmrB,WAAa,MAEv8C,S,kFCJIoxB,E,MAA0B,GAA4B,KAE1DA,EAAwBrlD,KAAK,CAACuC,EAAO0xB,GAAI,kEAAmE,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,iDAAiD,MAAQ,GAAG,SAAW,mBAAmB,eAAiB,CAAC,+DAA+D,WAAa,MAE/T,S,yBCLA,MAAMqxB,EAAW,IAAI1rB,IAAI,CACxB,YACA,cAGA,4BACA,oBACA,mCACA,kCACA,qCACA,yBACA,wBACA,qBACA,mBACA,oBACA,kBACA,iCACA,gCACA,iCACA,iCACA,aACA,8BACA,4BACA,oCACA,kCACA,sBACA,eACA,aACA,uBACA,kBACA,iBACA,gBACA,sBAIDr3B,EAAOC,QAAUuc,IAAUumC,EAASxmD,IAAIigB,GAASA,EAAMwmC,K,YCnBvD,SAAS3kC,EAAc5b,EAAWwgD,GAChC,OAAO,MAACxgD,EAAiCwgD,EAAIxgD,CAC/C,CA8EAzC,EAAOC,QA5EP,SAAiBgD,GAEf,IAbyBigD,EAarBzjC,EAAMpB,GADVpb,EAAUA,GAAW,CAAC,GACAwc,IAAK,GACvBoM,EAAMxN,EAAIpb,EAAQ4oB,IAAK,GACvBs3B,EAAY9kC,EAAIpb,EAAQkgD,WAAW,GACnCC,EAAqB/kC,EAAIpb,EAAQmgD,oBAAoB,GAErDC,EAA2B,KAC3BC,EAAoC,KACpCC,EAAmC,KAEnCh9C,GAtBqB28C,EAsBM7kC,EAAIpb,EAAQugD,oBAAqB,KArBzD,SAAUC,EAAgBziD,EAAO0iD,GAEtC,OAAOD,EADOC,GAAMA,EAAKR,IACQliD,EAAQyiD,EAC3C,GAoBA,SAAS7jB,IACP+jB,EAAO93B,EACT,CAWA,SAAS83B,EAAOC,EAAwBC,GAKtC,GAJyB,iBAAdA,IACTA,EAAY1rC,KAAKD,OAGforC,IAAkBO,KAClBT,GAAsBG,IAAiBK,GAA3C,CAEA,GAAsB,OAAlBN,GAA2C,OAAjBC,EAG5B,OAFAA,EAAeK,OACfN,EAAgBO,GAIlB,IACIC,EAAiB,MAASD,EAAYP,GACtCS,GAFgBH,EAAWL,GAEGO,EAElCT,EAAgB,OAATA,EACHU,EACAx9C,EAAO88C,EAAMU,EAAaD,GAC9BP,EAAeK,EACfN,EAAgBO,CAhB+C,CAiBjE,CAkBA,MAAO,CACLjkB,MAAOA,EACPrI,MApDF,WACE8rB,EAAO,KACPC,EAAgB,KAChBC,EAAe,KACXJ,GACFvjB,GAEJ,EA8CE+jB,OAAQA,EACRK,SApBF,SAAkBH,GAChB,GAAqB,OAAjBN,EAAyB,OAAOU,IACpC,GAAIV,GAAgB9jC,EAAO,OAAO,EAClC,GAAa,OAAT4jC,EAAiB,OAAOY,IAE5B,IAAIC,GAAiBzkC,EAAM8jC,GAAgBF,EAI3C,MAHyB,iBAAdQ,GAAmD,iBAAlBP,IAC1CY,GAA+C,MAA7BL,EAAYP,IAEzB5jC,KAAKD,IAAI,EAAGykC,EACrB,EAWEb,KATF,WACE,OAAgB,OAATA,EAAgB,EAAIA,CAC7B,EASF,C,wQCtFIpgD,EAAU,CAAC,EAEfA,EAAQooB,kBAAoB,IAC5BpoB,EAAQqoB,cAAgB,IAElBroB,EAAQsoB,OAAS,SAAc,KAAM,QAE3CtoB,EAAQuoB,OAAS,IACjBvoB,EAAQwoB,mBAAqB,IAEhB,IAAI,IAASxoB,GAKJ,KAAW,IAAQyoB,QAAS,IAAQA,O,iFC1BnD,MAAMy4B,UAAoB1nC,MAChC,WAAA+E,CAAYhB,GACXuX,MAAMvX,GAAU,wBAChBvjB,KAAKgB,KAAO,aACb,CAEA,cAAImmD,GACH,OAAO,CACR,EAGD,MAAMC,EAAe7nD,OAAOgN,OAAO,CAClCmU,QAAS7a,OAAO,WAChBwhD,SAAUxhD,OAAO,YACjBwd,SAAUxd,OAAO,YACjByhD,SAAUzhD,OAAO,cAGH,MAAM0hD,EACpB,SAAO1nD,CAAG2nD,GACT,MAAO,IAAIz8B,IAAe,IAAIw8B,GAAY,CAACxxC,EAASuN,EAAQ2a,KAC3DlT,EAAWvqB,KAAKy9B,GAChBupB,KAAgBz8B,GAAY/N,KAAKjH,EAASuN,EAAO,GAEnD,CAEA,GAAkB,GAClB,IAAkB,EAClB,GAAS8jC,EAAa1mC,QACtB,GACA,GAEA,WAAA6D,CAAYkjC,GACXznD,MAAK,EAAW,IAAI4mB,SAAQ,CAAC7Q,EAASuN,KACrCtjB,MAAK,EAAUsjB,EAEf,MAcM2a,EAAWrnB,IAChB,GAAI5W,MAAK,IAAWonD,EAAa1mC,QAChC,MAAM,IAAIlB,MAAM,2DAA2Dxf,MAAK,EAAO0nD,gBAGxF1nD,MAAK,EAAgBQ,KAAKoW,EAAQ,EAGnCrX,OAAO2nB,iBAAiB+W,EAAU,CACjC0pB,aAAc,CACbxhC,IAAK,IAAMnmB,MAAK,EAChBk6B,IAAK0tB,IACJ5nD,MAAK,EAAkB4nD,CAAO,KAKjCH,GA/BkBriD,IACbpF,MAAK,IAAWonD,EAAaC,UAAappB,EAAS0pB,eACtD5xC,EAAQ3Q,GACRpF,MAAK,EAAUonD,EAAa/jC,UAC7B,IAGgB9D,IACZvf,MAAK,IAAWonD,EAAaC,UAAappB,EAAS0pB,eACtDrkC,EAAO/D,GACPvf,MAAK,EAAUonD,EAAaE,UAC7B,GAoB6BrpB,EAAS,GAEzC,CAGA,IAAAjhB,CAAK6qC,EAAaC,GACjB,OAAO9nD,MAAK,EAASgd,KAAK6qC,EAAaC,EACxC,CAEA,MAAMA,GACL,OAAO9nD,MAAK,EAASkd,MAAM4qC,EAC5B,CAEA,QAAQC,GACP,OAAO/nD,MAAK,EAASgoD,QAAQD,EAC9B,CAEA,MAAA38B,CAAO7H,GACN,GAAIvjB,MAAK,IAAWonD,EAAa1mC,QAAjC,CAMA,GAFA1gB,MAAK,EAAUonD,EAAaC,UAExBrnD,MAAK,EAAgB0B,OAAS,EACjC,IACC,IAAK,MAAMkV,KAAW5W,MAAK,EAC1B4W,GAEF,CAAE,MAAO2I,GAER,YADAvf,MAAK,EAAQuf,EAEd,CAGGvf,MAAK,GACRA,MAAK,EAAQ,IAAIknD,EAAY3jC,GAhB9B,CAkBD,CAEA,cAAI4jC,GACH,OAAOnnD,MAAK,IAAWonD,EAAaC,QACrC,CAEA,GAAUprC,GACLjc,MAAK,IAAWonD,EAAa1mC,UAChC1gB,MAAK,EAASic,EAEhB,EAGD1c,OAAO0oD,eAAeV,EAAY/nD,UAAWonB,QAAQpnB,W,cCtH9C,MAAM0oD,UAAqB1oC,MACjC,WAAA+E,CAAYjF,GACXwb,MAAMxb,GACNtf,KAAKgB,KAAO,cACb,EAOM,MAAMmnD,UAAmB3oC,MAC/B,WAAA+E,CAAYjF,GACXwb,QACA96B,KAAKgB,KAAO,aACZhB,KAAKsf,QAAUA,CAChB,EAMD,MAAM8oC,EAAkBC,QAA4C7lD,IAA5B8lD,WAAWC,aAChD,IAAIJ,EAAWE,GACf,IAAIE,aAAaF,GAKdG,EAAmBnqB,IACxB,MAAM9a,OAA2B/gB,IAAlB67B,EAAO9a,OACnB6kC,EAAgB,+BAChB/pB,EAAO9a,OAEV,OAAOA,aAAkB/D,MAAQ+D,EAAS6kC,EAAgB7kC,EAAO,ECjCnD,MAAMklC,EACjB,GAAS,GACT,OAAAC,CAAQC,EAAK3iD,GAKT,MAAM2lC,EAAU,CACZid,UALJ5iD,EAAU,CACN4iD,SAAU,KACP5iD,IAGe4iD,SAClBD,OAEJ,GAAI3oD,KAAKmpB,MAAQnpB,MAAK,EAAOA,KAAKmpB,KAAO,GAAGy/B,UAAY5iD,EAAQ4iD,SAE5D,YADA5oD,MAAK,EAAOQ,KAAKmrC,GAGrB,MAAMziC,ECdC,SAAoB2/C,EAAOzjD,EAAO0jD,GAC7C,IAAIC,EAAQ,EACRzL,EAAQuL,EAAMnnD,OAClB,KAAO47C,EAAQ,GAAG,CACd,MAAMr9B,EAAOwC,KAAKumC,MAAM1L,EAAQ,GAChC,IAAI2L,EAAKF,EAAQ9oC,EDS+BtZ,ECRjCkiD,EAAMI,GAAK7jD,EDQiCwjD,SAAWjiD,EAAEiiD,UCRpC,GAChCG,IAAUE,EACV3L,GAASr9B,EAAO,GAGhBq9B,EAAQr9B,CAEhB,CDCmD,IAACtZ,ECApD,OAAOoiD,CACX,CDDsBG,CAAWlpD,MAAK,EAAQ2rC,GACtC3rC,MAAK,EAAOmZ,OAAOjQ,EAAO,EAAGyiC,EACjC,CACA,OAAAwd,GACI,MAAMjhD,EAAOlI,MAAK,EAAOkL,QACzB,OAAOhD,GAAMygD,GACjB,CACA,MAAAr/C,CAAOtD,GACH,OAAOhG,MAAK,EAAOsJ,QAAQqiC,GAAYA,EAAQid,WAAa5iD,EAAQ4iD,WAAU9hD,KAAK6kC,GAAYA,EAAQgd,KAC3G,CACA,QAAIx/B,GACA,OAAOnpB,MAAK,EAAO0B,MACvB,EEtBW,MAAMo7B,UAAe,EAChC,GACA,GACA,GAAiB,EACjB,GACA,GACA,GAAe,EACf,GACA,GACA,GACA,GACA,GAAW,EAEX,GACA,GACA,GAMAssB,QAEA,WAAA7kC,CAAYve,GAYR,GAXA80B,UAWqC,iBATrC90B,EAAU,CACNqjD,2BAA2B,EAC3BC,YAAaziD,OAAO0iD,kBACpBC,SAAU,EACVzsB,YAAal2B,OAAO0iD,kBACpBE,WAAW,EACXC,WAAYjB,KACTziD,IAEcsjD,aAA4BtjD,EAAQsjD,aAAe,GACpE,MAAM,IAAIlpD,UAAU,gEAAgE4F,EAAQsjD,aAAa5jD,YAAc,gBAAgBM,EAAQsjD,gBAEnJ,QAAyB9mD,IAArBwD,EAAQwjD,YAA4B3iD,OAAO8iD,SAAS3jD,EAAQwjD,WAAaxjD,EAAQwjD,UAAY,GAC7F,MAAM,IAAIppD,UAAU,2DAA2D4F,EAAQwjD,UAAU9jD,YAAc,gBAAgBM,EAAQwjD,aAE3IxpD,MAAK,EAA6BgG,EAAQqjD,0BAC1CrpD,MAAK,EAAqBgG,EAAQsjD,cAAgBziD,OAAO0iD,mBAA0C,IAArBvjD,EAAQwjD,SACtFxpD,MAAK,EAAegG,EAAQsjD,YAC5BtpD,MAAK,EAAYgG,EAAQwjD,SACzBxpD,MAAK,EAAS,IAAIgG,EAAQ0jD,WAC1B1pD,MAAK,EAAcgG,EAAQ0jD,WAC3B1pD,KAAK+8B,YAAc/2B,EAAQ+2B,YAC3B/8B,KAAKopD,QAAUpjD,EAAQojD,QACvBppD,MAAK,GAA6C,IAA3BgG,EAAQ4jD,eAC/B5pD,MAAK,GAAkC,IAAtBgG,EAAQyjD,SAC7B,CACA,KAAI,GACA,OAAOzpD,MAAK,GAAsBA,MAAK,EAAiBA,MAAK,CACjE,CACA,KAAI,GACA,OAAOA,MAAK,EAAWA,MAAK,CAChC,CACA,KACIA,MAAK,IACLA,MAAK,IACLA,KAAK8B,KAAK,OACd,CACA,KACI9B,MAAK,IACLA,MAAK,IACLA,MAAK,OAAawC,CACtB,CACA,KAAI,GACA,MAAMyY,EAAMC,KAAKD,MACjB,QAAyBzY,IAArBxC,MAAK,EAA2B,CAChC,MAAMgqB,EAAQhqB,MAAK,EAAeib,EAClC,KAAI+O,EAAQ,GAYR,YALwBxnB,IAApBxC,MAAK,IACLA,MAAK,EAAamrB,YAAW,KACzBnrB,MAAK,GAAmB,GACzBgqB,KAEA,EATPhqB,MAAK,EAAkBA,MAA+B,EAAIA,MAAK,EAAW,CAWlF,CACA,OAAO,CACX,CACA,KACI,GAAyB,IAArBA,MAAK,EAAOmpB,KAWZ,OARInpB,MAAK,GACL6pD,cAAc7pD,MAAK,GAEvBA,MAAK,OAAcwC,EACnBxC,KAAK8B,KAAK,SACY,IAAlB9B,MAAK,GACLA,KAAK8B,KAAK,SAEP,EAEX,IAAK9B,MAAK,EAAW,CACjB,MAAM8pD,GAAyB9pD,MAAK,EACpC,GAAIA,MAAK,GAA6BA,MAAK,EAA6B,CACpE,MAAM+pD,EAAM/pD,MAAK,EAAOmpD,UACxB,QAAKY,IAGL/pD,KAAK8B,KAAK,UACVioD,IACID,GACA9pD,MAAK,KAEF,EACX,CACJ,CACA,OAAO,CACX,CACA,KACQA,MAAK,QAA2CwC,IAArBxC,MAAK,IAGpCA,MAAK,EAAc8sB,aAAY,KAC3B9sB,MAAK,GAAa,GACnBA,MAAK,GACRA,MAAK,EAAekb,KAAKD,MAAQjb,MAAK,EAC1C,CACA,KACgC,IAAxBA,MAAK,GAA0C,IAAlBA,MAAK,GAAkBA,MAAK,IACzD6pD,cAAc7pD,MAAK,GACnBA,MAAK,OAAcwC,GAEvBxC,MAAK,EAAiBA,MAAK,EAA6BA,MAAK,EAAW,EACxEA,MAAK,GACT,CAIA,KAEI,KAAOA,MAAK,MAChB,CACA,eAAI+8B,GACA,OAAO/8B,MAAK,CAChB,CACA,eAAI+8B,CAAYitB,GACZ,KAAgC,iBAAnBA,GAA+BA,GAAkB,GAC1D,MAAM,IAAI5pD,UAAU,gEAAgE4pD,eAA4BA,MAEpHhqD,MAAK,EAAegqD,EACpBhqD,MAAK,GACT,CACA,OAAM,CAAcq+B,GAChB,OAAO,IAAIzX,SAAQ,CAACqjC,EAAU3mC,KAC1B+a,EAAOliB,iBAAiB,SAAS,KAC7BmH,EAAO+a,EAAO9a,OAAO,GACtB,CAAExjB,MAAM,GAAO,GAE1B,CACA,SAAMk/B,CAAIirB,EAAWlkD,EAAU,CAAC,GAM5B,OALAA,EAAU,CACNojD,QAASppD,KAAKopD,QACdQ,eAAgB5pD,MAAK,KAClBgG,GAEA,IAAI4gB,SAAQ,CAAC7Q,EAASuN,KACzBtjB,MAAK,EAAO0oD,SAAQrxB,UAChBr3B,MAAK,IACLA,MAAK,IACL,IACIgG,EAAQq4B,QAAQ8rB,iBAChB,IAAIC,EAAYF,EAAU,CAAE7rB,OAAQr4B,EAAQq4B,SACxCr4B,EAAQojD,UACRgB,EHhJT,SAAkBhL,EAASp5C,GACzC,MAAM,aACLqkD,EAAY,SACZjlC,EAAQ,QACR9F,EAAO,aACPgrC,EAAe,CAACn/B,WAAYP,eACzB5kB,EAEJ,IAAIukD,EAEJ,MA0DMC,EA1DiB,IAAI5jC,SAAQ,CAAC7Q,EAASuN,KAC5C,GAA4B,iBAAjB+mC,GAAyD,IAA5B5nC,KAAKgoC,KAAKJ,GACjD,MAAM,IAAIjqD,UAAU,4DAA4DiqD,OAGjF,GAAIrkD,EAAQq4B,OAAQ,CACnB,MAAM,OAACA,GAAUr4B,EACbq4B,EAAOpf,SACVqE,EAAOklC,EAAiBnqB,IAGzBA,EAAOliB,iBAAiB,SAAS,KAChCmH,EAAOklC,EAAiBnqB,GAAQ,GAElC,CAEA,GAAIgsB,IAAiBxjD,OAAO0iD,kBAE3B,YADAnK,EAAQpiC,KAAKjH,EAASuN,GAKvB,MAAMonC,EAAe,IAAIxC,EAEzBqC,EAAQD,EAAan/B,WAAWjqB,UAAKsB,GAAW,KAC/C,GAAI4iB,EACH,IACCrP,EAAQqP,IACT,CAAE,MAAO7F,GACR+D,EAAO/D,EACR,KAK6B,mBAAnB6/B,EAAQh0B,QAClBg0B,EAAQh0B,UAGO,IAAZ9L,EACHvJ,IACUuJ,aAAmBE,MAC7B8D,EAAOhE,IAEPorC,EAAaprC,QAAUA,GAAW,2BAA2B+qC,iBAC7D/mC,EAAOonC,GACR,GACEL,GAEH,WACC,IACCt0C,QAAcqpC,EACf,CAAE,MAAO7/B,GACR+D,EAAO/D,EACR,CACA,EAND,EAMI,IAGoCyoC,SAAQ,KAChDwC,EAAkBt/B,OAAO,IAQ1B,OALAs/B,EAAkBt/B,MAAQ,KACzBo/B,EAAa1/B,aAAa1pB,UAAKsB,EAAW+nD,GAC1CA,OAAQ/nD,CAAS,EAGXgoD,CACR,CGkEoCG,CAAS/jC,QAAQ7Q,QAAQq0C,GAAY,CAAEC,aAAcrkD,EAAQojD,WAEzEpjD,EAAQq4B,SACR+rB,EAAYxjC,QAAQgkC,KAAK,CAACR,EAAWpqD,MAAK,EAAcgG,EAAQq4B,WAEpE,MAAM35B,QAAe0lD,EACrBr0C,EAAQrR,GACR1E,KAAK8B,KAAK,YAAa4C,EAC3B,CACA,MAAO6a,GACH,GAAIA,aAAiB2oC,IAAiBliD,EAAQ4jD,eAE1C,YADA7zC,IAGJuN,EAAO/D,GACPvf,KAAK8B,KAAK,QAASyd,EACvB,CACA,QACIvf,MAAK,GACT,IACDgG,GACHhG,KAAK8B,KAAK,OACV9B,MAAK,GAAoB,GAEjC,CACA,YAAM6qD,CAAOC,EAAW9kD,GACpB,OAAO4gB,QAAQoS,IAAI8xB,EAAUhkD,KAAIuwB,MAAO6yB,GAAclqD,KAAKi/B,IAAIirB,EAAWlkD,KAC9E,CAIA,KAAA28B,GACI,OAAK3iC,MAAK,GAGVA,MAAK,GAAY,EACjBA,MAAK,IACEA,MAJIA,IAKf,CAIA,KAAA0iC,GACI1iC,MAAK,GAAY,CACrB,CAIA,KAAAkrB,GACIlrB,MAAK,EAAS,IAAIA,MAAK,CAC3B,CAMA,aAAM+qD,GAEuB,IAArB/qD,MAAK,EAAOmpB,YAGVnpB,MAAK,EAAS,QACxB,CAQA,oBAAMgrD,CAAeC,GAEbjrD,MAAK,EAAOmpB,KAAO8hC,SAGjBjrD,MAAK,EAAS,QAAQ,IAAMA,MAAK,EAAOmpB,KAAO8hC,GACzD,CAMA,YAAMC,GAEoB,IAAlBlrD,MAAK,GAAuC,IAArBA,MAAK,EAAOmpB,YAGjCnpB,MAAK,EAAS,OACxB,CACA,OAAM,CAASG,EAAOmJ,GAClB,OAAO,IAAIsd,SAAQ7Q,IACf,MAAM1V,EAAW,KACTiJ,IAAWA,MAGftJ,KAAK6C,IAAI1C,EAAOE,GAChB0V,IAAS,EAEb/V,KAAK2C,GAAGxC,EAAOE,EAAS,GAEhC,CAIA,QAAI8oB,GACA,OAAOnpB,MAAK,EAAOmpB,IACvB,CAMA,MAAAgiC,CAAOnlD,GAEH,OAAOhG,MAAK,EAAOsJ,OAAOtD,GAAStE,MACvC,CAIA,WAAIgf,GACA,OAAO1gB,MAAK,CAChB,CAIA,YAAIorD,GACA,OAAOprD,MAAK,CAChB,E,0BCnTG,MAAMqrD,EAAY,cAClB,SAASC,EAAe/rC,GAE3B,OAAIA,EAAMwO,YAGLxO,EAAMwmC,OAJe,CAAC,eAAgB,gBAQrBh+C,SAASwX,EAAMwmC,OAI9B,EAAexmC,EAC1B,CACA,MAAMgsC,EAAoB,CAAC,MAAO,OAAQ,WACpCC,EAA0BD,EAAkBlqD,OAAO,CAAC,MAAO,WAC1D,SAASoqD,EAAiBlsC,GAC7B,MAAuB,iBAAfA,EAAMwmC,QACRxmC,EAAMwO,UACsB,MAA1BxO,EAAMwO,SAASkS,QACd1gB,EAAMwO,SAASkS,QAAU,KAAO1gB,EAAMwO,SAASkS,QAAU,IACtE,CAQO,SAASyrB,EAAyBnsC,GACrC,QAAKA,EAAMpP,QAAQ0uB,QAIZ4sB,EAAiBlsC,KAAoE,IAA1DisC,EAAwBlnD,QAAQib,EAAMpP,OAAO0uB,OACnF,CACO,SAAS8sB,EAAkCpsC,GAC9C,OAAO+rC,EAAe/rC,IAAUmsC,EAAyBnsC,EAC7D,CACO,SAASqsC,EAAWrsC,OAAQ/c,GAC/B,MAAMqpD,EAAmBtsC,GAAOwO,UAAUwjB,QAAQ,eAClD,IAAKsa,EACD,OAAO,EAGX,IAAIC,EAAiD,KAAjCjlD,OAAOglD,IAAqB,GAKhD,OAHqB,IAAjBC,IACAA,GAAgB,IAAI5wC,KAAK2wC,GAAkBE,WAAa,GAAK7wC,KAAKD,OAE/DwH,KAAKD,IAAI,EAAGspC,EACvB,CAUO,MAAME,EAAkB,CAC3BC,QAAS,EACTC,eAAgBP,EAChBQ,WAZJ,SAAiBC,EAAe,EAAG7sC,OAAQ/c,GACvC,OAAOigB,KAAKD,IAAI,EAAGopC,EAAWrsC,GAClC,EAWI8sC,oBAAoB,EACpBC,QAAS,OACTC,wBAAyB,OACzBC,iBAAkB,MAKtB,SAASC,EAAgBt8C,EAAQu8C,GAC7B,MAAMC,EAJV,SAA2Bx8C,EAAQu8C,GAC/B,MAAO,IAAKV,KAAoBU,KAAmBv8C,EAAOk7C,GAC9D,CAEyBuB,CAAkBz8C,EAAQu8C,GAAkB,CAAC,GAIlE,OAHAC,EAAaE,WAAaF,EAAaE,YAAc,EACrDF,EAAaG,gBAAkBH,EAAaG,iBAAmB5xC,KAAKD,MACpE9K,EAAOk7C,GAAasB,EACbA,CACX,CAsEA,MAAMI,EAAa,CAACC,EAAeN,KAC/B,MAAMO,EAAuBD,EAAcE,aAAaC,QAAQxkC,KAAKxY,IACjEs8C,EAAgBt8C,EAAQu8C,GACpBv8C,EAAOk7C,IAAYmB,mBAEnBr8C,EAAOi9C,eAAiB,KAAM,GAE3Bj9C,KAELk9C,EAAwBL,EAAcE,aAAan/B,SAASpF,IAAI,MAAM0O,MAAO9X,IAC/E,MAAM,OAAEpP,GAAWoP,EAEnB,IAAKpP,EACD,OAAOyW,QAAQtD,OAAO/D,GAE1B,MAAMotC,EAAeF,EAAgBt8C,EAAQu8C,GAC7C,OAAIntC,EAAMwO,UAAY4+B,EAAaH,mBAAmBjtC,EAAMwO,UAEjDxO,EAAMwO,eA1EzBsJ,eAA2Bs1B,EAAcptC,GACrC,MAAM,QAAE0sC,EAAO,eAAEC,GAAmBS,EAC9BW,GAAwBX,EAAaE,YAAc,GAAKZ,GAAWC,EAAe3sC,GAExF,GAAoC,iBAAzB+tC,EACP,IAGI,OAAoC,UAFGA,CAG3C,CACA,MAAOC,GACH,OAAO,CACX,CAEJ,OAAOD,CACX,CA6DkBE,CAAYb,EAAcptC,GA5D5C8X,eAA2B21B,EAAeL,EAAcptC,EAAOpP,GAC3Dw8C,EAAaE,YAAc,EAC3B,MAAM,WAAEV,EAAU,mBAAEE,EAAkB,QAAEC,GAAYK,EAC9C3iC,EAAQmiC,EAAWQ,EAAaE,WAAYttC,GAIlD,GApCJ,SAAmBytC,EAAe78C,GAE1B68C,EAAcS,SAASC,QAAUv9C,EAAOu9C,cAEjCv9C,EAAOu9C,MAEdV,EAAcS,SAASE,YAAcx9C,EAAOw9C,kBACrCx9C,EAAOw9C,UAEdX,EAAcS,SAASG,aAAez9C,EAAOy9C,mBACtCz9C,EAAOy9C,UAEtB,CAuBIC,CAAUb,EAAe78C,IACpBk8C,GAAsBl8C,EAAOi5C,SAAWuD,EAAaG,gBAAiB,CACvE,MAAMgB,EAAsB5yC,KAAKD,MAAQ0xC,EAAaG,gBAChD1D,EAAUj5C,EAAOi5C,QAAU0E,EAAsB9jC,EACvD,GAAIo/B,GAAW,EACX,OAAOxiC,QAAQtD,OAAO/D,GAE1BpP,EAAOi5C,QAAUA,CACrB,CAGA,OAFAj5C,EAAO49C,iBAAmB,CAAE3/C,GAASA,SAC/Bk+C,EAAQK,EAAaE,WAAYttC,EAAOpP,GAC1CA,EAAOkuB,QAAQpf,QACR2H,QAAQ7Q,QAAQi3C,EAAc78C,IAElC,IAAIyW,SAAS7Q,IAChB,MAAMi4C,EAAgB,KAClBpjC,aAAaw+B,GACbrzC,EAAQi3C,EAAc78C,GAAQ,EAE5Bi5C,EAAUj+B,YAAW,KACvBpV,EAAQi3C,EAAc78C,IAClBA,EAAOkuB,QAAQhiB,qBACflM,EAAOkuB,OAAOhiB,oBAAoB,QAAS2xC,EAC/C,GACDhkC,GACC7Z,EAAOkuB,QAAQliB,kBACfhM,EAAOkuB,OAAOliB,iBAAiB,QAAS6xC,EAAe,CAAEjuD,MAAM,GACnE,GAER,CA0BmBkuD,CAAYjB,EAAeL,EAAcptC,EAAOpP,UAzBnEknB,eAA2Cs1B,EAAcptC,GACjDotC,EAAaE,YAAcF,EAAaV,eAClCU,EAAaJ,wBAAwBhtC,EAAOotC,EAAaE,WACvE,CAwBcqB,CAA4BvB,EAAcptC,GACzCqH,QAAQtD,OAAO/D,GAAM,IAEhC,MAAO,CAAE0tC,uBAAsBI,wBAAuB,EAG1DN,EAAWzB,eAAiBA,EAC5ByB,EAAWoB,mBA7JJ,SAA4B5uC,GAC/B,QAAKA,EAAMpP,QAAQ0uB,QAIZ4sB,EAAiBlsC,KAA8D,IAApDgsC,EAAkBjnD,QAAQib,EAAMpP,OAAO0uB,OAC7E,EAwJAkuB,EAAWrB,yBAA2BA,EACtCqB,EAAWpB,kCAAoCA,EAC/CoB,EAAWqB,iBA/HJ,SAA0BC,EAAc,EAAG9uC,OAAQ/c,EAAW8rD,EAAc,KAC/E,MAAMC,EAAkB,GAAKF,EAAcC,EACrCtkC,EAAQvH,KAAKD,IAAI+rC,EAAiB3C,EAAWrsC,IAEnD,OAAOyK,EADmB,GAARA,EAAcvH,KAAKo3B,QAEzC,EA2HAkT,EAAWtB,iBAAmBA,EAC9B,U,qCCtLI+C,EAAYjvD,OAAOyF,eAEnBypD,EAAgB,CAACpjD,EAAKzG,EAAKQ,KADT,EAACiG,EAAKzG,EAAKQ,KAAUR,KAAOyG,EAAMmjD,EAAUnjD,EAAKzG,EAAK,CAAEG,YAAY,EAAMmhB,cAAc,EAAMwoC,UAAU,EAAMtpD,UAAWiG,EAAIzG,GAAOQ,CAAK,EAE7JupD,CAAgBtjD,EAAoB,iBAARzG,EAAmBA,EAAM,GAAKA,EAAKQ,GACxDA,GA4BT,MAAMwpD,EACJ,WAAArqC,CAAYsqC,EAAQzgD,EAAMwmB,GACxB65B,EAAczuD,KAAM,MACpBA,KAAK8uD,GAAK,IAAI,EAAQ,CACpBl6B,QACAm6B,aAAc,OAEhB,IAAK,MAAMnqD,KAAOwJ,EAChBpO,KAAK8uD,GAAGE,gBAAgBpqD,EAAK,WAAYwJ,EAAKxJ,IAEhD5E,KAAK8uD,GAAGG,UAAUJ,EACpB,CACA,qBAAAK,CAAsBC,EAAYC,GAChC,OAAOD,EAAW5oD,QAAQ,eAAe,CAACI,EAAGC,KAC3C,MAAMyoD,EAAID,EAAKxoD,GACf,MAAiB,iBAANyoD,GAA+B,iBAANA,EAC3BA,EAAE3pD,WAEFiB,CACT,GAEJ,CAOA,OAAA2oD,CAAQC,EAAUC,EAAe,CAAC,GAChC,OAAOxvD,KAAKkvD,sBACVlvD,KAAK8uD,GAAGQ,QAAQC,GAChBC,EAEJ,CASA,QAAAC,CAASC,EAAUC,EAAQrS,EAAOkS,EAAe,CAAC,GAChD,OAAOxvD,KAAKkvD,sBACVlvD,KAAK8uD,GAAGW,SAASC,EAAUC,EAAQrS,GAAO/2C,QAAQ,MAAO+2C,EAAM53C,YAC/D8pD,EAEJ,E,wHC7DF,MACMI,GAAyBC,GAAM,wBAAyBr3C,QAAUq3C,aAAaC,oBAC/EC,GAAqBF,GAAM,oBAAqBr3C,QAAUq3C,aAAaG,gBAC7E,EAAW,KAAO,CAAE/D,QAAS,IAC7B,MAAMgE,GAAa54B,eAAe7tB,EAAK0mD,EAAa7xB,EAAQ8xB,EAAmB,SAC5EC,OAAkB,EAAQ7e,EAAU,CAAC,EAAG0a,EAAU,GACnD,IAAI79C,EAYJ,OAVEA,EADE8hD,aAAuBG,KAClBH,QAEMA,IAEXE,IACF7e,EAAQC,YAAc4e,GAEnB7e,EAAQ,kBACXA,EAAQ,gBAAkB,kCAEf,KAAM4b,QAAQ,CACzBtuB,OAAQ,MACRr1B,MACA4E,OACAiwB,SACA8xB,mBACA5e,UACA,cAAe,CACb0a,UACAE,WAAY,CAACU,EAAYttC,IAAU,mBAA4BstC,EAAYttC,EAAO,OAGxF,EACM+wC,GAAW,SAASj1B,EAAMsH,EAAOjhC,GACrC,OAAc,IAAVihC,GAAetH,EAAKlS,MAAQznB,EACvBklB,QAAQ7Q,QAAQ,IAAIs6C,KAAK,CAACh1B,GAAO,CAAEttB,KAAMstB,EAAKttB,MAAQ,8BAExD6Y,QAAQ7Q,QAAQ,IAAIs6C,KAAK,CAACh1B,EAAKl6B,MAAMwhC,EAAOA,EAAQjhC,IAAU,CAAEqM,KAAM,6BAC/E,EAkBMwiD,GAAmB,SAASC,OAAW,GAC3C,MAAMC,EAAej4C,OAAO43B,IAAIsgB,WAAW54B,OAAO64B,eAClD,GAAIF,GAAgB,EAClB,OAAO,EAET,IAAK5pD,OAAO4pD,GACV,OAAO,SAET,MAAMG,EAAmBnuC,KAAKD,IAAI3b,OAAO4pD,GAAe,SACxD,YAAiB,IAAbD,EACKI,EAEFnuC,KAAKD,IAAIouC,EAAkBnuC,KAAK42B,KAAKmX,EAAW,KACzD,EACA,IAAIK,GAA2B,CAAEC,IAC/BA,EAAQA,EAAqB,YAAI,GAAK,cACtCA,EAAQA,EAAmB,UAAI,GAAK,YACpCA,EAAQA,EAAoB,WAAI,GAAK,aACrCA,EAAQA,EAAkB,SAAI,GAAK,WACnCA,EAAQA,EAAmB,UAAI,GAAK,YACpCA,EAAQA,EAAgB,OAAI,GAAK,SAC1BA,GAPsB,CAQ5BD,IAAY,CAAC,GAChB,MAAME,GACJC,QACAC,MACAC,WACAC,QACAC,MACAC,UAAY,EACZC,WAAa,EACbC,QAAU,EACVC,YACAC,UAAY,KACZ,WAAAltC,CAAYjT,EAAQogD,GAAU,EAAOvoC,EAAMkS,GACzC,MAAMs2B,EAASlvC,KAAKmM,IAAI2hC,KAAqB,EAAI9tC,KAAK42B,KAAKlwB,EAAOonC,MAAsB,EAAG,KAC3FvwD,KAAKgxD,QAAU1/C,EACftR,KAAKkxD,WAAaQ,GAAWnB,KAAqB,GAAKoB,EAAS,EAChE3xD,KAAKmxD,QAAUnxD,KAAKkxD,WAAaS,EAAS,EAC1C3xD,KAAKoxD,MAAQjoC,EACbnpB,KAAKixD,MAAQ51B,EACbr7B,KAAKwxD,YAAc,IAAIzzB,eACzB,CACA,UAAIzsB,GACF,OAAOtR,KAAKgxD,OACd,CACA,QAAI31B,GACF,OAAOr7B,KAAKixD,KACd,CACA,aAAIW,GACF,OAAO5xD,KAAKkxD,UACd,CACA,UAAIS,GACF,OAAO3xD,KAAKmxD,OACd,CACA,QAAIhoC,GACF,OAAOnpB,KAAKoxD,KACd,CACA,aAAIS,GACF,OAAO7xD,KAAKsxD,UACd,CACA,YAAIvjC,CAASA,GACX/tB,KAAKyxD,UAAY1jC,CACnB,CACA,YAAIA,GACF,OAAO/tB,KAAKyxD,SACd,CACA,YAAIK,GACF,OAAO9xD,KAAKqxD,SACd,CAIA,YAAIS,CAASpwD,GACX,GAAIA,GAAU1B,KAAKoxD,MAGjB,OAFApxD,KAAKuxD,QAAUvxD,KAAKkxD,WAAa,EAAI,OACrClxD,KAAKqxD,UAAYrxD,KAAKoxD,OAGxBpxD,KAAKuxD,QAAU,EACfvxD,KAAKqxD,UAAY3vD,EACO,IAApB1B,KAAKsxD,aACPtxD,KAAKsxD,YAAa,IAAqBp2C,MAAQ86B,UAEnD,CACA,UAAI/V,GACF,OAAOjgC,KAAKuxD,OACd,CAIA,UAAItxB,CAAOA,GACTjgC,KAAKuxD,QAAUtxB,CACjB,CAIA,UAAI5B,GACF,OAAOr+B,KAAKwxD,YAAYnzB,MAC1B,CAIA,MAAAjT,GACEprB,KAAKwxD,YAAYpvC,QACjBpiB,KAAKuxD,QAAU,CACjB,EAEF,MAAM52B,WAAkBC,KACtBm3B,cACAC,MACAr4B,UACA,WAAApV,CAAYtY,EAAMkC,GAChB2sB,MAAM,IAAI,QAAS7uB,GAAO,CAAE8B,KAAM,uBAAwBmtB,aAAc,IACxEl7B,KAAK25B,UAA4B,IAAIs4B,IACrCjyD,KAAK+xD,eAAgB,QAAS9lD,GAC9BjM,KAAKgyD,MAAQ/lD,EACTkC,GACFA,EAASpD,SAASR,GAAMvK,KAAKkyD,SAAS3nD,IAE1C,CACA,QAAI4e,GACF,OAAOnpB,KAAKmO,SAASvF,QAAO,CAACupD,EAAK92B,IAAS82B,EAAM92B,EAAKlS,MAAM,EAC9D,CACA,gBAAI+R,GACF,OAAOl7B,KAAKmO,SAASvF,QAAO,CAACwpD,EAAQ/2B,IAAS5Y,KAAKD,IAAI4vC,EAAQ/2B,EAAKH,eAAe,EACrF,CAEA,gBAAIm3B,GACF,OAAOryD,KAAK+xD,aACd,CACA,YAAI5jD,GACF,OAAOvM,MAAM2a,KAAKvc,KAAK25B,UAAUtB,SACnC,CACA,sBAAI8lB,GACF,OAAOn+C,KAAKgyD,KACd,CACA,QAAAM,CAAStxD,GACP,OAAOhB,KAAK25B,UAAUxT,IAAInlB,IAAS,IACrC,CACA,cAAMkxD,CAAS72B,GACb,MAAMk3B,EAAWvyD,KAAKgyD,OAAS,GAAGhyD,KAAKgyD,SACvC,GAAIpC,GAAsBv0B,GACxBA,QAAa,IAAIzU,SAAQ,CAAC7Q,EAASuN,IAAW+X,EAAKA,KAAKtlB,EAASuN,UAC5D,GAtM+B,6BAA8B9K,QAsM9B6iB,aAtMqDm3B,yBAsM9C,CAC3C,MAAMC,EAASp3B,EAAKM,eACdt1B,QAAgB,IAAIugB,SAAQ,CAAC7Q,EAASuN,IAAWmvC,EAAO52B,YAAY9lB,EAASuN,KAEnF,YADAtjB,KAAK25B,UAAUO,IAAImB,EAAKr6B,KAAM,IAAI25B,GAAU,GAAG43B,IAAWl3B,EAAKr6B,OAAQqF,GAEzE,CAEA,MAAMqsD,EAAWr3B,EAAK8iB,oBAAsB9iB,EAAKr6B,KACjD,GAAK0xD,EAAS3qD,SAAS,KAEhB,CACL,IAAK2qD,EAASh8B,WAAW12B,KAAKgyD,OAC5B,MAAM,IAAIxyC,MAAM,QAAQkzC,uBAA8B1yD,KAAKgyD,SAE7D,MAAMW,EAAUD,EAASvxD,MAAMoxD,EAAS7wD,QAClCV,GAAO,QAAS2xD,GACtB,GAAI3xD,IAAS2xD,EACX3yD,KAAK25B,UAAUO,IAAIl5B,EAAMq6B,OACpB,CACL,MAAM7qB,EAAOmiD,EAAQxxD,MAAM,EAAGwxD,EAAQruD,QAAQ,MAC1CtE,KAAK25B,UAAUr6B,IAAIkR,GACrBxQ,KAAK25B,UAAUxT,IAAI3V,GAAM0hD,SAAS72B,GAElCr7B,KAAK25B,UAAUO,IAAI1pB,EAAM,IAAImqB,GAAU,GAAG43B,IAAW/hD,IAAQ,CAAC6qB,IAElE,CACF,MAjBEr7B,KAAK25B,UAAUO,IAAImB,EAAKr6B,KAAMq6B,EAkBlC,EAwBF,MAAMu3B,IDzLG,IA5ET,MACE,WAAAruC,GACEkqC,EAAczuD,KAAM,UACpByuD,EAAczuD,KAAM,eAAgB,CAAC,GACrCyuD,EAAczuD,KAAM,SAAS,EAC/B,CACA,WAAA6yD,CAAYC,GAEV,OADA9yD,KAAK6uD,OAASiE,EACP9yD,IACT,CAEA,YAAA+yD,GACE,OAAO/yD,KAAK6yD,aEhBP90C,SAASI,gBAAgB60C,MAAQ,MFgBAzsD,QAAQ,IAAK,KACrD,CACA,cAAA0sD,CAAeH,EAAU1kD,GAEvB,OADApO,KAAKkzD,aAAaJ,GAAY1kD,EACvBpO,IACT,CACA,eAAAmzD,GAEE,OADAnzD,KAAK40B,OAAQ,EACN50B,IACT,CACA,KAAA0rB,GACE,OAAO,IAAIkjC,EAAe5uD,KAAK6uD,QAAU,KAAM7uD,KAAKkzD,aAAclzD,KAAK40B,MACzE,IC6OoCm+B,eACtC,CAAC,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,kEAAmE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,iOAAmO,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,kCAAmC,gBAAiB,+DAAgE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,mHAAqH,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,2EAA6E,OAAU,CAAC,0TAA4T,yEAA0E,CAAE,MAAS,yEAA0E,OAAU,CAAC,mEAAqE,wBAAyB,CAAE,MAAS,wBAAyB,aAAgB,yBAA0B,OAAU,CAAC,qBAAsB,qBAAsB,yBAA0B,qBAAsB,wBAAyB,0BAA4B,qCAAsC,CAAE,MAAS,qCAAsC,aAAgB,sCAAuC,OAAU,CAAC,oCAAqC,oCAAqC,wCAAyC,oCAAqC,uCAAwC,yCAA2C,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,2BAA6B,cAAe,CAAE,MAAS,cAAe,SAAY,CAAE,UAAa,4CAA8C,OAAU,CAAC,kBAAoB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,oBAAsB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,UAAY,8BAA+B,CAAE,MAAS,8BAA+B,OAAU,CAAC,yBAA2B,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,6BAA+B,SAAY,CAAE,MAAS,WAAY,OAAU,CAAC,UAAY,aAAc,CAAE,MAAS,aAAc,OAAU,CAAC,eAAiB,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,wBAA0B,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,mBAAqB,uFAAwF,CAAE,MAAS,uFAAwF,OAAU,CAAC,4EAA8E,oBAAqB,CAAE,MAAS,oBAAqB,OAAU,CAAC,uBAAyB,6BAA8B,CAAE,MAAS,6BAA8B,OAAU,CAAC,8BAAgC,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,SAAW,cAAe,CAAE,MAAS,cAAe,OAAU,CAAC,eAAiB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,YAAc,gBAAiB,CAAE,MAAS,gBAAiB,OAAU,CAAC,kBAAoB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,kBAAoB,wBAAyB,CAAE,MAAS,wBAAyB,OAAU,CAAC,6BAA+B,4BAA6B,CAAE,MAAS,4BAA6B,OAAU,CAAC,8BAAgC,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,6BAA+B,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,WAAa,iBAAkB,CAAE,MAAS,iBAAkB,aAAgB,qBAAsB,OAAU,CAAC,oBAAqB,oBAAqB,oBAAqB,oBAAqB,oBAAqB,sBAAwB,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,kBAAoB,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,cAAgB,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,eAAiB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,mBAAqB,4BAA6B,CAAE,MAAS,4BAA6B,OAAU,CAAC,gCAAkC,kBAAmB,CAAE,MAAS,kBAAmB,OAAU,CAAC,kBAAoB,iGAAkG,CAAE,MAAS,iGAAkG,OAAU,CAAC,qEAAuE,yIAA0I,CAAE,MAAS,yIAA0I,OAAU,CAAC,oGAAsG,mCAAoC,CAAE,MAAS,mCAAoC,OAAU,CAAC,wCAA0C,oEAAqE,CAAE,MAAS,oEAAqE,OAAU,CAAC,+DAAqE,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,iFAAkF,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,qHAAuH,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,wUAA0U,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,MAAO,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,oCAAqC,gBAAiB,kEAAmE,eAAgB,4BAA6B,SAAY,MAAO,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,uDAAyD,OAAU,CAAC,6OAA+O,wBAAyB,CAAE,MAAS,wBAAyB,aAAgB,yBAA0B,OAAU,CAAC,8BAA+B,iCAAmC,qCAAsC,CAAE,MAAS,qCAAsC,aAAgB,sCAAuC,OAAU,CAAC,2CAA4C,8CAAgD,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,8BAAgC,cAAe,CAAE,MAAS,cAAe,SAAY,CAAE,UAAa,4CAA8C,OAAU,CAAC,6BAA+B,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,yBAA2B,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,wBAA0B,SAAY,CAAE,MAAS,WAAY,OAAU,CAAC,WAAa,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,iCAAmC,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,sBAAwB,qFAAsF,CAAE,MAAS,qFAAsF,OAAU,CAAC,+FAAiG,6BAA8B,CAAE,MAAS,6BAA8B,OAAU,CAAC,qDAAuD,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,UAAY,cAAe,CAAE,MAAS,cAAe,OAAU,CAAC,kBAAoB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,YAAc,gBAAiB,CAAE,MAAS,gBAAiB,OAAU,CAAC,2BAA6B,wBAAyB,CAAE,MAAS,wBAAyB,OAAU,CAAC,0BAA4B,4BAA6B,CAAE,MAAS,4BAA6B,OAAU,CAAC,0CAA4C,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,sCAAwC,iBAAkB,CAAE,MAAS,iBAAkB,aAAgB,qBAAsB,OAAU,CAAC,sBAAuB,4BAA8B,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,sBAAwB,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,uBAAyB,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,mBAAqB,kBAAmB,CAAE,MAAS,kBAAmB,OAAU,CAAC,kBAAoB,mCAAoC,CAAE,MAAS,mCAAoC,OAAU,CAAC,kCAAoC,oEAAqE,CAAE,MAAS,oEAAqE,OAAU,CAAC,gFAAsF,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,iDAAkD,gBAAiB,oEAAqE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,oEAAsE,OAAU,CAAC,2PAA6P,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,2BAA6B,cAAe,CAAE,MAAS,cAAe,SAAY,CAAE,UAAa,gCAAkC,OAAU,CAAC,iBAAmB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,0BAA4B,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,aAAe,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,wBAA0B,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,uBAAyB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,eAAiB,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,uBAA6B,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,mEAAoE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,0KAA4K,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,4WAA8W,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,gFAAiF,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,kPAAoP,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,gFAAiF,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,kPAAoP,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,+DAAgE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,mUAAqU,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,igBAAmgB,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,gEAAiE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,0GAA4G,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,ySAA2S,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,qDAAsD,gBAAiB,gEAAiE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,qHAAuH,OAAU,CAAC,2PAA6P,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,4BAA8B,cAAe,CAAE,MAAS,cAAe,SAAY,CAAE,UAAa,gCAAkC,OAAU,CAAC,kBAAoB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,sBAAwB,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,YAAc,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,0BAA4B,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,qCAAuC,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,aAAe,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,yBAA+B,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,gDAAiD,gBAAiB,8DAA+D,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,gHAAkH,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,mEAAqE,OAAU,CAAC,oUAAsU,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,oBAAsB,cAAe,CAAE,MAAS,cAAe,SAAY,CAAE,UAAa,gCAAkC,OAAU,CAAC,iBAAmB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,yBAA2B,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,WAAa,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,qBAAuB,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,6BAA+B,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,oBAA0B,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,0CAA2C,gBAAiB,kFAAmF,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,gHAAkH,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,mFAAqF,OAAU,CAAC,qVAAuV,wBAAyB,CAAE,MAAS,wBAAyB,aAAgB,yBAA0B,OAAU,CAAC,yBAA0B,yBAA0B,yBAA0B,2BAA6B,qCAAsC,CAAE,MAAS,qCAAsC,aAAgB,sCAAuC,OAAU,CAAC,qCAAsC,qCAAsC,qCAAsC,uCAAyC,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,oBAAsB,cAAe,CAAE,MAAS,cAAe,SAAY,CAAE,UAAa,4CAA8C,OAAU,CAAC,iBAAmB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,yBAA2B,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,WAAa,8BAA+B,CAAE,MAAS,8BAA+B,OAAU,CAAC,yBAA2B,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,qBAAuB,SAAY,CAAE,MAAS,WAAY,OAAU,CAAC,eAAiB,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,8BAAgC,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,qBAAuB,qFAAsF,CAAE,MAAS,qFAAsF,OAAU,CAAC,iFAAmF,6BAA8B,CAAE,MAAS,6BAA8B,OAAU,CAAC,kCAAoC,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,SAAW,cAAe,CAAE,MAAS,cAAe,OAAU,CAAC,eAAiB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,gBAAkB,gBAAiB,CAAE,MAAS,gBAAiB,OAAU,CAAC,mBAAqB,wBAAyB,CAAE,MAAS,wBAAyB,OAAU,CAAC,wCAA0C,4BAA6B,CAAE,MAAS,4BAA6B,OAAU,CAAC,qCAAuC,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,gCAAkC,iBAAkB,CAAE,MAAS,iBAAkB,aAAgB,qBAAsB,OAAU,CAAC,yBAA0B,4BAA6B,4BAA6B,8BAAgC,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,qBAAuB,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,sBAAwB,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,mBAAqB,kBAAmB,CAAE,MAAS,kBAAmB,OAAU,CAAC,uBAAyB,iGAAkG,CAAE,MAAS,iGAAkG,OAAU,CAAC,6FAA+F,mCAAoC,CAAE,MAAS,mCAAoC,OAAU,CAAC,uCAAyC,oEAAqE,CAAE,MAAS,oEAAqE,OAAU,CAAC,2FAAiG,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,kFAAmF,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,6EAA+E,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,iSAAmS,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,wCAAyC,gBAAiB,+DAAgE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,iFAAmF,OAAU,CAAC,6OAA+O,wBAAyB,CAAE,MAAS,wBAAyB,aAAgB,yBAA0B,OAAU,CAAC,uBAAwB,6BAA+B,qCAAsC,CAAE,MAAS,qCAAsC,aAAgB,sCAAuC,OAAU,CAAC,mCAAoC,yCAA2C,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,gCAAkC,cAAe,CAAE,MAAS,cAAe,SAAY,CAAE,UAAa,4CAA8C,OAAU,CAAC,kBAAoB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,4BAA8B,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,aAAe,8BAA+B,CAAE,MAAS,8BAA+B,OAAU,CAAC,6BAA+B,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,qBAAuB,SAAY,CAAE,MAAS,WAAY,OAAU,CAAC,YAAc,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,iCAAmC,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,yBAA2B,qFAAsF,CAAE,MAAS,qFAAsF,OAAU,CAAC,6FAA+F,6BAA8B,CAAE,MAAS,6BAA8B,OAAU,CAAC,oCAAsC,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,OAAS,cAAe,CAAE,MAAS,cAAe,OAAU,CAAC,eAAiB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,WAAa,gBAAiB,CAAE,MAAS,gBAAiB,OAAU,CAAC,+BAAiC,wBAAyB,CAAE,MAAS,wBAAyB,OAAU,CAAC,qBAAuB,4BAA6B,CAAE,MAAS,4BAA6B,OAAU,CAAC,iCAAmC,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,wBAA0B,iBAAkB,CAAE,MAAS,iBAAkB,aAAgB,qBAAsB,OAAU,CAAC,wBAAyB,8BAAgC,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,qBAAuB,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,sBAAwB,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,iBAAmB,kBAAmB,CAAE,MAAS,kBAAmB,OAAU,CAAC,sBAAwB,iGAAkG,CAAE,MAAS,iGAAkG,OAAU,CAAC,+FAAiG,mCAAoC,CAAE,MAAS,mCAAoC,OAAU,CAAC,uCAAyC,oEAAqE,CAAE,MAAS,oEAAqE,OAAU,CAAC,sEAA4E,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,+CAAgD,gBAAiB,+DAAgE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,wFAA0F,OAAU,CAAC,oPAAsP,wBAAyB,CAAE,MAAS,wBAAyB,aAAgB,yBAA0B,OAAU,CAAC,yBAA0B,4BAA8B,qCAAsC,CAAE,MAAS,qCAAsC,aAAgB,sCAAuC,OAAU,CAAC,sCAAuC,yCAA2C,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,mCAAqC,cAAe,CAAE,MAAS,cAAe,SAAY,CAAE,UAAa,4CAA8C,OAAU,CAAC,uBAAyB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,2BAA6B,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,cAAgB,8BAA+B,CAAE,MAAS,8BAA+B,OAAU,CAAC,mCAAqC,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,wBAA0B,SAAY,CAAE,MAAS,WAAY,OAAU,CAAC,eAAiB,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,iCAAmC,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,uBAAyB,qFAAsF,CAAE,MAAS,qFAAsF,OAAU,CAAC,mGAAqG,6BAA8B,CAAE,MAAS,6BAA8B,OAAU,CAAC,yCAA2C,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,QAAU,cAAe,CAAE,MAAS,cAAe,OAAU,CAAC,iBAAmB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,aAAe,gBAAiB,CAAE,MAAS,gBAAiB,OAAU,CAAC,iBAAmB,wBAAyB,CAAE,MAAS,wBAAyB,OAAU,CAAC,qCAAuC,4BAA6B,CAAE,MAAS,4BAA6B,OAAU,CAAC,uCAAyC,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,iCAAmC,iBAAkB,CAAE,MAAS,iBAAkB,aAAgB,qBAAsB,OAAU,CAAC,2BAA4B,iCAAmC,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,qBAAuB,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,0BAA4B,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,sBAAwB,kBAAmB,CAAE,MAAS,kBAAmB,OAAU,CAAC,+BAAiC,iGAAkG,CAAE,MAAS,iGAAkG,OAAU,CAAC,wHAA0H,mCAAoC,CAAE,MAAS,mCAAoC,OAAU,CAAC,yCAA2C,oEAAqE,CAAE,MAAS,oEAAqE,OAAU,CAAC,iFAAuF,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,+CAAgD,gBAAiB,4EAA6E,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,wFAA0F,OAAU,CAAC,oQAAsQ,yEAA0E,CAAE,MAAS,yEAA0E,OAAU,CAAC,wEAA0E,wBAAyB,CAAE,MAAS,wBAAyB,aAAgB,yBAA0B,OAAU,CAAC,yBAA0B,4BAA8B,qCAAsC,CAAE,MAAS,qCAAsC,aAAgB,sCAAuC,OAAU,CAAC,sCAAuC,yCAA2C,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,kCAAoC,cAAe,CAAE,MAAS,cAAe,SAAY,CAAE,UAAa,4CAA8C,OAAU,CAAC,uBAAyB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,iCAAmC,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,cAAgB,8BAA+B,CAAE,MAAS,8BAA+B,OAAU,CAAC,mCAAqC,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,wBAA0B,SAAY,CAAE,MAAS,WAAY,OAAU,CAAC,eAAiB,aAAc,CAAE,MAAS,aAAc,OAAU,CAAC,kBAAoB,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,iCAAmC,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,uBAAyB,uFAAwF,CAAE,MAAS,uFAAwF,OAAU,CAAC,sGAAwG,oBAAqB,CAAE,MAAS,oBAAqB,OAAU,CAAC,yBAA2B,6BAA8B,CAAE,MAAS,6BAA8B,OAAU,CAAC,yCAA2C,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,QAAU,cAAe,CAAE,MAAS,cAAe,OAAU,CAAC,iBAAmB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,aAAe,gBAAiB,CAAE,MAAS,gBAAiB,OAAU,CAAC,iBAAmB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,eAAiB,wBAAyB,CAAE,MAAS,wBAAyB,OAAU,CAAC,qCAAuC,4BAA6B,CAAE,MAAS,4BAA6B,OAAU,CAAC,uCAAyC,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,iCAAmC,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,iBAAmB,iBAAkB,CAAE,MAAS,iBAAkB,aAAgB,qBAAsB,OAAU,CAAC,6BAA8B,iCAAmC,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,qBAAuB,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,sBAAwB,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,qBAAuB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,wBAA0B,4BAA6B,CAAE,MAAS,4BAA6B,OAAU,CAAC,oCAAsC,kBAAmB,CAAE,MAAS,kBAAmB,OAAU,CAAC,+BAAiC,iGAAkG,CAAE,MAAS,iGAAkG,OAAU,CAAC,wHAA0H,yIAA0I,CAAE,MAAS,yIAA0I,OAAU,CAAC,gJAAkJ,mCAAoC,CAAE,MAAS,mCAAoC,OAAU,CAAC,yCAA2C,oEAAqE,CAAE,MAAS,oEAAqE,OAAU,CAAC,mFAAyF,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,gBAAiB,gBAAiB,8DAA+D,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,mCAAqC,OAAU,CAAC,oNAAsN,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,qCAAuC,cAAe,CAAE,MAAS,cAAe,SAAY,CAAE,UAAa,gCAAkC,OAAU,CAAC,qBAAuB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,gCAAkC,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,aAAe,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,0BAA4B,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,qCAAuC,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,aAAe,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,4BAAkC,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,0EAA2E,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,4OAA8O,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yCAA0C,gBAAiB,oFAAqF,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,kFAAoF,OAAU,CAAC,sQAAwQ,wBAAyB,CAAE,MAAS,wBAAyB,aAAgB,yBAA0B,OAAU,CAAC,wBAAyB,2BAA6B,qCAAsC,CAAE,MAAS,qCAAsC,aAAgB,sCAAuC,OAAU,CAAC,qCAAsC,wCAA0C,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,2BAA6B,cAAe,CAAE,MAAS,cAAe,SAAY,CAAE,UAAa,4CAA8C,OAAU,CAAC,gBAAkB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,uBAAyB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,WAAa,8BAA+B,CAAE,MAAS,8BAA+B,OAAU,CAAC,gCAAkC,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,mBAAqB,SAAY,CAAE,MAAS,WAAY,OAAU,CAAC,aAAe,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,yBAA2B,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,qBAAuB,uFAAwF,CAAE,MAAS,uFAAwF,OAAU,CAAC,yFAA2F,6BAA8B,CAAE,MAAS,6BAA8B,OAAU,CAAC,+BAAiC,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,QAAU,cAAe,CAAE,MAAS,cAAe,OAAU,CAAC,gBAAkB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,WAAa,gBAAiB,CAAE,MAAS,gBAAiB,OAAU,CAAC,kBAAoB,wBAAyB,CAAE,MAAS,wBAAyB,OAAU,CAAC,0BAA4B,4BAA6B,CAAE,MAAS,4BAA6B,OAAU,CAAC,8BAAgC,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,yBAA2B,iBAAkB,CAAE,MAAS,iBAAkB,aAAgB,qBAAsB,OAAU,CAAC,iBAAkB,uBAAyB,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,iBAAmB,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,qBAAuB,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,iBAAmB,kBAAmB,CAAE,MAAS,kBAAmB,OAAU,CAAC,oBAAsB,iGAAkG,CAAE,MAAS,iGAAkG,OAAU,CAAC,mGAAqG,yIAA0I,CAAE,MAAS,yIAA0I,OAAU,CAAC,2IAA6I,mCAAoC,CAAE,MAAS,mCAAoC,OAAU,CAAC,qCAAuC,oEAAqE,CAAE,MAAS,oEAAqE,OAAU,CAAC,0EAAgF,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,kEAAmE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,iOAAmO,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,wBAAyB,gBAAiB,gEAAiE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,uEAAyE,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,2GAA6G,OAAU,CAAC,qQAAuQ,yEAA0E,CAAE,MAAS,yEAA0E,OAAU,CAAC,uEAAyE,wBAAyB,CAAE,MAAS,wBAAyB,aAAgB,yBAA0B,OAAU,CAAC,+BAAgC,gCAAiC,kCAAoC,qCAAsC,CAAE,MAAS,qCAAsC,aAAgB,sCAAuC,OAAU,CAAC,4CAA6C,6CAA8C,+CAAiD,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,iCAAmC,cAAe,CAAE,MAAS,cAAe,SAAY,CAAE,UAAa,4CAA8C,OAAU,CAAC,oBAAsB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,yBAA2B,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,aAAe,8BAA+B,CAAE,MAAS,8BAA+B,OAAU,CAAC,+BAAiC,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,qBAAuB,SAAY,CAAE,MAAS,WAAY,OAAU,CAAC,cAAgB,aAAc,CAAE,MAAS,aAAc,OAAU,CAAC,gBAAkB,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,8BAAgC,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,sBAAwB,uFAAwF,CAAE,MAAS,uFAAwF,OAAU,CAAC,+FAAiG,oBAAqB,CAAE,MAAS,oBAAqB,OAAU,CAAC,+BAAiC,6BAA8B,CAAE,MAAS,6BAA8B,OAAU,CAAC,6CAA+C,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,UAAY,cAAe,CAAE,MAAS,cAAe,OAAU,CAAC,kBAAoB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,YAAc,gBAAiB,CAAE,MAAS,gBAAiB,OAAU,CAAC,yBAA2B,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,cAAgB,wBAAyB,CAAE,MAAS,wBAAyB,OAAU,CAAC,mDAAqD,4BAA6B,CAAE,MAAS,4BAA6B,OAAU,CAAC,8CAAgD,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,0CAA4C,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,WAAa,iBAAkB,CAAE,MAAS,iBAAkB,aAAgB,qBAAsB,OAAU,CAAC,sBAAuB,0BAA2B,4BAA8B,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,uBAAyB,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,mBAAqB,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,mBAAqB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,4BAA8B,4BAA6B,CAAE,MAAS,4BAA6B,OAAU,CAAC,gCAAkC,kBAAmB,CAAE,MAAS,kBAAmB,OAAU,CAAC,0BAA4B,iGAAkG,CAAE,MAAS,iGAAkG,OAAU,CAAC,uHAAyH,yIAA0I,CAAE,MAAS,yIAA0I,OAAU,CAAC,wJAA0J,mCAAoC,CAAE,MAAS,mCAAoC,OAAU,CAAC,mCAAqC,oEAAqE,CAAE,MAAS,oEAAqE,OAAU,CAAC,8EAAoF,CAAE,OAAU,SAAU,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,oFAAqF,eAAgB,4BAA6B,SAAY,SAAU,eAAgB,uEAAyE,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,8RAAgS,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,iCAAmC,cAAe,CAAE,MAAS,cAAe,SAAY,CAAE,UAAa,gCAAkC,OAAU,CAAC,sBAAwB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,0BAA4B,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,YAAc,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,qBAAuB,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,8BAAgC,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,YAAc,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,uBAA6B,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,wBAAyB,gBAAiB,+EAAgF,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,uEAAyE,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,2CAA6C,OAAU,CAAC,uRAAyR,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,iCAAmC,cAAe,CAAE,MAAS,cAAe,SAAY,CAAE,UAAa,gCAAkC,OAAU,CAAC,oBAAsB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,yBAA2B,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,WAAa,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,qBAAuB,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,8BAAgC,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,YAAc,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,uBAA6B,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,2EAA4E,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,uEAAyE,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,oRAAsR,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,8EAA+E,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,uEAAyE,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,uRAAyR,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,gFAAiF,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,uEAAyE,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,yRAA2R,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,wFAAyF,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,uEAAyE,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,iSAAmS,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,6EAA8E,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,uEAAyE,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,sRAAwR,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,+EAAgF,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,uEAAyE,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,wRAA0R,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,8EAA+E,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,uEAAyE,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,uRAAyR,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,4EAA6E,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,uEAAyE,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,yEAA2E,OAAU,CAAC,qRAAuR,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,iCAAmC,cAAe,CAAE,MAAS,cAAe,SAAY,CAAE,UAAa,gCAAkC,OAAU,CAAC,sBAAwB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,0BAA4B,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,YAAc,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,wBAA0B,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,8BAAgC,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,aAAe,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,wBAA8B,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,+EAAgF,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,uEAAyE,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,wRAA0R,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,4EAA6E,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,uEAAyE,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,qRAAuR,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,0EAA2E,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,uEAAyE,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,mRAAqR,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,iFAAkF,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,uEAAyE,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,0RAA4R,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,8EAA+E,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,uEAAyE,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,uRAAyR,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,iFAAkF,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,uEAAyE,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,0RAA4R,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,6EAA8E,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,uEAAyE,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,sRAAwR,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,mBAAoB,gBAAiB,8EAA+E,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,oDAAsD,OAAU,CAAC,0OAA4O,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,8BAAgC,cAAe,CAAE,MAAS,cAAe,SAAY,CAAE,UAAa,gCAAkC,OAAU,CAAC,uBAAyB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,uBAAyB,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,SAAW,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,0BAA4B,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,kCAAoC,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,WAAa,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,wBAA8B,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,oDAAqD,gBAAiB,+DAAgE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,uEAAyE,OAAU,CAAC,yPAA2P,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,oCAAsC,cAAe,CAAE,MAAS,cAAe,SAAY,CAAE,UAAa,gCAAkC,OAAU,CAAC,uBAAyB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,iCAAmC,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,WAAa,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,qBAAuB,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,uCAAyC,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,cAAgB,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,wBAA8B,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,wBAAyB,gBAAiB,gEAAiE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,+BAAiC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,2CAA6C,OAAU,CAAC,6NAA+N,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,yBAA2B,cAAe,CAAE,MAAS,cAAe,SAAY,CAAE,UAAa,gCAAkC,OAAU,CAAC,eAAiB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,oBAAsB,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,eAAiB,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,iCAAmC,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,0BAA4B,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,aAAe,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,yBAA+B,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,6CAA8C,gBAAiB,6EAA8E,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,gEAAkE,OAAU,CAAC,mQAAqQ,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,gCAAkC,cAAe,CAAE,MAAS,cAAe,SAAY,CAAE,UAAa,gCAAkC,OAAU,CAAC,oBAAsB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,6BAA+B,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,UAAY,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,uBAAyB,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,qCAAuC,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,gBAAkB,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,0BAAgC,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,gEAAiE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,+NAAiO,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,qBAAsB,gBAAiB,+DAAgE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,mFAAqF,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,oFAAsF,OAAU,CAAC,6QAA+Q,wBAAyB,CAAE,MAAS,wBAAyB,aAAgB,yBAA0B,OAAU,CAAC,6BAA8B,8BAA+B,gCAAkC,qCAAsC,CAAE,MAAS,qCAAsC,aAAgB,sCAAuC,OAAU,CAAC,4CAA6C,6CAA8C,+CAAiD,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,iCAAmC,cAAe,CAAE,MAAS,cAAe,SAAY,CAAE,UAAa,4CAA8C,OAAU,CAAC,mBAAqB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,gCAAkC,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,YAAc,8BAA+B,CAAE,MAAS,8BAA+B,OAAU,CAAC,gCAAkC,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,uBAAyB,SAAY,CAAE,MAAS,WAAY,OAAU,CAAC,cAAgB,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,gCAAkC,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,sBAAwB,qFAAsF,CAAE,MAAS,qFAAsF,OAAU,CAAC,0FAA4F,6BAA8B,CAAE,MAAS,6BAA8B,OAAU,CAAC,kDAAoD,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,YAAc,cAAe,CAAE,MAAS,cAAe,OAAU,CAAC,qBAAuB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,aAAe,gBAAiB,CAAE,MAAS,gBAAiB,OAAU,CAAC,sBAAwB,wBAAyB,CAAE,MAAS,wBAAyB,OAAU,CAAC,2CAA6C,4BAA6B,CAAE,MAAS,4BAA6B,OAAU,CAAC,6CAA+C,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,4CAA8C,iBAAkB,CAAE,MAAS,iBAAkB,aAAgB,qBAAsB,OAAU,CAAC,qBAAsB,2BAA4B,6BAA+B,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,oBAAsB,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,YAAc,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,gCAAkC,kBAAmB,CAAE,MAAS,kBAAmB,OAAU,CAAC,kCAAoC,iGAAkG,CAAE,MAAS,iGAAkG,OAAU,CAAC,qHAAuH,mCAAoC,CAAE,MAAS,mCAAoC,OAAU,CAAC,8CAAgD,oEAAqE,CAAE,MAAS,oEAAqE,OAAU,CAAC,uFAA6F,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,gCAAiC,gBAAiB,8DAA+D,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,sEAAwE,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,mDAAqD,OAAU,CAAC,0QAA4Q,yEAA0E,CAAE,MAAS,yEAA0E,OAAU,CAAC,yFAA2F,wBAAyB,CAAE,MAAS,wBAAyB,aAAgB,yBAA0B,OAAU,CAAC,4BAA6B,4BAA6B,4BAA6B,4BAA6B,8BAAgC,qCAAsC,CAAE,MAAS,qCAAsC,aAAgB,sCAAuC,OAAU,CAAC,wCAAyC,wCAAyC,wCAAyC,wCAAyC,0CAA4C,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,qBAAuB,cAAe,CAAE,MAAS,cAAe,SAAY,CAAE,UAAa,4CAA8C,OAAU,CAAC,gBAAkB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,yBAA2B,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,aAAe,8BAA+B,CAAE,MAAS,8BAA+B,OAAU,CAAC,iCAAmC,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,0BAA4B,SAAY,CAAE,MAAS,WAAY,OAAU,CAAC,wBAA0B,aAAc,CAAE,MAAS,aAAc,OAAU,CAAC,kBAAoB,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,8CAAgD,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,uBAAyB,uFAAwF,CAAE,MAAS,uFAAwF,OAAU,CAAC,mFAAqF,oBAAqB,CAAE,MAAS,oBAAqB,OAAU,CAAC,6BAA+B,6BAA8B,CAAE,MAAS,6BAA8B,OAAU,CAAC,wCAA0C,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,QAAU,cAAe,CAAE,MAAS,cAAe,OAAU,CAAC,eAAiB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,QAAU,gBAAiB,CAAE,MAAS,gBAAiB,OAAU,CAAC,sBAAwB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,gBAAkB,wBAAyB,CAAE,MAAS,wBAAyB,OAAU,CAAC,6BAA+B,4BAA6B,CAAE,MAAS,4BAA6B,OAAU,CAAC,8CAAgD,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,8BAAgC,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,aAAe,iBAAkB,CAAE,MAAS,iBAAkB,aAAgB,qBAAsB,OAAU,CAAC,qBAAsB,yBAA0B,yBAA0B,yBAA0B,2BAA6B,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,mBAAqB,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,sBAAwB,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,wBAA0B,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,yBAA2B,4BAA6B,CAAE,MAAS,4BAA6B,OAAU,CAAC,oCAAsC,kBAAmB,CAAE,MAAS,kBAAmB,OAAU,CAAC,4BAA8B,iGAAkG,CAAE,MAAS,iGAAkG,OAAU,CAAC,4GAA8G,yIAA0I,CAAE,MAAS,yIAA0I,OAAU,CAAC,sJAAwJ,mCAAoC,CAAE,MAAS,mCAAoC,OAAU,CAAC,+CAAiD,oEAAqE,CAAE,MAAS,oEAAqE,OAAU,CAAC,gGAAsG,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,yEAA0E,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,6FAA+F,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,qSAAuS,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,iDAAkD,gBAAiB,iEAAkE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,0FAA4F,OAAU,CAAC,wPAA0P,yEAA0E,CAAE,MAAS,yEAA0E,OAAU,CAAC,sEAAwE,wBAAyB,CAAE,MAAS,wBAAyB,aAAgB,yBAA0B,OAAU,CAAC,gCAAiC,mCAAqC,qCAAsC,CAAE,MAAS,qCAAsC,aAAgB,sCAAuC,OAAU,CAAC,6CAA8C,gDAAkD,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,8BAAgC,cAAe,CAAE,MAAS,cAAe,SAAY,CAAE,UAAa,4CAA8C,OAAU,CAAC,iBAAmB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,wBAA0B,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,aAAe,8BAA+B,CAAE,MAAS,8BAA+B,OAAU,CAAC,6BAA+B,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,oBAAsB,SAAY,CAAE,MAAS,WAAY,OAAU,CAAC,cAAgB,aAAc,CAAE,MAAS,aAAc,OAAU,CAAC,kBAAoB,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,iCAAmC,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,sBAAwB,uFAAwF,CAAE,MAAS,uFAAwF,OAAU,CAAC,8FAAgG,oBAAqB,CAAE,MAAS,oBAAqB,OAAU,CAAC,oCAAsC,6BAA8B,CAAE,MAAS,6BAA8B,OAAU,CAAC,4CAA8C,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,SAAW,cAAe,CAAE,MAAS,cAAe,OAAU,CAAC,iBAAmB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,WAAa,gBAAiB,CAAE,MAAS,gBAAiB,OAAU,CAAC,0BAA4B,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,aAAe,wBAAyB,CAAE,MAAS,wBAAyB,OAAU,CAAC,wCAA0C,4BAA6B,CAAE,MAAS,4BAA6B,OAAU,CAAC,8CAAgD,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,yCAA2C,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,WAAa,iBAAkB,CAAE,MAAS,iBAAkB,aAAgB,qBAAsB,OAAU,CAAC,sBAAuB,6BAA+B,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,uBAAyB,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,qBAAuB,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,sBAAwB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,+BAAiC,4BAA6B,CAAE,MAAS,4BAA6B,OAAU,CAAC,0BAA4B,kBAAmB,CAAE,MAAS,kBAAmB,OAAU,CAAC,sBAAwB,iGAAkG,CAAE,MAAS,iGAAkG,OAAU,CAAC,2GAA6G,yIAA0I,CAAE,MAAS,yIAA0I,OAAU,CAAC,gJAAkJ,mCAAoC,CAAE,MAAS,mCAAoC,OAAU,CAAC,mCAAqC,oEAAqE,CAAE,MAAS,oEAAqE,OAAU,CAAC,kFAAwF,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,+DAAgE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,8HAAgI,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,4TAA8T,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,yEAA0E,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,2OAA6O,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,iEAAkE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,wGAA0G,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,wSAA0S,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,MAAO,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,uEAAwE,eAAgB,4BAA6B,SAAY,MAAO,eAAgB,oFAAsF,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,2RAA6R,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,kEAAmE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,iOAAmO,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,kBAAmB,gBAAiB,+EAAgF,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,mFAAqF,OAAU,CAAC,0OAA4O,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,2BAA6B,cAAe,CAAE,MAAS,cAAe,SAAY,CAAE,UAAa,gCAAkC,OAAU,CAAC,qBAAuB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,4BAA8B,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,cAAgB,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,6BAA+B,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,2BAA6B,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,kBAAoB,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,0BAAgC,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,iEAAkE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,gOAAkO,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,oEAAqE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,mOAAqO,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,oCAAqC,gBAAiB,mEAAoE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,yBAA2B,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,+HAAiI,OAAU,CAAC,sOAAwO,wBAAyB,CAAE,MAAS,wBAAyB,aAAgB,yBAA0B,OAAU,CAAC,8BAAgC,qCAAsC,CAAE,MAAS,qCAAsC,aAAgB,sCAAuC,OAAU,CAAC,8CAAgD,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,4BAA8B,cAAe,CAAE,MAAS,cAAe,SAAY,CAAE,UAAa,4CAA8C,OAAU,CAAC,mBAAqB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,0BAA4B,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,sBAAwB,SAAY,CAAE,MAAS,WAAY,OAAU,CAAC,cAAgB,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,qCAAuC,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,mBAAqB,qFAAsF,CAAE,MAAS,qFAAsF,OAAU,CAAC,kFAAoF,6BAA8B,CAAE,MAAS,6BAA8B,OAAU,CAAC,+CAAiD,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,SAAW,cAAe,CAAE,MAAS,cAAe,OAAU,CAAC,eAAiB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,WAAa,gBAAiB,CAAE,MAAS,gBAAiB,OAAU,CAAC,qBAAuB,wBAAyB,CAAE,MAAS,wBAAyB,OAAU,CAAC,8BAAgC,4BAA6B,CAAE,MAAS,4BAA6B,OAAU,CAAC,gCAAkC,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,4BAA8B,iBAAkB,CAAE,MAAS,iBAAkB,aAAgB,qBAAsB,OAAU,CAAC,0BAA4B,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,2BAA6B,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,wBAA0B,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,kBAAoB,mCAAoC,CAAE,MAAS,mCAAoC,OAAU,CAAC,8CAAgD,oEAAqE,CAAE,MAAS,oEAAqE,OAAU,CAAC,8FAAoG,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,6DAA8D,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,yBAA2B,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,qNAAuN,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yCAA0C,gBAAiB,kEAAmE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,sDAAwD,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4DAA8D,OAAU,CAAC,uQAAyQ,wBAAyB,CAAE,MAAS,wBAAyB,aAAgB,yBAA0B,OAAU,CAAC,yBAA0B,4BAA8B,qCAAsC,CAAE,MAAS,qCAAsC,aAAgB,sCAAuC,OAAU,CAAC,qCAAsC,wCAA0C,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,6BAA+B,cAAe,CAAE,MAAS,cAAe,SAAY,CAAE,UAAa,4CAA8C,OAAU,CAAC,iBAAmB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,2BAA6B,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,2BAA6B,SAAY,CAAE,MAAS,WAAY,OAAU,CAAC,gBAAkB,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,4BAA8B,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,0BAA4B,qFAAsF,CAAE,MAAS,qFAAsF,OAAU,CAAC,+FAAiG,6BAA8B,CAAE,MAAS,6BAA8B,OAAU,CAAC,0CAA4C,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,SAAW,cAAe,CAAE,MAAS,cAAe,OAAU,CAAC,cAAgB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,UAAY,gBAAiB,CAAE,MAAS,gBAAiB,OAAU,CAAC,qBAAuB,wBAAyB,CAAE,MAAS,wBAAyB,OAAU,CAAC,mBAAqB,4BAA6B,CAAE,MAAS,4BAA6B,OAAU,CAAC,qCAAuC,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,4BAA8B,iBAAkB,CAAE,MAAS,iBAAkB,aAAgB,qBAAsB,OAAU,CAAC,sBAAuB,yBAA2B,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,iBAAmB,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,yBAA2B,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,oBAAsB,mCAAoC,CAAE,MAAS,mCAAoC,OAAU,CAAC,0CAA4C,oEAAqE,CAAE,MAAS,oEAAqE,OAAU,CAAC,2FAAiG,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,iBAAkB,gBAAiB,gEAAiE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,uEAAyE,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,kGAAoG,OAAU,CAAC,8PAAgQ,wBAAyB,CAAE,MAAS,wBAAyB,aAAgB,yBAA0B,OAAU,CAAC,4BAA6B,4BAA6B,8BAAgC,qCAAsC,CAAE,MAAS,qCAAsC,aAAgB,sCAAuC,OAAU,CAAC,yCAA0C,yCAA0C,2CAA6C,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,iCAAmC,cAAe,CAAE,MAAS,cAAe,SAAY,CAAE,UAAa,4CAA8C,OAAU,CAAC,qBAAuB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,6BAA+B,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,0BAA4B,SAAY,CAAE,MAAS,WAAY,OAAU,CAAC,aAAe,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,+BAAiC,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,uBAAyB,qFAAsF,CAAE,MAAS,qFAAsF,OAAU,CAAC,2FAA6F,6BAA8B,CAAE,MAAS,6BAA8B,OAAU,CAAC,gCAAkC,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,UAAY,cAAe,CAAE,MAAS,cAAe,OAAU,CAAC,mBAAqB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,UAAY,gBAAiB,CAAE,MAAS,gBAAiB,OAAU,CAAC,uBAAyB,wBAAyB,CAAE,MAAS,wBAAyB,OAAU,CAAC,+BAAiC,4BAA6B,CAAE,MAAS,4BAA6B,OAAU,CAAC,qCAAuC,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,iCAAmC,iBAAkB,CAAE,MAAS,iBAAkB,aAAgB,qBAAsB,OAAU,CAAC,oBAAqB,qBAAsB,uBAAyB,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,2BAA6B,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,2BAA6B,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,kBAAoB,mCAAoC,CAAE,MAAS,mCAAoC,OAAU,CAAC,+BAAiC,oEAAqE,CAAE,MAAS,oEAAqE,OAAU,CAAC,yEAA+E,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,2EAA4E,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,uEAAyE,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,oRAAsR,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,aAAc,gBAAiB,4EAA6E,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,yBAA2B,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,2CAA6C,OAAU,CAAC,2NAA6N,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,mBAAqB,cAAe,CAAE,MAAS,cAAe,SAAY,CAAE,UAAa,gCAAkC,OAAU,CAAC,cAAgB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,SAAW,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,OAAS,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,iBAAmB,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,WAAa,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,UAAY,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,oBAA0B,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,iEAAkE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,8BAAgC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,8NAAgO,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,8EAA+E,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,8BAAgC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,8OAAgP,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,MAAO,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,gBAAiB,gBAAiB,gEAAiE,eAAgB,4BAA6B,SAAY,MAAO,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,mCAAqC,OAAU,CAAC,uNAAyN,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,oCAAsC,cAAe,CAAE,MAAS,cAAe,SAAY,CAAE,UAAa,gCAAkC,OAAU,CAAC,wBAA0B,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,iCAAmC,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,QAAU,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,iBAAmB,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,gCAAkC,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,WAAa,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,sBAA4B,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,+DAAgE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,8BAAgC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,4NAA8N,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,8DAA+D,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,yBAA2B,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,sNAAwN,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,gEAAiE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,+BAAiC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,8NAAgO,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,YAAa,gBAAiB,+DAAgE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,yBAA2B,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,qDAAuD,OAAU,CAAC,0MAA4M,yEAA0E,CAAE,MAAS,yEAA0E,OAAU,CAAC,8CAAgD,wBAAyB,CAAE,MAAS,wBAAyB,aAAgB,yBAA0B,OAAU,CAAC,sBAAwB,qCAAsC,CAAE,MAAS,qCAAsC,aAAgB,sCAAuC,OAAU,CAAC,kCAAoC,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,kBAAoB,cAAe,CAAE,MAAS,cAAe,SAAY,CAAE,UAAa,4CAA8C,OAAU,CAAC,cAAgB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,SAAW,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,OAAS,8BAA+B,CAAE,MAAS,8BAA+B,OAAU,CAAC,cAAgB,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,WAAa,SAAY,CAAE,MAAS,WAAY,OAAU,CAAC,OAAS,aAAc,CAAE,MAAS,aAAc,OAAU,CAAC,WAAa,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,aAAe,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,UAAY,uFAAwF,CAAE,MAAS,uFAAwF,OAAU,CAAC,2CAA6C,oBAAqB,CAAE,MAAS,oBAAqB,OAAU,CAAC,cAAgB,6BAA8B,CAAE,MAAS,6BAA8B,OAAU,CAAC,kBAAoB,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,WAAa,cAAe,CAAE,MAAS,cAAe,OAAU,CAAC,SAAW,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,UAAY,gBAAiB,CAAE,MAAS,gBAAiB,OAAU,CAAC,aAAe,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,WAAa,wBAAyB,CAAE,MAAS,wBAAyB,OAAU,CAAC,eAAiB,4BAA6B,CAAE,MAAS,4BAA6B,OAAU,CAAC,iBAAmB,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,kBAAoB,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,SAAW,iBAAkB,CAAE,MAAS,iBAAkB,aAAgB,qBAAsB,OAAU,CAAC,qBAAuB,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,eAAiB,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,WAAa,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,WAAa,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,aAAe,4BAA6B,CAAE,MAAS,4BAA6B,OAAU,CAAC,kBAAoB,kBAAmB,CAAE,MAAS,kBAAmB,OAAU,CAAC,YAAc,iGAAkG,CAAE,MAAS,iGAAkG,OAAU,CAAC,2CAA6C,yIAA0I,CAAE,MAAS,yIAA0I,OAAU,CAAC,6DAA+D,mCAAoC,CAAE,MAAS,mCAAoC,OAAU,CAAC,qBAAuB,oEAAqE,CAAE,MAAS,oEAAqE,OAAU,CAAC,6CAAmD,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,8DAA+D,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,6NAA+N,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,sEAAuE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,qOAAuO,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,4DAA6D,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,yBAA2B,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,oNAAsN,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,kFAAmF,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,mKAAqK,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,uXAAyX,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,gEAAiE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,mEAAqE,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,kQAAoQ,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,8CAA+C,gBAAiB,mEAAoE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,8DAAgE,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,iEAAmE,OAAU,CAAC,qRAAuR,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,oCAAsC,cAAe,CAAE,MAAS,cAAe,SAAY,CAAE,UAAa,gCAAkC,OAAU,CAAC,uBAAyB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,yBAA2B,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,WAAa,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,wBAA0B,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,gCAAkC,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,cAAgB,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,6BAAmC,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,0BAA2B,gBAAiB,kEAAmE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,6CAA+C,OAAU,CAAC,kOAAoO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,4BAA8B,cAAe,CAAE,MAAS,cAAe,SAAY,CAAE,UAAa,gCAAkC,OAAU,CAAC,kBAAoB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,yBAA2B,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,UAAY,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,sBAAwB,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,mCAAqC,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,kBAAoB,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,oBAA0B,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,gEAAiE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,+NAAiO,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,4EAA6E,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,yBAA2B,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,uOAAyO,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,gEAAiE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,yBAA2B,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,wNAA0N,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,uBAAwB,gBAAiB,qFAAsF,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,yFAA2F,OAAU,CAAC,qPAAuP,wBAAyB,CAAE,MAAS,wBAAyB,aAAgB,yBAA0B,OAAU,CAAC,wBAAyB,0BAA4B,qCAAsC,CAAE,MAAS,qCAAsC,aAAgB,sCAAuC,OAAU,CAAC,qCAAsC,sCAAwC,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,6BAA+B,cAAe,CAAE,MAAS,cAAe,SAAY,CAAE,UAAa,4CAA8C,OAAU,CAAC,iBAAmB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,2BAA6B,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,yBAA2B,SAAY,CAAE,MAAS,WAAY,OAAU,CAAC,aAAe,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,wBAA0B,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,sBAAwB,qFAAsF,CAAE,MAAS,qFAAsF,OAAU,CAAC,uFAAyF,6BAA8B,CAAE,MAAS,6BAA8B,OAAU,CAAC,+BAAiC,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,OAAS,cAAe,CAAE,MAAS,cAAe,OAAU,CAAC,eAAiB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,WAAa,gBAAiB,CAAE,MAAS,gBAAiB,OAAU,CAAC,sBAAwB,wBAAyB,CAAE,MAAS,wBAAyB,OAAU,CAAC,cAAgB,4BAA6B,CAAE,MAAS,4BAA6B,OAAU,CAAC,iCAAmC,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,wBAA0B,iBAAkB,CAAE,MAAS,iBAAkB,aAAgB,qBAAsB,OAAU,CAAC,iBAAkB,4BAA8B,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,qBAAuB,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,uBAAyB,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,mBAAqB,kBAAmB,CAAE,MAAS,kBAAmB,OAAU,CAAC,0BAA4B,mCAAoC,CAAE,MAAS,mCAAoC,OAAU,CAAC,iCAAmC,oEAAqE,CAAE,MAAS,oEAAqE,OAAU,CAAC,kEAAwE,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,+DAAgE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,8NAAgO,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,uCAAwC,gBAAiB,8DAA+D,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,0DAA4D,OAAU,CAAC,2OAA6O,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,2BAA6B,cAAe,CAAE,MAAS,cAAe,SAAY,CAAE,UAAa,gCAAkC,OAAU,CAAC,mBAAqB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,0BAA4B,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,aAAe,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,sBAAwB,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,qCAAuC,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,eAAiB,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,yBAA+B,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,0EAA2E,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,yOAA2O,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,sFAAuF,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,wPAA0P,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,4EAA6E,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,+BAAiC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,0OAA4O,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,4CAA6C,gBAAiB,+DAAgE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,kLAAoL,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,qFAAuF,OAAU,CAAC,mYAAqY,wBAAyB,CAAE,MAAS,wBAAyB,aAAgB,yBAA0B,OAAU,CAAC,mBAAoB,4BAA6B,4BAA6B,8BAAgC,qCAAsC,CAAE,MAAS,qCAAsC,aAAgB,sCAAuC,OAAU,CAAC,uCAAwC,2CAA4C,2CAA4C,6CAA+C,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,+BAAiC,cAAe,CAAE,MAAS,cAAe,SAAY,CAAE,UAAa,4CAA8C,OAAU,CAAC,qBAAuB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,2BAA6B,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,WAAa,8BAA+B,CAAE,MAAS,8BAA+B,OAAU,CAAC,yBAA2B,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,qBAAuB,SAAY,CAAE,MAAS,WAAY,OAAU,CAAC,cAAgB,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,iCAAmC,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,sBAAwB,uFAAwF,CAAE,MAAS,uFAAwF,OAAU,CAAC,uFAAyF,6BAA8B,CAAE,MAAS,6BAA8B,OAAU,CAAC,wCAA0C,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,SAAW,cAAe,CAAE,MAAS,cAAe,OAAU,CAAC,gBAAkB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,eAAiB,gBAAiB,CAAE,MAAS,gBAAiB,OAAU,CAAC,mBAAqB,wBAAyB,CAAE,MAAS,wBAAyB,OAAU,CAAC,2BAA6B,4BAA6B,CAAE,MAAS,4BAA6B,OAAU,CAAC,uCAAyC,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,iCAAmC,iBAAkB,CAAE,MAAS,iBAAkB,aAAgB,qBAAsB,OAAU,CAAC,eAAgB,uBAAwB,uBAAwB,yBAA2B,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,qBAAuB,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,wBAA0B,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,iBAAmB,kBAAmB,CAAE,MAAS,kBAAmB,OAAU,CAAC,qBAAuB,iGAAkG,CAAE,MAAS,iGAAkG,OAAU,CAAC,0HAA4H,yIAA0I,CAAE,MAAS,yIAA0I,OAAU,CAAC,mJAAqJ,mCAAoC,CAAE,MAAS,mCAAoC,OAAU,CAAC,iCAAmC,oEAAqE,CAAE,MAAS,oEAAqE,OAAU,CAAC,+EAAqF,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,+DAAgE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,8NAAgO,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,2DAA4D,gBAAiB,+EAAgF,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,mFAAqF,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,oGAAsG,OAAU,CAAC,sUAAwU,wBAAyB,CAAE,MAAS,wBAAyB,aAAgB,yBAA0B,OAAU,CAAC,+BAAgC,+BAAgC,iCAAmC,qCAAsC,CAAE,MAAS,qCAAsC,aAAgB,sCAAuC,OAAU,CAAC,4CAA6C,4CAA6C,8CAAgD,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,iCAAmC,cAAe,CAAE,MAAS,cAAe,SAAY,CAAE,UAAa,4CAA8C,OAAU,CAAC,oBAAsB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,8BAAgC,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,aAAe,8BAA+B,CAAE,MAAS,8BAA+B,OAAU,CAAC,gCAAkC,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,qBAAuB,SAAY,CAAE,MAAS,WAAY,OAAU,CAAC,cAAgB,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,6BAA+B,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,qBAAuB,qFAAsF,CAAE,MAAS,qFAAsF,OAAU,CAAC,kGAAoG,6BAA8B,CAAE,MAAS,6BAA8B,OAAU,CAAC,4CAA8C,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,SAAW,cAAe,CAAE,MAAS,cAAe,OAAU,CAAC,gBAAkB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,YAAc,gBAAiB,CAAE,MAAS,gBAAiB,OAAU,CAAC,sBAAwB,wBAAyB,CAAE,MAAS,wBAAyB,OAAU,CAAC,sCAAwC,4BAA6B,CAAE,MAAS,4BAA6B,OAAU,CAAC,2CAA6C,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,sCAAwC,iBAAkB,CAAE,MAAS,iBAAkB,aAAgB,qBAAsB,OAAU,CAAC,2BAA4B,2BAA4B,6BAA+B,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,yBAA2B,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,oBAAsB,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,oBAAsB,kBAAmB,CAAE,MAAS,kBAAmB,OAAU,CAAC,uBAAyB,iGAAkG,CAAE,MAAS,iGAAkG,OAAU,CAAC,8FAAgG,mCAAoC,CAAE,MAAS,mCAAoC,OAAU,CAAC,uCAAyC,oEAAqE,CAAE,MAAS,oEAAqE,OAAU,CAAC,sFAA4F,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,sCAAuC,gBAAiB,iFAAkF,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,mFAAqF,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,yDAA2D,OAAU,CAAC,mTAAqT,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,gCAAkC,cAAe,CAAE,MAAS,cAAe,SAAY,CAAE,UAAa,gCAAkC,OAAU,CAAC,kBAAoB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,wBAA0B,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,cAAgB,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,oBAAsB,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,4BAA8B,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,YAAc,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,yBAA+B,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,qDAAsD,gBAAiB,iEAAkE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,yEAA2E,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,wEAA0E,OAAU,CAAC,qSAAuS,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,6BAA+B,cAAe,CAAE,MAAS,cAAe,SAAY,CAAE,UAAa,gCAAkC,OAAU,CAAC,iBAAmB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,0BAA4B,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,WAAa,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,wBAA0B,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,6BAA+B,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,iBAAmB,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,wBAA8B,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,aAAc,gBAAiB,gEAAiE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,0KAA4K,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,sFAAwF,OAAU,CAAC,6VAA+V,yEAA0E,CAAE,MAAS,yEAA0E,OAAU,CAAC,mEAAqE,wBAAyB,CAAE,MAAS,wBAAyB,aAAgB,yBAA0B,OAAU,CAAC,yBAA0B,0BAA2B,0BAA2B,4BAA8B,qCAAsC,CAAE,MAAS,qCAAsC,aAAgB,sCAAuC,OAAU,CAAC,qCAAsC,sCAAuC,sCAAuC,wCAA0C,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,8BAAgC,cAAe,CAAE,MAAS,cAAe,SAAY,CAAE,UAAa,4CAA8C,OAAU,CAAC,oBAAsB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,8BAAgC,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,WAAa,8BAA+B,CAAE,MAAS,8BAA+B,OAAU,CAAC,kCAAoC,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,sBAAwB,SAAY,CAAE,MAAS,WAAY,OAAU,CAAC,eAAiB,aAAc,CAAE,MAAS,aAAc,OAAU,CAAC,kBAAoB,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,+BAAiC,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,mBAAqB,uFAAwF,CAAE,MAAS,uFAAwF,OAAU,CAAC,+EAAiF,oBAAqB,CAAE,MAAS,oBAAqB,OAAU,CAAC,0BAA4B,6BAA8B,CAAE,MAAS,6BAA8B,OAAU,CAAC,yCAA2C,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,UAAY,cAAe,CAAE,MAAS,cAAe,OAAU,CAAC,iBAAmB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,mBAAqB,gBAAiB,CAAE,MAAS,gBAAiB,OAAU,CAAC,6BAA+B,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,kBAAoB,wBAAyB,CAAE,MAAS,wBAAyB,OAAU,CAAC,0BAA4B,4BAA6B,CAAE,MAAS,4BAA6B,OAAU,CAAC,mCAAqC,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,4BAA8B,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,YAAc,iBAAkB,CAAE,MAAS,iBAAkB,aAAgB,qBAAsB,OAAU,CAAC,kBAAmB,2BAA4B,4BAA6B,8BAAgC,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,uBAAyB,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,oBAAsB,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,mBAAqB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,0BAA4B,4BAA6B,CAAE,MAAS,4BAA6B,OAAU,CAAC,2BAA6B,kBAAmB,CAAE,MAAS,kBAAmB,OAAU,CAAC,iCAAmC,iGAAkG,CAAE,MAAS,iGAAkG,OAAU,CAAC,0FAA4F,yIAA0I,CAAE,MAAS,yIAA0I,OAAU,CAAC,gIAAkI,mCAAoC,CAAE,MAAS,mCAAoC,OAAU,CAAC,qCAAuC,oEAAqE,CAAE,MAAS,oEAAqE,OAAU,CAAC,qFAA2F,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,4EAA6E,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,0KAA4K,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,wXAA0X,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,kEAAmE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,iOAAmO,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,gEAAiE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,+NAAiO,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,+EAAgF,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,iPAAmP,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,6EAA8E,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,2GAA6G,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,0TAA4T,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,0BAA2B,gBAAiB,kEAAmE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,oFAAsF,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,6CAA+C,OAAU,CAAC,sRAAwR,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,wBAA0B,cAAe,CAAE,MAAS,cAAe,SAAY,CAAE,UAAa,gCAAkC,OAAU,CAAC,cAAgB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,oBAAsB,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,UAAY,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,wBAA0B,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,yBAA2B,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,cAAgB,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,wBAA8B,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,gFAAiF,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,oFAAsF,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,sSAAwS,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,iEAAkE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,gOAAkO,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,mBAAoB,gBAAiB,gEAAiE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,0GAA4G,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,qFAAuF,OAAU,CAAC,mSAAqS,wBAAyB,CAAE,MAAS,wBAAyB,aAAgB,yBAA0B,OAAU,CAAC,wBAAyB,yBAA0B,2BAA6B,qCAAsC,CAAE,MAAS,qCAAsC,aAAgB,sCAAuC,OAAU,CAAC,oCAAqC,qCAAsC,uCAAyC,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,mCAAqC,cAAe,CAAE,MAAS,cAAe,SAAY,CAAE,UAAa,4CAA8C,OAAU,CAAC,qBAAuB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,kCAAoC,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,uBAAyB,SAAY,CAAE,MAAS,WAAY,OAAU,CAAC,YAAc,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,+BAAiC,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,sBAAwB,qFAAsF,CAAE,MAAS,qFAAsF,OAAU,CAAC,yEAA2E,6BAA8B,CAAE,MAAS,6BAA8B,OAAU,CAAC,sCAAwC,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,SAAW,cAAe,CAAE,MAAS,cAAe,OAAU,CAAC,iBAAmB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,cAAgB,gBAAiB,CAAE,MAAS,gBAAiB,OAAU,CAAC,mBAAqB,wBAAyB,CAAE,MAAS,wBAAyB,OAAU,CAAC,qCAAuC,4BAA6B,CAAE,MAAS,4BAA6B,OAAU,CAAC,kCAAoC,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,6BAA+B,iBAAkB,CAAE,MAAS,iBAAkB,aAAgB,qBAAsB,OAAU,CAAC,qBAAsB,yBAA0B,6BAA+B,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,uBAAyB,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,0BAA4B,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,oBAAsB,kBAAmB,CAAE,MAAS,kBAAmB,OAAU,CAAC,uBAAyB,mCAAoC,CAAE,MAAS,mCAAoC,OAAU,CAAC,qCAAuC,oEAAqE,CAAE,MAAS,oEAAqE,OAAU,CAAC,2EAAiF,CAAE,OAAU,WAAY,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,8EAA+E,eAAgB,4BAA6B,SAAY,WAAY,eAAgB,0GAA4G,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,6TAA+T,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,uBAAwB,gBAAiB,gEAAiE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,gEAAkE,OAAU,CAAC,6NAA+N,yEAA0E,CAAE,MAAS,yEAA0E,OAAU,CAAC,oEAAsE,wBAAyB,CAAE,MAAS,wBAAyB,aAAgB,yBAA0B,OAAU,CAAC,sBAAuB,0BAA4B,qCAAsC,CAAE,MAAS,qCAAsC,aAAgB,sCAAuC,OAAU,CAAC,kCAAmC,sCAAwC,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,gCAAkC,cAAe,CAAE,MAAS,cAAe,SAAY,CAAE,UAAa,4CAA8C,OAAU,CAAC,oBAAsB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,wBAA0B,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,WAAa,8BAA+B,CAAE,MAAS,8BAA+B,OAAU,CAAC,4BAA8B,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,yBAA2B,SAAY,CAAE,MAAS,WAAY,OAAU,CAAC,aAAe,aAAc,CAAE,MAAS,aAAc,OAAU,CAAC,aAAe,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,+BAAiC,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,sBAAwB,uFAAwF,CAAE,MAAS,uFAAwF,OAAU,CAAC,mGAAqG,oBAAqB,CAAE,MAAS,oBAAqB,OAAU,CAAC,qBAAuB,6BAA8B,CAAE,MAAS,6BAA8B,OAAU,CAAC,gCAAkC,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,OAAS,cAAe,CAAE,MAAS,cAAe,OAAU,CAAC,eAAiB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,WAAa,gBAAiB,CAAE,MAAS,gBAAiB,OAAU,CAAC,yBAA2B,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,aAAe,wBAAyB,CAAE,MAAS,wBAAyB,OAAU,CAAC,4BAA8B,4BAA6B,CAAE,MAAS,4BAA6B,OAAU,CAAC,+BAAiC,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,wBAA0B,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,eAAiB,iBAAkB,CAAE,MAAS,iBAAkB,aAAgB,qBAAsB,OAAU,CAAC,uBAAwB,6BAA+B,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,kBAAoB,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,oBAAsB,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,qBAAuB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,yBAA2B,4BAA6B,CAAE,MAAS,4BAA6B,OAAU,CAAC,gCAAkC,kBAAmB,CAAE,MAAS,kBAAmB,OAAU,CAAC,wBAA0B,iGAAkG,CAAE,MAAS,iGAAkG,OAAU,CAAC,iFAAmF,yIAA0I,CAAE,MAAS,yIAA0I,OAAU,CAAC,sHAAwH,mCAAoC,CAAE,MAAS,mCAAoC,OAAU,CAAC,iCAAmC,oEAAqE,CAAE,MAAS,oEAAqE,OAAU,CAAC,wEAA8E,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,gEAAiE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,+NAAiO,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,8DAA+D,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,6NAA+N,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,6EAA8E,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,+OAAiP,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,6DAA8D,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,yBAA2B,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,qNAAuN,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,oDAAqD,gBAAiB,2EAA4E,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,yBAA2B,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,uEAAyE,OAAU,CAAC,iQAAmQ,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,8BAAgC,cAAe,CAAE,MAAS,cAAe,SAAY,CAAE,UAAa,gCAAkC,OAAU,CAAC,oBAAsB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,yBAA2B,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,UAAY,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,qBAAuB,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,2BAA6B,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,iBAAmB,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,oBAA0B,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,gEAAiE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,+NAAiO,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yCAA0C,gBAAiB,gEAAiE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,+BAAiC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,kFAAoF,OAAU,CAAC,8OAAgP,yEAA0E,CAAE,MAAS,yEAA0E,OAAU,CAAC,8EAAgF,wBAAyB,CAAE,MAAS,wBAAyB,aAAgB,yBAA0B,OAAU,CAAC,8BAA+B,gCAAkC,qCAAsC,CAAE,MAAS,qCAAsC,aAAgB,sCAAuC,OAAU,CAAC,mDAAoD,qDAAuD,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,2BAA6B,cAAe,CAAE,MAAS,cAAe,SAAY,CAAE,UAAa,4CAA8C,OAAU,CAAC,iBAAmB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,yBAA2B,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,UAAY,8BAA+B,CAAE,MAAS,8BAA+B,OAAU,CAAC,wBAA0B,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,yBAA2B,SAAY,CAAE,MAAS,WAAY,OAAU,CAAC,WAAa,aAAc,CAAE,MAAS,aAAc,OAAU,CAAC,cAAgB,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,yBAA2B,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,mBAAqB,uFAAwF,CAAE,MAAS,uFAAwF,OAAU,CAAC,qEAAuE,oBAAqB,CAAE,MAAS,oBAAqB,OAAU,CAAC,uBAAyB,6BAA8B,CAAE,MAAS,6BAA8B,OAAU,CAAC,uCAAyC,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,SAAW,cAAe,CAAE,MAAS,cAAe,OAAU,CAAC,eAAiB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,iBAAmB,gBAAiB,CAAE,MAAS,gBAAiB,OAAU,CAAC,uBAAyB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,qBAAuB,wBAAyB,CAAE,MAAS,wBAAyB,OAAU,CAAC,0BAA4B,4BAA6B,CAAE,MAAS,4BAA6B,OAAU,CAAC,+BAAiC,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,2BAA6B,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,SAAW,iBAAkB,CAAE,MAAS,iBAAkB,aAAgB,qBAAsB,OAAU,CAAC,kBAAmB,yBAA2B,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,qBAAuB,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,oBAAsB,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,qBAAuB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,mBAAqB,4BAA6B,CAAE,MAAS,4BAA6B,OAAU,CAAC,yBAA2B,kBAAmB,CAAE,MAAS,kBAAmB,OAAU,CAAC,uBAAyB,iGAAkG,CAAE,MAAS,iGAAkG,OAAU,CAAC,mFAAqF,yIAA0I,CAAE,MAAS,yIAA0I,OAAU,CAAC,+GAAiH,mCAAoC,CAAE,MAAS,mCAAoC,OAAU,CAAC,yCAA2C,oEAAqE,CAAE,MAAS,oEAAqE,OAAU,CAAC,qEAA2E,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,+DAAgE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,8NAAgO,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,2CAA4C,gBAAiB,kEAAmE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,8PAAgQ,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,oFAAsF,OAAU,CAAC,idAAmd,wBAAyB,CAAE,MAAS,wBAAyB,aAAgB,yBAA0B,OAAU,CAAC,2BAA4B,4BAA6B,6BAA8B,+BAAiC,qCAAsC,CAAE,MAAS,qCAAsC,aAAgB,sCAAuC,OAAU,CAAC,gDAAiD,iDAAkD,kDAAmD,oDAAsD,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,gCAAkC,cAAe,CAAE,MAAS,cAAe,SAAY,CAAE,UAAa,4CAA8C,OAAU,CAAC,sBAAwB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,6BAA+B,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,cAAgB,8BAA+B,CAAE,MAAS,8BAA+B,OAAU,CAAC,gCAAkC,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,2BAA6B,SAAY,CAAE,MAAS,WAAY,OAAU,CAAC,eAAiB,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,8BAAgC,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,oBAAsB,uFAAwF,CAAE,MAAS,uFAAwF,OAAU,CAAC,gFAAkF,6BAA8B,CAAE,MAAS,6BAA8B,OAAU,CAAC,kCAAoC,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,SAAW,cAAe,CAAE,MAAS,cAAe,OAAU,CAAC,gBAAkB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,gBAAkB,gBAAiB,CAAE,MAAS,gBAAiB,OAAU,CAAC,wBAA0B,wBAAyB,CAAE,MAAS,wBAAyB,OAAU,CAAC,gBAAkB,4BAA6B,CAAE,MAAS,4BAA6B,OAAU,CAAC,+BAAiC,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,2BAA6B,iBAAkB,CAAE,MAAS,iBAAkB,aAAgB,qBAAsB,OAAU,CAAC,kBAAmB,2BAA4B,4BAA6B,8BAAgC,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,qBAAuB,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,2BAA6B,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,sBAAwB,kBAAmB,CAAE,MAAS,kBAAmB,OAAU,CAAC,wBAA0B,iGAAkG,CAAE,MAAS,iGAAkG,OAAU,CAAC,oFAAsF,yIAA0I,CAAE,MAAS,yIAA0I,OAAU,CAAC,qJAAuJ,mCAAoC,CAAE,MAAS,mCAAoC,OAAU,CAAC,wBAA0B,oEAAqE,CAAE,MAAS,oEAAqE,OAAU,CAAC,kFAAwF,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,2EAA4E,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,6OAA+O,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,8DAA+D,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,yBAA2B,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,sNAAwN,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,uBAAwB,gBAAiB,mEAAoE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,yBAA2B,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,yFAA2F,OAAU,CAAC,yNAA2N,wBAAyB,CAAE,MAAS,wBAAyB,aAAgB,yBAA0B,OAAU,CAAC,6BAA+B,qCAAsC,CAAE,MAAS,qCAAsC,aAAgB,sCAAuC,OAAU,CAAC,wCAA0C,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,sBAAwB,cAAe,CAAE,MAAS,cAAe,SAAY,CAAE,UAAa,4CAA8C,OAAU,CAAC,mBAAqB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,yBAA2B,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,gBAAkB,SAAY,CAAE,MAAS,WAAY,OAAU,CAAC,aAAe,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,8BAAgC,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,uBAAyB,qFAAsF,CAAE,MAAS,qFAAsF,OAAU,CAAC,uFAAyF,6BAA8B,CAAE,MAAS,6BAA8B,OAAU,CAAC,yCAA2C,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,YAAc,cAAe,CAAE,MAAS,cAAe,OAAU,CAAC,kBAAoB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,gBAAkB,gBAAiB,CAAE,MAAS,gBAAiB,OAAU,CAAC,kBAAoB,wBAAyB,CAAE,MAAS,wBAAyB,OAAU,CAAC,6BAA+B,4BAA6B,CAAE,MAAS,4BAA6B,OAAU,CAAC,mCAAqC,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,gCAAkC,iBAAkB,CAAE,MAAS,iBAAkB,aAAgB,qBAAsB,OAAU,CAAC,2BAA6B,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,wBAA0B,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,iBAAmB,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,oBAAsB,kBAAmB,CAAE,MAAS,kBAAmB,OAAU,CAAC,iBAAmB,mCAAoC,CAAE,MAAS,mCAAoC,OAAU,CAAC,8BAAgC,oEAAqE,CAAE,MAAS,oEAAqE,OAAU,CAAC,uEAA6E,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,oBAAqB,gBAAiB,2EAA4E,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,yBAA2B,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,sFAAwF,OAAU,CAAC,iOAAmO,wBAAyB,CAAE,MAAS,wBAAyB,aAAgB,yBAA0B,OAAU,CAAC,gBAAkB,qCAAsC,CAAE,MAAS,qCAAsC,aAAgB,sCAAuC,OAAU,CAAC,+BAAiC,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,mBAAqB,cAAe,CAAE,MAAS,cAAe,SAAY,CAAE,UAAa,4CAA8C,OAAU,CAAC,cAAgB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,SAAW,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,OAAS,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,SAAW,SAAY,CAAE,MAAS,WAAY,OAAU,CAAC,OAAS,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,WAAa,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,UAAY,qFAAsF,CAAE,MAAS,qFAAsF,OAAU,CAAC,+BAAiC,6BAA8B,CAAE,MAAS,6BAA8B,OAAU,CAAC,eAAiB,cAAe,CAAE,MAAS,cAAe,OAAU,CAAC,QAAU,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,QAAU,gBAAiB,CAAE,MAAS,gBAAiB,OAAU,CAAC,SAAW,wBAAyB,CAAE,MAAS,wBAAyB,OAAU,CAAC,aAAe,4BAA6B,CAAE,MAAS,4BAA6B,OAAU,CAAC,cAAgB,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,aAAe,iBAAkB,CAAE,MAAS,iBAAkB,aAAgB,qBAAsB,OAAU,CAAC,iBAAmB,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,WAAa,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,SAAW,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,SAAW,mCAAoC,CAAE,MAAS,mCAAoC,OAAU,CAAC,cAAgB,oEAAqE,CAAE,MAAS,oEAAqE,OAAU,CAAC,qBAA2B,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,mBAAoB,gBAAiB,+EAAgF,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,yBAA2B,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4DAA8D,OAAU,CAAC,oOAAsO,wBAAyB,CAAE,MAAS,wBAAyB,aAAgB,yBAA0B,OAAU,CAAC,kBAAoB,qCAAsC,CAAE,MAAS,qCAAsC,aAAgB,sCAAuC,OAAU,CAAC,+BAAiC,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,mBAAqB,cAAe,CAAE,MAAS,cAAe,SAAY,CAAE,UAAa,4CAA8C,OAAU,CAAC,cAAgB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,SAAW,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,OAAS,8BAA+B,CAAE,MAAS,8BAA+B,OAAU,CAAC,WAAa,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,SAAW,SAAY,CAAE,MAAS,WAAY,OAAU,CAAC,OAAS,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,WAAa,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,SAAW,uFAAwF,CAAE,MAAS,uFAAwF,OAAU,CAAC,4BAA8B,6BAA8B,CAAE,MAAS,6BAA8B,OAAU,CAAC,aAAe,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,OAAS,cAAe,CAAE,MAAS,cAAe,OAAU,CAAC,SAAW,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,QAAU,gBAAiB,CAAE,MAAS,gBAAiB,OAAU,CAAC,SAAW,wBAAyB,CAAE,MAAS,wBAAyB,OAAU,CAAC,aAAe,4BAA6B,CAAE,MAAS,4BAA6B,OAAU,CAAC,aAAe,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,YAAc,iBAAkB,CAAE,MAAS,iBAAkB,aAAgB,qBAAsB,OAAU,CAAC,mBAAqB,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,SAAW,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,UAAY,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,SAAW,kBAAmB,CAAE,MAAS,kBAAmB,OAAU,CAAC,SAAW,iGAAkG,CAAE,MAAS,iGAAkG,OAAU,CAAC,6BAA+B,yIAA0I,CAAE,MAAS,yIAA0I,OAAU,CAAC,kCAAoC,mCAAoC,CAAE,MAAS,mCAAoC,OAAU,CAAC,cAAgB,oEAAqE,CAAE,MAAS,oEAAqE,OAAU,CAAC,8BAAoC,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,iCAAkC,gBAAiB,4EAA6E,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,yBAA2B,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,0EAA4E,OAAU,CAAC,+OAAiP,wBAAyB,CAAE,MAAS,wBAAyB,aAAgB,yBAA0B,OAAU,CAAC,kBAAoB,qCAAsC,CAAE,MAAS,qCAAsC,aAAgB,sCAAuC,OAAU,CAAC,+BAAiC,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,mBAAqB,cAAe,CAAE,MAAS,cAAe,SAAY,CAAE,UAAa,4CAA8C,OAAU,CAAC,cAAgB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,SAAW,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,OAAS,8BAA+B,CAAE,MAAS,8BAA+B,OAAU,CAAC,WAAa,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,SAAW,SAAY,CAAE,MAAS,WAAY,OAAU,CAAC,OAAS,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,WAAa,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,SAAW,qFAAsF,CAAE,MAAS,qFAAsF,OAAU,CAAC,6BAA+B,6BAA8B,CAAE,MAAS,6BAA8B,OAAU,CAAC,aAAe,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,OAAS,cAAe,CAAE,MAAS,cAAe,OAAU,CAAC,QAAU,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,QAAU,gBAAiB,CAAE,MAAS,gBAAiB,OAAU,CAAC,SAAW,wBAAyB,CAAE,MAAS,wBAAyB,OAAU,CAAC,aAAe,4BAA6B,CAAE,MAAS,4BAA6B,OAAU,CAAC,aAAe,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,YAAc,iBAAkB,CAAE,MAAS,iBAAkB,aAAgB,qBAAsB,OAAU,CAAC,kBAAoB,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,SAAW,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,UAAY,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,SAAW,kBAAmB,CAAE,MAAS,kBAAmB,OAAU,CAAC,SAAW,iGAAkG,CAAE,MAAS,iGAAkG,OAAU,CAAC,6BAA+B,mCAAoC,CAAE,MAAS,mCAAoC,OAAU,CAAC,cAAgB,oEAAqE,CAAE,MAAS,oEAAqE,OAAU,CAAC,+BAAoCjsD,KAAKsH,GAASwkD,GAAUK,eAAe7kD,EAAKygD,OAAQzgD,EAAKglD,QAClm6O,MAAMtE,GAAK8D,GAAUlnC,QACf9G,GAAIkqC,GAAGW,SAASxuC,KAAK6tC,IACrBniC,GAAImiC,GAAGQ,QAAQruC,KAAK6tC,IAsBpB7gC,IAAS,UAAmBzC,OAAO,qBAAqBC,aAAaC,QAC3E,IAAI2nC,GAAyB,CAAEvC,IAC7BA,EAAQA,EAAc,KAAI,GAAK,OAC/BA,EAAQA,EAAmB,UAAI,GAAK,YACpCA,EAAQA,EAAgB,OAAI,GAAK,SAC1BA,GAJoB,CAK1BuC,IAAU,CAAC,GACd,MAAMC,GAEJC,mBACAC,UAEAC,aAAe,GACfC,UAAY,IAAI52B,EAAO,CAAEC,YAAa,IACtC42B,WAAa,EACbC,eAAiB,EACjBC,aAAe,EACfC,WAAa,GAOb,WAAAvvC,CAAYwvC,GAAW,EAAOC,GAE5B,GADAh0D,KAAKwzD,UAAYO,GACZC,EAAmB,CACtB,MAAM1iD,GAAS,IAAA3N,MAAK,KAAc,MAClC,IAAIswD,EACJ,GAAIF,EACFE,EAAQ,gBACH,CACL,MAAMC,GAAO,WAAkBjjC,IAC/B,IAAKijC,EACH,MAAM,IAAI10C,MAAM,yBAElBy0C,EAAQC,CACV,CACAF,EAAoB,IAAI,KAAO,CAC7Bv/B,GAAI,EACJw/B,QACAt9B,YAAa,KAAWuG,IACxBzG,KAAM,KACNnlB,UAEJ,CACAtR,KAAKq8B,YAAc23B,EACnBh0D,KAAK0zD,UAAUzzD,YAAY,QAAQ,IAAMD,KAAKs6B,UAC9CrM,GAAO2G,MAAM,+BAAgC,CAC3CyH,YAAar8B,KAAKq8B,YAClB5F,KAAMz2B,KAAKy2B,KACXs9B,WACAI,cAAe5D,MAEnB,CAIA,eAAIl0B,GACF,OAAOr8B,KAAKuzD,kBACd,CAIA,eAAIl3B,CAAYkC,GACd,IAAKA,EACH,MAAM,IAAI/e,MAAM,8BAElByO,GAAO2G,MAAM,kBAAmB,CAAE2J,WAClCv+B,KAAKuzD,mBAAqBh1B,CAC5B,CAIA,QAAI9H,GACF,OAAOz2B,KAAKuzD,mBAAmBjiD,MACjC,CAIA,SAAIyO,GACF,OAAO/f,KAAKyzD,YACd,CACA,KAAAn5B,GACEt6B,KAAKyzD,aAAat6C,OAAO,EAAGnZ,KAAKyzD,aAAa/xD,QAC9C1B,KAAK0zD,UAAUxoC,QACflrB,KAAK2zD,WAAa,EAClB3zD,KAAK4zD,eAAiB,EACtB5zD,KAAK6zD,aAAe,CACtB,CAIA,KAAAnxB,GACE1iC,KAAK0zD,UAAUhxB,QACf1iC,KAAK6zD,aAAe,CACtB,CAIA,KAAAlxB,GACE3iC,KAAK0zD,UAAU/wB,QACf3iC,KAAK6zD,aAAe,EACpB7zD,KAAKo0D,aACP,CAIA,QAAIx3B,GACF,MAAO,CACLzT,KAAMnpB,KAAK2zD,WACXhN,SAAU3mD,KAAK4zD,eACf3zB,OAAQjgC,KAAK6zD,aAEjB,CACA,WAAAO,GACE,MAAMjrC,EAAOnpB,KAAKyzD,aAAa3sD,KAAKutD,GAAYA,EAAQlrC,OAAMvgB,QAAO,CAAC0rD,EAAY3tD,IAAM2tD,EAAa3tD,GAAG,GAClGmrD,EAAW9xD,KAAKyzD,aAAa3sD,KAAKutD,GAAYA,EAAQvC,WAAUlpD,QAAO,CAAC0rD,EAAY3tD,IAAM2tD,EAAa3tD,GAAG,GAChH3G,KAAK2zD,WAAaxqC,EAClBnpB,KAAK4zD,eAAiB9B,EACI,IAAtB9xD,KAAK6zD,eAGT7zD,KAAK6zD,aAAe7zD,KAAK0zD,UAAUvqC,KAAO,EAAI,EAAI,EACpD,CACA,WAAAorC,CAAYC,GACVx0D,KAAK8zD,WAAWtzD,KAAKg0D,EACvB,CAKA,UAAAC,CAAWJ,GACT,IAAK,MAAMG,KAAYx0D,KAAK8zD,WAC1B,IACEU,EAASH,EACX,CAAE,MAAO90C,GACP0O,GAAOiU,KAAK,2BAA4B,CAAE3iB,QAAOjO,OAAQ+iD,EAAQ/iD,QACnE,CAEJ,CAgCA,WAAAojD,CAAYr4B,EAAavE,EAAO7N,GAC9B,MAAM0qC,EAAa,IAAIh6B,GAAU,GAAI7C,GAChC7N,IACHA,EAAWoN,MAAOu9B,GAAWA,GAE/B,IAEE,OADA50D,KAAK0zD,UAAU32B,aAAe,EACvB,IAAIwqB,GAAYlwB,MAAOthB,EAASuN,EAAQ2a,KAC7C,IACE,MAAM74B,QAAcpF,KAAK0zD,UAAUz0B,KAAI,KACrC,MAAMmgB,EAAUp/C,KAAK60D,gBAAgBx4B,EAAas4B,EAAY1qC,GAAU,QAAajqB,KAAKy2B,OAE1F,OADAwH,GAAS,IAAMmhB,EAAQh0B,WAChBg0B,CAAO,IAEZh6C,GACF2Q,EAAQ3Q,EAEZ,CAAE,MAAOma,GACP0O,GAAO1O,MAAM,wBAAyB,CAAEA,SAC1C,CACA+D,EAAOqJ,GAAE,6BAA6B,GAE1C,CAAE,QACA3sB,KAAK0zD,UAAU32B,aAAe,CAChC,CACF,CAEA,eAAA83B,CAAgBx4B,EAAajB,EAAWnR,EAAUiN,GAChD,MAAM49B,GAAa,IAAApV,WAAU,GAAGrjB,KAAejB,EAAUp6B,QAAQuF,QAAQ,MAAO,IAC1EgsD,EAAW,GAAGvyD,KAAKy2B,KAAKlwB,QAAQ,MAAO,OAAOuuD,EAAWvuD,QAAQ,MAAO,MAC9E,OAAO,IAAIghD,GAAYlwB,MAAOthB,EAASuN,EAAQ2a,KAC7C,MAAM7b,EAAQ,IAAI2b,gBAClBE,GAAS,IAAM7b,EAAMA,UACrB,MAAM2yC,QAA0B9qC,EAASmR,EAAUjtB,SAAU2mD,GAC7D,IAA0B,IAAtBC,EAEF,YADAzxC,EAAOqJ,GAAE,8BAGX,MAAMqoC,EAAc,GACdx4B,EAAU,GACVy4B,EAAgB,IAAIlE,GAAOwB,GAAU,EAAO,EAAGn3B,GACrD65B,EAAc52B,OAAOliB,iBAAiB,SAAS,IAAMmH,EAAOqJ,GAAE,gCAC9DsoC,EAAch1B,OAAS4wB,GAASqE,UAChC,IACE,GAAI95B,EAAUp6B,KACZ,UACQk2B,EAAOgF,gBAAgB44B,EAAY,CAAEz2B,OAAQjc,EAAMic,SACzD7B,EAAQh8B,KAAK,IAAI+mD,GAAa4N,GAAaA,EAASF,MACpDj1D,KAAKyzD,aAAajzD,KAAKy0D,EACzB,CAAE,MAAO11C,GACP,IAAIA,GAA0B,iBAAVA,KAAsB,WAAYA,IAA0B,MAAjBA,EAAM0gB,OAGnE,MAAM1gB,EAFN0O,GAAO2G,MAAM,4CAA6C,CAAEwG,UAAWA,EAAUp6B,MAIrF,CAEF,IAAK,MAAM81B,KAAQi+B,EACbj+B,aAAgB6D,GAClBq6B,EAAYx0D,KAAKR,KAAK60D,gBAAgBC,EAAYh+B,EAAM7M,EAAUiN,IAElEsF,EAAQh8B,KAAKR,KAAKyiC,OAAO,GAAGqyB,KAAch+B,EAAK91B,OAAQ81B,IAG3D1U,EAAMic,OAAOliB,iBAAiB,SAAS,KACrCqgB,EAAQzxB,SAASspD,GAAYA,EAAQjpC,WACrC4pC,EAAYjqD,SAASspD,GAAYA,EAAQjpC,UAAS,IAEpD,MAAMgqC,QAAwBxuC,QAAQoS,IAAIwD,GACpC64B,QAAiCzuC,QAAQoS,IAAIg8B,GACnDC,EAAch1B,OAAS4wB,GAASyE,SAChCv/C,EAAQ,CAACq/C,KAAoBC,GAA0BhtD,OACzD,CAAE,MAAOyD,GACPsW,EAAMA,MAAMtW,GACZmpD,EAAch1B,OAAS4wB,GAASxnB,OAChC/lB,EAAOxX,EACT,CAAE,QACIsvB,EAAUp6B,OACZhB,KAAKy0D,WAAWQ,GAChBj1D,KAAKo0D,cAET,IAEJ,CAQA,MAAA3xB,CAAOpG,EAAak5B,EAAY9+B,EAAMw1B,EAAU,GAE9C,MAAM7sB,EAAkB,IADxB3I,EAAOA,GAAQz2B,KAAKy2B,MACYlwB,QAAQ,MAAO,OAAO81B,EAAY91B,QAAQ,MAAO,OAC3E,OAAE6sC,GAAW,IAAInpC,IAAIm1B,GACrBo2B,EAAyBpiB,GAAS,QAAWhU,EAAgBj+B,MAAMiyC,EAAO1xC,SA8HhF,OA7HAusB,GAAO2G,MAAM,aAAa2gC,EAAWv0D,WAAWw0D,KAChC,IAAIjO,GAAYlwB,MAAOthB,EAASuN,EAAQ2a,KAClD2xB,GAAsB2F,KACxBA,QAAmB,IAAI3uC,SAASuuC,GAAaI,EAAWl6B,KAAK85B,EAAU7xC,MAEzE,MAAM+X,EAAOk6B,EACP9E,EAAeF,GAAiB,SAAUl1B,EAAOA,EAAKlS,UAAO,GAC7DssC,EAAsBz1D,KAAKwzD,WAA8B,IAAjB/C,GAAsB,SAAUp1B,GAAQA,EAAKlS,KAAOsnC,EAC5F4D,EAAU,IAAItD,GAAO3xB,GAAkBq2B,EAAqBp6B,EAAKlS,KAAMkS,GAI7E,GAHAr7B,KAAKyzD,aAAajzD,KAAK6zD,GACvBr0D,KAAKo0D,cACLn2B,EAASo2B,EAAQjpC,QACZqqC,EAsEE,CACLxnC,GAAO2G,MAAM,8BAA+B,CAAEyG,OAAMoH,OAAQ4xB,IAC5D,MAAMqB,QAAapF,GAASj1B,EAAM,EAAGg5B,EAAQlrC,MACvCgkC,EAAU91B,UACd,IACEg9B,EAAQtmC,eAAiBkiC,GACvBuF,EACAE,EACArB,EAAQh2B,QACPl+B,IACCk0D,EAAQvC,SAAWuC,EAAQvC,SAAW3xD,EAAMw1D,MAC5C31D,KAAKo0D,aAAa,QAEpB,EACA,CACE,aAAc/4B,EAAKH,aAAe,IAClC,eAAgBG,EAAKttB,OAGzBsmD,EAAQvC,SAAWuC,EAAQlrC,KAC3BnpB,KAAKo0D,cACLnmC,GAAO2G,MAAM,yBAAyByG,EAAKr6B,OAAQ,CAAEq6B,OAAMoH,OAAQ4xB,IACnEt+C,EAAQs+C,EACV,CAAE,MAAO90C,GACP,IAAI,QAASA,GAGX,OAFA80C,EAAQp0B,OAAS4wB,GAASxnB,YAC1B/lB,EAAOqJ,GAAE,8BAGPpN,GAAOwO,WACTsmC,EAAQtmC,SAAWxO,EAAMwO,UAE3BsmC,EAAQp0B,OAAS4wB,GAASxnB,OAC1Bpb,GAAO1O,MAAM,oBAAoB8b,EAAKr6B,OAAQ,CAAEue,QAAO8b,OAAMoH,OAAQ4xB,IACrE/wC,EAAO,4BACT,CACAtjB,KAAKy0D,WAAWJ,EAAQ,EAE1Br0D,KAAK0zD,UAAUz0B,IAAIkuB,GACnBntD,KAAKo0D,aACP,KA9G0B,CACxBnmC,GAAO2G,MAAM,8BAA+B,CAAEyG,OAAMoH,OAAQ4xB,IAC5D,MAAMuB,QAxgBav+B,eAAe+4B,EAA0BnE,EAAU,GAC5E,MAGMziD,EAAM,IAHY,QAAkB,gBAAe,WAAkBynB,0BAC9D,IAAIrvB,MAAM,KAAKkF,KAAI,IAAM2b,KAAK62B,MAAsB,GAAhB72B,KAAKo3B,UAAen0C,SAAS,MAAK/B,KAAK,MAGlF4tC,EAAU6e,EAAkB,CAAE5e,YAAa4e,QAAoB,EAUrE,aATM,KAAMjD,QAAQ,CAClBtuB,OAAQ,QACRr1B,MACA+nC,UACA,cAAe,CACb0a,UACAE,WAAY,CAACU,EAAYttC,IAAU,mBAA4BstC,EAAYttC,EAAO,QAG/E/V,CACT,CAwf8BqsD,CAAmBL,EAAwBvJ,GAC3D6J,EAAc,GACpB,IAAK,IAAIC,EAAQ,EAAGA,EAAQ1B,EAAQ1C,OAAQoE,IAAS,CACnD,MAAMC,EAAcD,EAAQtF,EACtBwF,EAAYxzC,KAAKmM,IAAIonC,EAAcvF,EAAc4D,EAAQlrC,MACzDusC,EAAO,IAAMpF,GAASj1B,EAAM26B,EAAavF,GACzCtD,EAAU,IACP8C,GACL,GAAG2F,KAAWG,EAAQ,IACtBL,EACArB,EAAQh2B,QACR,IAAMr+B,KAAKo0D,eACXoB,EACA,CACE,aAAcn6B,EAAKH,aAAe,IAClC,kBAAmBG,EAAKlS,KACxB,eAAgB,4BAElB8iC,GACAjvC,MAAK,KACLq3C,EAAQvC,SAAWuC,EAAQvC,SAAWrB,CAAY,IACjDvzC,OAAOqC,IACR,GAAgC,MAA5BA,GAAOwO,UAAUkS,OAInB,MAHAhS,GAAO1O,MAAM,mGAAoG,CAAEA,QAAOkjB,OAAQ4xB,IAClIA,EAAQjpC,SACRipC,EAAQp0B,OAAS4wB,GAASxnB,OACpB9pB,EAOR,MALK,QAASA,KACZ0O,GAAO1O,MAAM,SAASw2C,EAAQ,KAAKC,OAAiBC,qBAA8B,CAAE12C,QAAOkjB,OAAQ4xB,IACnGA,EAAQjpC,SACRipC,EAAQp0B,OAAS4wB,GAASxnB,QAEtB9pB,CAAK,IAGfu2C,EAAYt1D,KAAKR,KAAK0zD,UAAUz0B,IAAIkuB,GACtC,CACA,UACQvmC,QAAQoS,IAAI88B,GAClB91D,KAAKo0D,cACLC,EAAQtmC,eAAiB,KAAMo/B,QAAQ,CACrCtuB,OAAQ,OACRr1B,IAAK,GAAGosD,UACRrkB,QAAS,CACP,aAAclW,EAAKH,aAAe,IAClC,kBAAmBG,EAAKlS,KACxBqoB,YAAagkB,KAGjBx1D,KAAKo0D,cACLC,EAAQp0B,OAAS4wB,GAASyE,SAC1BrnC,GAAO2G,MAAM,yBAAyByG,EAAKr6B,OAAQ,CAAEq6B,OAAMoH,OAAQ4xB,IACnEt+C,EAAQs+C,EACV,CAAE,MAAO90C,IACF,QAASA,IAIZ80C,EAAQp0B,OAAS4wB,GAASxnB,OAC1B/lB,EAAOqJ,GAAE,gCAJT0nC,EAAQp0B,OAAS4wB,GAASxnB,OAC1B/lB,EAAO,0CAKT,KAAM6pC,QAAQ,CACZtuB,OAAQ,SACRr1B,IAAK,GAAGosD,KAEZ,CACA51D,KAAKy0D,WAAWJ,EAClB,CAyCA,OAAOA,CAAO,GAGlB,EAEF,SAAS6B,GAAmBC,EAAeC,EAASC,EAAiBC,EAAoBC,EAAcC,EAASC,EAAkBC,GAChI,IAYI7mD,EAZA7J,EAAmC,mBAAlBmwD,EAA+BA,EAAcnwD,QAAUmwD,EAqC5E,GApCIC,IACFpwD,EAAQiI,OAASmoD,EACjBpwD,EAAQqwD,gBAAkBA,EAC1BrwD,EAAQ2wD,WAAY,GAElBL,IACFtwD,EAAQ6H,YAAa,GAEnB2oD,IACFxwD,EAAQ4wD,SAAW,UAAYJ,GAG7BC,GACF5mD,EAAO,SAAS/P,IACdA,EAAUA,GACVE,KAAK+O,QAAU/O,KAAK+O,OAAO8nD,YAC3B72D,KAAK0M,QAAU1M,KAAK0M,OAAOqC,QAAU/O,KAAK0M,OAAOqC,OAAO8nD,aACT,oBAAxBC,sBACrBh3D,EAAUg3D,qBAERP,GACFA,EAAar1D,KAAKlB,KAAMF,GAEtBA,GAAWA,EAAQi3D,uBACrBj3D,EAAQi3D,sBAAsB93B,IAAIw3B,EAEtC,EACAzwD,EAAQgxD,aAAennD,GACd0mD,IACT1mD,EAAO6mD,EAAa,WAClBH,EAAar1D,KACXlB,MACCgG,EAAQ6H,WAAa7N,KAAK0M,OAAS1M,MAAMi3D,MAAMtvC,SAASuvC,WAE7D,EAAIX,GAEF1mD,EACF,GAAI7J,EAAQ6H,WAAY,CACtB7H,EAAQmxD,cAAgBtnD,EACxB,IAAIunD,EAAiBpxD,EAAQiI,OAC7BjI,EAAQiI,OAAS,SAAkCK,EAAGxO,GAEpD,OADA+P,EAAK3O,KAAKpB,GACHs3D,EAAe9oD,EAAGxO,EAC3B,CACF,KAAO,CACL,IAAIu3D,EAAWrxD,EAAQ8hB,aACvB9hB,EAAQ8hB,aAAeuvC,EAAW,GAAGh2D,OAAOg2D,EAAUxnD,GAAQ,CAACA,EACjE,CAEF,MAAO,CACL7M,QAASmzD,EACTnwD,UAEJ,CAmCA,MAAMsxD,GAVgCpB,GAxBlB,CAClBl1D,KAAM,aACNgoB,MAAO,CAAC,SACRlb,MAAO,CACLmb,MAAO,CACLlb,KAAMnD,QAERse,UAAW,CACTnb,KAAMnD,OACNoD,QAAS,gBAEXmb,KAAM,CACJpb,KAAMlH,OACNmH,QAAS,OAIK,WAClB,IAAIob,EAAMppB,KAAMqpB,EAAKD,EAAIE,MAAMD,GAC/B,OAAOA,EAAG,OAAQD,EAAIG,GAAG,CAAEC,YAAa,mCAAoCnZ,MAAO,CAAE,eAAe+Y,EAAIH,OAAQ,KAAa,aAAcG,EAAIH,MAAO,KAAQ,OAAStmB,GAAI,CAAE,MAAS,SAAS8mB,GAC7L,OAAOL,EAAIM,MAAM,QAASD,EAC5B,IAAO,OAAQL,EAAIO,QAAQ,GAAQ,CAACN,EAAG,MAAO,CAAEG,YAAa,4BAA6BnZ,MAAO,CAAE,KAAQ+Y,EAAIF,UAAW,MAASE,EAAID,KAAM,OAAUC,EAAID,KAAM,QAAW,cAAiB,CAACE,EAAG,OAAQ,CAAEhZ,MAAO,CAAE,EAAK,2OAA8O,CAAC+Y,EAAIH,MAAQI,EAAG,QAAS,CAACD,EAAIQ,GAAGR,EAAIS,GAAGT,EAAIH,UAAYG,EAAIU,UACrgB,GAC6B,IAK3B,EACA,KACA,KACA,KACA,MAEiC9mB,QAmC7Bu0D,GAVgCrB,GAxBlB,CAClBl1D,KAAM,mBACNgoB,MAAO,CAAC,SACRlb,MAAO,CACLmb,MAAO,CACLlb,KAAMnD,QAERse,UAAW,CACTnb,KAAMnD,OACNoD,QAAS,gBAEXmb,KAAM,CACJpb,KAAMlH,OACNmH,QAAS,OAIK,WAClB,IAAIob,EAAMppB,KAAMqpB,EAAKD,EAAIE,MAAMD,GAC/B,OAAOA,EAAG,OAAQD,EAAIG,GAAG,CAAEC,YAAa,0CAA2CnZ,MAAO,CAAE,eAAe+Y,EAAIH,OAAQ,KAAa,aAAcG,EAAIH,MAAO,KAAQ,OAAStmB,GAAI,CAAE,MAAS,SAAS8mB,GACpM,OAAOL,EAAIM,MAAM,QAASD,EAC5B,IAAO,OAAQL,EAAIO,QAAQ,GAAQ,CAACN,EAAG,MAAO,CAAEG,YAAa,4BAA6BnZ,MAAO,CAAE,KAAQ+Y,EAAIF,UAAW,MAASE,EAAID,KAAM,OAAUC,EAAID,KAAM,QAAW,cAAiB,CAACE,EAAG,OAAQ,CAAEhZ,MAAO,CAAE,EAAK,2HAA8H,CAAC+Y,EAAIH,MAAQI,EAAG,QAAS,CAACD,EAAIQ,GAAGR,EAAIS,GAAGT,EAAIH,UAAYG,EAAIU,UACrZ,GAC6B,IAK3B,EACA,KACA,KACA,KACA,MAEuC9mB,QAmCnCw0D,GAVgCtB,GAxBlB,CAClBl1D,KAAM,WACNgoB,MAAO,CAAC,SACRlb,MAAO,CACLmb,MAAO,CACLlb,KAAMnD,QAERse,UAAW,CACTnb,KAAMnD,OACNoD,QAAS,gBAEXmb,KAAM,CACJpb,KAAMlH,OACNmH,QAAS,OAIK,WAClB,IAAIob,EAAMppB,KAAMqpB,EAAKD,EAAIE,MAAMD,GAC/B,OAAOA,EAAG,OAAQD,EAAIG,GAAG,CAAEC,YAAa,iCAAkCnZ,MAAO,CAAE,eAAe+Y,EAAIH,OAAQ,KAAa,aAAcG,EAAIH,MAAO,KAAQ,OAAStmB,GAAI,CAAE,MAAS,SAAS8mB,GAC3L,OAAOL,EAAIM,MAAM,QAASD,EAC5B,IAAO,OAAQL,EAAIO,QAAQ,GAAQ,CAACN,EAAG,MAAO,CAAEG,YAAa,4BAA6BnZ,MAAO,CAAE,KAAQ+Y,EAAIF,UAAW,MAASE,EAAID,KAAM,OAAUC,EAAID,KAAM,QAAW,cAAiB,CAACE,EAAG,OAAQ,CAAEhZ,MAAO,CAAE,EAAK,8CAAiD,CAAC+Y,EAAIH,MAAQI,EAAG,QAAS,CAACD,EAAIQ,GAAGR,EAAIS,GAAGT,EAAIH,UAAYG,EAAIU,UACxU,GAC6B,IAK3B,EACA,KACA,KACA,KACA,MAE+B9mB,QAmC3By0D,GAVgCvB,GAxBlB,CAClBl1D,KAAM,aACNgoB,MAAO,CAAC,SACRlb,MAAO,CACLmb,MAAO,CACLlb,KAAMnD,QAERse,UAAW,CACTnb,KAAMnD,OACNoD,QAAS,gBAEXmb,KAAM,CACJpb,KAAMlH,OACNmH,QAAS,OAIK,WAClB,IAAIob,EAAMppB,KAAMqpB,EAAKD,EAAIE,MAAMD,GAC/B,OAAOA,EAAG,OAAQD,EAAIG,GAAG,CAAEC,YAAa,mCAAoCnZ,MAAO,CAAE,eAAe+Y,EAAIH,OAAQ,KAAa,aAAcG,EAAIH,MAAO,KAAQ,OAAStmB,GAAI,CAAE,MAAS,SAAS8mB,GAC7L,OAAOL,EAAIM,MAAM,QAASD,EAC5B,IAAO,OAAQL,EAAIO,QAAQ,GAAQ,CAACN,EAAG,MAAO,CAAEG,YAAa,4BAA6BnZ,MAAO,CAAE,KAAQ+Y,EAAIF,UAAW,MAASE,EAAID,KAAM,OAAUC,EAAID,KAAM,QAAW,cAAiB,CAACE,EAAG,OAAQ,CAAEhZ,MAAO,CAAE,EAAK,mDAAsD,CAAC+Y,EAAIH,MAAQI,EAAG,QAAS,CAACD,EAAIQ,GAAGR,EAAIS,GAAGT,EAAIH,UAAYG,EAAIU,UAC7U,GAC6B,IAK3B,EACA,KACA,KACA,KACA,MAEiC9mB,QAC7B00D,GAAY,KAAIttD,OAAO,CAC3BpJ,KAAM,eACNwC,WAAY,CACV8zD,cACAC,oBACAC,YACAC,cACA1rB,eAAc,KACd4rB,gBAAe,KACf1rB,kBAAiB,KACjBD,UAAS,KACTyL,SAAQ,KACR5jB,iBAAgB,KAChBhI,cAAa,MAEf/d,MAAO,CACL8pD,OAAQ,CACN7pD,KAAMnM,MACNoM,QAAS,MAEX6pD,SAAU,CACR9pD,KAAMlF,QACNmF,SAAS,GAEX8pD,SAAU,CACR/pD,KAAMlF,QACNmF,SAAS,GAEXquB,YAAa,CACXtuB,KAAM,KACNC,aAAS,GAEX+pD,aAAc,CACZhqD,KAAMlF,QACNmF,SAAS,GAOXgqD,QAAS,CACPjqD,KAAM,CAACnM,MAAOitB,UACd7gB,QAAS,IAAM,IAEjB+gC,oBAAqB,CACnBhhC,KAAMnM,MACNoM,QAAS,IAAM,KAGnBsiB,MAAK,KACI,CACL3D,KAEAsrC,eAAgB,wBAAwBx1C,KAAKo3B,SAASn0C,SAAS,IAAIvE,MAAM,OAG7EiN,KAAI,KACK,CACL8pD,IAAK,KACLC,SAAU,GACVC,eAAgB,GAChBC,mBAAoB,GACpBC,cAAe79B,OAGnBxO,SAAU,CACR,iBAAAssC,GACE,OAAOv4D,KAAKq4D,mBAAmB/uD,QAAQgyB,GAAUA,EAAMk9B,WAAa,KAAqBC,kBAC3F,EACA,cAAAC,GACE,OAAO14D,KAAKq4D,mBAAmB/uD,QAAQgyB,GAAUA,EAAMk9B,WAAa,KAAqBG,WAC3F,EACA,gBAAAC,GACE,OAAO54D,KAAKq4D,mBAAmB/uD,QAAQgyB,GAAUA,EAAMk9B,WAAa,KAAqBK,OAC3F,EAKA,gBAAAC,GACE,OAAO94D,KAAK+3D,cAAgB,oBAAqBh6C,SAASg7C,cAAc,QAC1E,EACA,cAAAC,GACE,OAAOh5D,KAAKs4D,cAAc17B,MAAMzT,MAAQ,CAC1C,EACA,iBAAA8vC,GACE,OAAOj5D,KAAKs4D,cAAc17B,MAAM+pB,UAAY,CAC9C,EACA,QAAAA,GACE,OAAOlkC,KAAK+yB,MAAMx1C,KAAKi5D,kBAAoBj5D,KAAKg5D,eAAiB,MAAQ,CAC3E,EACA,KAAAj5C,GACE,OAAO/f,KAAKs4D,cAAcv4C,KAC5B,EACA,UAAAm5C,GACE,OAAsF,IAA/El5D,KAAK+f,OAAOzW,QAAQ+qD,GAAYA,EAAQp0B,SAAW4wB,GAASxnB,SAAQ3nC,MAC7E,EACA,WAAAy3D,GACE,OAAOn5D,KAAK+f,OAAOre,OAAS,CAC9B,EACA,YAAA03D,GACE,OAA0F,IAAnFp5D,KAAK+f,OAAOzW,QAAQ+qD,GAAYA,EAAQp0B,SAAW4wB,GAASwI,aAAY33D,MACjF,EACA,QAAA0pD,GACE,OAAOprD,KAAKs4D,cAAc17B,MAAMqD,SAAWozB,GAAOiG,MACpD,EAEA,UAAAC,GACE,IAAIv5D,KAAKm5D,YAGT,OAAOxsC,GAAE,MACX,GAEF0H,MAAO,CACL0jC,aAAc,CACZroB,WAAW,EACX,OAAA94B,GAC8B,mBAAjB5W,KAAKg4D,SAA0Bh4D,KAAK+3D,cAC7C9pC,GAAO1O,MAAM,mFAEjB,GAEFy4C,QAAS,CACPtoB,WAAW,EACX,aAAM94B,GACJ5W,KAAKo4D,qBAAuBp4D,KAAKw/C,YACnC,GAEF,WAAAnjB,CAAYA,GACVr8B,KAAKw5D,eAAen9B,EACtB,EACA,cAAA28B,CAAe7vC,GACbnpB,KAAKk4D,IAAM,GAAQ,CAAEtpC,IAAK,EAAGpM,IAAK2G,IAClCnpB,KAAKy5D,cACP,EACA,iBAAAR,CAAkB9vC,GAChBnpB,KAAKk4D,KAAKxR,SAASv9B,GACnBnpB,KAAKy5D,cACP,EACA,QAAArO,CAASA,GACHA,EACFprD,KAAK0pB,MAAM,SAAU1pB,KAAK+f,OAE1B/f,KAAK0pB,MAAM,UAAW1pB,KAAK+f,MAE/B,GAEF,WAAA8M,GACM7sB,KAAKq8B,aACPr8B,KAAKw5D,eAAex5D,KAAKq8B,aAE3Br8B,KAAKs4D,cAAc/D,YAAYv0D,KAAK05D,oBACpCzrC,GAAO2G,MAAM,2BACf,EACAtH,QAAS,CAKP,aAAAqsC,CAAcC,GAAgB,GAC5B,MAAM71D,EAAQ/D,KAAKqnC,MAAMtjC,MACrB/D,KAAK84D,mBACP/0D,EAAM81D,gBAAkBD,GAE1B55D,KAAK4c,WAAU,IAAM7Y,EAAM+S,SAC7B,EAKA,gBAAM0oC,CAAWvzC,GACf,OAAOrK,MAAM+C,QAAQ3E,KAAKg4D,SAAWh4D,KAAKg4D,cAAgBh4D,KAAKg4D,QAAQ/rD,EACzE,EAQAorB,0BAA+B,MAACiH,GACvB,IAAIipB,GAAYlwB,MAAOthB,EAASuN,WAC/B,IAAI,MAAgBw2C,QAAQntC,GAAE,sBAAsBotC,YAAY,SAASC,QAAQrtC,GAAE,yEAA0E,CAAE2R,cAAa27B,WAAW,CAC3L,CACEn5B,MAAOnU,GAAE,UACT5e,KAAM,QACNkc,SAAU3G,GAEZ,CACEwd,MAAOnU,GAAE,QACT1C,SAAU,IAAMlU,GAAQ,IAE1B,CACE+qB,MAAOnU,GAAE,UACT5e,KAAM,UACNkc,SAAU,IAAMlU,GAAQ,MAEzB2V,QAAQwuC,MAAM,IAGrB,qBAAMC,CAAgB7jC,EAAOrqB,GAC3B,IACE,MAAM+rD,EAAmB,KAAT/rD,EAAcjM,KAAKo4D,qBAAuBp4D,KAAKw/C,WAAWvzC,GAAMiR,OAAM,IAAM,KACtFof,EAAY89B,GAAa9jC,EAAO0hC,GACtC,GAAI17B,EAAU56B,OAAS,EAAG,CACxB,MAAM,SAAEq4B,EAAQ,QAAE0C,SAAkBC,GAAmBzwB,EAAMqwB,EAAW07B,EAAS,CAAE77B,WAAW,IAC9F7F,EAAQ,IAAIyD,KAAa0C,EAC3B,CACA,MAAM49B,EAAgB,GACtB,IAAK,MAAMh/B,KAAQ/E,EAEjB,GADgBt2B,KAAK+uC,oBAAoBvR,MAAMjzB,GAAM8wB,EAAKr6B,KAAK+G,SAASwC,MAKxE,SAAUvK,KAAKs6D,0BAA0Bj/B,EAAKr6B,MAAO,CACnD,IAAI4lC,EAAU5mC,KAAKu6D,yBAAyBl/B,EAAKr6B,MACjD4lC,GAAU,QAAcA,EAAStQ,EAAMxvB,KAAKgwB,GAASA,EAAK91B,QAC1DzB,OAAOyF,eAAeq2B,EAAM,OAAQ,CAAEj2B,MAAOwhC,IAC7CyzB,EAAc75D,KAAK66B,EACrB,OAREg/B,EAAc75D,KAAK66B,GAUvB,OAAOg/B,CACT,CAAE,MAAO96C,GAGP,OAFA0O,GAAO2G,MAAM,4BAA6B,CAAErV,WAC5C,QAAYoN,GAAE,+BACP,CACT,CACF,EAKA,wBAAA4tC,CAAyBC,GACvB,MAAMC,EAAqB,CAAC,IAAK,IAAK,KAAKnxD,QAAQiB,IAAOvK,KAAK+uC,oBAAoBhnC,SAASwC,KAAI,IAAM,IAItG,OAHAvK,KAAK+uC,oBAAoBhkC,SAASR,IAChCiwD,EAAOA,EAAKj1D,WAAWgF,EAAGkwD,EAAmB,IAExCD,CACT,EAIA,MAAAE,GACE,MAAM32D,EAAQ/D,KAAKqnC,MAAMtjC,MACnB+zB,EAAQ/zB,EAAM+zB,MAAQl2B,MAAM2a,KAAKxY,EAAM+zB,OAAS,GACtD93B,KAAKs4D,cAAc5D,YAAY,GAAI58B,EAAO93B,KAAKm6D,iBAAiBj9C,OAAOqC,GAAU0O,GAAO2G,MAAM,wBAAyB,CAAErV,YAAUyoC,SAAQ,IAAMhoD,KAAK26D,aACxJ,EACA,SAAAA,GACE,MAAMC,EAAO56D,KAAKqnC,MAAMuzB,KACxBA,GAAMtgC,OACR,EAIA,QAAA2D,GACEj+B,KAAKs4D,cAAcv4C,MAAMhV,SAASspD,IAChCA,EAAQjpC,QAAQ,IAElBprB,KAAK26D,WACP,EACA,YAAAlB,GACE,GAAIz5D,KAAKorD,SAEP,YADAprD,KAAKm4D,SAAWxrC,GAAE,WAGpB,MAAMo6B,EAAWtkC,KAAK+yB,MAAMx1C,KAAKk4D,IAAInR,YACrC,GAAIA,IAAaC,IAIjB,GAAID,EAAW,GACb/mD,KAAKm4D,SAAWxrC,GAAE,2BAGpB,GAAIo6B,EAAW,GAAf,CACE,MAAM8T,EAAuB,IAAI3/C,KAAK,GACtC2/C,EAAKC,WAAW/T,GAChB,MAAMgU,EAAOF,EAAKngC,cAAcv5B,MAAM,GAAI,IAC1CnB,KAAKm4D,SAAWxrC,GAAE,cAAe,CAAEouC,QAErC,MACA/6D,KAAKm4D,SAAWxrC,GAAE,yBAA0B,CAAEquC,QAASjU,SAdrD/mD,KAAKm4D,SAAWxrC,GAAE,uBAetB,EACA,cAAA6sC,CAAen9B,GACRr8B,KAAKq8B,aAIVr8B,KAAKs4D,cAAcj8B,YAAcA,EACjCr8B,KAAKq4D,oBAAqB,QAAsBh8B,IAJ9CpO,GAAO2G,MAAM,sBAKjB,EACA,kBAAA8kC,CAAmBrF,GACbA,EAAQp0B,SAAW4wB,GAASxnB,OAC9BrpC,KAAK0pB,MAAM,SAAU2qC,GAErBr0D,KAAK0pB,MAAM,WAAY2qC,EAE3B,KAqDErV,GAV8BkX,GAClCwB,IAzCgB,WAChB,IAAItuC,EAAMppB,KAAMqpB,EAAKD,EAAIE,MAAMD,GAE/B,OADAD,EAAIE,MAAMsM,YACHxM,EAAIiT,YAAchT,EAAG,OAAQ,CAAE1c,IAAK,OAAQ6c,YAAa,gBAAiBzS,MAAO,CAAE,2BAA4BqS,EAAI+vC,YAAa,wBAAyB/vC,EAAIgiC,UAAY/6C,MAAO,CAAE,wBAAyB,KAAQ,CAAC+Y,EAAIivC,oBAAwD,IAAlCjvC,EAAIivC,mBAAmB32D,OAAe2nB,EAAG,WAAY,CAAEhZ,MAAO,CAAE,SAAY+Y,EAAIyuC,SAAU,4BAA6B,GAAI,KAAQ,aAAel1D,GAAI,CAAE,MAAS,SAAS8mB,GAC7Z,OAAOL,EAAIuwC,eACb,GAAK1nC,YAAa7I,EAAI8I,GAAG,CAAC,CAAEttB,IAAK,OAAQ/E,GAAI,WAC3C,MAAO,CAACwpB,EAAG,WAAY,CAAEhZ,MAAO,CAAE,KAAQ,MAC5C,EAAG8hB,OAAO,IAAS,MAAM,EAAO,aAAe,CAAC/I,EAAIQ,GAAG,IAAMR,EAAIS,GAAGT,EAAImwC,YAAc,OAASlwC,EAAG,YAAa,CAAEhZ,MAAO,CAAE,YAAa+Y,EAAImwC,WAAY,aAAcnwC,EAAIuD,EAAE,OAAQ,KAAQ,aAAesF,YAAa7I,EAAI8I,GAAG,CAAC,CAAEttB,IAAK,OAAQ/E,GAAI,WAChP,MAAO,CAACwpB,EAAG,WAAY,CAAEhZ,MAAO,CAAE,KAAQ,MAC5C,EAAG8hB,OAAO,IAAS,MAAM,EAAO,aAAe,CAAC9I,EAAG,kBAAmB,CAAEhZ,MAAO,CAAE,KAAQ+Y,EAAIuD,EAAE,yBAA4BtD,EAAG,iBAAkB,CAAEhZ,MAAO,CAAE,4BAA6B,GAAI,qBAAqB,GAAQ1N,GAAI,CAAE,MAAS,SAAS8mB,GAC/O,OAAOL,EAAIuwC,eACb,GAAK1nC,YAAa7I,EAAI8I,GAAG,CAAC,CAAEttB,IAAK,OAAQ/E,GAAI,WAC3C,MAAO,CAACwpB,EAAG,aAAc,CAAEhZ,MAAO,CAAE,KAAQ,MAC9C,EAAG8hB,OAAO,IAAS,MAAM,EAAO,YAAc,CAAC/I,EAAIQ,GAAG,IAAMR,EAAIS,GAAGT,EAAIuD,EAAE,iBAAmB,OAAQvD,EAAI0vC,iBAAmBzvC,EAAG,iBAAkB,CAAEhZ,MAAO,CAAE,oBAAqB,GAAI,oCAAqC,IAAM1N,GAAI,CAAE,MAAS,SAAS8mB,GACrP,OAAOL,EAAIuwC,eAAc,EAC3B,GAAK1nC,YAAa7I,EAAI8I,GAAG,CAAC,CAAEttB,IAAK,OAAQ/E,GAAI,WAC3C,MAAO,CAACwpB,EAAG,mBAAoB,CAAE4xC,YAAa,CAAE,MAAS,gCAAkC5qD,MAAO,CAAE,KAAQ,MAC9G,EAAG8hB,OAAO,IAAS,MAAM,EAAO,aAAe,CAAC/I,EAAIQ,GAAG,IAAMR,EAAIS,GAAGT,EAAIuD,EAAE,mBAAqB,OAASvD,EAAIU,KAAMV,EAAI4I,GAAG5I,EAAImvC,mBAAmB,SAASj9B,GACvJ,OAAOjS,EAAG,iBAAkB,CAAEzkB,IAAK02B,EAAM7G,GAAIjL,YAAa,4BAA6BnZ,MAAO,CAAE,KAAQirB,EAAMzF,UAAW,qBAAqB,GAAQlzB,GAAI,CAAE,MAAS,SAAS8mB,GAC5K,OAAO6R,EAAM1kB,QAAQwS,EAAIiT,YAAajT,EAAIgvC,eAC5C,GAAKnmC,YAAa7I,EAAI8I,GAAG,CAACoJ,EAAMnF,cAAgB,CAAEvxB,IAAK,OAAQ/E,GAAI,WACjE,MAAO,CAACwpB,EAAG,mBAAoB,CAAEhZ,MAAO,CAAE,IAAOirB,EAAMnF,iBACzD,EAAGhE,OAAO,GAAS,MAAO,MAAM,IAAS,CAAC/I,EAAIQ,GAAG,IAAMR,EAAIS,GAAGyR,EAAMpF,aAAe,MACrF,IAAI9M,EAAIsvC,eAAeh3D,OAAS,EAAI,CAAC2nB,EAAG,qBAAsBA,EAAG,kBAAmB,CAAEhZ,MAAO,CAAE,KAAQ+Y,EAAIuD,EAAE,iBAAoBvD,EAAI4I,GAAG5I,EAAIsvC,gBAAgB,SAASp9B,GACnK,OAAOjS,EAAG,iBAAkB,CAAEzkB,IAAK02B,EAAM7G,GAAIjL,YAAa,4BAA6BnZ,MAAO,CAAE,KAAQirB,EAAMzF,UAAW,qBAAqB,GAAQlzB,GAAI,CAAE,MAAS,SAAS8mB,GAC5K,OAAO6R,EAAM1kB,QAAQwS,EAAIiT,YAAajT,EAAIgvC,eAC5C,GAAKnmC,YAAa7I,EAAI8I,GAAG,CAACoJ,EAAMnF,cAAgB,CAAEvxB,IAAK,OAAQ/E,GAAI,WACjE,MAAO,CAACwpB,EAAG,mBAAoB,CAAEhZ,MAAO,CAAE,IAAOirB,EAAMnF,iBACzD,EAAGhE,OAAO,GAAS,MAAO,MAAM,IAAS,CAAC/I,EAAIQ,GAAG,IAAMR,EAAIS,GAAGyR,EAAMpF,aAAe,MACrF,KAAM9M,EAAIU,KAAMV,EAAIwvC,iBAAiBl3D,OAAS,EAAI,CAAC2nB,EAAG,qBAAsBD,EAAI4I,GAAG5I,EAAIsvC,gBAAgB,SAASp9B,GAC9G,OAAOjS,EAAG,iBAAkB,CAAEzkB,IAAK02B,EAAM7G,GAAIjL,YAAa,4BAA6BnZ,MAAO,CAAE,KAAQirB,EAAMzF,UAAW,qBAAqB,GAAQlzB,GAAI,CAAE,MAAS,SAAS8mB,GAC5K,OAAO6R,EAAM1kB,QAAQwS,EAAIiT,YAAajT,EAAIgvC,eAC5C,GAAKnmC,YAAa7I,EAAI8I,GAAG,CAACoJ,EAAMnF,cAAgB,CAAEvxB,IAAK,OAAQ/E,GAAI,WACjE,MAAO,CAACwpB,EAAG,mBAAoB,CAAEhZ,MAAO,CAAE,IAAOirB,EAAMnF,iBACzD,EAAGhE,OAAO,GAAS,MAAO,MAAM,IAAS,CAAC/I,EAAIQ,GAAG,IAAMR,EAAIS,GAAGyR,EAAMpF,aAAe,MACrF,KAAM9M,EAAIU,MAAO,GAAIT,EAAG,MAAO,CAAEuoB,WAAY,CAAC,CAAE5wC,KAAM,OAAQ6wC,QAAS,SAAUzsC,MAAOgkB,EAAI+vC,YAAarnB,WAAY,gBAAkBtoB,YAAa,2BAA6B,CAACH,EAAG,gBAAiB,CAAEhZ,MAAO,CAAE,aAAc+Y,EAAIuD,EAAE,mBAAoB,mBAAoBvD,EAAI6uC,eAAgB,MAAS7uC,EAAI8vC,WAAY,MAAS9vC,EAAIu9B,SAAU,KAAQ,YAAet9B,EAAG,IAAK,CAAEhZ,MAAO,CAAE,GAAM+Y,EAAI6uC,iBAAoB,CAAC7uC,EAAIQ,GAAG,IAAMR,EAAIS,GAAGT,EAAI+uC,UAAY,QAAS,GAAI/uC,EAAI+vC,YAAc9vC,EAAG,WAAY,CAAEG,YAAa,wBAAyBnZ,MAAO,CAAE,KAAQ,WAAY,aAAc+Y,EAAIuD,EAAE,kBAAmB,+BAAgC,IAAMhqB,GAAI,CAAE,MAASymB,EAAI6U,UAAYhM,YAAa7I,EAAI8I,GAAG,CAAC,CAAEttB,IAAK,OAAQ/E,GAAI,WACnsB,MAAO,CAACwpB,EAAG,aAAc,CAAEhZ,MAAO,CAAE,KAAQ,MAC9C,EAAG8hB,OAAO,IAAS,MAAM,EAAO,cAAiB/I,EAAIU,KAAMT,EAAG,QAAS,CAAE1c,IAAK,QAAS6c,YAAa,kBAAmBnZ,MAAO,CAAE,OAAU+Y,EAAIwuC,QAAQj0D,OAAO,MAAO,SAAYylB,EAAI0uC,SAAU,8BAA+B,GAAI,KAAQ,QAAUn1D,GAAI,CAAE,OAAUymB,EAAIsxC,WAAc,GAAKtxC,EAAIU,IAChS,GAC2B,IAKzB,EACA,KACA,WACA,KACA,MAEiC9mB,QACnC,IAAIk4D,GAAY,KAChB,SAASzgC,GAAYs5B,EE5tCrB,WACE,OAAO,OAAU,gBAAiB,WAAY,OAExC,OAFiDh2C,SAASE,cAC9D,4DAEJ,CFwtCgCk9C,GAAiBC,GAAgB,GAC/D,OAAIF,cAAqB5H,KAAa8H,IAGtCF,GAAY,IAAI5H,GAASS,IAFhBmH,EAIX,CAMA7jC,eAAeqF,GAAmBhD,EAAS4C,EAAW07B,EAAShyD,GAC7D,MAAMq1D,GAAiB,SAAqB,IAAM,2DAClD,OAAO,IAAIz0C,SAAQ,CAAC7Q,EAASuN,KAC3B,MAAMg4C,EAAS,IAAI,KAAI,CACrBt6D,KAAM,qBACNiN,OAASK,GAAMA,EAAE+sD,EAAgB,CAC/BvtD,MAAO,CACL4rB,UACA4C,YACA07B,UACAuD,iBAAwC,IAAvBv1D,GAASm2B,WAE5Bx5B,GAAI,CACF,MAAA64D,CAAO1/B,GACL/lB,EAAQ+lB,GACRw/B,EAAOG,WACPH,EAAOxsC,KAAK2Y,YAAYi0B,YAAYJ,EAAOxsC,IAC7C,EACA,MAAA1D,CAAO7L,GACL+D,EAAO/D,GAAS,IAAIC,MAAM,aAC1B87C,EAAOG,WACPH,EAAOxsC,KAAK2Y,YAAYi0B,YAAYJ,EAAOxsC,IAC7C,OAINwsC,EAAOrwB,SACPltB,SAASmtB,KAAKnc,YAAYusC,EAAOxsC,IAAI,GAEzC,CACA,SAAS4Q,GAAY5H,EAAOkgC,GAC1B,OAAOoC,GAAatiC,EAAOkgC,GAASt2D,OAAS,CAC/C,CACA,SAAS04D,GAAatiC,EAAOkgC,GAC3B,MAAM2D,EAAe3D,EAAQlxD,KAAKgwB,GAASA,EAAKyF,WAKhD,OAJkBzE,EAAMxuB,QAAQwtB,IAC9B,MAAM91B,EAAO,aAAc81B,EAAOA,EAAKyF,SAAWzF,EAAK91B,KACvD,OAAuC,IAAhC26D,EAAar3D,QAAQtD,EAAY,GAG5C,C,GGhxCI46D,EAA2B,CAAC,EAGhC,SAASC,EAAoBC,GAE5B,IAAIC,EAAeH,EAAyBE,GAC5C,QAAqBt5D,IAAjBu5D,EACH,OAAOA,EAAa/4D,QAGrB,IAAID,EAAS64D,EAAyBE,GAAY,CACjDrnC,GAAIqnC,EACJE,QAAQ,EACRh5D,QAAS,CAAC,GAUX,OANAi5D,EAAoBH,GAAU56D,KAAK6B,EAAOC,QAASD,EAAQA,EAAOC,QAAS64D,GAG3E94D,EAAOi5D,QAAS,EAGTj5D,EAAOC,OACf,CAGA64D,EAAoBppD,EAAIwpD,EpO5BpB98D,EAAW,GACf08D,EAAoBK,EAAI,CAACx3D,EAAQy3D,EAAUt8D,EAAI+oD,KAC9C,IAAGuT,EAAH,CAMA,IAAIC,EAAepV,IACnB,IAASxlD,EAAI,EAAGA,EAAIrC,EAASuC,OAAQF,IAAK,CACrC26D,EAAWh9D,EAASqC,GAAG,GACvB3B,EAAKV,EAASqC,GAAG,GACjBonD,EAAWzpD,EAASqC,GAAG,GAE3B,IAJA,IAGI66D,GAAY,EACP35D,EAAI,EAAGA,EAAIy5D,EAASz6D,OAAQgB,MACpB,EAAXkmD,GAAsBwT,GAAgBxT,IAAarpD,OAAO+G,KAAKu1D,EAAoBK,GAAGhvD,OAAOtI,GAASi3D,EAAoBK,EAAEt3D,GAAKu3D,EAASz5D,MAC9Iy5D,EAAShjD,OAAOzW,IAAK,IAErB25D,GAAY,EACTzT,EAAWwT,IAAcA,EAAexT,IAG7C,GAAGyT,EAAW,CACbl9D,EAASga,OAAO3X,IAAK,GACrB,IAAI6tD,EAAIxvD,SACE2C,IAAN6sD,IAAiB3qD,EAAS2qD,EAC/B,CACD,CACA,OAAO3qD,CArBP,CAJCkkD,EAAWA,GAAY,EACvB,IAAI,IAAIpnD,EAAIrC,EAASuC,OAAQF,EAAI,GAAKrC,EAASqC,EAAI,GAAG,GAAKonD,EAAUpnD,IAAKrC,EAASqC,GAAKrC,EAASqC,EAAI,GACrGrC,EAASqC,GAAK,CAAC26D,EAAUt8D,EAAI+oD,EAuBjB,EqO3BdiT,EAAoBj3C,EAAK7hB,IACxB,IAAIu5D,EAASv5D,GAAUA,EAAOqgB,WAC7B,IAAOrgB,EAAiB,QACxB,IAAM,EAEP,OADA84D,EAAoB7V,EAAEsW,EAAQ,CAAE31D,EAAG21D,IAC5BA,CAAM,ECLdT,EAAoB7V,EAAI,CAAChjD,EAASu5D,KACjC,IAAI,IAAI33D,KAAO23D,EACXV,EAAoBhM,EAAE0M,EAAY33D,KAASi3D,EAAoBhM,EAAE7sD,EAAS4B,IAC5ErF,OAAOyF,eAAehC,EAAS4B,EAAK,CAAEG,YAAY,EAAMohB,IAAKo2C,EAAW33D,IAE1E,ECNDi3D,EAAoBW,EAAI,CAAC,EAGzBX,EAAoB/vD,EAAK2wD,GACjB71C,QAAQoS,IAAIz5B,OAAO+G,KAAKu1D,EAAoBW,GAAG5zD,QAAO,CAAC04B,EAAU18B,KACvEi3D,EAAoBW,EAAE53D,GAAK63D,EAASn7B,GAC7BA,IACL,KCNJu6B,EAAoBa,EAAKD,GAEZA,EAAU,IAAMA,EAAU,SAAW,CAAC,KAAO,uBAAuB,KAAO,uBAAuB,KAAO,wBAAwBA,GCH9IZ,EAAoBc,EAAI,WACvB,GAA0B,iBAAfrU,WAAyB,OAAOA,WAC3C,IACC,OAAOtoD,MAAQ,IAAI6uB,SAAS,cAAb,EAChB,CAAE,MAAO/iB,GACR,GAAsB,iBAAX0M,OAAqB,OAAOA,MACxC,CACA,CAPuB,GCAxBqjD,EAAoBhM,EAAI,CAACxkD,EAAKuxD,IAAUr9D,OAAOC,UAAUC,eAAeyB,KAAKmK,EAAKuxD,GzOA9Ex9D,EAAa,CAAC,EACdC,EAAoB,aAExBw8D,EAAoBp6D,EAAI,CAAC+H,EAAKqzD,EAAMj4D,EAAK63D,KACxC,GAAGr9D,EAAWoK,GAAQpK,EAAWoK,GAAKhJ,KAAKq8D,OAA3C,CACA,IAAIC,EAAQC,EACZ,QAAWv6D,IAARoC,EAEF,IADA,IAAIo4D,EAAUj/C,SAASkmC,qBAAqB,UACpCziD,EAAI,EAAGA,EAAIw7D,EAAQt7D,OAAQF,IAAK,CACvC,IAAIy7D,EAAID,EAAQx7D,GAChB,GAAGy7D,EAAE7kD,aAAa,QAAU5O,GAAOyzD,EAAE7kD,aAAa,iBAAmB/Y,EAAoBuF,EAAK,CAAEk4D,EAASG,EAAG,KAAO,CACpH,CAEGH,IACHC,GAAa,GACbD,EAAS/+C,SAASg7C,cAAc,WAEzBmE,QAAU,QACjBJ,EAAO1T,QAAU,IACbyS,EAAoBsB,IACvBL,EAAO5qB,aAAa,QAAS2pB,EAAoBsB,IAElDL,EAAO5qB,aAAa,eAAgB7yC,EAAoBuF,GAExDk4D,EAAO5oB,IAAM1qC,GAEdpK,EAAWoK,GAAO,CAACqzD,GACnB,IAAIO,EAAmB,CAACr7C,EAAM5hB,KAE7B28D,EAAOO,QAAUP,EAAOQ,OAAS,KACjC1yC,aAAaw+B,GACb,IAAImU,EAAUn+D,EAAWoK,GAIzB,UAHOpK,EAAWoK,GAClBszD,EAAOr1B,YAAcq1B,EAAOr1B,WAAWi0B,YAAYoB,GACnDS,GAAWA,EAAQxyD,SAASlL,GAAQA,EAAGM,KACpC4hB,EAAM,OAAOA,EAAK5hB,EAAM,EAExBipD,EAAUj+B,WAAWiyC,EAAiBn8C,KAAK,UAAMze,EAAW,CAAEuL,KAAM,UAAW0I,OAAQqmD,IAAW,MACtGA,EAAOO,QAAUD,EAAiBn8C,KAAK,KAAM67C,EAAOO,SACpDP,EAAOQ,OAASF,EAAiBn8C,KAAK,KAAM67C,EAAOQ,QACnDP,GAAch/C,SAASy/C,KAAKzuC,YAAY+tC,EApCkB,CAoCX,E0OvChDjB,EAAoBxM,EAAKrsD,IACH,oBAAX6C,QAA0BA,OAAOwa,aAC1C9gB,OAAOyF,eAAehC,EAAS6C,OAAOwa,YAAa,CAAEjb,MAAO,WAE7D7F,OAAOyF,eAAehC,EAAS,aAAc,CAAEoC,OAAO,GAAO,ECL9Dy2D,EAAoB4B,IAAO16D,IAC1BA,EAAOo2B,MAAQ,GACVp2B,EAAOoL,WAAUpL,EAAOoL,SAAW,IACjCpL,GCHR84D,EAAoBn5D,EAAI,K,MCAxB,IAAIg7D,EACA7B,EAAoBc,EAAEgB,gBAAeD,EAAY7B,EAAoBc,EAAEjxD,SAAW,IACtF,IAAIqS,EAAW89C,EAAoBc,EAAE5+C,SACrC,IAAK2/C,GAAa3/C,IACbA,EAAS6/C,gBACZF,EAAY3/C,EAAS6/C,cAAc1pB,MAC/BwpB,GAAW,CACf,IAAIV,EAAUj/C,EAASkmC,qBAAqB,UAC5C,GAAG+Y,EAAQt7D,OAEV,IADA,IAAIF,EAAIw7D,EAAQt7D,OAAS,EAClBF,GAAK,KAAOk8D,IAAc,aAAav1D,KAAKu1D,KAAaA,EAAYV,EAAQx7D,KAAK0yC,GAE3F,CAID,IAAKwpB,EAAW,MAAM,IAAIl+C,MAAM,yDAChCk+C,EAAYA,EAAUn3D,QAAQ,OAAQ,IAAIA,QAAQ,QAAS,IAAIA,QAAQ,YAAa,KACpFs1D,EAAoBgC,EAAIH,C,WClBxB7B,EAAoBj1D,EAAImX,SAAS+/C,SAAW9yC,KAAKtf,SAASsK,KAK1D,IAAI+nD,EAAkB,CACrB,KAAM,GAGPlC,EAAoBW,EAAE95D,EAAI,CAAC+5D,EAASn7B,KAElC,IAAI08B,EAAqBnC,EAAoBhM,EAAEkO,EAAiBtB,GAAWsB,EAAgBtB,QAAWj6D,EACtG,GAA0B,IAAvBw7D,EAGF,GAAGA,EACF18B,EAAS9gC,KAAKw9D,EAAmB,QAC3B,CAGL,IAAI5e,EAAU,IAAIx4B,SAAQ,CAAC7Q,EAASuN,IAAY06C,EAAqBD,EAAgBtB,GAAW,CAAC1mD,EAASuN,KAC1Gge,EAAS9gC,KAAKw9D,EAAmB,GAAK5e,GAGtC,IAAI51C,EAAMqyD,EAAoBgC,EAAIhC,EAAoBa,EAAED,GAEpDl9C,EAAQ,IAAIC,MAgBhBq8C,EAAoBp6D,EAAE+H,GAfFrJ,IACnB,GAAG07D,EAAoBhM,EAAEkO,EAAiBtB,KAEf,KAD1BuB,EAAqBD,EAAgBtB,MACRsB,EAAgBtB,QAAWj6D,GACrDw7D,GAAoB,CACtB,IAAIn+C,EAAY1f,IAAyB,SAAfA,EAAM4N,KAAkB,UAAY5N,EAAM4N,MAChEkwD,EAAU99D,GAASA,EAAMsW,QAAUtW,EAAMsW,OAAOy9B,IACpD30B,EAAMD,QAAU,iBAAmBm9C,EAAU,cAAgB58C,EAAY,KAAOo+C,EAAU,IAC1F1+C,EAAMve,KAAO,iBACbue,EAAMxR,KAAO8R,EACbN,EAAM4tC,QAAU8Q,EAChBD,EAAmB,GAAGz+C,EACvB,CACD,GAEwC,SAAWk9C,EAASA,EAE/D,CACD,EAWFZ,EAAoBK,EAAEx5D,EAAK+5D,GAA0C,IAA7BsB,EAAgBtB,GAGxD,IAAIyB,EAAuB,CAACC,EAA4B/vD,KACvD,IAKI0tD,EAAUW,EALVN,EAAW/tD,EAAK,GAChBgwD,EAAchwD,EAAK,GACnBiwD,EAAUjwD,EAAK,GAGI5M,EAAI,EAC3B,GAAG26D,EAAS3+B,MAAM/I,GAAgC,IAAxBspC,EAAgBtpC,KAAa,CACtD,IAAIqnC,KAAYsC,EACZvC,EAAoBhM,EAAEuO,EAAatC,KACrCD,EAAoBppD,EAAEqpD,GAAYsC,EAAYtC,IAGhD,GAAGuC,EAAS,IAAI35D,EAAS25D,EAAQxC,EAClC,CAEA,IADGsC,GAA4BA,EAA2B/vD,GACrD5M,EAAI26D,EAASz6D,OAAQF,IACzBi7D,EAAUN,EAAS36D,GAChBq6D,EAAoBhM,EAAEkO,EAAiBtB,IAAYsB,EAAgBtB,IACrEsB,EAAgBtB,GAAS,KAE1BsB,EAAgBtB,GAAW,EAE5B,OAAOZ,EAAoBK,EAAEx3D,EAAO,EAGjC45D,EAAqBtzC,KAA4B,sBAAIA,KAA4B,uBAAK,GAC1FszC,EAAmBvzD,QAAQmzD,EAAqBj9C,KAAK,KAAM,IAC3Dq9C,EAAmB99D,KAAO09D,EAAqBj9C,KAAK,KAAMq9C,EAAmB99D,KAAKygB,KAAKq9C,G,KCvFvFzC,EAAoBsB,QAAK36D,ECGzB,IAAI+7D,EAAsB1C,EAAoBK,OAAE15D,EAAW,CAAC,OAAO,IAAOq5D,EAAoB,SAC9F0C,EAAsB1C,EAAoBK,EAAEqC,E","sources":["webpack:///nextcloud/webpack/runtime/chunk loaded","webpack:///nextcloud/webpack/runtime/load script","webpack:///nextcloud/node_modules/@nextcloud/upload/node_modules/eventemitter3/index.js","webpack:///nextcloud/apps/files/src/store/index.ts","webpack:///nextcloud/node_modules/decode-uri-component/index.js","webpack:///nextcloud/node_modules/split-on-first/index.js","webpack:///nextcloud/node_modules/query-string/node_modules/filter-obj/index.js","webpack:///nextcloud/node_modules/query-string/base.js","webpack:///nextcloud/node_modules/query-string/index.js","webpack:///nextcloud/node_modules/vue-router/dist/vue-router.esm.js","webpack:///nextcloud/apps/files/src/router/router.ts","webpack:///nextcloud/apps/files/src/FilesApp.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/Cog.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/Cog.vue?vue&type=script&lang=js","webpack://nextcloud/./node_modules/vue-material-design-icons/Cog.vue?4d6d","webpack:///nextcloud/node_modules/vue-material-design-icons/Cog.vue?vue&type=template&id=89df8f2e","webpack:///nextcloud/node_modules/throttle-debounce/esm/index.js","webpack:///nextcloud/node_modules/vue-material-design-icons/ChartPie.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/ChartPie.vue?vue&type=script&lang=js","webpack://nextcloud/./node_modules/vue-material-design-icons/ChartPie.vue?421f","webpack:///nextcloud/node_modules/vue-material-design-icons/ChartPie.vue?vue&type=template&id=b117066e","webpack:///nextcloud/apps/files/src/logger.js","webpack:///nextcloud/apps/files/src/components/NavigationQuota.vue?vue&type=script&lang=js","webpack:///nextcloud/apps/files/src/components/NavigationQuota.vue","webpack://nextcloud/./apps/files/src/components/NavigationQuota.vue?5187","webpack://nextcloud/./apps/files/src/components/NavigationQuota.vue?2966","webpack://nextcloud/./apps/files/src/components/NavigationQuota.vue?08cb","webpack://nextcloud/./apps/files/src/views/Settings.vue?84f7","webpack:///nextcloud/node_modules/vue-material-design-icons/Clipboard.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/Clipboard.vue?vue&type=script&lang=js","webpack://nextcloud/./node_modules/vue-material-design-icons/Clipboard.vue?68c7","webpack:///nextcloud/node_modules/vue-material-design-icons/Clipboard.vue?vue&type=template&id=0c133921","webpack:///nextcloud/apps/files/src/components/Setting.vue","webpack:///nextcloud/apps/files/src/components/Setting.vue?vue&type=script&lang=js","webpack://nextcloud/./apps/files/src/components/Setting.vue?98ea","webpack://nextcloud/./apps/files/src/components/Setting.vue?8d57","webpack:///nextcloud/apps/files/src/store/userconfig.ts","webpack:///nextcloud/apps/files/src/views/Settings.vue?vue&type=script&lang=js","webpack:///nextcloud/apps/files/src/views/Settings.vue","webpack://nextcloud/./apps/files/src/views/Settings.vue?284f","webpack://nextcloud/./apps/files/src/views/Settings.vue?b81b","webpack:///nextcloud/apps/files/src/composables/useNavigation.ts","webpack:///nextcloud/apps/files/src/store/viewConfig.ts","webpack:///nextcloud/apps/files/src/views/Navigation.vue?vue&type=script&lang=ts","webpack:///nextcloud/apps/files/src/views/Navigation.vue","webpack://nextcloud/./apps/files/src/views/Navigation.vue?d877","webpack://nextcloud/./apps/files/src/views/Navigation.vue?74b9","webpack:///nextcloud/apps/files/src/views/FilesList.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/FormatListBulletedSquare.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/FormatListBulletedSquare.vue?vue&type=script&lang=js","webpack://nextcloud/./node_modules/vue-material-design-icons/FormatListBulletedSquare.vue?5dae","webpack:///nextcloud/node_modules/vue-material-design-icons/FormatListBulletedSquare.vue?vue&type=template&id=00aea13f","webpack:///nextcloud/node_modules/vue-material-design-icons/AccountPlus.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/AccountPlus.vue?vue&type=script&lang=js","webpack://nextcloud/./node_modules/vue-material-design-icons/AccountPlus.vue?2818","webpack:///nextcloud/node_modules/vue-material-design-icons/AccountPlus.vue?vue&type=template&id=a16afc28","webpack:///nextcloud/node_modules/vue-material-design-icons/ViewGrid.vue?vue&type=script&lang=js","webpack:///nextcloud/node_modules/vue-material-design-icons/ViewGrid.vue","webpack://nextcloud/./node_modules/vue-material-design-icons/ViewGrid.vue?4e55","webpack:///nextcloud/node_modules/vue-material-design-icons/ViewGrid.vue?vue&type=template&id=7b96a104","webpack:///nextcloud/apps/files/src/actions/sidebarAction.ts","webpack:///nextcloud/apps/files/src/services/WebdavClient.ts","webpack:///nextcloud/apps/files/src/store/files.ts","webpack:///nextcloud/apps/files/src/store/paths.ts","webpack:///nextcloud/apps/files/src/store/selection.ts","webpack:///nextcloud/apps/files/src/store/uploader.ts","webpack:///nextcloud/apps/files/src/services/SortingService.ts","webpack:///nextcloud/apps/files/src/services/DropServiceUtils.ts","webpack:///nextcloud/apps/files/src/actions/moveOrCopyActionUtils.ts","webpack:///nextcloud/apps/files/src/services/Files.ts","webpack:///nextcloud/apps/files/src/actions/moveOrCopyAction.ts","webpack:///nextcloud/apps/files/src/services/DropService.ts","webpack:///nextcloud/apps/files/src/store/dragging.ts","webpack:///nextcloud/apps/files/src/mixins/filesListWidth.ts","webpack:///nextcloud/apps/files/src/components/BreadCrumbs.vue?vue&type=script&lang=ts","webpack:///nextcloud/apps/files/src/components/BreadCrumbs.vue","webpack://nextcloud/./apps/files/src/components/BreadCrumbs.vue?bc57","webpack://nextcloud/./apps/files/src/components/BreadCrumbs.vue?d357","webpack:///nextcloud/apps/files/src/utils/fileUtils.ts","webpack:///nextcloud/apps/files/src/components/FileEntry.vue","webpack:///nextcloud/apps/files/src/store/actionsmenu.ts","webpack:///nextcloud/apps/files/src/store/renaming.ts","webpack:///nextcloud/node_modules/vue-material-design-icons/FileMultiple.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/FileMultiple.vue?vue&type=script&lang=js","webpack://nextcloud/./node_modules/vue-material-design-icons/FileMultiple.vue?6e9d","webpack:///nextcloud/node_modules/vue-material-design-icons/FileMultiple.vue?vue&type=template&id=27b46e04","webpack:///nextcloud/apps/files/src/components/DragAndDropPreview.vue","webpack:///nextcloud/apps/files/src/components/DragAndDropPreview.vue?vue&type=script&lang=ts","webpack://nextcloud/./apps/files/src/components/DragAndDropPreview.vue?07ad","webpack://nextcloud/./apps/files/src/components/DragAndDropPreview.vue?36f6","webpack:///nextcloud/apps/files/src/utils/dragUtils.ts","webpack:///nextcloud/apps/files/src/components/FileEntryMixin.ts","webpack:///nextcloud/apps/files/src/utils/hashUtils.ts","webpack:///nextcloud/apps/files/src/components/CustomElementRender.vue","webpack:///nextcloud/apps/files/src/components/CustomElementRender.vue?vue&type=script&lang=ts","webpack://nextcloud/./apps/files/src/components/CustomElementRender.vue?5f5c","webpack:///nextcloud/apps/files/src/components/FileEntry/FileEntryActions.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/ArrowLeft.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/ArrowLeft.vue?vue&type=script&lang=js","webpack://nextcloud/./node_modules/vue-material-design-icons/ArrowLeft.vue?f857","webpack:///nextcloud/node_modules/vue-material-design-icons/ArrowLeft.vue?vue&type=template&id=214c9a86","webpack:///nextcloud/apps/files/src/components/FileEntry/FileEntryActions.vue?vue&type=script&lang=ts","webpack://nextcloud/./apps/files/src/components/FileEntry/FileEntryActions.vue?9869","webpack://nextcloud/./apps/files/src/components/FileEntry/FileEntryActions.vue?bea6","webpack://nextcloud/./apps/files/src/components/FileEntry/FileEntryActions.vue?7b52","webpack:///nextcloud/apps/files/src/components/FileEntry/FileEntryCheckbox.vue?vue&type=script&lang=ts","webpack:///nextcloud/apps/files/src/components/FileEntry/FileEntryCheckbox.vue","webpack:///nextcloud/apps/files/src/store/keyboard.ts","webpack://nextcloud/./apps/files/src/components/FileEntry/FileEntryCheckbox.vue?a18b","webpack:///nextcloud/apps/files/src/components/FileEntry/FileEntryName.vue","webpack:///nextcloud/apps/files/src/components/FileEntry/FileEntryName.vue?vue&type=script&lang=ts","webpack://nextcloud/./apps/files/src/components/FileEntry/FileEntryName.vue?98a4","webpack:///nextcloud/apps/files/src/components/FileEntry/FileEntryPreview.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/File.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/File.vue?vue&type=script&lang=js","webpack://nextcloud/./node_modules/vue-material-design-icons/File.vue?245d","webpack:///nextcloud/node_modules/vue-material-design-icons/File.vue?vue&type=template&id=e3c8d598","webpack:///nextcloud/node_modules/vue-material-design-icons/FolderOpen.vue?vue&type=script&lang=js","webpack:///nextcloud/node_modules/vue-material-design-icons/FolderOpen.vue","webpack://nextcloud/./node_modules/vue-material-design-icons/FolderOpen.vue?6818","webpack:///nextcloud/node_modules/vue-material-design-icons/FolderOpen.vue?vue&type=template&id=79cee0a4","webpack:///nextcloud/node_modules/vue-material-design-icons/Key.vue?vue&type=script&lang=js","webpack:///nextcloud/node_modules/vue-material-design-icons/Key.vue","webpack://nextcloud/./node_modules/vue-material-design-icons/Key.vue?157c","webpack:///nextcloud/node_modules/vue-material-design-icons/Key.vue?vue&type=template&id=01a06d54","webpack:///nextcloud/node_modules/vue-material-design-icons/Network.vue?vue&type=script&lang=js","webpack:///nextcloud/node_modules/vue-material-design-icons/Network.vue","webpack://nextcloud/./node_modules/vue-material-design-icons/Network.vue?11eb","webpack:///nextcloud/node_modules/vue-material-design-icons/Network.vue?vue&type=template&id=29f8873c","webpack:///nextcloud/node_modules/vue-material-design-icons/Tag.vue?vue&type=script&lang=js","webpack:///nextcloud/node_modules/vue-material-design-icons/Tag.vue","webpack://nextcloud/./node_modules/vue-material-design-icons/Tag.vue?6116","webpack:///nextcloud/node_modules/vue-material-design-icons/Tag.vue?vue&type=template&id=75dd05e4","webpack:///nextcloud/node_modules/vue-material-design-icons/PlayCircle.vue?vue&type=script&lang=js","webpack:///nextcloud/node_modules/vue-material-design-icons/PlayCircle.vue","webpack://nextcloud/./node_modules/vue-material-design-icons/PlayCircle.vue?0c26","webpack:///nextcloud/node_modules/vue-material-design-icons/PlayCircle.vue?vue&type=template&id=6901b3e6","webpack:///nextcloud/apps/files/src/components/FileEntry/CollectivesIcon.vue?vue&type=script&lang=js","webpack:///nextcloud/apps/files/src/components/FileEntry/CollectivesIcon.vue","webpack://nextcloud/./apps/files/src/components/FileEntry/CollectivesIcon.vue?1937","webpack://nextcloud/./apps/files/src/components/FileEntry/CollectivesIcon.vue?949d","webpack:///nextcloud/apps/files/src/components/FileEntry/FavoriteIcon.vue?vue&type=script&lang=ts","webpack:///nextcloud/apps/files/src/components/FileEntry/FavoriteIcon.vue","webpack://nextcloud/./apps/files/src/components/FileEntry/FavoriteIcon.vue?f7c8","webpack://nextcloud/./apps/files/src/components/FileEntry/FavoriteIcon.vue?62c6","webpack:///nextcloud/apps/files/src/components/FileEntry/FileEntryPreview.vue?vue&type=script&lang=ts","webpack:///nextcloud/apps/files/src/services/LivePhotos.ts","webpack://nextcloud/./apps/files/src/components/FileEntry/FileEntryPreview.vue?8c1f","webpack:///nextcloud/apps/files/src/components/FileEntry.vue?vue&type=script&lang=ts","webpack://nextcloud/./apps/files/src/components/FileEntry.vue?da7c","webpack:///nextcloud/apps/files/src/components/FileEntryGrid.vue?vue&type=script&lang=ts","webpack:///nextcloud/apps/files/src/components/FileEntryGrid.vue","webpack://nextcloud/./apps/files/src/components/FileEntryGrid.vue?bb8e","webpack:///nextcloud/apps/files/src/components/FilesListHeader.vue","webpack:///nextcloud/apps/files/src/components/FilesListHeader.vue?vue&type=script&lang=ts","webpack://nextcloud/./apps/files/src/components/FilesListHeader.vue?349b","webpack:///nextcloud/apps/files/src/components/FilesListTableFooter.vue?vue&type=script&lang=ts","webpack:///nextcloud/apps/files/src/components/FilesListTableFooter.vue","webpack://nextcloud/./apps/files/src/components/FilesListTableFooter.vue?284f","webpack://nextcloud/./apps/files/src/components/FilesListTableFooter.vue?fa4c","webpack:///nextcloud/apps/files/src/components/FilesListTableHeader.vue","webpack:///nextcloud/apps/files/src/mixins/filesSorting.ts","webpack:///nextcloud/apps/files/src/components/FilesListTableHeaderButton.vue?vue&type=script&lang=ts","webpack:///nextcloud/apps/files/src/components/FilesListTableHeaderButton.vue","webpack://nextcloud/./apps/files/src/components/FilesListTableHeaderButton.vue?6c33","webpack://nextcloud/./apps/files/src/components/FilesListTableHeaderButton.vue?e364","webpack:///nextcloud/apps/files/src/components/FilesListTableHeader.vue?vue&type=script&lang=ts","webpack://nextcloud/./apps/files/src/components/FilesListTableHeader.vue?7d8d","webpack://nextcloud/./apps/files/src/components/FilesListTableHeader.vue?b1c9","webpack:///nextcloud/apps/files/src/components/VirtualList.vue","webpack:///nextcloud/apps/files/src/components/VirtualList.vue?vue&type=script&lang=ts","webpack://nextcloud/./apps/files/src/components/VirtualList.vue?37fa","webpack:///nextcloud/apps/files/src/components/FilesListTableHeaderActions.vue","webpack:///nextcloud/apps/files/src/components/FilesListTableHeaderActions.vue?vue&type=script&lang=ts","webpack://nextcloud/./apps/files/src/components/FilesListTableHeaderActions.vue?8cd0","webpack://nextcloud/./apps/files/src/components/FilesListTableHeaderActions.vue?9494","webpack:///nextcloud/apps/files/src/components/FilesListVirtual.vue?vue&type=script&lang=ts","webpack:///nextcloud/apps/files/src/components/FilesListVirtual.vue","webpack://nextcloud/./apps/files/src/components/FilesListVirtual.vue?b904","webpack://nextcloud/./apps/files/src/components/FilesListVirtual.vue?d994","webpack://nextcloud/./apps/files/src/components/FilesListVirtual.vue?3555","webpack:///nextcloud/node_modules/vue-material-design-icons/TrayArrowDown.vue?vue&type=script&lang=js","webpack:///nextcloud/node_modules/vue-material-design-icons/TrayArrowDown.vue","webpack://nextcloud/./node_modules/vue-material-design-icons/TrayArrowDown.vue?a897","webpack:///nextcloud/node_modules/vue-material-design-icons/TrayArrowDown.vue?vue&type=template&id=447c2cd4","webpack:///nextcloud/apps/files/src/components/DragAndDropNotice.vue?vue&type=script&lang=ts","webpack:///nextcloud/apps/files/src/components/DragAndDropNotice.vue","webpack://nextcloud/./apps/files/src/components/DragAndDropNotice.vue?7a27","webpack://nextcloud/./apps/files/src/components/DragAndDropNotice.vue?a2e0","webpack:///nextcloud/apps/files/src/views/FilesList.vue?vue&type=script&lang=ts","webpack://nextcloud/./apps/files/src/views/FilesList.vue?82b5","webpack://nextcloud/./apps/files/src/views/FilesList.vue?1e5b","webpack:///nextcloud/apps/files/src/FilesApp.vue?vue&type=script&lang=ts","webpack://nextcloud/./apps/files/src/FilesApp.vue?597e","webpack:///nextcloud/apps/files/src/main.ts","webpack:///nextcloud/apps/files/src/services/RouterService.ts","webpack:///nextcloud/apps/files/src/services/Settings.js","webpack:///nextcloud/apps/files/src/models/Setting.js","webpack:///nextcloud/node_modules/@nextcloud/upload/dist/assets/index-DiWRcN3o.css","webpack:///nextcloud/apps/files/src/components/BreadCrumbs.vue?vue&type=style&index=0&id=7a939202&prod&lang=scss&scoped=true","webpack:///nextcloud/apps/files/src/components/DragAndDropNotice.vue?vue&type=style&index=0&id=7f8a4132&prod&lang=scss&scoped=true","webpack:///nextcloud/apps/files/src/components/DragAndDropPreview.vue?vue&type=style&index=0&id=775162a4&prod&lang=scss","webpack:///nextcloud/apps/files/src/components/FileEntry/FavoriteIcon.vue?vue&type=style&index=0&id=f2d0cf6e&prod&lang=scss&scoped=true","webpack:///nextcloud/apps/files/src/components/FileEntry/FileEntryActions.vue?vue&type=style&index=0&id=801e4784&prod&lang=scss","webpack:///nextcloud/apps/files/src/components/FileEntry/FileEntryActions.vue?vue&type=style&index=1&id=801e4784&prod&lang=scss&scoped=true","webpack:///nextcloud/apps/files/src/components/FilesListTableFooter.vue?vue&type=style&index=0&id=130ade4f&prod&scoped=true&lang=scss","webpack:///nextcloud/apps/files/src/components/FilesListTableHeader.vue?vue&type=style&index=0&id=6eaeabb8&prod&scoped=true&lang=scss","webpack:///nextcloud/apps/files/src/components/FilesListTableHeaderActions.vue?vue&type=style&index=0&id=1284c4be&prod&scoped=true&lang=scss","webpack:///nextcloud/apps/files/src/components/FilesListTableHeaderButton.vue?vue&type=style&index=0&id=4e97a5c6&prod&scoped=true&lang=scss","webpack:///nextcloud/apps/files/src/components/FilesListVirtual.vue?vue&type=style&index=0&id=1287bfe2&prod&scoped=true&lang=scss","webpack:///nextcloud/apps/files/src/components/FilesListVirtual.vue?vue&type=style&index=1&id=1287bfe2&prod&lang=scss","webpack:///nextcloud/apps/files/src/components/NavigationQuota.vue?vue&type=style&index=0&id=3e968815&prod&lang=scss&scoped=true","webpack:///nextcloud/apps/files/src/views/FilesList.vue?vue&type=style&index=0&id=0e2ac83a&prod&scoped=true&lang=scss","webpack:///nextcloud/apps/files/src/views/Navigation.vue?vue&type=style&index=0&id=66457116&prod&scoped=true&lang=scss","webpack:///nextcloud/apps/files/src/views/Settings.vue?vue&type=style&index=0&id=44764f8d&prod&lang=scss&scoped=true","webpack:///nextcloud/node_modules/is-retry-allowed/index.js","webpack:///nextcloud/node_modules/simple-eta/index.js","webpack://nextcloud/./node_modules/@nextcloud/upload/dist/assets/index-DiWRcN3o.css?9af4","webpack:///nextcloud/node_modules/p-cancelable/index.js","webpack:///nextcloud/node_modules/@nextcloud/upload/node_modules/p-timeout/index.js","webpack:///nextcloud/node_modules/@nextcloud/upload/node_modules/p-queue/dist/priority-queue.js","webpack:///nextcloud/node_modules/@nextcloud/upload/node_modules/p-queue/dist/lower-bound.js","webpack:///nextcloud/node_modules/@nextcloud/upload/node_modules/p-queue/dist/index.js","webpack:///nextcloud/node_modules/axios-retry/dist/esm/index.js","webpack:///nextcloud/node_modules/@nextcloud/upload/node_modules/@nextcloud/l10n/dist/gettext.mjs","webpack:///nextcloud/node_modules/@nextcloud/upload/dist/chunks/index-ifErGYeJ.mjs","webpack:///nextcloud/node_modules/@nextcloud/upload/node_modules/@nextcloud/l10n/dist/chunks/locale-BQFSYg2g.mjs","webpack:///nextcloud/node_modules/@nextcloud/upload/node_modules/@nextcloud/sharing/dist/public.mjs","webpack:///nextcloud/webpack/bootstrap","webpack:///nextcloud/webpack/runtime/compat get default export","webpack:///nextcloud/webpack/runtime/define property getters","webpack:///nextcloud/webpack/runtime/ensure chunk","webpack:///nextcloud/webpack/runtime/get javascript chunk filename","webpack:///nextcloud/webpack/runtime/global","webpack:///nextcloud/webpack/runtime/hasOwnProperty shorthand","webpack:///nextcloud/webpack/runtime/make namespace object","webpack:///nextcloud/webpack/runtime/node module decorator","webpack:///nextcloud/webpack/runtime/runtimeId","webpack:///nextcloud/webpack/runtime/publicPath","webpack:///nextcloud/webpack/runtime/jsonp chunk loading","webpack:///nextcloud/webpack/runtime/nonce","webpack:///nextcloud/webpack/startup"],"sourcesContent":["var deferred = [];\n__webpack_require__.O = (result, chunkIds, fn, priority) => {\n\tif(chunkIds) {\n\t\tpriority = priority || 0;\n\t\tfor(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];\n\t\tdeferred[i] = [chunkIds, fn, priority];\n\t\treturn;\n\t}\n\tvar notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tvar chunkIds = deferred[i][0];\n\t\tvar fn = deferred[i][1];\n\t\tvar priority = deferred[i][2];\n\t\tvar fulfilled = true;\n\t\tfor (var j = 0; j < chunkIds.length; j++) {\n\t\t\tif ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every((key) => (__webpack_require__.O[key](chunkIds[j])))) {\n\t\t\t\tchunkIds.splice(j--, 1);\n\t\t\t} else {\n\t\t\t\tfulfilled = false;\n\t\t\t\tif(priority < notFulfilled) notFulfilled = priority;\n\t\t\t}\n\t\t}\n\t\tif(fulfilled) {\n\t\t\tdeferred.splice(i--, 1)\n\t\t\tvar r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","var inProgress = {};\nvar dataWebpackPrefix = \"nextcloud:\";\n// loadScript function to load a script via script tag\n__webpack_require__.l = (url, done, key, chunkId) => {\n\tif(inProgress[url]) { inProgress[url].push(done); return; }\n\tvar script, needAttach;\n\tif(key !== undefined) {\n\t\tvar scripts = document.getElementsByTagName(\"script\");\n\t\tfor(var i = 0; i < scripts.length; i++) {\n\t\t\tvar s = scripts[i];\n\t\t\tif(s.getAttribute(\"src\") == url || s.getAttribute(\"data-webpack\") == dataWebpackPrefix + key) { script = s; break; }\n\t\t}\n\t}\n\tif(!script) {\n\t\tneedAttach = true;\n\t\tscript = document.createElement('script');\n\n\t\tscript.charset = 'utf-8';\n\t\tscript.timeout = 120;\n\t\tif (__webpack_require__.nc) {\n\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n\t\t}\n\t\tscript.setAttribute(\"data-webpack\", dataWebpackPrefix + key);\n\n\t\tscript.src = url;\n\t}\n\tinProgress[url] = [done];\n\tvar onScriptComplete = (prev, event) => {\n\t\t// avoid mem leaks in IE.\n\t\tscript.onerror = script.onload = null;\n\t\tclearTimeout(timeout);\n\t\tvar doneFns = inProgress[url];\n\t\tdelete inProgress[url];\n\t\tscript.parentNode && script.parentNode.removeChild(script);\n\t\tdoneFns && doneFns.forEach((fn) => (fn(event)));\n\t\tif(prev) return prev(event);\n\t}\n\tvar timeout = setTimeout(onScriptComplete.bind(null, undefined, { type: 'timeout', target: script }), 120000);\n\tscript.onerror = onScriptComplete.bind(null, script.onerror);\n\tscript.onload = onScriptComplete.bind(null, script.onload);\n\tneedAttach && document.head.appendChild(script);\n};","'use strict';\n\nvar has = Object.prototype.hasOwnProperty\n , prefix = '~';\n\n/**\n * Constructor to create a storage for our `EE` objects.\n * An `Events` instance is a plain object whose properties are event names.\n *\n * @constructor\n * @private\n */\nfunction Events() {}\n\n//\n// We try to not inherit from `Object.prototype`. In some engines creating an\n// instance in this way is faster than calling `Object.create(null)` directly.\n// If `Object.create(null)` is not supported we prefix the event names with a\n// character to make sure that the built-in object properties are not\n// overridden or used as an attack vector.\n//\nif (Object.create) {\n Events.prototype = Object.create(null);\n\n //\n // This hack is needed because the `__proto__` property is still inherited in\n // some old browsers like Android 4, iPhone 5.1, Opera 11 and Safari 5.\n //\n if (!new Events().__proto__) prefix = false;\n}\n\n/**\n * Representation of a single event listener.\n *\n * @param {Function} fn The listener function.\n * @param {*} context The context to invoke the listener with.\n * @param {Boolean} [once=false] Specify if the listener is a one-time listener.\n * @constructor\n * @private\n */\nfunction EE(fn, context, once) {\n this.fn = fn;\n this.context = context;\n this.once = once || false;\n}\n\n/**\n * Add a listener for a given event.\n *\n * @param {EventEmitter} emitter Reference to the `EventEmitter` instance.\n * @param {(String|Symbol)} event The event name.\n * @param {Function} fn The listener function.\n * @param {*} context The context to invoke the listener with.\n * @param {Boolean} once Specify if the listener is a one-time listener.\n * @returns {EventEmitter}\n * @private\n */\nfunction addListener(emitter, event, fn, context, once) {\n if (typeof fn !== 'function') {\n throw new TypeError('The listener must be a function');\n }\n\n var listener = new EE(fn, context || emitter, once)\n , evt = prefix ? prefix + event : event;\n\n if (!emitter._events[evt]) emitter._events[evt] = listener, emitter._eventsCount++;\n else if (!emitter._events[evt].fn) emitter._events[evt].push(listener);\n else emitter._events[evt] = [emitter._events[evt], listener];\n\n return emitter;\n}\n\n/**\n * Clear event by name.\n *\n * @param {EventEmitter} emitter Reference to the `EventEmitter` instance.\n * @param {(String|Symbol)} evt The Event name.\n * @private\n */\nfunction clearEvent(emitter, evt) {\n if (--emitter._eventsCount === 0) emitter._events = new Events();\n else delete emitter._events[evt];\n}\n\n/**\n * Minimal `EventEmitter` interface that is molded against the Node.js\n * `EventEmitter` interface.\n *\n * @constructor\n * @public\n */\nfunction EventEmitter() {\n this._events = new Events();\n this._eventsCount = 0;\n}\n\n/**\n * Return an array listing the events for which the emitter has registered\n * listeners.\n *\n * @returns {Array}\n * @public\n */\nEventEmitter.prototype.eventNames = function eventNames() {\n var names = []\n , events\n , name;\n\n if (this._eventsCount === 0) return names;\n\n for (name in (events = this._events)) {\n if (has.call(events, name)) names.push(prefix ? name.slice(1) : name);\n }\n\n if (Object.getOwnPropertySymbols) {\n return names.concat(Object.getOwnPropertySymbols(events));\n }\n\n return names;\n};\n\n/**\n * Return the listeners registered for a given event.\n *\n * @param {(String|Symbol)} event The event name.\n * @returns {Array} The registered listeners.\n * @public\n */\nEventEmitter.prototype.listeners = function listeners(event) {\n var evt = prefix ? prefix + event : event\n , handlers = this._events[evt];\n\n if (!handlers) return [];\n if (handlers.fn) return [handlers.fn];\n\n for (var i = 0, l = handlers.length, ee = new Array(l); i < l; i++) {\n ee[i] = handlers[i].fn;\n }\n\n return ee;\n};\n\n/**\n * Return the number of listeners listening to a given event.\n *\n * @param {(String|Symbol)} event The event name.\n * @returns {Number} The number of listeners.\n * @public\n */\nEventEmitter.prototype.listenerCount = function listenerCount(event) {\n var evt = prefix ? prefix + event : event\n , listeners = this._events[evt];\n\n if (!listeners) return 0;\n if (listeners.fn) return 1;\n return listeners.length;\n};\n\n/**\n * Calls each of the listeners registered for a given event.\n *\n * @param {(String|Symbol)} event The event name.\n * @returns {Boolean} `true` if the event had listeners, else `false`.\n * @public\n */\nEventEmitter.prototype.emit = function emit(event, a1, a2, a3, a4, a5) {\n var evt = prefix ? prefix + event : event;\n\n if (!this._events[evt]) return false;\n\n var listeners = this._events[evt]\n , len = arguments.length\n , args\n , i;\n\n if (listeners.fn) {\n if (listeners.once) this.removeListener(event, listeners.fn, undefined, true);\n\n switch (len) {\n case 1: return listeners.fn.call(listeners.context), true;\n case 2: return listeners.fn.call(listeners.context, a1), true;\n case 3: return listeners.fn.call(listeners.context, a1, a2), true;\n case 4: return listeners.fn.call(listeners.context, a1, a2, a3), true;\n case 5: return listeners.fn.call(listeners.context, a1, a2, a3, a4), true;\n case 6: return listeners.fn.call(listeners.context, a1, a2, a3, a4, a5), true;\n }\n\n for (i = 1, args = new Array(len -1); i < len; i++) {\n args[i - 1] = arguments[i];\n }\n\n listeners.fn.apply(listeners.context, args);\n } else {\n var length = listeners.length\n , j;\n\n for (i = 0; i < length; i++) {\n if (listeners[i].once) this.removeListener(event, listeners[i].fn, undefined, true);\n\n switch (len) {\n case 1: listeners[i].fn.call(listeners[i].context); break;\n case 2: listeners[i].fn.call(listeners[i].context, a1); break;\n case 3: listeners[i].fn.call(listeners[i].context, a1, a2); break;\n case 4: listeners[i].fn.call(listeners[i].context, a1, a2, a3); break;\n default:\n if (!args) for (j = 1, args = new Array(len -1); j < len; j++) {\n args[j - 1] = arguments[j];\n }\n\n listeners[i].fn.apply(listeners[i].context, args);\n }\n }\n }\n\n return true;\n};\n\n/**\n * Add a listener for a given event.\n *\n * @param {(String|Symbol)} event The event name.\n * @param {Function} fn The listener function.\n * @param {*} [context=this] The context to invoke the listener with.\n * @returns {EventEmitter} `this`.\n * @public\n */\nEventEmitter.prototype.on = function on(event, fn, context) {\n return addListener(this, event, fn, context, false);\n};\n\n/**\n * Add a one-time listener for a given event.\n *\n * @param {(String|Symbol)} event The event name.\n * @param {Function} fn The listener function.\n * @param {*} [context=this] The context to invoke the listener with.\n * @returns {EventEmitter} `this`.\n * @public\n */\nEventEmitter.prototype.once = function once(event, fn, context) {\n return addListener(this, event, fn, context, true);\n};\n\n/**\n * Remove the listeners of a given event.\n *\n * @param {(String|Symbol)} event The event name.\n * @param {Function} fn Only remove the listeners that match this function.\n * @param {*} context Only remove the listeners that have this context.\n * @param {Boolean} once Only remove one-time listeners.\n * @returns {EventEmitter} `this`.\n * @public\n */\nEventEmitter.prototype.removeListener = function removeListener(event, fn, context, once) {\n var evt = prefix ? prefix + event : event;\n\n if (!this._events[evt]) return this;\n if (!fn) {\n clearEvent(this, evt);\n return this;\n }\n\n var listeners = this._events[evt];\n\n if (listeners.fn) {\n if (\n listeners.fn === fn &&\n (!once || listeners.once) &&\n (!context || listeners.context === context)\n ) {\n clearEvent(this, evt);\n }\n } else {\n for (var i = 0, events = [], length = listeners.length; i < length; i++) {\n if (\n listeners[i].fn !== fn ||\n (once && !listeners[i].once) ||\n (context && listeners[i].context !== context)\n ) {\n events.push(listeners[i]);\n }\n }\n\n //\n // Reset the array, or remove it completely if we have no more listeners.\n //\n if (events.length) this._events[evt] = events.length === 1 ? events[0] : events;\n else clearEvent(this, evt);\n }\n\n return this;\n};\n\n/**\n * Remove all listeners, or those of the specified event.\n *\n * @param {(String|Symbol)} [event] The event name.\n * @returns {EventEmitter} `this`.\n * @public\n */\nEventEmitter.prototype.removeAllListeners = function removeAllListeners(event) {\n var evt;\n\n if (event) {\n evt = prefix ? prefix + event : event;\n if (this._events[evt]) clearEvent(this, evt);\n } else {\n this._events = new Events();\n this._eventsCount = 0;\n }\n\n return this;\n};\n\n//\n// Alias methods names because people roll like that.\n//\nEventEmitter.prototype.off = EventEmitter.prototype.removeListener;\nEventEmitter.prototype.addListener = EventEmitter.prototype.on;\n\n//\n// Expose the prefix.\n//\nEventEmitter.prefixed = prefix;\n\n//\n// Allow `EventEmitter` to be imported as module namespace.\n//\nEventEmitter.EventEmitter = EventEmitter;\n\n//\n// Expose the module.\n//\nif ('undefined' !== typeof module) {\n module.exports = EventEmitter;\n}\n","/**\n * SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { createPinia } from 'pinia';\nexport const pinia = createPinia();\n","const token = '%[a-f0-9]{2}';\nconst singleMatcher = new RegExp('(' + token + ')|([^%]+?)', 'gi');\nconst multiMatcher = new RegExp('(' + token + ')+', 'gi');\n\nfunction decodeComponents(components, split) {\n\ttry {\n\t\t// Try to decode the entire string first\n\t\treturn [decodeURIComponent(components.join(''))];\n\t} catch {\n\t\t// Do nothing\n\t}\n\n\tif (components.length === 1) {\n\t\treturn components;\n\t}\n\n\tsplit = split || 1;\n\n\t// Split the array in 2 parts\n\tconst left = components.slice(0, split);\n\tconst right = components.slice(split);\n\n\treturn Array.prototype.concat.call([], decodeComponents(left), decodeComponents(right));\n}\n\nfunction decode(input) {\n\ttry {\n\t\treturn decodeURIComponent(input);\n\t} catch {\n\t\tlet tokens = input.match(singleMatcher) || [];\n\n\t\tfor (let i = 1; i < tokens.length; i++) {\n\t\t\tinput = decodeComponents(tokens, i).join('');\n\n\t\t\ttokens = input.match(singleMatcher) || [];\n\t\t}\n\n\t\treturn input;\n\t}\n}\n\nfunction customDecodeURIComponent(input) {\n\t// Keep track of all the replacements and prefill the map with the `BOM`\n\tconst replaceMap = {\n\t\t'%FE%FF': '\\uFFFD\\uFFFD',\n\t\t'%FF%FE': '\\uFFFD\\uFFFD',\n\t};\n\n\tlet match = multiMatcher.exec(input);\n\twhile (match) {\n\t\ttry {\n\t\t\t// Decode as big chunks as possible\n\t\t\treplaceMap[match[0]] = decodeURIComponent(match[0]);\n\t\t} catch {\n\t\t\tconst result = decode(match[0]);\n\n\t\t\tif (result !== match[0]) {\n\t\t\t\treplaceMap[match[0]] = result;\n\t\t\t}\n\t\t}\n\n\t\tmatch = multiMatcher.exec(input);\n\t}\n\n\t// Add `%C2` at the end of the map to make sure it does not replace the combinator before everything else\n\treplaceMap['%C2'] = '\\uFFFD';\n\n\tconst entries = Object.keys(replaceMap);\n\n\tfor (const key of entries) {\n\t\t// Replace all decoded components\n\t\tinput = input.replace(new RegExp(key, 'g'), replaceMap[key]);\n\t}\n\n\treturn input;\n}\n\nexport default function decodeUriComponent(encodedURI) {\n\tif (typeof encodedURI !== 'string') {\n\t\tthrow new TypeError('Expected `encodedURI` to be of type `string`, got `' + typeof encodedURI + '`');\n\t}\n\n\ttry {\n\t\t// Try the built in decoder first\n\t\treturn decodeURIComponent(encodedURI);\n\t} catch {\n\t\t// Fallback to a more advanced decoder\n\t\treturn customDecodeURIComponent(encodedURI);\n\t}\n}\n","export default function splitOnFirst(string, separator) {\n\tif (!(typeof string === 'string' && typeof separator === 'string')) {\n\t\tthrow new TypeError('Expected the arguments to be of type `string`');\n\t}\n\n\tif (string === '' || separator === '') {\n\t\treturn [];\n\t}\n\n\tconst separatorIndex = string.indexOf(separator);\n\n\tif (separatorIndex === -1) {\n\t\treturn [];\n\t}\n\n\treturn [\n\t\tstring.slice(0, separatorIndex),\n\t\tstring.slice(separatorIndex + separator.length)\n\t];\n}\n","export function includeKeys(object, predicate) {\n\tconst result = {};\n\n\tif (Array.isArray(predicate)) {\n\t\tfor (const key of predicate) {\n\t\t\tconst descriptor = Object.getOwnPropertyDescriptor(object, key);\n\t\t\tif (descriptor?.enumerable) {\n\t\t\t\tObject.defineProperty(result, key, descriptor);\n\t\t\t}\n\t\t}\n\t} else {\n\t\t// `Reflect.ownKeys()` is required to retrieve symbol properties\n\t\tfor (const key of Reflect.ownKeys(object)) {\n\t\t\tconst descriptor = Object.getOwnPropertyDescriptor(object, key);\n\t\t\tif (descriptor.enumerable) {\n\t\t\t\tconst value = object[key];\n\t\t\t\tif (predicate(key, value, object)) {\n\t\t\t\t\tObject.defineProperty(result, key, descriptor);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\treturn result;\n}\n\nexport function excludeKeys(object, predicate) {\n\tif (Array.isArray(predicate)) {\n\t\tconst set = new Set(predicate);\n\t\treturn includeKeys(object, key => !set.has(key));\n\t}\n\n\treturn includeKeys(object, (key, value, object) => !predicate(key, value, object));\n}\n","import decodeComponent from 'decode-uri-component';\nimport splitOnFirst from 'split-on-first';\nimport {includeKeys} from 'filter-obj';\n\nconst isNullOrUndefined = value => value === null || value === undefined;\n\n// eslint-disable-next-line unicorn/prefer-code-point\nconst strictUriEncode = string => encodeURIComponent(string).replaceAll(/[!'()*]/g, x => `%${x.charCodeAt(0).toString(16).toUpperCase()}`);\n\nconst encodeFragmentIdentifier = Symbol('encodeFragmentIdentifier');\n\nfunction encoderForArrayFormat(options) {\n\tswitch (options.arrayFormat) {\n\t\tcase 'index': {\n\t\t\treturn key => (result, value) => {\n\t\t\t\tconst index = result.length;\n\n\t\t\t\tif (\n\t\t\t\t\tvalue === undefined\n\t\t\t\t\t|| (options.skipNull && value === null)\n\t\t\t\t\t|| (options.skipEmptyString && value === '')\n\t\t\t\t) {\n\t\t\t\t\treturn result;\n\t\t\t\t}\n\n\t\t\t\tif (value === null) {\n\t\t\t\t\treturn [\n\t\t\t\t\t\t...result, [encode(key, options), '[', index, ']'].join(''),\n\t\t\t\t\t];\n\t\t\t\t}\n\n\t\t\t\treturn [\n\t\t\t\t\t...result,\n\t\t\t\t\t[encode(key, options), '[', encode(index, options), ']=', encode(value, options)].join(''),\n\t\t\t\t];\n\t\t\t};\n\t\t}\n\n\t\tcase 'bracket': {\n\t\t\treturn key => (result, value) => {\n\t\t\t\tif (\n\t\t\t\t\tvalue === undefined\n\t\t\t\t\t|| (options.skipNull && value === null)\n\t\t\t\t\t|| (options.skipEmptyString && value === '')\n\t\t\t\t) {\n\t\t\t\t\treturn result;\n\t\t\t\t}\n\n\t\t\t\tif (value === null) {\n\t\t\t\t\treturn [\n\t\t\t\t\t\t...result,\n\t\t\t\t\t\t[encode(key, options), '[]'].join(''),\n\t\t\t\t\t];\n\t\t\t\t}\n\n\t\t\t\treturn [\n\t\t\t\t\t...result,\n\t\t\t\t\t[encode(key, options), '[]=', encode(value, options)].join(''),\n\t\t\t\t];\n\t\t\t};\n\t\t}\n\n\t\tcase 'colon-list-separator': {\n\t\t\treturn key => (result, value) => {\n\t\t\t\tif (\n\t\t\t\t\tvalue === undefined\n\t\t\t\t\t|| (options.skipNull && value === null)\n\t\t\t\t\t|| (options.skipEmptyString && value === '')\n\t\t\t\t) {\n\t\t\t\t\treturn result;\n\t\t\t\t}\n\n\t\t\t\tif (value === null) {\n\t\t\t\t\treturn [\n\t\t\t\t\t\t...result,\n\t\t\t\t\t\t[encode(key, options), ':list='].join(''),\n\t\t\t\t\t];\n\t\t\t\t}\n\n\t\t\t\treturn [\n\t\t\t\t\t...result,\n\t\t\t\t\t[encode(key, options), ':list=', encode(value, options)].join(''),\n\t\t\t\t];\n\t\t\t};\n\t\t}\n\n\t\tcase 'comma':\n\t\tcase 'separator':\n\t\tcase 'bracket-separator': {\n\t\t\tconst keyValueSeparator = options.arrayFormat === 'bracket-separator'\n\t\t\t\t? '[]='\n\t\t\t\t: '=';\n\n\t\t\treturn key => (result, value) => {\n\t\t\t\tif (\n\t\t\t\t\tvalue === undefined\n\t\t\t\t\t|| (options.skipNull && value === null)\n\t\t\t\t\t|| (options.skipEmptyString && value === '')\n\t\t\t\t) {\n\t\t\t\t\treturn result;\n\t\t\t\t}\n\n\t\t\t\t// Translate null to an empty string so that it doesn't serialize as 'null'\n\t\t\t\tvalue = value === null ? '' : value;\n\n\t\t\t\tif (result.length === 0) {\n\t\t\t\t\treturn [[encode(key, options), keyValueSeparator, encode(value, options)].join('')];\n\t\t\t\t}\n\n\t\t\t\treturn [[result, encode(value, options)].join(options.arrayFormatSeparator)];\n\t\t\t};\n\t\t}\n\n\t\tdefault: {\n\t\t\treturn key => (result, value) => {\n\t\t\t\tif (\n\t\t\t\t\tvalue === undefined\n\t\t\t\t\t|| (options.skipNull && value === null)\n\t\t\t\t\t|| (options.skipEmptyString && value === '')\n\t\t\t\t) {\n\t\t\t\t\treturn result;\n\t\t\t\t}\n\n\t\t\t\tif (value === null) {\n\t\t\t\t\treturn [\n\t\t\t\t\t\t...result,\n\t\t\t\t\t\tencode(key, options),\n\t\t\t\t\t];\n\t\t\t\t}\n\n\t\t\t\treturn [\n\t\t\t\t\t...result,\n\t\t\t\t\t[encode(key, options), '=', encode(value, options)].join(''),\n\t\t\t\t];\n\t\t\t};\n\t\t}\n\t}\n}\n\nfunction parserForArrayFormat(options) {\n\tlet result;\n\n\tswitch (options.arrayFormat) {\n\t\tcase 'index': {\n\t\t\treturn (key, value, accumulator) => {\n\t\t\t\tresult = /\\[(\\d*)]$/.exec(key);\n\n\t\t\t\tkey = key.replace(/\\[\\d*]$/, '');\n\n\t\t\t\tif (!result) {\n\t\t\t\t\taccumulator[key] = value;\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tif (accumulator[key] === undefined) {\n\t\t\t\t\taccumulator[key] = {};\n\t\t\t\t}\n\n\t\t\t\taccumulator[key][result[1]] = value;\n\t\t\t};\n\t\t}\n\n\t\tcase 'bracket': {\n\t\t\treturn (key, value, accumulator) => {\n\t\t\t\tresult = /(\\[])$/.exec(key);\n\t\t\t\tkey = key.replace(/\\[]$/, '');\n\n\t\t\t\tif (!result) {\n\t\t\t\t\taccumulator[key] = value;\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tif (accumulator[key] === undefined) {\n\t\t\t\t\taccumulator[key] = [value];\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\taccumulator[key] = [...accumulator[key], value];\n\t\t\t};\n\t\t}\n\n\t\tcase 'colon-list-separator': {\n\t\t\treturn (key, value, accumulator) => {\n\t\t\t\tresult = /(:list)$/.exec(key);\n\t\t\t\tkey = key.replace(/:list$/, '');\n\n\t\t\t\tif (!result) {\n\t\t\t\t\taccumulator[key] = value;\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tif (accumulator[key] === undefined) {\n\t\t\t\t\taccumulator[key] = [value];\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\taccumulator[key] = [...accumulator[key], value];\n\t\t\t};\n\t\t}\n\n\t\tcase 'comma':\n\t\tcase 'separator': {\n\t\t\treturn (key, value, accumulator) => {\n\t\t\t\tconst isArray = typeof value === 'string' && value.includes(options.arrayFormatSeparator);\n\t\t\t\tconst isEncodedArray = (typeof value === 'string' && !isArray && decode(value, options).includes(options.arrayFormatSeparator));\n\t\t\t\tvalue = isEncodedArray ? decode(value, options) : value;\n\t\t\t\tconst newValue = isArray || isEncodedArray ? value.split(options.arrayFormatSeparator).map(item => decode(item, options)) : (value === null ? value : decode(value, options));\n\t\t\t\taccumulator[key] = newValue;\n\t\t\t};\n\t\t}\n\n\t\tcase 'bracket-separator': {\n\t\t\treturn (key, value, accumulator) => {\n\t\t\t\tconst isArray = /(\\[])$/.test(key);\n\t\t\t\tkey = key.replace(/\\[]$/, '');\n\n\t\t\t\tif (!isArray) {\n\t\t\t\t\taccumulator[key] = value ? decode(value, options) : value;\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tconst arrayValue = value === null\n\t\t\t\t\t? []\n\t\t\t\t\t: value.split(options.arrayFormatSeparator).map(item => decode(item, options));\n\n\t\t\t\tif (accumulator[key] === undefined) {\n\t\t\t\t\taccumulator[key] = arrayValue;\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\taccumulator[key] = [...accumulator[key], ...arrayValue];\n\t\t\t};\n\t\t}\n\n\t\tdefault: {\n\t\t\treturn (key, value, accumulator) => {\n\t\t\t\tif (accumulator[key] === undefined) {\n\t\t\t\t\taccumulator[key] = value;\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\taccumulator[key] = [...[accumulator[key]].flat(), value];\n\t\t\t};\n\t\t}\n\t}\n}\n\nfunction validateArrayFormatSeparator(value) {\n\tif (typeof value !== 'string' || value.length !== 1) {\n\t\tthrow new TypeError('arrayFormatSeparator must be single character string');\n\t}\n}\n\nfunction encode(value, options) {\n\tif (options.encode) {\n\t\treturn options.strict ? strictUriEncode(value) : encodeURIComponent(value);\n\t}\n\n\treturn value;\n}\n\nfunction decode(value, options) {\n\tif (options.decode) {\n\t\treturn decodeComponent(value);\n\t}\n\n\treturn value;\n}\n\nfunction keysSorter(input) {\n\tif (Array.isArray(input)) {\n\t\treturn input.sort();\n\t}\n\n\tif (typeof input === 'object') {\n\t\treturn keysSorter(Object.keys(input))\n\t\t\t.sort((a, b) => Number(a) - Number(b))\n\t\t\t.map(key => input[key]);\n\t}\n\n\treturn input;\n}\n\nfunction removeHash(input) {\n\tconst hashStart = input.indexOf('#');\n\tif (hashStart !== -1) {\n\t\tinput = input.slice(0, hashStart);\n\t}\n\n\treturn input;\n}\n\nfunction getHash(url) {\n\tlet hash = '';\n\tconst hashStart = url.indexOf('#');\n\tif (hashStart !== -1) {\n\t\thash = url.slice(hashStart);\n\t}\n\n\treturn hash;\n}\n\nfunction parseValue(value, options) {\n\tif (options.parseNumbers && !Number.isNaN(Number(value)) && (typeof value === 'string' && value.trim() !== '')) {\n\t\tvalue = Number(value);\n\t} else if (options.parseBooleans && value !== null && (value.toLowerCase() === 'true' || value.toLowerCase() === 'false')) {\n\t\tvalue = value.toLowerCase() === 'true';\n\t}\n\n\treturn value;\n}\n\nexport function extract(input) {\n\tinput = removeHash(input);\n\tconst queryStart = input.indexOf('?');\n\tif (queryStart === -1) {\n\t\treturn '';\n\t}\n\n\treturn input.slice(queryStart + 1);\n}\n\nexport function parse(query, options) {\n\toptions = {\n\t\tdecode: true,\n\t\tsort: true,\n\t\tarrayFormat: 'none',\n\t\tarrayFormatSeparator: ',',\n\t\tparseNumbers: false,\n\t\tparseBooleans: false,\n\t\t...options,\n\t};\n\n\tvalidateArrayFormatSeparator(options.arrayFormatSeparator);\n\n\tconst formatter = parserForArrayFormat(options);\n\n\t// Create an object with no prototype\n\tconst returnValue = Object.create(null);\n\n\tif (typeof query !== 'string') {\n\t\treturn returnValue;\n\t}\n\n\tquery = query.trim().replace(/^[?#&]/, '');\n\n\tif (!query) {\n\t\treturn returnValue;\n\t}\n\n\tfor (const parameter of query.split('&')) {\n\t\tif (parameter === '') {\n\t\t\tcontinue;\n\t\t}\n\n\t\tconst parameter_ = options.decode ? parameter.replaceAll('+', ' ') : parameter;\n\n\t\tlet [key, value] = splitOnFirst(parameter_, '=');\n\n\t\tif (key === undefined) {\n\t\t\tkey = parameter_;\n\t\t}\n\n\t\t// Missing `=` should be `null`:\n\t\t// http://w3.org/TR/2012/WD-url-20120524/#collect-url-parameters\n\t\tvalue = value === undefined ? null : (['comma', 'separator', 'bracket-separator'].includes(options.arrayFormat) ? value : decode(value, options));\n\t\tformatter(decode(key, options), value, returnValue);\n\t}\n\n\tfor (const [key, value] of Object.entries(returnValue)) {\n\t\tif (typeof value === 'object' && value !== null) {\n\t\t\tfor (const [key2, value2] of Object.entries(value)) {\n\t\t\t\tvalue[key2] = parseValue(value2, options);\n\t\t\t}\n\t\t} else {\n\t\t\treturnValue[key] = parseValue(value, options);\n\t\t}\n\t}\n\n\tif (options.sort === false) {\n\t\treturn returnValue;\n\t}\n\n\t// TODO: Remove the use of `reduce`.\n\t// eslint-disable-next-line unicorn/no-array-reduce\n\treturn (options.sort === true ? Object.keys(returnValue).sort() : Object.keys(returnValue).sort(options.sort)).reduce((result, key) => {\n\t\tconst value = returnValue[key];\n\t\tresult[key] = Boolean(value) && typeof value === 'object' && !Array.isArray(value) ? keysSorter(value) : value;\n\t\treturn result;\n\t}, Object.create(null));\n}\n\nexport function stringify(object, options) {\n\tif (!object) {\n\t\treturn '';\n\t}\n\n\toptions = {\n\t\tencode: true,\n\t\tstrict: true,\n\t\tarrayFormat: 'none',\n\t\tarrayFormatSeparator: ',',\n\t\t...options,\n\t};\n\n\tvalidateArrayFormatSeparator(options.arrayFormatSeparator);\n\n\tconst shouldFilter = key => (\n\t\t(options.skipNull && isNullOrUndefined(object[key]))\n\t\t|| (options.skipEmptyString && object[key] === '')\n\t);\n\n\tconst formatter = encoderForArrayFormat(options);\n\n\tconst objectCopy = {};\n\n\tfor (const [key, value] of Object.entries(object)) {\n\t\tif (!shouldFilter(key)) {\n\t\t\tobjectCopy[key] = value;\n\t\t}\n\t}\n\n\tconst keys = Object.keys(objectCopy);\n\n\tif (options.sort !== false) {\n\t\tkeys.sort(options.sort);\n\t}\n\n\treturn keys.map(key => {\n\t\tconst value = object[key];\n\n\t\tif (value === undefined) {\n\t\t\treturn '';\n\t\t}\n\n\t\tif (value === null) {\n\t\t\treturn encode(key, options);\n\t\t}\n\n\t\tif (Array.isArray(value)) {\n\t\t\tif (value.length === 0 && options.arrayFormat === 'bracket-separator') {\n\t\t\t\treturn encode(key, options) + '[]';\n\t\t\t}\n\n\t\t\treturn value\n\t\t\t\t.reduce(formatter(key), [])\n\t\t\t\t.join('&');\n\t\t}\n\n\t\treturn encode(key, options) + '=' + encode(value, options);\n\t}).filter(x => x.length > 0).join('&');\n}\n\nexport function parseUrl(url, options) {\n\toptions = {\n\t\tdecode: true,\n\t\t...options,\n\t};\n\n\tlet [url_, hash] = splitOnFirst(url, '#');\n\n\tif (url_ === undefined) {\n\t\turl_ = url;\n\t}\n\n\treturn {\n\t\turl: url_?.split('?')?.[0] ?? '',\n\t\tquery: parse(extract(url), options),\n\t\t...(options && options.parseFragmentIdentifier && hash ? {fragmentIdentifier: decode(hash, options)} : {}),\n\t};\n}\n\nexport function stringifyUrl(object, options) {\n\toptions = {\n\t\tencode: true,\n\t\tstrict: true,\n\t\t[encodeFragmentIdentifier]: true,\n\t\t...options,\n\t};\n\n\tconst url = removeHash(object.url).split('?')[0] || '';\n\tconst queryFromUrl = extract(object.url);\n\n\tconst query = {\n\t\t...parse(queryFromUrl, {sort: false}),\n\t\t...object.query,\n\t};\n\n\tlet queryString = stringify(query, options);\n\tqueryString &&= `?${queryString}`;\n\n\tlet hash = getHash(object.url);\n\tif (typeof object.fragmentIdentifier === 'string') {\n\t\tconst urlObjectForFragmentEncode = new URL(url);\n\t\turlObjectForFragmentEncode.hash = object.fragmentIdentifier;\n\t\thash = options[encodeFragmentIdentifier] ? urlObjectForFragmentEncode.hash : `#${object.fragmentIdentifier}`;\n\t}\n\n\treturn `${url}${queryString}${hash}`;\n}\n\nexport function pick(input, filter, options) {\n\toptions = {\n\t\tparseFragmentIdentifier: true,\n\t\t[encodeFragmentIdentifier]: false,\n\t\t...options,\n\t};\n\n\tconst {url, query, fragmentIdentifier} = parseUrl(input, options);\n\n\treturn stringifyUrl({\n\t\turl,\n\t\tquery: includeKeys(query, filter),\n\t\tfragmentIdentifier,\n\t}, options);\n}\n\nexport function exclude(input, filter, options) {\n\tconst exclusionFilter = Array.isArray(filter) ? key => !filter.includes(key) : (key, value) => !filter(key, value);\n\n\treturn pick(input, exclusionFilter, options);\n}\n","import * as queryString from './base.js';\n\nexport default queryString;\n","/*!\n * vue-router v3.6.5\n * (c) 2022 Evan You\n * @license MIT\n */\n/* */\n\nfunction assert (condition, message) {\n if (!condition) {\n throw new Error((\"[vue-router] \" + message))\n }\n}\n\nfunction warn (condition, message) {\n if (!condition) {\n typeof console !== 'undefined' && console.warn((\"[vue-router] \" + message));\n }\n}\n\nfunction extend (a, b) {\n for (var key in b) {\n a[key] = b[key];\n }\n return a\n}\n\n/* */\n\nvar encodeReserveRE = /[!'()*]/g;\nvar encodeReserveReplacer = function (c) { return '%' + c.charCodeAt(0).toString(16); };\nvar commaRE = /%2C/g;\n\n// fixed encodeURIComponent which is more conformant to RFC3986:\n// - escapes [!'()*]\n// - preserve commas\nvar encode = function (str) { return encodeURIComponent(str)\n .replace(encodeReserveRE, encodeReserveReplacer)\n .replace(commaRE, ','); };\n\nfunction decode (str) {\n try {\n return decodeURIComponent(str)\n } catch (err) {\n if (process.env.NODE_ENV !== 'production') {\n warn(false, (\"Error decoding \\\"\" + str + \"\\\". Leaving it intact.\"));\n }\n }\n return str\n}\n\nfunction resolveQuery (\n query,\n extraQuery,\n _parseQuery\n) {\n if ( extraQuery === void 0 ) extraQuery = {};\n\n var parse = _parseQuery || parseQuery;\n var parsedQuery;\n try {\n parsedQuery = parse(query || '');\n } catch (e) {\n process.env.NODE_ENV !== 'production' && warn(false, e.message);\n parsedQuery = {};\n }\n for (var key in extraQuery) {\n var value = extraQuery[key];\n parsedQuery[key] = Array.isArray(value)\n ? value.map(castQueryParamValue)\n : castQueryParamValue(value);\n }\n return parsedQuery\n}\n\nvar castQueryParamValue = function (value) { return (value == null || typeof value === 'object' ? value : String(value)); };\n\nfunction parseQuery (query) {\n var res = {};\n\n query = query.trim().replace(/^(\\?|#|&)/, '');\n\n if (!query) {\n return res\n }\n\n query.split('&').forEach(function (param) {\n var parts = param.replace(/\\+/g, ' ').split('=');\n var key = decode(parts.shift());\n var val = parts.length > 0 ? decode(parts.join('=')) : null;\n\n if (res[key] === undefined) {\n res[key] = val;\n } else if (Array.isArray(res[key])) {\n res[key].push(val);\n } else {\n res[key] = [res[key], val];\n }\n });\n\n return res\n}\n\nfunction stringifyQuery (obj) {\n var res = obj\n ? Object.keys(obj)\n .map(function (key) {\n var val = obj[key];\n\n if (val === undefined) {\n return ''\n }\n\n if (val === null) {\n return encode(key)\n }\n\n if (Array.isArray(val)) {\n var result = [];\n val.forEach(function (val2) {\n if (val2 === undefined) {\n return\n }\n if (val2 === null) {\n result.push(encode(key));\n } else {\n result.push(encode(key) + '=' + encode(val2));\n }\n });\n return result.join('&')\n }\n\n return encode(key) + '=' + encode(val)\n })\n .filter(function (x) { return x.length > 0; })\n .join('&')\n : null;\n return res ? (\"?\" + res) : ''\n}\n\n/* */\n\nvar trailingSlashRE = /\\/?$/;\n\nfunction createRoute (\n record,\n location,\n redirectedFrom,\n router\n) {\n var stringifyQuery = router && router.options.stringifyQuery;\n\n var query = location.query || {};\n try {\n query = clone(query);\n } catch (e) {}\n\n var route = {\n name: location.name || (record && record.name),\n meta: (record && record.meta) || {},\n path: location.path || '/',\n hash: location.hash || '',\n query: query,\n params: location.params || {},\n fullPath: getFullPath(location, stringifyQuery),\n matched: record ? formatMatch(record) : []\n };\n if (redirectedFrom) {\n route.redirectedFrom = getFullPath(redirectedFrom, stringifyQuery);\n }\n return Object.freeze(route)\n}\n\nfunction clone (value) {\n if (Array.isArray(value)) {\n return value.map(clone)\n } else if (value && typeof value === 'object') {\n var res = {};\n for (var key in value) {\n res[key] = clone(value[key]);\n }\n return res\n } else {\n return value\n }\n}\n\n// the starting route that represents the initial state\nvar START = createRoute(null, {\n path: '/'\n});\n\nfunction formatMatch (record) {\n var res = [];\n while (record) {\n res.unshift(record);\n record = record.parent;\n }\n return res\n}\n\nfunction getFullPath (\n ref,\n _stringifyQuery\n) {\n var path = ref.path;\n var query = ref.query; if ( query === void 0 ) query = {};\n var hash = ref.hash; if ( hash === void 0 ) hash = '';\n\n var stringify = _stringifyQuery || stringifyQuery;\n return (path || '/') + stringify(query) + hash\n}\n\nfunction isSameRoute (a, b, onlyPath) {\n if (b === START) {\n return a === b\n } else if (!b) {\n return false\n } else if (a.path && b.path) {\n return a.path.replace(trailingSlashRE, '') === b.path.replace(trailingSlashRE, '') && (onlyPath ||\n a.hash === b.hash &&\n isObjectEqual(a.query, b.query))\n } else if (a.name && b.name) {\n return (\n a.name === b.name &&\n (onlyPath || (\n a.hash === b.hash &&\n isObjectEqual(a.query, b.query) &&\n isObjectEqual(a.params, b.params))\n )\n )\n } else {\n return false\n }\n}\n\nfunction isObjectEqual (a, b) {\n if ( a === void 0 ) a = {};\n if ( b === void 0 ) b = {};\n\n // handle null value #1566\n if (!a || !b) { return a === b }\n var aKeys = Object.keys(a).sort();\n var bKeys = Object.keys(b).sort();\n if (aKeys.length !== bKeys.length) {\n return false\n }\n return aKeys.every(function (key, i) {\n var aVal = a[key];\n var bKey = bKeys[i];\n if (bKey !== key) { return false }\n var bVal = b[key];\n // query values can be null and undefined\n if (aVal == null || bVal == null) { return aVal === bVal }\n // check nested equality\n if (typeof aVal === 'object' && typeof bVal === 'object') {\n return isObjectEqual(aVal, bVal)\n }\n return String(aVal) === String(bVal)\n })\n}\n\nfunction isIncludedRoute (current, target) {\n return (\n current.path.replace(trailingSlashRE, '/').indexOf(\n target.path.replace(trailingSlashRE, '/')\n ) === 0 &&\n (!target.hash || current.hash === target.hash) &&\n queryIncludes(current.query, target.query)\n )\n}\n\nfunction queryIncludes (current, target) {\n for (var key in target) {\n if (!(key in current)) {\n return false\n }\n }\n return true\n}\n\nfunction handleRouteEntered (route) {\n for (var i = 0; i < route.matched.length; i++) {\n var record = route.matched[i];\n for (var name in record.instances) {\n var instance = record.instances[name];\n var cbs = record.enteredCbs[name];\n if (!instance || !cbs) { continue }\n delete record.enteredCbs[name];\n for (var i$1 = 0; i$1 < cbs.length; i$1++) {\n if (!instance._isBeingDestroyed) { cbs[i$1](instance); }\n }\n }\n }\n}\n\nvar View = {\n name: 'RouterView',\n functional: true,\n props: {\n name: {\n type: String,\n default: 'default'\n }\n },\n render: function render (_, ref) {\n var props = ref.props;\n var children = ref.children;\n var parent = ref.parent;\n var data = ref.data;\n\n // used by devtools to display a router-view badge\n data.routerView = true;\n\n // directly use parent context's createElement() function\n // so that components rendered by router-view can resolve named slots\n var h = parent.$createElement;\n var name = props.name;\n var route = parent.$route;\n var cache = parent._routerViewCache || (parent._routerViewCache = {});\n\n // determine current view depth, also check to see if the tree\n // has been toggled inactive but kept-alive.\n var depth = 0;\n var inactive = false;\n while (parent && parent._routerRoot !== parent) {\n var vnodeData = parent.$vnode ? parent.$vnode.data : {};\n if (vnodeData.routerView) {\n depth++;\n }\n if (vnodeData.keepAlive && parent._directInactive && parent._inactive) {\n inactive = true;\n }\n parent = parent.$parent;\n }\n data.routerViewDepth = depth;\n\n // render previous view if the tree is inactive and kept-alive\n if (inactive) {\n var cachedData = cache[name];\n var cachedComponent = cachedData && cachedData.component;\n if (cachedComponent) {\n // #2301\n // pass props\n if (cachedData.configProps) {\n fillPropsinData(cachedComponent, data, cachedData.route, cachedData.configProps);\n }\n return h(cachedComponent, data, children)\n } else {\n // render previous empty view\n return h()\n }\n }\n\n var matched = route.matched[depth];\n var component = matched && matched.components[name];\n\n // render empty node if no matched route or no config component\n if (!matched || !component) {\n cache[name] = null;\n return h()\n }\n\n // cache component\n cache[name] = { component: component };\n\n // attach instance registration hook\n // this will be called in the instance's injected lifecycle hooks\n data.registerRouteInstance = function (vm, val) {\n // val could be undefined for unregistration\n var current = matched.instances[name];\n if (\n (val && current !== vm) ||\n (!val && current === vm)\n ) {\n matched.instances[name] = val;\n }\n }\n\n // also register instance in prepatch hook\n // in case the same component instance is reused across different routes\n ;(data.hook || (data.hook = {})).prepatch = function (_, vnode) {\n matched.instances[name] = vnode.componentInstance;\n };\n\n // register instance in init hook\n // in case kept-alive component be actived when routes changed\n data.hook.init = function (vnode) {\n if (vnode.data.keepAlive &&\n vnode.componentInstance &&\n vnode.componentInstance !== matched.instances[name]\n ) {\n matched.instances[name] = vnode.componentInstance;\n }\n\n // if the route transition has already been confirmed then we weren't\n // able to call the cbs during confirmation as the component was not\n // registered yet, so we call it here.\n handleRouteEntered(route);\n };\n\n var configProps = matched.props && matched.props[name];\n // save route and configProps in cache\n if (configProps) {\n extend(cache[name], {\n route: route,\n configProps: configProps\n });\n fillPropsinData(component, data, route, configProps);\n }\n\n return h(component, data, children)\n }\n};\n\nfunction fillPropsinData (component, data, route, configProps) {\n // resolve props\n var propsToPass = data.props = resolveProps(route, configProps);\n if (propsToPass) {\n // clone to prevent mutation\n propsToPass = data.props = extend({}, propsToPass);\n // pass non-declared props as attrs\n var attrs = data.attrs = data.attrs || {};\n for (var key in propsToPass) {\n if (!component.props || !(key in component.props)) {\n attrs[key] = propsToPass[key];\n delete propsToPass[key];\n }\n }\n }\n}\n\nfunction resolveProps (route, config) {\n switch (typeof config) {\n case 'undefined':\n return\n case 'object':\n return config\n case 'function':\n return config(route)\n case 'boolean':\n return config ? route.params : undefined\n default:\n if (process.env.NODE_ENV !== 'production') {\n warn(\n false,\n \"props in \\\"\" + (route.path) + \"\\\" is a \" + (typeof config) + \", \" +\n \"expecting an object, function or boolean.\"\n );\n }\n }\n}\n\n/* */\n\nfunction resolvePath (\n relative,\n base,\n append\n) {\n var firstChar = relative.charAt(0);\n if (firstChar === '/') {\n return relative\n }\n\n if (firstChar === '?' || firstChar === '#') {\n return base + relative\n }\n\n var stack = base.split('/');\n\n // remove trailing segment if:\n // - not appending\n // - appending to trailing slash (last segment is empty)\n if (!append || !stack[stack.length - 1]) {\n stack.pop();\n }\n\n // resolve relative path\n var segments = relative.replace(/^\\//, '').split('/');\n for (var i = 0; i < segments.length; i++) {\n var segment = segments[i];\n if (segment === '..') {\n stack.pop();\n } else if (segment !== '.') {\n stack.push(segment);\n }\n }\n\n // ensure leading slash\n if (stack[0] !== '') {\n stack.unshift('');\n }\n\n return stack.join('/')\n}\n\nfunction parsePath (path) {\n var hash = '';\n var query = '';\n\n var hashIndex = path.indexOf('#');\n if (hashIndex >= 0) {\n hash = path.slice(hashIndex);\n path = path.slice(0, hashIndex);\n }\n\n var queryIndex = path.indexOf('?');\n if (queryIndex >= 0) {\n query = path.slice(queryIndex + 1);\n path = path.slice(0, queryIndex);\n }\n\n return {\n path: path,\n query: query,\n hash: hash\n }\n}\n\nfunction cleanPath (path) {\n return path.replace(/\\/(?:\\s*\\/)+/g, '/')\n}\n\nvar isarray = Array.isArray || function (arr) {\n return Object.prototype.toString.call(arr) == '[object Array]';\n};\n\n/**\n * Expose `pathToRegexp`.\n */\nvar pathToRegexp_1 = pathToRegexp;\nvar parse_1 = parse;\nvar compile_1 = compile;\nvar tokensToFunction_1 = tokensToFunction;\nvar tokensToRegExp_1 = tokensToRegExp;\n\n/**\n * The main path matching regexp utility.\n *\n * @type {RegExp}\n */\nvar PATH_REGEXP = new RegExp([\n // Match escaped characters that would otherwise appear in future matches.\n // This allows the user to escape special characters that won't transform.\n '(\\\\\\\\.)',\n // Match Express-style parameters and un-named parameters with a prefix\n // and optional suffixes. Matches appear as:\n //\n // \"/:test(\\\\d+)?\" => [\"/\", \"test\", \"\\d+\", undefined, \"?\", undefined]\n // \"/route(\\\\d+)\" => [undefined, undefined, undefined, \"\\d+\", undefined, undefined]\n // \"/*\" => [\"/\", undefined, undefined, undefined, undefined, \"*\"]\n '([\\\\/.])?(?:(?:\\\\:(\\\\w+)(?:\\\\(((?:\\\\\\\\.|[^\\\\\\\\()])+)\\\\))?|\\\\(((?:\\\\\\\\.|[^\\\\\\\\()])+)\\\\))([+*?])?|(\\\\*))'\n].join('|'), 'g');\n\n/**\n * Parse a string for the raw tokens.\n *\n * @param {string} str\n * @param {Object=} options\n * @return {!Array}\n */\nfunction parse (str, options) {\n var tokens = [];\n var key = 0;\n var index = 0;\n var path = '';\n var defaultDelimiter = options && options.delimiter || '/';\n var res;\n\n while ((res = PATH_REGEXP.exec(str)) != null) {\n var m = res[0];\n var escaped = res[1];\n var offset = res.index;\n path += str.slice(index, offset);\n index = offset + m.length;\n\n // Ignore already escaped sequences.\n if (escaped) {\n path += escaped[1];\n continue\n }\n\n var next = str[index];\n var prefix = res[2];\n var name = res[3];\n var capture = res[4];\n var group = res[5];\n var modifier = res[6];\n var asterisk = res[7];\n\n // Push the current path onto the tokens.\n if (path) {\n tokens.push(path);\n path = '';\n }\n\n var partial = prefix != null && next != null && next !== prefix;\n var repeat = modifier === '+' || modifier === '*';\n var optional = modifier === '?' || modifier === '*';\n var delimiter = res[2] || defaultDelimiter;\n var pattern = capture || group;\n\n tokens.push({\n name: name || key++,\n prefix: prefix || '',\n delimiter: delimiter,\n optional: optional,\n repeat: repeat,\n partial: partial,\n asterisk: !!asterisk,\n pattern: pattern ? escapeGroup(pattern) : (asterisk ? '.*' : '[^' + escapeString(delimiter) + ']+?')\n });\n }\n\n // Match any characters still remaining.\n if (index < str.length) {\n path += str.substr(index);\n }\n\n // If the path exists, push it onto the end.\n if (path) {\n tokens.push(path);\n }\n\n return tokens\n}\n\n/**\n * Compile a string to a template function for the path.\n *\n * @param {string} str\n * @param {Object=} options\n * @return {!function(Object=, Object=)}\n */\nfunction compile (str, options) {\n return tokensToFunction(parse(str, options), options)\n}\n\n/**\n * Prettier encoding of URI path segments.\n *\n * @param {string}\n * @return {string}\n */\nfunction encodeURIComponentPretty (str) {\n return encodeURI(str).replace(/[\\/?#]/g, function (c) {\n return '%' + c.charCodeAt(0).toString(16).toUpperCase()\n })\n}\n\n/**\n * Encode the asterisk parameter. Similar to `pretty`, but allows slashes.\n *\n * @param {string}\n * @return {string}\n */\nfunction encodeAsterisk (str) {\n return encodeURI(str).replace(/[?#]/g, function (c) {\n return '%' + c.charCodeAt(0).toString(16).toUpperCase()\n })\n}\n\n/**\n * Expose a method for transforming tokens into the path function.\n */\nfunction tokensToFunction (tokens, options) {\n // Compile all the tokens into regexps.\n var matches = new Array(tokens.length);\n\n // Compile all the patterns before compilation.\n for (var i = 0; i < tokens.length; i++) {\n if (typeof tokens[i] === 'object') {\n matches[i] = new RegExp('^(?:' + tokens[i].pattern + ')$', flags(options));\n }\n }\n\n return function (obj, opts) {\n var path = '';\n var data = obj || {};\n var options = opts || {};\n var encode = options.pretty ? encodeURIComponentPretty : encodeURIComponent;\n\n for (var i = 0; i < tokens.length; i++) {\n var token = tokens[i];\n\n if (typeof token === 'string') {\n path += token;\n\n continue\n }\n\n var value = data[token.name];\n var segment;\n\n if (value == null) {\n if (token.optional) {\n // Prepend partial segment prefixes.\n if (token.partial) {\n path += token.prefix;\n }\n\n continue\n } else {\n throw new TypeError('Expected \"' + token.name + '\" to be defined')\n }\n }\n\n if (isarray(value)) {\n if (!token.repeat) {\n throw new TypeError('Expected \"' + token.name + '\" to not repeat, but received `' + JSON.stringify(value) + '`')\n }\n\n if (value.length === 0) {\n if (token.optional) {\n continue\n } else {\n throw new TypeError('Expected \"' + token.name + '\" to not be empty')\n }\n }\n\n for (var j = 0; j < value.length; j++) {\n segment = encode(value[j]);\n\n if (!matches[i].test(segment)) {\n throw new TypeError('Expected all \"' + token.name + '\" to match \"' + token.pattern + '\", but received `' + JSON.stringify(segment) + '`')\n }\n\n path += (j === 0 ? token.prefix : token.delimiter) + segment;\n }\n\n continue\n }\n\n segment = token.asterisk ? encodeAsterisk(value) : encode(value);\n\n if (!matches[i].test(segment)) {\n throw new TypeError('Expected \"' + token.name + '\" to match \"' + token.pattern + '\", but received \"' + segment + '\"')\n }\n\n path += token.prefix + segment;\n }\n\n return path\n }\n}\n\n/**\n * Escape a regular expression string.\n *\n * @param {string} str\n * @return {string}\n */\nfunction escapeString (str) {\n return str.replace(/([.+*?=^!:${}()[\\]|\\/\\\\])/g, '\\\\$1')\n}\n\n/**\n * Escape the capturing group by escaping special characters and meaning.\n *\n * @param {string} group\n * @return {string}\n */\nfunction escapeGroup (group) {\n return group.replace(/([=!:$\\/()])/g, '\\\\$1')\n}\n\n/**\n * Attach the keys as a property of the regexp.\n *\n * @param {!RegExp} re\n * @param {Array} keys\n * @return {!RegExp}\n */\nfunction attachKeys (re, keys) {\n re.keys = keys;\n return re\n}\n\n/**\n * Get the flags for a regexp from the options.\n *\n * @param {Object} options\n * @return {string}\n */\nfunction flags (options) {\n return options && options.sensitive ? '' : 'i'\n}\n\n/**\n * Pull out keys from a regexp.\n *\n * @param {!RegExp} path\n * @param {!Array} keys\n * @return {!RegExp}\n */\nfunction regexpToRegexp (path, keys) {\n // Use a negative lookahead to match only capturing groups.\n var groups = path.source.match(/\\((?!\\?)/g);\n\n if (groups) {\n for (var i = 0; i < groups.length; i++) {\n keys.push({\n name: i,\n prefix: null,\n delimiter: null,\n optional: false,\n repeat: false,\n partial: false,\n asterisk: false,\n pattern: null\n });\n }\n }\n\n return attachKeys(path, keys)\n}\n\n/**\n * Transform an array into a regexp.\n *\n * @param {!Array} path\n * @param {Array} keys\n * @param {!Object} options\n * @return {!RegExp}\n */\nfunction arrayToRegexp (path, keys, options) {\n var parts = [];\n\n for (var i = 0; i < path.length; i++) {\n parts.push(pathToRegexp(path[i], keys, options).source);\n }\n\n var regexp = new RegExp('(?:' + parts.join('|') + ')', flags(options));\n\n return attachKeys(regexp, keys)\n}\n\n/**\n * Create a path regexp from string input.\n *\n * @param {string} path\n * @param {!Array} keys\n * @param {!Object} options\n * @return {!RegExp}\n */\nfunction stringToRegexp (path, keys, options) {\n return tokensToRegExp(parse(path, options), keys, options)\n}\n\n/**\n * Expose a function for taking tokens and returning a RegExp.\n *\n * @param {!Array} tokens\n * @param {(Array|Object)=} keys\n * @param {Object=} options\n * @return {!RegExp}\n */\nfunction tokensToRegExp (tokens, keys, options) {\n if (!isarray(keys)) {\n options = /** @type {!Object} */ (keys || options);\n keys = [];\n }\n\n options = options || {};\n\n var strict = options.strict;\n var end = options.end !== false;\n var route = '';\n\n // Iterate over the tokens and create our regexp string.\n for (var i = 0; i < tokens.length; i++) {\n var token = tokens[i];\n\n if (typeof token === 'string') {\n route += escapeString(token);\n } else {\n var prefix = escapeString(token.prefix);\n var capture = '(?:' + token.pattern + ')';\n\n keys.push(token);\n\n if (token.repeat) {\n capture += '(?:' + prefix + capture + ')*';\n }\n\n if (token.optional) {\n if (!token.partial) {\n capture = '(?:' + prefix + '(' + capture + '))?';\n } else {\n capture = prefix + '(' + capture + ')?';\n }\n } else {\n capture = prefix + '(' + capture + ')';\n }\n\n route += capture;\n }\n }\n\n var delimiter = escapeString(options.delimiter || '/');\n var endsWithDelimiter = route.slice(-delimiter.length) === delimiter;\n\n // In non-strict mode we allow a slash at the end of match. If the path to\n // match already ends with a slash, we remove it for consistency. The slash\n // is valid at the end of a path match, not in the middle. This is important\n // in non-ending mode, where \"/test/\" shouldn't match \"/test//route\".\n if (!strict) {\n route = (endsWithDelimiter ? route.slice(0, -delimiter.length) : route) + '(?:' + delimiter + '(?=$))?';\n }\n\n if (end) {\n route += '$';\n } else {\n // In non-ending mode, we need the capturing groups to match as much as\n // possible by using a positive lookahead to the end or next path segment.\n route += strict && endsWithDelimiter ? '' : '(?=' + delimiter + '|$)';\n }\n\n return attachKeys(new RegExp('^' + route, flags(options)), keys)\n}\n\n/**\n * Normalize the given path string, returning a regular expression.\n *\n * An empty array can be passed in for the keys, which will hold the\n * placeholder key descriptions. For example, using `/user/:id`, `keys` will\n * contain `[{ name: 'id', delimiter: '/', optional: false, repeat: false }]`.\n *\n * @param {(string|RegExp|Array)} path\n * @param {(Array|Object)=} keys\n * @param {Object=} options\n * @return {!RegExp}\n */\nfunction pathToRegexp (path, keys, options) {\n if (!isarray(keys)) {\n options = /** @type {!Object} */ (keys || options);\n keys = [];\n }\n\n options = options || {};\n\n if (path instanceof RegExp) {\n return regexpToRegexp(path, /** @type {!Array} */ (keys))\n }\n\n if (isarray(path)) {\n return arrayToRegexp(/** @type {!Array} */ (path), /** @type {!Array} */ (keys), options)\n }\n\n return stringToRegexp(/** @type {string} */ (path), /** @type {!Array} */ (keys), options)\n}\npathToRegexp_1.parse = parse_1;\npathToRegexp_1.compile = compile_1;\npathToRegexp_1.tokensToFunction = tokensToFunction_1;\npathToRegexp_1.tokensToRegExp = tokensToRegExp_1;\n\n/* */\n\n// $flow-disable-line\nvar regexpCompileCache = Object.create(null);\n\nfunction fillParams (\n path,\n params,\n routeMsg\n) {\n params = params || {};\n try {\n var filler =\n regexpCompileCache[path] ||\n (regexpCompileCache[path] = pathToRegexp_1.compile(path));\n\n // Fix #2505 resolving asterisk routes { name: 'not-found', params: { pathMatch: '/not-found' }}\n // and fix #3106 so that you can work with location descriptor object having params.pathMatch equal to empty string\n if (typeof params.pathMatch === 'string') { params[0] = params.pathMatch; }\n\n return filler(params, { pretty: true })\n } catch (e) {\n if (process.env.NODE_ENV !== 'production') {\n // Fix #3072 no warn if `pathMatch` is string\n warn(typeof params.pathMatch === 'string', (\"missing param for \" + routeMsg + \": \" + (e.message)));\n }\n return ''\n } finally {\n // delete the 0 if it was added\n delete params[0];\n }\n}\n\n/* */\n\nfunction normalizeLocation (\n raw,\n current,\n append,\n router\n) {\n var next = typeof raw === 'string' ? { path: raw } : raw;\n // named target\n if (next._normalized) {\n return next\n } else if (next.name) {\n next = extend({}, raw);\n var params = next.params;\n if (params && typeof params === 'object') {\n next.params = extend({}, params);\n }\n return next\n }\n\n // relative params\n if (!next.path && next.params && current) {\n next = extend({}, next);\n next._normalized = true;\n var params$1 = extend(extend({}, current.params), next.params);\n if (current.name) {\n next.name = current.name;\n next.params = params$1;\n } else if (current.matched.length) {\n var rawPath = current.matched[current.matched.length - 1].path;\n next.path = fillParams(rawPath, params$1, (\"path \" + (current.path)));\n } else if (process.env.NODE_ENV !== 'production') {\n warn(false, \"relative params navigation requires a current route.\");\n }\n return next\n }\n\n var parsedPath = parsePath(next.path || '');\n var basePath = (current && current.path) || '/';\n var path = parsedPath.path\n ? resolvePath(parsedPath.path, basePath, append || next.append)\n : basePath;\n\n var query = resolveQuery(\n parsedPath.query,\n next.query,\n router && router.options.parseQuery\n );\n\n var hash = next.hash || parsedPath.hash;\n if (hash && hash.charAt(0) !== '#') {\n hash = \"#\" + hash;\n }\n\n return {\n _normalized: true,\n path: path,\n query: query,\n hash: hash\n }\n}\n\n/* */\n\n// work around weird flow bug\nvar toTypes = [String, Object];\nvar eventTypes = [String, Array];\n\nvar noop = function () {};\n\nvar warnedCustomSlot;\nvar warnedTagProp;\nvar warnedEventProp;\n\nvar Link = {\n name: 'RouterLink',\n props: {\n to: {\n type: toTypes,\n required: true\n },\n tag: {\n type: String,\n default: 'a'\n },\n custom: Boolean,\n exact: Boolean,\n exactPath: Boolean,\n append: Boolean,\n replace: Boolean,\n activeClass: String,\n exactActiveClass: String,\n ariaCurrentValue: {\n type: String,\n default: 'page'\n },\n event: {\n type: eventTypes,\n default: 'click'\n }\n },\n render: function render (h) {\n var this$1$1 = this;\n\n var router = this.$router;\n var current = this.$route;\n var ref = router.resolve(\n this.to,\n current,\n this.append\n );\n var location = ref.location;\n var route = ref.route;\n var href = ref.href;\n\n var classes = {};\n var globalActiveClass = router.options.linkActiveClass;\n var globalExactActiveClass = router.options.linkExactActiveClass;\n // Support global empty active class\n var activeClassFallback =\n globalActiveClass == null ? 'router-link-active' : globalActiveClass;\n var exactActiveClassFallback =\n globalExactActiveClass == null\n ? 'router-link-exact-active'\n : globalExactActiveClass;\n var activeClass =\n this.activeClass == null ? activeClassFallback : this.activeClass;\n var exactActiveClass =\n this.exactActiveClass == null\n ? exactActiveClassFallback\n : this.exactActiveClass;\n\n var compareTarget = route.redirectedFrom\n ? createRoute(null, normalizeLocation(route.redirectedFrom), null, router)\n : route;\n\n classes[exactActiveClass] = isSameRoute(current, compareTarget, this.exactPath);\n classes[activeClass] = this.exact || this.exactPath\n ? classes[exactActiveClass]\n : isIncludedRoute(current, compareTarget);\n\n var ariaCurrentValue = classes[exactActiveClass] ? this.ariaCurrentValue : null;\n\n var handler = function (e) {\n if (guardEvent(e)) {\n if (this$1$1.replace) {\n router.replace(location, noop);\n } else {\n router.push(location, noop);\n }\n }\n };\n\n var on = { click: guardEvent };\n if (Array.isArray(this.event)) {\n this.event.forEach(function (e) {\n on[e] = handler;\n });\n } else {\n on[this.event] = handler;\n }\n\n var data = { class: classes };\n\n var scopedSlot =\n !this.$scopedSlots.$hasNormal &&\n this.$scopedSlots.default &&\n this.$scopedSlots.default({\n href: href,\n route: route,\n navigate: handler,\n isActive: classes[activeClass],\n isExactActive: classes[exactActiveClass]\n });\n\n if (scopedSlot) {\n if (process.env.NODE_ENV !== 'production' && !this.custom) {\n !warnedCustomSlot && warn(false, 'In Vue Router 4, the v-slot API will by default wrap its content with an element. Use the custom prop to remove this warning:\\n\\n');\n warnedCustomSlot = true;\n }\n if (scopedSlot.length === 1) {\n return scopedSlot[0]\n } else if (scopedSlot.length > 1 || !scopedSlot.length) {\n if (process.env.NODE_ENV !== 'production') {\n warn(\n false,\n (\" with to=\\\"\" + (this.to) + \"\\\" is trying to use a scoped slot but it didn't provide exactly one child. Wrapping the content with a span element.\")\n );\n }\n return scopedSlot.length === 0 ? h() : h('span', {}, scopedSlot)\n }\n }\n\n if (process.env.NODE_ENV !== 'production') {\n if ('tag' in this.$options.propsData && !warnedTagProp) {\n warn(\n false,\n \"'s tag prop is deprecated and has been removed in Vue Router 4. Use the v-slot API to remove this warning: https://next.router.vuejs.org/guide/migration/#removal-of-event-and-tag-props-in-router-link.\"\n );\n warnedTagProp = true;\n }\n if ('event' in this.$options.propsData && !warnedEventProp) {\n warn(\n false,\n \"'s event prop is deprecated and has been removed in Vue Router 4. Use the v-slot API to remove this warning: https://next.router.vuejs.org/guide/migration/#removal-of-event-and-tag-props-in-router-link.\"\n );\n warnedEventProp = true;\n }\n }\n\n if (this.tag === 'a') {\n data.on = on;\n data.attrs = { href: href, 'aria-current': ariaCurrentValue };\n } else {\n // find the first child and apply listener and href\n var a = findAnchor(this.$slots.default);\n if (a) {\n // in case the is a static node\n a.isStatic = false;\n var aData = (a.data = extend({}, a.data));\n aData.on = aData.on || {};\n // transform existing events in both objects into arrays so we can push later\n for (var event in aData.on) {\n var handler$1 = aData.on[event];\n if (event in on) {\n aData.on[event] = Array.isArray(handler$1) ? handler$1 : [handler$1];\n }\n }\n // append new listeners for router-link\n for (var event$1 in on) {\n if (event$1 in aData.on) {\n // on[event] is always a function\n aData.on[event$1].push(on[event$1]);\n } else {\n aData.on[event$1] = handler;\n }\n }\n\n var aAttrs = (a.data.attrs = extend({}, a.data.attrs));\n aAttrs.href = href;\n aAttrs['aria-current'] = ariaCurrentValue;\n } else {\n // doesn't have child, apply listener to self\n data.on = on;\n }\n }\n\n return h(this.tag, data, this.$slots.default)\n }\n};\n\nfunction guardEvent (e) {\n // don't redirect with control keys\n if (e.metaKey || e.altKey || e.ctrlKey || e.shiftKey) { return }\n // don't redirect when preventDefault called\n if (e.defaultPrevented) { return }\n // don't redirect on right click\n if (e.button !== undefined && e.button !== 0) { return }\n // don't redirect if `target=\"_blank\"`\n if (e.currentTarget && e.currentTarget.getAttribute) {\n var target = e.currentTarget.getAttribute('target');\n if (/\\b_blank\\b/i.test(target)) { return }\n }\n // this may be a Weex event which doesn't have this method\n if (e.preventDefault) {\n e.preventDefault();\n }\n return true\n}\n\nfunction findAnchor (children) {\n if (children) {\n var child;\n for (var i = 0; i < children.length; i++) {\n child = children[i];\n if (child.tag === 'a') {\n return child\n }\n if (child.children && (child = findAnchor(child.children))) {\n return child\n }\n }\n }\n}\n\nvar _Vue;\n\nfunction install (Vue) {\n if (install.installed && _Vue === Vue) { return }\n install.installed = true;\n\n _Vue = Vue;\n\n var isDef = function (v) { return v !== undefined; };\n\n var registerInstance = function (vm, callVal) {\n var i = vm.$options._parentVnode;\n if (isDef(i) && isDef(i = i.data) && isDef(i = i.registerRouteInstance)) {\n i(vm, callVal);\n }\n };\n\n Vue.mixin({\n beforeCreate: function beforeCreate () {\n if (isDef(this.$options.router)) {\n this._routerRoot = this;\n this._router = this.$options.router;\n this._router.init(this);\n Vue.util.defineReactive(this, '_route', this._router.history.current);\n } else {\n this._routerRoot = (this.$parent && this.$parent._routerRoot) || this;\n }\n registerInstance(this, this);\n },\n destroyed: function destroyed () {\n registerInstance(this);\n }\n });\n\n Object.defineProperty(Vue.prototype, '$router', {\n get: function get () { return this._routerRoot._router }\n });\n\n Object.defineProperty(Vue.prototype, '$route', {\n get: function get () { return this._routerRoot._route }\n });\n\n Vue.component('RouterView', View);\n Vue.component('RouterLink', Link);\n\n var strats = Vue.config.optionMergeStrategies;\n // use the same hook merging strategy for route hooks\n strats.beforeRouteEnter = strats.beforeRouteLeave = strats.beforeRouteUpdate = strats.created;\n}\n\n/* */\n\nvar inBrowser = typeof window !== 'undefined';\n\n/* */\n\nfunction createRouteMap (\n routes,\n oldPathList,\n oldPathMap,\n oldNameMap,\n parentRoute\n) {\n // the path list is used to control path matching priority\n var pathList = oldPathList || [];\n // $flow-disable-line\n var pathMap = oldPathMap || Object.create(null);\n // $flow-disable-line\n var nameMap = oldNameMap || Object.create(null);\n\n routes.forEach(function (route) {\n addRouteRecord(pathList, pathMap, nameMap, route, parentRoute);\n });\n\n // ensure wildcard routes are always at the end\n for (var i = 0, l = pathList.length; i < l; i++) {\n if (pathList[i] === '*') {\n pathList.push(pathList.splice(i, 1)[0]);\n l--;\n i--;\n }\n }\n\n if (process.env.NODE_ENV === 'development') {\n // warn if routes do not include leading slashes\n var found = pathList\n // check for missing leading slash\n .filter(function (path) { return path && path.charAt(0) !== '*' && path.charAt(0) !== '/'; });\n\n if (found.length > 0) {\n var pathNames = found.map(function (path) { return (\"- \" + path); }).join('\\n');\n warn(false, (\"Non-nested routes must include a leading slash character. Fix the following routes: \\n\" + pathNames));\n }\n }\n\n return {\n pathList: pathList,\n pathMap: pathMap,\n nameMap: nameMap\n }\n}\n\nfunction addRouteRecord (\n pathList,\n pathMap,\n nameMap,\n route,\n parent,\n matchAs\n) {\n var path = route.path;\n var name = route.name;\n if (process.env.NODE_ENV !== 'production') {\n assert(path != null, \"\\\"path\\\" is required in a route configuration.\");\n assert(\n typeof route.component !== 'string',\n \"route config \\\"component\\\" for path: \" + (String(\n path || name\n )) + \" cannot be a \" + \"string id. Use an actual component instead.\"\n );\n\n warn(\n // eslint-disable-next-line no-control-regex\n !/[^\\u0000-\\u007F]+/.test(path),\n \"Route with path \\\"\" + path + \"\\\" contains unencoded characters, make sure \" +\n \"your path is correctly encoded before passing it to the router. Use \" +\n \"encodeURI to encode static segments of your path.\"\n );\n }\n\n var pathToRegexpOptions =\n route.pathToRegexpOptions || {};\n var normalizedPath = normalizePath(path, parent, pathToRegexpOptions.strict);\n\n if (typeof route.caseSensitive === 'boolean') {\n pathToRegexpOptions.sensitive = route.caseSensitive;\n }\n\n var record = {\n path: normalizedPath,\n regex: compileRouteRegex(normalizedPath, pathToRegexpOptions),\n components: route.components || { default: route.component },\n alias: route.alias\n ? typeof route.alias === 'string'\n ? [route.alias]\n : route.alias\n : [],\n instances: {},\n enteredCbs: {},\n name: name,\n parent: parent,\n matchAs: matchAs,\n redirect: route.redirect,\n beforeEnter: route.beforeEnter,\n meta: route.meta || {},\n props:\n route.props == null\n ? {}\n : route.components\n ? route.props\n : { default: route.props }\n };\n\n if (route.children) {\n // Warn if route is named, does not redirect and has a default child route.\n // If users navigate to this route by name, the default child will\n // not be rendered (GH Issue #629)\n if (process.env.NODE_ENV !== 'production') {\n if (\n route.name &&\n !route.redirect &&\n route.children.some(function (child) { return /^\\/?$/.test(child.path); })\n ) {\n warn(\n false,\n \"Named Route '\" + (route.name) + \"' has a default child route. \" +\n \"When navigating to this named route (:to=\\\"{name: '\" + (route.name) + \"'}\\\"), \" +\n \"the default child route will not be rendered. Remove the name from \" +\n \"this route and use the name of the default child route for named \" +\n \"links instead.\"\n );\n }\n }\n route.children.forEach(function (child) {\n var childMatchAs = matchAs\n ? cleanPath((matchAs + \"/\" + (child.path)))\n : undefined;\n addRouteRecord(pathList, pathMap, nameMap, child, record, childMatchAs);\n });\n }\n\n if (!pathMap[record.path]) {\n pathList.push(record.path);\n pathMap[record.path] = record;\n }\n\n if (route.alias !== undefined) {\n var aliases = Array.isArray(route.alias) ? route.alias : [route.alias];\n for (var i = 0; i < aliases.length; ++i) {\n var alias = aliases[i];\n if (process.env.NODE_ENV !== 'production' && alias === path) {\n warn(\n false,\n (\"Found an alias with the same value as the path: \\\"\" + path + \"\\\". You have to remove that alias. It will be ignored in development.\")\n );\n // skip in dev to make it work\n continue\n }\n\n var aliasRoute = {\n path: alias,\n children: route.children\n };\n addRouteRecord(\n pathList,\n pathMap,\n nameMap,\n aliasRoute,\n parent,\n record.path || '/' // matchAs\n );\n }\n }\n\n if (name) {\n if (!nameMap[name]) {\n nameMap[name] = record;\n } else if (process.env.NODE_ENV !== 'production' && !matchAs) {\n warn(\n false,\n \"Duplicate named routes definition: \" +\n \"{ name: \\\"\" + name + \"\\\", path: \\\"\" + (record.path) + \"\\\" }\"\n );\n }\n }\n}\n\nfunction compileRouteRegex (\n path,\n pathToRegexpOptions\n) {\n var regex = pathToRegexp_1(path, [], pathToRegexpOptions);\n if (process.env.NODE_ENV !== 'production') {\n var keys = Object.create(null);\n regex.keys.forEach(function (key) {\n warn(\n !keys[key.name],\n (\"Duplicate param keys in route with path: \\\"\" + path + \"\\\"\")\n );\n keys[key.name] = true;\n });\n }\n return regex\n}\n\nfunction normalizePath (\n path,\n parent,\n strict\n) {\n if (!strict) { path = path.replace(/\\/$/, ''); }\n if (path[0] === '/') { return path }\n if (parent == null) { return path }\n return cleanPath(((parent.path) + \"/\" + path))\n}\n\n/* */\n\n\n\nfunction createMatcher (\n routes,\n router\n) {\n var ref = createRouteMap(routes);\n var pathList = ref.pathList;\n var pathMap = ref.pathMap;\n var nameMap = ref.nameMap;\n\n function addRoutes (routes) {\n createRouteMap(routes, pathList, pathMap, nameMap);\n }\n\n function addRoute (parentOrRoute, route) {\n var parent = (typeof parentOrRoute !== 'object') ? nameMap[parentOrRoute] : undefined;\n // $flow-disable-line\n createRouteMap([route || parentOrRoute], pathList, pathMap, nameMap, parent);\n\n // add aliases of parent\n if (parent && parent.alias.length) {\n createRouteMap(\n // $flow-disable-line route is defined if parent is\n parent.alias.map(function (alias) { return ({ path: alias, children: [route] }); }),\n pathList,\n pathMap,\n nameMap,\n parent\n );\n }\n }\n\n function getRoutes () {\n return pathList.map(function (path) { return pathMap[path]; })\n }\n\n function match (\n raw,\n currentRoute,\n redirectedFrom\n ) {\n var location = normalizeLocation(raw, currentRoute, false, router);\n var name = location.name;\n\n if (name) {\n var record = nameMap[name];\n if (process.env.NODE_ENV !== 'production') {\n warn(record, (\"Route with name '\" + name + \"' does not exist\"));\n }\n if (!record) { return _createRoute(null, location) }\n var paramNames = record.regex.keys\n .filter(function (key) { return !key.optional; })\n .map(function (key) { return key.name; });\n\n if (typeof location.params !== 'object') {\n location.params = {};\n }\n\n if (currentRoute && typeof currentRoute.params === 'object') {\n for (var key in currentRoute.params) {\n if (!(key in location.params) && paramNames.indexOf(key) > -1) {\n location.params[key] = currentRoute.params[key];\n }\n }\n }\n\n location.path = fillParams(record.path, location.params, (\"named route \\\"\" + name + \"\\\"\"));\n return _createRoute(record, location, redirectedFrom)\n } else if (location.path) {\n location.params = {};\n for (var i = 0; i < pathList.length; i++) {\n var path = pathList[i];\n var record$1 = pathMap[path];\n if (matchRoute(record$1.regex, location.path, location.params)) {\n return _createRoute(record$1, location, redirectedFrom)\n }\n }\n }\n // no match\n return _createRoute(null, location)\n }\n\n function redirect (\n record,\n location\n ) {\n var originalRedirect = record.redirect;\n var redirect = typeof originalRedirect === 'function'\n ? originalRedirect(createRoute(record, location, null, router))\n : originalRedirect;\n\n if (typeof redirect === 'string') {\n redirect = { path: redirect };\n }\n\n if (!redirect || typeof redirect !== 'object') {\n if (process.env.NODE_ENV !== 'production') {\n warn(\n false, (\"invalid redirect option: \" + (JSON.stringify(redirect)))\n );\n }\n return _createRoute(null, location)\n }\n\n var re = redirect;\n var name = re.name;\n var path = re.path;\n var query = location.query;\n var hash = location.hash;\n var params = location.params;\n query = re.hasOwnProperty('query') ? re.query : query;\n hash = re.hasOwnProperty('hash') ? re.hash : hash;\n params = re.hasOwnProperty('params') ? re.params : params;\n\n if (name) {\n // resolved named direct\n var targetRecord = nameMap[name];\n if (process.env.NODE_ENV !== 'production') {\n assert(targetRecord, (\"redirect failed: named route \\\"\" + name + \"\\\" not found.\"));\n }\n return match({\n _normalized: true,\n name: name,\n query: query,\n hash: hash,\n params: params\n }, undefined, location)\n } else if (path) {\n // 1. resolve relative redirect\n var rawPath = resolveRecordPath(path, record);\n // 2. resolve params\n var resolvedPath = fillParams(rawPath, params, (\"redirect route with path \\\"\" + rawPath + \"\\\"\"));\n // 3. rematch with existing query and hash\n return match({\n _normalized: true,\n path: resolvedPath,\n query: query,\n hash: hash\n }, undefined, location)\n } else {\n if (process.env.NODE_ENV !== 'production') {\n warn(false, (\"invalid redirect option: \" + (JSON.stringify(redirect))));\n }\n return _createRoute(null, location)\n }\n }\n\n function alias (\n record,\n location,\n matchAs\n ) {\n var aliasedPath = fillParams(matchAs, location.params, (\"aliased route with path \\\"\" + matchAs + \"\\\"\"));\n var aliasedMatch = match({\n _normalized: true,\n path: aliasedPath\n });\n if (aliasedMatch) {\n var matched = aliasedMatch.matched;\n var aliasedRecord = matched[matched.length - 1];\n location.params = aliasedMatch.params;\n return _createRoute(aliasedRecord, location)\n }\n return _createRoute(null, location)\n }\n\n function _createRoute (\n record,\n location,\n redirectedFrom\n ) {\n if (record && record.redirect) {\n return redirect(record, redirectedFrom || location)\n }\n if (record && record.matchAs) {\n return alias(record, location, record.matchAs)\n }\n return createRoute(record, location, redirectedFrom, router)\n }\n\n return {\n match: match,\n addRoute: addRoute,\n getRoutes: getRoutes,\n addRoutes: addRoutes\n }\n}\n\nfunction matchRoute (\n regex,\n path,\n params\n) {\n var m = path.match(regex);\n\n if (!m) {\n return false\n } else if (!params) {\n return true\n }\n\n for (var i = 1, len = m.length; i < len; ++i) {\n var key = regex.keys[i - 1];\n if (key) {\n // Fix #1994: using * with props: true generates a param named 0\n params[key.name || 'pathMatch'] = typeof m[i] === 'string' ? decode(m[i]) : m[i];\n }\n }\n\n return true\n}\n\nfunction resolveRecordPath (path, record) {\n return resolvePath(path, record.parent ? record.parent.path : '/', true)\n}\n\n/* */\n\n// use User Timing api (if present) for more accurate key precision\nvar Time =\n inBrowser && window.performance && window.performance.now\n ? window.performance\n : Date;\n\nfunction genStateKey () {\n return Time.now().toFixed(3)\n}\n\nvar _key = genStateKey();\n\nfunction getStateKey () {\n return _key\n}\n\nfunction setStateKey (key) {\n return (_key = key)\n}\n\n/* */\n\nvar positionStore = Object.create(null);\n\nfunction setupScroll () {\n // Prevent browser scroll behavior on History popstate\n if ('scrollRestoration' in window.history) {\n window.history.scrollRestoration = 'manual';\n }\n // Fix for #1585 for Firefox\n // Fix for #2195 Add optional third attribute to workaround a bug in safari https://bugs.webkit.org/show_bug.cgi?id=182678\n // Fix for #2774 Support for apps loaded from Windows file shares not mapped to network drives: replaced location.origin with\n // window.location.protocol + '//' + window.location.host\n // location.host contains the port and location.hostname doesn't\n var protocolAndPath = window.location.protocol + '//' + window.location.host;\n var absolutePath = window.location.href.replace(protocolAndPath, '');\n // preserve existing history state as it could be overriden by the user\n var stateCopy = extend({}, window.history.state);\n stateCopy.key = getStateKey();\n window.history.replaceState(stateCopy, '', absolutePath);\n window.addEventListener('popstate', handlePopState);\n return function () {\n window.removeEventListener('popstate', handlePopState);\n }\n}\n\nfunction handleScroll (\n router,\n to,\n from,\n isPop\n) {\n if (!router.app) {\n return\n }\n\n var behavior = router.options.scrollBehavior;\n if (!behavior) {\n return\n }\n\n if (process.env.NODE_ENV !== 'production') {\n assert(typeof behavior === 'function', \"scrollBehavior must be a function\");\n }\n\n // wait until re-render finishes before scrolling\n router.app.$nextTick(function () {\n var position = getScrollPosition();\n var shouldScroll = behavior.call(\n router,\n to,\n from,\n isPop ? position : null\n );\n\n if (!shouldScroll) {\n return\n }\n\n if (typeof shouldScroll.then === 'function') {\n shouldScroll\n .then(function (shouldScroll) {\n scrollToPosition((shouldScroll), position);\n })\n .catch(function (err) {\n if (process.env.NODE_ENV !== 'production') {\n assert(false, err.toString());\n }\n });\n } else {\n scrollToPosition(shouldScroll, position);\n }\n });\n}\n\nfunction saveScrollPosition () {\n var key = getStateKey();\n if (key) {\n positionStore[key] = {\n x: window.pageXOffset,\n y: window.pageYOffset\n };\n }\n}\n\nfunction handlePopState (e) {\n saveScrollPosition();\n if (e.state && e.state.key) {\n setStateKey(e.state.key);\n }\n}\n\nfunction getScrollPosition () {\n var key = getStateKey();\n if (key) {\n return positionStore[key]\n }\n}\n\nfunction getElementPosition (el, offset) {\n var docEl = document.documentElement;\n var docRect = docEl.getBoundingClientRect();\n var elRect = el.getBoundingClientRect();\n return {\n x: elRect.left - docRect.left - offset.x,\n y: elRect.top - docRect.top - offset.y\n }\n}\n\nfunction isValidPosition (obj) {\n return isNumber(obj.x) || isNumber(obj.y)\n}\n\nfunction normalizePosition (obj) {\n return {\n x: isNumber(obj.x) ? obj.x : window.pageXOffset,\n y: isNumber(obj.y) ? obj.y : window.pageYOffset\n }\n}\n\nfunction normalizeOffset (obj) {\n return {\n x: isNumber(obj.x) ? obj.x : 0,\n y: isNumber(obj.y) ? obj.y : 0\n }\n}\n\nfunction isNumber (v) {\n return typeof v === 'number'\n}\n\nvar hashStartsWithNumberRE = /^#\\d/;\n\nfunction scrollToPosition (shouldScroll, position) {\n var isObject = typeof shouldScroll === 'object';\n if (isObject && typeof shouldScroll.selector === 'string') {\n // getElementById would still fail if the selector contains a more complicated query like #main[data-attr]\n // but at the same time, it doesn't make much sense to select an element with an id and an extra selector\n var el = hashStartsWithNumberRE.test(shouldScroll.selector) // $flow-disable-line\n ? document.getElementById(shouldScroll.selector.slice(1)) // $flow-disable-line\n : document.querySelector(shouldScroll.selector);\n\n if (el) {\n var offset =\n shouldScroll.offset && typeof shouldScroll.offset === 'object'\n ? shouldScroll.offset\n : {};\n offset = normalizeOffset(offset);\n position = getElementPosition(el, offset);\n } else if (isValidPosition(shouldScroll)) {\n position = normalizePosition(shouldScroll);\n }\n } else if (isObject && isValidPosition(shouldScroll)) {\n position = normalizePosition(shouldScroll);\n }\n\n if (position) {\n // $flow-disable-line\n if ('scrollBehavior' in document.documentElement.style) {\n window.scrollTo({\n left: position.x,\n top: position.y,\n // $flow-disable-line\n behavior: shouldScroll.behavior\n });\n } else {\n window.scrollTo(position.x, position.y);\n }\n }\n}\n\n/* */\n\nvar supportsPushState =\n inBrowser &&\n (function () {\n var ua = window.navigator.userAgent;\n\n if (\n (ua.indexOf('Android 2.') !== -1 || ua.indexOf('Android 4.0') !== -1) &&\n ua.indexOf('Mobile Safari') !== -1 &&\n ua.indexOf('Chrome') === -1 &&\n ua.indexOf('Windows Phone') === -1\n ) {\n return false\n }\n\n return window.history && typeof window.history.pushState === 'function'\n })();\n\nfunction pushState (url, replace) {\n saveScrollPosition();\n // try...catch the pushState call to get around Safari\n // DOM Exception 18 where it limits to 100 pushState calls\n var history = window.history;\n try {\n if (replace) {\n // preserve existing history state as it could be overriden by the user\n var stateCopy = extend({}, history.state);\n stateCopy.key = getStateKey();\n history.replaceState(stateCopy, '', url);\n } else {\n history.pushState({ key: setStateKey(genStateKey()) }, '', url);\n }\n } catch (e) {\n window.location[replace ? 'replace' : 'assign'](url);\n }\n}\n\nfunction replaceState (url) {\n pushState(url, true);\n}\n\n// When changing thing, also edit router.d.ts\nvar NavigationFailureType = {\n redirected: 2,\n aborted: 4,\n cancelled: 8,\n duplicated: 16\n};\n\nfunction createNavigationRedirectedError (from, to) {\n return createRouterError(\n from,\n to,\n NavigationFailureType.redirected,\n (\"Redirected when going from \\\"\" + (from.fullPath) + \"\\\" to \\\"\" + (stringifyRoute(\n to\n )) + \"\\\" via a navigation guard.\")\n )\n}\n\nfunction createNavigationDuplicatedError (from, to) {\n var error = createRouterError(\n from,\n to,\n NavigationFailureType.duplicated,\n (\"Avoided redundant navigation to current location: \\\"\" + (from.fullPath) + \"\\\".\")\n );\n // backwards compatible with the first introduction of Errors\n error.name = 'NavigationDuplicated';\n return error\n}\n\nfunction createNavigationCancelledError (from, to) {\n return createRouterError(\n from,\n to,\n NavigationFailureType.cancelled,\n (\"Navigation cancelled from \\\"\" + (from.fullPath) + \"\\\" to \\\"\" + (to.fullPath) + \"\\\" with a new navigation.\")\n )\n}\n\nfunction createNavigationAbortedError (from, to) {\n return createRouterError(\n from,\n to,\n NavigationFailureType.aborted,\n (\"Navigation aborted from \\\"\" + (from.fullPath) + \"\\\" to \\\"\" + (to.fullPath) + \"\\\" via a navigation guard.\")\n )\n}\n\nfunction createRouterError (from, to, type, message) {\n var error = new Error(message);\n error._isRouter = true;\n error.from = from;\n error.to = to;\n error.type = type;\n\n return error\n}\n\nvar propertiesToLog = ['params', 'query', 'hash'];\n\nfunction stringifyRoute (to) {\n if (typeof to === 'string') { return to }\n if ('path' in to) { return to.path }\n var location = {};\n propertiesToLog.forEach(function (key) {\n if (key in to) { location[key] = to[key]; }\n });\n return JSON.stringify(location, null, 2)\n}\n\nfunction isError (err) {\n return Object.prototype.toString.call(err).indexOf('Error') > -1\n}\n\nfunction isNavigationFailure (err, errorType) {\n return (\n isError(err) &&\n err._isRouter &&\n (errorType == null || err.type === errorType)\n )\n}\n\n/* */\n\nfunction runQueue (queue, fn, cb) {\n var step = function (index) {\n if (index >= queue.length) {\n cb();\n } else {\n if (queue[index]) {\n fn(queue[index], function () {\n step(index + 1);\n });\n } else {\n step(index + 1);\n }\n }\n };\n step(0);\n}\n\n/* */\n\nfunction resolveAsyncComponents (matched) {\n return function (to, from, next) {\n var hasAsync = false;\n var pending = 0;\n var error = null;\n\n flatMapComponents(matched, function (def, _, match, key) {\n // if it's a function and doesn't have cid attached,\n // assume it's an async component resolve function.\n // we are not using Vue's default async resolving mechanism because\n // we want to halt the navigation until the incoming component has been\n // resolved.\n if (typeof def === 'function' && def.cid === undefined) {\n hasAsync = true;\n pending++;\n\n var resolve = once(function (resolvedDef) {\n if (isESModule(resolvedDef)) {\n resolvedDef = resolvedDef.default;\n }\n // save resolved on async factory in case it's used elsewhere\n def.resolved = typeof resolvedDef === 'function'\n ? resolvedDef\n : _Vue.extend(resolvedDef);\n match.components[key] = resolvedDef;\n pending--;\n if (pending <= 0) {\n next();\n }\n });\n\n var reject = once(function (reason) {\n var msg = \"Failed to resolve async component \" + key + \": \" + reason;\n process.env.NODE_ENV !== 'production' && warn(false, msg);\n if (!error) {\n error = isError(reason)\n ? reason\n : new Error(msg);\n next(error);\n }\n });\n\n var res;\n try {\n res = def(resolve, reject);\n } catch (e) {\n reject(e);\n }\n if (res) {\n if (typeof res.then === 'function') {\n res.then(resolve, reject);\n } else {\n // new syntax in Vue 2.3\n var comp = res.component;\n if (comp && typeof comp.then === 'function') {\n comp.then(resolve, reject);\n }\n }\n }\n }\n });\n\n if (!hasAsync) { next(); }\n }\n}\n\nfunction flatMapComponents (\n matched,\n fn\n) {\n return flatten(matched.map(function (m) {\n return Object.keys(m.components).map(function (key) { return fn(\n m.components[key],\n m.instances[key],\n m, key\n ); })\n }))\n}\n\nfunction flatten (arr) {\n return Array.prototype.concat.apply([], arr)\n}\n\nvar hasSymbol =\n typeof Symbol === 'function' &&\n typeof Symbol.toStringTag === 'symbol';\n\nfunction isESModule (obj) {\n return obj.__esModule || (hasSymbol && obj[Symbol.toStringTag] === 'Module')\n}\n\n// in Webpack 2, require.ensure now also returns a Promise\n// so the resolve/reject functions may get called an extra time\n// if the user uses an arrow function shorthand that happens to\n// return that Promise.\nfunction once (fn) {\n var called = false;\n return function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n if (called) { return }\n called = true;\n return fn.apply(this, args)\n }\n}\n\n/* */\n\nvar History = function History (router, base) {\n this.router = router;\n this.base = normalizeBase(base);\n // start with a route object that stands for \"nowhere\"\n this.current = START;\n this.pending = null;\n this.ready = false;\n this.readyCbs = [];\n this.readyErrorCbs = [];\n this.errorCbs = [];\n this.listeners = [];\n};\n\nHistory.prototype.listen = function listen (cb) {\n this.cb = cb;\n};\n\nHistory.prototype.onReady = function onReady (cb, errorCb) {\n if (this.ready) {\n cb();\n } else {\n this.readyCbs.push(cb);\n if (errorCb) {\n this.readyErrorCbs.push(errorCb);\n }\n }\n};\n\nHistory.prototype.onError = function onError (errorCb) {\n this.errorCbs.push(errorCb);\n};\n\nHistory.prototype.transitionTo = function transitionTo (\n location,\n onComplete,\n onAbort\n) {\n var this$1$1 = this;\n\n var route;\n // catch redirect option https://github.com/vuejs/vue-router/issues/3201\n try {\n route = this.router.match(location, this.current);\n } catch (e) {\n this.errorCbs.forEach(function (cb) {\n cb(e);\n });\n // Exception should still be thrown\n throw e\n }\n var prev = this.current;\n this.confirmTransition(\n route,\n function () {\n this$1$1.updateRoute(route);\n onComplete && onComplete(route);\n this$1$1.ensureURL();\n this$1$1.router.afterHooks.forEach(function (hook) {\n hook && hook(route, prev);\n });\n\n // fire ready cbs once\n if (!this$1$1.ready) {\n this$1$1.ready = true;\n this$1$1.readyCbs.forEach(function (cb) {\n cb(route);\n });\n }\n },\n function (err) {\n if (onAbort) {\n onAbort(err);\n }\n if (err && !this$1$1.ready) {\n // Initial redirection should not mark the history as ready yet\n // because it's triggered by the redirection instead\n // https://github.com/vuejs/vue-router/issues/3225\n // https://github.com/vuejs/vue-router/issues/3331\n if (!isNavigationFailure(err, NavigationFailureType.redirected) || prev !== START) {\n this$1$1.ready = true;\n this$1$1.readyErrorCbs.forEach(function (cb) {\n cb(err);\n });\n }\n }\n }\n );\n};\n\nHistory.prototype.confirmTransition = function confirmTransition (route, onComplete, onAbort) {\n var this$1$1 = this;\n\n var current = this.current;\n this.pending = route;\n var abort = function (err) {\n // changed after adding errors with\n // https://github.com/vuejs/vue-router/pull/3047 before that change,\n // redirect and aborted navigation would produce an err == null\n if (!isNavigationFailure(err) && isError(err)) {\n if (this$1$1.errorCbs.length) {\n this$1$1.errorCbs.forEach(function (cb) {\n cb(err);\n });\n } else {\n if (process.env.NODE_ENV !== 'production') {\n warn(false, 'uncaught error during route navigation:');\n }\n console.error(err);\n }\n }\n onAbort && onAbort(err);\n };\n var lastRouteIndex = route.matched.length - 1;\n var lastCurrentIndex = current.matched.length - 1;\n if (\n isSameRoute(route, current) &&\n // in the case the route map has been dynamically appended to\n lastRouteIndex === lastCurrentIndex &&\n route.matched[lastRouteIndex] === current.matched[lastCurrentIndex]\n ) {\n this.ensureURL();\n if (route.hash) {\n handleScroll(this.router, current, route, false);\n }\n return abort(createNavigationDuplicatedError(current, route))\n }\n\n var ref = resolveQueue(\n this.current.matched,\n route.matched\n );\n var updated = ref.updated;\n var deactivated = ref.deactivated;\n var activated = ref.activated;\n\n var queue = [].concat(\n // in-component leave guards\n extractLeaveGuards(deactivated),\n // global before hooks\n this.router.beforeHooks,\n // in-component update hooks\n extractUpdateHooks(updated),\n // in-config enter guards\n activated.map(function (m) { return m.beforeEnter; }),\n // async components\n resolveAsyncComponents(activated)\n );\n\n var iterator = function (hook, next) {\n if (this$1$1.pending !== route) {\n return abort(createNavigationCancelledError(current, route))\n }\n try {\n hook(route, current, function (to) {\n if (to === false) {\n // next(false) -> abort navigation, ensure current URL\n this$1$1.ensureURL(true);\n abort(createNavigationAbortedError(current, route));\n } else if (isError(to)) {\n this$1$1.ensureURL(true);\n abort(to);\n } else if (\n typeof to === 'string' ||\n (typeof to === 'object' &&\n (typeof to.path === 'string' || typeof to.name === 'string'))\n ) {\n // next('/') or next({ path: '/' }) -> redirect\n abort(createNavigationRedirectedError(current, route));\n if (typeof to === 'object' && to.replace) {\n this$1$1.replace(to);\n } else {\n this$1$1.push(to);\n }\n } else {\n // confirm transition and pass on the value\n next(to);\n }\n });\n } catch (e) {\n abort(e);\n }\n };\n\n runQueue(queue, iterator, function () {\n // wait until async components are resolved before\n // extracting in-component enter guards\n var enterGuards = extractEnterGuards(activated);\n var queue = enterGuards.concat(this$1$1.router.resolveHooks);\n runQueue(queue, iterator, function () {\n if (this$1$1.pending !== route) {\n return abort(createNavigationCancelledError(current, route))\n }\n this$1$1.pending = null;\n onComplete(route);\n if (this$1$1.router.app) {\n this$1$1.router.app.$nextTick(function () {\n handleRouteEntered(route);\n });\n }\n });\n });\n};\n\nHistory.prototype.updateRoute = function updateRoute (route) {\n this.current = route;\n this.cb && this.cb(route);\n};\n\nHistory.prototype.setupListeners = function setupListeners () {\n // Default implementation is empty\n};\n\nHistory.prototype.teardown = function teardown () {\n // clean up event listeners\n // https://github.com/vuejs/vue-router/issues/2341\n this.listeners.forEach(function (cleanupListener) {\n cleanupListener();\n });\n this.listeners = [];\n\n // reset current history route\n // https://github.com/vuejs/vue-router/issues/3294\n this.current = START;\n this.pending = null;\n};\n\nfunction normalizeBase (base) {\n if (!base) {\n if (inBrowser) {\n // respect tag\n var baseEl = document.querySelector('base');\n base = (baseEl && baseEl.getAttribute('href')) || '/';\n // strip full URL origin\n base = base.replace(/^https?:\\/\\/[^\\/]+/, '');\n } else {\n base = '/';\n }\n }\n // make sure there's the starting slash\n if (base.charAt(0) !== '/') {\n base = '/' + base;\n }\n // remove trailing slash\n return base.replace(/\\/$/, '')\n}\n\nfunction resolveQueue (\n current,\n next\n) {\n var i;\n var max = Math.max(current.length, next.length);\n for (i = 0; i < max; i++) {\n if (current[i] !== next[i]) {\n break\n }\n }\n return {\n updated: next.slice(0, i),\n activated: next.slice(i),\n deactivated: current.slice(i)\n }\n}\n\nfunction extractGuards (\n records,\n name,\n bind,\n reverse\n) {\n var guards = flatMapComponents(records, function (def, instance, match, key) {\n var guard = extractGuard(def, name);\n if (guard) {\n return Array.isArray(guard)\n ? guard.map(function (guard) { return bind(guard, instance, match, key); })\n : bind(guard, instance, match, key)\n }\n });\n return flatten(reverse ? guards.reverse() : guards)\n}\n\nfunction extractGuard (\n def,\n key\n) {\n if (typeof def !== 'function') {\n // extend now so that global mixins are applied.\n def = _Vue.extend(def);\n }\n return def.options[key]\n}\n\nfunction extractLeaveGuards (deactivated) {\n return extractGuards(deactivated, 'beforeRouteLeave', bindGuard, true)\n}\n\nfunction extractUpdateHooks (updated) {\n return extractGuards(updated, 'beforeRouteUpdate', bindGuard)\n}\n\nfunction bindGuard (guard, instance) {\n if (instance) {\n return function boundRouteGuard () {\n return guard.apply(instance, arguments)\n }\n }\n}\n\nfunction extractEnterGuards (\n activated\n) {\n return extractGuards(\n activated,\n 'beforeRouteEnter',\n function (guard, _, match, key) {\n return bindEnterGuard(guard, match, key)\n }\n )\n}\n\nfunction bindEnterGuard (\n guard,\n match,\n key\n) {\n return function routeEnterGuard (to, from, next) {\n return guard(to, from, function (cb) {\n if (typeof cb === 'function') {\n if (!match.enteredCbs[key]) {\n match.enteredCbs[key] = [];\n }\n match.enteredCbs[key].push(cb);\n }\n next(cb);\n })\n }\n}\n\n/* */\n\nvar HTML5History = /*@__PURE__*/(function (History) {\n function HTML5History (router, base) {\n History.call(this, router, base);\n\n this._startLocation = getLocation(this.base);\n }\n\n if ( History ) HTML5History.__proto__ = History;\n HTML5History.prototype = Object.create( History && History.prototype );\n HTML5History.prototype.constructor = HTML5History;\n\n HTML5History.prototype.setupListeners = function setupListeners () {\n var this$1$1 = this;\n\n if (this.listeners.length > 0) {\n return\n }\n\n var router = this.router;\n var expectScroll = router.options.scrollBehavior;\n var supportsScroll = supportsPushState && expectScroll;\n\n if (supportsScroll) {\n this.listeners.push(setupScroll());\n }\n\n var handleRoutingEvent = function () {\n var current = this$1$1.current;\n\n // Avoiding first `popstate` event dispatched in some browsers but first\n // history route not updated since async guard at the same time.\n var location = getLocation(this$1$1.base);\n if (this$1$1.current === START && location === this$1$1._startLocation) {\n return\n }\n\n this$1$1.transitionTo(location, function (route) {\n if (supportsScroll) {\n handleScroll(router, route, current, true);\n }\n });\n };\n window.addEventListener('popstate', handleRoutingEvent);\n this.listeners.push(function () {\n window.removeEventListener('popstate', handleRoutingEvent);\n });\n };\n\n HTML5History.prototype.go = function go (n) {\n window.history.go(n);\n };\n\n HTML5History.prototype.push = function push (location, onComplete, onAbort) {\n var this$1$1 = this;\n\n var ref = this;\n var fromRoute = ref.current;\n this.transitionTo(location, function (route) {\n pushState(cleanPath(this$1$1.base + route.fullPath));\n handleScroll(this$1$1.router, route, fromRoute, false);\n onComplete && onComplete(route);\n }, onAbort);\n };\n\n HTML5History.prototype.replace = function replace (location, onComplete, onAbort) {\n var this$1$1 = this;\n\n var ref = this;\n var fromRoute = ref.current;\n this.transitionTo(location, function (route) {\n replaceState(cleanPath(this$1$1.base + route.fullPath));\n handleScroll(this$1$1.router, route, fromRoute, false);\n onComplete && onComplete(route);\n }, onAbort);\n };\n\n HTML5History.prototype.ensureURL = function ensureURL (push) {\n if (getLocation(this.base) !== this.current.fullPath) {\n var current = cleanPath(this.base + this.current.fullPath);\n push ? pushState(current) : replaceState(current);\n }\n };\n\n HTML5History.prototype.getCurrentLocation = function getCurrentLocation () {\n return getLocation(this.base)\n };\n\n return HTML5History;\n}(History));\n\nfunction getLocation (base) {\n var path = window.location.pathname;\n var pathLowerCase = path.toLowerCase();\n var baseLowerCase = base.toLowerCase();\n // base=\"/a\" shouldn't turn path=\"/app\" into \"/a/pp\"\n // https://github.com/vuejs/vue-router/issues/3555\n // so we ensure the trailing slash in the base\n if (base && ((pathLowerCase === baseLowerCase) ||\n (pathLowerCase.indexOf(cleanPath(baseLowerCase + '/')) === 0))) {\n path = path.slice(base.length);\n }\n return (path || '/') + window.location.search + window.location.hash\n}\n\n/* */\n\nvar HashHistory = /*@__PURE__*/(function (History) {\n function HashHistory (router, base, fallback) {\n History.call(this, router, base);\n // check history fallback deeplinking\n if (fallback && checkFallback(this.base)) {\n return\n }\n ensureSlash();\n }\n\n if ( History ) HashHistory.__proto__ = History;\n HashHistory.prototype = Object.create( History && History.prototype );\n HashHistory.prototype.constructor = HashHistory;\n\n // this is delayed until the app mounts\n // to avoid the hashchange listener being fired too early\n HashHistory.prototype.setupListeners = function setupListeners () {\n var this$1$1 = this;\n\n if (this.listeners.length > 0) {\n return\n }\n\n var router = this.router;\n var expectScroll = router.options.scrollBehavior;\n var supportsScroll = supportsPushState && expectScroll;\n\n if (supportsScroll) {\n this.listeners.push(setupScroll());\n }\n\n var handleRoutingEvent = function () {\n var current = this$1$1.current;\n if (!ensureSlash()) {\n return\n }\n this$1$1.transitionTo(getHash(), function (route) {\n if (supportsScroll) {\n handleScroll(this$1$1.router, route, current, true);\n }\n if (!supportsPushState) {\n replaceHash(route.fullPath);\n }\n });\n };\n var eventType = supportsPushState ? 'popstate' : 'hashchange';\n window.addEventListener(\n eventType,\n handleRoutingEvent\n );\n this.listeners.push(function () {\n window.removeEventListener(eventType, handleRoutingEvent);\n });\n };\n\n HashHistory.prototype.push = function push (location, onComplete, onAbort) {\n var this$1$1 = this;\n\n var ref = this;\n var fromRoute = ref.current;\n this.transitionTo(\n location,\n function (route) {\n pushHash(route.fullPath);\n handleScroll(this$1$1.router, route, fromRoute, false);\n onComplete && onComplete(route);\n },\n onAbort\n );\n };\n\n HashHistory.prototype.replace = function replace (location, onComplete, onAbort) {\n var this$1$1 = this;\n\n var ref = this;\n var fromRoute = ref.current;\n this.transitionTo(\n location,\n function (route) {\n replaceHash(route.fullPath);\n handleScroll(this$1$1.router, route, fromRoute, false);\n onComplete && onComplete(route);\n },\n onAbort\n );\n };\n\n HashHistory.prototype.go = function go (n) {\n window.history.go(n);\n };\n\n HashHistory.prototype.ensureURL = function ensureURL (push) {\n var current = this.current.fullPath;\n if (getHash() !== current) {\n push ? pushHash(current) : replaceHash(current);\n }\n };\n\n HashHistory.prototype.getCurrentLocation = function getCurrentLocation () {\n return getHash()\n };\n\n return HashHistory;\n}(History));\n\nfunction checkFallback (base) {\n var location = getLocation(base);\n if (!/^\\/#/.test(location)) {\n window.location.replace(cleanPath(base + '/#' + location));\n return true\n }\n}\n\nfunction ensureSlash () {\n var path = getHash();\n if (path.charAt(0) === '/') {\n return true\n }\n replaceHash('/' + path);\n return false\n}\n\nfunction getHash () {\n // We can't use window.location.hash here because it's not\n // consistent across browsers - Firefox will pre-decode it!\n var href = window.location.href;\n var index = href.indexOf('#');\n // empty path\n if (index < 0) { return '' }\n\n href = href.slice(index + 1);\n\n return href\n}\n\nfunction getUrl (path) {\n var href = window.location.href;\n var i = href.indexOf('#');\n var base = i >= 0 ? href.slice(0, i) : href;\n return (base + \"#\" + path)\n}\n\nfunction pushHash (path) {\n if (supportsPushState) {\n pushState(getUrl(path));\n } else {\n window.location.hash = path;\n }\n}\n\nfunction replaceHash (path) {\n if (supportsPushState) {\n replaceState(getUrl(path));\n } else {\n window.location.replace(getUrl(path));\n }\n}\n\n/* */\n\nvar AbstractHistory = /*@__PURE__*/(function (History) {\n function AbstractHistory (router, base) {\n History.call(this, router, base);\n this.stack = [];\n this.index = -1;\n }\n\n if ( History ) AbstractHistory.__proto__ = History;\n AbstractHistory.prototype = Object.create( History && History.prototype );\n AbstractHistory.prototype.constructor = AbstractHistory;\n\n AbstractHistory.prototype.push = function push (location, onComplete, onAbort) {\n var this$1$1 = this;\n\n this.transitionTo(\n location,\n function (route) {\n this$1$1.stack = this$1$1.stack.slice(0, this$1$1.index + 1).concat(route);\n this$1$1.index++;\n onComplete && onComplete(route);\n },\n onAbort\n );\n };\n\n AbstractHistory.prototype.replace = function replace (location, onComplete, onAbort) {\n var this$1$1 = this;\n\n this.transitionTo(\n location,\n function (route) {\n this$1$1.stack = this$1$1.stack.slice(0, this$1$1.index).concat(route);\n onComplete && onComplete(route);\n },\n onAbort\n );\n };\n\n AbstractHistory.prototype.go = function go (n) {\n var this$1$1 = this;\n\n var targetIndex = this.index + n;\n if (targetIndex < 0 || targetIndex >= this.stack.length) {\n return\n }\n var route = this.stack[targetIndex];\n this.confirmTransition(\n route,\n function () {\n var prev = this$1$1.current;\n this$1$1.index = targetIndex;\n this$1$1.updateRoute(route);\n this$1$1.router.afterHooks.forEach(function (hook) {\n hook && hook(route, prev);\n });\n },\n function (err) {\n if (isNavigationFailure(err, NavigationFailureType.duplicated)) {\n this$1$1.index = targetIndex;\n }\n }\n );\n };\n\n AbstractHistory.prototype.getCurrentLocation = function getCurrentLocation () {\n var current = this.stack[this.stack.length - 1];\n return current ? current.fullPath : '/'\n };\n\n AbstractHistory.prototype.ensureURL = function ensureURL () {\n // noop\n };\n\n return AbstractHistory;\n}(History));\n\n/* */\n\n\n\nvar VueRouter = function VueRouter (options) {\n if ( options === void 0 ) options = {};\n\n if (process.env.NODE_ENV !== 'production') {\n warn(this instanceof VueRouter, \"Router must be called with the new operator.\");\n }\n this.app = null;\n this.apps = [];\n this.options = options;\n this.beforeHooks = [];\n this.resolveHooks = [];\n this.afterHooks = [];\n this.matcher = createMatcher(options.routes || [], this);\n\n var mode = options.mode || 'hash';\n this.fallback =\n mode === 'history' && !supportsPushState && options.fallback !== false;\n if (this.fallback) {\n mode = 'hash';\n }\n if (!inBrowser) {\n mode = 'abstract';\n }\n this.mode = mode;\n\n switch (mode) {\n case 'history':\n this.history = new HTML5History(this, options.base);\n break\n case 'hash':\n this.history = new HashHistory(this, options.base, this.fallback);\n break\n case 'abstract':\n this.history = new AbstractHistory(this, options.base);\n break\n default:\n if (process.env.NODE_ENV !== 'production') {\n assert(false, (\"invalid mode: \" + mode));\n }\n }\n};\n\nvar prototypeAccessors = { currentRoute: { configurable: true } };\n\nVueRouter.prototype.match = function match (raw, current, redirectedFrom) {\n return this.matcher.match(raw, current, redirectedFrom)\n};\n\nprototypeAccessors.currentRoute.get = function () {\n return this.history && this.history.current\n};\n\nVueRouter.prototype.init = function init (app /* Vue component instance */) {\n var this$1$1 = this;\n\n process.env.NODE_ENV !== 'production' &&\n assert(\n install.installed,\n \"not installed. Make sure to call `Vue.use(VueRouter)` \" +\n \"before creating root instance.\"\n );\n\n this.apps.push(app);\n\n // set up app destroyed handler\n // https://github.com/vuejs/vue-router/issues/2639\n app.$once('hook:destroyed', function () {\n // clean out app from this.apps array once destroyed\n var index = this$1$1.apps.indexOf(app);\n if (index > -1) { this$1$1.apps.splice(index, 1); }\n // ensure we still have a main app or null if no apps\n // we do not release the router so it can be reused\n if (this$1$1.app === app) { this$1$1.app = this$1$1.apps[0] || null; }\n\n if (!this$1$1.app) { this$1$1.history.teardown(); }\n });\n\n // main app previously initialized\n // return as we don't need to set up new history listener\n if (this.app) {\n return\n }\n\n this.app = app;\n\n var history = this.history;\n\n if (history instanceof HTML5History || history instanceof HashHistory) {\n var handleInitialScroll = function (routeOrError) {\n var from = history.current;\n var expectScroll = this$1$1.options.scrollBehavior;\n var supportsScroll = supportsPushState && expectScroll;\n\n if (supportsScroll && 'fullPath' in routeOrError) {\n handleScroll(this$1$1, routeOrError, from, false);\n }\n };\n var setupListeners = function (routeOrError) {\n history.setupListeners();\n handleInitialScroll(routeOrError);\n };\n history.transitionTo(\n history.getCurrentLocation(),\n setupListeners,\n setupListeners\n );\n }\n\n history.listen(function (route) {\n this$1$1.apps.forEach(function (app) {\n app._route = route;\n });\n });\n};\n\nVueRouter.prototype.beforeEach = function beforeEach (fn) {\n return registerHook(this.beforeHooks, fn)\n};\n\nVueRouter.prototype.beforeResolve = function beforeResolve (fn) {\n return registerHook(this.resolveHooks, fn)\n};\n\nVueRouter.prototype.afterEach = function afterEach (fn) {\n return registerHook(this.afterHooks, fn)\n};\n\nVueRouter.prototype.onReady = function onReady (cb, errorCb) {\n this.history.onReady(cb, errorCb);\n};\n\nVueRouter.prototype.onError = function onError (errorCb) {\n this.history.onError(errorCb);\n};\n\nVueRouter.prototype.push = function push (location, onComplete, onAbort) {\n var this$1$1 = this;\n\n // $flow-disable-line\n if (!onComplete && !onAbort && typeof Promise !== 'undefined') {\n return new Promise(function (resolve, reject) {\n this$1$1.history.push(location, resolve, reject);\n })\n } else {\n this.history.push(location, onComplete, onAbort);\n }\n};\n\nVueRouter.prototype.replace = function replace (location, onComplete, onAbort) {\n var this$1$1 = this;\n\n // $flow-disable-line\n if (!onComplete && !onAbort && typeof Promise !== 'undefined') {\n return new Promise(function (resolve, reject) {\n this$1$1.history.replace(location, resolve, reject);\n })\n } else {\n this.history.replace(location, onComplete, onAbort);\n }\n};\n\nVueRouter.prototype.go = function go (n) {\n this.history.go(n);\n};\n\nVueRouter.prototype.back = function back () {\n this.go(-1);\n};\n\nVueRouter.prototype.forward = function forward () {\n this.go(1);\n};\n\nVueRouter.prototype.getMatchedComponents = function getMatchedComponents (to) {\n var route = to\n ? to.matched\n ? to\n : this.resolve(to).route\n : this.currentRoute;\n if (!route) {\n return []\n }\n return [].concat.apply(\n [],\n route.matched.map(function (m) {\n return Object.keys(m.components).map(function (key) {\n return m.components[key]\n })\n })\n )\n};\n\nVueRouter.prototype.resolve = function resolve (\n to,\n current,\n append\n) {\n current = current || this.history.current;\n var location = normalizeLocation(to, current, append, this);\n var route = this.match(location, current);\n var fullPath = route.redirectedFrom || route.fullPath;\n var base = this.history.base;\n var href = createHref(base, fullPath, this.mode);\n return {\n location: location,\n route: route,\n href: href,\n // for backwards compat\n normalizedTo: location,\n resolved: route\n }\n};\n\nVueRouter.prototype.getRoutes = function getRoutes () {\n return this.matcher.getRoutes()\n};\n\nVueRouter.prototype.addRoute = function addRoute (parentOrRoute, route) {\n this.matcher.addRoute(parentOrRoute, route);\n if (this.history.current !== START) {\n this.history.transitionTo(this.history.getCurrentLocation());\n }\n};\n\nVueRouter.prototype.addRoutes = function addRoutes (routes) {\n if (process.env.NODE_ENV !== 'production') {\n warn(false, 'router.addRoutes() is deprecated and has been removed in Vue Router 4. Use router.addRoute() instead.');\n }\n this.matcher.addRoutes(routes);\n if (this.history.current !== START) {\n this.history.transitionTo(this.history.getCurrentLocation());\n }\n};\n\nObject.defineProperties( VueRouter.prototype, prototypeAccessors );\n\nvar VueRouter$1 = VueRouter;\n\nfunction registerHook (list, fn) {\n list.push(fn);\n return function () {\n var i = list.indexOf(fn);\n if (i > -1) { list.splice(i, 1); }\n }\n}\n\nfunction createHref (base, fullPath, mode) {\n var path = mode === 'hash' ? '#' + fullPath : fullPath;\n return base ? cleanPath(base + '/' + path) : path\n}\n\n// We cannot remove this as it would be a breaking change\nVueRouter.install = install;\nVueRouter.version = '3.6.5';\nVueRouter.isNavigationFailure = isNavigationFailure;\nVueRouter.NavigationFailureType = NavigationFailureType;\nVueRouter.START_LOCATION = START;\n\nif (inBrowser && window.Vue) {\n window.Vue.use(VueRouter);\n}\n\nvar version = '3.6.5';\n\nexport { NavigationFailureType, Link as RouterLink, View as RouterView, START as START_LOCATION, VueRouter$1 as default, isNavigationFailure, version };\n","import { generateUrl } from '@nextcloud/router';\nimport queryString from 'query-string';\nimport Router from 'vue-router';\nimport Vue from 'vue';\nVue.use(Router);\n// Prevent router from throwing errors when we're already on the page we're trying to go to\nconst originalPush = Router.prototype.push;\nRouter.prototype.push = function push(to, onComplete, onAbort) {\n if (onComplete || onAbort)\n return originalPush.call(this, to, onComplete, onAbort);\n return originalPush.call(this, to).catch(err => err);\n};\nconst router = new Router({\n mode: 'history',\n // if index.php is in the url AND we got this far, then it's working:\n // let's keep using index.php in the url\n base: generateUrl('/apps/files'),\n linkActiveClass: 'active',\n routes: [\n {\n path: '/',\n // Pretending we're using the default view\n redirect: { name: 'filelist', params: { view: 'files' } },\n },\n {\n path: '/:view/:fileid(\\\\d+)?',\n name: 'filelist',\n props: true,\n },\n ],\n // Custom stringifyQuery to prevent encoding of slashes in the url\n stringifyQuery(query) {\n const result = queryString.stringify(query).replace(/%2F/gmi, '/');\n return result ? ('?' + result) : '';\n },\n});\nexport default router;\n","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('NcContent',{attrs:{\"app-name\":\"files\"}},[_c('Navigation'),_vm._v(\" \"),_c('FilesList')],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./Cog.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Cog.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./Cog.vue?vue&type=template&id=89df8f2e\"\nimport script from \"./Cog.vue?vue&type=script&lang=js\"\nexport * from \"./Cog.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon cog-icon\",attrs:{\"aria-hidden\":_vm.title ? null : true,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M12,15.5A3.5,3.5 0 0,1 8.5,12A3.5,3.5 0 0,1 12,8.5A3.5,3.5 0 0,1 15.5,12A3.5,3.5 0 0,1 12,15.5M19.43,12.97C19.47,12.65 19.5,12.33 19.5,12C19.5,11.67 19.47,11.34 19.43,11L21.54,9.37C21.73,9.22 21.78,8.95 21.66,8.73L19.66,5.27C19.54,5.05 19.27,4.96 19.05,5.05L16.56,6.05C16.04,5.66 15.5,5.32 14.87,5.07L14.5,2.42C14.46,2.18 14.25,2 14,2H10C9.75,2 9.54,2.18 9.5,2.42L9.13,5.07C8.5,5.32 7.96,5.66 7.44,6.05L4.95,5.05C4.73,4.96 4.46,5.05 4.34,5.27L2.34,8.73C2.21,8.95 2.27,9.22 2.46,9.37L4.57,11C4.53,11.34 4.5,11.67 4.5,12C4.5,12.33 4.53,12.65 4.57,12.97L2.46,14.63C2.27,14.78 2.21,15.05 2.34,15.27L4.34,18.73C4.46,18.95 4.73,19.03 4.95,18.95L7.44,17.94C7.96,18.34 8.5,18.68 9.13,18.93L9.5,21.58C9.54,21.82 9.75,22 10,22H14C14.25,22 14.46,21.82 14.5,21.58L14.87,18.93C15.5,18.67 16.04,18.34 16.56,17.94L19.05,18.95C19.27,19.03 19.54,18.95 19.66,18.73L21.66,15.27C21.78,15.05 21.73,14.78 21.54,14.63L19.43,12.97Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/* eslint-disable no-undefined,no-param-reassign,no-shadow */\n\n/**\n * Throttle execution of a function. Especially useful for rate limiting\n * execution of handlers on events like resize and scroll.\n *\n * @param {number} delay - A zero-or-greater delay in milliseconds. For event callbacks, values around 100 or 250 (or even higher)\n * are most useful.\n * @param {Function} callback - A function to be executed after delay milliseconds. The `this` context and all arguments are passed through,\n * as-is, to `callback` when the throttled-function is executed.\n * @param {object} [options] - An object to configure options.\n * @param {boolean} [options.noTrailing] - Optional, defaults to false. If noTrailing is true, callback will only execute every `delay` milliseconds\n * while the throttled-function is being called. If noTrailing is false or unspecified, callback will be executed\n * one final time after the last throttled-function call. (After the throttled-function has not been called for\n * `delay` milliseconds, the internal counter is reset).\n * @param {boolean} [options.noLeading] - Optional, defaults to false. If noLeading is false, the first throttled-function call will execute callback\n * immediately. If noLeading is true, the first the callback execution will be skipped. It should be noted that\n * callback will never executed if both noLeading = true and noTrailing = true.\n * @param {boolean} [options.debounceMode] - If `debounceMode` is true (at begin), schedule `clear` to execute after `delay` ms. If `debounceMode` is\n * false (at end), schedule `callback` to execute after `delay` ms.\n *\n * @returns {Function} A new, throttled, function.\n */\nfunction throttle (delay, callback, options) {\n var _ref = options || {},\n _ref$noTrailing = _ref.noTrailing,\n noTrailing = _ref$noTrailing === void 0 ? false : _ref$noTrailing,\n _ref$noLeading = _ref.noLeading,\n noLeading = _ref$noLeading === void 0 ? false : _ref$noLeading,\n _ref$debounceMode = _ref.debounceMode,\n debounceMode = _ref$debounceMode === void 0 ? undefined : _ref$debounceMode;\n /*\n * After wrapper has stopped being called, this timeout ensures that\n * `callback` is executed at the proper times in `throttle` and `end`\n * debounce modes.\n */\n\n\n var timeoutID;\n var cancelled = false; // Keep track of the last time `callback` was executed.\n\n var lastExec = 0; // Function to clear existing timeout\n\n function clearExistingTimeout() {\n if (timeoutID) {\n clearTimeout(timeoutID);\n }\n } // Function to cancel next exec\n\n\n function cancel(options) {\n var _ref2 = options || {},\n _ref2$upcomingOnly = _ref2.upcomingOnly,\n upcomingOnly = _ref2$upcomingOnly === void 0 ? false : _ref2$upcomingOnly;\n\n clearExistingTimeout();\n cancelled = !upcomingOnly;\n }\n /*\n * The `wrapper` function encapsulates all of the throttling / debouncing\n * functionality and when executed will limit the rate at which `callback`\n * is executed.\n */\n\n\n function wrapper() {\n for (var _len = arguments.length, arguments_ = new Array(_len), _key = 0; _key < _len; _key++) {\n arguments_[_key] = arguments[_key];\n }\n\n var self = this;\n var elapsed = Date.now() - lastExec;\n\n if (cancelled) {\n return;\n } // Execute `callback` and update the `lastExec` timestamp.\n\n\n function exec() {\n lastExec = Date.now();\n callback.apply(self, arguments_);\n }\n /*\n * If `debounceMode` is true (at begin) this is used to clear the flag\n * to allow future `callback` executions.\n */\n\n\n function clear() {\n timeoutID = undefined;\n }\n\n if (!noLeading && debounceMode && !timeoutID) {\n /*\n * Since `wrapper` is being called for the first time and\n * `debounceMode` is true (at begin), execute `callback`\n * and noLeading != true.\n */\n exec();\n }\n\n clearExistingTimeout();\n\n if (debounceMode === undefined && elapsed > delay) {\n if (noLeading) {\n /*\n * In throttle mode with noLeading, if `delay` time has\n * been exceeded, update `lastExec` and schedule `callback`\n * to execute after `delay` ms.\n */\n lastExec = Date.now();\n\n if (!noTrailing) {\n timeoutID = setTimeout(debounceMode ? clear : exec, delay);\n }\n } else {\n /*\n * In throttle mode without noLeading, if `delay` time has been exceeded, execute\n * `callback`.\n */\n exec();\n }\n } else if (noTrailing !== true) {\n /*\n * In trailing throttle mode, since `delay` time has not been\n * exceeded, schedule `callback` to execute `delay` ms after most\n * recent execution.\n *\n * If `debounceMode` is true (at begin), schedule `clear` to execute\n * after `delay` ms.\n *\n * If `debounceMode` is false (at end), schedule `callback` to\n * execute after `delay` ms.\n */\n timeoutID = setTimeout(debounceMode ? clear : exec, debounceMode === undefined ? delay - elapsed : delay);\n }\n }\n\n wrapper.cancel = cancel; // Return the wrapper function.\n\n return wrapper;\n}\n\n/* eslint-disable no-undefined */\n/**\n * Debounce execution of a function. Debouncing, unlike throttling,\n * guarantees that a function is only executed a single time, either at the\n * very beginning of a series of calls, or at the very end.\n *\n * @param {number} delay - A zero-or-greater delay in milliseconds. For event callbacks, values around 100 or 250 (or even higher) are most useful.\n * @param {Function} callback - A function to be executed after delay milliseconds. The `this` context and all arguments are passed through, as-is,\n * to `callback` when the debounced-function is executed.\n * @param {object} [options] - An object to configure options.\n * @param {boolean} [options.atBegin] - Optional, defaults to false. If atBegin is false or unspecified, callback will only be executed `delay` milliseconds\n * after the last debounced-function call. If atBegin is true, callback will be executed only at the first debounced-function call.\n * (After the throttled-function has not been called for `delay` milliseconds, the internal counter is reset).\n *\n * @returns {Function} A new, debounced function.\n */\n\nfunction debounce (delay, callback, options) {\n var _ref = options || {},\n _ref$atBegin = _ref.atBegin,\n atBegin = _ref$atBegin === void 0 ? false : _ref$atBegin;\n\n return throttle(delay, callback, {\n debounceMode: atBegin !== false\n });\n}\n\nexport { debounce, throttle };\n//# sourceMappingURL=index.js.map\n","\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./ChartPie.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./ChartPie.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ChartPie.vue?vue&type=template&id=b117066e\"\nimport script from \"./ChartPie.vue?vue&type=script&lang=js\"\nexport * from \"./ChartPie.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon chart-pie-icon\",attrs:{\"aria-hidden\":_vm.title ? null : true,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M11,2V22C5.9,21.5 2,17.2 2,12C2,6.8 5.9,2.5 11,2M13,2V11H22C21.5,6.2 17.8,2.5 13,2M13,13V22C17.7,21.5 21.5,17.8 22,13H13Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/**\n * SPDX-FileCopyrightText: 2022 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { getLoggerBuilder } from '@nextcloud/logger'\n\nexport default getLoggerBuilder()\n\t.setApp('files')\n\t.detectUser()\n\t.build()\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NavigationQuota.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NavigationQuota.vue?vue&type=script&lang=js\"","\n\n\n\n\n\n","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NavigationQuota.vue?vue&type=style&index=0&id=3e968815&prod&lang=scss&scoped=true\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NavigationQuota.vue?vue&type=style&index=0&id=3e968815&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./NavigationQuota.vue?vue&type=template&id=3e968815&scoped=true\"\nimport script from \"./NavigationQuota.vue?vue&type=script&lang=js\"\nexport * from \"./NavigationQuota.vue?vue&type=script&lang=js\"\nimport style0 from \"./NavigationQuota.vue?vue&type=style&index=0&id=3e968815&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"3e968815\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return (_vm.storageStats)?_c('NcAppNavigationItem',{staticClass:\"app-navigation-entry__settings-quota\",class:{ 'app-navigation-entry__settings-quota--not-unlimited': _vm.storageStats.quota >= 0},attrs:{\"aria-label\":_vm.t('files', 'Storage informations'),\"loading\":_vm.loadingStorageStats,\"name\":_vm.storageStatsTitle,\"title\":_vm.storageStatsTooltip,\"data-cy-files-navigation-settings-quota\":\"\"},on:{\"click\":function($event){$event.stopPropagation();$event.preventDefault();return _vm.debounceUpdateStorageStats.apply(null, arguments)}}},[_c('ChartPie',{attrs:{\"slot\":\"icon\",\"size\":20},slot:\"icon\"}),_vm._v(\" \"),(_vm.storageStats.quota >= 0)?_c('NcProgressBar',{attrs:{\"slot\":\"extra\",\"error\":_vm.storageStats.relative > 80,\"value\":Math.min(_vm.storageStats.relative, 100)},slot:\"extra\"}):_vm._e()],1):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('NcAppSettingsDialog',{attrs:{\"open\":_vm.open,\"show-navigation\":true,\"name\":_vm.t('files', 'Files settings')},on:{\"update:open\":_vm.onClose}},[_c('NcAppSettingsSection',{attrs:{\"id\":\"settings\",\"name\":_vm.t('files', 'Files settings')}},[_c('NcCheckboxRadioSwitch',{attrs:{\"data-cy-files-settings-setting\":\"sort_favorites_first\",\"checked\":_vm.userConfig.sort_favorites_first},on:{\"update:checked\":function($event){return _vm.setConfig('sort_favorites_first', $event)}}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('files', 'Sort favorites first'))+\"\\n\\t\\t\")]),_vm._v(\" \"),_c('NcCheckboxRadioSwitch',{attrs:{\"data-cy-files-settings-setting\":\"sort_folders_first\",\"checked\":_vm.userConfig.sort_folders_first},on:{\"update:checked\":function($event){return _vm.setConfig('sort_folders_first', $event)}}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('files', 'Sort folders before files'))+\"\\n\\t\\t\")]),_vm._v(\" \"),_c('NcCheckboxRadioSwitch',{attrs:{\"data-cy-files-settings-setting\":\"show_hidden\",\"checked\":_vm.userConfig.show_hidden},on:{\"update:checked\":function($event){return _vm.setConfig('show_hidden', $event)}}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('files', 'Show hidden files'))+\"\\n\\t\\t\")]),_vm._v(\" \"),_c('NcCheckboxRadioSwitch',{attrs:{\"data-cy-files-settings-setting\":\"crop_image_previews\",\"checked\":_vm.userConfig.crop_image_previews},on:{\"update:checked\":function($event){return _vm.setConfig('crop_image_previews', $event)}}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('files', 'Crop image previews'))+\"\\n\\t\\t\")]),_vm._v(\" \"),(_vm.enableGridView)?_c('NcCheckboxRadioSwitch',{attrs:{\"data-cy-files-settings-setting\":\"grid_view\",\"checked\":_vm.userConfig.grid_view},on:{\"update:checked\":function($event){return _vm.setConfig('grid_view', $event)}}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('files', 'Enable the grid view'))+\"\\n\\t\\t\")]):_vm._e()],1),_vm._v(\" \"),(_vm.settings.length !== 0)?_c('NcAppSettingsSection',{attrs:{\"id\":\"more-settings\",\"name\":_vm.t('files', 'Additional settings')}},[_vm._l((_vm.settings),function(setting){return [_c('Setting',{key:setting.name,attrs:{\"el\":setting.el}})]})],2):_vm._e(),_vm._v(\" \"),_c('NcAppSettingsSection',{attrs:{\"id\":\"webdav\",\"name\":_vm.t('files', 'WebDAV')}},[_c('NcInputField',{attrs:{\"id\":\"webdav-url-input\",\"label\":_vm.t('files', 'WebDAV URL'),\"show-trailing-button\":true,\"success\":_vm.webdavUrlCopied,\"trailing-button-label\":_vm.t('files', 'Copy to clipboard'),\"value\":_vm.webdavUrl,\"readonly\":\"readonly\",\"type\":\"url\"},on:{\"focus\":function($event){return $event.target.select()},\"trailing-button-click\":_vm.copyCloudId},scopedSlots:_vm._u([{key:\"trailing-button-icon\",fn:function(){return [_c('Clipboard',{attrs:{\"size\":20}})]},proxy:true}])}),_vm._v(\" \"),_c('em',[_c('a',{staticClass:\"setting-link\",attrs:{\"href\":_vm.webdavDocs,\"target\":\"_blank\",\"rel\":\"noreferrer noopener\"}},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('files', 'Use this address to access your Files via WebDAV'))+\" ↗\\n\\t\\t\\t\")])]),_vm._v(\" \"),_c('br'),_vm._v(\" \"),_c('em',[_c('a',{staticClass:\"setting-link\",attrs:{\"href\":_vm.appPasswordUrl}},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('files', 'If you have enabled 2FA, you must create and use a new app password by clicking here.'))+\" ↗\\n\\t\\t\\t\")])])],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./Clipboard.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Clipboard.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./Clipboard.vue?vue&type=template&id=0c133921\"\nimport script from \"./Clipboard.vue?vue&type=script&lang=js\"\nexport * from \"./Clipboard.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon clipboard-icon\",attrs:{\"aria-hidden\":_vm.title ? null : true,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M19,3H14.82C14.4,1.84 13.3,1 12,1C10.7,1 9.6,1.84 9.18,3H5A2,2 0 0,0 3,5V19A2,2 0 0,0 5,21H19A2,2 0 0,0 21,19V5A2,2 0 0,0 19,3M12,3A1,1 0 0,1 13,4A1,1 0 0,1 12,5A1,1 0 0,1 11,4A1,1 0 0,1 12,3\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Setting.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Setting.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./Setting.vue?vue&type=template&id=315a4ce8\"\nimport script from \"./Setting.vue?vue&type=script&lang=js\"\nexport * from \"./Setting.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div')\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { defineStore } from 'pinia';\nimport { emit, subscribe } from '@nextcloud/event-bus';\nimport { generateUrl } from '@nextcloud/router';\nimport { loadState } from '@nextcloud/initial-state';\nimport axios from '@nextcloud/axios';\nimport Vue from 'vue';\nconst userConfig = loadState('files', 'config', {\n show_hidden: false,\n crop_image_previews: true,\n sort_favorites_first: true,\n sort_folders_first: true,\n grid_view: false,\n});\nexport const useUserConfigStore = function (...args) {\n const store = defineStore('userconfig', {\n state: () => ({\n userConfig,\n }),\n actions: {\n /**\n * Update the user config local store\n */\n onUpdate(key, value) {\n Vue.set(this.userConfig, key, value);\n },\n /**\n * Update the user config local store AND on server side\n */\n async update(key, value) {\n await axios.put(generateUrl('/apps/files/api/v1/config/' + key), {\n value,\n });\n emit('files:config:updated', { key, value });\n },\n },\n });\n const userConfigStore = store(...args);\n // Make sure we only register the listeners once\n if (!userConfigStore._initialized) {\n subscribe('files:config:updated', function ({ key, value }) {\n userConfigStore.onUpdate(key, value);\n });\n userConfigStore._initialized = true;\n }\n return userConfigStore;\n};\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Settings.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Settings.vue?vue&type=script&lang=js\"","\n\n\n\n\n\n","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Settings.vue?vue&type=style&index=0&id=44764f8d&prod&lang=scss&scoped=true\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Settings.vue?vue&type=style&index=0&id=44764f8d&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./Settings.vue?vue&type=template&id=44764f8d&scoped=true\"\nimport script from \"./Settings.vue?vue&type=script&lang=js\"\nexport * from \"./Settings.vue?vue&type=script&lang=js\"\nimport style0 from \"./Settings.vue?vue&type=style&index=0&id=44764f8d&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"44764f8d\",\n null\n \n)\n\nexport default component.exports","import { getNavigation } from '@nextcloud/files';\nimport { onMounted, onUnmounted, shallowRef } from 'vue';\n/**\n * Composable to get the currently active files view from the files navigation\n */\nexport function useNavigation() {\n const navigation = getNavigation();\n const views = shallowRef(navigation.views);\n const currentView = shallowRef(navigation.active);\n /**\n * Event listener to update the `currentView`\n * @param event The update event\n */\n function onUpdateActive(event) {\n currentView.value = event.detail;\n }\n /**\n * Event listener to update all registered views\n */\n function onUpdateViews() {\n views.value = navigation.views;\n }\n onMounted(() => {\n navigation.addEventListener('update', onUpdateViews);\n navigation.addEventListener('updateActive', onUpdateActive);\n });\n onUnmounted(() => {\n navigation.removeEventListener('update', onUpdateViews);\n navigation.removeEventListener('updateActive', onUpdateActive);\n });\n return {\n currentView,\n views,\n };\n}\n","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { defineStore } from 'pinia';\nimport { emit, subscribe } from '@nextcloud/event-bus';\nimport { generateUrl } from '@nextcloud/router';\nimport { loadState } from '@nextcloud/initial-state';\nimport axios from '@nextcloud/axios';\nimport Vue from 'vue';\nconst viewConfig = loadState('files', 'viewConfigs', {});\nexport const useViewConfigStore = function (...args) {\n const store = defineStore('viewconfig', {\n state: () => ({\n viewConfig,\n }),\n getters: {\n getConfig: (state) => (view) => state.viewConfig[view] || {},\n },\n actions: {\n /**\n * Update the view config local store\n */\n onUpdate(view, key, value) {\n if (!this.viewConfig[view]) {\n Vue.set(this.viewConfig, view, {});\n }\n Vue.set(this.viewConfig[view], key, value);\n },\n /**\n * Update the view config local store AND on server side\n */\n async update(view, key, value) {\n axios.put(generateUrl(`/apps/files/api/v1/views/${view}/${key}`), {\n value,\n });\n emit('files:viewconfig:updated', { view, key, value });\n },\n /**\n * Set the sorting key AND sort by ASC\n * The key param must be a valid key of a File object\n * If not found, will be searched within the File attributes\n */\n setSortingBy(key = 'basename', view = 'files') {\n // Save new config\n this.update(view, 'sorting_mode', key);\n this.update(view, 'sorting_direction', 'asc');\n },\n /**\n * Toggle the sorting direction\n */\n toggleSortingDirection(view = 'files') {\n const config = this.getConfig(view) || { sorting_direction: 'asc' };\n const newDirection = config.sorting_direction === 'asc' ? 'desc' : 'asc';\n // Save new config\n this.update(view, 'sorting_direction', newDirection);\n },\n },\n });\n const viewConfigStore = store(...args);\n // Make sure we only register the listeners once\n if (!viewConfigStore._initialized) {\n subscribe('files:viewconfig:updated', function ({ view, key, value }) {\n viewConfigStore.onUpdate(view, key, value);\n });\n viewConfigStore._initialized = true;\n }\n return viewConfigStore;\n};\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Navigation.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Navigation.vue?vue&type=script&lang=ts\"","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('NcAppNavigation',{attrs:{\"data-cy-files-navigation\":\"\",\"aria-label\":_vm.t('files', 'Files')},scopedSlots:_vm._u([{key:\"list\",fn:function(){return _vm._l((_vm.parentViews),function(view){return _c('NcAppNavigationItem',{key:view.id,attrs:{\"allow-collapse\":true,\"data-cy-files-navigation-item\":view.id,\"exact\":_vm.useExactRouteMatching(view),\"icon\":view.iconClass,\"name\":view.name,\"open\":_vm.isExpanded(view),\"pinned\":view.sticky,\"to\":_vm.generateToNavigation(view)},on:{\"update:open\":function($event){return _vm.onToggleExpand(view)}}},[(view.icon)?_c('NcIconSvgWrapper',{attrs:{\"slot\":\"icon\",\"svg\":view.icon},slot:\"icon\"}):_vm._e(),_vm._v(\" \"),_vm._l((_vm.childViews[view.id]),function(child){return _c('NcAppNavigationItem',{key:child.id,attrs:{\"data-cy-files-navigation-item\":child.id,\"exact-path\":true,\"icon\":child.iconClass,\"name\":child.name,\"to\":_vm.generateToNavigation(child)}},[(child.icon)?_c('NcIconSvgWrapper',{attrs:{\"slot\":\"icon\",\"svg\":child.icon},slot:\"icon\"}):_vm._e()],1)})],2)})},proxy:true},{key:\"footer\",fn:function(){return [_c('ul',{staticClass:\"app-navigation-entry__settings\"},[_c('NavigationQuota'),_vm._v(\" \"),_c('NcAppNavigationItem',{attrs:{\"aria-label\":_vm.t('files', 'Open the files app settings'),\"name\":_vm.t('files', 'Files settings'),\"data-cy-files-navigation-settings-button\":\"\"},on:{\"click\":function($event){$event.preventDefault();$event.stopPropagation();return _vm.openSettings.apply(null, arguments)}}},[_c('IconCog',{attrs:{\"slot\":\"icon\",\"size\":20},slot:\"icon\"})],1)],1)]},proxy:true}])},[_vm._v(\" \"),_vm._v(\" \"),_c('SettingsModal',{attrs:{\"open\":_vm.settingsOpened,\"data-cy-files-navigation-settings\":\"\"},on:{\"close\":_vm.onSettingsClose}})],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Navigation.vue?vue&type=style&index=0&id=66457116&prod&scoped=true&lang=scss\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Navigation.vue?vue&type=style&index=0&id=66457116&prod&scoped=true&lang=scss\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./Navigation.vue?vue&type=template&id=66457116&scoped=true\"\nimport script from \"./Navigation.vue?vue&type=script&lang=ts\"\nexport * from \"./Navigation.vue?vue&type=script&lang=ts\"\nimport style0 from \"./Navigation.vue?vue&type=style&index=0&id=66457116&prod&scoped=true&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"66457116\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('NcAppContent',{attrs:{\"page-heading\":_vm.pageHeading,\"data-cy-files-content\":\"\"}},[_c('div',{staticClass:\"files-list__header\"},[_c('BreadCrumbs',{attrs:{\"path\":_vm.dir},on:{\"reload\":_vm.fetchContent},scopedSlots:_vm._u([{key:\"actions\",fn:function(){return [(_vm.canShare && _vm.filesListWidth >= 512)?_c('NcButton',{staticClass:\"files-list__header-share-button\",class:{ 'files-list__header-share-button--shared': _vm.shareButtonType },attrs:{\"aria-label\":_vm.shareButtonLabel,\"title\":_vm.shareButtonLabel,\"type\":\"tertiary\"},on:{\"click\":_vm.openSharingSidebar},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [(_vm.shareButtonType === _vm.Type.SHARE_TYPE_LINK)?_c('LinkIcon'):_c('AccountPlusIcon',{attrs:{\"size\":20}})]},proxy:true}],null,false,2969853559)}):_vm._e(),_vm._v(\" \"),(!_vm.canUpload || _vm.isQuotaExceeded)?_c('NcButton',{staticClass:\"files-list__header-upload-button--disabled\",attrs:{\"aria-label\":_vm.cantUploadLabel,\"title\":_vm.cantUploadLabel,\"disabled\":true,\"type\":\"secondary\"},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('PlusIcon',{attrs:{\"size\":20}})]},proxy:true}],null,false,2953566425)},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('files', 'New'))+\"\\n\\t\\t\\t\\t\")]):(_vm.currentFolder)?_c('UploadPicker',{staticClass:\"files-list__header-upload-button\",attrs:{\"allow-folders\":\"\",\"content\":_vm.getContent,\"destination\":_vm.currentFolder,\"forbidden-characters\":_vm.forbiddenCharacters,\"multiple\":\"\"},on:{\"failed\":_vm.onUploadFail,\"uploaded\":_vm.onUpload}}):_vm._e()]},proxy:true}])}),_vm._v(\" \"),(_vm.filesListWidth >= 512 && _vm.enableGridView)?_c('NcButton',{staticClass:\"files-list__header-grid-button\",attrs:{\"aria-label\":_vm.gridViewButtonLabel,\"title\":_vm.gridViewButtonLabel,\"type\":\"tertiary\"},on:{\"click\":_vm.toggleGridView},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [(_vm.userConfig.grid_view)?_c('ListViewIcon'):_c('ViewGridIcon')]},proxy:true}],null,false,1682960703)}):_vm._e(),_vm._v(\" \"),(_vm.isRefreshing)?_c('NcLoadingIcon',{staticClass:\"files-list__refresh-icon\"}):_vm._e()],1),_vm._v(\" \"),(!_vm.loading && _vm.canUpload)?_c('DragAndDropNotice',{attrs:{\"current-folder\":_vm.currentFolder}}):_vm._e(),_vm._v(\" \"),(_vm.loading && !_vm.isRefreshing)?_c('NcLoadingIcon',{staticClass:\"files-list__loading-icon\",attrs:{\"size\":38,\"name\":_vm.t('files', 'Loading current folder')}}):(!_vm.loading && _vm.isEmptyDir)?_c('NcEmptyContent',{attrs:{\"name\":_vm.currentView?.emptyTitle || _vm.t('files', 'No files in here'),\"description\":_vm.currentView?.emptyCaption || _vm.t('files', 'Upload some content or sync with your devices!'),\"data-cy-files-content-empty\":\"\"},scopedSlots:_vm._u([(_vm.dir !== '/')?{key:\"action\",fn:function(){return [(_vm.currentFolder && _vm.canUpload && !_vm.isQuotaExceeded)?_c('UploadPicker',{staticClass:\"files-list__header-upload-button\",attrs:{\"allow-folders\":\"\",\"content\":_vm.getContent,\"destination\":_vm.currentFolder,\"forbidden-characters\":_vm.forbiddenCharacters,\"multiple\":\"\"},on:{\"failed\":_vm.onUploadFail,\"uploaded\":_vm.onUpload}}):_c('NcButton',{attrs:{\"aria-label\":_vm.t('files', 'Go to the previous folder'),\"to\":_vm.toPreviousDir,\"type\":\"primary\"}},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('files', 'Go back'))+\"\\n\\t\\t\\t\")])]},proxy:true}:null,{key:\"icon\",fn:function(){return [_c('NcIconSvgWrapper',{attrs:{\"svg\":_vm.currentView.icon}})]},proxy:true}],null,true)}):_c('FilesListVirtual',{ref:\"filesListVirtual\",attrs:{\"current-folder\":_vm.currentFolder,\"current-view\":_vm.currentView,\"nodes\":_vm.dirContentsSorted}})],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./FormatListBulletedSquare.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./FormatListBulletedSquare.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./FormatListBulletedSquare.vue?vue&type=template&id=00aea13f\"\nimport script from \"./FormatListBulletedSquare.vue?vue&type=script&lang=js\"\nexport * from \"./FormatListBulletedSquare.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon format-list-bulleted-square-icon\",attrs:{\"aria-hidden\":_vm.title ? null : true,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M3,4H7V8H3V4M9,5V7H21V5H9M3,10H7V14H3V10M9,11V13H21V11H9M3,16H7V20H3V16M9,17V19H21V17H9\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./AccountPlus.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./AccountPlus.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./AccountPlus.vue?vue&type=template&id=a16afc28\"\nimport script from \"./AccountPlus.vue?vue&type=script&lang=js\"\nexport * from \"./AccountPlus.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon account-plus-icon\",attrs:{\"aria-hidden\":_vm.title ? null : true,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M15,14C12.33,14 7,15.33 7,18V20H23V18C23,15.33 17.67,14 15,14M6,10V7H4V10H1V12H4V15H6V12H9V10M15,12A4,4 0 0,0 19,8A4,4 0 0,0 15,4A4,4 0 0,0 11,8A4,4 0 0,0 15,12Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./ViewGrid.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./ViewGrid.vue?vue&type=script&lang=js\"","\n\n","import { render, staticRenderFns } from \"./ViewGrid.vue?vue&type=template&id=7b96a104\"\nimport script from \"./ViewGrid.vue?vue&type=script&lang=js\"\nexport * from \"./ViewGrid.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon view-grid-icon\",attrs:{\"aria-hidden\":_vm.title ? null : true,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M3,11H11V3H3M3,21H11V13H3M13,21H21V13H13M13,3V11H21V3\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { Permission, View, FileAction, FileType } from '@nextcloud/files';\nimport { translate as t } from '@nextcloud/l10n';\nimport InformationSvg from '@mdi/svg/svg/information-variant.svg?raw';\nimport logger from '../logger.js';\nexport const ACTION_DETAILS = 'details';\nexport const action = new FileAction({\n id: ACTION_DETAILS,\n displayName: () => t('files', 'Open details'),\n iconSvgInline: () => InformationSvg,\n // Sidebar currently supports user folder only, /files/USER\n enabled: (nodes) => {\n // Only works on single node\n if (nodes.length !== 1) {\n return false;\n }\n if (!nodes[0]) {\n return false;\n }\n // Only work if the sidebar is available\n if (!window?.OCA?.Files?.Sidebar) {\n return false;\n }\n return (nodes[0].root?.startsWith('/files/') && nodes[0].permissions !== Permission.NONE) ?? false;\n },\n async exec(node, view, dir) {\n try {\n // TODO: migrate Sidebar to use a Node instead\n await window.OCA.Files.Sidebar.open(node.path);\n // Silently update current fileid\n window.OCP.Files.Router.goToRoute(null, { view: view.id, fileid: node.fileid }, { ...window.OCP.Files.Router.query, dir }, true);\n return null;\n }\n catch (error) {\n logger.error('Error while opening sidebar', { error });\n return false;\n }\n },\n order: -50,\n});\n","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { davGetClient } from '@nextcloud/files';\nexport const client = davGetClient();\n","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { davGetDefaultPropfind, davResultToNode, davRootPath } from '@nextcloud/files';\nimport { defineStore } from 'pinia';\nimport { subscribe } from '@nextcloud/event-bus';\nimport logger from '../logger';\nimport Vue from 'vue';\nimport { client } from '../services/WebdavClient.ts';\nconst fetchNode = async (node) => {\n const propfindPayload = davGetDefaultPropfind();\n const result = await client.stat(`${davRootPath}${node.path}`, {\n details: true,\n data: propfindPayload,\n });\n return davResultToNode(result.data);\n};\nexport const useFilesStore = function (...args) {\n const store = defineStore('files', {\n state: () => ({\n files: {},\n roots: {},\n }),\n getters: {\n /**\n * Get a file or folder by its source\n */\n getNode: (state) => (source) => state.files[source],\n /**\n * Get a list of files or folders by their IDs\n * Note: does not return undefined values\n */\n getNodes: (state) => (sources) => sources\n .map(source => state.files[source])\n .filter(Boolean),\n /**\n * Get files or folders by their file ID\n * Multiple nodes can have the same file ID but different sources\n * (e.g. in a shared context)\n */\n getNodesById: (state) => (fileId) => Object.values(state.files).filter(node => node.fileid === fileId),\n /**\n * Get the root folder of a service\n */\n getRoot: (state) => (service) => state.roots[service],\n },\n actions: {\n updateNodes(nodes) {\n // Update the store all at once\n const files = nodes.reduce((acc, node) => {\n if (!node.fileid) {\n logger.error('Trying to update/set a node without fileid', { node });\n return acc;\n }\n acc[node.source] = node;\n return acc;\n }, {});\n Vue.set(this, 'files', { ...this.files, ...files });\n },\n deleteNodes(nodes) {\n nodes.forEach(node => {\n if (node.source) {\n Vue.delete(this.files, node.source);\n }\n });\n },\n setRoot({ service, root }) {\n Vue.set(this.roots, service, root);\n },\n onDeletedNode(node) {\n this.deleteNodes([node]);\n },\n onCreatedNode(node) {\n this.updateNodes([node]);\n },\n async onUpdatedNode(node) {\n if (!node.fileid) {\n logger.error('Trying to update/set a node without fileid', { node });\n return;\n }\n // If we have multiple nodes with the same file ID, we need to update all of them\n const nodes = this.getNodesById(node.fileid);\n if (nodes.length > 1) {\n await Promise.all(nodes.map(fetchNode)).then(this.updateNodes);\n logger.debug(nodes.length + ' nodes updated in store', { fileid: node.fileid });\n return;\n }\n // If we have only one node with the file ID, we can update it directly\n if (node.source === nodes[0].source) {\n this.updateNodes([node]);\n return;\n }\n // Otherwise, it means we receive an event for a node that is not in the store\n fetchNode(node).then(n => this.updateNodes([n]));\n },\n },\n });\n const fileStore = store(...args);\n // Make sure we only register the listeners once\n if (!fileStore._initialized) {\n subscribe('files:node:created', fileStore.onCreatedNode);\n subscribe('files:node:deleted', fileStore.onDeletedNode);\n subscribe('files:node:updated', fileStore.onUpdatedNode);\n fileStore._initialized = true;\n }\n return fileStore;\n};\n","import { defineStore } from 'pinia';\nimport { FileType, Folder, Node, getNavigation } from '@nextcloud/files';\nimport { subscribe } from '@nextcloud/event-bus';\nimport Vue from 'vue';\nimport logger from '../logger';\nimport { useFilesStore } from './files';\nexport const usePathsStore = function (...args) {\n const files = useFilesStore(...args);\n const store = defineStore('paths', {\n state: () => ({\n paths: {},\n }),\n getters: {\n getPath: (state) => {\n return (service, path) => {\n if (!state.paths[service]) {\n return undefined;\n }\n return state.paths[service][path];\n };\n },\n },\n actions: {\n addPath(payload) {\n // If it doesn't exists, init the service state\n if (!this.paths[payload.service]) {\n Vue.set(this.paths, payload.service, {});\n }\n // Now we can set the provided path\n Vue.set(this.paths[payload.service], payload.path, payload.source);\n },\n onCreatedNode(node) {\n const service = getNavigation()?.active?.id || 'files';\n if (!node.fileid) {\n logger.error('Node has no fileid', { node });\n return;\n }\n // Only add path if it's a folder\n if (node.type === FileType.Folder) {\n this.addPath({\n service,\n path: node.path,\n source: node.source,\n });\n }\n // Update parent folder children if exists\n // If the folder is the root, get it and update it\n if (node.dirname === '/') {\n const root = files.getRoot(service);\n if (!root._children) {\n Vue.set(root, '_children', []);\n }\n root._children.push(node.source);\n return;\n }\n // If the folder doesn't exists yet, it will be\n // fetched later and its children updated anyway.\n if (this.paths[service][node.dirname]) {\n const parentSource = this.paths[service][node.dirname];\n const parentFolder = files.getNode(parentSource);\n logger.debug('Path already exists, updating children', { parentFolder, node });\n if (!parentFolder) {\n logger.error('Parent folder not found', { parentSource });\n return;\n }\n if (!parentFolder._children) {\n Vue.set(parentFolder, '_children', []);\n }\n parentFolder._children.push(node.source);\n return;\n }\n logger.debug('Parent path does not exists, skipping children update', { node });\n },\n },\n });\n const pathsStore = store(...args);\n // Make sure we only register the listeners once\n if (!pathsStore._initialized) {\n // TODO: watch folders to update paths?\n subscribe('files:node:created', pathsStore.onCreatedNode);\n // subscribe('files:node:deleted', pathsStore.onDeletedNode)\n // subscribe('files:node:moved', pathsStore.onMovedNode)\n pathsStore._initialized = true;\n }\n return pathsStore;\n};\n","import { defineStore } from 'pinia';\nimport Vue from 'vue';\nexport const useSelectionStore = defineStore('selection', {\n state: () => ({\n selected: [],\n lastSelection: [],\n lastSelectedIndex: null,\n }),\n actions: {\n /**\n * Set the selection of fileIds\n */\n set(selection = []) {\n Vue.set(this, 'selected', [...new Set(selection)]);\n },\n /**\n * Set the last selected index\n */\n setLastIndex(lastSelectedIndex = null) {\n // Update the last selection if we provided a new selection starting point\n Vue.set(this, 'lastSelection', lastSelectedIndex ? this.selected : []);\n Vue.set(this, 'lastSelectedIndex', lastSelectedIndex);\n },\n /**\n * Reset the selection\n */\n reset() {\n Vue.set(this, 'selected', []);\n Vue.set(this, 'lastSelection', []);\n Vue.set(this, 'lastSelectedIndex', null);\n },\n },\n});\n","import { defineStore } from 'pinia';\nimport { getUploader } from '@nextcloud/upload';\nlet uploader;\nexport const useUploaderStore = function (...args) {\n // Only init on runtime\n uploader = getUploader();\n const store = defineStore('uploader', {\n state: () => ({\n queue: uploader.queue,\n }),\n });\n return store(...args);\n};\n","/**\n * SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { getCanonicalLocale, getLanguage } from '@nextcloud/l10n';\n/**\n * Helper to create string representation\n * @param value Value to stringify\n */\nfunction stringify(value) {\n // The default representation of Date is not sortable because of the weekday names in front of it\n if (value instanceof Date) {\n return value.toISOString();\n }\n return String(value);\n}\n/**\n * Natural order a collection\n * You can define identifiers as callback functions, that get the element and return the value to sort.\n *\n * @param collection The collection to order\n * @param identifiers An array of identifiers to use, by default the identity of the element is used\n * @param orders Array of orders, by default all identifiers are sorted ascening\n */\nexport function orderBy(collection, identifiers, orders) {\n // If not identifiers are set we use the identity of the value\n identifiers = identifiers ?? [(value) => value];\n // By default sort the collection ascending\n orders = orders ?? [];\n const sorting = identifiers.map((_, index) => (orders[index] ?? 'asc') === 'asc' ? 1 : -1);\n const collator = Intl.Collator([getLanguage(), getCanonicalLocale()], {\n // handle 10 as ten and not as one-zero\n numeric: true,\n usage: 'sort',\n });\n return [...collection].sort((a, b) => {\n for (const [index, identifier] of identifiers.entries()) {\n // Get the local compare of stringified value a and b\n const value = collator.compare(stringify(identifier(a)), stringify(identifier(b)));\n // If they do not match return the order\n if (value !== 0) {\n return value * sorting[index];\n }\n // If they match we need to continue with the next identifier\n }\n // If all are equal we need to return equality\n return 0;\n });\n}\n","import { emit } from '@nextcloud/event-bus';\nimport { Folder, Node, davGetClient, davGetDefaultPropfind, davResultToNode } from '@nextcloud/files';\nimport { openConflictPicker } from '@nextcloud/upload';\nimport { showError, showInfo } from '@nextcloud/dialogs';\nimport { translate as t } from '@nextcloud/l10n';\nimport logger from '../logger.js';\n/**\n * This represents a Directory in the file tree\n * We extend the File class to better handling uploading\n * and stay as close as possible as the Filesystem API.\n * This also allow us to hijack the size or lastModified\n * properties to compute them dynamically.\n */\nexport class Directory extends File {\n /* eslint-disable no-use-before-define */\n _contents;\n constructor(name, contents = []) {\n super([], name, { type: 'httpd/unix-directory' });\n this._contents = contents;\n }\n set contents(contents) {\n this._contents = contents;\n }\n get contents() {\n return this._contents;\n }\n get size() {\n return this._computeDirectorySize(this);\n }\n get lastModified() {\n if (this._contents.length === 0) {\n return Date.now();\n }\n return this._computeDirectoryMtime(this);\n }\n /**\n * Get the last modification time of a file tree\n * This is not perfect, but will get us a pretty good approximation\n * @param directory the directory to traverse\n */\n _computeDirectoryMtime(directory) {\n return directory.contents.reduce((acc, file) => {\n return file.lastModified > acc\n // If the file is a directory, the lastModified will\n // also return the results of its _computeDirectoryMtime method\n // Fancy recursion, huh?\n ? file.lastModified\n : acc;\n }, 0);\n }\n /**\n * Get the size of a file tree\n * @param directory the directory to traverse\n */\n _computeDirectorySize(directory) {\n return directory.contents.reduce((acc, entry) => {\n // If the file is a directory, the size will\n // also return the results of its _computeDirectorySize method\n // Fancy recursion, huh?\n return acc + entry.size;\n }, 0);\n }\n}\n/**\n * Traverse a file tree using the Filesystem API\n * @param entry the entry to traverse\n */\nexport const traverseTree = async (entry) => {\n // Handle file\n if (entry.isFile) {\n return new Promise((resolve, reject) => {\n entry.file(resolve, reject);\n });\n }\n // Handle directory\n logger.debug('Handling recursive file tree', { entry: entry.name });\n const directory = entry;\n const entries = await readDirectory(directory);\n const contents = (await Promise.all(entries.map(traverseTree))).flat();\n return new Directory(directory.name, contents);\n};\n/**\n * Read a directory using Filesystem API\n * @param directory the directory to read\n */\nconst readDirectory = (directory) => {\n const dirReader = directory.createReader();\n return new Promise((resolve, reject) => {\n const entries = [];\n const getEntries = () => {\n dirReader.readEntries((results) => {\n if (results.length) {\n entries.push(...results);\n getEntries();\n }\n else {\n resolve(entries);\n }\n }, (error) => {\n reject(error);\n });\n };\n getEntries();\n });\n};\nexport const createDirectoryIfNotExists = async (absolutePath) => {\n const davClient = davGetClient();\n const dirExists = await davClient.exists(absolutePath);\n if (!dirExists) {\n logger.debug('Directory does not exist, creating it', { absolutePath });\n await davClient.createDirectory(absolutePath, { recursive: true });\n const stat = await davClient.stat(absolutePath, { details: true, data: davGetDefaultPropfind() });\n emit('files:node:created', davResultToNode(stat.data));\n }\n};\nexport const resolveConflict = async (files, destination, contents) => {\n try {\n // List all conflicting files\n const conflicts = files.filter((file) => {\n return contents.find((node) => node.basename === (file instanceof File ? file.name : file.basename));\n }).filter(Boolean);\n // List of incoming files that are NOT in conflict\n const uploads = files.filter((file) => {\n return !conflicts.includes(file);\n });\n // Let the user choose what to do with the conflicting files\n const { selected, renamed } = await openConflictPicker(destination.path, conflicts, contents);\n logger.debug('Conflict resolution', { uploads, selected, renamed });\n // If the user selected nothing, we cancel the upload\n if (selected.length === 0 && renamed.length === 0) {\n // User skipped\n showInfo(t('files', 'Conflicts resolution skipped'));\n logger.info('User skipped the conflict resolution');\n return [];\n }\n // Update the list of files to upload\n return [...uploads, ...selected, ...renamed];\n }\n catch (error) {\n console.error(error);\n // User cancelled\n showError(t('files', 'Upload cancelled'));\n logger.error('User cancelled the upload');\n }\n return [];\n};\n","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { Permission } from '@nextcloud/files';\nimport PQueue from 'p-queue';\n// This is the processing queue. We only want to allow 3 concurrent requests\nlet queue;\n/**\n * Get the processing queue\n */\nexport const getQueue = () => {\n if (!queue) {\n queue = new PQueue({ concurrency: 3 });\n }\n return queue;\n};\nexport var MoveCopyAction;\n(function (MoveCopyAction) {\n MoveCopyAction[\"MOVE\"] = \"Move\";\n MoveCopyAction[\"COPY\"] = \"Copy\";\n MoveCopyAction[\"MOVE_OR_COPY\"] = \"move-or-copy\";\n})(MoveCopyAction || (MoveCopyAction = {}));\nexport const canMove = (nodes) => {\n const minPermission = nodes.reduce((min, node) => Math.min(min, node.permissions), Permission.ALL);\n return (minPermission & Permission.UPDATE) !== 0;\n};\nexport const canDownload = (nodes) => {\n return nodes.every(node => {\n const shareAttributes = JSON.parse(node.attributes?.['share-attributes'] ?? '[]');\n return !shareAttributes.some(attribute => attribute.scope === 'permissions' && attribute.enabled === false && attribute.key === 'download');\n });\n};\nexport const canCopy = (nodes) => {\n // a shared file cannot be copied if the download is disabled\n // it can be copied if the user has at least read permissions\n return canDownload(nodes)\n && !nodes.some(node => node.permissions === Permission.NONE);\n};\n","import { CancelablePromise } from 'cancelable-promise';\nimport { File, Folder, davGetDefaultPropfind, davResultToNode, davRootPath } from '@nextcloud/files';\nimport { client } from './WebdavClient.ts';\nimport logger from '../logger.js';\n/**\n * Slim wrapper over `@nextcloud/files` `davResultToNode` to allow using the function with `Array.map`\n * @param node The node returned by the webdav library\n */\nexport const resultToNode = (node) => davResultToNode(node);\nexport const getContents = (path = '/') => {\n const controller = new AbortController();\n const propfindPayload = davGetDefaultPropfind();\n path = `${davRootPath}${path}`;\n return new CancelablePromise(async (resolve, reject, onCancel) => {\n onCancel(() => controller.abort());\n try {\n const contentsResponse = await client.getDirectoryContents(path, {\n details: true,\n data: propfindPayload,\n includeSelf: true,\n signal: controller.signal,\n });\n const root = contentsResponse.data[0];\n const contents = contentsResponse.data.slice(1);\n if (root.filename !== path && `${root.filename}/` !== path) {\n logger.debug(`Exepected \"${path}\" but got filename \"${root.filename}\" instead.`);\n throw new Error('Root node does not match requested path');\n }\n resolve({\n folder: resultToNode(root),\n contents: contents.map((result) => {\n try {\n return resultToNode(result);\n }\n catch (error) {\n logger.error(`Invalid node detected '${result.basename}'`, { error });\n return null;\n }\n }).filter(Boolean),\n });\n }\n catch (error) {\n reject(error);\n }\n });\n};\n","import { isAxiosError } from '@nextcloud/axios';\nimport { FilePickerClosed, getFilePickerBuilder, showError } from '@nextcloud/dialogs';\nimport { emit } from '@nextcloud/event-bus';\nimport { FileAction, FileType, NodeStatus, davGetClient, davRootPath, davResultToNode, davGetDefaultPropfind, getUniqueName } from '@nextcloud/files';\nimport { translate as t } from '@nextcloud/l10n';\nimport { openConflictPicker, hasConflict } from '@nextcloud/upload';\nimport { basename, join } from 'path';\nimport Vue from 'vue';\nimport CopyIconSvg from '@mdi/svg/svg/folder-multiple.svg?raw';\nimport FolderMoveSvg from '@mdi/svg/svg/folder-move.svg?raw';\nimport { MoveCopyAction, canCopy, canMove, getQueue } from './moveOrCopyActionUtils';\nimport { getContents } from '../services/Files';\nimport logger from '../logger';\n/**\n * Return the action that is possible for the given nodes\n * @param {Node[]} nodes The nodes to check against\n * @return {MoveCopyAction} The action that is possible for the given nodes\n */\nconst getActionForNodes = (nodes) => {\n if (canMove(nodes)) {\n if (canCopy(nodes)) {\n return MoveCopyAction.MOVE_OR_COPY;\n }\n return MoveCopyAction.MOVE;\n }\n // Assuming we can copy as the enabled checks for copy permissions\n return MoveCopyAction.COPY;\n};\n/**\n * Handle the copy/move of a node to a destination\n * This can be imported and used by other scripts/components on server\n * @param {Node} node The node to copy/move\n * @param {Folder} destination The destination to copy/move the node to\n * @param {MoveCopyAction} method The method to use for the copy/move\n * @param {boolean} overwrite Whether to overwrite the destination if it exists\n * @return {Promise} A promise that resolves when the copy/move is done\n */\nexport const handleCopyMoveNodeTo = async (node, destination, method, overwrite = false) => {\n if (!destination) {\n return;\n }\n if (destination.type !== FileType.Folder) {\n throw new Error(t('files', 'Destination is not a folder'));\n }\n // Do not allow to MOVE a node to the same folder it is already located\n if (method === MoveCopyAction.MOVE && node.dirname === destination.path) {\n throw new Error(t('files', 'This file/folder is already in that directory'));\n }\n /**\n * Example:\n * - node: /foo/bar/file.txt -> path = /foo/bar/file.txt, destination: /foo\n * Allow move of /foo does not start with /foo/bar/file.txt so allow\n * - node: /foo , destination: /foo/bar\n * Do not allow as it would copy foo within itself\n * - node: /foo/bar.txt, destination: /foo\n * Allow copy a file to the same directory\n * - node: \"/foo/bar\", destination: \"/foo/bar 1\"\n * Allow to move or copy but we need to check with trailing / otherwise it would report false positive\n */\n if (`${destination.path}/`.startsWith(`${node.path}/`)) {\n throw new Error(t('files', 'You cannot move a file/folder onto itself or into a subfolder of itself'));\n }\n // Set loading state\n Vue.set(node, 'status', NodeStatus.LOADING);\n const queue = getQueue();\n return await queue.add(async () => {\n const copySuffix = (index) => {\n if (index === 1) {\n return t('files', '(copy)'); // TRANSLATORS: Mark a file as a copy of another file\n }\n return t('files', '(copy %n)', undefined, index); // TRANSLATORS: Meaning it is the n'th copy of a file\n };\n try {\n const client = davGetClient();\n const currentPath = join(davRootPath, node.path);\n const destinationPath = join(davRootPath, destination.path);\n if (method === MoveCopyAction.COPY) {\n let target = node.basename;\n // If we do not allow overwriting then find an unique name\n if (!overwrite) {\n const otherNodes = await client.getDirectoryContents(destinationPath);\n target = getUniqueName(node.basename, otherNodes.map((n) => n.basename), {\n suffix: copySuffix,\n ignoreFileExtension: node.type === FileType.Folder,\n });\n }\n await client.copyFile(currentPath, join(destinationPath, target));\n // If the node is copied into current directory the view needs to be updated\n if (node.dirname === destination.path) {\n const { data } = await client.stat(join(destinationPath, target), {\n details: true,\n data: davGetDefaultPropfind(),\n });\n emit('files:node:created', davResultToNode(data));\n }\n }\n else {\n // show conflict file popup if we do not allow overwriting\n const otherNodes = await getContents(destination.path);\n if (hasConflict([node], otherNodes.contents)) {\n try {\n // Let the user choose what to do with the conflicting files\n const { selected, renamed } = await openConflictPicker(destination.path, [node], otherNodes.contents);\n // if the user selected to keep the old file, and did not select the new file\n // that means they opted to delete the current node\n if (!selected.length && !renamed.length) {\n await client.deleteFile(currentPath);\n emit('files:node:deleted', node);\n return;\n }\n }\n catch (error) {\n // User cancelled\n showError(t('files', 'Move cancelled'));\n return;\n }\n }\n // getting here means either no conflict, file was renamed to keep both files\n // in a conflict, or the selected file was chosen to be kept during the conflict\n await client.moveFile(currentPath, join(destinationPath, node.basename));\n // Delete the node as it will be fetched again\n // when navigating to the destination folder\n emit('files:node:deleted', node);\n }\n }\n catch (error) {\n if (isAxiosError(error)) {\n if (error.response?.status === 412) {\n throw new Error(t('files', 'A file or folder with that name already exists in this folder'));\n }\n else if (error.response?.status === 423) {\n throw new Error(t('files', 'The files are locked'));\n }\n else if (error.response?.status === 404) {\n throw new Error(t('files', 'The file does not exist anymore'));\n }\n else if (error.message) {\n throw new Error(error.message);\n }\n }\n logger.debug(error);\n throw new Error();\n }\n finally {\n Vue.set(node, 'status', undefined);\n }\n });\n};\n/**\n * Open a file picker for the given action\n * @param {MoveCopyAction} action The action to open the file picker for\n * @param {string} dir The directory to start the file picker in\n * @param {Node[]} nodes The nodes to move/copy\n * @return {Promise} The picked destination\n */\nconst openFilePickerForAction = async (action, dir = '/', nodes) => {\n const fileIDs = nodes.map(node => node.fileid).filter(Boolean);\n const filePicker = getFilePickerBuilder(t('files', 'Choose destination'))\n .allowDirectories(true)\n .setFilter((n) => {\n // We don't want to show the current nodes in the file picker\n return !fileIDs.includes(n.fileid);\n })\n .setMimeTypeFilter([])\n .setMultiSelect(false)\n .startAt(dir);\n return new Promise((resolve, reject) => {\n filePicker.setButtonFactory((selection, path) => {\n const buttons = [];\n const target = basename(path);\n const dirnames = nodes.map(node => node.dirname);\n const paths = nodes.map(node => node.path);\n if (action === MoveCopyAction.COPY || action === MoveCopyAction.MOVE_OR_COPY) {\n buttons.push({\n label: target ? t('files', 'Copy to {target}', { target }, undefined, { escape: false, sanitize: false }) : t('files', 'Copy'),\n type: 'primary',\n icon: CopyIconSvg,\n async callback(destination) {\n resolve({\n destination: destination[0],\n action: MoveCopyAction.COPY,\n });\n },\n });\n }\n // Invalid MOVE targets (but valid copy targets)\n if (dirnames.includes(path)) {\n // This file/folder is already in that directory\n return buttons;\n }\n if (paths.includes(path)) {\n // You cannot move a file/folder onto itself\n return buttons;\n }\n if (action === MoveCopyAction.MOVE || action === MoveCopyAction.MOVE_OR_COPY) {\n buttons.push({\n label: target ? t('files', 'Move to {target}', { target }, undefined, { escape: false, sanitize: false }) : t('files', 'Move'),\n type: action === MoveCopyAction.MOVE ? 'primary' : 'secondary',\n icon: FolderMoveSvg,\n async callback(destination) {\n resolve({\n destination: destination[0],\n action: MoveCopyAction.MOVE,\n });\n },\n });\n }\n return buttons;\n });\n const picker = filePicker.build();\n picker.pick().catch((error) => {\n logger.debug(error);\n if (error instanceof FilePickerClosed) {\n reject(new Error(t('files', 'Cancelled move or copy operation')));\n }\n else {\n reject(new Error(t('files', 'Move or copy operation failed')));\n }\n });\n });\n};\nexport const action = new FileAction({\n id: 'move-copy',\n displayName(nodes) {\n switch (getActionForNodes(nodes)) {\n case MoveCopyAction.MOVE:\n return t('files', 'Move');\n case MoveCopyAction.COPY:\n return t('files', 'Copy');\n case MoveCopyAction.MOVE_OR_COPY:\n return t('files', 'Move or copy');\n }\n },\n iconSvgInline: () => FolderMoveSvg,\n enabled(nodes) {\n // We only support moving/copying files within the user folder\n if (!nodes.every(node => node.root?.startsWith('/files/'))) {\n return false;\n }\n return nodes.length > 0 && (canMove(nodes) || canCopy(nodes));\n },\n async exec(node, view, dir) {\n const action = getActionForNodes([node]);\n let result;\n try {\n result = await openFilePickerForAction(action, dir, [node]);\n }\n catch (e) {\n logger.error(e);\n return false;\n }\n try {\n await handleCopyMoveNodeTo(node, result.destination, result.action);\n return true;\n }\n catch (error) {\n if (error instanceof Error && !!error.message) {\n showError(error.message);\n // Silent action as we handle the toast\n return null;\n }\n return false;\n }\n },\n async execBatch(nodes, view, dir) {\n const action = getActionForNodes(nodes);\n const result = await openFilePickerForAction(action, dir, nodes);\n const promises = nodes.map(async (node) => {\n try {\n await handleCopyMoveNodeTo(node, result.destination, result.action);\n return true;\n }\n catch (error) {\n logger.error(`Failed to ${result.action} node`, { node, error });\n return false;\n }\n });\n // We need to keep the selection on error!\n // So we do not return null, and for batch action\n // we let the front handle the error.\n return await Promise.all(promises);\n },\n order: 15,\n});\n","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { Folder, Node, NodeStatus, davRootPath } from '@nextcloud/files';\nimport { getUploader, hasConflict } from '@nextcloud/upload';\nimport { join } from 'path';\nimport { joinPaths } from '@nextcloud/paths';\nimport { showError, showInfo, showSuccess, showWarning } from '@nextcloud/dialogs';\nimport { translate as t } from '@nextcloud/l10n';\nimport Vue from 'vue';\nimport { Directory, traverseTree, resolveConflict, createDirectoryIfNotExists } from './DropServiceUtils';\nimport { handleCopyMoveNodeTo } from '../actions/moveOrCopyAction';\nimport { MoveCopyAction } from '../actions/moveOrCopyActionUtils';\nimport logger from '../logger.js';\n/**\n * This function converts a list of DataTransferItems to a file tree.\n * It uses the Filesystem API if available, otherwise it falls back to the File API.\n * The File API will NOT be available if the browser is not in a secure context (e.g. HTTP).\n * ⚠️ When using this method, you need to use it as fast as possible, as the DataTransferItems\n * will be cleared after the first access to the props of one of the entries.\n *\n * @param items the list of DataTransferItems\n */\nexport const dataTransferToFileTree = async (items) => {\n // Check if the browser supports the Filesystem API\n // We need to cache the entries to prevent Blink engine bug that clears\n // the list (`data.items`) after first access props of one of the entries\n const entries = items\n .filter((item) => {\n if (item.kind !== 'file') {\n logger.debug('Skipping dropped item', { kind: item.kind, type: item.type });\n return false;\n }\n return true;\n }).map((item) => {\n // MDN recommends to try both, as it might be renamed in the future\n return item?.getAsEntry?.()\n ?? item?.webkitGetAsEntry?.()\n ?? item;\n });\n let warned = false;\n const fileTree = new Directory('root');\n // Traverse the file tree\n for (const entry of entries) {\n // Handle browser issues if Filesystem API is not available. Fallback to File API\n if (entry instanceof DataTransferItem) {\n logger.warn('Could not get FilesystemEntry of item, falling back to file');\n const file = entry.getAsFile();\n if (file === null) {\n logger.warn('Could not process DataTransferItem', { type: entry.type, kind: entry.kind });\n showError(t('files', 'One of the dropped files could not be processed'));\n continue;\n }\n // Warn the user that the browser does not support the Filesystem API\n // we therefore cannot upload directories recursively.\n if (file.type === 'httpd/unix-directory' || !file.type) {\n if (!warned) {\n logger.warn('Browser does not support Filesystem API. Directories will not be uploaded');\n showWarning(t('files', 'Your browser does not support the Filesystem API. Directories will not be uploaded'));\n warned = true;\n }\n continue;\n }\n fileTree.contents.push(file);\n continue;\n }\n // Use Filesystem API\n try {\n fileTree.contents.push(await traverseTree(entry));\n }\n catch (error) {\n // Do not throw, as we want to continue with the other files\n logger.error('Error while traversing file tree', { error });\n }\n }\n return fileTree;\n};\nexport const onDropExternalFiles = async (root, destination, contents) => {\n const uploader = getUploader();\n // Check for conflicts on root elements\n if (await hasConflict(root.contents, contents)) {\n root.contents = await resolveConflict(root.contents, destination, contents);\n }\n if (root.contents.length === 0) {\n logger.info('No files to upload', { root });\n showInfo(t('files', 'No files to upload'));\n return [];\n }\n // Let's process the files\n logger.debug(`Uploading files to ${destination.path}`, { root, contents: root.contents });\n const queue = [];\n const uploadDirectoryContents = async (directory, path) => {\n for (const file of directory.contents) {\n // This is the relative path to the resource\n // from the current uploader destination\n const relativePath = join(path, file.name);\n // If the file is a directory, we need to create it first\n // then browse its tree and upload its contents.\n if (file instanceof Directory) {\n const absolutePath = joinPaths(davRootPath, destination.path, relativePath);\n try {\n console.debug('Processing directory', { relativePath });\n await createDirectoryIfNotExists(absolutePath);\n await uploadDirectoryContents(file, relativePath);\n }\n catch (error) {\n showError(t('files', 'Unable to create the directory {directory}', { directory: file.name }));\n logger.error('', { error, absolutePath, directory: file });\n }\n continue;\n }\n // If we've reached a file, we can upload it\n logger.debug('Uploading file to ' + join(destination.path, relativePath), { file });\n // Overriding the root to avoid changing the current uploader context\n queue.push(uploader.upload(relativePath, file, destination.source));\n }\n };\n // Pause the uploader to prevent it from starting\n // while we compute the queue\n uploader.pause();\n // Upload the files. Using '/' as the starting point\n // as we already adjusted the uploader destination\n await uploadDirectoryContents(root, '/');\n uploader.start();\n // Wait for all promises to settle\n const results = await Promise.allSettled(queue);\n // Check for errors\n const errors = results.filter(result => result.status === 'rejected');\n if (errors.length > 0) {\n logger.error('Error while uploading files', { errors });\n showError(t('files', 'Some files could not be uploaded'));\n return [];\n }\n logger.debug('Files uploaded successfully');\n showSuccess(t('files', 'Files uploaded successfully'));\n return Promise.all(queue);\n};\nexport const onDropInternalFiles = async (nodes, destination, contents, isCopy = false) => {\n const queue = [];\n // Check for conflicts on root elements\n if (await hasConflict(nodes, contents)) {\n nodes = await resolveConflict(nodes, destination, contents);\n }\n if (nodes.length === 0) {\n logger.info('No files to process', { nodes });\n showInfo(t('files', 'No files to process'));\n return;\n }\n for (const node of nodes) {\n Vue.set(node, 'status', NodeStatus.LOADING);\n // TODO: resolve potential conflicts prior and force overwrite\n queue.push(handleCopyMoveNodeTo(node, destination, isCopy ? MoveCopyAction.COPY : MoveCopyAction.MOVE));\n }\n // Wait for all promises to settle\n const results = await Promise.allSettled(queue);\n nodes.forEach(node => Vue.set(node, 'status', undefined));\n // Check for errors\n const errors = results.filter(result => result.status === 'rejected');\n if (errors.length > 0) {\n logger.error('Error while copying or moving files', { errors });\n showError(isCopy ? t('files', 'Some files could not be copied') : t('files', 'Some files could not be moved'));\n return;\n }\n logger.debug('Files copy/move successful');\n showSuccess(isCopy ? t('files', 'Files copied successfully') : t('files', 'Files moved successfully'));\n};\n","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { defineStore } from 'pinia';\nimport Vue from 'vue';\nexport const useDragAndDropStore = defineStore('dragging', {\n state: () => ({\n dragging: [],\n }),\n actions: {\n /**\n * Set the selection of fileIds\n */\n set(selection = []) {\n Vue.set(this, 'dragging', selection);\n },\n /**\n * Reset the selection\n */\n reset() {\n Vue.set(this, 'dragging', []);\n },\n },\n});\n","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { defineComponent } from 'vue';\nexport default defineComponent({\n data() {\n return {\n filesListWidth: 0,\n };\n },\n mounted() {\n const fileListEl = document.querySelector('#app-content-vue');\n this.filesListWidth = fileListEl?.clientWidth ?? 0;\n // @ts-expect-error The resize observer is just now attached to the object\n this.$resizeObserver = new ResizeObserver((entries) => {\n if (entries.length > 0 && entries[0].target === fileListEl) {\n this.filesListWidth = entries[0].contentRect.width;\n }\n });\n // @ts-expect-error The resize observer was attached right before to the this object\n this.$resizeObserver.observe(fileListEl);\n },\n beforeDestroy() {\n // @ts-expect-error mounted must have been called before the destroy, so the resize\n this.$resizeObserver.disconnect();\n },\n});\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BreadCrumbs.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BreadCrumbs.vue?vue&type=script&lang=ts\"","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('NcBreadcrumbs',{staticClass:\"files-list__breadcrumbs\",class:{ 'files-list__breadcrumbs--with-progress': _vm.wrapUploadProgressBar },attrs:{\"data-cy-files-content-breadcrumbs\":\"\",\"aria-label\":_vm.t('files', 'Current directory path')},scopedSlots:_vm._u([{key:\"actions\",fn:function(){return [_vm._t(\"actions\")]},proxy:true}],null,true)},_vm._l((_vm.sections),function(section,index){return _c('NcBreadcrumb',_vm._b({key:section.dir,attrs:{\"dir\":\"auto\",\"to\":section.to,\"force-icon-text\":index === 0 && _vm.filesListWidth >= 486,\"title\":_vm.titleForSection(index, section),\"aria-description\":_vm.ariaForSection(section)},on:{\"drop\":function($event){return _vm.onDrop($event, section.dir)}},nativeOn:{\"click\":function($event){return _vm.onClick(section.to)},\"dragover\":function($event){return _vm.onDragOver($event, section.dir)}},scopedSlots:_vm._u([(index === 0)?{key:\"icon\",fn:function(){return [_c('NcIconSvgWrapper',{attrs:{\"size\":20,\"svg\":_vm.viewIcon}})]},proxy:true}:null],null,true)},'NcBreadcrumb',section,false))}),1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BreadCrumbs.vue?vue&type=style&index=0&id=7a939202&prod&lang=scss&scoped=true\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BreadCrumbs.vue?vue&type=style&index=0&id=7a939202&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./BreadCrumbs.vue?vue&type=template&id=7a939202&scoped=true\"\nimport script from \"./BreadCrumbs.vue?vue&type=script&lang=ts\"\nexport * from \"./BreadCrumbs.vue?vue&type=script&lang=ts\"\nimport style0 from \"./BreadCrumbs.vue?vue&type=style&index=0&id=7a939202&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"7a939202\",\n null\n \n)\n\nexport default component.exports","/**\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { FileType } from '@nextcloud/files';\nimport { translate as t, translatePlural as n } from '@nextcloud/l10n';\n/**\n * Extract dir and name from file path\n *\n * @param {string} path the full path\n * @return {string[]} [dirPath, fileName]\n */\nexport const extractFilePaths = function (path) {\n const pathSections = path.split('/');\n const fileName = pathSections[pathSections.length - 1];\n const dirPath = pathSections.slice(0, pathSections.length - 1).join('/');\n return [dirPath, fileName];\n};\n/**\n * Generate a translated summary of an array of nodes\n * @param {Node[]} nodes the nodes to summarize\n * @return {string}\n */\nexport const getSummaryFor = (nodes) => {\n const fileCount = nodes.filter(node => node.type === FileType.File).length;\n const folderCount = nodes.filter(node => node.type === FileType.Folder).length;\n if (fileCount === 0) {\n return n('files', '{folderCount} folder', '{folderCount} folders', folderCount, { folderCount });\n }\n else if (folderCount === 0) {\n return n('files', '{fileCount} file', '{fileCount} files', fileCount, { fileCount });\n }\n if (fileCount === 1) {\n return n('files', '1 file and {folderCount} folder', '1 file and {folderCount} folders', folderCount, { folderCount });\n }\n if (folderCount === 1) {\n return n('files', '{fileCount} file and 1 folder', '{fileCount} files and 1 folder', fileCount, { fileCount });\n }\n return t('files', '{fileCount} files and {folderCount} folders', { fileCount, folderCount });\n};\n","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('tr',_vm._g({staticClass:\"files-list__row\",class:{\n\t\t'files-list__row--dragover': _vm.dragover,\n\t\t'files-list__row--loading': _vm.isLoading,\n\t\t'files-list__row--active': _vm.isActive,\n\t},attrs:{\"data-cy-files-list-row\":\"\",\"data-cy-files-list-row-fileid\":_vm.fileid,\"data-cy-files-list-row-name\":_vm.source.basename,\"draggable\":_vm.canDrag}},_vm.rowListeners),[(_vm.isFailedSource)?_c('span',{staticClass:\"files-list__row--failed\"}):_vm._e(),_vm._v(\" \"),_c('FileEntryCheckbox',{attrs:{\"fileid\":_vm.fileid,\"is-loading\":_vm.isLoading,\"nodes\":_vm.nodes,\"source\":_vm.source}}),_vm._v(\" \"),_c('td',{staticClass:\"files-list__row-name\",attrs:{\"data-cy-files-list-row-name\":\"\"}},[_c('FileEntryPreview',{ref:\"preview\",attrs:{\"source\":_vm.source,\"dragover\":_vm.dragover},nativeOn:{\"auxclick\":function($event){return _vm.execDefaultAction.apply(null, arguments)},\"click\":function($event){return _vm.execDefaultAction.apply(null, arguments)}}}),_vm._v(\" \"),_c('FileEntryName',{ref:\"name\",attrs:{\"display-name\":_vm.displayName,\"extension\":_vm.extension,\"files-list-width\":_vm.filesListWidth,\"nodes\":_vm.nodes,\"source\":_vm.source},nativeOn:{\"auxclick\":function($event){return _vm.execDefaultAction.apply(null, arguments)},\"click\":function($event){return _vm.execDefaultAction.apply(null, arguments)}}})],1),_vm._v(\" \"),_c('FileEntryActions',{directives:[{name:\"show\",rawName:\"v-show\",value:(!_vm.isRenamingSmallScreen),expression:\"!isRenamingSmallScreen\"}],ref:\"actions\",class:`files-list__row-actions-${_vm.uniqueId}`,attrs:{\"files-list-width\":_vm.filesListWidth,\"loading\":_vm.loading,\"opened\":_vm.openedMenu,\"source\":_vm.source},on:{\"update:loading\":function($event){_vm.loading=$event},\"update:opened\":function($event){_vm.openedMenu=$event}}}),_vm._v(\" \"),(!_vm.compact && _vm.isSizeAvailable)?_c('td',{staticClass:\"files-list__row-size\",style:(_vm.sizeOpacity),attrs:{\"data-cy-files-list-row-size\":\"\"},on:{\"click\":_vm.openDetailsIfAvailable}},[_c('span',[_vm._v(_vm._s(_vm.size))])]):_vm._e(),_vm._v(\" \"),(!_vm.compact && _vm.isMtimeAvailable)?_c('td',{staticClass:\"files-list__row-mtime\",style:(_vm.mtimeOpacity),attrs:{\"data-cy-files-list-row-mtime\":\"\"},on:{\"click\":_vm.openDetailsIfAvailable}},[(_vm.source.mtime)?_c('NcDateTime',{attrs:{\"timestamp\":_vm.source.mtime,\"ignore-seconds\":true}}):_vm._e()],1):_vm._e(),_vm._v(\" \"),_vm._l((_vm.columns),function(column){return _c('td',{key:column.id,staticClass:\"files-list__row-column-custom\",class:`files-list__row-${_vm.currentView?.id}-${column.id}`,attrs:{\"data-cy-files-list-row-column-custom\":column.id},on:{\"click\":_vm.openDetailsIfAvailable}},[_c('CustomElementRender',{attrs:{\"current-view\":_vm.currentView,\"render\":column.render,\"source\":_vm.source}})],1)})],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { defineStore } from 'pinia';\nexport const useActionsMenuStore = defineStore('actionsmenu', {\n state: () => ({\n opened: null,\n }),\n});\n","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { defineStore } from 'pinia';\nimport { subscribe } from '@nextcloud/event-bus';\nexport const useRenamingStore = function (...args) {\n const store = defineStore('renaming', {\n state: () => ({\n renamingNode: undefined,\n newName: '',\n }),\n });\n const renamingStore = store(...args);\n // Make sure we only register the listeners once\n if (!renamingStore._initialized) {\n subscribe('files:node:rename', function (node) {\n renamingStore.renamingNode = node;\n renamingStore.newName = node.basename;\n });\n renamingStore._initialized = true;\n }\n return renamingStore;\n};\n","\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./FileMultiple.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./FileMultiple.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./FileMultiple.vue?vue&type=template&id=27b46e04\"\nimport script from \"./FileMultiple.vue?vue&type=script&lang=js\"\nexport * from \"./FileMultiple.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon file-multiple-icon\",attrs:{\"aria-hidden\":_vm.title ? null : true,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M15,7H20.5L15,1.5V7M8,0H16L22,6V18A2,2 0 0,1 20,20H8C6.89,20 6,19.1 6,18V2A2,2 0 0,1 8,0M4,4V22H20V24H4A2,2 0 0,1 2,22V4H4Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',{staticClass:\"files-list-drag-image\"},[_c('span',{staticClass:\"files-list-drag-image__icon\"},[_c('span',{ref:\"previewImg\"}),_vm._v(\" \"),(_vm.isSingleFolder)?_c('FolderIcon'):_c('FileMultipleIcon')],1),_vm._v(\" \"),_c('span',{staticClass:\"files-list-drag-image__name\"},[_vm._v(_vm._s(_vm.name))])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DragAndDropPreview.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DragAndDropPreview.vue?vue&type=script&lang=ts\"","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DragAndDropPreview.vue?vue&type=style&index=0&id=775162a4&prod&lang=scss\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DragAndDropPreview.vue?vue&type=style&index=0&id=775162a4&prod&lang=scss\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./DragAndDropPreview.vue?vue&type=template&id=775162a4\"\nimport script from \"./DragAndDropPreview.vue?vue&type=script&lang=ts\"\nexport * from \"./DragAndDropPreview.vue?vue&type=script&lang=ts\"\nimport style0 from \"./DragAndDropPreview.vue?vue&type=style&index=0&id=775162a4&prod&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import DragAndDropPreview from '../components/DragAndDropPreview.vue';\nimport Vue from 'vue';\nconst Preview = Vue.extend(DragAndDropPreview);\nlet preview;\nexport const getDragAndDropPreview = async (nodes) => {\n return new Promise((resolve) => {\n if (!preview) {\n preview = new Preview().$mount();\n document.body.appendChild(preview.$el);\n }\n preview.update(nodes);\n preview.$on('loaded', () => {\n resolve(preview.$el);\n preview.$off('loaded');\n });\n });\n};\n","/**\n * SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { showError } from '@nextcloud/dialogs';\nimport { FileType, Permission, Folder, File as NcFile, NodeStatus, Node, View } from '@nextcloud/files';\nimport { translate as t } from '@nextcloud/l10n';\nimport { generateUrl } from '@nextcloud/router';\nimport { vOnClickOutside } from '@vueuse/components';\nimport { extname } from 'path';\nimport Vue, { defineComponent } from 'vue';\nimport { action as sidebarAction } from '../actions/sidebarAction.ts';\nimport { getDragAndDropPreview } from '../utils/dragUtils.ts';\nimport { hashCode } from '../utils/hashUtils.ts';\nimport { dataTransferToFileTree, onDropExternalFiles, onDropInternalFiles } from '../services/DropService.ts';\nimport logger from '../logger.js';\nimport FileEntryActions from '../components/FileEntry/FileEntryActions.vue';\nVue.directive('onClickOutside', vOnClickOutside);\nexport default defineComponent({\n props: {\n source: {\n type: [Folder, NcFile, Node],\n required: true,\n },\n nodes: {\n type: Array,\n required: true,\n },\n filesListWidth: {\n type: Number,\n default: 0,\n },\n },\n data() {\n return {\n loading: '',\n dragover: false,\n gridMode: false,\n };\n },\n computed: {\n currentDir() {\n // Remove any trailing slash but leave root slash\n return (this.$route.query?.dir?.toString() || '/').replace(/^(.+)\\/$/, '$1');\n },\n currentFileId() {\n return this.$route.params?.fileid || this.$route.query?.fileid || null;\n },\n fileid() {\n return this.source.fileid ?? 0;\n },\n uniqueId() {\n return hashCode(this.source.source);\n },\n isLoading() {\n return this.source.status === NodeStatus.LOADING;\n },\n extension() {\n if (this.source.attributes?.displayname) {\n return extname(this.source.attributes.displayname);\n }\n return this.source.extension || '';\n },\n displayName() {\n const ext = this.extension;\n const name = String(this.source.attributes.displayname\n || this.source.basename);\n // Strip extension from name if defined\n return !ext ? name : name.slice(0, 0 - ext.length);\n },\n draggingFiles() {\n return this.draggingStore.dragging;\n },\n selectedFiles() {\n return this.selectionStore.selected;\n },\n isSelected() {\n return this.selectedFiles.includes(this.source.source);\n },\n isRenaming() {\n return this.renamingStore.renamingNode === this.source;\n },\n isRenamingSmallScreen() {\n return this.isRenaming && this.filesListWidth < 512;\n },\n isActive() {\n return String(this.fileid) === String(this.currentFileId);\n },\n /**\n * Check if the source is in a failed state after an API request\n */\n isFailedSource() {\n return this.source.status === NodeStatus.FAILED;\n },\n canDrag() {\n if (this.isRenaming) {\n return false;\n }\n const canDrag = (node) => {\n return (node?.permissions & Permission.UPDATE) !== 0;\n };\n // If we're dragging a selection, we need to check all files\n if (this.selectedFiles.length > 0) {\n const nodes = this.selectedFiles.map(source => this.filesStore.getNode(source));\n return nodes.every(canDrag);\n }\n return canDrag(this.source);\n },\n canDrop() {\n if (this.source.type !== FileType.Folder) {\n return false;\n }\n // If the current folder is also being dragged, we can't drop it on itself\n if (this.draggingFiles.includes(this.source.source)) {\n return false;\n }\n return (this.source.permissions & Permission.CREATE) !== 0;\n },\n openedMenu: {\n get() {\n return this.actionsMenuStore.opened === this.uniqueId.toString();\n },\n set(opened) {\n this.actionsMenuStore.opened = opened ? this.uniqueId.toString() : null;\n },\n },\n isRenaming() {\n return this.renamingStore.renamingNode === this.source;\n },\n },\n watch: {\n /**\n * When the source changes, reset the preview\n * and fetch the new one.\n */\n source(a, b) {\n if (a.source !== b.source) {\n this.resetState();\n }\n },\n },\n beforeDestroy() {\n this.resetState();\n },\n methods: {\n resetState() {\n // Reset loading state\n this.loading = '';\n // Reset the preview state\n this.$refs?.preview?.reset?.();\n // Close menu\n this.openedMenu = false;\n },\n // Open the actions menu on right click\n onRightClick(event) {\n // If already opened, fallback to default browser\n if (this.openedMenu) {\n return;\n }\n // The grid mode is compact enough to not care about\n // the actions menu mouse position\n if (!this.gridMode) {\n // Actions menu is contained within the app content\n const root = this.$el?.closest('main.app-content');\n const contentRect = root.getBoundingClientRect();\n // Using Math.min/max to prevent the menu from going out of the AppContent\n // 200 = max width of the menu\n root.style.setProperty('--mouse-pos-x', Math.max(0, event.clientX - contentRect.left - 200) + 'px');\n root.style.setProperty('--mouse-pos-y', Math.max(0, event.clientY - contentRect.top) + 'px');\n }\n else {\n // Reset any right menu position potentially set\n const root = this.$el?.closest('main.app-content');\n root.style.removeProperty('--mouse-pos-x');\n root.style.removeProperty('--mouse-pos-y');\n }\n // If the clicked row is in the selection, open global menu\n const isMoreThanOneSelected = this.selectedFiles.length > 1;\n this.actionsMenuStore.opened = this.isSelected && isMoreThanOneSelected ? 'global' : this.uniqueId.toString();\n // Prevent any browser defaults\n event.preventDefault();\n event.stopPropagation();\n },\n execDefaultAction(event) {\n // Ignore click if we are renaming\n if (this.isRenaming) {\n return;\n }\n // Ignore right click.\n if (event.button > 1) {\n return;\n }\n // if ctrl+click or middle mouse button, open in new tab\n if (event.ctrlKey || event.metaKey || event.button === 1) {\n event.preventDefault();\n window.open(generateUrl('/f/{fileId}', { fileId: this.fileid }));\n return false;\n }\n const actions = this.$refs.actions;\n actions.execDefaultAction(event);\n },\n openDetailsIfAvailable(event) {\n event.preventDefault();\n event.stopPropagation();\n if (sidebarAction?.enabled?.([this.source], this.currentView)) {\n sidebarAction.exec(this.source, this.currentView, this.currentDir);\n }\n },\n onDragOver(event) {\n this.dragover = this.canDrop;\n if (!this.canDrop) {\n event.dataTransfer.dropEffect = 'none';\n return;\n }\n // Handle copy/move drag and drop\n if (event.ctrlKey) {\n event.dataTransfer.dropEffect = 'copy';\n }\n else {\n event.dataTransfer.dropEffect = 'move';\n }\n },\n onDragLeave(event) {\n // Counter bubbling, make sure we're ending the drag\n // only when we're leaving the current element\n const currentTarget = event.currentTarget;\n if (currentTarget?.contains(event.relatedTarget)) {\n return;\n }\n this.dragover = false;\n },\n async onDragStart(event) {\n event.stopPropagation();\n if (!this.canDrag || !this.fileid) {\n event.preventDefault();\n event.stopPropagation();\n return;\n }\n logger.debug('Drag started', { event });\n // Make sure that we're not dragging a file like the preview\n event.dataTransfer?.clearData?.();\n // Reset any renaming\n this.renamingStore.$reset();\n // Dragging set of files, if we're dragging a file\n // that is already selected, we use the entire selection\n if (this.selectedFiles.includes(this.source.source)) {\n this.draggingStore.set(this.selectedFiles);\n }\n else {\n this.draggingStore.set([this.source.source]);\n }\n const nodes = this.draggingStore.dragging\n .map(source => this.filesStore.getNode(source));\n const image = await getDragAndDropPreview(nodes);\n event.dataTransfer?.setDragImage(image, -10, -10);\n },\n onDragEnd() {\n this.draggingStore.reset();\n this.dragover = false;\n logger.debug('Drag ended');\n },\n async onDrop(event) {\n // skip if native drop like text drag and drop from files names\n if (!this.draggingFiles && !event.dataTransfer?.items?.length) {\n return;\n }\n event.preventDefault();\n event.stopPropagation();\n // Caching the selection\n const selection = this.draggingFiles;\n const items = [...event.dataTransfer?.items || []];\n // We need to process the dataTransfer ASAP before the\n // browser clears it. This is why we cache the items too.\n const fileTree = await dataTransferToFileTree(items);\n // We might not have the target directory fetched yet\n const contents = await this.currentView?.getContents(this.source.path);\n const folder = contents?.folder;\n if (!folder) {\n showError(this.t('files', 'Target folder does not exist any more'));\n return;\n }\n // If another button is pressed, cancel it. This\n // allows cancelling the drag with the right click.\n if (!this.canDrop || event.button) {\n return;\n }\n const isCopy = event.ctrlKey;\n this.dragover = false;\n logger.debug('Dropped', { event, folder, selection, fileTree });\n // Check whether we're uploading files\n if (fileTree.contents.length > 0) {\n await onDropExternalFiles(fileTree, folder, contents.contents);\n return;\n }\n // Else we're moving/copying files\n const nodes = selection.map(source => this.filesStore.getNode(source));\n await onDropInternalFiles(nodes, folder, contents.contents, isCopy);\n // Reset selection after we dropped the files\n // if the dropped files are within the selection\n if (selection.some(source => this.selectedFiles.includes(source))) {\n logger.debug('Dropped selection, resetting select store...');\n this.selectionStore.reset();\n }\n },\n t,\n },\n});\n","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/**\n * Simple non-secure hashing function similar to Java's `hashCode`\n * @param str The string to hash\n * @return {number} a non secure hash of the string\n */\nexport const hashCode = function (str) {\n let hash = 0;\n for (let i = 0; i < str.length; i++) {\n hash = ((hash << 5) - hash + str.charCodeAt(i)) | 0;\n }\n return (hash >>> 0);\n};\n","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span')\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CustomElementRender.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CustomElementRender.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./CustomElementRender.vue?vue&type=template&id=7b30c709\"\nimport script from \"./CustomElementRender.vue?vue&type=script&lang=ts\"\nexport * from \"./CustomElementRender.vue?vue&type=script&lang=ts\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('td',{staticClass:\"files-list__row-actions\",attrs:{\"data-cy-files-list-row-actions\":\"\"}},[_vm._l((_vm.enabledRenderActions),function(action){return _c('CustomElementRender',{key:action.id,staticClass:\"files-list__row-action--inline\",class:'files-list__row-action-' + action.id,attrs:{\"current-view\":_vm.currentView,\"render\":action.renderInline,\"source\":_vm.source}})}),_vm._v(\" \"),_c('NcActions',{ref:\"actionsMenu\",attrs:{\"boundaries-element\":_vm.getBoundariesElement,\"container\":_vm.getBoundariesElement,\"force-name\":true,\"type\":\"tertiary\",\"force-menu\":_vm.enabledInlineActions.length === 0 /* forceMenu only if no inline actions */,\"inline\":_vm.enabledInlineActions.length,\"open\":_vm.openedMenu},on:{\"update:open\":function($event){_vm.openedMenu=$event},\"close\":function($event){_vm.openedSubmenu = null}}},[_vm._l((_vm.enabledMenuActions),function(action){return _c('NcActionButton',{key:action.id,ref:`action-${action.id}`,refInFor:true,class:{\n\t\t\t\t[`files-list__row-action-${action.id}`]: true,\n\t\t\t\t[`files-list__row-action--menu`]: _vm.isMenu(action.id)\n\t\t\t},attrs:{\"close-after-click\":!_vm.isMenu(action.id),\"data-cy-files-list-row-action\":action.id,\"is-menu\":_vm.isMenu(action.id),\"title\":action.title?.([_vm.source], _vm.currentView)},on:{\"click\":function($event){return _vm.onActionClick(action)}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [(_vm.loading === action.id)?_c('NcLoadingIcon',{attrs:{\"size\":18}}):_c('NcIconSvgWrapper',{attrs:{\"svg\":action.iconSvgInline([_vm.source], _vm.currentView)}})]},proxy:true}],null,true)},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.mountType === 'shared' && action.id === 'sharing-status' ? '' : _vm.actionDisplayName(action))+\"\\n\\t\\t\")])}),_vm._v(\" \"),(_vm.openedSubmenu && _vm.enabledSubmenuActions[_vm.openedSubmenu?.id])?[_c('NcActionButton',{staticClass:\"files-list__row-action-back\",on:{\"click\":function($event){return _vm.onBackToMenuClick(_vm.openedSubmenu)}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('ArrowLeftIcon')]},proxy:true}],null,false,3001860362)},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.actionDisplayName(_vm.openedSubmenu))+\"\\n\\t\\t\\t\")]),_vm._v(\" \"),_c('NcActionSeparator'),_vm._v(\" \"),_vm._l((_vm.enabledSubmenuActions[_vm.openedSubmenu?.id]),function(action){return _c('NcActionButton',{key:action.id,staticClass:\"files-list__row-action--submenu\",class:`files-list__row-action-${action.id}`,attrs:{\"close-after-click\":\"\",\"data-cy-files-list-row-action\":action.id,\"title\":action.title?.([_vm.source], _vm.currentView)},on:{\"click\":function($event){return _vm.onActionClick(action)}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [(_vm.loading === action.id)?_c('NcLoadingIcon',{attrs:{\"size\":18}}):_c('NcIconSvgWrapper',{attrs:{\"svg\":action.iconSvgInline([_vm.source], _vm.currentView)}})]},proxy:true}],null,true)},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.actionDisplayName(action))+\"\\n\\t\\t\\t\")])})]:_vm._e()],2)],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./ArrowLeft.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./ArrowLeft.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ArrowLeft.vue?vue&type=template&id=214c9a86\"\nimport script from \"./ArrowLeft.vue?vue&type=script&lang=js\"\nexport * from \"./ArrowLeft.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon arrow-left-icon\",attrs:{\"aria-hidden\":_vm.title ? null : true,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M20,11V13H8L13.5,18.5L12.08,19.92L4.16,12L12.08,4.08L13.5,5.5L8,11H20Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileEntryActions.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileEntryActions.vue?vue&type=script&lang=ts\"","\n import API from \"!../../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../../node_modules/css-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileEntryActions.vue?vue&type=style&index=0&id=801e4784&prod&lang=scss\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../../node_modules/css-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileEntryActions.vue?vue&type=style&index=0&id=801e4784&prod&lang=scss\";\n export default content && content.locals ? content.locals : undefined;\n","\n import API from \"!../../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../../node_modules/css-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileEntryActions.vue?vue&type=style&index=1&id=801e4784&prod&lang=scss&scoped=true\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../../node_modules/css-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileEntryActions.vue?vue&type=style&index=1&id=801e4784&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./FileEntryActions.vue?vue&type=template&id=801e4784&scoped=true\"\nimport script from \"./FileEntryActions.vue?vue&type=script&lang=ts\"\nexport * from \"./FileEntryActions.vue?vue&type=script&lang=ts\"\nimport style0 from \"./FileEntryActions.vue?vue&type=style&index=0&id=801e4784&prod&lang=scss\"\nimport style1 from \"./FileEntryActions.vue?vue&type=style&index=1&id=801e4784&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"801e4784\",\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileEntryCheckbox.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileEntryCheckbox.vue?vue&type=script&lang=ts\"","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('td',{staticClass:\"files-list__row-checkbox\",on:{\"keyup\":function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"esc\",27,$event.key,[\"Esc\",\"Escape\"]))return null;if($event.ctrlKey||$event.shiftKey||$event.altKey||$event.metaKey)return null;return _vm.resetSelection.apply(null, arguments)}}},[(_vm.isLoading)?_c('NcLoadingIcon'):_c('NcCheckboxRadioSwitch',{attrs:{\"aria-label\":_vm.ariaLabel,\"checked\":_vm.isSelected},on:{\"update:checked\":_vm.onSelectionChange}})],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { defineStore } from 'pinia';\nimport Vue from 'vue';\n/**\n * Observe various events and save the current\n * special keys states. Useful for checking the\n * current status of a key when executing a method.\n */\nexport const useKeyboardStore = function (...args) {\n const store = defineStore('keyboard', {\n state: () => ({\n altKey: false,\n ctrlKey: false,\n metaKey: false,\n shiftKey: false,\n }),\n actions: {\n onEvent(event) {\n if (!event) {\n event = window.event;\n }\n Vue.set(this, 'altKey', !!event.altKey);\n Vue.set(this, 'ctrlKey', !!event.ctrlKey);\n Vue.set(this, 'metaKey', !!event.metaKey);\n Vue.set(this, 'shiftKey', !!event.shiftKey);\n },\n },\n });\n const keyboardStore = store(...args);\n // Make sure we only register the listeners once\n if (!keyboardStore._initialized) {\n window.addEventListener('keydown', keyboardStore.onEvent);\n window.addEventListener('keyup', keyboardStore.onEvent);\n window.addEventListener('mousemove', keyboardStore.onEvent);\n keyboardStore._initialized = true;\n }\n return keyboardStore;\n};\n","import { render, staticRenderFns } from \"./FileEntryCheckbox.vue?vue&type=template&id=20c5f7c8\"\nimport script from \"./FileEntryCheckbox.vue?vue&type=script&lang=ts\"\nexport * from \"./FileEntryCheckbox.vue?vue&type=script&lang=ts\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return (_vm.isRenaming)?_c('form',{directives:[{name:\"on-click-outside\",rawName:\"v-on-click-outside\",value:(_vm.onRename),expression:\"onRename\"}],staticClass:\"files-list__row-rename\",attrs:{\"aria-label\":_vm.t('files', 'Rename file')},on:{\"submit\":function($event){$event.preventDefault();$event.stopPropagation();return _vm.onRename.apply(null, arguments)}}},[_c('NcTextField',{ref:\"renameInput\",attrs:{\"label\":_vm.renameLabel,\"autofocus\":true,\"minlength\":1,\"required\":true,\"value\":_vm.newName,\"enterkeyhint\":\"done\"},on:{\"update:value\":function($event){_vm.newName=$event},\"keyup\":[_vm.checkInputValidity,function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"esc\",27,$event.key,[\"Esc\",\"Escape\"]))return null;return _vm.stopRenaming.apply(null, arguments)}]}})],1):_c(_vm.linkTo.is,_vm._b({ref:\"basename\",tag:\"component\",staticClass:\"files-list__row-name-link\",attrs:{\"aria-hidden\":_vm.isRenaming,\"data-cy-files-list-row-name-link\":\"\"}},'component',_vm.linkTo.params,false),[_c('span',{staticClass:\"files-list__row-name-text\"},[_c('span',{staticClass:\"files-list__row-name-\",domProps:{\"textContent\":_vm._s(_vm.displayName)}}),_vm._v(\" \"),_c('span',{staticClass:\"files-list__row-name-ext\",domProps:{\"textContent\":_vm._s(_vm.extension)}})])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileEntryName.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileEntryName.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./FileEntryName.vue?vue&type=template&id=46ebfb10\"\nimport script from \"./FileEntryName.vue?vue&type=script&lang=ts\"\nexport * from \"./FileEntryName.vue?vue&type=script&lang=ts\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('span',{staticClass:\"files-list__row-icon\"},[(_vm.source.type === 'folder')?[(_vm.dragover)?_vm._m(0):[_vm._m(1),_vm._v(\" \"),(_vm.folderOverlay)?_c(_vm.folderOverlay,{tag:\"OverlayIcon\",staticClass:\"files-list__row-icon-overlay\"}):_vm._e()]]:(_vm.previewUrl && _vm.backgroundFailed !== true)?_c('img',{ref:\"previewImg\",staticClass:\"files-list__row-icon-preview\",class:{'files-list__row-icon-preview--loaded': _vm.backgroundFailed === false},attrs:{\"alt\":\"\",\"loading\":\"lazy\",\"src\":_vm.previewUrl},on:{\"error\":_vm.onBackgroundError,\"load\":function($event){_vm.backgroundFailed = false}}}):_vm._m(2),_vm._v(\" \"),(_vm.isFavorite)?_c('span',{staticClass:\"files-list__row-icon-favorite\"},[_vm._m(3)],1):_vm._e(),_vm._v(\" \"),(_vm.fileOverlay)?_c(_vm.fileOverlay,{tag:\"OverlayIcon\",staticClass:\"files-list__row-icon-overlay files-list__row-icon-overlay--file\"}):_vm._e()],2)\n}\nvar staticRenderFns = [function (){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('FolderOpenIcon')\n},function (){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('FolderIcon')\n},function (){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('FileIcon')\n},function (){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('FavoriteIcon')\n}]\n\nexport { render, staticRenderFns }","\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./File.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./File.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./File.vue?vue&type=template&id=e3c8d598\"\nimport script from \"./File.vue?vue&type=script&lang=js\"\nexport * from \"./File.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon file-icon\",attrs:{\"aria-hidden\":_vm.title ? null : true,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M13,9V3.5L18.5,9M6,2C4.89,2 4,2.89 4,4V20A2,2 0 0,0 6,22H18A2,2 0 0,0 20,20V8L14,2H6Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./FolderOpen.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./FolderOpen.vue?vue&type=script&lang=js\"","\n\n","import { render, staticRenderFns } from \"./FolderOpen.vue?vue&type=template&id=79cee0a4\"\nimport script from \"./FolderOpen.vue?vue&type=script&lang=js\"\nexport * from \"./FolderOpen.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon folder-open-icon\",attrs:{\"aria-hidden\":_vm.title ? null : true,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M19,20H4C2.89,20 2,19.1 2,18V6C2,4.89 2.89,4 4,4H10L12,6H19A2,2 0 0,1 21,8H21L4,8V18L6.14,10H23.21L20.93,18.5C20.7,19.37 19.92,20 19,20Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./Key.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Key.vue?vue&type=script&lang=js\"","\n\n","import { render, staticRenderFns } from \"./Key.vue?vue&type=template&id=01a06d54\"\nimport script from \"./Key.vue?vue&type=script&lang=js\"\nexport * from \"./Key.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon key-icon\",attrs:{\"aria-hidden\":_vm.title ? null : true,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M7 14C5.9 14 5 13.1 5 12S5.9 10 7 10 9 10.9 9 12 8.1 14 7 14M12.6 10C11.8 7.7 9.6 6 7 6C3.7 6 1 8.7 1 12S3.7 18 7 18C9.6 18 11.8 16.3 12.6 14H16V18H20V14H23V10H12.6Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./Network.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Network.vue?vue&type=script&lang=js\"","\n\n","import { render, staticRenderFns } from \"./Network.vue?vue&type=template&id=29f8873c\"\nimport script from \"./Network.vue?vue&type=script&lang=js\"\nexport * from \"./Network.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon network-icon\",attrs:{\"aria-hidden\":_vm.title ? null : true,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M17,3A2,2 0 0,1 19,5V15A2,2 0 0,1 17,17H13V19H14A1,1 0 0,1 15,20H22V22H15A1,1 0 0,1 14,23H10A1,1 0 0,1 9,22H2V20H9A1,1 0 0,1 10,19H11V17H7C5.89,17 5,16.1 5,15V5A2,2 0 0,1 7,3H17Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./Tag.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Tag.vue?vue&type=script&lang=js\"","\n\n","import { render, staticRenderFns } from \"./Tag.vue?vue&type=template&id=75dd05e4\"\nimport script from \"./Tag.vue?vue&type=script&lang=js\"\nexport * from \"./Tag.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon tag-icon\",attrs:{\"aria-hidden\":_vm.title ? null : true,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M5.5,7A1.5,1.5 0 0,1 4,5.5A1.5,1.5 0 0,1 5.5,4A1.5,1.5 0 0,1 7,5.5A1.5,1.5 0 0,1 5.5,7M21.41,11.58L12.41,2.58C12.05,2.22 11.55,2 11,2H4C2.89,2 2,2.89 2,4V11C2,11.55 2.22,12.05 2.59,12.41L11.58,21.41C11.95,21.77 12.45,22 13,22C13.55,22 14.05,21.77 14.41,21.41L21.41,14.41C21.78,14.05 22,13.55 22,13C22,12.44 21.77,11.94 21.41,11.58Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./PlayCircle.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./PlayCircle.vue?vue&type=script&lang=js\"","\n\n","import { render, staticRenderFns } from \"./PlayCircle.vue?vue&type=template&id=6901b3e6\"\nimport script from \"./PlayCircle.vue?vue&type=script&lang=js\"\nexport * from \"./PlayCircle.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon play-circle-icon\",attrs:{\"aria-hidden\":_vm.title ? null : true,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M10,16.5V7.5L16,12M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CollectivesIcon.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CollectivesIcon.vue?vue&type=script&lang=js\"","\n\n\n\n","import { render, staticRenderFns } from \"./CollectivesIcon.vue?vue&type=template&id=43528c7c\"\nimport script from \"./CollectivesIcon.vue?vue&type=script&lang=js\"\nexport * from \"./CollectivesIcon.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon collectives-icon\",attrs:{\"aria-hidden\":!_vm.title,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 16 16\"}},[_c('path',{attrs:{\"d\":\"M2.9,8.8c0-1.2,0.4-2.4,1.2-3.3L0.3,6c-0.2,0-0.3,0.3-0.1,0.4l2.7,2.6C2.9,9,2.9,8.9,2.9,8.8z\"}}),_vm._v(\" \"),_c('path',{attrs:{\"d\":\"M8,3.7c0.7,0,1.3,0.1,1.9,0.4L8.2,0.6c-0.1-0.2-0.3-0.2-0.4,0L6.1,4C6.7,3.8,7.3,3.7,8,3.7z\"}}),_vm._v(\" \"),_c('path',{attrs:{\"d\":\"M3.7,11.5L3,15.2c0,0.2,0.2,0.4,0.4,0.3l3.3-1.7C5.4,13.4,4.4,12.6,3.7,11.5z\"}}),_vm._v(\" \"),_c('path',{attrs:{\"d\":\"M15.7,6l-3.7-0.5c0.7,0.9,1.2,2,1.2,3.3c0,0.1,0,0.2,0,0.3l2.7-2.6C15.9,6.3,15.9,6.1,15.7,6z\"}}),_vm._v(\" \"),_c('path',{attrs:{\"d\":\"M12.3,11.5c-0.7,1.1-1.8,1.9-3,2.2l3.3,1.7c0.2,0.1,0.4-0.1,0.4-0.3L12.3,11.5z\"}}),_vm._v(\" \"),_c('path',{attrs:{\"d\":\"M9.6,10.1c-0.4,0.5-1,0.8-1.6,0.8c-1.1,0-2-0.9-2.1-2C5.9,7.7,6.8,6.7,8,6.7c0.6,0,1.1,0.3,1.5,0.7 c0.1,0.1,0.1,0.1,0.2,0.1h1.4c0.2,0,0.4-0.2,0.3-0.5c-0.7-1.3-2.1-2.2-3.8-2.1C5.8,5,4.3,6.6,4.1,8.5C4,10.8,5.8,12.7,8,12.7 c1.6,0,2.9-0.9,3.5-2.3c0.1-0.2-0.1-0.4-0.3-0.4H9.9C9.8,10,9.7,10,9.6,10.1z\"}})])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FavoriteIcon.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FavoriteIcon.vue?vue&type=script&lang=ts\"","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('NcIconSvgWrapper',{staticClass:\"favorite-marker-icon\",attrs:{\"name\":_vm.t('files', 'Favorite'),\"svg\":_vm.StarSvg}})\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n import API from \"!../../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../../node_modules/css-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FavoriteIcon.vue?vue&type=style&index=0&id=f2d0cf6e&prod&lang=scss&scoped=true\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../../node_modules/css-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FavoriteIcon.vue?vue&type=style&index=0&id=f2d0cf6e&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./FavoriteIcon.vue?vue&type=template&id=f2d0cf6e&scoped=true\"\nimport script from \"./FavoriteIcon.vue?vue&type=script&lang=ts\"\nexport * from \"./FavoriteIcon.vue?vue&type=script&lang=ts\"\nimport style0 from \"./FavoriteIcon.vue?vue&type=style&index=0&id=f2d0cf6e&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"f2d0cf6e\",\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileEntryPreview.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileEntryPreview.vue?vue&type=script&lang=ts\"","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { Node, registerDavProperty } from '@nextcloud/files';\nexport function initLivePhotos() {\n registerDavProperty('nc:metadata-files-live-photo', { nc: 'http://nextcloud.org/ns' });\n}\n/**\n * @param {Node} node - The node\n */\nexport function isLivePhoto(node) {\n return node.attributes['metadata-files-live-photo'] !== undefined;\n}\n","import { render, staticRenderFns } from \"./FileEntryPreview.vue?vue&type=template&id=fef56bd8\"\nimport script from \"./FileEntryPreview.vue?vue&type=script&lang=ts\"\nexport * from \"./FileEntryPreview.vue?vue&type=script&lang=ts\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileEntry.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileEntry.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./FileEntry.vue?vue&type=template&id=5afbb7ac\"\nimport script from \"./FileEntry.vue?vue&type=script&lang=ts\"\nexport * from \"./FileEntry.vue?vue&type=script&lang=ts\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileEntryGrid.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileEntryGrid.vue?vue&type=script&lang=ts\"","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('tr',{staticClass:\"files-list__row\",class:{'files-list__row--active': _vm.isActive, 'files-list__row--dragover': _vm.dragover, 'files-list__row--loading': _vm.isLoading},attrs:{\"data-cy-files-list-row\":\"\",\"data-cy-files-list-row-fileid\":_vm.fileid,\"data-cy-files-list-row-name\":_vm.source.basename,\"draggable\":_vm.canDrag},on:{\"contextmenu\":_vm.onRightClick,\"dragover\":_vm.onDragOver,\"dragleave\":_vm.onDragLeave,\"dragstart\":_vm.onDragStart,\"dragend\":_vm.onDragEnd,\"drop\":_vm.onDrop}},[(_vm.isFailedSource)?_c('span',{staticClass:\"files-list__row--failed\"}):_vm._e(),_vm._v(\" \"),_c('FileEntryCheckbox',{attrs:{\"fileid\":_vm.fileid,\"is-loading\":_vm.isLoading,\"nodes\":_vm.nodes,\"source\":_vm.source}}),_vm._v(\" \"),_c('td',{staticClass:\"files-list__row-name\",attrs:{\"data-cy-files-list-row-name\":\"\"}},[_c('FileEntryPreview',{ref:\"preview\",attrs:{\"dragover\":_vm.dragover,\"grid-mode\":true,\"source\":_vm.source},nativeOn:{\"auxclick\":function($event){return _vm.execDefaultAction.apply(null, arguments)},\"click\":function($event){return _vm.execDefaultAction.apply(null, arguments)}}}),_vm._v(\" \"),_c('FileEntryName',{ref:\"name\",attrs:{\"display-name\":_vm.displayName,\"extension\":_vm.extension,\"files-list-width\":_vm.filesListWidth,\"grid-mode\":true,\"nodes\":_vm.nodes,\"source\":_vm.source},nativeOn:{\"auxclick\":function($event){return _vm.execDefaultAction.apply(null, arguments)},\"click\":function($event){return _vm.execDefaultAction.apply(null, arguments)}}})],1),_vm._v(\" \"),_c('FileEntryActions',{ref:\"actions\",class:`files-list__row-actions-${_vm.uniqueId}`,attrs:{\"files-list-width\":_vm.filesListWidth,\"grid-mode\":true,\"loading\":_vm.loading,\"opened\":_vm.openedMenu,\"source\":_vm.source},on:{\"update:loading\":function($event){_vm.loading=$event},\"update:opened\":function($event){_vm.openedMenu=$event}}})],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./FileEntryGrid.vue?vue&type=template&id=4d33eb03\"\nimport script from \"./FileEntryGrid.vue?vue&type=script&lang=ts\"\nexport * from \"./FileEntryGrid.vue?vue&type=script&lang=ts\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.enabled),expression:\"enabled\"}],class:`files-list__header-${_vm.header.id}`},[_c('span',{ref:\"mount\"})])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListHeader.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListHeader.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./FilesListHeader.vue?vue&type=template&id=33e2173e\"\nimport script from \"./FilesListHeader.vue?vue&type=script&lang=ts\"\nexport * from \"./FilesListHeader.vue?vue&type=script&lang=ts\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListTableFooter.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListTableFooter.vue?vue&type=script&lang=ts\"","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('tr',[_c('th',{staticClass:\"files-list__row-checkbox\"},[_c('span',{staticClass:\"hidden-visually\"},[_vm._v(_vm._s(_vm.t('files', 'Total rows summary')))])]),_vm._v(\" \"),_c('td',{staticClass:\"files-list__row-name\"},[_c('span',{staticClass:\"files-list__row-icon\"}),_vm._v(\" \"),_c('span',[_vm._v(_vm._s(_vm.summary))])]),_vm._v(\" \"),_c('td',{staticClass:\"files-list__row-actions\"}),_vm._v(\" \"),(_vm.isSizeAvailable)?_c('td',{staticClass:\"files-list__column files-list__row-size\"},[_c('span',[_vm._v(_vm._s(_vm.totalSize))])]):_vm._e(),_vm._v(\" \"),(_vm.isMtimeAvailable)?_c('td',{staticClass:\"files-list__column files-list__row-mtime\"}):_vm._e(),_vm._v(\" \"),_vm._l((_vm.columns),function(column){return _c('th',{key:column.id,class:_vm.classForColumn(column)},[_c('span',[_vm._v(_vm._s(column.summary?.(_vm.nodes, _vm.currentView)))])])})],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListTableFooter.vue?vue&type=style&index=0&id=130ade4f&prod&scoped=true&lang=scss\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListTableFooter.vue?vue&type=style&index=0&id=130ade4f&prod&scoped=true&lang=scss\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./FilesListTableFooter.vue?vue&type=template&id=130ade4f&scoped=true\"\nimport script from \"./FilesListTableFooter.vue?vue&type=script&lang=ts\"\nexport * from \"./FilesListTableFooter.vue?vue&type=script&lang=ts\"\nimport style0 from \"./FilesListTableFooter.vue?vue&type=style&index=0&id=130ade4f&prod&scoped=true&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"130ade4f\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('tr',{staticClass:\"files-list__row-head\"},[_c('th',{staticClass:\"files-list__column files-list__row-checkbox\",on:{\"keyup\":function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"esc\",27,$event.key,[\"Esc\",\"Escape\"]))return null;if($event.ctrlKey||$event.shiftKey||$event.altKey||$event.metaKey)return null;return _vm.resetSelection.apply(null, arguments)}}},[_c('NcCheckboxRadioSwitch',_vm._b({on:{\"update:checked\":_vm.onToggleAll}},'NcCheckboxRadioSwitch',_vm.selectAllBind,false))],1),_vm._v(\" \"),_c('th',{staticClass:\"files-list__column files-list__row-name files-list__column--sortable\",attrs:{\"aria-sort\":_vm.ariaSortForMode('basename')}},[_c('span',{staticClass:\"files-list__row-icon\"}),_vm._v(\" \"),_c('FilesListTableHeaderButton',{attrs:{\"name\":_vm.t('files', 'Name'),\"mode\":\"basename\"}})],1),_vm._v(\" \"),_c('th',{staticClass:\"files-list__row-actions\"}),_vm._v(\" \"),(_vm.isSizeAvailable)?_c('th',{staticClass:\"files-list__column files-list__row-size\",class:{ 'files-list__column--sortable': _vm.isSizeAvailable },attrs:{\"aria-sort\":_vm.ariaSortForMode('size')}},[_c('FilesListTableHeaderButton',{attrs:{\"name\":_vm.t('files', 'Size'),\"mode\":\"size\"}})],1):_vm._e(),_vm._v(\" \"),(_vm.isMtimeAvailable)?_c('th',{staticClass:\"files-list__column files-list__row-mtime\",class:{ 'files-list__column--sortable': _vm.isMtimeAvailable },attrs:{\"aria-sort\":_vm.ariaSortForMode('mtime')}},[_c('FilesListTableHeaderButton',{attrs:{\"name\":_vm.t('files', 'Modified'),\"mode\":\"mtime\"}})],1):_vm._e(),_vm._v(\" \"),_vm._l((_vm.columns),function(column){return _c('th',{key:column.id,class:_vm.classForColumn(column),attrs:{\"aria-sort\":_vm.ariaSortForMode(column.id)}},[(!!column.sort)?_c('FilesListTableHeaderButton',{attrs:{\"name\":column.title,\"mode\":column.id}}):_c('span',[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(column.title)+\"\\n\\t\\t\")])],1)})],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport Vue from 'vue';\nimport { mapState } from 'pinia';\nimport { useViewConfigStore } from '../store/viewConfig';\nimport { Navigation, View } from '@nextcloud/files';\nexport default Vue.extend({\n computed: {\n ...mapState(useViewConfigStore, ['getConfig', 'setSortingBy', 'toggleSortingDirection']),\n currentView() {\n return this.$navigation.active;\n },\n /**\n * Get the sorting mode for the current view\n */\n sortingMode() {\n return this.getConfig(this.currentView.id)?.sorting_mode\n || this.currentView?.defaultSortKey\n || 'basename';\n },\n /**\n * Get the sorting direction for the current view\n */\n isAscSorting() {\n const sortingDirection = this.getConfig(this.currentView.id)?.sorting_direction;\n return sortingDirection !== 'desc';\n },\n },\n methods: {\n toggleSortBy(key) {\n // If we're already sorting by this key, flip the direction\n if (this.sortingMode === key) {\n this.toggleSortingDirection(this.currentView.id);\n return;\n }\n // else sort ASC by this new key\n this.setSortingBy(key, this.currentView.id);\n },\n },\n});\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListTableHeaderButton.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListTableHeaderButton.vue?vue&type=script&lang=ts\"","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('NcButton',{class:['files-list__column-sort-button', {\n\t\t'files-list__column-sort-button--active': _vm.sortingMode === _vm.mode,\n\t\t'files-list__column-sort-button--size': _vm.sortingMode === 'size',\n\t}],attrs:{\"alignment\":_vm.mode === 'size' ? 'end' : 'start-reverse',\"type\":\"tertiary\"},on:{\"click\":function($event){return _vm.toggleSortBy(_vm.mode)}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [(_vm.sortingMode !== _vm.mode || _vm.isAscSorting)?_c('MenuUp',{staticClass:\"files-list__column-sort-button-icon\"}):_c('MenuDown',{staticClass:\"files-list__column-sort-button-icon\"})]},proxy:true}])},[_vm._v(\" \"),_c('span',{staticClass:\"files-list__column-sort-button-text\"},[_vm._v(_vm._s(_vm.name))])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListTableHeaderButton.vue?vue&type=style&index=0&id=4e97a5c6&prod&scoped=true&lang=scss\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListTableHeaderButton.vue?vue&type=style&index=0&id=4e97a5c6&prod&scoped=true&lang=scss\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./FilesListTableHeaderButton.vue?vue&type=template&id=4e97a5c6&scoped=true\"\nimport script from \"./FilesListTableHeaderButton.vue?vue&type=script&lang=ts\"\nexport * from \"./FilesListTableHeaderButton.vue?vue&type=script&lang=ts\"\nimport style0 from \"./FilesListTableHeaderButton.vue?vue&type=style&index=0&id=4e97a5c6&prod&scoped=true&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"4e97a5c6\",\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListTableHeader.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListTableHeader.vue?vue&type=script&lang=ts\"","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListTableHeader.vue?vue&type=style&index=0&id=6eaeabb8&prod&scoped=true&lang=scss\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListTableHeader.vue?vue&type=style&index=0&id=6eaeabb8&prod&scoped=true&lang=scss\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./FilesListTableHeader.vue?vue&type=template&id=6eaeabb8&scoped=true\"\nimport script from \"./FilesListTableHeader.vue?vue&type=script&lang=ts\"\nexport * from \"./FilesListTableHeader.vue?vue&type=script&lang=ts\"\nimport style0 from \"./FilesListTableHeader.vue?vue&type=style&index=0&id=6eaeabb8&prod&scoped=true&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"6eaeabb8\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',{staticClass:\"files-list\",attrs:{\"data-cy-files-list\":\"\"}},[_c('div',{ref:\"before\",staticClass:\"files-list__before\"},[_vm._t(\"before\")],2),_vm._v(\" \"),(!!_vm.$scopedSlots['header-overlay'])?_c('div',{staticClass:\"files-list__thead-overlay\"},[_vm._t(\"header-overlay\")],2):_vm._e(),_vm._v(\" \"),_c('table',{staticClass:\"files-list__table\",class:{ 'files-list__table--with-thead-overlay': !!_vm.$scopedSlots['header-overlay'] }},[(_vm.caption)?_c('caption',{staticClass:\"hidden-visually\"},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.caption)+\"\\n\\t\\t\")]):_vm._e(),_vm._v(\" \"),_c('thead',{ref:\"thead\",staticClass:\"files-list__thead\",attrs:{\"data-cy-files-list-thead\":\"\"}},[_vm._t(\"header\")],2),_vm._v(\" \"),_c('tbody',{staticClass:\"files-list__tbody\",class:_vm.gridMode ? 'files-list__tbody--grid' : 'files-list__tbody--list',style:(_vm.tbodyStyle),attrs:{\"data-cy-files-list-tbody\":\"\"}},_vm._l((_vm.renderedItems),function({key, item},i){return _c(_vm.dataComponent,_vm._b({key:key,tag:\"component\",attrs:{\"source\":item,\"index\":i}},'component',_vm.extraProps,false))}),1),_vm._v(\" \"),_c('tfoot',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.isReady),expression:\"isReady\"}],staticClass:\"files-list__tfoot\",attrs:{\"data-cy-files-list-tfoot\":\"\"}},[_vm._t(\"footer\")],2)])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./VirtualList.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./VirtualList.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./VirtualList.vue?vue&type=template&id=0f6839bf\"\nimport script from \"./VirtualList.vue?vue&type=script&lang=ts\"\nexport * from \"./VirtualList.vue?vue&type=script&lang=ts\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',{staticClass:\"files-list__column files-list__row-actions-batch\"},[_c('NcActions',{ref:\"actionsMenu\",attrs:{\"disabled\":!!_vm.loading || _vm.areSomeNodesLoading,\"force-name\":true,\"inline\":_vm.inlineActions,\"menu-name\":_vm.inlineActions <= 1 ? _vm.t('files', 'Actions') : null,\"open\":_vm.openedMenu},on:{\"update:open\":function($event){_vm.openedMenu=$event}}},_vm._l((_vm.enabledActions),function(action){return _c('NcActionButton',{key:action.id,class:'files-list__row-actions-batch-' + action.id,on:{\"click\":function($event){return _vm.onActionClick(action)}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [(_vm.loading === action.id)?_c('NcLoadingIcon',{attrs:{\"size\":18}}):_c('NcIconSvgWrapper',{attrs:{\"svg\":action.iconSvgInline(_vm.nodes, _vm.currentView)}})]},proxy:true}],null,true)},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(action.displayName(_vm.nodes, _vm.currentView))+\"\\n\\t\\t\")])}),1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListTableHeaderActions.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListTableHeaderActions.vue?vue&type=script&lang=ts\"","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListTableHeaderActions.vue?vue&type=style&index=0&id=1284c4be&prod&scoped=true&lang=scss\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListTableHeaderActions.vue?vue&type=style&index=0&id=1284c4be&prod&scoped=true&lang=scss\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./FilesListTableHeaderActions.vue?vue&type=template&id=1284c4be&scoped=true\"\nimport script from \"./FilesListTableHeaderActions.vue?vue&type=script&lang=ts\"\nexport * from \"./FilesListTableHeaderActions.vue?vue&type=script&lang=ts\"\nimport style0 from \"./FilesListTableHeaderActions.vue?vue&type=style&index=0&id=1284c4be&prod&scoped=true&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"1284c4be\",\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListVirtual.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListVirtual.vue?vue&type=script&lang=ts\"","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('VirtualList',{ref:\"table\",attrs:{\"data-component\":_vm.userConfig.grid_view ? _vm.FileEntryGrid : _vm.FileEntry,\"data-key\":'source',\"data-sources\":_vm.nodes,\"grid-mode\":_vm.userConfig.grid_view,\"extra-props\":{\n\t\tisMtimeAvailable: _vm.isMtimeAvailable,\n\t\tisSizeAvailable: _vm.isSizeAvailable,\n\t\tnodes: _vm.nodes,\n\t\tfilesListWidth: _vm.filesListWidth,\n\t},\"scroll-to-index\":_vm.scrollToIndex,\"caption\":_vm.caption},scopedSlots:_vm._u([(!_vm.isNoneSelected)?{key:\"header-overlay\",fn:function(){return [_c('span',{staticClass:\"files-list__selected\"},[_vm._v(_vm._s(_vm.t('files', '{count} selected', { count: _vm.selectedNodes.length })))]),_vm._v(\" \"),_c('FilesListTableHeaderActions',{attrs:{\"current-view\":_vm.currentView,\"selected-nodes\":_vm.selectedNodes}})]},proxy:true}:null,{key:\"before\",fn:function(){return _vm._l((_vm.sortedHeaders),function(header){return _c('FilesListHeader',{key:header.id,attrs:{\"current-folder\":_vm.currentFolder,\"current-view\":_vm.currentView,\"header\":header}})})},proxy:true},{key:\"header\",fn:function(){return [_c('FilesListTableHeader',{ref:\"thead\",attrs:{\"files-list-width\":_vm.filesListWidth,\"is-mtime-available\":_vm.isMtimeAvailable,\"is-size-available\":_vm.isSizeAvailable,\"nodes\":_vm.nodes}})]},proxy:true},{key:\"footer\",fn:function(){return [_c('FilesListTableFooter',{attrs:{\"current-view\":_vm.currentView,\"files-list-width\":_vm.filesListWidth,\"is-mtime-available\":_vm.isMtimeAvailable,\"is-size-available\":_vm.isSizeAvailable,\"nodes\":_vm.nodes,\"summary\":_vm.summary}})]},proxy:true}],null,true)})\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListVirtual.vue?vue&type=style&index=0&id=1287bfe2&prod&scoped=true&lang=scss\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListVirtual.vue?vue&type=style&index=0&id=1287bfe2&prod&scoped=true&lang=scss\";\n export default content && content.locals ? content.locals : undefined;\n","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListVirtual.vue?vue&type=style&index=1&id=1287bfe2&prod&lang=scss\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListVirtual.vue?vue&type=style&index=1&id=1287bfe2&prod&lang=scss\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./FilesListVirtual.vue?vue&type=template&id=1287bfe2&scoped=true\"\nimport script from \"./FilesListVirtual.vue?vue&type=script&lang=ts\"\nexport * from \"./FilesListVirtual.vue?vue&type=script&lang=ts\"\nimport style0 from \"./FilesListVirtual.vue?vue&type=style&index=0&id=1287bfe2&prod&scoped=true&lang=scss\"\nimport style1 from \"./FilesListVirtual.vue?vue&type=style&index=1&id=1287bfe2&prod&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"1287bfe2\",\n null\n \n)\n\nexport default component.exports","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./TrayArrowDown.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./TrayArrowDown.vue?vue&type=script&lang=js\"","\n\n","import { render, staticRenderFns } from \"./TrayArrowDown.vue?vue&type=template&id=447c2cd4\"\nimport script from \"./TrayArrowDown.vue?vue&type=script&lang=js\"\nexport * from \"./TrayArrowDown.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon tray-arrow-down-icon\",attrs:{\"aria-hidden\":_vm.title ? null : true,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M2 12H4V17H20V12H22V17C22 18.11 21.11 19 20 19H4C2.9 19 2 18.11 2 17V12M12 15L17.55 9.54L16.13 8.13L13 11.25V2H11V11.25L7.88 8.13L6.46 9.55L12 15Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DragAndDropNotice.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DragAndDropNotice.vue?vue&type=script&lang=ts\"","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.dragover),expression:\"dragover\"}],staticClass:\"files-list__drag-drop-notice\",attrs:{\"data-cy-files-drag-drop-area\":\"\"},on:{\"drop\":_vm.onDrop}},[_c('div',{staticClass:\"files-list__drag-drop-notice-wrapper\"},[(_vm.canUpload && !_vm.isQuotaExceeded)?[_c('TrayArrowDownIcon',{attrs:{\"size\":48}}),_vm._v(\" \"),_c('h3',{staticClass:\"files-list-drag-drop-notice__title\"},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('files', 'Drag and drop files here to upload'))+\"\\n\\t\\t\\t\")])]:[_c('h3',{staticClass:\"files-list-drag-drop-notice__title\"},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.cantUploadLabel)+\"\\n\\t\\t\\t\")])]],2)])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DragAndDropNotice.vue?vue&type=style&index=0&id=7f8a4132&prod&lang=scss&scoped=true\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DragAndDropNotice.vue?vue&type=style&index=0&id=7f8a4132&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./DragAndDropNotice.vue?vue&type=template&id=7f8a4132&scoped=true\"\nimport script from \"./DragAndDropNotice.vue?vue&type=script&lang=ts\"\nexport * from \"./DragAndDropNotice.vue?vue&type=script&lang=ts\"\nimport style0 from \"./DragAndDropNotice.vue?vue&type=style&index=0&id=7f8a4132&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"7f8a4132\",\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesList.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesList.vue?vue&type=script&lang=ts\"","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesList.vue?vue&type=style&index=0&id=0e2ac83a&prod&scoped=true&lang=scss\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesList.vue?vue&type=style&index=0&id=0e2ac83a&prod&scoped=true&lang=scss\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./FilesList.vue?vue&type=template&id=0e2ac83a&scoped=true\"\nimport script from \"./FilesList.vue?vue&type=script&lang=ts\"\nexport * from \"./FilesList.vue?vue&type=script&lang=ts\"\nimport style0 from \"./FilesList.vue?vue&type=style&index=0&id=0e2ac83a&prod&scoped=true&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"0e2ac83a\",\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesApp.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesApp.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./FilesApp.vue?vue&type=template&id=d3308b8a\"\nimport script from \"./FilesApp.vue?vue&type=script&lang=ts\"\nexport * from \"./FilesApp.vue?vue&type=script&lang=ts\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { PiniaVuePlugin } from 'pinia';\nimport { getNavigation } from '@nextcloud/files';\nimport { getRequestToken } from '@nextcloud/auth';\nimport Vue from 'vue';\nimport { pinia } from './store/index.ts';\nimport router from './router/router';\nimport RouterService from './services/RouterService';\nimport SettingsModel from './models/Setting.js';\nimport SettingsService from './services/Settings.js';\nimport FilesApp from './FilesApp.vue';\n// @ts-expect-error __webpack_nonce__ is injected by webpack\n__webpack_nonce__ = btoa(getRequestToken());\n// Init private and public Files namespace\nwindow.OCA.Files = window.OCA.Files ?? {};\nwindow.OCP.Files = window.OCP.Files ?? {};\n// Expose router\nconst Router = new RouterService(router);\nObject.assign(window.OCP.Files, { Router });\n// Init Pinia store\nVue.use(PiniaVuePlugin);\n// Init Navigation Service\n// This only works with Vue 2 - with Vue 3 this will not modify the source but return just a oberserver\nconst Navigation = Vue.observable(getNavigation());\nVue.prototype.$navigation = Navigation;\n// Init Files App Settings Service\nconst Settings = new SettingsService();\nObject.assign(window.OCA.Files, { Settings });\nObject.assign(window.OCA.Files.Settings, { Setting: SettingsModel });\nconst FilesAppVue = Vue.extend(FilesApp);\nnew FilesAppVue({\n router,\n pinia,\n}).$mount('#content');\n","export default class RouterService {\n _router;\n constructor(router) {\n this._router = router;\n }\n get name() {\n return this._router.currentRoute.name;\n }\n get query() {\n return this._router.currentRoute.query || {};\n }\n get params() {\n return this._router.currentRoute.params || {};\n }\n /**\n * Trigger a route change on the files app\n *\n * @param path the url path, eg: '/trashbin?dir=/Deleted'\n * @param replace replace the current history\n * @see https://router.vuejs.org/guide/essentials/navigation.html#navigate-to-a-different-location\n */\n goTo(path, replace = false) {\n return this._router.push({\n path,\n replace,\n });\n }\n /**\n * Trigger a route change on the files App\n *\n * @param name the route name\n * @param params the route parameters\n * @param query the url query parameters\n * @param replace replace the current history\n * @see https://router.vuejs.org/guide/essentials/navigation.html#navigate-to-a-different-location\n */\n goToRoute(name, params, query, replace) {\n return this._router.push({\n name,\n query,\n params,\n replace,\n });\n }\n}\n","/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nexport default class Settings {\n\n\t_settings\n\n\tconstructor() {\n\t\tthis._settings = []\n\t\tconsole.debug('OCA.Files.Settings initialized')\n\t}\n\n\t/**\n\t * Register a new setting\n\t *\n\t * @since 19.0.0\n\t * @param {OCA.Files.Settings.Setting} view element to add to settings\n\t * @return {boolean} whether registering was successful\n\t */\n\tregister(view) {\n\t\tif (this._settings.filter(e => e.name === view.name).length > 0) {\n\t\t\tconsole.error('A setting with the same name is already registered')\n\t\t\treturn false\n\t\t}\n\t\tthis._settings.push(view)\n\t\treturn true\n\t}\n\n\t/**\n\t * All settings elements\n\t *\n\t * @return {OCA.Files.Settings.Setting[]} All currently registered settings\n\t */\n\tget settings() {\n\t\treturn this._settings\n\t}\n\n}\n","/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nexport default class Setting {\n\n\t_close\n\t_el\n\t_name\n\t_open\n\n\t/**\n\t * Create a new files app setting\n\t *\n\t * @since 19.0.0\n\t * @param {string} name the name of this setting\n\t * @param {object} component the component\n\t * @param {Function} component.el function that returns an unmounted dom element to be added\n\t * @param {Function} [component.open] callback for when setting is added\n\t * @param {Function} [component.close] callback for when setting is closed\n\t */\n\tconstructor(name, { el, open, close }) {\n\t\tthis._name = name\n\t\tthis._el = el\n\t\tthis._open = open\n\t\tthis._close = close\n\n\t\tif (typeof this._open !== 'function') {\n\t\t\tthis._open = () => {}\n\t\t}\n\n\t\tif (typeof this._close !== 'function') {\n\t\t\tthis._close = () => {}\n\t\t}\n\t}\n\n\tget name() {\n\t\treturn this._name\n\t}\n\n\tget el() {\n\t\treturn this._el\n\t}\n\n\tget open() {\n\t\treturn this._open\n\t}\n\n\tget close() {\n\t\treturn this._close\n\t}\n\n}\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.upload-picker[data-v-1f097873] {\n display: inline-flex;\n align-items: center;\n height: 44px;\n}\n.upload-picker__progress[data-v-1f097873] {\n width: 200px;\n max-width: 0;\n transition: max-width var(--animation-quick) ease-in-out;\n margin-top: 8px;\n}\n.upload-picker__progress p[data-v-1f097873] {\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n}\n.upload-picker--uploading .upload-picker__progress[data-v-1f097873] {\n max-width: 200px;\n margin-right: 20px;\n margin-left: 8px;\n}\n.upload-picker--paused .upload-picker__progress[data-v-1f097873] {\n animation: breathing-1f097873 3s ease-out infinite normal;\n}\n@keyframes breathing-1f097873 {\n0% {\n opacity: 0.5;\n}\n25% {\n opacity: 1;\n}\n60% {\n opacity: 0.5;\n}\n100% {\n opacity: 0.5;\n}\n}`, \"\",{\"version\":3,\"sources\":[\"webpack://./node_modules/@nextcloud/upload/dist/assets/index-DiWRcN3o.css\"],\"names\":[],\"mappings\":\"AAAA;EACE,oBAAoB;EACpB,mBAAmB;EACnB,YAAY;AACd;AACA;EACE,YAAY;EACZ,YAAY;EACZ,wDAAwD;EACxD,eAAe;AACjB;AACA;EACE,gBAAgB;EAChB,mBAAmB;EACnB,uBAAuB;AACzB;AACA;EACE,gBAAgB;EAChB,kBAAkB;EAClB,gBAAgB;AAClB;AACA;EACE,yDAAyD;AAC3D;AACA;AACA;IACI,YAAY;AAChB;AACA;IACI,UAAU;AACd;AACA;IACI,YAAY;AAChB;AACA;IACI,YAAY;AAChB;AACA\",\"sourcesContent\":[\".upload-picker[data-v-1f097873] {\\n display: inline-flex;\\n align-items: center;\\n height: 44px;\\n}\\n.upload-picker__progress[data-v-1f097873] {\\n width: 200px;\\n max-width: 0;\\n transition: max-width var(--animation-quick) ease-in-out;\\n margin-top: 8px;\\n}\\n.upload-picker__progress p[data-v-1f097873] {\\n overflow: hidden;\\n white-space: nowrap;\\n text-overflow: ellipsis;\\n}\\n.upload-picker--uploading .upload-picker__progress[data-v-1f097873] {\\n max-width: 200px;\\n margin-right: 20px;\\n margin-left: 8px;\\n}\\n.upload-picker--paused .upload-picker__progress[data-v-1f097873] {\\n animation: breathing-1f097873 3s ease-out infinite normal;\\n}\\n@keyframes breathing-1f097873 {\\n0% {\\n opacity: 0.5;\\n}\\n25% {\\n opacity: 1;\\n}\\n60% {\\n opacity: 0.5;\\n}\\n100% {\\n opacity: 0.5;\\n}\\n}\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.files-list__breadcrumbs[data-v-7a939202]{flex:1 1 100% !important;width:100%;height:100%;margin-block:0;margin-inline:10px}.files-list__breadcrumbs[data-v-7a939202] a{cursor:pointer !important}.files-list__breadcrumbs--with-progress[data-v-7a939202]{flex-direction:column !important;align-items:flex-start !important}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/components/BreadCrumbs.vue\"],\"names\":[],\"mappings\":\"AACA,0CAEC,wBAAA,CACA,UAAA,CACA,WAAA,CACA,cAAA,CACA,kBAAA,CAGC,6CACC,yBAAA,CAIF,yDACC,gCAAA,CACA,iCAAA\",\"sourcesContent\":[\"\\n.files-list__breadcrumbs {\\n\\t// Take as much space as possible\\n\\tflex: 1 1 100% !important;\\n\\twidth: 100%;\\n\\theight: 100%;\\n\\tmargin-block: 0;\\n\\tmargin-inline: 10px;\\n\\n\\t:deep() {\\n\\t\\ta {\\n\\t\\t\\tcursor: pointer !important;\\n\\t\\t}\\n\\t}\\n\\n\\t&--with-progress {\\n\\t\\tflex-direction: column !important;\\n\\t\\talign-items: flex-start !important;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.files-list__drag-drop-notice[data-v-7f8a4132]{display:flex;align-items:center;justify-content:center;width:100%;min-height:113px;margin:0;user-select:none;color:var(--color-text-maxcontrast);background-color:var(--color-main-background);border-color:#000}.files-list__drag-drop-notice h3[data-v-7f8a4132]{margin-left:16px;color:inherit}.files-list__drag-drop-notice-wrapper[data-v-7f8a4132]{display:flex;align-items:center;justify-content:center;height:15vh;max-height:70%;padding:0 5vw;border:2px var(--color-border-dark) dashed;border-radius:var(--border-radius-large)}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/components/DragAndDropNotice.vue\"],\"names\":[],\"mappings\":\"AACA,+CACC,YAAA,CACA,kBAAA,CACA,sBAAA,CACA,UAAA,CAEA,gBAAA,CACA,QAAA,CACA,gBAAA,CACA,mCAAA,CACA,6CAAA,CACA,iBAAA,CAEA,kDACC,gBAAA,CACA,aAAA,CAGD,uDACC,YAAA,CACA,kBAAA,CACA,sBAAA,CACA,WAAA,CACA,cAAA,CACA,aAAA,CACA,0CAAA,CACA,wCAAA\",\"sourcesContent\":[\"\\n.files-list__drag-drop-notice {\\n\\tdisplay: flex;\\n\\talign-items: center;\\n\\tjustify-content: center;\\n\\twidth: 100%;\\n\\t// Breadcrumbs height + row thead height\\n\\tmin-height: calc(58px + 55px);\\n\\tmargin: 0;\\n\\tuser-select: none;\\n\\tcolor: var(--color-text-maxcontrast);\\n\\tbackground-color: var(--color-main-background);\\n\\tborder-color: black;\\n\\n\\th3 {\\n\\t\\tmargin-left: 16px;\\n\\t\\tcolor: inherit;\\n\\t}\\n\\n\\t&-wrapper {\\n\\t\\tdisplay: flex;\\n\\t\\talign-items: center;\\n\\t\\tjustify-content: center;\\n\\t\\theight: 15vh;\\n\\t\\tmax-height: 70%;\\n\\t\\tpadding: 0 5vw;\\n\\t\\tborder: 2px var(--color-border-dark) dashed;\\n\\t\\tborder-radius: var(--border-radius-large);\\n\\t}\\n}\\n\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.files-list-drag-image{position:absolute;top:-9999px;left:-9999px;display:flex;overflow:hidden;align-items:center;height:44px;padding:6px 12px;background:var(--color-main-background)}.files-list-drag-image__icon,.files-list-drag-image .files-list__row-icon{display:flex;overflow:hidden;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--border-radius)}.files-list-drag-image__icon{overflow:visible;margin-right:12px}.files-list-drag-image__icon img{max-width:100%;max-height:100%}.files-list-drag-image__icon .material-design-icon{color:var(--color-text-maxcontrast)}.files-list-drag-image__icon .material-design-icon.folder-icon{color:var(--color-primary-element)}.files-list-drag-image__icon>span{display:flex}.files-list-drag-image__icon>span .files-list__row-icon+.files-list__row-icon{margin-top:6px;margin-left:-26px}.files-list-drag-image__icon>span .files-list__row-icon+.files-list__row-icon+.files-list__row-icon{margin-top:12px}.files-list-drag-image__icon>span:not(:empty)+*{display:none}.files-list-drag-image__name{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/components/DragAndDropPreview.vue\"],\"names\":[],\"mappings\":\"AAIA,uBACC,iBAAA,CACA,WAAA,CACA,YAAA,CACA,YAAA,CACA,eAAA,CACA,kBAAA,CACA,WAAA,CACA,gBAAA,CACA,uCAAA,CAEA,0EAEC,YAAA,CACA,eAAA,CACA,kBAAA,CACA,sBAAA,CACA,UAAA,CACA,WAAA,CACA,kCAAA,CAGD,6BACC,gBAAA,CACA,iBAAA,CAEA,iCACC,cAAA,CACA,eAAA,CAGD,mDACC,mCAAA,CACA,+DACC,kCAAA,CAKF,kCACC,YAAA,CAGA,8EACC,cA9CU,CA+CV,iBAAA,CACA,oGACC,eAAA,CAKF,gDACC,YAAA,CAKH,6BACC,eAAA,CACA,kBAAA,CACA,sBAAA\",\"sourcesContent\":[\"\\n$size: 32px;\\n$stack-shift: 6px;\\n\\n.files-list-drag-image {\\n\\tposition: absolute;\\n\\ttop: -9999px;\\n\\tleft: -9999px;\\n\\tdisplay: flex;\\n\\toverflow: hidden;\\n\\talign-items: center;\\n\\theight: 44px;\\n\\tpadding: 6px 12px;\\n\\tbackground: var(--color-main-background);\\n\\n\\t&__icon,\\n\\t.files-list__row-icon {\\n\\t\\tdisplay: flex;\\n\\t\\toverflow: hidden;\\n\\t\\talign-items: center;\\n\\t\\tjustify-content: center;\\n\\t\\twidth: 32px;\\n\\t\\theight: 32px;\\n\\t\\tborder-radius: var(--border-radius);\\n\\t}\\n\\n\\t&__icon {\\n\\t\\toverflow: visible;\\n\\t\\tmargin-right: 12px;\\n\\n\\t\\timg {\\n\\t\\t\\tmax-width: 100%;\\n\\t\\t\\tmax-height: 100%;\\n\\t\\t}\\n\\n\\t\\t.material-design-icon {\\n\\t\\t\\tcolor: var(--color-text-maxcontrast);\\n\\t\\t\\t&.folder-icon {\\n\\t\\t\\t\\tcolor: var(--color-primary-element);\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t// Previews container\\n\\t\\t> span {\\n\\t\\t\\tdisplay: flex;\\n\\n\\t\\t\\t// Stack effect if more than one element\\n\\t\\t\\t.files-list__row-icon + .files-list__row-icon {\\n\\t\\t\\t\\tmargin-top: $stack-shift;\\n\\t\\t\\t\\tmargin-left: $stack-shift - $size;\\n\\t\\t\\t\\t& + .files-list__row-icon {\\n\\t\\t\\t\\t\\tmargin-top: $stack-shift * 2;\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\t\\t\\t// If we have manually clone the preview,\\n\\t\\t\\t// let's hide any fallback icons\\n\\t\\t\\t&:not(:empty) + * {\\n\\t\\t\\t\\tdisplay: none;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n\\n\\t&__name {\\n\\t\\toverflow: hidden;\\n\\t\\twhite-space: nowrap;\\n\\t\\ttext-overflow: ellipsis;\\n\\t}\\n}\\n\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.favorite-marker-icon[data-v-f2d0cf6e]{color:var(--color-favorite);min-width:unset !important;min-height:unset !important}.favorite-marker-icon[data-v-f2d0cf6e] svg{width:26px !important;height:26px !important;max-width:unset !important;max-height:unset !important}.favorite-marker-icon[data-v-f2d0cf6e] svg path{stroke:var(--color-main-background);stroke-width:8px;stroke-linejoin:round;paint-order:stroke}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/components/FileEntry/FavoriteIcon.vue\"],\"names\":[],\"mappings\":\"AACA,uCACC,2BAAA,CAEA,0BAAA,CACG,2BAAA,CAGF,4CAEC,qBAAA,CACA,sBAAA,CAGA,0BAAA,CACA,2BAAA,CAGA,iDACC,mCAAA,CACA,gBAAA,CACA,qBAAA,CACA,kBAAA\",\"sourcesContent\":[\"\\n.favorite-marker-icon {\\n\\tcolor: var(--color-favorite);\\n\\t// Override NcIconSvgWrapper defaults (clickable area)\\n\\tmin-width: unset !important;\\n min-height: unset !important;\\n\\n\\t:deep() {\\n\\t\\tsvg {\\n\\t\\t\\t// We added a stroke for a11y so we must increase the size to include the stroke\\n\\t\\t\\twidth: 26px !important;\\n\\t\\t\\theight: 26px !important;\\n\\n\\t\\t\\t// Override NcIconSvgWrapper defaults of 20px\\n\\t\\t\\tmax-width: unset !important;\\n\\t\\t\\tmax-height: unset !important;\\n\\n\\t\\t\\t// Sow a border around the icon for better contrast\\n\\t\\t\\tpath {\\n\\t\\t\\t\\tstroke: var(--color-main-background);\\n\\t\\t\\t\\tstroke-width: 8px;\\n\\t\\t\\t\\tstroke-linejoin: round;\\n\\t\\t\\t\\tpaint-order: stroke;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `main.app-content[style*=mouse-pos-x] .v-popper__popper{transform:translate3d(var(--mouse-pos-x), var(--mouse-pos-y), 0px) !important}main.app-content[style*=mouse-pos-x] .v-popper__popper[data-popper-placement=top]{transform:translate3d(var(--mouse-pos-x), calc(var(--mouse-pos-y) - 50vh + 34px), 0px) !important}main.app-content[style*=mouse-pos-x] .v-popper__popper .v-popper__arrow-container{display:none}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/components/FileEntry/FileEntryActions.vue\"],\"names\":[],\"mappings\":\"AAGA,uDACC,6EAAA,CAGA,kFAEC,iGAAA,CAGD,kFACC,YAAA\",\"sourcesContent\":[\"\\n// Allow right click to define the position of the menu\\n// only if defined\\nmain.app-content[style*=\\\"mouse-pos-x\\\"] .v-popper__popper {\\n\\ttransform: translate3d(var(--mouse-pos-x), var(--mouse-pos-y), 0px) !important;\\n\\n\\t// If the menu is too close to the bottom, we move it up\\n\\t&[data-popper-placement=\\\"top\\\"] {\\n\\t\\t// 34px added to align with the top of the cursor\\n\\t\\ttransform: translate3d(var(--mouse-pos-x), calc(var(--mouse-pos-y) - 50vh + 34px), 0px) !important;\\n\\t}\\n\\t// Hide arrow if floating\\n\\t.v-popper__arrow-container {\\n\\t\\tdisplay: none;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `[data-v-801e4784] .button-vue--icon-and-text .button-vue__text{color:var(--color-primary-element)}[data-v-801e4784] .button-vue--icon-and-text .button-vue__icon{color:var(--color-primary-element)}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/components/FileEntry/FileEntryActions.vue\"],\"names\":[],\"mappings\":\"AAEC,+DACC,kCAAA,CAED,+DACC,kCAAA\",\"sourcesContent\":[\"\\n:deep(.button-vue--icon-and-text, .files-list__row-action-sharing-status) {\\n\\t.button-vue__text {\\n\\t\\tcolor: var(--color-primary-element);\\n\\t}\\n\\t.button-vue__icon {\\n\\t\\tcolor: var(--color-primary-element);\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `tr[data-v-130ade4f]{margin-bottom:300px;border-top:1px solid var(--color-border);background-color:rgba(0,0,0,0) !important;border-bottom:none !important}tr td[data-v-130ade4f]{user-select:none;color:var(--color-text-maxcontrast) !important}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/components/FilesListTableFooter.vue\"],\"names\":[],\"mappings\":\"AAEA,oBACC,mBAAA,CACA,wCAAA,CAEA,yCAAA,CACA,6BAAA,CAEA,uBACC,gBAAA,CAEA,8CAAA\",\"sourcesContent\":[\"\\n// Scoped row\\ntr {\\n\\tmargin-bottom: 300px;\\n\\tborder-top: 1px solid var(--color-border);\\n\\t// Prevent hover effect on the whole row\\n\\tbackground-color: transparent !important;\\n\\tborder-bottom: none !important;\\n\\n\\ttd {\\n\\t\\tuser-select: none;\\n\\t\\t// Make sure the cell colors don't apply to column headers\\n\\t\\tcolor: var(--color-text-maxcontrast) !important;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.files-list__column[data-v-6eaeabb8]{user-select:none;color:var(--color-text-maxcontrast) !important}.files-list__column--sortable[data-v-6eaeabb8]{cursor:pointer}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/components/FilesListTableHeader.vue\"],\"names\":[],\"mappings\":\"AACA,qCACC,gBAAA,CAEA,8CAAA,CAEA,+CACC,cAAA\",\"sourcesContent\":[\"\\n.files-list__column {\\n\\tuser-select: none;\\n\\t// Make sure the cell colors don't apply to column headers\\n\\tcolor: var(--color-text-maxcontrast) !important;\\n\\n\\t&--sortable {\\n\\t\\tcursor: pointer;\\n\\t}\\n}\\n\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.files-list__row-actions-batch[data-v-1284c4be]{flex:1 1 100% !important;max-width:100%}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/components/FilesListTableHeaderActions.vue\"],\"names\":[],\"mappings\":\"AACA,gDACC,wBAAA,CACA,cAAA\",\"sourcesContent\":[\"\\n.files-list__row-actions-batch {\\n\\tflex: 1 1 100% !important;\\n\\tmax-width: 100%;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.files-list__column-sort-button[data-v-4e97a5c6]{margin:0 calc(var(--cell-margin)*-1);min-width:calc(100% - 3*var(--cell-margin)) !important}.files-list__column-sort-button-text[data-v-4e97a5c6]{color:var(--color-text-maxcontrast);font-weight:normal}.files-list__column-sort-button-icon[data-v-4e97a5c6]{color:var(--color-text-maxcontrast);opacity:0;transition:opacity var(--animation-quick);inset-inline-start:-10px}.files-list__column-sort-button--size .files-list__column-sort-button-icon[data-v-4e97a5c6]{inset-inline-start:10px}.files-list__column-sort-button--active .files-list__column-sort-button-icon[data-v-4e97a5c6],.files-list__column-sort-button:hover .files-list__column-sort-button-icon[data-v-4e97a5c6],.files-list__column-sort-button:focus .files-list__column-sort-button-icon[data-v-4e97a5c6],.files-list__column-sort-button:active .files-list__column-sort-button-icon[data-v-4e97a5c6]{opacity:1}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/components/FilesListTableHeaderButton.vue\"],\"names\":[],\"mappings\":\"AACA,iDAEC,oCAAA,CACA,sDAAA,CAEA,sDACC,mCAAA,CACA,kBAAA,CAGD,sDACC,mCAAA,CACA,SAAA,CACA,yCAAA,CACA,wBAAA,CAGD,4FACC,uBAAA,CAGD,mXAIC,SAAA\",\"sourcesContent\":[\"\\n.files-list__column-sort-button {\\n\\t// Compensate for cells margin\\n\\tmargin: 0 calc(var(--cell-margin) * -1);\\n\\tmin-width: calc(100% - 3 * var(--cell-margin))!important;\\n\\n\\t&-text {\\n\\t\\tcolor: var(--color-text-maxcontrast);\\n\\t\\tfont-weight: normal;\\n\\t}\\n\\n\\t&-icon {\\n\\t\\tcolor: var(--color-text-maxcontrast);\\n\\t\\topacity: 0;\\n\\t\\ttransition: opacity var(--animation-quick);\\n\\t\\tinset-inline-start: -10px;\\n\\t}\\n\\n\\t&--size &-icon {\\n\\t\\tinset-inline-start: 10px;\\n\\t}\\n\\n\\t&--active &-icon,\\n\\t&:hover &-icon,\\n\\t&:focus &-icon,\\n\\t&:active &-icon {\\n\\t\\topacity: 1;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.files-list[data-v-1287bfe2]{--row-height: 55px;--cell-margin: 14px;--checkbox-padding: calc((var(--row-height) - var(--checkbox-size)) / 2);--checkbox-size: 24px;--clickable-area: 44px;--icon-preview-size: 32px;overflow:auto;height:100%;will-change:scroll-position}.files-list[data-v-1287bfe2] tbody{will-change:padding;contain:layout paint style;display:flex;flex-direction:column;width:100%;position:relative}.files-list[data-v-1287bfe2] tbody tr{contain:strict}.files-list[data-v-1287bfe2] tbody tr:hover,.files-list[data-v-1287bfe2] tbody tr:focus{background-color:var(--color-background-dark)}.files-list[data-v-1287bfe2] .files-list__before{display:flex;flex-direction:column}.files-list[data-v-1287bfe2] .files-list__selected{padding-right:12px;white-space:nowrap}.files-list[data-v-1287bfe2] .files-list__table{display:block}.files-list[data-v-1287bfe2] .files-list__table.files-list__table--with-thead-overlay{margin-top:calc(-1*var(--row-height))}.files-list[data-v-1287bfe2] .files-list__thead-overlay{position:sticky;top:0;margin-left:var(--row-height);z-index:20;display:flex;align-items:center;background-color:var(--color-main-background);border-bottom:1px solid var(--color-border);height:var(--row-height)}.files-list[data-v-1287bfe2] .files-list__thead,.files-list[data-v-1287bfe2] .files-list__tfoot{display:flex;flex-direction:column;width:100%;background-color:var(--color-main-background)}.files-list[data-v-1287bfe2] .files-list__thead{position:sticky;z-index:10;top:0}.files-list[data-v-1287bfe2] .files-list__tfoot{min-height:300px}.files-list[data-v-1287bfe2] tr{position:relative;display:flex;align-items:center;width:100%;user-select:none;border-bottom:1px solid var(--color-border);box-sizing:border-box;user-select:none;height:var(--row-height)}.files-list[data-v-1287bfe2] td,.files-list[data-v-1287bfe2] th{display:flex;align-items:center;flex:0 0 auto;justify-content:left;width:var(--row-height);height:var(--row-height);margin:0;padding:0;color:var(--color-text-maxcontrast);border:none}.files-list[data-v-1287bfe2] td span,.files-list[data-v-1287bfe2] th span{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.files-list[data-v-1287bfe2] .files-list__row--failed{position:absolute;display:block;top:0;left:0;right:0;bottom:0;opacity:.1;z-index:-1;background:var(--color-error)}.files-list[data-v-1287bfe2] .files-list__row-checkbox{justify-content:center}.files-list[data-v-1287bfe2] .files-list__row-checkbox .checkbox-radio-switch{display:flex;justify-content:center;--icon-size: var(--checkbox-size)}.files-list[data-v-1287bfe2] .files-list__row-checkbox .checkbox-radio-switch label.checkbox-radio-switch__label{width:var(--clickable-area);height:var(--clickable-area);margin:0;padding:calc((var(--clickable-area) - var(--checkbox-size))/2)}.files-list[data-v-1287bfe2] .files-list__row-checkbox .checkbox-radio-switch .checkbox-radio-switch__icon{margin:0 !important}.files-list[data-v-1287bfe2] .files-list__row:hover,.files-list[data-v-1287bfe2] .files-list__row:focus,.files-list[data-v-1287bfe2] .files-list__row:active,.files-list[data-v-1287bfe2] .files-list__row--active,.files-list[data-v-1287bfe2] .files-list__row--dragover{background-color:var(--color-background-hover);--color-text-maxcontrast: var(--color-main-text)}.files-list[data-v-1287bfe2] .files-list__row:hover>*,.files-list[data-v-1287bfe2] .files-list__row:focus>*,.files-list[data-v-1287bfe2] .files-list__row:active>*,.files-list[data-v-1287bfe2] .files-list__row--active>*,.files-list[data-v-1287bfe2] .files-list__row--dragover>*{--color-border: var(--color-border-dark)}.files-list[data-v-1287bfe2] .files-list__row:hover .favorite-marker-icon svg path,.files-list[data-v-1287bfe2] .files-list__row:focus .favorite-marker-icon svg path,.files-list[data-v-1287bfe2] .files-list__row:active .favorite-marker-icon svg path,.files-list[data-v-1287bfe2] .files-list__row--active .favorite-marker-icon svg path,.files-list[data-v-1287bfe2] .files-list__row--dragover .favorite-marker-icon svg path{stroke:var(--color-background-hover)}.files-list[data-v-1287bfe2] .files-list__row--dragover *{pointer-events:none}.files-list[data-v-1287bfe2] .files-list__row-icon{position:relative;display:flex;overflow:visible;align-items:center;flex:0 0 var(--icon-preview-size);justify-content:center;width:var(--icon-preview-size);height:100%;margin-right:var(--checkbox-padding);color:var(--color-primary-element)}.files-list[data-v-1287bfe2] .files-list__row-icon *{cursor:pointer}.files-list[data-v-1287bfe2] .files-list__row-icon>span{justify-content:flex-start}.files-list[data-v-1287bfe2] .files-list__row-icon>span:not(.files-list__row-icon-favorite) svg{width:var(--icon-preview-size);height:var(--icon-preview-size)}.files-list[data-v-1287bfe2] .files-list__row-icon>span.folder-icon,.files-list[data-v-1287bfe2] .files-list__row-icon>span.folder-open-icon{margin:-3px}.files-list[data-v-1287bfe2] .files-list__row-icon>span.folder-icon svg,.files-list[data-v-1287bfe2] .files-list__row-icon>span.folder-open-icon svg{width:calc(var(--icon-preview-size) + 6px);height:calc(var(--icon-preview-size) + 6px)}.files-list[data-v-1287bfe2] .files-list__row-icon-preview{overflow:hidden;width:var(--icon-preview-size);height:var(--icon-preview-size);border-radius:var(--border-radius);object-fit:contain;object-position:center}.files-list[data-v-1287bfe2] .files-list__row-icon-preview:not(.files-list__row-icon-preview--loaded){background:var(--color-loading-dark)}.files-list[data-v-1287bfe2] .files-list__row-icon-favorite{position:absolute;top:0px;right:-10px}.files-list[data-v-1287bfe2] .files-list__row-icon-overlay{position:absolute;max-height:calc(var(--icon-preview-size)*.5);max-width:calc(var(--icon-preview-size)*.5);color:var(--color-primary-element-text);margin-top:2px}.files-list[data-v-1287bfe2] .files-list__row-icon-overlay--file{color:var(--color-main-text);background:var(--color-main-background);border-radius:100%}.files-list[data-v-1287bfe2] .files-list__row-name{overflow:hidden;flex:1 1 auto}.files-list[data-v-1287bfe2] .files-list__row-name a{display:flex;align-items:center;width:100%;height:100%;min-width:0}.files-list[data-v-1287bfe2] .files-list__row-name a:focus-visible{outline:none}.files-list[data-v-1287bfe2] .files-list__row-name a:focus .files-list__row-name-text{outline:2px solid var(--color-main-text) !important;border-radius:20px}.files-list[data-v-1287bfe2] .files-list__row-name a:focus:not(:focus-visible) .files-list__row-name-text{outline:none !important}.files-list[data-v-1287bfe2] .files-list__row-name .files-list__row-name-text{color:var(--color-main-text);padding:5px 10px;margin-left:-10px;display:inline-flex}.files-list[data-v-1287bfe2] .files-list__row-name .files-list__row-name-ext{color:var(--color-text-maxcontrast);overflow:visible}.files-list[data-v-1287bfe2] .files-list__row-rename{width:100%;max-width:600px}.files-list[data-v-1287bfe2] .files-list__row-rename input{width:100%;margin-left:-8px;padding:2px 6px;border-width:2px}.files-list[data-v-1287bfe2] .files-list__row-rename input:invalid{border-color:var(--color-error);color:red}.files-list[data-v-1287bfe2] .files-list__row-actions{width:auto}.files-list[data-v-1287bfe2] .files-list__row-actions~td,.files-list[data-v-1287bfe2] .files-list__row-actions~th{margin:0 var(--cell-margin)}.files-list[data-v-1287bfe2] .files-list__row-actions button .button-vue__text{font-weight:normal}.files-list[data-v-1287bfe2] .files-list__row-action--inline{margin-right:7px}.files-list[data-v-1287bfe2] .files-list__row-mtime,.files-list[data-v-1287bfe2] .files-list__row-size{color:var(--color-text-maxcontrast)}.files-list[data-v-1287bfe2] .files-list__row-size{width:calc(var(--row-height)*1.5);justify-content:flex-end}.files-list[data-v-1287bfe2] .files-list__row-mtime{width:calc(var(--row-height)*2)}.files-list[data-v-1287bfe2] .files-list__row-column-custom{width:calc(var(--row-height)*2)}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/components/FilesListVirtual.vue\"],\"names\":[],\"mappings\":\"AACA,6BACC,kBAAA,CACA,mBAAA,CAEA,wEAAA,CACA,qBAAA,CACA,sBAAA,CACA,yBAAA,CAEA,aAAA,CACA,WAAA,CACA,2BAAA,CAIC,oCACC,mBAAA,CACA,0BAAA,CACA,YAAA,CACA,qBAAA,CACA,UAAA,CAEA,iBAAA,CAGA,uCACC,cAAA,CACA,0FAEC,6CAAA,CAMH,kDACC,YAAA,CACA,qBAAA,CAGD,oDACC,kBAAA,CACA,kBAAA,CAGD,iDACC,aAAA,CAEA,uFAEC,qCAAA,CAIF,yDAEC,eAAA,CACA,KAAA,CAEA,6BAAA,CAEA,UAAA,CAEA,YAAA,CACA,kBAAA,CAGA,6CAAA,CACA,2CAAA,CACA,wBAAA,CAGD,kGAEC,YAAA,CACA,qBAAA,CACA,UAAA,CACA,6CAAA,CAKD,iDAEC,eAAA,CACA,UAAA,CACA,KAAA,CAID,iDACC,gBAAA,CAGD,iCACC,iBAAA,CACA,YAAA,CACA,kBAAA,CACA,UAAA,CACA,gBAAA,CACA,2CAAA,CACA,qBAAA,CACA,gBAAA,CACA,wBAAA,CAGD,kEACC,YAAA,CACA,kBAAA,CACA,aAAA,CACA,oBAAA,CACA,uBAAA,CACA,wBAAA,CACA,QAAA,CACA,SAAA,CACA,mCAAA,CACA,WAAA,CAKA,4EACC,eAAA,CACA,kBAAA,CACA,sBAAA,CAIF,uDACC,iBAAA,CACA,aAAA,CACA,KAAA,CACA,MAAA,CACA,OAAA,CACA,QAAA,CACA,UAAA,CACA,UAAA,CACA,6BAAA,CAGD,wDACC,sBAAA,CAEA,+EACC,YAAA,CACA,sBAAA,CAEA,iCAAA,CAEA,kHACC,2BAAA,CACA,4BAAA,CACA,QAAA,CACA,8DAAA,CAGD,4GACC,mBAAA,CAMF,gRAEC,8CAAA,CAGA,gDAAA,CACA,0RACC,wCAAA,CAID,2aACC,oCAAA,CAIF,2DAEC,mBAAA,CAKF,oDACC,iBAAA,CACA,YAAA,CACA,gBAAA,CACA,kBAAA,CAEA,iCAAA,CACA,sBAAA,CACA,8BAAA,CACA,WAAA,CAEA,oCAAA,CACA,kCAAA,CAGA,sDACC,cAAA,CAGD,yDACC,0BAAA,CAEA,iGACC,8BAAA,CACA,+BAAA,CAID,+IAEC,WAAA,CACA,uJACC,0CAAA,CACA,2CAAA,CAKH,4DACC,eAAA,CACA,8BAAA,CACA,+BAAA,CACA,kCAAA,CAEA,kBAAA,CACA,sBAAA,CAGA,uGACC,oCAAA,CAKF,6DACC,iBAAA,CACA,OAAA,CACA,WAAA,CAID,4DACC,iBAAA,CACA,4CAAA,CACA,2CAAA,CACA,uCAAA,CAEA,cAAA,CAGA,kEACC,4BAAA,CACA,uCAAA,CACA,kBAAA,CAMH,oDAEC,eAAA,CAEA,aAAA,CAEA,sDACC,YAAA,CACA,kBAAA,CAEA,UAAA,CACA,WAAA,CAEA,WAAA,CAGA,oEACC,YAAA,CAID,uFACC,mDAAA,CACA,kBAAA,CAED,2GACC,uBAAA,CAIF,+EACC,4BAAA,CAEA,gBAAA,CACA,iBAAA,CAEA,mBAAA,CAGD,8EACC,mCAAA,CAEA,gBAAA,CAKF,sDACC,UAAA,CACA,eAAA,CACA,4DACC,UAAA,CAEA,gBAAA,CACA,eAAA,CACA,gBAAA,CAEA,oEAEC,+BAAA,CACA,SAAA,CAKH,uDAEC,UAAA,CAGA,oHAEC,2BAAA,CAIA,gFAEC,kBAAA,CAKH,8DACC,gBAAA,CAGD,yGAEC,mCAAA,CAED,oDACC,iCAAA,CAEA,wBAAA,CAGD,qDACC,+BAAA,CAGD,6DACC,+BAAA\",\"sourcesContent\":[\"\\n.files-list {\\n\\t--row-height: 55px;\\n\\t--cell-margin: 14px;\\n\\n\\t--checkbox-padding: calc((var(--row-height) - var(--checkbox-size)) / 2);\\n\\t--checkbox-size: 24px;\\n\\t--clickable-area: 44px;\\n\\t--icon-preview-size: 32px;\\n\\n\\toverflow: auto;\\n\\theight: 100%;\\n\\twill-change: scroll-position;\\n\\n\\t& :deep() {\\n\\t\\t// Table head, body and footer\\n\\t\\ttbody {\\n\\t\\t\\twill-change: padding;\\n\\t\\t\\tcontain: layout paint style;\\n\\t\\t\\tdisplay: flex;\\n\\t\\t\\tflex-direction: column;\\n\\t\\t\\twidth: 100%;\\n\\t\\t\\t// Necessary for virtual scrolling absolute\\n\\t\\t\\tposition: relative;\\n\\n\\t\\t\\t/* Hover effect on tbody lines only */\\n\\t\\t\\ttr {\\n\\t\\t\\t\\tcontain: strict;\\n\\t\\t\\t\\t&:hover,\\n\\t\\t\\t\\t&:focus {\\n\\t\\t\\t\\t\\tbackground-color: var(--color-background-dark);\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t// Before table and thead\\n\\t\\t.files-list__before {\\n\\t\\t\\tdisplay: flex;\\n\\t\\t\\tflex-direction: column;\\n\\t\\t}\\n\\n\\t\\t.files-list__selected {\\n\\t\\t\\tpadding-right: 12px;\\n\\t\\t\\twhite-space: nowrap;\\n\\t\\t}\\n\\n\\t\\t.files-list__table {\\n\\t\\t\\tdisplay: block;\\n\\n\\t\\t\\t&.files-list__table--with-thead-overlay {\\n\\t\\t\\t\\t// Hide the table header below the overlay\\n\\t\\t\\t\\tmargin-top: calc(-1 * var(--row-height));\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t.files-list__thead-overlay {\\n\\t\\t\\t// Pinned on top when scrolling\\n\\t\\t\\tposition: sticky;\\n\\t\\t\\ttop: 0;\\n\\t\\t\\t// Save space for a row checkbox\\n\\t\\t\\tmargin-left: var(--row-height);\\n\\t\\t\\t// More than .files-list__thead\\n\\t\\t\\tz-index: 20;\\n\\n\\t\\t\\tdisplay: flex;\\n\\t\\t\\talign-items: center;\\n\\n\\t\\t\\t// Reuse row styles\\n\\t\\t\\tbackground-color: var(--color-main-background);\\n\\t\\t\\tborder-bottom: 1px solid var(--color-border);\\n\\t\\t\\theight: var(--row-height);\\n\\t\\t}\\n\\n\\t\\t.files-list__thead,\\n\\t\\t.files-list__tfoot {\\n\\t\\t\\tdisplay: flex;\\n\\t\\t\\tflex-direction: column;\\n\\t\\t\\twidth: 100%;\\n\\t\\t\\tbackground-color: var(--color-main-background);\\n\\n\\t\\t}\\n\\n\\t\\t// Table header\\n\\t\\t.files-list__thead {\\n\\t\\t\\t// Pinned on top when scrolling\\n\\t\\t\\tposition: sticky;\\n\\t\\t\\tz-index: 10;\\n\\t\\t\\ttop: 0;\\n\\t\\t}\\n\\n\\t\\t// Table footer\\n\\t\\t.files-list__tfoot {\\n\\t\\t\\tmin-height: 300px;\\n\\t\\t}\\n\\n\\t\\ttr {\\n\\t\\t\\tposition: relative;\\n\\t\\t\\tdisplay: flex;\\n\\t\\t\\talign-items: center;\\n\\t\\t\\twidth: 100%;\\n\\t\\t\\tuser-select: none;\\n\\t\\t\\tborder-bottom: 1px solid var(--color-border);\\n\\t\\t\\tbox-sizing: border-box;\\n\\t\\t\\tuser-select: none;\\n\\t\\t\\theight: var(--row-height);\\n\\t\\t}\\n\\n\\t\\ttd, th {\\n\\t\\t\\tdisplay: flex;\\n\\t\\t\\talign-items: center;\\n\\t\\t\\tflex: 0 0 auto;\\n\\t\\t\\tjustify-content: left;\\n\\t\\t\\twidth: var(--row-height);\\n\\t\\t\\theight: var(--row-height);\\n\\t\\t\\tmargin: 0;\\n\\t\\t\\tpadding: 0;\\n\\t\\t\\tcolor: var(--color-text-maxcontrast);\\n\\t\\t\\tborder: none;\\n\\n\\t\\t\\t// Columns should try to add any text\\n\\t\\t\\t// node wrapped in a span. That should help\\n\\t\\t\\t// with the ellipsis on overflow.\\n\\t\\t\\tspan {\\n\\t\\t\\t\\toverflow: hidden;\\n\\t\\t\\t\\twhite-space: nowrap;\\n\\t\\t\\t\\ttext-overflow: ellipsis;\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t.files-list__row--failed {\\n\\t\\t\\tposition: absolute;\\n\\t\\t\\tdisplay: block;\\n\\t\\t\\ttop: 0;\\n\\t\\t\\tleft: 0;\\n\\t\\t\\tright: 0;\\n\\t\\t\\tbottom: 0;\\n\\t\\t\\topacity: .1;\\n\\t\\t\\tz-index: -1;\\n\\t\\t\\tbackground: var(--color-error);\\n\\t\\t}\\n\\n\\t\\t.files-list__row-checkbox {\\n\\t\\t\\tjustify-content: center;\\n\\n\\t\\t\\t.checkbox-radio-switch {\\n\\t\\t\\t\\tdisplay: flex;\\n\\t\\t\\t\\tjustify-content: center;\\n\\n\\t\\t\\t\\t--icon-size: var(--checkbox-size);\\n\\n\\t\\t\\t\\tlabel.checkbox-radio-switch__label {\\n\\t\\t\\t\\t\\twidth: var(--clickable-area);\\n\\t\\t\\t\\t\\theight: var(--clickable-area);\\n\\t\\t\\t\\t\\tmargin: 0;\\n\\t\\t\\t\\t\\tpadding: calc((var(--clickable-area) - var(--checkbox-size)) / 2);\\n\\t\\t\\t\\t}\\n\\n\\t\\t\\t\\t.checkbox-radio-switch__icon {\\n\\t\\t\\t\\t\\tmargin: 0 !important;\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t.files-list__row {\\n\\t\\t\\t&:hover, &:focus, &:active, &--active, &--dragover {\\n\\t\\t\\t\\t// WCAG AA compliant\\n\\t\\t\\t\\tbackground-color: var(--color-background-hover);\\n\\t\\t\\t\\t// text-maxcontrast have been designed to pass WCAG AA over\\n\\t\\t\\t\\t// a white background, we need to adjust then.\\n\\t\\t\\t\\t--color-text-maxcontrast: var(--color-main-text);\\n\\t\\t\\t\\t> * {\\n\\t\\t\\t\\t\\t--color-border: var(--color-border-dark);\\n\\t\\t\\t\\t}\\n\\n\\t\\t\\t\\t// Hover state of the row should also change the favorite markers background\\n\\t\\t\\t\\t.favorite-marker-icon svg path {\\n\\t\\t\\t\\t\\tstroke: var(--color-background-hover);\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\n\\t\\t\\t&--dragover * {\\n\\t\\t\\t\\t// Prevent dropping on row children\\n\\t\\t\\t\\tpointer-events: none;\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t// Entry preview or mime icon\\n\\t\\t.files-list__row-icon {\\n\\t\\t\\tposition: relative;\\n\\t\\t\\tdisplay: flex;\\n\\t\\t\\toverflow: visible;\\n\\t\\t\\talign-items: center;\\n\\t\\t\\t// No shrinking or growing allowed\\n\\t\\t\\tflex: 0 0 var(--icon-preview-size);\\n\\t\\t\\tjustify-content: center;\\n\\t\\t\\twidth: var(--icon-preview-size);\\n\\t\\t\\theight: 100%;\\n\\t\\t\\t// Show same padding as the checkbox right padding for visual balance\\n\\t\\t\\tmargin-right: var(--checkbox-padding);\\n\\t\\t\\tcolor: var(--color-primary-element);\\n\\n\\t\\t\\t// Icon is also clickable\\n\\t\\t\\t* {\\n\\t\\t\\t\\tcursor: pointer;\\n\\t\\t\\t}\\n\\n\\t\\t\\t& > span {\\n\\t\\t\\t\\tjustify-content: flex-start;\\n\\n\\t\\t\\t\\t&:not(.files-list__row-icon-favorite) svg {\\n\\t\\t\\t\\t\\twidth: var(--icon-preview-size);\\n\\t\\t\\t\\t\\theight: var(--icon-preview-size);\\n\\t\\t\\t\\t}\\n\\n\\t\\t\\t\\t// Slightly increase the size of the folder icon\\n\\t\\t\\t\\t&.folder-icon,\\n\\t\\t\\t\\t&.folder-open-icon {\\n\\t\\t\\t\\t\\tmargin: -3px;\\n\\t\\t\\t\\t\\tsvg {\\n\\t\\t\\t\\t\\t\\twidth: calc(var(--icon-preview-size) + 6px);\\n\\t\\t\\t\\t\\t\\theight: calc(var(--icon-preview-size) + 6px);\\n\\t\\t\\t\\t\\t}\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\n\\t\\t\\t&-preview {\\n\\t\\t\\t\\toverflow: hidden;\\n\\t\\t\\t\\twidth: var(--icon-preview-size);\\n\\t\\t\\t\\theight: var(--icon-preview-size);\\n\\t\\t\\t\\tborder-radius: var(--border-radius);\\n\\t\\t\\t\\t// Center and contain the preview\\n\\t\\t\\t\\tobject-fit: contain;\\n\\t\\t\\t\\tobject-position: center;\\n\\n\\t\\t\\t\\t/* Preview not loaded animation effect */\\n\\t\\t\\t\\t&:not(.files-list__row-icon-preview--loaded) {\\n\\t\\t\\t\\t\\tbackground: var(--color-loading-dark);\\n\\t\\t\\t\\t\\t// animation: preview-gradient-fade 1.2s ease-in-out infinite;\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\n\\t\\t\\t&-favorite {\\n\\t\\t\\t\\tposition: absolute;\\n\\t\\t\\t\\ttop: 0px;\\n\\t\\t\\t\\tright: -10px;\\n\\t\\t\\t}\\n\\n\\t\\t\\t// File and folder overlay\\n\\t\\t\\t&-overlay {\\n\\t\\t\\t\\tposition: absolute;\\n\\t\\t\\t\\tmax-height: calc(var(--icon-preview-size) * 0.5);\\n\\t\\t\\t\\tmax-width: calc(var(--icon-preview-size) * 0.5);\\n\\t\\t\\t\\tcolor: var(--color-primary-element-text);\\n\\t\\t\\t\\t// better alignment with the folder icon\\n\\t\\t\\t\\tmargin-top: 2px;\\n\\n\\t\\t\\t\\t// Improve icon contrast with a background for files\\n\\t\\t\\t\\t&--file {\\n\\t\\t\\t\\t\\tcolor: var(--color-main-text);\\n\\t\\t\\t\\t\\tbackground: var(--color-main-background);\\n\\t\\t\\t\\t\\tborder-radius: 100%;\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t// Entry link\\n\\t\\t.files-list__row-name {\\n\\t\\t\\t// Prevent link from overflowing\\n\\t\\t\\toverflow: hidden;\\n\\t\\t\\t// Take as much space as possible\\n\\t\\t\\tflex: 1 1 auto;\\n\\n\\t\\t\\ta {\\n\\t\\t\\t\\tdisplay: flex;\\n\\t\\t\\t\\talign-items: center;\\n\\t\\t\\t\\t// Fill cell height and width\\n\\t\\t\\t\\twidth: 100%;\\n\\t\\t\\t\\theight: 100%;\\n\\t\\t\\t\\t// Necessary for flex grow to work\\n\\t\\t\\t\\tmin-width: 0;\\n\\n\\t\\t\\t\\t// Already added to the inner text, see rule below\\n\\t\\t\\t\\t&:focus-visible {\\n\\t\\t\\t\\t\\toutline: none;\\n\\t\\t\\t\\t}\\n\\n\\t\\t\\t\\t// Keyboard indicator a11y\\n\\t\\t\\t\\t&:focus .files-list__row-name-text {\\n\\t\\t\\t\\t\\toutline: 2px solid var(--color-main-text) !important;\\n\\t\\t\\t\\t\\tborder-radius: 20px;\\n\\t\\t\\t\\t}\\n\\t\\t\\t\\t&:focus:not(:focus-visible) .files-list__row-name-text {\\n\\t\\t\\t\\t\\toutline: none !important;\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\n\\t\\t\\t.files-list__row-name-text {\\n\\t\\t\\t\\tcolor: var(--color-main-text);\\n\\t\\t\\t\\t// Make some space for the outline\\n\\t\\t\\t\\tpadding: 5px 10px;\\n\\t\\t\\t\\tmargin-left: -10px;\\n\\t\\t\\t\\t// Align two name and ext\\n\\t\\t\\t\\tdisplay: inline-flex;\\n\\t\\t\\t}\\n\\n\\t\\t\\t.files-list__row-name-ext {\\n\\t\\t\\t\\tcolor: var(--color-text-maxcontrast);\\n\\t\\t\\t\\t// always show the extension\\n\\t\\t\\t\\toverflow: visible;\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t// Rename form\\n\\t\\t.files-list__row-rename {\\n\\t\\t\\twidth: 100%;\\n\\t\\t\\tmax-width: 600px;\\n\\t\\t\\tinput {\\n\\t\\t\\t\\twidth: 100%;\\n\\t\\t\\t\\t// Align with text, 0 - padding - border\\n\\t\\t\\t\\tmargin-left: -8px;\\n\\t\\t\\t\\tpadding: 2px 6px;\\n\\t\\t\\t\\tborder-width: 2px;\\n\\n\\t\\t\\t\\t&:invalid {\\n\\t\\t\\t\\t\\t// Show red border on invalid input\\n\\t\\t\\t\\t\\tborder-color: var(--color-error);\\n\\t\\t\\t\\t\\tcolor: red;\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t.files-list__row-actions {\\n\\t\\t\\t// take as much space as necessary\\n\\t\\t\\twidth: auto;\\n\\n\\t\\t\\t// Add margin to all cells after the actions\\n\\t\\t\\t& ~ td,\\n\\t\\t\\t& ~ th {\\n\\t\\t\\t\\tmargin: 0 var(--cell-margin);\\n\\t\\t\\t}\\n\\n\\t\\t\\tbutton {\\n\\t\\t\\t\\t.button-vue__text {\\n\\t\\t\\t\\t\\t// Remove bold from default button styling\\n\\t\\t\\t\\t\\tfont-weight: normal;\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t.files-list__row-action--inline {\\n\\t\\t\\tmargin-right: 7px;\\n\\t\\t}\\n\\n\\t\\t.files-list__row-mtime,\\n\\t\\t.files-list__row-size {\\n\\t\\t\\tcolor: var(--color-text-maxcontrast);\\n\\t\\t}\\n\\t\\t.files-list__row-size {\\n\\t\\t\\twidth: calc(var(--row-height) * 1.5);\\n\\t\\t\\t// Right align content/text\\n\\t\\t\\tjustify-content: flex-end;\\n\\t\\t}\\n\\n\\t\\t.files-list__row-mtime {\\n\\t\\t\\twidth: calc(var(--row-height) * 2);\\n\\t\\t}\\n\\n\\t\\t.files-list__row-column-custom {\\n\\t\\t\\twidth: calc(var(--row-height) * 2);\\n\\t\\t}\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `tbody.files-list__tbody.files-list__tbody--grid{--half-clickable-area: calc(var(--clickable-area) / 2);--row-width: 160px;--row-height: calc(var(--row-width) - var(--half-clickable-area));--icon-preview-size: calc(var(--row-width) - var(--clickable-area));--checkbox-padding: 0px;display:grid;grid-template-columns:repeat(auto-fill, var(--row-width));grid-gap:15px;row-gap:15px;align-content:center;align-items:center;justify-content:space-around;justify-items:center}tbody.files-list__tbody.files-list__tbody--grid tr{width:var(--row-width);height:calc(var(--row-height) + var(--clickable-area));border:none;border-radius:var(--border-radius)}tbody.files-list__tbody.files-list__tbody--grid .files-list__row-checkbox{position:absolute;z-index:9;top:0;left:0;overflow:hidden;width:var(--clickable-area);height:var(--clickable-area);border-radius:var(--half-clickable-area)}tbody.files-list__tbody.files-list__tbody--grid .files-list__row-icon-favorite{position:absolute;top:0;right:0;display:flex;align-items:center;justify-content:center;width:var(--clickable-area);height:var(--clickable-area)}tbody.files-list__tbody.files-list__tbody--grid .files-list__row-name{display:grid;justify-content:stretch;width:100%;height:100%;grid-auto-rows:var(--row-height) var(--clickable-area)}tbody.files-list__tbody.files-list__tbody--grid .files-list__row-name span.files-list__row-icon{width:100%;height:100%;padding-top:var(--half-clickable-area)}tbody.files-list__tbody.files-list__tbody--grid .files-list__row-name a.files-list__row-name-link{width:calc(100% - var(--clickable-area));height:var(--clickable-area)}tbody.files-list__tbody.files-list__tbody--grid .files-list__row-name .files-list__row-name-text{margin:0;padding-right:0}tbody.files-list__tbody.files-list__tbody--grid .files-list__row-actions{position:absolute;right:0;bottom:0;width:var(--clickable-area);height:var(--clickable-area)}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/components/FilesListVirtual.vue\"],\"names\":[],\"mappings\":\"AAEA,gDACC,sDAAA,CACA,kBAAA,CAEA,iEAAA,CACA,mEAAA,CACA,uBAAA,CAEA,YAAA,CACA,yDAAA,CACA,aAAA,CACA,YAAA,CAEA,oBAAA,CACA,kBAAA,CACA,4BAAA,CACA,oBAAA,CAEA,mDACC,sBAAA,CACA,sDAAA,CACA,WAAA,CACA,kCAAA,CAID,0EACC,iBAAA,CACA,SAAA,CACA,KAAA,CACA,MAAA,CACA,eAAA,CACA,2BAAA,CACA,4BAAA,CACA,wCAAA,CAID,+EACC,iBAAA,CACA,KAAA,CACA,OAAA,CACA,YAAA,CACA,kBAAA,CACA,sBAAA,CACA,2BAAA,CACA,4BAAA,CAGD,sEACC,YAAA,CACA,uBAAA,CACA,UAAA,CACA,WAAA,CACA,sDAAA,CAEA,gGACC,UAAA,CACA,WAAA,CAGA,sCAAA,CAGD,kGAEC,wCAAA,CACA,4BAAA,CAGD,iGACC,QAAA,CACA,eAAA,CAIF,yEACC,iBAAA,CACA,OAAA,CACA,QAAA,CACA,2BAAA,CACA,4BAAA\",\"sourcesContent\":[\"\\n// Grid mode\\ntbody.files-list__tbody.files-list__tbody--grid {\\n\\t--half-clickable-area: calc(var(--clickable-area) / 2);\\n\\t--row-width: 160px;\\n\\t// We use half of the clickable area as visual balance margin\\n\\t--row-height: calc(var(--row-width) - var(--half-clickable-area));\\n\\t--icon-preview-size: calc(var(--row-width) - var(--clickable-area));\\n\\t--checkbox-padding: 0px;\\n\\n\\tdisplay: grid;\\n\\tgrid-template-columns: repeat(auto-fill, var(--row-width));\\n\\tgrid-gap: 15px;\\n\\trow-gap: 15px;\\n\\n\\talign-content: center;\\n\\talign-items: center;\\n\\tjustify-content: space-around;\\n\\tjustify-items: center;\\n\\n\\ttr {\\n\\t\\twidth: var(--row-width);\\n\\t\\theight: calc(var(--row-height) + var(--clickable-area));\\n\\t\\tborder: none;\\n\\t\\tborder-radius: var(--border-radius);\\n\\t}\\n\\n\\t// Checkbox in the top left\\n\\t.files-list__row-checkbox {\\n\\t\\tposition: absolute;\\n\\t\\tz-index: 9;\\n\\t\\ttop: 0;\\n\\t\\tleft: 0;\\n\\t\\toverflow: hidden;\\n\\t\\twidth: var(--clickable-area);\\n\\t\\theight: var(--clickable-area);\\n\\t\\tborder-radius: var(--half-clickable-area);\\n\\t}\\n\\n\\t// Star icon in the top right\\n\\t.files-list__row-icon-favorite {\\n\\t\\tposition: absolute;\\n\\t\\ttop: 0;\\n\\t\\tright: 0;\\n\\t\\tdisplay: flex;\\n\\t\\talign-items: center;\\n\\t\\tjustify-content: center;\\n\\t\\twidth: var(--clickable-area);\\n\\t\\theight: var(--clickable-area);\\n\\t}\\n\\n\\t.files-list__row-name {\\n\\t\\tdisplay: grid;\\n\\t\\tjustify-content: stretch;\\n\\t\\twidth: 100%;\\n\\t\\theight: 100%;\\n\\t\\tgrid-auto-rows: var(--row-height) var(--clickable-area);\\n\\n\\t\\tspan.files-list__row-icon {\\n\\t\\t\\twidth: 100%;\\n\\t\\t\\theight: 100%;\\n\\t\\t\\t// Visual balance, we use half of the clickable area\\n\\t\\t\\t// as a margin around the preview\\n\\t\\t\\tpadding-top: var(--half-clickable-area);\\n\\t\\t}\\n\\n\\t\\ta.files-list__row-name-link {\\n\\t\\t\\t// Minus action menu\\n\\t\\t\\twidth: calc(100% - var(--clickable-area));\\n\\t\\t\\theight: var(--clickable-area);\\n\\t\\t}\\n\\n\\t\\t.files-list__row-name-text {\\n\\t\\t\\tmargin: 0;\\n\\t\\t\\tpadding-right: 0;\\n\\t\\t}\\n\\t}\\n\\n\\t.files-list__row-actions {\\n\\t\\tposition: absolute;\\n\\t\\tright: 0;\\n\\t\\tbottom: 0;\\n\\t\\twidth: var(--clickable-area);\\n\\t\\theight: var(--clickable-area);\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.app-navigation-entry__settings-quota--not-unlimited[data-v-3e968815] .app-navigation-entry__name{margin-top:-6px}.app-navigation-entry__settings-quota progress[data-v-3e968815]{position:absolute;bottom:12px;margin-left:44px;width:calc(100% - 44px - 22px)}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/components/NavigationQuota.vue\"],\"names\":[],\"mappings\":\"AAIC,kGACC,eAAA,CAGD,gEACC,iBAAA,CACA,WAAA,CACA,gBAAA,CACA,8BAAA\",\"sourcesContent\":[\"\\n// User storage stats display\\n.app-navigation-entry__settings-quota {\\n\\t// Align title with progress and icon\\n\\t&--not-unlimited::v-deep .app-navigation-entry__name {\\n\\t\\tmargin-top: -6px;\\n\\t}\\n\\n\\tprogress {\\n\\t\\tposition: absolute;\\n\\t\\tbottom: 12px;\\n\\t\\tmargin-left: 44px;\\n\\t\\twidth: calc(100% - 44px - 22px);\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.app-content[data-v-0e2ac83a]{display:flex;overflow:hidden;flex-direction:column;max-height:100%;position:relative !important}.files-list__header[data-v-0e2ac83a]{display:flex;align-items:center;flex:0 0;max-width:100%;margin-block:var(--app-navigation-padding, 4px);margin-inline:calc(var(--default-clickable-area, 44px) + 2*var(--app-navigation-padding, 4px)) var(--app-navigation-padding, 4px)}.files-list__header>*[data-v-0e2ac83a]{flex:0 0}.files-list__header-share-button[data-v-0e2ac83a]{color:var(--color-text-maxcontrast) !important}.files-list__header-share-button--shared[data-v-0e2ac83a]{color:var(--color-main-text) !important}.files-list__refresh-icon[data-v-0e2ac83a]{flex:0 0 44px;width:44px;height:44px}.files-list__loading-icon[data-v-0e2ac83a]{margin:auto}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/views/FilesList.vue\"],\"names\":[],\"mappings\":\"AACA,8BAEC,YAAA,CACA,eAAA,CACA,qBAAA,CACA,eAAA,CACA,4BAAA,CAIA,qCACC,YAAA,CACA,kBAAA,CAEA,QAAA,CACA,cAAA,CAEA,+CAAA,CACA,iIAAA,CAEA,uCAGC,QAAA,CAGD,kDACC,8CAAA,CAEA,0DACC,uCAAA,CAKH,2CACC,aAAA,CACA,UAAA,CACA,WAAA,CAGD,2CACC,WAAA\",\"sourcesContent\":[\"\\n.app-content {\\n\\t// Virtual list needs to be full height and is scrollable\\n\\tdisplay: flex;\\n\\toverflow: hidden;\\n\\tflex-direction: column;\\n\\tmax-height: 100%;\\n\\tposition: relative !important;\\n}\\n\\n.files-list {\\n\\t&__header {\\n\\t\\tdisplay: flex;\\n\\t\\talign-items: center;\\n\\t\\t// Do not grow or shrink (vertically)\\n\\t\\tflex: 0 0;\\n\\t\\tmax-width: 100%;\\n\\t\\t// Align with the navigation toggle icon\\n\\t\\tmargin-block: var(--app-navigation-padding, 4px);\\n\\t\\tmargin-inline: calc(var(--default-clickable-area, 44px) + 2 * var(--app-navigation-padding, 4px)) var(--app-navigation-padding, 4px);\\n\\n\\t\\t>* {\\n\\t\\t\\t// Do not grow or shrink (horizontally)\\n\\t\\t\\t// Only the breadcrumbs shrinks\\n\\t\\t\\tflex: 0 0;\\n\\t\\t}\\n\\n\\t\\t&-share-button {\\n\\t\\t\\tcolor: var(--color-text-maxcontrast) !important;\\n\\n\\t\\t\\t&--shared {\\n\\t\\t\\t\\tcolor: var(--color-main-text) !important;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n\\n\\t&__refresh-icon {\\n\\t\\tflex: 0 0 44px;\\n\\t\\twidth: 44px;\\n\\t\\theight: 44px;\\n\\t}\\n\\n\\t&__loading-icon {\\n\\t\\tmargin: auto;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.app-navigation[data-v-66457116] .app-navigation-entry-icon{background-repeat:no-repeat;background-position:center}.app-navigation[data-v-66457116] .app-navigation-entry.active .button-vue.icon-collapse:not(:hover){color:var(--color-primary-element-text)}.app-navigation>ul.app-navigation__list[data-v-66457116]{padding-bottom:var(--default-grid-baseline, 4px)}.app-navigation-entry__settings[data-v-66457116]{height:auto !important;overflow:hidden !important;padding-top:0 !important;flex:0 0 auto}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/views/Navigation.vue\"],\"names\":[],\"mappings\":\"AAEA,4DACC,2BAAA,CACA,0BAAA,CAGD,oGACC,uCAAA,CAGD,yDAEC,gDAAA,CAGD,iDACC,sBAAA,CACA,0BAAA,CACA,wBAAA,CAEA,aAAA\",\"sourcesContent\":[\"\\n// TODO: remove when https://github.com/nextcloud/nextcloud-vue/pull/3539 is in\\n.app-navigation::v-deep .app-navigation-entry-icon {\\n\\tbackground-repeat: no-repeat;\\n\\tbackground-position: center;\\n}\\n\\n.app-navigation::v-deep .app-navigation-entry.active .button-vue.icon-collapse:not(:hover) {\\n\\tcolor: var(--color-primary-element-text);\\n}\\n\\n.app-navigation > ul.app-navigation__list {\\n\\t// Use flex gap value for more elegant spacing\\n\\tpadding-bottom: var(--default-grid-baseline, 4px);\\n}\\n\\n.app-navigation-entry__settings {\\n\\theight: auto !important;\\n\\toverflow: hidden !important;\\n\\tpadding-top: 0 !important;\\n\\t// Prevent shrinking or growing\\n\\tflex: 0 0 auto;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.setting-link[data-v-44764f8d]:hover{text-decoration:underline}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/views/Settings.vue\"],\"names\":[],\"mappings\":\"AACA,qCACC,yBAAA\",\"sourcesContent\":[\"\\n.setting-link:hover {\\n\\ttext-decoration: underline;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","'use strict';\n\nconst denyList = new Set([\n\t'ENOTFOUND',\n\t'ENETUNREACH',\n\n\t// SSL errors from https://github.com/nodejs/node/blob/fc8e3e2cdc521978351de257030db0076d79e0ab/src/crypto/crypto_common.cc#L301-L328\n\t'UNABLE_TO_GET_ISSUER_CERT',\n\t'UNABLE_TO_GET_CRL',\n\t'UNABLE_TO_DECRYPT_CERT_SIGNATURE',\n\t'UNABLE_TO_DECRYPT_CRL_SIGNATURE',\n\t'UNABLE_TO_DECODE_ISSUER_PUBLIC_KEY',\n\t'CERT_SIGNATURE_FAILURE',\n\t'CRL_SIGNATURE_FAILURE',\n\t'CERT_NOT_YET_VALID',\n\t'CERT_HAS_EXPIRED',\n\t'CRL_NOT_YET_VALID',\n\t'CRL_HAS_EXPIRED',\n\t'ERROR_IN_CERT_NOT_BEFORE_FIELD',\n\t'ERROR_IN_CERT_NOT_AFTER_FIELD',\n\t'ERROR_IN_CRL_LAST_UPDATE_FIELD',\n\t'ERROR_IN_CRL_NEXT_UPDATE_FIELD',\n\t'OUT_OF_MEM',\n\t'DEPTH_ZERO_SELF_SIGNED_CERT',\n\t'SELF_SIGNED_CERT_IN_CHAIN',\n\t'UNABLE_TO_GET_ISSUER_CERT_LOCALLY',\n\t'UNABLE_TO_VERIFY_LEAF_SIGNATURE',\n\t'CERT_CHAIN_TOO_LONG',\n\t'CERT_REVOKED',\n\t'INVALID_CA',\n\t'PATH_LENGTH_EXCEEDED',\n\t'INVALID_PURPOSE',\n\t'CERT_UNTRUSTED',\n\t'CERT_REJECTED',\n\t'HOSTNAME_MISMATCH'\n]);\n\n// TODO: Use `error?.code` when targeting Node.js 14\nmodule.exports = error => !denyList.has(error && error.code);\n","// @flow\n\n/*::\ntype Options = {\n max?: number,\n min?: number,\n historyTimeConstant?: number,\n autostart?: boolean,\n ignoreSameProgress?: boolean,\n}\n*/\n\nfunction makeLowPassFilter(RC/*: number*/) {\n return function (previousOutput, input, dt) {\n const alpha = dt / (dt + RC);\n return previousOutput + alpha * (input - previousOutput);\n }\n}\n\nfunction def/*:: */(x/*: ?T*/, d/*: T*/)/*: T*/ {\n return (x === undefined || x === null) ? d : x;\n}\n\nfunction makeEta(options/*::?: Options */) {\n options = options || {};\n var max = def(options.max, 1);\n var min = def(options.min, 0);\n var autostart = def(options.autostart, true);\n var ignoreSameProgress = def(options.ignoreSameProgress, false);\n\n var rate/*: number | null */ = null;\n var lastTimestamp/*: number | null */ = null;\n var lastProgress/*: number | null */ = null;\n\n var filter = makeLowPassFilter(def(options.historyTimeConstant, 2.5));\n\n function start() {\n report(min);\n }\n\n function reset() {\n rate = null;\n lastTimestamp = null;\n lastProgress = null;\n if (autostart) {\n start();\n }\n }\n\n function report(progress /*: number */, timestamp/*::?: number */) {\n if (typeof timestamp !== 'number') {\n timestamp = Date.now();\n }\n\n if (lastTimestamp === timestamp) { return; }\n if (ignoreSameProgress && lastProgress === progress) { return; }\n\n if (lastTimestamp === null || lastProgress === null) {\n lastProgress = progress;\n lastTimestamp = timestamp;\n return;\n }\n\n var deltaProgress = progress - lastProgress;\n var deltaTimestamp = 0.001 * (timestamp - lastTimestamp);\n var currentRate = deltaProgress / deltaTimestamp;\n\n rate = rate === null\n ? currentRate\n : filter(rate, currentRate, deltaTimestamp);\n lastProgress = progress;\n lastTimestamp = timestamp;\n }\n\n function estimate(timestamp/*::?: number*/) {\n if (lastProgress === null) { return Infinity; }\n if (lastProgress >= max) { return 0; }\n if (rate === null) { return Infinity; }\n\n var estimatedTime = (max - lastProgress) / rate;\n if (typeof timestamp === 'number' && typeof lastTimestamp === 'number') {\n estimatedTime -= (timestamp - lastTimestamp) * 0.001;\n }\n return Math.max(0, estimatedTime);\n }\n\n function getRate() {\n return rate === null ? 0 : rate;\n }\n\n return {\n start: start,\n reset: reset,\n report: report,\n estimate: estimate,\n rate: getRate,\n }\n}\n\nmodule.exports = makeEta;\n","\n import API from \"!../../../../style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../css-loader/dist/cjs.js!./index-DiWRcN3o.css\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../css-loader/dist/cjs.js!./index-DiWRcN3o.css\";\n export default content && content.locals ? content.locals : undefined;\n","export class CancelError extends Error {\n\tconstructor(reason) {\n\t\tsuper(reason || 'Promise was canceled');\n\t\tthis.name = 'CancelError';\n\t}\n\n\tget isCanceled() {\n\t\treturn true;\n\t}\n}\n\nconst promiseState = Object.freeze({\n\tpending: Symbol('pending'),\n\tcanceled: Symbol('canceled'),\n\tresolved: Symbol('resolved'),\n\trejected: Symbol('rejected'),\n});\n\nexport default class PCancelable {\n\tstatic fn(userFunction) {\n\t\treturn (...arguments_) => new PCancelable((resolve, reject, onCancel) => {\n\t\t\targuments_.push(onCancel);\n\t\t\tuserFunction(...arguments_).then(resolve, reject);\n\t\t});\n\t}\n\n\t#cancelHandlers = [];\n\t#rejectOnCancel = true;\n\t#state = promiseState.pending;\n\t#promise;\n\t#reject;\n\n\tconstructor(executor) {\n\t\tthis.#promise = new Promise((resolve, reject) => {\n\t\t\tthis.#reject = reject;\n\n\t\t\tconst onResolve = value => {\n\t\t\t\tif (this.#state !== promiseState.canceled || !onCancel.shouldReject) {\n\t\t\t\t\tresolve(value);\n\t\t\t\t\tthis.#setState(promiseState.resolved);\n\t\t\t\t}\n\t\t\t};\n\n\t\t\tconst onReject = error => {\n\t\t\t\tif (this.#state !== promiseState.canceled || !onCancel.shouldReject) {\n\t\t\t\t\treject(error);\n\t\t\t\t\tthis.#setState(promiseState.rejected);\n\t\t\t\t}\n\t\t\t};\n\n\t\t\tconst onCancel = handler => {\n\t\t\t\tif (this.#state !== promiseState.pending) {\n\t\t\t\t\tthrow new Error(`The \\`onCancel\\` handler was attached after the promise ${this.#state.description}.`);\n\t\t\t\t}\n\n\t\t\t\tthis.#cancelHandlers.push(handler);\n\t\t\t};\n\n\t\t\tObject.defineProperties(onCancel, {\n\t\t\t\tshouldReject: {\n\t\t\t\t\tget: () => this.#rejectOnCancel,\n\t\t\t\t\tset: boolean => {\n\t\t\t\t\t\tthis.#rejectOnCancel = boolean;\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t});\n\n\t\t\texecutor(onResolve, onReject, onCancel);\n\t\t});\n\t}\n\n\t// eslint-disable-next-line unicorn/no-thenable\n\tthen(onFulfilled, onRejected) {\n\t\treturn this.#promise.then(onFulfilled, onRejected);\n\t}\n\n\tcatch(onRejected) {\n\t\treturn this.#promise.catch(onRejected);\n\t}\n\n\tfinally(onFinally) {\n\t\treturn this.#promise.finally(onFinally);\n\t}\n\n\tcancel(reason) {\n\t\tif (this.#state !== promiseState.pending) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.#setState(promiseState.canceled);\n\n\t\tif (this.#cancelHandlers.length > 0) {\n\t\t\ttry {\n\t\t\t\tfor (const handler of this.#cancelHandlers) {\n\t\t\t\t\thandler();\n\t\t\t\t}\n\t\t\t} catch (error) {\n\t\t\t\tthis.#reject(error);\n\t\t\t\treturn;\n\t\t\t}\n\t\t}\n\n\t\tif (this.#rejectOnCancel) {\n\t\t\tthis.#reject(new CancelError(reason));\n\t\t}\n\t}\n\n\tget isCanceled() {\n\t\treturn this.#state === promiseState.canceled;\n\t}\n\n\t#setState(state) {\n\t\tif (this.#state === promiseState.pending) {\n\t\t\tthis.#state = state;\n\t\t}\n\t}\n}\n\nObject.setPrototypeOf(PCancelable.prototype, Promise.prototype);\n","export class TimeoutError extends Error {\n\tconstructor(message) {\n\t\tsuper(message);\n\t\tthis.name = 'TimeoutError';\n\t}\n}\n\n/**\nAn error to be thrown when the request is aborted by AbortController.\nDOMException is thrown instead of this Error when DOMException is available.\n*/\nexport class AbortError extends Error {\n\tconstructor(message) {\n\t\tsuper();\n\t\tthis.name = 'AbortError';\n\t\tthis.message = message;\n\t}\n}\n\n/**\nTODO: Remove AbortError and just throw DOMException when targeting Node 18.\n*/\nconst getDOMException = errorMessage => globalThis.DOMException === undefined\n\t? new AbortError(errorMessage)\n\t: new DOMException(errorMessage);\n\n/**\nTODO: Remove below function and just 'reject(signal.reason)' when targeting Node 18.\n*/\nconst getAbortedReason = signal => {\n\tconst reason = signal.reason === undefined\n\t\t? getDOMException('This operation was aborted.')\n\t\t: signal.reason;\n\n\treturn reason instanceof Error ? reason : getDOMException(reason);\n};\n\nexport default function pTimeout(promise, options) {\n\tconst {\n\t\tmilliseconds,\n\t\tfallback,\n\t\tmessage,\n\t\tcustomTimers = {setTimeout, clearTimeout},\n\t} = options;\n\n\tlet timer;\n\n\tconst wrappedPromise = new Promise((resolve, reject) => {\n\t\tif (typeof milliseconds !== 'number' || Math.sign(milliseconds) !== 1) {\n\t\t\tthrow new TypeError(`Expected \\`milliseconds\\` to be a positive number, got \\`${milliseconds}\\``);\n\t\t}\n\n\t\tif (options.signal) {\n\t\t\tconst {signal} = options;\n\t\t\tif (signal.aborted) {\n\t\t\t\treject(getAbortedReason(signal));\n\t\t\t}\n\n\t\t\tsignal.addEventListener('abort', () => {\n\t\t\t\treject(getAbortedReason(signal));\n\t\t\t});\n\t\t}\n\n\t\tif (milliseconds === Number.POSITIVE_INFINITY) {\n\t\t\tpromise.then(resolve, reject);\n\t\t\treturn;\n\t\t}\n\n\t\t// We create the error outside of `setTimeout` to preserve the stack trace.\n\t\tconst timeoutError = new TimeoutError();\n\n\t\ttimer = customTimers.setTimeout.call(undefined, () => {\n\t\t\tif (fallback) {\n\t\t\t\ttry {\n\t\t\t\t\tresolve(fallback());\n\t\t\t\t} catch (error) {\n\t\t\t\t\treject(error);\n\t\t\t\t}\n\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif (typeof promise.cancel === 'function') {\n\t\t\t\tpromise.cancel();\n\t\t\t}\n\n\t\t\tif (message === false) {\n\t\t\t\tresolve();\n\t\t\t} else if (message instanceof Error) {\n\t\t\t\treject(message);\n\t\t\t} else {\n\t\t\t\ttimeoutError.message = message ?? `Promise timed out after ${milliseconds} milliseconds`;\n\t\t\t\treject(timeoutError);\n\t\t\t}\n\t\t}, milliseconds);\n\n\t\t(async () => {\n\t\t\ttry {\n\t\t\t\tresolve(await promise);\n\t\t\t} catch (error) {\n\t\t\t\treject(error);\n\t\t\t}\n\t\t})();\n\t});\n\n\tconst cancelablePromise = wrappedPromise.finally(() => {\n\t\tcancelablePromise.clear();\n\t});\n\n\tcancelablePromise.clear = () => {\n\t\tcustomTimers.clearTimeout.call(undefined, timer);\n\t\ttimer = undefined;\n\t};\n\n\treturn cancelablePromise;\n}\n","import lowerBound from './lower-bound.js';\nexport default class PriorityQueue {\n #queue = [];\n enqueue(run, options) {\n options = {\n priority: 0,\n ...options,\n };\n const element = {\n priority: options.priority,\n run,\n };\n if (this.size && this.#queue[this.size - 1].priority >= options.priority) {\n this.#queue.push(element);\n return;\n }\n const index = lowerBound(this.#queue, element, (a, b) => b.priority - a.priority);\n this.#queue.splice(index, 0, element);\n }\n dequeue() {\n const item = this.#queue.shift();\n return item?.run;\n }\n filter(options) {\n return this.#queue.filter((element) => element.priority === options.priority).map((element) => element.run);\n }\n get size() {\n return this.#queue.length;\n }\n}\n","// Port of lower_bound from https://en.cppreference.com/w/cpp/algorithm/lower_bound\n// Used to compute insertion index to keep queue sorted after insertion\nexport default function lowerBound(array, value, comparator) {\n let first = 0;\n let count = array.length;\n while (count > 0) {\n const step = Math.trunc(count / 2);\n let it = first + step;\n if (comparator(array[it], value) <= 0) {\n first = ++it;\n count -= step + 1;\n }\n else {\n count = step;\n }\n }\n return first;\n}\n","import { EventEmitter } from 'eventemitter3';\nimport pTimeout, { TimeoutError } from 'p-timeout';\nimport PriorityQueue from './priority-queue.js';\n/**\nPromise queue with concurrency control.\n*/\nexport default class PQueue extends EventEmitter {\n #carryoverConcurrencyCount;\n #isIntervalIgnored;\n #intervalCount = 0;\n #intervalCap;\n #interval;\n #intervalEnd = 0;\n #intervalId;\n #timeoutId;\n #queue;\n #queueClass;\n #pending = 0;\n // The `!` is needed because of https://github.com/microsoft/TypeScript/issues/32194\n #concurrency;\n #isPaused;\n #throwOnTimeout;\n /**\n Per-operation timeout in milliseconds. Operations fulfill once `timeout` elapses if they haven't already.\n\n Applies to each future operation.\n */\n timeout;\n // TODO: The `throwOnTimeout` option should affect the return types of `add()` and `addAll()`\n constructor(options) {\n super();\n // eslint-disable-next-line @typescript-eslint/consistent-type-assertions\n options = {\n carryoverConcurrencyCount: false,\n intervalCap: Number.POSITIVE_INFINITY,\n interval: 0,\n concurrency: Number.POSITIVE_INFINITY,\n autoStart: true,\n queueClass: PriorityQueue,\n ...options,\n };\n if (!(typeof options.intervalCap === 'number' && options.intervalCap >= 1)) {\n throw new TypeError(`Expected \\`intervalCap\\` to be a number from 1 and up, got \\`${options.intervalCap?.toString() ?? ''}\\` (${typeof options.intervalCap})`);\n }\n if (options.interval === undefined || !(Number.isFinite(options.interval) && options.interval >= 0)) {\n throw new TypeError(`Expected \\`interval\\` to be a finite number >= 0, got \\`${options.interval?.toString() ?? ''}\\` (${typeof options.interval})`);\n }\n this.#carryoverConcurrencyCount = options.carryoverConcurrencyCount;\n this.#isIntervalIgnored = options.intervalCap === Number.POSITIVE_INFINITY || options.interval === 0;\n this.#intervalCap = options.intervalCap;\n this.#interval = options.interval;\n this.#queue = new options.queueClass();\n this.#queueClass = options.queueClass;\n this.concurrency = options.concurrency;\n this.timeout = options.timeout;\n this.#throwOnTimeout = options.throwOnTimeout === true;\n this.#isPaused = options.autoStart === false;\n }\n get #doesIntervalAllowAnother() {\n return this.#isIntervalIgnored || this.#intervalCount < this.#intervalCap;\n }\n get #doesConcurrentAllowAnother() {\n return this.#pending < this.#concurrency;\n }\n #next() {\n this.#pending--;\n this.#tryToStartAnother();\n this.emit('next');\n }\n #onResumeInterval() {\n this.#onInterval();\n this.#initializeIntervalIfNeeded();\n this.#timeoutId = undefined;\n }\n get #isIntervalPaused() {\n const now = Date.now();\n if (this.#intervalId === undefined) {\n const delay = this.#intervalEnd - now;\n if (delay < 0) {\n // Act as the interval was done\n // We don't need to resume it here because it will be resumed on line 160\n this.#intervalCount = (this.#carryoverConcurrencyCount) ? this.#pending : 0;\n }\n else {\n // Act as the interval is pending\n if (this.#timeoutId === undefined) {\n this.#timeoutId = setTimeout(() => {\n this.#onResumeInterval();\n }, delay);\n }\n return true;\n }\n }\n return false;\n }\n #tryToStartAnother() {\n if (this.#queue.size === 0) {\n // We can clear the interval (\"pause\")\n // Because we can redo it later (\"resume\")\n if (this.#intervalId) {\n clearInterval(this.#intervalId);\n }\n this.#intervalId = undefined;\n this.emit('empty');\n if (this.#pending === 0) {\n this.emit('idle');\n }\n return false;\n }\n if (!this.#isPaused) {\n const canInitializeInterval = !this.#isIntervalPaused;\n if (this.#doesIntervalAllowAnother && this.#doesConcurrentAllowAnother) {\n const job = this.#queue.dequeue();\n if (!job) {\n return false;\n }\n this.emit('active');\n job();\n if (canInitializeInterval) {\n this.#initializeIntervalIfNeeded();\n }\n return true;\n }\n }\n return false;\n }\n #initializeIntervalIfNeeded() {\n if (this.#isIntervalIgnored || this.#intervalId !== undefined) {\n return;\n }\n this.#intervalId = setInterval(() => {\n this.#onInterval();\n }, this.#interval);\n this.#intervalEnd = Date.now() + this.#interval;\n }\n #onInterval() {\n if (this.#intervalCount === 0 && this.#pending === 0 && this.#intervalId) {\n clearInterval(this.#intervalId);\n this.#intervalId = undefined;\n }\n this.#intervalCount = this.#carryoverConcurrencyCount ? this.#pending : 0;\n this.#processQueue();\n }\n /**\n Executes all queued functions until it reaches the limit.\n */\n #processQueue() {\n // eslint-disable-next-line no-empty\n while (this.#tryToStartAnother()) { }\n }\n get concurrency() {\n return this.#concurrency;\n }\n set concurrency(newConcurrency) {\n if (!(typeof newConcurrency === 'number' && newConcurrency >= 1)) {\n throw new TypeError(`Expected \\`concurrency\\` to be a number from 1 and up, got \\`${newConcurrency}\\` (${typeof newConcurrency})`);\n }\n this.#concurrency = newConcurrency;\n this.#processQueue();\n }\n async #throwOnAbort(signal) {\n return new Promise((_resolve, reject) => {\n signal.addEventListener('abort', () => {\n reject(signal.reason);\n }, { once: true });\n });\n }\n async add(function_, options = {}) {\n options = {\n timeout: this.timeout,\n throwOnTimeout: this.#throwOnTimeout,\n ...options,\n };\n return new Promise((resolve, reject) => {\n this.#queue.enqueue(async () => {\n this.#pending++;\n this.#intervalCount++;\n try {\n options.signal?.throwIfAborted();\n let operation = function_({ signal: options.signal });\n if (options.timeout) {\n operation = pTimeout(Promise.resolve(operation), { milliseconds: options.timeout });\n }\n if (options.signal) {\n operation = Promise.race([operation, this.#throwOnAbort(options.signal)]);\n }\n const result = await operation;\n resolve(result);\n this.emit('completed', result);\n }\n catch (error) {\n if (error instanceof TimeoutError && !options.throwOnTimeout) {\n resolve();\n return;\n }\n reject(error);\n this.emit('error', error);\n }\n finally {\n this.#next();\n }\n }, options);\n this.emit('add');\n this.#tryToStartAnother();\n });\n }\n async addAll(functions, options) {\n return Promise.all(functions.map(async (function_) => this.add(function_, options)));\n }\n /**\n Start (or resume) executing enqueued tasks within concurrency limit. No need to call this if queue is not paused (via `options.autoStart = false` or by `.pause()` method.)\n */\n start() {\n if (!this.#isPaused) {\n return this;\n }\n this.#isPaused = false;\n this.#processQueue();\n return this;\n }\n /**\n Put queue execution on hold.\n */\n pause() {\n this.#isPaused = true;\n }\n /**\n Clear the queue.\n */\n clear() {\n this.#queue = new this.#queueClass();\n }\n /**\n Can be called multiple times. Useful if you for example add additional items at a later time.\n\n @returns A promise that settles when the queue becomes empty.\n */\n async onEmpty() {\n // Instantly resolve if the queue is empty\n if (this.#queue.size === 0) {\n return;\n }\n await this.#onEvent('empty');\n }\n /**\n @returns A promise that settles when the queue size is less than the given limit: `queue.size < limit`.\n\n If you want to avoid having the queue grow beyond a certain size you can `await queue.onSizeLessThan()` before adding a new item.\n\n Note that this only limits the number of items waiting to start. There could still be up to `concurrency` jobs already running that this call does not include in its calculation.\n */\n async onSizeLessThan(limit) {\n // Instantly resolve if the queue is empty.\n if (this.#queue.size < limit) {\n return;\n }\n await this.#onEvent('next', () => this.#queue.size < limit);\n }\n /**\n The difference with `.onEmpty` is that `.onIdle` guarantees that all work from the queue has finished. `.onEmpty` merely signals that the queue is empty, but it could mean that some promises haven't completed yet.\n\n @returns A promise that settles when the queue becomes empty, and all promises have completed; `queue.size === 0 && queue.pending === 0`.\n */\n async onIdle() {\n // Instantly resolve if none pending and if nothing else is queued\n if (this.#pending === 0 && this.#queue.size === 0) {\n return;\n }\n await this.#onEvent('idle');\n }\n async #onEvent(event, filter) {\n return new Promise(resolve => {\n const listener = () => {\n if (filter && !filter()) {\n return;\n }\n this.off(event, listener);\n resolve();\n };\n this.on(event, listener);\n });\n }\n /**\n Size of the queue, the number of queued items waiting to run.\n */\n get size() {\n return this.#queue.size;\n }\n /**\n Size of the queue, filtered by the given options.\n\n For example, this can be used to find the number of items remaining in the queue with a specific priority level.\n */\n sizeBy(options) {\n // eslint-disable-next-line unicorn/no-array-callback-reference\n return this.#queue.filter(options).length;\n }\n /**\n Number of running items (no longer in the queue).\n */\n get pending() {\n return this.#pending;\n }\n /**\n Whether the queue is currently paused.\n */\n get isPaused() {\n return this.#isPaused;\n }\n}\n","import isRetryAllowed from 'is-retry-allowed';\nexport const namespace = 'axios-retry';\nexport function isNetworkError(error) {\n const CODE_EXCLUDE_LIST = ['ERR_CANCELED', 'ECONNABORTED'];\n if (error.response) {\n return false;\n }\n if (!error.code) {\n return false;\n }\n // Prevents retrying timed out & cancelled requests\n if (CODE_EXCLUDE_LIST.includes(error.code)) {\n return false;\n }\n // Prevents retrying unsafe errors\n return isRetryAllowed(error);\n}\nconst SAFE_HTTP_METHODS = ['get', 'head', 'options'];\nconst IDEMPOTENT_HTTP_METHODS = SAFE_HTTP_METHODS.concat(['put', 'delete']);\nexport function isRetryableError(error) {\n return (error.code !== 'ECONNABORTED' &&\n (!error.response ||\n error.response.status === 429 ||\n (error.response.status >= 500 && error.response.status <= 599)));\n}\nexport function isSafeRequestError(error) {\n if (!error.config?.method) {\n // Cannot determine if the request can be retried\n return false;\n }\n return isRetryableError(error) && SAFE_HTTP_METHODS.indexOf(error.config.method) !== -1;\n}\nexport function isIdempotentRequestError(error) {\n if (!error.config?.method) {\n // Cannot determine if the request can be retried\n return false;\n }\n return isRetryableError(error) && IDEMPOTENT_HTTP_METHODS.indexOf(error.config.method) !== -1;\n}\nexport function isNetworkOrIdempotentRequestError(error) {\n return isNetworkError(error) || isIdempotentRequestError(error);\n}\nexport function retryAfter(error = undefined) {\n const retryAfterHeader = error?.response?.headers['retry-after'];\n if (!retryAfterHeader) {\n return 0;\n }\n // if the retry after header is a number, convert it to milliseconds\n let retryAfterMs = (Number(retryAfterHeader) || 0) * 1000;\n // If the retry after header is a date, get the number of milliseconds until that date\n if (retryAfterMs === 0) {\n retryAfterMs = (new Date(retryAfterHeader).valueOf() || 0) - Date.now();\n }\n return Math.max(0, retryAfterMs);\n}\nfunction noDelay(_retryNumber = 0, error = undefined) {\n return Math.max(0, retryAfter(error));\n}\nexport function exponentialDelay(retryNumber = 0, error = undefined, delayFactor = 100) {\n const calculatedDelay = 2 ** retryNumber * delayFactor;\n const delay = Math.max(calculatedDelay, retryAfter(error));\n const randomSum = delay * 0.2 * Math.random(); // 0-20% of the delay\n return delay + randomSum;\n}\nexport const DEFAULT_OPTIONS = {\n retries: 3,\n retryCondition: isNetworkOrIdempotentRequestError,\n retryDelay: noDelay,\n shouldResetTimeout: false,\n onRetry: () => { },\n onMaxRetryTimesExceeded: () => { },\n validateResponse: null\n};\nfunction getRequestOptions(config, defaultOptions) {\n return { ...DEFAULT_OPTIONS, ...defaultOptions, ...config[namespace] };\n}\nfunction setCurrentState(config, defaultOptions) {\n const currentState = getRequestOptions(config, defaultOptions || {});\n currentState.retryCount = currentState.retryCount || 0;\n currentState.lastRequestTime = currentState.lastRequestTime || Date.now();\n config[namespace] = currentState;\n return currentState;\n}\nfunction fixConfig(axiosInstance, config) {\n // @ts-ignore\n if (axiosInstance.defaults.agent === config.agent) {\n // @ts-ignore\n delete config.agent;\n }\n if (axiosInstance.defaults.httpAgent === config.httpAgent) {\n delete config.httpAgent;\n }\n if (axiosInstance.defaults.httpsAgent === config.httpsAgent) {\n delete config.httpsAgent;\n }\n}\nasync function shouldRetry(currentState, error) {\n const { retries, retryCondition } = currentState;\n const shouldRetryOrPromise = (currentState.retryCount || 0) < retries && retryCondition(error);\n // This could be a promise\n if (typeof shouldRetryOrPromise === 'object') {\n try {\n const shouldRetryPromiseResult = await shouldRetryOrPromise;\n // keep return true unless shouldRetryPromiseResult return false for compatibility\n return shouldRetryPromiseResult !== false;\n }\n catch (_err) {\n return false;\n }\n }\n return shouldRetryOrPromise;\n}\nasync function handleRetry(axiosInstance, currentState, error, config) {\n currentState.retryCount += 1;\n const { retryDelay, shouldResetTimeout, onRetry } = currentState;\n const delay = retryDelay(currentState.retryCount, error);\n // Axios fails merging this configuration to the default configuration because it has an issue\n // with circular structures: https://github.com/mzabriskie/axios/issues/370\n fixConfig(axiosInstance, config);\n if (!shouldResetTimeout && config.timeout && currentState.lastRequestTime) {\n const lastRequestDuration = Date.now() - currentState.lastRequestTime;\n const timeout = config.timeout - lastRequestDuration - delay;\n if (timeout <= 0) {\n return Promise.reject(error);\n }\n config.timeout = timeout;\n }\n config.transformRequest = [(data) => data];\n await onRetry(currentState.retryCount, error, config);\n if (config.signal?.aborted) {\n return Promise.resolve(axiosInstance(config));\n }\n return new Promise((resolve) => {\n const abortListener = () => {\n clearTimeout(timeout);\n resolve(axiosInstance(config));\n };\n const timeout = setTimeout(() => {\n resolve(axiosInstance(config));\n if (config.signal?.removeEventListener) {\n config.signal.removeEventListener('abort', abortListener);\n }\n }, delay);\n if (config.signal?.addEventListener) {\n config.signal.addEventListener('abort', abortListener, { once: true });\n }\n });\n}\nasync function handleMaxRetryTimesExceeded(currentState, error) {\n if (currentState.retryCount >= currentState.retries)\n await currentState.onMaxRetryTimesExceeded(error, currentState.retryCount);\n}\nconst axiosRetry = (axiosInstance, defaultOptions) => {\n const requestInterceptorId = axiosInstance.interceptors.request.use((config) => {\n setCurrentState(config, defaultOptions);\n if (config[namespace]?.validateResponse) {\n // by setting this, all HTTP responses will be go through the error interceptor first\n config.validateStatus = () => false;\n }\n return config;\n });\n const responseInterceptorId = axiosInstance.interceptors.response.use(null, async (error) => {\n const { config } = error;\n // If we have no information to retry the request\n if (!config) {\n return Promise.reject(error);\n }\n const currentState = setCurrentState(config, defaultOptions);\n if (error.response && currentState.validateResponse?.(error.response)) {\n // no issue with response\n return error.response;\n }\n if (await shouldRetry(currentState, error)) {\n return handleRetry(axiosInstance, currentState, error, config);\n }\n await handleMaxRetryTimesExceeded(currentState, error);\n return Promise.reject(error);\n });\n return { requestInterceptorId, responseInterceptorId };\n};\n// Compatibility with CommonJS\naxiosRetry.isNetworkError = isNetworkError;\naxiosRetry.isSafeRequestError = isSafeRequestError;\naxiosRetry.isIdempotentRequestError = isIdempotentRequestError;\naxiosRetry.isNetworkOrIdempotentRequestError = isNetworkOrIdempotentRequestError;\naxiosRetry.exponentialDelay = exponentialDelay;\naxiosRetry.isRetryableError = isRetryableError;\nexport default axiosRetry;\n","import GetText from \"node-gettext\";\nimport { a as getLanguage } from \"./chunks/locale-BQFSYg2g.mjs\";\nimport \"@nextcloud/router\";\nimport \"dompurify\";\nimport \"escape-html\";\nvar __defProp = Object.defineProperty;\nvar __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;\nvar __publicField = (obj, key, value) => {\n __defNormalProp(obj, typeof key !== \"symbol\" ? key + \"\" : key, value);\n return value;\n};\nclass GettextBuilder {\n constructor() {\n __publicField(this, \"locale\");\n __publicField(this, \"translations\", {});\n __publicField(this, \"debug\", false);\n }\n setLanguage(language) {\n this.locale = language;\n return this;\n }\n /** Try to detect locale from context with `en` as fallback value */\n detectLocale() {\n return this.setLanguage(getLanguage().replace(\"-\", \"_\"));\n }\n addTranslation(language, data) {\n this.translations[language] = data;\n return this;\n }\n enableDebugMode() {\n this.debug = true;\n return this;\n }\n build() {\n return new GettextWrapper(this.locale || \"en\", this.translations, this.debug);\n }\n}\nclass GettextWrapper {\n constructor(locale, data, debug) {\n __publicField(this, \"gt\");\n this.gt = new GetText({\n debug,\n sourceLocale: \"en\"\n });\n for (const key in data) {\n this.gt.addTranslations(key, \"messages\", data[key]);\n }\n this.gt.setLocale(locale);\n }\n subtitudePlaceholders(translated, vars) {\n return translated.replace(/{([^{}]*)}/g, (a, b) => {\n const r = vars[b];\n if (typeof r === \"string\" || typeof r === \"number\") {\n return r.toString();\n } else {\n return a;\n }\n });\n }\n /**\n * Get translated string (singular form), optionally with placeholders\n *\n * @param original original string to translate\n * @param placeholders map of placeholder key to value\n */\n gettext(original, placeholders = {}) {\n return this.subtitudePlaceholders(\n this.gt.gettext(original),\n placeholders\n );\n }\n /**\n * Get translated string with plural forms\n *\n * @param singular Singular text form\n * @param plural Plural text form to be used if `count` requires it\n * @param count The number to insert into the text\n * @param placeholders optional map of placeholder key to value\n */\n ngettext(singular, plural, count, placeholders = {}) {\n return this.subtitudePlaceholders(\n this.gt.ngettext(singular, plural, count).replace(/%n/g, count.toString()),\n placeholders\n );\n }\n}\nfunction getGettextBuilder() {\n return new GettextBuilder();\n}\nexport {\n getGettextBuilder\n};\n","import '../assets/index-DiWRcN3o.css';\nimport { isPublicShare } from \"@nextcloud/sharing/public\";\nimport Vue, { defineAsyncComponent } from \"vue\";\nimport { getCurrentUser } from \"@nextcloud/auth\";\nimport { davRemoteURL, davRootPath, Folder, Permission, davGetClient, NewMenuEntryCategory, getUniqueName, getNewFileMenuEntries } from \"@nextcloud/files\";\nimport { basename, encodePath } from \"@nextcloud/paths\";\nimport { join, normalize } from \"path\";\nimport axios, { isCancel } from \"@nextcloud/axios\";\nimport PCancelable from \"p-cancelable\";\nimport PQueue from \"p-queue\";\nimport { generateRemoteUrl } from \"@nextcloud/router\";\nimport axiosRetry from \"axios-retry\";\nimport { getGettextBuilder } from \"@nextcloud/l10n/gettext\";\nimport { getLoggerBuilder } from \"@nextcloud/logger\";\nimport { DialogBuilder, showWarning } from \"@nextcloud/dialogs\";\nimport makeEta from \"simple-eta\";\nimport NcActionButton from \"@nextcloud/vue/dist/Components/NcActionButton.js\";\nimport NcActionCaption from \"@nextcloud/vue/dist/Components/NcActionCaption.js\";\nimport NcActionSeparator from \"@nextcloud/vue/dist/Components/NcActionSeparator.js\";\nimport NcActions from \"@nextcloud/vue/dist/Components/NcActions.js\";\nimport NcButton from \"@nextcloud/vue/dist/Components/NcButton.js\";\nimport NcIconSvgWrapper from \"@nextcloud/vue/dist/Components/NcIconSvgWrapper.js\";\nimport NcProgressBar from \"@nextcloud/vue/dist/Components/NcProgressBar.js\";\nconst isFileSystemDirectoryEntry = (o) => \"FileSystemDirectoryEntry\" in window && o instanceof FileSystemDirectoryEntry;\nconst isFileSystemFileEntry = (o) => \"FileSystemFileEntry\" in window && o instanceof FileSystemFileEntry;\nconst isFileSystemEntry = (o) => \"FileSystemEntry\" in window && o instanceof FileSystemEntry;\naxiosRetry(axios, { retries: 0 });\nconst uploadData = async function(url, uploadData2, signal, onUploadProgress = () => {\n}, destinationFile = void 0, headers = {}, retries = 5) {\n let data;\n if (uploadData2 instanceof Blob) {\n data = uploadData2;\n } else {\n data = await uploadData2();\n }\n if (destinationFile) {\n headers.Destination = destinationFile;\n }\n if (!headers[\"Content-Type\"]) {\n headers[\"Content-Type\"] = \"application/octet-stream\";\n }\n return await axios.request({\n method: \"PUT\",\n url,\n data,\n signal,\n onUploadProgress,\n headers,\n \"axios-retry\": {\n retries,\n retryDelay: (retryCount, error) => axiosRetry.exponentialDelay(retryCount, error, 1e3)\n }\n });\n};\nconst getChunk = function(file, start, length) {\n if (start === 0 && file.size <= length) {\n return Promise.resolve(new Blob([file], { type: file.type || \"application/octet-stream\" }));\n }\n return Promise.resolve(new Blob([file.slice(start, start + length)], { type: \"application/octet-stream\" }));\n};\nconst initChunkWorkspace = async function(destinationFile = void 0, retries = 5) {\n const chunksWorkspace = generateRemoteUrl(`dav/uploads/${getCurrentUser()?.uid}`);\n const hash = [...Array(16)].map(() => Math.floor(Math.random() * 16).toString(16)).join(\"\");\n const tempWorkspace = `web-file-upload-${hash}`;\n const url = `${chunksWorkspace}/${tempWorkspace}`;\n const headers = destinationFile ? { Destination: destinationFile } : void 0;\n await axios.request({\n method: \"MKCOL\",\n url,\n headers,\n \"axios-retry\": {\n retries,\n retryDelay: (retryCount, error) => axiosRetry.exponentialDelay(retryCount, error, 1e3)\n }\n });\n return url;\n};\nconst getMaxChunksSize = function(fileSize = void 0) {\n const maxChunkSize = window.OC?.appConfig?.files?.max_chunk_size;\n if (maxChunkSize <= 0) {\n return 0;\n }\n if (!Number(maxChunkSize)) {\n return 10 * 1024 * 1024;\n }\n const minimumChunkSize = Math.max(Number(maxChunkSize), 5 * 1024 * 1024);\n if (fileSize === void 0) {\n return minimumChunkSize;\n }\n return Math.max(minimumChunkSize, Math.ceil(fileSize / 1e4));\n};\nvar Status$1 = /* @__PURE__ */ ((Status2) => {\n Status2[Status2[\"INITIALIZED\"] = 0] = \"INITIALIZED\";\n Status2[Status2[\"UPLOADING\"] = 1] = \"UPLOADING\";\n Status2[Status2[\"ASSEMBLING\"] = 2] = \"ASSEMBLING\";\n Status2[Status2[\"FINISHED\"] = 3] = \"FINISHED\";\n Status2[Status2[\"CANCELLED\"] = 4] = \"CANCELLED\";\n Status2[Status2[\"FAILED\"] = 5] = \"FAILED\";\n return Status2;\n})(Status$1 || {});\nclass Upload {\n _source;\n _file;\n _isChunked;\n _chunks;\n _size;\n _uploaded = 0;\n _startTime = 0;\n _status = 0;\n _controller;\n _response = null;\n constructor(source, chunked = false, size, file) {\n const chunks = Math.min(getMaxChunksSize() > 0 ? Math.ceil(size / getMaxChunksSize()) : 1, 1e4);\n this._source = source;\n this._isChunked = chunked && getMaxChunksSize() > 0 && chunks > 1;\n this._chunks = this._isChunked ? chunks : 1;\n this._size = size;\n this._file = file;\n this._controller = new AbortController();\n }\n get source() {\n return this._source;\n }\n get file() {\n return this._file;\n }\n get isChunked() {\n return this._isChunked;\n }\n get chunks() {\n return this._chunks;\n }\n get size() {\n return this._size;\n }\n get startTime() {\n return this._startTime;\n }\n set response(response) {\n this._response = response;\n }\n get response() {\n return this._response;\n }\n get uploaded() {\n return this._uploaded;\n }\n /**\n * Update the uploaded bytes of this upload\n */\n set uploaded(length) {\n if (length >= this._size) {\n this._status = this._isChunked ? 2 : 3;\n this._uploaded = this._size;\n return;\n }\n this._status = 1;\n this._uploaded = length;\n if (this._startTime === 0) {\n this._startTime = (/* @__PURE__ */ new Date()).getTime();\n }\n }\n get status() {\n return this._status;\n }\n /**\n * Update this upload status\n */\n set status(status) {\n this._status = status;\n }\n /**\n * Returns the axios cancel token source\n */\n get signal() {\n return this._controller.signal;\n }\n /**\n * Cancel any ongoing requests linked to this upload\n */\n cancel() {\n this._controller.abort();\n this._status = 4;\n }\n}\nclass Directory extends File {\n _originalName;\n _path;\n _children;\n constructor(path, children) {\n super([], basename(path), { type: \"httpd/unix-directory\", lastModified: 0 });\n this._children = /* @__PURE__ */ new Map();\n this._originalName = basename(path);\n this._path = path;\n if (children) {\n children.forEach((c) => this.addChild(c));\n }\n }\n get size() {\n return this.children.reduce((sum, file) => sum + file.size, 0);\n }\n get lastModified() {\n return this.children.reduce((latest, file) => Math.max(latest, file.lastModified), 0);\n }\n // We need this to keep track of renamed files\n get originalName() {\n return this._originalName;\n }\n get children() {\n return Array.from(this._children.values());\n }\n get webkitRelativePath() {\n return this._path;\n }\n getChild(name) {\n return this._children.get(name) ?? null;\n }\n async addChild(file) {\n const rootPath = this._path && `${this._path}/`;\n if (isFileSystemFileEntry(file)) {\n file = await new Promise((resolve, reject) => file.file(resolve, reject));\n } else if (isFileSystemDirectoryEntry(file)) {\n const reader = file.createReader();\n const entries = await new Promise((resolve, reject) => reader.readEntries(resolve, reject));\n this._children.set(file.name, new Directory(`${rootPath}${file.name}`, entries));\n return;\n }\n file = file;\n const filePath = file.webkitRelativePath ?? file.name;\n if (!filePath.includes(\"/\")) {\n this._children.set(file.name, file);\n } else {\n if (!filePath.startsWith(this._path)) {\n throw new Error(`File ${filePath} is not a child of ${this._path}`);\n }\n const relPath = filePath.slice(rootPath.length);\n const name = basename(relPath);\n if (name === relPath) {\n this._children.set(name, file);\n } else {\n const base = relPath.slice(0, relPath.indexOf(\"/\"));\n if (this._children.has(base)) {\n this._children.get(base).addChild(file);\n } else {\n this._children.set(base, new Directory(`${rootPath}${base}`, [file]));\n }\n }\n }\n }\n}\n/**\n * @copyright Copyright (c) 2023 Ferdinand Thiessen \n *\n * @author Ferdinand Thiessen \n * @author John Molakvoæ \n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see .\n *\n */\nconst gtBuilder = getGettextBuilder().detectLocale();\n[{ \"locale\": \"af\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Afrikaans (https://www.transifex.com/nextcloud/teams/64236/af/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"af\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Afrikaans (https://www.transifex.com/nextcloud/teams/64236/af/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: af\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ar\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Ali , 2024\", \"Language-Team\": \"Arabic (https://app.transifex.com/nextcloud/teams/64236/ar/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ar\", \"Plural-Forms\": \"nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nAli , 2024\\n\" }, \"msgstr\": [\"Last-Translator: Ali , 2024\\nLanguage-Team: Arabic (https://app.transifex.com/nextcloud/teams/64236/ar/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ar\\nPlural-Forms: nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;\\n\"] }, '\"{filename}\" contains invalid characters, how do you want to continue?': { \"msgid\": '\"{filename}\" contains invalid characters, how do you want to continue?', \"msgstr\": ['\"{filename}\" يحتوي على حروف غير مقبولة. كيف ترغب في الاستمرار؟'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} ملف متعارض\", \"{count} ملف متعارض\", \"{count} ملفان متعارضان\", \"{count} ملف متعارض\", \"{count} ملفات متعارضة\", \"{count} ملفات متعارضة\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} ملف متعارض في n {dirname}\", \"{count} ملف متعارض في n {dirname}\", \"{count} ملفان متعارضان في n {dirname}\", \"{count} ملف متعارض في n {dirname}\", \"{count} ملفات متعارضة في n {dirname}\", \"{count} ملفات متعارضة في n {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} ثانية متبقية\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} متبقية\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"باقٍ بضعُ ثوانٍ\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"إلغاء\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"إلغِ العملية بالكامل\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"إلغاء عمليات رفع الملفات\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"إستمر\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"إنشاء جديد\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"تقدير الوقت المتبقي\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"الإصدار الحالي\"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"إذا اخترت الاحتفاظ بالنسختين فسيتم إلحاق رقم عداد آخر اسم الملف الوارد.\"] }, \"Invalid file name\": { \"msgid\": \"Invalid file name\", \"msgstr\": [\"اسم الملف غير صحيح\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"تاريخ آخر تعديل غير معلوم\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"جديد\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"نسخة جديدة\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"مُجمَّد\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"معاينة الصورة\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"تغيير التسمية\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"حدِّد كل صناديق الخيارات\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"حدِّد كل الملفات الموجودة\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"حدِّد كل الملفات الجديدة\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"تخطِّي\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"تخطَّ {count} ملف\", \"تخطَّ {count} ملف\", \"تخطَّ {count} ملف\", \"تخطَّ {count} ملف\", \"تخطَّ {count} ملف\", \"تخطَّ {count} ملف\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"حجم غير معلوم\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"رفع ملفات\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"رفع مجلدات\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"الرفع من جهاز \"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"تمّ إلغاء عملية رفع الملفات\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"تقدُّم الرفع \"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"عند تحديد مجلد وارد، أي ملفات متعارضة بداخله ستتم الكتابة فوقها.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"عند تحديد مجلد وارد، ستتم كتابة المحتوى في المجلد الموجود و سيتم تنفيذ حل التعارض بشكل تعاوُدي.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"أيُّ الملفات ترغب في الإبقاء عليها؟\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"يجب أن تختار نسخة واحدة على الأقل من كل ملف للاستمرار.\"] } } } } }, { \"locale\": \"ar_SA\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Arabic (Saudi Arabia) (https://www.transifex.com/nextcloud/teams/64236/ar_SA/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ar_SA\", \"Plural-Forms\": \"nplurals=6; plural=(n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Arabic (Saudi Arabia) (https://www.transifex.com/nextcloud/teams/64236/ar_SA/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ar_SA\\nPlural-Forms: nplurals=6; plural=(n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ast\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"enolp , 2023\", \"Language-Team\": \"Asturian (https://app.transifex.com/nextcloud/teams/64236/ast/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ast\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nenolp , 2023\\n\" }, \"msgstr\": [\"Last-Translator: enolp , 2023\\nLanguage-Team: Asturian (https://app.transifex.com/nextcloud/teams/64236/ast/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ast\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} ficheru en coflictu\", \"{count} ficheros en coflictu\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} ficheru en coflictu en {dirname}\", \"{count} ficheros en coflictu en {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"Queden {seconds} segundos\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"Tiempu que queda: {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"queden unos segundos\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Encaboxar les xubes\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Siguir\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimando'l tiempu que falta\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Versión esistente\"] }, \"If you select both versions, the copied file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the copied file will have a number added to its name.\", \"msgstr\": [\"Si seleiciones dambes versiones, el ficheru copiáu va tener un númberu amestáu al so nome.\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"La data de la última modificación ye desconocida\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nuevu\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Versión nueva\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"en posa\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Previsualizar la imaxe\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Marcar toles caxelles\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Seleicionar tolos ficheros esistentes\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Seleicionar tolos ficheros nuevos\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Saltar esti ficheru\", \"Saltar {count} ficheros\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Tamañu desconocíu\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"Encaboxóse la xuba\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Xubir ficheros\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Xuba en cursu\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"¿Qué ficheros quies caltener?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Tienes de seleicionar polo menos una versión de cada ficheru pa siguir.\"] } } } } }, { \"locale\": \"az\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Rashad Aliyev , 2023\", \"Language-Team\": \"Azerbaijani (https://app.transifex.com/nextcloud/teams/64236/az/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"az\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nRashad Aliyev , 2023\\n\" }, \"msgstr\": [\"Last-Translator: Rashad Aliyev , 2023\\nLanguage-Team: Azerbaijani (https://app.transifex.com/nextcloud/teams/64236/az/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: az\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} saniyə qalıb\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"{time} qalıb\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"bir neçə saniyə qalıb\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Əlavə et\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Yükləməni imtina et\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"Təxmini qalan vaxt\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pauzadadır\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Faylları yüklə\"] } } } } }, { \"locale\": \"be\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Belarusian (https://www.transifex.com/nextcloud/teams/64236/be/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"be\", \"Plural-Forms\": \"nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Belarusian (https://www.transifex.com/nextcloud/teams/64236/be/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: be\\nPlural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"bg_BG\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Bulgarian (Bulgaria) (https://www.transifex.com/nextcloud/teams/64236/bg_BG/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"bg_BG\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Bulgarian (Bulgaria) (https://www.transifex.com/nextcloud/teams/64236/bg_BG/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: bg_BG\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"bn_BD\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Bengali (Bangladesh) (https://www.transifex.com/nextcloud/teams/64236/bn_BD/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"bn_BD\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Bengali (Bangladesh) (https://www.transifex.com/nextcloud/teams/64236/bn_BD/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: bn_BD\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"br\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Breton (https://www.transifex.com/nextcloud/teams/64236/br/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"br\", \"Plural-Forms\": \"nplurals=5; plural=((n%10 == 1) && (n%100 != 11) && (n%100 !=71) && (n%100 !=91) ? 0 :(n%10 == 2) && (n%100 != 12) && (n%100 !=72) && (n%100 !=92) ? 1 :(n%10 ==3 || n%10==4 || n%10==9) && (n%100 < 10 || n% 100 > 19) && (n%100 < 70 || n%100 > 79) && (n%100 < 90 || n%100 > 99) ? 2 :(n != 0 && n % 1000000 == 0) ? 3 : 4);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Breton (https://www.transifex.com/nextcloud/teams/64236/br/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: br\\nPlural-Forms: nplurals=5; plural=((n%10 == 1) && (n%100 != 11) && (n%100 !=71) && (n%100 !=91) ? 0 :(n%10 == 2) && (n%100 != 12) && (n%100 !=72) && (n%100 !=92) ? 1 :(n%10 ==3 || n%10==4 || n%10==9) && (n%100 < 10 || n% 100 > 19) && (n%100 < 70 || n%100 > 79) && (n%100 < 90 || n%100 > 99) ? 2 :(n != 0 && n % 1000000 == 0) ? 3 : 4);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"bs\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Bosnian (https://www.transifex.com/nextcloud/teams/64236/bs/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"bs\", \"Plural-Forms\": \"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Bosnian (https://www.transifex.com/nextcloud/teams/64236/bs/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: bs\\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ca\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Toni Hermoso Pulido , 2022\", \"Language-Team\": \"Catalan (https://www.transifex.com/nextcloud/teams/64236/ca/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ca\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nMarc Riera , 2022\\nToni Hermoso Pulido , 2022\\n\" }, \"msgstr\": [\"Last-Translator: Toni Hermoso Pulido , 2022\\nLanguage-Team: Catalan (https://www.transifex.com/nextcloud/teams/64236/ca/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ca\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"Queden {seconds} segons\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"Queden {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"Queden uns segons\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Afegeix\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Cancel·la les pujades\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"S'està estimant el temps restant\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"En pausa\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Puja els fitxers\"] } } } } }, { \"locale\": \"cs\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Pavel Borecki , 2022\", \"Language-Team\": \"Czech (https://www.transifex.com/nextcloud/teams/64236/cs/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"cs\", \"Plural-Forms\": \"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nPavel Borecki , 2022\\n\" }, \"msgstr\": [\"Last-Translator: Pavel Borecki , 2022\\nLanguage-Team: Czech (https://www.transifex.com/nextcloud/teams/64236/cs/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: cs\\nPlural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"zbývá {seconds}\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"zbývá {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"zbývá několik sekund\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Přidat\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Zrušit nahrávání\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"odhadovaný zbývající čas\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pozastaveno\"] } } } } }, { \"locale\": \"cs_CZ\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Michal Šmahel , 2024\", \"Language-Team\": \"Czech (Czech Republic) (https://app.transifex.com/nextcloud/teams/64236/cs_CZ/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"cs_CZ\", \"Plural-Forms\": \"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nMichal Šmahel , 2024\\n\" }, \"msgstr\": [\"Last-Translator: Michal Šmahel , 2024\\nLanguage-Team: Czech (Czech Republic) (https://app.transifex.com/nextcloud/teams/64236/cs_CZ/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: cs_CZ\\nPlural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} kolize souborů\", \"{count} kolize souborů\", \"{count} kolizí souborů\", \"{count} kolize souborů\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} kolize souboru v {dirname}\", \"{count} kolize souboru v {dirname}\", \"{count} kolizí souborů v {dirname}\", \"{count} kolize souboru v {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"zbývá {seconds}\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"zbývá {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"zbývá několik sekund\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Zrušit\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Zrušit celou operaci\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Zrušit nahrávání\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Pokračovat\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"odhaduje se zbývající čas\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Existující verze\"] }, \"If you select both versions, the copied file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the copied file will have a number added to its name.\", \"msgstr\": [\"Pokud vyberete obě verze, zkopírovaný soubor bude mít k názvu přidáno číslo.\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Neznámé datum poslední úpravy\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nové\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Nová verze\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pozastaveno\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Náhled obrázku\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Označit všechny zaškrtávací kolonky\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Vybrat veškeré stávající soubory\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Vybrat veškeré nové soubory\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Přeskočit tento soubor\", \"Přeskočit {count} soubory\", \"Přeskočit {count} souborů\", \"Přeskočit {count} soubory\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Neznámá velikost\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"Nahrávání zrušeno\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Nahrát soubory\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Postup v nahrávání\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Po výběru příchozí složky budou rovněž přepsány všechny v ní obsažené konfliktní soubory\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Které soubory si přejete ponechat?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Aby bylo možné pokračovat, je třeba vybrat alespoň jednu verzi od každého souboru.\"] } } } } }, { \"locale\": \"cy_GB\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Welsh (United Kingdom) (https://www.transifex.com/nextcloud/teams/64236/cy_GB/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"cy_GB\", \"Plural-Forms\": \"nplurals=4; plural=(n==1) ? 0 : (n==2) ? 1 : (n != 8 && n != 11) ? 2 : 3;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Welsh (United Kingdom) (https://www.transifex.com/nextcloud/teams/64236/cy_GB/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: cy_GB\\nPlural-Forms: nplurals=4; plural=(n==1) ? 0 : (n==2) ? 1 : (n != 8 && n != 11) ? 2 : 3;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"da\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Martin Bonde , 2024\", \"Language-Team\": \"Danish (https://app.transifex.com/nextcloud/teams/64236/da/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"da\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nMartin Bonde , 2024\\n\" }, \"msgstr\": [\"Last-Translator: Martin Bonde , 2024\\nLanguage-Team: Danish (https://app.transifex.com/nextcloud/teams/64236/da/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: da\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} fil konflikt\", \"{count} filer i konflikt\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} fil konflikt i {dirname}\", \"{count} filer i konflikt i {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{sekunder} sekunder tilbage\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{tid} tilbage\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"et par sekunder tilbage\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Annuller\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Annuller hele handlingen\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Annuller uploads\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Fortsæt\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimering af resterende tid\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Eksisterende version\"] }, \"If you select both versions, the copied file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the copied file will have a number added to its name.\", \"msgstr\": [\"Hvis du vælger begge versioner vil den kopierede fil få et nummer tilføjet til sit navn.\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Sidste modifikationsdato ukendt\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Ny\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Ny version\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pauset\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Forhåndsvisning af billede\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Vælg alle felter\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Vælg alle eksisterende filer\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Vælg alle nye filer\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Spring denne fil over\", \"Spring {count} filer over\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Ukendt størrelse\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"Upload annulleret\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Upload filer\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Upload fremskridt\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Når en indgående mappe er valgt, vil alle modstridende filer i den også blive overskrevet.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Hvilke filer ønsker du at beholde?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Du skal vælge mindst én version af hver fil for at fortsætte.\"] } } } } }, { \"locale\": \"de\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Mario Siegmann , 2024\", \"Language-Team\": \"German (https://app.transifex.com/nextcloud/teams/64236/de/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"de\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nMario Siegmann , 2024\\n\" }, \"msgstr\": [\"Last-Translator: Mario Siegmann , 2024\\nLanguage-Team: German (https://app.transifex.com/nextcloud/teams/64236/de/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: de\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} Datei-Konflikt\", \"{count} Datei-Konflikte\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} Datei-Konflikt in {dirname}\", \"{count} Datei-Konflikte in {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} Sekunden verbleibend\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} verbleibend\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"noch ein paar Sekunden\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Abbrechen\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Den gesamten Vorgang abbrechen\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Hochladen abbrechen\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Fortsetzen\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"Geschätzte verbleibende Zeit\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Vorhandene Version\"] }, \"If you select both versions, the copied file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the copied file will have a number added to its name.\", \"msgstr\": [\"Wenn du beide Versionen auswählst, wird der kopierten Datei eine Nummer zum Namen hinzugefügt.\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Datum der letzten Änderung unbekannt\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Neu\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Neue Version\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"Pausiert\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Vorschaubild\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Alle Kontrollkästchen aktivieren\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Alle vorhandenen Dateien auswählen\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Alle neuen Dateien auswählen\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Diese Datei überspringen\", \"{count} Dateien überspringen\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Unbekannte Größe\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"Hochladen abgebrochen\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Dateien hochladen\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Fortschritt beim Hochladen\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Wenn ein eingehender Ordner ausgewählt wird, werden alle darin enthaltenen Konfliktdateien ebenfalls überschrieben.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Welche Dateien möchtest du behalten?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Du musst mindestens eine Version jeder Datei auswählen, um fortzufahren.\"] } } } } }, { \"locale\": \"de_DE\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Mario Siegmann , 2024\", \"Language-Team\": \"German (Germany) (https://app.transifex.com/nextcloud/teams/64236/de_DE/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"de_DE\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nMario Siegmann , 2024\\n\" }, \"msgstr\": [\"Last-Translator: Mario Siegmann , 2024\\nLanguage-Team: German (Germany) (https://app.transifex.com/nextcloud/teams/64236/de_DE/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: de_DE\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{filename}\" contains invalid characters, how do you want to continue?': { \"msgid\": '\"{filename}\" contains invalid characters, how do you want to continue?', \"msgstr\": ['\"{filename}\" enthält ungültige Zeichen. Wie möchten Sie fortfahren?'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} Datei-Konflikt\", \"{count} Datei-Konflikte\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} Datei-Konflikt in {dirname}\", \"{count} Datei-Konflikte in {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} Sekunden verbleiben\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} verbleibend\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"ein paar Sekunden verbleiben\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Abbrechen\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Den gesamten Vorgang abbrechen\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Hochladen abbrechen\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Fortsetzen\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Neu erstellen\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"Geschätzte verbleibende Zeit\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Vorhandene Version\"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Wenn Sie beide Versionen auswählen, wird der eingehenden Datei eine Nummer zum Namen hinzugefügt.\"] }, \"Invalid file name\": { \"msgid\": \"Invalid file name\", \"msgstr\": [\"Ungültiger Dateiname\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Datum der letzten Änderung unbekannt\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Neu\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Neue Version\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"Pausiert\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Vorschaubild\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Umbenennen\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Alle Kontrollkästchen aktivieren\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Alle vorhandenen Dateien auswählen\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Alle neuen Dateien auswählen\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Überspringen\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"{count} Datei überspringen\", \"{count} Dateien überspringen\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Unbekannte Größe\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Dateien hochladen\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Ordner hochladen\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Vom Gerät hochladen\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Das Hochladen wurde abgebrochen\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Fortschritt beim Hochladen\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Wenn ein eingehender Ordner ausgewählt wird, werden alle darin enthaltenen Konfliktdateien ebenfalls überschrieben.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Bei Auswahl eines eingehenden Ordners wird der Inhalt in den vorhandenen Ordner geschrieben und eine rekursive Konfliktlösung durchgeführt.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Welche Dateien möchten Sie behalten?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Sie müssen mindestens eine Version jeder Datei auswählen, um fortzufahren.\"] } } } } }, { \"locale\": \"el\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Nik Pap, 2022\", \"Language-Team\": \"Greek (https://www.transifex.com/nextcloud/teams/64236/el/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"el\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nNik Pap, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Nik Pap, 2022\\nLanguage-Team: Greek (https://www.transifex.com/nextcloud/teams/64236/el/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: el\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"απομένουν {seconds} δευτερόλεπτα\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"απομένουν {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"απομένουν λίγα δευτερόλεπτα\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Προσθήκη\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Ακύρωση μεταφορτώσεων\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"εκτίμηση του χρόνου που απομένει\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"σε παύση\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Μεταφόρτωση αρχείων\"] } } } } }, { \"locale\": \"el_GR\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Greek (Greece) (https://www.transifex.com/nextcloud/teams/64236/el_GR/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"el_GR\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Greek (Greece) (https://www.transifex.com/nextcloud/teams/64236/el_GR/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: el_GR\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"en_GB\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Andi Chandler , 2024\", \"Language-Team\": \"English (United Kingdom) (https://app.transifex.com/nextcloud/teams/64236/en_GB/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"en_GB\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nAndi Chandler , 2024\\n\" }, \"msgstr\": [\"Last-Translator: Andi Chandler , 2024\\nLanguage-Team: English (United Kingdom) (https://app.transifex.com/nextcloud/teams/64236/en_GB/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: en_GB\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} file conflict\", \"{count} files conflict\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} file conflict in {dirname}\", \"{count} file conflicts in {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} seconds left\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} left\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"a few seconds left\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Cancel\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Cancel the entire operation\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Cancel uploads\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Continue\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimating time left\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Existing version\"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"If you select both versions, the incoming file will have a number added to its name.\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Last modified date unknown\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"New\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"New version\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"paused\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Preview image\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Select all checkboxes\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Select all existing files\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Select all new files\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Skip this file\", \"Skip {count} files\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Unknown size\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"Upload cancelled\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Upload files\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Upload progress\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"When an incoming folder is selected, any conflicting files within it will also be overwritten.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Which files do you want to keep?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"You need to select at least one version of each file to continue.\"] } } } } }, { \"locale\": \"eo\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Esperanto (https://www.transifex.com/nextcloud/teams/64236/eo/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"eo\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Esperanto (https://www.transifex.com/nextcloud/teams/64236/eo/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: eo\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Julio C. Ortega, 2024\", \"Language-Team\": \"Spanish (https://app.transifex.com/nextcloud/teams/64236/es/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nFranciscoFJ , 2024\\nJulio C. Ortega, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Julio C. Ortega, 2024\\nLanguage-Team: Spanish (https://app.transifex.com/nextcloud/teams/64236/es/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, '\"{filename}\" contains invalid characters, how do you want to continue?': { \"msgid\": '\"{filename}\" contains invalid characters, how do you want to continue?', \"msgstr\": ['\"{filename}\" contiene caracteres inválidos, ¿cómo desea continuar?'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} conflicto de archivo\", \"{count} conflictos de archivo\", \"{count} conflictos de archivo\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} conflicto de archivo en {dirname}\", \"{count} conflictos de archivo en {dirname}\", \"{count} conflictos de archivo en {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} segundos restantes\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} restante\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"quedan unos segundos\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Cancelar\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Cancelar toda la operación\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Cancelar subidas\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Continuar\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Crear nuevo\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimando tiempo restante\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Versión existente\"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Si selecciona ambas versionas, el archivo entrante le será agregado un número a su nombre.\"] }, \"Invalid file name\": { \"msgid\": \"Invalid file name\", \"msgstr\": [\"Nombre de archivo inválido\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Última fecha de modificación desconocida\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nuevo\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Nueva versión\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pausado\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Previsualizar imagen\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Renombrar\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Seleccionar todas las casillas de verificación\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Seleccionar todos los archivos existentes\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Seleccionar todos los archivos nuevos\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Saltar\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Saltar este archivo\", \"Saltar {count} archivos\", \"Saltar {count} archivos\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Tamaño desconocido\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Subir archivos\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Subir carpetas\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Subir desde dispositivo\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"La subida ha sido cancelada\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Progreso de la subida\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Cuando una carpeta entrante es seleccionada, cualquier de los archivos en conflictos también serán sobre-escritos.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Cuando una carpeta entrante es seleccionada, el contenido es escrito en la carpeta existente y se realizará una resolución de conflictos recursiva.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"¿Qué archivos desea conservar?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Debe seleccionar al menos una versión de cada archivo para continuar.\"] } } } } }, { \"locale\": \"es_419\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"ALEJANDRO CASTRO, 2022\", \"Language-Team\": \"Spanish (Latin America) (https://www.transifex.com/nextcloud/teams/64236/es_419/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_419\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nALEJANDRO CASTRO, 2022\\n\" }, \"msgstr\": [\"Last-Translator: ALEJANDRO CASTRO, 2022\\nLanguage-Team: Spanish (Latin America) (https://www.transifex.com/nextcloud/teams/64236/es_419/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_419\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} segundos restantes\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"{tiempo} restante\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"quedan pocos segundos\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"agregar\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Cancelar subidas\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimando tiempo restante\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pausado\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Subir archivos\"] } } } } }, { \"locale\": \"es_AR\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Matias Iglesias, 2022\", \"Language-Team\": \"Spanish (Argentina) (https://www.transifex.com/nextcloud/teams/64236/es_AR/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_AR\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nMatias Iglesias, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Matias Iglesias, 2022\\nLanguage-Team: Spanish (Argentina) (https://www.transifex.com/nextcloud/teams/64236/es_AR/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_AR\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} segundos restantes\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"{time} restante\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"quedan unos segundos\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Añadir\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Cancelar subidas\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimando tiempo restante\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pausado\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Subir archivos\"] } } } } }, { \"locale\": \"es_CL\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Chile) (https://www.transifex.com/nextcloud/teams/64236/es_CL/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_CL\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Chile) (https://www.transifex.com/nextcloud/teams/64236/es_CL/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_CL\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_CO\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Colombia) (https://www.transifex.com/nextcloud/teams/64236/es_CO/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_CO\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Colombia) (https://www.transifex.com/nextcloud/teams/64236/es_CO/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_CO\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_CR\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Costa Rica) (https://www.transifex.com/nextcloud/teams/64236/es_CR/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_CR\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Costa Rica) (https://www.transifex.com/nextcloud/teams/64236/es_CR/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_CR\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_DO\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Dominican Republic) (https://www.transifex.com/nextcloud/teams/64236/es_DO/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_DO\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Dominican Republic) (https://www.transifex.com/nextcloud/teams/64236/es_DO/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_DO\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_EC\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Ecuador) (https://www.transifex.com/nextcloud/teams/64236/es_EC/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_EC\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Ecuador) (https://www.transifex.com/nextcloud/teams/64236/es_EC/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_EC\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_GT\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Guatemala) (https://www.transifex.com/nextcloud/teams/64236/es_GT/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_GT\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Guatemala) (https://www.transifex.com/nextcloud/teams/64236/es_GT/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_GT\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_HN\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Honduras) (https://www.transifex.com/nextcloud/teams/64236/es_HN/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_HN\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Honduras) (https://www.transifex.com/nextcloud/teams/64236/es_HN/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_HN\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_MX\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"ALEJANDRO CASTRO, 2022\", \"Language-Team\": \"Spanish (Mexico) (https://www.transifex.com/nextcloud/teams/64236/es_MX/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_MX\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nLuis Francisco Castro, 2022\\nALEJANDRO CASTRO, 2022\\n\" }, \"msgstr\": [\"Last-Translator: ALEJANDRO CASTRO, 2022\\nLanguage-Team: Spanish (Mexico) (https://www.transifex.com/nextcloud/teams/64236/es_MX/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_MX\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} segundos restantes\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"{tiempo} restante\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"quedan pocos segundos\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"agregar\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"cancelar las cargas\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimando tiempo restante\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"en pausa\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"cargar archivos\"] } } } } }, { \"locale\": \"es_NI\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Nicaragua) (https://www.transifex.com/nextcloud/teams/64236/es_NI/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_NI\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Nicaragua) (https://www.transifex.com/nextcloud/teams/64236/es_NI/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_NI\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_PA\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Panama) (https://www.transifex.com/nextcloud/teams/64236/es_PA/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_PA\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Panama) (https://www.transifex.com/nextcloud/teams/64236/es_PA/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_PA\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_PE\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Peru) (https://www.transifex.com/nextcloud/teams/64236/es_PE/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_PE\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Peru) (https://www.transifex.com/nextcloud/teams/64236/es_PE/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_PE\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_PR\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Puerto Rico) (https://www.transifex.com/nextcloud/teams/64236/es_PR/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_PR\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Puerto Rico) (https://www.transifex.com/nextcloud/teams/64236/es_PR/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_PR\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_PY\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Paraguay) (https://www.transifex.com/nextcloud/teams/64236/es_PY/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_PY\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Paraguay) (https://www.transifex.com/nextcloud/teams/64236/es_PY/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_PY\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_SV\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (El Salvador) (https://www.transifex.com/nextcloud/teams/64236/es_SV/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_SV\", \"Plural-Forms\": \"nplurals=2; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (El Salvador) (https://www.transifex.com/nextcloud/teams/64236/es_SV/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_SV\\nPlural-Forms: nplurals=2; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_UY\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Uruguay) (https://www.transifex.com/nextcloud/teams/64236/es_UY/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_UY\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Uruguay) (https://www.transifex.com/nextcloud/teams/64236/es_UY/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_UY\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"et_EE\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Taavo Roos, 2023\", \"Language-Team\": \"Estonian (Estonia) (https://app.transifex.com/nextcloud/teams/64236/et_EE/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"et_EE\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nMait R, 2022\\nTaavo Roos, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Taavo Roos, 2023\\nLanguage-Team: Estonian (Estonia) (https://app.transifex.com/nextcloud/teams/64236/et_EE/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: et_EE\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} jäänud sekundid\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"{time} aega jäänud\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"jäänud mõni sekund\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Lisa\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Tühista üleslaadimine\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"hinnanguline järelejäänud aeg\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pausil\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Lae failid üles\"] } } } } }, { \"locale\": \"eu\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Unai Tolosa Pontesta , 2022\", \"Language-Team\": \"Basque (https://www.transifex.com/nextcloud/teams/64236/eu/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"eu\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nUnai Tolosa Pontesta , 2022\\n\" }, \"msgstr\": [\"Last-Translator: Unai Tolosa Pontesta , 2022\\nLanguage-Team: Basque (https://www.transifex.com/nextcloud/teams/64236/eu/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: eu\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} segundo geratzen dira\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"{time} geratzen da\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"segundo batzuk geratzen dira\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Gehitu\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Ezeztatu igoerak\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"kalkulatutako geratzen den denbora\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"geldituta\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Igo fitxategiak\"] } } } } }, { \"locale\": \"fa\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Fatemeh Komeily, 2023\", \"Language-Team\": \"Persian (https://app.transifex.com/nextcloud/teams/64236/fa/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"fa\", \"Plural-Forms\": \"nplurals=2; plural=(n > 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nFatemeh Komeily, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Fatemeh Komeily, 2023\\nLanguage-Team: Persian (https://app.transifex.com/nextcloud/teams/64236/fa/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: fa\\nPlural-Forms: nplurals=2; plural=(n > 1);\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"ثانیه های باقی مانده\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"باقی مانده\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"چند ثانیه مانده\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"اضافه کردن\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"کنسل کردن فایل های اپلود شده\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"تخمین زمان باقی مانده\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"مکث کردن\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"بارگذاری فایل ها\"] } } } } }, { \"locale\": \"fi_FI\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Jiri Grönroos , 2022\", \"Language-Team\": \"Finnish (Finland) (https://www.transifex.com/nextcloud/teams/64236/fi_FI/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"fi_FI\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJiri Grönroos , 2022\\n\" }, \"msgstr\": [\"Last-Translator: Jiri Grönroos , 2022\\nLanguage-Team: Finnish (Finland) (https://www.transifex.com/nextcloud/teams/64236/fi_FI/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: fi_FI\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} sekuntia jäljellä\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"{time} jäljellä\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"muutama sekunti jäljellä\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Lisää\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Peruuta lähetykset\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"arvioidaan jäljellä olevaa aikaa\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"keskeytetty\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Lähetä tiedostoja\"] } } } } }, { \"locale\": \"fo\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Faroese (https://www.transifex.com/nextcloud/teams/64236/fo/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"fo\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Faroese (https://www.transifex.com/nextcloud/teams/64236/fo/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: fo\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"fr\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"jed boulahya, 2024\", \"Language-Team\": \"French (https://app.transifex.com/nextcloud/teams/64236/fr/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"fr\", \"Plural-Forms\": \"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nBenoit Pruneau, 2024\\njed boulahya, 2024\\n\" }, \"msgstr\": [\"Last-Translator: jed boulahya, 2024\\nLanguage-Team: French (https://app.transifex.com/nextcloud/teams/64236/fr/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: fr\\nPlural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} fichier en conflit\", \"{count} fichiers en conflit\", \"{count} fichiers en conflit\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} fichier en conflit dans {dirname}\", \"{count} fichiers en conflit dans {dirname}\", \"{count} fichiers en conflit dans {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} secondes restantes\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} restant\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"quelques secondes restantes\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Annuler\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Annuler l'opération entière\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Annuler les envois\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Continuer\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimation du temps restant\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Version existante\"] }, \"If you select both versions, the copied file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the copied file will have a number added to its name.\", \"msgstr\": [\"Si vous sélectionnez les deux versions, le fichier copié aura un numéro ajouté àname.\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Date de la dernière modification est inconnue\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nouveau\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Nouvelle version\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"en pause\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Aperçu de l'image\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Sélectionner toutes les cases à cocher\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Sélectionner tous les fichiers existants\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Sélectionner tous les nouveaux fichiers\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Ignorer ce fichier\", \"Ignorer {count} fichiers\", \"Ignorer {count} fichiers\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Taille inconnue\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\" annulé\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Téléchargement des fichiers\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Progression du téléchargement\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Lorsqu'un dossier entrant est sélectionné, tous les fichiers en conflit qu'il contient seront également écrasés.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Quels fichiers souhaitez-vous conserver ?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Vous devez sélectionner au moins une version de chaque fichier pour continuer.\"] } } } } }, { \"locale\": \"ga\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Aindriú Mac Giolla Eoin, 2024\", \"Language-Team\": \"Irish (https://app.transifex.com/nextcloud/teams/64236/ga/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ga\", \"Plural-Forms\": \"nplurals=5; plural=(n==1 ? 0 : n==2 ? 1 : n<7 ? 2 : n<11 ? 3 : 4);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nAindriú Mac Giolla Eoin, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Aindriú Mac Giolla Eoin, 2024\\nLanguage-Team: Irish (https://app.transifex.com/nextcloud/teams/64236/ga/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ga\\nPlural-Forms: nplurals=5; plural=(n==1 ? 0 : n==2 ? 1 : n<7 ? 2 : n<11 ? 3 : 4);\\n\"] }, '\"{filename}\" contains invalid characters, how do you want to continue?': { \"msgid\": '\"{filename}\" contains invalid characters, how do you want to continue?', \"msgstr\": ['Tá carachtair neamhbhailí in \"{filename}\", conas ba mhaith leat leanúint ar aghaidh?'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} coimhlint comhaid\", \"coimhlint comhaid {count}\", \"coimhlint comhaid {count}\", \"coimhlint comhaid {count}\", \"coimhlint comhaid {count}\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} coimhlint comhaid i {dirname}\", \"{count} coimhlint comhaid i {dirname}\", \"{count} coimhlint comhaid i {dirname}\", \"{count} coimhlint comhaid i {dirname}\", \"{count} coimhlint comhaid i {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{soicind} fágtha\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{am} fágtha\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"cúpla soicind fágtha\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Cealaigh\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Cealaigh an oibríocht iomlán\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Cealaigh uaslódálacha\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Leanúint ar aghaidh\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Cruthaigh nua\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"ag déanamh meastachán ar an am atá fágtha\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Leagan láithreach \"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Má roghnaíonn tú an dá leagan, cuirfear uimhir leis an ainm a thagann isteach.\"] }, \"Invalid file name\": { \"msgid\": \"Invalid file name\", \"msgstr\": [\"Ainm comhaid neamhbhailí\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Dáta modhnaithe is déanaí anaithnid\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nua\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Leagan nua\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"sos\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Íomhá réamhamharc\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Athainmnigh\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Roghnaigh gach ticbhosca\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Roghnaigh gach comhad atá ann cheana féin\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Roghnaigh gach comhad nua\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Scipeáil\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Léim an comhad seo\", \"Léim ar {count} comhad\", \"Léim ar {count} comhad\", \"Léim ar {count} comhad\", \"Léim ar {count} comhad\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Méid anaithnid\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Uaslódáil comhaid\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Uaslódáil fillteáin\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Íosluchtaigh ó gléas\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Cuireadh an t-uaslódáil ar ceal\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Uaslódáil dul chun cinn\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Nuair a roghnaítear fillteán isteach, déanfar aon chomhad contrártha laistigh de a fhorscríobh freisin.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Nuair a roghnaítear fillteán isteach, scríobhtar an t-ábhar isteach san fhillteán atá ann cheana agus déantar réiteach coinbhleachta athchúrsach.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Cé na comhaid ar mhaith leat a choinneáil?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Ní mór duit leagan amháin ar a laghad de gach comhad a roghnú chun leanúint ar aghaidh.\"] } } } } }, { \"locale\": \"gd\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Gaelic, Scottish (https://www.transifex.com/nextcloud/teams/64236/gd/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"gd\", \"Plural-Forms\": \"nplurals=4; plural=(n==1 || n==11) ? 0 : (n==2 || n==12) ? 1 : (n > 2 && n < 20) ? 2 : 3;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Gaelic, Scottish (https://www.transifex.com/nextcloud/teams/64236/gd/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: gd\\nPlural-Forms: nplurals=4; plural=(n==1 || n==11) ? 0 : (n==2 || n==12) ? 1 : (n > 2 && n < 20) ? 2 : 3;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"gl\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Miguel Anxo Bouzada , 2024\", \"Language-Team\": \"Galician (https://app.transifex.com/nextcloud/teams/64236/gl/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"gl\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nMiguel Anxo Bouzada , 2024\\n\" }, \"msgstr\": [\"Last-Translator: Miguel Anxo Bouzada , 2024\\nLanguage-Team: Galician (https://app.transifex.com/nextcloud/teams/64236/gl/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: gl\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{filename}\" contains invalid characters, how do you want to continue?': { \"msgid\": '\"{filename}\" contains invalid characters, how do you want to continue?', \"msgstr\": [\"«{filename}» contén caracteres non válidos, como quere continuar?\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} conflito de ficheiros\", \"{count} conflitos de ficheiros\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} conflito de ficheiros en {dirname}\", \"{count} conflitos de ficheiros en {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"faltan {seconds} segundos\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"falta {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"faltan uns segundos\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Cancelar\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Cancela toda a operación\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Cancelar envíos\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Continuar\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Crear un novo\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"calculando canto tempo falta\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Versión existente\"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Se selecciona ambas as versións, o ficheiro entrante terá un número engadido ao seu nome.\"] }, \"Invalid file name\": { \"msgid\": \"Invalid file name\", \"msgstr\": [\"O nome de ficheiro non é válido\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Data da última modificación descoñecida\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nova\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Nova versión\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"detido\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Vista previa da imaxe\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Renomear\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Marcar todas as caixas de selección\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Seleccionar todos os ficheiros existentes\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Seleccionar todos os ficheiros novos\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Omitir\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Omita este ficheiro\", \"Omitir {count} ficheiros\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Tamaño descoñecido\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Enviar ficheiros\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Enviar cartafoles\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Enviar dende o dispositivo\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"O envío foi cancelado\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Progreso do envío\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Cando se selecciona un cartafol entrante, tamén se sobrescribirán os ficheiros en conflito dentro del.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Cando se selecciona un cartafol entrante, o contido escríbese no cartafol existente e lévase a cabo unha resolución recursiva de conflitos.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Que ficheiros quere conservar?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Debe seleccionar polo menos unha versión de cada ficheiro para continuar.\"] } } } } }, { \"locale\": \"he\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Hebrew (https://www.transifex.com/nextcloud/teams/64236/he/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"he\", \"Plural-Forms\": \"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n == 2 && n % 1 == 0) ? 1: (n % 10 == 0 && n % 1 == 0 && n > 10) ? 2 : 3;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Hebrew (https://www.transifex.com/nextcloud/teams/64236/he/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: he\\nPlural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n == 2 && n % 1 == 0) ? 1: (n % 10 == 0 && n % 1 == 0 && n > 10) ? 2 : 3;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"hi_IN\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Hindi (India) (https://www.transifex.com/nextcloud/teams/64236/hi_IN/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"hi_IN\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Hindi (India) (https://www.transifex.com/nextcloud/teams/64236/hi_IN/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: hi_IN\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"hr\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Croatian (https://www.transifex.com/nextcloud/teams/64236/hr/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"hr\", \"Plural-Forms\": \"nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Croatian (https://www.transifex.com/nextcloud/teams/64236/hr/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: hr\\nPlural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"hsb\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Upper Sorbian (https://www.transifex.com/nextcloud/teams/64236/hsb/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"hsb\", \"Plural-Forms\": \"nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Upper Sorbian (https://www.transifex.com/nextcloud/teams/64236/hsb/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: hsb\\nPlural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"hu\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Hungarian (https://www.transifex.com/nextcloud/teams/64236/hu/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"hu\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Hungarian (https://www.transifex.com/nextcloud/teams/64236/hu/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: hu\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"hu_HU\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Balázs Úr, 2022\", \"Language-Team\": \"Hungarian (Hungary) (https://www.transifex.com/nextcloud/teams/64236/hu_HU/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"hu_HU\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nBalázs Meskó , 2022\\nBalázs Úr, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Balázs Úr, 2022\\nLanguage-Team: Hungarian (Hungary) (https://www.transifex.com/nextcloud/teams/64236/hu_HU/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: hu_HU\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{} másodperc van hátra\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"{time} van hátra\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"pár másodperc van hátra\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Hozzáadás\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Feltöltések megszakítása\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"hátralévő idő becslése\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"szüneteltetve\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Fájlok feltöltése\"] } } } } }, { \"locale\": \"hy\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Armenian (https://www.transifex.com/nextcloud/teams/64236/hy/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"hy\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Armenian (https://www.transifex.com/nextcloud/teams/64236/hy/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: hy\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ia\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Interlingua (https://www.transifex.com/nextcloud/teams/64236/ia/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ia\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Interlingua (https://www.transifex.com/nextcloud/teams/64236/ia/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ia\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"id\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Linerly , 2023\", \"Language-Team\": \"Indonesian (https://app.transifex.com/nextcloud/teams/64236/id/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"id\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ , 2023\\nEmpty Slot Filler, 2023\\nLinerly , 2023\\n\" }, \"msgstr\": [\"Last-Translator: Linerly , 2023\\nLanguage-Team: Indonesian (https://app.transifex.com/nextcloud/teams/64236/id/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: id\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} berkas berkonflik\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} berkas berkonflik dalam {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} detik tersisa\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} tersisa\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"tinggal sebentar lagi\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Batalkan unggahan\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Lanjutkan\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"memperkirakan waktu yang tersisa\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Versi yang ada\"] }, \"If you select both versions, the copied file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the copied file will have a number added to its name.\", \"msgstr\": [\"Jika Anda memilih kedua versi, nama berkas yang disalin akan ditambahi angka.\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Tanggal perubahan terakhir tidak diketahui\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Baru\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Versi baru\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"dijeda\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Gambar pratinjau\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Pilih semua kotak centang\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Pilih semua berkas yang ada\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Pilih semua berkas baru\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Lewati {count} berkas\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Ukuran tidak diketahui\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"Unggahan dibatalkan\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Unggah berkas\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Berkas mana yang Anda ingin tetap simpan?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Anda harus memilih setidaknya satu versi dari masing-masing berkas untuk melanjutkan.\"] } } } } }, { \"locale\": \"ig\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Igbo (https://www.transifex.com/nextcloud/teams/64236/ig/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ig\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Igbo (https://www.transifex.com/nextcloud/teams/64236/ig/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ig\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"is\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Sveinn í Felli , 2023\", \"Language-Team\": \"Icelandic (https://app.transifex.com/nextcloud/teams/64236/is/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"is\", \"Plural-Forms\": \"nplurals=2; plural=(n % 10 != 1 || n % 100 == 11);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nSveinn í Felli , 2023\\n\" }, \"msgstr\": [\"Last-Translator: Sveinn í Felli , 2023\\nLanguage-Team: Icelandic (https://app.transifex.com/nextcloud/teams/64236/is/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: is\\nPlural-Forms: nplurals=2; plural=(n % 10 != 1 || n % 100 == 11);\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} árekstur skráa\", \"{count} árekstrar skráa\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} árekstur skráa í {dirname}\", \"{count} árekstrar skráa í {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} sekúndur eftir\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} eftir\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"nokkrar sekúndur eftir\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Hætta við innsendingar\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Halda áfram\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"áætla tíma sem eftir er\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Fyrirliggjandi útgáfa\"] }, \"If you select both versions, the copied file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the copied file will have a number added to its name.\", \"msgstr\": [\"Ef þú velur báðar útgáfur, þá mun verða bætt tölustaf aftan við heiti afrituðu skrárinnar.\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Síðasta breytingadagsetning er óþekkt\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nýtt\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Ný útgáfa\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"í bið\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Forskoðun myndar\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Velja gátreiti\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Velja allar fyrirliggjandi skrár\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Velja allar nýjar skrár\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Sleppa þessari skrá\", \"Sleppa {count} skrám\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Óþekkt stærð\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"Hætt við innsendingu\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Senda inn skrár\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Hvaða skrám vilt þú vilt halda eftir?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Þú verður að velja að minnsta kosti eina útgáfu af hverri skrá til að halda áfram.\"] } } } } }, { \"locale\": \"it\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Random_R, 2023\", \"Language-Team\": \"Italian (https://app.transifex.com/nextcloud/teams/64236/it/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"it\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ , 2023\\nLep Lep, 2023\\nRandom_R, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Random_R, 2023\\nLanguage-Team: Italian (https://app.transifex.com/nextcloud/teams/64236/it/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: it\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} file in conflitto\", \"{count} file in conflitto\", \"{count} file in conflitto\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} file in conflitto in {dirname}\", \"{count} file in conflitto in {dirname}\", \"{count} file in conflitto in {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} secondi rimanenti \"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} rimanente\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"alcuni secondi rimanenti\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Annulla i caricamenti\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Continua\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"calcolo il tempo rimanente\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Versione esistente\"] }, \"If you select both versions, the copied file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the copied file will have a number added to its name.\", \"msgstr\": [\"Se selezioni entrambe le versioni, nel nome del file copiato verrà aggiunto un numero \"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Ultima modifica sconosciuta\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nuovo\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Nuova versione\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pausa\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Anteprima immagine\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Seleziona tutte le caselle\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Seleziona tutti i file esistenti\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Seleziona tutti i nuovi file\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Salta questo file\", \"Salta {count} file\", \"Salta {count} file\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Dimensione sconosciuta\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"Caricamento cancellato\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Carica i file\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Quali file vuoi mantenere?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Devi selezionare almeno una versione di ogni file per continuare\"] } } } } }, { \"locale\": \"it_IT\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Italian (Italy) (https://www.transifex.com/nextcloud/teams/64236/it_IT/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"it_IT\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Italian (Italy) (https://www.transifex.com/nextcloud/teams/64236/it_IT/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: it_IT\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ja_JP\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"かたかめ, 2022\", \"Language-Team\": \"Japanese (Japan) (https://www.transifex.com/nextcloud/teams/64236/ja_JP/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ja_JP\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nT.S, 2022\\nかたかめ, 2022\\n\" }, \"msgstr\": [\"Last-Translator: かたかめ, 2022\\nLanguage-Team: Japanese (Japan) (https://www.transifex.com/nextcloud/teams/64236/ja_JP/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ja_JP\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"残り {seconds} 秒\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"残り {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"残り数秒\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"追加\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"アップロードをキャンセル\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"概算残り時間\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"一時停止中\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"ファイルをアップデート\"] } } } } }, { \"locale\": \"ka\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Georgian (https://www.transifex.com/nextcloud/teams/64236/ka/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ka\", \"Plural-Forms\": \"nplurals=2; plural=(n!=1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Georgian (https://www.transifex.com/nextcloud/teams/64236/ka/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ka\\nPlural-Forms: nplurals=2; plural=(n!=1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ka_GE\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Georgian (Georgia) (https://www.transifex.com/nextcloud/teams/64236/ka_GE/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ka_GE\", \"Plural-Forms\": \"nplurals=2; plural=(n!=1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Georgian (Georgia) (https://www.transifex.com/nextcloud/teams/64236/ka_GE/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ka_GE\\nPlural-Forms: nplurals=2; plural=(n!=1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"kab\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"ZiriSut, 2023\", \"Language-Team\": \"Kabyle (https://app.transifex.com/nextcloud/teams/64236/kab/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"kab\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nZiriSut, 2023\\n\" }, \"msgstr\": [\"Last-Translator: ZiriSut, 2023\\nLanguage-Team: Kabyle (https://app.transifex.com/nextcloud/teams/64236/kab/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: kab\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} tesdatin i d-yeqqimen\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"{time} i d-yeqqimen\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"qqiment-d kra n tesdatin kan\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Rnu\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Sefsex asali\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"asizel n wakud i d-yeqqimen\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"yeḥbes\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Sali-d ifuyla\"] } } } } }, { \"locale\": \"kk\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Kazakh (https://www.transifex.com/nextcloud/teams/64236/kk/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"kk\", \"Plural-Forms\": \"nplurals=2; plural=(n!=1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Kazakh (https://www.transifex.com/nextcloud/teams/64236/kk/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: kk\\nPlural-Forms: nplurals=2; plural=(n!=1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"km\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Khmer (https://www.transifex.com/nextcloud/teams/64236/km/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"km\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Khmer (https://www.transifex.com/nextcloud/teams/64236/km/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: km\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"kn\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Kannada (https://www.transifex.com/nextcloud/teams/64236/kn/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"kn\", \"Plural-Forms\": \"nplurals=2; plural=(n > 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Kannada (https://www.transifex.com/nextcloud/teams/64236/kn/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: kn\\nPlural-Forms: nplurals=2; plural=(n > 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ko\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"이상오, 2024\", \"Language-Team\": \"Korean (https://app.transifex.com/nextcloud/teams/64236/ko/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ko\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\n이상오, 2024\\n\" }, \"msgstr\": [\"Last-Translator: 이상오, 2024\\nLanguage-Team: Korean (https://app.transifex.com/nextcloud/teams/64236/ko/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ko\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, '\"{filename}\" contains invalid characters, how do you want to continue?': { \"msgid\": '\"{filename}\" contains invalid characters, how do you want to continue?', \"msgstr\": ['\"{filename}\"에 유효하지 않은 문자가 있습니다, 계속하시겠습니까?'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count}개의 파일이 충돌함\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{dirname}에서 {count}개의 파일이 충돌함\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds}초 남음\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} 남음\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"곧 완료\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"취소\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"전체 작업을 취소\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"업로드 취소\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"확인\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"새로 만들기\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"남은 시간 계산\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"현재 버전\"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"두 파일을 모두 선택하면, 들어오는 파일의 이름에 번호가 추가됩니다.\"] }, \"Invalid file name\": { \"msgid\": \"Invalid file name\", \"msgstr\": [\"잘못된 파일 이름\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"최근 수정일 알 수 없음\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"새로 만들기\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"새 버전\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"일시정지됨\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"미리보기 이미지\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"이름 바꾸기\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"모든 체크박스 선택\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"기존 파일을 모두 선택\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"새로운 파일을 모두 선택\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"건너뛰기\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"{count}개의 파일 넘기기\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"크기를 알 수 없음\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"파일 업로드\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"폴더 업로드\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"장치에서 업로드\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"업로드가 취소되었습니다.\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"업로드 진행도\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"들어오는 폴더를 선택했다면, 충돌하는 내부 파일들은 덮어쓰기 됩니다.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"들어오는 폴더를 선택했다면 내용물이 그 기존 폴더 안에 작성되고, 전체적으로 충돌 해결을 수행합니다.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"어떤 파일을 보존하시겠습니까?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"계속하기 위해서는 한 파일에 최소 하나의 버전을 선택해야 합니다.\"] } } } } }, { \"locale\": \"la\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Latin (https://www.transifex.com/nextcloud/teams/64236/la/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"la\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Latin (https://www.transifex.com/nextcloud/teams/64236/la/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: la\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"lb\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Luxembourgish (https://www.transifex.com/nextcloud/teams/64236/lb/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"lb\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Luxembourgish (https://www.transifex.com/nextcloud/teams/64236/lb/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: lb\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"lo\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Lao (https://www.transifex.com/nextcloud/teams/64236/lo/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"lo\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Lao (https://www.transifex.com/nextcloud/teams/64236/lo/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: lo\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"lt_LT\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Lithuanian (Lithuania) (https://www.transifex.com/nextcloud/teams/64236/lt_LT/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"lt_LT\", \"Plural-Forms\": \"nplurals=4; plural=(n % 10 == 1 && (n % 100 > 19 || n % 100 < 11) ? 0 : (n % 10 >= 2 && n % 10 <=9) && (n % 100 > 19 || n % 100 < 11) ? 1 : n % 1 != 0 ? 2: 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Lithuanian (Lithuania) (https://www.transifex.com/nextcloud/teams/64236/lt_LT/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: lt_LT\\nPlural-Forms: nplurals=4; plural=(n % 10 == 1 && (n % 100 > 19 || n % 100 < 11) ? 0 : (n % 10 >= 2 && n % 10 <=9) && (n % 100 > 19 || n % 100 < 11) ? 1 : n % 1 != 0 ? 2: 3);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"lv\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Latvian (https://www.transifex.com/nextcloud/teams/64236/lv/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"lv\", \"Plural-Forms\": \"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Latvian (https://www.transifex.com/nextcloud/teams/64236/lv/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: lv\\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"mk\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Сашко Тодоров , 2022\", \"Language-Team\": \"Macedonian (https://www.transifex.com/nextcloud/teams/64236/mk/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"mk\", \"Plural-Forms\": \"nplurals=2; plural=(n % 10 == 1 && n % 100 != 11) ? 0 : 1;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nСашко Тодоров , 2022\\n\" }, \"msgstr\": [\"Last-Translator: Сашко Тодоров , 2022\\nLanguage-Team: Macedonian (https://www.transifex.com/nextcloud/teams/64236/mk/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: mk\\nPlural-Forms: nplurals=2; plural=(n % 10 == 1 && n % 100 != 11) ? 0 : 1;\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"преостануваат {seconds} секунди\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"преостанува {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"уште неколку секунди\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Додади\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Прекини прикачување\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"приближно преостанато време\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"паузирано\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Прикачување датотеки\"] } } } } }, { \"locale\": \"mn\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"BATKHUYAG Ganbold, 2023\", \"Language-Team\": \"Mongolian (https://app.transifex.com/nextcloud/teams/64236/mn/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"mn\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nBATKHUYAG Ganbold, 2023\\n\" }, \"msgstr\": [\"Last-Translator: BATKHUYAG Ganbold, 2023\\nLanguage-Team: Mongolian (https://app.transifex.com/nextcloud/teams/64236/mn/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: mn\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} секунд үлдсэн\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"{time} үлдсэн\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"хэдхэн секунд үлдсэн\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Нэмэх\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Илгээлтийг цуцлах\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"Үлдсэн хугацааг тооцоолж байна\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"түр зогсоосон\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Файл илгээх\"] } } } } }, { \"locale\": \"mr\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Marathi (https://www.transifex.com/nextcloud/teams/64236/mr/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"mr\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Marathi (https://www.transifex.com/nextcloud/teams/64236/mr/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: mr\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ms_MY\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Malay (Malaysia) (https://www.transifex.com/nextcloud/teams/64236/ms_MY/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ms_MY\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Malay (Malaysia) (https://www.transifex.com/nextcloud/teams/64236/ms_MY/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ms_MY\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"my\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Burmese (https://www.transifex.com/nextcloud/teams/64236/my/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"my\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Burmese (https://www.transifex.com/nextcloud/teams/64236/my/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: my\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"nb_NO\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Syvert Fossdal, 2024\", \"Language-Team\": \"Norwegian Bokmål (Norway) (https://app.transifex.com/nextcloud/teams/64236/nb_NO/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"nb_NO\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ , 2023\\nSyvert Fossdal, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Syvert Fossdal, 2024\\nLanguage-Team: Norwegian Bokmål (Norway) (https://app.transifex.com/nextcloud/teams/64236/nb_NO/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: nb_NO\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} file conflict\", \"{count} filkonflikter\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} file conflict in {dirname}\", \"{count} filkonflikter i {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} sekunder igjen\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} igjen\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"noen få sekunder igjen\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Avbryt opplastninger\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Fortsett\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"Estimerer tid igjen\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Gjeldende versjon\"] }, \"If you select both versions, the copied file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the copied file will have a number added to its name.\", \"msgstr\": [\"Hvis du velger begge versjoner, vil den kopierte filen få et tall lagt til navnet.\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Siste gang redigert ukjent\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Ny\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Ny versjon\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pauset\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Forhåndsvis bilde\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Velg alle\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Velg alle eksisterende filer\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Velg alle nye filer\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Skip this file\", \"Hopp over {count} filer\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Ukjent størrelse\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"Opplasting avbrutt\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Last opp filer\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Fremdrift, opplasting\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Hvilke filer vil du beholde?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Du må velge minst en versjon av hver fil for å fortsette.\"] } } } } }, { \"locale\": \"ne\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Nepali (https://www.transifex.com/nextcloud/teams/64236/ne/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ne\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Nepali (https://www.transifex.com/nextcloud/teams/64236/ne/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ne\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"nl\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Rico , 2023\", \"Language-Team\": \"Dutch (https://app.transifex.com/nextcloud/teams/64236/nl/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"nl\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nRico , 2023\\n\" }, \"msgstr\": [\"Last-Translator: Rico , 2023\\nLanguage-Team: Dutch (https://app.transifex.com/nextcloud/teams/64236/nl/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: nl\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"Nog {seconds} seconden\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"{seconds} over\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"Nog een paar seconden\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Voeg toe\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Uploads annuleren\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"Schatting van de resterende tijd\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"Gepauzeerd\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Upload bestanden\"] } } } } }, { \"locale\": \"nn\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Norwegian Nynorsk (https://www.transifex.com/nextcloud/teams/64236/nn/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"nn\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Norwegian Nynorsk (https://www.transifex.com/nextcloud/teams/64236/nn/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: nn\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"nn_NO\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Norwegian Nynorsk (Norway) (https://www.transifex.com/nextcloud/teams/64236/nn_NO/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"nn_NO\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Norwegian Nynorsk (Norway) (https://www.transifex.com/nextcloud/teams/64236/nn_NO/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: nn_NO\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"oc\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Occitan (post 1500) (https://www.transifex.com/nextcloud/teams/64236/oc/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"oc\", \"Plural-Forms\": \"nplurals=2; plural=(n > 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Occitan (post 1500) (https://www.transifex.com/nextcloud/teams/64236/oc/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: oc\\nPlural-Forms: nplurals=2; plural=(n > 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"pl\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Piotr Strębski , 2024\", \"Language-Team\": \"Polish (https://app.transifex.com/nextcloud/teams/64236/pl/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"pl\", \"Plural-Forms\": \"nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nPiotr Strębski , 2024\\n\" }, \"msgstr\": [\"Last-Translator: Piotr Strębski , 2024\\nLanguage-Team: Polish (https://app.transifex.com/nextcloud/teams/64236/pl/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: pl\\nPlural-Forms: nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"konflikt 1 pliku\", \"{count} konfliktów plików\", \"{count} konfliktów plików\", \"{count} konfliktów plików\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} konfliktowy plik w {dirname}\", \"{count} konfliktowych plików w {dirname}\", \"{count} konfliktowych plików w {dirname}\", \"{count} konfliktowych plików w {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"Pozostało {seconds} sekund\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"Pozostało {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"Pozostało kilka sekund\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Anuluj\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Anuluj całą operację\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Anuluj wysyłanie\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Kontynuuj\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"Szacowanie pozostałego czasu\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Istniejąca wersja\"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Jeśli wybierzesz obie wersje, do nazwy pliku przychodzącego zostanie dodany numer.\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Nieznana data ostatniej modyfikacji\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nowy\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Nowa wersja\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"Wstrzymane\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Podgląd obrazu\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Zaznacz wszystkie boxy\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Zaznacz wszystkie istniejące pliki\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Zaznacz wszystkie nowe pliki\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Pomiń 1 plik\", \"Pomiń {count} plików\", \"Pomiń {count} plików\", \"Pomiń {count} plików\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Nieznany rozmiar\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"Anulowano wysyłanie\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Wyślij pliki\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Postęp wysyłania\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Po wybraniu folderu przychodzącego wszelkie znajdujące się w nim pliki powodujące konflikt również zostaną nadpisane.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Po wybraniu folderu przychodzącego zawartość jest zapisywana w istniejącym folderze i przeprowadzane jest rekursywne rozwiązywanie konfliktów.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Które pliki chcesz zachować?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Aby kontynuować, musisz wybrać co najmniej jedną wersję każdego pliku.\"] } } } } }, { \"locale\": \"ps\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Pashto (https://www.transifex.com/nextcloud/teams/64236/ps/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ps\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Pashto (https://www.transifex.com/nextcloud/teams/64236/ps/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ps\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"pt_BR\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Leonardo Colman Lopes , 2024\", \"Language-Team\": \"Portuguese (Brazil) (https://app.transifex.com/nextcloud/teams/64236/pt_BR/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"pt_BR\", \"Plural-Forms\": \"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nLeonardo Colman Lopes , 2024\\n\" }, \"msgstr\": [\"Last-Translator: Leonardo Colman Lopes , 2024\\nLanguage-Team: Portuguese (Brazil) (https://app.transifex.com/nextcloud/teams/64236/pt_BR/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: pt_BR\\nPlural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} arquivos em conflito\", \"{count} arquivos em conflito\", \"{count} arquivos em conflito\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} conflitos de arquivo em {dirname}\", \"{count} conflitos de arquivo em {dirname}\", \"{count} conflitos de arquivo em {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} segundos restantes\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} restante\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"alguns segundos restantes\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Cancelar\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Cancelar a operação inteira\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Cancelar uploads\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Continuar\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimando tempo restante\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Versão existente\"] }, \"If you select both versions, the copied file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the copied file will have a number added to its name.\", \"msgstr\": [\"Se você selecionar ambas as versões, o arquivo copiado terá um número adicionado ao seu nome.\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Data da última modificação desconhecida\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Novo\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Nova versão\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pausado\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Visualizar imagem\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Marque todas as caixas de seleção\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Selecione todos os arquivos existentes\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Selecione todos os novos arquivos\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Ignorar {count} arquivos\", \"Ignorar {count} arquivos\", \"Ignorar {count} arquivos\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Tamanho desconhecido\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"Envio cancelado\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Enviar arquivos\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Envio em progresso\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Quando uma pasta é selecionada, quaisquer arquivos dentro dela também serão sobrescritos.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Quais arquivos você deseja manter?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Você precisa selecionar pelo menos uma versão de cada arquivo para continuar.\"] } } } } }, { \"locale\": \"pt_PT\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Manuela Silva , 2022\", \"Language-Team\": \"Portuguese (Portugal) (https://www.transifex.com/nextcloud/teams/64236/pt_PT/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"pt_PT\", \"Plural-Forms\": \"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nManuela Silva , 2022\\n\" }, \"msgstr\": [\"Last-Translator: Manuela Silva , 2022\\nLanguage-Team: Portuguese (Portugal) (https://www.transifex.com/nextcloud/teams/64236/pt_PT/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: pt_PT\\nPlural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"faltam {seconds} segundo(s)\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"faltam {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"faltam uns segundos\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Adicionar\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Cancelar envios\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"tempo em falta estimado\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pausado\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Enviar ficheiros\"] } } } } }, { \"locale\": \"ro\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Mădălin Vasiliu , 2022\", \"Language-Team\": \"Romanian (https://www.transifex.com/nextcloud/teams/64236/ro/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ro\", \"Plural-Forms\": \"nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?2:1));\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nMădălin Vasiliu , 2022\\n\" }, \"msgstr\": [\"Last-Translator: Mădălin Vasiliu , 2022\\nLanguage-Team: Romanian (https://www.transifex.com/nextcloud/teams/64236/ro/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ro\\nPlural-Forms: nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?2:1));\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} secunde rămase\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"{time} rămas\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"câteva secunde rămase\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Adaugă\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Anulați încărcările\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimarea timpului rămas\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pus pe pauză\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Încarcă fișiere\"] } } } } }, { \"locale\": \"ru\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Влад, 2024\", \"Language-Team\": \"Russian (https://app.transifex.com/nextcloud/teams/64236/ru/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ru\", \"Plural-Forms\": \"nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nAlex , 2024\\nВлад, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Влад, 2024\\nLanguage-Team: Russian (https://app.transifex.com/nextcloud/teams/64236/ru/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ru\\nPlural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\\n\"] }, '\"{filename}\" contains invalid characters, how do you want to continue?': { \"msgid\": '\"{filename}\" contains invalid characters, how do you want to continue?', \"msgstr\": ['\"{filename}\" содержит недопустимые символы, хотите продолжить?'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"конфликт {count} файла\", \"конфликт {count} файлов\", \"конфликт {count} файлов\", \"конфликт {count} файлов\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"конфликт {count} файла в {dirname}\", \"конфликт {count} файлов в {dirname}\", \"конфликт {count} файлов в {dirname}\", \"конфликт {count} файлов в {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"осталось {seconds} секунд\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"осталось {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"осталось несколько секунд\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Отмена\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Отменить всю операцию целиком\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Отменить загрузки\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Продолжить\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Создать новое\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"оценка оставшегося времени\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Текущая версия\"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Если вы выберете обе версии, к имени входящего файла будет добавлен номер.\"] }, \"Invalid file name\": { \"msgid\": \"Invalid file name\", \"msgstr\": [\"Имя файла недопустимо\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Дата последнего изменения неизвестна\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Новый\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Новая версия\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"приостановлено\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Предварительный просмотр\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Переименовать\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Установить все флажки\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Выбрать все существующие файлы\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Выбрать все новые файлы\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Пропуск\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Пропустить файл\", \"Пропустить {count} файла\", \"Пропустить {count} файлов\", \"Пропустить {count} файлов\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Неизвестный размер\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Загрузка файлов\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Загрузка папок\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Загрузка с устройства\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Загрузка была отменена\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Состояние передачи на сервер\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Когда выбрана входящая папка, все конфликтующие файлы в ней также будут перезаписаны.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Когда выбрана входящая папка, содержимое записывается в существующую папку и выполняется рекурсивное разрешение конфликтов.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Какие файлы вы хотите сохранить?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Для продолжения вам нужно выбрать по крайней мере одну версию каждого файла.\"] } } } } }, { \"locale\": \"ru_RU\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Russian (Russia) (https://www.transifex.com/nextcloud/teams/64236/ru_RU/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ru_RU\", \"Plural-Forms\": \"nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Russian (Russia) (https://www.transifex.com/nextcloud/teams/64236/ru_RU/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ru_RU\\nPlural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"sc\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Sardinian (https://www.transifex.com/nextcloud/teams/64236/sc/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sc\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Sardinian (https://www.transifex.com/nextcloud/teams/64236/sc/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sc\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"si\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Sinhala (https://www.transifex.com/nextcloud/teams/64236/si/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"si\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Sinhala (https://www.transifex.com/nextcloud/teams/64236/si/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: si\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"si_LK\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Sinhala (Sri Lanka) (https://www.transifex.com/nextcloud/teams/64236/si_LK/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"si_LK\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Sinhala (Sri Lanka) (https://www.transifex.com/nextcloud/teams/64236/si_LK/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: si_LK\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"sk_SK\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Slovak (Slovakia) (https://www.transifex.com/nextcloud/teams/64236/sk_SK/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sk_SK\", \"Plural-Forms\": \"nplurals=4; plural=(n % 1 == 0 && n == 1 ? 0 : n % 1 == 0 && n >= 2 && n <= 4 ? 1 : n % 1 != 0 ? 2: 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Slovak (Slovakia) (https://www.transifex.com/nextcloud/teams/64236/sk_SK/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sk_SK\\nPlural-Forms: nplurals=4; plural=(n % 1 == 0 && n == 1 ? 0 : n % 1 == 0 && n >= 2 && n <= 4 ? 1 : n % 1 != 0 ? 2: 3);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"sl\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Matej Urbančič <>, 2022\", \"Language-Team\": \"Slovenian (https://www.transifex.com/nextcloud/teams/64236/sl/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sl\", \"Plural-Forms\": \"nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nMatej Urbančič <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Matej Urbančič <>, 2022\\nLanguage-Team: Slovenian (https://www.transifex.com/nextcloud/teams/64236/sl/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sl\\nPlural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"še {seconds} sekund\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"še {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"še nekaj sekund\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Dodaj\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Prekliči pošiljanje\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"ocenjen čas do konca\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"v premoru\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Pošlji datoteke\"] } } } } }, { \"locale\": \"sl_SI\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Slovenian (Slovenia) (https://www.transifex.com/nextcloud/teams/64236/sl_SI/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sl_SI\", \"Plural-Forms\": \"nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Slovenian (Slovenia) (https://www.transifex.com/nextcloud/teams/64236/sl_SI/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sl_SI\\nPlural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"sq\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Albanian (https://www.transifex.com/nextcloud/teams/64236/sq/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sq\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Albanian (https://www.transifex.com/nextcloud/teams/64236/sq/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sq\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"sr\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Иван Пешић, 2023\", \"Language-Team\": \"Serbian (https://app.transifex.com/nextcloud/teams/64236/sr/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sr\", \"Plural-Forms\": \"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ , 2023\\nИван Пешић, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Иван Пешић, 2023\\nLanguage-Team: Serbian (https://app.transifex.com/nextcloud/teams/64236/sr/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sr\\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} фајл конфликт\", \"{count} фајл конфликта\", \"{count} фајл конфликта\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} фајл конфликт у {dirname}\", \"{count} фајл конфликта у {dirname}\", \"{count} фајл конфликта у {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"преостало је {seconds} секунди\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} преостало\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"преостало је неколико секунди\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Обустави отпремања\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Настави\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"процена преосталог времена\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Постојећа верзија\"] }, \"If you select both versions, the copied file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the copied file will have a number added to its name.\", \"msgstr\": [\"Ако изаберете обе верзије, на име копираног фајла ће се додати број.\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Није познат датум последње измене\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Ново\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Нова верзија\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"паузирано\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Слика прегледа\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Штиклирај сва поља за штиклирање\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Изабери све постојеће фајлове\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Изабери све нове фајлове\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Прескочи овај фајл\", \"Прескочи {count} фајла\", \"Прескочи {count} фајлова\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Непозната величина\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"Отпремање је отказано\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Отпреми фајлове\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Напредак отпремања\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Које фајлове желите да задржите?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Морате да изаберете барем једну верзију сваког фајла да наставите.\"] } } } } }, { \"locale\": \"sr@latin\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Serbian (Latin) (https://www.transifex.com/nextcloud/teams/64236/sr@latin/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sr@latin\", \"Plural-Forms\": \"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Serbian (Latin) (https://www.transifex.com/nextcloud/teams/64236/sr@latin/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sr@latin\\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"sv\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Magnus Höglund, 2024\", \"Language-Team\": \"Swedish (https://app.transifex.com/nextcloud/teams/64236/sv/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sv\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nMagnus Höglund, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Magnus Höglund, 2024\\nLanguage-Team: Swedish (https://app.transifex.com/nextcloud/teams/64236/sv/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sv\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{filename}\" contains invalid characters, how do you want to continue?': { \"msgid\": '\"{filename}\" contains invalid characters, how do you want to continue?', \"msgstr\": ['\"{filename}\" innehåller ogiltiga tecken, hur vill du fortsätta?'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} filkonflikt\", \"{count} filkonflikter\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} filkonflikt i {dirname}\", \"{count} filkonflikter i {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} sekunder kvarstår\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} kvarstår\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"några sekunder kvar\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Avbryt\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Avbryt hela operationen\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Avbryt uppladdningar\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Fortsätt\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Skapa ny\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"uppskattar kvarstående tid\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Nuvarande version\"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Om du väljer båda versionerna kommer den inkommande filen att läggas till ett nummer i namnet.\"] }, \"Invalid file name\": { \"msgid\": \"Invalid file name\", \"msgstr\": [\"Ogiltigt filnamn\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Senaste ändringsdatum okänt\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Ny\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Ny version\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pausad\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Förhandsgranska bild\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Byt namn\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Markera alla kryssrutor\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Välj alla befintliga filer\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Välj alla nya filer\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Hoppa över\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Hoppa över denna fil\", \"Hoppa över {count} filer\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Okänd storlek\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Ladda upp filer\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Ladda upp mappar\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Ladda upp från enhet\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Uppladdningen har avbrutits\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Uppladdningsförlopp\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"När en inkommande mapp väljs skrivs även alla konfliktande filer i den över.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"När en inkommande mapp väljs skrivs innehållet in i den befintliga mappen och en rekursiv konfliktlösning utförs.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Vilka filer vill du behålla?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Du måste välja minst en version av varje fil för att fortsätta.\"] } } } } }, { \"locale\": \"sw\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Swahili (https://www.transifex.com/nextcloud/teams/64236/sw/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sw\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Swahili (https://www.transifex.com/nextcloud/teams/64236/sw/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sw\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ta\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Tamil (https://www.transifex.com/nextcloud/teams/64236/ta/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ta\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Tamil (https://www.transifex.com/nextcloud/teams/64236/ta/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ta\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ta_LK\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Tamil (Sri-Lanka) (https://www.transifex.com/nextcloud/teams/64236/ta_LK/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ta_LK\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Tamil (Sri-Lanka) (https://www.transifex.com/nextcloud/teams/64236/ta_LK/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ta_LK\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"th\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Thai (https://www.transifex.com/nextcloud/teams/64236/th/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"th\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Thai (https://www.transifex.com/nextcloud/teams/64236/th/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: th\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"th_TH\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Phongpanot Phairat , 2022\", \"Language-Team\": \"Thai (Thailand) (https://www.transifex.com/nextcloud/teams/64236/th_TH/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"th_TH\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nPhongpanot Phairat , 2022\\n\" }, \"msgstr\": [\"Last-Translator: Phongpanot Phairat , 2022\\nLanguage-Team: Thai (Thailand) (https://www.transifex.com/nextcloud/teams/64236/th_TH/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: th_TH\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"เหลืออีก {seconds} วินาที\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"เหลืออีก {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"เหลืออีกไม่กี่วินาที\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"เพิ่ม\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"ยกเลิกการอัปโหลด\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"กำลังคำนวณเวลาที่เหลือ\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"หยุดชั่วคราว\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"อัปโหลดไฟล์\"] } } } } }, { \"locale\": \"tk\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Turkmen (https://www.transifex.com/nextcloud/teams/64236/tk/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"tk\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Turkmen (https://www.transifex.com/nextcloud/teams/64236/tk/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: tk\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"tr\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Kaya Zeren , 2024\", \"Language-Team\": \"Turkish (https://app.transifex.com/nextcloud/teams/64236/tr/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"tr\", \"Plural-Forms\": \"nplurals=2; plural=(n > 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nKaya Zeren , 2024\\n\" }, \"msgstr\": [\"Last-Translator: Kaya Zeren , 2024\\nLanguage-Team: Turkish (https://app.transifex.com/nextcloud/teams/64236/tr/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: tr\\nPlural-Forms: nplurals=2; plural=(n > 1);\\n\"] }, '\"{filename}\" contains invalid characters, how do you want to continue?': { \"msgid\": '\"{filename}\" contains invalid characters, how do you want to continue?', \"msgstr\": ['\"{filename}\" içinde geçersiz karakterler var. Nasıl ilerlemek istersiniz?'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} dosya çakışması var\", \"{count} dosya çakışması var\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{dirname} klasöründe {count} dosya çakışması var\", \"{dirname} klasöründe {count} dosya çakışması var\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} saniye kaldı\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} kaldı\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"bir kaç saniye kaldı\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"İptal\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Tüm işlemi iptal et\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Yüklemeleri iptal et\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"İlerle\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Yeni ekle\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"öngörülen kalan süre\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Var olan sürüm\"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"İki sürümü de seçerseniz, gelen dosyanın adına bir sayı eklenir.\"] }, \"Invalid file name\": { \"msgid\": \"Invalid file name\", \"msgstr\": [\"Dosya adı geçersiz\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Son değiştirilme tarihi bilinmiyor\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Yeni\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Yeni sürüm\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"duraklatıldı\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Görsel ön izlemesi\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Yeniden adlandır\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Tüm kutuları işaretle\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Tüm var olan dosyaları seç\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Tüm yeni dosyaları seç\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Atla\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Bu dosyayı atla\", \"{count} dosyayı atla\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Boyut bilinmiyor\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Dosyaları yükle\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Klasörleri yükle\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Aygıttan yükle\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Yükleme iptal edildi\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Yükleme ilerlemesi\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Bir gelen klasör seçildiğinde, içindeki çakışan dosyaların da üzerine yazılır.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Bir gelen klasörü seçildiğinde içerik var olan klasöre yazılır ve yinelemeli bir çakışma çözümü uygulanır.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Hangi dosyaları tutmak istiyorsunuz?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"İlerlemek için her dosyanın en az bir sürümünü seçmelisiniz.\"] } } } } }, { \"locale\": \"ug\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Uyghur (https://www.transifex.com/nextcloud/teams/64236/ug/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ug\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Uyghur (https://www.transifex.com/nextcloud/teams/64236/ug/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ug\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"uk\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"O St , 2024\", \"Language-Team\": \"Ukrainian (https://app.transifex.com/nextcloud/teams/64236/uk/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"uk\", \"Plural-Forms\": \"nplurals=4; plural=(n % 1 == 0 && n % 10 == 1 && n % 100 != 11 ? 0 : n % 1 == 0 && n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 12 || n % 100 > 14) ? 1 : n % 1 == 0 && (n % 10 ==0 || (n % 10 >=5 && n % 10 <=9) || (n % 100 >=11 && n % 100 <=14 )) ? 2: 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nO St , 2024\\n\" }, \"msgstr\": [\"Last-Translator: O St , 2024\\nLanguage-Team: Ukrainian (https://app.transifex.com/nextcloud/teams/64236/uk/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: uk\\nPlural-Forms: nplurals=4; plural=(n % 1 == 0 && n % 10 == 1 && n % 100 != 11 ? 0 : n % 1 == 0 && n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 12 || n % 100 > 14) ? 1 : n % 1 == 0 && (n % 10 ==0 || (n % 10 >=5 && n % 10 <=9) || (n % 100 >=11 && n % 100 <=14 )) ? 2: 3);\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} конфліктний файл\", \"{count} конфліктних файли\", \"{count} конфліктних файлів\", \"{count} конфліктних файлів\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} конфліктний файл у каталозі {dirname}\", \"{count} конфліктних файли у каталозі {dirname}\", \"{count} конфліктних файлів у каталозі {dirname}\", \"{count} конфліктних файлів у каталозі {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"Залишилося {seconds} секунд\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"Залишилося {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"залишилося кілька секунд\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Скасувати\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Скасувати операцію повністю\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Скасувати завантаження\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Продовжити\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"оцінка часу, що залишився\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Присутня версія\"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Якщо буде вибрано обидві версії, до імени вхідного файлу було додано цифру.\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Дата останньої зміни невідома\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Нове\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Нова версія\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"призупинено\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Попередній перегляд\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Вибрати все\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Вибрати усі присутні файли\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Вибрати усі нові файли\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Пропустити файл\", \"Пропустити {count} файли\", \"Пропустити {count} файлів\", \"Пропустити {count} файлів\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Невідомий розмір\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"Завантаження скасовано\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Завантажити файли\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Поступ завантаження\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Усі конфліктні файли у вибраному каталозі призначення буде перезаписано поверх.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Якщо буде вибрано вхідний каталог, вміст буде записано до наявного каталогу та вирішено конфлікти у відповідних файлах каталогу та підкаталогів.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Які файли залишити?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Для продовження потрібно вибрати принаймні одну версію для кожного файлу.\"] } } } } }, { \"locale\": \"ur_PK\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Urdu (Pakistan) (https://www.transifex.com/nextcloud/teams/64236/ur_PK/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ur_PK\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Urdu (Pakistan) (https://www.transifex.com/nextcloud/teams/64236/ur_PK/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ur_PK\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"uz\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Uzbek (https://www.transifex.com/nextcloud/teams/64236/uz/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"uz\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Uzbek (https://www.transifex.com/nextcloud/teams/64236/uz/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: uz\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"vi\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Tung DangQuang, 2023\", \"Language-Team\": \"Vietnamese (https://app.transifex.com/nextcloud/teams/64236/vi/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"vi\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ , 2023\\nTung DangQuang, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Tung DangQuang, 2023\\nLanguage-Team: Vietnamese (https://app.transifex.com/nextcloud/teams/64236/vi/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: vi\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} Tập tin xung đột\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} tập tin lỗi trong {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"Còn {second} giây\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"Còn lại {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"Còn lại một vài giây\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Huỷ tải lên\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Tiếp Tục\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"Thời gian còn lại dự kiến\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Phiên Bản Hiện Tại\"] }, \"If you select both versions, the copied file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the copied file will have a number added to its name.\", \"msgstr\": [\"Nếu bạn chọn cả hai phiên bản, tệp được sao chép sẽ có thêm một số vào tên của nó.\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Ngày sửa dổi lần cuối không xác định\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Tạo Mới\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Phiên Bản Mới\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"đã tạm dừng\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Xem Trước Ảnh\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Chọn tất cả hộp checkbox\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Chọn tất cả các tập tin có sẵn\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Chọn tất cả các tập tin mới\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Bỏ Qua {count} tập tin\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Không rõ dung lượng\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"Dừng Tải Lên\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Tập tin tải lên\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Đang Tải Lên\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Bạn muốn giữ tập tin nào?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Bạn cần chọn ít nhất một phiên bản tập tin mới có thể tiếp tục\"] } } } } }, { \"locale\": \"zh_CN\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Hongbo Chen, 2023\", \"Language-Team\": \"Chinese (China) (https://app.transifex.com/nextcloud/teams/64236/zh_CN/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"zh_CN\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ , 2023\\nHongbo Chen, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Hongbo Chen, 2023\\nLanguage-Team: Chinese (China) (https://app.transifex.com/nextcloud/teams/64236/zh_CN/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: zh_CN\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count}文件冲突\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"在{dirname}目录下有{count}个文件冲突\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"剩余 {seconds} 秒\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"剩余 {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"还剩几秒\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"添加\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"取消上传\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"继续\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"估计剩余时间\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"版本已存在\"] }, \"If you select both versions, the copied file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the copied file will have a number added to its name.\", \"msgstr\": [\"如果选择所有的版本,新增版本的文件名为原文件名加数字\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"文件最后修改日期未知\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"新版本\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"已暂停\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"图片预览\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"选择所有的选择框\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"选择所有存在的文件\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"选择所有的新文件\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"跳过{count}个文件\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"文件大小未知\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"取消上传\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"上传文件\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"你要保留哪些文件?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"每个文件至少选择一个版本\"] } } } } }, { \"locale\": \"zh_HK\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Café Tango, 2024\", \"Language-Team\": \"Chinese (Hong Kong) (https://app.transifex.com/nextcloud/teams/64236/zh_HK/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"zh_HK\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nCafé Tango, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Café Tango, 2024\\nLanguage-Team: Chinese (Hong Kong) (https://app.transifex.com/nextcloud/teams/64236/zh_HK/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: zh_HK\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} 個檔案衝突\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{dirname} 中有 {count} 個檔案衝突\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"剩餘 {seconds} 秒\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"剩餘 {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"還剩幾秒\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"取消\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"取消整個操作\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"取消上傳\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"繼續\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"估計剩餘時間\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"既有版本\"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"若您選取兩個版本,傳入檔案的名稱將會新增編號。\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"最後修改日期不詳\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"新增\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"新版本 \"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"已暫停\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"預覽圖片\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"選取所有核取方塊\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"選取所有既有檔案\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"選取所有新檔案\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"略過 {count} 個檔案\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"大小不詳\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"已取消上傳\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"上傳檔案\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"上傳進度\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"選取傳入資料夾後,其中任何的衝突檔案都會被覆寫。\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"選擇傳入資料夾後,內容將寫入現有資料夾並執行遞歸衝突解決。\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"您想保留哪些檔案?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"您必須為每個檔案都至少選取一個版本以繼續。\"] } } } } }, { \"locale\": \"zh_TW\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"黃柏諺 , 2024\", \"Language-Team\": \"Chinese (Taiwan) (https://app.transifex.com/nextcloud/teams/64236/zh_TW/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"zh_TW\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\n黃柏諺 , 2024\\n\" }, \"msgstr\": [\"Last-Translator: 黃柏諺 , 2024\\nLanguage-Team: Chinese (Taiwan) (https://app.transifex.com/nextcloud/teams/64236/zh_TW/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: zh_TW\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} 個檔案衝突\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{dirname} 中有 {count} 個檔案衝突\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"剩餘 {seconds} 秒\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"剩餘 {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"還剩幾秒\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"取消\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"取消整個操作\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"取消上傳\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"繼續\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"估計剩餘時間\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"既有版本\"] }, \"If you select both versions, the copied file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the copied file will have a number added to its name.\", \"msgstr\": [\"若您選取兩個版本,複製的檔案的名稱將會新增編號。\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"最後修改日期未知\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"新增\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"新版本\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"已暫停\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"預覽圖片\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"選取所有核取方塊\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"選取所有既有檔案\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"選取所有新檔案\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"略過 {count} 檔案\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"未知大小\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"已取消上傳\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"上傳檔案\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"上傳進度\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"選取傳入資料夾後,其中任何的衝突檔案都會被覆寫。\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"您想保留哪些檔案?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"您必須為每個檔案都至少選取一個版本以繼續。\"] } } } } }].map((data) => gtBuilder.addTranslation(data.locale, data.json));\nconst gt = gtBuilder.build();\nconst n = gt.ngettext.bind(gt);\nconst t = gt.gettext.bind(gt);\n/**\n * @copyright 2019 Christoph Wurst \n *\n * @author Christoph Wurst \n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see .\n *\n */\nconst logger = getLoggerBuilder().setApp(\"@nextcloud/upload\").detectUser().build();\nvar Status = /* @__PURE__ */ ((Status2) => {\n Status2[Status2[\"IDLE\"] = 0] = \"IDLE\";\n Status2[Status2[\"UPLOADING\"] = 1] = \"UPLOADING\";\n Status2[Status2[\"PAUSED\"] = 2] = \"PAUSED\";\n return Status2;\n})(Status || {});\nclass Uploader {\n // Initialized via setter in the constructor\n _destinationFolder;\n _isPublic;\n // Global upload queue\n _uploadQueue = [];\n _jobQueue = new PQueue({ concurrency: 3 });\n _queueSize = 0;\n _queueProgress = 0;\n _queueStatus = 0;\n _notifiers = [];\n /**\n * Initialize uploader\n *\n * @param {boolean} isPublic are we in public mode ?\n * @param {Folder} destinationFolder the context folder to operate, relative to the root folder\n */\n constructor(isPublic = false, destinationFolder) {\n this._isPublic = isPublic;\n if (!destinationFolder) {\n const source = join(davRemoteURL, davRootPath);\n let owner;\n if (isPublic) {\n owner = \"anonymous\";\n } else {\n const user = getCurrentUser()?.uid;\n if (!user) {\n throw new Error(\"User is not logged in\");\n }\n owner = user;\n }\n destinationFolder = new Folder({\n id: 0,\n owner,\n permissions: Permission.ALL,\n root: davRootPath,\n source\n });\n }\n this.destination = destinationFolder;\n this._jobQueue.addListener(\"idle\", () => this.reset());\n logger.debug(\"Upload workspace initialized\", {\n destination: this.destination,\n root: this.root,\n isPublic,\n maxChunksSize: getMaxChunksSize()\n });\n }\n /**\n * Get the upload destination path relative to the root folder\n */\n get destination() {\n return this._destinationFolder;\n }\n /**\n * Set the upload destination path relative to the root folder\n */\n set destination(folder) {\n if (!folder) {\n throw new Error(\"Invalid destination folder\");\n }\n logger.debug(\"Destination set\", { folder });\n this._destinationFolder = folder;\n }\n /**\n * Get the root folder\n */\n get root() {\n return this._destinationFolder.source;\n }\n /**\n * Get the upload queue\n */\n get queue() {\n return this._uploadQueue;\n }\n reset() {\n this._uploadQueue.splice(0, this._uploadQueue.length);\n this._jobQueue.clear();\n this._queueSize = 0;\n this._queueProgress = 0;\n this._queueStatus = 0;\n }\n /**\n * Pause any ongoing upload(s)\n */\n pause() {\n this._jobQueue.pause();\n this._queueStatus = 2;\n }\n /**\n * Resume any pending upload(s)\n */\n start() {\n this._jobQueue.start();\n this._queueStatus = 1;\n this.updateStats();\n }\n /**\n * Get the upload queue stats\n */\n get info() {\n return {\n size: this._queueSize,\n progress: this._queueProgress,\n status: this._queueStatus\n };\n }\n updateStats() {\n const size = this._uploadQueue.map((upload2) => upload2.size).reduce((partialSum, a) => partialSum + a, 0);\n const uploaded = this._uploadQueue.map((upload2) => upload2.uploaded).reduce((partialSum, a) => partialSum + a, 0);\n this._queueSize = size;\n this._queueProgress = uploaded;\n if (this._queueStatus === 2) {\n return;\n }\n this._queueStatus = this._jobQueue.size > 0 ? 1 : 0;\n }\n addNotifier(notifier) {\n this._notifiers.push(notifier);\n }\n /**\n * Notify listeners of the upload completion\n * @param upload The upload that finished\n */\n _notifyAll(upload2) {\n for (const notifier of this._notifiers) {\n try {\n notifier(upload2);\n } catch (error) {\n logger.warn(\"Error in upload notifier\", { error, source: upload2.source });\n }\n }\n }\n /**\n * Uploads multiple files or folders while preserving the relative path (if available)\n * @param {string} destination The destination path relative to the root folder. e.g. /foo/bar (a file \"a.txt\" will be uploaded then to \"/foo/bar/a.txt\")\n * @param {Array} files The files and/or folders to upload\n * @param {Function} callback Callback that receives the nodes in the current folder and the current path to allow resolving conflicts, all nodes that are returned will be uploaded (if a folder does not exist it will be created)\n * @return Cancelable promise that resolves to an array of uploads\n *\n * @example\n * ```ts\n * // For example this is from handling the onchange event of an input[type=file]\n * async handleFiles(files: File[]) {\n * this.uploads = await this.uploader.batchUpload('uploads', files, this.handleConflicts)\n * }\n *\n * async handleConflicts(nodes: File[], currentPath: string) {\n * const conflicts = getConflicts(nodes, this.fetchContent(currentPath))\n * if (conficts.length === 0) {\n * // No conflicts so upload all\n * return nodes\n * } else {\n * // Open the conflict picker to resolve conflicts\n * try {\n * const { selected, renamed } = await openConflictPicker(currentPath, conflicts, this.fetchContent(currentPath), { recursive: true })\n * return [...selected, ...renamed]\n * } catch (e) {\n * return false\n * }\n * }\n * }\n * ```\n */\n batchUpload(destination, files, callback) {\n const rootFolder = new Directory(\"\", files);\n if (!callback) {\n callback = async (files2) => files2;\n }\n try {\n this._jobQueue.concurrency += 1;\n return new PCancelable(async (resolve, reject, onCancel) => {\n try {\n const value = await this._jobQueue.add(() => {\n const promise = this.uploadDirectory(destination, rootFolder, callback, davGetClient(this.root));\n onCancel(() => promise.cancel());\n return promise;\n });\n if (value) {\n resolve(value);\n }\n } catch (error) {\n logger.error(\"Error in batch upload\", { error });\n }\n reject(t(\"Upload has been cancelled\"));\n });\n } finally {\n this._jobQueue.concurrency -= 1;\n }\n }\n // Helper for uploading directories (recursivly)\n uploadDirectory(destination, directory, callback, client) {\n const folderPath = normalize(`${destination}/${directory.name}`).replace(/\\/$/, \"\");\n const rootPath = `${this.root.replace(/\\/$/, \"\")}/${folderPath.replace(/^\\//, \"\")}`;\n return new PCancelable(async (resolve, reject, onCancel) => {\n const abort = new AbortController();\n onCancel(() => abort.abort());\n const selectedForUpload = await callback(directory.children, folderPath);\n if (selectedForUpload === false) {\n reject(t(\"Upload has been cancelled\"));\n return;\n }\n const directories = [];\n const uploads = [];\n const currentUpload = new Upload(rootPath, false, 0, directory);\n currentUpload.signal.addEventListener(\"abort\", () => reject(t(\"Upload has been cancelled\")));\n currentUpload.status = Status$1.UPLOADING;\n try {\n if (directory.name) {\n try {\n await client.createDirectory(folderPath, { signal: abort.signal });\n uploads.push(new PCancelable((resolve2) => resolve2(currentUpload)));\n this._uploadQueue.push(currentUpload);\n } catch (error) {\n if (error && typeof error === \"object\" && \"status\" in error && error.status === 405) {\n logger.debug(\"Directory already exists, writing into it\", { directory: directory.name });\n } else {\n throw error;\n }\n }\n }\n for (const node of selectedForUpload) {\n if (node instanceof Directory) {\n directories.push(this.uploadDirectory(folderPath, node, callback, client));\n } else {\n uploads.push(this.upload(`${folderPath}/${node.name}`, node));\n }\n }\n abort.signal.addEventListener(\"abort\", () => {\n uploads.forEach((upload2) => upload2.cancel());\n directories.forEach((upload2) => upload2.cancel());\n });\n const resolvedUploads = await Promise.all(uploads);\n const resolvedDirectoryUploads = await Promise.all(directories);\n currentUpload.status = Status$1.FINISHED;\n resolve([resolvedUploads, ...resolvedDirectoryUploads].flat());\n } catch (e) {\n abort.abort(e);\n currentUpload.status = Status$1.FAILED;\n reject(e);\n } finally {\n if (directory.name) {\n this._notifyAll(currentUpload);\n this.updateStats();\n }\n }\n });\n }\n /**\n * Upload a file to the given path\n * @param {string} destination the destination path relative to the root folder. e.g. /foo/bar.txt\n * @param {File|FileSystemFileEntry} fileHandle the file to upload\n * @param {string} root the root folder to upload to\n * @param retries number of retries\n */\n upload(destination, fileHandle, root, retries = 5) {\n root = root || this.root;\n const destinationPath = `${root.replace(/\\/$/, \"\")}/${destination.replace(/^\\//, \"\")}`;\n const { origin } = new URL(destinationPath);\n const encodedDestinationFile = origin + encodePath(destinationPath.slice(origin.length));\n logger.debug(`Uploading ${fileHandle.name} to ${encodedDestinationFile}`);\n const promise = new PCancelable(async (resolve, reject, onCancel) => {\n if (isFileSystemFileEntry(fileHandle)) {\n fileHandle = await new Promise((resolve2) => fileHandle.file(resolve2, reject));\n }\n const file = fileHandle;\n const maxChunkSize = getMaxChunksSize(\"size\" in file ? file.size : void 0);\n const disabledChunkUpload = this._isPublic || maxChunkSize === 0 || \"size\" in file && file.size < maxChunkSize;\n const upload2 = new Upload(destinationPath, !disabledChunkUpload, file.size, file);\n this._uploadQueue.push(upload2);\n this.updateStats();\n onCancel(upload2.cancel);\n if (!disabledChunkUpload) {\n logger.debug(\"Initializing chunked upload\", { file, upload: upload2 });\n const tempUrl = await initChunkWorkspace(encodedDestinationFile, retries);\n const chunksQueue = [];\n for (let chunk = 0; chunk < upload2.chunks; chunk++) {\n const bufferStart = chunk * maxChunkSize;\n const bufferEnd = Math.min(bufferStart + maxChunkSize, upload2.size);\n const blob = () => getChunk(file, bufferStart, maxChunkSize);\n const request = () => {\n return uploadData(\n `${tempUrl}/${chunk + 1}`,\n blob,\n upload2.signal,\n () => this.updateStats(),\n encodedDestinationFile,\n {\n \"X-OC-Mtime\": file.lastModified / 1e3,\n \"OC-Total-Length\": file.size,\n \"Content-Type\": \"application/octet-stream\"\n },\n retries\n ).then(() => {\n upload2.uploaded = upload2.uploaded + maxChunkSize;\n }).catch((error) => {\n if (error?.response?.status === 507) {\n logger.error(\"Upload failed, not enough space on the server or quota exceeded. Cancelling the remaining chunks\", { error, upload: upload2 });\n upload2.cancel();\n upload2.status = Status$1.FAILED;\n throw error;\n }\n if (!isCancel(error)) {\n logger.error(`Chunk ${chunk + 1} ${bufferStart} - ${bufferEnd} uploading failed`, { error, upload: upload2 });\n upload2.cancel();\n upload2.status = Status$1.FAILED;\n }\n throw error;\n });\n };\n chunksQueue.push(this._jobQueue.add(request));\n }\n try {\n await Promise.all(chunksQueue);\n this.updateStats();\n upload2.response = await axios.request({\n method: \"MOVE\",\n url: `${tempUrl}/.file`,\n headers: {\n \"X-OC-Mtime\": file.lastModified / 1e3,\n \"OC-Total-Length\": file.size,\n Destination: encodedDestinationFile\n }\n });\n this.updateStats();\n upload2.status = Status$1.FINISHED;\n logger.debug(`Successfully uploaded ${file.name}`, { file, upload: upload2 });\n resolve(upload2);\n } catch (error) {\n if (!isCancel(error)) {\n upload2.status = Status$1.FAILED;\n reject(\"Failed assembling the chunks together\");\n } else {\n upload2.status = Status$1.FAILED;\n reject(t(\"Upload has been cancelled\"));\n }\n axios.request({\n method: \"DELETE\",\n url: `${tempUrl}`\n });\n }\n this._notifyAll(upload2);\n } else {\n logger.debug(\"Initializing regular upload\", { file, upload: upload2 });\n const blob = await getChunk(file, 0, upload2.size);\n const request = async () => {\n try {\n upload2.response = await uploadData(\n encodedDestinationFile,\n blob,\n upload2.signal,\n (event) => {\n upload2.uploaded = upload2.uploaded + event.bytes;\n this.updateStats();\n },\n void 0,\n {\n \"X-OC-Mtime\": file.lastModified / 1e3,\n \"Content-Type\": file.type\n }\n );\n upload2.uploaded = upload2.size;\n this.updateStats();\n logger.debug(`Successfully uploaded ${file.name}`, { file, upload: upload2 });\n resolve(upload2);\n } catch (error) {\n if (isCancel(error)) {\n upload2.status = Status$1.FAILED;\n reject(t(\"Upload has been cancelled\"));\n return;\n }\n if (error?.response) {\n upload2.response = error.response;\n }\n upload2.status = Status$1.FAILED;\n logger.error(`Failed uploading ${file.name}`, { error, file, upload: upload2 });\n reject(\"Failed uploading the file\");\n }\n this._notifyAll(upload2);\n };\n this._jobQueue.add(request);\n this.updateStats();\n }\n return upload2;\n });\n return promise;\n }\n}\nfunction normalizeComponent(scriptExports, render6, staticRenderFns, functionalTemplate, injectStyles, scopeId, moduleIdentifier, shadowMode) {\n var options = typeof scriptExports === \"function\" ? scriptExports.options : scriptExports;\n if (render6) {\n options.render = render6;\n options.staticRenderFns = staticRenderFns;\n options._compiled = true;\n }\n if (functionalTemplate) {\n options.functional = true;\n }\n if (scopeId) {\n options._scopeId = \"data-v-\" + scopeId;\n }\n var hook;\n if (moduleIdentifier) {\n hook = function(context) {\n context = context || // cached call\n this.$vnode && this.$vnode.ssrContext || // stateful\n this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext;\n if (!context && typeof __VUE_SSR_CONTEXT__ !== \"undefined\") {\n context = __VUE_SSR_CONTEXT__;\n }\n if (injectStyles) {\n injectStyles.call(this, context);\n }\n if (context && context._registeredComponents) {\n context._registeredComponents.add(moduleIdentifier);\n }\n };\n options._ssrRegister = hook;\n } else if (injectStyles) {\n hook = shadowMode ? function() {\n injectStyles.call(\n this,\n (options.functional ? this.parent : this).$root.$options.shadowRoot\n );\n } : injectStyles;\n }\n if (hook) {\n if (options.functional) {\n options._injectStyles = hook;\n var originalRender = options.render;\n options.render = function renderWithStyleInjection(h, context) {\n hook.call(context);\n return originalRender(h, context);\n };\n } else {\n var existing = options.beforeCreate;\n options.beforeCreate = existing ? [].concat(existing, hook) : [hook];\n }\n }\n return {\n exports: scriptExports,\n options\n };\n}\nconst _sfc_main$4 = {\n name: \"CancelIcon\",\n emits: [\"click\"],\n props: {\n title: {\n type: String\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n};\nvar _sfc_render$4 = function render() {\n var _vm = this, _c = _vm._self._c;\n return _c(\"span\", _vm._b({ staticClass: \"material-design-icon cancel-icon\", attrs: { \"aria-hidden\": _vm.title ? null : true, \"aria-label\": _vm.title, \"role\": \"img\" }, on: { \"click\": function($event) {\n return _vm.$emit(\"click\", $event);\n } } }, \"span\", _vm.$attrs, false), [_c(\"svg\", { staticClass: \"material-design-icon__svg\", attrs: { \"fill\": _vm.fillColor, \"width\": _vm.size, \"height\": _vm.size, \"viewBox\": \"0 0 24 24\" } }, [_c(\"path\", { attrs: { \"d\": \"M12 2C17.5 2 22 6.5 22 12S17.5 22 12 22 2 17.5 2 12 6.5 2 12 2M12 4C10.1 4 8.4 4.6 7.1 5.7L18.3 16.9C19.3 15.5 20 13.8 20 12C20 7.6 16.4 4 12 4M16.9 18.3L5.7 7.1C4.6 8.4 4 10.1 4 12C4 16.4 7.6 20 12 20C13.9 20 15.6 19.4 16.9 18.3Z\" } }, [_vm.title ? _c(\"title\", [_vm._v(_vm._s(_vm.title))]) : _vm._e()])])]);\n};\nvar _sfc_staticRenderFns$4 = [];\nvar __component__$4 = /* @__PURE__ */ normalizeComponent(\n _sfc_main$4,\n _sfc_render$4,\n _sfc_staticRenderFns$4,\n false,\n null,\n null,\n null,\n null\n);\nconst IconCancel = __component__$4.exports;\nconst _sfc_main$3 = {\n name: \"FolderUploadIcon\",\n emits: [\"click\"],\n props: {\n title: {\n type: String\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n};\nvar _sfc_render$3 = function render2() {\n var _vm = this, _c = _vm._self._c;\n return _c(\"span\", _vm._b({ staticClass: \"material-design-icon folder-upload-icon\", attrs: { \"aria-hidden\": _vm.title ? null : true, \"aria-label\": _vm.title, \"role\": \"img\" }, on: { \"click\": function($event) {\n return _vm.$emit(\"click\", $event);\n } } }, \"span\", _vm.$attrs, false), [_c(\"svg\", { staticClass: \"material-design-icon__svg\", attrs: { \"fill\": _vm.fillColor, \"width\": _vm.size, \"height\": _vm.size, \"viewBox\": \"0 0 24 24\" } }, [_c(\"path\", { attrs: { \"d\": \"M20,6A2,2 0 0,1 22,8V18A2,2 0 0,1 20,20H4A2,2 0 0,1 2,18V6A2,2 0 0,1 4,4H10L12,6H20M10.75,13H14V17H16V13H19.25L15,8.75\" } }, [_vm.title ? _c(\"title\", [_vm._v(_vm._s(_vm.title))]) : _vm._e()])])]);\n};\nvar _sfc_staticRenderFns$3 = [];\nvar __component__$3 = /* @__PURE__ */ normalizeComponent(\n _sfc_main$3,\n _sfc_render$3,\n _sfc_staticRenderFns$3,\n false,\n null,\n null,\n null,\n null\n);\nconst IconFolderUpload = __component__$3.exports;\nconst _sfc_main$2 = {\n name: \"PlusIcon\",\n emits: [\"click\"],\n props: {\n title: {\n type: String\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n};\nvar _sfc_render$2 = function render3() {\n var _vm = this, _c = _vm._self._c;\n return _c(\"span\", _vm._b({ staticClass: \"material-design-icon plus-icon\", attrs: { \"aria-hidden\": _vm.title ? null : true, \"aria-label\": _vm.title, \"role\": \"img\" }, on: { \"click\": function($event) {\n return _vm.$emit(\"click\", $event);\n } } }, \"span\", _vm.$attrs, false), [_c(\"svg\", { staticClass: \"material-design-icon__svg\", attrs: { \"fill\": _vm.fillColor, \"width\": _vm.size, \"height\": _vm.size, \"viewBox\": \"0 0 24 24\" } }, [_c(\"path\", { attrs: { \"d\": \"M19,13H13V19H11V13H5V11H11V5H13V11H19V13Z\" } }, [_vm.title ? _c(\"title\", [_vm._v(_vm._s(_vm.title))]) : _vm._e()])])]);\n};\nvar _sfc_staticRenderFns$2 = [];\nvar __component__$2 = /* @__PURE__ */ normalizeComponent(\n _sfc_main$2,\n _sfc_render$2,\n _sfc_staticRenderFns$2,\n false,\n null,\n null,\n null,\n null\n);\nconst IconPlus = __component__$2.exports;\nconst _sfc_main$1 = {\n name: \"UploadIcon\",\n emits: [\"click\"],\n props: {\n title: {\n type: String\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n};\nvar _sfc_render$1 = function render4() {\n var _vm = this, _c = _vm._self._c;\n return _c(\"span\", _vm._b({ staticClass: \"material-design-icon upload-icon\", attrs: { \"aria-hidden\": _vm.title ? null : true, \"aria-label\": _vm.title, \"role\": \"img\" }, on: { \"click\": function($event) {\n return _vm.$emit(\"click\", $event);\n } } }, \"span\", _vm.$attrs, false), [_c(\"svg\", { staticClass: \"material-design-icon__svg\", attrs: { \"fill\": _vm.fillColor, \"width\": _vm.size, \"height\": _vm.size, \"viewBox\": \"0 0 24 24\" } }, [_c(\"path\", { attrs: { \"d\": \"M9,16V10H5L12,3L19,10H15V16H9M5,20V18H19V20H5Z\" } }, [_vm.title ? _c(\"title\", [_vm._v(_vm._s(_vm.title))]) : _vm._e()])])]);\n};\nvar _sfc_staticRenderFns$1 = [];\nvar __component__$1 = /* @__PURE__ */ normalizeComponent(\n _sfc_main$1,\n _sfc_render$1,\n _sfc_staticRenderFns$1,\n false,\n null,\n null,\n null,\n null\n);\nconst IconUpload = __component__$1.exports;\nconst _sfc_main = Vue.extend({\n name: \"UploadPicker\",\n components: {\n IconCancel,\n IconFolderUpload,\n IconPlus,\n IconUpload,\n NcActionButton,\n NcActionCaption,\n NcActionSeparator,\n NcActions,\n NcButton,\n NcIconSvgWrapper,\n NcProgressBar\n },\n props: {\n accept: {\n type: Array,\n default: null\n },\n disabled: {\n type: Boolean,\n default: false\n },\n multiple: {\n type: Boolean,\n default: false\n },\n destination: {\n type: Folder,\n default: void 0\n },\n allowFolders: {\n type: Boolean,\n default: false\n },\n /**\n * List of file present in the destination folder\n * It is also possible to provide a function that takes a relative path to the current directory and returns the content of it\n * Note: If a function is passed it should return the current base directory when no path or an empty is passed\n */\n content: {\n type: [Array, Function],\n default: () => []\n },\n forbiddenCharacters: {\n type: Array,\n default: () => []\n }\n },\n setup() {\n return {\n t,\n // non reactive data / properties\n progressTimeId: `nc-uploader-progress-${Math.random().toString(36).slice(7)}`\n };\n },\n data() {\n return {\n eta: null,\n timeLeft: \"\",\n currentContent: [],\n newFileMenuEntries: [],\n uploadManager: getUploader()\n };\n },\n computed: {\n menuEntriesUpload() {\n return this.newFileMenuEntries.filter((entry) => entry.category === NewMenuEntryCategory.UploadFromDevice);\n },\n menuEntriesNew() {\n return this.newFileMenuEntries.filter((entry) => entry.category === NewMenuEntryCategory.CreateNew);\n },\n menuEntriesOther() {\n return this.newFileMenuEntries.filter((entry) => entry.category === NewMenuEntryCategory.Other);\n },\n /**\n * Check whether the current browser supports uploading directories\n * Hint: This does not check if the current connection supports this, as some browsers require a secure context!\n */\n canUploadFolders() {\n return this.allowFolders && \"webkitdirectory\" in document.createElement(\"input\");\n },\n totalQueueSize() {\n return this.uploadManager.info?.size || 0;\n },\n uploadedQueueSize() {\n return this.uploadManager.info?.progress || 0;\n },\n progress() {\n return Math.round(this.uploadedQueueSize / this.totalQueueSize * 100) || 0;\n },\n queue() {\n return this.uploadManager.queue;\n },\n hasFailure() {\n return this.queue?.filter((upload2) => upload2.status === Status$1.FAILED).length !== 0;\n },\n isUploading() {\n return this.queue?.length > 0;\n },\n isAssembling() {\n return this.queue?.filter((upload2) => upload2.status === Status$1.ASSEMBLING).length !== 0;\n },\n isPaused() {\n return this.uploadManager.info?.status === Status.PAUSED;\n },\n // Hide the button text if we're uploading\n buttonName() {\n if (this.isUploading) {\n return void 0;\n }\n return t(\"New\");\n }\n },\n watch: {\n allowFolders: {\n immediate: true,\n handler() {\n if (typeof this.content !== \"function\" && this.allowFolders) {\n logger.error(\"[UploadPicker] Setting `allowFolders` is only allowed if `content` is a function\");\n }\n }\n },\n content: {\n immediate: true,\n async handler() {\n this.currentContent = await this.getContent();\n }\n },\n destination(destination) {\n this.setDestination(destination);\n },\n totalQueueSize(size) {\n this.eta = makeEta({ min: 0, max: size });\n this.updateStatus();\n },\n uploadedQueueSize(size) {\n this.eta?.report?.(size);\n this.updateStatus();\n },\n isPaused(isPaused) {\n if (isPaused) {\n this.$emit(\"paused\", this.queue);\n } else {\n this.$emit(\"resumed\", this.queue);\n }\n }\n },\n beforeMount() {\n if (this.destination) {\n this.setDestination(this.destination);\n }\n this.uploadManager.addNotifier(this.onUploadCompletion);\n logger.debug(\"UploadPicker initialised\");\n },\n methods: {\n /**\n * Trigger file picker\n * @param uploadFolders Upload folders\n */\n onTriggerPick(uploadFolders = false) {\n const input = this.$refs.input;\n if (this.canUploadFolders) {\n input.webkitdirectory = uploadFolders;\n }\n this.$nextTick(() => input.click());\n },\n /**\n * Helper for backwards compatibility that queries the content of the current directory\n * @param path The current path\n */\n async getContent(path) {\n return Array.isArray(this.content) ? this.content : await this.content(path);\n },\n /**\n * Show a dialog to let the user decide how to proceed with invalid filenames.\n * The returned promise resolves to true if the file should be renamed and resolves to false to skip it the file.\n * The promise rejects when the user want to abort the operation.\n *\n * @param filename The invalid file name\n */\n async showInvalidFileNameDialog(filename) {\n return new PCancelable(async (resolve, reject) => {\n await new DialogBuilder().setName(t(\"Invalid file name\")).setSeverity(\"error\").setText(t('\"{filename}\" contains invalid characters, how do you want to continue?', { filename })).setButtons([\n {\n label: t(\"Cancel\"),\n type: \"error\",\n callback: reject\n },\n {\n label: t(\"Skip\"),\n callback: () => resolve(false)\n },\n {\n label: t(\"Rename\"),\n type: \"primary\",\n callback: () => resolve(true)\n }\n ]).build().show();\n });\n },\n async handleConflicts(nodes, path) {\n try {\n const content = path === \"\" ? this.currentContent : await this.getContent(path).catch(() => []);\n const conflicts = getConflicts(nodes, content);\n if (conflicts.length > 0) {\n const { selected, renamed } = await openConflictPicker(path, conflicts, content, { recursive: true });\n nodes = [...selected, ...renamed];\n }\n const filesToUpload = [];\n for (const file of nodes) {\n const invalid = this.forbiddenCharacters.some((c) => file.name.includes(c));\n if (!invalid) {\n filesToUpload.push(file);\n continue;\n }\n if (await this.showInvalidFileNameDialog(file.name)) {\n let newName = this.replaceInvalidCharacters(file.name);\n newName = getUniqueName(newName, nodes.map((node) => node.name));\n Object.defineProperty(file, \"name\", { value: newName });\n filesToUpload.push(file);\n }\n }\n return filesToUpload;\n } catch (error) {\n logger.debug(\"Upload has been cancelled\", { error });\n showWarning(t(\"Upload has been cancelled\"));\n return false;\n }\n },\n /**\n * Helper function to replace invalid characters in text\n * @param text Text to replace invalid character\n */\n replaceInvalidCharacters(text) {\n const invalidReplacement = [\"-\", \"_\", \" \"].filter((c) => !this.forbiddenCharacters.includes(c))[0] ?? \"x\";\n this.forbiddenCharacters.forEach((c) => {\n text = text.replaceAll(c, invalidReplacement);\n });\n return text;\n },\n /**\n * Start uploading\n */\n onPick() {\n const input = this.$refs.input;\n const files = input.files ? Array.from(input.files) : [];\n this.uploadManager.batchUpload(\"\", files, this.handleConflicts).catch((error) => logger.debug(\"Error while uploading\", { error })).finally(() => this.resetForm());\n },\n resetForm() {\n const form = this.$refs.form;\n form?.reset();\n },\n /**\n * Cancel ongoing queue\n */\n onCancel() {\n this.uploadManager.queue.forEach((upload2) => {\n upload2.cancel();\n });\n this.resetForm();\n },\n updateStatus() {\n if (this.isPaused) {\n this.timeLeft = t(\"paused\");\n return;\n }\n const estimate = Math.round(this.eta.estimate());\n if (estimate === Infinity) {\n this.timeLeft = t(\"estimating time left\");\n return;\n }\n if (estimate < 10) {\n this.timeLeft = t(\"a few seconds left\");\n return;\n }\n if (estimate > 60) {\n const date = /* @__PURE__ */ new Date(0);\n date.setSeconds(estimate);\n const time = date.toISOString().slice(11, 11 + 8);\n this.timeLeft = t(\"{time} left\", { time });\n return;\n }\n this.timeLeft = t(\"{seconds} seconds left\", { seconds: estimate });\n },\n setDestination(destination) {\n if (!this.destination) {\n logger.debug(\"Invalid destination\");\n return;\n }\n this.uploadManager.destination = destination;\n this.newFileMenuEntries = getNewFileMenuEntries(destination);\n },\n onUploadCompletion(upload2) {\n if (upload2.status === Status$1.FAILED) {\n this.$emit(\"failed\", upload2);\n } else {\n this.$emit(\"uploaded\", upload2);\n }\n }\n }\n});\nvar _sfc_render = function render5() {\n var _vm = this, _c = _vm._self._c;\n _vm._self._setupProxy;\n return _vm.destination ? _c(\"form\", { ref: \"form\", staticClass: \"upload-picker\", class: { \"upload-picker--uploading\": _vm.isUploading, \"upload-picker--paused\": _vm.isPaused }, attrs: { \"data-cy-upload-picker\": \"\" } }, [_vm.newFileMenuEntries && _vm.newFileMenuEntries.length === 0 ? _c(\"NcButton\", { attrs: { \"disabled\": _vm.disabled, \"data-cy-upload-picker-add\": \"\", \"type\": \"secondary\" }, on: { \"click\": function($event) {\n return _vm.onTriggerPick();\n } }, scopedSlots: _vm._u([{ key: \"icon\", fn: function() {\n return [_c(\"IconPlus\", { attrs: { \"size\": 20 } })];\n }, proxy: true }], null, false, 1991456921) }, [_vm._v(\" \" + _vm._s(_vm.buttonName) + \" \")]) : _c(\"NcActions\", { attrs: { \"menu-name\": _vm.buttonName, \"menu-title\": _vm.t(\"New\"), \"type\": \"secondary\" }, scopedSlots: _vm._u([{ key: \"icon\", fn: function() {\n return [_c(\"IconPlus\", { attrs: { \"size\": 20 } })];\n }, proxy: true }], null, false, 1991456921) }, [_c(\"NcActionCaption\", { attrs: { \"name\": _vm.t(\"Upload from device\") } }), _c(\"NcActionButton\", { attrs: { \"data-cy-upload-picker-add\": \"\", \"close-after-click\": true }, on: { \"click\": function($event) {\n return _vm.onTriggerPick();\n } }, scopedSlots: _vm._u([{ key: \"icon\", fn: function() {\n return [_c(\"IconUpload\", { attrs: { \"size\": 20 } })];\n }, proxy: true }], null, false, 337456192) }, [_vm._v(\" \" + _vm._s(_vm.t(\"Upload files\")) + \" \")]), _vm.canUploadFolders ? _c(\"NcActionButton\", { attrs: { \"close-after-click\": \"\", \"data-cy-upload-picker-add-folders\": \"\" }, on: { \"click\": function($event) {\n return _vm.onTriggerPick(true);\n } }, scopedSlots: _vm._u([{ key: \"icon\", fn: function() {\n return [_c(\"IconFolderUpload\", { staticStyle: { \"color\": \"var(--color-primary-element)\" }, attrs: { \"size\": 20 } })];\n }, proxy: true }], null, false, 1037549157) }, [_vm._v(\" \" + _vm._s(_vm.t(\"Upload folders\")) + \" \")]) : _vm._e(), _vm._l(_vm.menuEntriesUpload, function(entry) {\n return _c(\"NcActionButton\", { key: entry.id, staticClass: \"upload-picker__menu-entry\", attrs: { \"icon\": entry.iconClass, \"close-after-click\": true }, on: { \"click\": function($event) {\n return entry.handler(_vm.destination, _vm.currentContent);\n } }, scopedSlots: _vm._u([entry.iconSvgInline ? { key: \"icon\", fn: function() {\n return [_c(\"NcIconSvgWrapper\", { attrs: { \"svg\": entry.iconSvgInline } })];\n }, proxy: true } : null], null, true) }, [_vm._v(\" \" + _vm._s(entry.displayName) + \" \")]);\n }), _vm.menuEntriesNew.length > 0 ? [_c(\"NcActionSeparator\"), _c(\"NcActionCaption\", { attrs: { \"name\": _vm.t(\"Create new\") } }), _vm._l(_vm.menuEntriesNew, function(entry) {\n return _c(\"NcActionButton\", { key: entry.id, staticClass: \"upload-picker__menu-entry\", attrs: { \"icon\": entry.iconClass, \"close-after-click\": true }, on: { \"click\": function($event) {\n return entry.handler(_vm.destination, _vm.currentContent);\n } }, scopedSlots: _vm._u([entry.iconSvgInline ? { key: \"icon\", fn: function() {\n return [_c(\"NcIconSvgWrapper\", { attrs: { \"svg\": entry.iconSvgInline } })];\n }, proxy: true } : null], null, true) }, [_vm._v(\" \" + _vm._s(entry.displayName) + \" \")]);\n })] : _vm._e(), _vm.menuEntriesOther.length > 0 ? [_c(\"NcActionSeparator\"), _vm._l(_vm.menuEntriesNew, function(entry) {\n return _c(\"NcActionButton\", { key: entry.id, staticClass: \"upload-picker__menu-entry\", attrs: { \"icon\": entry.iconClass, \"close-after-click\": true }, on: { \"click\": function($event) {\n return entry.handler(_vm.destination, _vm.currentContent);\n } }, scopedSlots: _vm._u([entry.iconSvgInline ? { key: \"icon\", fn: function() {\n return [_c(\"NcIconSvgWrapper\", { attrs: { \"svg\": entry.iconSvgInline } })];\n }, proxy: true } : null], null, true) }, [_vm._v(\" \" + _vm._s(entry.displayName) + \" \")]);\n })] : _vm._e()], 2), _c(\"div\", { directives: [{ name: \"show\", rawName: \"v-show\", value: _vm.isUploading, expression: \"isUploading\" }], staticClass: \"upload-picker__progress\" }, [_c(\"NcProgressBar\", { attrs: { \"aria-label\": _vm.t(\"Upload progress\"), \"aria-describedby\": _vm.progressTimeId, \"error\": _vm.hasFailure, \"value\": _vm.progress, \"size\": \"medium\" } }), _c(\"p\", { attrs: { \"id\": _vm.progressTimeId } }, [_vm._v(\" \" + _vm._s(_vm.timeLeft) + \" \")])], 1), _vm.isUploading ? _c(\"NcButton\", { staticClass: \"upload-picker__cancel\", attrs: { \"type\": \"tertiary\", \"aria-label\": _vm.t(\"Cancel uploads\"), \"data-cy-upload-picker-cancel\": \"\" }, on: { \"click\": _vm.onCancel }, scopedSlots: _vm._u([{ key: \"icon\", fn: function() {\n return [_c(\"IconCancel\", { attrs: { \"size\": 20 } })];\n }, proxy: true }], null, false, 3076329829) }) : _vm._e(), _c(\"input\", { ref: \"input\", staticClass: \"hidden-visually\", attrs: { \"accept\": _vm.accept?.join?.(\", \"), \"multiple\": _vm.multiple, \"data-cy-upload-picker-input\": \"\", \"type\": \"file\" }, on: { \"change\": _vm.onPick } })], 1) : _vm._e();\n};\nvar _sfc_staticRenderFns = [];\nvar __component__ = /* @__PURE__ */ normalizeComponent(\n _sfc_main,\n _sfc_render,\n _sfc_staticRenderFns,\n false,\n null,\n \"1f097873\",\n null,\n null\n);\nconst UploadPicker = __component__.exports;\nlet _uploader = null;\nfunction getUploader(isPublic = isPublicShare(), forceRecreate = false) {\n if (_uploader instanceof Uploader && !forceRecreate) {\n return _uploader;\n }\n _uploader = new Uploader(isPublic);\n return _uploader;\n}\nfunction upload(destinationPath, file) {\n const uploader = getUploader();\n uploader.upload(destinationPath, file);\n return uploader;\n}\nasync function openConflictPicker(dirname, conflicts, content, options) {\n const ConflictPicker = defineAsyncComponent(() => import(\"./ConflictPicker-CLXOphvC.mjs\"));\n return new Promise((resolve, reject) => {\n const picker = new Vue({\n name: \"ConflictPickerRoot\",\n render: (h) => h(ConflictPicker, {\n props: {\n dirname,\n conflicts,\n content,\n recursiveUpload: options?.recursive === true\n },\n on: {\n submit(results) {\n resolve(results);\n picker.$destroy();\n picker.$el?.parentNode?.removeChild(picker.$el);\n },\n cancel(error) {\n reject(error ?? new Error(\"Canceled\"));\n picker.$destroy();\n picker.$el?.parentNode?.removeChild(picker.$el);\n }\n }\n })\n });\n picker.$mount();\n document.body.appendChild(picker.$el);\n });\n}\nfunction hasConflict(files, content) {\n return getConflicts(files, content).length > 0;\n}\nfunction getConflicts(files, content) {\n const contentNames = content.map((node) => node.basename);\n const conflicts = files.filter((node) => {\n const name = \"basename\" in node ? node.basename : node.name;\n return contentNames.indexOf(name) !== -1;\n });\n return conflicts;\n}\nexport {\n Status as S,\n UploadPicker as U,\n n as a,\n getConflicts as b,\n Upload as c,\n Status$1 as d,\n getUploader as g,\n hasConflict as h,\n isFileSystemEntry as i,\n logger as l,\n normalizeComponent as n,\n openConflictPicker as o,\n t,\n upload as u\n};\n","function getLocale() {\n return document.documentElement.dataset.locale || \"en\";\n}\nfunction getCanonicalLocale() {\n return getLocale().replace(/_/g, \"-\");\n}\nfunction getLanguage() {\n return document.documentElement.lang || \"en\";\n}\nfunction isRTL(language) {\n const languageCode = language || getLanguage();\n const rtlLanguages = [\n /* eslint-disable no-multi-spaces */\n \"ae\",\n // Avestan\n \"ar\",\n // 'العربية', Arabic\n \"arc\",\n // Aramaic\n \"arz\",\n // 'مصرى', Egyptian\n \"bcc\",\n // 'بلوچی مکرانی', Southern Balochi\n \"bqi\",\n // 'بختياري', Bakthiari\n \"ckb\",\n // 'Soranî / کوردی', Sorani\n \"dv\",\n // Dhivehi\n \"fa\",\n // 'فارسی', Persian\n \"glk\",\n // 'گیلکی', Gilaki\n \"ha\",\n // 'هَوُسَ', Hausa\n \"he\",\n // 'עברית', Hebrew\n \"khw\",\n // 'کھوار', Khowar\n \"ks\",\n // 'कॉशुर / کٲشُر', Kashmiri\n \"ku\",\n // 'Kurdî / كوردی', Kurdish\n \"mzn\",\n // 'مازِرونی', Mazanderani\n \"nqo\",\n // 'ߒߞߏ', N’Ko\n \"pnb\",\n // 'پنجابی', Western Punjabi\n \"ps\",\n // 'پښتو', Pashto,\n \"sd\",\n // 'سنڌي', Sindhi\n \"ug\",\n // 'Uyghurche / ئۇيغۇرچە', Uyghur\n \"ur\",\n // 'اردو', Urdu\n \"uzs\",\n // 'اوزبیکی', Uzbek Afghan\n \"yi\"\n // 'ייִדיש', Yiddish\n /* eslint-enable no-multi-spaces */\n ];\n if ((language || getCanonicalLocale()).startsWith(\"uz-AF\")) {\n return true;\n }\n return rtlLanguages.includes(languageCode);\n}\nexport {\n getLanguage as a,\n getCanonicalLocale as b,\n getLocale as g,\n isRTL as i\n};\n","import { loadState } from \"@nextcloud/initial-state\";\nfunction isPublicShare() {\n return loadState(\"files_sharing\", \"isPublic\", null) ?? document.querySelector(\n 'input#isPublic[type=\"hidden\"][name=\"isPublic\"][value=\"1\"]'\n ) !== null;\n}\nfunction getSharingToken() {\n return loadState(\"files_sharing\", \"sharingToken\", null) ?? document.querySelector('input#sharingToken[type=\"hidden\"]')?.value ?? null;\n}\nexport {\n getSharingToken,\n isPublicShare\n};\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\tid: moduleId,\n\t\tloaded: false,\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Flag the module as loaded\n\tmodule.loaded = true;\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.f = {};\n// This file contains only the entry chunk.\n// The chunk loading function for additional chunks\n__webpack_require__.e = (chunkId) => {\n\treturn Promise.all(Object.keys(__webpack_require__.f).reduce((promises, key) => {\n\t\t__webpack_require__.f[key](chunkId, promises);\n\t\treturn promises;\n\t}, []));\n};","// This function allow to reference async chunks\n__webpack_require__.u = (chunkId) => {\n\t// return url for filenames based on template\n\treturn \"\" + chunkId + \"-\" + chunkId + \".js?v=\" + {\"1110\":\"e20948a2fd7d006e5209\",\"5455\":\"f19bb30c4edfe928a23c\",\"6778\":\"05456eb4fc16e404b623\"}[chunkId] + \"\";\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.nmd = (module) => {\n\tmodule.paths = [];\n\tif (!module.children) module.children = [];\n\treturn module;\n};","__webpack_require__.j = 2882;","var scriptUrl;\nif (__webpack_require__.g.importScripts) scriptUrl = __webpack_require__.g.location + \"\";\nvar document = __webpack_require__.g.document;\nif (!scriptUrl && document) {\n\tif (document.currentScript)\n\t\tscriptUrl = document.currentScript.src;\n\tif (!scriptUrl) {\n\t\tvar scripts = document.getElementsByTagName(\"script\");\n\t\tif(scripts.length) {\n\t\t\tvar i = scripts.length - 1;\n\t\t\twhile (i > -1 && (!scriptUrl || !/^http(s?):/.test(scriptUrl))) scriptUrl = scripts[i--].src;\n\t\t}\n\t}\n}\n// When supporting browsers where an automatic publicPath is not supported you must specify an output.publicPath manually via configuration\n// or pass an empty string (\"\") and set the __webpack_public_path__ variable from your code to use your own logic.\nif (!scriptUrl) throw new Error(\"Automatic publicPath is not supported in this browser\");\nscriptUrl = scriptUrl.replace(/#.*$/, \"\").replace(/\\?.*$/, \"\").replace(/\\/[^\\/]+$/, \"/\");\n__webpack_require__.p = scriptUrl;","__webpack_require__.b = document.baseURI || self.location.href;\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t2882: 0\n};\n\n__webpack_require__.f.j = (chunkId, promises) => {\n\t\t// JSONP chunk loading for javascript\n\t\tvar installedChunkData = __webpack_require__.o(installedChunks, chunkId) ? installedChunks[chunkId] : undefined;\n\t\tif(installedChunkData !== 0) { // 0 means \"already installed\".\n\n\t\t\t// a Promise means \"currently loading\".\n\t\t\tif(installedChunkData) {\n\t\t\t\tpromises.push(installedChunkData[2]);\n\t\t\t} else {\n\t\t\t\tif(true) { // all chunks have JS\n\t\t\t\t\t// setup Promise in chunk cache\n\t\t\t\t\tvar promise = new Promise((resolve, reject) => (installedChunkData = installedChunks[chunkId] = [resolve, reject]));\n\t\t\t\t\tpromises.push(installedChunkData[2] = promise);\n\n\t\t\t\t\t// start chunk loading\n\t\t\t\t\tvar url = __webpack_require__.p + __webpack_require__.u(chunkId);\n\t\t\t\t\t// create error before stack unwound to get useful stacktrace later\n\t\t\t\t\tvar error = new Error();\n\t\t\t\t\tvar loadingEnded = (event) => {\n\t\t\t\t\t\tif(__webpack_require__.o(installedChunks, chunkId)) {\n\t\t\t\t\t\t\tinstalledChunkData = installedChunks[chunkId];\n\t\t\t\t\t\t\tif(installedChunkData !== 0) installedChunks[chunkId] = undefined;\n\t\t\t\t\t\t\tif(installedChunkData) {\n\t\t\t\t\t\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n\t\t\t\t\t\t\t\tvar realSrc = event && event.target && event.target.src;\n\t\t\t\t\t\t\t\terror.message = 'Loading chunk ' + chunkId + ' failed.\\n(' + errorType + ': ' + realSrc + ')';\n\t\t\t\t\t\t\t\terror.name = 'ChunkLoadError';\n\t\t\t\t\t\t\t\terror.type = errorType;\n\t\t\t\t\t\t\t\terror.request = realSrc;\n\t\t\t\t\t\t\t\tinstalledChunkData[1](error);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t};\n\t\t\t\t\t__webpack_require__.l(url, loadingEnded, \"chunk-\" + chunkId, chunkId);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n};\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n__webpack_require__.O.j = (chunkId) => (installedChunks[chunkId] === 0);\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = (parentChunkLoadingFunction, data) => {\n\tvar chunkIds = data[0];\n\tvar moreModules = data[1];\n\tvar runtime = data[2];\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some((id) => (installedChunks[id] !== 0))) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\treturn __webpack_require__.O(result);\n}\n\nvar chunkLoadingGlobal = self[\"webpackChunknextcloud\"] = self[\"webpackChunknextcloud\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","__webpack_require__.nc = undefined;","// startup\n// Load entry module and return exports\n// This entry module depends on other loaded chunks and execution need to be delayed\nvar __webpack_exports__ = __webpack_require__.O(undefined, [4208], () => (__webpack_require__(81139)))\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["deferred","inProgress","dataWebpackPrefix","has","Object","prototype","hasOwnProperty","prefix","Events","EE","fn","context","once","this","addListener","emitter","event","TypeError","listener","evt","_events","push","_eventsCount","clearEvent","EventEmitter","create","__proto__","eventNames","events","name","names","call","slice","getOwnPropertySymbols","concat","listeners","handlers","i","l","length","ee","Array","listenerCount","emit","a1","a2","a3","a4","a5","args","len","arguments","removeListener","undefined","apply","j","on","removeAllListeners","off","prefixed","module","exports","pinia","createPinia","token","singleMatcher","RegExp","multiMatcher","decodeComponents","components","split","decodeURIComponent","join","left","right","decode","input","tokens","match","splitOnFirst","string","separator","separatorIndex","indexOf","includeKeys","object","predicate","result","isArray","key","descriptor","getOwnPropertyDescriptor","enumerable","defineProperty","Reflect","ownKeys","isNullOrUndefined","value","strictUriEncode","encodeURIComponent","replaceAll","x","charCodeAt","toString","toUpperCase","encodeFragmentIdentifier","Symbol","validateArrayFormatSeparator","encode","options","strict","encodedURI","replaceMap","exec","entries","keys","replace","customDecodeURIComponent","keysSorter","sort","a","b","Number","map","removeHash","hashStart","parseValue","parseNumbers","isNaN","trim","parseBooleans","toLowerCase","extract","queryStart","parse","query","arrayFormat","arrayFormatSeparator","formatter","accumulator","includes","isEncodedArray","newValue","item","test","arrayValue","flat","parserForArrayFormat","returnValue","parameter","parameter_","key2","value2","reduce","Boolean","stringify","shouldFilter","skipNull","skipEmptyString","index","keyValueSeparator","encoderForArrayFormat","objectCopy","filter","parseUrl","url","url_","hash","parseFragmentIdentifier","fragmentIdentifier","stringifyUrl","queryString","getHash","urlObjectForFragmentEncode","URL","pick","exclude","extend","encodeReserveRE","encodeReserveReplacer","c","commaRE","str","err","castQueryParamValue","String","parseQuery","res","forEach","param","parts","shift","val","stringifyQuery","obj","val2","trailingSlashRE","createRoute","record","location","redirectedFrom","router","clone","e","route","meta","path","params","fullPath","getFullPath","matched","formatMatch","freeze","START","unshift","parent","ref","_stringifyQuery","isSameRoute","onlyPath","isObjectEqual","aKeys","bKeys","every","aVal","bVal","handleRouteEntered","instances","instance","cbs","enteredCbs","i$1","_isBeingDestroyed","View","functional","props","type","default","render","_","children","data","routerView","h","$createElement","$route","cache","_routerViewCache","depth","inactive","_routerRoot","vnodeData","$vnode","keepAlive","_directInactive","_inactive","$parent","routerViewDepth","cachedData","cachedComponent","component","configProps","fillPropsinData","registerRouteInstance","vm","current","hook","prepatch","vnode","componentInstance","init","propsToPass","config","resolveProps","attrs","resolvePath","relative","base","append","firstChar","charAt","stack","pop","segments","segment","cleanPath","isarray","arr","pathToRegexp_1","pathToRegexp","groups","source","delimiter","optional","repeat","partial","asterisk","pattern","attachKeys","regexpToRegexp","flags","arrayToRegexp","tokensToRegExp","stringToRegexp","parse_1","tokensToFunction_1","tokensToFunction","tokensToRegExp_1","PATH_REGEXP","defaultDelimiter","m","escaped","offset","next","capture","group","modifier","escapeGroup","escapeString","substr","encodeURIComponentPretty","encodeURI","matches","opts","pretty","JSON","re","sensitive","end","endsWithDelimiter","compile","regexpCompileCache","fillParams","routeMsg","filler","pathMatch","normalizeLocation","raw","_normalized","params$1","rawPath","parsedPath","hashIndex","queryIndex","parsePath","basePath","extraQuery","_parseQuery","parsedQuery","resolveQuery","_Vue","noop","Link","to","required","tag","custom","exact","exactPath","activeClass","exactActiveClass","ariaCurrentValue","this$1$1","$router","resolve","href","classes","globalActiveClass","linkActiveClass","globalExactActiveClass","linkExactActiveClass","activeClassFallback","exactActiveClassFallback","compareTarget","target","queryIncludes","isIncludedRoute","handler","guardEvent","click","class","scopedSlot","$scopedSlots","$hasNormal","navigate","isActive","isExactActive","findAnchor","$slots","isStatic","aData","handler$1","event$1","aAttrs","metaKey","altKey","ctrlKey","shiftKey","defaultPrevented","button","currentTarget","getAttribute","preventDefault","child","inBrowser","window","createRouteMap","routes","oldPathList","oldPathMap","oldNameMap","parentRoute","pathList","pathMap","nameMap","addRouteRecord","splice","matchAs","pathToRegexpOptions","normalizedPath","normalizePath","caseSensitive","regex","compileRouteRegex","alias","redirect","beforeEnter","childMatchAs","aliases","aliasRoute","createMatcher","currentRoute","_createRoute","paramNames","record$1","matchRoute","originalRedirect","resolveRecordPath","aliasedMatch","aliasedRecord","addRoute","parentOrRoute","getRoutes","addRoutes","Time","performance","now","Date","genStateKey","toFixed","_key","getStateKey","setStateKey","positionStore","setupScroll","history","scrollRestoration","protocolAndPath","protocol","host","absolutePath","stateCopy","state","replaceState","addEventListener","handlePopState","removeEventListener","handleScroll","from","isPop","app","behavior","scrollBehavior","$nextTick","position","getScrollPosition","shouldScroll","then","scrollToPosition","catch","saveScrollPosition","pageXOffset","y","pageYOffset","isValidPosition","isNumber","normalizePosition","v","hashStartsWithNumberRE","isObject","selector","el","document","getElementById","querySelector","docRect","documentElement","getBoundingClientRect","elRect","top","getElementPosition","style","scrollTo","ua","supportsPushState","navigator","userAgent","pushState","NavigationFailureType","redirected","aborted","cancelled","duplicated","createNavigationCancelledError","createRouterError","message","error","Error","_isRouter","propertiesToLog","isError","isNavigationFailure","errorType","runQueue","queue","cb","step","flatMapComponents","flatten","hasSymbol","toStringTag","called","History","baseEl","normalizeBase","pending","ready","readyCbs","readyErrorCbs","errorCbs","extractGuards","records","bind","reverse","guards","def","guard","extractGuard","bindGuard","listen","onReady","errorCb","onError","transitionTo","onComplete","onAbort","prev","confirmTransition","updateRoute","ensureURL","afterHooks","abort","console","lastRouteIndex","lastCurrentIndex","max","Math","updated","activated","deactivated","resolveQueue","extractLeaveGuards","beforeHooks","extractUpdateHooks","hasAsync","cid","resolvedDef","__esModule","resolved","reject","reason","msg","comp","iterator","createNavigationAbortedError","createNavigationRedirectedError","enterGuards","bindEnterGuard","extractEnterGuards","resolveHooks","setupListeners","teardown","cleanupListener","HTML5History","_startLocation","getLocation","constructor","expectScroll","supportsScroll","handleRoutingEvent","go","n","fromRoute","getCurrentLocation","pathname","pathLowerCase","baseLowerCase","search","HashHistory","fallback","checkFallback","ensureSlash","replaceHash","eventType","pushHash","getUrl","AbstractHistory","targetIndex","VueRouter","apps","matcher","mode","prototypeAccessors","configurable","get","$once","routeOrError","handleInitialScroll","_route","beforeEach","registerHook","beforeResolve","afterEach","Promise","back","forward","getMatchedComponents","createHref","normalizedTo","defineProperties","VueRouter$1","list","install","Vue","installed","isDef","registerInstance","callVal","$options","_parentVnode","mixin","beforeCreate","_router","util","defineReactive","destroyed","strats","optionMergeStrategies","beforeRouteEnter","beforeRouteLeave","beforeRouteUpdate","created","version","START_LOCATION","use","Router","originalPush","generateUrl","view","emits","title","fillColor","size","_vm","_c","_self","_b","staticClass","$event","$emit","$attrs","_v","_s","_e","throttle","delay","callback","timeoutID","_ref","_ref$noTrailing","noTrailing","_ref$noLeading","noLeading","_ref$debounceMode","debounceMode","lastExec","clearExistingTimeout","clearTimeout","wrapper","_len","arguments_","self","elapsed","clear","setTimeout","cancel","_ref2$upcomingOnly","upcomingOnly","getLoggerBuilder","setApp","detectUser","build","ChartPie","NcAppNavigationItem","NcProgressBar","loadingStorageStats","storageStats","loadState","computed","storageStatsTitle","_this$storageStats","_this$storageStats2","_this$storageStats3","usedQuotaByte","formatFileSize","used","quotaByte","quota","t","storageStatsTooltip","beforeMount","setInterval","throttleUpdateStorageStats","subscribe","mounted","_this$storageStats4","_this$storageStats5","free","showStorageFullWarning","methods","debounceUpdateStorageStats","_ref$atBegin","atBegin","updateStorageStats","_response$data","_this$storageStats6","_response$data$data","_response$data$data2","response","axios","logger","showError","translate","styleTagTransform","setAttributes","insert","domAPI","insertStyleElement","locals","stopPropagation","slot","min","Function","$el","appendChild","userConfig","show_hidden","crop_image_previews","sort_favorites_first","sort_folders_first","grid_view","useUserConfigStore","userConfigStore","defineStore","actions","onUpdate","update","put","store","_initialized","Clipboard","NcAppSettingsDialog","NcAppSettingsSection","NcCheckboxRadioSwitch","NcInputField","Setting","open","setup","_window$OCA","_getCurrentUser","_loadState$enable_non","settings","OCA","Files","Settings","webdavUrl","generateRemoteUrl","getCurrentUser","uid","webdavDocs","appPasswordUrl","webdavUrlCopied","enableGridView","setting","beforeDestroy","close","onClose","setConfig","copyCloudId","select","clipboard","writeText","showSuccess","_l","scopedSlots","_u","proxy","useNavigation","navigation","getNavigation","views","shallowRef","currentView","active","onUpdateActive","detail","onUpdateViews","onMounted","onUnmounted","viewConfig","useViewConfigStore","getters","getConfig","setSortingBy","toggleSortingDirection","newDirection","sorting_direction","viewConfigStore","defineComponent","IconCog","NavigationQuota","NcAppNavigation","NcIconSvgWrapper","SettingsModal","settingsOpened","currentViewId","_this$$route","parentViews","order","childViews","watch","newView","oldView","_this$currentView","id","find","showView","debug","_ref2","useExactRouteMatching","_this$childViews$view","_window$OCA$close","Sidebar","$navigation","setActive","onToggleExpand","isExpanded","expanded","_this$viewConfigStore","generateToNavigation","dir","openSettings","onSettingsClose","_setupProxy","iconClass","sticky","icon","action","FileAction","displayName","iconSvgInline","InformationSvg","enabled","nodes","_window","_nodes$0$root","root","startsWith","permissions","Permission","NONE","node","OCP","goToRoute","fileid","client","davGetClient","fetchNode","async","propfindPayload","davGetDefaultPropfind","stat","davRootPath","details","davResultToNode","useFilesStore","fileStore","files","roots","getNode","getNodes","sources","getNodesById","fileId","values","getRoot","service","updateNodes","acc","deleteNodes","delete","setRoot","onDeletedNode","onCreatedNode","onUpdatedNode","all","usePathsStore","pathsStore","paths","getPath","addPath","payload","_getNavigation","FileType","Folder","dirname","_children","parentSource","parentFolder","useSelectionStore","selected","lastSelection","lastSelectedIndex","set","selection","Set","setLastIndex","reset","uploader","useUploaderStore","getUploader","toISOString","Directory","File","contents","super","_defineProperty","_contents","_computeDirectorySize","lastModified","_computeDirectoryMtime","directory","file","entry","traverseTree","isFile","readDirectory","dirReader","createReader","getEntries","readEntries","results","createDirectoryIfNotExists","davClient","exists","createDirectory","recursive","resolveConflict","destination","conflicts","basename","uploads","renamed","openConflictPicker","showInfo","info","getQueue","PQueue","concurrency","MoveCopyAction","canMove","ALL","UPDATE","canCopy","_node$attributes$shar","_node$attributes","attributes","some","attribute","scope","canDownload","resultToNode","getContents","controller","AbortController","CancelablePromise","onCancel","contentsResponse","getDirectoryContents","includeSelf","signal","filename","folder","getActionForNodes","MOVE_OR_COPY","MOVE","COPY","handleCopyMoveNodeTo","method","overwrite","NodeStatus","LOADING","add","copySuffix","currentPath","destinationPath","otherNodes","getUniqueName","suffix","ignoreFileExtension","copyFile","hasConflict","deleteFile","moveFile","isAxiosError","_error$response","_error$response2","_error$response3","status","openFilePickerForAction","fileIDs","filePicker","getFilePickerBuilder","allowDirectories","setFilter","setMimeTypeFilter","setMultiSelect","startAt","setButtonFactory","buttons","dirnames","label","escape","sanitize","CopyIconSvg","FolderMoveSvg","FilePickerClosed","_node$root","execBatch","promises","dataTransferToFileTree","items","kind","_item$getAsEntry","_item$getAsEntry2","_item$webkitGetAsEntr","getAsEntry","webkitGetAsEntry","warned","fileTree","DataTransferItem","warn","getAsFile","showWarning","onDropExternalFiles","uploadDirectoryContents","relativePath","joinPaths","upload","pause","start","errors","allSettled","onDropInternalFiles","isCopy","useDragAndDropStore","dragging","filesListWidth","_fileListEl$clientWid","fileListEl","clientWidth","$resizeObserver","ResizeObserver","contentRect","width","observe","disconnect","NcBreadcrumbs","NcBreadcrumb","mixins","filesListWidthMixin","draggingStore","filesStore","selectionStore","uploaderStore","dirs","sections","getFileSourceFromPath","getNodeFromSource","getDirDisplayName","disableDrop","isUploadInProgress","wrapUploadProgressBar","viewIcon","_this$currentView$ico","selectedFiles","draggingFiles","_this$$navigation","displayname","onClick","_to$query","onDragOver","dataTransfer","dropEffect","onDrop","_event$dataTransfer","_event$dataTransfer2","_this$currentView2","canDrop","CREATE","titleForSection","section","_section$to","ariaForSection","_section$to2","_t","nativeOn","getSummaryFor","fileCount","folderCount","useActionsMenuStore","opened","useRenamingStore","renamingStore","renamingNode","newName","FileMultipleIcon","FolderIcon","isSingleNode","isSingleFolder","summary","totalSize","total","parseInt","$refs","previewImg","replaceChildren","preview","parentNode","cloneNode","Preview","DragAndDropPreview","directive","vOnClickOutside","NcFile","Node","loading","dragover","gridMode","currentDir","_this$$route$query","currentFileId","_this$$route$params","_this$$route$query2","_this$source$fileid","uniqueId","hashCode","isLoading","extension","_this$source$attribut","extname","ext","isSelected","isRenaming","isRenamingSmallScreen","isFailedSource","FAILED","canDrag","openedMenu","actionsMenuStore","resetState","_this$$refs","_this$$refs$reset","onRightClick","_this$$el2","closest","removeProperty","_this$$el","setProperty","clientX","clientY","isMoreThanOneSelected","execDefaultAction","openDetailsIfAvailable","_sidebarAction$enable","sidebarAction","onDragLeave","contains","relatedTarget","onDragStart","_event$dataTransfer$c","clearData","$reset","image","$mount","body","$on","$off","getDragAndDropPreview","setDragImage","onDragEnd","_event$dataTransfer3","_event$dataTransfer4","updateRootElement","element","getFileActions","ArrowLeftIcon","CustomElementRender","NcActionButton","NcActions","NcActionSeparator","NcLoadingIcon","openedSubmenu","enabledActions","enabledInlineActions","_action$inline","inline","enabledRenderActions","renderInline","enabledDefaultActions","enabledMenuActions","DefaultType","HIDDEN","findIndex","topActionsIds","enabledSubmenuActions","getBoundariesElement","mountType","actionDisplayName","onActionClick","isSubmenu","$set","success","isMenu","_this$enabledSubmenuA","onBackToMenuClick","menuAction","_menuAction$$el$query","focus","_vm$openedSubmenu","_vm$openedSubmenu2","_action$title","refInFor","_action$title2","keyboardStore","onEvent","useKeyboardStore","ariaLabel","onSelectionChange","_this$keyboardStore","newSelectedIndex","isAlreadySelected","filesToSelect","resetSelection","_k","keyCode","forbiddenCharacters","NcTextField","renameLabel","linkTo","_this$$parent","_this$source","is","role","tabindex","READ","download","immediate","renaming","startRenaming","checkInputValidity","_this$newName$trim","_this$newName","isFileNameValid","setCustomValidity","reportValidity","trimmedName","OC","blacklist_files_regex","checkIfNodeExists","char","_this$$refs$renameInp","extLength","renameInput","inputField","setSelectionRange","dispatchEvent","Event","stopRenaming","onRename","_this$newName$trim2","_this$newName2","oldName","oldEncodedSource","encodedSource","rename","headers","Destination","Overwrite","_this$$refs$basename","_this$$refs$renameInp2","directives","rawName","expression","domProps","StarSvg","_el$setAttribute","setAttribute","AccountGroupIcon","AccountPlusIcon","CollectivesIcon","FavoriteIcon","FileIcon","FolderOpenIcon","KeyIcon","LinkIcon","NetworkIcon","TagIcon","backgroundFailed","_this$source$toString","isFavorite","favorite","cropPreviews","previewUrl","_this$source2","origin","searchParams","etag","fileOverlay","PlayCircleIcon","folderOverlay","_this$source3","_this$source4","_this$source5","_this$source6","shareTypes","ShareType","SHARE_TYPE_LINK","SHARE_TYPE_EMAIL","src","onBackgroundError","_event$target","_m","FileEntryActions","FileEntryCheckbox","FileEntryName","FileEntryPreview","NcDateTime","FileEntryMixin","isMtimeAvailable","isSizeAvailable","compact","rowListeners","dragstart","contextmenu","dragleave","dragend","drop","columns","sizeOpacity","ratio","round","pow","color","mtimeOpacity","_this$source$mtime","_this$source$mtime$ge","maxOpacityTime","mtime","getTime","mtimeTitle","moment","format","_g","column","_vm$currentView","inheritAttrs","header","currentFolder","mount","_this$currentFolder","_node$size","classForColumn","_column$summary","mapState","sortingMode","_this$getConfig","sorting_mode","defaultSortKey","isAscSorting","_this$getConfig2","toggleSortBy","MenuDown","MenuUp","NcButton","filesSortingMixin","FilesListTableHeaderButton","selectAllBind","checked","isAllSelected","indeterminate","isSomeSelected","selectedNodes","isNoneSelected","ariaSortForMode","onToggleAll","dataComponent","dataKey","dataSources","extraProps","scrollToIndex","caption","beforeHeight","headerHeight","tableHeight","resizeObserver","isReady","bufferItems","columnCount","itemHeight","itemWidth","rowCount","ceil","floor","startIndex","shownItems","renderedItems","oldItemsKeys","$_recycledPool","unusedKeys","random","totalRowCount","tbodyStyle","isOverScrolled","lastIndex","hiddenAfterItems","paddingTop","paddingBottom","minHeight","oldColumnCount","_this$$refs2","before","thead","debounce","_before$clientHeight","_thead$clientHeight","_root$clientHeight","clientHeight","onScroll","passive","targetRow","scrollTop","_this$_onScrollHandle","_onScrollHandle","requestAnimationFrame","topScroll","areSomeNodesLoading","inlineActions","selectionSources","failedSources","FilesListHeader","FilesListTableFooter","FilesListTableHeader","VirtualList","FilesListTableHeaderActions","FileEntry","FileEntryGrid","getFileListHeaders","openFileId","openFile","openfile","sortedHeaders","defaultCaption","viewCaption","sortableCaption","virtualListNote","scrollToFile","handleOpenFile","openSidebarForFile","defaultAction","at","types","tableElement","table","tableTop","tableBottom","height","count","TrayArrowDownIcon","canUpload","isQuotaExceeded","cantUploadLabel","mainContent","onContentDrop","_event$relatedTarget","_this$$el$querySelect","lastUpload","findLast","_upload$response","UploadStatus","webkitRelativePath","_this$$route$params$v","isSharingEnabled","_getCapabilities","getCapabilities","files_sharing","BreadCrumbs","DragAndDropNotice","FilesListVirtual","ListViewIcon","NcAppContent","NcEmptyContent","PlusIcon","UploadPicker","ViewGridIcon","Type","filterText","promise","unsubscribeStoreCallback","onSearch","searchEvent","getContent","_this$currentFolder$p","normalize","pageHeading","_this$currentView$nam","_this$$route$params$f","_this$$route2","number","sortingParameters","_v$attributes","_v$attributes2","dirContentsSorted","_this$currentView3","filteredDirContent","dirContents","customColumn","collection","identifiers","orders","_identifiers","_orders","sorting","_orders$index","collator","Intl","Collator","getLanguage","getCanonicalLocale","numeric","usage","identifier","compare","orderBy","_this$userConfigStore","_this$currentFolder2","showHidden","_file$attributes","hidden","isEmptyDir","isRefreshing","toPreviousDir","shareAttributes","_this$currentFolder3","_this$currentFolder4","shareButtonLabel","shareButtonType","SHARE_TYPE_USER","gridViewButtonLabel","_this$currentFolder5","canShare","SHARE","resetSearch","fetchContent","newDir","oldDir","filesListVirtual","onNodeDeleted","$subscribe","deep","unmounted","unsubscribe","fatal","_this$currentFolder6","_this$currentFolder$d","_this$currentFolder7","onUpload","onUploadFail","_upload$response2","CANCELLED","_doc$getElementsByTag","_doc$getElementsByTag2","DOMParser","parseFromString","getElementsByTagName","textContent","_this$currentFolder8","openSharingSidebar","setActiveTab","toggleGridView","_vm$currentView2","emptyTitle","emptyCaption","NcContent","FilesList","Navigation","__webpack_nonce__","btoa","getRequestToken","_window$OCA$Files","_window$OCP$Files","goTo","assign","PiniaVuePlugin","observable","_settings","register","_name","_el","_open","_close","FilesApp","___CSS_LOADER_EXPORT___","denyList","code","d","RC","autostart","ignoreSameProgress","rate","lastTimestamp","lastProgress","historyTimeConstant","previousOutput","dt","report","progress","timestamp","deltaTimestamp","currentRate","estimate","Infinity","estimatedTime","CancelError","isCanceled","promiseState","canceled","rejected","PCancelable","userFunction","executor","description","shouldReject","boolean","onFulfilled","onRejected","onFinally","finally","setPrototypeOf","TimeoutError","AbortError","getDOMException","errorMessage","globalThis","DOMException","getAbortedReason","PriorityQueue","enqueue","run","priority","array","comparator","first","trunc","it","lowerBound","dequeue","timeout","carryoverConcurrencyCount","intervalCap","POSITIVE_INFINITY","interval","autoStart","queueClass","isFinite","throwOnTimeout","clearInterval","canInitializeInterval","job","newConcurrency","_resolve","function_","throwIfAborted","operation","milliseconds","customTimers","timer","cancelablePromise","sign","timeoutError","pTimeout","race","addAll","functions","onEmpty","onSizeLessThan","limit","onIdle","sizeBy","isPaused","namespace","isNetworkError","SAFE_HTTP_METHODS","IDEMPOTENT_HTTP_METHODS","isRetryableError","isIdempotentRequestError","isNetworkOrIdempotentRequestError","retryAfter","retryAfterHeader","retryAfterMs","valueOf","DEFAULT_OPTIONS","retries","retryCondition","retryDelay","_retryNumber","shouldResetTimeout","onRetry","onMaxRetryTimesExceeded","validateResponse","setCurrentState","defaultOptions","currentState","getRequestOptions","retryCount","lastRequestTime","axiosRetry","axiosInstance","requestInterceptorId","interceptors","request","validateStatus","responseInterceptorId","shouldRetryOrPromise","_err","shouldRetry","defaults","agent","httpAgent","httpsAgent","fixConfig","lastRequestDuration","transformRequest","abortListener","handleRetry","handleMaxRetryTimesExceeded","isSafeRequestError","exponentialDelay","retryNumber","delayFactor","calculatedDelay","__defProp","__publicField","writable","__defNormalProp","GettextWrapper","locale","gt","sourceLocale","addTranslations","setLocale","subtitudePlaceholders","translated","vars","r","gettext","original","placeholders","ngettext","singular","plural","isFileSystemFileEntry","o","FileSystemFileEntry","isFileSystemEntry","FileSystemEntry","uploadData","uploadData2","onUploadProgress","destinationFile","Blob","getChunk","getMaxChunksSize","fileSize","maxChunkSize","appConfig","max_chunk_size","minimumChunkSize","Status$1","Status2","Upload","_source","_file","_isChunked","_chunks","_size","_uploaded","_startTime","_status","_controller","_response","chunked","chunks","isChunked","startTime","uploaded","_originalName","_path","Map","addChild","sum","latest","originalName","getChild","rootPath","FileSystemDirectoryEntry","reader","filePath","relPath","gtBuilder","setLanguage","language","detectLocale","lang","addTranslation","translations","enableDebugMode","json","Status","Uploader","_destinationFolder","_isPublic","_uploadQueue","_jobQueue","_queueSize","_queueProgress","_queueStatus","_notifiers","isPublic","destinationFolder","owner","user","maxChunksSize","updateStats","upload2","partialSum","addNotifier","notifier","_notifyAll","batchUpload","rootFolder","files2","uploadDirectory","folderPath","selectedForUpload","directories","currentUpload","UPLOADING","resolve2","resolvedUploads","resolvedDirectoryUploads","FINISHED","fileHandle","encodedDestinationFile","disabledChunkUpload","blob","bytes","tempUrl","initChunkWorkspace","chunksQueue","chunk","bufferStart","bufferEnd","normalizeComponent","scriptExports","render6","staticRenderFns","functionalTemplate","injectStyles","scopeId","moduleIdentifier","shadowMode","_compiled","_scopeId","ssrContext","__VUE_SSR_CONTEXT__","_registeredComponents","_ssrRegister","$root","shadowRoot","_injectStyles","originalRender","existing","IconCancel","IconFolderUpload","IconPlus","IconUpload","_sfc_main","NcActionCaption","accept","disabled","multiple","allowFolders","content","progressTimeId","eta","timeLeft","currentContent","newFileMenuEntries","uploadManager","menuEntriesUpload","category","UploadFromDevice","menuEntriesNew","CreateNew","menuEntriesOther","Other","canUploadFolders","createElement","totalQueueSize","uploadedQueueSize","hasFailure","isUploading","isAssembling","ASSEMBLING","PAUSED","buttonName","setDestination","updateStatus","onUploadCompletion","onTriggerPick","uploadFolders","webkitdirectory","setName","setSeverity","setText","setButtons","show","handleConflicts","getConflicts","filesToUpload","showInvalidFileNameDialog","replaceInvalidCharacters","text","invalidReplacement","onPick","resetForm","form","date","setSeconds","time","seconds","staticStyle","_uploader","isPublicShare","forceRecreate","ConflictPicker","picker","recursiveUpload","submit","$destroy","removeChild","contentNames","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","loaded","__webpack_modules__","O","chunkIds","notFulfilled","fulfilled","getter","definition","f","chunkId","u","g","prop","done","script","needAttach","scripts","s","charset","nc","onScriptComplete","onerror","onload","doneFns","head","nmd","scriptUrl","importScripts","currentScript","p","baseURI","installedChunks","installedChunkData","realSrc","webpackJsonpCallback","parentChunkLoadingFunction","moreModules","runtime","chunkLoadingGlobal","__webpack_exports__"],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"files-main.js?v=7c53ceb560b697190c5c","mappings":"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","sources":["webpack:///nextcloud/webpack/runtime/chunk loaded","webpack:///nextcloud/webpack/runtime/load script","webpack:///nextcloud/node_modules/@nextcloud/upload/node_modules/eventemitter3/index.js","webpack:///nextcloud/apps/files/src/store/index.ts","webpack:///nextcloud/node_modules/decode-uri-component/index.js","webpack:///nextcloud/node_modules/split-on-first/index.js","webpack:///nextcloud/node_modules/query-string/node_modules/filter-obj/index.js","webpack:///nextcloud/node_modules/query-string/base.js","webpack:///nextcloud/node_modules/query-string/index.js","webpack:///nextcloud/node_modules/vue-router/dist/vue-router.esm.js","webpack:///nextcloud/apps/files/src/router/router.ts","webpack:///nextcloud/apps/files/src/FilesApp.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/Cog.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/Cog.vue?vue&type=script&lang=js","webpack://nextcloud/./node_modules/vue-material-design-icons/Cog.vue?4d6d","webpack:///nextcloud/node_modules/vue-material-design-icons/Cog.vue?vue&type=template&id=89df8f2e","webpack:///nextcloud/node_modules/throttle-debounce/esm/index.js","webpack:///nextcloud/node_modules/vue-material-design-icons/ChartPie.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/ChartPie.vue?vue&type=script&lang=js","webpack://nextcloud/./node_modules/vue-material-design-icons/ChartPie.vue?421f","webpack:///nextcloud/node_modules/vue-material-design-icons/ChartPie.vue?vue&type=template&id=b117066e","webpack:///nextcloud/apps/files/src/logger.js","webpack:///nextcloud/apps/files/src/components/NavigationQuota.vue?vue&type=script&lang=js","webpack:///nextcloud/apps/files/src/components/NavigationQuota.vue","webpack://nextcloud/./apps/files/src/components/NavigationQuota.vue?5187","webpack://nextcloud/./apps/files/src/components/NavigationQuota.vue?2966","webpack://nextcloud/./apps/files/src/components/NavigationQuota.vue?08cb","webpack://nextcloud/./apps/files/src/views/Settings.vue?84f7","webpack:///nextcloud/node_modules/vue-material-design-icons/Clipboard.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/Clipboard.vue?vue&type=script&lang=js","webpack://nextcloud/./node_modules/vue-material-design-icons/Clipboard.vue?68c7","webpack:///nextcloud/node_modules/vue-material-design-icons/Clipboard.vue?vue&type=template&id=0c133921","webpack:///nextcloud/apps/files/src/components/Setting.vue","webpack:///nextcloud/apps/files/src/components/Setting.vue?vue&type=script&lang=js","webpack://nextcloud/./apps/files/src/components/Setting.vue?98ea","webpack://nextcloud/./apps/files/src/components/Setting.vue?8d57","webpack:///nextcloud/apps/files/src/store/userconfig.ts","webpack:///nextcloud/apps/files/src/views/Settings.vue?vue&type=script&lang=js","webpack:///nextcloud/apps/files/src/views/Settings.vue","webpack://nextcloud/./apps/files/src/views/Settings.vue?284f","webpack://nextcloud/./apps/files/src/views/Settings.vue?b81b","webpack:///nextcloud/apps/files/src/composables/useNavigation.ts","webpack:///nextcloud/apps/files/src/store/viewConfig.ts","webpack:///nextcloud/apps/files/src/views/Navigation.vue?vue&type=script&lang=ts","webpack:///nextcloud/apps/files/src/views/Navigation.vue","webpack://nextcloud/./apps/files/src/views/Navigation.vue?d877","webpack://nextcloud/./apps/files/src/views/Navigation.vue?74b9","webpack:///nextcloud/apps/files/src/views/FilesList.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/FormatListBulletedSquare.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/FormatListBulletedSquare.vue?vue&type=script&lang=js","webpack://nextcloud/./node_modules/vue-material-design-icons/FormatListBulletedSquare.vue?5dae","webpack:///nextcloud/node_modules/vue-material-design-icons/FormatListBulletedSquare.vue?vue&type=template&id=00aea13f","webpack:///nextcloud/node_modules/vue-material-design-icons/AccountPlus.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/AccountPlus.vue?vue&type=script&lang=js","webpack://nextcloud/./node_modules/vue-material-design-icons/AccountPlus.vue?2818","webpack:///nextcloud/node_modules/vue-material-design-icons/AccountPlus.vue?vue&type=template&id=a16afc28","webpack:///nextcloud/node_modules/vue-material-design-icons/ViewGrid.vue?vue&type=script&lang=js","webpack:///nextcloud/node_modules/vue-material-design-icons/ViewGrid.vue","webpack://nextcloud/./node_modules/vue-material-design-icons/ViewGrid.vue?4e55","webpack:///nextcloud/node_modules/vue-material-design-icons/ViewGrid.vue?vue&type=template&id=7b96a104","webpack:///nextcloud/apps/files/src/actions/sidebarAction.ts","webpack:///nextcloud/apps/files/src/services/WebdavClient.ts","webpack:///nextcloud/apps/files/src/store/files.ts","webpack:///nextcloud/apps/files/src/store/paths.ts","webpack:///nextcloud/apps/files/src/store/selection.ts","webpack:///nextcloud/apps/files/src/store/uploader.ts","webpack:///nextcloud/apps/files/src/services/SortingService.ts","webpack:///nextcloud/apps/files/src/services/DropServiceUtils.ts","webpack:///nextcloud/apps/files/src/actions/moveOrCopyActionUtils.ts","webpack:///nextcloud/apps/files/src/services/Files.ts","webpack:///nextcloud/apps/files/src/actions/moveOrCopyAction.ts","webpack:///nextcloud/apps/files/src/services/DropService.ts","webpack:///nextcloud/apps/files/src/store/dragging.ts","webpack:///nextcloud/apps/files/src/mixins/filesListWidth.ts","webpack:///nextcloud/apps/files/src/components/BreadCrumbs.vue?vue&type=script&lang=ts","webpack:///nextcloud/apps/files/src/components/BreadCrumbs.vue","webpack://nextcloud/./apps/files/src/components/BreadCrumbs.vue?bc57","webpack://nextcloud/./apps/files/src/components/BreadCrumbs.vue?d357","webpack:///nextcloud/apps/files/src/utils/fileUtils.ts","webpack:///nextcloud/apps/files/src/components/FileEntry.vue","webpack:///nextcloud/apps/files/src/store/actionsmenu.ts","webpack:///nextcloud/apps/files/src/store/renaming.ts","webpack:///nextcloud/node_modules/vue-material-design-icons/FileMultiple.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/FileMultiple.vue?vue&type=script&lang=js","webpack://nextcloud/./node_modules/vue-material-design-icons/FileMultiple.vue?6e9d","webpack:///nextcloud/node_modules/vue-material-design-icons/FileMultiple.vue?vue&type=template&id=27b46e04","webpack:///nextcloud/apps/files/src/components/DragAndDropPreview.vue","webpack:///nextcloud/apps/files/src/components/DragAndDropPreview.vue?vue&type=script&lang=ts","webpack://nextcloud/./apps/files/src/components/DragAndDropPreview.vue?07ad","webpack://nextcloud/./apps/files/src/components/DragAndDropPreview.vue?36f6","webpack:///nextcloud/apps/files/src/utils/dragUtils.ts","webpack:///nextcloud/apps/files/src/components/FileEntryMixin.ts","webpack:///nextcloud/apps/files/src/utils/hashUtils.ts","webpack:///nextcloud/apps/files/src/components/CustomElementRender.vue","webpack:///nextcloud/apps/files/src/components/CustomElementRender.vue?vue&type=script&lang=ts","webpack://nextcloud/./apps/files/src/components/CustomElementRender.vue?5f5c","webpack:///nextcloud/apps/files/src/components/FileEntry/FileEntryActions.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/ArrowLeft.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/ArrowLeft.vue?vue&type=script&lang=js","webpack://nextcloud/./node_modules/vue-material-design-icons/ArrowLeft.vue?f857","webpack:///nextcloud/node_modules/vue-material-design-icons/ArrowLeft.vue?vue&type=template&id=214c9a86","webpack:///nextcloud/apps/files/src/components/FileEntry/FileEntryActions.vue?vue&type=script&lang=ts","webpack://nextcloud/./apps/files/src/components/FileEntry/FileEntryActions.vue?9869","webpack://nextcloud/./apps/files/src/components/FileEntry/FileEntryActions.vue?bea6","webpack://nextcloud/./apps/files/src/components/FileEntry/FileEntryActions.vue?7b52","webpack:///nextcloud/apps/files/src/components/FileEntry/FileEntryCheckbox.vue?vue&type=script&lang=ts","webpack:///nextcloud/apps/files/src/components/FileEntry/FileEntryCheckbox.vue","webpack:///nextcloud/apps/files/src/store/keyboard.ts","webpack://nextcloud/./apps/files/src/components/FileEntry/FileEntryCheckbox.vue?a18b","webpack:///nextcloud/apps/files/src/components/FileEntry/FileEntryName.vue","webpack:///nextcloud/apps/files/src/components/FileEntry/FileEntryName.vue?vue&type=script&lang=ts","webpack://nextcloud/./apps/files/src/components/FileEntry/FileEntryName.vue?98a4","webpack:///nextcloud/apps/files/src/components/FileEntry/FileEntryPreview.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/File.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/File.vue?vue&type=script&lang=js","webpack://nextcloud/./node_modules/vue-material-design-icons/File.vue?245d","webpack:///nextcloud/node_modules/vue-material-design-icons/File.vue?vue&type=template&id=e3c8d598","webpack:///nextcloud/node_modules/vue-material-design-icons/FolderOpen.vue?vue&type=script&lang=js","webpack:///nextcloud/node_modules/vue-material-design-icons/FolderOpen.vue","webpack://nextcloud/./node_modules/vue-material-design-icons/FolderOpen.vue?6818","webpack:///nextcloud/node_modules/vue-material-design-icons/FolderOpen.vue?vue&type=template&id=79cee0a4","webpack:///nextcloud/node_modules/vue-material-design-icons/Key.vue?vue&type=script&lang=js","webpack:///nextcloud/node_modules/vue-material-design-icons/Key.vue","webpack://nextcloud/./node_modules/vue-material-design-icons/Key.vue?157c","webpack:///nextcloud/node_modules/vue-material-design-icons/Key.vue?vue&type=template&id=01a06d54","webpack:///nextcloud/node_modules/vue-material-design-icons/Network.vue?vue&type=script&lang=js","webpack:///nextcloud/node_modules/vue-material-design-icons/Network.vue","webpack://nextcloud/./node_modules/vue-material-design-icons/Network.vue?11eb","webpack:///nextcloud/node_modules/vue-material-design-icons/Network.vue?vue&type=template&id=29f8873c","webpack:///nextcloud/node_modules/vue-material-design-icons/Tag.vue?vue&type=script&lang=js","webpack:///nextcloud/node_modules/vue-material-design-icons/Tag.vue","webpack://nextcloud/./node_modules/vue-material-design-icons/Tag.vue?6116","webpack:///nextcloud/node_modules/vue-material-design-icons/Tag.vue?vue&type=template&id=75dd05e4","webpack:///nextcloud/node_modules/vue-material-design-icons/PlayCircle.vue?vue&type=script&lang=js","webpack:///nextcloud/node_modules/vue-material-design-icons/PlayCircle.vue","webpack://nextcloud/./node_modules/vue-material-design-icons/PlayCircle.vue?0c26","webpack:///nextcloud/node_modules/vue-material-design-icons/PlayCircle.vue?vue&type=template&id=6901b3e6","webpack:///nextcloud/apps/files/src/components/FileEntry/CollectivesIcon.vue?vue&type=script&lang=js","webpack:///nextcloud/apps/files/src/components/FileEntry/CollectivesIcon.vue","webpack://nextcloud/./apps/files/src/components/FileEntry/CollectivesIcon.vue?1937","webpack://nextcloud/./apps/files/src/components/FileEntry/CollectivesIcon.vue?949d","webpack:///nextcloud/apps/files/src/components/FileEntry/FavoriteIcon.vue?vue&type=script&lang=ts","webpack:///nextcloud/apps/files/src/components/FileEntry/FavoriteIcon.vue","webpack://nextcloud/./apps/files/src/components/FileEntry/FavoriteIcon.vue?f7c8","webpack://nextcloud/./apps/files/src/components/FileEntry/FavoriteIcon.vue?62c6","webpack:///nextcloud/apps/files/src/components/FileEntry/FileEntryPreview.vue?vue&type=script&lang=ts","webpack:///nextcloud/apps/files/src/services/LivePhotos.ts","webpack://nextcloud/./apps/files/src/components/FileEntry/FileEntryPreview.vue?8c1f","webpack:///nextcloud/apps/files/src/components/FileEntry.vue?vue&type=script&lang=ts","webpack://nextcloud/./apps/files/src/components/FileEntry.vue?da7c","webpack:///nextcloud/apps/files/src/components/FileEntryGrid.vue?vue&type=script&lang=ts","webpack:///nextcloud/apps/files/src/components/FileEntryGrid.vue","webpack://nextcloud/./apps/files/src/components/FileEntryGrid.vue?bb8e","webpack:///nextcloud/apps/files/src/components/FilesListHeader.vue","webpack:///nextcloud/apps/files/src/components/FilesListHeader.vue?vue&type=script&lang=ts","webpack://nextcloud/./apps/files/src/components/FilesListHeader.vue?349b","webpack:///nextcloud/apps/files/src/components/FilesListTableFooter.vue?vue&type=script&lang=ts","webpack:///nextcloud/apps/files/src/components/FilesListTableFooter.vue","webpack://nextcloud/./apps/files/src/components/FilesListTableFooter.vue?284f","webpack://nextcloud/./apps/files/src/components/FilesListTableFooter.vue?fa4c","webpack:///nextcloud/apps/files/src/components/FilesListTableHeader.vue","webpack:///nextcloud/apps/files/src/mixins/filesSorting.ts","webpack:///nextcloud/apps/files/src/components/FilesListTableHeaderButton.vue?vue&type=script&lang=ts","webpack:///nextcloud/apps/files/src/components/FilesListTableHeaderButton.vue","webpack://nextcloud/./apps/files/src/components/FilesListTableHeaderButton.vue?6c33","webpack://nextcloud/./apps/files/src/components/FilesListTableHeaderButton.vue?e364","webpack:///nextcloud/apps/files/src/components/FilesListTableHeader.vue?vue&type=script&lang=ts","webpack://nextcloud/./apps/files/src/components/FilesListTableHeader.vue?7d8d","webpack://nextcloud/./apps/files/src/components/FilesListTableHeader.vue?b1c9","webpack:///nextcloud/apps/files/src/components/VirtualList.vue","webpack:///nextcloud/apps/files/src/components/VirtualList.vue?vue&type=script&lang=ts","webpack://nextcloud/./apps/files/src/components/VirtualList.vue?37fa","webpack:///nextcloud/apps/files/src/components/FilesListTableHeaderActions.vue","webpack:///nextcloud/apps/files/src/components/FilesListTableHeaderActions.vue?vue&type=script&lang=ts","webpack://nextcloud/./apps/files/src/components/FilesListTableHeaderActions.vue?8cd0","webpack://nextcloud/./apps/files/src/components/FilesListTableHeaderActions.vue?9494","webpack:///nextcloud/apps/files/src/components/FilesListVirtual.vue?vue&type=script&lang=ts","webpack:///nextcloud/apps/files/src/components/FilesListVirtual.vue","webpack://nextcloud/./apps/files/src/components/FilesListVirtual.vue?b904","webpack://nextcloud/./apps/files/src/components/FilesListVirtual.vue?d994","webpack://nextcloud/./apps/files/src/components/FilesListVirtual.vue?3555","webpack:///nextcloud/node_modules/vue-material-design-icons/TrayArrowDown.vue?vue&type=script&lang=js","webpack:///nextcloud/node_modules/vue-material-design-icons/TrayArrowDown.vue","webpack://nextcloud/./node_modules/vue-material-design-icons/TrayArrowDown.vue?a897","webpack:///nextcloud/node_modules/vue-material-design-icons/TrayArrowDown.vue?vue&type=template&id=447c2cd4","webpack:///nextcloud/apps/files/src/components/DragAndDropNotice.vue?vue&type=script&lang=ts","webpack:///nextcloud/apps/files/src/components/DragAndDropNotice.vue","webpack://nextcloud/./apps/files/src/components/DragAndDropNotice.vue?7a27","webpack://nextcloud/./apps/files/src/components/DragAndDropNotice.vue?a2e0","webpack:///nextcloud/apps/files/src/views/FilesList.vue?vue&type=script&lang=ts","webpack://nextcloud/./apps/files/src/views/FilesList.vue?82b5","webpack://nextcloud/./apps/files/src/views/FilesList.vue?1e5b","webpack:///nextcloud/apps/files/src/FilesApp.vue?vue&type=script&lang=ts","webpack://nextcloud/./apps/files/src/FilesApp.vue?597e","webpack:///nextcloud/apps/files/src/main.ts","webpack:///nextcloud/apps/files/src/services/RouterService.ts","webpack:///nextcloud/apps/files/src/services/Settings.js","webpack:///nextcloud/apps/files/src/models/Setting.js","webpack:///nextcloud/node_modules/@nextcloud/upload/dist/assets/index-DiWRcN3o.css","webpack:///nextcloud/apps/files/src/components/BreadCrumbs.vue?vue&type=style&index=0&id=7a939202&prod&lang=scss&scoped=true","webpack:///nextcloud/apps/files/src/components/DragAndDropNotice.vue?vue&type=style&index=0&id=7f8a4132&prod&lang=scss&scoped=true","webpack:///nextcloud/apps/files/src/components/DragAndDropPreview.vue?vue&type=style&index=0&id=775162a4&prod&lang=scss","webpack:///nextcloud/apps/files/src/components/FileEntry/FavoriteIcon.vue?vue&type=style&index=0&id=f2d0cf6e&prod&lang=scss&scoped=true","webpack:///nextcloud/apps/files/src/components/FileEntry/FileEntryActions.vue?vue&type=style&index=0&id=801e4784&prod&lang=scss","webpack:///nextcloud/apps/files/src/components/FileEntry/FileEntryActions.vue?vue&type=style&index=1&id=801e4784&prod&lang=scss&scoped=true","webpack:///nextcloud/apps/files/src/components/FilesListTableFooter.vue?vue&type=style&index=0&id=130ade4f&prod&scoped=true&lang=scss","webpack:///nextcloud/apps/files/src/components/FilesListTableHeader.vue?vue&type=style&index=0&id=6eaeabb8&prod&scoped=true&lang=scss","webpack:///nextcloud/apps/files/src/components/FilesListTableHeaderActions.vue?vue&type=style&index=0&id=1284c4be&prod&scoped=true&lang=scss","webpack:///nextcloud/apps/files/src/components/FilesListTableHeaderButton.vue?vue&type=style&index=0&id=4e97a5c6&prod&scoped=true&lang=scss","webpack:///nextcloud/apps/files/src/components/FilesListVirtual.vue?vue&type=style&index=0&id=1287bfe2&prod&scoped=true&lang=scss","webpack:///nextcloud/apps/files/src/components/FilesListVirtual.vue?vue&type=style&index=1&id=1287bfe2&prod&lang=scss","webpack:///nextcloud/apps/files/src/components/NavigationQuota.vue?vue&type=style&index=0&id=3e968815&prod&lang=scss&scoped=true","webpack:///nextcloud/apps/files/src/views/FilesList.vue?vue&type=style&index=0&id=0e2ac83a&prod&scoped=true&lang=scss","webpack:///nextcloud/apps/files/src/views/Navigation.vue?vue&type=style&index=0&id=66457116&prod&scoped=true&lang=scss","webpack:///nextcloud/apps/files/src/views/Settings.vue?vue&type=style&index=0&id=44764f8d&prod&lang=scss&scoped=true","webpack:///nextcloud/node_modules/is-retry-allowed/index.js","webpack:///nextcloud/node_modules/simple-eta/index.js","webpack://nextcloud/./node_modules/@nextcloud/upload/dist/assets/index-DiWRcN3o.css?9af4","webpack:///nextcloud/node_modules/p-cancelable/index.js","webpack:///nextcloud/node_modules/@nextcloud/upload/node_modules/p-timeout/index.js","webpack:///nextcloud/node_modules/@nextcloud/upload/node_modules/p-queue/dist/priority-queue.js","webpack:///nextcloud/node_modules/@nextcloud/upload/node_modules/p-queue/dist/lower-bound.js","webpack:///nextcloud/node_modules/@nextcloud/upload/node_modules/p-queue/dist/index.js","webpack:///nextcloud/node_modules/axios-retry/dist/esm/index.js","webpack:///nextcloud/node_modules/@nextcloud/upload/node_modules/@nextcloud/l10n/dist/gettext.mjs","webpack:///nextcloud/node_modules/@nextcloud/upload/dist/chunks/index-ifErGYeJ.mjs","webpack:///nextcloud/node_modules/@nextcloud/upload/node_modules/@nextcloud/l10n/dist/chunks/locale-BQFSYg2g.mjs","webpack:///nextcloud/node_modules/@nextcloud/upload/node_modules/@nextcloud/sharing/dist/public.mjs","webpack:///nextcloud/webpack/bootstrap","webpack:///nextcloud/webpack/runtime/compat get default export","webpack:///nextcloud/webpack/runtime/define property getters","webpack:///nextcloud/webpack/runtime/ensure chunk","webpack:///nextcloud/webpack/runtime/get javascript chunk filename","webpack:///nextcloud/webpack/runtime/global","webpack:///nextcloud/webpack/runtime/hasOwnProperty shorthand","webpack:///nextcloud/webpack/runtime/make namespace object","webpack:///nextcloud/webpack/runtime/node module decorator","webpack:///nextcloud/webpack/runtime/runtimeId","webpack:///nextcloud/webpack/runtime/publicPath","webpack:///nextcloud/webpack/runtime/jsonp chunk loading","webpack:///nextcloud/webpack/runtime/nonce","webpack:///nextcloud/webpack/startup"],"sourcesContent":["var deferred = [];\n__webpack_require__.O = (result, chunkIds, fn, priority) => {\n\tif(chunkIds) {\n\t\tpriority = priority || 0;\n\t\tfor(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];\n\t\tdeferred[i] = [chunkIds, fn, priority];\n\t\treturn;\n\t}\n\tvar notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tvar chunkIds = deferred[i][0];\n\t\tvar fn = deferred[i][1];\n\t\tvar priority = deferred[i][2];\n\t\tvar fulfilled = true;\n\t\tfor (var j = 0; j < chunkIds.length; j++) {\n\t\t\tif ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every((key) => (__webpack_require__.O[key](chunkIds[j])))) {\n\t\t\t\tchunkIds.splice(j--, 1);\n\t\t\t} else {\n\t\t\t\tfulfilled = false;\n\t\t\t\tif(priority < notFulfilled) notFulfilled = priority;\n\t\t\t}\n\t\t}\n\t\tif(fulfilled) {\n\t\t\tdeferred.splice(i--, 1)\n\t\t\tvar r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","var inProgress = {};\nvar dataWebpackPrefix = \"nextcloud:\";\n// loadScript function to load a script via script tag\n__webpack_require__.l = (url, done, key, chunkId) => {\n\tif(inProgress[url]) { inProgress[url].push(done); return; }\n\tvar script, needAttach;\n\tif(key !== undefined) {\n\t\tvar scripts = document.getElementsByTagName(\"script\");\n\t\tfor(var i = 0; i < scripts.length; i++) {\n\t\t\tvar s = scripts[i];\n\t\t\tif(s.getAttribute(\"src\") == url || s.getAttribute(\"data-webpack\") == dataWebpackPrefix + key) { script = s; break; }\n\t\t}\n\t}\n\tif(!script) {\n\t\tneedAttach = true;\n\t\tscript = document.createElement('script');\n\n\t\tscript.charset = 'utf-8';\n\t\tscript.timeout = 120;\n\t\tif (__webpack_require__.nc) {\n\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n\t\t}\n\t\tscript.setAttribute(\"data-webpack\", dataWebpackPrefix + key);\n\n\t\tscript.src = url;\n\t}\n\tinProgress[url] = [done];\n\tvar onScriptComplete = (prev, event) => {\n\t\t// avoid mem leaks in IE.\n\t\tscript.onerror = script.onload = null;\n\t\tclearTimeout(timeout);\n\t\tvar doneFns = inProgress[url];\n\t\tdelete inProgress[url];\n\t\tscript.parentNode && script.parentNode.removeChild(script);\n\t\tdoneFns && doneFns.forEach((fn) => (fn(event)));\n\t\tif(prev) return prev(event);\n\t}\n\tvar timeout = setTimeout(onScriptComplete.bind(null, undefined, { type: 'timeout', target: script }), 120000);\n\tscript.onerror = onScriptComplete.bind(null, script.onerror);\n\tscript.onload = onScriptComplete.bind(null, script.onload);\n\tneedAttach && document.head.appendChild(script);\n};","'use strict';\n\nvar has = Object.prototype.hasOwnProperty\n , prefix = '~';\n\n/**\n * Constructor to create a storage for our `EE` objects.\n * An `Events` instance is a plain object whose properties are event names.\n *\n * @constructor\n * @private\n */\nfunction Events() {}\n\n//\n// We try to not inherit from `Object.prototype`. In some engines creating an\n// instance in this way is faster than calling `Object.create(null)` directly.\n// If `Object.create(null)` is not supported we prefix the event names with a\n// character to make sure that the built-in object properties are not\n// overridden or used as an attack vector.\n//\nif (Object.create) {\n Events.prototype = Object.create(null);\n\n //\n // This hack is needed because the `__proto__` property is still inherited in\n // some old browsers like Android 4, iPhone 5.1, Opera 11 and Safari 5.\n //\n if (!new Events().__proto__) prefix = false;\n}\n\n/**\n * Representation of a single event listener.\n *\n * @param {Function} fn The listener function.\n * @param {*} context The context to invoke the listener with.\n * @param {Boolean} [once=false] Specify if the listener is a one-time listener.\n * @constructor\n * @private\n */\nfunction EE(fn, context, once) {\n this.fn = fn;\n this.context = context;\n this.once = once || false;\n}\n\n/**\n * Add a listener for a given event.\n *\n * @param {EventEmitter} emitter Reference to the `EventEmitter` instance.\n * @param {(String|Symbol)} event The event name.\n * @param {Function} fn The listener function.\n * @param {*} context The context to invoke the listener with.\n * @param {Boolean} once Specify if the listener is a one-time listener.\n * @returns {EventEmitter}\n * @private\n */\nfunction addListener(emitter, event, fn, context, once) {\n if (typeof fn !== 'function') {\n throw new TypeError('The listener must be a function');\n }\n\n var listener = new EE(fn, context || emitter, once)\n , evt = prefix ? prefix + event : event;\n\n if (!emitter._events[evt]) emitter._events[evt] = listener, emitter._eventsCount++;\n else if (!emitter._events[evt].fn) emitter._events[evt].push(listener);\n else emitter._events[evt] = [emitter._events[evt], listener];\n\n return emitter;\n}\n\n/**\n * Clear event by name.\n *\n * @param {EventEmitter} emitter Reference to the `EventEmitter` instance.\n * @param {(String|Symbol)} evt The Event name.\n * @private\n */\nfunction clearEvent(emitter, evt) {\n if (--emitter._eventsCount === 0) emitter._events = new Events();\n else delete emitter._events[evt];\n}\n\n/**\n * Minimal `EventEmitter` interface that is molded against the Node.js\n * `EventEmitter` interface.\n *\n * @constructor\n * @public\n */\nfunction EventEmitter() {\n this._events = new Events();\n this._eventsCount = 0;\n}\n\n/**\n * Return an array listing the events for which the emitter has registered\n * listeners.\n *\n * @returns {Array}\n * @public\n */\nEventEmitter.prototype.eventNames = function eventNames() {\n var names = []\n , events\n , name;\n\n if (this._eventsCount === 0) return names;\n\n for (name in (events = this._events)) {\n if (has.call(events, name)) names.push(prefix ? name.slice(1) : name);\n }\n\n if (Object.getOwnPropertySymbols) {\n return names.concat(Object.getOwnPropertySymbols(events));\n }\n\n return names;\n};\n\n/**\n * Return the listeners registered for a given event.\n *\n * @param {(String|Symbol)} event The event name.\n * @returns {Array} The registered listeners.\n * @public\n */\nEventEmitter.prototype.listeners = function listeners(event) {\n var evt = prefix ? prefix + event : event\n , handlers = this._events[evt];\n\n if (!handlers) return [];\n if (handlers.fn) return [handlers.fn];\n\n for (var i = 0, l = handlers.length, ee = new Array(l); i < l; i++) {\n ee[i] = handlers[i].fn;\n }\n\n return ee;\n};\n\n/**\n * Return the number of listeners listening to a given event.\n *\n * @param {(String|Symbol)} event The event name.\n * @returns {Number} The number of listeners.\n * @public\n */\nEventEmitter.prototype.listenerCount = function listenerCount(event) {\n var evt = prefix ? prefix + event : event\n , listeners = this._events[evt];\n\n if (!listeners) return 0;\n if (listeners.fn) return 1;\n return listeners.length;\n};\n\n/**\n * Calls each of the listeners registered for a given event.\n *\n * @param {(String|Symbol)} event The event name.\n * @returns {Boolean} `true` if the event had listeners, else `false`.\n * @public\n */\nEventEmitter.prototype.emit = function emit(event, a1, a2, a3, a4, a5) {\n var evt = prefix ? prefix + event : event;\n\n if (!this._events[evt]) return false;\n\n var listeners = this._events[evt]\n , len = arguments.length\n , args\n , i;\n\n if (listeners.fn) {\n if (listeners.once) this.removeListener(event, listeners.fn, undefined, true);\n\n switch (len) {\n case 1: return listeners.fn.call(listeners.context), true;\n case 2: return listeners.fn.call(listeners.context, a1), true;\n case 3: return listeners.fn.call(listeners.context, a1, a2), true;\n case 4: return listeners.fn.call(listeners.context, a1, a2, a3), true;\n case 5: return listeners.fn.call(listeners.context, a1, a2, a3, a4), true;\n case 6: return listeners.fn.call(listeners.context, a1, a2, a3, a4, a5), true;\n }\n\n for (i = 1, args = new Array(len -1); i < len; i++) {\n args[i - 1] = arguments[i];\n }\n\n listeners.fn.apply(listeners.context, args);\n } else {\n var length = listeners.length\n , j;\n\n for (i = 0; i < length; i++) {\n if (listeners[i].once) this.removeListener(event, listeners[i].fn, undefined, true);\n\n switch (len) {\n case 1: listeners[i].fn.call(listeners[i].context); break;\n case 2: listeners[i].fn.call(listeners[i].context, a1); break;\n case 3: listeners[i].fn.call(listeners[i].context, a1, a2); break;\n case 4: listeners[i].fn.call(listeners[i].context, a1, a2, a3); break;\n default:\n if (!args) for (j = 1, args = new Array(len -1); j < len; j++) {\n args[j - 1] = arguments[j];\n }\n\n listeners[i].fn.apply(listeners[i].context, args);\n }\n }\n }\n\n return true;\n};\n\n/**\n * Add a listener for a given event.\n *\n * @param {(String|Symbol)} event The event name.\n * @param {Function} fn The listener function.\n * @param {*} [context=this] The context to invoke the listener with.\n * @returns {EventEmitter} `this`.\n * @public\n */\nEventEmitter.prototype.on = function on(event, fn, context) {\n return addListener(this, event, fn, context, false);\n};\n\n/**\n * Add a one-time listener for a given event.\n *\n * @param {(String|Symbol)} event The event name.\n * @param {Function} fn The listener function.\n * @param {*} [context=this] The context to invoke the listener with.\n * @returns {EventEmitter} `this`.\n * @public\n */\nEventEmitter.prototype.once = function once(event, fn, context) {\n return addListener(this, event, fn, context, true);\n};\n\n/**\n * Remove the listeners of a given event.\n *\n * @param {(String|Symbol)} event The event name.\n * @param {Function} fn Only remove the listeners that match this function.\n * @param {*} context Only remove the listeners that have this context.\n * @param {Boolean} once Only remove one-time listeners.\n * @returns {EventEmitter} `this`.\n * @public\n */\nEventEmitter.prototype.removeListener = function removeListener(event, fn, context, once) {\n var evt = prefix ? prefix + event : event;\n\n if (!this._events[evt]) return this;\n if (!fn) {\n clearEvent(this, evt);\n return this;\n }\n\n var listeners = this._events[evt];\n\n if (listeners.fn) {\n if (\n listeners.fn === fn &&\n (!once || listeners.once) &&\n (!context || listeners.context === context)\n ) {\n clearEvent(this, evt);\n }\n } else {\n for (var i = 0, events = [], length = listeners.length; i < length; i++) {\n if (\n listeners[i].fn !== fn ||\n (once && !listeners[i].once) ||\n (context && listeners[i].context !== context)\n ) {\n events.push(listeners[i]);\n }\n }\n\n //\n // Reset the array, or remove it completely if we have no more listeners.\n //\n if (events.length) this._events[evt] = events.length === 1 ? events[0] : events;\n else clearEvent(this, evt);\n }\n\n return this;\n};\n\n/**\n * Remove all listeners, or those of the specified event.\n *\n * @param {(String|Symbol)} [event] The event name.\n * @returns {EventEmitter} `this`.\n * @public\n */\nEventEmitter.prototype.removeAllListeners = function removeAllListeners(event) {\n var evt;\n\n if (event) {\n evt = prefix ? prefix + event : event;\n if (this._events[evt]) clearEvent(this, evt);\n } else {\n this._events = new Events();\n this._eventsCount = 0;\n }\n\n return this;\n};\n\n//\n// Alias methods names because people roll like that.\n//\nEventEmitter.prototype.off = EventEmitter.prototype.removeListener;\nEventEmitter.prototype.addListener = EventEmitter.prototype.on;\n\n//\n// Expose the prefix.\n//\nEventEmitter.prefixed = prefix;\n\n//\n// Allow `EventEmitter` to be imported as module namespace.\n//\nEventEmitter.EventEmitter = EventEmitter;\n\n//\n// Expose the module.\n//\nif ('undefined' !== typeof module) {\n module.exports = EventEmitter;\n}\n","/**\n * SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { createPinia } from 'pinia';\nexport const pinia = createPinia();\n","const token = '%[a-f0-9]{2}';\nconst singleMatcher = new RegExp('(' + token + ')|([^%]+?)', 'gi');\nconst multiMatcher = new RegExp('(' + token + ')+', 'gi');\n\nfunction decodeComponents(components, split) {\n\ttry {\n\t\t// Try to decode the entire string first\n\t\treturn [decodeURIComponent(components.join(''))];\n\t} catch {\n\t\t// Do nothing\n\t}\n\n\tif (components.length === 1) {\n\t\treturn components;\n\t}\n\n\tsplit = split || 1;\n\n\t// Split the array in 2 parts\n\tconst left = components.slice(0, split);\n\tconst right = components.slice(split);\n\n\treturn Array.prototype.concat.call([], decodeComponents(left), decodeComponents(right));\n}\n\nfunction decode(input) {\n\ttry {\n\t\treturn decodeURIComponent(input);\n\t} catch {\n\t\tlet tokens = input.match(singleMatcher) || [];\n\n\t\tfor (let i = 1; i < tokens.length; i++) {\n\t\t\tinput = decodeComponents(tokens, i).join('');\n\n\t\t\ttokens = input.match(singleMatcher) || [];\n\t\t}\n\n\t\treturn input;\n\t}\n}\n\nfunction customDecodeURIComponent(input) {\n\t// Keep track of all the replacements and prefill the map with the `BOM`\n\tconst replaceMap = {\n\t\t'%FE%FF': '\\uFFFD\\uFFFD',\n\t\t'%FF%FE': '\\uFFFD\\uFFFD',\n\t};\n\n\tlet match = multiMatcher.exec(input);\n\twhile (match) {\n\t\ttry {\n\t\t\t// Decode as big chunks as possible\n\t\t\treplaceMap[match[0]] = decodeURIComponent(match[0]);\n\t\t} catch {\n\t\t\tconst result = decode(match[0]);\n\n\t\t\tif (result !== match[0]) {\n\t\t\t\treplaceMap[match[0]] = result;\n\t\t\t}\n\t\t}\n\n\t\tmatch = multiMatcher.exec(input);\n\t}\n\n\t// Add `%C2` at the end of the map to make sure it does not replace the combinator before everything else\n\treplaceMap['%C2'] = '\\uFFFD';\n\n\tconst entries = Object.keys(replaceMap);\n\n\tfor (const key of entries) {\n\t\t// Replace all decoded components\n\t\tinput = input.replace(new RegExp(key, 'g'), replaceMap[key]);\n\t}\n\n\treturn input;\n}\n\nexport default function decodeUriComponent(encodedURI) {\n\tif (typeof encodedURI !== 'string') {\n\t\tthrow new TypeError('Expected `encodedURI` to be of type `string`, got `' + typeof encodedURI + '`');\n\t}\n\n\ttry {\n\t\t// Try the built in decoder first\n\t\treturn decodeURIComponent(encodedURI);\n\t} catch {\n\t\t// Fallback to a more advanced decoder\n\t\treturn customDecodeURIComponent(encodedURI);\n\t}\n}\n","export default function splitOnFirst(string, separator) {\n\tif (!(typeof string === 'string' && typeof separator === 'string')) {\n\t\tthrow new TypeError('Expected the arguments to be of type `string`');\n\t}\n\n\tif (string === '' || separator === '') {\n\t\treturn [];\n\t}\n\n\tconst separatorIndex = string.indexOf(separator);\n\n\tif (separatorIndex === -1) {\n\t\treturn [];\n\t}\n\n\treturn [\n\t\tstring.slice(0, separatorIndex),\n\t\tstring.slice(separatorIndex + separator.length)\n\t];\n}\n","export function includeKeys(object, predicate) {\n\tconst result = {};\n\n\tif (Array.isArray(predicate)) {\n\t\tfor (const key of predicate) {\n\t\t\tconst descriptor = Object.getOwnPropertyDescriptor(object, key);\n\t\t\tif (descriptor?.enumerable) {\n\t\t\t\tObject.defineProperty(result, key, descriptor);\n\t\t\t}\n\t\t}\n\t} else {\n\t\t// `Reflect.ownKeys()` is required to retrieve symbol properties\n\t\tfor (const key of Reflect.ownKeys(object)) {\n\t\t\tconst descriptor = Object.getOwnPropertyDescriptor(object, key);\n\t\t\tif (descriptor.enumerable) {\n\t\t\t\tconst value = object[key];\n\t\t\t\tif (predicate(key, value, object)) {\n\t\t\t\t\tObject.defineProperty(result, key, descriptor);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\treturn result;\n}\n\nexport function excludeKeys(object, predicate) {\n\tif (Array.isArray(predicate)) {\n\t\tconst set = new Set(predicate);\n\t\treturn includeKeys(object, key => !set.has(key));\n\t}\n\n\treturn includeKeys(object, (key, value, object) => !predicate(key, value, object));\n}\n","import decodeComponent from 'decode-uri-component';\nimport splitOnFirst from 'split-on-first';\nimport {includeKeys} from 'filter-obj';\n\nconst isNullOrUndefined = value => value === null || value === undefined;\n\n// eslint-disable-next-line unicorn/prefer-code-point\nconst strictUriEncode = string => encodeURIComponent(string).replaceAll(/[!'()*]/g, x => `%${x.charCodeAt(0).toString(16).toUpperCase()}`);\n\nconst encodeFragmentIdentifier = Symbol('encodeFragmentIdentifier');\n\nfunction encoderForArrayFormat(options) {\n\tswitch (options.arrayFormat) {\n\t\tcase 'index': {\n\t\t\treturn key => (result, value) => {\n\t\t\t\tconst index = result.length;\n\n\t\t\t\tif (\n\t\t\t\t\tvalue === undefined\n\t\t\t\t\t|| (options.skipNull && value === null)\n\t\t\t\t\t|| (options.skipEmptyString && value === '')\n\t\t\t\t) {\n\t\t\t\t\treturn result;\n\t\t\t\t}\n\n\t\t\t\tif (value === null) {\n\t\t\t\t\treturn [\n\t\t\t\t\t\t...result, [encode(key, options), '[', index, ']'].join(''),\n\t\t\t\t\t];\n\t\t\t\t}\n\n\t\t\t\treturn [\n\t\t\t\t\t...result,\n\t\t\t\t\t[encode(key, options), '[', encode(index, options), ']=', encode(value, options)].join(''),\n\t\t\t\t];\n\t\t\t};\n\t\t}\n\n\t\tcase 'bracket': {\n\t\t\treturn key => (result, value) => {\n\t\t\t\tif (\n\t\t\t\t\tvalue === undefined\n\t\t\t\t\t|| (options.skipNull && value === null)\n\t\t\t\t\t|| (options.skipEmptyString && value === '')\n\t\t\t\t) {\n\t\t\t\t\treturn result;\n\t\t\t\t}\n\n\t\t\t\tif (value === null) {\n\t\t\t\t\treturn [\n\t\t\t\t\t\t...result,\n\t\t\t\t\t\t[encode(key, options), '[]'].join(''),\n\t\t\t\t\t];\n\t\t\t\t}\n\n\t\t\t\treturn [\n\t\t\t\t\t...result,\n\t\t\t\t\t[encode(key, options), '[]=', encode(value, options)].join(''),\n\t\t\t\t];\n\t\t\t};\n\t\t}\n\n\t\tcase 'colon-list-separator': {\n\t\t\treturn key => (result, value) => {\n\t\t\t\tif (\n\t\t\t\t\tvalue === undefined\n\t\t\t\t\t|| (options.skipNull && value === null)\n\t\t\t\t\t|| (options.skipEmptyString && value === '')\n\t\t\t\t) {\n\t\t\t\t\treturn result;\n\t\t\t\t}\n\n\t\t\t\tif (value === null) {\n\t\t\t\t\treturn [\n\t\t\t\t\t\t...result,\n\t\t\t\t\t\t[encode(key, options), ':list='].join(''),\n\t\t\t\t\t];\n\t\t\t\t}\n\n\t\t\t\treturn [\n\t\t\t\t\t...result,\n\t\t\t\t\t[encode(key, options), ':list=', encode(value, options)].join(''),\n\t\t\t\t];\n\t\t\t};\n\t\t}\n\n\t\tcase 'comma':\n\t\tcase 'separator':\n\t\tcase 'bracket-separator': {\n\t\t\tconst keyValueSeparator = options.arrayFormat === 'bracket-separator'\n\t\t\t\t? '[]='\n\t\t\t\t: '=';\n\n\t\t\treturn key => (result, value) => {\n\t\t\t\tif (\n\t\t\t\t\tvalue === undefined\n\t\t\t\t\t|| (options.skipNull && value === null)\n\t\t\t\t\t|| (options.skipEmptyString && value === '')\n\t\t\t\t) {\n\t\t\t\t\treturn result;\n\t\t\t\t}\n\n\t\t\t\t// Translate null to an empty string so that it doesn't serialize as 'null'\n\t\t\t\tvalue = value === null ? '' : value;\n\n\t\t\t\tif (result.length === 0) {\n\t\t\t\t\treturn [[encode(key, options), keyValueSeparator, encode(value, options)].join('')];\n\t\t\t\t}\n\n\t\t\t\treturn [[result, encode(value, options)].join(options.arrayFormatSeparator)];\n\t\t\t};\n\t\t}\n\n\t\tdefault: {\n\t\t\treturn key => (result, value) => {\n\t\t\t\tif (\n\t\t\t\t\tvalue === undefined\n\t\t\t\t\t|| (options.skipNull && value === null)\n\t\t\t\t\t|| (options.skipEmptyString && value === '')\n\t\t\t\t) {\n\t\t\t\t\treturn result;\n\t\t\t\t}\n\n\t\t\t\tif (value === null) {\n\t\t\t\t\treturn [\n\t\t\t\t\t\t...result,\n\t\t\t\t\t\tencode(key, options),\n\t\t\t\t\t];\n\t\t\t\t}\n\n\t\t\t\treturn [\n\t\t\t\t\t...result,\n\t\t\t\t\t[encode(key, options), '=', encode(value, options)].join(''),\n\t\t\t\t];\n\t\t\t};\n\t\t}\n\t}\n}\n\nfunction parserForArrayFormat(options) {\n\tlet result;\n\n\tswitch (options.arrayFormat) {\n\t\tcase 'index': {\n\t\t\treturn (key, value, accumulator) => {\n\t\t\t\tresult = /\\[(\\d*)]$/.exec(key);\n\n\t\t\t\tkey = key.replace(/\\[\\d*]$/, '');\n\n\t\t\t\tif (!result) {\n\t\t\t\t\taccumulator[key] = value;\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tif (accumulator[key] === undefined) {\n\t\t\t\t\taccumulator[key] = {};\n\t\t\t\t}\n\n\t\t\t\taccumulator[key][result[1]] = value;\n\t\t\t};\n\t\t}\n\n\t\tcase 'bracket': {\n\t\t\treturn (key, value, accumulator) => {\n\t\t\t\tresult = /(\\[])$/.exec(key);\n\t\t\t\tkey = key.replace(/\\[]$/, '');\n\n\t\t\t\tif (!result) {\n\t\t\t\t\taccumulator[key] = value;\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tif (accumulator[key] === undefined) {\n\t\t\t\t\taccumulator[key] = [value];\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\taccumulator[key] = [...accumulator[key], value];\n\t\t\t};\n\t\t}\n\n\t\tcase 'colon-list-separator': {\n\t\t\treturn (key, value, accumulator) => {\n\t\t\t\tresult = /(:list)$/.exec(key);\n\t\t\t\tkey = key.replace(/:list$/, '');\n\n\t\t\t\tif (!result) {\n\t\t\t\t\taccumulator[key] = value;\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tif (accumulator[key] === undefined) {\n\t\t\t\t\taccumulator[key] = [value];\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\taccumulator[key] = [...accumulator[key], value];\n\t\t\t};\n\t\t}\n\n\t\tcase 'comma':\n\t\tcase 'separator': {\n\t\t\treturn (key, value, accumulator) => {\n\t\t\t\tconst isArray = typeof value === 'string' && value.includes(options.arrayFormatSeparator);\n\t\t\t\tconst isEncodedArray = (typeof value === 'string' && !isArray && decode(value, options).includes(options.arrayFormatSeparator));\n\t\t\t\tvalue = isEncodedArray ? decode(value, options) : value;\n\t\t\t\tconst newValue = isArray || isEncodedArray ? value.split(options.arrayFormatSeparator).map(item => decode(item, options)) : (value === null ? value : decode(value, options));\n\t\t\t\taccumulator[key] = newValue;\n\t\t\t};\n\t\t}\n\n\t\tcase 'bracket-separator': {\n\t\t\treturn (key, value, accumulator) => {\n\t\t\t\tconst isArray = /(\\[])$/.test(key);\n\t\t\t\tkey = key.replace(/\\[]$/, '');\n\n\t\t\t\tif (!isArray) {\n\t\t\t\t\taccumulator[key] = value ? decode(value, options) : value;\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tconst arrayValue = value === null\n\t\t\t\t\t? []\n\t\t\t\t\t: value.split(options.arrayFormatSeparator).map(item => decode(item, options));\n\n\t\t\t\tif (accumulator[key] === undefined) {\n\t\t\t\t\taccumulator[key] = arrayValue;\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\taccumulator[key] = [...accumulator[key], ...arrayValue];\n\t\t\t};\n\t\t}\n\n\t\tdefault: {\n\t\t\treturn (key, value, accumulator) => {\n\t\t\t\tif (accumulator[key] === undefined) {\n\t\t\t\t\taccumulator[key] = value;\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\taccumulator[key] = [...[accumulator[key]].flat(), value];\n\t\t\t};\n\t\t}\n\t}\n}\n\nfunction validateArrayFormatSeparator(value) {\n\tif (typeof value !== 'string' || value.length !== 1) {\n\t\tthrow new TypeError('arrayFormatSeparator must be single character string');\n\t}\n}\n\nfunction encode(value, options) {\n\tif (options.encode) {\n\t\treturn options.strict ? strictUriEncode(value) : encodeURIComponent(value);\n\t}\n\n\treturn value;\n}\n\nfunction decode(value, options) {\n\tif (options.decode) {\n\t\treturn decodeComponent(value);\n\t}\n\n\treturn value;\n}\n\nfunction keysSorter(input) {\n\tif (Array.isArray(input)) {\n\t\treturn input.sort();\n\t}\n\n\tif (typeof input === 'object') {\n\t\treturn keysSorter(Object.keys(input))\n\t\t\t.sort((a, b) => Number(a) - Number(b))\n\t\t\t.map(key => input[key]);\n\t}\n\n\treturn input;\n}\n\nfunction removeHash(input) {\n\tconst hashStart = input.indexOf('#');\n\tif (hashStart !== -1) {\n\t\tinput = input.slice(0, hashStart);\n\t}\n\n\treturn input;\n}\n\nfunction getHash(url) {\n\tlet hash = '';\n\tconst hashStart = url.indexOf('#');\n\tif (hashStart !== -1) {\n\t\thash = url.slice(hashStart);\n\t}\n\n\treturn hash;\n}\n\nfunction parseValue(value, options) {\n\tif (options.parseNumbers && !Number.isNaN(Number(value)) && (typeof value === 'string' && value.trim() !== '')) {\n\t\tvalue = Number(value);\n\t} else if (options.parseBooleans && value !== null && (value.toLowerCase() === 'true' || value.toLowerCase() === 'false')) {\n\t\tvalue = value.toLowerCase() === 'true';\n\t}\n\n\treturn value;\n}\n\nexport function extract(input) {\n\tinput = removeHash(input);\n\tconst queryStart = input.indexOf('?');\n\tif (queryStart === -1) {\n\t\treturn '';\n\t}\n\n\treturn input.slice(queryStart + 1);\n}\n\nexport function parse(query, options) {\n\toptions = {\n\t\tdecode: true,\n\t\tsort: true,\n\t\tarrayFormat: 'none',\n\t\tarrayFormatSeparator: ',',\n\t\tparseNumbers: false,\n\t\tparseBooleans: false,\n\t\t...options,\n\t};\n\n\tvalidateArrayFormatSeparator(options.arrayFormatSeparator);\n\n\tconst formatter = parserForArrayFormat(options);\n\n\t// Create an object with no prototype\n\tconst returnValue = Object.create(null);\n\n\tif (typeof query !== 'string') {\n\t\treturn returnValue;\n\t}\n\n\tquery = query.trim().replace(/^[?#&]/, '');\n\n\tif (!query) {\n\t\treturn returnValue;\n\t}\n\n\tfor (const parameter of query.split('&')) {\n\t\tif (parameter === '') {\n\t\t\tcontinue;\n\t\t}\n\n\t\tconst parameter_ = options.decode ? parameter.replaceAll('+', ' ') : parameter;\n\n\t\tlet [key, value] = splitOnFirst(parameter_, '=');\n\n\t\tif (key === undefined) {\n\t\t\tkey = parameter_;\n\t\t}\n\n\t\t// Missing `=` should be `null`:\n\t\t// http://w3.org/TR/2012/WD-url-20120524/#collect-url-parameters\n\t\tvalue = value === undefined ? null : (['comma', 'separator', 'bracket-separator'].includes(options.arrayFormat) ? value : decode(value, options));\n\t\tformatter(decode(key, options), value, returnValue);\n\t}\n\n\tfor (const [key, value] of Object.entries(returnValue)) {\n\t\tif (typeof value === 'object' && value !== null) {\n\t\t\tfor (const [key2, value2] of Object.entries(value)) {\n\t\t\t\tvalue[key2] = parseValue(value2, options);\n\t\t\t}\n\t\t} else {\n\t\t\treturnValue[key] = parseValue(value, options);\n\t\t}\n\t}\n\n\tif (options.sort === false) {\n\t\treturn returnValue;\n\t}\n\n\t// TODO: Remove the use of `reduce`.\n\t// eslint-disable-next-line unicorn/no-array-reduce\n\treturn (options.sort === true ? Object.keys(returnValue).sort() : Object.keys(returnValue).sort(options.sort)).reduce((result, key) => {\n\t\tconst value = returnValue[key];\n\t\tresult[key] = Boolean(value) && typeof value === 'object' && !Array.isArray(value) ? keysSorter(value) : value;\n\t\treturn result;\n\t}, Object.create(null));\n}\n\nexport function stringify(object, options) {\n\tif (!object) {\n\t\treturn '';\n\t}\n\n\toptions = {\n\t\tencode: true,\n\t\tstrict: true,\n\t\tarrayFormat: 'none',\n\t\tarrayFormatSeparator: ',',\n\t\t...options,\n\t};\n\n\tvalidateArrayFormatSeparator(options.arrayFormatSeparator);\n\n\tconst shouldFilter = key => (\n\t\t(options.skipNull && isNullOrUndefined(object[key]))\n\t\t|| (options.skipEmptyString && object[key] === '')\n\t);\n\n\tconst formatter = encoderForArrayFormat(options);\n\n\tconst objectCopy = {};\n\n\tfor (const [key, value] of Object.entries(object)) {\n\t\tif (!shouldFilter(key)) {\n\t\t\tobjectCopy[key] = value;\n\t\t}\n\t}\n\n\tconst keys = Object.keys(objectCopy);\n\n\tif (options.sort !== false) {\n\t\tkeys.sort(options.sort);\n\t}\n\n\treturn keys.map(key => {\n\t\tconst value = object[key];\n\n\t\tif (value === undefined) {\n\t\t\treturn '';\n\t\t}\n\n\t\tif (value === null) {\n\t\t\treturn encode(key, options);\n\t\t}\n\n\t\tif (Array.isArray(value)) {\n\t\t\tif (value.length === 0 && options.arrayFormat === 'bracket-separator') {\n\t\t\t\treturn encode(key, options) + '[]';\n\t\t\t}\n\n\t\t\treturn value\n\t\t\t\t.reduce(formatter(key), [])\n\t\t\t\t.join('&');\n\t\t}\n\n\t\treturn encode(key, options) + '=' + encode(value, options);\n\t}).filter(x => x.length > 0).join('&');\n}\n\nexport function parseUrl(url, options) {\n\toptions = {\n\t\tdecode: true,\n\t\t...options,\n\t};\n\n\tlet [url_, hash] = splitOnFirst(url, '#');\n\n\tif (url_ === undefined) {\n\t\turl_ = url;\n\t}\n\n\treturn {\n\t\turl: url_?.split('?')?.[0] ?? '',\n\t\tquery: parse(extract(url), options),\n\t\t...(options && options.parseFragmentIdentifier && hash ? {fragmentIdentifier: decode(hash, options)} : {}),\n\t};\n}\n\nexport function stringifyUrl(object, options) {\n\toptions = {\n\t\tencode: true,\n\t\tstrict: true,\n\t\t[encodeFragmentIdentifier]: true,\n\t\t...options,\n\t};\n\n\tconst url = removeHash(object.url).split('?')[0] || '';\n\tconst queryFromUrl = extract(object.url);\n\n\tconst query = {\n\t\t...parse(queryFromUrl, {sort: false}),\n\t\t...object.query,\n\t};\n\n\tlet queryString = stringify(query, options);\n\tqueryString &&= `?${queryString}`;\n\n\tlet hash = getHash(object.url);\n\tif (typeof object.fragmentIdentifier === 'string') {\n\t\tconst urlObjectForFragmentEncode = new URL(url);\n\t\turlObjectForFragmentEncode.hash = object.fragmentIdentifier;\n\t\thash = options[encodeFragmentIdentifier] ? urlObjectForFragmentEncode.hash : `#${object.fragmentIdentifier}`;\n\t}\n\n\treturn `${url}${queryString}${hash}`;\n}\n\nexport function pick(input, filter, options) {\n\toptions = {\n\t\tparseFragmentIdentifier: true,\n\t\t[encodeFragmentIdentifier]: false,\n\t\t...options,\n\t};\n\n\tconst {url, query, fragmentIdentifier} = parseUrl(input, options);\n\n\treturn stringifyUrl({\n\t\turl,\n\t\tquery: includeKeys(query, filter),\n\t\tfragmentIdentifier,\n\t}, options);\n}\n\nexport function exclude(input, filter, options) {\n\tconst exclusionFilter = Array.isArray(filter) ? key => !filter.includes(key) : (key, value) => !filter(key, value);\n\n\treturn pick(input, exclusionFilter, options);\n}\n","import * as queryString from './base.js';\n\nexport default queryString;\n","/*!\n * vue-router v3.6.5\n * (c) 2022 Evan You\n * @license MIT\n */\n/* */\n\nfunction assert (condition, message) {\n if (!condition) {\n throw new Error((\"[vue-router] \" + message))\n }\n}\n\nfunction warn (condition, message) {\n if (!condition) {\n typeof console !== 'undefined' && console.warn((\"[vue-router] \" + message));\n }\n}\n\nfunction extend (a, b) {\n for (var key in b) {\n a[key] = b[key];\n }\n return a\n}\n\n/* */\n\nvar encodeReserveRE = /[!'()*]/g;\nvar encodeReserveReplacer = function (c) { return '%' + c.charCodeAt(0).toString(16); };\nvar commaRE = /%2C/g;\n\n// fixed encodeURIComponent which is more conformant to RFC3986:\n// - escapes [!'()*]\n// - preserve commas\nvar encode = function (str) { return encodeURIComponent(str)\n .replace(encodeReserveRE, encodeReserveReplacer)\n .replace(commaRE, ','); };\n\nfunction decode (str) {\n try {\n return decodeURIComponent(str)\n } catch (err) {\n if (process.env.NODE_ENV !== 'production') {\n warn(false, (\"Error decoding \\\"\" + str + \"\\\". Leaving it intact.\"));\n }\n }\n return str\n}\n\nfunction resolveQuery (\n query,\n extraQuery,\n _parseQuery\n) {\n if ( extraQuery === void 0 ) extraQuery = {};\n\n var parse = _parseQuery || parseQuery;\n var parsedQuery;\n try {\n parsedQuery = parse(query || '');\n } catch (e) {\n process.env.NODE_ENV !== 'production' && warn(false, e.message);\n parsedQuery = {};\n }\n for (var key in extraQuery) {\n var value = extraQuery[key];\n parsedQuery[key] = Array.isArray(value)\n ? value.map(castQueryParamValue)\n : castQueryParamValue(value);\n }\n return parsedQuery\n}\n\nvar castQueryParamValue = function (value) { return (value == null || typeof value === 'object' ? value : String(value)); };\n\nfunction parseQuery (query) {\n var res = {};\n\n query = query.trim().replace(/^(\\?|#|&)/, '');\n\n if (!query) {\n return res\n }\n\n query.split('&').forEach(function (param) {\n var parts = param.replace(/\\+/g, ' ').split('=');\n var key = decode(parts.shift());\n var val = parts.length > 0 ? decode(parts.join('=')) : null;\n\n if (res[key] === undefined) {\n res[key] = val;\n } else if (Array.isArray(res[key])) {\n res[key].push(val);\n } else {\n res[key] = [res[key], val];\n }\n });\n\n return res\n}\n\nfunction stringifyQuery (obj) {\n var res = obj\n ? Object.keys(obj)\n .map(function (key) {\n var val = obj[key];\n\n if (val === undefined) {\n return ''\n }\n\n if (val === null) {\n return encode(key)\n }\n\n if (Array.isArray(val)) {\n var result = [];\n val.forEach(function (val2) {\n if (val2 === undefined) {\n return\n }\n if (val2 === null) {\n result.push(encode(key));\n } else {\n result.push(encode(key) + '=' + encode(val2));\n }\n });\n return result.join('&')\n }\n\n return encode(key) + '=' + encode(val)\n })\n .filter(function (x) { return x.length > 0; })\n .join('&')\n : null;\n return res ? (\"?\" + res) : ''\n}\n\n/* */\n\nvar trailingSlashRE = /\\/?$/;\n\nfunction createRoute (\n record,\n location,\n redirectedFrom,\n router\n) {\n var stringifyQuery = router && router.options.stringifyQuery;\n\n var query = location.query || {};\n try {\n query = clone(query);\n } catch (e) {}\n\n var route = {\n name: location.name || (record && record.name),\n meta: (record && record.meta) || {},\n path: location.path || '/',\n hash: location.hash || '',\n query: query,\n params: location.params || {},\n fullPath: getFullPath(location, stringifyQuery),\n matched: record ? formatMatch(record) : []\n };\n if (redirectedFrom) {\n route.redirectedFrom = getFullPath(redirectedFrom, stringifyQuery);\n }\n return Object.freeze(route)\n}\n\nfunction clone (value) {\n if (Array.isArray(value)) {\n return value.map(clone)\n } else if (value && typeof value === 'object') {\n var res = {};\n for (var key in value) {\n res[key] = clone(value[key]);\n }\n return res\n } else {\n return value\n }\n}\n\n// the starting route that represents the initial state\nvar START = createRoute(null, {\n path: '/'\n});\n\nfunction formatMatch (record) {\n var res = [];\n while (record) {\n res.unshift(record);\n record = record.parent;\n }\n return res\n}\n\nfunction getFullPath (\n ref,\n _stringifyQuery\n) {\n var path = ref.path;\n var query = ref.query; if ( query === void 0 ) query = {};\n var hash = ref.hash; if ( hash === void 0 ) hash = '';\n\n var stringify = _stringifyQuery || stringifyQuery;\n return (path || '/') + stringify(query) + hash\n}\n\nfunction isSameRoute (a, b, onlyPath) {\n if (b === START) {\n return a === b\n } else if (!b) {\n return false\n } else if (a.path && b.path) {\n return a.path.replace(trailingSlashRE, '') === b.path.replace(trailingSlashRE, '') && (onlyPath ||\n a.hash === b.hash &&\n isObjectEqual(a.query, b.query))\n } else if (a.name && b.name) {\n return (\n a.name === b.name &&\n (onlyPath || (\n a.hash === b.hash &&\n isObjectEqual(a.query, b.query) &&\n isObjectEqual(a.params, b.params))\n )\n )\n } else {\n return false\n }\n}\n\nfunction isObjectEqual (a, b) {\n if ( a === void 0 ) a = {};\n if ( b === void 0 ) b = {};\n\n // handle null value #1566\n if (!a || !b) { return a === b }\n var aKeys = Object.keys(a).sort();\n var bKeys = Object.keys(b).sort();\n if (aKeys.length !== bKeys.length) {\n return false\n }\n return aKeys.every(function (key, i) {\n var aVal = a[key];\n var bKey = bKeys[i];\n if (bKey !== key) { return false }\n var bVal = b[key];\n // query values can be null and undefined\n if (aVal == null || bVal == null) { return aVal === bVal }\n // check nested equality\n if (typeof aVal === 'object' && typeof bVal === 'object') {\n return isObjectEqual(aVal, bVal)\n }\n return String(aVal) === String(bVal)\n })\n}\n\nfunction isIncludedRoute (current, target) {\n return (\n current.path.replace(trailingSlashRE, '/').indexOf(\n target.path.replace(trailingSlashRE, '/')\n ) === 0 &&\n (!target.hash || current.hash === target.hash) &&\n queryIncludes(current.query, target.query)\n )\n}\n\nfunction queryIncludes (current, target) {\n for (var key in target) {\n if (!(key in current)) {\n return false\n }\n }\n return true\n}\n\nfunction handleRouteEntered (route) {\n for (var i = 0; i < route.matched.length; i++) {\n var record = route.matched[i];\n for (var name in record.instances) {\n var instance = record.instances[name];\n var cbs = record.enteredCbs[name];\n if (!instance || !cbs) { continue }\n delete record.enteredCbs[name];\n for (var i$1 = 0; i$1 < cbs.length; i$1++) {\n if (!instance._isBeingDestroyed) { cbs[i$1](instance); }\n }\n }\n }\n}\n\nvar View = {\n name: 'RouterView',\n functional: true,\n props: {\n name: {\n type: String,\n default: 'default'\n }\n },\n render: function render (_, ref) {\n var props = ref.props;\n var children = ref.children;\n var parent = ref.parent;\n var data = ref.data;\n\n // used by devtools to display a router-view badge\n data.routerView = true;\n\n // directly use parent context's createElement() function\n // so that components rendered by router-view can resolve named slots\n var h = parent.$createElement;\n var name = props.name;\n var route = parent.$route;\n var cache = parent._routerViewCache || (parent._routerViewCache = {});\n\n // determine current view depth, also check to see if the tree\n // has been toggled inactive but kept-alive.\n var depth = 0;\n var inactive = false;\n while (parent && parent._routerRoot !== parent) {\n var vnodeData = parent.$vnode ? parent.$vnode.data : {};\n if (vnodeData.routerView) {\n depth++;\n }\n if (vnodeData.keepAlive && parent._directInactive && parent._inactive) {\n inactive = true;\n }\n parent = parent.$parent;\n }\n data.routerViewDepth = depth;\n\n // render previous view if the tree is inactive and kept-alive\n if (inactive) {\n var cachedData = cache[name];\n var cachedComponent = cachedData && cachedData.component;\n if (cachedComponent) {\n // #2301\n // pass props\n if (cachedData.configProps) {\n fillPropsinData(cachedComponent, data, cachedData.route, cachedData.configProps);\n }\n return h(cachedComponent, data, children)\n } else {\n // render previous empty view\n return h()\n }\n }\n\n var matched = route.matched[depth];\n var component = matched && matched.components[name];\n\n // render empty node if no matched route or no config component\n if (!matched || !component) {\n cache[name] = null;\n return h()\n }\n\n // cache component\n cache[name] = { component: component };\n\n // attach instance registration hook\n // this will be called in the instance's injected lifecycle hooks\n data.registerRouteInstance = function (vm, val) {\n // val could be undefined for unregistration\n var current = matched.instances[name];\n if (\n (val && current !== vm) ||\n (!val && current === vm)\n ) {\n matched.instances[name] = val;\n }\n }\n\n // also register instance in prepatch hook\n // in case the same component instance is reused across different routes\n ;(data.hook || (data.hook = {})).prepatch = function (_, vnode) {\n matched.instances[name] = vnode.componentInstance;\n };\n\n // register instance in init hook\n // in case kept-alive component be actived when routes changed\n data.hook.init = function (vnode) {\n if (vnode.data.keepAlive &&\n vnode.componentInstance &&\n vnode.componentInstance !== matched.instances[name]\n ) {\n matched.instances[name] = vnode.componentInstance;\n }\n\n // if the route transition has already been confirmed then we weren't\n // able to call the cbs during confirmation as the component was not\n // registered yet, so we call it here.\n handleRouteEntered(route);\n };\n\n var configProps = matched.props && matched.props[name];\n // save route and configProps in cache\n if (configProps) {\n extend(cache[name], {\n route: route,\n configProps: configProps\n });\n fillPropsinData(component, data, route, configProps);\n }\n\n return h(component, data, children)\n }\n};\n\nfunction fillPropsinData (component, data, route, configProps) {\n // resolve props\n var propsToPass = data.props = resolveProps(route, configProps);\n if (propsToPass) {\n // clone to prevent mutation\n propsToPass = data.props = extend({}, propsToPass);\n // pass non-declared props as attrs\n var attrs = data.attrs = data.attrs || {};\n for (var key in propsToPass) {\n if (!component.props || !(key in component.props)) {\n attrs[key] = propsToPass[key];\n delete propsToPass[key];\n }\n }\n }\n}\n\nfunction resolveProps (route, config) {\n switch (typeof config) {\n case 'undefined':\n return\n case 'object':\n return config\n case 'function':\n return config(route)\n case 'boolean':\n return config ? route.params : undefined\n default:\n if (process.env.NODE_ENV !== 'production') {\n warn(\n false,\n \"props in \\\"\" + (route.path) + \"\\\" is a \" + (typeof config) + \", \" +\n \"expecting an object, function or boolean.\"\n );\n }\n }\n}\n\n/* */\n\nfunction resolvePath (\n relative,\n base,\n append\n) {\n var firstChar = relative.charAt(0);\n if (firstChar === '/') {\n return relative\n }\n\n if (firstChar === '?' || firstChar === '#') {\n return base + relative\n }\n\n var stack = base.split('/');\n\n // remove trailing segment if:\n // - not appending\n // - appending to trailing slash (last segment is empty)\n if (!append || !stack[stack.length - 1]) {\n stack.pop();\n }\n\n // resolve relative path\n var segments = relative.replace(/^\\//, '').split('/');\n for (var i = 0; i < segments.length; i++) {\n var segment = segments[i];\n if (segment === '..') {\n stack.pop();\n } else if (segment !== '.') {\n stack.push(segment);\n }\n }\n\n // ensure leading slash\n if (stack[0] !== '') {\n stack.unshift('');\n }\n\n return stack.join('/')\n}\n\nfunction parsePath (path) {\n var hash = '';\n var query = '';\n\n var hashIndex = path.indexOf('#');\n if (hashIndex >= 0) {\n hash = path.slice(hashIndex);\n path = path.slice(0, hashIndex);\n }\n\n var queryIndex = path.indexOf('?');\n if (queryIndex >= 0) {\n query = path.slice(queryIndex + 1);\n path = path.slice(0, queryIndex);\n }\n\n return {\n path: path,\n query: query,\n hash: hash\n }\n}\n\nfunction cleanPath (path) {\n return path.replace(/\\/(?:\\s*\\/)+/g, '/')\n}\n\nvar isarray = Array.isArray || function (arr) {\n return Object.prototype.toString.call(arr) == '[object Array]';\n};\n\n/**\n * Expose `pathToRegexp`.\n */\nvar pathToRegexp_1 = pathToRegexp;\nvar parse_1 = parse;\nvar compile_1 = compile;\nvar tokensToFunction_1 = tokensToFunction;\nvar tokensToRegExp_1 = tokensToRegExp;\n\n/**\n * The main path matching regexp utility.\n *\n * @type {RegExp}\n */\nvar PATH_REGEXP = new RegExp([\n // Match escaped characters that would otherwise appear in future matches.\n // This allows the user to escape special characters that won't transform.\n '(\\\\\\\\.)',\n // Match Express-style parameters and un-named parameters with a prefix\n // and optional suffixes. Matches appear as:\n //\n // \"/:test(\\\\d+)?\" => [\"/\", \"test\", \"\\d+\", undefined, \"?\", undefined]\n // \"/route(\\\\d+)\" => [undefined, undefined, undefined, \"\\d+\", undefined, undefined]\n // \"/*\" => [\"/\", undefined, undefined, undefined, undefined, \"*\"]\n '([\\\\/.])?(?:(?:\\\\:(\\\\w+)(?:\\\\(((?:\\\\\\\\.|[^\\\\\\\\()])+)\\\\))?|\\\\(((?:\\\\\\\\.|[^\\\\\\\\()])+)\\\\))([+*?])?|(\\\\*))'\n].join('|'), 'g');\n\n/**\n * Parse a string for the raw tokens.\n *\n * @param {string} str\n * @param {Object=} options\n * @return {!Array}\n */\nfunction parse (str, options) {\n var tokens = [];\n var key = 0;\n var index = 0;\n var path = '';\n var defaultDelimiter = options && options.delimiter || '/';\n var res;\n\n while ((res = PATH_REGEXP.exec(str)) != null) {\n var m = res[0];\n var escaped = res[1];\n var offset = res.index;\n path += str.slice(index, offset);\n index = offset + m.length;\n\n // Ignore already escaped sequences.\n if (escaped) {\n path += escaped[1];\n continue\n }\n\n var next = str[index];\n var prefix = res[2];\n var name = res[3];\n var capture = res[4];\n var group = res[5];\n var modifier = res[6];\n var asterisk = res[7];\n\n // Push the current path onto the tokens.\n if (path) {\n tokens.push(path);\n path = '';\n }\n\n var partial = prefix != null && next != null && next !== prefix;\n var repeat = modifier === '+' || modifier === '*';\n var optional = modifier === '?' || modifier === '*';\n var delimiter = res[2] || defaultDelimiter;\n var pattern = capture || group;\n\n tokens.push({\n name: name || key++,\n prefix: prefix || '',\n delimiter: delimiter,\n optional: optional,\n repeat: repeat,\n partial: partial,\n asterisk: !!asterisk,\n pattern: pattern ? escapeGroup(pattern) : (asterisk ? '.*' : '[^' + escapeString(delimiter) + ']+?')\n });\n }\n\n // Match any characters still remaining.\n if (index < str.length) {\n path += str.substr(index);\n }\n\n // If the path exists, push it onto the end.\n if (path) {\n tokens.push(path);\n }\n\n return tokens\n}\n\n/**\n * Compile a string to a template function for the path.\n *\n * @param {string} str\n * @param {Object=} options\n * @return {!function(Object=, Object=)}\n */\nfunction compile (str, options) {\n return tokensToFunction(parse(str, options), options)\n}\n\n/**\n * Prettier encoding of URI path segments.\n *\n * @param {string}\n * @return {string}\n */\nfunction encodeURIComponentPretty (str) {\n return encodeURI(str).replace(/[\\/?#]/g, function (c) {\n return '%' + c.charCodeAt(0).toString(16).toUpperCase()\n })\n}\n\n/**\n * Encode the asterisk parameter. Similar to `pretty`, but allows slashes.\n *\n * @param {string}\n * @return {string}\n */\nfunction encodeAsterisk (str) {\n return encodeURI(str).replace(/[?#]/g, function (c) {\n return '%' + c.charCodeAt(0).toString(16).toUpperCase()\n })\n}\n\n/**\n * Expose a method for transforming tokens into the path function.\n */\nfunction tokensToFunction (tokens, options) {\n // Compile all the tokens into regexps.\n var matches = new Array(tokens.length);\n\n // Compile all the patterns before compilation.\n for (var i = 0; i < tokens.length; i++) {\n if (typeof tokens[i] === 'object') {\n matches[i] = new RegExp('^(?:' + tokens[i].pattern + ')$', flags(options));\n }\n }\n\n return function (obj, opts) {\n var path = '';\n var data = obj || {};\n var options = opts || {};\n var encode = options.pretty ? encodeURIComponentPretty : encodeURIComponent;\n\n for (var i = 0; i < tokens.length; i++) {\n var token = tokens[i];\n\n if (typeof token === 'string') {\n path += token;\n\n continue\n }\n\n var value = data[token.name];\n var segment;\n\n if (value == null) {\n if (token.optional) {\n // Prepend partial segment prefixes.\n if (token.partial) {\n path += token.prefix;\n }\n\n continue\n } else {\n throw new TypeError('Expected \"' + token.name + '\" to be defined')\n }\n }\n\n if (isarray(value)) {\n if (!token.repeat) {\n throw new TypeError('Expected \"' + token.name + '\" to not repeat, but received `' + JSON.stringify(value) + '`')\n }\n\n if (value.length === 0) {\n if (token.optional) {\n continue\n } else {\n throw new TypeError('Expected \"' + token.name + '\" to not be empty')\n }\n }\n\n for (var j = 0; j < value.length; j++) {\n segment = encode(value[j]);\n\n if (!matches[i].test(segment)) {\n throw new TypeError('Expected all \"' + token.name + '\" to match \"' + token.pattern + '\", but received `' + JSON.stringify(segment) + '`')\n }\n\n path += (j === 0 ? token.prefix : token.delimiter) + segment;\n }\n\n continue\n }\n\n segment = token.asterisk ? encodeAsterisk(value) : encode(value);\n\n if (!matches[i].test(segment)) {\n throw new TypeError('Expected \"' + token.name + '\" to match \"' + token.pattern + '\", but received \"' + segment + '\"')\n }\n\n path += token.prefix + segment;\n }\n\n return path\n }\n}\n\n/**\n * Escape a regular expression string.\n *\n * @param {string} str\n * @return {string}\n */\nfunction escapeString (str) {\n return str.replace(/([.+*?=^!:${}()[\\]|\\/\\\\])/g, '\\\\$1')\n}\n\n/**\n * Escape the capturing group by escaping special characters and meaning.\n *\n * @param {string} group\n * @return {string}\n */\nfunction escapeGroup (group) {\n return group.replace(/([=!:$\\/()])/g, '\\\\$1')\n}\n\n/**\n * Attach the keys as a property of the regexp.\n *\n * @param {!RegExp} re\n * @param {Array} keys\n * @return {!RegExp}\n */\nfunction attachKeys (re, keys) {\n re.keys = keys;\n return re\n}\n\n/**\n * Get the flags for a regexp from the options.\n *\n * @param {Object} options\n * @return {string}\n */\nfunction flags (options) {\n return options && options.sensitive ? '' : 'i'\n}\n\n/**\n * Pull out keys from a regexp.\n *\n * @param {!RegExp} path\n * @param {!Array} keys\n * @return {!RegExp}\n */\nfunction regexpToRegexp (path, keys) {\n // Use a negative lookahead to match only capturing groups.\n var groups = path.source.match(/\\((?!\\?)/g);\n\n if (groups) {\n for (var i = 0; i < groups.length; i++) {\n keys.push({\n name: i,\n prefix: null,\n delimiter: null,\n optional: false,\n repeat: false,\n partial: false,\n asterisk: false,\n pattern: null\n });\n }\n }\n\n return attachKeys(path, keys)\n}\n\n/**\n * Transform an array into a regexp.\n *\n * @param {!Array} path\n * @param {Array} keys\n * @param {!Object} options\n * @return {!RegExp}\n */\nfunction arrayToRegexp (path, keys, options) {\n var parts = [];\n\n for (var i = 0; i < path.length; i++) {\n parts.push(pathToRegexp(path[i], keys, options).source);\n }\n\n var regexp = new RegExp('(?:' + parts.join('|') + ')', flags(options));\n\n return attachKeys(regexp, keys)\n}\n\n/**\n * Create a path regexp from string input.\n *\n * @param {string} path\n * @param {!Array} keys\n * @param {!Object} options\n * @return {!RegExp}\n */\nfunction stringToRegexp (path, keys, options) {\n return tokensToRegExp(parse(path, options), keys, options)\n}\n\n/**\n * Expose a function for taking tokens and returning a RegExp.\n *\n * @param {!Array} tokens\n * @param {(Array|Object)=} keys\n * @param {Object=} options\n * @return {!RegExp}\n */\nfunction tokensToRegExp (tokens, keys, options) {\n if (!isarray(keys)) {\n options = /** @type {!Object} */ (keys || options);\n keys = [];\n }\n\n options = options || {};\n\n var strict = options.strict;\n var end = options.end !== false;\n var route = '';\n\n // Iterate over the tokens and create our regexp string.\n for (var i = 0; i < tokens.length; i++) {\n var token = tokens[i];\n\n if (typeof token === 'string') {\n route += escapeString(token);\n } else {\n var prefix = escapeString(token.prefix);\n var capture = '(?:' + token.pattern + ')';\n\n keys.push(token);\n\n if (token.repeat) {\n capture += '(?:' + prefix + capture + ')*';\n }\n\n if (token.optional) {\n if (!token.partial) {\n capture = '(?:' + prefix + '(' + capture + '))?';\n } else {\n capture = prefix + '(' + capture + ')?';\n }\n } else {\n capture = prefix + '(' + capture + ')';\n }\n\n route += capture;\n }\n }\n\n var delimiter = escapeString(options.delimiter || '/');\n var endsWithDelimiter = route.slice(-delimiter.length) === delimiter;\n\n // In non-strict mode we allow a slash at the end of match. If the path to\n // match already ends with a slash, we remove it for consistency. The slash\n // is valid at the end of a path match, not in the middle. This is important\n // in non-ending mode, where \"/test/\" shouldn't match \"/test//route\".\n if (!strict) {\n route = (endsWithDelimiter ? route.slice(0, -delimiter.length) : route) + '(?:' + delimiter + '(?=$))?';\n }\n\n if (end) {\n route += '$';\n } else {\n // In non-ending mode, we need the capturing groups to match as much as\n // possible by using a positive lookahead to the end or next path segment.\n route += strict && endsWithDelimiter ? '' : '(?=' + delimiter + '|$)';\n }\n\n return attachKeys(new RegExp('^' + route, flags(options)), keys)\n}\n\n/**\n * Normalize the given path string, returning a regular expression.\n *\n * An empty array can be passed in for the keys, which will hold the\n * placeholder key descriptions. For example, using `/user/:id`, `keys` will\n * contain `[{ name: 'id', delimiter: '/', optional: false, repeat: false }]`.\n *\n * @param {(string|RegExp|Array)} path\n * @param {(Array|Object)=} keys\n * @param {Object=} options\n * @return {!RegExp}\n */\nfunction pathToRegexp (path, keys, options) {\n if (!isarray(keys)) {\n options = /** @type {!Object} */ (keys || options);\n keys = [];\n }\n\n options = options || {};\n\n if (path instanceof RegExp) {\n return regexpToRegexp(path, /** @type {!Array} */ (keys))\n }\n\n if (isarray(path)) {\n return arrayToRegexp(/** @type {!Array} */ (path), /** @type {!Array} */ (keys), options)\n }\n\n return stringToRegexp(/** @type {string} */ (path), /** @type {!Array} */ (keys), options)\n}\npathToRegexp_1.parse = parse_1;\npathToRegexp_1.compile = compile_1;\npathToRegexp_1.tokensToFunction = tokensToFunction_1;\npathToRegexp_1.tokensToRegExp = tokensToRegExp_1;\n\n/* */\n\n// $flow-disable-line\nvar regexpCompileCache = Object.create(null);\n\nfunction fillParams (\n path,\n params,\n routeMsg\n) {\n params = params || {};\n try {\n var filler =\n regexpCompileCache[path] ||\n (regexpCompileCache[path] = pathToRegexp_1.compile(path));\n\n // Fix #2505 resolving asterisk routes { name: 'not-found', params: { pathMatch: '/not-found' }}\n // and fix #3106 so that you can work with location descriptor object having params.pathMatch equal to empty string\n if (typeof params.pathMatch === 'string') { params[0] = params.pathMatch; }\n\n return filler(params, { pretty: true })\n } catch (e) {\n if (process.env.NODE_ENV !== 'production') {\n // Fix #3072 no warn if `pathMatch` is string\n warn(typeof params.pathMatch === 'string', (\"missing param for \" + routeMsg + \": \" + (e.message)));\n }\n return ''\n } finally {\n // delete the 0 if it was added\n delete params[0];\n }\n}\n\n/* */\n\nfunction normalizeLocation (\n raw,\n current,\n append,\n router\n) {\n var next = typeof raw === 'string' ? { path: raw } : raw;\n // named target\n if (next._normalized) {\n return next\n } else if (next.name) {\n next = extend({}, raw);\n var params = next.params;\n if (params && typeof params === 'object') {\n next.params = extend({}, params);\n }\n return next\n }\n\n // relative params\n if (!next.path && next.params && current) {\n next = extend({}, next);\n next._normalized = true;\n var params$1 = extend(extend({}, current.params), next.params);\n if (current.name) {\n next.name = current.name;\n next.params = params$1;\n } else if (current.matched.length) {\n var rawPath = current.matched[current.matched.length - 1].path;\n next.path = fillParams(rawPath, params$1, (\"path \" + (current.path)));\n } else if (process.env.NODE_ENV !== 'production') {\n warn(false, \"relative params navigation requires a current route.\");\n }\n return next\n }\n\n var parsedPath = parsePath(next.path || '');\n var basePath = (current && current.path) || '/';\n var path = parsedPath.path\n ? resolvePath(parsedPath.path, basePath, append || next.append)\n : basePath;\n\n var query = resolveQuery(\n parsedPath.query,\n next.query,\n router && router.options.parseQuery\n );\n\n var hash = next.hash || parsedPath.hash;\n if (hash && hash.charAt(0) !== '#') {\n hash = \"#\" + hash;\n }\n\n return {\n _normalized: true,\n path: path,\n query: query,\n hash: hash\n }\n}\n\n/* */\n\n// work around weird flow bug\nvar toTypes = [String, Object];\nvar eventTypes = [String, Array];\n\nvar noop = function () {};\n\nvar warnedCustomSlot;\nvar warnedTagProp;\nvar warnedEventProp;\n\nvar Link = {\n name: 'RouterLink',\n props: {\n to: {\n type: toTypes,\n required: true\n },\n tag: {\n type: String,\n default: 'a'\n },\n custom: Boolean,\n exact: Boolean,\n exactPath: Boolean,\n append: Boolean,\n replace: Boolean,\n activeClass: String,\n exactActiveClass: String,\n ariaCurrentValue: {\n type: String,\n default: 'page'\n },\n event: {\n type: eventTypes,\n default: 'click'\n }\n },\n render: function render (h) {\n var this$1$1 = this;\n\n var router = this.$router;\n var current = this.$route;\n var ref = router.resolve(\n this.to,\n current,\n this.append\n );\n var location = ref.location;\n var route = ref.route;\n var href = ref.href;\n\n var classes = {};\n var globalActiveClass = router.options.linkActiveClass;\n var globalExactActiveClass = router.options.linkExactActiveClass;\n // Support global empty active class\n var activeClassFallback =\n globalActiveClass == null ? 'router-link-active' : globalActiveClass;\n var exactActiveClassFallback =\n globalExactActiveClass == null\n ? 'router-link-exact-active'\n : globalExactActiveClass;\n var activeClass =\n this.activeClass == null ? activeClassFallback : this.activeClass;\n var exactActiveClass =\n this.exactActiveClass == null\n ? exactActiveClassFallback\n : this.exactActiveClass;\n\n var compareTarget = route.redirectedFrom\n ? createRoute(null, normalizeLocation(route.redirectedFrom), null, router)\n : route;\n\n classes[exactActiveClass] = isSameRoute(current, compareTarget, this.exactPath);\n classes[activeClass] = this.exact || this.exactPath\n ? classes[exactActiveClass]\n : isIncludedRoute(current, compareTarget);\n\n var ariaCurrentValue = classes[exactActiveClass] ? this.ariaCurrentValue : null;\n\n var handler = function (e) {\n if (guardEvent(e)) {\n if (this$1$1.replace) {\n router.replace(location, noop);\n } else {\n router.push(location, noop);\n }\n }\n };\n\n var on = { click: guardEvent };\n if (Array.isArray(this.event)) {\n this.event.forEach(function (e) {\n on[e] = handler;\n });\n } else {\n on[this.event] = handler;\n }\n\n var data = { class: classes };\n\n var scopedSlot =\n !this.$scopedSlots.$hasNormal &&\n this.$scopedSlots.default &&\n this.$scopedSlots.default({\n href: href,\n route: route,\n navigate: handler,\n isActive: classes[activeClass],\n isExactActive: classes[exactActiveClass]\n });\n\n if (scopedSlot) {\n if (process.env.NODE_ENV !== 'production' && !this.custom) {\n !warnedCustomSlot && warn(false, 'In Vue Router 4, the v-slot API will by default wrap its content with an element. Use the custom prop to remove this warning:\\n\\n');\n warnedCustomSlot = true;\n }\n if (scopedSlot.length === 1) {\n return scopedSlot[0]\n } else if (scopedSlot.length > 1 || !scopedSlot.length) {\n if (process.env.NODE_ENV !== 'production') {\n warn(\n false,\n (\" with to=\\\"\" + (this.to) + \"\\\" is trying to use a scoped slot but it didn't provide exactly one child. Wrapping the content with a span element.\")\n );\n }\n return scopedSlot.length === 0 ? h() : h('span', {}, scopedSlot)\n }\n }\n\n if (process.env.NODE_ENV !== 'production') {\n if ('tag' in this.$options.propsData && !warnedTagProp) {\n warn(\n false,\n \"'s tag prop is deprecated and has been removed in Vue Router 4. Use the v-slot API to remove this warning: https://next.router.vuejs.org/guide/migration/#removal-of-event-and-tag-props-in-router-link.\"\n );\n warnedTagProp = true;\n }\n if ('event' in this.$options.propsData && !warnedEventProp) {\n warn(\n false,\n \"'s event prop is deprecated and has been removed in Vue Router 4. Use the v-slot API to remove this warning: https://next.router.vuejs.org/guide/migration/#removal-of-event-and-tag-props-in-router-link.\"\n );\n warnedEventProp = true;\n }\n }\n\n if (this.tag === 'a') {\n data.on = on;\n data.attrs = { href: href, 'aria-current': ariaCurrentValue };\n } else {\n // find the first child and apply listener and href\n var a = findAnchor(this.$slots.default);\n if (a) {\n // in case the is a static node\n a.isStatic = false;\n var aData = (a.data = extend({}, a.data));\n aData.on = aData.on || {};\n // transform existing events in both objects into arrays so we can push later\n for (var event in aData.on) {\n var handler$1 = aData.on[event];\n if (event in on) {\n aData.on[event] = Array.isArray(handler$1) ? handler$1 : [handler$1];\n }\n }\n // append new listeners for router-link\n for (var event$1 in on) {\n if (event$1 in aData.on) {\n // on[event] is always a function\n aData.on[event$1].push(on[event$1]);\n } else {\n aData.on[event$1] = handler;\n }\n }\n\n var aAttrs = (a.data.attrs = extend({}, a.data.attrs));\n aAttrs.href = href;\n aAttrs['aria-current'] = ariaCurrentValue;\n } else {\n // doesn't have child, apply listener to self\n data.on = on;\n }\n }\n\n return h(this.tag, data, this.$slots.default)\n }\n};\n\nfunction guardEvent (e) {\n // don't redirect with control keys\n if (e.metaKey || e.altKey || e.ctrlKey || e.shiftKey) { return }\n // don't redirect when preventDefault called\n if (e.defaultPrevented) { return }\n // don't redirect on right click\n if (e.button !== undefined && e.button !== 0) { return }\n // don't redirect if `target=\"_blank\"`\n if (e.currentTarget && e.currentTarget.getAttribute) {\n var target = e.currentTarget.getAttribute('target');\n if (/\\b_blank\\b/i.test(target)) { return }\n }\n // this may be a Weex event which doesn't have this method\n if (e.preventDefault) {\n e.preventDefault();\n }\n return true\n}\n\nfunction findAnchor (children) {\n if (children) {\n var child;\n for (var i = 0; i < children.length; i++) {\n child = children[i];\n if (child.tag === 'a') {\n return child\n }\n if (child.children && (child = findAnchor(child.children))) {\n return child\n }\n }\n }\n}\n\nvar _Vue;\n\nfunction install (Vue) {\n if (install.installed && _Vue === Vue) { return }\n install.installed = true;\n\n _Vue = Vue;\n\n var isDef = function (v) { return v !== undefined; };\n\n var registerInstance = function (vm, callVal) {\n var i = vm.$options._parentVnode;\n if (isDef(i) && isDef(i = i.data) && isDef(i = i.registerRouteInstance)) {\n i(vm, callVal);\n }\n };\n\n Vue.mixin({\n beforeCreate: function beforeCreate () {\n if (isDef(this.$options.router)) {\n this._routerRoot = this;\n this._router = this.$options.router;\n this._router.init(this);\n Vue.util.defineReactive(this, '_route', this._router.history.current);\n } else {\n this._routerRoot = (this.$parent && this.$parent._routerRoot) || this;\n }\n registerInstance(this, this);\n },\n destroyed: function destroyed () {\n registerInstance(this);\n }\n });\n\n Object.defineProperty(Vue.prototype, '$router', {\n get: function get () { return this._routerRoot._router }\n });\n\n Object.defineProperty(Vue.prototype, '$route', {\n get: function get () { return this._routerRoot._route }\n });\n\n Vue.component('RouterView', View);\n Vue.component('RouterLink', Link);\n\n var strats = Vue.config.optionMergeStrategies;\n // use the same hook merging strategy for route hooks\n strats.beforeRouteEnter = strats.beforeRouteLeave = strats.beforeRouteUpdate = strats.created;\n}\n\n/* */\n\nvar inBrowser = typeof window !== 'undefined';\n\n/* */\n\nfunction createRouteMap (\n routes,\n oldPathList,\n oldPathMap,\n oldNameMap,\n parentRoute\n) {\n // the path list is used to control path matching priority\n var pathList = oldPathList || [];\n // $flow-disable-line\n var pathMap = oldPathMap || Object.create(null);\n // $flow-disable-line\n var nameMap = oldNameMap || Object.create(null);\n\n routes.forEach(function (route) {\n addRouteRecord(pathList, pathMap, nameMap, route, parentRoute);\n });\n\n // ensure wildcard routes are always at the end\n for (var i = 0, l = pathList.length; i < l; i++) {\n if (pathList[i] === '*') {\n pathList.push(pathList.splice(i, 1)[0]);\n l--;\n i--;\n }\n }\n\n if (process.env.NODE_ENV === 'development') {\n // warn if routes do not include leading slashes\n var found = pathList\n // check for missing leading slash\n .filter(function (path) { return path && path.charAt(0) !== '*' && path.charAt(0) !== '/'; });\n\n if (found.length > 0) {\n var pathNames = found.map(function (path) { return (\"- \" + path); }).join('\\n');\n warn(false, (\"Non-nested routes must include a leading slash character. Fix the following routes: \\n\" + pathNames));\n }\n }\n\n return {\n pathList: pathList,\n pathMap: pathMap,\n nameMap: nameMap\n }\n}\n\nfunction addRouteRecord (\n pathList,\n pathMap,\n nameMap,\n route,\n parent,\n matchAs\n) {\n var path = route.path;\n var name = route.name;\n if (process.env.NODE_ENV !== 'production') {\n assert(path != null, \"\\\"path\\\" is required in a route configuration.\");\n assert(\n typeof route.component !== 'string',\n \"route config \\\"component\\\" for path: \" + (String(\n path || name\n )) + \" cannot be a \" + \"string id. Use an actual component instead.\"\n );\n\n warn(\n // eslint-disable-next-line no-control-regex\n !/[^\\u0000-\\u007F]+/.test(path),\n \"Route with path \\\"\" + path + \"\\\" contains unencoded characters, make sure \" +\n \"your path is correctly encoded before passing it to the router. Use \" +\n \"encodeURI to encode static segments of your path.\"\n );\n }\n\n var pathToRegexpOptions =\n route.pathToRegexpOptions || {};\n var normalizedPath = normalizePath(path, parent, pathToRegexpOptions.strict);\n\n if (typeof route.caseSensitive === 'boolean') {\n pathToRegexpOptions.sensitive = route.caseSensitive;\n }\n\n var record = {\n path: normalizedPath,\n regex: compileRouteRegex(normalizedPath, pathToRegexpOptions),\n components: route.components || { default: route.component },\n alias: route.alias\n ? typeof route.alias === 'string'\n ? [route.alias]\n : route.alias\n : [],\n instances: {},\n enteredCbs: {},\n name: name,\n parent: parent,\n matchAs: matchAs,\n redirect: route.redirect,\n beforeEnter: route.beforeEnter,\n meta: route.meta || {},\n props:\n route.props == null\n ? {}\n : route.components\n ? route.props\n : { default: route.props }\n };\n\n if (route.children) {\n // Warn if route is named, does not redirect and has a default child route.\n // If users navigate to this route by name, the default child will\n // not be rendered (GH Issue #629)\n if (process.env.NODE_ENV !== 'production') {\n if (\n route.name &&\n !route.redirect &&\n route.children.some(function (child) { return /^\\/?$/.test(child.path); })\n ) {\n warn(\n false,\n \"Named Route '\" + (route.name) + \"' has a default child route. \" +\n \"When navigating to this named route (:to=\\\"{name: '\" + (route.name) + \"'}\\\"), \" +\n \"the default child route will not be rendered. Remove the name from \" +\n \"this route and use the name of the default child route for named \" +\n \"links instead.\"\n );\n }\n }\n route.children.forEach(function (child) {\n var childMatchAs = matchAs\n ? cleanPath((matchAs + \"/\" + (child.path)))\n : undefined;\n addRouteRecord(pathList, pathMap, nameMap, child, record, childMatchAs);\n });\n }\n\n if (!pathMap[record.path]) {\n pathList.push(record.path);\n pathMap[record.path] = record;\n }\n\n if (route.alias !== undefined) {\n var aliases = Array.isArray(route.alias) ? route.alias : [route.alias];\n for (var i = 0; i < aliases.length; ++i) {\n var alias = aliases[i];\n if (process.env.NODE_ENV !== 'production' && alias === path) {\n warn(\n false,\n (\"Found an alias with the same value as the path: \\\"\" + path + \"\\\". You have to remove that alias. It will be ignored in development.\")\n );\n // skip in dev to make it work\n continue\n }\n\n var aliasRoute = {\n path: alias,\n children: route.children\n };\n addRouteRecord(\n pathList,\n pathMap,\n nameMap,\n aliasRoute,\n parent,\n record.path || '/' // matchAs\n );\n }\n }\n\n if (name) {\n if (!nameMap[name]) {\n nameMap[name] = record;\n } else if (process.env.NODE_ENV !== 'production' && !matchAs) {\n warn(\n false,\n \"Duplicate named routes definition: \" +\n \"{ name: \\\"\" + name + \"\\\", path: \\\"\" + (record.path) + \"\\\" }\"\n );\n }\n }\n}\n\nfunction compileRouteRegex (\n path,\n pathToRegexpOptions\n) {\n var regex = pathToRegexp_1(path, [], pathToRegexpOptions);\n if (process.env.NODE_ENV !== 'production') {\n var keys = Object.create(null);\n regex.keys.forEach(function (key) {\n warn(\n !keys[key.name],\n (\"Duplicate param keys in route with path: \\\"\" + path + \"\\\"\")\n );\n keys[key.name] = true;\n });\n }\n return regex\n}\n\nfunction normalizePath (\n path,\n parent,\n strict\n) {\n if (!strict) { path = path.replace(/\\/$/, ''); }\n if (path[0] === '/') { return path }\n if (parent == null) { return path }\n return cleanPath(((parent.path) + \"/\" + path))\n}\n\n/* */\n\n\n\nfunction createMatcher (\n routes,\n router\n) {\n var ref = createRouteMap(routes);\n var pathList = ref.pathList;\n var pathMap = ref.pathMap;\n var nameMap = ref.nameMap;\n\n function addRoutes (routes) {\n createRouteMap(routes, pathList, pathMap, nameMap);\n }\n\n function addRoute (parentOrRoute, route) {\n var parent = (typeof parentOrRoute !== 'object') ? nameMap[parentOrRoute] : undefined;\n // $flow-disable-line\n createRouteMap([route || parentOrRoute], pathList, pathMap, nameMap, parent);\n\n // add aliases of parent\n if (parent && parent.alias.length) {\n createRouteMap(\n // $flow-disable-line route is defined if parent is\n parent.alias.map(function (alias) { return ({ path: alias, children: [route] }); }),\n pathList,\n pathMap,\n nameMap,\n parent\n );\n }\n }\n\n function getRoutes () {\n return pathList.map(function (path) { return pathMap[path]; })\n }\n\n function match (\n raw,\n currentRoute,\n redirectedFrom\n ) {\n var location = normalizeLocation(raw, currentRoute, false, router);\n var name = location.name;\n\n if (name) {\n var record = nameMap[name];\n if (process.env.NODE_ENV !== 'production') {\n warn(record, (\"Route with name '\" + name + \"' does not exist\"));\n }\n if (!record) { return _createRoute(null, location) }\n var paramNames = record.regex.keys\n .filter(function (key) { return !key.optional; })\n .map(function (key) { return key.name; });\n\n if (typeof location.params !== 'object') {\n location.params = {};\n }\n\n if (currentRoute && typeof currentRoute.params === 'object') {\n for (var key in currentRoute.params) {\n if (!(key in location.params) && paramNames.indexOf(key) > -1) {\n location.params[key] = currentRoute.params[key];\n }\n }\n }\n\n location.path = fillParams(record.path, location.params, (\"named route \\\"\" + name + \"\\\"\"));\n return _createRoute(record, location, redirectedFrom)\n } else if (location.path) {\n location.params = {};\n for (var i = 0; i < pathList.length; i++) {\n var path = pathList[i];\n var record$1 = pathMap[path];\n if (matchRoute(record$1.regex, location.path, location.params)) {\n return _createRoute(record$1, location, redirectedFrom)\n }\n }\n }\n // no match\n return _createRoute(null, location)\n }\n\n function redirect (\n record,\n location\n ) {\n var originalRedirect = record.redirect;\n var redirect = typeof originalRedirect === 'function'\n ? originalRedirect(createRoute(record, location, null, router))\n : originalRedirect;\n\n if (typeof redirect === 'string') {\n redirect = { path: redirect };\n }\n\n if (!redirect || typeof redirect !== 'object') {\n if (process.env.NODE_ENV !== 'production') {\n warn(\n false, (\"invalid redirect option: \" + (JSON.stringify(redirect)))\n );\n }\n return _createRoute(null, location)\n }\n\n var re = redirect;\n var name = re.name;\n var path = re.path;\n var query = location.query;\n var hash = location.hash;\n var params = location.params;\n query = re.hasOwnProperty('query') ? re.query : query;\n hash = re.hasOwnProperty('hash') ? re.hash : hash;\n params = re.hasOwnProperty('params') ? re.params : params;\n\n if (name) {\n // resolved named direct\n var targetRecord = nameMap[name];\n if (process.env.NODE_ENV !== 'production') {\n assert(targetRecord, (\"redirect failed: named route \\\"\" + name + \"\\\" not found.\"));\n }\n return match({\n _normalized: true,\n name: name,\n query: query,\n hash: hash,\n params: params\n }, undefined, location)\n } else if (path) {\n // 1. resolve relative redirect\n var rawPath = resolveRecordPath(path, record);\n // 2. resolve params\n var resolvedPath = fillParams(rawPath, params, (\"redirect route with path \\\"\" + rawPath + \"\\\"\"));\n // 3. rematch with existing query and hash\n return match({\n _normalized: true,\n path: resolvedPath,\n query: query,\n hash: hash\n }, undefined, location)\n } else {\n if (process.env.NODE_ENV !== 'production') {\n warn(false, (\"invalid redirect option: \" + (JSON.stringify(redirect))));\n }\n return _createRoute(null, location)\n }\n }\n\n function alias (\n record,\n location,\n matchAs\n ) {\n var aliasedPath = fillParams(matchAs, location.params, (\"aliased route with path \\\"\" + matchAs + \"\\\"\"));\n var aliasedMatch = match({\n _normalized: true,\n path: aliasedPath\n });\n if (aliasedMatch) {\n var matched = aliasedMatch.matched;\n var aliasedRecord = matched[matched.length - 1];\n location.params = aliasedMatch.params;\n return _createRoute(aliasedRecord, location)\n }\n return _createRoute(null, location)\n }\n\n function _createRoute (\n record,\n location,\n redirectedFrom\n ) {\n if (record && record.redirect) {\n return redirect(record, redirectedFrom || location)\n }\n if (record && record.matchAs) {\n return alias(record, location, record.matchAs)\n }\n return createRoute(record, location, redirectedFrom, router)\n }\n\n return {\n match: match,\n addRoute: addRoute,\n getRoutes: getRoutes,\n addRoutes: addRoutes\n }\n}\n\nfunction matchRoute (\n regex,\n path,\n params\n) {\n var m = path.match(regex);\n\n if (!m) {\n return false\n } else if (!params) {\n return true\n }\n\n for (var i = 1, len = m.length; i < len; ++i) {\n var key = regex.keys[i - 1];\n if (key) {\n // Fix #1994: using * with props: true generates a param named 0\n params[key.name || 'pathMatch'] = typeof m[i] === 'string' ? decode(m[i]) : m[i];\n }\n }\n\n return true\n}\n\nfunction resolveRecordPath (path, record) {\n return resolvePath(path, record.parent ? record.parent.path : '/', true)\n}\n\n/* */\n\n// use User Timing api (if present) for more accurate key precision\nvar Time =\n inBrowser && window.performance && window.performance.now\n ? window.performance\n : Date;\n\nfunction genStateKey () {\n return Time.now().toFixed(3)\n}\n\nvar _key = genStateKey();\n\nfunction getStateKey () {\n return _key\n}\n\nfunction setStateKey (key) {\n return (_key = key)\n}\n\n/* */\n\nvar positionStore = Object.create(null);\n\nfunction setupScroll () {\n // Prevent browser scroll behavior on History popstate\n if ('scrollRestoration' in window.history) {\n window.history.scrollRestoration = 'manual';\n }\n // Fix for #1585 for Firefox\n // Fix for #2195 Add optional third attribute to workaround a bug in safari https://bugs.webkit.org/show_bug.cgi?id=182678\n // Fix for #2774 Support for apps loaded from Windows file shares not mapped to network drives: replaced location.origin with\n // window.location.protocol + '//' + window.location.host\n // location.host contains the port and location.hostname doesn't\n var protocolAndPath = window.location.protocol + '//' + window.location.host;\n var absolutePath = window.location.href.replace(protocolAndPath, '');\n // preserve existing history state as it could be overriden by the user\n var stateCopy = extend({}, window.history.state);\n stateCopy.key = getStateKey();\n window.history.replaceState(stateCopy, '', absolutePath);\n window.addEventListener('popstate', handlePopState);\n return function () {\n window.removeEventListener('popstate', handlePopState);\n }\n}\n\nfunction handleScroll (\n router,\n to,\n from,\n isPop\n) {\n if (!router.app) {\n return\n }\n\n var behavior = router.options.scrollBehavior;\n if (!behavior) {\n return\n }\n\n if (process.env.NODE_ENV !== 'production') {\n assert(typeof behavior === 'function', \"scrollBehavior must be a function\");\n }\n\n // wait until re-render finishes before scrolling\n router.app.$nextTick(function () {\n var position = getScrollPosition();\n var shouldScroll = behavior.call(\n router,\n to,\n from,\n isPop ? position : null\n );\n\n if (!shouldScroll) {\n return\n }\n\n if (typeof shouldScroll.then === 'function') {\n shouldScroll\n .then(function (shouldScroll) {\n scrollToPosition((shouldScroll), position);\n })\n .catch(function (err) {\n if (process.env.NODE_ENV !== 'production') {\n assert(false, err.toString());\n }\n });\n } else {\n scrollToPosition(shouldScroll, position);\n }\n });\n}\n\nfunction saveScrollPosition () {\n var key = getStateKey();\n if (key) {\n positionStore[key] = {\n x: window.pageXOffset,\n y: window.pageYOffset\n };\n }\n}\n\nfunction handlePopState (e) {\n saveScrollPosition();\n if (e.state && e.state.key) {\n setStateKey(e.state.key);\n }\n}\n\nfunction getScrollPosition () {\n var key = getStateKey();\n if (key) {\n return positionStore[key]\n }\n}\n\nfunction getElementPosition (el, offset) {\n var docEl = document.documentElement;\n var docRect = docEl.getBoundingClientRect();\n var elRect = el.getBoundingClientRect();\n return {\n x: elRect.left - docRect.left - offset.x,\n y: elRect.top - docRect.top - offset.y\n }\n}\n\nfunction isValidPosition (obj) {\n return isNumber(obj.x) || isNumber(obj.y)\n}\n\nfunction normalizePosition (obj) {\n return {\n x: isNumber(obj.x) ? obj.x : window.pageXOffset,\n y: isNumber(obj.y) ? obj.y : window.pageYOffset\n }\n}\n\nfunction normalizeOffset (obj) {\n return {\n x: isNumber(obj.x) ? obj.x : 0,\n y: isNumber(obj.y) ? obj.y : 0\n }\n}\n\nfunction isNumber (v) {\n return typeof v === 'number'\n}\n\nvar hashStartsWithNumberRE = /^#\\d/;\n\nfunction scrollToPosition (shouldScroll, position) {\n var isObject = typeof shouldScroll === 'object';\n if (isObject && typeof shouldScroll.selector === 'string') {\n // getElementById would still fail if the selector contains a more complicated query like #main[data-attr]\n // but at the same time, it doesn't make much sense to select an element with an id and an extra selector\n var el = hashStartsWithNumberRE.test(shouldScroll.selector) // $flow-disable-line\n ? document.getElementById(shouldScroll.selector.slice(1)) // $flow-disable-line\n : document.querySelector(shouldScroll.selector);\n\n if (el) {\n var offset =\n shouldScroll.offset && typeof shouldScroll.offset === 'object'\n ? shouldScroll.offset\n : {};\n offset = normalizeOffset(offset);\n position = getElementPosition(el, offset);\n } else if (isValidPosition(shouldScroll)) {\n position = normalizePosition(shouldScroll);\n }\n } else if (isObject && isValidPosition(shouldScroll)) {\n position = normalizePosition(shouldScroll);\n }\n\n if (position) {\n // $flow-disable-line\n if ('scrollBehavior' in document.documentElement.style) {\n window.scrollTo({\n left: position.x,\n top: position.y,\n // $flow-disable-line\n behavior: shouldScroll.behavior\n });\n } else {\n window.scrollTo(position.x, position.y);\n }\n }\n}\n\n/* */\n\nvar supportsPushState =\n inBrowser &&\n (function () {\n var ua = window.navigator.userAgent;\n\n if (\n (ua.indexOf('Android 2.') !== -1 || ua.indexOf('Android 4.0') !== -1) &&\n ua.indexOf('Mobile Safari') !== -1 &&\n ua.indexOf('Chrome') === -1 &&\n ua.indexOf('Windows Phone') === -1\n ) {\n return false\n }\n\n return window.history && typeof window.history.pushState === 'function'\n })();\n\nfunction pushState (url, replace) {\n saveScrollPosition();\n // try...catch the pushState call to get around Safari\n // DOM Exception 18 where it limits to 100 pushState calls\n var history = window.history;\n try {\n if (replace) {\n // preserve existing history state as it could be overriden by the user\n var stateCopy = extend({}, history.state);\n stateCopy.key = getStateKey();\n history.replaceState(stateCopy, '', url);\n } else {\n history.pushState({ key: setStateKey(genStateKey()) }, '', url);\n }\n } catch (e) {\n window.location[replace ? 'replace' : 'assign'](url);\n }\n}\n\nfunction replaceState (url) {\n pushState(url, true);\n}\n\n// When changing thing, also edit router.d.ts\nvar NavigationFailureType = {\n redirected: 2,\n aborted: 4,\n cancelled: 8,\n duplicated: 16\n};\n\nfunction createNavigationRedirectedError (from, to) {\n return createRouterError(\n from,\n to,\n NavigationFailureType.redirected,\n (\"Redirected when going from \\\"\" + (from.fullPath) + \"\\\" to \\\"\" + (stringifyRoute(\n to\n )) + \"\\\" via a navigation guard.\")\n )\n}\n\nfunction createNavigationDuplicatedError (from, to) {\n var error = createRouterError(\n from,\n to,\n NavigationFailureType.duplicated,\n (\"Avoided redundant navigation to current location: \\\"\" + (from.fullPath) + \"\\\".\")\n );\n // backwards compatible with the first introduction of Errors\n error.name = 'NavigationDuplicated';\n return error\n}\n\nfunction createNavigationCancelledError (from, to) {\n return createRouterError(\n from,\n to,\n NavigationFailureType.cancelled,\n (\"Navigation cancelled from \\\"\" + (from.fullPath) + \"\\\" to \\\"\" + (to.fullPath) + \"\\\" with a new navigation.\")\n )\n}\n\nfunction createNavigationAbortedError (from, to) {\n return createRouterError(\n from,\n to,\n NavigationFailureType.aborted,\n (\"Navigation aborted from \\\"\" + (from.fullPath) + \"\\\" to \\\"\" + (to.fullPath) + \"\\\" via a navigation guard.\")\n )\n}\n\nfunction createRouterError (from, to, type, message) {\n var error = new Error(message);\n error._isRouter = true;\n error.from = from;\n error.to = to;\n error.type = type;\n\n return error\n}\n\nvar propertiesToLog = ['params', 'query', 'hash'];\n\nfunction stringifyRoute (to) {\n if (typeof to === 'string') { return to }\n if ('path' in to) { return to.path }\n var location = {};\n propertiesToLog.forEach(function (key) {\n if (key in to) { location[key] = to[key]; }\n });\n return JSON.stringify(location, null, 2)\n}\n\nfunction isError (err) {\n return Object.prototype.toString.call(err).indexOf('Error') > -1\n}\n\nfunction isNavigationFailure (err, errorType) {\n return (\n isError(err) &&\n err._isRouter &&\n (errorType == null || err.type === errorType)\n )\n}\n\n/* */\n\nfunction runQueue (queue, fn, cb) {\n var step = function (index) {\n if (index >= queue.length) {\n cb();\n } else {\n if (queue[index]) {\n fn(queue[index], function () {\n step(index + 1);\n });\n } else {\n step(index + 1);\n }\n }\n };\n step(0);\n}\n\n/* */\n\nfunction resolveAsyncComponents (matched) {\n return function (to, from, next) {\n var hasAsync = false;\n var pending = 0;\n var error = null;\n\n flatMapComponents(matched, function (def, _, match, key) {\n // if it's a function and doesn't have cid attached,\n // assume it's an async component resolve function.\n // we are not using Vue's default async resolving mechanism because\n // we want to halt the navigation until the incoming component has been\n // resolved.\n if (typeof def === 'function' && def.cid === undefined) {\n hasAsync = true;\n pending++;\n\n var resolve = once(function (resolvedDef) {\n if (isESModule(resolvedDef)) {\n resolvedDef = resolvedDef.default;\n }\n // save resolved on async factory in case it's used elsewhere\n def.resolved = typeof resolvedDef === 'function'\n ? resolvedDef\n : _Vue.extend(resolvedDef);\n match.components[key] = resolvedDef;\n pending--;\n if (pending <= 0) {\n next();\n }\n });\n\n var reject = once(function (reason) {\n var msg = \"Failed to resolve async component \" + key + \": \" + reason;\n process.env.NODE_ENV !== 'production' && warn(false, msg);\n if (!error) {\n error = isError(reason)\n ? reason\n : new Error(msg);\n next(error);\n }\n });\n\n var res;\n try {\n res = def(resolve, reject);\n } catch (e) {\n reject(e);\n }\n if (res) {\n if (typeof res.then === 'function') {\n res.then(resolve, reject);\n } else {\n // new syntax in Vue 2.3\n var comp = res.component;\n if (comp && typeof comp.then === 'function') {\n comp.then(resolve, reject);\n }\n }\n }\n }\n });\n\n if (!hasAsync) { next(); }\n }\n}\n\nfunction flatMapComponents (\n matched,\n fn\n) {\n return flatten(matched.map(function (m) {\n return Object.keys(m.components).map(function (key) { return fn(\n m.components[key],\n m.instances[key],\n m, key\n ); })\n }))\n}\n\nfunction flatten (arr) {\n return Array.prototype.concat.apply([], arr)\n}\n\nvar hasSymbol =\n typeof Symbol === 'function' &&\n typeof Symbol.toStringTag === 'symbol';\n\nfunction isESModule (obj) {\n return obj.__esModule || (hasSymbol && obj[Symbol.toStringTag] === 'Module')\n}\n\n// in Webpack 2, require.ensure now also returns a Promise\n// so the resolve/reject functions may get called an extra time\n// if the user uses an arrow function shorthand that happens to\n// return that Promise.\nfunction once (fn) {\n var called = false;\n return function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n if (called) { return }\n called = true;\n return fn.apply(this, args)\n }\n}\n\n/* */\n\nvar History = function History (router, base) {\n this.router = router;\n this.base = normalizeBase(base);\n // start with a route object that stands for \"nowhere\"\n this.current = START;\n this.pending = null;\n this.ready = false;\n this.readyCbs = [];\n this.readyErrorCbs = [];\n this.errorCbs = [];\n this.listeners = [];\n};\n\nHistory.prototype.listen = function listen (cb) {\n this.cb = cb;\n};\n\nHistory.prototype.onReady = function onReady (cb, errorCb) {\n if (this.ready) {\n cb();\n } else {\n this.readyCbs.push(cb);\n if (errorCb) {\n this.readyErrorCbs.push(errorCb);\n }\n }\n};\n\nHistory.prototype.onError = function onError (errorCb) {\n this.errorCbs.push(errorCb);\n};\n\nHistory.prototype.transitionTo = function transitionTo (\n location,\n onComplete,\n onAbort\n) {\n var this$1$1 = this;\n\n var route;\n // catch redirect option https://github.com/vuejs/vue-router/issues/3201\n try {\n route = this.router.match(location, this.current);\n } catch (e) {\n this.errorCbs.forEach(function (cb) {\n cb(e);\n });\n // Exception should still be thrown\n throw e\n }\n var prev = this.current;\n this.confirmTransition(\n route,\n function () {\n this$1$1.updateRoute(route);\n onComplete && onComplete(route);\n this$1$1.ensureURL();\n this$1$1.router.afterHooks.forEach(function (hook) {\n hook && hook(route, prev);\n });\n\n // fire ready cbs once\n if (!this$1$1.ready) {\n this$1$1.ready = true;\n this$1$1.readyCbs.forEach(function (cb) {\n cb(route);\n });\n }\n },\n function (err) {\n if (onAbort) {\n onAbort(err);\n }\n if (err && !this$1$1.ready) {\n // Initial redirection should not mark the history as ready yet\n // because it's triggered by the redirection instead\n // https://github.com/vuejs/vue-router/issues/3225\n // https://github.com/vuejs/vue-router/issues/3331\n if (!isNavigationFailure(err, NavigationFailureType.redirected) || prev !== START) {\n this$1$1.ready = true;\n this$1$1.readyErrorCbs.forEach(function (cb) {\n cb(err);\n });\n }\n }\n }\n );\n};\n\nHistory.prototype.confirmTransition = function confirmTransition (route, onComplete, onAbort) {\n var this$1$1 = this;\n\n var current = this.current;\n this.pending = route;\n var abort = function (err) {\n // changed after adding errors with\n // https://github.com/vuejs/vue-router/pull/3047 before that change,\n // redirect and aborted navigation would produce an err == null\n if (!isNavigationFailure(err) && isError(err)) {\n if (this$1$1.errorCbs.length) {\n this$1$1.errorCbs.forEach(function (cb) {\n cb(err);\n });\n } else {\n if (process.env.NODE_ENV !== 'production') {\n warn(false, 'uncaught error during route navigation:');\n }\n console.error(err);\n }\n }\n onAbort && onAbort(err);\n };\n var lastRouteIndex = route.matched.length - 1;\n var lastCurrentIndex = current.matched.length - 1;\n if (\n isSameRoute(route, current) &&\n // in the case the route map has been dynamically appended to\n lastRouteIndex === lastCurrentIndex &&\n route.matched[lastRouteIndex] === current.matched[lastCurrentIndex]\n ) {\n this.ensureURL();\n if (route.hash) {\n handleScroll(this.router, current, route, false);\n }\n return abort(createNavigationDuplicatedError(current, route))\n }\n\n var ref = resolveQueue(\n this.current.matched,\n route.matched\n );\n var updated = ref.updated;\n var deactivated = ref.deactivated;\n var activated = ref.activated;\n\n var queue = [].concat(\n // in-component leave guards\n extractLeaveGuards(deactivated),\n // global before hooks\n this.router.beforeHooks,\n // in-component update hooks\n extractUpdateHooks(updated),\n // in-config enter guards\n activated.map(function (m) { return m.beforeEnter; }),\n // async components\n resolveAsyncComponents(activated)\n );\n\n var iterator = function (hook, next) {\n if (this$1$1.pending !== route) {\n return abort(createNavigationCancelledError(current, route))\n }\n try {\n hook(route, current, function (to) {\n if (to === false) {\n // next(false) -> abort navigation, ensure current URL\n this$1$1.ensureURL(true);\n abort(createNavigationAbortedError(current, route));\n } else if (isError(to)) {\n this$1$1.ensureURL(true);\n abort(to);\n } else if (\n typeof to === 'string' ||\n (typeof to === 'object' &&\n (typeof to.path === 'string' || typeof to.name === 'string'))\n ) {\n // next('/') or next({ path: '/' }) -> redirect\n abort(createNavigationRedirectedError(current, route));\n if (typeof to === 'object' && to.replace) {\n this$1$1.replace(to);\n } else {\n this$1$1.push(to);\n }\n } else {\n // confirm transition and pass on the value\n next(to);\n }\n });\n } catch (e) {\n abort(e);\n }\n };\n\n runQueue(queue, iterator, function () {\n // wait until async components are resolved before\n // extracting in-component enter guards\n var enterGuards = extractEnterGuards(activated);\n var queue = enterGuards.concat(this$1$1.router.resolveHooks);\n runQueue(queue, iterator, function () {\n if (this$1$1.pending !== route) {\n return abort(createNavigationCancelledError(current, route))\n }\n this$1$1.pending = null;\n onComplete(route);\n if (this$1$1.router.app) {\n this$1$1.router.app.$nextTick(function () {\n handleRouteEntered(route);\n });\n }\n });\n });\n};\n\nHistory.prototype.updateRoute = function updateRoute (route) {\n this.current = route;\n this.cb && this.cb(route);\n};\n\nHistory.prototype.setupListeners = function setupListeners () {\n // Default implementation is empty\n};\n\nHistory.prototype.teardown = function teardown () {\n // clean up event listeners\n // https://github.com/vuejs/vue-router/issues/2341\n this.listeners.forEach(function (cleanupListener) {\n cleanupListener();\n });\n this.listeners = [];\n\n // reset current history route\n // https://github.com/vuejs/vue-router/issues/3294\n this.current = START;\n this.pending = null;\n};\n\nfunction normalizeBase (base) {\n if (!base) {\n if (inBrowser) {\n // respect tag\n var baseEl = document.querySelector('base');\n base = (baseEl && baseEl.getAttribute('href')) || '/';\n // strip full URL origin\n base = base.replace(/^https?:\\/\\/[^\\/]+/, '');\n } else {\n base = '/';\n }\n }\n // make sure there's the starting slash\n if (base.charAt(0) !== '/') {\n base = '/' + base;\n }\n // remove trailing slash\n return base.replace(/\\/$/, '')\n}\n\nfunction resolveQueue (\n current,\n next\n) {\n var i;\n var max = Math.max(current.length, next.length);\n for (i = 0; i < max; i++) {\n if (current[i] !== next[i]) {\n break\n }\n }\n return {\n updated: next.slice(0, i),\n activated: next.slice(i),\n deactivated: current.slice(i)\n }\n}\n\nfunction extractGuards (\n records,\n name,\n bind,\n reverse\n) {\n var guards = flatMapComponents(records, function (def, instance, match, key) {\n var guard = extractGuard(def, name);\n if (guard) {\n return Array.isArray(guard)\n ? guard.map(function (guard) { return bind(guard, instance, match, key); })\n : bind(guard, instance, match, key)\n }\n });\n return flatten(reverse ? guards.reverse() : guards)\n}\n\nfunction extractGuard (\n def,\n key\n) {\n if (typeof def !== 'function') {\n // extend now so that global mixins are applied.\n def = _Vue.extend(def);\n }\n return def.options[key]\n}\n\nfunction extractLeaveGuards (deactivated) {\n return extractGuards(deactivated, 'beforeRouteLeave', bindGuard, true)\n}\n\nfunction extractUpdateHooks (updated) {\n return extractGuards(updated, 'beforeRouteUpdate', bindGuard)\n}\n\nfunction bindGuard (guard, instance) {\n if (instance) {\n return function boundRouteGuard () {\n return guard.apply(instance, arguments)\n }\n }\n}\n\nfunction extractEnterGuards (\n activated\n) {\n return extractGuards(\n activated,\n 'beforeRouteEnter',\n function (guard, _, match, key) {\n return bindEnterGuard(guard, match, key)\n }\n )\n}\n\nfunction bindEnterGuard (\n guard,\n match,\n key\n) {\n return function routeEnterGuard (to, from, next) {\n return guard(to, from, function (cb) {\n if (typeof cb === 'function') {\n if (!match.enteredCbs[key]) {\n match.enteredCbs[key] = [];\n }\n match.enteredCbs[key].push(cb);\n }\n next(cb);\n })\n }\n}\n\n/* */\n\nvar HTML5History = /*@__PURE__*/(function (History) {\n function HTML5History (router, base) {\n History.call(this, router, base);\n\n this._startLocation = getLocation(this.base);\n }\n\n if ( History ) HTML5History.__proto__ = History;\n HTML5History.prototype = Object.create( History && History.prototype );\n HTML5History.prototype.constructor = HTML5History;\n\n HTML5History.prototype.setupListeners = function setupListeners () {\n var this$1$1 = this;\n\n if (this.listeners.length > 0) {\n return\n }\n\n var router = this.router;\n var expectScroll = router.options.scrollBehavior;\n var supportsScroll = supportsPushState && expectScroll;\n\n if (supportsScroll) {\n this.listeners.push(setupScroll());\n }\n\n var handleRoutingEvent = function () {\n var current = this$1$1.current;\n\n // Avoiding first `popstate` event dispatched in some browsers but first\n // history route not updated since async guard at the same time.\n var location = getLocation(this$1$1.base);\n if (this$1$1.current === START && location === this$1$1._startLocation) {\n return\n }\n\n this$1$1.transitionTo(location, function (route) {\n if (supportsScroll) {\n handleScroll(router, route, current, true);\n }\n });\n };\n window.addEventListener('popstate', handleRoutingEvent);\n this.listeners.push(function () {\n window.removeEventListener('popstate', handleRoutingEvent);\n });\n };\n\n HTML5History.prototype.go = function go (n) {\n window.history.go(n);\n };\n\n HTML5History.prototype.push = function push (location, onComplete, onAbort) {\n var this$1$1 = this;\n\n var ref = this;\n var fromRoute = ref.current;\n this.transitionTo(location, function (route) {\n pushState(cleanPath(this$1$1.base + route.fullPath));\n handleScroll(this$1$1.router, route, fromRoute, false);\n onComplete && onComplete(route);\n }, onAbort);\n };\n\n HTML5History.prototype.replace = function replace (location, onComplete, onAbort) {\n var this$1$1 = this;\n\n var ref = this;\n var fromRoute = ref.current;\n this.transitionTo(location, function (route) {\n replaceState(cleanPath(this$1$1.base + route.fullPath));\n handleScroll(this$1$1.router, route, fromRoute, false);\n onComplete && onComplete(route);\n }, onAbort);\n };\n\n HTML5History.prototype.ensureURL = function ensureURL (push) {\n if (getLocation(this.base) !== this.current.fullPath) {\n var current = cleanPath(this.base + this.current.fullPath);\n push ? pushState(current) : replaceState(current);\n }\n };\n\n HTML5History.prototype.getCurrentLocation = function getCurrentLocation () {\n return getLocation(this.base)\n };\n\n return HTML5History;\n}(History));\n\nfunction getLocation (base) {\n var path = window.location.pathname;\n var pathLowerCase = path.toLowerCase();\n var baseLowerCase = base.toLowerCase();\n // base=\"/a\" shouldn't turn path=\"/app\" into \"/a/pp\"\n // https://github.com/vuejs/vue-router/issues/3555\n // so we ensure the trailing slash in the base\n if (base && ((pathLowerCase === baseLowerCase) ||\n (pathLowerCase.indexOf(cleanPath(baseLowerCase + '/')) === 0))) {\n path = path.slice(base.length);\n }\n return (path || '/') + window.location.search + window.location.hash\n}\n\n/* */\n\nvar HashHistory = /*@__PURE__*/(function (History) {\n function HashHistory (router, base, fallback) {\n History.call(this, router, base);\n // check history fallback deeplinking\n if (fallback && checkFallback(this.base)) {\n return\n }\n ensureSlash();\n }\n\n if ( History ) HashHistory.__proto__ = History;\n HashHistory.prototype = Object.create( History && History.prototype );\n HashHistory.prototype.constructor = HashHistory;\n\n // this is delayed until the app mounts\n // to avoid the hashchange listener being fired too early\n HashHistory.prototype.setupListeners = function setupListeners () {\n var this$1$1 = this;\n\n if (this.listeners.length > 0) {\n return\n }\n\n var router = this.router;\n var expectScroll = router.options.scrollBehavior;\n var supportsScroll = supportsPushState && expectScroll;\n\n if (supportsScroll) {\n this.listeners.push(setupScroll());\n }\n\n var handleRoutingEvent = function () {\n var current = this$1$1.current;\n if (!ensureSlash()) {\n return\n }\n this$1$1.transitionTo(getHash(), function (route) {\n if (supportsScroll) {\n handleScroll(this$1$1.router, route, current, true);\n }\n if (!supportsPushState) {\n replaceHash(route.fullPath);\n }\n });\n };\n var eventType = supportsPushState ? 'popstate' : 'hashchange';\n window.addEventListener(\n eventType,\n handleRoutingEvent\n );\n this.listeners.push(function () {\n window.removeEventListener(eventType, handleRoutingEvent);\n });\n };\n\n HashHistory.prototype.push = function push (location, onComplete, onAbort) {\n var this$1$1 = this;\n\n var ref = this;\n var fromRoute = ref.current;\n this.transitionTo(\n location,\n function (route) {\n pushHash(route.fullPath);\n handleScroll(this$1$1.router, route, fromRoute, false);\n onComplete && onComplete(route);\n },\n onAbort\n );\n };\n\n HashHistory.prototype.replace = function replace (location, onComplete, onAbort) {\n var this$1$1 = this;\n\n var ref = this;\n var fromRoute = ref.current;\n this.transitionTo(\n location,\n function (route) {\n replaceHash(route.fullPath);\n handleScroll(this$1$1.router, route, fromRoute, false);\n onComplete && onComplete(route);\n },\n onAbort\n );\n };\n\n HashHistory.prototype.go = function go (n) {\n window.history.go(n);\n };\n\n HashHistory.prototype.ensureURL = function ensureURL (push) {\n var current = this.current.fullPath;\n if (getHash() !== current) {\n push ? pushHash(current) : replaceHash(current);\n }\n };\n\n HashHistory.prototype.getCurrentLocation = function getCurrentLocation () {\n return getHash()\n };\n\n return HashHistory;\n}(History));\n\nfunction checkFallback (base) {\n var location = getLocation(base);\n if (!/^\\/#/.test(location)) {\n window.location.replace(cleanPath(base + '/#' + location));\n return true\n }\n}\n\nfunction ensureSlash () {\n var path = getHash();\n if (path.charAt(0) === '/') {\n return true\n }\n replaceHash('/' + path);\n return false\n}\n\nfunction getHash () {\n // We can't use window.location.hash here because it's not\n // consistent across browsers - Firefox will pre-decode it!\n var href = window.location.href;\n var index = href.indexOf('#');\n // empty path\n if (index < 0) { return '' }\n\n href = href.slice(index + 1);\n\n return href\n}\n\nfunction getUrl (path) {\n var href = window.location.href;\n var i = href.indexOf('#');\n var base = i >= 0 ? href.slice(0, i) : href;\n return (base + \"#\" + path)\n}\n\nfunction pushHash (path) {\n if (supportsPushState) {\n pushState(getUrl(path));\n } else {\n window.location.hash = path;\n }\n}\n\nfunction replaceHash (path) {\n if (supportsPushState) {\n replaceState(getUrl(path));\n } else {\n window.location.replace(getUrl(path));\n }\n}\n\n/* */\n\nvar AbstractHistory = /*@__PURE__*/(function (History) {\n function AbstractHistory (router, base) {\n History.call(this, router, base);\n this.stack = [];\n this.index = -1;\n }\n\n if ( History ) AbstractHistory.__proto__ = History;\n AbstractHistory.prototype = Object.create( History && History.prototype );\n AbstractHistory.prototype.constructor = AbstractHistory;\n\n AbstractHistory.prototype.push = function push (location, onComplete, onAbort) {\n var this$1$1 = this;\n\n this.transitionTo(\n location,\n function (route) {\n this$1$1.stack = this$1$1.stack.slice(0, this$1$1.index + 1).concat(route);\n this$1$1.index++;\n onComplete && onComplete(route);\n },\n onAbort\n );\n };\n\n AbstractHistory.prototype.replace = function replace (location, onComplete, onAbort) {\n var this$1$1 = this;\n\n this.transitionTo(\n location,\n function (route) {\n this$1$1.stack = this$1$1.stack.slice(0, this$1$1.index).concat(route);\n onComplete && onComplete(route);\n },\n onAbort\n );\n };\n\n AbstractHistory.prototype.go = function go (n) {\n var this$1$1 = this;\n\n var targetIndex = this.index + n;\n if (targetIndex < 0 || targetIndex >= this.stack.length) {\n return\n }\n var route = this.stack[targetIndex];\n this.confirmTransition(\n route,\n function () {\n var prev = this$1$1.current;\n this$1$1.index = targetIndex;\n this$1$1.updateRoute(route);\n this$1$1.router.afterHooks.forEach(function (hook) {\n hook && hook(route, prev);\n });\n },\n function (err) {\n if (isNavigationFailure(err, NavigationFailureType.duplicated)) {\n this$1$1.index = targetIndex;\n }\n }\n );\n };\n\n AbstractHistory.prototype.getCurrentLocation = function getCurrentLocation () {\n var current = this.stack[this.stack.length - 1];\n return current ? current.fullPath : '/'\n };\n\n AbstractHistory.prototype.ensureURL = function ensureURL () {\n // noop\n };\n\n return AbstractHistory;\n}(History));\n\n/* */\n\n\n\nvar VueRouter = function VueRouter (options) {\n if ( options === void 0 ) options = {};\n\n if (process.env.NODE_ENV !== 'production') {\n warn(this instanceof VueRouter, \"Router must be called with the new operator.\");\n }\n this.app = null;\n this.apps = [];\n this.options = options;\n this.beforeHooks = [];\n this.resolveHooks = [];\n this.afterHooks = [];\n this.matcher = createMatcher(options.routes || [], this);\n\n var mode = options.mode || 'hash';\n this.fallback =\n mode === 'history' && !supportsPushState && options.fallback !== false;\n if (this.fallback) {\n mode = 'hash';\n }\n if (!inBrowser) {\n mode = 'abstract';\n }\n this.mode = mode;\n\n switch (mode) {\n case 'history':\n this.history = new HTML5History(this, options.base);\n break\n case 'hash':\n this.history = new HashHistory(this, options.base, this.fallback);\n break\n case 'abstract':\n this.history = new AbstractHistory(this, options.base);\n break\n default:\n if (process.env.NODE_ENV !== 'production') {\n assert(false, (\"invalid mode: \" + mode));\n }\n }\n};\n\nvar prototypeAccessors = { currentRoute: { configurable: true } };\n\nVueRouter.prototype.match = function match (raw, current, redirectedFrom) {\n return this.matcher.match(raw, current, redirectedFrom)\n};\n\nprototypeAccessors.currentRoute.get = function () {\n return this.history && this.history.current\n};\n\nVueRouter.prototype.init = function init (app /* Vue component instance */) {\n var this$1$1 = this;\n\n process.env.NODE_ENV !== 'production' &&\n assert(\n install.installed,\n \"not installed. Make sure to call `Vue.use(VueRouter)` \" +\n \"before creating root instance.\"\n );\n\n this.apps.push(app);\n\n // set up app destroyed handler\n // https://github.com/vuejs/vue-router/issues/2639\n app.$once('hook:destroyed', function () {\n // clean out app from this.apps array once destroyed\n var index = this$1$1.apps.indexOf(app);\n if (index > -1) { this$1$1.apps.splice(index, 1); }\n // ensure we still have a main app or null if no apps\n // we do not release the router so it can be reused\n if (this$1$1.app === app) { this$1$1.app = this$1$1.apps[0] || null; }\n\n if (!this$1$1.app) { this$1$1.history.teardown(); }\n });\n\n // main app previously initialized\n // return as we don't need to set up new history listener\n if (this.app) {\n return\n }\n\n this.app = app;\n\n var history = this.history;\n\n if (history instanceof HTML5History || history instanceof HashHistory) {\n var handleInitialScroll = function (routeOrError) {\n var from = history.current;\n var expectScroll = this$1$1.options.scrollBehavior;\n var supportsScroll = supportsPushState && expectScroll;\n\n if (supportsScroll && 'fullPath' in routeOrError) {\n handleScroll(this$1$1, routeOrError, from, false);\n }\n };\n var setupListeners = function (routeOrError) {\n history.setupListeners();\n handleInitialScroll(routeOrError);\n };\n history.transitionTo(\n history.getCurrentLocation(),\n setupListeners,\n setupListeners\n );\n }\n\n history.listen(function (route) {\n this$1$1.apps.forEach(function (app) {\n app._route = route;\n });\n });\n};\n\nVueRouter.prototype.beforeEach = function beforeEach (fn) {\n return registerHook(this.beforeHooks, fn)\n};\n\nVueRouter.prototype.beforeResolve = function beforeResolve (fn) {\n return registerHook(this.resolveHooks, fn)\n};\n\nVueRouter.prototype.afterEach = function afterEach (fn) {\n return registerHook(this.afterHooks, fn)\n};\n\nVueRouter.prototype.onReady = function onReady (cb, errorCb) {\n this.history.onReady(cb, errorCb);\n};\n\nVueRouter.prototype.onError = function onError (errorCb) {\n this.history.onError(errorCb);\n};\n\nVueRouter.prototype.push = function push (location, onComplete, onAbort) {\n var this$1$1 = this;\n\n // $flow-disable-line\n if (!onComplete && !onAbort && typeof Promise !== 'undefined') {\n return new Promise(function (resolve, reject) {\n this$1$1.history.push(location, resolve, reject);\n })\n } else {\n this.history.push(location, onComplete, onAbort);\n }\n};\n\nVueRouter.prototype.replace = function replace (location, onComplete, onAbort) {\n var this$1$1 = this;\n\n // $flow-disable-line\n if (!onComplete && !onAbort && typeof Promise !== 'undefined') {\n return new Promise(function (resolve, reject) {\n this$1$1.history.replace(location, resolve, reject);\n })\n } else {\n this.history.replace(location, onComplete, onAbort);\n }\n};\n\nVueRouter.prototype.go = function go (n) {\n this.history.go(n);\n};\n\nVueRouter.prototype.back = function back () {\n this.go(-1);\n};\n\nVueRouter.prototype.forward = function forward () {\n this.go(1);\n};\n\nVueRouter.prototype.getMatchedComponents = function getMatchedComponents (to) {\n var route = to\n ? to.matched\n ? to\n : this.resolve(to).route\n : this.currentRoute;\n if (!route) {\n return []\n }\n return [].concat.apply(\n [],\n route.matched.map(function (m) {\n return Object.keys(m.components).map(function (key) {\n return m.components[key]\n })\n })\n )\n};\n\nVueRouter.prototype.resolve = function resolve (\n to,\n current,\n append\n) {\n current = current || this.history.current;\n var location = normalizeLocation(to, current, append, this);\n var route = this.match(location, current);\n var fullPath = route.redirectedFrom || route.fullPath;\n var base = this.history.base;\n var href = createHref(base, fullPath, this.mode);\n return {\n location: location,\n route: route,\n href: href,\n // for backwards compat\n normalizedTo: location,\n resolved: route\n }\n};\n\nVueRouter.prototype.getRoutes = function getRoutes () {\n return this.matcher.getRoutes()\n};\n\nVueRouter.prototype.addRoute = function addRoute (parentOrRoute, route) {\n this.matcher.addRoute(parentOrRoute, route);\n if (this.history.current !== START) {\n this.history.transitionTo(this.history.getCurrentLocation());\n }\n};\n\nVueRouter.prototype.addRoutes = function addRoutes (routes) {\n if (process.env.NODE_ENV !== 'production') {\n warn(false, 'router.addRoutes() is deprecated and has been removed in Vue Router 4. Use router.addRoute() instead.');\n }\n this.matcher.addRoutes(routes);\n if (this.history.current !== START) {\n this.history.transitionTo(this.history.getCurrentLocation());\n }\n};\n\nObject.defineProperties( VueRouter.prototype, prototypeAccessors );\n\nvar VueRouter$1 = VueRouter;\n\nfunction registerHook (list, fn) {\n list.push(fn);\n return function () {\n var i = list.indexOf(fn);\n if (i > -1) { list.splice(i, 1); }\n }\n}\n\nfunction createHref (base, fullPath, mode) {\n var path = mode === 'hash' ? '#' + fullPath : fullPath;\n return base ? cleanPath(base + '/' + path) : path\n}\n\n// We cannot remove this as it would be a breaking change\nVueRouter.install = install;\nVueRouter.version = '3.6.5';\nVueRouter.isNavigationFailure = isNavigationFailure;\nVueRouter.NavigationFailureType = NavigationFailureType;\nVueRouter.START_LOCATION = START;\n\nif (inBrowser && window.Vue) {\n window.Vue.use(VueRouter);\n}\n\nvar version = '3.6.5';\n\nexport { NavigationFailureType, Link as RouterLink, View as RouterView, START as START_LOCATION, VueRouter$1 as default, isNavigationFailure, version };\n","import { generateUrl } from '@nextcloud/router';\nimport queryString from 'query-string';\nimport Router from 'vue-router';\nimport Vue from 'vue';\nVue.use(Router);\n// Prevent router from throwing errors when we're already on the page we're trying to go to\nconst originalPush = Router.prototype.push;\nRouter.prototype.push = function push(to, onComplete, onAbort) {\n if (onComplete || onAbort)\n return originalPush.call(this, to, onComplete, onAbort);\n return originalPush.call(this, to).catch(err => err);\n};\nconst router = new Router({\n mode: 'history',\n // if index.php is in the url AND we got this far, then it's working:\n // let's keep using index.php in the url\n base: generateUrl('/apps/files'),\n linkActiveClass: 'active',\n routes: [\n {\n path: '/',\n // Pretending we're using the default view\n redirect: { name: 'filelist', params: { view: 'files' } },\n },\n {\n path: '/:view/:fileid(\\\\d+)?',\n name: 'filelist',\n props: true,\n },\n ],\n // Custom stringifyQuery to prevent encoding of slashes in the url\n stringifyQuery(query) {\n const result = queryString.stringify(query).replace(/%2F/gmi, '/');\n return result ? ('?' + result) : '';\n },\n});\nexport default router;\n","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('NcContent',{attrs:{\"app-name\":\"files\"}},[_c('Navigation'),_vm._v(\" \"),_c('FilesList')],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./Cog.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Cog.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./Cog.vue?vue&type=template&id=89df8f2e\"\nimport script from \"./Cog.vue?vue&type=script&lang=js\"\nexport * from \"./Cog.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon cog-icon\",attrs:{\"aria-hidden\":_vm.title ? null : true,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M12,15.5A3.5,3.5 0 0,1 8.5,12A3.5,3.5 0 0,1 12,8.5A3.5,3.5 0 0,1 15.5,12A3.5,3.5 0 0,1 12,15.5M19.43,12.97C19.47,12.65 19.5,12.33 19.5,12C19.5,11.67 19.47,11.34 19.43,11L21.54,9.37C21.73,9.22 21.78,8.95 21.66,8.73L19.66,5.27C19.54,5.05 19.27,4.96 19.05,5.05L16.56,6.05C16.04,5.66 15.5,5.32 14.87,5.07L14.5,2.42C14.46,2.18 14.25,2 14,2H10C9.75,2 9.54,2.18 9.5,2.42L9.13,5.07C8.5,5.32 7.96,5.66 7.44,6.05L4.95,5.05C4.73,4.96 4.46,5.05 4.34,5.27L2.34,8.73C2.21,8.95 2.27,9.22 2.46,9.37L4.57,11C4.53,11.34 4.5,11.67 4.5,12C4.5,12.33 4.53,12.65 4.57,12.97L2.46,14.63C2.27,14.78 2.21,15.05 2.34,15.27L4.34,18.73C4.46,18.95 4.73,19.03 4.95,18.95L7.44,17.94C7.96,18.34 8.5,18.68 9.13,18.93L9.5,21.58C9.54,21.82 9.75,22 10,22H14C14.25,22 14.46,21.82 14.5,21.58L14.87,18.93C15.5,18.67 16.04,18.34 16.56,17.94L19.05,18.95C19.27,19.03 19.54,18.95 19.66,18.73L21.66,15.27C21.78,15.05 21.73,14.78 21.54,14.63L19.43,12.97Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/* eslint-disable no-undefined,no-param-reassign,no-shadow */\n\n/**\n * Throttle execution of a function. Especially useful for rate limiting\n * execution of handlers on events like resize and scroll.\n *\n * @param {number} delay - A zero-or-greater delay in milliseconds. For event callbacks, values around 100 or 250 (or even higher)\n * are most useful.\n * @param {Function} callback - A function to be executed after delay milliseconds. The `this` context and all arguments are passed through,\n * as-is, to `callback` when the throttled-function is executed.\n * @param {object} [options] - An object to configure options.\n * @param {boolean} [options.noTrailing] - Optional, defaults to false. If noTrailing is true, callback will only execute every `delay` milliseconds\n * while the throttled-function is being called. If noTrailing is false or unspecified, callback will be executed\n * one final time after the last throttled-function call. (After the throttled-function has not been called for\n * `delay` milliseconds, the internal counter is reset).\n * @param {boolean} [options.noLeading] - Optional, defaults to false. If noLeading is false, the first throttled-function call will execute callback\n * immediately. If noLeading is true, the first the callback execution will be skipped. It should be noted that\n * callback will never executed if both noLeading = true and noTrailing = true.\n * @param {boolean} [options.debounceMode] - If `debounceMode` is true (at begin), schedule `clear` to execute after `delay` ms. If `debounceMode` is\n * false (at end), schedule `callback` to execute after `delay` ms.\n *\n * @returns {Function} A new, throttled, function.\n */\nfunction throttle (delay, callback, options) {\n var _ref = options || {},\n _ref$noTrailing = _ref.noTrailing,\n noTrailing = _ref$noTrailing === void 0 ? false : _ref$noTrailing,\n _ref$noLeading = _ref.noLeading,\n noLeading = _ref$noLeading === void 0 ? false : _ref$noLeading,\n _ref$debounceMode = _ref.debounceMode,\n debounceMode = _ref$debounceMode === void 0 ? undefined : _ref$debounceMode;\n /*\n * After wrapper has stopped being called, this timeout ensures that\n * `callback` is executed at the proper times in `throttle` and `end`\n * debounce modes.\n */\n\n\n var timeoutID;\n var cancelled = false; // Keep track of the last time `callback` was executed.\n\n var lastExec = 0; // Function to clear existing timeout\n\n function clearExistingTimeout() {\n if (timeoutID) {\n clearTimeout(timeoutID);\n }\n } // Function to cancel next exec\n\n\n function cancel(options) {\n var _ref2 = options || {},\n _ref2$upcomingOnly = _ref2.upcomingOnly,\n upcomingOnly = _ref2$upcomingOnly === void 0 ? false : _ref2$upcomingOnly;\n\n clearExistingTimeout();\n cancelled = !upcomingOnly;\n }\n /*\n * The `wrapper` function encapsulates all of the throttling / debouncing\n * functionality and when executed will limit the rate at which `callback`\n * is executed.\n */\n\n\n function wrapper() {\n for (var _len = arguments.length, arguments_ = new Array(_len), _key = 0; _key < _len; _key++) {\n arguments_[_key] = arguments[_key];\n }\n\n var self = this;\n var elapsed = Date.now() - lastExec;\n\n if (cancelled) {\n return;\n } // Execute `callback` and update the `lastExec` timestamp.\n\n\n function exec() {\n lastExec = Date.now();\n callback.apply(self, arguments_);\n }\n /*\n * If `debounceMode` is true (at begin) this is used to clear the flag\n * to allow future `callback` executions.\n */\n\n\n function clear() {\n timeoutID = undefined;\n }\n\n if (!noLeading && debounceMode && !timeoutID) {\n /*\n * Since `wrapper` is being called for the first time and\n * `debounceMode` is true (at begin), execute `callback`\n * and noLeading != true.\n */\n exec();\n }\n\n clearExistingTimeout();\n\n if (debounceMode === undefined && elapsed > delay) {\n if (noLeading) {\n /*\n * In throttle mode with noLeading, if `delay` time has\n * been exceeded, update `lastExec` and schedule `callback`\n * to execute after `delay` ms.\n */\n lastExec = Date.now();\n\n if (!noTrailing) {\n timeoutID = setTimeout(debounceMode ? clear : exec, delay);\n }\n } else {\n /*\n * In throttle mode without noLeading, if `delay` time has been exceeded, execute\n * `callback`.\n */\n exec();\n }\n } else if (noTrailing !== true) {\n /*\n * In trailing throttle mode, since `delay` time has not been\n * exceeded, schedule `callback` to execute `delay` ms after most\n * recent execution.\n *\n * If `debounceMode` is true (at begin), schedule `clear` to execute\n * after `delay` ms.\n *\n * If `debounceMode` is false (at end), schedule `callback` to\n * execute after `delay` ms.\n */\n timeoutID = setTimeout(debounceMode ? clear : exec, debounceMode === undefined ? delay - elapsed : delay);\n }\n }\n\n wrapper.cancel = cancel; // Return the wrapper function.\n\n return wrapper;\n}\n\n/* eslint-disable no-undefined */\n/**\n * Debounce execution of a function. Debouncing, unlike throttling,\n * guarantees that a function is only executed a single time, either at the\n * very beginning of a series of calls, or at the very end.\n *\n * @param {number} delay - A zero-or-greater delay in milliseconds. For event callbacks, values around 100 or 250 (or even higher) are most useful.\n * @param {Function} callback - A function to be executed after delay milliseconds. The `this` context and all arguments are passed through, as-is,\n * to `callback` when the debounced-function is executed.\n * @param {object} [options] - An object to configure options.\n * @param {boolean} [options.atBegin] - Optional, defaults to false. If atBegin is false or unspecified, callback will only be executed `delay` milliseconds\n * after the last debounced-function call. If atBegin is true, callback will be executed only at the first debounced-function call.\n * (After the throttled-function has not been called for `delay` milliseconds, the internal counter is reset).\n *\n * @returns {Function} A new, debounced function.\n */\n\nfunction debounce (delay, callback, options) {\n var _ref = options || {},\n _ref$atBegin = _ref.atBegin,\n atBegin = _ref$atBegin === void 0 ? false : _ref$atBegin;\n\n return throttle(delay, callback, {\n debounceMode: atBegin !== false\n });\n}\n\nexport { debounce, throttle };\n//# sourceMappingURL=index.js.map\n","\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./ChartPie.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./ChartPie.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ChartPie.vue?vue&type=template&id=b117066e\"\nimport script from \"./ChartPie.vue?vue&type=script&lang=js\"\nexport * from \"./ChartPie.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon chart-pie-icon\",attrs:{\"aria-hidden\":_vm.title ? null : true,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M11,2V22C5.9,21.5 2,17.2 2,12C2,6.8 5.9,2.5 11,2M13,2V11H22C21.5,6.2 17.8,2.5 13,2M13,13V22C17.7,21.5 21.5,17.8 22,13H13Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/**\n * SPDX-FileCopyrightText: 2022 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { getLoggerBuilder } from '@nextcloud/logger'\n\nexport default getLoggerBuilder()\n\t.setApp('files')\n\t.detectUser()\n\t.build()\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NavigationQuota.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NavigationQuota.vue?vue&type=script&lang=js\"","\n\n\n\n\n\n","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NavigationQuota.vue?vue&type=style&index=0&id=3e968815&prod&lang=scss&scoped=true\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NavigationQuota.vue?vue&type=style&index=0&id=3e968815&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./NavigationQuota.vue?vue&type=template&id=3e968815&scoped=true\"\nimport script from \"./NavigationQuota.vue?vue&type=script&lang=js\"\nexport * from \"./NavigationQuota.vue?vue&type=script&lang=js\"\nimport style0 from \"./NavigationQuota.vue?vue&type=style&index=0&id=3e968815&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"3e968815\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return (_vm.storageStats)?_c('NcAppNavigationItem',{staticClass:\"app-navigation-entry__settings-quota\",class:{ 'app-navigation-entry__settings-quota--not-unlimited': _vm.storageStats.quota >= 0},attrs:{\"aria-label\":_vm.t('files', 'Storage informations'),\"loading\":_vm.loadingStorageStats,\"name\":_vm.storageStatsTitle,\"title\":_vm.storageStatsTooltip,\"data-cy-files-navigation-settings-quota\":\"\"},on:{\"click\":function($event){$event.stopPropagation();$event.preventDefault();return _vm.debounceUpdateStorageStats.apply(null, arguments)}}},[_c('ChartPie',{attrs:{\"slot\":\"icon\",\"size\":20},slot:\"icon\"}),_vm._v(\" \"),(_vm.storageStats.quota >= 0)?_c('NcProgressBar',{attrs:{\"slot\":\"extra\",\"error\":_vm.storageStats.relative > 80,\"value\":Math.min(_vm.storageStats.relative, 100)},slot:\"extra\"}):_vm._e()],1):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('NcAppSettingsDialog',{attrs:{\"open\":_vm.open,\"show-navigation\":true,\"name\":_vm.t('files', 'Files settings')},on:{\"update:open\":_vm.onClose}},[_c('NcAppSettingsSection',{attrs:{\"id\":\"settings\",\"name\":_vm.t('files', 'Files settings')}},[_c('NcCheckboxRadioSwitch',{attrs:{\"data-cy-files-settings-setting\":\"sort_favorites_first\",\"checked\":_vm.userConfig.sort_favorites_first},on:{\"update:checked\":function($event){return _vm.setConfig('sort_favorites_first', $event)}}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('files', 'Sort favorites first'))+\"\\n\\t\\t\")]),_vm._v(\" \"),_c('NcCheckboxRadioSwitch',{attrs:{\"data-cy-files-settings-setting\":\"sort_folders_first\",\"checked\":_vm.userConfig.sort_folders_first},on:{\"update:checked\":function($event){return _vm.setConfig('sort_folders_first', $event)}}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('files', 'Sort folders before files'))+\"\\n\\t\\t\")]),_vm._v(\" \"),_c('NcCheckboxRadioSwitch',{attrs:{\"data-cy-files-settings-setting\":\"show_hidden\",\"checked\":_vm.userConfig.show_hidden},on:{\"update:checked\":function($event){return _vm.setConfig('show_hidden', $event)}}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('files', 'Show hidden files'))+\"\\n\\t\\t\")]),_vm._v(\" \"),_c('NcCheckboxRadioSwitch',{attrs:{\"data-cy-files-settings-setting\":\"crop_image_previews\",\"checked\":_vm.userConfig.crop_image_previews},on:{\"update:checked\":function($event){return _vm.setConfig('crop_image_previews', $event)}}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('files', 'Crop image previews'))+\"\\n\\t\\t\")]),_vm._v(\" \"),(_vm.enableGridView)?_c('NcCheckboxRadioSwitch',{attrs:{\"data-cy-files-settings-setting\":\"grid_view\",\"checked\":_vm.userConfig.grid_view},on:{\"update:checked\":function($event){return _vm.setConfig('grid_view', $event)}}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('files', 'Enable the grid view'))+\"\\n\\t\\t\")]):_vm._e()],1),_vm._v(\" \"),(_vm.settings.length !== 0)?_c('NcAppSettingsSection',{attrs:{\"id\":\"more-settings\",\"name\":_vm.t('files', 'Additional settings')}},[_vm._l((_vm.settings),function(setting){return [_c('Setting',{key:setting.name,attrs:{\"el\":setting.el}})]})],2):_vm._e(),_vm._v(\" \"),_c('NcAppSettingsSection',{attrs:{\"id\":\"webdav\",\"name\":_vm.t('files', 'WebDAV')}},[_c('NcInputField',{attrs:{\"id\":\"webdav-url-input\",\"label\":_vm.t('files', 'WebDAV URL'),\"show-trailing-button\":true,\"success\":_vm.webdavUrlCopied,\"trailing-button-label\":_vm.t('files', 'Copy to clipboard'),\"value\":_vm.webdavUrl,\"readonly\":\"readonly\",\"type\":\"url\"},on:{\"focus\":function($event){return $event.target.select()},\"trailing-button-click\":_vm.copyCloudId},scopedSlots:_vm._u([{key:\"trailing-button-icon\",fn:function(){return [_c('Clipboard',{attrs:{\"size\":20}})]},proxy:true}])}),_vm._v(\" \"),_c('em',[_c('a',{staticClass:\"setting-link\",attrs:{\"href\":_vm.webdavDocs,\"target\":\"_blank\",\"rel\":\"noreferrer noopener\"}},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('files', 'Use this address to access your Files via WebDAV'))+\" ↗\\n\\t\\t\\t\")])]),_vm._v(\" \"),_c('br'),_vm._v(\" \"),_c('em',[_c('a',{staticClass:\"setting-link\",attrs:{\"href\":_vm.appPasswordUrl}},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('files', 'If you have enabled 2FA, you must create and use a new app password by clicking here.'))+\" ↗\\n\\t\\t\\t\")])])],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./Clipboard.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Clipboard.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./Clipboard.vue?vue&type=template&id=0c133921\"\nimport script from \"./Clipboard.vue?vue&type=script&lang=js\"\nexport * from \"./Clipboard.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon clipboard-icon\",attrs:{\"aria-hidden\":_vm.title ? null : true,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M19,3H14.82C14.4,1.84 13.3,1 12,1C10.7,1 9.6,1.84 9.18,3H5A2,2 0 0,0 3,5V19A2,2 0 0,0 5,21H19A2,2 0 0,0 21,19V5A2,2 0 0,0 19,3M12,3A1,1 0 0,1 13,4A1,1 0 0,1 12,5A1,1 0 0,1 11,4A1,1 0 0,1 12,3\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Setting.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Setting.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./Setting.vue?vue&type=template&id=315a4ce8\"\nimport script from \"./Setting.vue?vue&type=script&lang=js\"\nexport * from \"./Setting.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div')\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { defineStore } from 'pinia';\nimport { emit, subscribe } from '@nextcloud/event-bus';\nimport { generateUrl } from '@nextcloud/router';\nimport { loadState } from '@nextcloud/initial-state';\nimport axios from '@nextcloud/axios';\nimport Vue from 'vue';\nconst userConfig = loadState('files', 'config', {\n show_hidden: false,\n crop_image_previews: true,\n sort_favorites_first: true,\n sort_folders_first: true,\n grid_view: false,\n});\nexport const useUserConfigStore = function (...args) {\n const store = defineStore('userconfig', {\n state: () => ({\n userConfig,\n }),\n actions: {\n /**\n * Update the user config local store\n */\n onUpdate(key, value) {\n Vue.set(this.userConfig, key, value);\n },\n /**\n * Update the user config local store AND on server side\n */\n async update(key, value) {\n await axios.put(generateUrl('/apps/files/api/v1/config/' + key), {\n value,\n });\n emit('files:config:updated', { key, value });\n },\n },\n });\n const userConfigStore = store(...args);\n // Make sure we only register the listeners once\n if (!userConfigStore._initialized) {\n subscribe('files:config:updated', function ({ key, value }) {\n userConfigStore.onUpdate(key, value);\n });\n userConfigStore._initialized = true;\n }\n return userConfigStore;\n};\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Settings.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Settings.vue?vue&type=script&lang=js\"","\n\n\n\n\n\n","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Settings.vue?vue&type=style&index=0&id=44764f8d&prod&lang=scss&scoped=true\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Settings.vue?vue&type=style&index=0&id=44764f8d&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./Settings.vue?vue&type=template&id=44764f8d&scoped=true\"\nimport script from \"./Settings.vue?vue&type=script&lang=js\"\nexport * from \"./Settings.vue?vue&type=script&lang=js\"\nimport style0 from \"./Settings.vue?vue&type=style&index=0&id=44764f8d&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"44764f8d\",\n null\n \n)\n\nexport default component.exports","import { getNavigation } from '@nextcloud/files';\nimport { onMounted, onUnmounted, shallowRef } from 'vue';\n/**\n * Composable to get the currently active files view from the files navigation\n */\nexport function useNavigation() {\n const navigation = getNavigation();\n const views = shallowRef(navigation.views);\n const currentView = shallowRef(navigation.active);\n /**\n * Event listener to update the `currentView`\n * @param event The update event\n */\n function onUpdateActive(event) {\n currentView.value = event.detail;\n }\n /**\n * Event listener to update all registered views\n */\n function onUpdateViews() {\n views.value = navigation.views;\n }\n onMounted(() => {\n navigation.addEventListener('update', onUpdateViews);\n navigation.addEventListener('updateActive', onUpdateActive);\n });\n onUnmounted(() => {\n navigation.removeEventListener('update', onUpdateViews);\n navigation.removeEventListener('updateActive', onUpdateActive);\n });\n return {\n currentView,\n views,\n };\n}\n","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { defineStore } from 'pinia';\nimport { emit, subscribe } from '@nextcloud/event-bus';\nimport { generateUrl } from '@nextcloud/router';\nimport { loadState } from '@nextcloud/initial-state';\nimport axios from '@nextcloud/axios';\nimport Vue from 'vue';\nconst viewConfig = loadState('files', 'viewConfigs', {});\nexport const useViewConfigStore = function (...args) {\n const store = defineStore('viewconfig', {\n state: () => ({\n viewConfig,\n }),\n getters: {\n getConfig: (state) => (view) => state.viewConfig[view] || {},\n },\n actions: {\n /**\n * Update the view config local store\n */\n onUpdate(view, key, value) {\n if (!this.viewConfig[view]) {\n Vue.set(this.viewConfig, view, {});\n }\n Vue.set(this.viewConfig[view], key, value);\n },\n /**\n * Update the view config local store AND on server side\n */\n async update(view, key, value) {\n axios.put(generateUrl(`/apps/files/api/v1/views/${view}/${key}`), {\n value,\n });\n emit('files:viewconfig:updated', { view, key, value });\n },\n /**\n * Set the sorting key AND sort by ASC\n * The key param must be a valid key of a File object\n * If not found, will be searched within the File attributes\n */\n setSortingBy(key = 'basename', view = 'files') {\n // Save new config\n this.update(view, 'sorting_mode', key);\n this.update(view, 'sorting_direction', 'asc');\n },\n /**\n * Toggle the sorting direction\n */\n toggleSortingDirection(view = 'files') {\n const config = this.getConfig(view) || { sorting_direction: 'asc' };\n const newDirection = config.sorting_direction === 'asc' ? 'desc' : 'asc';\n // Save new config\n this.update(view, 'sorting_direction', newDirection);\n },\n },\n });\n const viewConfigStore = store(...args);\n // Make sure we only register the listeners once\n if (!viewConfigStore._initialized) {\n subscribe('files:viewconfig:updated', function ({ view, key, value }) {\n viewConfigStore.onUpdate(view, key, value);\n });\n viewConfigStore._initialized = true;\n }\n return viewConfigStore;\n};\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Navigation.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Navigation.vue?vue&type=script&lang=ts\"","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('NcAppNavigation',{attrs:{\"data-cy-files-navigation\":\"\",\"aria-label\":_vm.t('files', 'Files')},scopedSlots:_vm._u([{key:\"list\",fn:function(){return _vm._l((_vm.parentViews),function(view){return _c('NcAppNavigationItem',{key:view.id,attrs:{\"allow-collapse\":true,\"data-cy-files-navigation-item\":view.id,\"exact\":_vm.useExactRouteMatching(view),\"icon\":view.iconClass,\"name\":view.name,\"open\":_vm.isExpanded(view),\"pinned\":view.sticky,\"to\":_vm.generateToNavigation(view)},on:{\"update:open\":function($event){return _vm.onToggleExpand(view)}}},[(view.icon)?_c('NcIconSvgWrapper',{attrs:{\"slot\":\"icon\",\"svg\":view.icon},slot:\"icon\"}):_vm._e(),_vm._v(\" \"),_vm._l((_vm.childViews[view.id]),function(child){return _c('NcAppNavigationItem',{key:child.id,attrs:{\"data-cy-files-navigation-item\":child.id,\"exact-path\":true,\"icon\":child.iconClass,\"name\":child.name,\"to\":_vm.generateToNavigation(child)}},[(child.icon)?_c('NcIconSvgWrapper',{attrs:{\"slot\":\"icon\",\"svg\":child.icon},slot:\"icon\"}):_vm._e()],1)})],2)})},proxy:true},{key:\"footer\",fn:function(){return [_c('ul',{staticClass:\"app-navigation-entry__settings\"},[_c('NavigationQuota'),_vm._v(\" \"),_c('NcAppNavigationItem',{attrs:{\"aria-label\":_vm.t('files', 'Open the files app settings'),\"name\":_vm.t('files', 'Files settings'),\"data-cy-files-navigation-settings-button\":\"\"},on:{\"click\":function($event){$event.preventDefault();$event.stopPropagation();return _vm.openSettings.apply(null, arguments)}}},[_c('IconCog',{attrs:{\"slot\":\"icon\",\"size\":20},slot:\"icon\"})],1)],1)]},proxy:true}])},[_vm._v(\" \"),_vm._v(\" \"),_c('SettingsModal',{attrs:{\"open\":_vm.settingsOpened,\"data-cy-files-navigation-settings\":\"\"},on:{\"close\":_vm.onSettingsClose}})],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Navigation.vue?vue&type=style&index=0&id=66457116&prod&scoped=true&lang=scss\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Navigation.vue?vue&type=style&index=0&id=66457116&prod&scoped=true&lang=scss\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./Navigation.vue?vue&type=template&id=66457116&scoped=true\"\nimport script from \"./Navigation.vue?vue&type=script&lang=ts\"\nexport * from \"./Navigation.vue?vue&type=script&lang=ts\"\nimport style0 from \"./Navigation.vue?vue&type=style&index=0&id=66457116&prod&scoped=true&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"66457116\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('NcAppContent',{attrs:{\"page-heading\":_vm.pageHeading,\"data-cy-files-content\":\"\"}},[_c('div',{staticClass:\"files-list__header\"},[_c('BreadCrumbs',{attrs:{\"path\":_vm.dir},on:{\"reload\":_vm.fetchContent},scopedSlots:_vm._u([{key:\"actions\",fn:function(){return [(_vm.canShare && _vm.filesListWidth >= 512)?_c('NcButton',{staticClass:\"files-list__header-share-button\",class:{ 'files-list__header-share-button--shared': _vm.shareButtonType },attrs:{\"aria-label\":_vm.shareButtonLabel,\"title\":_vm.shareButtonLabel,\"type\":\"tertiary\"},on:{\"click\":_vm.openSharingSidebar},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [(_vm.shareButtonType === _vm.Type.SHARE_TYPE_LINK)?_c('LinkIcon'):_c('AccountPlusIcon',{attrs:{\"size\":20}})]},proxy:true}],null,false,2969853559)}):_vm._e(),_vm._v(\" \"),(!_vm.canUpload || _vm.isQuotaExceeded)?_c('NcButton',{staticClass:\"files-list__header-upload-button--disabled\",attrs:{\"aria-label\":_vm.cantUploadLabel,\"title\":_vm.cantUploadLabel,\"disabled\":true,\"type\":\"secondary\"},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('PlusIcon',{attrs:{\"size\":20}})]},proxy:true}],null,false,2953566425)},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('files', 'New'))+\"\\n\\t\\t\\t\\t\")]):(_vm.currentFolder)?_c('UploadPicker',{staticClass:\"files-list__header-upload-button\",attrs:{\"allow-folders\":\"\",\"content\":_vm.getContent,\"destination\":_vm.currentFolder,\"forbidden-characters\":_vm.forbiddenCharacters,\"multiple\":\"\"},on:{\"failed\":_vm.onUploadFail,\"uploaded\":_vm.onUpload}}):_vm._e()]},proxy:true}])}),_vm._v(\" \"),(_vm.filesListWidth >= 512 && _vm.enableGridView)?_c('NcButton',{staticClass:\"files-list__header-grid-button\",attrs:{\"aria-label\":_vm.gridViewButtonLabel,\"title\":_vm.gridViewButtonLabel,\"type\":\"tertiary\"},on:{\"click\":_vm.toggleGridView},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [(_vm.userConfig.grid_view)?_c('ListViewIcon'):_c('ViewGridIcon')]},proxy:true}],null,false,1682960703)}):_vm._e(),_vm._v(\" \"),(_vm.isRefreshing)?_c('NcLoadingIcon',{staticClass:\"files-list__refresh-icon\"}):_vm._e()],1),_vm._v(\" \"),(!_vm.loading && _vm.canUpload)?_c('DragAndDropNotice',{attrs:{\"current-folder\":_vm.currentFolder}}):_vm._e(),_vm._v(\" \"),(_vm.loading && !_vm.isRefreshing)?_c('NcLoadingIcon',{staticClass:\"files-list__loading-icon\",attrs:{\"size\":38,\"name\":_vm.t('files', 'Loading current folder')}}):(!_vm.loading && _vm.isEmptyDir)?_c('NcEmptyContent',{attrs:{\"name\":_vm.currentView?.emptyTitle || _vm.t('files', 'No files in here'),\"description\":_vm.currentView?.emptyCaption || _vm.t('files', 'Upload some content or sync with your devices!'),\"data-cy-files-content-empty\":\"\"},scopedSlots:_vm._u([(_vm.dir !== '/')?{key:\"action\",fn:function(){return [(_vm.currentFolder && _vm.canUpload && !_vm.isQuotaExceeded)?_c('UploadPicker',{staticClass:\"files-list__header-upload-button\",attrs:{\"allow-folders\":\"\",\"content\":_vm.getContent,\"destination\":_vm.currentFolder,\"forbidden-characters\":_vm.forbiddenCharacters,\"multiple\":\"\"},on:{\"failed\":_vm.onUploadFail,\"uploaded\":_vm.onUpload}}):_c('NcButton',{attrs:{\"aria-label\":_vm.t('files', 'Go to the previous folder'),\"to\":_vm.toPreviousDir,\"type\":\"primary\"}},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('files', 'Go back'))+\"\\n\\t\\t\\t\")])]},proxy:true}:null,{key:\"icon\",fn:function(){return [_c('NcIconSvgWrapper',{attrs:{\"svg\":_vm.currentView.icon}})]},proxy:true}],null,true)}):_c('FilesListVirtual',{ref:\"filesListVirtual\",attrs:{\"current-folder\":_vm.currentFolder,\"current-view\":_vm.currentView,\"nodes\":_vm.dirContentsSorted}})],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./FormatListBulletedSquare.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./FormatListBulletedSquare.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./FormatListBulletedSquare.vue?vue&type=template&id=00aea13f\"\nimport script from \"./FormatListBulletedSquare.vue?vue&type=script&lang=js\"\nexport * from \"./FormatListBulletedSquare.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon format-list-bulleted-square-icon\",attrs:{\"aria-hidden\":_vm.title ? null : true,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M3,4H7V8H3V4M9,5V7H21V5H9M3,10H7V14H3V10M9,11V13H21V11H9M3,16H7V20H3V16M9,17V19H21V17H9\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./AccountPlus.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./AccountPlus.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./AccountPlus.vue?vue&type=template&id=a16afc28\"\nimport script from \"./AccountPlus.vue?vue&type=script&lang=js\"\nexport * from \"./AccountPlus.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon account-plus-icon\",attrs:{\"aria-hidden\":_vm.title ? null : true,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M15,14C12.33,14 7,15.33 7,18V20H23V18C23,15.33 17.67,14 15,14M6,10V7H4V10H1V12H4V15H6V12H9V10M15,12A4,4 0 0,0 19,8A4,4 0 0,0 15,4A4,4 0 0,0 11,8A4,4 0 0,0 15,12Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./ViewGrid.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./ViewGrid.vue?vue&type=script&lang=js\"","\n\n","import { render, staticRenderFns } from \"./ViewGrid.vue?vue&type=template&id=7b96a104\"\nimport script from \"./ViewGrid.vue?vue&type=script&lang=js\"\nexport * from \"./ViewGrid.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon view-grid-icon\",attrs:{\"aria-hidden\":_vm.title ? null : true,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M3,11H11V3H3M3,21H11V13H3M13,21H21V13H13M13,3V11H21V3\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { Permission, View, FileAction, FileType } from '@nextcloud/files';\nimport { translate as t } from '@nextcloud/l10n';\nimport InformationSvg from '@mdi/svg/svg/information-variant.svg?raw';\nimport logger from '../logger.js';\nexport const ACTION_DETAILS = 'details';\nexport const action = new FileAction({\n id: ACTION_DETAILS,\n displayName: () => t('files', 'Open details'),\n iconSvgInline: () => InformationSvg,\n // Sidebar currently supports user folder only, /files/USER\n enabled: (nodes) => {\n // Only works on single node\n if (nodes.length !== 1) {\n return false;\n }\n if (!nodes[0]) {\n return false;\n }\n // Only work if the sidebar is available\n if (!window?.OCA?.Files?.Sidebar) {\n return false;\n }\n return (nodes[0].root?.startsWith('/files/') && nodes[0].permissions !== Permission.NONE) ?? false;\n },\n async exec(node, view, dir) {\n try {\n // TODO: migrate Sidebar to use a Node instead\n await window.OCA.Files.Sidebar.open(node.path);\n // Silently update current fileid\n window.OCP.Files.Router.goToRoute(null, { view: view.id, fileid: node.fileid }, { ...window.OCP.Files.Router.query, dir }, true);\n return null;\n }\n catch (error) {\n logger.error('Error while opening sidebar', { error });\n return false;\n }\n },\n order: -50,\n});\n","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { davGetClient } from '@nextcloud/files';\nexport const client = davGetClient();\n","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { davGetDefaultPropfind, davResultToNode, davRootPath } from '@nextcloud/files';\nimport { defineStore } from 'pinia';\nimport { subscribe } from '@nextcloud/event-bus';\nimport logger from '../logger';\nimport Vue from 'vue';\nimport { client } from '../services/WebdavClient.ts';\nconst fetchNode = async (node) => {\n const propfindPayload = davGetDefaultPropfind();\n const result = await client.stat(`${davRootPath}${node.path}`, {\n details: true,\n data: propfindPayload,\n });\n return davResultToNode(result.data);\n};\nexport const useFilesStore = function (...args) {\n const store = defineStore('files', {\n state: () => ({\n files: {},\n roots: {},\n }),\n getters: {\n /**\n * Get a file or folder by its source\n */\n getNode: (state) => (source) => state.files[source],\n /**\n * Get a list of files or folders by their IDs\n * Note: does not return undefined values\n */\n getNodes: (state) => (sources) => sources\n .map(source => state.files[source])\n .filter(Boolean),\n /**\n * Get files or folders by their file ID\n * Multiple nodes can have the same file ID but different sources\n * (e.g. in a shared context)\n */\n getNodesById: (state) => (fileId) => Object.values(state.files).filter(node => node.fileid === fileId),\n /**\n * Get the root folder of a service\n */\n getRoot: (state) => (service) => state.roots[service],\n },\n actions: {\n updateNodes(nodes) {\n // Update the store all at once\n const files = nodes.reduce((acc, node) => {\n if (!node.fileid) {\n logger.error('Trying to update/set a node without fileid', { node });\n return acc;\n }\n acc[node.source] = node;\n return acc;\n }, {});\n Vue.set(this, 'files', { ...this.files, ...files });\n },\n deleteNodes(nodes) {\n nodes.forEach(node => {\n if (node.source) {\n Vue.delete(this.files, node.source);\n }\n });\n },\n setRoot({ service, root }) {\n Vue.set(this.roots, service, root);\n },\n onDeletedNode(node) {\n this.deleteNodes([node]);\n },\n onCreatedNode(node) {\n this.updateNodes([node]);\n },\n async onUpdatedNode(node) {\n if (!node.fileid) {\n logger.error('Trying to update/set a node without fileid', { node });\n return;\n }\n // If we have multiple nodes with the same file ID, we need to update all of them\n const nodes = this.getNodesById(node.fileid);\n if (nodes.length > 1) {\n await Promise.all(nodes.map(fetchNode)).then(this.updateNodes);\n logger.debug(nodes.length + ' nodes updated in store', { fileid: node.fileid });\n return;\n }\n // If we have only one node with the file ID, we can update it directly\n if (node.source === nodes[0].source) {\n this.updateNodes([node]);\n return;\n }\n // Otherwise, it means we receive an event for a node that is not in the store\n fetchNode(node).then(n => this.updateNodes([n]));\n },\n },\n });\n const fileStore = store(...args);\n // Make sure we only register the listeners once\n if (!fileStore._initialized) {\n subscribe('files:node:created', fileStore.onCreatedNode);\n subscribe('files:node:deleted', fileStore.onDeletedNode);\n subscribe('files:node:updated', fileStore.onUpdatedNode);\n fileStore._initialized = true;\n }\n return fileStore;\n};\n","import { defineStore } from 'pinia';\nimport { FileType, Folder, Node, getNavigation } from '@nextcloud/files';\nimport { subscribe } from '@nextcloud/event-bus';\nimport Vue from 'vue';\nimport logger from '../logger';\nimport { useFilesStore } from './files';\nexport const usePathsStore = function (...args) {\n const files = useFilesStore(...args);\n const store = defineStore('paths', {\n state: () => ({\n paths: {},\n }),\n getters: {\n getPath: (state) => {\n return (service, path) => {\n if (!state.paths[service]) {\n return undefined;\n }\n return state.paths[service][path];\n };\n },\n },\n actions: {\n addPath(payload) {\n // If it doesn't exists, init the service state\n if (!this.paths[payload.service]) {\n Vue.set(this.paths, payload.service, {});\n }\n // Now we can set the provided path\n Vue.set(this.paths[payload.service], payload.path, payload.source);\n },\n onCreatedNode(node) {\n const service = getNavigation()?.active?.id || 'files';\n if (!node.fileid) {\n logger.error('Node has no fileid', { node });\n return;\n }\n // Only add path if it's a folder\n if (node.type === FileType.Folder) {\n this.addPath({\n service,\n path: node.path,\n source: node.source,\n });\n }\n // Update parent folder children if exists\n // If the folder is the root, get it and update it\n if (node.dirname === '/') {\n const root = files.getRoot(service);\n if (!root._children) {\n Vue.set(root, '_children', []);\n }\n root._children.push(node.source);\n return;\n }\n // If the folder doesn't exists yet, it will be\n // fetched later and its children updated anyway.\n if (this.paths[service][node.dirname]) {\n const parentSource = this.paths[service][node.dirname];\n const parentFolder = files.getNode(parentSource);\n logger.debug('Path already exists, updating children', { parentFolder, node });\n if (!parentFolder) {\n logger.error('Parent folder not found', { parentSource });\n return;\n }\n if (!parentFolder._children) {\n Vue.set(parentFolder, '_children', []);\n }\n parentFolder._children.push(node.source);\n return;\n }\n logger.debug('Parent path does not exists, skipping children update', { node });\n },\n },\n });\n const pathsStore = store(...args);\n // Make sure we only register the listeners once\n if (!pathsStore._initialized) {\n // TODO: watch folders to update paths?\n subscribe('files:node:created', pathsStore.onCreatedNode);\n // subscribe('files:node:deleted', pathsStore.onDeletedNode)\n // subscribe('files:node:moved', pathsStore.onMovedNode)\n pathsStore._initialized = true;\n }\n return pathsStore;\n};\n","import { defineStore } from 'pinia';\nimport Vue from 'vue';\nexport const useSelectionStore = defineStore('selection', {\n state: () => ({\n selected: [],\n lastSelection: [],\n lastSelectedIndex: null,\n }),\n actions: {\n /**\n * Set the selection of fileIds\n */\n set(selection = []) {\n Vue.set(this, 'selected', [...new Set(selection)]);\n },\n /**\n * Set the last selected index\n */\n setLastIndex(lastSelectedIndex = null) {\n // Update the last selection if we provided a new selection starting point\n Vue.set(this, 'lastSelection', lastSelectedIndex ? this.selected : []);\n Vue.set(this, 'lastSelectedIndex', lastSelectedIndex);\n },\n /**\n * Reset the selection\n */\n reset() {\n Vue.set(this, 'selected', []);\n Vue.set(this, 'lastSelection', []);\n Vue.set(this, 'lastSelectedIndex', null);\n },\n },\n});\n","import { defineStore } from 'pinia';\nimport { getUploader } from '@nextcloud/upload';\nlet uploader;\nexport const useUploaderStore = function (...args) {\n // Only init on runtime\n uploader = getUploader();\n const store = defineStore('uploader', {\n state: () => ({\n queue: uploader.queue,\n }),\n });\n return store(...args);\n};\n","/**\n * SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { getCanonicalLocale, getLanguage } from '@nextcloud/l10n';\n/**\n * Helper to create string representation\n * @param value Value to stringify\n */\nfunction stringify(value) {\n // The default representation of Date is not sortable because of the weekday names in front of it\n if (value instanceof Date) {\n return value.toISOString();\n }\n return String(value);\n}\n/**\n * Natural order a collection\n * You can define identifiers as callback functions, that get the element and return the value to sort.\n *\n * @param collection The collection to order\n * @param identifiers An array of identifiers to use, by default the identity of the element is used\n * @param orders Array of orders, by default all identifiers are sorted ascening\n */\nexport function orderBy(collection, identifiers, orders) {\n // If not identifiers are set we use the identity of the value\n identifiers = identifiers ?? [(value) => value];\n // By default sort the collection ascending\n orders = orders ?? [];\n const sorting = identifiers.map((_, index) => (orders[index] ?? 'asc') === 'asc' ? 1 : -1);\n const collator = Intl.Collator([getLanguage(), getCanonicalLocale()], {\n // handle 10 as ten and not as one-zero\n numeric: true,\n usage: 'sort',\n });\n return [...collection].sort((a, b) => {\n for (const [index, identifier] of identifiers.entries()) {\n // Get the local compare of stringified value a and b\n const value = collator.compare(stringify(identifier(a)), stringify(identifier(b)));\n // If they do not match return the order\n if (value !== 0) {\n return value * sorting[index];\n }\n // If they match we need to continue with the next identifier\n }\n // If all are equal we need to return equality\n return 0;\n });\n}\n","import { emit } from '@nextcloud/event-bus';\nimport { Folder, Node, davGetClient, davGetDefaultPropfind, davResultToNode } from '@nextcloud/files';\nimport { openConflictPicker } from '@nextcloud/upload';\nimport { showError, showInfo } from '@nextcloud/dialogs';\nimport { translate as t } from '@nextcloud/l10n';\nimport logger from '../logger.js';\n/**\n * This represents a Directory in the file tree\n * We extend the File class to better handling uploading\n * and stay as close as possible as the Filesystem API.\n * This also allow us to hijack the size or lastModified\n * properties to compute them dynamically.\n */\nexport class Directory extends File {\n /* eslint-disable no-use-before-define */\n _contents;\n constructor(name, contents = []) {\n super([], name, { type: 'httpd/unix-directory' });\n this._contents = contents;\n }\n set contents(contents) {\n this._contents = contents;\n }\n get contents() {\n return this._contents;\n }\n get size() {\n return this._computeDirectorySize(this);\n }\n get lastModified() {\n if (this._contents.length === 0) {\n return Date.now();\n }\n return this._computeDirectoryMtime(this);\n }\n /**\n * Get the last modification time of a file tree\n * This is not perfect, but will get us a pretty good approximation\n * @param directory the directory to traverse\n */\n _computeDirectoryMtime(directory) {\n return directory.contents.reduce((acc, file) => {\n return file.lastModified > acc\n // If the file is a directory, the lastModified will\n // also return the results of its _computeDirectoryMtime method\n // Fancy recursion, huh?\n ? file.lastModified\n : acc;\n }, 0);\n }\n /**\n * Get the size of a file tree\n * @param directory the directory to traverse\n */\n _computeDirectorySize(directory) {\n return directory.contents.reduce((acc, entry) => {\n // If the file is a directory, the size will\n // also return the results of its _computeDirectorySize method\n // Fancy recursion, huh?\n return acc + entry.size;\n }, 0);\n }\n}\n/**\n * Traverse a file tree using the Filesystem API\n * @param entry the entry to traverse\n */\nexport const traverseTree = async (entry) => {\n // Handle file\n if (entry.isFile) {\n return new Promise((resolve, reject) => {\n entry.file(resolve, reject);\n });\n }\n // Handle directory\n logger.debug('Handling recursive file tree', { entry: entry.name });\n const directory = entry;\n const entries = await readDirectory(directory);\n const contents = (await Promise.all(entries.map(traverseTree))).flat();\n return new Directory(directory.name, contents);\n};\n/**\n * Read a directory using Filesystem API\n * @param directory the directory to read\n */\nconst readDirectory = (directory) => {\n const dirReader = directory.createReader();\n return new Promise((resolve, reject) => {\n const entries = [];\n const getEntries = () => {\n dirReader.readEntries((results) => {\n if (results.length) {\n entries.push(...results);\n getEntries();\n }\n else {\n resolve(entries);\n }\n }, (error) => {\n reject(error);\n });\n };\n getEntries();\n });\n};\nexport const createDirectoryIfNotExists = async (absolutePath) => {\n const davClient = davGetClient();\n const dirExists = await davClient.exists(absolutePath);\n if (!dirExists) {\n logger.debug('Directory does not exist, creating it', { absolutePath });\n await davClient.createDirectory(absolutePath, { recursive: true });\n const stat = await davClient.stat(absolutePath, { details: true, data: davGetDefaultPropfind() });\n emit('files:node:created', davResultToNode(stat.data));\n }\n};\nexport const resolveConflict = async (files, destination, contents) => {\n try {\n // List all conflicting files\n const conflicts = files.filter((file) => {\n return contents.find((node) => node.basename === (file instanceof File ? file.name : file.basename));\n }).filter(Boolean);\n // List of incoming files that are NOT in conflict\n const uploads = files.filter((file) => {\n return !conflicts.includes(file);\n });\n // Let the user choose what to do with the conflicting files\n const { selected, renamed } = await openConflictPicker(destination.path, conflicts, contents);\n logger.debug('Conflict resolution', { uploads, selected, renamed });\n // If the user selected nothing, we cancel the upload\n if (selected.length === 0 && renamed.length === 0) {\n // User skipped\n showInfo(t('files', 'Conflicts resolution skipped'));\n logger.info('User skipped the conflict resolution');\n return [];\n }\n // Update the list of files to upload\n return [...uploads, ...selected, ...renamed];\n }\n catch (error) {\n console.error(error);\n // User cancelled\n showError(t('files', 'Upload cancelled'));\n logger.error('User cancelled the upload');\n }\n return [];\n};\n","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { Permission } from '@nextcloud/files';\nimport PQueue from 'p-queue';\n// This is the processing queue. We only want to allow 3 concurrent requests\nlet queue;\n// Maximum number of concurrent operations\nconst MAX_CONCURRENCY = 5;\n/**\n * Get the processing queue\n */\nexport const getQueue = () => {\n if (!queue) {\n queue = new PQueue({ concurrency: MAX_CONCURRENCY });\n }\n return queue;\n};\nexport var MoveCopyAction;\n(function (MoveCopyAction) {\n MoveCopyAction[\"MOVE\"] = \"Move\";\n MoveCopyAction[\"COPY\"] = \"Copy\";\n MoveCopyAction[\"MOVE_OR_COPY\"] = \"move-or-copy\";\n})(MoveCopyAction || (MoveCopyAction = {}));\nexport const canMove = (nodes) => {\n const minPermission = nodes.reduce((min, node) => Math.min(min, node.permissions), Permission.ALL);\n return (minPermission & Permission.UPDATE) !== 0;\n};\nexport const canDownload = (nodes) => {\n return nodes.every(node => {\n const shareAttributes = JSON.parse(node.attributes?.['share-attributes'] ?? '[]');\n return !shareAttributes.some(attribute => attribute.scope === 'permissions' && attribute.enabled === false && attribute.key === 'download');\n });\n};\nexport const canCopy = (nodes) => {\n // a shared file cannot be copied if the download is disabled\n // it can be copied if the user has at least read permissions\n return canDownload(nodes)\n && !nodes.some(node => node.permissions === Permission.NONE);\n};\n","import { CancelablePromise } from 'cancelable-promise';\nimport { File, Folder, davGetDefaultPropfind, davResultToNode, davRootPath } from '@nextcloud/files';\nimport { client } from './WebdavClient.ts';\nimport logger from '../logger.js';\n/**\n * Slim wrapper over `@nextcloud/files` `davResultToNode` to allow using the function with `Array.map`\n * @param node The node returned by the webdav library\n */\nexport const resultToNode = (node) => davResultToNode(node);\nexport const getContents = (path = '/') => {\n const controller = new AbortController();\n const propfindPayload = davGetDefaultPropfind();\n path = `${davRootPath}${path}`;\n return new CancelablePromise(async (resolve, reject, onCancel) => {\n onCancel(() => controller.abort());\n try {\n const contentsResponse = await client.getDirectoryContents(path, {\n details: true,\n data: propfindPayload,\n includeSelf: true,\n signal: controller.signal,\n });\n const root = contentsResponse.data[0];\n const contents = contentsResponse.data.slice(1);\n if (root.filename !== path && `${root.filename}/` !== path) {\n logger.debug(`Exepected \"${path}\" but got filename \"${root.filename}\" instead.`);\n throw new Error('Root node does not match requested path');\n }\n resolve({\n folder: resultToNode(root),\n contents: contents.map((result) => {\n try {\n return resultToNode(result);\n }\n catch (error) {\n logger.error(`Invalid node detected '${result.basename}'`, { error });\n return null;\n }\n }).filter(Boolean),\n });\n }\n catch (error) {\n reject(error);\n }\n });\n};\n","import { isAxiosError } from '@nextcloud/axios';\nimport { FilePickerClosed, getFilePickerBuilder, showError } from '@nextcloud/dialogs';\nimport { emit } from '@nextcloud/event-bus';\nimport { FileAction, FileType, NodeStatus, davGetClient, davRootPath, davResultToNode, davGetDefaultPropfind, getUniqueName } from '@nextcloud/files';\nimport { translate as t } from '@nextcloud/l10n';\nimport { openConflictPicker, hasConflict } from '@nextcloud/upload';\nimport { basename, join } from 'path';\nimport Vue from 'vue';\nimport CopyIconSvg from '@mdi/svg/svg/folder-multiple.svg?raw';\nimport FolderMoveSvg from '@mdi/svg/svg/folder-move.svg?raw';\nimport { MoveCopyAction, canCopy, canMove, getQueue } from './moveOrCopyActionUtils';\nimport { getContents } from '../services/Files';\nimport logger from '../logger';\n/**\n * Return the action that is possible for the given nodes\n * @param {Node[]} nodes The nodes to check against\n * @return {MoveCopyAction} The action that is possible for the given nodes\n */\nconst getActionForNodes = (nodes) => {\n if (canMove(nodes)) {\n if (canCopy(nodes)) {\n return MoveCopyAction.MOVE_OR_COPY;\n }\n return MoveCopyAction.MOVE;\n }\n // Assuming we can copy as the enabled checks for copy permissions\n return MoveCopyAction.COPY;\n};\n/**\n * Handle the copy/move of a node to a destination\n * This can be imported and used by other scripts/components on server\n * @param {Node} node The node to copy/move\n * @param {Folder} destination The destination to copy/move the node to\n * @param {MoveCopyAction} method The method to use for the copy/move\n * @param {boolean} overwrite Whether to overwrite the destination if it exists\n * @return {Promise} A promise that resolves when the copy/move is done\n */\nexport const handleCopyMoveNodeTo = async (node, destination, method, overwrite = false) => {\n if (!destination) {\n return;\n }\n if (destination.type !== FileType.Folder) {\n throw new Error(t('files', 'Destination is not a folder'));\n }\n // Do not allow to MOVE a node to the same folder it is already located\n if (method === MoveCopyAction.MOVE && node.dirname === destination.path) {\n throw new Error(t('files', 'This file/folder is already in that directory'));\n }\n /**\n * Example:\n * - node: /foo/bar/file.txt -> path = /foo/bar/file.txt, destination: /foo\n * Allow move of /foo does not start with /foo/bar/file.txt so allow\n * - node: /foo , destination: /foo/bar\n * Do not allow as it would copy foo within itself\n * - node: /foo/bar.txt, destination: /foo\n * Allow copy a file to the same directory\n * - node: \"/foo/bar\", destination: \"/foo/bar 1\"\n * Allow to move or copy but we need to check with trailing / otherwise it would report false positive\n */\n if (`${destination.path}/`.startsWith(`${node.path}/`)) {\n throw new Error(t('files', 'You cannot move a file/folder onto itself or into a subfolder of itself'));\n }\n // Set loading state\n Vue.set(node, 'status', NodeStatus.LOADING);\n const queue = getQueue();\n return await queue.add(async () => {\n const copySuffix = (index) => {\n if (index === 1) {\n return t('files', '(copy)'); // TRANSLATORS: Mark a file as a copy of another file\n }\n return t('files', '(copy %n)', undefined, index); // TRANSLATORS: Meaning it is the n'th copy of a file\n };\n try {\n const client = davGetClient();\n const currentPath = join(davRootPath, node.path);\n const destinationPath = join(davRootPath, destination.path);\n if (method === MoveCopyAction.COPY) {\n let target = node.basename;\n // If we do not allow overwriting then find an unique name\n if (!overwrite) {\n const otherNodes = await client.getDirectoryContents(destinationPath);\n target = getUniqueName(node.basename, otherNodes.map((n) => n.basename), {\n suffix: copySuffix,\n ignoreFileExtension: node.type === FileType.Folder,\n });\n }\n await client.copyFile(currentPath, join(destinationPath, target));\n // If the node is copied into current directory the view needs to be updated\n if (node.dirname === destination.path) {\n const { data } = await client.stat(join(destinationPath, target), {\n details: true,\n data: davGetDefaultPropfind(),\n });\n emit('files:node:created', davResultToNode(data));\n }\n }\n else {\n // show conflict file popup if we do not allow overwriting\n const otherNodes = await getContents(destination.path);\n if (hasConflict([node], otherNodes.contents)) {\n try {\n // Let the user choose what to do with the conflicting files\n const { selected, renamed } = await openConflictPicker(destination.path, [node], otherNodes.contents);\n // if the user selected to keep the old file, and did not select the new file\n // that means they opted to delete the current node\n if (!selected.length && !renamed.length) {\n await client.deleteFile(currentPath);\n emit('files:node:deleted', node);\n return;\n }\n }\n catch (error) {\n // User cancelled\n showError(t('files', 'Move cancelled'));\n return;\n }\n }\n // getting here means either no conflict, file was renamed to keep both files\n // in a conflict, or the selected file was chosen to be kept during the conflict\n await client.moveFile(currentPath, join(destinationPath, node.basename));\n // Delete the node as it will be fetched again\n // when navigating to the destination folder\n emit('files:node:deleted', node);\n }\n }\n catch (error) {\n if (isAxiosError(error)) {\n if (error.response?.status === 412) {\n throw new Error(t('files', 'A file or folder with that name already exists in this folder'));\n }\n else if (error.response?.status === 423) {\n throw new Error(t('files', 'The files are locked'));\n }\n else if (error.response?.status === 404) {\n throw new Error(t('files', 'The file does not exist anymore'));\n }\n else if (error.message) {\n throw new Error(error.message);\n }\n }\n logger.debug(error);\n throw new Error();\n }\n finally {\n Vue.set(node, 'status', undefined);\n }\n });\n};\n/**\n * Open a file picker for the given action\n * @param {MoveCopyAction} action The action to open the file picker for\n * @param {string} dir The directory to start the file picker in\n * @param {Node[]} nodes The nodes to move/copy\n * @return {Promise} The picked destination\n */\nconst openFilePickerForAction = async (action, dir = '/', nodes) => {\n const fileIDs = nodes.map(node => node.fileid).filter(Boolean);\n const filePicker = getFilePickerBuilder(t('files', 'Choose destination'))\n .allowDirectories(true)\n .setFilter((n) => {\n // We don't want to show the current nodes in the file picker\n return !fileIDs.includes(n.fileid);\n })\n .setMimeTypeFilter([])\n .setMultiSelect(false)\n .startAt(dir);\n return new Promise((resolve, reject) => {\n filePicker.setButtonFactory((selection, path) => {\n const buttons = [];\n const target = basename(path);\n const dirnames = nodes.map(node => node.dirname);\n const paths = nodes.map(node => node.path);\n if (action === MoveCopyAction.COPY || action === MoveCopyAction.MOVE_OR_COPY) {\n buttons.push({\n label: target ? t('files', 'Copy to {target}', { target }, undefined, { escape: false, sanitize: false }) : t('files', 'Copy'),\n type: 'primary',\n icon: CopyIconSvg,\n async callback(destination) {\n resolve({\n destination: destination[0],\n action: MoveCopyAction.COPY,\n });\n },\n });\n }\n // Invalid MOVE targets (but valid copy targets)\n if (dirnames.includes(path)) {\n // This file/folder is already in that directory\n return buttons;\n }\n if (paths.includes(path)) {\n // You cannot move a file/folder onto itself\n return buttons;\n }\n if (action === MoveCopyAction.MOVE || action === MoveCopyAction.MOVE_OR_COPY) {\n buttons.push({\n label: target ? t('files', 'Move to {target}', { target }, undefined, { escape: false, sanitize: false }) : t('files', 'Move'),\n type: action === MoveCopyAction.MOVE ? 'primary' : 'secondary',\n icon: FolderMoveSvg,\n async callback(destination) {\n resolve({\n destination: destination[0],\n action: MoveCopyAction.MOVE,\n });\n },\n });\n }\n return buttons;\n });\n const picker = filePicker.build();\n picker.pick().catch((error) => {\n logger.debug(error);\n if (error instanceof FilePickerClosed) {\n reject(new Error(t('files', 'Cancelled move or copy operation')));\n }\n else {\n reject(new Error(t('files', 'Move or copy operation failed')));\n }\n });\n });\n};\nexport const action = new FileAction({\n id: 'move-copy',\n displayName(nodes) {\n switch (getActionForNodes(nodes)) {\n case MoveCopyAction.MOVE:\n return t('files', 'Move');\n case MoveCopyAction.COPY:\n return t('files', 'Copy');\n case MoveCopyAction.MOVE_OR_COPY:\n return t('files', 'Move or copy');\n }\n },\n iconSvgInline: () => FolderMoveSvg,\n enabled(nodes) {\n // We only support moving/copying files within the user folder\n if (!nodes.every(node => node.root?.startsWith('/files/'))) {\n return false;\n }\n return nodes.length > 0 && (canMove(nodes) || canCopy(nodes));\n },\n async exec(node, view, dir) {\n const action = getActionForNodes([node]);\n let result;\n try {\n result = await openFilePickerForAction(action, dir, [node]);\n }\n catch (e) {\n logger.error(e);\n return false;\n }\n try {\n await handleCopyMoveNodeTo(node, result.destination, result.action);\n return true;\n }\n catch (error) {\n if (error instanceof Error && !!error.message) {\n showError(error.message);\n // Silent action as we handle the toast\n return null;\n }\n return false;\n }\n },\n async execBatch(nodes, view, dir) {\n const action = getActionForNodes(nodes);\n const result = await openFilePickerForAction(action, dir, nodes);\n const promises = nodes.map(async (node) => {\n try {\n await handleCopyMoveNodeTo(node, result.destination, result.action);\n return true;\n }\n catch (error) {\n logger.error(`Failed to ${result.action} node`, { node, error });\n return false;\n }\n });\n // We need to keep the selection on error!\n // So we do not return null, and for batch action\n // we let the front handle the error.\n return await Promise.all(promises);\n },\n order: 15,\n});\n","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { Folder, Node, NodeStatus, davRootPath } from '@nextcloud/files';\nimport { getUploader, hasConflict } from '@nextcloud/upload';\nimport { join } from 'path';\nimport { joinPaths } from '@nextcloud/paths';\nimport { showError, showInfo, showSuccess, showWarning } from '@nextcloud/dialogs';\nimport { translate as t } from '@nextcloud/l10n';\nimport Vue from 'vue';\nimport { Directory, traverseTree, resolveConflict, createDirectoryIfNotExists } from './DropServiceUtils';\nimport { handleCopyMoveNodeTo } from '../actions/moveOrCopyAction';\nimport { MoveCopyAction } from '../actions/moveOrCopyActionUtils';\nimport logger from '../logger.js';\n/**\n * This function converts a list of DataTransferItems to a file tree.\n * It uses the Filesystem API if available, otherwise it falls back to the File API.\n * The File API will NOT be available if the browser is not in a secure context (e.g. HTTP).\n * ⚠️ When using this method, you need to use it as fast as possible, as the DataTransferItems\n * will be cleared after the first access to the props of one of the entries.\n *\n * @param items the list of DataTransferItems\n */\nexport const dataTransferToFileTree = async (items) => {\n // Check if the browser supports the Filesystem API\n // We need to cache the entries to prevent Blink engine bug that clears\n // the list (`data.items`) after first access props of one of the entries\n const entries = items\n .filter((item) => {\n if (item.kind !== 'file') {\n logger.debug('Skipping dropped item', { kind: item.kind, type: item.type });\n return false;\n }\n return true;\n }).map((item) => {\n // MDN recommends to try both, as it might be renamed in the future\n return item?.getAsEntry?.()\n ?? item?.webkitGetAsEntry?.()\n ?? item;\n });\n let warned = false;\n const fileTree = new Directory('root');\n // Traverse the file tree\n for (const entry of entries) {\n // Handle browser issues if Filesystem API is not available. Fallback to File API\n if (entry instanceof DataTransferItem) {\n logger.warn('Could not get FilesystemEntry of item, falling back to file');\n const file = entry.getAsFile();\n if (file === null) {\n logger.warn('Could not process DataTransferItem', { type: entry.type, kind: entry.kind });\n showError(t('files', 'One of the dropped files could not be processed'));\n continue;\n }\n // Warn the user that the browser does not support the Filesystem API\n // we therefore cannot upload directories recursively.\n if (file.type === 'httpd/unix-directory' || !file.type) {\n if (!warned) {\n logger.warn('Browser does not support Filesystem API. Directories will not be uploaded');\n showWarning(t('files', 'Your browser does not support the Filesystem API. Directories will not be uploaded'));\n warned = true;\n }\n continue;\n }\n fileTree.contents.push(file);\n continue;\n }\n // Use Filesystem API\n try {\n fileTree.contents.push(await traverseTree(entry));\n }\n catch (error) {\n // Do not throw, as we want to continue with the other files\n logger.error('Error while traversing file tree', { error });\n }\n }\n return fileTree;\n};\nexport const onDropExternalFiles = async (root, destination, contents) => {\n const uploader = getUploader();\n // Check for conflicts on root elements\n if (await hasConflict(root.contents, contents)) {\n root.contents = await resolveConflict(root.contents, destination, contents);\n }\n if (root.contents.length === 0) {\n logger.info('No files to upload', { root });\n showInfo(t('files', 'No files to upload'));\n return [];\n }\n // Let's process the files\n logger.debug(`Uploading files to ${destination.path}`, { root, contents: root.contents });\n const queue = [];\n const uploadDirectoryContents = async (directory, path) => {\n for (const file of directory.contents) {\n // This is the relative path to the resource\n // from the current uploader destination\n const relativePath = join(path, file.name);\n // If the file is a directory, we need to create it first\n // then browse its tree and upload its contents.\n if (file instanceof Directory) {\n const absolutePath = joinPaths(davRootPath, destination.path, relativePath);\n try {\n console.debug('Processing directory', { relativePath });\n await createDirectoryIfNotExists(absolutePath);\n await uploadDirectoryContents(file, relativePath);\n }\n catch (error) {\n showError(t('files', 'Unable to create the directory {directory}', { directory: file.name }));\n logger.error('', { error, absolutePath, directory: file });\n }\n continue;\n }\n // If we've reached a file, we can upload it\n logger.debug('Uploading file to ' + join(destination.path, relativePath), { file });\n // Overriding the root to avoid changing the current uploader context\n queue.push(uploader.upload(relativePath, file, destination.source));\n }\n };\n // Pause the uploader to prevent it from starting\n // while we compute the queue\n uploader.pause();\n // Upload the files. Using '/' as the starting point\n // as we already adjusted the uploader destination\n await uploadDirectoryContents(root, '/');\n uploader.start();\n // Wait for all promises to settle\n const results = await Promise.allSettled(queue);\n // Check for errors\n const errors = results.filter(result => result.status === 'rejected');\n if (errors.length > 0) {\n logger.error('Error while uploading files', { errors });\n showError(t('files', 'Some files could not be uploaded'));\n return [];\n }\n logger.debug('Files uploaded successfully');\n showSuccess(t('files', 'Files uploaded successfully'));\n return Promise.all(queue);\n};\nexport const onDropInternalFiles = async (nodes, destination, contents, isCopy = false) => {\n const queue = [];\n // Check for conflicts on root elements\n if (await hasConflict(nodes, contents)) {\n nodes = await resolveConflict(nodes, destination, contents);\n }\n if (nodes.length === 0) {\n logger.info('No files to process', { nodes });\n showInfo(t('files', 'No files to process'));\n return;\n }\n for (const node of nodes) {\n Vue.set(node, 'status', NodeStatus.LOADING);\n // TODO: resolve potential conflicts prior and force overwrite\n queue.push(handleCopyMoveNodeTo(node, destination, isCopy ? MoveCopyAction.COPY : MoveCopyAction.MOVE));\n }\n // Wait for all promises to settle\n const results = await Promise.allSettled(queue);\n nodes.forEach(node => Vue.set(node, 'status', undefined));\n // Check for errors\n const errors = results.filter(result => result.status === 'rejected');\n if (errors.length > 0) {\n logger.error('Error while copying or moving files', { errors });\n showError(isCopy ? t('files', 'Some files could not be copied') : t('files', 'Some files could not be moved'));\n return;\n }\n logger.debug('Files copy/move successful');\n showSuccess(isCopy ? t('files', 'Files copied successfully') : t('files', 'Files moved successfully'));\n};\n","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { defineStore } from 'pinia';\nimport Vue from 'vue';\nexport const useDragAndDropStore = defineStore('dragging', {\n state: () => ({\n dragging: [],\n }),\n actions: {\n /**\n * Set the selection of fileIds\n */\n set(selection = []) {\n Vue.set(this, 'dragging', selection);\n },\n /**\n * Reset the selection\n */\n reset() {\n Vue.set(this, 'dragging', []);\n },\n },\n});\n","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { defineComponent } from 'vue';\nexport default defineComponent({\n data() {\n return {\n filesListWidth: 0,\n };\n },\n mounted() {\n const fileListEl = document.querySelector('#app-content-vue');\n this.filesListWidth = fileListEl?.clientWidth ?? 0;\n // @ts-expect-error The resize observer is just now attached to the object\n this.$resizeObserver = new ResizeObserver((entries) => {\n if (entries.length > 0 && entries[0].target === fileListEl) {\n this.filesListWidth = entries[0].contentRect.width;\n }\n });\n // @ts-expect-error The resize observer was attached right before to the this object\n this.$resizeObserver.observe(fileListEl);\n },\n beforeDestroy() {\n // @ts-expect-error mounted must have been called before the destroy, so the resize\n this.$resizeObserver.disconnect();\n },\n});\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BreadCrumbs.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BreadCrumbs.vue?vue&type=script&lang=ts\"","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('NcBreadcrumbs',{staticClass:\"files-list__breadcrumbs\",class:{ 'files-list__breadcrumbs--with-progress': _vm.wrapUploadProgressBar },attrs:{\"data-cy-files-content-breadcrumbs\":\"\",\"aria-label\":_vm.t('files', 'Current directory path')},scopedSlots:_vm._u([{key:\"actions\",fn:function(){return [_vm._t(\"actions\")]},proxy:true}],null,true)},_vm._l((_vm.sections),function(section,index){return _c('NcBreadcrumb',_vm._b({key:section.dir,attrs:{\"dir\":\"auto\",\"to\":section.to,\"force-icon-text\":index === 0 && _vm.filesListWidth >= 486,\"title\":_vm.titleForSection(index, section),\"aria-description\":_vm.ariaForSection(section)},on:{\"drop\":function($event){return _vm.onDrop($event, section.dir)}},nativeOn:{\"click\":function($event){return _vm.onClick(section.to)},\"dragover\":function($event){return _vm.onDragOver($event, section.dir)}},scopedSlots:_vm._u([(index === 0)?{key:\"icon\",fn:function(){return [_c('NcIconSvgWrapper',{attrs:{\"size\":20,\"svg\":_vm.viewIcon}})]},proxy:true}:null],null,true)},'NcBreadcrumb',section,false))}),1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BreadCrumbs.vue?vue&type=style&index=0&id=7a939202&prod&lang=scss&scoped=true\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BreadCrumbs.vue?vue&type=style&index=0&id=7a939202&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./BreadCrumbs.vue?vue&type=template&id=7a939202&scoped=true\"\nimport script from \"./BreadCrumbs.vue?vue&type=script&lang=ts\"\nexport * from \"./BreadCrumbs.vue?vue&type=script&lang=ts\"\nimport style0 from \"./BreadCrumbs.vue?vue&type=style&index=0&id=7a939202&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"7a939202\",\n null\n \n)\n\nexport default component.exports","/**\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { FileType } from '@nextcloud/files';\nimport { translate as t, translatePlural as n } from '@nextcloud/l10n';\n/**\n * Extract dir and name from file path\n *\n * @param {string} path the full path\n * @return {string[]} [dirPath, fileName]\n */\nexport const extractFilePaths = function (path) {\n const pathSections = path.split('/');\n const fileName = pathSections[pathSections.length - 1];\n const dirPath = pathSections.slice(0, pathSections.length - 1).join('/');\n return [dirPath, fileName];\n};\n/**\n * Generate a translated summary of an array of nodes\n * @param {Node[]} nodes the nodes to summarize\n * @return {string}\n */\nexport const getSummaryFor = (nodes) => {\n const fileCount = nodes.filter(node => node.type === FileType.File).length;\n const folderCount = nodes.filter(node => node.type === FileType.Folder).length;\n if (fileCount === 0) {\n return n('files', '{folderCount} folder', '{folderCount} folders', folderCount, { folderCount });\n }\n else if (folderCount === 0) {\n return n('files', '{fileCount} file', '{fileCount} files', fileCount, { fileCount });\n }\n if (fileCount === 1) {\n return n('files', '1 file and {folderCount} folder', '1 file and {folderCount} folders', folderCount, { folderCount });\n }\n if (folderCount === 1) {\n return n('files', '{fileCount} file and 1 folder', '{fileCount} files and 1 folder', fileCount, { fileCount });\n }\n return t('files', '{fileCount} files and {folderCount} folders', { fileCount, folderCount });\n};\n","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('tr',_vm._g({staticClass:\"files-list__row\",class:{\n\t\t'files-list__row--dragover': _vm.dragover,\n\t\t'files-list__row--loading': _vm.isLoading,\n\t\t'files-list__row--active': _vm.isActive,\n\t},attrs:{\"data-cy-files-list-row\":\"\",\"data-cy-files-list-row-fileid\":_vm.fileid,\"data-cy-files-list-row-name\":_vm.source.basename,\"draggable\":_vm.canDrag}},_vm.rowListeners),[(_vm.isFailedSource)?_c('span',{staticClass:\"files-list__row--failed\"}):_vm._e(),_vm._v(\" \"),_c('FileEntryCheckbox',{attrs:{\"fileid\":_vm.fileid,\"is-loading\":_vm.isLoading,\"nodes\":_vm.nodes,\"source\":_vm.source}}),_vm._v(\" \"),_c('td',{staticClass:\"files-list__row-name\",attrs:{\"data-cy-files-list-row-name\":\"\"}},[_c('FileEntryPreview',{ref:\"preview\",attrs:{\"source\":_vm.source,\"dragover\":_vm.dragover},nativeOn:{\"auxclick\":function($event){return _vm.execDefaultAction.apply(null, arguments)},\"click\":function($event){return _vm.execDefaultAction.apply(null, arguments)}}}),_vm._v(\" \"),_c('FileEntryName',{ref:\"name\",attrs:{\"display-name\":_vm.displayName,\"extension\":_vm.extension,\"files-list-width\":_vm.filesListWidth,\"nodes\":_vm.nodes,\"source\":_vm.source},nativeOn:{\"auxclick\":function($event){return _vm.execDefaultAction.apply(null, arguments)},\"click\":function($event){return _vm.execDefaultAction.apply(null, arguments)}}})],1),_vm._v(\" \"),_c('FileEntryActions',{directives:[{name:\"show\",rawName:\"v-show\",value:(!_vm.isRenamingSmallScreen),expression:\"!isRenamingSmallScreen\"}],ref:\"actions\",class:`files-list__row-actions-${_vm.uniqueId}`,attrs:{\"files-list-width\":_vm.filesListWidth,\"loading\":_vm.loading,\"opened\":_vm.openedMenu,\"source\":_vm.source},on:{\"update:loading\":function($event){_vm.loading=$event},\"update:opened\":function($event){_vm.openedMenu=$event}}}),_vm._v(\" \"),(!_vm.compact && _vm.isSizeAvailable)?_c('td',{staticClass:\"files-list__row-size\",style:(_vm.sizeOpacity),attrs:{\"data-cy-files-list-row-size\":\"\"},on:{\"click\":_vm.openDetailsIfAvailable}},[_c('span',[_vm._v(_vm._s(_vm.size))])]):_vm._e(),_vm._v(\" \"),(!_vm.compact && _vm.isMtimeAvailable)?_c('td',{staticClass:\"files-list__row-mtime\",style:(_vm.mtimeOpacity),attrs:{\"data-cy-files-list-row-mtime\":\"\"},on:{\"click\":_vm.openDetailsIfAvailable}},[(_vm.source.mtime)?_c('NcDateTime',{attrs:{\"timestamp\":_vm.source.mtime,\"ignore-seconds\":true}}):_vm._e()],1):_vm._e(),_vm._v(\" \"),_vm._l((_vm.columns),function(column){return _c('td',{key:column.id,staticClass:\"files-list__row-column-custom\",class:`files-list__row-${_vm.currentView?.id}-${column.id}`,attrs:{\"data-cy-files-list-row-column-custom\":column.id},on:{\"click\":_vm.openDetailsIfAvailable}},[_c('CustomElementRender',{attrs:{\"current-view\":_vm.currentView,\"render\":column.render,\"source\":_vm.source}})],1)})],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { defineStore } from 'pinia';\nexport const useActionsMenuStore = defineStore('actionsmenu', {\n state: () => ({\n opened: null,\n }),\n});\n","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { defineStore } from 'pinia';\nimport { subscribe } from '@nextcloud/event-bus';\nexport const useRenamingStore = function (...args) {\n const store = defineStore('renaming', {\n state: () => ({\n renamingNode: undefined,\n newName: '',\n }),\n });\n const renamingStore = store(...args);\n // Make sure we only register the listeners once\n if (!renamingStore._initialized) {\n subscribe('files:node:rename', function (node) {\n renamingStore.renamingNode = node;\n renamingStore.newName = node.basename;\n });\n renamingStore._initialized = true;\n }\n return renamingStore;\n};\n","\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./FileMultiple.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./FileMultiple.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./FileMultiple.vue?vue&type=template&id=27b46e04\"\nimport script from \"./FileMultiple.vue?vue&type=script&lang=js\"\nexport * from \"./FileMultiple.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon file-multiple-icon\",attrs:{\"aria-hidden\":_vm.title ? null : true,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M15,7H20.5L15,1.5V7M8,0H16L22,6V18A2,2 0 0,1 20,20H8C6.89,20 6,19.1 6,18V2A2,2 0 0,1 8,0M4,4V22H20V24H4A2,2 0 0,1 2,22V4H4Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',{staticClass:\"files-list-drag-image\"},[_c('span',{staticClass:\"files-list-drag-image__icon\"},[_c('span',{ref:\"previewImg\"}),_vm._v(\" \"),(_vm.isSingleFolder)?_c('FolderIcon'):_c('FileMultipleIcon')],1),_vm._v(\" \"),_c('span',{staticClass:\"files-list-drag-image__name\"},[_vm._v(_vm._s(_vm.name))])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DragAndDropPreview.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DragAndDropPreview.vue?vue&type=script&lang=ts\"","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DragAndDropPreview.vue?vue&type=style&index=0&id=775162a4&prod&lang=scss\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DragAndDropPreview.vue?vue&type=style&index=0&id=775162a4&prod&lang=scss\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./DragAndDropPreview.vue?vue&type=template&id=775162a4\"\nimport script from \"./DragAndDropPreview.vue?vue&type=script&lang=ts\"\nexport * from \"./DragAndDropPreview.vue?vue&type=script&lang=ts\"\nimport style0 from \"./DragAndDropPreview.vue?vue&type=style&index=0&id=775162a4&prod&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import DragAndDropPreview from '../components/DragAndDropPreview.vue';\nimport Vue from 'vue';\nconst Preview = Vue.extend(DragAndDropPreview);\nlet preview;\nexport const getDragAndDropPreview = async (nodes) => {\n return new Promise((resolve) => {\n if (!preview) {\n preview = new Preview().$mount();\n document.body.appendChild(preview.$el);\n }\n preview.update(nodes);\n preview.$on('loaded', () => {\n resolve(preview.$el);\n preview.$off('loaded');\n });\n });\n};\n","/**\n * SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { showError } from '@nextcloud/dialogs';\nimport { FileType, Permission, Folder, File as NcFile, NodeStatus, Node, View } from '@nextcloud/files';\nimport { translate as t } from '@nextcloud/l10n';\nimport { generateUrl } from '@nextcloud/router';\nimport { vOnClickOutside } from '@vueuse/components';\nimport { extname } from 'path';\nimport Vue, { defineComponent } from 'vue';\nimport { action as sidebarAction } from '../actions/sidebarAction.ts';\nimport { getDragAndDropPreview } from '../utils/dragUtils.ts';\nimport { hashCode } from '../utils/hashUtils.ts';\nimport { dataTransferToFileTree, onDropExternalFiles, onDropInternalFiles } from '../services/DropService.ts';\nimport logger from '../logger.js';\nimport FileEntryActions from '../components/FileEntry/FileEntryActions.vue';\nVue.directive('onClickOutside', vOnClickOutside);\nexport default defineComponent({\n props: {\n source: {\n type: [Folder, NcFile, Node],\n required: true,\n },\n nodes: {\n type: Array,\n required: true,\n },\n filesListWidth: {\n type: Number,\n default: 0,\n },\n },\n data() {\n return {\n loading: '',\n dragover: false,\n gridMode: false,\n };\n },\n computed: {\n currentDir() {\n // Remove any trailing slash but leave root slash\n return (this.$route.query?.dir?.toString() || '/').replace(/^(.+)\\/$/, '$1');\n },\n currentFileId() {\n return this.$route.params?.fileid || this.$route.query?.fileid || null;\n },\n fileid() {\n return this.source.fileid ?? 0;\n },\n uniqueId() {\n return hashCode(this.source.source);\n },\n isLoading() {\n return this.source.status === NodeStatus.LOADING;\n },\n extension() {\n if (this.source.attributes?.displayname) {\n return extname(this.source.attributes.displayname);\n }\n return this.source.extension || '';\n },\n displayName() {\n const ext = this.extension;\n const name = String(this.source.attributes.displayname\n || this.source.basename);\n // Strip extension from name if defined\n return !ext ? name : name.slice(0, 0 - ext.length);\n },\n draggingFiles() {\n return this.draggingStore.dragging;\n },\n selectedFiles() {\n return this.selectionStore.selected;\n },\n isSelected() {\n return this.selectedFiles.includes(this.source.source);\n },\n isRenaming() {\n return this.renamingStore.renamingNode === this.source;\n },\n isRenamingSmallScreen() {\n return this.isRenaming && this.filesListWidth < 512;\n },\n isActive() {\n return String(this.fileid) === String(this.currentFileId);\n },\n /**\n * Check if the source is in a failed state after an API request\n */\n isFailedSource() {\n return this.source.status === NodeStatus.FAILED;\n },\n canDrag() {\n if (this.isRenaming) {\n return false;\n }\n const canDrag = (node) => {\n return (node?.permissions & Permission.UPDATE) !== 0;\n };\n // If we're dragging a selection, we need to check all files\n if (this.selectedFiles.length > 0) {\n const nodes = this.selectedFiles.map(source => this.filesStore.getNode(source));\n return nodes.every(canDrag);\n }\n return canDrag(this.source);\n },\n canDrop() {\n if (this.source.type !== FileType.Folder) {\n return false;\n }\n // If the current folder is also being dragged, we can't drop it on itself\n if (this.draggingFiles.includes(this.source.source)) {\n return false;\n }\n return (this.source.permissions & Permission.CREATE) !== 0;\n },\n openedMenu: {\n get() {\n return this.actionsMenuStore.opened === this.uniqueId.toString();\n },\n set(opened) {\n this.actionsMenuStore.opened = opened ? this.uniqueId.toString() : null;\n },\n },\n isRenaming() {\n return this.renamingStore.renamingNode === this.source;\n },\n },\n watch: {\n /**\n * When the source changes, reset the preview\n * and fetch the new one.\n */\n source(a, b) {\n if (a.source !== b.source) {\n this.resetState();\n }\n },\n },\n beforeDestroy() {\n this.resetState();\n },\n methods: {\n resetState() {\n // Reset loading state\n this.loading = '';\n // Reset the preview state\n this.$refs?.preview?.reset?.();\n // Close menu\n this.openedMenu = false;\n },\n // Open the actions menu on right click\n onRightClick(event) {\n // If already opened, fallback to default browser\n if (this.openedMenu) {\n return;\n }\n // The grid mode is compact enough to not care about\n // the actions menu mouse position\n if (!this.gridMode) {\n // Actions menu is contained within the app content\n const root = this.$el?.closest('main.app-content');\n const contentRect = root.getBoundingClientRect();\n // Using Math.min/max to prevent the menu from going out of the AppContent\n // 200 = max width of the menu\n root.style.setProperty('--mouse-pos-x', Math.max(0, event.clientX - contentRect.left - 200) + 'px');\n root.style.setProperty('--mouse-pos-y', Math.max(0, event.clientY - contentRect.top) + 'px');\n }\n else {\n // Reset any right menu position potentially set\n const root = this.$el?.closest('main.app-content');\n root.style.removeProperty('--mouse-pos-x');\n root.style.removeProperty('--mouse-pos-y');\n }\n // If the clicked row is in the selection, open global menu\n const isMoreThanOneSelected = this.selectedFiles.length > 1;\n this.actionsMenuStore.opened = this.isSelected && isMoreThanOneSelected ? 'global' : this.uniqueId.toString();\n // Prevent any browser defaults\n event.preventDefault();\n event.stopPropagation();\n },\n execDefaultAction(event) {\n // Ignore click if we are renaming\n if (this.isRenaming) {\n return;\n }\n // Ignore right click.\n if (event.button > 1) {\n return;\n }\n // if ctrl+click or middle mouse button, open in new tab\n if (event.ctrlKey || event.metaKey || event.button === 1) {\n event.preventDefault();\n window.open(generateUrl('/f/{fileId}', { fileId: this.fileid }));\n return false;\n }\n const actions = this.$refs.actions;\n actions.execDefaultAction(event);\n },\n openDetailsIfAvailable(event) {\n event.preventDefault();\n event.stopPropagation();\n if (sidebarAction?.enabled?.([this.source], this.currentView)) {\n sidebarAction.exec(this.source, this.currentView, this.currentDir);\n }\n },\n onDragOver(event) {\n this.dragover = this.canDrop;\n if (!this.canDrop) {\n event.dataTransfer.dropEffect = 'none';\n return;\n }\n // Handle copy/move drag and drop\n if (event.ctrlKey) {\n event.dataTransfer.dropEffect = 'copy';\n }\n else {\n event.dataTransfer.dropEffect = 'move';\n }\n },\n onDragLeave(event) {\n // Counter bubbling, make sure we're ending the drag\n // only when we're leaving the current element\n const currentTarget = event.currentTarget;\n if (currentTarget?.contains(event.relatedTarget)) {\n return;\n }\n this.dragover = false;\n },\n async onDragStart(event) {\n event.stopPropagation();\n if (!this.canDrag || !this.fileid) {\n event.preventDefault();\n event.stopPropagation();\n return;\n }\n logger.debug('Drag started', { event });\n // Make sure that we're not dragging a file like the preview\n event.dataTransfer?.clearData?.();\n // Reset any renaming\n this.renamingStore.$reset();\n // Dragging set of files, if we're dragging a file\n // that is already selected, we use the entire selection\n if (this.selectedFiles.includes(this.source.source)) {\n this.draggingStore.set(this.selectedFiles);\n }\n else {\n this.draggingStore.set([this.source.source]);\n }\n const nodes = this.draggingStore.dragging\n .map(source => this.filesStore.getNode(source));\n const image = await getDragAndDropPreview(nodes);\n event.dataTransfer?.setDragImage(image, -10, -10);\n },\n onDragEnd() {\n this.draggingStore.reset();\n this.dragover = false;\n logger.debug('Drag ended');\n },\n async onDrop(event) {\n // skip if native drop like text drag and drop from files names\n if (!this.draggingFiles && !event.dataTransfer?.items?.length) {\n return;\n }\n event.preventDefault();\n event.stopPropagation();\n // Caching the selection\n const selection = this.draggingFiles;\n const items = [...event.dataTransfer?.items || []];\n // We need to process the dataTransfer ASAP before the\n // browser clears it. This is why we cache the items too.\n const fileTree = await dataTransferToFileTree(items);\n // We might not have the target directory fetched yet\n const contents = await this.currentView?.getContents(this.source.path);\n const folder = contents?.folder;\n if (!folder) {\n showError(this.t('files', 'Target folder does not exist any more'));\n return;\n }\n // If another button is pressed, cancel it. This\n // allows cancelling the drag with the right click.\n if (!this.canDrop || event.button) {\n return;\n }\n const isCopy = event.ctrlKey;\n this.dragover = false;\n logger.debug('Dropped', { event, folder, selection, fileTree });\n // Check whether we're uploading files\n if (fileTree.contents.length > 0) {\n await onDropExternalFiles(fileTree, folder, contents.contents);\n return;\n }\n // Else we're moving/copying files\n const nodes = selection.map(source => this.filesStore.getNode(source));\n await onDropInternalFiles(nodes, folder, contents.contents, isCopy);\n // Reset selection after we dropped the files\n // if the dropped files are within the selection\n if (selection.some(source => this.selectedFiles.includes(source))) {\n logger.debug('Dropped selection, resetting select store...');\n this.selectionStore.reset();\n }\n },\n t,\n },\n});\n","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/**\n * Simple non-secure hashing function similar to Java's `hashCode`\n * @param str The string to hash\n * @return {number} a non secure hash of the string\n */\nexport const hashCode = function (str) {\n let hash = 0;\n for (let i = 0; i < str.length; i++) {\n hash = ((hash << 5) - hash + str.charCodeAt(i)) | 0;\n }\n return (hash >>> 0);\n};\n","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span')\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CustomElementRender.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CustomElementRender.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./CustomElementRender.vue?vue&type=template&id=7b30c709\"\nimport script from \"./CustomElementRender.vue?vue&type=script&lang=ts\"\nexport * from \"./CustomElementRender.vue?vue&type=script&lang=ts\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('td',{staticClass:\"files-list__row-actions\",attrs:{\"data-cy-files-list-row-actions\":\"\"}},[_vm._l((_vm.enabledRenderActions),function(action){return _c('CustomElementRender',{key:action.id,staticClass:\"files-list__row-action--inline\",class:'files-list__row-action-' + action.id,attrs:{\"current-view\":_vm.currentView,\"render\":action.renderInline,\"source\":_vm.source}})}),_vm._v(\" \"),_c('NcActions',{ref:\"actionsMenu\",attrs:{\"boundaries-element\":_vm.getBoundariesElement,\"container\":_vm.getBoundariesElement,\"force-name\":true,\"type\":\"tertiary\",\"force-menu\":_vm.enabledInlineActions.length === 0 /* forceMenu only if no inline actions */,\"inline\":_vm.enabledInlineActions.length,\"open\":_vm.openedMenu},on:{\"update:open\":function($event){_vm.openedMenu=$event},\"close\":function($event){_vm.openedSubmenu = null}}},[_vm._l((_vm.enabledMenuActions),function(action){return _c('NcActionButton',{key:action.id,ref:`action-${action.id}`,refInFor:true,class:{\n\t\t\t\t[`files-list__row-action-${action.id}`]: true,\n\t\t\t\t[`files-list__row-action--menu`]: _vm.isMenu(action.id)\n\t\t\t},attrs:{\"close-after-click\":!_vm.isMenu(action.id),\"data-cy-files-list-row-action\":action.id,\"is-menu\":_vm.isMenu(action.id),\"title\":action.title?.([_vm.source], _vm.currentView)},on:{\"click\":function($event){return _vm.onActionClick(action)}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [(_vm.loading === action.id)?_c('NcLoadingIcon',{attrs:{\"size\":18}}):_c('NcIconSvgWrapper',{attrs:{\"svg\":action.iconSvgInline([_vm.source], _vm.currentView)}})]},proxy:true}],null,true)},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.mountType === 'shared' && action.id === 'sharing-status' ? '' : _vm.actionDisplayName(action))+\"\\n\\t\\t\")])}),_vm._v(\" \"),(_vm.openedSubmenu && _vm.enabledSubmenuActions[_vm.openedSubmenu?.id])?[_c('NcActionButton',{staticClass:\"files-list__row-action-back\",on:{\"click\":function($event){return _vm.onBackToMenuClick(_vm.openedSubmenu)}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('ArrowLeftIcon')]},proxy:true}],null,false,3001860362)},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.actionDisplayName(_vm.openedSubmenu))+\"\\n\\t\\t\\t\")]),_vm._v(\" \"),_c('NcActionSeparator'),_vm._v(\" \"),_vm._l((_vm.enabledSubmenuActions[_vm.openedSubmenu?.id]),function(action){return _c('NcActionButton',{key:action.id,staticClass:\"files-list__row-action--submenu\",class:`files-list__row-action-${action.id}`,attrs:{\"close-after-click\":\"\",\"data-cy-files-list-row-action\":action.id,\"title\":action.title?.([_vm.source], _vm.currentView)},on:{\"click\":function($event){return _vm.onActionClick(action)}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [(_vm.loading === action.id)?_c('NcLoadingIcon',{attrs:{\"size\":18}}):_c('NcIconSvgWrapper',{attrs:{\"svg\":action.iconSvgInline([_vm.source], _vm.currentView)}})]},proxy:true}],null,true)},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.actionDisplayName(action))+\"\\n\\t\\t\\t\")])})]:_vm._e()],2)],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./ArrowLeft.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./ArrowLeft.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ArrowLeft.vue?vue&type=template&id=214c9a86\"\nimport script from \"./ArrowLeft.vue?vue&type=script&lang=js\"\nexport * from \"./ArrowLeft.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon arrow-left-icon\",attrs:{\"aria-hidden\":_vm.title ? null : true,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M20,11V13H8L13.5,18.5L12.08,19.92L4.16,12L12.08,4.08L13.5,5.5L8,11H20Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileEntryActions.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileEntryActions.vue?vue&type=script&lang=ts\"","\n import API from \"!../../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../../node_modules/css-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileEntryActions.vue?vue&type=style&index=0&id=801e4784&prod&lang=scss\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../../node_modules/css-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileEntryActions.vue?vue&type=style&index=0&id=801e4784&prod&lang=scss\";\n export default content && content.locals ? content.locals : undefined;\n","\n import API from \"!../../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../../node_modules/css-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileEntryActions.vue?vue&type=style&index=1&id=801e4784&prod&lang=scss&scoped=true\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../../node_modules/css-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileEntryActions.vue?vue&type=style&index=1&id=801e4784&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./FileEntryActions.vue?vue&type=template&id=801e4784&scoped=true\"\nimport script from \"./FileEntryActions.vue?vue&type=script&lang=ts\"\nexport * from \"./FileEntryActions.vue?vue&type=script&lang=ts\"\nimport style0 from \"./FileEntryActions.vue?vue&type=style&index=0&id=801e4784&prod&lang=scss\"\nimport style1 from \"./FileEntryActions.vue?vue&type=style&index=1&id=801e4784&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"801e4784\",\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileEntryCheckbox.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileEntryCheckbox.vue?vue&type=script&lang=ts\"","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('td',{staticClass:\"files-list__row-checkbox\",on:{\"keyup\":function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"esc\",27,$event.key,[\"Esc\",\"Escape\"]))return null;if($event.ctrlKey||$event.shiftKey||$event.altKey||$event.metaKey)return null;return _vm.resetSelection.apply(null, arguments)}}},[(_vm.isLoading)?_c('NcLoadingIcon'):_c('NcCheckboxRadioSwitch',{attrs:{\"aria-label\":_vm.ariaLabel,\"checked\":_vm.isSelected},on:{\"update:checked\":_vm.onSelectionChange}})],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { defineStore } from 'pinia';\nimport Vue from 'vue';\n/**\n * Observe various events and save the current\n * special keys states. Useful for checking the\n * current status of a key when executing a method.\n */\nexport const useKeyboardStore = function (...args) {\n const store = defineStore('keyboard', {\n state: () => ({\n altKey: false,\n ctrlKey: false,\n metaKey: false,\n shiftKey: false,\n }),\n actions: {\n onEvent(event) {\n if (!event) {\n event = window.event;\n }\n Vue.set(this, 'altKey', !!event.altKey);\n Vue.set(this, 'ctrlKey', !!event.ctrlKey);\n Vue.set(this, 'metaKey', !!event.metaKey);\n Vue.set(this, 'shiftKey', !!event.shiftKey);\n },\n },\n });\n const keyboardStore = store(...args);\n // Make sure we only register the listeners once\n if (!keyboardStore._initialized) {\n window.addEventListener('keydown', keyboardStore.onEvent);\n window.addEventListener('keyup', keyboardStore.onEvent);\n window.addEventListener('mousemove', keyboardStore.onEvent);\n keyboardStore._initialized = true;\n }\n return keyboardStore;\n};\n","import { render, staticRenderFns } from \"./FileEntryCheckbox.vue?vue&type=template&id=20c5f7c8\"\nimport script from \"./FileEntryCheckbox.vue?vue&type=script&lang=ts\"\nexport * from \"./FileEntryCheckbox.vue?vue&type=script&lang=ts\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return (_vm.isRenaming)?_c('form',{directives:[{name:\"on-click-outside\",rawName:\"v-on-click-outside\",value:(_vm.onRename),expression:\"onRename\"}],staticClass:\"files-list__row-rename\",attrs:{\"aria-label\":_vm.t('files', 'Rename file')},on:{\"submit\":function($event){$event.preventDefault();$event.stopPropagation();return _vm.onRename.apply(null, arguments)}}},[_c('NcTextField',{ref:\"renameInput\",attrs:{\"label\":_vm.renameLabel,\"autofocus\":true,\"minlength\":1,\"required\":true,\"value\":_vm.newName,\"enterkeyhint\":\"done\"},on:{\"update:value\":function($event){_vm.newName=$event},\"keyup\":[_vm.checkInputValidity,function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"esc\",27,$event.key,[\"Esc\",\"Escape\"]))return null;return _vm.stopRenaming.apply(null, arguments)}]}})],1):_c(_vm.linkTo.is,_vm._b({ref:\"basename\",tag:\"component\",staticClass:\"files-list__row-name-link\",attrs:{\"aria-hidden\":_vm.isRenaming,\"data-cy-files-list-row-name-link\":\"\"}},'component',_vm.linkTo.params,false),[_c('span',{staticClass:\"files-list__row-name-text\"},[_c('span',{staticClass:\"files-list__row-name-\",domProps:{\"textContent\":_vm._s(_vm.displayName)}}),_vm._v(\" \"),_c('span',{staticClass:\"files-list__row-name-ext\",domProps:{\"textContent\":_vm._s(_vm.extension)}})])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileEntryName.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileEntryName.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./FileEntryName.vue?vue&type=template&id=46ebfb10\"\nimport script from \"./FileEntryName.vue?vue&type=script&lang=ts\"\nexport * from \"./FileEntryName.vue?vue&type=script&lang=ts\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('span',{staticClass:\"files-list__row-icon\"},[(_vm.source.type === 'folder')?[(_vm.dragover)?_vm._m(0):[_vm._m(1),_vm._v(\" \"),(_vm.folderOverlay)?_c(_vm.folderOverlay,{tag:\"OverlayIcon\",staticClass:\"files-list__row-icon-overlay\"}):_vm._e()]]:(_vm.previewUrl && _vm.backgroundFailed !== true)?_c('img',{ref:\"previewImg\",staticClass:\"files-list__row-icon-preview\",class:{'files-list__row-icon-preview--loaded': _vm.backgroundFailed === false},attrs:{\"alt\":\"\",\"loading\":\"lazy\",\"src\":_vm.previewUrl},on:{\"error\":_vm.onBackgroundError,\"load\":function($event){_vm.backgroundFailed = false}}}):_vm._m(2),_vm._v(\" \"),(_vm.isFavorite)?_c('span',{staticClass:\"files-list__row-icon-favorite\"},[_vm._m(3)],1):_vm._e(),_vm._v(\" \"),(_vm.fileOverlay)?_c(_vm.fileOverlay,{tag:\"OverlayIcon\",staticClass:\"files-list__row-icon-overlay files-list__row-icon-overlay--file\"}):_vm._e()],2)\n}\nvar staticRenderFns = [function (){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('FolderOpenIcon')\n},function (){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('FolderIcon')\n},function (){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('FileIcon')\n},function (){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('FavoriteIcon')\n}]\n\nexport { render, staticRenderFns }","\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./File.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./File.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./File.vue?vue&type=template&id=e3c8d598\"\nimport script from \"./File.vue?vue&type=script&lang=js\"\nexport * from \"./File.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon file-icon\",attrs:{\"aria-hidden\":_vm.title ? null : true,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M13,9V3.5L18.5,9M6,2C4.89,2 4,2.89 4,4V20A2,2 0 0,0 6,22H18A2,2 0 0,0 20,20V8L14,2H6Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./FolderOpen.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./FolderOpen.vue?vue&type=script&lang=js\"","\n\n","import { render, staticRenderFns } from \"./FolderOpen.vue?vue&type=template&id=79cee0a4\"\nimport script from \"./FolderOpen.vue?vue&type=script&lang=js\"\nexport * from \"./FolderOpen.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon folder-open-icon\",attrs:{\"aria-hidden\":_vm.title ? null : true,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M19,20H4C2.89,20 2,19.1 2,18V6C2,4.89 2.89,4 4,4H10L12,6H19A2,2 0 0,1 21,8H21L4,8V18L6.14,10H23.21L20.93,18.5C20.7,19.37 19.92,20 19,20Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./Key.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Key.vue?vue&type=script&lang=js\"","\n\n","import { render, staticRenderFns } from \"./Key.vue?vue&type=template&id=01a06d54\"\nimport script from \"./Key.vue?vue&type=script&lang=js\"\nexport * from \"./Key.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon key-icon\",attrs:{\"aria-hidden\":_vm.title ? null : true,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M7 14C5.9 14 5 13.1 5 12S5.9 10 7 10 9 10.9 9 12 8.1 14 7 14M12.6 10C11.8 7.7 9.6 6 7 6C3.7 6 1 8.7 1 12S3.7 18 7 18C9.6 18 11.8 16.3 12.6 14H16V18H20V14H23V10H12.6Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./Network.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Network.vue?vue&type=script&lang=js\"","\n\n","import { render, staticRenderFns } from \"./Network.vue?vue&type=template&id=29f8873c\"\nimport script from \"./Network.vue?vue&type=script&lang=js\"\nexport * from \"./Network.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon network-icon\",attrs:{\"aria-hidden\":_vm.title ? null : true,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M17,3A2,2 0 0,1 19,5V15A2,2 0 0,1 17,17H13V19H14A1,1 0 0,1 15,20H22V22H15A1,1 0 0,1 14,23H10A1,1 0 0,1 9,22H2V20H9A1,1 0 0,1 10,19H11V17H7C5.89,17 5,16.1 5,15V5A2,2 0 0,1 7,3H17Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./Tag.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Tag.vue?vue&type=script&lang=js\"","\n\n","import { render, staticRenderFns } from \"./Tag.vue?vue&type=template&id=75dd05e4\"\nimport script from \"./Tag.vue?vue&type=script&lang=js\"\nexport * from \"./Tag.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon tag-icon\",attrs:{\"aria-hidden\":_vm.title ? null : true,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M5.5,7A1.5,1.5 0 0,1 4,5.5A1.5,1.5 0 0,1 5.5,4A1.5,1.5 0 0,1 7,5.5A1.5,1.5 0 0,1 5.5,7M21.41,11.58L12.41,2.58C12.05,2.22 11.55,2 11,2H4C2.89,2 2,2.89 2,4V11C2,11.55 2.22,12.05 2.59,12.41L11.58,21.41C11.95,21.77 12.45,22 13,22C13.55,22 14.05,21.77 14.41,21.41L21.41,14.41C21.78,14.05 22,13.55 22,13C22,12.44 21.77,11.94 21.41,11.58Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./PlayCircle.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./PlayCircle.vue?vue&type=script&lang=js\"","\n\n","import { render, staticRenderFns } from \"./PlayCircle.vue?vue&type=template&id=6901b3e6\"\nimport script from \"./PlayCircle.vue?vue&type=script&lang=js\"\nexport * from \"./PlayCircle.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon play-circle-icon\",attrs:{\"aria-hidden\":_vm.title ? null : true,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M10,16.5V7.5L16,12M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CollectivesIcon.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CollectivesIcon.vue?vue&type=script&lang=js\"","\n\n\n\n","import { render, staticRenderFns } from \"./CollectivesIcon.vue?vue&type=template&id=43528c7c\"\nimport script from \"./CollectivesIcon.vue?vue&type=script&lang=js\"\nexport * from \"./CollectivesIcon.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon collectives-icon\",attrs:{\"aria-hidden\":!_vm.title,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 16 16\"}},[_c('path',{attrs:{\"d\":\"M2.9,8.8c0-1.2,0.4-2.4,1.2-3.3L0.3,6c-0.2,0-0.3,0.3-0.1,0.4l2.7,2.6C2.9,9,2.9,8.9,2.9,8.8z\"}}),_vm._v(\" \"),_c('path',{attrs:{\"d\":\"M8,3.7c0.7,0,1.3,0.1,1.9,0.4L8.2,0.6c-0.1-0.2-0.3-0.2-0.4,0L6.1,4C6.7,3.8,7.3,3.7,8,3.7z\"}}),_vm._v(\" \"),_c('path',{attrs:{\"d\":\"M3.7,11.5L3,15.2c0,0.2,0.2,0.4,0.4,0.3l3.3-1.7C5.4,13.4,4.4,12.6,3.7,11.5z\"}}),_vm._v(\" \"),_c('path',{attrs:{\"d\":\"M15.7,6l-3.7-0.5c0.7,0.9,1.2,2,1.2,3.3c0,0.1,0,0.2,0,0.3l2.7-2.6C15.9,6.3,15.9,6.1,15.7,6z\"}}),_vm._v(\" \"),_c('path',{attrs:{\"d\":\"M12.3,11.5c-0.7,1.1-1.8,1.9-3,2.2l3.3,1.7c0.2,0.1,0.4-0.1,0.4-0.3L12.3,11.5z\"}}),_vm._v(\" \"),_c('path',{attrs:{\"d\":\"M9.6,10.1c-0.4,0.5-1,0.8-1.6,0.8c-1.1,0-2-0.9-2.1-2C5.9,7.7,6.8,6.7,8,6.7c0.6,0,1.1,0.3,1.5,0.7 c0.1,0.1,0.1,0.1,0.2,0.1h1.4c0.2,0,0.4-0.2,0.3-0.5c-0.7-1.3-2.1-2.2-3.8-2.1C5.8,5,4.3,6.6,4.1,8.5C4,10.8,5.8,12.7,8,12.7 c1.6,0,2.9-0.9,3.5-2.3c0.1-0.2-0.1-0.4-0.3-0.4H9.9C9.8,10,9.7,10,9.6,10.1z\"}})])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FavoriteIcon.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FavoriteIcon.vue?vue&type=script&lang=ts\"","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('NcIconSvgWrapper',{staticClass:\"favorite-marker-icon\",attrs:{\"name\":_vm.t('files', 'Favorite'),\"svg\":_vm.StarSvg}})\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n import API from \"!../../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../../node_modules/css-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FavoriteIcon.vue?vue&type=style&index=0&id=f2d0cf6e&prod&lang=scss&scoped=true\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../../node_modules/css-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FavoriteIcon.vue?vue&type=style&index=0&id=f2d0cf6e&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./FavoriteIcon.vue?vue&type=template&id=f2d0cf6e&scoped=true\"\nimport script from \"./FavoriteIcon.vue?vue&type=script&lang=ts\"\nexport * from \"./FavoriteIcon.vue?vue&type=script&lang=ts\"\nimport style0 from \"./FavoriteIcon.vue?vue&type=style&index=0&id=f2d0cf6e&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"f2d0cf6e\",\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileEntryPreview.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileEntryPreview.vue?vue&type=script&lang=ts\"","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { Node, registerDavProperty } from '@nextcloud/files';\nexport function initLivePhotos() {\n registerDavProperty('nc:metadata-files-live-photo', { nc: 'http://nextcloud.org/ns' });\n}\n/**\n * @param {Node} node - The node\n */\nexport function isLivePhoto(node) {\n return node.attributes['metadata-files-live-photo'] !== undefined;\n}\n","import { render, staticRenderFns } from \"./FileEntryPreview.vue?vue&type=template&id=fef56bd8\"\nimport script from \"./FileEntryPreview.vue?vue&type=script&lang=ts\"\nexport * from \"./FileEntryPreview.vue?vue&type=script&lang=ts\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileEntry.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileEntry.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./FileEntry.vue?vue&type=template&id=5afbb7ac\"\nimport script from \"./FileEntry.vue?vue&type=script&lang=ts\"\nexport * from \"./FileEntry.vue?vue&type=script&lang=ts\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileEntryGrid.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileEntryGrid.vue?vue&type=script&lang=ts\"","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('tr',{staticClass:\"files-list__row\",class:{'files-list__row--active': _vm.isActive, 'files-list__row--dragover': _vm.dragover, 'files-list__row--loading': _vm.isLoading},attrs:{\"data-cy-files-list-row\":\"\",\"data-cy-files-list-row-fileid\":_vm.fileid,\"data-cy-files-list-row-name\":_vm.source.basename,\"draggable\":_vm.canDrag},on:{\"contextmenu\":_vm.onRightClick,\"dragover\":_vm.onDragOver,\"dragleave\":_vm.onDragLeave,\"dragstart\":_vm.onDragStart,\"dragend\":_vm.onDragEnd,\"drop\":_vm.onDrop}},[(_vm.isFailedSource)?_c('span',{staticClass:\"files-list__row--failed\"}):_vm._e(),_vm._v(\" \"),_c('FileEntryCheckbox',{attrs:{\"fileid\":_vm.fileid,\"is-loading\":_vm.isLoading,\"nodes\":_vm.nodes,\"source\":_vm.source}}),_vm._v(\" \"),_c('td',{staticClass:\"files-list__row-name\",attrs:{\"data-cy-files-list-row-name\":\"\"}},[_c('FileEntryPreview',{ref:\"preview\",attrs:{\"dragover\":_vm.dragover,\"grid-mode\":true,\"source\":_vm.source},nativeOn:{\"auxclick\":function($event){return _vm.execDefaultAction.apply(null, arguments)},\"click\":function($event){return _vm.execDefaultAction.apply(null, arguments)}}}),_vm._v(\" \"),_c('FileEntryName',{ref:\"name\",attrs:{\"display-name\":_vm.displayName,\"extension\":_vm.extension,\"files-list-width\":_vm.filesListWidth,\"grid-mode\":true,\"nodes\":_vm.nodes,\"source\":_vm.source},nativeOn:{\"auxclick\":function($event){return _vm.execDefaultAction.apply(null, arguments)},\"click\":function($event){return _vm.execDefaultAction.apply(null, arguments)}}})],1),_vm._v(\" \"),_c('FileEntryActions',{ref:\"actions\",class:`files-list__row-actions-${_vm.uniqueId}`,attrs:{\"files-list-width\":_vm.filesListWidth,\"grid-mode\":true,\"loading\":_vm.loading,\"opened\":_vm.openedMenu,\"source\":_vm.source},on:{\"update:loading\":function($event){_vm.loading=$event},\"update:opened\":function($event){_vm.openedMenu=$event}}})],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./FileEntryGrid.vue?vue&type=template&id=4d33eb03\"\nimport script from \"./FileEntryGrid.vue?vue&type=script&lang=ts\"\nexport * from \"./FileEntryGrid.vue?vue&type=script&lang=ts\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.enabled),expression:\"enabled\"}],class:`files-list__header-${_vm.header.id}`},[_c('span',{ref:\"mount\"})])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListHeader.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListHeader.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./FilesListHeader.vue?vue&type=template&id=33e2173e\"\nimport script from \"./FilesListHeader.vue?vue&type=script&lang=ts\"\nexport * from \"./FilesListHeader.vue?vue&type=script&lang=ts\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListTableFooter.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListTableFooter.vue?vue&type=script&lang=ts\"","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('tr',[_c('th',{staticClass:\"files-list__row-checkbox\"},[_c('span',{staticClass:\"hidden-visually\"},[_vm._v(_vm._s(_vm.t('files', 'Total rows summary')))])]),_vm._v(\" \"),_c('td',{staticClass:\"files-list__row-name\"},[_c('span',{staticClass:\"files-list__row-icon\"}),_vm._v(\" \"),_c('span',[_vm._v(_vm._s(_vm.summary))])]),_vm._v(\" \"),_c('td',{staticClass:\"files-list__row-actions\"}),_vm._v(\" \"),(_vm.isSizeAvailable)?_c('td',{staticClass:\"files-list__column files-list__row-size\"},[_c('span',[_vm._v(_vm._s(_vm.totalSize))])]):_vm._e(),_vm._v(\" \"),(_vm.isMtimeAvailable)?_c('td',{staticClass:\"files-list__column files-list__row-mtime\"}):_vm._e(),_vm._v(\" \"),_vm._l((_vm.columns),function(column){return _c('th',{key:column.id,class:_vm.classForColumn(column)},[_c('span',[_vm._v(_vm._s(column.summary?.(_vm.nodes, _vm.currentView)))])])})],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListTableFooter.vue?vue&type=style&index=0&id=130ade4f&prod&scoped=true&lang=scss\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListTableFooter.vue?vue&type=style&index=0&id=130ade4f&prod&scoped=true&lang=scss\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./FilesListTableFooter.vue?vue&type=template&id=130ade4f&scoped=true\"\nimport script from \"./FilesListTableFooter.vue?vue&type=script&lang=ts\"\nexport * from \"./FilesListTableFooter.vue?vue&type=script&lang=ts\"\nimport style0 from \"./FilesListTableFooter.vue?vue&type=style&index=0&id=130ade4f&prod&scoped=true&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"130ade4f\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('tr',{staticClass:\"files-list__row-head\"},[_c('th',{staticClass:\"files-list__column files-list__row-checkbox\",on:{\"keyup\":function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"esc\",27,$event.key,[\"Esc\",\"Escape\"]))return null;if($event.ctrlKey||$event.shiftKey||$event.altKey||$event.metaKey)return null;return _vm.resetSelection.apply(null, arguments)}}},[_c('NcCheckboxRadioSwitch',_vm._b({on:{\"update:checked\":_vm.onToggleAll}},'NcCheckboxRadioSwitch',_vm.selectAllBind,false))],1),_vm._v(\" \"),_c('th',{staticClass:\"files-list__column files-list__row-name files-list__column--sortable\",attrs:{\"aria-sort\":_vm.ariaSortForMode('basename')}},[_c('span',{staticClass:\"files-list__row-icon\"}),_vm._v(\" \"),_c('FilesListTableHeaderButton',{attrs:{\"name\":_vm.t('files', 'Name'),\"mode\":\"basename\"}})],1),_vm._v(\" \"),_c('th',{staticClass:\"files-list__row-actions\"}),_vm._v(\" \"),(_vm.isSizeAvailable)?_c('th',{staticClass:\"files-list__column files-list__row-size\",class:{ 'files-list__column--sortable': _vm.isSizeAvailable },attrs:{\"aria-sort\":_vm.ariaSortForMode('size')}},[_c('FilesListTableHeaderButton',{attrs:{\"name\":_vm.t('files', 'Size'),\"mode\":\"size\"}})],1):_vm._e(),_vm._v(\" \"),(_vm.isMtimeAvailable)?_c('th',{staticClass:\"files-list__column files-list__row-mtime\",class:{ 'files-list__column--sortable': _vm.isMtimeAvailable },attrs:{\"aria-sort\":_vm.ariaSortForMode('mtime')}},[_c('FilesListTableHeaderButton',{attrs:{\"name\":_vm.t('files', 'Modified'),\"mode\":\"mtime\"}})],1):_vm._e(),_vm._v(\" \"),_vm._l((_vm.columns),function(column){return _c('th',{key:column.id,class:_vm.classForColumn(column),attrs:{\"aria-sort\":_vm.ariaSortForMode(column.id)}},[(!!column.sort)?_c('FilesListTableHeaderButton',{attrs:{\"name\":column.title,\"mode\":column.id}}):_c('span',[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(column.title)+\"\\n\\t\\t\")])],1)})],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport Vue from 'vue';\nimport { mapState } from 'pinia';\nimport { useViewConfigStore } from '../store/viewConfig';\nimport { Navigation, View } from '@nextcloud/files';\nexport default Vue.extend({\n computed: {\n ...mapState(useViewConfigStore, ['getConfig', 'setSortingBy', 'toggleSortingDirection']),\n currentView() {\n return this.$navigation.active;\n },\n /**\n * Get the sorting mode for the current view\n */\n sortingMode() {\n return this.getConfig(this.currentView.id)?.sorting_mode\n || this.currentView?.defaultSortKey\n || 'basename';\n },\n /**\n * Get the sorting direction for the current view\n */\n isAscSorting() {\n const sortingDirection = this.getConfig(this.currentView.id)?.sorting_direction;\n return sortingDirection !== 'desc';\n },\n },\n methods: {\n toggleSortBy(key) {\n // If we're already sorting by this key, flip the direction\n if (this.sortingMode === key) {\n this.toggleSortingDirection(this.currentView.id);\n return;\n }\n // else sort ASC by this new key\n this.setSortingBy(key, this.currentView.id);\n },\n },\n});\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListTableHeaderButton.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListTableHeaderButton.vue?vue&type=script&lang=ts\"","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('NcButton',{class:['files-list__column-sort-button', {\n\t\t'files-list__column-sort-button--active': _vm.sortingMode === _vm.mode,\n\t\t'files-list__column-sort-button--size': _vm.sortingMode === 'size',\n\t}],attrs:{\"alignment\":_vm.mode === 'size' ? 'end' : 'start-reverse',\"type\":\"tertiary\"},on:{\"click\":function($event){return _vm.toggleSortBy(_vm.mode)}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [(_vm.sortingMode !== _vm.mode || _vm.isAscSorting)?_c('MenuUp',{staticClass:\"files-list__column-sort-button-icon\"}):_c('MenuDown',{staticClass:\"files-list__column-sort-button-icon\"})]},proxy:true}])},[_vm._v(\" \"),_c('span',{staticClass:\"files-list__column-sort-button-text\"},[_vm._v(_vm._s(_vm.name))])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListTableHeaderButton.vue?vue&type=style&index=0&id=4e97a5c6&prod&scoped=true&lang=scss\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListTableHeaderButton.vue?vue&type=style&index=0&id=4e97a5c6&prod&scoped=true&lang=scss\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./FilesListTableHeaderButton.vue?vue&type=template&id=4e97a5c6&scoped=true\"\nimport script from \"./FilesListTableHeaderButton.vue?vue&type=script&lang=ts\"\nexport * from \"./FilesListTableHeaderButton.vue?vue&type=script&lang=ts\"\nimport style0 from \"./FilesListTableHeaderButton.vue?vue&type=style&index=0&id=4e97a5c6&prod&scoped=true&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"4e97a5c6\",\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListTableHeader.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListTableHeader.vue?vue&type=script&lang=ts\"","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListTableHeader.vue?vue&type=style&index=0&id=6eaeabb8&prod&scoped=true&lang=scss\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListTableHeader.vue?vue&type=style&index=0&id=6eaeabb8&prod&scoped=true&lang=scss\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./FilesListTableHeader.vue?vue&type=template&id=6eaeabb8&scoped=true\"\nimport script from \"./FilesListTableHeader.vue?vue&type=script&lang=ts\"\nexport * from \"./FilesListTableHeader.vue?vue&type=script&lang=ts\"\nimport style0 from \"./FilesListTableHeader.vue?vue&type=style&index=0&id=6eaeabb8&prod&scoped=true&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"6eaeabb8\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',{staticClass:\"files-list\",attrs:{\"data-cy-files-list\":\"\"}},[_c('div',{ref:\"before\",staticClass:\"files-list__before\"},[_vm._t(\"before\")],2),_vm._v(\" \"),(!!_vm.$scopedSlots['header-overlay'])?_c('div',{staticClass:\"files-list__thead-overlay\"},[_vm._t(\"header-overlay\")],2):_vm._e(),_vm._v(\" \"),_c('table',{staticClass:\"files-list__table\",class:{ 'files-list__table--with-thead-overlay': !!_vm.$scopedSlots['header-overlay'] }},[(_vm.caption)?_c('caption',{staticClass:\"hidden-visually\"},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.caption)+\"\\n\\t\\t\")]):_vm._e(),_vm._v(\" \"),_c('thead',{ref:\"thead\",staticClass:\"files-list__thead\",attrs:{\"data-cy-files-list-thead\":\"\"}},[_vm._t(\"header\")],2),_vm._v(\" \"),_c('tbody',{staticClass:\"files-list__tbody\",class:_vm.gridMode ? 'files-list__tbody--grid' : 'files-list__tbody--list',style:(_vm.tbodyStyle),attrs:{\"data-cy-files-list-tbody\":\"\"}},_vm._l((_vm.renderedItems),function({key, item},i){return _c(_vm.dataComponent,_vm._b({key:key,tag:\"component\",attrs:{\"source\":item,\"index\":i}},'component',_vm.extraProps,false))}),1),_vm._v(\" \"),_c('tfoot',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.isReady),expression:\"isReady\"}],staticClass:\"files-list__tfoot\",attrs:{\"data-cy-files-list-tfoot\":\"\"}},[_vm._t(\"footer\")],2)])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./VirtualList.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./VirtualList.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./VirtualList.vue?vue&type=template&id=0f6839bf\"\nimport script from \"./VirtualList.vue?vue&type=script&lang=ts\"\nexport * from \"./VirtualList.vue?vue&type=script&lang=ts\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',{staticClass:\"files-list__column files-list__row-actions-batch\"},[_c('NcActions',{ref:\"actionsMenu\",attrs:{\"disabled\":!!_vm.loading || _vm.areSomeNodesLoading,\"force-name\":true,\"inline\":_vm.inlineActions,\"menu-name\":_vm.inlineActions <= 1 ? _vm.t('files', 'Actions') : null,\"open\":_vm.openedMenu},on:{\"update:open\":function($event){_vm.openedMenu=$event}}},_vm._l((_vm.enabledActions),function(action){return _c('NcActionButton',{key:action.id,class:'files-list__row-actions-batch-' + action.id,on:{\"click\":function($event){return _vm.onActionClick(action)}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [(_vm.loading === action.id)?_c('NcLoadingIcon',{attrs:{\"size\":18}}):_c('NcIconSvgWrapper',{attrs:{\"svg\":action.iconSvgInline(_vm.nodes, _vm.currentView)}})]},proxy:true}],null,true)},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(action.displayName(_vm.nodes, _vm.currentView))+\"\\n\\t\\t\")])}),1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListTableHeaderActions.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListTableHeaderActions.vue?vue&type=script&lang=ts\"","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListTableHeaderActions.vue?vue&type=style&index=0&id=1284c4be&prod&scoped=true&lang=scss\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListTableHeaderActions.vue?vue&type=style&index=0&id=1284c4be&prod&scoped=true&lang=scss\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./FilesListTableHeaderActions.vue?vue&type=template&id=1284c4be&scoped=true\"\nimport script from \"./FilesListTableHeaderActions.vue?vue&type=script&lang=ts\"\nexport * from \"./FilesListTableHeaderActions.vue?vue&type=script&lang=ts\"\nimport style0 from \"./FilesListTableHeaderActions.vue?vue&type=style&index=0&id=1284c4be&prod&scoped=true&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"1284c4be\",\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListVirtual.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListVirtual.vue?vue&type=script&lang=ts\"","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('VirtualList',{ref:\"table\",attrs:{\"data-component\":_vm.userConfig.grid_view ? _vm.FileEntryGrid : _vm.FileEntry,\"data-key\":'source',\"data-sources\":_vm.nodes,\"grid-mode\":_vm.userConfig.grid_view,\"extra-props\":{\n\t\tisMtimeAvailable: _vm.isMtimeAvailable,\n\t\tisSizeAvailable: _vm.isSizeAvailable,\n\t\tnodes: _vm.nodes,\n\t\tfilesListWidth: _vm.filesListWidth,\n\t},\"scroll-to-index\":_vm.scrollToIndex,\"caption\":_vm.caption},scopedSlots:_vm._u([(!_vm.isNoneSelected)?{key:\"header-overlay\",fn:function(){return [_c('span',{staticClass:\"files-list__selected\"},[_vm._v(_vm._s(_vm.t('files', '{count} selected', { count: _vm.selectedNodes.length })))]),_vm._v(\" \"),_c('FilesListTableHeaderActions',{attrs:{\"current-view\":_vm.currentView,\"selected-nodes\":_vm.selectedNodes}})]},proxy:true}:null,{key:\"before\",fn:function(){return _vm._l((_vm.sortedHeaders),function(header){return _c('FilesListHeader',{key:header.id,attrs:{\"current-folder\":_vm.currentFolder,\"current-view\":_vm.currentView,\"header\":header}})})},proxy:true},{key:\"header\",fn:function(){return [_c('FilesListTableHeader',{ref:\"thead\",attrs:{\"files-list-width\":_vm.filesListWidth,\"is-mtime-available\":_vm.isMtimeAvailable,\"is-size-available\":_vm.isSizeAvailable,\"nodes\":_vm.nodes}})]},proxy:true},{key:\"footer\",fn:function(){return [_c('FilesListTableFooter',{attrs:{\"current-view\":_vm.currentView,\"files-list-width\":_vm.filesListWidth,\"is-mtime-available\":_vm.isMtimeAvailable,\"is-size-available\":_vm.isSizeAvailable,\"nodes\":_vm.nodes,\"summary\":_vm.summary}})]},proxy:true}],null,true)})\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListVirtual.vue?vue&type=style&index=0&id=1287bfe2&prod&scoped=true&lang=scss\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListVirtual.vue?vue&type=style&index=0&id=1287bfe2&prod&scoped=true&lang=scss\";\n export default content && content.locals ? content.locals : undefined;\n","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListVirtual.vue?vue&type=style&index=1&id=1287bfe2&prod&lang=scss\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListVirtual.vue?vue&type=style&index=1&id=1287bfe2&prod&lang=scss\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./FilesListVirtual.vue?vue&type=template&id=1287bfe2&scoped=true\"\nimport script from \"./FilesListVirtual.vue?vue&type=script&lang=ts\"\nexport * from \"./FilesListVirtual.vue?vue&type=script&lang=ts\"\nimport style0 from \"./FilesListVirtual.vue?vue&type=style&index=0&id=1287bfe2&prod&scoped=true&lang=scss\"\nimport style1 from \"./FilesListVirtual.vue?vue&type=style&index=1&id=1287bfe2&prod&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"1287bfe2\",\n null\n \n)\n\nexport default component.exports","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./TrayArrowDown.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./TrayArrowDown.vue?vue&type=script&lang=js\"","\n\n","import { render, staticRenderFns } from \"./TrayArrowDown.vue?vue&type=template&id=447c2cd4\"\nimport script from \"./TrayArrowDown.vue?vue&type=script&lang=js\"\nexport * from \"./TrayArrowDown.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon tray-arrow-down-icon\",attrs:{\"aria-hidden\":_vm.title ? null : true,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M2 12H4V17H20V12H22V17C22 18.11 21.11 19 20 19H4C2.9 19 2 18.11 2 17V12M12 15L17.55 9.54L16.13 8.13L13 11.25V2H11V11.25L7.88 8.13L6.46 9.55L12 15Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DragAndDropNotice.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DragAndDropNotice.vue?vue&type=script&lang=ts\"","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.dragover),expression:\"dragover\"}],staticClass:\"files-list__drag-drop-notice\",attrs:{\"data-cy-files-drag-drop-area\":\"\"},on:{\"drop\":_vm.onDrop}},[_c('div',{staticClass:\"files-list__drag-drop-notice-wrapper\"},[(_vm.canUpload && !_vm.isQuotaExceeded)?[_c('TrayArrowDownIcon',{attrs:{\"size\":48}}),_vm._v(\" \"),_c('h3',{staticClass:\"files-list-drag-drop-notice__title\"},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('files', 'Drag and drop files here to upload'))+\"\\n\\t\\t\\t\")])]:[_c('h3',{staticClass:\"files-list-drag-drop-notice__title\"},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.cantUploadLabel)+\"\\n\\t\\t\\t\")])]],2)])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DragAndDropNotice.vue?vue&type=style&index=0&id=7f8a4132&prod&lang=scss&scoped=true\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DragAndDropNotice.vue?vue&type=style&index=0&id=7f8a4132&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./DragAndDropNotice.vue?vue&type=template&id=7f8a4132&scoped=true\"\nimport script from \"./DragAndDropNotice.vue?vue&type=script&lang=ts\"\nexport * from \"./DragAndDropNotice.vue?vue&type=script&lang=ts\"\nimport style0 from \"./DragAndDropNotice.vue?vue&type=style&index=0&id=7f8a4132&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"7f8a4132\",\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesList.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesList.vue?vue&type=script&lang=ts\"","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesList.vue?vue&type=style&index=0&id=0e2ac83a&prod&scoped=true&lang=scss\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesList.vue?vue&type=style&index=0&id=0e2ac83a&prod&scoped=true&lang=scss\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./FilesList.vue?vue&type=template&id=0e2ac83a&scoped=true\"\nimport script from \"./FilesList.vue?vue&type=script&lang=ts\"\nexport * from \"./FilesList.vue?vue&type=script&lang=ts\"\nimport style0 from \"./FilesList.vue?vue&type=style&index=0&id=0e2ac83a&prod&scoped=true&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"0e2ac83a\",\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesApp.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesApp.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./FilesApp.vue?vue&type=template&id=d3308b8a\"\nimport script from \"./FilesApp.vue?vue&type=script&lang=ts\"\nexport * from \"./FilesApp.vue?vue&type=script&lang=ts\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { PiniaVuePlugin } from 'pinia';\nimport { getNavigation } from '@nextcloud/files';\nimport { getRequestToken } from '@nextcloud/auth';\nimport Vue from 'vue';\nimport { pinia } from './store/index.ts';\nimport router from './router/router';\nimport RouterService from './services/RouterService';\nimport SettingsModel from './models/Setting.js';\nimport SettingsService from './services/Settings.js';\nimport FilesApp from './FilesApp.vue';\n// @ts-expect-error __webpack_nonce__ is injected by webpack\n__webpack_nonce__ = btoa(getRequestToken());\n// Init private and public Files namespace\nwindow.OCA.Files = window.OCA.Files ?? {};\nwindow.OCP.Files = window.OCP.Files ?? {};\n// Expose router\nconst Router = new RouterService(router);\nObject.assign(window.OCP.Files, { Router });\n// Init Pinia store\nVue.use(PiniaVuePlugin);\n// Init Navigation Service\n// This only works with Vue 2 - with Vue 3 this will not modify the source but return just a oberserver\nconst Navigation = Vue.observable(getNavigation());\nVue.prototype.$navigation = Navigation;\n// Init Files App Settings Service\nconst Settings = new SettingsService();\nObject.assign(window.OCA.Files, { Settings });\nObject.assign(window.OCA.Files.Settings, { Setting: SettingsModel });\nconst FilesAppVue = Vue.extend(FilesApp);\nnew FilesAppVue({\n router,\n pinia,\n}).$mount('#content');\n","export default class RouterService {\n _router;\n constructor(router) {\n this._router = router;\n }\n get name() {\n return this._router.currentRoute.name;\n }\n get query() {\n return this._router.currentRoute.query || {};\n }\n get params() {\n return this._router.currentRoute.params || {};\n }\n /**\n * Trigger a route change on the files app\n *\n * @param path the url path, eg: '/trashbin?dir=/Deleted'\n * @param replace replace the current history\n * @see https://router.vuejs.org/guide/essentials/navigation.html#navigate-to-a-different-location\n */\n goTo(path, replace = false) {\n return this._router.push({\n path,\n replace,\n });\n }\n /**\n * Trigger a route change on the files App\n *\n * @param name the route name\n * @param params the route parameters\n * @param query the url query parameters\n * @param replace replace the current history\n * @see https://router.vuejs.org/guide/essentials/navigation.html#navigate-to-a-different-location\n */\n goToRoute(name, params, query, replace) {\n return this._router.push({\n name,\n query,\n params,\n replace,\n });\n }\n}\n","/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nexport default class Settings {\n\n\t_settings\n\n\tconstructor() {\n\t\tthis._settings = []\n\t\tconsole.debug('OCA.Files.Settings initialized')\n\t}\n\n\t/**\n\t * Register a new setting\n\t *\n\t * @since 19.0.0\n\t * @param {OCA.Files.Settings.Setting} view element to add to settings\n\t * @return {boolean} whether registering was successful\n\t */\n\tregister(view) {\n\t\tif (this._settings.filter(e => e.name === view.name).length > 0) {\n\t\t\tconsole.error('A setting with the same name is already registered')\n\t\t\treturn false\n\t\t}\n\t\tthis._settings.push(view)\n\t\treturn true\n\t}\n\n\t/**\n\t * All settings elements\n\t *\n\t * @return {OCA.Files.Settings.Setting[]} All currently registered settings\n\t */\n\tget settings() {\n\t\treturn this._settings\n\t}\n\n}\n","/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nexport default class Setting {\n\n\t_close\n\t_el\n\t_name\n\t_open\n\n\t/**\n\t * Create a new files app setting\n\t *\n\t * @since 19.0.0\n\t * @param {string} name the name of this setting\n\t * @param {object} component the component\n\t * @param {Function} component.el function that returns an unmounted dom element to be added\n\t * @param {Function} [component.open] callback for when setting is added\n\t * @param {Function} [component.close] callback for when setting is closed\n\t */\n\tconstructor(name, { el, open, close }) {\n\t\tthis._name = name\n\t\tthis._el = el\n\t\tthis._open = open\n\t\tthis._close = close\n\n\t\tif (typeof this._open !== 'function') {\n\t\t\tthis._open = () => {}\n\t\t}\n\n\t\tif (typeof this._close !== 'function') {\n\t\t\tthis._close = () => {}\n\t\t}\n\t}\n\n\tget name() {\n\t\treturn this._name\n\t}\n\n\tget el() {\n\t\treturn this._el\n\t}\n\n\tget open() {\n\t\treturn this._open\n\t}\n\n\tget close() {\n\t\treturn this._close\n\t}\n\n}\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.upload-picker[data-v-1f097873] {\n display: inline-flex;\n align-items: center;\n height: 44px;\n}\n.upload-picker__progress[data-v-1f097873] {\n width: 200px;\n max-width: 0;\n transition: max-width var(--animation-quick) ease-in-out;\n margin-top: 8px;\n}\n.upload-picker__progress p[data-v-1f097873] {\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n}\n.upload-picker--uploading .upload-picker__progress[data-v-1f097873] {\n max-width: 200px;\n margin-right: 20px;\n margin-left: 8px;\n}\n.upload-picker--paused .upload-picker__progress[data-v-1f097873] {\n animation: breathing-1f097873 3s ease-out infinite normal;\n}\n@keyframes breathing-1f097873 {\n0% {\n opacity: 0.5;\n}\n25% {\n opacity: 1;\n}\n60% {\n opacity: 0.5;\n}\n100% {\n opacity: 0.5;\n}\n}`, \"\",{\"version\":3,\"sources\":[\"webpack://./node_modules/@nextcloud/upload/dist/assets/index-DiWRcN3o.css\"],\"names\":[],\"mappings\":\"AAAA;EACE,oBAAoB;EACpB,mBAAmB;EACnB,YAAY;AACd;AACA;EACE,YAAY;EACZ,YAAY;EACZ,wDAAwD;EACxD,eAAe;AACjB;AACA;EACE,gBAAgB;EAChB,mBAAmB;EACnB,uBAAuB;AACzB;AACA;EACE,gBAAgB;EAChB,kBAAkB;EAClB,gBAAgB;AAClB;AACA;EACE,yDAAyD;AAC3D;AACA;AACA;IACI,YAAY;AAChB;AACA;IACI,UAAU;AACd;AACA;IACI,YAAY;AAChB;AACA;IACI,YAAY;AAChB;AACA\",\"sourcesContent\":[\".upload-picker[data-v-1f097873] {\\n display: inline-flex;\\n align-items: center;\\n height: 44px;\\n}\\n.upload-picker__progress[data-v-1f097873] {\\n width: 200px;\\n max-width: 0;\\n transition: max-width var(--animation-quick) ease-in-out;\\n margin-top: 8px;\\n}\\n.upload-picker__progress p[data-v-1f097873] {\\n overflow: hidden;\\n white-space: nowrap;\\n text-overflow: ellipsis;\\n}\\n.upload-picker--uploading .upload-picker__progress[data-v-1f097873] {\\n max-width: 200px;\\n margin-right: 20px;\\n margin-left: 8px;\\n}\\n.upload-picker--paused .upload-picker__progress[data-v-1f097873] {\\n animation: breathing-1f097873 3s ease-out infinite normal;\\n}\\n@keyframes breathing-1f097873 {\\n0% {\\n opacity: 0.5;\\n}\\n25% {\\n opacity: 1;\\n}\\n60% {\\n opacity: 0.5;\\n}\\n100% {\\n opacity: 0.5;\\n}\\n}\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.files-list__breadcrumbs[data-v-7a939202]{flex:1 1 100% !important;width:100%;height:100%;margin-block:0;margin-inline:10px}.files-list__breadcrumbs[data-v-7a939202] a{cursor:pointer !important}.files-list__breadcrumbs--with-progress[data-v-7a939202]{flex-direction:column !important;align-items:flex-start !important}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/components/BreadCrumbs.vue\"],\"names\":[],\"mappings\":\"AACA,0CAEC,wBAAA,CACA,UAAA,CACA,WAAA,CACA,cAAA,CACA,kBAAA,CAGC,6CACC,yBAAA,CAIF,yDACC,gCAAA,CACA,iCAAA\",\"sourcesContent\":[\"\\n.files-list__breadcrumbs {\\n\\t// Take as much space as possible\\n\\tflex: 1 1 100% !important;\\n\\twidth: 100%;\\n\\theight: 100%;\\n\\tmargin-block: 0;\\n\\tmargin-inline: 10px;\\n\\n\\t:deep() {\\n\\t\\ta {\\n\\t\\t\\tcursor: pointer !important;\\n\\t\\t}\\n\\t}\\n\\n\\t&--with-progress {\\n\\t\\tflex-direction: column !important;\\n\\t\\talign-items: flex-start !important;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.files-list__drag-drop-notice[data-v-7f8a4132]{display:flex;align-items:center;justify-content:center;width:100%;min-height:113px;margin:0;user-select:none;color:var(--color-text-maxcontrast);background-color:var(--color-main-background);border-color:#000}.files-list__drag-drop-notice h3[data-v-7f8a4132]{margin-left:16px;color:inherit}.files-list__drag-drop-notice-wrapper[data-v-7f8a4132]{display:flex;align-items:center;justify-content:center;height:15vh;max-height:70%;padding:0 5vw;border:2px var(--color-border-dark) dashed;border-radius:var(--border-radius-large)}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/components/DragAndDropNotice.vue\"],\"names\":[],\"mappings\":\"AACA,+CACC,YAAA,CACA,kBAAA,CACA,sBAAA,CACA,UAAA,CAEA,gBAAA,CACA,QAAA,CACA,gBAAA,CACA,mCAAA,CACA,6CAAA,CACA,iBAAA,CAEA,kDACC,gBAAA,CACA,aAAA,CAGD,uDACC,YAAA,CACA,kBAAA,CACA,sBAAA,CACA,WAAA,CACA,cAAA,CACA,aAAA,CACA,0CAAA,CACA,wCAAA\",\"sourcesContent\":[\"\\n.files-list__drag-drop-notice {\\n\\tdisplay: flex;\\n\\talign-items: center;\\n\\tjustify-content: center;\\n\\twidth: 100%;\\n\\t// Breadcrumbs height + row thead height\\n\\tmin-height: calc(58px + 55px);\\n\\tmargin: 0;\\n\\tuser-select: none;\\n\\tcolor: var(--color-text-maxcontrast);\\n\\tbackground-color: var(--color-main-background);\\n\\tborder-color: black;\\n\\n\\th3 {\\n\\t\\tmargin-left: 16px;\\n\\t\\tcolor: inherit;\\n\\t}\\n\\n\\t&-wrapper {\\n\\t\\tdisplay: flex;\\n\\t\\talign-items: center;\\n\\t\\tjustify-content: center;\\n\\t\\theight: 15vh;\\n\\t\\tmax-height: 70%;\\n\\t\\tpadding: 0 5vw;\\n\\t\\tborder: 2px var(--color-border-dark) dashed;\\n\\t\\tborder-radius: var(--border-radius-large);\\n\\t}\\n}\\n\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.files-list-drag-image{position:absolute;top:-9999px;left:-9999px;display:flex;overflow:hidden;align-items:center;height:44px;padding:6px 12px;background:var(--color-main-background)}.files-list-drag-image__icon,.files-list-drag-image .files-list__row-icon{display:flex;overflow:hidden;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--border-radius)}.files-list-drag-image__icon{overflow:visible;margin-right:12px}.files-list-drag-image__icon img{max-width:100%;max-height:100%}.files-list-drag-image__icon .material-design-icon{color:var(--color-text-maxcontrast)}.files-list-drag-image__icon .material-design-icon.folder-icon{color:var(--color-primary-element)}.files-list-drag-image__icon>span{display:flex}.files-list-drag-image__icon>span .files-list__row-icon+.files-list__row-icon{margin-top:6px;margin-left:-26px}.files-list-drag-image__icon>span .files-list__row-icon+.files-list__row-icon+.files-list__row-icon{margin-top:12px}.files-list-drag-image__icon>span:not(:empty)+*{display:none}.files-list-drag-image__name{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/components/DragAndDropPreview.vue\"],\"names\":[],\"mappings\":\"AAIA,uBACC,iBAAA,CACA,WAAA,CACA,YAAA,CACA,YAAA,CACA,eAAA,CACA,kBAAA,CACA,WAAA,CACA,gBAAA,CACA,uCAAA,CAEA,0EAEC,YAAA,CACA,eAAA,CACA,kBAAA,CACA,sBAAA,CACA,UAAA,CACA,WAAA,CACA,kCAAA,CAGD,6BACC,gBAAA,CACA,iBAAA,CAEA,iCACC,cAAA,CACA,eAAA,CAGD,mDACC,mCAAA,CACA,+DACC,kCAAA,CAKF,kCACC,YAAA,CAGA,8EACC,cA9CU,CA+CV,iBAAA,CACA,oGACC,eAAA,CAKF,gDACC,YAAA,CAKH,6BACC,eAAA,CACA,kBAAA,CACA,sBAAA\",\"sourcesContent\":[\"\\n$size: 32px;\\n$stack-shift: 6px;\\n\\n.files-list-drag-image {\\n\\tposition: absolute;\\n\\ttop: -9999px;\\n\\tleft: -9999px;\\n\\tdisplay: flex;\\n\\toverflow: hidden;\\n\\talign-items: center;\\n\\theight: 44px;\\n\\tpadding: 6px 12px;\\n\\tbackground: var(--color-main-background);\\n\\n\\t&__icon,\\n\\t.files-list__row-icon {\\n\\t\\tdisplay: flex;\\n\\t\\toverflow: hidden;\\n\\t\\talign-items: center;\\n\\t\\tjustify-content: center;\\n\\t\\twidth: 32px;\\n\\t\\theight: 32px;\\n\\t\\tborder-radius: var(--border-radius);\\n\\t}\\n\\n\\t&__icon {\\n\\t\\toverflow: visible;\\n\\t\\tmargin-right: 12px;\\n\\n\\t\\timg {\\n\\t\\t\\tmax-width: 100%;\\n\\t\\t\\tmax-height: 100%;\\n\\t\\t}\\n\\n\\t\\t.material-design-icon {\\n\\t\\t\\tcolor: var(--color-text-maxcontrast);\\n\\t\\t\\t&.folder-icon {\\n\\t\\t\\t\\tcolor: var(--color-primary-element);\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t// Previews container\\n\\t\\t> span {\\n\\t\\t\\tdisplay: flex;\\n\\n\\t\\t\\t// Stack effect if more than one element\\n\\t\\t\\t.files-list__row-icon + .files-list__row-icon {\\n\\t\\t\\t\\tmargin-top: $stack-shift;\\n\\t\\t\\t\\tmargin-left: $stack-shift - $size;\\n\\t\\t\\t\\t& + .files-list__row-icon {\\n\\t\\t\\t\\t\\tmargin-top: $stack-shift * 2;\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\t\\t\\t// If we have manually clone the preview,\\n\\t\\t\\t// let's hide any fallback icons\\n\\t\\t\\t&:not(:empty) + * {\\n\\t\\t\\t\\tdisplay: none;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n\\n\\t&__name {\\n\\t\\toverflow: hidden;\\n\\t\\twhite-space: nowrap;\\n\\t\\ttext-overflow: ellipsis;\\n\\t}\\n}\\n\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.favorite-marker-icon[data-v-f2d0cf6e]{color:var(--color-favorite);min-width:unset !important;min-height:unset !important}.favorite-marker-icon[data-v-f2d0cf6e] svg{width:26px !important;height:26px !important;max-width:unset !important;max-height:unset !important}.favorite-marker-icon[data-v-f2d0cf6e] svg path{stroke:var(--color-main-background);stroke-width:8px;stroke-linejoin:round;paint-order:stroke}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/components/FileEntry/FavoriteIcon.vue\"],\"names\":[],\"mappings\":\"AACA,uCACC,2BAAA,CAEA,0BAAA,CACG,2BAAA,CAGF,4CAEC,qBAAA,CACA,sBAAA,CAGA,0BAAA,CACA,2BAAA,CAGA,iDACC,mCAAA,CACA,gBAAA,CACA,qBAAA,CACA,kBAAA\",\"sourcesContent\":[\"\\n.favorite-marker-icon {\\n\\tcolor: var(--color-favorite);\\n\\t// Override NcIconSvgWrapper defaults (clickable area)\\n\\tmin-width: unset !important;\\n min-height: unset !important;\\n\\n\\t:deep() {\\n\\t\\tsvg {\\n\\t\\t\\t// We added a stroke for a11y so we must increase the size to include the stroke\\n\\t\\t\\twidth: 26px !important;\\n\\t\\t\\theight: 26px !important;\\n\\n\\t\\t\\t// Override NcIconSvgWrapper defaults of 20px\\n\\t\\t\\tmax-width: unset !important;\\n\\t\\t\\tmax-height: unset !important;\\n\\n\\t\\t\\t// Sow a border around the icon for better contrast\\n\\t\\t\\tpath {\\n\\t\\t\\t\\tstroke: var(--color-main-background);\\n\\t\\t\\t\\tstroke-width: 8px;\\n\\t\\t\\t\\tstroke-linejoin: round;\\n\\t\\t\\t\\tpaint-order: stroke;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `main.app-content[style*=mouse-pos-x] .v-popper__popper{transform:translate3d(var(--mouse-pos-x), var(--mouse-pos-y), 0px) !important}main.app-content[style*=mouse-pos-x] .v-popper__popper[data-popper-placement=top]{transform:translate3d(var(--mouse-pos-x), calc(var(--mouse-pos-y) - 50vh + 34px), 0px) !important}main.app-content[style*=mouse-pos-x] .v-popper__popper .v-popper__arrow-container{display:none}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/components/FileEntry/FileEntryActions.vue\"],\"names\":[],\"mappings\":\"AAGA,uDACC,6EAAA,CAGA,kFAEC,iGAAA,CAGD,kFACC,YAAA\",\"sourcesContent\":[\"\\n// Allow right click to define the position of the menu\\n// only if defined\\nmain.app-content[style*=\\\"mouse-pos-x\\\"] .v-popper__popper {\\n\\ttransform: translate3d(var(--mouse-pos-x), var(--mouse-pos-y), 0px) !important;\\n\\n\\t// If the menu is too close to the bottom, we move it up\\n\\t&[data-popper-placement=\\\"top\\\"] {\\n\\t\\t// 34px added to align with the top of the cursor\\n\\t\\ttransform: translate3d(var(--mouse-pos-x), calc(var(--mouse-pos-y) - 50vh + 34px), 0px) !important;\\n\\t}\\n\\t// Hide arrow if floating\\n\\t.v-popper__arrow-container {\\n\\t\\tdisplay: none;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `[data-v-801e4784] .button-vue--icon-and-text .button-vue__text{color:var(--color-primary-element)}[data-v-801e4784] .button-vue--icon-and-text .button-vue__icon{color:var(--color-primary-element)}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/components/FileEntry/FileEntryActions.vue\"],\"names\":[],\"mappings\":\"AAEC,+DACC,kCAAA,CAED,+DACC,kCAAA\",\"sourcesContent\":[\"\\n:deep(.button-vue--icon-and-text, .files-list__row-action-sharing-status) {\\n\\t.button-vue__text {\\n\\t\\tcolor: var(--color-primary-element);\\n\\t}\\n\\t.button-vue__icon {\\n\\t\\tcolor: var(--color-primary-element);\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `tr[data-v-130ade4f]{margin-bottom:300px;border-top:1px solid var(--color-border);background-color:rgba(0,0,0,0) !important;border-bottom:none !important}tr td[data-v-130ade4f]{user-select:none;color:var(--color-text-maxcontrast) !important}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/components/FilesListTableFooter.vue\"],\"names\":[],\"mappings\":\"AAEA,oBACC,mBAAA,CACA,wCAAA,CAEA,yCAAA,CACA,6BAAA,CAEA,uBACC,gBAAA,CAEA,8CAAA\",\"sourcesContent\":[\"\\n// Scoped row\\ntr {\\n\\tmargin-bottom: 300px;\\n\\tborder-top: 1px solid var(--color-border);\\n\\t// Prevent hover effect on the whole row\\n\\tbackground-color: transparent !important;\\n\\tborder-bottom: none !important;\\n\\n\\ttd {\\n\\t\\tuser-select: none;\\n\\t\\t// Make sure the cell colors don't apply to column headers\\n\\t\\tcolor: var(--color-text-maxcontrast) !important;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.files-list__column[data-v-6eaeabb8]{user-select:none;color:var(--color-text-maxcontrast) !important}.files-list__column--sortable[data-v-6eaeabb8]{cursor:pointer}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/components/FilesListTableHeader.vue\"],\"names\":[],\"mappings\":\"AACA,qCACC,gBAAA,CAEA,8CAAA,CAEA,+CACC,cAAA\",\"sourcesContent\":[\"\\n.files-list__column {\\n\\tuser-select: none;\\n\\t// Make sure the cell colors don't apply to column headers\\n\\tcolor: var(--color-text-maxcontrast) !important;\\n\\n\\t&--sortable {\\n\\t\\tcursor: pointer;\\n\\t}\\n}\\n\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.files-list__row-actions-batch[data-v-1284c4be]{flex:1 1 100% !important;max-width:100%}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/components/FilesListTableHeaderActions.vue\"],\"names\":[],\"mappings\":\"AACA,gDACC,wBAAA,CACA,cAAA\",\"sourcesContent\":[\"\\n.files-list__row-actions-batch {\\n\\tflex: 1 1 100% !important;\\n\\tmax-width: 100%;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.files-list__column-sort-button[data-v-4e97a5c6]{margin:0 calc(var(--cell-margin)*-1);min-width:calc(100% - 3*var(--cell-margin)) !important}.files-list__column-sort-button-text[data-v-4e97a5c6]{color:var(--color-text-maxcontrast);font-weight:normal}.files-list__column-sort-button-icon[data-v-4e97a5c6]{color:var(--color-text-maxcontrast);opacity:0;transition:opacity var(--animation-quick);inset-inline-start:-10px}.files-list__column-sort-button--size .files-list__column-sort-button-icon[data-v-4e97a5c6]{inset-inline-start:10px}.files-list__column-sort-button--active .files-list__column-sort-button-icon[data-v-4e97a5c6],.files-list__column-sort-button:hover .files-list__column-sort-button-icon[data-v-4e97a5c6],.files-list__column-sort-button:focus .files-list__column-sort-button-icon[data-v-4e97a5c6],.files-list__column-sort-button:active .files-list__column-sort-button-icon[data-v-4e97a5c6]{opacity:1}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/components/FilesListTableHeaderButton.vue\"],\"names\":[],\"mappings\":\"AACA,iDAEC,oCAAA,CACA,sDAAA,CAEA,sDACC,mCAAA,CACA,kBAAA,CAGD,sDACC,mCAAA,CACA,SAAA,CACA,yCAAA,CACA,wBAAA,CAGD,4FACC,uBAAA,CAGD,mXAIC,SAAA\",\"sourcesContent\":[\"\\n.files-list__column-sort-button {\\n\\t// Compensate for cells margin\\n\\tmargin: 0 calc(var(--cell-margin) * -1);\\n\\tmin-width: calc(100% - 3 * var(--cell-margin))!important;\\n\\n\\t&-text {\\n\\t\\tcolor: var(--color-text-maxcontrast);\\n\\t\\tfont-weight: normal;\\n\\t}\\n\\n\\t&-icon {\\n\\t\\tcolor: var(--color-text-maxcontrast);\\n\\t\\topacity: 0;\\n\\t\\ttransition: opacity var(--animation-quick);\\n\\t\\tinset-inline-start: -10px;\\n\\t}\\n\\n\\t&--size &-icon {\\n\\t\\tinset-inline-start: 10px;\\n\\t}\\n\\n\\t&--active &-icon,\\n\\t&:hover &-icon,\\n\\t&:focus &-icon,\\n\\t&:active &-icon {\\n\\t\\topacity: 1;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.files-list[data-v-1287bfe2]{--row-height: 55px;--cell-margin: 14px;--checkbox-padding: calc((var(--row-height) - var(--checkbox-size)) / 2);--checkbox-size: 24px;--clickable-area: 44px;--icon-preview-size: 32px;overflow:auto;height:100%;will-change:scroll-position}.files-list[data-v-1287bfe2] tbody{will-change:padding;contain:layout paint style;display:flex;flex-direction:column;width:100%;position:relative}.files-list[data-v-1287bfe2] tbody tr{contain:strict}.files-list[data-v-1287bfe2] tbody tr:hover,.files-list[data-v-1287bfe2] tbody tr:focus{background-color:var(--color-background-dark)}.files-list[data-v-1287bfe2] .files-list__before{display:flex;flex-direction:column}.files-list[data-v-1287bfe2] .files-list__selected{padding-right:12px;white-space:nowrap}.files-list[data-v-1287bfe2] .files-list__table{display:block}.files-list[data-v-1287bfe2] .files-list__table.files-list__table--with-thead-overlay{margin-top:calc(-1*var(--row-height))}.files-list[data-v-1287bfe2] .files-list__thead-overlay{position:sticky;top:0;margin-left:var(--row-height);z-index:20;display:flex;align-items:center;background-color:var(--color-main-background);border-bottom:1px solid var(--color-border);height:var(--row-height)}.files-list[data-v-1287bfe2] .files-list__thead,.files-list[data-v-1287bfe2] .files-list__tfoot{display:flex;flex-direction:column;width:100%;background-color:var(--color-main-background)}.files-list[data-v-1287bfe2] .files-list__thead{position:sticky;z-index:10;top:0}.files-list[data-v-1287bfe2] .files-list__tfoot{min-height:300px}.files-list[data-v-1287bfe2] tr{position:relative;display:flex;align-items:center;width:100%;user-select:none;border-bottom:1px solid var(--color-border);box-sizing:border-box;user-select:none;height:var(--row-height)}.files-list[data-v-1287bfe2] td,.files-list[data-v-1287bfe2] th{display:flex;align-items:center;flex:0 0 auto;justify-content:left;width:var(--row-height);height:var(--row-height);margin:0;padding:0;color:var(--color-text-maxcontrast);border:none}.files-list[data-v-1287bfe2] td span,.files-list[data-v-1287bfe2] th span{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.files-list[data-v-1287bfe2] .files-list__row--failed{position:absolute;display:block;top:0;left:0;right:0;bottom:0;opacity:.1;z-index:-1;background:var(--color-error)}.files-list[data-v-1287bfe2] .files-list__row-checkbox{justify-content:center}.files-list[data-v-1287bfe2] .files-list__row-checkbox .checkbox-radio-switch{display:flex;justify-content:center;--icon-size: var(--checkbox-size)}.files-list[data-v-1287bfe2] .files-list__row-checkbox .checkbox-radio-switch label.checkbox-radio-switch__label{width:var(--clickable-area);height:var(--clickable-area);margin:0;padding:calc((var(--clickable-area) - var(--checkbox-size))/2)}.files-list[data-v-1287bfe2] .files-list__row-checkbox .checkbox-radio-switch .checkbox-radio-switch__icon{margin:0 !important}.files-list[data-v-1287bfe2] .files-list__row:hover,.files-list[data-v-1287bfe2] .files-list__row:focus,.files-list[data-v-1287bfe2] .files-list__row:active,.files-list[data-v-1287bfe2] .files-list__row--active,.files-list[data-v-1287bfe2] .files-list__row--dragover{background-color:var(--color-background-hover);--color-text-maxcontrast: var(--color-main-text)}.files-list[data-v-1287bfe2] .files-list__row:hover>*,.files-list[data-v-1287bfe2] .files-list__row:focus>*,.files-list[data-v-1287bfe2] .files-list__row:active>*,.files-list[data-v-1287bfe2] .files-list__row--active>*,.files-list[data-v-1287bfe2] .files-list__row--dragover>*{--color-border: var(--color-border-dark)}.files-list[data-v-1287bfe2] .files-list__row:hover .favorite-marker-icon svg path,.files-list[data-v-1287bfe2] .files-list__row:focus .favorite-marker-icon svg path,.files-list[data-v-1287bfe2] .files-list__row:active .favorite-marker-icon svg path,.files-list[data-v-1287bfe2] .files-list__row--active .favorite-marker-icon svg path,.files-list[data-v-1287bfe2] .files-list__row--dragover .favorite-marker-icon svg path{stroke:var(--color-background-hover)}.files-list[data-v-1287bfe2] .files-list__row--dragover *{pointer-events:none}.files-list[data-v-1287bfe2] .files-list__row-icon{position:relative;display:flex;overflow:visible;align-items:center;flex:0 0 var(--icon-preview-size);justify-content:center;width:var(--icon-preview-size);height:100%;margin-right:var(--checkbox-padding);color:var(--color-primary-element)}.files-list[data-v-1287bfe2] .files-list__row-icon *{cursor:pointer}.files-list[data-v-1287bfe2] .files-list__row-icon>span{justify-content:flex-start}.files-list[data-v-1287bfe2] .files-list__row-icon>span:not(.files-list__row-icon-favorite) svg{width:var(--icon-preview-size);height:var(--icon-preview-size)}.files-list[data-v-1287bfe2] .files-list__row-icon>span.folder-icon,.files-list[data-v-1287bfe2] .files-list__row-icon>span.folder-open-icon{margin:-3px}.files-list[data-v-1287bfe2] .files-list__row-icon>span.folder-icon svg,.files-list[data-v-1287bfe2] .files-list__row-icon>span.folder-open-icon svg{width:calc(var(--icon-preview-size) + 6px);height:calc(var(--icon-preview-size) + 6px)}.files-list[data-v-1287bfe2] .files-list__row-icon-preview{overflow:hidden;width:var(--icon-preview-size);height:var(--icon-preview-size);border-radius:var(--border-radius);object-fit:contain;object-position:center}.files-list[data-v-1287bfe2] .files-list__row-icon-preview:not(.files-list__row-icon-preview--loaded){background:var(--color-loading-dark)}.files-list[data-v-1287bfe2] .files-list__row-icon-favorite{position:absolute;top:0px;right:-10px}.files-list[data-v-1287bfe2] .files-list__row-icon-overlay{position:absolute;max-height:calc(var(--icon-preview-size)*.5);max-width:calc(var(--icon-preview-size)*.5);color:var(--color-primary-element-text);margin-top:2px}.files-list[data-v-1287bfe2] .files-list__row-icon-overlay--file{color:var(--color-main-text);background:var(--color-main-background);border-radius:100%}.files-list[data-v-1287bfe2] .files-list__row-name{overflow:hidden;flex:1 1 auto}.files-list[data-v-1287bfe2] .files-list__row-name a{display:flex;align-items:center;width:100%;height:100%;min-width:0}.files-list[data-v-1287bfe2] .files-list__row-name a:focus-visible{outline:none}.files-list[data-v-1287bfe2] .files-list__row-name a:focus .files-list__row-name-text{outline:2px solid var(--color-main-text) !important;border-radius:20px}.files-list[data-v-1287bfe2] .files-list__row-name a:focus:not(:focus-visible) .files-list__row-name-text{outline:none !important}.files-list[data-v-1287bfe2] .files-list__row-name .files-list__row-name-text{color:var(--color-main-text);padding:5px 10px;margin-left:-10px;display:inline-flex}.files-list[data-v-1287bfe2] .files-list__row-name .files-list__row-name-ext{color:var(--color-text-maxcontrast);overflow:visible}.files-list[data-v-1287bfe2] .files-list__row-rename{width:100%;max-width:600px}.files-list[data-v-1287bfe2] .files-list__row-rename input{width:100%;margin-left:-8px;padding:2px 6px;border-width:2px}.files-list[data-v-1287bfe2] .files-list__row-rename input:invalid{border-color:var(--color-error);color:red}.files-list[data-v-1287bfe2] .files-list__row-actions{width:auto}.files-list[data-v-1287bfe2] .files-list__row-actions~td,.files-list[data-v-1287bfe2] .files-list__row-actions~th{margin:0 var(--cell-margin)}.files-list[data-v-1287bfe2] .files-list__row-actions button .button-vue__text{font-weight:normal}.files-list[data-v-1287bfe2] .files-list__row-action--inline{margin-right:7px}.files-list[data-v-1287bfe2] .files-list__row-mtime,.files-list[data-v-1287bfe2] .files-list__row-size{color:var(--color-text-maxcontrast)}.files-list[data-v-1287bfe2] .files-list__row-size{width:calc(var(--row-height)*1.5);justify-content:flex-end}.files-list[data-v-1287bfe2] .files-list__row-mtime{width:calc(var(--row-height)*2)}.files-list[data-v-1287bfe2] .files-list__row-column-custom{width:calc(var(--row-height)*2)}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/components/FilesListVirtual.vue\"],\"names\":[],\"mappings\":\"AACA,6BACC,kBAAA,CACA,mBAAA,CAEA,wEAAA,CACA,qBAAA,CACA,sBAAA,CACA,yBAAA,CAEA,aAAA,CACA,WAAA,CACA,2BAAA,CAIC,oCACC,mBAAA,CACA,0BAAA,CACA,YAAA,CACA,qBAAA,CACA,UAAA,CAEA,iBAAA,CAGA,uCACC,cAAA,CACA,0FAEC,6CAAA,CAMH,kDACC,YAAA,CACA,qBAAA,CAGD,oDACC,kBAAA,CACA,kBAAA,CAGD,iDACC,aAAA,CAEA,uFAEC,qCAAA,CAIF,yDAEC,eAAA,CACA,KAAA,CAEA,6BAAA,CAEA,UAAA,CAEA,YAAA,CACA,kBAAA,CAGA,6CAAA,CACA,2CAAA,CACA,wBAAA,CAGD,kGAEC,YAAA,CACA,qBAAA,CACA,UAAA,CACA,6CAAA,CAKD,iDAEC,eAAA,CACA,UAAA,CACA,KAAA,CAID,iDACC,gBAAA,CAGD,iCACC,iBAAA,CACA,YAAA,CACA,kBAAA,CACA,UAAA,CACA,gBAAA,CACA,2CAAA,CACA,qBAAA,CACA,gBAAA,CACA,wBAAA,CAGD,kEACC,YAAA,CACA,kBAAA,CACA,aAAA,CACA,oBAAA,CACA,uBAAA,CACA,wBAAA,CACA,QAAA,CACA,SAAA,CACA,mCAAA,CACA,WAAA,CAKA,4EACC,eAAA,CACA,kBAAA,CACA,sBAAA,CAIF,uDACC,iBAAA,CACA,aAAA,CACA,KAAA,CACA,MAAA,CACA,OAAA,CACA,QAAA,CACA,UAAA,CACA,UAAA,CACA,6BAAA,CAGD,wDACC,sBAAA,CAEA,+EACC,YAAA,CACA,sBAAA,CAEA,iCAAA,CAEA,kHACC,2BAAA,CACA,4BAAA,CACA,QAAA,CACA,8DAAA,CAGD,4GACC,mBAAA,CAMF,gRAEC,8CAAA,CAGA,gDAAA,CACA,0RACC,wCAAA,CAID,2aACC,oCAAA,CAIF,2DAEC,mBAAA,CAKF,oDACC,iBAAA,CACA,YAAA,CACA,gBAAA,CACA,kBAAA,CAEA,iCAAA,CACA,sBAAA,CACA,8BAAA,CACA,WAAA,CAEA,oCAAA,CACA,kCAAA,CAGA,sDACC,cAAA,CAGD,yDACC,0BAAA,CAEA,iGACC,8BAAA,CACA,+BAAA,CAID,+IAEC,WAAA,CACA,uJACC,0CAAA,CACA,2CAAA,CAKH,4DACC,eAAA,CACA,8BAAA,CACA,+BAAA,CACA,kCAAA,CAEA,kBAAA,CACA,sBAAA,CAGA,uGACC,oCAAA,CAKF,6DACC,iBAAA,CACA,OAAA,CACA,WAAA,CAID,4DACC,iBAAA,CACA,4CAAA,CACA,2CAAA,CACA,uCAAA,CAEA,cAAA,CAGA,kEACC,4BAAA,CACA,uCAAA,CACA,kBAAA,CAMH,oDAEC,eAAA,CAEA,aAAA,CAEA,sDACC,YAAA,CACA,kBAAA,CAEA,UAAA,CACA,WAAA,CAEA,WAAA,CAGA,oEACC,YAAA,CAID,uFACC,mDAAA,CACA,kBAAA,CAED,2GACC,uBAAA,CAIF,+EACC,4BAAA,CAEA,gBAAA,CACA,iBAAA,CAEA,mBAAA,CAGD,8EACC,mCAAA,CAEA,gBAAA,CAKF,sDACC,UAAA,CACA,eAAA,CACA,4DACC,UAAA,CAEA,gBAAA,CACA,eAAA,CACA,gBAAA,CAEA,oEAEC,+BAAA,CACA,SAAA,CAKH,uDAEC,UAAA,CAGA,oHAEC,2BAAA,CAIA,gFAEC,kBAAA,CAKH,8DACC,gBAAA,CAGD,yGAEC,mCAAA,CAED,oDACC,iCAAA,CAEA,wBAAA,CAGD,qDACC,+BAAA,CAGD,6DACC,+BAAA\",\"sourcesContent\":[\"\\n.files-list {\\n\\t--row-height: 55px;\\n\\t--cell-margin: 14px;\\n\\n\\t--checkbox-padding: calc((var(--row-height) - var(--checkbox-size)) / 2);\\n\\t--checkbox-size: 24px;\\n\\t--clickable-area: 44px;\\n\\t--icon-preview-size: 32px;\\n\\n\\toverflow: auto;\\n\\theight: 100%;\\n\\twill-change: scroll-position;\\n\\n\\t& :deep() {\\n\\t\\t// Table head, body and footer\\n\\t\\ttbody {\\n\\t\\t\\twill-change: padding;\\n\\t\\t\\tcontain: layout paint style;\\n\\t\\t\\tdisplay: flex;\\n\\t\\t\\tflex-direction: column;\\n\\t\\t\\twidth: 100%;\\n\\t\\t\\t// Necessary for virtual scrolling absolute\\n\\t\\t\\tposition: relative;\\n\\n\\t\\t\\t/* Hover effect on tbody lines only */\\n\\t\\t\\ttr {\\n\\t\\t\\t\\tcontain: strict;\\n\\t\\t\\t\\t&:hover,\\n\\t\\t\\t\\t&:focus {\\n\\t\\t\\t\\t\\tbackground-color: var(--color-background-dark);\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t// Before table and thead\\n\\t\\t.files-list__before {\\n\\t\\t\\tdisplay: flex;\\n\\t\\t\\tflex-direction: column;\\n\\t\\t}\\n\\n\\t\\t.files-list__selected {\\n\\t\\t\\tpadding-right: 12px;\\n\\t\\t\\twhite-space: nowrap;\\n\\t\\t}\\n\\n\\t\\t.files-list__table {\\n\\t\\t\\tdisplay: block;\\n\\n\\t\\t\\t&.files-list__table--with-thead-overlay {\\n\\t\\t\\t\\t// Hide the table header below the overlay\\n\\t\\t\\t\\tmargin-top: calc(-1 * var(--row-height));\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t.files-list__thead-overlay {\\n\\t\\t\\t// Pinned on top when scrolling\\n\\t\\t\\tposition: sticky;\\n\\t\\t\\ttop: 0;\\n\\t\\t\\t// Save space for a row checkbox\\n\\t\\t\\tmargin-left: var(--row-height);\\n\\t\\t\\t// More than .files-list__thead\\n\\t\\t\\tz-index: 20;\\n\\n\\t\\t\\tdisplay: flex;\\n\\t\\t\\talign-items: center;\\n\\n\\t\\t\\t// Reuse row styles\\n\\t\\t\\tbackground-color: var(--color-main-background);\\n\\t\\t\\tborder-bottom: 1px solid var(--color-border);\\n\\t\\t\\theight: var(--row-height);\\n\\t\\t}\\n\\n\\t\\t.files-list__thead,\\n\\t\\t.files-list__tfoot {\\n\\t\\t\\tdisplay: flex;\\n\\t\\t\\tflex-direction: column;\\n\\t\\t\\twidth: 100%;\\n\\t\\t\\tbackground-color: var(--color-main-background);\\n\\n\\t\\t}\\n\\n\\t\\t// Table header\\n\\t\\t.files-list__thead {\\n\\t\\t\\t// Pinned on top when scrolling\\n\\t\\t\\tposition: sticky;\\n\\t\\t\\tz-index: 10;\\n\\t\\t\\ttop: 0;\\n\\t\\t}\\n\\n\\t\\t// Table footer\\n\\t\\t.files-list__tfoot {\\n\\t\\t\\tmin-height: 300px;\\n\\t\\t}\\n\\n\\t\\ttr {\\n\\t\\t\\tposition: relative;\\n\\t\\t\\tdisplay: flex;\\n\\t\\t\\talign-items: center;\\n\\t\\t\\twidth: 100%;\\n\\t\\t\\tuser-select: none;\\n\\t\\t\\tborder-bottom: 1px solid var(--color-border);\\n\\t\\t\\tbox-sizing: border-box;\\n\\t\\t\\tuser-select: none;\\n\\t\\t\\theight: var(--row-height);\\n\\t\\t}\\n\\n\\t\\ttd, th {\\n\\t\\t\\tdisplay: flex;\\n\\t\\t\\talign-items: center;\\n\\t\\t\\tflex: 0 0 auto;\\n\\t\\t\\tjustify-content: left;\\n\\t\\t\\twidth: var(--row-height);\\n\\t\\t\\theight: var(--row-height);\\n\\t\\t\\tmargin: 0;\\n\\t\\t\\tpadding: 0;\\n\\t\\t\\tcolor: var(--color-text-maxcontrast);\\n\\t\\t\\tborder: none;\\n\\n\\t\\t\\t// Columns should try to add any text\\n\\t\\t\\t// node wrapped in a span. That should help\\n\\t\\t\\t// with the ellipsis on overflow.\\n\\t\\t\\tspan {\\n\\t\\t\\t\\toverflow: hidden;\\n\\t\\t\\t\\twhite-space: nowrap;\\n\\t\\t\\t\\ttext-overflow: ellipsis;\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t.files-list__row--failed {\\n\\t\\t\\tposition: absolute;\\n\\t\\t\\tdisplay: block;\\n\\t\\t\\ttop: 0;\\n\\t\\t\\tleft: 0;\\n\\t\\t\\tright: 0;\\n\\t\\t\\tbottom: 0;\\n\\t\\t\\topacity: .1;\\n\\t\\t\\tz-index: -1;\\n\\t\\t\\tbackground: var(--color-error);\\n\\t\\t}\\n\\n\\t\\t.files-list__row-checkbox {\\n\\t\\t\\tjustify-content: center;\\n\\n\\t\\t\\t.checkbox-radio-switch {\\n\\t\\t\\t\\tdisplay: flex;\\n\\t\\t\\t\\tjustify-content: center;\\n\\n\\t\\t\\t\\t--icon-size: var(--checkbox-size);\\n\\n\\t\\t\\t\\tlabel.checkbox-radio-switch__label {\\n\\t\\t\\t\\t\\twidth: var(--clickable-area);\\n\\t\\t\\t\\t\\theight: var(--clickable-area);\\n\\t\\t\\t\\t\\tmargin: 0;\\n\\t\\t\\t\\t\\tpadding: calc((var(--clickable-area) - var(--checkbox-size)) / 2);\\n\\t\\t\\t\\t}\\n\\n\\t\\t\\t\\t.checkbox-radio-switch__icon {\\n\\t\\t\\t\\t\\tmargin: 0 !important;\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t.files-list__row {\\n\\t\\t\\t&:hover, &:focus, &:active, &--active, &--dragover {\\n\\t\\t\\t\\t// WCAG AA compliant\\n\\t\\t\\t\\tbackground-color: var(--color-background-hover);\\n\\t\\t\\t\\t// text-maxcontrast have been designed to pass WCAG AA over\\n\\t\\t\\t\\t// a white background, we need to adjust then.\\n\\t\\t\\t\\t--color-text-maxcontrast: var(--color-main-text);\\n\\t\\t\\t\\t> * {\\n\\t\\t\\t\\t\\t--color-border: var(--color-border-dark);\\n\\t\\t\\t\\t}\\n\\n\\t\\t\\t\\t// Hover state of the row should also change the favorite markers background\\n\\t\\t\\t\\t.favorite-marker-icon svg path {\\n\\t\\t\\t\\t\\tstroke: var(--color-background-hover);\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\n\\t\\t\\t&--dragover * {\\n\\t\\t\\t\\t// Prevent dropping on row children\\n\\t\\t\\t\\tpointer-events: none;\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t// Entry preview or mime icon\\n\\t\\t.files-list__row-icon {\\n\\t\\t\\tposition: relative;\\n\\t\\t\\tdisplay: flex;\\n\\t\\t\\toverflow: visible;\\n\\t\\t\\talign-items: center;\\n\\t\\t\\t// No shrinking or growing allowed\\n\\t\\t\\tflex: 0 0 var(--icon-preview-size);\\n\\t\\t\\tjustify-content: center;\\n\\t\\t\\twidth: var(--icon-preview-size);\\n\\t\\t\\theight: 100%;\\n\\t\\t\\t// Show same padding as the checkbox right padding for visual balance\\n\\t\\t\\tmargin-right: var(--checkbox-padding);\\n\\t\\t\\tcolor: var(--color-primary-element);\\n\\n\\t\\t\\t// Icon is also clickable\\n\\t\\t\\t* {\\n\\t\\t\\t\\tcursor: pointer;\\n\\t\\t\\t}\\n\\n\\t\\t\\t& > span {\\n\\t\\t\\t\\tjustify-content: flex-start;\\n\\n\\t\\t\\t\\t&:not(.files-list__row-icon-favorite) svg {\\n\\t\\t\\t\\t\\twidth: var(--icon-preview-size);\\n\\t\\t\\t\\t\\theight: var(--icon-preview-size);\\n\\t\\t\\t\\t}\\n\\n\\t\\t\\t\\t// Slightly increase the size of the folder icon\\n\\t\\t\\t\\t&.folder-icon,\\n\\t\\t\\t\\t&.folder-open-icon {\\n\\t\\t\\t\\t\\tmargin: -3px;\\n\\t\\t\\t\\t\\tsvg {\\n\\t\\t\\t\\t\\t\\twidth: calc(var(--icon-preview-size) + 6px);\\n\\t\\t\\t\\t\\t\\theight: calc(var(--icon-preview-size) + 6px);\\n\\t\\t\\t\\t\\t}\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\n\\t\\t\\t&-preview {\\n\\t\\t\\t\\toverflow: hidden;\\n\\t\\t\\t\\twidth: var(--icon-preview-size);\\n\\t\\t\\t\\theight: var(--icon-preview-size);\\n\\t\\t\\t\\tborder-radius: var(--border-radius);\\n\\t\\t\\t\\t// Center and contain the preview\\n\\t\\t\\t\\tobject-fit: contain;\\n\\t\\t\\t\\tobject-position: center;\\n\\n\\t\\t\\t\\t/* Preview not loaded animation effect */\\n\\t\\t\\t\\t&:not(.files-list__row-icon-preview--loaded) {\\n\\t\\t\\t\\t\\tbackground: var(--color-loading-dark);\\n\\t\\t\\t\\t\\t// animation: preview-gradient-fade 1.2s ease-in-out infinite;\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\n\\t\\t\\t&-favorite {\\n\\t\\t\\t\\tposition: absolute;\\n\\t\\t\\t\\ttop: 0px;\\n\\t\\t\\t\\tright: -10px;\\n\\t\\t\\t}\\n\\n\\t\\t\\t// File and folder overlay\\n\\t\\t\\t&-overlay {\\n\\t\\t\\t\\tposition: absolute;\\n\\t\\t\\t\\tmax-height: calc(var(--icon-preview-size) * 0.5);\\n\\t\\t\\t\\tmax-width: calc(var(--icon-preview-size) * 0.5);\\n\\t\\t\\t\\tcolor: var(--color-primary-element-text);\\n\\t\\t\\t\\t// better alignment with the folder icon\\n\\t\\t\\t\\tmargin-top: 2px;\\n\\n\\t\\t\\t\\t// Improve icon contrast with a background for files\\n\\t\\t\\t\\t&--file {\\n\\t\\t\\t\\t\\tcolor: var(--color-main-text);\\n\\t\\t\\t\\t\\tbackground: var(--color-main-background);\\n\\t\\t\\t\\t\\tborder-radius: 100%;\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t// Entry link\\n\\t\\t.files-list__row-name {\\n\\t\\t\\t// Prevent link from overflowing\\n\\t\\t\\toverflow: hidden;\\n\\t\\t\\t// Take as much space as possible\\n\\t\\t\\tflex: 1 1 auto;\\n\\n\\t\\t\\ta {\\n\\t\\t\\t\\tdisplay: flex;\\n\\t\\t\\t\\talign-items: center;\\n\\t\\t\\t\\t// Fill cell height and width\\n\\t\\t\\t\\twidth: 100%;\\n\\t\\t\\t\\theight: 100%;\\n\\t\\t\\t\\t// Necessary for flex grow to work\\n\\t\\t\\t\\tmin-width: 0;\\n\\n\\t\\t\\t\\t// Already added to the inner text, see rule below\\n\\t\\t\\t\\t&:focus-visible {\\n\\t\\t\\t\\t\\toutline: none;\\n\\t\\t\\t\\t}\\n\\n\\t\\t\\t\\t// Keyboard indicator a11y\\n\\t\\t\\t\\t&:focus .files-list__row-name-text {\\n\\t\\t\\t\\t\\toutline: 2px solid var(--color-main-text) !important;\\n\\t\\t\\t\\t\\tborder-radius: 20px;\\n\\t\\t\\t\\t}\\n\\t\\t\\t\\t&:focus:not(:focus-visible) .files-list__row-name-text {\\n\\t\\t\\t\\t\\toutline: none !important;\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\n\\t\\t\\t.files-list__row-name-text {\\n\\t\\t\\t\\tcolor: var(--color-main-text);\\n\\t\\t\\t\\t// Make some space for the outline\\n\\t\\t\\t\\tpadding: 5px 10px;\\n\\t\\t\\t\\tmargin-left: -10px;\\n\\t\\t\\t\\t// Align two name and ext\\n\\t\\t\\t\\tdisplay: inline-flex;\\n\\t\\t\\t}\\n\\n\\t\\t\\t.files-list__row-name-ext {\\n\\t\\t\\t\\tcolor: var(--color-text-maxcontrast);\\n\\t\\t\\t\\t// always show the extension\\n\\t\\t\\t\\toverflow: visible;\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t// Rename form\\n\\t\\t.files-list__row-rename {\\n\\t\\t\\twidth: 100%;\\n\\t\\t\\tmax-width: 600px;\\n\\t\\t\\tinput {\\n\\t\\t\\t\\twidth: 100%;\\n\\t\\t\\t\\t// Align with text, 0 - padding - border\\n\\t\\t\\t\\tmargin-left: -8px;\\n\\t\\t\\t\\tpadding: 2px 6px;\\n\\t\\t\\t\\tborder-width: 2px;\\n\\n\\t\\t\\t\\t&:invalid {\\n\\t\\t\\t\\t\\t// Show red border on invalid input\\n\\t\\t\\t\\t\\tborder-color: var(--color-error);\\n\\t\\t\\t\\t\\tcolor: red;\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t.files-list__row-actions {\\n\\t\\t\\t// take as much space as necessary\\n\\t\\t\\twidth: auto;\\n\\n\\t\\t\\t// Add margin to all cells after the actions\\n\\t\\t\\t& ~ td,\\n\\t\\t\\t& ~ th {\\n\\t\\t\\t\\tmargin: 0 var(--cell-margin);\\n\\t\\t\\t}\\n\\n\\t\\t\\tbutton {\\n\\t\\t\\t\\t.button-vue__text {\\n\\t\\t\\t\\t\\t// Remove bold from default button styling\\n\\t\\t\\t\\t\\tfont-weight: normal;\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t.files-list__row-action--inline {\\n\\t\\t\\tmargin-right: 7px;\\n\\t\\t}\\n\\n\\t\\t.files-list__row-mtime,\\n\\t\\t.files-list__row-size {\\n\\t\\t\\tcolor: var(--color-text-maxcontrast);\\n\\t\\t}\\n\\t\\t.files-list__row-size {\\n\\t\\t\\twidth: calc(var(--row-height) * 1.5);\\n\\t\\t\\t// Right align content/text\\n\\t\\t\\tjustify-content: flex-end;\\n\\t\\t}\\n\\n\\t\\t.files-list__row-mtime {\\n\\t\\t\\twidth: calc(var(--row-height) * 2);\\n\\t\\t}\\n\\n\\t\\t.files-list__row-column-custom {\\n\\t\\t\\twidth: calc(var(--row-height) * 2);\\n\\t\\t}\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `tbody.files-list__tbody.files-list__tbody--grid{--half-clickable-area: calc(var(--clickable-area) / 2);--row-width: 160px;--row-height: calc(var(--row-width) - var(--half-clickable-area));--icon-preview-size: calc(var(--row-width) - var(--clickable-area));--checkbox-padding: 0px;display:grid;grid-template-columns:repeat(auto-fill, var(--row-width));grid-gap:15px;row-gap:15px;align-content:center;align-items:center;justify-content:space-around;justify-items:center}tbody.files-list__tbody.files-list__tbody--grid tr{width:var(--row-width);height:calc(var(--row-height) + var(--clickable-area));border:none;border-radius:var(--border-radius)}tbody.files-list__tbody.files-list__tbody--grid .files-list__row-checkbox{position:absolute;z-index:9;top:0;left:0;overflow:hidden;width:var(--clickable-area);height:var(--clickable-area);border-radius:var(--half-clickable-area)}tbody.files-list__tbody.files-list__tbody--grid .files-list__row-icon-favorite{position:absolute;top:0;right:0;display:flex;align-items:center;justify-content:center;width:var(--clickable-area);height:var(--clickable-area)}tbody.files-list__tbody.files-list__tbody--grid .files-list__row-name{display:grid;justify-content:stretch;width:100%;height:100%;grid-auto-rows:var(--row-height) var(--clickable-area)}tbody.files-list__tbody.files-list__tbody--grid .files-list__row-name span.files-list__row-icon{width:100%;height:100%;padding-top:var(--half-clickable-area)}tbody.files-list__tbody.files-list__tbody--grid .files-list__row-name a.files-list__row-name-link{width:calc(100% - var(--clickable-area));height:var(--clickable-area)}tbody.files-list__tbody.files-list__tbody--grid .files-list__row-name .files-list__row-name-text{margin:0;padding-right:0}tbody.files-list__tbody.files-list__tbody--grid .files-list__row-actions{position:absolute;right:0;bottom:0;width:var(--clickable-area);height:var(--clickable-area)}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/components/FilesListVirtual.vue\"],\"names\":[],\"mappings\":\"AAEA,gDACC,sDAAA,CACA,kBAAA,CAEA,iEAAA,CACA,mEAAA,CACA,uBAAA,CAEA,YAAA,CACA,yDAAA,CACA,aAAA,CACA,YAAA,CAEA,oBAAA,CACA,kBAAA,CACA,4BAAA,CACA,oBAAA,CAEA,mDACC,sBAAA,CACA,sDAAA,CACA,WAAA,CACA,kCAAA,CAID,0EACC,iBAAA,CACA,SAAA,CACA,KAAA,CACA,MAAA,CACA,eAAA,CACA,2BAAA,CACA,4BAAA,CACA,wCAAA,CAID,+EACC,iBAAA,CACA,KAAA,CACA,OAAA,CACA,YAAA,CACA,kBAAA,CACA,sBAAA,CACA,2BAAA,CACA,4BAAA,CAGD,sEACC,YAAA,CACA,uBAAA,CACA,UAAA,CACA,WAAA,CACA,sDAAA,CAEA,gGACC,UAAA,CACA,WAAA,CAGA,sCAAA,CAGD,kGAEC,wCAAA,CACA,4BAAA,CAGD,iGACC,QAAA,CACA,eAAA,CAIF,yEACC,iBAAA,CACA,OAAA,CACA,QAAA,CACA,2BAAA,CACA,4BAAA\",\"sourcesContent\":[\"\\n// Grid mode\\ntbody.files-list__tbody.files-list__tbody--grid {\\n\\t--half-clickable-area: calc(var(--clickable-area) / 2);\\n\\t--row-width: 160px;\\n\\t// We use half of the clickable area as visual balance margin\\n\\t--row-height: calc(var(--row-width) - var(--half-clickable-area));\\n\\t--icon-preview-size: calc(var(--row-width) - var(--clickable-area));\\n\\t--checkbox-padding: 0px;\\n\\n\\tdisplay: grid;\\n\\tgrid-template-columns: repeat(auto-fill, var(--row-width));\\n\\tgrid-gap: 15px;\\n\\trow-gap: 15px;\\n\\n\\talign-content: center;\\n\\talign-items: center;\\n\\tjustify-content: space-around;\\n\\tjustify-items: center;\\n\\n\\ttr {\\n\\t\\twidth: var(--row-width);\\n\\t\\theight: calc(var(--row-height) + var(--clickable-area));\\n\\t\\tborder: none;\\n\\t\\tborder-radius: var(--border-radius);\\n\\t}\\n\\n\\t// Checkbox in the top left\\n\\t.files-list__row-checkbox {\\n\\t\\tposition: absolute;\\n\\t\\tz-index: 9;\\n\\t\\ttop: 0;\\n\\t\\tleft: 0;\\n\\t\\toverflow: hidden;\\n\\t\\twidth: var(--clickable-area);\\n\\t\\theight: var(--clickable-area);\\n\\t\\tborder-radius: var(--half-clickable-area);\\n\\t}\\n\\n\\t// Star icon in the top right\\n\\t.files-list__row-icon-favorite {\\n\\t\\tposition: absolute;\\n\\t\\ttop: 0;\\n\\t\\tright: 0;\\n\\t\\tdisplay: flex;\\n\\t\\talign-items: center;\\n\\t\\tjustify-content: center;\\n\\t\\twidth: var(--clickable-area);\\n\\t\\theight: var(--clickable-area);\\n\\t}\\n\\n\\t.files-list__row-name {\\n\\t\\tdisplay: grid;\\n\\t\\tjustify-content: stretch;\\n\\t\\twidth: 100%;\\n\\t\\theight: 100%;\\n\\t\\tgrid-auto-rows: var(--row-height) var(--clickable-area);\\n\\n\\t\\tspan.files-list__row-icon {\\n\\t\\t\\twidth: 100%;\\n\\t\\t\\theight: 100%;\\n\\t\\t\\t// Visual balance, we use half of the clickable area\\n\\t\\t\\t// as a margin around the preview\\n\\t\\t\\tpadding-top: var(--half-clickable-area);\\n\\t\\t}\\n\\n\\t\\ta.files-list__row-name-link {\\n\\t\\t\\t// Minus action menu\\n\\t\\t\\twidth: calc(100% - var(--clickable-area));\\n\\t\\t\\theight: var(--clickable-area);\\n\\t\\t}\\n\\n\\t\\t.files-list__row-name-text {\\n\\t\\t\\tmargin: 0;\\n\\t\\t\\tpadding-right: 0;\\n\\t\\t}\\n\\t}\\n\\n\\t.files-list__row-actions {\\n\\t\\tposition: absolute;\\n\\t\\tright: 0;\\n\\t\\tbottom: 0;\\n\\t\\twidth: var(--clickable-area);\\n\\t\\theight: var(--clickable-area);\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.app-navigation-entry__settings-quota--not-unlimited[data-v-3e968815] .app-navigation-entry__name{margin-top:-6px}.app-navigation-entry__settings-quota progress[data-v-3e968815]{position:absolute;bottom:12px;margin-left:44px;width:calc(100% - 44px - 22px)}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/components/NavigationQuota.vue\"],\"names\":[],\"mappings\":\"AAIC,kGACC,eAAA,CAGD,gEACC,iBAAA,CACA,WAAA,CACA,gBAAA,CACA,8BAAA\",\"sourcesContent\":[\"\\n// User storage stats display\\n.app-navigation-entry__settings-quota {\\n\\t// Align title with progress and icon\\n\\t&--not-unlimited::v-deep .app-navigation-entry__name {\\n\\t\\tmargin-top: -6px;\\n\\t}\\n\\n\\tprogress {\\n\\t\\tposition: absolute;\\n\\t\\tbottom: 12px;\\n\\t\\tmargin-left: 44px;\\n\\t\\twidth: calc(100% - 44px - 22px);\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.app-content[data-v-0e2ac83a]{display:flex;overflow:hidden;flex-direction:column;max-height:100%;position:relative !important}.files-list__header[data-v-0e2ac83a]{display:flex;align-items:center;flex:0 0;max-width:100%;margin-block:var(--app-navigation-padding, 4px);margin-inline:calc(var(--default-clickable-area, 44px) + 2*var(--app-navigation-padding, 4px)) var(--app-navigation-padding, 4px)}.files-list__header>*[data-v-0e2ac83a]{flex:0 0}.files-list__header-share-button[data-v-0e2ac83a]{color:var(--color-text-maxcontrast) !important}.files-list__header-share-button--shared[data-v-0e2ac83a]{color:var(--color-main-text) !important}.files-list__refresh-icon[data-v-0e2ac83a]{flex:0 0 44px;width:44px;height:44px}.files-list__loading-icon[data-v-0e2ac83a]{margin:auto}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/views/FilesList.vue\"],\"names\":[],\"mappings\":\"AACA,8BAEC,YAAA,CACA,eAAA,CACA,qBAAA,CACA,eAAA,CACA,4BAAA,CAIA,qCACC,YAAA,CACA,kBAAA,CAEA,QAAA,CACA,cAAA,CAEA,+CAAA,CACA,iIAAA,CAEA,uCAGC,QAAA,CAGD,kDACC,8CAAA,CAEA,0DACC,uCAAA,CAKH,2CACC,aAAA,CACA,UAAA,CACA,WAAA,CAGD,2CACC,WAAA\",\"sourcesContent\":[\"\\n.app-content {\\n\\t// Virtual list needs to be full height and is scrollable\\n\\tdisplay: flex;\\n\\toverflow: hidden;\\n\\tflex-direction: column;\\n\\tmax-height: 100%;\\n\\tposition: relative !important;\\n}\\n\\n.files-list {\\n\\t&__header {\\n\\t\\tdisplay: flex;\\n\\t\\talign-items: center;\\n\\t\\t// Do not grow or shrink (vertically)\\n\\t\\tflex: 0 0;\\n\\t\\tmax-width: 100%;\\n\\t\\t// Align with the navigation toggle icon\\n\\t\\tmargin-block: var(--app-navigation-padding, 4px);\\n\\t\\tmargin-inline: calc(var(--default-clickable-area, 44px) + 2 * var(--app-navigation-padding, 4px)) var(--app-navigation-padding, 4px);\\n\\n\\t\\t>* {\\n\\t\\t\\t// Do not grow or shrink (horizontally)\\n\\t\\t\\t// Only the breadcrumbs shrinks\\n\\t\\t\\tflex: 0 0;\\n\\t\\t}\\n\\n\\t\\t&-share-button {\\n\\t\\t\\tcolor: var(--color-text-maxcontrast) !important;\\n\\n\\t\\t\\t&--shared {\\n\\t\\t\\t\\tcolor: var(--color-main-text) !important;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n\\n\\t&__refresh-icon {\\n\\t\\tflex: 0 0 44px;\\n\\t\\twidth: 44px;\\n\\t\\theight: 44px;\\n\\t}\\n\\n\\t&__loading-icon {\\n\\t\\tmargin: auto;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.app-navigation[data-v-66457116] .app-navigation-entry-icon{background-repeat:no-repeat;background-position:center}.app-navigation[data-v-66457116] .app-navigation-entry.active .button-vue.icon-collapse:not(:hover){color:var(--color-primary-element-text)}.app-navigation>ul.app-navigation__list[data-v-66457116]{padding-bottom:var(--default-grid-baseline, 4px)}.app-navigation-entry__settings[data-v-66457116]{height:auto !important;overflow:hidden !important;padding-top:0 !important;flex:0 0 auto}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/views/Navigation.vue\"],\"names\":[],\"mappings\":\"AAEA,4DACC,2BAAA,CACA,0BAAA,CAGD,oGACC,uCAAA,CAGD,yDAEC,gDAAA,CAGD,iDACC,sBAAA,CACA,0BAAA,CACA,wBAAA,CAEA,aAAA\",\"sourcesContent\":[\"\\n// TODO: remove when https://github.com/nextcloud/nextcloud-vue/pull/3539 is in\\n.app-navigation::v-deep .app-navigation-entry-icon {\\n\\tbackground-repeat: no-repeat;\\n\\tbackground-position: center;\\n}\\n\\n.app-navigation::v-deep .app-navigation-entry.active .button-vue.icon-collapse:not(:hover) {\\n\\tcolor: var(--color-primary-element-text);\\n}\\n\\n.app-navigation > ul.app-navigation__list {\\n\\t// Use flex gap value for more elegant spacing\\n\\tpadding-bottom: var(--default-grid-baseline, 4px);\\n}\\n\\n.app-navigation-entry__settings {\\n\\theight: auto !important;\\n\\toverflow: hidden !important;\\n\\tpadding-top: 0 !important;\\n\\t// Prevent shrinking or growing\\n\\tflex: 0 0 auto;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.setting-link[data-v-44764f8d]:hover{text-decoration:underline}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/views/Settings.vue\"],\"names\":[],\"mappings\":\"AACA,qCACC,yBAAA\",\"sourcesContent\":[\"\\n.setting-link:hover {\\n\\ttext-decoration: underline;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","'use strict';\n\nconst denyList = new Set([\n\t'ENOTFOUND',\n\t'ENETUNREACH',\n\n\t// SSL errors from https://github.com/nodejs/node/blob/fc8e3e2cdc521978351de257030db0076d79e0ab/src/crypto/crypto_common.cc#L301-L328\n\t'UNABLE_TO_GET_ISSUER_CERT',\n\t'UNABLE_TO_GET_CRL',\n\t'UNABLE_TO_DECRYPT_CERT_SIGNATURE',\n\t'UNABLE_TO_DECRYPT_CRL_SIGNATURE',\n\t'UNABLE_TO_DECODE_ISSUER_PUBLIC_KEY',\n\t'CERT_SIGNATURE_FAILURE',\n\t'CRL_SIGNATURE_FAILURE',\n\t'CERT_NOT_YET_VALID',\n\t'CERT_HAS_EXPIRED',\n\t'CRL_NOT_YET_VALID',\n\t'CRL_HAS_EXPIRED',\n\t'ERROR_IN_CERT_NOT_BEFORE_FIELD',\n\t'ERROR_IN_CERT_NOT_AFTER_FIELD',\n\t'ERROR_IN_CRL_LAST_UPDATE_FIELD',\n\t'ERROR_IN_CRL_NEXT_UPDATE_FIELD',\n\t'OUT_OF_MEM',\n\t'DEPTH_ZERO_SELF_SIGNED_CERT',\n\t'SELF_SIGNED_CERT_IN_CHAIN',\n\t'UNABLE_TO_GET_ISSUER_CERT_LOCALLY',\n\t'UNABLE_TO_VERIFY_LEAF_SIGNATURE',\n\t'CERT_CHAIN_TOO_LONG',\n\t'CERT_REVOKED',\n\t'INVALID_CA',\n\t'PATH_LENGTH_EXCEEDED',\n\t'INVALID_PURPOSE',\n\t'CERT_UNTRUSTED',\n\t'CERT_REJECTED',\n\t'HOSTNAME_MISMATCH'\n]);\n\n// TODO: Use `error?.code` when targeting Node.js 14\nmodule.exports = error => !denyList.has(error && error.code);\n","// @flow\n\n/*::\ntype Options = {\n max?: number,\n min?: number,\n historyTimeConstant?: number,\n autostart?: boolean,\n ignoreSameProgress?: boolean,\n}\n*/\n\nfunction makeLowPassFilter(RC/*: number*/) {\n return function (previousOutput, input, dt) {\n const alpha = dt / (dt + RC);\n return previousOutput + alpha * (input - previousOutput);\n }\n}\n\nfunction def/*:: */(x/*: ?T*/, d/*: T*/)/*: T*/ {\n return (x === undefined || x === null) ? d : x;\n}\n\nfunction makeEta(options/*::?: Options */) {\n options = options || {};\n var max = def(options.max, 1);\n var min = def(options.min, 0);\n var autostart = def(options.autostart, true);\n var ignoreSameProgress = def(options.ignoreSameProgress, false);\n\n var rate/*: number | null */ = null;\n var lastTimestamp/*: number | null */ = null;\n var lastProgress/*: number | null */ = null;\n\n var filter = makeLowPassFilter(def(options.historyTimeConstant, 2.5));\n\n function start() {\n report(min);\n }\n\n function reset() {\n rate = null;\n lastTimestamp = null;\n lastProgress = null;\n if (autostart) {\n start();\n }\n }\n\n function report(progress /*: number */, timestamp/*::?: number */) {\n if (typeof timestamp !== 'number') {\n timestamp = Date.now();\n }\n\n if (lastTimestamp === timestamp) { return; }\n if (ignoreSameProgress && lastProgress === progress) { return; }\n\n if (lastTimestamp === null || lastProgress === null) {\n lastProgress = progress;\n lastTimestamp = timestamp;\n return;\n }\n\n var deltaProgress = progress - lastProgress;\n var deltaTimestamp = 0.001 * (timestamp - lastTimestamp);\n var currentRate = deltaProgress / deltaTimestamp;\n\n rate = rate === null\n ? currentRate\n : filter(rate, currentRate, deltaTimestamp);\n lastProgress = progress;\n lastTimestamp = timestamp;\n }\n\n function estimate(timestamp/*::?: number*/) {\n if (lastProgress === null) { return Infinity; }\n if (lastProgress >= max) { return 0; }\n if (rate === null) { return Infinity; }\n\n var estimatedTime = (max - lastProgress) / rate;\n if (typeof timestamp === 'number' && typeof lastTimestamp === 'number') {\n estimatedTime -= (timestamp - lastTimestamp) * 0.001;\n }\n return Math.max(0, estimatedTime);\n }\n\n function getRate() {\n return rate === null ? 0 : rate;\n }\n\n return {\n start: start,\n reset: reset,\n report: report,\n estimate: estimate,\n rate: getRate,\n }\n}\n\nmodule.exports = makeEta;\n","\n import API from \"!../../../../style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../css-loader/dist/cjs.js!./index-DiWRcN3o.css\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../css-loader/dist/cjs.js!./index-DiWRcN3o.css\";\n export default content && content.locals ? content.locals : undefined;\n","export class CancelError extends Error {\n\tconstructor(reason) {\n\t\tsuper(reason || 'Promise was canceled');\n\t\tthis.name = 'CancelError';\n\t}\n\n\tget isCanceled() {\n\t\treturn true;\n\t}\n}\n\nconst promiseState = Object.freeze({\n\tpending: Symbol('pending'),\n\tcanceled: Symbol('canceled'),\n\tresolved: Symbol('resolved'),\n\trejected: Symbol('rejected'),\n});\n\nexport default class PCancelable {\n\tstatic fn(userFunction) {\n\t\treturn (...arguments_) => new PCancelable((resolve, reject, onCancel) => {\n\t\t\targuments_.push(onCancel);\n\t\t\tuserFunction(...arguments_).then(resolve, reject);\n\t\t});\n\t}\n\n\t#cancelHandlers = [];\n\t#rejectOnCancel = true;\n\t#state = promiseState.pending;\n\t#promise;\n\t#reject;\n\n\tconstructor(executor) {\n\t\tthis.#promise = new Promise((resolve, reject) => {\n\t\t\tthis.#reject = reject;\n\n\t\t\tconst onResolve = value => {\n\t\t\t\tif (this.#state !== promiseState.canceled || !onCancel.shouldReject) {\n\t\t\t\t\tresolve(value);\n\t\t\t\t\tthis.#setState(promiseState.resolved);\n\t\t\t\t}\n\t\t\t};\n\n\t\t\tconst onReject = error => {\n\t\t\t\tif (this.#state !== promiseState.canceled || !onCancel.shouldReject) {\n\t\t\t\t\treject(error);\n\t\t\t\t\tthis.#setState(promiseState.rejected);\n\t\t\t\t}\n\t\t\t};\n\n\t\t\tconst onCancel = handler => {\n\t\t\t\tif (this.#state !== promiseState.pending) {\n\t\t\t\t\tthrow new Error(`The \\`onCancel\\` handler was attached after the promise ${this.#state.description}.`);\n\t\t\t\t}\n\n\t\t\t\tthis.#cancelHandlers.push(handler);\n\t\t\t};\n\n\t\t\tObject.defineProperties(onCancel, {\n\t\t\t\tshouldReject: {\n\t\t\t\t\tget: () => this.#rejectOnCancel,\n\t\t\t\t\tset: boolean => {\n\t\t\t\t\t\tthis.#rejectOnCancel = boolean;\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t});\n\n\t\t\texecutor(onResolve, onReject, onCancel);\n\t\t});\n\t}\n\n\t// eslint-disable-next-line unicorn/no-thenable\n\tthen(onFulfilled, onRejected) {\n\t\treturn this.#promise.then(onFulfilled, onRejected);\n\t}\n\n\tcatch(onRejected) {\n\t\treturn this.#promise.catch(onRejected);\n\t}\n\n\tfinally(onFinally) {\n\t\treturn this.#promise.finally(onFinally);\n\t}\n\n\tcancel(reason) {\n\t\tif (this.#state !== promiseState.pending) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.#setState(promiseState.canceled);\n\n\t\tif (this.#cancelHandlers.length > 0) {\n\t\t\ttry {\n\t\t\t\tfor (const handler of this.#cancelHandlers) {\n\t\t\t\t\thandler();\n\t\t\t\t}\n\t\t\t} catch (error) {\n\t\t\t\tthis.#reject(error);\n\t\t\t\treturn;\n\t\t\t}\n\t\t}\n\n\t\tif (this.#rejectOnCancel) {\n\t\t\tthis.#reject(new CancelError(reason));\n\t\t}\n\t}\n\n\tget isCanceled() {\n\t\treturn this.#state === promiseState.canceled;\n\t}\n\n\t#setState(state) {\n\t\tif (this.#state === promiseState.pending) {\n\t\t\tthis.#state = state;\n\t\t}\n\t}\n}\n\nObject.setPrototypeOf(PCancelable.prototype, Promise.prototype);\n","export class TimeoutError extends Error {\n\tconstructor(message) {\n\t\tsuper(message);\n\t\tthis.name = 'TimeoutError';\n\t}\n}\n\n/**\nAn error to be thrown when the request is aborted by AbortController.\nDOMException is thrown instead of this Error when DOMException is available.\n*/\nexport class AbortError extends Error {\n\tconstructor(message) {\n\t\tsuper();\n\t\tthis.name = 'AbortError';\n\t\tthis.message = message;\n\t}\n}\n\n/**\nTODO: Remove AbortError and just throw DOMException when targeting Node 18.\n*/\nconst getDOMException = errorMessage => globalThis.DOMException === undefined\n\t? new AbortError(errorMessage)\n\t: new DOMException(errorMessage);\n\n/**\nTODO: Remove below function and just 'reject(signal.reason)' when targeting Node 18.\n*/\nconst getAbortedReason = signal => {\n\tconst reason = signal.reason === undefined\n\t\t? getDOMException('This operation was aborted.')\n\t\t: signal.reason;\n\n\treturn reason instanceof Error ? reason : getDOMException(reason);\n};\n\nexport default function pTimeout(promise, options) {\n\tconst {\n\t\tmilliseconds,\n\t\tfallback,\n\t\tmessage,\n\t\tcustomTimers = {setTimeout, clearTimeout},\n\t} = options;\n\n\tlet timer;\n\n\tconst wrappedPromise = new Promise((resolve, reject) => {\n\t\tif (typeof milliseconds !== 'number' || Math.sign(milliseconds) !== 1) {\n\t\t\tthrow new TypeError(`Expected \\`milliseconds\\` to be a positive number, got \\`${milliseconds}\\``);\n\t\t}\n\n\t\tif (options.signal) {\n\t\t\tconst {signal} = options;\n\t\t\tif (signal.aborted) {\n\t\t\t\treject(getAbortedReason(signal));\n\t\t\t}\n\n\t\t\tsignal.addEventListener('abort', () => {\n\t\t\t\treject(getAbortedReason(signal));\n\t\t\t});\n\t\t}\n\n\t\tif (milliseconds === Number.POSITIVE_INFINITY) {\n\t\t\tpromise.then(resolve, reject);\n\t\t\treturn;\n\t\t}\n\n\t\t// We create the error outside of `setTimeout` to preserve the stack trace.\n\t\tconst timeoutError = new TimeoutError();\n\n\t\ttimer = customTimers.setTimeout.call(undefined, () => {\n\t\t\tif (fallback) {\n\t\t\t\ttry {\n\t\t\t\t\tresolve(fallback());\n\t\t\t\t} catch (error) {\n\t\t\t\t\treject(error);\n\t\t\t\t}\n\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif (typeof promise.cancel === 'function') {\n\t\t\t\tpromise.cancel();\n\t\t\t}\n\n\t\t\tif (message === false) {\n\t\t\t\tresolve();\n\t\t\t} else if (message instanceof Error) {\n\t\t\t\treject(message);\n\t\t\t} else {\n\t\t\t\ttimeoutError.message = message ?? `Promise timed out after ${milliseconds} milliseconds`;\n\t\t\t\treject(timeoutError);\n\t\t\t}\n\t\t}, milliseconds);\n\n\t\t(async () => {\n\t\t\ttry {\n\t\t\t\tresolve(await promise);\n\t\t\t} catch (error) {\n\t\t\t\treject(error);\n\t\t\t}\n\t\t})();\n\t});\n\n\tconst cancelablePromise = wrappedPromise.finally(() => {\n\t\tcancelablePromise.clear();\n\t});\n\n\tcancelablePromise.clear = () => {\n\t\tcustomTimers.clearTimeout.call(undefined, timer);\n\t\ttimer = undefined;\n\t};\n\n\treturn cancelablePromise;\n}\n","import lowerBound from './lower-bound.js';\nexport default class PriorityQueue {\n #queue = [];\n enqueue(run, options) {\n options = {\n priority: 0,\n ...options,\n };\n const element = {\n priority: options.priority,\n run,\n };\n if (this.size && this.#queue[this.size - 1].priority >= options.priority) {\n this.#queue.push(element);\n return;\n }\n const index = lowerBound(this.#queue, element, (a, b) => b.priority - a.priority);\n this.#queue.splice(index, 0, element);\n }\n dequeue() {\n const item = this.#queue.shift();\n return item?.run;\n }\n filter(options) {\n return this.#queue.filter((element) => element.priority === options.priority).map((element) => element.run);\n }\n get size() {\n return this.#queue.length;\n }\n}\n","// Port of lower_bound from https://en.cppreference.com/w/cpp/algorithm/lower_bound\n// Used to compute insertion index to keep queue sorted after insertion\nexport default function lowerBound(array, value, comparator) {\n let first = 0;\n let count = array.length;\n while (count > 0) {\n const step = Math.trunc(count / 2);\n let it = first + step;\n if (comparator(array[it], value) <= 0) {\n first = ++it;\n count -= step + 1;\n }\n else {\n count = step;\n }\n }\n return first;\n}\n","import { EventEmitter } from 'eventemitter3';\nimport pTimeout, { TimeoutError } from 'p-timeout';\nimport PriorityQueue from './priority-queue.js';\n/**\nPromise queue with concurrency control.\n*/\nexport default class PQueue extends EventEmitter {\n #carryoverConcurrencyCount;\n #isIntervalIgnored;\n #intervalCount = 0;\n #intervalCap;\n #interval;\n #intervalEnd = 0;\n #intervalId;\n #timeoutId;\n #queue;\n #queueClass;\n #pending = 0;\n // The `!` is needed because of https://github.com/microsoft/TypeScript/issues/32194\n #concurrency;\n #isPaused;\n #throwOnTimeout;\n /**\n Per-operation timeout in milliseconds. Operations fulfill once `timeout` elapses if they haven't already.\n\n Applies to each future operation.\n */\n timeout;\n // TODO: The `throwOnTimeout` option should affect the return types of `add()` and `addAll()`\n constructor(options) {\n super();\n // eslint-disable-next-line @typescript-eslint/consistent-type-assertions\n options = {\n carryoverConcurrencyCount: false,\n intervalCap: Number.POSITIVE_INFINITY,\n interval: 0,\n concurrency: Number.POSITIVE_INFINITY,\n autoStart: true,\n queueClass: PriorityQueue,\n ...options,\n };\n if (!(typeof options.intervalCap === 'number' && options.intervalCap >= 1)) {\n throw new TypeError(`Expected \\`intervalCap\\` to be a number from 1 and up, got \\`${options.intervalCap?.toString() ?? ''}\\` (${typeof options.intervalCap})`);\n }\n if (options.interval === undefined || !(Number.isFinite(options.interval) && options.interval >= 0)) {\n throw new TypeError(`Expected \\`interval\\` to be a finite number >= 0, got \\`${options.interval?.toString() ?? ''}\\` (${typeof options.interval})`);\n }\n this.#carryoverConcurrencyCount = options.carryoverConcurrencyCount;\n this.#isIntervalIgnored = options.intervalCap === Number.POSITIVE_INFINITY || options.interval === 0;\n this.#intervalCap = options.intervalCap;\n this.#interval = options.interval;\n this.#queue = new options.queueClass();\n this.#queueClass = options.queueClass;\n this.concurrency = options.concurrency;\n this.timeout = options.timeout;\n this.#throwOnTimeout = options.throwOnTimeout === true;\n this.#isPaused = options.autoStart === false;\n }\n get #doesIntervalAllowAnother() {\n return this.#isIntervalIgnored || this.#intervalCount < this.#intervalCap;\n }\n get #doesConcurrentAllowAnother() {\n return this.#pending < this.#concurrency;\n }\n #next() {\n this.#pending--;\n this.#tryToStartAnother();\n this.emit('next');\n }\n #onResumeInterval() {\n this.#onInterval();\n this.#initializeIntervalIfNeeded();\n this.#timeoutId = undefined;\n }\n get #isIntervalPaused() {\n const now = Date.now();\n if (this.#intervalId === undefined) {\n const delay = this.#intervalEnd - now;\n if (delay < 0) {\n // Act as the interval was done\n // We don't need to resume it here because it will be resumed on line 160\n this.#intervalCount = (this.#carryoverConcurrencyCount) ? this.#pending : 0;\n }\n else {\n // Act as the interval is pending\n if (this.#timeoutId === undefined) {\n this.#timeoutId = setTimeout(() => {\n this.#onResumeInterval();\n }, delay);\n }\n return true;\n }\n }\n return false;\n }\n #tryToStartAnother() {\n if (this.#queue.size === 0) {\n // We can clear the interval (\"pause\")\n // Because we can redo it later (\"resume\")\n if (this.#intervalId) {\n clearInterval(this.#intervalId);\n }\n this.#intervalId = undefined;\n this.emit('empty');\n if (this.#pending === 0) {\n this.emit('idle');\n }\n return false;\n }\n if (!this.#isPaused) {\n const canInitializeInterval = !this.#isIntervalPaused;\n if (this.#doesIntervalAllowAnother && this.#doesConcurrentAllowAnother) {\n const job = this.#queue.dequeue();\n if (!job) {\n return false;\n }\n this.emit('active');\n job();\n if (canInitializeInterval) {\n this.#initializeIntervalIfNeeded();\n }\n return true;\n }\n }\n return false;\n }\n #initializeIntervalIfNeeded() {\n if (this.#isIntervalIgnored || this.#intervalId !== undefined) {\n return;\n }\n this.#intervalId = setInterval(() => {\n this.#onInterval();\n }, this.#interval);\n this.#intervalEnd = Date.now() + this.#interval;\n }\n #onInterval() {\n if (this.#intervalCount === 0 && this.#pending === 0 && this.#intervalId) {\n clearInterval(this.#intervalId);\n this.#intervalId = undefined;\n }\n this.#intervalCount = this.#carryoverConcurrencyCount ? this.#pending : 0;\n this.#processQueue();\n }\n /**\n Executes all queued functions until it reaches the limit.\n */\n #processQueue() {\n // eslint-disable-next-line no-empty\n while (this.#tryToStartAnother()) { }\n }\n get concurrency() {\n return this.#concurrency;\n }\n set concurrency(newConcurrency) {\n if (!(typeof newConcurrency === 'number' && newConcurrency >= 1)) {\n throw new TypeError(`Expected \\`concurrency\\` to be a number from 1 and up, got \\`${newConcurrency}\\` (${typeof newConcurrency})`);\n }\n this.#concurrency = newConcurrency;\n this.#processQueue();\n }\n async #throwOnAbort(signal) {\n return new Promise((_resolve, reject) => {\n signal.addEventListener('abort', () => {\n reject(signal.reason);\n }, { once: true });\n });\n }\n async add(function_, options = {}) {\n options = {\n timeout: this.timeout,\n throwOnTimeout: this.#throwOnTimeout,\n ...options,\n };\n return new Promise((resolve, reject) => {\n this.#queue.enqueue(async () => {\n this.#pending++;\n this.#intervalCount++;\n try {\n options.signal?.throwIfAborted();\n let operation = function_({ signal: options.signal });\n if (options.timeout) {\n operation = pTimeout(Promise.resolve(operation), { milliseconds: options.timeout });\n }\n if (options.signal) {\n operation = Promise.race([operation, this.#throwOnAbort(options.signal)]);\n }\n const result = await operation;\n resolve(result);\n this.emit('completed', result);\n }\n catch (error) {\n if (error instanceof TimeoutError && !options.throwOnTimeout) {\n resolve();\n return;\n }\n reject(error);\n this.emit('error', error);\n }\n finally {\n this.#next();\n }\n }, options);\n this.emit('add');\n this.#tryToStartAnother();\n });\n }\n async addAll(functions, options) {\n return Promise.all(functions.map(async (function_) => this.add(function_, options)));\n }\n /**\n Start (or resume) executing enqueued tasks within concurrency limit. No need to call this if queue is not paused (via `options.autoStart = false` or by `.pause()` method.)\n */\n start() {\n if (!this.#isPaused) {\n return this;\n }\n this.#isPaused = false;\n this.#processQueue();\n return this;\n }\n /**\n Put queue execution on hold.\n */\n pause() {\n this.#isPaused = true;\n }\n /**\n Clear the queue.\n */\n clear() {\n this.#queue = new this.#queueClass();\n }\n /**\n Can be called multiple times. Useful if you for example add additional items at a later time.\n\n @returns A promise that settles when the queue becomes empty.\n */\n async onEmpty() {\n // Instantly resolve if the queue is empty\n if (this.#queue.size === 0) {\n return;\n }\n await this.#onEvent('empty');\n }\n /**\n @returns A promise that settles when the queue size is less than the given limit: `queue.size < limit`.\n\n If you want to avoid having the queue grow beyond a certain size you can `await queue.onSizeLessThan()` before adding a new item.\n\n Note that this only limits the number of items waiting to start. There could still be up to `concurrency` jobs already running that this call does not include in its calculation.\n */\n async onSizeLessThan(limit) {\n // Instantly resolve if the queue is empty.\n if (this.#queue.size < limit) {\n return;\n }\n await this.#onEvent('next', () => this.#queue.size < limit);\n }\n /**\n The difference with `.onEmpty` is that `.onIdle` guarantees that all work from the queue has finished. `.onEmpty` merely signals that the queue is empty, but it could mean that some promises haven't completed yet.\n\n @returns A promise that settles when the queue becomes empty, and all promises have completed; `queue.size === 0 && queue.pending === 0`.\n */\n async onIdle() {\n // Instantly resolve if none pending and if nothing else is queued\n if (this.#pending === 0 && this.#queue.size === 0) {\n return;\n }\n await this.#onEvent('idle');\n }\n async #onEvent(event, filter) {\n return new Promise(resolve => {\n const listener = () => {\n if (filter && !filter()) {\n return;\n }\n this.off(event, listener);\n resolve();\n };\n this.on(event, listener);\n });\n }\n /**\n Size of the queue, the number of queued items waiting to run.\n */\n get size() {\n return this.#queue.size;\n }\n /**\n Size of the queue, filtered by the given options.\n\n For example, this can be used to find the number of items remaining in the queue with a specific priority level.\n */\n sizeBy(options) {\n // eslint-disable-next-line unicorn/no-array-callback-reference\n return this.#queue.filter(options).length;\n }\n /**\n Number of running items (no longer in the queue).\n */\n get pending() {\n return this.#pending;\n }\n /**\n Whether the queue is currently paused.\n */\n get isPaused() {\n return this.#isPaused;\n }\n}\n","import isRetryAllowed from 'is-retry-allowed';\nexport const namespace = 'axios-retry';\nexport function isNetworkError(error) {\n const CODE_EXCLUDE_LIST = ['ERR_CANCELED', 'ECONNABORTED'];\n if (error.response) {\n return false;\n }\n if (!error.code) {\n return false;\n }\n // Prevents retrying timed out & cancelled requests\n if (CODE_EXCLUDE_LIST.includes(error.code)) {\n return false;\n }\n // Prevents retrying unsafe errors\n return isRetryAllowed(error);\n}\nconst SAFE_HTTP_METHODS = ['get', 'head', 'options'];\nconst IDEMPOTENT_HTTP_METHODS = SAFE_HTTP_METHODS.concat(['put', 'delete']);\nexport function isRetryableError(error) {\n return (error.code !== 'ECONNABORTED' &&\n (!error.response ||\n error.response.status === 429 ||\n (error.response.status >= 500 && error.response.status <= 599)));\n}\nexport function isSafeRequestError(error) {\n if (!error.config?.method) {\n // Cannot determine if the request can be retried\n return false;\n }\n return isRetryableError(error) && SAFE_HTTP_METHODS.indexOf(error.config.method) !== -1;\n}\nexport function isIdempotentRequestError(error) {\n if (!error.config?.method) {\n // Cannot determine if the request can be retried\n return false;\n }\n return isRetryableError(error) && IDEMPOTENT_HTTP_METHODS.indexOf(error.config.method) !== -1;\n}\nexport function isNetworkOrIdempotentRequestError(error) {\n return isNetworkError(error) || isIdempotentRequestError(error);\n}\nexport function retryAfter(error = undefined) {\n const retryAfterHeader = error?.response?.headers['retry-after'];\n if (!retryAfterHeader) {\n return 0;\n }\n // if the retry after header is a number, convert it to milliseconds\n let retryAfterMs = (Number(retryAfterHeader) || 0) * 1000;\n // If the retry after header is a date, get the number of milliseconds until that date\n if (retryAfterMs === 0) {\n retryAfterMs = (new Date(retryAfterHeader).valueOf() || 0) - Date.now();\n }\n return Math.max(0, retryAfterMs);\n}\nfunction noDelay(_retryNumber = 0, error = undefined) {\n return Math.max(0, retryAfter(error));\n}\nexport function exponentialDelay(retryNumber = 0, error = undefined, delayFactor = 100) {\n const calculatedDelay = 2 ** retryNumber * delayFactor;\n const delay = Math.max(calculatedDelay, retryAfter(error));\n const randomSum = delay * 0.2 * Math.random(); // 0-20% of the delay\n return delay + randomSum;\n}\nexport const DEFAULT_OPTIONS = {\n retries: 3,\n retryCondition: isNetworkOrIdempotentRequestError,\n retryDelay: noDelay,\n shouldResetTimeout: false,\n onRetry: () => { },\n onMaxRetryTimesExceeded: () => { },\n validateResponse: null\n};\nfunction getRequestOptions(config, defaultOptions) {\n return { ...DEFAULT_OPTIONS, ...defaultOptions, ...config[namespace] };\n}\nfunction setCurrentState(config, defaultOptions) {\n const currentState = getRequestOptions(config, defaultOptions || {});\n currentState.retryCount = currentState.retryCount || 0;\n currentState.lastRequestTime = currentState.lastRequestTime || Date.now();\n config[namespace] = currentState;\n return currentState;\n}\nfunction fixConfig(axiosInstance, config) {\n // @ts-ignore\n if (axiosInstance.defaults.agent === config.agent) {\n // @ts-ignore\n delete config.agent;\n }\n if (axiosInstance.defaults.httpAgent === config.httpAgent) {\n delete config.httpAgent;\n }\n if (axiosInstance.defaults.httpsAgent === config.httpsAgent) {\n delete config.httpsAgent;\n }\n}\nasync function shouldRetry(currentState, error) {\n const { retries, retryCondition } = currentState;\n const shouldRetryOrPromise = (currentState.retryCount || 0) < retries && retryCondition(error);\n // This could be a promise\n if (typeof shouldRetryOrPromise === 'object') {\n try {\n const shouldRetryPromiseResult = await shouldRetryOrPromise;\n // keep return true unless shouldRetryPromiseResult return false for compatibility\n return shouldRetryPromiseResult !== false;\n }\n catch (_err) {\n return false;\n }\n }\n return shouldRetryOrPromise;\n}\nasync function handleRetry(axiosInstance, currentState, error, config) {\n currentState.retryCount += 1;\n const { retryDelay, shouldResetTimeout, onRetry } = currentState;\n const delay = retryDelay(currentState.retryCount, error);\n // Axios fails merging this configuration to the default configuration because it has an issue\n // with circular structures: https://github.com/mzabriskie/axios/issues/370\n fixConfig(axiosInstance, config);\n if (!shouldResetTimeout && config.timeout && currentState.lastRequestTime) {\n const lastRequestDuration = Date.now() - currentState.lastRequestTime;\n const timeout = config.timeout - lastRequestDuration - delay;\n if (timeout <= 0) {\n return Promise.reject(error);\n }\n config.timeout = timeout;\n }\n config.transformRequest = [(data) => data];\n await onRetry(currentState.retryCount, error, config);\n if (config.signal?.aborted) {\n return Promise.resolve(axiosInstance(config));\n }\n return new Promise((resolve) => {\n const abortListener = () => {\n clearTimeout(timeout);\n resolve(axiosInstance(config));\n };\n const timeout = setTimeout(() => {\n resolve(axiosInstance(config));\n if (config.signal?.removeEventListener) {\n config.signal.removeEventListener('abort', abortListener);\n }\n }, delay);\n if (config.signal?.addEventListener) {\n config.signal.addEventListener('abort', abortListener, { once: true });\n }\n });\n}\nasync function handleMaxRetryTimesExceeded(currentState, error) {\n if (currentState.retryCount >= currentState.retries)\n await currentState.onMaxRetryTimesExceeded(error, currentState.retryCount);\n}\nconst axiosRetry = (axiosInstance, defaultOptions) => {\n const requestInterceptorId = axiosInstance.interceptors.request.use((config) => {\n setCurrentState(config, defaultOptions);\n if (config[namespace]?.validateResponse) {\n // by setting this, all HTTP responses will be go through the error interceptor first\n config.validateStatus = () => false;\n }\n return config;\n });\n const responseInterceptorId = axiosInstance.interceptors.response.use(null, async (error) => {\n const { config } = error;\n // If we have no information to retry the request\n if (!config) {\n return Promise.reject(error);\n }\n const currentState = setCurrentState(config, defaultOptions);\n if (error.response && currentState.validateResponse?.(error.response)) {\n // no issue with response\n return error.response;\n }\n if (await shouldRetry(currentState, error)) {\n return handleRetry(axiosInstance, currentState, error, config);\n }\n await handleMaxRetryTimesExceeded(currentState, error);\n return Promise.reject(error);\n });\n return { requestInterceptorId, responseInterceptorId };\n};\n// Compatibility with CommonJS\naxiosRetry.isNetworkError = isNetworkError;\naxiosRetry.isSafeRequestError = isSafeRequestError;\naxiosRetry.isIdempotentRequestError = isIdempotentRequestError;\naxiosRetry.isNetworkOrIdempotentRequestError = isNetworkOrIdempotentRequestError;\naxiosRetry.exponentialDelay = exponentialDelay;\naxiosRetry.isRetryableError = isRetryableError;\nexport default axiosRetry;\n","import GetText from \"node-gettext\";\nimport { a as getLanguage } from \"./chunks/locale-BQFSYg2g.mjs\";\nimport \"@nextcloud/router\";\nimport \"dompurify\";\nimport \"escape-html\";\nvar __defProp = Object.defineProperty;\nvar __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;\nvar __publicField = (obj, key, value) => {\n __defNormalProp(obj, typeof key !== \"symbol\" ? key + \"\" : key, value);\n return value;\n};\nclass GettextBuilder {\n constructor() {\n __publicField(this, \"locale\");\n __publicField(this, \"translations\", {});\n __publicField(this, \"debug\", false);\n }\n setLanguage(language) {\n this.locale = language;\n return this;\n }\n /** Try to detect locale from context with `en` as fallback value */\n detectLocale() {\n return this.setLanguage(getLanguage().replace(\"-\", \"_\"));\n }\n addTranslation(language, data) {\n this.translations[language] = data;\n return this;\n }\n enableDebugMode() {\n this.debug = true;\n return this;\n }\n build() {\n return new GettextWrapper(this.locale || \"en\", this.translations, this.debug);\n }\n}\nclass GettextWrapper {\n constructor(locale, data, debug) {\n __publicField(this, \"gt\");\n this.gt = new GetText({\n debug,\n sourceLocale: \"en\"\n });\n for (const key in data) {\n this.gt.addTranslations(key, \"messages\", data[key]);\n }\n this.gt.setLocale(locale);\n }\n subtitudePlaceholders(translated, vars) {\n return translated.replace(/{([^{}]*)}/g, (a, b) => {\n const r = vars[b];\n if (typeof r === \"string\" || typeof r === \"number\") {\n return r.toString();\n } else {\n return a;\n }\n });\n }\n /**\n * Get translated string (singular form), optionally with placeholders\n *\n * @param original original string to translate\n * @param placeholders map of placeholder key to value\n */\n gettext(original, placeholders = {}) {\n return this.subtitudePlaceholders(\n this.gt.gettext(original),\n placeholders\n );\n }\n /**\n * Get translated string with plural forms\n *\n * @param singular Singular text form\n * @param plural Plural text form to be used if `count` requires it\n * @param count The number to insert into the text\n * @param placeholders optional map of placeholder key to value\n */\n ngettext(singular, plural, count, placeholders = {}) {\n return this.subtitudePlaceholders(\n this.gt.ngettext(singular, plural, count).replace(/%n/g, count.toString()),\n placeholders\n );\n }\n}\nfunction getGettextBuilder() {\n return new GettextBuilder();\n}\nexport {\n getGettextBuilder\n};\n","import '../assets/index-DiWRcN3o.css';\nimport { isPublicShare } from \"@nextcloud/sharing/public\";\nimport Vue, { defineAsyncComponent } from \"vue\";\nimport { getCurrentUser } from \"@nextcloud/auth\";\nimport { davRemoteURL, davRootPath, Folder, Permission, davGetClient, NewMenuEntryCategory, getUniqueName, getNewFileMenuEntries } from \"@nextcloud/files\";\nimport { basename, encodePath } from \"@nextcloud/paths\";\nimport { join, normalize } from \"path\";\nimport axios, { isCancel } from \"@nextcloud/axios\";\nimport PCancelable from \"p-cancelable\";\nimport PQueue from \"p-queue\";\nimport { generateRemoteUrl } from \"@nextcloud/router\";\nimport axiosRetry from \"axios-retry\";\nimport { getGettextBuilder } from \"@nextcloud/l10n/gettext\";\nimport { getLoggerBuilder } from \"@nextcloud/logger\";\nimport { DialogBuilder, showWarning } from \"@nextcloud/dialogs\";\nimport makeEta from \"simple-eta\";\nimport NcActionButton from \"@nextcloud/vue/dist/Components/NcActionButton.js\";\nimport NcActionCaption from \"@nextcloud/vue/dist/Components/NcActionCaption.js\";\nimport NcActionSeparator from \"@nextcloud/vue/dist/Components/NcActionSeparator.js\";\nimport NcActions from \"@nextcloud/vue/dist/Components/NcActions.js\";\nimport NcButton from \"@nextcloud/vue/dist/Components/NcButton.js\";\nimport NcIconSvgWrapper from \"@nextcloud/vue/dist/Components/NcIconSvgWrapper.js\";\nimport NcProgressBar from \"@nextcloud/vue/dist/Components/NcProgressBar.js\";\nconst isFileSystemDirectoryEntry = (o) => \"FileSystemDirectoryEntry\" in window && o instanceof FileSystemDirectoryEntry;\nconst isFileSystemFileEntry = (o) => \"FileSystemFileEntry\" in window && o instanceof FileSystemFileEntry;\nconst isFileSystemEntry = (o) => \"FileSystemEntry\" in window && o instanceof FileSystemEntry;\naxiosRetry(axios, { retries: 0 });\nconst uploadData = async function(url, uploadData2, signal, onUploadProgress = () => {\n}, destinationFile = void 0, headers = {}, retries = 5) {\n let data;\n if (uploadData2 instanceof Blob) {\n data = uploadData2;\n } else {\n data = await uploadData2();\n }\n if (destinationFile) {\n headers.Destination = destinationFile;\n }\n if (!headers[\"Content-Type\"]) {\n headers[\"Content-Type\"] = \"application/octet-stream\";\n }\n return await axios.request({\n method: \"PUT\",\n url,\n data,\n signal,\n onUploadProgress,\n headers,\n \"axios-retry\": {\n retries,\n retryDelay: (retryCount, error) => axiosRetry.exponentialDelay(retryCount, error, 1e3)\n }\n });\n};\nconst getChunk = function(file, start, length) {\n if (start === 0 && file.size <= length) {\n return Promise.resolve(new Blob([file], { type: file.type || \"application/octet-stream\" }));\n }\n return Promise.resolve(new Blob([file.slice(start, start + length)], { type: \"application/octet-stream\" }));\n};\nconst initChunkWorkspace = async function(destinationFile = void 0, retries = 5) {\n const chunksWorkspace = generateRemoteUrl(`dav/uploads/${getCurrentUser()?.uid}`);\n const hash = [...Array(16)].map(() => Math.floor(Math.random() * 16).toString(16)).join(\"\");\n const tempWorkspace = `web-file-upload-${hash}`;\n const url = `${chunksWorkspace}/${tempWorkspace}`;\n const headers = destinationFile ? { Destination: destinationFile } : void 0;\n await axios.request({\n method: \"MKCOL\",\n url,\n headers,\n \"axios-retry\": {\n retries,\n retryDelay: (retryCount, error) => axiosRetry.exponentialDelay(retryCount, error, 1e3)\n }\n });\n return url;\n};\nconst getMaxChunksSize = function(fileSize = void 0) {\n const maxChunkSize = window.OC?.appConfig?.files?.max_chunk_size;\n if (maxChunkSize <= 0) {\n return 0;\n }\n if (!Number(maxChunkSize)) {\n return 10 * 1024 * 1024;\n }\n const minimumChunkSize = Math.max(Number(maxChunkSize), 5 * 1024 * 1024);\n if (fileSize === void 0) {\n return minimumChunkSize;\n }\n return Math.max(minimumChunkSize, Math.ceil(fileSize / 1e4));\n};\nvar Status$1 = /* @__PURE__ */ ((Status2) => {\n Status2[Status2[\"INITIALIZED\"] = 0] = \"INITIALIZED\";\n Status2[Status2[\"UPLOADING\"] = 1] = \"UPLOADING\";\n Status2[Status2[\"ASSEMBLING\"] = 2] = \"ASSEMBLING\";\n Status2[Status2[\"FINISHED\"] = 3] = \"FINISHED\";\n Status2[Status2[\"CANCELLED\"] = 4] = \"CANCELLED\";\n Status2[Status2[\"FAILED\"] = 5] = \"FAILED\";\n return Status2;\n})(Status$1 || {});\nclass Upload {\n _source;\n _file;\n _isChunked;\n _chunks;\n _size;\n _uploaded = 0;\n _startTime = 0;\n _status = 0;\n _controller;\n _response = null;\n constructor(source, chunked = false, size, file) {\n const chunks = Math.min(getMaxChunksSize() > 0 ? Math.ceil(size / getMaxChunksSize()) : 1, 1e4);\n this._source = source;\n this._isChunked = chunked && getMaxChunksSize() > 0 && chunks > 1;\n this._chunks = this._isChunked ? chunks : 1;\n this._size = size;\n this._file = file;\n this._controller = new AbortController();\n }\n get source() {\n return this._source;\n }\n get file() {\n return this._file;\n }\n get isChunked() {\n return this._isChunked;\n }\n get chunks() {\n return this._chunks;\n }\n get size() {\n return this._size;\n }\n get startTime() {\n return this._startTime;\n }\n set response(response) {\n this._response = response;\n }\n get response() {\n return this._response;\n }\n get uploaded() {\n return this._uploaded;\n }\n /**\n * Update the uploaded bytes of this upload\n */\n set uploaded(length) {\n if (length >= this._size) {\n this._status = this._isChunked ? 2 : 3;\n this._uploaded = this._size;\n return;\n }\n this._status = 1;\n this._uploaded = length;\n if (this._startTime === 0) {\n this._startTime = (/* @__PURE__ */ new Date()).getTime();\n }\n }\n get status() {\n return this._status;\n }\n /**\n * Update this upload status\n */\n set status(status) {\n this._status = status;\n }\n /**\n * Returns the axios cancel token source\n */\n get signal() {\n return this._controller.signal;\n }\n /**\n * Cancel any ongoing requests linked to this upload\n */\n cancel() {\n this._controller.abort();\n this._status = 4;\n }\n}\nclass Directory extends File {\n _originalName;\n _path;\n _children;\n constructor(path, children) {\n super([], basename(path), { type: \"httpd/unix-directory\", lastModified: 0 });\n this._children = /* @__PURE__ */ new Map();\n this._originalName = basename(path);\n this._path = path;\n if (children) {\n children.forEach((c) => this.addChild(c));\n }\n }\n get size() {\n return this.children.reduce((sum, file) => sum + file.size, 0);\n }\n get lastModified() {\n return this.children.reduce((latest, file) => Math.max(latest, file.lastModified), 0);\n }\n // We need this to keep track of renamed files\n get originalName() {\n return this._originalName;\n }\n get children() {\n return Array.from(this._children.values());\n }\n get webkitRelativePath() {\n return this._path;\n }\n getChild(name) {\n return this._children.get(name) ?? null;\n }\n async addChild(file) {\n const rootPath = this._path && `${this._path}/`;\n if (isFileSystemFileEntry(file)) {\n file = await new Promise((resolve, reject) => file.file(resolve, reject));\n } else if (isFileSystemDirectoryEntry(file)) {\n const reader = file.createReader();\n const entries = await new Promise((resolve, reject) => reader.readEntries(resolve, reject));\n this._children.set(file.name, new Directory(`${rootPath}${file.name}`, entries));\n return;\n }\n file = file;\n const filePath = file.webkitRelativePath ?? file.name;\n if (!filePath.includes(\"/\")) {\n this._children.set(file.name, file);\n } else {\n if (!filePath.startsWith(this._path)) {\n throw new Error(`File ${filePath} is not a child of ${this._path}`);\n }\n const relPath = filePath.slice(rootPath.length);\n const name = basename(relPath);\n if (name === relPath) {\n this._children.set(name, file);\n } else {\n const base = relPath.slice(0, relPath.indexOf(\"/\"));\n if (this._children.has(base)) {\n this._children.get(base).addChild(file);\n } else {\n this._children.set(base, new Directory(`${rootPath}${base}`, [file]));\n }\n }\n }\n }\n}\n/**\n * @copyright Copyright (c) 2023 Ferdinand Thiessen \n *\n * @author Ferdinand Thiessen \n * @author John Molakvoæ \n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see .\n *\n */\nconst gtBuilder = getGettextBuilder().detectLocale();\n[{ \"locale\": \"af\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Afrikaans (https://www.transifex.com/nextcloud/teams/64236/af/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"af\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Afrikaans (https://www.transifex.com/nextcloud/teams/64236/af/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: af\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ar\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Ali , 2024\", \"Language-Team\": \"Arabic (https://app.transifex.com/nextcloud/teams/64236/ar/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ar\", \"Plural-Forms\": \"nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nAli , 2024\\n\" }, \"msgstr\": [\"Last-Translator: Ali , 2024\\nLanguage-Team: Arabic (https://app.transifex.com/nextcloud/teams/64236/ar/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ar\\nPlural-Forms: nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;\\n\"] }, '\"{filename}\" contains invalid characters, how do you want to continue?': { \"msgid\": '\"{filename}\" contains invalid characters, how do you want to continue?', \"msgstr\": ['\"{filename}\" يحتوي على حروف غير مقبولة. كيف ترغب في الاستمرار؟'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} ملف متعارض\", \"{count} ملف متعارض\", \"{count} ملفان متعارضان\", \"{count} ملف متعارض\", \"{count} ملفات متعارضة\", \"{count} ملفات متعارضة\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} ملف متعارض في n {dirname}\", \"{count} ملف متعارض في n {dirname}\", \"{count} ملفان متعارضان في n {dirname}\", \"{count} ملف متعارض في n {dirname}\", \"{count} ملفات متعارضة في n {dirname}\", \"{count} ملفات متعارضة في n {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} ثانية متبقية\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} متبقية\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"باقٍ بضعُ ثوانٍ\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"إلغاء\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"إلغِ العملية بالكامل\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"إلغاء عمليات رفع الملفات\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"إستمر\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"إنشاء جديد\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"تقدير الوقت المتبقي\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"الإصدار الحالي\"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"إذا اخترت الاحتفاظ بالنسختين فسيتم إلحاق رقم عداد آخر اسم الملف الوارد.\"] }, \"Invalid file name\": { \"msgid\": \"Invalid file name\", \"msgstr\": [\"اسم الملف غير صحيح\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"تاريخ آخر تعديل غير معلوم\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"جديد\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"نسخة جديدة\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"مُجمَّد\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"معاينة الصورة\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"تغيير التسمية\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"حدِّد كل صناديق الخيارات\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"حدِّد كل الملفات الموجودة\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"حدِّد كل الملفات الجديدة\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"تخطِّي\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"تخطَّ {count} ملف\", \"تخطَّ {count} ملف\", \"تخطَّ {count} ملف\", \"تخطَّ {count} ملف\", \"تخطَّ {count} ملف\", \"تخطَّ {count} ملف\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"حجم غير معلوم\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"رفع ملفات\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"رفع مجلدات\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"الرفع من جهاز \"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"تمّ إلغاء عملية رفع الملفات\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"تقدُّم الرفع \"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"عند تحديد مجلد وارد، أي ملفات متعارضة بداخله ستتم الكتابة فوقها.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"عند تحديد مجلد وارد، ستتم كتابة المحتوى في المجلد الموجود و سيتم تنفيذ حل التعارض بشكل تعاوُدي.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"أيُّ الملفات ترغب في الإبقاء عليها؟\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"يجب أن تختار نسخة واحدة على الأقل من كل ملف للاستمرار.\"] } } } } }, { \"locale\": \"ar_SA\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Arabic (Saudi Arabia) (https://www.transifex.com/nextcloud/teams/64236/ar_SA/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ar_SA\", \"Plural-Forms\": \"nplurals=6; plural=(n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Arabic (Saudi Arabia) (https://www.transifex.com/nextcloud/teams/64236/ar_SA/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ar_SA\\nPlural-Forms: nplurals=6; plural=(n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ast\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"enolp , 2023\", \"Language-Team\": \"Asturian (https://app.transifex.com/nextcloud/teams/64236/ast/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ast\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nenolp , 2023\\n\" }, \"msgstr\": [\"Last-Translator: enolp , 2023\\nLanguage-Team: Asturian (https://app.transifex.com/nextcloud/teams/64236/ast/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ast\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} ficheru en coflictu\", \"{count} ficheros en coflictu\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} ficheru en coflictu en {dirname}\", \"{count} ficheros en coflictu en {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"Queden {seconds} segundos\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"Tiempu que queda: {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"queden unos segundos\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Encaboxar les xubes\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Siguir\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimando'l tiempu que falta\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Versión esistente\"] }, \"If you select both versions, the copied file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the copied file will have a number added to its name.\", \"msgstr\": [\"Si seleiciones dambes versiones, el ficheru copiáu va tener un númberu amestáu al so nome.\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"La data de la última modificación ye desconocida\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nuevu\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Versión nueva\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"en posa\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Previsualizar la imaxe\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Marcar toles caxelles\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Seleicionar tolos ficheros esistentes\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Seleicionar tolos ficheros nuevos\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Saltar esti ficheru\", \"Saltar {count} ficheros\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Tamañu desconocíu\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"Encaboxóse la xuba\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Xubir ficheros\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Xuba en cursu\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"¿Qué ficheros quies caltener?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Tienes de seleicionar polo menos una versión de cada ficheru pa siguir.\"] } } } } }, { \"locale\": \"az\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Rashad Aliyev , 2023\", \"Language-Team\": \"Azerbaijani (https://app.transifex.com/nextcloud/teams/64236/az/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"az\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nRashad Aliyev , 2023\\n\" }, \"msgstr\": [\"Last-Translator: Rashad Aliyev , 2023\\nLanguage-Team: Azerbaijani (https://app.transifex.com/nextcloud/teams/64236/az/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: az\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} saniyə qalıb\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"{time} qalıb\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"bir neçə saniyə qalıb\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Əlavə et\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Yükləməni imtina et\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"Təxmini qalan vaxt\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pauzadadır\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Faylları yüklə\"] } } } } }, { \"locale\": \"be\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Belarusian (https://www.transifex.com/nextcloud/teams/64236/be/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"be\", \"Plural-Forms\": \"nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Belarusian (https://www.transifex.com/nextcloud/teams/64236/be/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: be\\nPlural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"bg_BG\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Bulgarian (Bulgaria) (https://www.transifex.com/nextcloud/teams/64236/bg_BG/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"bg_BG\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Bulgarian (Bulgaria) (https://www.transifex.com/nextcloud/teams/64236/bg_BG/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: bg_BG\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"bn_BD\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Bengali (Bangladesh) (https://www.transifex.com/nextcloud/teams/64236/bn_BD/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"bn_BD\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Bengali (Bangladesh) (https://www.transifex.com/nextcloud/teams/64236/bn_BD/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: bn_BD\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"br\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Breton (https://www.transifex.com/nextcloud/teams/64236/br/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"br\", \"Plural-Forms\": \"nplurals=5; plural=((n%10 == 1) && (n%100 != 11) && (n%100 !=71) && (n%100 !=91) ? 0 :(n%10 == 2) && (n%100 != 12) && (n%100 !=72) && (n%100 !=92) ? 1 :(n%10 ==3 || n%10==4 || n%10==9) && (n%100 < 10 || n% 100 > 19) && (n%100 < 70 || n%100 > 79) && (n%100 < 90 || n%100 > 99) ? 2 :(n != 0 && n % 1000000 == 0) ? 3 : 4);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Breton (https://www.transifex.com/nextcloud/teams/64236/br/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: br\\nPlural-Forms: nplurals=5; plural=((n%10 == 1) && (n%100 != 11) && (n%100 !=71) && (n%100 !=91) ? 0 :(n%10 == 2) && (n%100 != 12) && (n%100 !=72) && (n%100 !=92) ? 1 :(n%10 ==3 || n%10==4 || n%10==9) && (n%100 < 10 || n% 100 > 19) && (n%100 < 70 || n%100 > 79) && (n%100 < 90 || n%100 > 99) ? 2 :(n != 0 && n % 1000000 == 0) ? 3 : 4);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"bs\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Bosnian (https://www.transifex.com/nextcloud/teams/64236/bs/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"bs\", \"Plural-Forms\": \"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Bosnian (https://www.transifex.com/nextcloud/teams/64236/bs/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: bs\\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ca\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Toni Hermoso Pulido , 2022\", \"Language-Team\": \"Catalan (https://www.transifex.com/nextcloud/teams/64236/ca/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ca\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nMarc Riera , 2022\\nToni Hermoso Pulido , 2022\\n\" }, \"msgstr\": [\"Last-Translator: Toni Hermoso Pulido , 2022\\nLanguage-Team: Catalan (https://www.transifex.com/nextcloud/teams/64236/ca/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ca\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"Queden {seconds} segons\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"Queden {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"Queden uns segons\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Afegeix\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Cancel·la les pujades\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"S'està estimant el temps restant\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"En pausa\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Puja els fitxers\"] } } } } }, { \"locale\": \"cs\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Pavel Borecki , 2022\", \"Language-Team\": \"Czech (https://www.transifex.com/nextcloud/teams/64236/cs/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"cs\", \"Plural-Forms\": \"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nPavel Borecki , 2022\\n\" }, \"msgstr\": [\"Last-Translator: Pavel Borecki , 2022\\nLanguage-Team: Czech (https://www.transifex.com/nextcloud/teams/64236/cs/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: cs\\nPlural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"zbývá {seconds}\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"zbývá {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"zbývá několik sekund\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Přidat\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Zrušit nahrávání\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"odhadovaný zbývající čas\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pozastaveno\"] } } } } }, { \"locale\": \"cs_CZ\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Michal Šmahel , 2024\", \"Language-Team\": \"Czech (Czech Republic) (https://app.transifex.com/nextcloud/teams/64236/cs_CZ/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"cs_CZ\", \"Plural-Forms\": \"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nMichal Šmahel , 2024\\n\" }, \"msgstr\": [\"Last-Translator: Michal Šmahel , 2024\\nLanguage-Team: Czech (Czech Republic) (https://app.transifex.com/nextcloud/teams/64236/cs_CZ/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: cs_CZ\\nPlural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} kolize souborů\", \"{count} kolize souborů\", \"{count} kolizí souborů\", \"{count} kolize souborů\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} kolize souboru v {dirname}\", \"{count} kolize souboru v {dirname}\", \"{count} kolizí souborů v {dirname}\", \"{count} kolize souboru v {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"zbývá {seconds}\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"zbývá {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"zbývá několik sekund\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Zrušit\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Zrušit celou operaci\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Zrušit nahrávání\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Pokračovat\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"odhaduje se zbývající čas\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Existující verze\"] }, \"If you select both versions, the copied file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the copied file will have a number added to its name.\", \"msgstr\": [\"Pokud vyberete obě verze, zkopírovaný soubor bude mít k názvu přidáno číslo.\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Neznámé datum poslední úpravy\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nové\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Nová verze\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pozastaveno\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Náhled obrázku\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Označit všechny zaškrtávací kolonky\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Vybrat veškeré stávající soubory\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Vybrat veškeré nové soubory\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Přeskočit tento soubor\", \"Přeskočit {count} soubory\", \"Přeskočit {count} souborů\", \"Přeskočit {count} soubory\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Neznámá velikost\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"Nahrávání zrušeno\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Nahrát soubory\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Postup v nahrávání\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Po výběru příchozí složky budou rovněž přepsány všechny v ní obsažené konfliktní soubory\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Které soubory si přejete ponechat?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Aby bylo možné pokračovat, je třeba vybrat alespoň jednu verzi od každého souboru.\"] } } } } }, { \"locale\": \"cy_GB\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Welsh (United Kingdom) (https://www.transifex.com/nextcloud/teams/64236/cy_GB/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"cy_GB\", \"Plural-Forms\": \"nplurals=4; plural=(n==1) ? 0 : (n==2) ? 1 : (n != 8 && n != 11) ? 2 : 3;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Welsh (United Kingdom) (https://www.transifex.com/nextcloud/teams/64236/cy_GB/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: cy_GB\\nPlural-Forms: nplurals=4; plural=(n==1) ? 0 : (n==2) ? 1 : (n != 8 && n != 11) ? 2 : 3;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"da\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Martin Bonde , 2024\", \"Language-Team\": \"Danish (https://app.transifex.com/nextcloud/teams/64236/da/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"da\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nMartin Bonde , 2024\\n\" }, \"msgstr\": [\"Last-Translator: Martin Bonde , 2024\\nLanguage-Team: Danish (https://app.transifex.com/nextcloud/teams/64236/da/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: da\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} fil konflikt\", \"{count} filer i konflikt\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} fil konflikt i {dirname}\", \"{count} filer i konflikt i {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{sekunder} sekunder tilbage\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{tid} tilbage\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"et par sekunder tilbage\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Annuller\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Annuller hele handlingen\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Annuller uploads\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Fortsæt\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimering af resterende tid\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Eksisterende version\"] }, \"If you select both versions, the copied file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the copied file will have a number added to its name.\", \"msgstr\": [\"Hvis du vælger begge versioner vil den kopierede fil få et nummer tilføjet til sit navn.\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Sidste modifikationsdato ukendt\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Ny\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Ny version\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pauset\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Forhåndsvisning af billede\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Vælg alle felter\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Vælg alle eksisterende filer\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Vælg alle nye filer\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Spring denne fil over\", \"Spring {count} filer over\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Ukendt størrelse\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"Upload annulleret\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Upload filer\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Upload fremskridt\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Når en indgående mappe er valgt, vil alle modstridende filer i den også blive overskrevet.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Hvilke filer ønsker du at beholde?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Du skal vælge mindst én version af hver fil for at fortsætte.\"] } } } } }, { \"locale\": \"de\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Mario Siegmann , 2024\", \"Language-Team\": \"German (https://app.transifex.com/nextcloud/teams/64236/de/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"de\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nMario Siegmann , 2024\\n\" }, \"msgstr\": [\"Last-Translator: Mario Siegmann , 2024\\nLanguage-Team: German (https://app.transifex.com/nextcloud/teams/64236/de/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: de\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} Datei-Konflikt\", \"{count} Datei-Konflikte\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} Datei-Konflikt in {dirname}\", \"{count} Datei-Konflikte in {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} Sekunden verbleibend\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} verbleibend\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"noch ein paar Sekunden\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Abbrechen\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Den gesamten Vorgang abbrechen\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Hochladen abbrechen\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Fortsetzen\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"Geschätzte verbleibende Zeit\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Vorhandene Version\"] }, \"If you select both versions, the copied file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the copied file will have a number added to its name.\", \"msgstr\": [\"Wenn du beide Versionen auswählst, wird der kopierten Datei eine Nummer zum Namen hinzugefügt.\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Datum der letzten Änderung unbekannt\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Neu\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Neue Version\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"Pausiert\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Vorschaubild\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Alle Kontrollkästchen aktivieren\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Alle vorhandenen Dateien auswählen\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Alle neuen Dateien auswählen\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Diese Datei überspringen\", \"{count} Dateien überspringen\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Unbekannte Größe\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"Hochladen abgebrochen\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Dateien hochladen\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Fortschritt beim Hochladen\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Wenn ein eingehender Ordner ausgewählt wird, werden alle darin enthaltenen Konfliktdateien ebenfalls überschrieben.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Welche Dateien möchtest du behalten?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Du musst mindestens eine Version jeder Datei auswählen, um fortzufahren.\"] } } } } }, { \"locale\": \"de_DE\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Mario Siegmann , 2024\", \"Language-Team\": \"German (Germany) (https://app.transifex.com/nextcloud/teams/64236/de_DE/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"de_DE\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nMario Siegmann , 2024\\n\" }, \"msgstr\": [\"Last-Translator: Mario Siegmann , 2024\\nLanguage-Team: German (Germany) (https://app.transifex.com/nextcloud/teams/64236/de_DE/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: de_DE\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{filename}\" contains invalid characters, how do you want to continue?': { \"msgid\": '\"{filename}\" contains invalid characters, how do you want to continue?', \"msgstr\": ['\"{filename}\" enthält ungültige Zeichen. Wie möchten Sie fortfahren?'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} Datei-Konflikt\", \"{count} Datei-Konflikte\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} Datei-Konflikt in {dirname}\", \"{count} Datei-Konflikte in {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} Sekunden verbleiben\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} verbleibend\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"ein paar Sekunden verbleiben\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Abbrechen\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Den gesamten Vorgang abbrechen\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Hochladen abbrechen\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Fortsetzen\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Neu erstellen\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"Geschätzte verbleibende Zeit\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Vorhandene Version\"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Wenn Sie beide Versionen auswählen, wird der eingehenden Datei eine Nummer zum Namen hinzugefügt.\"] }, \"Invalid file name\": { \"msgid\": \"Invalid file name\", \"msgstr\": [\"Ungültiger Dateiname\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Datum der letzten Änderung unbekannt\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Neu\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Neue Version\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"Pausiert\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Vorschaubild\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Umbenennen\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Alle Kontrollkästchen aktivieren\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Alle vorhandenen Dateien auswählen\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Alle neuen Dateien auswählen\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Überspringen\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"{count} Datei überspringen\", \"{count} Dateien überspringen\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Unbekannte Größe\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Dateien hochladen\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Ordner hochladen\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Vom Gerät hochladen\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Das Hochladen wurde abgebrochen\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Fortschritt beim Hochladen\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Wenn ein eingehender Ordner ausgewählt wird, werden alle darin enthaltenen Konfliktdateien ebenfalls überschrieben.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Bei Auswahl eines eingehenden Ordners wird der Inhalt in den vorhandenen Ordner geschrieben und eine rekursive Konfliktlösung durchgeführt.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Welche Dateien möchten Sie behalten?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Sie müssen mindestens eine Version jeder Datei auswählen, um fortzufahren.\"] } } } } }, { \"locale\": \"el\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Nik Pap, 2022\", \"Language-Team\": \"Greek (https://www.transifex.com/nextcloud/teams/64236/el/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"el\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nNik Pap, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Nik Pap, 2022\\nLanguage-Team: Greek (https://www.transifex.com/nextcloud/teams/64236/el/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: el\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"απομένουν {seconds} δευτερόλεπτα\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"απομένουν {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"απομένουν λίγα δευτερόλεπτα\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Προσθήκη\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Ακύρωση μεταφορτώσεων\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"εκτίμηση του χρόνου που απομένει\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"σε παύση\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Μεταφόρτωση αρχείων\"] } } } } }, { \"locale\": \"el_GR\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Greek (Greece) (https://www.transifex.com/nextcloud/teams/64236/el_GR/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"el_GR\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Greek (Greece) (https://www.transifex.com/nextcloud/teams/64236/el_GR/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: el_GR\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"en_GB\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Andi Chandler , 2024\", \"Language-Team\": \"English (United Kingdom) (https://app.transifex.com/nextcloud/teams/64236/en_GB/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"en_GB\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nAndi Chandler , 2024\\n\" }, \"msgstr\": [\"Last-Translator: Andi Chandler , 2024\\nLanguage-Team: English (United Kingdom) (https://app.transifex.com/nextcloud/teams/64236/en_GB/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: en_GB\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} file conflict\", \"{count} files conflict\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} file conflict in {dirname}\", \"{count} file conflicts in {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} seconds left\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} left\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"a few seconds left\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Cancel\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Cancel the entire operation\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Cancel uploads\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Continue\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimating time left\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Existing version\"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"If you select both versions, the incoming file will have a number added to its name.\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Last modified date unknown\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"New\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"New version\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"paused\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Preview image\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Select all checkboxes\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Select all existing files\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Select all new files\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Skip this file\", \"Skip {count} files\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Unknown size\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"Upload cancelled\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Upload files\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Upload progress\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"When an incoming folder is selected, any conflicting files within it will also be overwritten.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Which files do you want to keep?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"You need to select at least one version of each file to continue.\"] } } } } }, { \"locale\": \"eo\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Esperanto (https://www.transifex.com/nextcloud/teams/64236/eo/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"eo\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Esperanto (https://www.transifex.com/nextcloud/teams/64236/eo/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: eo\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Julio C. Ortega, 2024\", \"Language-Team\": \"Spanish (https://app.transifex.com/nextcloud/teams/64236/es/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nFranciscoFJ , 2024\\nJulio C. Ortega, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Julio C. Ortega, 2024\\nLanguage-Team: Spanish (https://app.transifex.com/nextcloud/teams/64236/es/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, '\"{filename}\" contains invalid characters, how do you want to continue?': { \"msgid\": '\"{filename}\" contains invalid characters, how do you want to continue?', \"msgstr\": ['\"{filename}\" contiene caracteres inválidos, ¿cómo desea continuar?'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} conflicto de archivo\", \"{count} conflictos de archivo\", \"{count} conflictos de archivo\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} conflicto de archivo en {dirname}\", \"{count} conflictos de archivo en {dirname}\", \"{count} conflictos de archivo en {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} segundos restantes\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} restante\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"quedan unos segundos\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Cancelar\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Cancelar toda la operación\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Cancelar subidas\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Continuar\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Crear nuevo\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimando tiempo restante\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Versión existente\"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Si selecciona ambas versionas, el archivo entrante le será agregado un número a su nombre.\"] }, \"Invalid file name\": { \"msgid\": \"Invalid file name\", \"msgstr\": [\"Nombre de archivo inválido\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Última fecha de modificación desconocida\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nuevo\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Nueva versión\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pausado\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Previsualizar imagen\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Renombrar\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Seleccionar todas las casillas de verificación\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Seleccionar todos los archivos existentes\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Seleccionar todos los archivos nuevos\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Saltar\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Saltar este archivo\", \"Saltar {count} archivos\", \"Saltar {count} archivos\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Tamaño desconocido\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Subir archivos\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Subir carpetas\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Subir desde dispositivo\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"La subida ha sido cancelada\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Progreso de la subida\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Cuando una carpeta entrante es seleccionada, cualquier de los archivos en conflictos también serán sobre-escritos.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Cuando una carpeta entrante es seleccionada, el contenido es escrito en la carpeta existente y se realizará una resolución de conflictos recursiva.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"¿Qué archivos desea conservar?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Debe seleccionar al menos una versión de cada archivo para continuar.\"] } } } } }, { \"locale\": \"es_419\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"ALEJANDRO CASTRO, 2022\", \"Language-Team\": \"Spanish (Latin America) (https://www.transifex.com/nextcloud/teams/64236/es_419/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_419\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nALEJANDRO CASTRO, 2022\\n\" }, \"msgstr\": [\"Last-Translator: ALEJANDRO CASTRO, 2022\\nLanguage-Team: Spanish (Latin America) (https://www.transifex.com/nextcloud/teams/64236/es_419/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_419\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} segundos restantes\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"{tiempo} restante\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"quedan pocos segundos\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"agregar\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Cancelar subidas\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimando tiempo restante\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pausado\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Subir archivos\"] } } } } }, { \"locale\": \"es_AR\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Matias Iglesias, 2022\", \"Language-Team\": \"Spanish (Argentina) (https://www.transifex.com/nextcloud/teams/64236/es_AR/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_AR\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nMatias Iglesias, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Matias Iglesias, 2022\\nLanguage-Team: Spanish (Argentina) (https://www.transifex.com/nextcloud/teams/64236/es_AR/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_AR\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} segundos restantes\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"{time} restante\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"quedan unos segundos\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Añadir\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Cancelar subidas\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimando tiempo restante\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pausado\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Subir archivos\"] } } } } }, { \"locale\": \"es_CL\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Chile) (https://www.transifex.com/nextcloud/teams/64236/es_CL/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_CL\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Chile) (https://www.transifex.com/nextcloud/teams/64236/es_CL/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_CL\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_CO\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Colombia) (https://www.transifex.com/nextcloud/teams/64236/es_CO/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_CO\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Colombia) (https://www.transifex.com/nextcloud/teams/64236/es_CO/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_CO\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_CR\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Costa Rica) (https://www.transifex.com/nextcloud/teams/64236/es_CR/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_CR\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Costa Rica) (https://www.transifex.com/nextcloud/teams/64236/es_CR/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_CR\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_DO\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Dominican Republic) (https://www.transifex.com/nextcloud/teams/64236/es_DO/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_DO\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Dominican Republic) (https://www.transifex.com/nextcloud/teams/64236/es_DO/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_DO\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_EC\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Ecuador) (https://www.transifex.com/nextcloud/teams/64236/es_EC/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_EC\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Ecuador) (https://www.transifex.com/nextcloud/teams/64236/es_EC/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_EC\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_GT\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Guatemala) (https://www.transifex.com/nextcloud/teams/64236/es_GT/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_GT\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Guatemala) (https://www.transifex.com/nextcloud/teams/64236/es_GT/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_GT\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_HN\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Honduras) (https://www.transifex.com/nextcloud/teams/64236/es_HN/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_HN\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Honduras) (https://www.transifex.com/nextcloud/teams/64236/es_HN/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_HN\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_MX\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"ALEJANDRO CASTRO, 2022\", \"Language-Team\": \"Spanish (Mexico) (https://www.transifex.com/nextcloud/teams/64236/es_MX/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_MX\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nLuis Francisco Castro, 2022\\nALEJANDRO CASTRO, 2022\\n\" }, \"msgstr\": [\"Last-Translator: ALEJANDRO CASTRO, 2022\\nLanguage-Team: Spanish (Mexico) (https://www.transifex.com/nextcloud/teams/64236/es_MX/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_MX\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} segundos restantes\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"{tiempo} restante\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"quedan pocos segundos\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"agregar\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"cancelar las cargas\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimando tiempo restante\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"en pausa\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"cargar archivos\"] } } } } }, { \"locale\": \"es_NI\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Nicaragua) (https://www.transifex.com/nextcloud/teams/64236/es_NI/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_NI\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Nicaragua) (https://www.transifex.com/nextcloud/teams/64236/es_NI/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_NI\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_PA\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Panama) (https://www.transifex.com/nextcloud/teams/64236/es_PA/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_PA\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Panama) (https://www.transifex.com/nextcloud/teams/64236/es_PA/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_PA\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_PE\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Peru) (https://www.transifex.com/nextcloud/teams/64236/es_PE/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_PE\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Peru) (https://www.transifex.com/nextcloud/teams/64236/es_PE/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_PE\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_PR\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Puerto Rico) (https://www.transifex.com/nextcloud/teams/64236/es_PR/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_PR\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Puerto Rico) (https://www.transifex.com/nextcloud/teams/64236/es_PR/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_PR\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_PY\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Paraguay) (https://www.transifex.com/nextcloud/teams/64236/es_PY/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_PY\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Paraguay) (https://www.transifex.com/nextcloud/teams/64236/es_PY/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_PY\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_SV\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (El Salvador) (https://www.transifex.com/nextcloud/teams/64236/es_SV/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_SV\", \"Plural-Forms\": \"nplurals=2; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (El Salvador) (https://www.transifex.com/nextcloud/teams/64236/es_SV/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_SV\\nPlural-Forms: nplurals=2; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_UY\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Uruguay) (https://www.transifex.com/nextcloud/teams/64236/es_UY/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_UY\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Uruguay) (https://www.transifex.com/nextcloud/teams/64236/es_UY/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_UY\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"et_EE\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Taavo Roos, 2023\", \"Language-Team\": \"Estonian (Estonia) (https://app.transifex.com/nextcloud/teams/64236/et_EE/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"et_EE\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nMait R, 2022\\nTaavo Roos, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Taavo Roos, 2023\\nLanguage-Team: Estonian (Estonia) (https://app.transifex.com/nextcloud/teams/64236/et_EE/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: et_EE\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} jäänud sekundid\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"{time} aega jäänud\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"jäänud mõni sekund\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Lisa\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Tühista üleslaadimine\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"hinnanguline järelejäänud aeg\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pausil\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Lae failid üles\"] } } } } }, { \"locale\": \"eu\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Unai Tolosa Pontesta , 2022\", \"Language-Team\": \"Basque (https://www.transifex.com/nextcloud/teams/64236/eu/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"eu\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nUnai Tolosa Pontesta , 2022\\n\" }, \"msgstr\": [\"Last-Translator: Unai Tolosa Pontesta , 2022\\nLanguage-Team: Basque (https://www.transifex.com/nextcloud/teams/64236/eu/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: eu\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} segundo geratzen dira\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"{time} geratzen da\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"segundo batzuk geratzen dira\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Gehitu\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Ezeztatu igoerak\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"kalkulatutako geratzen den denbora\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"geldituta\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Igo fitxategiak\"] } } } } }, { \"locale\": \"fa\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Fatemeh Komeily, 2023\", \"Language-Team\": \"Persian (https://app.transifex.com/nextcloud/teams/64236/fa/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"fa\", \"Plural-Forms\": \"nplurals=2; plural=(n > 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nFatemeh Komeily, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Fatemeh Komeily, 2023\\nLanguage-Team: Persian (https://app.transifex.com/nextcloud/teams/64236/fa/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: fa\\nPlural-Forms: nplurals=2; plural=(n > 1);\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"ثانیه های باقی مانده\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"باقی مانده\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"چند ثانیه مانده\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"اضافه کردن\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"کنسل کردن فایل های اپلود شده\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"تخمین زمان باقی مانده\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"مکث کردن\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"بارگذاری فایل ها\"] } } } } }, { \"locale\": \"fi_FI\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Jiri Grönroos , 2022\", \"Language-Team\": \"Finnish (Finland) (https://www.transifex.com/nextcloud/teams/64236/fi_FI/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"fi_FI\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJiri Grönroos , 2022\\n\" }, \"msgstr\": [\"Last-Translator: Jiri Grönroos , 2022\\nLanguage-Team: Finnish (Finland) (https://www.transifex.com/nextcloud/teams/64236/fi_FI/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: fi_FI\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} sekuntia jäljellä\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"{time} jäljellä\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"muutama sekunti jäljellä\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Lisää\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Peruuta lähetykset\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"arvioidaan jäljellä olevaa aikaa\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"keskeytetty\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Lähetä tiedostoja\"] } } } } }, { \"locale\": \"fo\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Faroese (https://www.transifex.com/nextcloud/teams/64236/fo/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"fo\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Faroese (https://www.transifex.com/nextcloud/teams/64236/fo/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: fo\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"fr\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"jed boulahya, 2024\", \"Language-Team\": \"French (https://app.transifex.com/nextcloud/teams/64236/fr/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"fr\", \"Plural-Forms\": \"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nBenoit Pruneau, 2024\\njed boulahya, 2024\\n\" }, \"msgstr\": [\"Last-Translator: jed boulahya, 2024\\nLanguage-Team: French (https://app.transifex.com/nextcloud/teams/64236/fr/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: fr\\nPlural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} fichier en conflit\", \"{count} fichiers en conflit\", \"{count} fichiers en conflit\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} fichier en conflit dans {dirname}\", \"{count} fichiers en conflit dans {dirname}\", \"{count} fichiers en conflit dans {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} secondes restantes\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} restant\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"quelques secondes restantes\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Annuler\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Annuler l'opération entière\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Annuler les envois\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Continuer\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimation du temps restant\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Version existante\"] }, \"If you select both versions, the copied file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the copied file will have a number added to its name.\", \"msgstr\": [\"Si vous sélectionnez les deux versions, le fichier copié aura un numéro ajouté àname.\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Date de la dernière modification est inconnue\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nouveau\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Nouvelle version\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"en pause\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Aperçu de l'image\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Sélectionner toutes les cases à cocher\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Sélectionner tous les fichiers existants\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Sélectionner tous les nouveaux fichiers\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Ignorer ce fichier\", \"Ignorer {count} fichiers\", \"Ignorer {count} fichiers\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Taille inconnue\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\" annulé\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Téléchargement des fichiers\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Progression du téléchargement\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Lorsqu'un dossier entrant est sélectionné, tous les fichiers en conflit qu'il contient seront également écrasés.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Quels fichiers souhaitez-vous conserver ?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Vous devez sélectionner au moins une version de chaque fichier pour continuer.\"] } } } } }, { \"locale\": \"ga\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Aindriú Mac Giolla Eoin, 2024\", \"Language-Team\": \"Irish (https://app.transifex.com/nextcloud/teams/64236/ga/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ga\", \"Plural-Forms\": \"nplurals=5; plural=(n==1 ? 0 : n==2 ? 1 : n<7 ? 2 : n<11 ? 3 : 4);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nAindriú Mac Giolla Eoin, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Aindriú Mac Giolla Eoin, 2024\\nLanguage-Team: Irish (https://app.transifex.com/nextcloud/teams/64236/ga/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ga\\nPlural-Forms: nplurals=5; plural=(n==1 ? 0 : n==2 ? 1 : n<7 ? 2 : n<11 ? 3 : 4);\\n\"] }, '\"{filename}\" contains invalid characters, how do you want to continue?': { \"msgid\": '\"{filename}\" contains invalid characters, how do you want to continue?', \"msgstr\": ['Tá carachtair neamhbhailí in \"{filename}\", conas ba mhaith leat leanúint ar aghaidh?'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} coimhlint comhaid\", \"coimhlint comhaid {count}\", \"coimhlint comhaid {count}\", \"coimhlint comhaid {count}\", \"coimhlint comhaid {count}\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} coimhlint comhaid i {dirname}\", \"{count} coimhlint comhaid i {dirname}\", \"{count} coimhlint comhaid i {dirname}\", \"{count} coimhlint comhaid i {dirname}\", \"{count} coimhlint comhaid i {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{soicind} fágtha\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{am} fágtha\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"cúpla soicind fágtha\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Cealaigh\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Cealaigh an oibríocht iomlán\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Cealaigh uaslódálacha\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Leanúint ar aghaidh\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Cruthaigh nua\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"ag déanamh meastachán ar an am atá fágtha\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Leagan láithreach \"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Má roghnaíonn tú an dá leagan, cuirfear uimhir leis an ainm a thagann isteach.\"] }, \"Invalid file name\": { \"msgid\": \"Invalid file name\", \"msgstr\": [\"Ainm comhaid neamhbhailí\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Dáta modhnaithe is déanaí anaithnid\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nua\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Leagan nua\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"sos\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Íomhá réamhamharc\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Athainmnigh\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Roghnaigh gach ticbhosca\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Roghnaigh gach comhad atá ann cheana féin\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Roghnaigh gach comhad nua\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Scipeáil\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Léim an comhad seo\", \"Léim ar {count} comhad\", \"Léim ar {count} comhad\", \"Léim ar {count} comhad\", \"Léim ar {count} comhad\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Méid anaithnid\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Uaslódáil comhaid\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Uaslódáil fillteáin\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Íosluchtaigh ó gléas\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Cuireadh an t-uaslódáil ar ceal\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Uaslódáil dul chun cinn\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Nuair a roghnaítear fillteán isteach, déanfar aon chomhad contrártha laistigh de a fhorscríobh freisin.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Nuair a roghnaítear fillteán isteach, scríobhtar an t-ábhar isteach san fhillteán atá ann cheana agus déantar réiteach coinbhleachta athchúrsach.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Cé na comhaid ar mhaith leat a choinneáil?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Ní mór duit leagan amháin ar a laghad de gach comhad a roghnú chun leanúint ar aghaidh.\"] } } } } }, { \"locale\": \"gd\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Gaelic, Scottish (https://www.transifex.com/nextcloud/teams/64236/gd/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"gd\", \"Plural-Forms\": \"nplurals=4; plural=(n==1 || n==11) ? 0 : (n==2 || n==12) ? 1 : (n > 2 && n < 20) ? 2 : 3;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Gaelic, Scottish (https://www.transifex.com/nextcloud/teams/64236/gd/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: gd\\nPlural-Forms: nplurals=4; plural=(n==1 || n==11) ? 0 : (n==2 || n==12) ? 1 : (n > 2 && n < 20) ? 2 : 3;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"gl\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Miguel Anxo Bouzada , 2024\", \"Language-Team\": \"Galician (https://app.transifex.com/nextcloud/teams/64236/gl/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"gl\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nMiguel Anxo Bouzada , 2024\\n\" }, \"msgstr\": [\"Last-Translator: Miguel Anxo Bouzada , 2024\\nLanguage-Team: Galician (https://app.transifex.com/nextcloud/teams/64236/gl/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: gl\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{filename}\" contains invalid characters, how do you want to continue?': { \"msgid\": '\"{filename}\" contains invalid characters, how do you want to continue?', \"msgstr\": [\"«{filename}» contén caracteres non válidos, como quere continuar?\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} conflito de ficheiros\", \"{count} conflitos de ficheiros\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} conflito de ficheiros en {dirname}\", \"{count} conflitos de ficheiros en {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"faltan {seconds} segundos\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"falta {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"faltan uns segundos\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Cancelar\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Cancela toda a operación\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Cancelar envíos\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Continuar\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Crear un novo\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"calculando canto tempo falta\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Versión existente\"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Se selecciona ambas as versións, o ficheiro entrante terá un número engadido ao seu nome.\"] }, \"Invalid file name\": { \"msgid\": \"Invalid file name\", \"msgstr\": [\"O nome de ficheiro non é válido\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Data da última modificación descoñecida\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nova\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Nova versión\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"detido\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Vista previa da imaxe\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Renomear\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Marcar todas as caixas de selección\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Seleccionar todos os ficheiros existentes\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Seleccionar todos os ficheiros novos\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Omitir\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Omita este ficheiro\", \"Omitir {count} ficheiros\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Tamaño descoñecido\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Enviar ficheiros\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Enviar cartafoles\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Enviar dende o dispositivo\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"O envío foi cancelado\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Progreso do envío\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Cando se selecciona un cartafol entrante, tamén se sobrescribirán os ficheiros en conflito dentro del.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Cando se selecciona un cartafol entrante, o contido escríbese no cartafol existente e lévase a cabo unha resolución recursiva de conflitos.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Que ficheiros quere conservar?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Debe seleccionar polo menos unha versión de cada ficheiro para continuar.\"] } } } } }, { \"locale\": \"he\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Hebrew (https://www.transifex.com/nextcloud/teams/64236/he/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"he\", \"Plural-Forms\": \"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n == 2 && n % 1 == 0) ? 1: (n % 10 == 0 && n % 1 == 0 && n > 10) ? 2 : 3;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Hebrew (https://www.transifex.com/nextcloud/teams/64236/he/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: he\\nPlural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n == 2 && n % 1 == 0) ? 1: (n % 10 == 0 && n % 1 == 0 && n > 10) ? 2 : 3;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"hi_IN\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Hindi (India) (https://www.transifex.com/nextcloud/teams/64236/hi_IN/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"hi_IN\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Hindi (India) (https://www.transifex.com/nextcloud/teams/64236/hi_IN/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: hi_IN\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"hr\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Croatian (https://www.transifex.com/nextcloud/teams/64236/hr/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"hr\", \"Plural-Forms\": \"nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Croatian (https://www.transifex.com/nextcloud/teams/64236/hr/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: hr\\nPlural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"hsb\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Upper Sorbian (https://www.transifex.com/nextcloud/teams/64236/hsb/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"hsb\", \"Plural-Forms\": \"nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Upper Sorbian (https://www.transifex.com/nextcloud/teams/64236/hsb/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: hsb\\nPlural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"hu\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Hungarian (https://www.transifex.com/nextcloud/teams/64236/hu/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"hu\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Hungarian (https://www.transifex.com/nextcloud/teams/64236/hu/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: hu\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"hu_HU\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Balázs Úr, 2022\", \"Language-Team\": \"Hungarian (Hungary) (https://www.transifex.com/nextcloud/teams/64236/hu_HU/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"hu_HU\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nBalázs Meskó , 2022\\nBalázs Úr, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Balázs Úr, 2022\\nLanguage-Team: Hungarian (Hungary) (https://www.transifex.com/nextcloud/teams/64236/hu_HU/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: hu_HU\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{} másodperc van hátra\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"{time} van hátra\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"pár másodperc van hátra\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Hozzáadás\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Feltöltések megszakítása\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"hátralévő idő becslése\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"szüneteltetve\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Fájlok feltöltése\"] } } } } }, { \"locale\": \"hy\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Armenian (https://www.transifex.com/nextcloud/teams/64236/hy/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"hy\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Armenian (https://www.transifex.com/nextcloud/teams/64236/hy/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: hy\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ia\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Interlingua (https://www.transifex.com/nextcloud/teams/64236/ia/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ia\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Interlingua (https://www.transifex.com/nextcloud/teams/64236/ia/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ia\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"id\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Linerly , 2023\", \"Language-Team\": \"Indonesian (https://app.transifex.com/nextcloud/teams/64236/id/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"id\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ , 2023\\nEmpty Slot Filler, 2023\\nLinerly , 2023\\n\" }, \"msgstr\": [\"Last-Translator: Linerly , 2023\\nLanguage-Team: Indonesian (https://app.transifex.com/nextcloud/teams/64236/id/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: id\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} berkas berkonflik\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} berkas berkonflik dalam {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} detik tersisa\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} tersisa\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"tinggal sebentar lagi\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Batalkan unggahan\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Lanjutkan\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"memperkirakan waktu yang tersisa\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Versi yang ada\"] }, \"If you select both versions, the copied file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the copied file will have a number added to its name.\", \"msgstr\": [\"Jika Anda memilih kedua versi, nama berkas yang disalin akan ditambahi angka.\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Tanggal perubahan terakhir tidak diketahui\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Baru\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Versi baru\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"dijeda\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Gambar pratinjau\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Pilih semua kotak centang\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Pilih semua berkas yang ada\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Pilih semua berkas baru\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Lewati {count} berkas\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Ukuran tidak diketahui\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"Unggahan dibatalkan\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Unggah berkas\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Berkas mana yang Anda ingin tetap simpan?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Anda harus memilih setidaknya satu versi dari masing-masing berkas untuk melanjutkan.\"] } } } } }, { \"locale\": \"ig\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Igbo (https://www.transifex.com/nextcloud/teams/64236/ig/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ig\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Igbo (https://www.transifex.com/nextcloud/teams/64236/ig/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ig\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"is\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Sveinn í Felli , 2023\", \"Language-Team\": \"Icelandic (https://app.transifex.com/nextcloud/teams/64236/is/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"is\", \"Plural-Forms\": \"nplurals=2; plural=(n % 10 != 1 || n % 100 == 11);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nSveinn í Felli , 2023\\n\" }, \"msgstr\": [\"Last-Translator: Sveinn í Felli , 2023\\nLanguage-Team: Icelandic (https://app.transifex.com/nextcloud/teams/64236/is/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: is\\nPlural-Forms: nplurals=2; plural=(n % 10 != 1 || n % 100 == 11);\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} árekstur skráa\", \"{count} árekstrar skráa\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} árekstur skráa í {dirname}\", \"{count} árekstrar skráa í {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} sekúndur eftir\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} eftir\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"nokkrar sekúndur eftir\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Hætta við innsendingar\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Halda áfram\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"áætla tíma sem eftir er\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Fyrirliggjandi útgáfa\"] }, \"If you select both versions, the copied file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the copied file will have a number added to its name.\", \"msgstr\": [\"Ef þú velur báðar útgáfur, þá mun verða bætt tölustaf aftan við heiti afrituðu skrárinnar.\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Síðasta breytingadagsetning er óþekkt\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nýtt\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Ný útgáfa\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"í bið\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Forskoðun myndar\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Velja gátreiti\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Velja allar fyrirliggjandi skrár\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Velja allar nýjar skrár\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Sleppa þessari skrá\", \"Sleppa {count} skrám\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Óþekkt stærð\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"Hætt við innsendingu\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Senda inn skrár\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Hvaða skrám vilt þú vilt halda eftir?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Þú verður að velja að minnsta kosti eina útgáfu af hverri skrá til að halda áfram.\"] } } } } }, { \"locale\": \"it\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Random_R, 2023\", \"Language-Team\": \"Italian (https://app.transifex.com/nextcloud/teams/64236/it/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"it\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ , 2023\\nLep Lep, 2023\\nRandom_R, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Random_R, 2023\\nLanguage-Team: Italian (https://app.transifex.com/nextcloud/teams/64236/it/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: it\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} file in conflitto\", \"{count} file in conflitto\", \"{count} file in conflitto\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} file in conflitto in {dirname}\", \"{count} file in conflitto in {dirname}\", \"{count} file in conflitto in {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} secondi rimanenti \"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} rimanente\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"alcuni secondi rimanenti\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Annulla i caricamenti\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Continua\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"calcolo il tempo rimanente\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Versione esistente\"] }, \"If you select both versions, the copied file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the copied file will have a number added to its name.\", \"msgstr\": [\"Se selezioni entrambe le versioni, nel nome del file copiato verrà aggiunto un numero \"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Ultima modifica sconosciuta\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nuovo\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Nuova versione\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pausa\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Anteprima immagine\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Seleziona tutte le caselle\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Seleziona tutti i file esistenti\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Seleziona tutti i nuovi file\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Salta questo file\", \"Salta {count} file\", \"Salta {count} file\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Dimensione sconosciuta\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"Caricamento cancellato\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Carica i file\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Quali file vuoi mantenere?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Devi selezionare almeno una versione di ogni file per continuare\"] } } } } }, { \"locale\": \"it_IT\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Italian (Italy) (https://www.transifex.com/nextcloud/teams/64236/it_IT/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"it_IT\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Italian (Italy) (https://www.transifex.com/nextcloud/teams/64236/it_IT/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: it_IT\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ja_JP\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"かたかめ, 2022\", \"Language-Team\": \"Japanese (Japan) (https://www.transifex.com/nextcloud/teams/64236/ja_JP/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ja_JP\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nT.S, 2022\\nかたかめ, 2022\\n\" }, \"msgstr\": [\"Last-Translator: かたかめ, 2022\\nLanguage-Team: Japanese (Japan) (https://www.transifex.com/nextcloud/teams/64236/ja_JP/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ja_JP\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"残り {seconds} 秒\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"残り {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"残り数秒\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"追加\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"アップロードをキャンセル\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"概算残り時間\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"一時停止中\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"ファイルをアップデート\"] } } } } }, { \"locale\": \"ka\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Georgian (https://www.transifex.com/nextcloud/teams/64236/ka/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ka\", \"Plural-Forms\": \"nplurals=2; plural=(n!=1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Georgian (https://www.transifex.com/nextcloud/teams/64236/ka/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ka\\nPlural-Forms: nplurals=2; plural=(n!=1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ka_GE\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Georgian (Georgia) (https://www.transifex.com/nextcloud/teams/64236/ka_GE/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ka_GE\", \"Plural-Forms\": \"nplurals=2; plural=(n!=1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Georgian (Georgia) (https://www.transifex.com/nextcloud/teams/64236/ka_GE/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ka_GE\\nPlural-Forms: nplurals=2; plural=(n!=1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"kab\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"ZiriSut, 2023\", \"Language-Team\": \"Kabyle (https://app.transifex.com/nextcloud/teams/64236/kab/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"kab\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nZiriSut, 2023\\n\" }, \"msgstr\": [\"Last-Translator: ZiriSut, 2023\\nLanguage-Team: Kabyle (https://app.transifex.com/nextcloud/teams/64236/kab/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: kab\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} tesdatin i d-yeqqimen\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"{time} i d-yeqqimen\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"qqiment-d kra n tesdatin kan\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Rnu\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Sefsex asali\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"asizel n wakud i d-yeqqimen\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"yeḥbes\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Sali-d ifuyla\"] } } } } }, { \"locale\": \"kk\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Kazakh (https://www.transifex.com/nextcloud/teams/64236/kk/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"kk\", \"Plural-Forms\": \"nplurals=2; plural=(n!=1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Kazakh (https://www.transifex.com/nextcloud/teams/64236/kk/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: kk\\nPlural-Forms: nplurals=2; plural=(n!=1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"km\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Khmer (https://www.transifex.com/nextcloud/teams/64236/km/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"km\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Khmer (https://www.transifex.com/nextcloud/teams/64236/km/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: km\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"kn\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Kannada (https://www.transifex.com/nextcloud/teams/64236/kn/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"kn\", \"Plural-Forms\": \"nplurals=2; plural=(n > 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Kannada (https://www.transifex.com/nextcloud/teams/64236/kn/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: kn\\nPlural-Forms: nplurals=2; plural=(n > 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ko\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"이상오, 2024\", \"Language-Team\": \"Korean (https://app.transifex.com/nextcloud/teams/64236/ko/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ko\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\n이상오, 2024\\n\" }, \"msgstr\": [\"Last-Translator: 이상오, 2024\\nLanguage-Team: Korean (https://app.transifex.com/nextcloud/teams/64236/ko/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ko\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, '\"{filename}\" contains invalid characters, how do you want to continue?': { \"msgid\": '\"{filename}\" contains invalid characters, how do you want to continue?', \"msgstr\": ['\"{filename}\"에 유효하지 않은 문자가 있습니다, 계속하시겠습니까?'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count}개의 파일이 충돌함\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{dirname}에서 {count}개의 파일이 충돌함\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds}초 남음\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} 남음\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"곧 완료\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"취소\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"전체 작업을 취소\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"업로드 취소\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"확인\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"새로 만들기\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"남은 시간 계산\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"현재 버전\"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"두 파일을 모두 선택하면, 들어오는 파일의 이름에 번호가 추가됩니다.\"] }, \"Invalid file name\": { \"msgid\": \"Invalid file name\", \"msgstr\": [\"잘못된 파일 이름\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"최근 수정일 알 수 없음\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"새로 만들기\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"새 버전\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"일시정지됨\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"미리보기 이미지\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"이름 바꾸기\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"모든 체크박스 선택\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"기존 파일을 모두 선택\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"새로운 파일을 모두 선택\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"건너뛰기\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"{count}개의 파일 넘기기\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"크기를 알 수 없음\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"파일 업로드\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"폴더 업로드\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"장치에서 업로드\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"업로드가 취소되었습니다.\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"업로드 진행도\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"들어오는 폴더를 선택했다면, 충돌하는 내부 파일들은 덮어쓰기 됩니다.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"들어오는 폴더를 선택했다면 내용물이 그 기존 폴더 안에 작성되고, 전체적으로 충돌 해결을 수행합니다.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"어떤 파일을 보존하시겠습니까?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"계속하기 위해서는 한 파일에 최소 하나의 버전을 선택해야 합니다.\"] } } } } }, { \"locale\": \"la\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Latin (https://www.transifex.com/nextcloud/teams/64236/la/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"la\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Latin (https://www.transifex.com/nextcloud/teams/64236/la/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: la\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"lb\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Luxembourgish (https://www.transifex.com/nextcloud/teams/64236/lb/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"lb\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Luxembourgish (https://www.transifex.com/nextcloud/teams/64236/lb/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: lb\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"lo\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Lao (https://www.transifex.com/nextcloud/teams/64236/lo/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"lo\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Lao (https://www.transifex.com/nextcloud/teams/64236/lo/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: lo\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"lt_LT\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Lithuanian (Lithuania) (https://www.transifex.com/nextcloud/teams/64236/lt_LT/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"lt_LT\", \"Plural-Forms\": \"nplurals=4; plural=(n % 10 == 1 && (n % 100 > 19 || n % 100 < 11) ? 0 : (n % 10 >= 2 && n % 10 <=9) && (n % 100 > 19 || n % 100 < 11) ? 1 : n % 1 != 0 ? 2: 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Lithuanian (Lithuania) (https://www.transifex.com/nextcloud/teams/64236/lt_LT/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: lt_LT\\nPlural-Forms: nplurals=4; plural=(n % 10 == 1 && (n % 100 > 19 || n % 100 < 11) ? 0 : (n % 10 >= 2 && n % 10 <=9) && (n % 100 > 19 || n % 100 < 11) ? 1 : n % 1 != 0 ? 2: 3);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"lv\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Latvian (https://www.transifex.com/nextcloud/teams/64236/lv/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"lv\", \"Plural-Forms\": \"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Latvian (https://www.transifex.com/nextcloud/teams/64236/lv/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: lv\\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"mk\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Сашко Тодоров , 2022\", \"Language-Team\": \"Macedonian (https://www.transifex.com/nextcloud/teams/64236/mk/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"mk\", \"Plural-Forms\": \"nplurals=2; plural=(n % 10 == 1 && n % 100 != 11) ? 0 : 1;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nСашко Тодоров , 2022\\n\" }, \"msgstr\": [\"Last-Translator: Сашко Тодоров , 2022\\nLanguage-Team: Macedonian (https://www.transifex.com/nextcloud/teams/64236/mk/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: mk\\nPlural-Forms: nplurals=2; plural=(n % 10 == 1 && n % 100 != 11) ? 0 : 1;\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"преостануваат {seconds} секунди\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"преостанува {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"уште неколку секунди\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Додади\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Прекини прикачување\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"приближно преостанато време\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"паузирано\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Прикачување датотеки\"] } } } } }, { \"locale\": \"mn\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"BATKHUYAG Ganbold, 2023\", \"Language-Team\": \"Mongolian (https://app.transifex.com/nextcloud/teams/64236/mn/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"mn\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nBATKHUYAG Ganbold, 2023\\n\" }, \"msgstr\": [\"Last-Translator: BATKHUYAG Ganbold, 2023\\nLanguage-Team: Mongolian (https://app.transifex.com/nextcloud/teams/64236/mn/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: mn\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} секунд үлдсэн\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"{time} үлдсэн\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"хэдхэн секунд үлдсэн\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Нэмэх\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Илгээлтийг цуцлах\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"Үлдсэн хугацааг тооцоолж байна\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"түр зогсоосон\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Файл илгээх\"] } } } } }, { \"locale\": \"mr\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Marathi (https://www.transifex.com/nextcloud/teams/64236/mr/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"mr\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Marathi (https://www.transifex.com/nextcloud/teams/64236/mr/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: mr\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ms_MY\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Malay (Malaysia) (https://www.transifex.com/nextcloud/teams/64236/ms_MY/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ms_MY\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Malay (Malaysia) (https://www.transifex.com/nextcloud/teams/64236/ms_MY/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ms_MY\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"my\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Burmese (https://www.transifex.com/nextcloud/teams/64236/my/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"my\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Burmese (https://www.transifex.com/nextcloud/teams/64236/my/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: my\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"nb_NO\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Syvert Fossdal, 2024\", \"Language-Team\": \"Norwegian Bokmål (Norway) (https://app.transifex.com/nextcloud/teams/64236/nb_NO/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"nb_NO\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ , 2023\\nSyvert Fossdal, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Syvert Fossdal, 2024\\nLanguage-Team: Norwegian Bokmål (Norway) (https://app.transifex.com/nextcloud/teams/64236/nb_NO/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: nb_NO\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} file conflict\", \"{count} filkonflikter\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} file conflict in {dirname}\", \"{count} filkonflikter i {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} sekunder igjen\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} igjen\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"noen få sekunder igjen\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Avbryt opplastninger\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Fortsett\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"Estimerer tid igjen\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Gjeldende versjon\"] }, \"If you select both versions, the copied file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the copied file will have a number added to its name.\", \"msgstr\": [\"Hvis du velger begge versjoner, vil den kopierte filen få et tall lagt til navnet.\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Siste gang redigert ukjent\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Ny\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Ny versjon\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pauset\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Forhåndsvis bilde\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Velg alle\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Velg alle eksisterende filer\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Velg alle nye filer\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Skip this file\", \"Hopp over {count} filer\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Ukjent størrelse\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"Opplasting avbrutt\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Last opp filer\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Fremdrift, opplasting\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Hvilke filer vil du beholde?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Du må velge minst en versjon av hver fil for å fortsette.\"] } } } } }, { \"locale\": \"ne\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Nepali (https://www.transifex.com/nextcloud/teams/64236/ne/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ne\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Nepali (https://www.transifex.com/nextcloud/teams/64236/ne/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ne\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"nl\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Rico , 2023\", \"Language-Team\": \"Dutch (https://app.transifex.com/nextcloud/teams/64236/nl/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"nl\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nRico , 2023\\n\" }, \"msgstr\": [\"Last-Translator: Rico , 2023\\nLanguage-Team: Dutch (https://app.transifex.com/nextcloud/teams/64236/nl/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: nl\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"Nog {seconds} seconden\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"{seconds} over\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"Nog een paar seconden\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Voeg toe\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Uploads annuleren\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"Schatting van de resterende tijd\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"Gepauzeerd\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Upload bestanden\"] } } } } }, { \"locale\": \"nn\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Norwegian Nynorsk (https://www.transifex.com/nextcloud/teams/64236/nn/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"nn\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Norwegian Nynorsk (https://www.transifex.com/nextcloud/teams/64236/nn/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: nn\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"nn_NO\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Norwegian Nynorsk (Norway) (https://www.transifex.com/nextcloud/teams/64236/nn_NO/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"nn_NO\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Norwegian Nynorsk (Norway) (https://www.transifex.com/nextcloud/teams/64236/nn_NO/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: nn_NO\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"oc\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Occitan (post 1500) (https://www.transifex.com/nextcloud/teams/64236/oc/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"oc\", \"Plural-Forms\": \"nplurals=2; plural=(n > 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Occitan (post 1500) (https://www.transifex.com/nextcloud/teams/64236/oc/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: oc\\nPlural-Forms: nplurals=2; plural=(n > 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"pl\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Piotr Strębski , 2024\", \"Language-Team\": \"Polish (https://app.transifex.com/nextcloud/teams/64236/pl/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"pl\", \"Plural-Forms\": \"nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nPiotr Strębski , 2024\\n\" }, \"msgstr\": [\"Last-Translator: Piotr Strębski , 2024\\nLanguage-Team: Polish (https://app.transifex.com/nextcloud/teams/64236/pl/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: pl\\nPlural-Forms: nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"konflikt 1 pliku\", \"{count} konfliktów plików\", \"{count} konfliktów plików\", \"{count} konfliktów plików\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} konfliktowy plik w {dirname}\", \"{count} konfliktowych plików w {dirname}\", \"{count} konfliktowych plików w {dirname}\", \"{count} konfliktowych plików w {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"Pozostało {seconds} sekund\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"Pozostało {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"Pozostało kilka sekund\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Anuluj\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Anuluj całą operację\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Anuluj wysyłanie\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Kontynuuj\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"Szacowanie pozostałego czasu\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Istniejąca wersja\"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Jeśli wybierzesz obie wersje, do nazwy pliku przychodzącego zostanie dodany numer.\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Nieznana data ostatniej modyfikacji\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nowy\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Nowa wersja\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"Wstrzymane\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Podgląd obrazu\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Zaznacz wszystkie boxy\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Zaznacz wszystkie istniejące pliki\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Zaznacz wszystkie nowe pliki\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Pomiń 1 plik\", \"Pomiń {count} plików\", \"Pomiń {count} plików\", \"Pomiń {count} plików\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Nieznany rozmiar\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"Anulowano wysyłanie\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Wyślij pliki\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Postęp wysyłania\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Po wybraniu folderu przychodzącego wszelkie znajdujące się w nim pliki powodujące konflikt również zostaną nadpisane.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Po wybraniu folderu przychodzącego zawartość jest zapisywana w istniejącym folderze i przeprowadzane jest rekursywne rozwiązywanie konfliktów.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Które pliki chcesz zachować?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Aby kontynuować, musisz wybrać co najmniej jedną wersję każdego pliku.\"] } } } } }, { \"locale\": \"ps\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Pashto (https://www.transifex.com/nextcloud/teams/64236/ps/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ps\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Pashto (https://www.transifex.com/nextcloud/teams/64236/ps/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ps\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"pt_BR\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Leonardo Colman Lopes , 2024\", \"Language-Team\": \"Portuguese (Brazil) (https://app.transifex.com/nextcloud/teams/64236/pt_BR/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"pt_BR\", \"Plural-Forms\": \"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nLeonardo Colman Lopes , 2024\\n\" }, \"msgstr\": [\"Last-Translator: Leonardo Colman Lopes , 2024\\nLanguage-Team: Portuguese (Brazil) (https://app.transifex.com/nextcloud/teams/64236/pt_BR/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: pt_BR\\nPlural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} arquivos em conflito\", \"{count} arquivos em conflito\", \"{count} arquivos em conflito\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} conflitos de arquivo em {dirname}\", \"{count} conflitos de arquivo em {dirname}\", \"{count} conflitos de arquivo em {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} segundos restantes\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} restante\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"alguns segundos restantes\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Cancelar\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Cancelar a operação inteira\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Cancelar uploads\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Continuar\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimando tempo restante\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Versão existente\"] }, \"If you select both versions, the copied file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the copied file will have a number added to its name.\", \"msgstr\": [\"Se você selecionar ambas as versões, o arquivo copiado terá um número adicionado ao seu nome.\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Data da última modificação desconhecida\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Novo\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Nova versão\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pausado\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Visualizar imagem\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Marque todas as caixas de seleção\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Selecione todos os arquivos existentes\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Selecione todos os novos arquivos\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Ignorar {count} arquivos\", \"Ignorar {count} arquivos\", \"Ignorar {count} arquivos\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Tamanho desconhecido\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"Envio cancelado\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Enviar arquivos\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Envio em progresso\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Quando uma pasta é selecionada, quaisquer arquivos dentro dela também serão sobrescritos.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Quais arquivos você deseja manter?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Você precisa selecionar pelo menos uma versão de cada arquivo para continuar.\"] } } } } }, { \"locale\": \"pt_PT\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Manuela Silva , 2022\", \"Language-Team\": \"Portuguese (Portugal) (https://www.transifex.com/nextcloud/teams/64236/pt_PT/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"pt_PT\", \"Plural-Forms\": \"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nManuela Silva , 2022\\n\" }, \"msgstr\": [\"Last-Translator: Manuela Silva , 2022\\nLanguage-Team: Portuguese (Portugal) (https://www.transifex.com/nextcloud/teams/64236/pt_PT/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: pt_PT\\nPlural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"faltam {seconds} segundo(s)\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"faltam {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"faltam uns segundos\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Adicionar\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Cancelar envios\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"tempo em falta estimado\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pausado\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Enviar ficheiros\"] } } } } }, { \"locale\": \"ro\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Mădălin Vasiliu , 2022\", \"Language-Team\": \"Romanian (https://www.transifex.com/nextcloud/teams/64236/ro/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ro\", \"Plural-Forms\": \"nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?2:1));\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nMădălin Vasiliu , 2022\\n\" }, \"msgstr\": [\"Last-Translator: Mădălin Vasiliu , 2022\\nLanguage-Team: Romanian (https://www.transifex.com/nextcloud/teams/64236/ro/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ro\\nPlural-Forms: nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?2:1));\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} secunde rămase\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"{time} rămas\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"câteva secunde rămase\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Adaugă\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Anulați încărcările\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimarea timpului rămas\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pus pe pauză\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Încarcă fișiere\"] } } } } }, { \"locale\": \"ru\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Влад, 2024\", \"Language-Team\": \"Russian (https://app.transifex.com/nextcloud/teams/64236/ru/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ru\", \"Plural-Forms\": \"nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nAlex , 2024\\nВлад, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Влад, 2024\\nLanguage-Team: Russian (https://app.transifex.com/nextcloud/teams/64236/ru/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ru\\nPlural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\\n\"] }, '\"{filename}\" contains invalid characters, how do you want to continue?': { \"msgid\": '\"{filename}\" contains invalid characters, how do you want to continue?', \"msgstr\": ['\"{filename}\" содержит недопустимые символы, хотите продолжить?'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"конфликт {count} файла\", \"конфликт {count} файлов\", \"конфликт {count} файлов\", \"конфликт {count} файлов\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"конфликт {count} файла в {dirname}\", \"конфликт {count} файлов в {dirname}\", \"конфликт {count} файлов в {dirname}\", \"конфликт {count} файлов в {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"осталось {seconds} секунд\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"осталось {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"осталось несколько секунд\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Отмена\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Отменить всю операцию целиком\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Отменить загрузки\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Продолжить\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Создать новое\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"оценка оставшегося времени\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Текущая версия\"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Если вы выберете обе версии, к имени входящего файла будет добавлен номер.\"] }, \"Invalid file name\": { \"msgid\": \"Invalid file name\", \"msgstr\": [\"Имя файла недопустимо\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Дата последнего изменения неизвестна\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Новый\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Новая версия\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"приостановлено\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Предварительный просмотр\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Переименовать\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Установить все флажки\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Выбрать все существующие файлы\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Выбрать все новые файлы\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Пропуск\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Пропустить файл\", \"Пропустить {count} файла\", \"Пропустить {count} файлов\", \"Пропустить {count} файлов\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Неизвестный размер\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Загрузка файлов\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Загрузка папок\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Загрузка с устройства\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Загрузка была отменена\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Состояние передачи на сервер\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Когда выбрана входящая папка, все конфликтующие файлы в ней также будут перезаписаны.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Когда выбрана входящая папка, содержимое записывается в существующую папку и выполняется рекурсивное разрешение конфликтов.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Какие файлы вы хотите сохранить?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Для продолжения вам нужно выбрать по крайней мере одну версию каждого файла.\"] } } } } }, { \"locale\": \"ru_RU\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Russian (Russia) (https://www.transifex.com/nextcloud/teams/64236/ru_RU/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ru_RU\", \"Plural-Forms\": \"nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Russian (Russia) (https://www.transifex.com/nextcloud/teams/64236/ru_RU/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ru_RU\\nPlural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"sc\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Sardinian (https://www.transifex.com/nextcloud/teams/64236/sc/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sc\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Sardinian (https://www.transifex.com/nextcloud/teams/64236/sc/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sc\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"si\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Sinhala (https://www.transifex.com/nextcloud/teams/64236/si/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"si\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Sinhala (https://www.transifex.com/nextcloud/teams/64236/si/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: si\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"si_LK\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Sinhala (Sri Lanka) (https://www.transifex.com/nextcloud/teams/64236/si_LK/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"si_LK\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Sinhala (Sri Lanka) (https://www.transifex.com/nextcloud/teams/64236/si_LK/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: si_LK\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"sk_SK\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Slovak (Slovakia) (https://www.transifex.com/nextcloud/teams/64236/sk_SK/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sk_SK\", \"Plural-Forms\": \"nplurals=4; plural=(n % 1 == 0 && n == 1 ? 0 : n % 1 == 0 && n >= 2 && n <= 4 ? 1 : n % 1 != 0 ? 2: 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Slovak (Slovakia) (https://www.transifex.com/nextcloud/teams/64236/sk_SK/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sk_SK\\nPlural-Forms: nplurals=4; plural=(n % 1 == 0 && n == 1 ? 0 : n % 1 == 0 && n >= 2 && n <= 4 ? 1 : n % 1 != 0 ? 2: 3);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"sl\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Matej Urbančič <>, 2022\", \"Language-Team\": \"Slovenian (https://www.transifex.com/nextcloud/teams/64236/sl/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sl\", \"Plural-Forms\": \"nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nMatej Urbančič <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Matej Urbančič <>, 2022\\nLanguage-Team: Slovenian (https://www.transifex.com/nextcloud/teams/64236/sl/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sl\\nPlural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"še {seconds} sekund\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"še {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"še nekaj sekund\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Dodaj\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Prekliči pošiljanje\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"ocenjen čas do konca\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"v premoru\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Pošlji datoteke\"] } } } } }, { \"locale\": \"sl_SI\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Slovenian (Slovenia) (https://www.transifex.com/nextcloud/teams/64236/sl_SI/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sl_SI\", \"Plural-Forms\": \"nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Slovenian (Slovenia) (https://www.transifex.com/nextcloud/teams/64236/sl_SI/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sl_SI\\nPlural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"sq\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Albanian (https://www.transifex.com/nextcloud/teams/64236/sq/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sq\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Albanian (https://www.transifex.com/nextcloud/teams/64236/sq/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sq\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"sr\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Иван Пешић, 2023\", \"Language-Team\": \"Serbian (https://app.transifex.com/nextcloud/teams/64236/sr/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sr\", \"Plural-Forms\": \"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ , 2023\\nИван Пешић, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Иван Пешић, 2023\\nLanguage-Team: Serbian (https://app.transifex.com/nextcloud/teams/64236/sr/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sr\\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} фајл конфликт\", \"{count} фајл конфликта\", \"{count} фајл конфликта\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} фајл конфликт у {dirname}\", \"{count} фајл конфликта у {dirname}\", \"{count} фајл конфликта у {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"преостало је {seconds} секунди\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} преостало\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"преостало је неколико секунди\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Обустави отпремања\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Настави\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"процена преосталог времена\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Постојећа верзија\"] }, \"If you select both versions, the copied file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the copied file will have a number added to its name.\", \"msgstr\": [\"Ако изаберете обе верзије, на име копираног фајла ће се додати број.\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Није познат датум последње измене\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Ново\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Нова верзија\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"паузирано\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Слика прегледа\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Штиклирај сва поља за штиклирање\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Изабери све постојеће фајлове\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Изабери све нове фајлове\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Прескочи овај фајл\", \"Прескочи {count} фајла\", \"Прескочи {count} фајлова\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Непозната величина\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"Отпремање је отказано\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Отпреми фајлове\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Напредак отпремања\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Које фајлове желите да задржите?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Морате да изаберете барем једну верзију сваког фајла да наставите.\"] } } } } }, { \"locale\": \"sr@latin\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Serbian (Latin) (https://www.transifex.com/nextcloud/teams/64236/sr@latin/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sr@latin\", \"Plural-Forms\": \"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Serbian (Latin) (https://www.transifex.com/nextcloud/teams/64236/sr@latin/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sr@latin\\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"sv\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Magnus Höglund, 2024\", \"Language-Team\": \"Swedish (https://app.transifex.com/nextcloud/teams/64236/sv/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sv\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nMagnus Höglund, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Magnus Höglund, 2024\\nLanguage-Team: Swedish (https://app.transifex.com/nextcloud/teams/64236/sv/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sv\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{filename}\" contains invalid characters, how do you want to continue?': { \"msgid\": '\"{filename}\" contains invalid characters, how do you want to continue?', \"msgstr\": ['\"{filename}\" innehåller ogiltiga tecken, hur vill du fortsätta?'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} filkonflikt\", \"{count} filkonflikter\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} filkonflikt i {dirname}\", \"{count} filkonflikter i {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} sekunder kvarstår\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} kvarstår\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"några sekunder kvar\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Avbryt\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Avbryt hela operationen\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Avbryt uppladdningar\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Fortsätt\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Skapa ny\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"uppskattar kvarstående tid\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Nuvarande version\"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Om du väljer båda versionerna kommer den inkommande filen att läggas till ett nummer i namnet.\"] }, \"Invalid file name\": { \"msgid\": \"Invalid file name\", \"msgstr\": [\"Ogiltigt filnamn\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Senaste ändringsdatum okänt\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Ny\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Ny version\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pausad\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Förhandsgranska bild\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Byt namn\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Markera alla kryssrutor\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Välj alla befintliga filer\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Välj alla nya filer\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Hoppa över\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Hoppa över denna fil\", \"Hoppa över {count} filer\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Okänd storlek\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Ladda upp filer\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Ladda upp mappar\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Ladda upp från enhet\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Uppladdningen har avbrutits\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Uppladdningsförlopp\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"När en inkommande mapp väljs skrivs även alla konfliktande filer i den över.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"När en inkommande mapp väljs skrivs innehållet in i den befintliga mappen och en rekursiv konfliktlösning utförs.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Vilka filer vill du behålla?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Du måste välja minst en version av varje fil för att fortsätta.\"] } } } } }, { \"locale\": \"sw\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Swahili (https://www.transifex.com/nextcloud/teams/64236/sw/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sw\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Swahili (https://www.transifex.com/nextcloud/teams/64236/sw/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sw\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ta\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Tamil (https://www.transifex.com/nextcloud/teams/64236/ta/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ta\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Tamil (https://www.transifex.com/nextcloud/teams/64236/ta/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ta\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ta_LK\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Tamil (Sri-Lanka) (https://www.transifex.com/nextcloud/teams/64236/ta_LK/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ta_LK\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Tamil (Sri-Lanka) (https://www.transifex.com/nextcloud/teams/64236/ta_LK/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ta_LK\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"th\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Thai (https://www.transifex.com/nextcloud/teams/64236/th/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"th\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Thai (https://www.transifex.com/nextcloud/teams/64236/th/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: th\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"th_TH\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Phongpanot Phairat , 2022\", \"Language-Team\": \"Thai (Thailand) (https://www.transifex.com/nextcloud/teams/64236/th_TH/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"th_TH\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nPhongpanot Phairat , 2022\\n\" }, \"msgstr\": [\"Last-Translator: Phongpanot Phairat , 2022\\nLanguage-Team: Thai (Thailand) (https://www.transifex.com/nextcloud/teams/64236/th_TH/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: th_TH\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"เหลืออีก {seconds} วินาที\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"เหลืออีก {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"เหลืออีกไม่กี่วินาที\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"เพิ่ม\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"ยกเลิกการอัปโหลด\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"กำลังคำนวณเวลาที่เหลือ\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"หยุดชั่วคราว\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"อัปโหลดไฟล์\"] } } } } }, { \"locale\": \"tk\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Turkmen (https://www.transifex.com/nextcloud/teams/64236/tk/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"tk\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Turkmen (https://www.transifex.com/nextcloud/teams/64236/tk/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: tk\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"tr\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Kaya Zeren , 2024\", \"Language-Team\": \"Turkish (https://app.transifex.com/nextcloud/teams/64236/tr/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"tr\", \"Plural-Forms\": \"nplurals=2; plural=(n > 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nKaya Zeren , 2024\\n\" }, \"msgstr\": [\"Last-Translator: Kaya Zeren , 2024\\nLanguage-Team: Turkish (https://app.transifex.com/nextcloud/teams/64236/tr/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: tr\\nPlural-Forms: nplurals=2; plural=(n > 1);\\n\"] }, '\"{filename}\" contains invalid characters, how do you want to continue?': { \"msgid\": '\"{filename}\" contains invalid characters, how do you want to continue?', \"msgstr\": ['\"{filename}\" içinde geçersiz karakterler var. Nasıl ilerlemek istersiniz?'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} dosya çakışması var\", \"{count} dosya çakışması var\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{dirname} klasöründe {count} dosya çakışması var\", \"{dirname} klasöründe {count} dosya çakışması var\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} saniye kaldı\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} kaldı\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"bir kaç saniye kaldı\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"İptal\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Tüm işlemi iptal et\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Yüklemeleri iptal et\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"İlerle\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Yeni ekle\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"öngörülen kalan süre\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Var olan sürüm\"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"İki sürümü de seçerseniz, gelen dosyanın adına bir sayı eklenir.\"] }, \"Invalid file name\": { \"msgid\": \"Invalid file name\", \"msgstr\": [\"Dosya adı geçersiz\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Son değiştirilme tarihi bilinmiyor\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Yeni\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Yeni sürüm\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"duraklatıldı\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Görsel ön izlemesi\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Yeniden adlandır\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Tüm kutuları işaretle\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Tüm var olan dosyaları seç\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Tüm yeni dosyaları seç\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Atla\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Bu dosyayı atla\", \"{count} dosyayı atla\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Boyut bilinmiyor\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Dosyaları yükle\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Klasörleri yükle\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Aygıttan yükle\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Yükleme iptal edildi\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Yükleme ilerlemesi\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Bir gelen klasör seçildiğinde, içindeki çakışan dosyaların da üzerine yazılır.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Bir gelen klasörü seçildiğinde içerik var olan klasöre yazılır ve yinelemeli bir çakışma çözümü uygulanır.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Hangi dosyaları tutmak istiyorsunuz?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"İlerlemek için her dosyanın en az bir sürümünü seçmelisiniz.\"] } } } } }, { \"locale\": \"ug\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Uyghur (https://www.transifex.com/nextcloud/teams/64236/ug/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ug\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Uyghur (https://www.transifex.com/nextcloud/teams/64236/ug/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ug\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"uk\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"O St , 2024\", \"Language-Team\": \"Ukrainian (https://app.transifex.com/nextcloud/teams/64236/uk/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"uk\", \"Plural-Forms\": \"nplurals=4; plural=(n % 1 == 0 && n % 10 == 1 && n % 100 != 11 ? 0 : n % 1 == 0 && n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 12 || n % 100 > 14) ? 1 : n % 1 == 0 && (n % 10 ==0 || (n % 10 >=5 && n % 10 <=9) || (n % 100 >=11 && n % 100 <=14 )) ? 2: 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nO St , 2024\\n\" }, \"msgstr\": [\"Last-Translator: O St , 2024\\nLanguage-Team: Ukrainian (https://app.transifex.com/nextcloud/teams/64236/uk/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: uk\\nPlural-Forms: nplurals=4; plural=(n % 1 == 0 && n % 10 == 1 && n % 100 != 11 ? 0 : n % 1 == 0 && n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 12 || n % 100 > 14) ? 1 : n % 1 == 0 && (n % 10 ==0 || (n % 10 >=5 && n % 10 <=9) || (n % 100 >=11 && n % 100 <=14 )) ? 2: 3);\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} конфліктний файл\", \"{count} конфліктних файли\", \"{count} конфліктних файлів\", \"{count} конфліктних файлів\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} конфліктний файл у каталозі {dirname}\", \"{count} конфліктних файли у каталозі {dirname}\", \"{count} конфліктних файлів у каталозі {dirname}\", \"{count} конфліктних файлів у каталозі {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"Залишилося {seconds} секунд\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"Залишилося {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"залишилося кілька секунд\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Скасувати\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Скасувати операцію повністю\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Скасувати завантаження\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Продовжити\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"оцінка часу, що залишився\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Присутня версія\"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Якщо буде вибрано обидві версії, до імени вхідного файлу було додано цифру.\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Дата останньої зміни невідома\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Нове\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Нова версія\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"призупинено\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Попередній перегляд\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Вибрати все\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Вибрати усі присутні файли\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Вибрати усі нові файли\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Пропустити файл\", \"Пропустити {count} файли\", \"Пропустити {count} файлів\", \"Пропустити {count} файлів\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Невідомий розмір\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"Завантаження скасовано\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Завантажити файли\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Поступ завантаження\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Усі конфліктні файли у вибраному каталозі призначення буде перезаписано поверх.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Якщо буде вибрано вхідний каталог, вміст буде записано до наявного каталогу та вирішено конфлікти у відповідних файлах каталогу та підкаталогів.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Які файли залишити?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Для продовження потрібно вибрати принаймні одну версію для кожного файлу.\"] } } } } }, { \"locale\": \"ur_PK\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Urdu (Pakistan) (https://www.transifex.com/nextcloud/teams/64236/ur_PK/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ur_PK\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Urdu (Pakistan) (https://www.transifex.com/nextcloud/teams/64236/ur_PK/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ur_PK\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"uz\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Uzbek (https://www.transifex.com/nextcloud/teams/64236/uz/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"uz\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Uzbek (https://www.transifex.com/nextcloud/teams/64236/uz/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: uz\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"vi\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Tung DangQuang, 2023\", \"Language-Team\": \"Vietnamese (https://app.transifex.com/nextcloud/teams/64236/vi/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"vi\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ , 2023\\nTung DangQuang, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Tung DangQuang, 2023\\nLanguage-Team: Vietnamese (https://app.transifex.com/nextcloud/teams/64236/vi/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: vi\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} Tập tin xung đột\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} tập tin lỗi trong {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"Còn {second} giây\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"Còn lại {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"Còn lại một vài giây\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Huỷ tải lên\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Tiếp Tục\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"Thời gian còn lại dự kiến\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Phiên Bản Hiện Tại\"] }, \"If you select both versions, the copied file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the copied file will have a number added to its name.\", \"msgstr\": [\"Nếu bạn chọn cả hai phiên bản, tệp được sao chép sẽ có thêm một số vào tên của nó.\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Ngày sửa dổi lần cuối không xác định\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Tạo Mới\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Phiên Bản Mới\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"đã tạm dừng\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Xem Trước Ảnh\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Chọn tất cả hộp checkbox\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Chọn tất cả các tập tin có sẵn\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Chọn tất cả các tập tin mới\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Bỏ Qua {count} tập tin\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Không rõ dung lượng\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"Dừng Tải Lên\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Tập tin tải lên\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Đang Tải Lên\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Bạn muốn giữ tập tin nào?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Bạn cần chọn ít nhất một phiên bản tập tin mới có thể tiếp tục\"] } } } } }, { \"locale\": \"zh_CN\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Hongbo Chen, 2023\", \"Language-Team\": \"Chinese (China) (https://app.transifex.com/nextcloud/teams/64236/zh_CN/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"zh_CN\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ , 2023\\nHongbo Chen, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Hongbo Chen, 2023\\nLanguage-Team: Chinese (China) (https://app.transifex.com/nextcloud/teams/64236/zh_CN/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: zh_CN\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count}文件冲突\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"在{dirname}目录下有{count}个文件冲突\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"剩余 {seconds} 秒\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"剩余 {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"还剩几秒\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"添加\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"取消上传\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"继续\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"估计剩余时间\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"版本已存在\"] }, \"If you select both versions, the copied file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the copied file will have a number added to its name.\", \"msgstr\": [\"如果选择所有的版本,新增版本的文件名为原文件名加数字\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"文件最后修改日期未知\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"新版本\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"已暂停\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"图片预览\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"选择所有的选择框\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"选择所有存在的文件\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"选择所有的新文件\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"跳过{count}个文件\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"文件大小未知\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"取消上传\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"上传文件\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"你要保留哪些文件?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"每个文件至少选择一个版本\"] } } } } }, { \"locale\": \"zh_HK\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Café Tango, 2024\", \"Language-Team\": \"Chinese (Hong Kong) (https://app.transifex.com/nextcloud/teams/64236/zh_HK/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"zh_HK\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nCafé Tango, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Café Tango, 2024\\nLanguage-Team: Chinese (Hong Kong) (https://app.transifex.com/nextcloud/teams/64236/zh_HK/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: zh_HK\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} 個檔案衝突\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{dirname} 中有 {count} 個檔案衝突\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"剩餘 {seconds} 秒\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"剩餘 {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"還剩幾秒\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"取消\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"取消整個操作\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"取消上傳\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"繼續\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"估計剩餘時間\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"既有版本\"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"若您選取兩個版本,傳入檔案的名稱將會新增編號。\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"最後修改日期不詳\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"新增\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"新版本 \"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"已暫停\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"預覽圖片\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"選取所有核取方塊\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"選取所有既有檔案\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"選取所有新檔案\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"略過 {count} 個檔案\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"大小不詳\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"已取消上傳\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"上傳檔案\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"上傳進度\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"選取傳入資料夾後,其中任何的衝突檔案都會被覆寫。\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"選擇傳入資料夾後,內容將寫入現有資料夾並執行遞歸衝突解決。\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"您想保留哪些檔案?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"您必須為每個檔案都至少選取一個版本以繼續。\"] } } } } }, { \"locale\": \"zh_TW\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"黃柏諺 , 2024\", \"Language-Team\": \"Chinese (Taiwan) (https://app.transifex.com/nextcloud/teams/64236/zh_TW/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"zh_TW\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\n黃柏諺 , 2024\\n\" }, \"msgstr\": [\"Last-Translator: 黃柏諺 , 2024\\nLanguage-Team: Chinese (Taiwan) (https://app.transifex.com/nextcloud/teams/64236/zh_TW/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: zh_TW\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} 個檔案衝突\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{dirname} 中有 {count} 個檔案衝突\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"剩餘 {seconds} 秒\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"剩餘 {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"還剩幾秒\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"取消\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"取消整個操作\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"取消上傳\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"繼續\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"估計剩餘時間\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"既有版本\"] }, \"If you select both versions, the copied file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the copied file will have a number added to its name.\", \"msgstr\": [\"若您選取兩個版本,複製的檔案的名稱將會新增編號。\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"最後修改日期未知\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"新增\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"新版本\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"已暫停\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"預覽圖片\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"選取所有核取方塊\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"選取所有既有檔案\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"選取所有新檔案\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"略過 {count} 檔案\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"未知大小\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"已取消上傳\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"上傳檔案\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"上傳進度\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"選取傳入資料夾後,其中任何的衝突檔案都會被覆寫。\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"您想保留哪些檔案?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"您必須為每個檔案都至少選取一個版本以繼續。\"] } } } } }].map((data) => gtBuilder.addTranslation(data.locale, data.json));\nconst gt = gtBuilder.build();\nconst n = gt.ngettext.bind(gt);\nconst t = gt.gettext.bind(gt);\n/**\n * @copyright 2019 Christoph Wurst \n *\n * @author Christoph Wurst \n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see .\n *\n */\nconst logger = getLoggerBuilder().setApp(\"@nextcloud/upload\").detectUser().build();\nvar Status = /* @__PURE__ */ ((Status2) => {\n Status2[Status2[\"IDLE\"] = 0] = \"IDLE\";\n Status2[Status2[\"UPLOADING\"] = 1] = \"UPLOADING\";\n Status2[Status2[\"PAUSED\"] = 2] = \"PAUSED\";\n return Status2;\n})(Status || {});\nclass Uploader {\n // Initialized via setter in the constructor\n _destinationFolder;\n _isPublic;\n // Global upload queue\n _uploadQueue = [];\n _jobQueue = new PQueue({ concurrency: 3 });\n _queueSize = 0;\n _queueProgress = 0;\n _queueStatus = 0;\n _notifiers = [];\n /**\n * Initialize uploader\n *\n * @param {boolean} isPublic are we in public mode ?\n * @param {Folder} destinationFolder the context folder to operate, relative to the root folder\n */\n constructor(isPublic = false, destinationFolder) {\n this._isPublic = isPublic;\n if (!destinationFolder) {\n const source = join(davRemoteURL, davRootPath);\n let owner;\n if (isPublic) {\n owner = \"anonymous\";\n } else {\n const user = getCurrentUser()?.uid;\n if (!user) {\n throw new Error(\"User is not logged in\");\n }\n owner = user;\n }\n destinationFolder = new Folder({\n id: 0,\n owner,\n permissions: Permission.ALL,\n root: davRootPath,\n source\n });\n }\n this.destination = destinationFolder;\n this._jobQueue.addListener(\"idle\", () => this.reset());\n logger.debug(\"Upload workspace initialized\", {\n destination: this.destination,\n root: this.root,\n isPublic,\n maxChunksSize: getMaxChunksSize()\n });\n }\n /**\n * Get the upload destination path relative to the root folder\n */\n get destination() {\n return this._destinationFolder;\n }\n /**\n * Set the upload destination path relative to the root folder\n */\n set destination(folder) {\n if (!folder) {\n throw new Error(\"Invalid destination folder\");\n }\n logger.debug(\"Destination set\", { folder });\n this._destinationFolder = folder;\n }\n /**\n * Get the root folder\n */\n get root() {\n return this._destinationFolder.source;\n }\n /**\n * Get the upload queue\n */\n get queue() {\n return this._uploadQueue;\n }\n reset() {\n this._uploadQueue.splice(0, this._uploadQueue.length);\n this._jobQueue.clear();\n this._queueSize = 0;\n this._queueProgress = 0;\n this._queueStatus = 0;\n }\n /**\n * Pause any ongoing upload(s)\n */\n pause() {\n this._jobQueue.pause();\n this._queueStatus = 2;\n }\n /**\n * Resume any pending upload(s)\n */\n start() {\n this._jobQueue.start();\n this._queueStatus = 1;\n this.updateStats();\n }\n /**\n * Get the upload queue stats\n */\n get info() {\n return {\n size: this._queueSize,\n progress: this._queueProgress,\n status: this._queueStatus\n };\n }\n updateStats() {\n const size = this._uploadQueue.map((upload2) => upload2.size).reduce((partialSum, a) => partialSum + a, 0);\n const uploaded = this._uploadQueue.map((upload2) => upload2.uploaded).reduce((partialSum, a) => partialSum + a, 0);\n this._queueSize = size;\n this._queueProgress = uploaded;\n if (this._queueStatus === 2) {\n return;\n }\n this._queueStatus = this._jobQueue.size > 0 ? 1 : 0;\n }\n addNotifier(notifier) {\n this._notifiers.push(notifier);\n }\n /**\n * Notify listeners of the upload completion\n * @param upload The upload that finished\n */\n _notifyAll(upload2) {\n for (const notifier of this._notifiers) {\n try {\n notifier(upload2);\n } catch (error) {\n logger.warn(\"Error in upload notifier\", { error, source: upload2.source });\n }\n }\n }\n /**\n * Uploads multiple files or folders while preserving the relative path (if available)\n * @param {string} destination The destination path relative to the root folder. e.g. /foo/bar (a file \"a.txt\" will be uploaded then to \"/foo/bar/a.txt\")\n * @param {Array} files The files and/or folders to upload\n * @param {Function} callback Callback that receives the nodes in the current folder and the current path to allow resolving conflicts, all nodes that are returned will be uploaded (if a folder does not exist it will be created)\n * @return Cancelable promise that resolves to an array of uploads\n *\n * @example\n * ```ts\n * // For example this is from handling the onchange event of an input[type=file]\n * async handleFiles(files: File[]) {\n * this.uploads = await this.uploader.batchUpload('uploads', files, this.handleConflicts)\n * }\n *\n * async handleConflicts(nodes: File[], currentPath: string) {\n * const conflicts = getConflicts(nodes, this.fetchContent(currentPath))\n * if (conficts.length === 0) {\n * // No conflicts so upload all\n * return nodes\n * } else {\n * // Open the conflict picker to resolve conflicts\n * try {\n * const { selected, renamed } = await openConflictPicker(currentPath, conflicts, this.fetchContent(currentPath), { recursive: true })\n * return [...selected, ...renamed]\n * } catch (e) {\n * return false\n * }\n * }\n * }\n * ```\n */\n batchUpload(destination, files, callback) {\n const rootFolder = new Directory(\"\", files);\n if (!callback) {\n callback = async (files2) => files2;\n }\n try {\n this._jobQueue.concurrency += 1;\n return new PCancelable(async (resolve, reject, onCancel) => {\n try {\n const value = await this._jobQueue.add(() => {\n const promise = this.uploadDirectory(destination, rootFolder, callback, davGetClient(this.root));\n onCancel(() => promise.cancel());\n return promise;\n });\n if (value) {\n resolve(value);\n }\n } catch (error) {\n logger.error(\"Error in batch upload\", { error });\n }\n reject(t(\"Upload has been cancelled\"));\n });\n } finally {\n this._jobQueue.concurrency -= 1;\n }\n }\n // Helper for uploading directories (recursivly)\n uploadDirectory(destination, directory, callback, client) {\n const folderPath = normalize(`${destination}/${directory.name}`).replace(/\\/$/, \"\");\n const rootPath = `${this.root.replace(/\\/$/, \"\")}/${folderPath.replace(/^\\//, \"\")}`;\n return new PCancelable(async (resolve, reject, onCancel) => {\n const abort = new AbortController();\n onCancel(() => abort.abort());\n const selectedForUpload = await callback(directory.children, folderPath);\n if (selectedForUpload === false) {\n reject(t(\"Upload has been cancelled\"));\n return;\n }\n const directories = [];\n const uploads = [];\n const currentUpload = new Upload(rootPath, false, 0, directory);\n currentUpload.signal.addEventListener(\"abort\", () => reject(t(\"Upload has been cancelled\")));\n currentUpload.status = Status$1.UPLOADING;\n try {\n if (directory.name) {\n try {\n await client.createDirectory(folderPath, { signal: abort.signal });\n uploads.push(new PCancelable((resolve2) => resolve2(currentUpload)));\n this._uploadQueue.push(currentUpload);\n } catch (error) {\n if (error && typeof error === \"object\" && \"status\" in error && error.status === 405) {\n logger.debug(\"Directory already exists, writing into it\", { directory: directory.name });\n } else {\n throw error;\n }\n }\n }\n for (const node of selectedForUpload) {\n if (node instanceof Directory) {\n directories.push(this.uploadDirectory(folderPath, node, callback, client));\n } else {\n uploads.push(this.upload(`${folderPath}/${node.name}`, node));\n }\n }\n abort.signal.addEventListener(\"abort\", () => {\n uploads.forEach((upload2) => upload2.cancel());\n directories.forEach((upload2) => upload2.cancel());\n });\n const resolvedUploads = await Promise.all(uploads);\n const resolvedDirectoryUploads = await Promise.all(directories);\n currentUpload.status = Status$1.FINISHED;\n resolve([resolvedUploads, ...resolvedDirectoryUploads].flat());\n } catch (e) {\n abort.abort(e);\n currentUpload.status = Status$1.FAILED;\n reject(e);\n } finally {\n if (directory.name) {\n this._notifyAll(currentUpload);\n this.updateStats();\n }\n }\n });\n }\n /**\n * Upload a file to the given path\n * @param {string} destination the destination path relative to the root folder. e.g. /foo/bar.txt\n * @param {File|FileSystemFileEntry} fileHandle the file to upload\n * @param {string} root the root folder to upload to\n * @param retries number of retries\n */\n upload(destination, fileHandle, root, retries = 5) {\n root = root || this.root;\n const destinationPath = `${root.replace(/\\/$/, \"\")}/${destination.replace(/^\\//, \"\")}`;\n const { origin } = new URL(destinationPath);\n const encodedDestinationFile = origin + encodePath(destinationPath.slice(origin.length));\n logger.debug(`Uploading ${fileHandle.name} to ${encodedDestinationFile}`);\n const promise = new PCancelable(async (resolve, reject, onCancel) => {\n if (isFileSystemFileEntry(fileHandle)) {\n fileHandle = await new Promise((resolve2) => fileHandle.file(resolve2, reject));\n }\n const file = fileHandle;\n const maxChunkSize = getMaxChunksSize(\"size\" in file ? file.size : void 0);\n const disabledChunkUpload = this._isPublic || maxChunkSize === 0 || \"size\" in file && file.size < maxChunkSize;\n const upload2 = new Upload(destinationPath, !disabledChunkUpload, file.size, file);\n this._uploadQueue.push(upload2);\n this.updateStats();\n onCancel(upload2.cancel);\n if (!disabledChunkUpload) {\n logger.debug(\"Initializing chunked upload\", { file, upload: upload2 });\n const tempUrl = await initChunkWorkspace(encodedDestinationFile, retries);\n const chunksQueue = [];\n for (let chunk = 0; chunk < upload2.chunks; chunk++) {\n const bufferStart = chunk * maxChunkSize;\n const bufferEnd = Math.min(bufferStart + maxChunkSize, upload2.size);\n const blob = () => getChunk(file, bufferStart, maxChunkSize);\n const request = () => {\n return uploadData(\n `${tempUrl}/${chunk + 1}`,\n blob,\n upload2.signal,\n () => this.updateStats(),\n encodedDestinationFile,\n {\n \"X-OC-Mtime\": file.lastModified / 1e3,\n \"OC-Total-Length\": file.size,\n \"Content-Type\": \"application/octet-stream\"\n },\n retries\n ).then(() => {\n upload2.uploaded = upload2.uploaded + maxChunkSize;\n }).catch((error) => {\n if (error?.response?.status === 507) {\n logger.error(\"Upload failed, not enough space on the server or quota exceeded. Cancelling the remaining chunks\", { error, upload: upload2 });\n upload2.cancel();\n upload2.status = Status$1.FAILED;\n throw error;\n }\n if (!isCancel(error)) {\n logger.error(`Chunk ${chunk + 1} ${bufferStart} - ${bufferEnd} uploading failed`, { error, upload: upload2 });\n upload2.cancel();\n upload2.status = Status$1.FAILED;\n }\n throw error;\n });\n };\n chunksQueue.push(this._jobQueue.add(request));\n }\n try {\n await Promise.all(chunksQueue);\n this.updateStats();\n upload2.response = await axios.request({\n method: \"MOVE\",\n url: `${tempUrl}/.file`,\n headers: {\n \"X-OC-Mtime\": file.lastModified / 1e3,\n \"OC-Total-Length\": file.size,\n Destination: encodedDestinationFile\n }\n });\n this.updateStats();\n upload2.status = Status$1.FINISHED;\n logger.debug(`Successfully uploaded ${file.name}`, { file, upload: upload2 });\n resolve(upload2);\n } catch (error) {\n if (!isCancel(error)) {\n upload2.status = Status$1.FAILED;\n reject(\"Failed assembling the chunks together\");\n } else {\n upload2.status = Status$1.FAILED;\n reject(t(\"Upload has been cancelled\"));\n }\n axios.request({\n method: \"DELETE\",\n url: `${tempUrl}`\n });\n }\n this._notifyAll(upload2);\n } else {\n logger.debug(\"Initializing regular upload\", { file, upload: upload2 });\n const blob = await getChunk(file, 0, upload2.size);\n const request = async () => {\n try {\n upload2.response = await uploadData(\n encodedDestinationFile,\n blob,\n upload2.signal,\n (event) => {\n upload2.uploaded = upload2.uploaded + event.bytes;\n this.updateStats();\n },\n void 0,\n {\n \"X-OC-Mtime\": file.lastModified / 1e3,\n \"Content-Type\": file.type\n }\n );\n upload2.uploaded = upload2.size;\n this.updateStats();\n logger.debug(`Successfully uploaded ${file.name}`, { file, upload: upload2 });\n resolve(upload2);\n } catch (error) {\n if (isCancel(error)) {\n upload2.status = Status$1.FAILED;\n reject(t(\"Upload has been cancelled\"));\n return;\n }\n if (error?.response) {\n upload2.response = error.response;\n }\n upload2.status = Status$1.FAILED;\n logger.error(`Failed uploading ${file.name}`, { error, file, upload: upload2 });\n reject(\"Failed uploading the file\");\n }\n this._notifyAll(upload2);\n };\n this._jobQueue.add(request);\n this.updateStats();\n }\n return upload2;\n });\n return promise;\n }\n}\nfunction normalizeComponent(scriptExports, render6, staticRenderFns, functionalTemplate, injectStyles, scopeId, moduleIdentifier, shadowMode) {\n var options = typeof scriptExports === \"function\" ? scriptExports.options : scriptExports;\n if (render6) {\n options.render = render6;\n options.staticRenderFns = staticRenderFns;\n options._compiled = true;\n }\n if (functionalTemplate) {\n options.functional = true;\n }\n if (scopeId) {\n options._scopeId = \"data-v-\" + scopeId;\n }\n var hook;\n if (moduleIdentifier) {\n hook = function(context) {\n context = context || // cached call\n this.$vnode && this.$vnode.ssrContext || // stateful\n this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext;\n if (!context && typeof __VUE_SSR_CONTEXT__ !== \"undefined\") {\n context = __VUE_SSR_CONTEXT__;\n }\n if (injectStyles) {\n injectStyles.call(this, context);\n }\n if (context && context._registeredComponents) {\n context._registeredComponents.add(moduleIdentifier);\n }\n };\n options._ssrRegister = hook;\n } else if (injectStyles) {\n hook = shadowMode ? function() {\n injectStyles.call(\n this,\n (options.functional ? this.parent : this).$root.$options.shadowRoot\n );\n } : injectStyles;\n }\n if (hook) {\n if (options.functional) {\n options._injectStyles = hook;\n var originalRender = options.render;\n options.render = function renderWithStyleInjection(h, context) {\n hook.call(context);\n return originalRender(h, context);\n };\n } else {\n var existing = options.beforeCreate;\n options.beforeCreate = existing ? [].concat(existing, hook) : [hook];\n }\n }\n return {\n exports: scriptExports,\n options\n };\n}\nconst _sfc_main$4 = {\n name: \"CancelIcon\",\n emits: [\"click\"],\n props: {\n title: {\n type: String\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n};\nvar _sfc_render$4 = function render() {\n var _vm = this, _c = _vm._self._c;\n return _c(\"span\", _vm._b({ staticClass: \"material-design-icon cancel-icon\", attrs: { \"aria-hidden\": _vm.title ? null : true, \"aria-label\": _vm.title, \"role\": \"img\" }, on: { \"click\": function($event) {\n return _vm.$emit(\"click\", $event);\n } } }, \"span\", _vm.$attrs, false), [_c(\"svg\", { staticClass: \"material-design-icon__svg\", attrs: { \"fill\": _vm.fillColor, \"width\": _vm.size, \"height\": _vm.size, \"viewBox\": \"0 0 24 24\" } }, [_c(\"path\", { attrs: { \"d\": \"M12 2C17.5 2 22 6.5 22 12S17.5 22 12 22 2 17.5 2 12 6.5 2 12 2M12 4C10.1 4 8.4 4.6 7.1 5.7L18.3 16.9C19.3 15.5 20 13.8 20 12C20 7.6 16.4 4 12 4M16.9 18.3L5.7 7.1C4.6 8.4 4 10.1 4 12C4 16.4 7.6 20 12 20C13.9 20 15.6 19.4 16.9 18.3Z\" } }, [_vm.title ? _c(\"title\", [_vm._v(_vm._s(_vm.title))]) : _vm._e()])])]);\n};\nvar _sfc_staticRenderFns$4 = [];\nvar __component__$4 = /* @__PURE__ */ normalizeComponent(\n _sfc_main$4,\n _sfc_render$4,\n _sfc_staticRenderFns$4,\n false,\n null,\n null,\n null,\n null\n);\nconst IconCancel = __component__$4.exports;\nconst _sfc_main$3 = {\n name: \"FolderUploadIcon\",\n emits: [\"click\"],\n props: {\n title: {\n type: String\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n};\nvar _sfc_render$3 = function render2() {\n var _vm = this, _c = _vm._self._c;\n return _c(\"span\", _vm._b({ staticClass: \"material-design-icon folder-upload-icon\", attrs: { \"aria-hidden\": _vm.title ? null : true, \"aria-label\": _vm.title, \"role\": \"img\" }, on: { \"click\": function($event) {\n return _vm.$emit(\"click\", $event);\n } } }, \"span\", _vm.$attrs, false), [_c(\"svg\", { staticClass: \"material-design-icon__svg\", attrs: { \"fill\": _vm.fillColor, \"width\": _vm.size, \"height\": _vm.size, \"viewBox\": \"0 0 24 24\" } }, [_c(\"path\", { attrs: { \"d\": \"M20,6A2,2 0 0,1 22,8V18A2,2 0 0,1 20,20H4A2,2 0 0,1 2,18V6A2,2 0 0,1 4,4H10L12,6H20M10.75,13H14V17H16V13H19.25L15,8.75\" } }, [_vm.title ? _c(\"title\", [_vm._v(_vm._s(_vm.title))]) : _vm._e()])])]);\n};\nvar _sfc_staticRenderFns$3 = [];\nvar __component__$3 = /* @__PURE__ */ normalizeComponent(\n _sfc_main$3,\n _sfc_render$3,\n _sfc_staticRenderFns$3,\n false,\n null,\n null,\n null,\n null\n);\nconst IconFolderUpload = __component__$3.exports;\nconst _sfc_main$2 = {\n name: \"PlusIcon\",\n emits: [\"click\"],\n props: {\n title: {\n type: String\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n};\nvar _sfc_render$2 = function render3() {\n var _vm = this, _c = _vm._self._c;\n return _c(\"span\", _vm._b({ staticClass: \"material-design-icon plus-icon\", attrs: { \"aria-hidden\": _vm.title ? null : true, \"aria-label\": _vm.title, \"role\": \"img\" }, on: { \"click\": function($event) {\n return _vm.$emit(\"click\", $event);\n } } }, \"span\", _vm.$attrs, false), [_c(\"svg\", { staticClass: \"material-design-icon__svg\", attrs: { \"fill\": _vm.fillColor, \"width\": _vm.size, \"height\": _vm.size, \"viewBox\": \"0 0 24 24\" } }, [_c(\"path\", { attrs: { \"d\": \"M19,13H13V19H11V13H5V11H11V5H13V11H19V13Z\" } }, [_vm.title ? _c(\"title\", [_vm._v(_vm._s(_vm.title))]) : _vm._e()])])]);\n};\nvar _sfc_staticRenderFns$2 = [];\nvar __component__$2 = /* @__PURE__ */ normalizeComponent(\n _sfc_main$2,\n _sfc_render$2,\n _sfc_staticRenderFns$2,\n false,\n null,\n null,\n null,\n null\n);\nconst IconPlus = __component__$2.exports;\nconst _sfc_main$1 = {\n name: \"UploadIcon\",\n emits: [\"click\"],\n props: {\n title: {\n type: String\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n};\nvar _sfc_render$1 = function render4() {\n var _vm = this, _c = _vm._self._c;\n return _c(\"span\", _vm._b({ staticClass: \"material-design-icon upload-icon\", attrs: { \"aria-hidden\": _vm.title ? null : true, \"aria-label\": _vm.title, \"role\": \"img\" }, on: { \"click\": function($event) {\n return _vm.$emit(\"click\", $event);\n } } }, \"span\", _vm.$attrs, false), [_c(\"svg\", { staticClass: \"material-design-icon__svg\", attrs: { \"fill\": _vm.fillColor, \"width\": _vm.size, \"height\": _vm.size, \"viewBox\": \"0 0 24 24\" } }, [_c(\"path\", { attrs: { \"d\": \"M9,16V10H5L12,3L19,10H15V16H9M5,20V18H19V20H5Z\" } }, [_vm.title ? _c(\"title\", [_vm._v(_vm._s(_vm.title))]) : _vm._e()])])]);\n};\nvar _sfc_staticRenderFns$1 = [];\nvar __component__$1 = /* @__PURE__ */ normalizeComponent(\n _sfc_main$1,\n _sfc_render$1,\n _sfc_staticRenderFns$1,\n false,\n null,\n null,\n null,\n null\n);\nconst IconUpload = __component__$1.exports;\nconst _sfc_main = Vue.extend({\n name: \"UploadPicker\",\n components: {\n IconCancel,\n IconFolderUpload,\n IconPlus,\n IconUpload,\n NcActionButton,\n NcActionCaption,\n NcActionSeparator,\n NcActions,\n NcButton,\n NcIconSvgWrapper,\n NcProgressBar\n },\n props: {\n accept: {\n type: Array,\n default: null\n },\n disabled: {\n type: Boolean,\n default: false\n },\n multiple: {\n type: Boolean,\n default: false\n },\n destination: {\n type: Folder,\n default: void 0\n },\n allowFolders: {\n type: Boolean,\n default: false\n },\n /**\n * List of file present in the destination folder\n * It is also possible to provide a function that takes a relative path to the current directory and returns the content of it\n * Note: If a function is passed it should return the current base directory when no path or an empty is passed\n */\n content: {\n type: [Array, Function],\n default: () => []\n },\n forbiddenCharacters: {\n type: Array,\n default: () => []\n }\n },\n setup() {\n return {\n t,\n // non reactive data / properties\n progressTimeId: `nc-uploader-progress-${Math.random().toString(36).slice(7)}`\n };\n },\n data() {\n return {\n eta: null,\n timeLeft: \"\",\n currentContent: [],\n newFileMenuEntries: [],\n uploadManager: getUploader()\n };\n },\n computed: {\n menuEntriesUpload() {\n return this.newFileMenuEntries.filter((entry) => entry.category === NewMenuEntryCategory.UploadFromDevice);\n },\n menuEntriesNew() {\n return this.newFileMenuEntries.filter((entry) => entry.category === NewMenuEntryCategory.CreateNew);\n },\n menuEntriesOther() {\n return this.newFileMenuEntries.filter((entry) => entry.category === NewMenuEntryCategory.Other);\n },\n /**\n * Check whether the current browser supports uploading directories\n * Hint: This does not check if the current connection supports this, as some browsers require a secure context!\n */\n canUploadFolders() {\n return this.allowFolders && \"webkitdirectory\" in document.createElement(\"input\");\n },\n totalQueueSize() {\n return this.uploadManager.info?.size || 0;\n },\n uploadedQueueSize() {\n return this.uploadManager.info?.progress || 0;\n },\n progress() {\n return Math.round(this.uploadedQueueSize / this.totalQueueSize * 100) || 0;\n },\n queue() {\n return this.uploadManager.queue;\n },\n hasFailure() {\n return this.queue?.filter((upload2) => upload2.status === Status$1.FAILED).length !== 0;\n },\n isUploading() {\n return this.queue?.length > 0;\n },\n isAssembling() {\n return this.queue?.filter((upload2) => upload2.status === Status$1.ASSEMBLING).length !== 0;\n },\n isPaused() {\n return this.uploadManager.info?.status === Status.PAUSED;\n },\n // Hide the button text if we're uploading\n buttonName() {\n if (this.isUploading) {\n return void 0;\n }\n return t(\"New\");\n }\n },\n watch: {\n allowFolders: {\n immediate: true,\n handler() {\n if (typeof this.content !== \"function\" && this.allowFolders) {\n logger.error(\"[UploadPicker] Setting `allowFolders` is only allowed if `content` is a function\");\n }\n }\n },\n content: {\n immediate: true,\n async handler() {\n this.currentContent = await this.getContent();\n }\n },\n destination(destination) {\n this.setDestination(destination);\n },\n totalQueueSize(size) {\n this.eta = makeEta({ min: 0, max: size });\n this.updateStatus();\n },\n uploadedQueueSize(size) {\n this.eta?.report?.(size);\n this.updateStatus();\n },\n isPaused(isPaused) {\n if (isPaused) {\n this.$emit(\"paused\", this.queue);\n } else {\n this.$emit(\"resumed\", this.queue);\n }\n }\n },\n beforeMount() {\n if (this.destination) {\n this.setDestination(this.destination);\n }\n this.uploadManager.addNotifier(this.onUploadCompletion);\n logger.debug(\"UploadPicker initialised\");\n },\n methods: {\n /**\n * Trigger file picker\n * @param uploadFolders Upload folders\n */\n onTriggerPick(uploadFolders = false) {\n const input = this.$refs.input;\n if (this.canUploadFolders) {\n input.webkitdirectory = uploadFolders;\n }\n this.$nextTick(() => input.click());\n },\n /**\n * Helper for backwards compatibility that queries the content of the current directory\n * @param path The current path\n */\n async getContent(path) {\n return Array.isArray(this.content) ? this.content : await this.content(path);\n },\n /**\n * Show a dialog to let the user decide how to proceed with invalid filenames.\n * The returned promise resolves to true if the file should be renamed and resolves to false to skip it the file.\n * The promise rejects when the user want to abort the operation.\n *\n * @param filename The invalid file name\n */\n async showInvalidFileNameDialog(filename) {\n return new PCancelable(async (resolve, reject) => {\n await new DialogBuilder().setName(t(\"Invalid file name\")).setSeverity(\"error\").setText(t('\"{filename}\" contains invalid characters, how do you want to continue?', { filename })).setButtons([\n {\n label: t(\"Cancel\"),\n type: \"error\",\n callback: reject\n },\n {\n label: t(\"Skip\"),\n callback: () => resolve(false)\n },\n {\n label: t(\"Rename\"),\n type: \"primary\",\n callback: () => resolve(true)\n }\n ]).build().show();\n });\n },\n async handleConflicts(nodes, path) {\n try {\n const content = path === \"\" ? this.currentContent : await this.getContent(path).catch(() => []);\n const conflicts = getConflicts(nodes, content);\n if (conflicts.length > 0) {\n const { selected, renamed } = await openConflictPicker(path, conflicts, content, { recursive: true });\n nodes = [...selected, ...renamed];\n }\n const filesToUpload = [];\n for (const file of nodes) {\n const invalid = this.forbiddenCharacters.some((c) => file.name.includes(c));\n if (!invalid) {\n filesToUpload.push(file);\n continue;\n }\n if (await this.showInvalidFileNameDialog(file.name)) {\n let newName = this.replaceInvalidCharacters(file.name);\n newName = getUniqueName(newName, nodes.map((node) => node.name));\n Object.defineProperty(file, \"name\", { value: newName });\n filesToUpload.push(file);\n }\n }\n return filesToUpload;\n } catch (error) {\n logger.debug(\"Upload has been cancelled\", { error });\n showWarning(t(\"Upload has been cancelled\"));\n return false;\n }\n },\n /**\n * Helper function to replace invalid characters in text\n * @param text Text to replace invalid character\n */\n replaceInvalidCharacters(text) {\n const invalidReplacement = [\"-\", \"_\", \" \"].filter((c) => !this.forbiddenCharacters.includes(c))[0] ?? \"x\";\n this.forbiddenCharacters.forEach((c) => {\n text = text.replaceAll(c, invalidReplacement);\n });\n return text;\n },\n /**\n * Start uploading\n */\n onPick() {\n const input = this.$refs.input;\n const files = input.files ? Array.from(input.files) : [];\n this.uploadManager.batchUpload(\"\", files, this.handleConflicts).catch((error) => logger.debug(\"Error while uploading\", { error })).finally(() => this.resetForm());\n },\n resetForm() {\n const form = this.$refs.form;\n form?.reset();\n },\n /**\n * Cancel ongoing queue\n */\n onCancel() {\n this.uploadManager.queue.forEach((upload2) => {\n upload2.cancel();\n });\n this.resetForm();\n },\n updateStatus() {\n if (this.isPaused) {\n this.timeLeft = t(\"paused\");\n return;\n }\n const estimate = Math.round(this.eta.estimate());\n if (estimate === Infinity) {\n this.timeLeft = t(\"estimating time left\");\n return;\n }\n if (estimate < 10) {\n this.timeLeft = t(\"a few seconds left\");\n return;\n }\n if (estimate > 60) {\n const date = /* @__PURE__ */ new Date(0);\n date.setSeconds(estimate);\n const time = date.toISOString().slice(11, 11 + 8);\n this.timeLeft = t(\"{time} left\", { time });\n return;\n }\n this.timeLeft = t(\"{seconds} seconds left\", { seconds: estimate });\n },\n setDestination(destination) {\n if (!this.destination) {\n logger.debug(\"Invalid destination\");\n return;\n }\n this.uploadManager.destination = destination;\n this.newFileMenuEntries = getNewFileMenuEntries(destination);\n },\n onUploadCompletion(upload2) {\n if (upload2.status === Status$1.FAILED) {\n this.$emit(\"failed\", upload2);\n } else {\n this.$emit(\"uploaded\", upload2);\n }\n }\n }\n});\nvar _sfc_render = function render5() {\n var _vm = this, _c = _vm._self._c;\n _vm._self._setupProxy;\n return _vm.destination ? _c(\"form\", { ref: \"form\", staticClass: \"upload-picker\", class: { \"upload-picker--uploading\": _vm.isUploading, \"upload-picker--paused\": _vm.isPaused }, attrs: { \"data-cy-upload-picker\": \"\" } }, [_vm.newFileMenuEntries && _vm.newFileMenuEntries.length === 0 ? _c(\"NcButton\", { attrs: { \"disabled\": _vm.disabled, \"data-cy-upload-picker-add\": \"\", \"type\": \"secondary\" }, on: { \"click\": function($event) {\n return _vm.onTriggerPick();\n } }, scopedSlots: _vm._u([{ key: \"icon\", fn: function() {\n return [_c(\"IconPlus\", { attrs: { \"size\": 20 } })];\n }, proxy: true }], null, false, 1991456921) }, [_vm._v(\" \" + _vm._s(_vm.buttonName) + \" \")]) : _c(\"NcActions\", { attrs: { \"menu-name\": _vm.buttonName, \"menu-title\": _vm.t(\"New\"), \"type\": \"secondary\" }, scopedSlots: _vm._u([{ key: \"icon\", fn: function() {\n return [_c(\"IconPlus\", { attrs: { \"size\": 20 } })];\n }, proxy: true }], null, false, 1991456921) }, [_c(\"NcActionCaption\", { attrs: { \"name\": _vm.t(\"Upload from device\") } }), _c(\"NcActionButton\", { attrs: { \"data-cy-upload-picker-add\": \"\", \"close-after-click\": true }, on: { \"click\": function($event) {\n return _vm.onTriggerPick();\n } }, scopedSlots: _vm._u([{ key: \"icon\", fn: function() {\n return [_c(\"IconUpload\", { attrs: { \"size\": 20 } })];\n }, proxy: true }], null, false, 337456192) }, [_vm._v(\" \" + _vm._s(_vm.t(\"Upload files\")) + \" \")]), _vm.canUploadFolders ? _c(\"NcActionButton\", { attrs: { \"close-after-click\": \"\", \"data-cy-upload-picker-add-folders\": \"\" }, on: { \"click\": function($event) {\n return _vm.onTriggerPick(true);\n } }, scopedSlots: _vm._u([{ key: \"icon\", fn: function() {\n return [_c(\"IconFolderUpload\", { staticStyle: { \"color\": \"var(--color-primary-element)\" }, attrs: { \"size\": 20 } })];\n }, proxy: true }], null, false, 1037549157) }, [_vm._v(\" \" + _vm._s(_vm.t(\"Upload folders\")) + \" \")]) : _vm._e(), _vm._l(_vm.menuEntriesUpload, function(entry) {\n return _c(\"NcActionButton\", { key: entry.id, staticClass: \"upload-picker__menu-entry\", attrs: { \"icon\": entry.iconClass, \"close-after-click\": true }, on: { \"click\": function($event) {\n return entry.handler(_vm.destination, _vm.currentContent);\n } }, scopedSlots: _vm._u([entry.iconSvgInline ? { key: \"icon\", fn: function() {\n return [_c(\"NcIconSvgWrapper\", { attrs: { \"svg\": entry.iconSvgInline } })];\n }, proxy: true } : null], null, true) }, [_vm._v(\" \" + _vm._s(entry.displayName) + \" \")]);\n }), _vm.menuEntriesNew.length > 0 ? [_c(\"NcActionSeparator\"), _c(\"NcActionCaption\", { attrs: { \"name\": _vm.t(\"Create new\") } }), _vm._l(_vm.menuEntriesNew, function(entry) {\n return _c(\"NcActionButton\", { key: entry.id, staticClass: \"upload-picker__menu-entry\", attrs: { \"icon\": entry.iconClass, \"close-after-click\": true }, on: { \"click\": function($event) {\n return entry.handler(_vm.destination, _vm.currentContent);\n } }, scopedSlots: _vm._u([entry.iconSvgInline ? { key: \"icon\", fn: function() {\n return [_c(\"NcIconSvgWrapper\", { attrs: { \"svg\": entry.iconSvgInline } })];\n }, proxy: true } : null], null, true) }, [_vm._v(\" \" + _vm._s(entry.displayName) + \" \")]);\n })] : _vm._e(), _vm.menuEntriesOther.length > 0 ? [_c(\"NcActionSeparator\"), _vm._l(_vm.menuEntriesNew, function(entry) {\n return _c(\"NcActionButton\", { key: entry.id, staticClass: \"upload-picker__menu-entry\", attrs: { \"icon\": entry.iconClass, \"close-after-click\": true }, on: { \"click\": function($event) {\n return entry.handler(_vm.destination, _vm.currentContent);\n } }, scopedSlots: _vm._u([entry.iconSvgInline ? { key: \"icon\", fn: function() {\n return [_c(\"NcIconSvgWrapper\", { attrs: { \"svg\": entry.iconSvgInline } })];\n }, proxy: true } : null], null, true) }, [_vm._v(\" \" + _vm._s(entry.displayName) + \" \")]);\n })] : _vm._e()], 2), _c(\"div\", { directives: [{ name: \"show\", rawName: \"v-show\", value: _vm.isUploading, expression: \"isUploading\" }], staticClass: \"upload-picker__progress\" }, [_c(\"NcProgressBar\", { attrs: { \"aria-label\": _vm.t(\"Upload progress\"), \"aria-describedby\": _vm.progressTimeId, \"error\": _vm.hasFailure, \"value\": _vm.progress, \"size\": \"medium\" } }), _c(\"p\", { attrs: { \"id\": _vm.progressTimeId } }, [_vm._v(\" \" + _vm._s(_vm.timeLeft) + \" \")])], 1), _vm.isUploading ? _c(\"NcButton\", { staticClass: \"upload-picker__cancel\", attrs: { \"type\": \"tertiary\", \"aria-label\": _vm.t(\"Cancel uploads\"), \"data-cy-upload-picker-cancel\": \"\" }, on: { \"click\": _vm.onCancel }, scopedSlots: _vm._u([{ key: \"icon\", fn: function() {\n return [_c(\"IconCancel\", { attrs: { \"size\": 20 } })];\n }, proxy: true }], null, false, 3076329829) }) : _vm._e(), _c(\"input\", { ref: \"input\", staticClass: \"hidden-visually\", attrs: { \"accept\": _vm.accept?.join?.(\", \"), \"multiple\": _vm.multiple, \"data-cy-upload-picker-input\": \"\", \"type\": \"file\" }, on: { \"change\": _vm.onPick } })], 1) : _vm._e();\n};\nvar _sfc_staticRenderFns = [];\nvar __component__ = /* @__PURE__ */ normalizeComponent(\n _sfc_main,\n _sfc_render,\n _sfc_staticRenderFns,\n false,\n null,\n \"1f097873\",\n null,\n null\n);\nconst UploadPicker = __component__.exports;\nlet _uploader = null;\nfunction getUploader(isPublic = isPublicShare(), forceRecreate = false) {\n if (_uploader instanceof Uploader && !forceRecreate) {\n return _uploader;\n }\n _uploader = new Uploader(isPublic);\n return _uploader;\n}\nfunction upload(destinationPath, file) {\n const uploader = getUploader();\n uploader.upload(destinationPath, file);\n return uploader;\n}\nasync function openConflictPicker(dirname, conflicts, content, options) {\n const ConflictPicker = defineAsyncComponent(() => import(\"./ConflictPicker-CLXOphvC.mjs\"));\n return new Promise((resolve, reject) => {\n const picker = new Vue({\n name: \"ConflictPickerRoot\",\n render: (h) => h(ConflictPicker, {\n props: {\n dirname,\n conflicts,\n content,\n recursiveUpload: options?.recursive === true\n },\n on: {\n submit(results) {\n resolve(results);\n picker.$destroy();\n picker.$el?.parentNode?.removeChild(picker.$el);\n },\n cancel(error) {\n reject(error ?? new Error(\"Canceled\"));\n picker.$destroy();\n picker.$el?.parentNode?.removeChild(picker.$el);\n }\n }\n })\n });\n picker.$mount();\n document.body.appendChild(picker.$el);\n });\n}\nfunction hasConflict(files, content) {\n return getConflicts(files, content).length > 0;\n}\nfunction getConflicts(files, content) {\n const contentNames = content.map((node) => node.basename);\n const conflicts = files.filter((node) => {\n const name = \"basename\" in node ? node.basename : node.name;\n return contentNames.indexOf(name) !== -1;\n });\n return conflicts;\n}\nexport {\n Status as S,\n UploadPicker as U,\n n as a,\n getConflicts as b,\n Upload as c,\n Status$1 as d,\n getUploader as g,\n hasConflict as h,\n isFileSystemEntry as i,\n logger as l,\n normalizeComponent as n,\n openConflictPicker as o,\n t,\n upload as u\n};\n","function getLocale() {\n return document.documentElement.dataset.locale || \"en\";\n}\nfunction getCanonicalLocale() {\n return getLocale().replace(/_/g, \"-\");\n}\nfunction getLanguage() {\n return document.documentElement.lang || \"en\";\n}\nfunction isRTL(language) {\n const languageCode = language || getLanguage();\n const rtlLanguages = [\n /* eslint-disable no-multi-spaces */\n \"ae\",\n // Avestan\n \"ar\",\n // 'العربية', Arabic\n \"arc\",\n // Aramaic\n \"arz\",\n // 'مصرى', Egyptian\n \"bcc\",\n // 'بلوچی مکرانی', Southern Balochi\n \"bqi\",\n // 'بختياري', Bakthiari\n \"ckb\",\n // 'Soranî / کوردی', Sorani\n \"dv\",\n // Dhivehi\n \"fa\",\n // 'فارسی', Persian\n \"glk\",\n // 'گیلکی', Gilaki\n \"ha\",\n // 'هَوُسَ', Hausa\n \"he\",\n // 'עברית', Hebrew\n \"khw\",\n // 'کھوار', Khowar\n \"ks\",\n // 'कॉशुर / کٲشُر', Kashmiri\n \"ku\",\n // 'Kurdî / كوردی', Kurdish\n \"mzn\",\n // 'مازِرونی', Mazanderani\n \"nqo\",\n // 'ߒߞߏ', N’Ko\n \"pnb\",\n // 'پنجابی', Western Punjabi\n \"ps\",\n // 'پښتو', Pashto,\n \"sd\",\n // 'سنڌي', Sindhi\n \"ug\",\n // 'Uyghurche / ئۇيغۇرچە', Uyghur\n \"ur\",\n // 'اردو', Urdu\n \"uzs\",\n // 'اوزبیکی', Uzbek Afghan\n \"yi\"\n // 'ייִדיש', Yiddish\n /* eslint-enable no-multi-spaces */\n ];\n if ((language || getCanonicalLocale()).startsWith(\"uz-AF\")) {\n return true;\n }\n return rtlLanguages.includes(languageCode);\n}\nexport {\n getLanguage as a,\n getCanonicalLocale as b,\n getLocale as g,\n isRTL as i\n};\n","import { loadState } from \"@nextcloud/initial-state\";\nfunction isPublicShare() {\n return loadState(\"files_sharing\", \"isPublic\", null) ?? document.querySelector(\n 'input#isPublic[type=\"hidden\"][name=\"isPublic\"][value=\"1\"]'\n ) !== null;\n}\nfunction getSharingToken() {\n return loadState(\"files_sharing\", \"sharingToken\", null) ?? document.querySelector('input#sharingToken[type=\"hidden\"]')?.value ?? null;\n}\nexport {\n getSharingToken,\n isPublicShare\n};\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\tid: moduleId,\n\t\tloaded: false,\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Flag the module as loaded\n\tmodule.loaded = true;\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.f = {};\n// This file contains only the entry chunk.\n// The chunk loading function for additional chunks\n__webpack_require__.e = (chunkId) => {\n\treturn Promise.all(Object.keys(__webpack_require__.f).reduce((promises, key) => {\n\t\t__webpack_require__.f[key](chunkId, promises);\n\t\treturn promises;\n\t}, []));\n};","// This function allow to reference async chunks\n__webpack_require__.u = (chunkId) => {\n\t// return url for filenames based on template\n\treturn \"\" + chunkId + \"-\" + chunkId + \".js?v=\" + {\"1110\":\"e20948a2fd7d006e5209\",\"5455\":\"f19bb30c4edfe928a23c\",\"6778\":\"05456eb4fc16e404b623\"}[chunkId] + \"\";\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.nmd = (module) => {\n\tmodule.paths = [];\n\tif (!module.children) module.children = [];\n\treturn module;\n};","__webpack_require__.j = 2882;","var scriptUrl;\nif (__webpack_require__.g.importScripts) scriptUrl = __webpack_require__.g.location + \"\";\nvar document = __webpack_require__.g.document;\nif (!scriptUrl && document) {\n\tif (document.currentScript)\n\t\tscriptUrl = document.currentScript.src;\n\tif (!scriptUrl) {\n\t\tvar scripts = document.getElementsByTagName(\"script\");\n\t\tif(scripts.length) {\n\t\t\tvar i = scripts.length - 1;\n\t\t\twhile (i > -1 && (!scriptUrl || !/^http(s?):/.test(scriptUrl))) scriptUrl = scripts[i--].src;\n\t\t}\n\t}\n}\n// When supporting browsers where an automatic publicPath is not supported you must specify an output.publicPath manually via configuration\n// or pass an empty string (\"\") and set the __webpack_public_path__ variable from your code to use your own logic.\nif (!scriptUrl) throw new Error(\"Automatic publicPath is not supported in this browser\");\nscriptUrl = scriptUrl.replace(/#.*$/, \"\").replace(/\\?.*$/, \"\").replace(/\\/[^\\/]+$/, \"/\");\n__webpack_require__.p = scriptUrl;","__webpack_require__.b = document.baseURI || self.location.href;\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t2882: 0\n};\n\n__webpack_require__.f.j = (chunkId, promises) => {\n\t\t// JSONP chunk loading for javascript\n\t\tvar installedChunkData = __webpack_require__.o(installedChunks, chunkId) ? installedChunks[chunkId] : undefined;\n\t\tif(installedChunkData !== 0) { // 0 means \"already installed\".\n\n\t\t\t// a Promise means \"currently loading\".\n\t\t\tif(installedChunkData) {\n\t\t\t\tpromises.push(installedChunkData[2]);\n\t\t\t} else {\n\t\t\t\tif(true) { // all chunks have JS\n\t\t\t\t\t// setup Promise in chunk cache\n\t\t\t\t\tvar promise = new Promise((resolve, reject) => (installedChunkData = installedChunks[chunkId] = [resolve, reject]));\n\t\t\t\t\tpromises.push(installedChunkData[2] = promise);\n\n\t\t\t\t\t// start chunk loading\n\t\t\t\t\tvar url = __webpack_require__.p + __webpack_require__.u(chunkId);\n\t\t\t\t\t// create error before stack unwound to get useful stacktrace later\n\t\t\t\t\tvar error = new Error();\n\t\t\t\t\tvar loadingEnded = (event) => {\n\t\t\t\t\t\tif(__webpack_require__.o(installedChunks, chunkId)) {\n\t\t\t\t\t\t\tinstalledChunkData = installedChunks[chunkId];\n\t\t\t\t\t\t\tif(installedChunkData !== 0) installedChunks[chunkId] = undefined;\n\t\t\t\t\t\t\tif(installedChunkData) {\n\t\t\t\t\t\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n\t\t\t\t\t\t\t\tvar realSrc = event && event.target && event.target.src;\n\t\t\t\t\t\t\t\terror.message = 'Loading chunk ' + chunkId + ' failed.\\n(' + errorType + ': ' + realSrc + ')';\n\t\t\t\t\t\t\t\terror.name = 'ChunkLoadError';\n\t\t\t\t\t\t\t\terror.type = errorType;\n\t\t\t\t\t\t\t\terror.request = realSrc;\n\t\t\t\t\t\t\t\tinstalledChunkData[1](error);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t};\n\t\t\t\t\t__webpack_require__.l(url, loadingEnded, \"chunk-\" + chunkId, chunkId);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n};\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n__webpack_require__.O.j = (chunkId) => (installedChunks[chunkId] === 0);\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = (parentChunkLoadingFunction, data) => {\n\tvar chunkIds = data[0];\n\tvar moreModules = data[1];\n\tvar runtime = data[2];\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some((id) => (installedChunks[id] !== 0))) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\treturn __webpack_require__.O(result);\n}\n\nvar chunkLoadingGlobal = self[\"webpackChunknextcloud\"] = self[\"webpackChunknextcloud\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","__webpack_require__.nc = undefined;","// startup\n// Load entry module and return exports\n// This entry module depends on other loaded chunks and execution need to be delayed\nvar __webpack_exports__ = __webpack_require__.O(undefined, [4208], () => (__webpack_require__(81139)))\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["deferred","inProgress","dataWebpackPrefix","has","Object","prototype","hasOwnProperty","prefix","Events","EE","fn","context","once","this","addListener","emitter","event","TypeError","listener","evt","_events","push","_eventsCount","clearEvent","EventEmitter","create","__proto__","eventNames","events","name","names","call","slice","getOwnPropertySymbols","concat","listeners","handlers","i","l","length","ee","Array","listenerCount","emit","a1","a2","a3","a4","a5","args","len","arguments","removeListener","undefined","apply","j","on","removeAllListeners","off","prefixed","module","exports","pinia","createPinia","token","singleMatcher","RegExp","multiMatcher","decodeComponents","components","split","decodeURIComponent","join","left","right","decode","input","tokens","match","splitOnFirst","string","separator","separatorIndex","indexOf","includeKeys","object","predicate","result","isArray","key","descriptor","getOwnPropertyDescriptor","enumerable","defineProperty","Reflect","ownKeys","isNullOrUndefined","value","strictUriEncode","encodeURIComponent","replaceAll","x","charCodeAt","toString","toUpperCase","encodeFragmentIdentifier","Symbol","validateArrayFormatSeparator","encode","options","strict","encodedURI","replaceMap","exec","entries","keys","replace","customDecodeURIComponent","keysSorter","sort","a","b","Number","map","removeHash","hashStart","parseValue","parseNumbers","isNaN","trim","parseBooleans","toLowerCase","extract","queryStart","parse","query","arrayFormat","arrayFormatSeparator","formatter","accumulator","includes","isEncodedArray","newValue","item","test","arrayValue","flat","parserForArrayFormat","returnValue","parameter","parameter_","key2","value2","reduce","Boolean","stringify","shouldFilter","skipNull","skipEmptyString","index","keyValueSeparator","encoderForArrayFormat","objectCopy","filter","parseUrl","url","url_","hash","parseFragmentIdentifier","fragmentIdentifier","stringifyUrl","queryString","getHash","urlObjectForFragmentEncode","URL","pick","exclude","extend","encodeReserveRE","encodeReserveReplacer","c","commaRE","str","err","castQueryParamValue","String","parseQuery","res","forEach","param","parts","shift","val","stringifyQuery","obj","val2","trailingSlashRE","createRoute","record","location","redirectedFrom","router","clone","e","route","meta","path","params","fullPath","getFullPath","matched","formatMatch","freeze","START","unshift","parent","ref","_stringifyQuery","isSameRoute","onlyPath","isObjectEqual","aKeys","bKeys","every","aVal","bVal","handleRouteEntered","instances","instance","cbs","enteredCbs","i$1","_isBeingDestroyed","View","functional","props","type","default","render","_","children","data","routerView","h","$createElement","$route","cache","_routerViewCache","depth","inactive","_routerRoot","vnodeData","$vnode","keepAlive","_directInactive","_inactive","$parent","routerViewDepth","cachedData","cachedComponent","component","configProps","fillPropsinData","registerRouteInstance","vm","current","hook","prepatch","vnode","componentInstance","init","propsToPass","config","resolveProps","attrs","resolvePath","relative","base","append","firstChar","charAt","stack","pop","segments","segment","cleanPath","isarray","arr","pathToRegexp_1","pathToRegexp","groups","source","delimiter","optional","repeat","partial","asterisk","pattern","attachKeys","regexpToRegexp","flags","arrayToRegexp","tokensToRegExp","stringToRegexp","parse_1","tokensToFunction_1","tokensToFunction","tokensToRegExp_1","PATH_REGEXP","defaultDelimiter","m","escaped","offset","next","capture","group","modifier","escapeGroup","escapeString","substr","encodeURIComponentPretty","encodeURI","matches","opts","pretty","JSON","re","sensitive","end","endsWithDelimiter","compile","regexpCompileCache","fillParams","routeMsg","filler","pathMatch","normalizeLocation","raw","_normalized","params$1","rawPath","parsedPath","hashIndex","queryIndex","parsePath","basePath","extraQuery","_parseQuery","parsedQuery","resolveQuery","_Vue","noop","Link","to","required","tag","custom","exact","exactPath","activeClass","exactActiveClass","ariaCurrentValue","this$1$1","$router","resolve","href","classes","globalActiveClass","linkActiveClass","globalExactActiveClass","linkExactActiveClass","activeClassFallback","exactActiveClassFallback","compareTarget","target","queryIncludes","isIncludedRoute","handler","guardEvent","click","class","scopedSlot","$scopedSlots","$hasNormal","navigate","isActive","isExactActive","findAnchor","$slots","isStatic","aData","handler$1","event$1","aAttrs","metaKey","altKey","ctrlKey","shiftKey","defaultPrevented","button","currentTarget","getAttribute","preventDefault","child","inBrowser","window","createRouteMap","routes","oldPathList","oldPathMap","oldNameMap","parentRoute","pathList","pathMap","nameMap","addRouteRecord","splice","matchAs","pathToRegexpOptions","normalizedPath","normalizePath","caseSensitive","regex","compileRouteRegex","alias","redirect","beforeEnter","childMatchAs","aliases","aliasRoute","createMatcher","currentRoute","_createRoute","paramNames","record$1","matchRoute","originalRedirect","resolveRecordPath","aliasedMatch","aliasedRecord","addRoute","parentOrRoute","getRoutes","addRoutes","Time","performance","now","Date","genStateKey","toFixed","_key","getStateKey","setStateKey","positionStore","setupScroll","history","scrollRestoration","protocolAndPath","protocol","host","absolutePath","stateCopy","state","replaceState","addEventListener","handlePopState","removeEventListener","handleScroll","from","isPop","app","behavior","scrollBehavior","$nextTick","position","getScrollPosition","shouldScroll","then","scrollToPosition","catch","saveScrollPosition","pageXOffset","y","pageYOffset","isValidPosition","isNumber","normalizePosition","v","hashStartsWithNumberRE","isObject","selector","el","document","getElementById","querySelector","docRect","documentElement","getBoundingClientRect","elRect","top","getElementPosition","style","scrollTo","ua","supportsPushState","navigator","userAgent","pushState","NavigationFailureType","redirected","aborted","cancelled","duplicated","createNavigationCancelledError","createRouterError","message","error","Error","_isRouter","propertiesToLog","isError","isNavigationFailure","errorType","runQueue","queue","cb","step","flatMapComponents","flatten","hasSymbol","toStringTag","called","History","baseEl","normalizeBase","pending","ready","readyCbs","readyErrorCbs","errorCbs","extractGuards","records","bind","reverse","guards","def","guard","extractGuard","bindGuard","listen","onReady","errorCb","onError","transitionTo","onComplete","onAbort","prev","confirmTransition","updateRoute","ensureURL","afterHooks","abort","console","lastRouteIndex","lastCurrentIndex","max","Math","updated","activated","deactivated","resolveQueue","extractLeaveGuards","beforeHooks","extractUpdateHooks","hasAsync","cid","resolvedDef","__esModule","resolved","reject","reason","msg","comp","iterator","createNavigationAbortedError","createNavigationRedirectedError","enterGuards","bindEnterGuard","extractEnterGuards","resolveHooks","setupListeners","teardown","cleanupListener","HTML5History","_startLocation","getLocation","constructor","expectScroll","supportsScroll","handleRoutingEvent","go","n","fromRoute","getCurrentLocation","pathname","pathLowerCase","baseLowerCase","search","HashHistory","fallback","checkFallback","ensureSlash","replaceHash","eventType","pushHash","getUrl","AbstractHistory","targetIndex","VueRouter","apps","matcher","mode","prototypeAccessors","configurable","get","$once","routeOrError","handleInitialScroll","_route","beforeEach","registerHook","beforeResolve","afterEach","Promise","back","forward","getMatchedComponents","createHref","normalizedTo","defineProperties","VueRouter$1","list","install","Vue","installed","isDef","registerInstance","callVal","$options","_parentVnode","mixin","beforeCreate","_router","util","defineReactive","destroyed","strats","optionMergeStrategies","beforeRouteEnter","beforeRouteLeave","beforeRouteUpdate","created","version","START_LOCATION","use","Router","originalPush","generateUrl","view","emits","title","fillColor","size","_vm","_c","_self","_b","staticClass","$event","$emit","$attrs","_v","_s","_e","throttle","delay","callback","timeoutID","_ref","_ref$noTrailing","noTrailing","_ref$noLeading","noLeading","_ref$debounceMode","debounceMode","lastExec","clearExistingTimeout","clearTimeout","wrapper","_len","arguments_","self","elapsed","clear","setTimeout","cancel","_ref2$upcomingOnly","upcomingOnly","getLoggerBuilder","setApp","detectUser","build","ChartPie","NcAppNavigationItem","NcProgressBar","loadingStorageStats","storageStats","loadState","computed","storageStatsTitle","_this$storageStats","_this$storageStats2","_this$storageStats3","usedQuotaByte","formatFileSize","used","quotaByte","quota","t","storageStatsTooltip","beforeMount","setInterval","throttleUpdateStorageStats","subscribe","mounted","_this$storageStats4","_this$storageStats5","free","showStorageFullWarning","methods","debounceUpdateStorageStats","_ref$atBegin","atBegin","updateStorageStats","_response$data","_this$storageStats6","_response$data$data","_response$data$data2","response","axios","logger","showError","translate","styleTagTransform","setAttributes","insert","domAPI","insertStyleElement","locals","stopPropagation","slot","min","Function","$el","appendChild","userConfig","show_hidden","crop_image_previews","sort_favorites_first","sort_folders_first","grid_view","useUserConfigStore","userConfigStore","defineStore","actions","onUpdate","update","put","store","_initialized","Clipboard","NcAppSettingsDialog","NcAppSettingsSection","NcCheckboxRadioSwitch","NcInputField","Setting","open","setup","_window$OCA","_getCurrentUser","_loadState$enable_non","settings","OCA","Files","Settings","webdavUrl","generateRemoteUrl","getCurrentUser","uid","webdavDocs","appPasswordUrl","webdavUrlCopied","enableGridView","setting","beforeDestroy","close","onClose","setConfig","copyCloudId","select","clipboard","writeText","showSuccess","_l","scopedSlots","_u","proxy","useNavigation","navigation","getNavigation","views","shallowRef","currentView","active","onUpdateActive","detail","onUpdateViews","onMounted","onUnmounted","viewConfig","useViewConfigStore","getters","getConfig","setSortingBy","toggleSortingDirection","newDirection","sorting_direction","viewConfigStore","defineComponent","IconCog","NavigationQuota","NcAppNavigation","NcIconSvgWrapper","SettingsModal","settingsOpened","currentViewId","_this$$route","parentViews","order","childViews","watch","newView","oldView","_this$currentView","id","find","showView","debug","_ref2","useExactRouteMatching","_this$childViews$view","_window$OCA$close","Sidebar","$navigation","setActive","onToggleExpand","isExpanded","expanded","_this$viewConfigStore","generateToNavigation","dir","openSettings","onSettingsClose","_setupProxy","iconClass","sticky","icon","action","FileAction","displayName","iconSvgInline","InformationSvg","enabled","nodes","_window","_nodes$0$root","root","startsWith","permissions","Permission","NONE","node","OCP","goToRoute","fileid","client","davGetClient","fetchNode","async","propfindPayload","davGetDefaultPropfind","stat","davRootPath","details","davResultToNode","useFilesStore","fileStore","files","roots","getNode","getNodes","sources","getNodesById","fileId","values","getRoot","service","updateNodes","acc","deleteNodes","delete","setRoot","onDeletedNode","onCreatedNode","onUpdatedNode","all","usePathsStore","pathsStore","paths","getPath","addPath","payload","_getNavigation","FileType","Folder","dirname","_children","parentSource","parentFolder","useSelectionStore","selected","lastSelection","lastSelectedIndex","set","selection","Set","setLastIndex","reset","uploader","useUploaderStore","getUploader","toISOString","Directory","File","contents","super","_defineProperty","_contents","_computeDirectorySize","lastModified","_computeDirectoryMtime","directory","file","entry","traverseTree","isFile","readDirectory","dirReader","createReader","getEntries","readEntries","results","createDirectoryIfNotExists","davClient","exists","createDirectory","recursive","resolveConflict","destination","conflicts","basename","uploads","renamed","openConflictPicker","showInfo","info","getQueue","PQueue","concurrency","MoveCopyAction","canMove","ALL","UPDATE","canCopy","_node$attributes$shar","_node$attributes","attributes","some","attribute","scope","canDownload","resultToNode","getContents","controller","AbortController","CancelablePromise","onCancel","contentsResponse","getDirectoryContents","includeSelf","signal","filename","folder","getActionForNodes","MOVE_OR_COPY","MOVE","COPY","handleCopyMoveNodeTo","method","overwrite","NodeStatus","LOADING","add","copySuffix","currentPath","destinationPath","otherNodes","getUniqueName","suffix","ignoreFileExtension","copyFile","hasConflict","deleteFile","moveFile","isAxiosError","_error$response","_error$response2","_error$response3","status","openFilePickerForAction","fileIDs","filePicker","getFilePickerBuilder","allowDirectories","setFilter","setMimeTypeFilter","setMultiSelect","startAt","setButtonFactory","buttons","dirnames","label","escape","sanitize","CopyIconSvg","FolderMoveSvg","FilePickerClosed","_node$root","execBatch","promises","dataTransferToFileTree","items","kind","_item$getAsEntry","_item$getAsEntry2","_item$webkitGetAsEntr","getAsEntry","webkitGetAsEntry","warned","fileTree","DataTransferItem","warn","getAsFile","showWarning","onDropExternalFiles","uploadDirectoryContents","relativePath","joinPaths","upload","pause","start","errors","allSettled","onDropInternalFiles","isCopy","useDragAndDropStore","dragging","filesListWidth","_fileListEl$clientWid","fileListEl","clientWidth","$resizeObserver","ResizeObserver","contentRect","width","observe","disconnect","NcBreadcrumbs","NcBreadcrumb","mixins","filesListWidthMixin","draggingStore","filesStore","selectionStore","uploaderStore","dirs","sections","getFileSourceFromPath","getNodeFromSource","getDirDisplayName","disableDrop","isUploadInProgress","wrapUploadProgressBar","viewIcon","_this$currentView$ico","selectedFiles","draggingFiles","_this$$navigation","displayname","onClick","_to$query","onDragOver","dataTransfer","dropEffect","onDrop","_event$dataTransfer","_event$dataTransfer2","_this$currentView2","canDrop","CREATE","titleForSection","section","_section$to","ariaForSection","_section$to2","_t","nativeOn","getSummaryFor","fileCount","folderCount","useActionsMenuStore","opened","useRenamingStore","renamingStore","renamingNode","newName","FileMultipleIcon","FolderIcon","isSingleNode","isSingleFolder","summary","totalSize","total","parseInt","$refs","previewImg","replaceChildren","preview","parentNode","cloneNode","Preview","DragAndDropPreview","directive","vOnClickOutside","NcFile","Node","loading","dragover","gridMode","currentDir","_this$$route$query","currentFileId","_this$$route$params","_this$$route$query2","_this$source$fileid","uniqueId","hashCode","isLoading","extension","_this$source$attribut","extname","ext","isSelected","isRenaming","isRenamingSmallScreen","isFailedSource","FAILED","canDrag","openedMenu","actionsMenuStore","resetState","_this$$refs","_this$$refs$reset","onRightClick","_this$$el2","closest","removeProperty","_this$$el","setProperty","clientX","clientY","isMoreThanOneSelected","execDefaultAction","openDetailsIfAvailable","_sidebarAction$enable","sidebarAction","onDragLeave","contains","relatedTarget","onDragStart","_event$dataTransfer$c","clearData","$reset","image","$mount","body","$on","$off","getDragAndDropPreview","setDragImage","onDragEnd","_event$dataTransfer3","_event$dataTransfer4","updateRootElement","element","getFileActions","ArrowLeftIcon","CustomElementRender","NcActionButton","NcActions","NcActionSeparator","NcLoadingIcon","openedSubmenu","enabledActions","enabledInlineActions","_action$inline","inline","enabledRenderActions","renderInline","enabledDefaultActions","enabledMenuActions","DefaultType","HIDDEN","findIndex","topActionsIds","enabledSubmenuActions","getBoundariesElement","mountType","actionDisplayName","onActionClick","isSubmenu","$set","success","isMenu","_this$enabledSubmenuA","onBackToMenuClick","menuAction","_menuAction$$el$query","focus","_vm$openedSubmenu","_vm$openedSubmenu2","_action$title","refInFor","_action$title2","keyboardStore","onEvent","useKeyboardStore","ariaLabel","onSelectionChange","_this$keyboardStore","newSelectedIndex","isAlreadySelected","filesToSelect","resetSelection","_k","keyCode","forbiddenCharacters","NcTextField","renameLabel","linkTo","_this$$parent","_this$source","is","role","tabindex","READ","download","immediate","renaming","startRenaming","checkInputValidity","_this$newName$trim","_this$newName","isFileNameValid","setCustomValidity","reportValidity","trimmedName","OC","blacklist_files_regex","checkIfNodeExists","char","_this$$refs$renameInp","extLength","renameInput","inputField","setSelectionRange","dispatchEvent","Event","stopRenaming","onRename","_this$newName$trim2","_this$newName2","oldName","oldEncodedSource","encodedSource","rename","headers","Destination","Overwrite","_this$$refs$basename","_this$$refs$renameInp2","directives","rawName","expression","domProps","StarSvg","_el$setAttribute","setAttribute","AccountGroupIcon","AccountPlusIcon","CollectivesIcon","FavoriteIcon","FileIcon","FolderOpenIcon","KeyIcon","LinkIcon","NetworkIcon","TagIcon","backgroundFailed","_this$source$toString","isFavorite","favorite","cropPreviews","previewUrl","_this$source2","origin","searchParams","etag","fileOverlay","PlayCircleIcon","folderOverlay","_this$source3","_this$source4","_this$source5","_this$source6","shareTypes","ShareType","SHARE_TYPE_LINK","SHARE_TYPE_EMAIL","src","onBackgroundError","_event$target","_m","FileEntryActions","FileEntryCheckbox","FileEntryName","FileEntryPreview","NcDateTime","FileEntryMixin","isMtimeAvailable","isSizeAvailable","compact","rowListeners","dragstart","contextmenu","dragleave","dragend","drop","columns","sizeOpacity","ratio","round","pow","color","mtimeOpacity","_this$source$mtime","_this$source$mtime$ge","maxOpacityTime","mtime","getTime","mtimeTitle","moment","format","_g","column","_vm$currentView","inheritAttrs","header","currentFolder","mount","_this$currentFolder","_node$size","classForColumn","_column$summary","mapState","sortingMode","_this$getConfig","sorting_mode","defaultSortKey","isAscSorting","_this$getConfig2","toggleSortBy","MenuDown","MenuUp","NcButton","filesSortingMixin","FilesListTableHeaderButton","selectAllBind","checked","isAllSelected","indeterminate","isSomeSelected","selectedNodes","isNoneSelected","ariaSortForMode","onToggleAll","dataComponent","dataKey","dataSources","extraProps","scrollToIndex","caption","beforeHeight","headerHeight","tableHeight","resizeObserver","isReady","bufferItems","columnCount","itemHeight","itemWidth","rowCount","ceil","floor","startIndex","shownItems","renderedItems","oldItemsKeys","$_recycledPool","unusedKeys","random","totalRowCount","tbodyStyle","isOverScrolled","lastIndex","hiddenAfterItems","paddingTop","paddingBottom","minHeight","oldColumnCount","_this$$refs2","before","thead","debounce","_before$clientHeight","_thead$clientHeight","_root$clientHeight","clientHeight","onScroll","passive","targetRow","scrollTop","_this$_onScrollHandle","_onScrollHandle","requestAnimationFrame","topScroll","areSomeNodesLoading","inlineActions","selectionSources","failedSources","FilesListHeader","FilesListTableFooter","FilesListTableHeader","VirtualList","FilesListTableHeaderActions","FileEntry","FileEntryGrid","getFileListHeaders","openFileId","openFile","openfile","sortedHeaders","defaultCaption","viewCaption","sortableCaption","virtualListNote","scrollToFile","handleOpenFile","openSidebarForFile","defaultAction","at","types","tableElement","table","tableTop","tableBottom","height","count","TrayArrowDownIcon","canUpload","isQuotaExceeded","cantUploadLabel","mainContent","onContentDrop","_event$relatedTarget","_this$$el$querySelect","lastUpload","findLast","_upload$response","UploadStatus","webkitRelativePath","_this$$route$params$v","isSharingEnabled","_getCapabilities","getCapabilities","files_sharing","BreadCrumbs","DragAndDropNotice","FilesListVirtual","ListViewIcon","NcAppContent","NcEmptyContent","PlusIcon","UploadPicker","ViewGridIcon","Type","filterText","promise","unsubscribeStoreCallback","onSearch","searchEvent","getContent","_this$currentFolder$p","normalize","pageHeading","_this$currentView$nam","_this$$route$params$f","_this$$route2","number","sortingParameters","_v$attributes","_v$attributes2","dirContentsSorted","_this$currentView3","filteredDirContent","dirContents","customColumn","collection","identifiers","orders","_identifiers","_orders","sorting","_orders$index","collator","Intl","Collator","getLanguage","getCanonicalLocale","numeric","usage","identifier","compare","orderBy","_this$userConfigStore","_this$currentFolder2","showHidden","_file$attributes","hidden","isEmptyDir","isRefreshing","toPreviousDir","shareAttributes","_this$currentFolder3","_this$currentFolder4","shareButtonLabel","shareButtonType","SHARE_TYPE_USER","gridViewButtonLabel","_this$currentFolder5","canShare","SHARE","resetSearch","fetchContent","newDir","oldDir","filesListVirtual","onNodeDeleted","$subscribe","deep","unmounted","unsubscribe","fatal","_this$currentFolder6","_this$currentFolder$d","_this$currentFolder7","onUpload","onUploadFail","_upload$response2","CANCELLED","_doc$getElementsByTag","_doc$getElementsByTag2","DOMParser","parseFromString","getElementsByTagName","textContent","_this$currentFolder8","openSharingSidebar","setActiveTab","toggleGridView","_vm$currentView2","emptyTitle","emptyCaption","NcContent","FilesList","Navigation","__webpack_nonce__","btoa","getRequestToken","_window$OCA$Files","_window$OCP$Files","goTo","assign","PiniaVuePlugin","observable","_settings","register","_name","_el","_open","_close","FilesApp","___CSS_LOADER_EXPORT___","denyList","code","d","RC","autostart","ignoreSameProgress","rate","lastTimestamp","lastProgress","historyTimeConstant","previousOutput","dt","report","progress","timestamp","deltaTimestamp","currentRate","estimate","Infinity","estimatedTime","CancelError","isCanceled","promiseState","canceled","rejected","PCancelable","userFunction","executor","description","shouldReject","boolean","onFulfilled","onRejected","onFinally","finally","setPrototypeOf","TimeoutError","AbortError","getDOMException","errorMessage","globalThis","DOMException","getAbortedReason","PriorityQueue","enqueue","run","priority","array","comparator","first","trunc","it","lowerBound","dequeue","timeout","carryoverConcurrencyCount","intervalCap","POSITIVE_INFINITY","interval","autoStart","queueClass","isFinite","throwOnTimeout","clearInterval","canInitializeInterval","job","newConcurrency","_resolve","function_","throwIfAborted","operation","milliseconds","customTimers","timer","cancelablePromise","sign","timeoutError","pTimeout","race","addAll","functions","onEmpty","onSizeLessThan","limit","onIdle","sizeBy","isPaused","namespace","isNetworkError","SAFE_HTTP_METHODS","IDEMPOTENT_HTTP_METHODS","isRetryableError","isIdempotentRequestError","isNetworkOrIdempotentRequestError","retryAfter","retryAfterHeader","retryAfterMs","valueOf","DEFAULT_OPTIONS","retries","retryCondition","retryDelay","_retryNumber","shouldResetTimeout","onRetry","onMaxRetryTimesExceeded","validateResponse","setCurrentState","defaultOptions","currentState","getRequestOptions","retryCount","lastRequestTime","axiosRetry","axiosInstance","requestInterceptorId","interceptors","request","validateStatus","responseInterceptorId","shouldRetryOrPromise","_err","shouldRetry","defaults","agent","httpAgent","httpsAgent","fixConfig","lastRequestDuration","transformRequest","abortListener","handleRetry","handleMaxRetryTimesExceeded","isSafeRequestError","exponentialDelay","retryNumber","delayFactor","calculatedDelay","__defProp","__publicField","writable","__defNormalProp","GettextWrapper","locale","gt","sourceLocale","addTranslations","setLocale","subtitudePlaceholders","translated","vars","r","gettext","original","placeholders","ngettext","singular","plural","isFileSystemFileEntry","o","FileSystemFileEntry","isFileSystemEntry","FileSystemEntry","uploadData","uploadData2","onUploadProgress","destinationFile","Blob","getChunk","getMaxChunksSize","fileSize","maxChunkSize","appConfig","max_chunk_size","minimumChunkSize","Status$1","Status2","Upload","_source","_file","_isChunked","_chunks","_size","_uploaded","_startTime","_status","_controller","_response","chunked","chunks","isChunked","startTime","uploaded","_originalName","_path","Map","addChild","sum","latest","originalName","getChild","rootPath","FileSystemDirectoryEntry","reader","filePath","relPath","gtBuilder","setLanguage","language","detectLocale","lang","addTranslation","translations","enableDebugMode","json","Status","Uploader","_destinationFolder","_isPublic","_uploadQueue","_jobQueue","_queueSize","_queueProgress","_queueStatus","_notifiers","isPublic","destinationFolder","owner","user","maxChunksSize","updateStats","upload2","partialSum","addNotifier","notifier","_notifyAll","batchUpload","rootFolder","files2","uploadDirectory","folderPath","selectedForUpload","directories","currentUpload","UPLOADING","resolve2","resolvedUploads","resolvedDirectoryUploads","FINISHED","fileHandle","encodedDestinationFile","disabledChunkUpload","blob","bytes","tempUrl","initChunkWorkspace","chunksQueue","chunk","bufferStart","bufferEnd","normalizeComponent","scriptExports","render6","staticRenderFns","functionalTemplate","injectStyles","scopeId","moduleIdentifier","shadowMode","_compiled","_scopeId","ssrContext","__VUE_SSR_CONTEXT__","_registeredComponents","_ssrRegister","$root","shadowRoot","_injectStyles","originalRender","existing","IconCancel","IconFolderUpload","IconPlus","IconUpload","_sfc_main","NcActionCaption","accept","disabled","multiple","allowFolders","content","progressTimeId","eta","timeLeft","currentContent","newFileMenuEntries","uploadManager","menuEntriesUpload","category","UploadFromDevice","menuEntriesNew","CreateNew","menuEntriesOther","Other","canUploadFolders","createElement","totalQueueSize","uploadedQueueSize","hasFailure","isUploading","isAssembling","ASSEMBLING","PAUSED","buttonName","setDestination","updateStatus","onUploadCompletion","onTriggerPick","uploadFolders","webkitdirectory","setName","setSeverity","setText","setButtons","show","handleConflicts","getConflicts","filesToUpload","showInvalidFileNameDialog","replaceInvalidCharacters","text","invalidReplacement","onPick","resetForm","form","date","setSeconds","time","seconds","staticStyle","_uploader","isPublicShare","forceRecreate","ConflictPicker","picker","recursiveUpload","submit","$destroy","removeChild","contentNames","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","loaded","__webpack_modules__","O","chunkIds","notFulfilled","fulfilled","getter","definition","f","chunkId","u","g","prop","done","script","needAttach","scripts","s","charset","nc","onScriptComplete","onerror","onload","doneFns","head","nmd","scriptUrl","importScripts","currentScript","p","baseURI","installedChunks","installedChunkData","realSrc","webpackJsonpCallback","parentChunkLoadingFunction","moreModules","runtime","chunkLoadingGlobal","__webpack_exports__"],"sourceRoot":""} \ No newline at end of file