diff --git a/apps/files/src/actions/moveOrCopyAction.ts b/apps/files/src/actions/moveOrCopyAction.ts index 22afb79c4d6f4..9a9f8ba805f7b 100644 --- a/apps/files/src/actions/moveOrCopyAction.ts +++ b/apps/files/src/actions/moveOrCopyAction.ts @@ -22,6 +22,7 @@ import '@nextcloud/dialogs/style.css' import type { Folder, Node, View } from '@nextcloud/files' import type { IFilePickerButton } from '@nextcloud/dialogs' +import type { MoveCopyResult } from './moveOrCopyActionUtils' // eslint-disable-next-line n/no-extraneous-import import { AxiosError } from 'axios' @@ -92,7 +93,6 @@ export const handleCopyMoveNodeTo = async (node: Node, destination: Folder, meth const relativePath = join(destination.path, node.basename) const destinationUrl = generateRemoteUrl(`dav/files/${getCurrentUser()?.uid}${relativePath}`) - logger.debug(`${method} ${node.basename} to ${destinationUrl}`) // Set loading state Vue.set(node, 'status', NodeStatus.LOADING) @@ -140,33 +140,37 @@ export const handleCopyMoveNodeTo = async (node: Node, destination: Folder, meth * Open a file picker for the given action * @param {MoveCopyAction} action The action to open the file picker for * @param {string} dir The directory to start the file picker in - * @param {Node} node The node to move/copy - * @return {Promise} A promise that resolves to true if the action was successful + * @param {Node[]} nodes The nodes to move/copy + * @return {Promise} The picked destination */ -const openFilePickerForAction = async (action: MoveCopyAction, dir = '/', node: Node): Promise => { +const openFilePickerForAction = async (action: MoveCopyAction, dir = '/', nodes: Node[]): Promise => { + const fileIDs = nodes.map(node => node.fileid).filter(Boolean) const filePicker = getFilePickerBuilder(t('files', 'Chose destination')) .allowDirectories(true) .setFilter((n: Node) => { // We only want to show folders that we can create nodes in return (n.permissions & Permission.CREATE) !== 0 - // We don't want to show the current node in the file picker - && node.fileid !== n.fileid + // We don't want to show the current nodes in the file picker + && !fileIDs.includes(n.fileid) }) .setMimeTypeFilter([]) .setMultiSelect(false) .startAt(dir) return new Promise((resolve, reject) => { - filePicker.setButtonFactory((nodes: Node[], path: string) => { + filePicker.setButtonFactory((_selection, path: string) => { const buttons: IFilePickerButton[] = [] const target = basename(path) - if (node.dirname === path) { + const dirnames = nodes.map(node => node.dirname) + const paths = nodes.map(node => node.path) + + if (dirnames.includes(path)) { // This file/folder is already in that directory return buttons } - if (node.path === path) { + if (paths.includes(path)) { // You cannot move a file/folder onto itself return buttons } @@ -177,12 +181,10 @@ const openFilePickerForAction = async (action: MoveCopyAction, dir = '/', node: type: 'primary', icon: CopyIconSvg, async callback(destination: Node[]) { - try { - await handleCopyMoveNodeTo(node, destination[0], MoveCopyAction.COPY) - resolve(true) - } catch (error) { - reject(error) - } + resolve({ + destination: destination[0] as Folder, + action: MoveCopyAction.COPY, + } as MoveCopyResult) }, }) } @@ -193,13 +195,10 @@ const openFilePickerForAction = async (action: MoveCopyAction, dir = '/', node: type: action === MoveCopyAction.MOVE ? 'primary' : 'secondary', icon: FolderMoveSvg, async callback(destination: Node[]) { - try { - await handleCopyMoveNodeTo(node, destination[0], MoveCopyAction.MOVE) - resolve(true) - } catch (error) { - console.warn('got error', error) - reject(error) - } + resolve({ + destination: destination[0] as Folder, + action: MoveCopyAction.MOVE, + } as MoveCopyResult) }, }) } @@ -237,8 +236,9 @@ export const action = new FileAction({ async exec(node: Node, view: View, dir: string) { const action = getActionForNodes([node]) + const result = await openFilePickerForAction(action, dir, [node]) try { - await openFilePickerForAction(action, dir, node) + await handleCopyMoveNodeTo(node, result.destination, result.action) return true } catch (error) { if (error instanceof Error && !!error.message) { @@ -250,5 +250,24 @@ export const action = new FileAction({ } }, + async execBatch(nodes: Node[], view: View, dir: string) { + const action = getActionForNodes(nodes) + const result = await openFilePickerForAction(action, dir, nodes) + const promises = nodes.map(async node => { + try { + await handleCopyMoveNodeTo(node, result.destination, result.action) + return true + } catch (error) { + logger.error(`Failed to ${result.action} node`, { node, error }) + return false + } + }) + + // We need to keep the selection on error! + // So we do not return null, and for batch action + // we let the front handle the error. + return await Promise.all(promises) + }, + order: 15, }) diff --git a/apps/files/src/actions/moveOrCopyActionUtils.ts b/apps/files/src/actions/moveOrCopyActionUtils.ts index 82aaa02f9ed41..01614b14d8ac4 100644 --- a/apps/files/src/actions/moveOrCopyActionUtils.ts +++ b/apps/files/src/actions/moveOrCopyActionUtils.ts @@ -22,7 +22,7 @@ import '@nextcloud/dialogs/style.css' -import type { Node } from '@nextcloud/files' +import type { Folder, Node } from '@nextcloud/files' import { Permission } from '@nextcloud/files' import PQueue from 'p-queue' @@ -51,6 +51,11 @@ export enum MoveCopyAction { MOVE_OR_COPY = 'move-or-copy', } +export type MoveCopyResult = { + destination: Folder + action: MoveCopyAction.COPY | MoveCopyAction.MOVE +} + export const canMove = (nodes: Node[]) => { const minPermission = nodes.reduce((min, node) => Math.min(min, node.permissions), Permission.ALL) return (minPermission & Permission.UPDATE) !== 0 diff --git a/apps/files/src/init-templates.ts b/apps/files/src/init-templates.ts index 90651826a7c5d..879b60d0ee476 100644 --- a/apps/files/src/init-templates.ts +++ b/apps/files/src/init-templates.ts @@ -60,7 +60,7 @@ document.body.appendChild(TemplatePickerRoot) // Retrieve and init templates let templates = loadState('files', 'templates', []) let templatesPath = loadState('files', 'templates_path', false) -logger.debug('Templates providers', templates) +logger.debug('Templates providers', { templates }) logger.debug('Templates folder', { templatesPath }) // Init vue app diff --git a/dist/files-init.js b/dist/files-init.js index 454ef3683373c..b41f20f183b4b 100644 --- a/dist/files-init.js +++ b/dist/files-init.js @@ -1,3 +1,3 @@ /*! For license information please see files-init.js.LICENSE.txt */ -(()=>{var e,n,r,i={34507:(e,n,r)=>{"use strict";var i=r(5656),o=r(69183),a=r(31352),s=r(93664),l=r(17499);const d=(0,l.IY)().setApp("files").detectUser().build(),c=new i.p$({id:"delete",displayName:(e,t)=>"trashbin"===t.id?(0,a.Iu)("files","Delete permanently"):(0,a.Iu)("files","Delete"),iconSvgInline:()=>'',enabled:e=>e.length>0&&e.map((e=>e.permissions)).every((e=>0!=(e&i.y3.DELETE))),async exec(e){try{return await s.Z.delete(e.encodedSource),(0,o.j8)("files:node:deleted",e),!0}catch(t){return d.error("Error while deleting a file",{error:t,source:e.source,node:e}),!1}},async execBatch(e,t,n){return Promise.all(e.map((e=>this.exec(e,t,n))))},order:100});var u=r(79753);const f=function(e){const t=document.createElement("a");t.download="",t.href=e,t.click()},p=function(e,t){const n=Math.random().toString(36).substring(2),r=(0,u.generateUrl)("/apps/files/ajax/download.php?dir={dir}&files={files}&downloadStartSecret={secret}",{dir:e,secret:n,files:JSON.stringify(t.map((e=>e.basename)))});f(r)},h=function(e){if(0==(e.permissions&i.y3.READ))return!1;if("shared"===e.attributes["mount-type"]){const t=JSON.parse(e.attributes["share-attributes"]).find((e=>"permissions"===e.scope&&"download"===e.key));if(void 0!==t&&!1===t.enabled)return!1}return!0},g=new i.p$({id:"download",displayName:()=>(0,a.Iu)("files","Download"),iconSvgInline:()=>'',enabled:e=>0!==e.length&&(!e.some((e=>e.type===i.Tv.Folder))||!e.some((e=>!e.root?.startsWith("/files"))))&&e.every(h),exec:async(e,t,n)=>e.type===i.Tv.Folder?(p(n,[e]),null):(f(e.source),null),async execBatch(e,t,n){return 1===e.length?(this.exec(e[0],t,n),[null]):(p(n,e),new Array(e.length).fill(null))},order:30});var m=r(65358),A=r(77958),v=r(64024);const b=new i.p$({id:"edit-locally",displayName:()=>(0,a.Iu)("files","Edit locally"),iconSvgInline:()=>'',enabled:e=>1===e.length&&0!=(e[0].permissions&i.y3.UPDATE),exec:async e=>(async function(e){const t=(0,u.generateOcsUrl)("apps/files/api/v1")+"/openlocaleditor?format=json";try{const n=await s.Z.post(t,{path:e}),r=(0,A.ts)()?.uid;let i=`nc://open/${r}@`+window.location.host+(0,m.Ec)(e);i+="?token="+n.data.ocs.data.token,window.location.href=i}catch(e){(0,v.x2)((0,a.Iu)("files","Failed to redirect to client"))}}(e.path),null),order:25});var w=r(20144);const y='',_=e=>e.some((e=>1!==e.attributes.favorite)),C=async(e,t,n)=>{try{const r=(0,u.generateUrl)("/apps/files/api/v1/files")+(0,m.Ec)(e.path);return await s.Z.post(r,{tags:n?[window.OC.TAG_FAVORITE]:[]}),"favorites"!==t.id||n||"/"!==e.dirname||(0,o.j8)("files:node:deleted",e),w.default.set(e.attributes,"favorite",n?1:0),n?(0,o.j8)("files:favorites:added",e):(0,o.j8)("files:favorites:removed",e),!0}catch(t){const r=n?"adding a file to favourites":"removing a file from favourites";return d.error("Error while "+r,{error:t,source:e.source,node:e}),!1}},E=new i.p$({id:"favorite",displayName:e=>_(e)?(0,a.Iu)("files","Add to favorites"):(0,a.Iu)("files","Remove from favorites"),iconSvgInline:e=>_(e)?'':y,enabled:e=>!e.some((e=>!e.root?.startsWith?.("/files")))&&e.every((e=>e.permissions!==i.y3.NONE)),async exec(e,t){const n=_([e]);return await C(e,t,n)},async execBatch(e,t){const n=_(e);return Promise.all(e.map((async e=>await C(e,t,n))))},order:-50});var x=r(93379),k=r.n(x),T=r(7795),S=r.n(T),B=r(90569),N=r.n(B),O=r(3565),R=r.n(O),I=r(19216),P=r.n(I),L=r(44589),M=r.n(L),j=r(51473),D={};D.styleTagTransform=M(),D.setAttributes=R(),D.insert=N().bind(null,"head"),D.domAPI=S(),D.insertStyleElement=P(),k()(j.Z,D),j.Z&&j.Z.locals&&j.Z.locals;var F=r(51120);const{Axios:$,AxiosError:U,CanceledError:H,isCancel:q,CancelToken:V,VERSION:W,all:z,Cancel:Y,isAxiosError:Z,spread:G,toFormData:X,AxiosHeaders:K,HttpStatusCode:J,formToJSON:Q,getAdapter:ee,mergeConfig:te}=F.default;var ne=r(62520),re=r(59546),ie=r(96384),oe=r(59440);let ae;const se=()=>(ae||(ae=new oe.Z({concurrency:3})),ae);var le;!function(e){e.MOVE="Move",e.COPY="Copy",e.MOVE_OR_COPY="move-or-copy"}(le||(le={}));const de=e=>0!=(e.reduce(((e,t)=>Math.min(e,t.permissions)),i.y3.ALL)&i.y3.UPDATE),ce=e=>(e=>e.every((e=>!JSON.parse(e.attributes?.["share-attributes"]??"[]").some((e=>"permissions"===e.scope&&!1===e.enabled&&"download"===e.key)))))(e);var ue=r(25108);const fe=e=>de(e)?ce(e)?le.MOVE_OR_COPY:le.MOVE:le.COPY,pe=async function(e,t,n){let r=arguments.length>3&&void 0!==arguments[3]&&arguments[3];if(!t)return;if(t.type!==i.Tv.Folder)throw new Error((0,a.Iu)("files","Destination is not a folder"));if(e.dirname===t.path)throw new Error((0,a.Iu)("files","This file/folder is already in that directory"));if(t.path.startsWith(e.path))throw new Error((0,a.Iu)("files","You cannot move a file/folder onto itself or into a subfolder of itself"));const l=(0,ne.join)(t.path,e.basename),c=(0,u.generateRemoteUrl)(`dav/files/${(0,A.ts)()?.uid}${l}`);d.debug(`${n} ${e.basename} to ${c}`),w.default.set(e,"status",i.e4.LOADING);const f=se();return await f.add((async()=>{try{await(0,s.Z)({method:n===le.COPY?"COPY":"MOVE",url:e.encodedSource,headers:{Destination:encodeURI(c),Overwrite:r?void 0:"F"}}),n===le.MOVE&&(0,o.j8)("files:node:deleted",e)}catch(e){if(e instanceof U){if(412===e?.response?.status)throw new Error((0,a.Iu)("files","A file or folder with that name already exists in this folder"));if(423===e?.response?.status)throw new Error((0,a.Iu)("files","The files is locked"));if(404===e?.response?.status)throw new Error((0,a.Iu)("files","The file does not exist anymore"));if(e.message)throw new Error(e.message)}throw new Error}finally{w.default.set(e,"status",void 0)}}))},he=new i.p$({id:"move-copy",displayName(e){switch(fe(e)){case le.MOVE:return(0,a.Iu)("files","Move");case le.COPY:return(0,a.Iu)("files","Copy");case le.MOVE_OR_COPY:return(0,a.Iu)("files","Move or copy")}},iconSvgInline:()=>ie,enabled:e=>!!e.every((e=>e.root?.startsWith("/files/")))&&e.length>0&&(de(e)||ce(e)),async exec(e,t,n){const r=fe([e]);try{return await async function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"/",n=arguments.length>2?arguments[2]:void 0;const r=(0,v.fn)((0,a.Iu)("files","Chose destination")).allowDirectories(!0).setFilter((e=>0!=(e.permissions&i.y3.CREATE)&&n.fileid!==e.fileid)).setMimeTypeFilter([]).setMultiSelect(!1).startAt(t);return new Promise(((t,i)=>{r.setButtonFactory(((r,o)=>{const s=[],l=(0,ne.basename)(o);return n.dirname===o||n.path===o||(e!==le.COPY&&e!==le.MOVE_OR_COPY||s.push({label:l?(0,a.Iu)("files","Copy to {target}",{target:l}):(0,a.Iu)("files","Copy"),type:"primary",icon:re,async callback(e){try{await pe(n,e[0],le.COPY),t(!0)}catch(e){i(e)}}}),e!==le.MOVE&&e!==le.MOVE_OR_COPY||s.push({label:l?(0,a.Iu)("files","Move to {target}",{target:l}):(0,a.Iu)("files","Move"),type:e===le.MOVE?"primary":"secondary",icon:ie,async callback(e){try{await pe(n,e[0],le.MOVE),t(!0)}catch(e){ue.warn("got error",e),i(e)}}})),s})),r.build().pick().catch((()=>{i(new Error((0,a.Iu)("files","Cancelled move or copy operation")))}))}))}(r,n,e),!0}catch(e){return!!(e instanceof Error&&e.message)&&((0,v.x2)(e.message),null)}},order:15}),ge='',me=new i.p$({id:"open-folder",displayName(e){const t=e[0].attributes.displayName||e[0].basename;return(0,a.Iu)("files","Open folder {displayName}",{displayName:t})},iconSvgInline:()=>ge,enabled(e){if(1!==e.length)return!1;const t=e[0];return!!t.isDavRessource&&t.type===i.Tv.Folder&&0!=(t.permissions&i.y3.READ)},exec:async(e,t,n)=>!(!e||e.type!==i.Tv.Folder)&&(window.OCP.Files.Router.goToRoute(null,{view:t.id,fileid:e.fileid},{dir:(0,ne.join)(n,e.basename)}),null),default:i.DT.HIDDEN,order:-100}),Ae=new i.p$({id:"open-in-files-recent",displayName:()=>(0,a.Iu)("files","Open in Files"),iconSvgInline:()=>"",enabled:(e,t)=>"recent"===t.id,async exec(e){let t=e.dirname;return e.type===i.Tv.Folder&&(t=t+"/"+e.basename),window.OCP.Files.Router.goToRoute(null,{view:"files",fileid:e.fileid},{dir:t}),null},order:-1e3,default:i.DT.HIDDEN}),ve=new i.p$({id:"rename",displayName:()=>(0,a.Iu)("files","Rename"),iconSvgInline:()=>'',enabled:e=>e.length>0&&e.map((e=>e.permissions)).every((e=>0!=(e&i.y3.UPDATE))),exec:async e=>((0,o.j8)("files:node:rename",e),null),order:10});var be=r(48250);const we=new i.p$({id:"details",displayName:()=>(0,a.Iu)("files","Open details"),iconSvgInline:()=>be,enabled:e=>1===e.length&&!!e[0]&&!!window?.OCA?.Files?.Sidebar&&((e[0].root?.startsWith("/files/")&&e[0].permissions!==i.y3.NONE)??!1),async exec(e,t,n){try{return await window.OCA.Files.Sidebar.open(e.path),window.OCP.Files.Router.goToRoute(null,{view:t.id,fileid:e.fileid},{dir:n},!0),null}catch(e){return d.error("Error while opening sidebar",{error:e}),!1}},order:-50}),ye=new i.p$({id:"view-in-folder",displayName:()=>(0,a.Iu)("files","View in folder"),iconSvgInline:()=>ie,enabled(e){if(1!==e.length)return!1;const t=e[0];return!!t.isDavRessource&&t.permissions!==i.y3.NONE&&t.type===i.Tv.File},exec:async(e,t,n)=>!(!e||e.type!==i.Tv.File)&&(window.OCP.Files.Router.goToRoute(null,{view:"files",fileid:e.fileid},{dir:e.dirname}),null),order:80}),_e=(e,t)=>{let n=e,r=1;for(;t.includes(n);){const t=(0,ne.extname)(e);n=`${(0,ne.basename)(e,t)} (${r++})${t}`}return n},Ce={id:"newFolder",displayName:(0,a.Iu)("files","New folder"),enabled:e=>0!=(e.permissions&i.y3.CREATE),iconSvgInline:'',order:0,async handler(e,t){const n=t.map((e=>e.basename)),r=_e((0,a.Iu)("files","New folder"),n),{fileid:l,source:c}=await(async(e,t)=>{const n=e.source+"/"+t,r=e.encodedSource+"/"+encodeURIComponent(t),i=await(0,s.Z)({method:"MKCOL",url:r,headers:{Overwrite:"F"}});return{fileid:parseInt(i.headers["oc-fileid"]),source:n}})(e,r),u=new i.gt({source:c,id:l,mtime:new Date,owner:(0,A.ts)()?.uid||null,permissions:i.y3.ALL,root:e?.root||"/files/"+(0,A.ts)()?.uid});(0,v.s$)((0,a.Iu)("files",'Created new folder "{name}"',{name:(0,ne.basename)(c)})),d.debug("Created new folder",{folder:u,source:c}),(0,o.j8)("files:node:created",u),(0,o.j8)("files:node:rename",u)}};var Ee=r(43554),xe=r(14596),ke=r(8501),Te=r(79267);const Se="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope?self:"undefined"!=typeof window?window:globalThis,Be=Se.fetch.bind(Se);Se.Headers,Se.Request,Se.Response;const Ne="@@HOTPATCHER",Oe=()=>{};function Re(e){return{original:e,methods:[e],final:!1}}class Ie{constructor(){this._configuration={registry:{},getEmptyAction:"null"},this.__type__=Ne}get configuration(){return this._configuration}get getEmptyAction(){return this.configuration.getEmptyAction}set getEmptyAction(e){this.configuration.getEmptyAction=e}control(e,t=!1){if(!e||e.__type__!==Ne)throw new Error("Failed taking control of target HotPatcher instance: Invalid type or object");return Object.keys(e.configuration.registry).forEach((n=>{this.configuration.registry.hasOwnProperty(n)?t&&(this.configuration.registry[n]=Object.assign({},e.configuration.registry[n])):this.configuration.registry[n]=Object.assign({},e.configuration.registry[n])})),e._configuration=this.configuration,this}execute(e,...t){return(this.get(e)||Oe)(...t)}get(e){const t=this.configuration.registry[e];if(!t)switch(this.getEmptyAction){case"null":return null;case"throw":throw new Error(`Failed handling method request: No method provided for override: ${e}`);default:throw new Error(`Failed handling request which resulted in an empty method: Invalid empty-action specified: ${this.getEmptyAction}`)}return function(...e){if(0===e.length)throw new Error("Failed creating sequence: No functions provided");return function(...t){let n=t;const r=this;for(;e.length>0;)n=[e.shift().apply(r,n)];return n[0]}}(...t.methods)}isPatched(e){return!!this.configuration.registry[e]}patch(e,t,n={}){const{chain:r=!1}=n;if(this.configuration.registry[e]&&this.configuration.registry[e].final)throw new Error(`Failed patching '${e}': Method marked as being final`);if("function"!=typeof t)throw new Error(`Failed patching '${e}': Provided method is not a function`);if(r)this.configuration.registry[e]?this.configuration.registry[e].methods.push(t):this.configuration.registry[e]=Re(t);else if(this.isPatched(e)){const{original:n}=this.configuration.registry[e];this.configuration.registry[e]=Object.assign(Re(t),{original:n})}else this.configuration.registry[e]=Re(t);return this}patchInline(e,t,...n){return this.isPatched(e)||this.patch(e,t),this.execute(e,...n)}plugin(e,...t){return t.forEach((t=>{this.patch(e,t,{chain:!0})})),this}restore(e){if(!this.isPatched(e))throw new Error(`Failed restoring method: No method present for key: ${e}`);if("function"!=typeof this.configuration.registry[e].original)throw new Error(`Failed restoring method: Original method not found or of invalid type for key: ${e}`);return this.configuration.registry[e].methods=[this.configuration.registry[e].original],this}setFinal(e){if(!this.configuration.registry.hasOwnProperty(e))throw new Error(`Failed marking '${e}' as final: No method found for key`);return this.configuration.registry[e].final=!0,this}}let Pe=null;var Le=r(62639),Me=r(2568);const je="abcdef0123456789";function De(e,t){const n=e.url.replace("//",""),r=-1==n.indexOf("/")?"/":n.slice(n.indexOf("/")),i=e.method?e.method.toUpperCase():"GET",o=!!/(^|,)\s*auth\s*($|,)/.test(t.qop)&&"auth",a=`00000000${t.nc}`.slice(-8),s=function(e,t,n,r,i,o,a){const s=a||Me(`${t}:${n}:${r}`);return e&&"md5-sess"===e.toLowerCase()?Me(`${s}:${i}:${o}`):s}(t.algorithm,t.username,t.realm,t.password,t.nonce,t.cnonce,t.ha1),l=Me(`${i}:${r}`),d=Me(o?`${s}:${t.nonce}:${a}:${t.cnonce}:${o}:${l}`:`${s}:${t.nonce}:${l}`),c={username:t.username,realm:t.realm,nonce:t.nonce,uri:r,qop:o,response:d,nc:a,cnonce:t.cnonce,algorithm:t.algorithm,opaque:t.opaque},u=[];for(const e in c)c[e]&&("qop"===e||"nc"===e||"algorithm"===e?u.push(`${e}=${c[e]}`):u.push(`${e}="${c[e]}"`));return`Digest ${u.join(", ")}`}function Fe(e){return function(e){if("object"!=typeof e||null===e||"[object Object]"!=Object.prototype.toString.call(e))return!1;if(null===Object.getPrototypeOf(e))return!0;let t=e;for(;null!==Object.getPrototypeOf(t);)t=Object.getPrototypeOf(t);return Object.getPrototypeOf(e)===t}(e)?Object.assign({},e):Object.setPrototypeOf(Object.assign({},e),Object.getPrototypeOf(e))}function $e(...e){let t=null,n=[...e];for(;n.length>0;){const e=n.shift();t=t?Ue(t,e):Fe(e)}return t}function Ue(e,t){const n=Fe(e);return Object.keys(t).forEach((e=>{n.hasOwnProperty(e)?Array.isArray(t[e])?n[e]=Array.isArray(n[e])?[...n[e],...t[e]]:[...t[e]]:"object"==typeof t[e]&&t[e]?n[e]="object"==typeof n[e]&&n[e]?Ue(n[e],t[e]):Fe(t[e]):n[e]=t[e]:n[e]=t[e]})),n}function He(...e){if(0===e.length)return{};const t={};return e.reduce(((e,n)=>(Object.keys(n).forEach((r=>{const i=r.toLowerCase();t.hasOwnProperty(i)?e[t[i]]=n[r]:(t[i]=r,e[r]=n[r])})),e)),{})}var qe=r(42830);const Ve="function"==typeof ArrayBuffer,{toString:We}=Object.prototype;function ze(e){const t=(Pe||(Pe=new Ie),Pe);return t.patchInline("request",(e=>t.patchInline("fetch",Be,e.url,function(e){let t={};const n={method:e.method};if(e.headers&&(t=He(t,e.headers)),void 0!==e.data){const[r,i]=function(e){if(!(0,Le.$)()&&e instanceof qe.Readable)return[e,{}];if("string"==typeof e)return[e,{}];if(null!=(t=e)&&null!=t.constructor&&"function"==typeof t.constructor.isBuffer&&t.constructor.isBuffer(t))return[e,{}];if(function(e){return Ve&&(e instanceof ArrayBuffer||"[object ArrayBuffer]"===We.call(e))}(e))return[e,{}];if(e&&"object"==typeof e)return[JSON.stringify(e),{"content-type":"application/json"}];var t;throw new Error("Unable to convert request body: Unexpected body type: "+typeof e)}(e.data);n.body=r,t=He(t,i)}return e.signal&&(n.signal=e.signal),e.withCredentials&&(n.credentials="include"),(0,Le.$)()||(e.httpAgent||e.httpsAgent)&&(n.agent=t=>"http:"===t.protocol?e.httpAgent||new ke.Agent:e.httpsAgent||new Te.Agent),n.headers=t,n}(e))),e)}const Ye=`/files/${(0,A.ts)()?.uid}`,Ze=(0,u.generateRemoteUrl)("dav"+Ye),Ge=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:Ze;const t=(0,xe.eI)(e,{headers:{requesttoken:(0,A.IH)()||""}});return(0,xe.lD)().patch("request",(e=>(e.headers?.method&&(e.method=e.headers.method,delete e.headers.method),async function(e){if(!e._digest)return ze(e);const t=e._digest;delete e._digest,t.hasDigestAuth&&(e=$e(e,{headers:{Authorization:De(e,t)}}));const n=await ze(e);if(401==n.status){if(t.hasDigestAuth=function(e,t){const n=e.headers&&e.headers.get("www-authenticate")||"";if("digest"!==n.split(/\s/)[0].toLowerCase())return!1;const r=/([a-z0-9_-]+)=(?:"([^"]+)"|([a-z0-9_-]+))/gi;for(;;){const e=r.exec(n);if(!e)break;t[e[1]]=e[2]||e[3]}return t.nc+=1,t.cnonce=function(){let e="";for(let t=0;t<32;++t)e=`${e}${je[Math.floor(16*Math.random())]}`;return e}(),!0}(n,t),t.hasDigestAuth){e=$e(e,{headers:{Authorization:De(e,t)}});const n=await ze(e);return 401==n.status?t.hasDigestAuth=!1:t.nc++,n}}else t.nc++;return n}(e)))),t};var Xe=r(3443);const Ke=function(e){return e.split("").reduce((function(e,t){return(e=(e<<5)-e+t.charCodeAt(0))&e}),0)},Je=Ge(),Qe=function(e){const t=e.props,n=(0,i.zu)(t?.permissions),r=(0,A.ts)()?.uid,o=(0,u.generateRemoteUrl)("dav"+Ye+e.filename),a={id:t?.fileid<0?Ke(o):t?.fileid||0,source:o,mtime:new Date(e.lastmod),mime:e.mime,size:t?.size||0,permissions:n,owner:r,root:Ye,attributes:{...e,...t,hasPreview:t?.["has-preview"],failed:t?.fileid<0}};return delete a.attributes.props,"file"===e.type?new i.$B(a):new i.gt(a)},et=Ge(),tt=`\n\n\t\n\t\t${(0,i.m0)()}\n\t\n\t\n\t\t1\n\t\n`,nt=async function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"/";const t=(0,i.h7)();let n;"/"===e&&(n=await et.stat(e,{details:!0,data:t}));const r=await et.getDirectoryContents(e,{details:!0,data:"/"===e?tt:t,headers:{method:"/"===e?"REPORT":"PROPFIND"},includeSelf:!0}),o=n?.data||r.data[0],a=r.data.filter((t=>t.filename!==e));return{folder:Qe(o),contents:a.map(Qe)}},rt=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;return new i.G7({id:it(e),name:(0,ne.basename)(e),icon:ge,order:t,params:{dir:e,view:"favorites"},parent:"favorites",columns:[],getContents:nt})},it=function(e){return`favorite-${Ke(e)}`},ot=Ge((0,u.generateRemoteUrl)("dav")),at=Math.round(Date.now()/1e3-1209600),st=`\n\n\t\n\t\t\n\t\t\t\n\t\t\t\t${(0,i.m0)()}\n\t\t\t\n\t\t\n\t\t\n\t\t\t\n\t\t\t\t/files/${(0,A.ts)()?.uid}/\n\t\t\t\tinfinity\n\t\t\t\n\t\t\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\thttpd/unix-directory\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t0\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t${at}\n\t\t\t\t\n\t\t\t\n\t\t\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\n\t\t\n\t\t\t100\n\t\t\t0\n\t\t\n\t\n`;var lt=r(22175),dt=r(25475);const ct={name:"TemplatePreview",inheritAttrs:!1,props:{basename:{type:String,required:!0},checked:{type:Boolean,default:!1},fileid:{type:[String,Number],required:!0},filename:{type:String,required:!0},previewUrl:{type:String,default:null},hasPreview:{type:Boolean,default:!0},mime:{type:String,required:!0},ratio:{type:Number,default:null}},data:()=>({failedPreview:!1}),computed:{nameWithoutExt(){return this.basename.indexOf(".")>-1?this.basename.split(".").slice(0,-1).join("."):this.basename},id(){return`template-picker-${this.fileid}`},realPreviewUrl(){return this.failedPreview&&this.mimeIcon?this.mimeIcon:this.previewUrl?this.previewUrl:(0,A.ts)()?(0,u.generateUrl)(`/core/preview?fileId=${this.fileid}&x=256&y=256&a=1`):(0,u.generateUrl)(`/apps/files_sharing/publicpreview/${document.getElementById("sharingToken")&&document.getElementById("sharingToken").value}?fileId=${this.fileid}&file=${function(e){const t=(e.startsWith("/")?e:`/${e}`).split("/");let n="";return t.forEach((e=>{""!==e&&(n+="/"+encodeURIComponent(e))})),n}(this.filename)}&x=256&y=256&a=1`)},mimeIcon(){return OC.MimeType.getIconUrl(this.mime)}},methods:{onCheck(){this.$emit("check",this.fileid)},onFailure(){this.failedPreview=!0}}};var ut=r(92246),ft={};ft.styleTagTransform=M(),ft.setAttributes=R(),ft.insert=N().bind(null,"head"),ft.domAPI=S(),ft.insertStyleElement=P(),k()(ut.Z,ft),ut.Z&&ut.Z.locals&&ut.Z.locals;var pt=r(51900);const ht=(0,pt.Z)(ct,(function(){var e=this,t=e._self._c;return t("li",{staticClass:"template-picker__item"},[t("input",{staticClass:"radio",attrs:{id:e.id,type:"radio",name:"template-picker"},domProps:{checked:e.checked},on:{change:e.onCheck}}),e._v(" "),t("label",{staticClass:"template-picker__label",attrs:{for:e.id}},[t("div",{staticClass:"template-picker__preview",class:e.failedPreview?"template-picker__preview--failed":""},[t("img",{staticClass:"template-picker__image",attrs:{src:e.realPreviewUrl,alt:"",draggable:"false"},on:{error:e.onFailure}})]),e._v(" "),t("span",{staticClass:"template-picker__title"},[e._v("\n\t\t\t"+e._s(e.nameWithoutExt)+"\n\t\t")])])])}),[],!1,null,"0859a92c",null).exports,gt=w.default.extend({name:"TemplatePicker",components:{NcEmptyContent:lt.Z,NcModal:dt.Z,TemplatePreview:ht},props:{logger:{type:Object,required:!0}},data:()=>({checked:-1,loading:!1,name:null,opened:!1,provider:null}),computed:{extension(){return(0,ne.extname)(this.name)},nameWithoutExt(){return this.extension?this.name.slice(0,0-this.extension.length):this.name},emptyTemplate(){return{basename:t("files","Blank"),fileid:-1,filename:this.t("files","Blank"),hasPreview:!1,mime:this.provider?.mimetypes[0]||this.provider?.mimetypes}},selectedTemplate(){return this.provider?this.provider.templates.find((e=>e.fileid===this.checked)):null},style(){if(!this.provider)return{};const e=(this.provider.ratio?this.provider.ratio:1.77)>1?240:160;return{"--margin":"8px","--width":e+"px","--border":"2px","--fullwidth":e+16+4+"px","--height":this.provider.ratio?Math.round(e/this.provider.ratio)+"px":null}}},methods:{async open(e,t){this.checked=this.emptyTemplate.fileid,this.name=e,this.provider=t;const n=(await async function(){return(await s.Z.get((0,u.generateOcsUrl)("apps/files/api/v1/templates"))).data.ocs.data}()).find((e=>e.app===t.app&&e.label===t.label));if(null===n)throw new Error("Failed to match provider in results");this.provider=n,0!==n.templates.length?this.opened=!0:this.onSubmit()},close(){this.checked=this.emptyTemplate.fileid,this.loading=!1,this.name=null,this.opened=!1,this.provider=null},onCheck(e){this.checked=e},async onSubmit(){this.loading=!0;const e=new URL(window.location.href).searchParams.get("dir")||"/";this.nameWithoutExt===this.name&&(this.logger.warn("Fixed invalid filename",{name:this.name,extension:this.provider?.extension}),this.name=this.name+this.provider?.extension);try{const t=await async function(e,t,n){return(await s.Z.post((0,u.generateOcsUrl)("apps/files/api/v1/templates/create"),{filePath:e,templatePath:t,templateType:n})).data.ocs.data}((0,ne.normalize)(`${e}/${this.name}`),this.selectedTemplate?.filename,this.selectedTemplate?.templateType);this.logger.debug("Created new file",t);const n=(0,A.ts)()?.uid||null,r=new i.$B({id:t.fileid,source:(0,u.generateRemoteUrl)((0,ne.join)("dav/files",n,t.filename)),root:`/files/${n}`,mime:t.mime,mtime:new Date(1e3*t.lastmod),owner:n,size:t.size,permissions:t.permissions,attributes:{...t,"has-preview":t.hasPreview}});(0,o.j8)("files:node:created",r),window.OCP.Files.Router.goToRoute(null,{view:"files",fileid:r.fileid},{dir:r.dirname,openfile:!0}),this.close()}catch(e){this.logger.error("Error while creating the new file from template",{error:e}),(0,v.x2)(this.t("files","Unable to create new file from template"))}finally{this.loading=!1}}}});var mt=r(24142),At={};At.styleTagTransform=M(),At.setAttributes=R(),At.insert=N().bind(null,"head"),At.domAPI=S(),At.insertStyleElement=P(),k()(mt.Z,At),mt.Z&&mt.Z.locals&&mt.Z.locals;const vt=(0,pt.Z)(gt,(function(){var e=this,t=e._self._c;return e._self._setupProxy,e.opened?t("NcModal",{staticClass:"templates-picker",attrs:{"clear-view-delay":-1,size:"large"},on:{close:e.close}},[t("form",{staticClass:"templates-picker__form",style:e.style,on:{submit:function(t){return t.preventDefault(),t.stopPropagation(),e.onSubmit.apply(null,arguments)}}},[t("h2",[e._v(e._s(e.t("files","Pick a template for {name}",{name:e.nameWithoutExt})))]),e._v(" "),t("ul",{staticClass:"templates-picker__list"},[t("TemplatePreview",e._b({attrs:{checked:e.checked===e.emptyTemplate.fileid},on:{check:e.onCheck}},"TemplatePreview",e.emptyTemplate,!1)),e._v(" "),e._l(e.provider.templates,(function(n){return t("TemplatePreview",e._b({key:n.fileid,attrs:{checked:e.checked===n.fileid,ratio:e.provider.ratio},on:{check:e.onCheck}},"TemplatePreview",n,!1))}))],2),e._v(" "),t("div",{staticClass:"templates-picker__buttons"},[t("input",{staticClass:"primary",attrs:{type:"submit","aria-label":e.t("files","Create a new file with the selected template")},domProps:{value:e.t("files","Create")}})])]),e._v(" "),e.loading?t("NcEmptyContent",{staticClass:"templates-picker__loading",attrs:{icon:"icon-loading"}},[e._v("\n\t\t"+e._s(e.t("files","Creating file"))+"\n\t")]):e._e()],1):e._e()}),[],!1,null,"48121b39",null).exports,bt=(0,l.IY)().setApp("files").detectUser().build();w.default.mixin({methods:{t:a.Iu,n:a.uN}});const wt=document.createElement("div");wt.id="template-picker",document.body.appendChild(wt);let yt=(0,Ee.j)("files","templates",[]),_t=(0,Ee.j)("files","templates_path",!1);bt.debug("Templates providers",yt),bt.debug("Templates folder",{templatesPath:_t});const Ct=new(w.default.extend(vt))({name:"TemplatePicker",propsData:{logger:bt}});Ct.$mount("#template-picker"),_t||(bt.debug("Templates folder not initialized"),(0,i.cd)({id:"template-picker",displayName:(0,a.Iu)("files","Create new templates folder"),iconSvgInline:'',order:10,enabled:e=>e.owner===(0,A.ts)()?.uid&&0!=(e.permissions&i.y3.CREATE),handler(e,t){const n=t.map((e=>e.basename)),r=_e((0,a.Iu)("files","Templates"),n);Et(e,r),(0,i.oE)("template-picker")}})),yt.forEach(((e,t)=>{(0,i.cd)({id:`template-new-${e.app}-${t}`,displayName:e.label,iconClass:e.iconClass||"icon-file",enabled:e=>0!=(e.permissions&i.y3.CREATE),order:11,handler(t,n){const r=n.map((e=>e.basename)),i=_e(e.label+e.extension,r);Ct.open(i,e)}})}));const Et=async function(e,t){const n=(0,ne.join)(e.path,t);try{bt.debug("Initializing the templates directory",{templatePath:n});const e=await s.Z.post((0,u.generateOcsUrl)("apps/files/api/v1/templates/path"),{templatePath:n,copySystemTemplates:!0});window.OCP.Files.Router.goToRoute(null,{view:"files",fileid:void 0},{dir:n}),yt=e.data.ocs.data.templates,_t=e.data.ocs.data.template_path}catch(e){bt.error("Unable to initialize the templates directory"),(0,v.x2)((0,a.Iu)("files","Unable to initialize the templates directory"))}};(0,i.p4)(c),(0,i.p4)(g),(0,i.p4)(b),(0,i.p4)(E),(0,i.p4)(he),(0,i.p4)(me),(0,i.p4)(Ae),(0,i.p4)(ve),(0,i.p4)(we),(0,i.p4)(ye),(0,i.cd)(Ce),(()=>{const e=(0,Ee.j)("files","favoriteFolders",[]),t=e.map(((e,t)=>rt(e,t))),n=(0,i.Ti)();n.register(new i.G7({id:"favorites",name:(0,a.Iu)("files","Favorites"),caption:(0,a.Iu)("files","List of favorites files and folders."),emptyTitle:(0,a.Iu)("files","No favorites yet"),emptyCaption:(0,a.Iu)("files","Files and folders you mark as favorite will show up here"),icon:y,order:5,columns:[],getContents:nt})),t.forEach((e=>n.register(e))),(0,o.Ld)("files:favorites:added",(e=>{e.type===i.Tv.Folder&&(null!==e.path&&e.root?.startsWith("/files")?s(e.path):d.error("Favorite folder is not within user files root",{node:e}))})),(0,o.Ld)("files:favorites:removed",(e=>{e.type===i.Tv.Folder&&(null!==e.path&&e.root?.startsWith("/files")?l(e.path):d.error("Favorite folder is not within user files root",{node:e}))}));const r=function(){e.sort(((e,t)=>e.localeCompare(t,(0,a.G3)(),{ignorePunctuation:!0}))),e.forEach(((e,n)=>{const r=t.find((t=>t.id===it(e)));r&&(r.order=n)}))},s=function(i){const o=rt(i);e.find((e=>e===i))||(e.push(i),t.push(o),r(),n.register(o))},l=function(i){const o=it(i),a=e.findIndex((e=>e===i));-1!==a&&(e.splice(a,1),t.splice(a,1),n.remove(o),r())}})(),(0,i.Ti)().register(new i.G7({id:"files",name:(0,a.Iu)("files","All files"),caption:(0,a.Iu)("files","List of your files and folders."),icon:ge,order:0,getContents:function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"/";const t=new AbortController,n=(0,i.h7)();return new Xe.CancelablePromise((async(r,i,o)=>{o((()=>t.abort()));try{const i=await Je.getDirectoryContents(e,{details:!0,data:n,includeSelf:!0,signal:t.signal}),o=i.data[0],a=i.data.slice(1);if(o.filename!==e)throw new Error("Root node does not match requested path");r({folder:Qe(o),contents:a.map((e=>{try{return Qe(e)}catch(t){return d.error(`Invalid node detected '${e.basename}'`,{error:t}),null}})).filter(Boolean)})}catch(e){i(e)}}))}})),(0,i.Ti)().register(new i.G7({id:"recent",name:(0,a.Iu)("files","Recent"),caption:(0,a.Iu)("files","List of recently modified files and folders."),emptyTitle:(0,a.Iu)("files","No recently modified files"),emptyCaption:(0,a.Iu)("files","Files and folders you recently modified will show up here."),icon:'',order:2,defaultSortKey:"mtime",getContents:async function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"/";const t=(await ot.getDirectoryContents(e,{details:!0,data:st,headers:{method:"SEARCH","Content-Type":"application/xml; charset=utf-8"},deep:!0})).data;return{folder:new i.gt({id:0,source:(0,u.generateRemoteUrl)("dav"+Ye),root:Ye,owner:(0,A.ts)()?.uid||null,permissions:i.y3.READ}),contents:t.map(Qe)}}})),"serviceWorker"in navigator?window.addEventListener("load",(async()=>{try{const e=(0,u.generateUrl)("/apps/files/preview-service-worker.js",{},{noRewrite:!0}),t=await navigator.serviceWorker.register(e,{scope:"/"});d.debug("SW registered: ",{registration:t})}catch(e){d.error("SW registration failed: ",{error:e})}})):d.debug("Service Worker is not enabled on this browser."),(0,i.qq)("nc:hidden",{nc:"http://nextcloud.org/ns"}),(0,i.qq)("nc:metadata-files-live-photo",{nc:"http://nextcloud.org/ns"})},50584:e=>{e.exports={100:"Continue",101:"Switching Protocols",102:"Processing",200:"OK",201:"Created",202:"Accepted",203:"Non-Authoritative Information",204:"No Content",205:"Reset Content",206:"Partial Content",207:"Multi-Status",208:"Already Reported",226:"IM Used",300:"Multiple Choices",301:"Moved Permanently",302:"Found",303:"See Other",304:"Not Modified",305:"Use Proxy",307:"Temporary Redirect",308:"Permanent Redirect",400:"Bad Request",401:"Unauthorized",402:"Payment Required",403:"Forbidden",404:"Not Found",405:"Method Not Allowed",406:"Not Acceptable",407:"Proxy Authentication Required",408:"Request Timeout",409:"Conflict",410:"Gone",411:"Length Required",412:"Precondition Failed",413:"Payload Too Large",414:"URI Too Long",415:"Unsupported Media Type",416:"Range Not Satisfiable",417:"Expectation Failed",418:"I'm a teapot",421:"Misdirected Request",422:"Unprocessable Entity",423:"Locked",424:"Failed Dependency",425:"Unordered Collection",426:"Upgrade Required",428:"Precondition Required",429:"Too Many Requests",431:"Request Header Fields Too Large",451:"Unavailable For Legal Reasons",500:"Internal Server Error",501:"Not Implemented",502:"Bad Gateway",503:"Service Unavailable",504:"Gateway Timeout",505:"HTTP Version Not Supported",506:"Variant Also Negotiates",507:"Insufficient Storage",508:"Loop Detected",509:"Bandwidth Limit Exceeded",510:"Not Extended",511:"Network Authentication Required"}},3443:function(e,t,n){var r,i,o=n(25108);function a(e){return a="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},a(e)}"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self&&self,r=function(e){"use strict";function t(e,n){return t=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},t(e,n)}function n(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,i=r(e);if(t){var o=r(this).constructor;n=Reflect.construct(i,arguments,o)}else n=i.apply(this,arguments);return function(e,t){if(t&&("object"===a(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(this,n)}}function r(e){return r=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},r(e)}function i(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(e){if("string"==typeof e)return s(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?s(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,i=function(){};return{s:i,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:i}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var o,a=!0,l=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return a=e.done,e},e:function(e){l=!0,o=e},f:function(){try{a||null==n.return||n.return()}finally{if(l)throw o}}}}function s(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n{"use strict";n.d(t,{Z:()=>h});var r=n(87537),i=n.n(r),o=n(23645),a=n.n(o),s=n(61667),l=n.n(s),d=new URL(n(81490),n.b),c=new URL(n(90888),n.b),u=a()(i()),f=l()(d),p=l()(c);u.push([e.id,`@charset "UTF-8";\n/**\n * @copyright Copyright (c) 2019 Julius Härtl \n *\n * @author Julius Härtl \n * @author John Molakvoæ \n *\n * @license GNU AGPL version 3 or any later version\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.toastify.dialogs {\n min-width: 200px;\n background: none;\n background-color: var(--color-main-background);\n color: var(--color-main-text);\n box-shadow: 0 0 6px 0 var(--color-box-shadow);\n padding: 0 12px;\n margin-top: 45px;\n position: fixed;\n z-index: 10100;\n border-radius: var(--border-radius);\n display: flex;\n align-items: center;\n}\n.toastify.dialogs .toast-undo-container {\n display: flex;\n align-items: center;\n}\n.toastify.dialogs .toast-undo-button,\n.toastify.dialogs .toast-close {\n position: static;\n overflow: hidden;\n box-sizing: border-box;\n min-width: 44px;\n height: 100%;\n padding: 12px;\n white-space: nowrap;\n background-repeat: no-repeat;\n background-position: center;\n background-color: transparent;\n min-height: 0;\n}\n.toastify.dialogs .toast-undo-button.toast-close,\n.toastify.dialogs .toast-close.toast-close {\n text-indent: 0;\n opacity: .4;\n border: none;\n min-height: 44px;\n margin-left: 10px;\n font-size: 0;\n}\n.toastify.dialogs .toast-undo-button.toast-close:before,\n.toastify.dialogs .toast-close.toast-close:before {\n background-image: url(${f});\n content: " ";\n filter: var(--background-invert-if-dark);\n display: inline-block;\n width: 16px;\n height: 16px;\n}\n.toastify.dialogs .toast-undo-button.toast-undo-button,\n.toastify.dialogs .toast-close.toast-undo-button {\n height: calc(100% - 6px);\n margin: 3px 3px 3px 12px;\n}\n.toastify.dialogs .toast-undo-button:hover,\n.toastify.dialogs .toast-undo-button:focus,\n.toastify.dialogs .toast-undo-button:active,\n.toastify.dialogs .toast-close:hover,\n.toastify.dialogs .toast-close:focus,\n.toastify.dialogs .toast-close:active {\n cursor: pointer;\n opacity: 1;\n}\n.toastify.dialogs.toastify-top {\n right: 10px;\n}\n.toastify.dialogs.toast-with-click {\n cursor: pointer;\n}\n.toastify.dialogs.toast-error {\n border-left: 3px solid var(--color-error);\n}\n.toastify.dialogs.toast-info {\n border-left: 3px solid var(--color-primary);\n}\n.toastify.dialogs.toast-warning {\n border-left: 3px solid var(--color-warning);\n}\n.toastify.dialogs.toast-success,\n.toastify.dialogs.toast-undo {\n border-left: 3px solid var(--color-success);\n}\n.theme--dark .toastify.dialogs .toast-close.toast-close:before {\n background-image: url(${p});\n}\n._file-picker__file-icon_1vgv4_5 {\n width: 32px;\n height: 32px;\n min-width: 32px;\n min-height: 32px;\n background-repeat: no-repeat;\n background-size: contain;\n display: flex;\n justify-content: center;\n}\ntr.file-picker__row[data-v-6aded0d9] {\n height: var(--row-height, 50px);\n}\ntr.file-picker__row td[data-v-6aded0d9] {\n cursor: pointer;\n overflow: hidden;\n text-overflow: ellipsis;\n border-bottom: none;\n}\ntr.file-picker__row td[data-v-6aded0d9]:not(.row-checkbox) {\n padding-inline: 14px 0;\n}\ntr.file-picker__row td.row-size[data-v-6aded0d9] {\n text-align: end;\n padding-inline: 0 14px;\n}\ntr.file-picker__row td.row-name[data-v-6aded0d9] {\n padding-inline: 2px 0;\n}\n@keyframes gradient-6aded0d9 {\n 0% {\n background-position: 0% 50%;\n }\n 50% {\n background-position: 100% 50%;\n }\n to {\n background-position: 0% 50%;\n }\n}\n.loading-row .row-checkbox[data-v-6aded0d9] {\n text-align: center !important;\n}\n.loading-row span[data-v-6aded0d9] {\n display: inline-block;\n height: 24px;\n background: linear-gradient(to right, var(--color-background-darker), var(--color-text-maxcontrast), var(--color-background-darker));\n background-size: 600px 100%;\n border-radius: var(--border-radius);\n animation: gradient-6aded0d9 12s ease infinite;\n}\n.loading-row .row-wrapper[data-v-6aded0d9] {\n display: inline-flex;\n align-items: center;\n}\n.loading-row .row-checkbox span[data-v-6aded0d9] {\n width: 24px;\n}\n.loading-row .row-name span[data-v-6aded0d9]:last-of-type {\n margin-inline-start: 6px;\n width: 130px;\n}\n.loading-row .row-size span[data-v-6aded0d9] {\n width: 80px;\n}\n.loading-row .row-modified span[data-v-6aded0d9] {\n width: 90px;\n}\ntr.file-picker__row[data-v-ee6f34b5] {\n height: var(--row-height, 50px);\n}\ntr.file-picker__row td[data-v-ee6f34b5] {\n cursor: pointer;\n overflow: hidden;\n text-overflow: ellipsis;\n border-bottom: none;\n}\ntr.file-picker__row td[data-v-ee6f34b5]:not(.row-checkbox) {\n padding-inline: 14px 0;\n}\ntr.file-picker__row td.row-size[data-v-ee6f34b5] {\n text-align: end;\n padding-inline: 0 14px;\n}\ntr.file-picker__row td.row-name[data-v-ee6f34b5] {\n padding-inline: 2px 0;\n}\n.file-picker__row--selected[data-v-ee6f34b5] {\n background-color: var(--color-background-dark);\n}\n.file-picker__row[data-v-ee6f34b5]:hover {\n background-color: var(--color-background-hover);\n}\n.file-picker__name-container[data-v-ee6f34b5] {\n display: flex;\n justify-content: start;\n align-items: center;\n height: 100%;\n}\n.file-picker__file-name[data-v-ee6f34b5] {\n padding-inline-start: 6px;\n min-width: 0;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n.file-picker__file-extension[data-v-ee6f34b5] {\n color: var(--color-text-maxcontrast);\n min-width: fit-content;\n}\n.file-picker__header-preview[data-v-4297db37] {\n width: 22px;\n height: 32px;\n flex: 0 0 auto;\n}\n.file-picker__files[data-v-4297db37] {\n margin: 2px;\n margin-inline-start: 12px;\n overflow: scroll auto;\n}\n.file-picker__files table[data-v-4297db37] {\n width: 100%;\n max-height: 100%;\n table-layout: fixed;\n}\n.file-picker__files th[data-v-4297db37] {\n position: -webkit-sticky;\n position: sticky;\n z-index: 1;\n top: 0;\n background-color: var(--color-main-background);\n padding: 2px;\n}\n.file-picker__files th .header-wrapper[data-v-4297db37] {\n display: flex;\n}\n.file-picker__files th.row-checkbox[data-v-4297db37] {\n width: 44px;\n}\n.file-picker__files th.row-name[data-v-4297db37] {\n width: 230px;\n}\n.file-picker__files th.row-size[data-v-4297db37] {\n width: 100px;\n}\n.file-picker__files th.row-modified[data-v-4297db37] {\n width: 120px;\n}\n.file-picker__files th[data-v-4297db37]:not(.row-size) .button-vue__wrapper {\n justify-content: start;\n flex-direction: row-reverse;\n}\n.file-picker__files th[data-v-4297db37]:not(.row-size) .button-vue {\n padding-inline: 16px 4px;\n}\n.file-picker__files th.row-size[data-v-4297db37] .button-vue__wrapper {\n justify-content: end;\n}\n.file-picker__files th[data-v-4297db37] .button-vue__wrapper {\n color: var(--color-text-maxcontrast);\n}\n.file-picker__files th[data-v-4297db37] .button-vue__wrapper .button-vue__text {\n font-weight: 400;\n}\n.file-picker__breadcrumbs[data-v-3bc9efa5] {\n flex-grow: 0 !important;\n}\n.file-picker__side[data-v-fcfd0f23] {\n display: flex;\n flex-direction: column;\n align-items: start;\n gap: .5rem;\n min-width: 200px;\n padding-block: 2px;\n overflow: auto;\n}\n.file-picker__side[data-v-fcfd0f23] .button-vue__wrapper {\n justify-content: start;\n}\n.file-picker__filter-input[data-v-fcfd0f23] {\n margin-block: 7px;\n max-width: 260px;\n}\n@media (max-width: 736px) {\n .file-picker__side[data-v-fcfd0f23] {\n flex-direction: row;\n min-width: unset;\n }\n}\n@media (max-width: 512px) {\n .file-picker__side[data-v-fcfd0f23] {\n flex-direction: row;\n min-width: unset;\n }\n .file-picker__filter-input[data-v-fcfd0f23] {\n max-width: unset;\n }\n}\n.file-picker__navigation {\n padding-inline: 2px;\n}\n.file-picker__navigation,\n.file-picker__navigation * {\n box-sizing: border-box;\n}\n.file-picker__navigation .v-select.select {\n min-width: 220px;\n}\n@media (min-width: 513px) and (max-width: 736px) {\n .file-picker__navigation {\n gap: 11px;\n }\n}\n@media (max-width: 512px) {\n .file-picker__navigation {\n flex-direction: column-reverse !important;\n }\n}\n.file-picker__view[data-v-86a13079] {\n height: 50px;\n display: flex;\n justify-content: start;\n align-items: center;\n}\n.file-picker__view h3[data-v-86a13079] {\n font-weight: 700;\n height: fit-content;\n margin: 0;\n}\n.file-picker__main[data-v-86a13079] {\n box-sizing: border-box;\n width: 100%;\n display: flex;\n flex-direction: column;\n min-height: 0;\n flex: 1;\n padding-inline: 2px;\n}\n.file-picker__main *[data-v-86a13079] {\n box-sizing: border-box;\n}\n[data-v-86a13079] .file-picker {\n height: min(80vh, 800px);\n}\n@media (max-width: 512px) {\n [data-v-86a13079] .file-picker {\n height: calc(100% - 16px - var(--default-clickable-area));\n }\n}\n[data-v-86a13079] .file-picker__content {\n display: flex;\n flex-direction: column;\n overflow: hidden;\n}\n`,"",{version:3,sources:["webpack://./node_modules/@nextcloud/dialogs/dist/style.css"],names:[],mappings:"AAAA,gBAAgB;AAChB;;;;;;;;;;;;;;;;;;;;EAoBE;AACF;EACE,gBAAgB;EAChB,gBAAgB;EAChB,8CAA8C;EAC9C,6BAA6B;EAC7B,6CAA6C;EAC7C,eAAe;EACf,gBAAgB;EAChB,eAAe;EACf,cAAc;EACd,mCAAmC;EACnC,aAAa;EACb,mBAAmB;AACrB;AACA;EACE,aAAa;EACb,mBAAmB;AACrB;AACA;;EAEE,gBAAgB;EAChB,gBAAgB;EAChB,sBAAsB;EACtB,eAAe;EACf,YAAY;EACZ,aAAa;EACb,mBAAmB;EACnB,4BAA4B;EAC5B,2BAA2B;EAC3B,6BAA6B;EAC7B,aAAa;AACf;AACA;;EAEE,cAAc;EACd,WAAW;EACX,YAAY;EACZ,gBAAgB;EAChB,iBAAiB;EACjB,YAAY;AACd;AACA;;EAEE,yDAAiR;EACjR,YAAY;EACZ,wCAAwC;EACxC,qBAAqB;EACrB,WAAW;EACX,YAAY;AACd;AACA;;EAEE,wBAAwB;EACxB,wBAAwB;AAC1B;AACA;;;;;;EAME,eAAe;EACf,UAAU;AACZ;AACA;EACE,WAAW;AACb;AACA;EACE,eAAe;AACjB;AACA;EACE,yCAAyC;AAC3C;AACA;EACE,2CAA2C;AAC7C;AACA;EACE,2CAA2C;AAC7C;AACA;;EAEE,2CAA2C;AAC7C;AACA;EACE,yDAAiU;AACnU;AACA;EACE,WAAW;EACX,YAAY;EACZ,eAAe;EACf,gBAAgB;EAChB,4BAA4B;EAC5B,wBAAwB;EACxB,aAAa;EACb,uBAAuB;AACzB;AACA;EACE,+BAA+B;AACjC;AACA;EACE,eAAe;EACf,gBAAgB;EAChB,uBAAuB;EACvB,mBAAmB;AACrB;AACA;EACE,sBAAsB;AACxB;AACA;EACE,eAAe;EACf,sBAAsB;AACxB;AACA;EACE,qBAAqB;AACvB;AACA;EACE;IACE,2BAA2B;EAC7B;EACA;IACE,6BAA6B;EAC/B;EACA;IACE,2BAA2B;EAC7B;AACF;AACA;EACE,6BAA6B;AAC/B;AACA;EACE,qBAAqB;EACrB,YAAY;EACZ,oIAAoI;EACpI,2BAA2B;EAC3B,mCAAmC;EACnC,8CAA8C;AAChD;AACA;EACE,oBAAoB;EACpB,mBAAmB;AACrB;AACA;EACE,WAAW;AACb;AACA;EACE,wBAAwB;EACxB,YAAY;AACd;AACA;EACE,WAAW;AACb;AACA;EACE,WAAW;AACb;AACA;EACE,+BAA+B;AACjC;AACA;EACE,eAAe;EACf,gBAAgB;EAChB,uBAAuB;EACvB,mBAAmB;AACrB;AACA;EACE,sBAAsB;AACxB;AACA;EACE,eAAe;EACf,sBAAsB;AACxB;AACA;EACE,qBAAqB;AACvB;AACA;EACE,8CAA8C;AAChD;AACA;EACE,+CAA+C;AACjD;AACA;EACE,aAAa;EACb,sBAAsB;EACtB,mBAAmB;EACnB,YAAY;AACd;AACA;EACE,yBAAyB;EACzB,YAAY;EACZ,gBAAgB;EAChB,uBAAuB;AACzB;AACA;EACE,oCAAoC;EACpC,sBAAsB;AACxB;AACA;EACE,WAAW;EACX,YAAY;EACZ,cAAc;AAChB;AACA;EACE,WAAW;EACX,yBAAyB;EACzB,qBAAqB;AACvB;AACA;EACE,WAAW;EACX,gBAAgB;EAChB,mBAAmB;AACrB;AACA;EACE,wBAAwB;EACxB,gBAAgB;EAChB,UAAU;EACV,MAAM;EACN,8CAA8C;EAC9C,YAAY;AACd;AACA;EACE,aAAa;AACf;AACA;EACE,WAAW;AACb;AACA;EACE,YAAY;AACd;AACA;EACE,YAAY;AACd;AACA;EACE,YAAY;AACd;AACA;EACE,sBAAsB;EACtB,2BAA2B;AAC7B;AACA;EACE,wBAAwB;AAC1B;AACA;EACE,oBAAoB;AACtB;AACA;EACE,oCAAoC;AACtC;AACA;EACE,gBAAgB;AAClB;AACA;EACE,uBAAuB;AACzB;AACA;EACE,aAAa;EACb,sBAAsB;EACtB,kBAAkB;EAClB,UAAU;EACV,gBAAgB;EAChB,kBAAkB;EAClB,cAAc;AAChB;AACA;EACE,sBAAsB;AACxB;AACA;EACE,iBAAiB;EACjB,gBAAgB;AAClB;AACA;EACE;IACE,mBAAmB;IACnB,gBAAgB;EAClB;AACF;AACA;EACE;IACE,mBAAmB;IACnB,gBAAgB;EAClB;EACA;IACE,gBAAgB;EAClB;AACF;AACA;EACE,mBAAmB;AACrB;AACA;;EAEE,sBAAsB;AACxB;AACA;EACE,gBAAgB;AAClB;AACA;EACE;IACE,SAAS;EACX;AACF;AACA;EACE;IACE,yCAAyC;EAC3C;AACF;AACA;EACE,YAAY;EACZ,aAAa;EACb,sBAAsB;EACtB,mBAAmB;AACrB;AACA;EACE,gBAAgB;EAChB,mBAAmB;EACnB,SAAS;AACX;AACA;EACE,sBAAsB;EACtB,WAAW;EACX,aAAa;EACb,sBAAsB;EACtB,aAAa;EACb,OAAO;EACP,mBAAmB;AACrB;AACA;EACE,sBAAsB;AACxB;AACA;EACE,wBAAwB;AAC1B;AACA;EACE;IACE,yDAAyD;EAC3D;AACF;AACA;EACE,aAAa;EACb,sBAAsB;EACtB,gBAAgB;AAClB",sourcesContent:['@charset "UTF-8";\n/**\n * @copyright Copyright (c) 2019 Julius Härtl \n *\n * @author Julius Härtl \n * @author John Molakvoæ \n *\n * @license GNU AGPL version 3 or any later version\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.toastify.dialogs {\n min-width: 200px;\n background: none;\n background-color: var(--color-main-background);\n color: var(--color-main-text);\n box-shadow: 0 0 6px 0 var(--color-box-shadow);\n padding: 0 12px;\n margin-top: 45px;\n position: fixed;\n z-index: 10100;\n border-radius: var(--border-radius);\n display: flex;\n align-items: center;\n}\n.toastify.dialogs .toast-undo-container {\n display: flex;\n align-items: center;\n}\n.toastify.dialogs .toast-undo-button,\n.toastify.dialogs .toast-close {\n position: static;\n overflow: hidden;\n box-sizing: border-box;\n min-width: 44px;\n height: 100%;\n padding: 12px;\n white-space: nowrap;\n background-repeat: no-repeat;\n background-position: center;\n background-color: transparent;\n min-height: 0;\n}\n.toastify.dialogs .toast-undo-button.toast-close,\n.toastify.dialogs .toast-close.toast-close {\n text-indent: 0;\n opacity: .4;\n border: none;\n min-height: 44px;\n margin-left: 10px;\n font-size: 0;\n}\n.toastify.dialogs .toast-undo-button.toast-close:before,\n.toastify.dialogs .toast-close.toast-close:before {\n background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGhlaWdodD0iMTYiIHdpZHRoPSIxNiI+CiAgPHBhdGggZD0iTTE0IDEyLjNMMTIuMyAxNCA4IDkuNyAzLjcgMTQgMiAxMi4zIDYuMyA4IDIgMy43IDMuNyAyIDggNi4zIDEyLjMgMiAxNCAzLjcgOS43IDh6Ii8+Cjwvc3ZnPgo=);\n content: " ";\n filter: var(--background-invert-if-dark);\n display: inline-block;\n width: 16px;\n height: 16px;\n}\n.toastify.dialogs .toast-undo-button.toast-undo-button,\n.toastify.dialogs .toast-close.toast-undo-button {\n height: calc(100% - 6px);\n margin: 3px 3px 3px 12px;\n}\n.toastify.dialogs .toast-undo-button:hover,\n.toastify.dialogs .toast-undo-button:focus,\n.toastify.dialogs .toast-undo-button:active,\n.toastify.dialogs .toast-close:hover,\n.toastify.dialogs .toast-close:focus,\n.toastify.dialogs .toast-close:active {\n cursor: pointer;\n opacity: 1;\n}\n.toastify.dialogs.toastify-top {\n right: 10px;\n}\n.toastify.dialogs.toast-with-click {\n cursor: pointer;\n}\n.toastify.dialogs.toast-error {\n border-left: 3px solid var(--color-error);\n}\n.toastify.dialogs.toast-info {\n border-left: 3px solid var(--color-primary);\n}\n.toastify.dialogs.toast-warning {\n border-left: 3px solid var(--color-warning);\n}\n.toastify.dialogs.toast-success,\n.toastify.dialogs.toast-undo {\n border-left: 3px solid var(--color-success);\n}\n.theme--dark .toastify.dialogs .toast-close.toast-close:before {\n background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGhlaWdodD0iMTYiIHdpZHRoPSIxNiI+CiAgPHBhdGggZD0iTTE0IDEyLjNMMTIuMyAxNCA4IDkuNyAzLjcgMTQgMiAxMi4zIDYuMyA4IDIgMy43IDMuNyAyIDggNi4zIDEyLjMgMiAxNCAzLjcgOS43IDh6IiBzdHlsZT0iZmlsbC1vcGFjaXR5OjE7ZmlsbDojZmZmZmZmIi8+Cjwvc3ZnPgo=);\n}\n._file-picker__file-icon_1vgv4_5 {\n width: 32px;\n height: 32px;\n min-width: 32px;\n min-height: 32px;\n background-repeat: no-repeat;\n background-size: contain;\n display: flex;\n justify-content: center;\n}\ntr.file-picker__row[data-v-6aded0d9] {\n height: var(--row-height, 50px);\n}\ntr.file-picker__row td[data-v-6aded0d9] {\n cursor: pointer;\n overflow: hidden;\n text-overflow: ellipsis;\n border-bottom: none;\n}\ntr.file-picker__row td[data-v-6aded0d9]:not(.row-checkbox) {\n padding-inline: 14px 0;\n}\ntr.file-picker__row td.row-size[data-v-6aded0d9] {\n text-align: end;\n padding-inline: 0 14px;\n}\ntr.file-picker__row td.row-name[data-v-6aded0d9] {\n padding-inline: 2px 0;\n}\n@keyframes gradient-6aded0d9 {\n 0% {\n background-position: 0% 50%;\n }\n 50% {\n background-position: 100% 50%;\n }\n to {\n background-position: 0% 50%;\n }\n}\n.loading-row .row-checkbox[data-v-6aded0d9] {\n text-align: center !important;\n}\n.loading-row span[data-v-6aded0d9] {\n display: inline-block;\n height: 24px;\n background: linear-gradient(to right, var(--color-background-darker), var(--color-text-maxcontrast), var(--color-background-darker));\n background-size: 600px 100%;\n border-radius: var(--border-radius);\n animation: gradient-6aded0d9 12s ease infinite;\n}\n.loading-row .row-wrapper[data-v-6aded0d9] {\n display: inline-flex;\n align-items: center;\n}\n.loading-row .row-checkbox span[data-v-6aded0d9] {\n width: 24px;\n}\n.loading-row .row-name span[data-v-6aded0d9]:last-of-type {\n margin-inline-start: 6px;\n width: 130px;\n}\n.loading-row .row-size span[data-v-6aded0d9] {\n width: 80px;\n}\n.loading-row .row-modified span[data-v-6aded0d9] {\n width: 90px;\n}\ntr.file-picker__row[data-v-ee6f34b5] {\n height: var(--row-height, 50px);\n}\ntr.file-picker__row td[data-v-ee6f34b5] {\n cursor: pointer;\n overflow: hidden;\n text-overflow: ellipsis;\n border-bottom: none;\n}\ntr.file-picker__row td[data-v-ee6f34b5]:not(.row-checkbox) {\n padding-inline: 14px 0;\n}\ntr.file-picker__row td.row-size[data-v-ee6f34b5] {\n text-align: end;\n padding-inline: 0 14px;\n}\ntr.file-picker__row td.row-name[data-v-ee6f34b5] {\n padding-inline: 2px 0;\n}\n.file-picker__row--selected[data-v-ee6f34b5] {\n background-color: var(--color-background-dark);\n}\n.file-picker__row[data-v-ee6f34b5]:hover {\n background-color: var(--color-background-hover);\n}\n.file-picker__name-container[data-v-ee6f34b5] {\n display: flex;\n justify-content: start;\n align-items: center;\n height: 100%;\n}\n.file-picker__file-name[data-v-ee6f34b5] {\n padding-inline-start: 6px;\n min-width: 0;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n.file-picker__file-extension[data-v-ee6f34b5] {\n color: var(--color-text-maxcontrast);\n min-width: fit-content;\n}\n.file-picker__header-preview[data-v-4297db37] {\n width: 22px;\n height: 32px;\n flex: 0 0 auto;\n}\n.file-picker__files[data-v-4297db37] {\n margin: 2px;\n margin-inline-start: 12px;\n overflow: scroll auto;\n}\n.file-picker__files table[data-v-4297db37] {\n width: 100%;\n max-height: 100%;\n table-layout: fixed;\n}\n.file-picker__files th[data-v-4297db37] {\n position: -webkit-sticky;\n position: sticky;\n z-index: 1;\n top: 0;\n background-color: var(--color-main-background);\n padding: 2px;\n}\n.file-picker__files th .header-wrapper[data-v-4297db37] {\n display: flex;\n}\n.file-picker__files th.row-checkbox[data-v-4297db37] {\n width: 44px;\n}\n.file-picker__files th.row-name[data-v-4297db37] {\n width: 230px;\n}\n.file-picker__files th.row-size[data-v-4297db37] {\n width: 100px;\n}\n.file-picker__files th.row-modified[data-v-4297db37] {\n width: 120px;\n}\n.file-picker__files th[data-v-4297db37]:not(.row-size) .button-vue__wrapper {\n justify-content: start;\n flex-direction: row-reverse;\n}\n.file-picker__files th[data-v-4297db37]:not(.row-size) .button-vue {\n padding-inline: 16px 4px;\n}\n.file-picker__files th.row-size[data-v-4297db37] .button-vue__wrapper {\n justify-content: end;\n}\n.file-picker__files th[data-v-4297db37] .button-vue__wrapper {\n color: var(--color-text-maxcontrast);\n}\n.file-picker__files th[data-v-4297db37] .button-vue__wrapper .button-vue__text {\n font-weight: 400;\n}\n.file-picker__breadcrumbs[data-v-3bc9efa5] {\n flex-grow: 0 !important;\n}\n.file-picker__side[data-v-fcfd0f23] {\n display: flex;\n flex-direction: column;\n align-items: start;\n gap: .5rem;\n min-width: 200px;\n padding-block: 2px;\n overflow: auto;\n}\n.file-picker__side[data-v-fcfd0f23] .button-vue__wrapper {\n justify-content: start;\n}\n.file-picker__filter-input[data-v-fcfd0f23] {\n margin-block: 7px;\n max-width: 260px;\n}\n@media (max-width: 736px) {\n .file-picker__side[data-v-fcfd0f23] {\n flex-direction: row;\n min-width: unset;\n }\n}\n@media (max-width: 512px) {\n .file-picker__side[data-v-fcfd0f23] {\n flex-direction: row;\n min-width: unset;\n }\n .file-picker__filter-input[data-v-fcfd0f23] {\n max-width: unset;\n }\n}\n.file-picker__navigation {\n padding-inline: 2px;\n}\n.file-picker__navigation,\n.file-picker__navigation * {\n box-sizing: border-box;\n}\n.file-picker__navigation .v-select.select {\n min-width: 220px;\n}\n@media (min-width: 513px) and (max-width: 736px) {\n .file-picker__navigation {\n gap: 11px;\n }\n}\n@media (max-width: 512px) {\n .file-picker__navigation {\n flex-direction: column-reverse !important;\n }\n}\n.file-picker__view[data-v-86a13079] {\n height: 50px;\n display: flex;\n justify-content: start;\n align-items: center;\n}\n.file-picker__view h3[data-v-86a13079] {\n font-weight: 700;\n height: fit-content;\n margin: 0;\n}\n.file-picker__main[data-v-86a13079] {\n box-sizing: border-box;\n width: 100%;\n display: flex;\n flex-direction: column;\n min-height: 0;\n flex: 1;\n padding-inline: 2px;\n}\n.file-picker__main *[data-v-86a13079] {\n box-sizing: border-box;\n}\n[data-v-86a13079] .file-picker {\n height: min(80vh, 800px);\n}\n@media (max-width: 512px) {\n [data-v-86a13079] .file-picker {\n height: calc(100% - 16px - var(--default-clickable-area));\n }\n}\n[data-v-86a13079] .file-picker__content {\n display: flex;\n flex-direction: column;\n overflow: hidden;\n}\n'],sourceRoot:""}]);const h=u},92246:(e,t,n)=>{"use strict";n.d(t,{Z:()=>s});var r=n(87537),i=n.n(r),o=n(23645),a=n.n(o)()(i());a.push([e.id,".template-picker__item[data-v-0859a92c]{display:flex}.template-picker__label[data-v-0859a92c]{display:flex;align-items:center;flex:1 1;flex-direction:column}.template-picker__label[data-v-0859a92c],.template-picker__label *[data-v-0859a92c]{cursor:pointer;user-select:none}.template-picker__label[data-v-0859a92c]::before{display:none !important}.template-picker__preview[data-v-0859a92c]{display:block;overflow:hidden;flex:1 1;width:var(--width);min-height:var(--height);max-height:var(--height);padding:0;border:var(--border) solid var(--color-border);border-radius:var(--border-radius-large)}input:checked+label>.template-picker__preview[data-v-0859a92c]{border-color:var(--color-primary-element)}.template-picker__preview--failed[data-v-0859a92c]{display:flex}.template-picker__image[data-v-0859a92c]{max-width:100%;background-color:var(--color-main-background);object-fit:cover}.template-picker__preview--failed .template-picker__image[data-v-0859a92c]{width:calc(var(--margin)*8);margin:auto;background-color:rgba(0,0,0,0) !important;object-fit:initial}.template-picker__title[data-v-0859a92c]{overflow:hidden;max-width:calc(var(--width) + 4px);padding:var(--margin);white-space:nowrap;text-overflow:ellipsis}","",{version:3,sources:["webpack://./apps/files/src/components/TemplatePreview.vue"],names:[],mappings:"AAGC,wCACC,YAAA,CAGD,yCACC,YAAA,CAEA,kBAAA,CACA,QAAA,CACA,qBAAA,CAEA,oFACC,cAAA,CACA,gBAAA,CAGD,iDACC,uBAAA,CAIF,2CACC,aAAA,CACA,eAAA,CAEA,QAAA,CACA,kBAAA,CACA,wBAAA,CACA,wBAAA,CACA,SAAA,CACA,8CAAA,CACA,wCAAA,CAEA,+DACC,yCAAA,CAGD,mDAEC,YAAA,CAIF,yCACC,cAAA,CACA,6CAAA,CAEA,gBAAA,CAID,2EACC,2BAAA,CAEA,WAAA,CACA,yCAAA,CAEA,kBAAA,CAGD,yCACC,eAAA,CAEA,kCAAA,CACA,qBAAA,CACA,kBAAA,CACA,sBAAA",sourcesContent:["\n\n.template-picker {\n\t&__item {\n\t\tdisplay: flex;\n\t}\n\n\t&__label {\n\t\tdisplay: flex;\n\t\t// Align in the middle of the grid\n\t\talign-items: center;\n\t\tflex: 1 1;\n\t\tflex-direction: column;\n\n\t\t&, * {\n\t\t\tcursor: pointer;\n\t\t\tuser-select: none;\n\t\t}\n\n\t\t&::before {\n\t\t\tdisplay: none !important;\n\t\t}\n\t}\n\n\t&__preview {\n\t\tdisplay: block;\n\t\toverflow: hidden;\n\t\t// Stretch so all entries are the same width\n\t\tflex: 1 1;\n\t\twidth: var(--width);\n\t\tmin-height: var(--height);\n\t\tmax-height: var(--height);\n\t\tpadding: 0;\n\t\tborder: var(--border) solid var(--color-border);\n\t\tborder-radius: var(--border-radius-large);\n\n\t\tinput:checked + label > & {\n\t\t\tborder-color: var(--color-primary-element);\n\t\t}\n\n\t\t&--failed {\n\t\t\t// Make sure to properly center fallback icon\n\t\t\tdisplay: flex;\n\t\t}\n\t}\n\n\t&__image {\n\t\tmax-width: 100%;\n\t\tbackground-color: var(--color-main-background);\n\n\t\tobject-fit: cover;\n\t}\n\n\t// Failed preview, fallback to mime icon\n\t&__preview--failed &__image {\n\t\twidth: calc(var(--margin) * 8);\n\t\t// Center mime icon\n\t\tmargin: auto;\n\t\tbackground-color: transparent !important;\n\n\t\tobject-fit: initial;\n\t}\n\n\t&__title {\n\t\toverflow: hidden;\n\t\t// also count preview border\n\t\tmax-width: calc(var(--width) + 2*2px);\n\t\tpadding: var(--margin);\n\t\twhite-space: nowrap;\n\t\ttext-overflow: ellipsis;\n\t}\n}\n\n"],sourceRoot:""}]);const s=a},24142:(e,t,n)=>{"use strict";n.d(t,{Z:()=>s});var r=n(87537),i=n.n(r),o=n(23645),a=n.n(o)()(i());a.push([e.id,".templates-picker__form[data-v-48121b39]{padding:calc(var(--margin)*2);padding-bottom:0}.templates-picker__form h2[data-v-48121b39]{text-align:center;font-weight:bold;margin:var(--margin) 0 calc(var(--margin)*2)}.templates-picker__list[data-v-48121b39]{display:grid;grid-gap:calc(var(--margin)*2);grid-auto-columns:1fr;max-width:calc(var(--fullwidth)*6);grid-template-columns:repeat(auto-fit, var(--fullwidth));grid-auto-rows:1fr;justify-content:center}.templates-picker__buttons[data-v-48121b39]{display:flex;justify-content:end;padding:calc(var(--margin)*2) var(--margin);position:sticky;bottom:0;background-image:linear-gradient(0, var(--gradient-main-background))}.templates-picker__buttons button[data-v-48121b39],.templates-picker__buttons input[type=submit][data-v-48121b39]{height:44px}.templates-picker[data-v-48121b39] .modal-container{position:relative}.templates-picker__loading[data-v-48121b39]{position:absolute;top:0;left:0;justify-content:center;width:100%;height:100%;margin:0;background-color:var(--color-main-background-translucent)}","",{version:3,sources:["webpack://./apps/files/src/views/TemplatePicker.vue"],names:[],mappings:"AAEC,yCACC,6BAAA,CAEA,gBAAA,CAEA,4CACC,iBAAA,CACA,gBAAA,CACA,4CAAA,CAIF,yCACC,YAAA,CACA,8BAAA,CACA,qBAAA,CAEA,kCAAA,CACA,wDAAA,CAEA,kBAAA,CAEA,sBAAA,CAGD,4CACC,YAAA,CACA,mBAAA,CACA,2CAAA,CACA,eAAA,CACA,QAAA,CACA,oEAAA,CAEA,kHACC,WAAA,CAKF,oDACC,iBAAA,CAGD,4CACC,iBAAA,CACA,KAAA,CACA,MAAA,CACA,sBAAA,CACA,UAAA,CACA,WAAA,CACA,QAAA,CACA,yDAAA",sourcesContent:["\n.templates-picker {\n\t&__form {\n\t\tpadding: calc(var(--margin) * 2);\n\t\t// Will be handled by the buttons\n\t\tpadding-bottom: 0;\n\n\t\th2 {\n\t\t\ttext-align: center;\n\t\t\tfont-weight: bold;\n\t\t\tmargin: var(--margin) 0 calc(var(--margin) * 2);\n\t\t}\n\t}\n\n\t&__list {\n\t\tdisplay: grid;\n\t\tgrid-gap: calc(var(--margin) * 2);\n\t\tgrid-auto-columns: 1fr;\n\t\t// We want maximum 5 columns. Putting 6 as we don't count the grid gap. So it will always be lower than 6\n\t\tmax-width: calc(var(--fullwidth) * 6);\n\t\tgrid-template-columns: repeat(auto-fit, var(--fullwidth));\n\t\t// Make sure all rows are the same height\n\t\tgrid-auto-rows: 1fr;\n\t\t// Center the columns set\n\t\tjustify-content: center;\n\t}\n\n\t&__buttons {\n\t\tdisplay: flex;\n\t\tjustify-content: end;\n\t\tpadding: calc(var(--margin) * 2) var(--margin);\n\t\tposition: sticky;\n\t\tbottom: 0;\n\t\tbackground-image: linear-gradient(0, var(--gradient-main-background));\n\n\t\tbutton, input[type='submit'] {\n\t\t\theight: 44px;\n\t\t}\n\t}\n\n\t// Make sure we're relative for the loading emptycontent on top\n\t::v-deep .modal-container {\n\t\tposition: relative;\n\t}\n\n\t&__loading {\n\t\tposition: absolute;\n\t\ttop: 0;\n\t\tleft: 0;\n\t\tjustify-content: center;\n\t\twidth: 100%;\n\t\theight: 100%;\n\t\tmargin: 0;\n\t\tbackground-color: var(--color-main-background-translucent);\n\t}\n}\n\n"],sourceRoot:""}]);const s=a},17187:(e,t,n)=>{"use strict";var r,i=n(25108),o="object"==typeof Reflect?Reflect:null,a=o&&"function"==typeof o.apply?o.apply:function(e,t,n){return Function.prototype.apply.call(e,t,n)};r=o&&"function"==typeof o.ownKeys?o.ownKeys:Object.getOwnPropertySymbols?function(e){return Object.getOwnPropertyNames(e).concat(Object.getOwnPropertySymbols(e))}:function(e){return Object.getOwnPropertyNames(e)};var s=Number.isNaN||function(e){return e!=e};function l(){l.init.call(this)}e.exports=l,e.exports.once=function(e,t){return new Promise((function(n,r){function i(n){e.removeListener(t,o),r(n)}function o(){"function"==typeof e.removeListener&&e.removeListener("error",i),n([].slice.call(arguments))}v(e,t,o,{once:!0}),"error"!==t&&function(e,t,n){"function"==typeof e.on&&v(e,"error",t,{once:!0})}(e,i)}))},l.EventEmitter=l,l.prototype._events=void 0,l.prototype._eventsCount=0,l.prototype._maxListeners=void 0;var d=10;function c(e){if("function"!=typeof e)throw new TypeError('The "listener" argument must be of type Function. Received type '+typeof e)}function u(e){return void 0===e._maxListeners?l.defaultMaxListeners:e._maxListeners}function f(e,t,n,r){var o,a,s,l;if(c(n),void 0===(a=e._events)?(a=e._events=Object.create(null),e._eventsCount=0):(void 0!==a.newListener&&(e.emit("newListener",t,n.listener?n.listener:n),a=e._events),s=a[t]),void 0===s)s=a[t]=n,++e._eventsCount;else if("function"==typeof s?s=a[t]=r?[n,s]:[s,n]:r?s.unshift(n):s.push(n),(o=u(e))>0&&s.length>o&&!s.warned){s.warned=!0;var d=new Error("Possible EventEmitter memory leak detected. "+s.length+" "+String(t)+" listeners added. Use emitter.setMaxListeners() to increase limit");d.name="MaxListenersExceededWarning",d.emitter=e,d.type=t,d.count=s.length,l=d,i&&i.warn&&i.warn(l)}return e}function p(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,0===arguments.length?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function h(e,t,n){var r={fired:!1,wrapFn:void 0,target:e,type:t,listener:n},i=p.bind(r);return i.listener=n,r.wrapFn=i,i}function g(e,t,n){var r=e._events;if(void 0===r)return[];var i=r[t];return void 0===i?[]:"function"==typeof i?n?[i.listener||i]:[i]:n?function(e){for(var t=new Array(e.length),n=0;n0&&(o=t[0]),o instanceof Error)throw o;var s=new Error("Unhandled error."+(o?" ("+o.message+")":""));throw s.context=o,s}var l=i[e];if(void 0===l)return!1;if("function"==typeof l)a(l,this,t);else{var d=l.length,c=A(l,d);for(n=0;n=0;o--)if(n[o]===t||n[o].listener===t){a=n[o].listener,i=o;break}if(i<0)return this;0===i?n.shift():function(e,t){for(;t+1=0;r--)this.removeListener(e,t[r]);return this},l.prototype.listeners=function(e){return g(this,e,!0)},l.prototype.rawListeners=function(e){return g(this,e,!1)},l.listenerCount=function(e,t){return"function"==typeof e.listenerCount?e.listenerCount(t):m.call(e,t)},l.prototype.listenerCount=m,l.prototype.eventNames=function(){return this._eventsCount>0?r(this._events):[]}},79267:(e,t,n)=>{var r=n(8501),i=n(8575),o=e.exports;for(var a in r)r.hasOwnProperty(a)&&(o[a]=r[a]);function s(e){if("string"==typeof e&&(e=i.parse(e)),e.protocol||(e.protocol="https:"),"https:"!==e.protocol)throw new Error('Protocol "'+e.protocol+'" not supported. Expected "https:"');return e}o.request=function(e,t){return e=s(e),r.request.call(this,e,t)},o.get=function(e,t){return e=s(e),r.get.call(this,e,t)}},94281:e=>{"use strict";var t={};function n(e,n,r){r||(r=Error);var i=function(e){var t,r;function i(t,r,i){return e.call(this,function(e,t,r){return"string"==typeof n?n:n(e,t,r)}(t,r,i))||this}return r=e,(t=i).prototype=Object.create(r.prototype),t.prototype.constructor=t,t.__proto__=r,i}(r);i.prototype.name=r.name,i.prototype.code=e,t[e]=i}function r(e,t){if(Array.isArray(e)){var n=e.length;return e=e.map((function(e){return String(e)})),n>2?"one of ".concat(t," ").concat(e.slice(0,n-1).join(", "),", or ")+e[n-1]:2===n?"one of ".concat(t," ").concat(e[0]," or ").concat(e[1]):"of ".concat(t," ").concat(e[0])}return"of ".concat(t," ").concat(String(e))}n("ERR_INVALID_OPT_VALUE",(function(e,t){return'The value "'+t+'" is invalid for option "'+e+'"'}),TypeError),n("ERR_INVALID_ARG_TYPE",(function(e,t,n){var i,o,a,s,l;if("string"==typeof t&&(o="not ",t.substr(0,4)===o)?(i="must not be",t=t.replace(/^not /,"")):i="must be",function(e,t,n){return(void 0===n||n>e.length)&&(n=e.length),e.substring(n-9,n)===t}(e," argument"))a="The ".concat(e," ").concat(i," ").concat(r(t,"type"));else{var d=("number"!=typeof l&&(l=0),l+1>(s=e).length||-1===s.indexOf(".",l)?"argument":"property");a='The "'.concat(e,'" ').concat(d," ").concat(i," ").concat(r(t,"type"))}return a+". Received type ".concat(typeof n)}),TypeError),n("ERR_STREAM_PUSH_AFTER_EOF","stream.push() after EOF"),n("ERR_METHOD_NOT_IMPLEMENTED",(function(e){return"The "+e+" method is not implemented"})),n("ERR_STREAM_PREMATURE_CLOSE","Premature close"),n("ERR_STREAM_DESTROYED",(function(e){return"Cannot call "+e+" after a stream was destroyed"})),n("ERR_MULTIPLE_CALLBACK","Callback called multiple times"),n("ERR_STREAM_CANNOT_PIPE","Cannot pipe, not readable"),n("ERR_STREAM_WRITE_AFTER_END","write after end"),n("ERR_STREAM_NULL_VALUES","May not write null values to stream",TypeError),n("ERR_UNKNOWN_ENCODING",(function(e){return"Unknown encoding: "+e}),TypeError),n("ERR_STREAM_UNSHIFT_AFTER_END_EVENT","stream.unshift() after end event"),e.exports.q=t},56753:(e,t,n)=>{"use strict";var r=n(34155),i=Object.keys||function(e){var t=[];for(var n in e)t.push(n);return t};e.exports=c;var o=n(79481),a=n(64229);n(35717)(c,o);for(var s=i(a.prototype),l=0;l{"use strict";e.exports=i;var r=n(74605);function i(e){if(!(this instanceof i))return new i(e);r.call(this,e)}n(35717)(i,r),i.prototype._transform=function(e,t,n){n(null,e)}},79481:(e,t,n)=>{"use strict";var r,i=n(34155);e.exports=x,x.ReadableState=E,n(17187).EventEmitter;var o,a=function(e,t){return e.listeners(t).length},s=n(22503),l=n(48764).Buffer,d=(void 0!==n.g?n.g:"undefined"!=typeof window?window:"undefined"!=typeof self?self:{}).Uint8Array||function(){},c=n(94616);o=c&&c.debuglog?c.debuglog("stream"):function(){};var u,f,p,h=n(57327),g=n(61195),m=n(82457).getHighWaterMark,A=n(94281).q,v=A.ERR_INVALID_ARG_TYPE,b=A.ERR_STREAM_PUSH_AFTER_EOF,w=A.ERR_METHOD_NOT_IMPLEMENTED,y=A.ERR_STREAM_UNSHIFT_AFTER_END_EVENT;n(35717)(x,s);var _=g.errorOrDestroy,C=["error","close","destroy","pause","resume"];function E(e,t,i){r=r||n(56753),e=e||{},"boolean"!=typeof i&&(i=t instanceof r),this.objectMode=!!e.objectMode,i&&(this.objectMode=this.objectMode||!!e.readableObjectMode),this.highWaterMark=m(this,e,"readableHighWaterMark",i),this.buffer=new h,this.length=0,this.pipes=null,this.pipesCount=0,this.flowing=null,this.ended=!1,this.endEmitted=!1,this.reading=!1,this.sync=!0,this.needReadable=!1,this.emittedReadable=!1,this.readableListening=!1,this.resumeScheduled=!1,this.paused=!0,this.emitClose=!1!==e.emitClose,this.autoDestroy=!!e.autoDestroy,this.destroyed=!1,this.defaultEncoding=e.defaultEncoding||"utf8",this.awaitDrain=0,this.readingMore=!1,this.decoder=null,this.encoding=null,e.encoding&&(u||(u=n(32553).s),this.decoder=new u(e.encoding),this.encoding=e.encoding)}function x(e){if(r=r||n(56753),!(this instanceof x))return new x(e);var t=this instanceof r;this._readableState=new E(e,this,t),this.readable=!0,e&&("function"==typeof e.read&&(this._read=e.read),"function"==typeof e.destroy&&(this._destroy=e.destroy)),s.call(this)}function k(e,t,n,r,i){o("readableAddChunk",t);var a,s=e._readableState;if(null===t)s.reading=!1,function(e,t){if(o("onEofChunk"),!t.ended){if(t.decoder){var n=t.decoder.end();n&&n.length&&(t.buffer.push(n),t.length+=t.objectMode?1:n.length)}t.ended=!0,t.sync?N(e):(t.needReadable=!1,t.emittedReadable||(t.emittedReadable=!0,O(e)))}}(e,s);else if(i||(a=function(e,t){var n,r;return r=t,l.isBuffer(r)||r instanceof d||"string"==typeof t||void 0===t||e.objectMode||(n=new v("chunk",["string","Buffer","Uint8Array"],t)),n}(s,t)),a)_(e,a);else if(s.objectMode||t&&t.length>0)if("string"==typeof t||s.objectMode||Object.getPrototypeOf(t)===l.prototype||(t=function(e){return l.from(e)}(t)),r)s.endEmitted?_(e,new y):T(e,s,t,!0);else if(s.ended)_(e,new b);else{if(s.destroyed)return!1;s.reading=!1,s.decoder&&!n?(t=s.decoder.write(t),s.objectMode||0!==t.length?T(e,s,t,!1):R(e,s)):T(e,s,t,!1)}else r||(s.reading=!1,R(e,s));return!s.ended&&(s.lengtht.highWaterMark&&(t.highWaterMark=function(e){return e>=S?e=S:(e--,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e++),e}(e)),e<=t.length?e:t.ended?t.length:(t.needReadable=!0,0))}function N(e){var t=e._readableState;o("emitReadable",t.needReadable,t.emittedReadable),t.needReadable=!1,t.emittedReadable||(o("emitReadable",t.flowing),t.emittedReadable=!0,i.nextTick(O,e))}function O(e){var t=e._readableState;o("emitReadable_",t.destroyed,t.length,t.ended),t.destroyed||!t.length&&!t.ended||(e.emit("readable"),t.emittedReadable=!1),t.needReadable=!t.flowing&&!t.ended&&t.length<=t.highWaterMark,j(e)}function R(e,t){t.readingMore||(t.readingMore=!0,i.nextTick(I,e,t))}function I(e,t){for(;!t.reading&&!t.ended&&(t.length0,t.resumeScheduled&&!t.paused?t.flowing=!0:e.listenerCount("data")>0&&e.resume()}function L(e){o("readable nexttick read 0"),e.read(0)}function M(e,t){o("resume",t.reading),t.reading||e.read(0),t.resumeScheduled=!1,e.emit("resume"),j(e),t.flowing&&!t.reading&&e.read(0)}function j(e){var t=e._readableState;for(o("flow",t.flowing);t.flowing&&null!==e.read(););}function D(e,t){return 0===t.length?null:(t.objectMode?n=t.buffer.shift():!e||e>=t.length?(n=t.decoder?t.buffer.join(""):1===t.buffer.length?t.buffer.first():t.buffer.concat(t.length),t.buffer.clear()):n=t.buffer.consume(e,t.decoder),n);var n}function F(e){var t=e._readableState;o("endReadable",t.endEmitted),t.endEmitted||(t.ended=!0,i.nextTick($,t,e))}function $(e,t){if(o("endReadableNT",e.endEmitted,e.length),!e.endEmitted&&0===e.length&&(e.endEmitted=!0,t.readable=!1,t.emit("end"),e.autoDestroy)){var n=t._writableState;(!n||n.autoDestroy&&n.finished)&&t.destroy()}}function U(e,t){for(var n=0,r=e.length;n=t.highWaterMark:t.length>0)||t.ended))return o("read: emitReadable",t.length,t.ended),0===t.length&&t.ended?F(this):N(this),null;if(0===(e=B(e,t))&&t.ended)return 0===t.length&&F(this),null;var r,i=t.needReadable;return o("need readable",i),(0===t.length||t.length-e0?D(e,t):null)?(t.needReadable=t.length<=t.highWaterMark,e=0):(t.length-=e,t.awaitDrain=0),0===t.length&&(t.ended||(t.needReadable=!0),n!==e&&t.ended&&F(this)),null!==r&&this.emit("data",r),r},x.prototype._read=function(e){_(this,new w("_read()"))},x.prototype.pipe=function(e,t){var n=this,r=this._readableState;switch(r.pipesCount){case 0:r.pipes=e;break;case 1:r.pipes=[r.pipes,e];break;default:r.pipes.push(e)}r.pipesCount+=1,o("pipe count=%d opts=%j",r.pipesCount,t);var s=t&&!1===t.end||e===i.stdout||e===i.stderr?g:l;function l(){o("onend"),e.end()}r.endEmitted?i.nextTick(s):n.once("end",s),e.on("unpipe",(function t(i,a){o("onunpipe"),i===n&&a&&!1===a.hasUnpiped&&(a.hasUnpiped=!0,o("cleanup"),e.removeListener("close",p),e.removeListener("finish",h),e.removeListener("drain",d),e.removeListener("error",f),e.removeListener("unpipe",t),n.removeListener("end",l),n.removeListener("end",g),n.removeListener("data",u),c=!0,!r.awaitDrain||e._writableState&&!e._writableState.needDrain||d())}));var d=function(e){return function(){var t=e._readableState;o("pipeOnDrain",t.awaitDrain),t.awaitDrain&&t.awaitDrain--,0===t.awaitDrain&&a(e,"data")&&(t.flowing=!0,j(e))}}(n);e.on("drain",d);var c=!1;function u(t){o("ondata");var i=e.write(t);o("dest.write",i),!1===i&&((1===r.pipesCount&&r.pipes===e||r.pipesCount>1&&-1!==U(r.pipes,e))&&!c&&(o("false write response, pause",r.awaitDrain),r.awaitDrain++),n.pause())}function f(t){o("onerror",t),g(),e.removeListener("error",f),0===a(e,"error")&&_(e,t)}function p(){e.removeListener("finish",h),g()}function h(){o("onfinish"),e.removeListener("close",p),g()}function g(){o("unpipe"),n.unpipe(e)}return n.on("data",u),function(e,t,n){if("function"==typeof e.prependListener)return e.prependListener(t,n);e._events&&e._events[t]?Array.isArray(e._events[t])?e._events[t].unshift(n):e._events[t]=[n,e._events[t]]:e.on(t,n)}(e,"error",f),e.once("close",p),e.once("finish",h),e.emit("pipe",n),r.flowing||(o("pipe resume"),n.resume()),e},x.prototype.unpipe=function(e){var t=this._readableState,n={hasUnpiped:!1};if(0===t.pipesCount)return this;if(1===t.pipesCount)return e&&e!==t.pipes||(e||(e=t.pipes),t.pipes=null,t.pipesCount=0,t.flowing=!1,e&&e.emit("unpipe",this,n)),this;if(!e){var r=t.pipes,i=t.pipesCount;t.pipes=null,t.pipesCount=0,t.flowing=!1;for(var o=0;o0,!1!==r.flowing&&this.resume()):"readable"===e&&(r.endEmitted||r.readableListening||(r.readableListening=r.needReadable=!0,r.flowing=!1,r.emittedReadable=!1,o("on readable",r.length,r.reading),r.length?N(this):r.reading||i.nextTick(L,this))),n},x.prototype.addListener=x.prototype.on,x.prototype.removeListener=function(e,t){var n=s.prototype.removeListener.call(this,e,t);return"readable"===e&&i.nextTick(P,this),n},x.prototype.removeAllListeners=function(e){var t=s.prototype.removeAllListeners.apply(this,arguments);return"readable"!==e&&void 0!==e||i.nextTick(P,this),t},x.prototype.resume=function(){var e=this._readableState;return e.flowing||(o("resume"),e.flowing=!e.readableListening,function(e,t){t.resumeScheduled||(t.resumeScheduled=!0,i.nextTick(M,e,t))}(this,e)),e.paused=!1,this},x.prototype.pause=function(){return o("call pause flowing=%j",this._readableState.flowing),!1!==this._readableState.flowing&&(o("pause"),this._readableState.flowing=!1,this.emit("pause")),this._readableState.paused=!0,this},x.prototype.wrap=function(e){var t=this,n=this._readableState,r=!1;for(var i in e.on("end",(function(){if(o("wrapped end"),n.decoder&&!n.ended){var e=n.decoder.end();e&&e.length&&t.push(e)}t.push(null)})),e.on("data",(function(i){o("wrapped data"),n.decoder&&(i=n.decoder.write(i)),n.objectMode&&null==i||(n.objectMode||i&&i.length)&&(t.push(i)||(r=!0,e.pause()))})),e)void 0===this[i]&&"function"==typeof e[i]&&(this[i]=function(t){return function(){return e[t].apply(e,arguments)}}(i));for(var a=0;a{"use strict";e.exports=c;var r=n(94281).q,i=r.ERR_METHOD_NOT_IMPLEMENTED,o=r.ERR_MULTIPLE_CALLBACK,a=r.ERR_TRANSFORM_ALREADY_TRANSFORMING,s=r.ERR_TRANSFORM_WITH_LENGTH_0,l=n(56753);function d(e,t){var n=this._transformState;n.transforming=!1;var r=n.writecb;if(null===r)return this.emit("error",new o);n.writechunk=null,n.writecb=null,null!=t&&this.push(t),r(e);var i=this._readableState;i.reading=!1,(i.needReadable||i.length{"use strict";var r,i=n(34155);function o(e){var t=this;this.next=null,this.entry=null,this.finish=function(){!function(e,t,n){var r=e.entry;for(e.entry=null;r;){var i=r.callback;t.pendingcb--,i(undefined),r=r.next}t.corkedRequestsFree.next=e}(t,e)}}e.exports=x,x.WritableState=E;var a,s={deprecate:n(94927)},l=n(22503),d=n(48764).Buffer,c=(void 0!==n.g?n.g:"undefined"!=typeof window?window:"undefined"!=typeof self?self:{}).Uint8Array||function(){},u=n(61195),f=n(82457).getHighWaterMark,p=n(94281).q,h=p.ERR_INVALID_ARG_TYPE,g=p.ERR_METHOD_NOT_IMPLEMENTED,m=p.ERR_MULTIPLE_CALLBACK,A=p.ERR_STREAM_CANNOT_PIPE,v=p.ERR_STREAM_DESTROYED,b=p.ERR_STREAM_NULL_VALUES,w=p.ERR_STREAM_WRITE_AFTER_END,y=p.ERR_UNKNOWN_ENCODING,_=u.errorOrDestroy;function C(){}function E(e,t,a){r=r||n(56753),e=e||{},"boolean"!=typeof a&&(a=t instanceof r),this.objectMode=!!e.objectMode,a&&(this.objectMode=this.objectMode||!!e.writableObjectMode),this.highWaterMark=f(this,e,"writableHighWaterMark",a),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var s=!1===e.decodeStrings;this.decodeStrings=!s,this.defaultEncoding=e.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(e){!function(e,t){var n=e._writableState,r=n.sync,o=n.writecb;if("function"!=typeof o)throw new m;if(function(e){e.writing=!1,e.writecb=null,e.length-=e.writelen,e.writelen=0}(n),t)!function(e,t,n,r,o){--t.pendingcb,n?(i.nextTick(o,r),i.nextTick(O,e,t),e._writableState.errorEmitted=!0,_(e,r)):(o(r),e._writableState.errorEmitted=!0,_(e,r),O(e,t))}(e,n,r,t,o);else{var a=B(n)||e.destroyed;a||n.corked||n.bufferProcessing||!n.bufferedRequest||S(e,n),r?i.nextTick(T,e,n,a,o):T(e,n,a,o)}}(t,e)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.emitClose=!1!==e.emitClose,this.autoDestroy=!!e.autoDestroy,this.bufferedRequestCount=0,this.corkedRequestsFree=new o(this)}function x(e){var t=this instanceof(r=r||n(56753));if(!t&&!a.call(x,this))return new x(e);this._writableState=new E(e,this,t),this.writable=!0,e&&("function"==typeof e.write&&(this._write=e.write),"function"==typeof e.writev&&(this._writev=e.writev),"function"==typeof e.destroy&&(this._destroy=e.destroy),"function"==typeof e.final&&(this._final=e.final)),l.call(this)}function k(e,t,n,r,i,o,a){t.writelen=r,t.writecb=a,t.writing=!0,t.sync=!0,t.destroyed?t.onwrite(new v("write")):n?e._writev(i,t.onwrite):e._write(i,o,t.onwrite),t.sync=!1}function T(e,t,n,r){n||function(e,t){0===t.length&&t.needDrain&&(t.needDrain=!1,e.emit("drain"))}(e,t),t.pendingcb--,r(),O(e,t)}function S(e,t){t.bufferProcessing=!0;var n=t.bufferedRequest;if(e._writev&&n&&n.next){var r=t.bufferedRequestCount,i=new Array(r),a=t.corkedRequestsFree;a.entry=n;for(var s=0,l=!0;n;)i[s]=n,n.isBuf||(l=!1),n=n.next,s+=1;i.allBuffers=l,k(e,t,!0,t.length,i,"",a.finish),t.pendingcb++,t.lastBufferedRequest=null,a.next?(t.corkedRequestsFree=a.next,a.next=null):t.corkedRequestsFree=new o(t),t.bufferedRequestCount=0}else{for(;n;){var d=n.chunk,c=n.encoding,u=n.callback;if(k(e,t,!1,t.objectMode?1:d.length,d,c,u),n=n.next,t.bufferedRequestCount--,t.writing)break}null===n&&(t.lastBufferedRequest=null)}t.bufferedRequest=n,t.bufferProcessing=!1}function B(e){return e.ending&&0===e.length&&null===e.bufferedRequest&&!e.finished&&!e.writing}function N(e,t){e._final((function(n){t.pendingcb--,n&&_(e,n),t.prefinished=!0,e.emit("prefinish"),O(e,t)}))}function O(e,t){var n=B(t);if(n&&(function(e,t){t.prefinished||t.finalCalled||("function"!=typeof e._final||t.destroyed?(t.prefinished=!0,e.emit("prefinish")):(t.pendingcb++,t.finalCalled=!0,i.nextTick(N,e,t)))}(e,t),0===t.pendingcb&&(t.finished=!0,e.emit("finish"),t.autoDestroy))){var r=e._readableState;(!r||r.autoDestroy&&r.endEmitted)&&e.destroy()}return n}n(35717)(x,l),E.prototype.getBuffer=function(){for(var e=this.bufferedRequest,t=[];e;)t.push(e),e=e.next;return t},function(){try{Object.defineProperty(E.prototype,"buffer",{get:s.deprecate((function(){return this.getBuffer()}),"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.","DEP0003")})}catch(e){}}(),"function"==typeof Symbol&&Symbol.hasInstance&&"function"==typeof Function.prototype[Symbol.hasInstance]?(a=Function.prototype[Symbol.hasInstance],Object.defineProperty(x,Symbol.hasInstance,{value:function(e){return!!a.call(this,e)||this===x&&e&&e._writableState instanceof E}})):a=function(e){return e instanceof this},x.prototype.pipe=function(){_(this,new A)},x.prototype.write=function(e,t,n){var r,o=this._writableState,a=!1,s=!o.objectMode&&(r=e,d.isBuffer(r)||r instanceof c);return s&&!d.isBuffer(e)&&(e=function(e){return d.from(e)}(e)),"function"==typeof t&&(n=t,t=null),s?t="buffer":t||(t=o.defaultEncoding),"function"!=typeof n&&(n=C),o.ending?function(e,t){var n=new w;_(e,n),i.nextTick(t,n)}(this,n):(s||function(e,t,n,r){var o;return null===n?o=new b:"string"==typeof n||t.objectMode||(o=new h("chunk",["string","Buffer"],n)),!o||(_(e,o),i.nextTick(r,o),!1)}(this,o,e,n))&&(o.pendingcb++,a=function(e,t,n,r,i,o){if(!n){var a=function(e,t,n){return e.objectMode||!1===e.decodeStrings||"string"!=typeof t||(t=d.from(t,n)),t}(t,r,i);r!==a&&(n=!0,i="buffer",r=a)}var s=t.objectMode?1:r.length;t.length+=s;var l=t.length-1))throw new y(e);return this._writableState.defaultEncoding=e,this},Object.defineProperty(x.prototype,"writableBuffer",{enumerable:!1,get:function(){return this._writableState&&this._writableState.getBuffer()}}),Object.defineProperty(x.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),x.prototype._write=function(e,t,n){n(new g("_write()"))},x.prototype._writev=null,x.prototype.end=function(e,t,n){var r=this._writableState;return"function"==typeof e?(n=e,e=null,t=null):"function"==typeof t&&(n=t,t=null),null!=e&&this.write(e,t),r.corked&&(r.corked=1,this.uncork()),r.ending||function(e,t,n){t.ending=!0,O(e,t),n&&(t.finished?i.nextTick(n):e.once("finish",n)),t.ended=!0,e.writable=!1}(this,r,n),this},Object.defineProperty(x.prototype,"writableLength",{enumerable:!1,get:function(){return this._writableState.length}}),Object.defineProperty(x.prototype,"destroyed",{enumerable:!1,get:function(){return void 0!==this._writableState&&this._writableState.destroyed},set:function(e){this._writableState&&(this._writableState.destroyed=e)}}),x.prototype.destroy=u.destroy,x.prototype._undestroy=u.undestroy,x.prototype._destroy=function(e,t){t(e)}},45850:(e,t,n)=>{"use strict";var r,i=n(34155);function o(e,t,n){return(t=function(e){var t=function(e,t){if("object"!=typeof e||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!=typeof r)return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var a=n(8610),s=Symbol("lastResolve"),l=Symbol("lastReject"),d=Symbol("error"),c=Symbol("ended"),u=Symbol("lastPromise"),f=Symbol("handlePromise"),p=Symbol("stream");function h(e,t){return{value:e,done:t}}function g(e){var t=e[s];if(null!==t){var n=e[p].read();null!==n&&(e[u]=null,e[s]=null,e[l]=null,t(h(n,!1)))}}function m(e){i.nextTick(g,e)}var A=Object.getPrototypeOf((function(){})),v=Object.setPrototypeOf((o(r={get stream(){return this[p]},next:function(){var e=this,t=this[d];if(null!==t)return Promise.reject(t);if(this[c])return Promise.resolve(h(void 0,!0));if(this[p].destroyed)return new Promise((function(t,n){i.nextTick((function(){e[d]?n(e[d]):t(h(void 0,!0))}))}));var n,r=this[u];if(r)n=new Promise(function(e,t){return function(n,r){e.then((function(){t[c]?n(h(void 0,!0)):t[f](n,r)}),r)}}(r,this));else{var o=this[p].read();if(null!==o)return Promise.resolve(h(o,!1));n=new Promise(this[f])}return this[u]=n,n}},Symbol.asyncIterator,(function(){return this})),o(r,"return",(function(){var e=this;return new Promise((function(t,n){e[p].destroy(null,(function(e){e?n(e):t(h(void 0,!0))}))}))})),r),A);e.exports=function(e){var t,n=Object.create(v,(o(t={},p,{value:e,writable:!0}),o(t,s,{value:null,writable:!0}),o(t,l,{value:null,writable:!0}),o(t,d,{value:null,writable:!0}),o(t,c,{value:e._readableState.endEmitted,writable:!0}),o(t,f,{value:function(e,t){var r=n[p].read();r?(n[u]=null,n[s]=null,n[l]=null,e(h(r,!1))):(n[s]=e,n[l]=t)},writable:!0}),t));return n[u]=null,a(e,(function(e){if(e&&"ERR_STREAM_PREMATURE_CLOSE"!==e.code){var t=n[l];return null!==t&&(n[u]=null,n[s]=null,n[l]=null,t(e)),void(n[d]=e)}var r=n[s];null!==r&&(n[u]=null,n[s]=null,n[l]=null,r(h(void 0,!0))),n[c]=!0})),e.on("readable",m.bind(null,n)),n}},57327:(e,t,n)=>{"use strict";function r(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function i(e){for(var t=1;t0?this.tail.next=t:this.head=t,this.tail=t,++this.length}},{key:"unshift",value:function(e){var t={data:e,next:this.head};0===this.length&&(this.tail=t),this.head=t,++this.length}},{key:"shift",value:function(){if(0!==this.length){var e=this.head.data;return 1===this.length?this.head=this.tail=null:this.head=this.head.next,--this.length,e}}},{key:"clear",value:function(){this.head=this.tail=null,this.length=0}},{key:"join",value:function(e){if(0===this.length)return"";for(var t=this.head,n=""+t.data;t=t.next;)n+=e+t.data;return n}},{key:"concat",value:function(e){if(0===this.length)return l.alloc(0);for(var t,n,r,i=l.allocUnsafe(e>>>0),o=this.head,a=0;o;)t=o.data,n=i,r=a,l.prototype.copy.call(t,n,r),a+=o.data.length,o=o.next;return i}},{key:"consume",value:function(e,t){var n;return ei.length?i.length:e;if(o===i.length?r+=i:r+=i.slice(0,e),0==(e-=o)){o===i.length?(++n,t.next?this.head=t.next:this.head=this.tail=null):(this.head=t,t.data=i.slice(o));break}++n}return this.length-=n,r}},{key:"_getBuffer",value:function(e){var t=l.allocUnsafe(e),n=this.head,r=1;for(n.data.copy(t),e-=n.data.length;n=n.next;){var i=n.data,o=e>i.length?i.length:e;if(i.copy(t,t.length-e,0,o),0==(e-=o)){o===i.length?(++r,n.next?this.head=n.next:this.head=this.tail=null):(this.head=n,n.data=i.slice(o));break}++r}return this.length-=r,t}},{key:c,value:function(e,t){return d(this,i(i({},t),{},{depth:0,customInspect:!1}))}}])&&a(t.prototype,n),Object.defineProperty(t,"prototype",{writable:!1}),e}()},61195:(e,t,n)=>{"use strict";var r=n(34155);function i(e,t){a(e,t),o(e)}function o(e){e._writableState&&!e._writableState.emitClose||e._readableState&&!e._readableState.emitClose||e.emit("close")}function a(e,t){e.emit("error",t)}e.exports={destroy:function(e,t){var n=this,s=this._readableState&&this._readableState.destroyed,l=this._writableState&&this._writableState.destroyed;return s||l?(t?t(e):e&&(this._writableState?this._writableState.errorEmitted||(this._writableState.errorEmitted=!0,r.nextTick(a,this,e)):r.nextTick(a,this,e)),this):(this._readableState&&(this._readableState.destroyed=!0),this._writableState&&(this._writableState.destroyed=!0),this._destroy(e||null,(function(e){!t&&e?n._writableState?n._writableState.errorEmitted?r.nextTick(o,n):(n._writableState.errorEmitted=!0,r.nextTick(i,n,e)):r.nextTick(i,n,e):t?(r.nextTick(o,n),t(e)):r.nextTick(o,n)})),this)},undestroy:function(){this._readableState&&(this._readableState.destroyed=!1,this._readableState.reading=!1,this._readableState.ended=!1,this._readableState.endEmitted=!1),this._writableState&&(this._writableState.destroyed=!1,this._writableState.ended=!1,this._writableState.ending=!1,this._writableState.finalCalled=!1,this._writableState.prefinished=!1,this._writableState.finished=!1,this._writableState.errorEmitted=!1)},errorOrDestroy:function(e,t){var n=e._readableState,r=e._writableState;n&&n.autoDestroy||r&&r.autoDestroy?e.destroy(t):e.emit("error",t)}}},8610:(e,t,n)=>{"use strict";var r=n(94281).q.ERR_STREAM_PREMATURE_CLOSE;function i(){}e.exports=function e(t,n,o){if("function"==typeof n)return e(t,null,n);n||(n={}),o=function(e){var t=!1;return function(){if(!t){t=!0;for(var n=arguments.length,r=new Array(n),i=0;i{e.exports=function(){throw new Error("Readable.from is not available in the browser")}},59946:(e,t,n)=>{"use strict";var r,i=n(94281).q,o=i.ERR_MISSING_ARGS,a=i.ERR_STREAM_DESTROYED;function s(e){if(e)throw e}function l(e){e()}function d(e,t){return e.pipe(t)}e.exports=function(){for(var e=arguments.length,t=new Array(e),i=0;i0,(function(e){c||(c=e),e&&f.forEach(l),o||(f.forEach(l),u(c))}))}));return t.reduce(d)}},82457:(e,t,n)=>{"use strict";var r=n(94281).q.ERR_INVALID_OPT_VALUE;e.exports={getHighWaterMark:function(e,t,n,i){var o=function(e,t,n){return null!=e.highWaterMark?e.highWaterMark:t?e[n]:null}(t,i,n);if(null!=o){if(!isFinite(o)||Math.floor(o)!==o||o<0)throw new r(i?n:"highWaterMark",o);return Math.floor(o)}return e.objectMode?16:16384}}},22503:(e,t,n)=>{e.exports=n(17187).EventEmitter},88473:(e,t,n)=>{(t=e.exports=n(79481)).Stream=t,t.Readable=t,t.Writable=n(64229),t.Duplex=n(56753),t.Transform=n(74605),t.PassThrough=n(82725),t.finished=n(8610),t.pipeline=n(59946)},89509:(e,t,n)=>{var r=n(48764),i=r.Buffer;function o(e,t){for(var n in e)t[n]=e[n]}function a(e,t,n){return i(e,t,n)}i.from&&i.alloc&&i.allocUnsafe&&i.allocUnsafeSlow?e.exports=r:(o(r,t),t.Buffer=a),a.prototype=Object.create(i.prototype),o(i,a),a.from=function(e,t,n){if("number"==typeof e)throw new TypeError("Argument must not be a number");return i(e,t,n)},a.alloc=function(e,t,n){if("number"!=typeof e)throw new TypeError("Argument must be a number");var r=i(e);return void 0!==t?"string"==typeof n?r.fill(t,n):r.fill(t):r.fill(0),r},a.allocUnsafe=function(e){if("number"!=typeof e)throw new TypeError("Argument must be a number");return i(e)},a.allocUnsafeSlow=function(e){if("number"!=typeof e)throw new TypeError("Argument must be a number");return r.SlowBuffer(e)}},42830:(e,t,n)=>{e.exports=i;var r=n(17187).EventEmitter;function i(){r.call(this)}n(35717)(i,r),i.Readable=n(79481),i.Writable=n(64229),i.Duplex=n(56753),i.Transform=n(74605),i.PassThrough=n(82725),i.finished=n(8610),i.pipeline=n(59946),i.Stream=i,i.prototype.pipe=function(e,t){var n=this;function i(t){e.writable&&!1===e.write(t)&&n.pause&&n.pause()}function o(){n.readable&&n.resume&&n.resume()}n.on("data",i),e.on("drain",o),e._isStdio||t&&!1===t.end||(n.on("end",s),n.on("close",l));var a=!1;function s(){a||(a=!0,e.end())}function l(){a||(a=!0,"function"==typeof e.destroy&&e.destroy())}function d(e){if(c(),0===r.listenerCount(this,"error"))throw e}function c(){n.removeListener("data",i),e.removeListener("drain",o),n.removeListener("end",s),n.removeListener("close",l),n.removeListener("error",d),e.removeListener("error",d),n.removeListener("end",c),n.removeListener("close",c),e.removeListener("close",c)}return n.on("error",d),e.on("error",d),n.on("end",c),n.on("close",c),e.on("close",c),e.emit("pipe",n),e}},8501:(e,t,n)=>{var r=n(11989),i=n(55676),o=n(47529),a=n(50584),s=n(8575),l=t;l.request=function(e,t){e="string"==typeof e?s.parse(e):o(e);var i=-1===n.g.location.protocol.search(/^https?:$/)?"http:":"",a=e.protocol||i,l=e.hostname||e.host,d=e.port,c=e.path||"/";l&&-1!==l.indexOf(":")&&(l="["+l+"]"),e.url=(l?a+"//"+l:"")+(d?":"+d:"")+c,e.method=(e.method||"GET").toUpperCase(),e.headers=e.headers||{};var u=new r(e);return t&&u.on("response",t),u},l.get=function(e,t){var n=l.request(e,t);return n.end(),n},l.ClientRequest=r,l.IncomingMessage=i.IncomingMessage,l.Agent=function(){},l.Agent.defaultMaxSockets=4,l.globalAgent=new l.Agent,l.STATUS_CODES=a,l.METHODS=["CHECKOUT","CONNECT","COPY","DELETE","GET","HEAD","LOCK","M-SEARCH","MERGE","MKACTIVITY","MKCOL","MOVE","NOTIFY","OPTIONS","PATCH","POST","PROPFIND","PROPPATCH","PURGE","PUT","REPORT","SEARCH","SUBSCRIBE","TRACE","UNLOCK","UNSUBSCRIBE"]},8725:(e,t,n)=>{var r;function i(){if(void 0!==r)return r;if(n.g.XMLHttpRequest){r=new n.g.XMLHttpRequest;try{r.open("GET",n.g.XDomainRequest?"/":"https://example.com")}catch(e){r=null}}else r=null;return r}function o(e){var t=i();if(!t)return!1;try{return t.responseType=e,t.responseType===e}catch(e){}return!1}function a(e){return"function"==typeof e}t.fetch=a(n.g.fetch)&&a(n.g.ReadableStream),t.writableStream=a(n.g.WritableStream),t.abortController=a(n.g.AbortController),t.arraybuffer=t.fetch||o("arraybuffer"),t.msstream=!t.fetch&&o("ms-stream"),t.mozchunkedarraybuffer=!t.fetch&&o("moz-chunked-arraybuffer"),t.overrideMimeType=t.fetch||!!i()&&a(i().overrideMimeType),r=null},11989:(e,t,n)=>{var r=n(48764).Buffer,i=n(34155),o=n(8725),a=n(35717),s=n(55676),l=n(88473),d=s.IncomingMessage,c=s.readyStates,u=e.exports=function(e){var t,n=this;l.Writable.call(n),n._opts=e,n._body=[],n._headers={},e.auth&&n.setHeader("Authorization","Basic "+r.from(e.auth).toString("base64")),Object.keys(e.headers).forEach((function(t){n.setHeader(t,e.headers[t])}));var i=!0;if("disable-fetch"===e.mode||"requestTimeout"in e&&!o.abortController)i=!1,t=!0;else if("prefer-streaming"===e.mode)t=!1;else if("allow-wrong-content-type"===e.mode)t=!o.overrideMimeType;else{if(e.mode&&"default"!==e.mode&&"prefer-fast"!==e.mode)throw new Error("Invalid value for opts.mode");t=!0}n._mode=function(e,t){return o.fetch&&t?"fetch":o.mozchunkedarraybuffer?"moz-chunked-arraybuffer":o.msstream?"ms-stream":o.arraybuffer&&e?"arraybuffer":"text"}(t,i),n._fetchTimer=null,n._socketTimeout=null,n._socketTimer=null,n.on("finish",(function(){n._onFinish()}))};a(u,l.Writable),u.prototype.setHeader=function(e,t){var n=e.toLowerCase();-1===f.indexOf(n)&&(this._headers[n]={name:e,value:t})},u.prototype.getHeader=function(e){var t=this._headers[e.toLowerCase()];return t?t.value:null},u.prototype.removeHeader=function(e){delete this._headers[e.toLowerCase()]},u.prototype._onFinish=function(){var e=this;if(!e._destroyed){var t=e._opts;"timeout"in t&&0!==t.timeout&&e.setTimeout(t.timeout);var r=e._headers,a=null;"GET"!==t.method&&"HEAD"!==t.method&&(a=new Blob(e._body,{type:(r["content-type"]||{}).value||""}));var s=[];if(Object.keys(r).forEach((function(e){var t=r[e].name,n=r[e].value;Array.isArray(n)?n.forEach((function(e){s.push([t,e])})):s.push([t,n])})),"fetch"===e._mode){var l=null;if(o.abortController){var d=new AbortController;l=d.signal,e._fetchAbortController=d,"requestTimeout"in t&&0!==t.requestTimeout&&(e._fetchTimer=n.g.setTimeout((function(){e.emit("requestTimeout"),e._fetchAbortController&&e._fetchAbortController.abort()}),t.requestTimeout))}n.g.fetch(e._opts.url,{method:e._opts.method,headers:s,body:a||void 0,mode:"cors",credentials:t.withCredentials?"include":"same-origin",signal:l}).then((function(t){e._fetchResponse=t,e._resetTimers(!1),e._connect()}),(function(t){e._resetTimers(!0),e._destroyed||e.emit("error",t)}))}else{var u=e._xhr=new n.g.XMLHttpRequest;try{u.open(e._opts.method,e._opts.url,!0)}catch(t){return void i.nextTick((function(){e.emit("error",t)}))}"responseType"in u&&(u.responseType=e._mode),"withCredentials"in u&&(u.withCredentials=!!t.withCredentials),"text"===e._mode&&"overrideMimeType"in u&&u.overrideMimeType("text/plain; charset=x-user-defined"),"requestTimeout"in t&&(u.timeout=t.requestTimeout,u.ontimeout=function(){e.emit("requestTimeout")}),s.forEach((function(e){u.setRequestHeader(e[0],e[1])})),e._response=null,u.onreadystatechange=function(){switch(u.readyState){case c.LOADING:case c.DONE:e._onXHRProgress()}},"moz-chunked-arraybuffer"===e._mode&&(u.onprogress=function(){e._onXHRProgress()}),u.onerror=function(){e._destroyed||(e._resetTimers(!0),e.emit("error",new Error("XHR error")))};try{u.send(a)}catch(t){return void i.nextTick((function(){e.emit("error",t)}))}}}},u.prototype._onXHRProgress=function(){var e=this;e._resetTimers(!1),function(e){try{var t=e.status;return null!==t&&0!==t}catch(e){return!1}}(e._xhr)&&!e._destroyed&&(e._response||e._connect(),e._response._onXHRProgress(e._resetTimers.bind(e)))},u.prototype._connect=function(){var e=this;e._destroyed||(e._response=new d(e._xhr,e._fetchResponse,e._mode,e._resetTimers.bind(e)),e._response.on("error",(function(t){e.emit("error",t)})),e.emit("response",e._response))},u.prototype._write=function(e,t,n){this._body.push(e),n()},u.prototype._resetTimers=function(e){var t=this;n.g.clearTimeout(t._socketTimer),t._socketTimer=null,e?(n.g.clearTimeout(t._fetchTimer),t._fetchTimer=null):t._socketTimeout&&(t._socketTimer=n.g.setTimeout((function(){t.emit("timeout")}),t._socketTimeout))},u.prototype.abort=u.prototype.destroy=function(e){var t=this;t._destroyed=!0,t._resetTimers(!0),t._response&&(t._response._destroyed=!0),t._xhr?t._xhr.abort():t._fetchAbortController&&t._fetchAbortController.abort(),e&&t.emit("error",e)},u.prototype.end=function(e,t,n){"function"==typeof e&&(n=e,e=void 0),l.Writable.prototype.end.call(this,e,t,n)},u.prototype.setTimeout=function(e,t){var n=this;t&&n.once("timeout",t),n._socketTimeout=e,n._resetTimers(!1)},u.prototype.flushHeaders=function(){},u.prototype.setNoDelay=function(){},u.prototype.setSocketKeepAlive=function(){};var f=["accept-charset","accept-encoding","access-control-request-headers","access-control-request-method","connection","content-length","cookie","cookie2","date","dnt","expect","host","keep-alive","origin","referer","te","trailer","transfer-encoding","upgrade","via"]},55676:(e,t,n)=>{var r=n(34155),i=n(48764).Buffer,o=n(8725),a=n(35717),s=n(88473),l=t.readyStates={UNSENT:0,OPENED:1,HEADERS_RECEIVED:2,LOADING:3,DONE:4},d=t.IncomingMessage=function(e,t,n,a){var l=this;if(s.Readable.call(l),l._mode=n,l.headers={},l.rawHeaders=[],l.trailers={},l.rawTrailers=[],l.on("end",(function(){r.nextTick((function(){l.emit("close")}))})),"fetch"===n){if(l._fetchResponse=t,l.url=t.url,l.statusCode=t.status,l.statusMessage=t.statusText,t.headers.forEach((function(e,t){l.headers[t.toLowerCase()]=e,l.rawHeaders.push(t,e)})),o.writableStream){var d=new WritableStream({write:function(e){return a(!1),new Promise((function(t,n){l._destroyed?n():l.push(i.from(e))?t():l._resumeFetch=t}))},close:function(){a(!0),l._destroyed||l.push(null)},abort:function(e){a(!0),l._destroyed||l.emit("error",e)}});try{return void t.body.pipeTo(d).catch((function(e){a(!0),l._destroyed||l.emit("error",e)}))}catch(e){}}var c=t.body.getReader();!function e(){c.read().then((function(t){l._destroyed||(a(t.done),t.done?l.push(null):(l.push(i.from(t.value)),e()))})).catch((function(e){a(!0),l._destroyed||l.emit("error",e)}))}()}else if(l._xhr=e,l._pos=0,l.url=e.responseURL,l.statusCode=e.status,l.statusMessage=e.statusText,e.getAllResponseHeaders().split(/\r?\n/).forEach((function(e){var t=e.match(/^([^:]+):\s*(.*)/);if(t){var n=t[1].toLowerCase();"set-cookie"===n?(void 0===l.headers[n]&&(l.headers[n]=[]),l.headers[n].push(t[2])):void 0!==l.headers[n]?l.headers[n]+=", "+t[2]:l.headers[n]=t[2],l.rawHeaders.push(t[1],t[2])}})),l._charset="x-user-defined",!o.overrideMimeType){var u=l.rawHeaders["mime-type"];if(u){var f=u.match(/;\s*charset=([^;])(;|$)/);f&&(l._charset=f[1].toLowerCase())}l._charset||(l._charset="utf-8")}};a(d,s.Readable),d.prototype._read=function(){var e=this._resumeFetch;e&&(this._resumeFetch=null,e())},d.prototype._onXHRProgress=function(e){var t=this,r=t._xhr,o=null;switch(t._mode){case"text":if((o=r.responseText).length>t._pos){var a=o.substr(t._pos);if("x-user-defined"===t._charset){for(var s=i.alloc(a.length),d=0;dt._pos&&(t.push(i.from(new Uint8Array(c.result.slice(t._pos)))),t._pos=c.result.byteLength)},c.onload=function(){e(!0),t.push(null)},c.readAsArrayBuffer(o)}t._xhr.readyState===l.DONE&&"ms-stream"!==t._mode&&(e(!0),t.push(null))}},32553:(e,t,n)=>{"use strict";var r=n(89509).Buffer,i=r.isEncoding||function(e){switch((e=""+e)&&e.toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":case"raw":return!0;default:return!1}};function o(e){var t;switch(this.encoding=function(e){var t=function(e){if(!e)return"utf8";for(var t;;)switch(e){case"utf8":case"utf-8":return"utf8";case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return"utf16le";case"latin1":case"binary":return"latin1";case"base64":case"ascii":case"hex":return e;default:if(t)return;e=(""+e).toLowerCase(),t=!0}}(e);if("string"!=typeof t&&(r.isEncoding===i||!i(e)))throw new Error("Unknown encoding: "+e);return t||e}(e),this.encoding){case"utf16le":this.text=l,this.end=d,t=4;break;case"utf8":this.fillLast=s,t=4;break;case"base64":this.text=c,this.end=u,t=3;break;default:return this.write=f,void(this.end=p)}this.lastNeed=0,this.lastTotal=0,this.lastChar=r.allocUnsafe(t)}function a(e){return e<=127?0:e>>5==6?2:e>>4==14?3:e>>3==30?4:e>>6==2?-1:-2}function s(e){var t=this.lastTotal-this.lastNeed,n=function(e,t,n){if(128!=(192&t[0]))return e.lastNeed=0,"�";if(e.lastNeed>1&&t.length>1){if(128!=(192&t[1]))return e.lastNeed=1,"�";if(e.lastNeed>2&&t.length>2&&128!=(192&t[2]))return e.lastNeed=2,"�"}}(this,e);return void 0!==n?n:this.lastNeed<=e.length?(e.copy(this.lastChar,t,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal)):(e.copy(this.lastChar,t,0,e.length),void(this.lastNeed-=e.length))}function l(e,t){if((e.length-t)%2==0){var n=e.toString("utf16le",t);if(n){var r=n.charCodeAt(n.length-1);if(r>=55296&&r<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1],n.slice(0,-1)}return n}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=e[e.length-1],e.toString("utf16le",t,e.length-1)}function d(e){var t=e&&e.length?this.write(e):"";if(this.lastNeed){var n=this.lastTotal-this.lastNeed;return t+this.lastChar.toString("utf16le",0,n)}return t}function c(e,t){var n=(e.length-t)%3;return 0===n?e.toString("base64",t):(this.lastNeed=3-n,this.lastTotal=3,1===n?this.lastChar[0]=e[e.length-1]:(this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1]),e.toString("base64",t,e.length-n))}function u(e){var t=e&&e.length?this.write(e):"";return this.lastNeed?t+this.lastChar.toString("base64",0,3-this.lastNeed):t}function f(e){return e.toString(this.encoding)}function p(e){return e&&e.length?this.write(e):""}t.s=o,o.prototype.write=function(e){if(0===e.length)return"";var t,n;if(this.lastNeed){if(void 0===(t=this.fillLast(e)))return"";n=this.lastNeed,this.lastNeed=0}else n=0;return n=0?(i>0&&(e.lastNeed=i-1),i):--r=0?(i>0&&(e.lastNeed=i-2),i):--r=0?(i>0&&(2===i?i=0:e.lastNeed=i-3),i):0}(this,e,t);if(!this.lastNeed)return e.toString("utf8",t);this.lastTotal=n;var r=e.length-(n-this.lastNeed);return e.copy(this.lastChar,0,r),e.toString("utf8",t,r)},o.prototype.fillLast=function(e){if(this.lastNeed<=e.length)return e.copy(this.lastChar,this.lastTotal-this.lastNeed,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);e.copy(this.lastChar,this.lastTotal-this.lastNeed,0,e.length),this.lastNeed-=e.length}},94927:(e,t,n)=>{var r=n(25108);function i(e){try{if(!n.g.localStorage)return!1}catch(e){return!1}var t=n.g.localStorage[e];return null!=t&&"true"===String(t).toLowerCase()}e.exports=function(e,t){if(i("noDeprecation"))return e;var n=!1;return function(){if(!n){if(i("throwDeprecation"))throw new Error(t);i("traceDeprecation")?r.trace(t):r.warn(t),n=!0}return e.apply(this,arguments)}}},47529:e=>{e.exports=function(){for(var e={},n=0;n{"use strict";e.exports="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGhlaWdodD0iMTYiIHdpZHRoPSIxNiI+CiAgPHBhdGggZD0iTTE0IDEyLjNMMTIuMyAxNCA4IDkuNyAzLjcgMTQgMiAxMi4zIDYuMyA4IDIgMy43IDMuNyAyIDggNi4zIDEyLjMgMiAxNCAzLjcgOS43IDh6Ii8+Cjwvc3ZnPgo="},90888:e=>{"use strict";e.exports="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGhlaWdodD0iMTYiIHdpZHRoPSIxNiI+CiAgPHBhdGggZD0iTTE0IDEyLjNMMTIuMyAxNCA4IDkuNyAzLjcgMTQgMiAxMi4zIDYuMyA4IDIgMy43IDMuNyAyIDggNi4zIDEyLjMgMiAxNCAzLjcgOS43IDh6IiBzdHlsZT0iZmlsbC1vcGFjaXR5OjE7ZmlsbDojZmZmZmZmIi8+Cjwvc3ZnPgo="},24654:()=>{},52361:()=>{},94616:()=>{},5656:(e,t,n)=>{"use strict";n.d(t,{$B:()=>P,DT:()=>A,G7:()=>st,RL:()=>$,Ti:()=>H,Tv:()=>B,_o:()=>M,cd:()=>dt,e4:()=>R,gt:()=>L,h7:()=>k,m0:()=>E,oE:()=>ct,p$:()=>v,p4:()=>b,pC:()=>F,qq:()=>C,rp:()=>D,sS:()=>m,tB:()=>T,w4:()=>x,y3:()=>w,zu:()=>S});var r=n(77958),i=n(17499),o=n(31352),a=n(62520),s=n(65358),l=n(79753),d=n(14596);const c=null===(u=(0,r.ts)())?(0,i.IY)().setApp("files").build():(0,i.IY)().setApp("files").setUid(u.uid).build();var u;class f{_entries=[];registerEntry(e){this.validateEntry(e),this._entries.push(e)}unregisterEntry(e){const t="string"==typeof e?this.getEntryIndex(e):this.getEntryIndex(e.id);-1!==t?this._entries.splice(t,1):c.warn("Entry not found, nothing removed",{entry:e,entries:this.getEntries()})}getEntries(e){return e?this._entries.filter((t=>"function"!=typeof t.enabled||t.enabled(e))):this._entries}getEntryIndex(e){return this._entries.findIndex((t=>t.id===e))}validateEntry(e){if(!e.id||!e.displayName||!e.iconSvgInline&&!e.iconClass||!e.handler)throw new Error("Invalid entry");if("string"!=typeof e.id||"string"!=typeof e.displayName)throw new Error("Invalid id or displayName property");if(e.iconClass&&"string"!=typeof e.iconClass||e.iconSvgInline&&"string"!=typeof e.iconSvgInline)throw new Error("Invalid icon provided");if(void 0!==e.enabled&&"function"!=typeof e.enabled)throw new Error("Invalid enabled property");if("function"!=typeof e.handler)throw new Error("Invalid handler property");if("order"in e&&"number"!=typeof e.order)throw new Error("Invalid order property");if(-1!==this.getEntryIndex(e.id))throw new Error("Duplicate entry")}}const p=function(){return typeof window._nc_newfilemenu>"u"&&(window._nc_newfilemenu=new f,c.debug("NewFileMenu initialized")),window._nc_newfilemenu},h=["B","KB","MB","GB","TB","PB"],g=["B","KiB","MiB","GiB","TiB","PiB"];function m(e,t=!1,n=!1,r=!1){n=n&&!r,"string"==typeof e&&(e=Number(e));let i=e>0?Math.floor(Math.log(e)/Math.log(r?1e3:1024)):0;i=Math.min((n?g.length:h.length)-1,i);const a=n?g[i]:h[i];let s=(e/Math.pow(r?1e3:1024,i)).toFixed(1);return!0===t&&0===i?("0.0"!==s?"< 1 ":"0 ")+(n?g[1]:h[1]):(s=i<2?parseFloat(s).toFixed(0):parseFloat(s).toLocaleString((0,o.aj)()),s+" "+a)}var A=(e=>(e.DEFAULT="default",e.HIDDEN="hidden",e))(A||{});class v{_action;constructor(e){this.validateAction(e),this._action=e}get id(){return this._action.id}get displayName(){return this._action.displayName}get title(){return this._action.title}get iconSvgInline(){return this._action.iconSvgInline}get enabled(){return this._action.enabled}get exec(){return this._action.exec}get execBatch(){return this._action.execBatch}get order(){return this._action.order}get parent(){return this._action.parent}get default(){return this._action.default}get inline(){return this._action.inline}get renderInline(){return this._action.renderInline}validateAction(e){if(!e.id||"string"!=typeof e.id)throw new Error("Invalid id");if(!e.displayName||"function"!=typeof e.displayName)throw new Error("Invalid displayName function");if("title"in e&&"function"!=typeof e.title)throw new Error("Invalid title function");if(!e.iconSvgInline||"function"!=typeof e.iconSvgInline)throw new Error("Invalid iconSvgInline function");if(!e.exec||"function"!=typeof e.exec)throw new Error("Invalid exec function");if("enabled"in e&&"function"!=typeof e.enabled)throw new Error("Invalid enabled function");if("execBatch"in e&&"function"!=typeof e.execBatch)throw new Error("Invalid execBatch function");if("order"in e&&"number"!=typeof e.order)throw new Error("Invalid order");if("parent"in e&&"string"!=typeof e.parent)throw new Error("Invalid parent");if(e.default&&!Object.values(A).includes(e.default))throw new Error("Invalid default");if("inline"in e&&"function"!=typeof e.inline)throw new Error("Invalid inline function");if("renderInline"in e&&"function"!=typeof e.renderInline)throw new Error("Invalid renderInline function")}}const b=function(e){typeof window._nc_fileactions>"u"&&(window._nc_fileactions=[],c.debug("FileActions initialized")),window._nc_fileactions.find((t=>t.id===e.id))?c.error(`FileAction ${e.id} already registered`,{action:e}):window._nc_fileactions.push(e)};var w=(e=>(e[e.NONE=0]="NONE",e[e.CREATE=4]="CREATE",e[e.READ=1]="READ",e[e.UPDATE=2]="UPDATE",e[e.DELETE=8]="DELETE",e[e.SHARE=16]="SHARE",e[e.ALL=31]="ALL",e))(w||{});const y=["d:getcontentlength","d:getcontenttype","d:getetag","d:getlastmodified","d:quota-available-bytes","d:resourcetype","nc:has-preview","nc:is-encrypted","nc:mount-type","nc:share-attributes","oc:comments-unread","oc:favorite","oc:fileid","oc:owner-display-name","oc:owner-id","oc:permissions","oc:share-types","oc:size","ocs:share-permissions"],_={d:"DAV:",nc:"http://nextcloud.org/ns",oc:"http://owncloud.org/ns",ocs:"http://open-collaboration-services.org/ns"},C=function(e,t={nc:"http://nextcloud.org/ns"}){typeof window._nc_dav_properties>"u"&&(window._nc_dav_properties=[...y],window._nc_dav_namespaces={..._});const n={...window._nc_dav_namespaces,...t};return window._nc_dav_properties.find((t=>t===e))?(c.error(`${e} already registered`,{prop:e}),!1):e.startsWith("<")||2!==e.split(":").length?(c.error(`${e} is not valid. See example: 'oc:fileid'`,{prop:e}),!1):n[e.split(":")[0]]?(window._nc_dav_properties.push(e),window._nc_dav_namespaces=n,!0):(c.error(`${e} namespace unknown`,{prop:e,namespaces:n}),!1)},E=function(){return typeof window._nc_dav_properties>"u"&&(window._nc_dav_properties=[...y]),window._nc_dav_properties.map((e=>`<${e} />`)).join(" ")},x=function(){return typeof window._nc_dav_namespaces>"u"&&(window._nc_dav_namespaces={..._}),Object.keys(window._nc_dav_namespaces).map((e=>`xmlns:${e}="${window._nc_dav_namespaces?.[e]}"`)).join(" ")},k=function(){return`\n\t\t\n\t\t\t\n\t\t\t\t${E()}\n\t\t\t\n\t\t`},T=function(e){return`\n\n\t\n\t\t\n\t\t\t\n\t\t\t\t${E()}\n\t\t\t\n\t\t\n\t\t\n\t\t\t\n\t\t\t\t/files/${(0,r.ts)()?.uid}/\n\t\t\t\tinfinity\n\t\t\t\n\t\t\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\thttpd/unix-directory\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t0\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t${e}\n\t\t\t\t\n\t\t\t\n\t\t\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\n\t\t\n\t\t\t100\n\t\t\t0\n\t\t\n\t\n`},S=function(e=""){let t=w.NONE;return e&&((e.includes("C")||e.includes("K"))&&(t|=w.CREATE),e.includes("G")&&(t|=w.READ),(e.includes("W")||e.includes("N")||e.includes("V"))&&(t|=w.UPDATE),e.includes("D")&&(t|=w.DELETE),e.includes("R")&&(t|=w.SHARE)),t};var B=(e=>(e.Folder="folder",e.File="file",e))(B||{});const N=function(e,t){return null!==e.match(t)},O=(e,t)=>{if(e.id&&"number"!=typeof e.id)throw new Error("Invalid id type of value");if(!e.source)throw new Error("Missing mandatory source");try{new URL(e.source)}catch{throw new Error("Invalid source format, source must be a valid URL")}if(!e.source.startsWith("http"))throw new Error("Invalid source format, only http(s) is supported");if(e.mtime&&!(e.mtime instanceof Date))throw new Error("Invalid mtime type");if(e.crtime&&!(e.crtime instanceof Date))throw new Error("Invalid crtime type");if(!e.mime||"string"!=typeof e.mime||!e.mime.match(/^[-\w.]+\/[-+\w.]+$/gi))throw new Error("Missing or invalid mandatory mime");if("size"in e&&"number"!=typeof e.size&&void 0!==e.size)throw new Error("Invalid size type");if("permissions"in e&&void 0!==e.permissions&&!("number"==typeof e.permissions&&e.permissions>=w.NONE&&e.permissions<=w.ALL))throw new Error("Invalid permissions");if(e.owner&&null!==e.owner&&"string"!=typeof e.owner)throw new Error("Invalid owner type");if(e.attributes&&"object"!=typeof e.attributes)throw new Error("Invalid attributes type");if(e.root&&"string"!=typeof e.root)throw new Error("Invalid root type");if(e.root&&!e.root.startsWith("/"))throw new Error("Root must start with a leading slash");if(e.root&&!e.source.includes(e.root))throw new Error("Root must be part of the source");if(e.root&&N(e.source,t)){const n=e.source.match(t)[0];if(!e.source.includes((0,a.join)(n,e.root)))throw new Error("The root must be relative to the service. e.g /files/emma")}if(e.status&&!Object.values(R).includes(e.status))throw new Error("Status must be a valid NodeStatus")};var R=(e=>(e.NEW="new",e.FAILED="failed",e.LOADING="loading",e.LOCKED="locked",e))(R||{});class I{_data;_attributes;_knownDavService=/(remote|public)\.php\/(web)?dav/i;constructor(e,t){O(e,t||this._knownDavService),this._data=e;const n={set:(e,t,n)=>(this.updateMtime(),Reflect.set(e,t,n)),deleteProperty:(e,t)=>(this.updateMtime(),Reflect.deleteProperty(e,t))};this._attributes=new Proxy(e.attributes||{},n),delete this._data.attributes,t&&(this._knownDavService=t)}get source(){return this._data.source.replace(/\/$/i,"")}get encodedSource(){const{origin:e}=new URL(this.source);return e+(0,s.Ec)(this.source.slice(e.length))}get basename(){return(0,a.basename)(this.source)}get extension(){return(0,a.extname)(this.source)}get dirname(){if(this.root){const e=this.source.indexOf(this.root);return(0,a.dirname)(this.source.slice(e+this.root.length)||"/")}const e=new URL(this.source);return(0,a.dirname)(e.pathname)}get mime(){return this._data.mime}get mtime(){return this._data.mtime}get crtime(){return this._data.crtime}get size(){return this._data.size}get attributes(){return this._attributes}get permissions(){return null!==this.owner||this.isDavRessource?void 0!==this._data.permissions?this._data.permissions:w.NONE:w.READ}get owner(){return this.isDavRessource?this._data.owner:null}get isDavRessource(){return N(this.source,this._knownDavService)}get root(){return this._data.root?this._data.root.replace(/^(.+)\/$/,"$1"):this.isDavRessource&&(0,a.dirname)(this.source).split(this._knownDavService).pop()||null}get path(){if(this.root){const e=this.source.indexOf(this.root);return this.source.slice(e+this.root.length)||"/"}return(this.dirname+"/"+this.basename).replace(/\/\//g,"/")}get fileid(){return this._data?.id||this.attributes?.fileid}get status(){return this._data?.status}set status(e){this._data.status=e}move(e){O({...this._data,source:e},this._knownDavService),this._data.source=e,this.updateMtime()}rename(e){if(e.includes("/"))throw new Error("Invalid basename");this.move((0,a.dirname)(this.source)+"/"+e)}updateMtime(){this._data.mtime&&(this._data.mtime=new Date)}}class P extends I{get type(){return B.File}}class L extends I{constructor(e){super({...e,mime:"httpd/unix-directory"})}get type(){return B.Folder}get extension(){return null}get mime(){return"httpd/unix-directory"}}const M=`/files/${(0,r.ts)()?.uid}`,j=(0,l.generateRemoteUrl)("dav"),D=function(e=j){const t=(0,d.eI)(e);function n(e){t.setHeaders({"X-Requested-With":"XMLHttpRequest",requesttoken:e??""})}return(0,r._S)(n),n((0,r.IH)()),(0,d.lD)().patch("fetch",((e,t)=>{const n=t.headers;return n?.method&&(t.method=n.method,delete n.method),fetch(e,t)})),t},F=async(e,t="/",n=M)=>(await e.getDirectoryContents(`${n}${t}`,{details:!0,data:`\n\t\t\n\t\t\t\n\t\t\t\t${E()}\n\t\t\t\n\t\t\t\n\t\t\t\t1\n\t\t\t\n\t\t`,headers:{method:"REPORT"},includeSelf:!0})).data.filter((e=>e.filename!==t)).map((e=>$(e,n))),$=function(e,t=M,n=j){const i=e.props,o=S(i?.permissions),a=(0,r.ts)()?.uid,s={id:i?.fileid||0,source:`${n}${e.filename}`,mtime:new Date(Date.parse(e.lastmod)),mime:e.mime,size:i?.size||Number.parseInt(i.getcontentlength||"0"),permissions:o,owner:a,root:t,attributes:{...e,...i,hasPreview:i?.["has-preview"]}};return delete s.attributes?.props,"file"===e.type?new P(s):new L(s)};class U{_views=[];_currentView=null;register(e){if(this._views.find((t=>t.id===e.id)))throw new Error(`View id ${e.id} is already registered`);this._views.push(e)}remove(e){const t=this._views.findIndex((t=>t.id===e));-1!==t&&this._views.splice(t,1)}get views(){return this._views}setActive(e){this._currentView=e}get active(){return this._currentView}}const H=function(){return typeof window._nc_navigation>"u"&&(window._nc_navigation=new U,c.debug("Navigation service initialized")),window._nc_navigation};class q{_column;constructor(e){V(e),this._column=e}get id(){return this._column.id}get title(){return this._column.title}get render(){return this._column.render}get sort(){return this._column.sort}get summary(){return this._column.summary}}const V=function(e){if(!e.id||"string"!=typeof e.id)throw new Error("A column id is required");if(!e.title||"string"!=typeof e.title)throw new Error("A column title is required");if(!e.render||"function"!=typeof e.render)throw new Error("A render function is required");if(e.sort&&"function"!=typeof e.sort)throw new Error("Column sortFunction must be a function");if(e.summary&&"function"!=typeof e.summary)throw new Error("Column summary must be a function");return!0};var W={},z={};!function(e){const t=":A-Za-z_\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD",n="["+t+"]["+t+"\\-.\\d\\u00B7\\u0300-\\u036F\\u203F-\\u2040]*",r=new RegExp("^"+n+"$");e.isExist=function(e){return typeof e<"u"},e.isEmptyObject=function(e){return 0===Object.keys(e).length},e.merge=function(e,t,n){if(t){const r=Object.keys(t),i=r.length;for(let o=0;o"u")},e.getAllMatches=function(e,t){const n=[];let r=t.exec(e);for(;r;){const i=[];i.startIndex=t.lastIndex-r[0].length;const o=r.length;for(let e=0;e5&&"xml"===r)return ie("InvalidXml","XML declaration allowed only at the start of the document.",se(e,t));if("?"==e[t]&&">"==e[t+1]){t++;break}continue}return t}function K(e,t){if(e.length>t+5&&"-"===e[t+1]&&"-"===e[t+2]){for(t+=3;t"===e[t+2]){t+=2;break}}else if(e.length>t+8&&"D"===e[t+1]&&"O"===e[t+2]&&"C"===e[t+3]&&"T"===e[t+4]&&"Y"===e[t+5]&&"P"===e[t+6]&&"E"===e[t+7]){let n=1;for(t+=8;t"===e[t]&&(n--,0===n))break}else if(e.length>t+9&&"["===e[t+1]&&"C"===e[t+2]&&"D"===e[t+3]&&"A"===e[t+4]&&"T"===e[t+5]&&"A"===e[t+6]&&"["===e[t+7])for(t+=8;t"===e[t+2]){t+=2;break}return t}W.validate=function(e,t){t=Object.assign({},Z,t);const n=[];let r=!1,i=!1;"\ufeff"===e[0]&&(e=e.substr(1));for(let o=0;o"!==e[o]&&" "!==e[o]&&"\t"!==e[o]&&"\n"!==e[o]&&"\r"!==e[o];o++)l+=e[o];if(l=l.trim(),"/"===l[l.length-1]&&(l=l.substring(0,l.length-1),o--),!ae(l)){let t;return t=0===l.trim().length?"Invalid space after '<'.":"Tag '"+l+"' is an invalid name.",ie("InvalidTag",t,se(e,o))}const d=ee(e,o);if(!1===d)return ie("InvalidAttr","Attributes for '"+l+"' have open quote.",se(e,o));let c=d.value;if(o=d.index,"/"===c[c.length-1]){const n=o-c.length;c=c.substring(0,c.length-1);const i=ne(c,t);if(!0!==i)return ie(i.err.code,i.err.msg,se(e,n+i.err.line));r=!0}else if(s){if(!d.tagClosed)return ie("InvalidTag","Closing tag '"+l+"' doesn't have proper closing.",se(e,o));if(c.trim().length>0)return ie("InvalidTag","Closing tag '"+l+"' can't have attributes or invalid starting.",se(e,a));{const t=n.pop();if(l!==t.tagName){let n=se(e,t.tagStartPos);return ie("InvalidTag","Expected closing tag '"+t.tagName+"' (opened in line "+n.line+", col "+n.col+") instead of closing tag '"+l+"'.",se(e,a))}0==n.length&&(i=!0)}}else{const s=ne(c,t);if(!0!==s)return ie(s.err.code,s.err.msg,se(e,o-c.length+s.err.line));if(!0===i)return ie("InvalidXml","Multiple possible root nodes found.",se(e,o));-1!==t.unpairedTags.indexOf(l)||n.push({tagName:l,tagStartPos:a}),r=!0}for(o++;o0)||ie("InvalidXml","Invalid '"+JSON.stringify(n.map((e=>e.tagName)),null,4).replace(/\r?\n/g,"")+"' found.",{line:1,col:1}):ie("InvalidXml","Start tag expected.",1)};const J='"',Q="'";function ee(e,t){let n="",r="",i=!1;for(;t"===e[t]&&""===r){i=!0;break}n+=e[t]}return""===r&&{value:n,index:t,tagClosed:i}}const te=new RegExp("(\\s*)([^\\s=]+)(\\s*=)?(\\s*(['\"])(([\\s\\S])*?)\\5)?","g");function ne(e,t){const n=Y.getAllMatches(e,te),r={};for(let e=0;e!1,commentPropName:!1,unpairedTags:[],processEntities:!0,htmlEntities:!1,ignoreDeclaration:!1,ignorePiTags:!1,transformTagName:!1,transformAttributeName:!1,updateTag:function(e,t,n){return e}};de.buildOptions=function(e){return Object.assign({},ce,e)},de.defaultOptions=ce;const ue=z;function fe(e,t){let n="";for(;t0?this.child.push({[e.tagname]:e.child,":@":e[":@"]}):this.child.push({[e.tagname]:e.child})}},Ee=function(e,t){const n={};if("O"!==e[t+3]||"C"!==e[t+4]||"T"!==e[t+5]||"Y"!==e[t+6]||"P"!==e[t+7]||"E"!==e[t+8])throw new Error("Invalid Tag instead of DOCTYPE");{t+=9;let r=1,i=!1,o=!1,a="";for(;t"===e[t]){if(o?"-"===e[t-1]&&"-"===e[t-2]&&(o=!1,r--):r--,0===r)break}else"["===e[t]?i=!0:a+=e[t];else{if(i&&he(e,t))t+=7,[entityName,val,t]=fe(e,t+1),-1===val.indexOf("&")&&(n[ve(entityName)]={regx:RegExp(`&${entityName};`,"g"),val});else if(i&&ge(e,t))t+=8;else if(i&&me(e,t))t+=8;else if(i&&Ae(e,t))t+=9;else{if(!pe)throw new Error("Invalid DOCTYPE");o=!0}r++,a=""}if(0!==r)throw new Error("Unclosed DOCTYPE")}return{entities:n,i:t}},xe=function(e,t={}){if(t=Object.assign({},ye,t),!e||"string"!=typeof e)return e;let n=e.trim();if(void 0!==t.skipLike&&t.skipLike.test(n))return e;if(t.hex&&be.test(n))return Number.parseInt(n,16);{const r=we.exec(n);if(r){const i=r[1],o=r[2];let a=function(e){return e&&-1!==e.indexOf(".")&&("."===(e=e.replace(/0+$/,""))?e="0":"."===e[0]?e="0"+e:"."===e[e.length-1]&&(e=e.substr(0,e.length-1))),e}(r[3]);const s=r[4]||r[6];if(!t.leadingZeros&&o.length>0&&i&&"."!==n[2])return e;if(!t.leadingZeros&&o.length>0&&!i&&"."!==n[1])return e;{const r=Number(n),l=""+r;return-1!==l.search(/[eE]/)||s?t.eNotation?r:e:-1!==n.indexOf(".")?"0"===l&&""===a||l===a||i&&l==="-"+a?r:e:o?a===l||i+a===l?r:e:n===l||n===i+l?r:e}}return e}};function ke(e){const t=Object.keys(e);for(let n=0;n0)){a||(e=this.replaceEntitiesValue(e));const r=this.options.tagValueProcessor(t,e,n,i,o);return null==r?e:typeof r!=typeof e||r!==e?r:this.options.trimValues||e.trim()===e?Fe(e,this.options.parseTagValue,this.options.numberParseOptions):e}}function Se(e){if(this.options.removeNSPrefix){const t=e.split(":"),n="/"===e.charAt(0)?"/":"";if("xmlns"===t[0])return"";2===t.length&&(e=n+t[1])}return e}"<((!\\[CDATA\\[([\\s\\S]*?)(]]>))|((NAME:)?(NAME))([^>]*)>|((\\/)(NAME)\\s*>))([^<]*)".replace(/NAME/g,_e.nameRegexp);const Be=new RegExp("([^\\s=]+)\\s*(=\\s*(['\"])([\\s\\S]*?)\\3)?","gm");function Ne(e,t,n){if(!this.options.ignoreAttributes&&"string"==typeof e){const n=_e.getAllMatches(e,Be),r=n.length,i={};for(let e=0;e",o,"Closing Tag is not closed.");let a=e.substring(o+2,t).trim();if(this.options.removeNSPrefix){const e=a.indexOf(":");-1!==e&&(a=a.substr(e+1))}this.options.transformTagName&&(a=this.options.transformTagName(a)),n&&(r=this.saveTextToParentTag(r,n,i));const s=i.substring(i.lastIndexOf(".")+1);if(a&&-1!==this.options.unpairedTags.indexOf(a))throw new Error(`Unpaired tag can not be used as closing tag: `);let l=0;s&&-1!==this.options.unpairedTags.indexOf(s)?(l=i.lastIndexOf(".",i.lastIndexOf(".")-1),this.tagsNodeStack.pop()):l=i.lastIndexOf("."),i=i.substring(0,l),n=this.tagsNodeStack.pop(),r="",o=t}else if("?"===e[o+1]){let t=je(e,o,!1,"?>");if(!t)throw new Error("Pi Tag is not closed.");if(r=this.saveTextToParentTag(r,n,i),!(this.options.ignoreDeclaration&&"?xml"===t.tagName||this.options.ignorePiTags)){const e=new Ce(t.tagName);e.add(this.options.textNodeName,""),t.tagName!==t.tagExp&&t.attrExpPresent&&(e[":@"]=this.buildAttributesMap(t.tagExp,i,t.tagName)),this.addChild(n,e,i)}o=t.closeIndex+1}else if("!--"===e.substr(o+1,3)){const t=Me(e,"--\x3e",o+4,"Comment is not closed.");if(this.options.commentPropName){const a=e.substring(o+4,t-2);r=this.saveTextToParentTag(r,n,i),n.add(this.options.commentPropName,[{[this.options.textNodeName]:a}])}o=t}else if("!D"===e.substr(o+1,2)){const t=Ee(e,o);this.docTypeEntities=t.entities,o=t.i}else if("!["===e.substr(o+1,2)){const t=Me(e,"]]>",o,"CDATA is not closed.")-2,a=e.substring(o+9,t);if(r=this.saveTextToParentTag(r,n,i),this.options.cdataPropName)n.add(this.options.cdataPropName,[{[this.options.textNodeName]:a}]);else{let e=this.parseTextData(a,n.tagname,i,!0,!1,!0);null==e&&(e=""),n.add(this.options.textNodeName,e)}o=t+2}else{let a=je(e,o,this.options.removeNSPrefix),s=a.tagName;const l=a.rawTagName;let d=a.tagExp,c=a.attrExpPresent,u=a.closeIndex;this.options.transformTagName&&(s=this.options.transformTagName(s)),n&&r&&"!xml"!==n.tagname&&(r=this.saveTextToParentTag(r,n,i,!1));const f=n;if(f&&-1!==this.options.unpairedTags.indexOf(f.tagname)&&(n=this.tagsNodeStack.pop(),i=i.substring(0,i.lastIndexOf("."))),s!==t.tagname&&(i+=i?"."+s:s),this.isItStopNode(this.options.stopNodes,i,s)){let t="";if(d.length>0&&d.lastIndexOf("/")===d.length-1)o=a.closeIndex;else if(-1!==this.options.unpairedTags.indexOf(s))o=a.closeIndex;else{const n=this.readStopNodeData(e,l,u+1);if(!n)throw new Error(`Unexpected end of ${l}`);o=n.i,t=n.tagContent}const r=new Ce(s);s!==d&&c&&(r[":@"]=this.buildAttributesMap(d,i,s)),t&&(t=this.parseTextData(t,s,i,!0,c,!0,!0)),i=i.substr(0,i.lastIndexOf(".")),r.add(this.options.textNodeName,t),this.addChild(n,r,i)}else{if(d.length>0&&d.lastIndexOf("/")===d.length-1){"/"===s[s.length-1]?(s=s.substr(0,s.length-1),i=i.substr(0,i.length-1),d=s):d=d.substr(0,d.length-1),this.options.transformTagName&&(s=this.options.transformTagName(s));const e=new Ce(s);s!==d&&c&&(e[":@"]=this.buildAttributesMap(d,i,s)),this.addChild(n,e,i),i=i.substr(0,i.lastIndexOf("."))}else{const e=new Ce(s);this.tagsNodeStack.push(n),s!==d&&c&&(e[":@"]=this.buildAttributesMap(d,i,s)),this.addChild(n,e,i),n=e}r="",o=u}}else r+=e[o];return t.child};function Re(e,t,n){const r=this.options.updateTag(t.tagname,n,t[":@"]);!1===r||("string"==typeof r&&(t.tagname=r),e.addChild(t))}const Ie=function(e){if(this.options.processEntities){for(let t in this.docTypeEntities){const n=this.docTypeEntities[t];e=e.replace(n.regx,n.val)}for(let t in this.lastEntities){const n=this.lastEntities[t];e=e.replace(n.regex,n.val)}if(this.options.htmlEntities)for(let t in this.htmlEntities){const n=this.htmlEntities[t];e=e.replace(n.regex,n.val)}e=e.replace(this.ampEntity.regex,this.ampEntity.val)}return e};function Pe(e,t,n,r){return e&&(void 0===r&&(r=0===Object.keys(t.child).length),void 0!==(e=this.parseTextData(e,t.tagname,n,!1,!!t[":@"]&&0!==Object.keys(t[":@"]).length,r))&&""!==e&&t.add(this.options.textNodeName,e),e=""),e}function Le(e,t,n){const r="*."+n;for(const n in e){const i=e[n];if(r===i||t===i)return!0}return!1}function Me(e,t,n,r){const i=e.indexOf(t,n);if(-1===i)throw new Error(r);return i+t.length-1}function je(e,t,n,r=">"){const i=function(e,t,n=">"){let r,i="";for(let o=t;o",n,`${t} is not closed`);if(e.substring(n+2,o).trim()===t&&(i--,0===i))return{tagContent:e.substring(r,n),i:o};n=o}else if("?"===e[n+1])n=Me(e,"?>",n+1,"StopNode is not closed.");else if("!--"===e.substr(n+1,3))n=Me(e,"--\x3e",n+3,"StopNode is not closed.");else if("!["===e.substr(n+1,2))n=Me(e,"]]>",n,"StopNode is not closed.")-2;else{const r=je(e,n,">");r&&((r&&r.tagName)===t&&"/"!==r.tagExp[r.tagExp.length-1]&&i++,n=r.closeIndex)}}function Fe(e,t,n){if(t&&"string"==typeof e){const t=e.trim();return"true"===t||"false"!==t&&xe(e,n)}return _e.isExist(e)?e:""}var $e={};function Ue(e,t,n){let r;const i={};for(let o=0;o0&&(i[t.textNodeName]=r):void 0!==r&&(i[t.textNodeName]=r),i}function He(e){const t=Object.keys(e);for(let e=0;e"},lt:{regex:/&(lt|#60|#x3C);/g,val:"<"},quot:{regex:/&(quot|#34|#x22);/g,val:'"'}},this.ampEntity={regex:/&(amp|#38|#x26);/g,val:"&"},this.htmlEntities={space:{regex:/&(nbsp|#160);/g,val:" "},cent:{regex:/&(cent|#162);/g,val:"¢"},pound:{regex:/&(pound|#163);/g,val:"£"},yen:{regex:/&(yen|#165);/g,val:"¥"},euro:{regex:/&(euro|#8364);/g,val:"€"},copyright:{regex:/&(copy|#169);/g,val:"©"},reg:{regex:/&(reg|#174);/g,val:"®"},inr:{regex:/&(inr|#8377);/g,val:"₹"}},this.addExternalEntities=ke,this.parseXml=Oe,this.parseTextData=Te,this.resolveNameSpace=Se,this.buildAttributesMap=Ne,this.isItStopNode=Le,this.replaceEntitiesValue=Ie,this.readStopNodeData=De,this.saveTextToParentTag=Pe,this.addChild=Re}},{prettify:Ye}=$e,Ze=W;function Ge(e,t,n,r){let i="",o=!1;for(let a=0;a`,o=!1;continue}if(l===t.commentPropName){i+=r+`\x3c!--${s[l][0][t.textNodeName]}--\x3e`,o=!0;continue}if("?"===l[0]){const e=Ke(s[":@"],t),n="?xml"===l?"":r;let a=s[l][0][t.textNodeName];a=0!==a.length?" "+a:"",i+=n+`<${l}${a}${e}?>`,o=!0;continue}let c=r;""!==c&&(c+=t.indentBy);const u=r+`<${l}${Ke(s[":@"],t)}`,f=Ge(s[l],t,d,c);-1!==t.unpairedTags.indexOf(l)?t.suppressUnpairedNode?i+=u+">":i+=u+"/>":f&&0!==f.length||!t.suppressEmptyNode?f&&f.endsWith(">")?i+=u+`>${f}${r}`:(i+=u+">",f&&""!==r&&(f.includes("/>")||f.includes("`):i+=u+"/>",o=!0}return i}function Xe(e){const t=Object.keys(e);for(let n=0;n0&&t.processEntities)for(let n=0;n0&&(n="\n"),Ge(e,t,"",n)},tt={attributeNamePrefix:"@_",attributesGroupName:!1,textNodeName:"#text",ignoreAttributes:!0,cdataPropName:!1,format:!1,indentBy:" ",suppressEmptyNode:!1,suppressUnpairedNode:!0,suppressBooleanAttributes:!0,tagValueProcessor:function(e,t){return t},attributeValueProcessor:function(e,t){return t},preserveOrder:!1,commentPropName:!1,unpairedTags:[],entities:[{regex:new RegExp("&","g"),val:"&"},{regex:new RegExp(">","g"),val:">"},{regex:new RegExp("<","g"),val:"<"},{regex:new RegExp("'","g"),val:"'"},{regex:new RegExp('"',"g"),val:"""}],processEntities:!0,stopNodes:[],oneListGroup:!1};function nt(e){this.options=Object.assign({},tt,e),this.options.ignoreAttributes||this.options.attributesGroupName?this.isAttribute=function(){return!1}:(this.attrPrefixLen=this.options.attributeNamePrefix.length,this.isAttribute=ot),this.processTextOrObjNode=rt,this.options.format?(this.indentate=it,this.tagEndChar=">\n",this.newLine="\n"):(this.indentate=function(){return""},this.tagEndChar=">",this.newLine="")}function rt(e,t,n){const r=this.j2x(e,n+1);return void 0!==e[this.options.textNodeName]&&1===Object.keys(e).length?this.buildTextValNode(e[this.options.textNodeName],t,r.attrStr,n):this.buildObjectNode(r.val,t,r.attrStr,n)}function it(e){return this.options.indentBy.repeat(e)}function ot(e){return!(!e.startsWith(this.options.attributeNamePrefix)||e===this.options.textNodeName)&&e.substr(this.attrPrefixLen)}nt.prototype.build=function(e){return this.options.preserveOrder?et(e,this.options):(Array.isArray(e)&&this.options.arrayNodeName&&this.options.arrayNodeName.length>1&&(e={[this.options.arrayNodeName]:e}),this.j2x(e,0).val)},nt.prototype.j2x=function(e,t){let n="",r="";for(let i in e)if(Object.prototype.hasOwnProperty.call(e,i))if(typeof e[i]>"u")this.isAttribute(i)&&(r+="");else if(null===e[i])this.isAttribute(i)?r+="":"?"===i[0]?r+=this.indentate(t)+"<"+i+"?"+this.tagEndChar:r+=this.indentate(t)+"<"+i+"/"+this.tagEndChar;else if(e[i]instanceof Date)r+=this.buildTextValNode(e[i],i,"",t);else if("object"!=typeof e[i]){const o=this.isAttribute(i);if(o)n+=this.buildAttrPairStr(o,""+e[i]);else if(i===this.options.textNodeName){let t=this.options.tagValueProcessor(i,""+e[i]);r+=this.replaceEntitiesValue(t)}else r+=this.buildTextValNode(e[i],i,"",t)}else if(Array.isArray(e[i])){const n=e[i].length;let o="";for(let a=0;a"u"||(null===n?"?"===i[0]?r+=this.indentate(t)+"<"+i+"?"+this.tagEndChar:r+=this.indentate(t)+"<"+i+"/"+this.tagEndChar:"object"==typeof n?this.options.oneListGroup?o+=this.j2x(n,t+1).val:o+=this.processTextOrObjNode(n,i,t):o+=this.buildTextValNode(n,i,"",t))}this.options.oneListGroup&&(o=this.buildObjectNode(o,i,"",t)),r+=o}else if(this.options.attributesGroupName&&i===this.options.attributesGroupName){const t=Object.keys(e[i]),r=t.length;for(let o=0;o"+e+i}},nt.prototype.closeTag=function(e){let t="";return-1!==this.options.unpairedTags.indexOf(e)?this.options.suppressUnpairedNode||(t="/"):t=this.options.suppressEmptyNode?"/":`>`+this.newLine;if(!1!==this.options.commentPropName&&t===this.options.commentPropName)return this.indentate(r)+`\x3c!--${e}--\x3e`+this.newLine;if("?"===t[0])return this.indentate(r)+"<"+t+n+"?"+this.tagEndChar;{let i=this.options.tagValueProcessor(t,e);return i=this.replaceEntitiesValue(i),""===i?this.indentate(r)+"<"+t+n+this.closeTag(t)+this.tagEndChar:this.indentate(r)+"<"+t+n+">"+i+"0&&this.options.processEntities)for(let t=0;t0&&(!e.caption||"string"!=typeof e.caption))throw new Error("View caption is required for top-level views and must be a string");if(!e.getContents||"function"!=typeof e.getContents)throw new Error("View getContents is required and must be a function");if(!e.icon||"string"!=typeof e.icon||!function(e){if("string"!=typeof e)throw new TypeError(`Expected a \`string\`, got \`${typeof e}\``);if(0===(e=e.trim()).length||!0!==at.XMLValidator.validate(e))return!1;let t;const n=new at.XMLParser;try{t=n.parse(e)}catch{return!1}return!(!t||!("svg"in t))}(e.icon))throw new Error("View icon is required and must be a valid svg string");if(!("order"in e)||"number"!=typeof e.order)throw new Error("View order is required and must be a number");if(e.columns&&e.columns.forEach((e=>{if(!(e instanceof q))throw new Error("View columns must be an array of Column. Invalid column found")})),e.emptyView&&"function"!=typeof e.emptyView)throw new Error("View emptyView must be a function");if(e.parent&&"string"!=typeof e.parent)throw new Error("View parent must be a string");if("sticky"in e&&"boolean"!=typeof e.sticky)throw new Error("View sticky must be a boolean");if("expanded"in e&&"boolean"!=typeof e.expanded)throw new Error("View expanded must be a boolean");if(e.defaultSortKey&&"string"!=typeof e.defaultSortKey)throw new Error("View defaultSortKey must be a string");return!0},dt=function(e){return p().registerEntry(e)},ct=function(e){return p().unregisterEntry(e)}}},o={};function a(e){var t=o[e];if(void 0!==t)return t.exports;var n=o[e]={id:e,loaded:!1,exports:{}};return i[e].call(n.exports,n,n.exports,a),n.loaded=!0,n.exports}a.m=i,e=[],a.O=(t,n,r,i)=>{if(!n){var o=1/0;for(c=0;c=i)&&Object.keys(a.O).every((e=>a.O[e](n[l])))?n.splice(l--,1):(s=!1,i0&&e[c-1][2]>i;c--)e[c]=e[c-1];e[c]=[n,r,i]},a.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return a.d(t,{a:t}),t},a.d=(e,t)=>{for(var n in t)a.o(t,n)&&!a.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},a.f={},a.e=e=>Promise.all(Object.keys(a.f).reduce(((t,n)=>(a.f[n](e,t),t)),[])),a.u=e=>e+"-"+e+".js?v="+{923:"2686613ba9d88601b889",8321:"8442e3d18a58ee1f612a"}[e],a.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),a.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),n={},r="nextcloud:",a.l=(e,t,i,o)=>{if(n[e])n[e].push(t);else{var s,l;if(void 0!==i)for(var d=document.getElementsByTagName("script"),c=0;c{s.onerror=s.onload=null,clearTimeout(p);var i=n[e];if(delete n[e],s.parentNode&&s.parentNode.removeChild(s),i&&i.forEach((e=>e(r))),t)return t(r)},p=setTimeout(f.bind(null,void 0,{type:"timeout",target:s}),12e4);s.onerror=f.bind(null,s.onerror),s.onload=f.bind(null,s.onload),l&&document.head.appendChild(s)}},a.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},a.nmd=e=>(e.paths=[],e.children||(e.children=[]),e),a.j=9837,(()=>{var e;a.g.importScripts&&(e=a.g.location+"");var t=a.g.document;if(!e&&t&&(t.currentScript&&(e=t.currentScript.src),!e)){var n=t.getElementsByTagName("script");if(n.length)for(var r=n.length-1;r>-1&&!e;)e=n[r--].src}if(!e)throw new Error("Automatic publicPath is not supported in this browser");e=e.replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),a.p=e})(),(()=>{a.b=document.baseURI||self.location.href;var e={9837:0};a.f.j=(t,n)=>{var r=a.o(e,t)?e[t]:void 0;if(0!==r)if(r)n.push(r[2]);else{var i=new Promise(((n,i)=>r=e[t]=[n,i]));n.push(r[2]=i);var o=a.p+a.u(t),s=new Error;a.l(o,(n=>{if(a.o(e,t)&&(0!==(r=e[t])&&(e[t]=void 0),r)){var i=n&&("load"===n.type?"missing":n.type),o=n&&n.target&&n.target.src;s.message="Loading chunk "+t+" failed.\n("+i+": "+o+")",s.name="ChunkLoadError",s.type=i,s.request=o,r[1](s)}}),"chunk-"+t,t)}},a.O.j=t=>0===e[t];var t=(t,n)=>{var r,i,o=n[0],s=n[1],l=n[2],d=0;if(o.some((t=>0!==e[t]))){for(r in s)a.o(s,r)&&(a.m[r]=s[r]);if(l)var c=l(a)}for(t&&t(n);da(34507)));s=a.O(s)})(); -//# sourceMappingURL=files-init.js.map?v=6d6177d634461c03e793 \ No newline at end of file +(()=>{var e,n,r,i={34507:(e,n,r)=>{"use strict";var i=r(5656),o=r(69183),a=r(31352),s=r(93664),l=r(17499);const d=(0,l.IY)().setApp("files").detectUser().build(),c=new i.p$({id:"delete",displayName:(e,t)=>"trashbin"===t.id?(0,a.Iu)("files","Delete permanently"):(0,a.Iu)("files","Delete"),iconSvgInline:()=>'',enabled:e=>e.length>0&&e.map((e=>e.permissions)).every((e=>0!=(e&i.y3.DELETE))),async exec(e){try{return await s.Z.delete(e.encodedSource),(0,o.j8)("files:node:deleted",e),!0}catch(t){return d.error("Error while deleting a file",{error:t,source:e.source,node:e}),!1}},async execBatch(e,t,n){return Promise.all(e.map((e=>this.exec(e,t,n))))},order:100});var u=r(79753);const f=function(e){const t=document.createElement("a");t.download="",t.href=e,t.click()},p=function(e,t){const n=Math.random().toString(36).substring(2),r=(0,u.generateUrl)("/apps/files/ajax/download.php?dir={dir}&files={files}&downloadStartSecret={secret}",{dir:e,secret:n,files:JSON.stringify(t.map((e=>e.basename)))});f(r)},h=function(e){if(0==(e.permissions&i.y3.READ))return!1;if("shared"===e.attributes["mount-type"]){const t=JSON.parse(e.attributes["share-attributes"]).find((e=>"permissions"===e.scope&&"download"===e.key));if(void 0!==t&&!1===t.enabled)return!1}return!0},g=new i.p$({id:"download",displayName:()=>(0,a.Iu)("files","Download"),iconSvgInline:()=>'',enabled:e=>0!==e.length&&(!e.some((e=>e.type===i.Tv.Folder))||!e.some((e=>!e.root?.startsWith("/files"))))&&e.every(h),exec:async(e,t,n)=>e.type===i.Tv.Folder?(p(n,[e]),null):(f(e.source),null),async execBatch(e,t,n){return 1===e.length?(this.exec(e[0],t,n),[null]):(p(n,e),new Array(e.length).fill(null))},order:30});var m=r(65358),A=r(77958),v=r(64024);const b=new i.p$({id:"edit-locally",displayName:()=>(0,a.Iu)("files","Edit locally"),iconSvgInline:()=>'',enabled:e=>1===e.length&&0!=(e[0].permissions&i.y3.UPDATE),exec:async e=>(async function(e){const t=(0,u.generateOcsUrl)("apps/files/api/v1")+"/openlocaleditor?format=json";try{const n=await s.Z.post(t,{path:e}),r=(0,A.ts)()?.uid;let i=`nc://open/${r}@`+window.location.host+(0,m.Ec)(e);i+="?token="+n.data.ocs.data.token,window.location.href=i}catch(e){(0,v.x2)((0,a.Iu)("files","Failed to redirect to client"))}}(e.path),null),order:25});var w=r(20144);const y='',_=e=>e.some((e=>1!==e.attributes.favorite)),C=async(e,t,n)=>{try{const r=(0,u.generateUrl)("/apps/files/api/v1/files")+(0,m.Ec)(e.path);return await s.Z.post(r,{tags:n?[window.OC.TAG_FAVORITE]:[]}),"favorites"!==t.id||n||"/"!==e.dirname||(0,o.j8)("files:node:deleted",e),w.default.set(e.attributes,"favorite",n?1:0),n?(0,o.j8)("files:favorites:added",e):(0,o.j8)("files:favorites:removed",e),!0}catch(t){const r=n?"adding a file to favourites":"removing a file from favourites";return d.error("Error while "+r,{error:t,source:e.source,node:e}),!1}},E=new i.p$({id:"favorite",displayName:e=>_(e)?(0,a.Iu)("files","Add to favorites"):(0,a.Iu)("files","Remove from favorites"),iconSvgInline:e=>_(e)?'':y,enabled:e=>!e.some((e=>!e.root?.startsWith?.("/files")))&&e.every((e=>e.permissions!==i.y3.NONE)),async exec(e,t){const n=_([e]);return await C(e,t,n)},async execBatch(e,t){const n=_(e);return Promise.all(e.map((async e=>await C(e,t,n))))},order:-50});var x=r(93379),k=r.n(x),T=r(7795),S=r.n(T),B=r(90569),N=r.n(B),O=r(3565),R=r.n(O),I=r(19216),P=r.n(I),L=r(44589),M=r.n(L),j=r(51473),D={};D.styleTagTransform=M(),D.setAttributes=R(),D.insert=N().bind(null,"head"),D.domAPI=S(),D.insertStyleElement=P(),k()(j.Z,D),j.Z&&j.Z.locals&&j.Z.locals;var F=r(51120);const{Axios:$,AxiosError:U,CanceledError:H,isCancel:q,CancelToken:V,VERSION:W,all:z,Cancel:Y,isAxiosError:Z,spread:G,toFormData:X,AxiosHeaders:K,HttpStatusCode:J,formToJSON:Q,getAdapter:ee,mergeConfig:te}=F.default;var ne=r(62520),re=r(59546),ie=r(96384),oe=r(59440);let ae;const se=()=>(ae||(ae=new oe.Z({concurrency:3})),ae);var le;!function(e){e.MOVE="Move",e.COPY="Copy",e.MOVE_OR_COPY="move-or-copy"}(le||(le={}));const de=e=>0!=(e.reduce(((e,t)=>Math.min(e,t.permissions)),i.y3.ALL)&i.y3.UPDATE),ce=e=>(e=>e.every((e=>!JSON.parse(e.attributes?.["share-attributes"]??"[]").some((e=>"permissions"===e.scope&&!1===e.enabled&&"download"===e.key)))))(e),ue=e=>de(e)?ce(e)?le.MOVE_OR_COPY:le.MOVE:le.COPY,fe=async function(e,t,n){let r=arguments.length>3&&void 0!==arguments[3]&&arguments[3];if(!t)return;if(t.type!==i.Tv.Folder)throw new Error((0,a.Iu)("files","Destination is not a folder"));if(e.dirname===t.path)throw new Error((0,a.Iu)("files","This file/folder is already in that directory"));if(t.path.startsWith(e.path))throw new Error((0,a.Iu)("files","You cannot move a file/folder onto itself or into a subfolder of itself"));const l=(0,ne.join)(t.path,e.basename),d=(0,u.generateRemoteUrl)(`dav/files/${(0,A.ts)()?.uid}${l}`);w.default.set(e,"status",i.e4.LOADING);const c=se();return await c.add((async()=>{try{await(0,s.Z)({method:n===le.COPY?"COPY":"MOVE",url:e.encodedSource,headers:{Destination:encodeURI(d),Overwrite:r?void 0:"F"}}),n===le.MOVE&&(0,o.j8)("files:node:deleted",e)}catch(e){if(e instanceof U){if(412===e?.response?.status)throw new Error((0,a.Iu)("files","A file or folder with that name already exists in this folder"));if(423===e?.response?.status)throw new Error((0,a.Iu)("files","The files is locked"));if(404===e?.response?.status)throw new Error((0,a.Iu)("files","The file does not exist anymore"));if(e.message)throw new Error(e.message)}throw new Error}finally{w.default.set(e,"status",void 0)}}))},pe=async function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"/",n=arguments.length>2?arguments[2]:void 0;const r=n.map((e=>e.fileid)).filter(Boolean),o=(0,v.fn)((0,a.Iu)("files","Chose destination")).allowDirectories(!0).setFilter((e=>0!=(e.permissions&i.y3.CREATE)&&!r.includes(e.fileid))).setMimeTypeFilter([]).setMultiSelect(!1).startAt(t);return new Promise(((t,r)=>{o.setButtonFactory(((r,i)=>{const o=[],s=(0,ne.basename)(i),l=n.map((e=>e.dirname)),d=n.map((e=>e.path));return l.includes(i)||d.includes(i)||(e!==le.COPY&&e!==le.MOVE_OR_COPY||o.push({label:s?(0,a.Iu)("files","Copy to {target}",{target:s}):(0,a.Iu)("files","Copy"),type:"primary",icon:re,async callback(e){t({destination:e[0],action:le.COPY})}}),e!==le.MOVE&&e!==le.MOVE_OR_COPY||o.push({label:s?(0,a.Iu)("files","Move to {target}",{target:s}):(0,a.Iu)("files","Move"),type:e===le.MOVE?"primary":"secondary",icon:ie,async callback(e){t({destination:e[0],action:le.MOVE})}})),o})),o.build().pick().catch((()=>{r(new Error((0,a.Iu)("files","Cancelled move or copy operation")))}))}))},he=new i.p$({id:"move-copy",displayName(e){switch(ue(e)){case le.MOVE:return(0,a.Iu)("files","Move");case le.COPY:return(0,a.Iu)("files","Copy");case le.MOVE_OR_COPY:return(0,a.Iu)("files","Move or copy")}},iconSvgInline:()=>ie,enabled:e=>!!e.every((e=>e.root?.startsWith("/files/")))&&e.length>0&&(de(e)||ce(e)),async exec(e,t,n){const r=ue([e]),i=await pe(r,n,[e]);try{return await fe(e,i.destination,i.action),!0}catch(e){return!!(e instanceof Error&&e.message)&&((0,v.x2)(e.message),null)}},async execBatch(e,t,n){const r=ue(e),i=await pe(r,n,e),o=e.map((async e=>{try{return await fe(e,i.destination,i.action),!0}catch(t){return d.error(`Failed to ${i.action} node`,{node:e,error:t}),!1}}));return await Promise.all(o)},order:15}),ge='',me=new i.p$({id:"open-folder",displayName(e){const t=e[0].attributes.displayName||e[0].basename;return(0,a.Iu)("files","Open folder {displayName}",{displayName:t})},iconSvgInline:()=>ge,enabled(e){if(1!==e.length)return!1;const t=e[0];return!!t.isDavRessource&&t.type===i.Tv.Folder&&0!=(t.permissions&i.y3.READ)},exec:async(e,t,n)=>!(!e||e.type!==i.Tv.Folder)&&(window.OCP.Files.Router.goToRoute(null,{view:t.id,fileid:e.fileid},{dir:(0,ne.join)(n,e.basename)}),null),default:i.DT.HIDDEN,order:-100}),Ae=new i.p$({id:"open-in-files-recent",displayName:()=>(0,a.Iu)("files","Open in Files"),iconSvgInline:()=>"",enabled:(e,t)=>"recent"===t.id,async exec(e){let t=e.dirname;return e.type===i.Tv.Folder&&(t=t+"/"+e.basename),window.OCP.Files.Router.goToRoute(null,{view:"files",fileid:e.fileid},{dir:t}),null},order:-1e3,default:i.DT.HIDDEN}),ve=new i.p$({id:"rename",displayName:()=>(0,a.Iu)("files","Rename"),iconSvgInline:()=>'',enabled:e=>e.length>0&&e.map((e=>e.permissions)).every((e=>0!=(e&i.y3.UPDATE))),exec:async e=>((0,o.j8)("files:node:rename",e),null),order:10});var be=r(48250);const we=new i.p$({id:"details",displayName:()=>(0,a.Iu)("files","Open details"),iconSvgInline:()=>be,enabled:e=>1===e.length&&!!e[0]&&!!window?.OCA?.Files?.Sidebar&&((e[0].root?.startsWith("/files/")&&e[0].permissions!==i.y3.NONE)??!1),async exec(e,t,n){try{return await window.OCA.Files.Sidebar.open(e.path),window.OCP.Files.Router.goToRoute(null,{view:t.id,fileid:e.fileid},{dir:n},!0),null}catch(e){return d.error("Error while opening sidebar",{error:e}),!1}},order:-50}),ye=new i.p$({id:"view-in-folder",displayName:()=>(0,a.Iu)("files","View in folder"),iconSvgInline:()=>ie,enabled(e){if(1!==e.length)return!1;const t=e[0];return!!t.isDavRessource&&t.permissions!==i.y3.NONE&&t.type===i.Tv.File},exec:async(e,t,n)=>!(!e||e.type!==i.Tv.File)&&(window.OCP.Files.Router.goToRoute(null,{view:"files",fileid:e.fileid},{dir:e.dirname}),null),order:80}),_e=(e,t)=>{let n=e,r=1;for(;t.includes(n);){const t=(0,ne.extname)(e);n=`${(0,ne.basename)(e,t)} (${r++})${t}`}return n},Ce={id:"newFolder",displayName:(0,a.Iu)("files","New folder"),enabled:e=>0!=(e.permissions&i.y3.CREATE),iconSvgInline:'',order:0,async handler(e,t){const n=t.map((e=>e.basename)),r=_e((0,a.Iu)("files","New folder"),n),{fileid:l,source:c}=await(async(e,t)=>{const n=e.source+"/"+t,r=e.encodedSource+"/"+encodeURIComponent(t),i=await(0,s.Z)({method:"MKCOL",url:r,headers:{Overwrite:"F"}});return{fileid:parseInt(i.headers["oc-fileid"]),source:n}})(e,r),u=new i.gt({source:c,id:l,mtime:new Date,owner:(0,A.ts)()?.uid||null,permissions:i.y3.ALL,root:e?.root||"/files/"+(0,A.ts)()?.uid});(0,v.s$)((0,a.Iu)("files",'Created new folder "{name}"',{name:(0,ne.basename)(c)})),d.debug("Created new folder",{folder:u,source:c}),(0,o.j8)("files:node:created",u),(0,o.j8)("files:node:rename",u)}};var Ee=r(43554),xe=r(14596),ke=r(8501),Te=r(79267);const Se="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope?self:"undefined"!=typeof window?window:globalThis,Be=Se.fetch.bind(Se);Se.Headers,Se.Request,Se.Response;const Ne="@@HOTPATCHER",Oe=()=>{};function Re(e){return{original:e,methods:[e],final:!1}}class Ie{constructor(){this._configuration={registry:{},getEmptyAction:"null"},this.__type__=Ne}get configuration(){return this._configuration}get getEmptyAction(){return this.configuration.getEmptyAction}set getEmptyAction(e){this.configuration.getEmptyAction=e}control(e,t=!1){if(!e||e.__type__!==Ne)throw new Error("Failed taking control of target HotPatcher instance: Invalid type or object");return Object.keys(e.configuration.registry).forEach((n=>{this.configuration.registry.hasOwnProperty(n)?t&&(this.configuration.registry[n]=Object.assign({},e.configuration.registry[n])):this.configuration.registry[n]=Object.assign({},e.configuration.registry[n])})),e._configuration=this.configuration,this}execute(e,...t){return(this.get(e)||Oe)(...t)}get(e){const t=this.configuration.registry[e];if(!t)switch(this.getEmptyAction){case"null":return null;case"throw":throw new Error(`Failed handling method request: No method provided for override: ${e}`);default:throw new Error(`Failed handling request which resulted in an empty method: Invalid empty-action specified: ${this.getEmptyAction}`)}return function(...e){if(0===e.length)throw new Error("Failed creating sequence: No functions provided");return function(...t){let n=t;const r=this;for(;e.length>0;)n=[e.shift().apply(r,n)];return n[0]}}(...t.methods)}isPatched(e){return!!this.configuration.registry[e]}patch(e,t,n={}){const{chain:r=!1}=n;if(this.configuration.registry[e]&&this.configuration.registry[e].final)throw new Error(`Failed patching '${e}': Method marked as being final`);if("function"!=typeof t)throw new Error(`Failed patching '${e}': Provided method is not a function`);if(r)this.configuration.registry[e]?this.configuration.registry[e].methods.push(t):this.configuration.registry[e]=Re(t);else if(this.isPatched(e)){const{original:n}=this.configuration.registry[e];this.configuration.registry[e]=Object.assign(Re(t),{original:n})}else this.configuration.registry[e]=Re(t);return this}patchInline(e,t,...n){return this.isPatched(e)||this.patch(e,t),this.execute(e,...n)}plugin(e,...t){return t.forEach((t=>{this.patch(e,t,{chain:!0})})),this}restore(e){if(!this.isPatched(e))throw new Error(`Failed restoring method: No method present for key: ${e}`);if("function"!=typeof this.configuration.registry[e].original)throw new Error(`Failed restoring method: Original method not found or of invalid type for key: ${e}`);return this.configuration.registry[e].methods=[this.configuration.registry[e].original],this}setFinal(e){if(!this.configuration.registry.hasOwnProperty(e))throw new Error(`Failed marking '${e}' as final: No method found for key`);return this.configuration.registry[e].final=!0,this}}let Pe=null;var Le=r(62639),Me=r(2568);const je="abcdef0123456789";function De(e,t){const n=e.url.replace("//",""),r=-1==n.indexOf("/")?"/":n.slice(n.indexOf("/")),i=e.method?e.method.toUpperCase():"GET",o=!!/(^|,)\s*auth\s*($|,)/.test(t.qop)&&"auth",a=`00000000${t.nc}`.slice(-8),s=function(e,t,n,r,i,o,a){const s=a||Me(`${t}:${n}:${r}`);return e&&"md5-sess"===e.toLowerCase()?Me(`${s}:${i}:${o}`):s}(t.algorithm,t.username,t.realm,t.password,t.nonce,t.cnonce,t.ha1),l=Me(`${i}:${r}`),d=Me(o?`${s}:${t.nonce}:${a}:${t.cnonce}:${o}:${l}`:`${s}:${t.nonce}:${l}`),c={username:t.username,realm:t.realm,nonce:t.nonce,uri:r,qop:o,response:d,nc:a,cnonce:t.cnonce,algorithm:t.algorithm,opaque:t.opaque},u=[];for(const e in c)c[e]&&("qop"===e||"nc"===e||"algorithm"===e?u.push(`${e}=${c[e]}`):u.push(`${e}="${c[e]}"`));return`Digest ${u.join(", ")}`}function Fe(e){return function(e){if("object"!=typeof e||null===e||"[object Object]"!=Object.prototype.toString.call(e))return!1;if(null===Object.getPrototypeOf(e))return!0;let t=e;for(;null!==Object.getPrototypeOf(t);)t=Object.getPrototypeOf(t);return Object.getPrototypeOf(e)===t}(e)?Object.assign({},e):Object.setPrototypeOf(Object.assign({},e),Object.getPrototypeOf(e))}function $e(...e){let t=null,n=[...e];for(;n.length>0;){const e=n.shift();t=t?Ue(t,e):Fe(e)}return t}function Ue(e,t){const n=Fe(e);return Object.keys(t).forEach((e=>{n.hasOwnProperty(e)?Array.isArray(t[e])?n[e]=Array.isArray(n[e])?[...n[e],...t[e]]:[...t[e]]:"object"==typeof t[e]&&t[e]?n[e]="object"==typeof n[e]&&n[e]?Ue(n[e],t[e]):Fe(t[e]):n[e]=t[e]:n[e]=t[e]})),n}function He(...e){if(0===e.length)return{};const t={};return e.reduce(((e,n)=>(Object.keys(n).forEach((r=>{const i=r.toLowerCase();t.hasOwnProperty(i)?e[t[i]]=n[r]:(t[i]=r,e[r]=n[r])})),e)),{})}var qe=r(42830);const Ve="function"==typeof ArrayBuffer,{toString:We}=Object.prototype;function ze(e){const t=(Pe||(Pe=new Ie),Pe);return t.patchInline("request",(e=>t.patchInline("fetch",Be,e.url,function(e){let t={};const n={method:e.method};if(e.headers&&(t=He(t,e.headers)),void 0!==e.data){const[r,i]=function(e){if(!(0,Le.$)()&&e instanceof qe.Readable)return[e,{}];if("string"==typeof e)return[e,{}];if(null!=(t=e)&&null!=t.constructor&&"function"==typeof t.constructor.isBuffer&&t.constructor.isBuffer(t))return[e,{}];if(function(e){return Ve&&(e instanceof ArrayBuffer||"[object ArrayBuffer]"===We.call(e))}(e))return[e,{}];if(e&&"object"==typeof e)return[JSON.stringify(e),{"content-type":"application/json"}];var t;throw new Error("Unable to convert request body: Unexpected body type: "+typeof e)}(e.data);n.body=r,t=He(t,i)}return e.signal&&(n.signal=e.signal),e.withCredentials&&(n.credentials="include"),(0,Le.$)()||(e.httpAgent||e.httpsAgent)&&(n.agent=t=>"http:"===t.protocol?e.httpAgent||new ke.Agent:e.httpsAgent||new Te.Agent),n.headers=t,n}(e))),e)}const Ye=`/files/${(0,A.ts)()?.uid}`,Ze=(0,u.generateRemoteUrl)("dav"+Ye),Ge=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:Ze;const t=(0,xe.eI)(e,{headers:{requesttoken:(0,A.IH)()||""}});return(0,xe.lD)().patch("request",(e=>(e.headers?.method&&(e.method=e.headers.method,delete e.headers.method),async function(e){if(!e._digest)return ze(e);const t=e._digest;delete e._digest,t.hasDigestAuth&&(e=$e(e,{headers:{Authorization:De(e,t)}}));const n=await ze(e);if(401==n.status){if(t.hasDigestAuth=function(e,t){const n=e.headers&&e.headers.get("www-authenticate")||"";if("digest"!==n.split(/\s/)[0].toLowerCase())return!1;const r=/([a-z0-9_-]+)=(?:"([^"]+)"|([a-z0-9_-]+))/gi;for(;;){const e=r.exec(n);if(!e)break;t[e[1]]=e[2]||e[3]}return t.nc+=1,t.cnonce=function(){let e="";for(let t=0;t<32;++t)e=`${e}${je[Math.floor(16*Math.random())]}`;return e}(),!0}(n,t),t.hasDigestAuth){e=$e(e,{headers:{Authorization:De(e,t)}});const n=await ze(e);return 401==n.status?t.hasDigestAuth=!1:t.nc++,n}}else t.nc++;return n}(e)))),t};var Xe=r(3443);const Ke=function(e){return e.split("").reduce((function(e,t){return(e=(e<<5)-e+t.charCodeAt(0))&e}),0)},Je=Ge(),Qe=function(e){const t=e.props,n=(0,i.zu)(t?.permissions),r=(0,A.ts)()?.uid,o=(0,u.generateRemoteUrl)("dav"+Ye+e.filename),a={id:t?.fileid<0?Ke(o):t?.fileid||0,source:o,mtime:new Date(e.lastmod),mime:e.mime,size:t?.size||0,permissions:n,owner:r,root:Ye,attributes:{...e,...t,hasPreview:t?.["has-preview"],failed:t?.fileid<0}};return delete a.attributes.props,"file"===e.type?new i.$B(a):new i.gt(a)},et=Ge(),tt=`\n\n\t\n\t\t${(0,i.m0)()}\n\t\n\t\n\t\t1\n\t\n`,nt=async function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"/";const t=(0,i.h7)();let n;"/"===e&&(n=await et.stat(e,{details:!0,data:t}));const r=await et.getDirectoryContents(e,{details:!0,data:"/"===e?tt:t,headers:{method:"/"===e?"REPORT":"PROPFIND"},includeSelf:!0}),o=n?.data||r.data[0],a=r.data.filter((t=>t.filename!==e));return{folder:Qe(o),contents:a.map(Qe)}},rt=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;return new i.G7({id:it(e),name:(0,ne.basename)(e),icon:ge,order:t,params:{dir:e,view:"favorites"},parent:"favorites",columns:[],getContents:nt})},it=function(e){return`favorite-${Ke(e)}`},ot=Ge((0,u.generateRemoteUrl)("dav")),at=Math.round(Date.now()/1e3-1209600),st=`\n\n\t\n\t\t\n\t\t\t\n\t\t\t\t${(0,i.m0)()}\n\t\t\t\n\t\t\n\t\t\n\t\t\t\n\t\t\t\t/files/${(0,A.ts)()?.uid}/\n\t\t\t\tinfinity\n\t\t\t\n\t\t\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\thttpd/unix-directory\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t0\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t${at}\n\t\t\t\t\n\t\t\t\n\t\t\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\n\t\t\n\t\t\t100\n\t\t\t0\n\t\t\n\t\n`;var lt=r(22175),dt=r(25475);const ct={name:"TemplatePreview",inheritAttrs:!1,props:{basename:{type:String,required:!0},checked:{type:Boolean,default:!1},fileid:{type:[String,Number],required:!0},filename:{type:String,required:!0},previewUrl:{type:String,default:null},hasPreview:{type:Boolean,default:!0},mime:{type:String,required:!0},ratio:{type:Number,default:null}},data:()=>({failedPreview:!1}),computed:{nameWithoutExt(){return this.basename.indexOf(".")>-1?this.basename.split(".").slice(0,-1).join("."):this.basename},id(){return`template-picker-${this.fileid}`},realPreviewUrl(){return this.failedPreview&&this.mimeIcon?this.mimeIcon:this.previewUrl?this.previewUrl:(0,A.ts)()?(0,u.generateUrl)(`/core/preview?fileId=${this.fileid}&x=256&y=256&a=1`):(0,u.generateUrl)(`/apps/files_sharing/publicpreview/${document.getElementById("sharingToken")&&document.getElementById("sharingToken").value}?fileId=${this.fileid}&file=${function(e){const t=(e.startsWith("/")?e:`/${e}`).split("/");let n="";return t.forEach((e=>{""!==e&&(n+="/"+encodeURIComponent(e))})),n}(this.filename)}&x=256&y=256&a=1`)},mimeIcon(){return OC.MimeType.getIconUrl(this.mime)}},methods:{onCheck(){this.$emit("check",this.fileid)},onFailure(){this.failedPreview=!0}}};var ut=r(92246),ft={};ft.styleTagTransform=M(),ft.setAttributes=R(),ft.insert=N().bind(null,"head"),ft.domAPI=S(),ft.insertStyleElement=P(),k()(ut.Z,ft),ut.Z&&ut.Z.locals&&ut.Z.locals;var pt=r(51900);const ht=(0,pt.Z)(ct,(function(){var e=this,t=e._self._c;return t("li",{staticClass:"template-picker__item"},[t("input",{staticClass:"radio",attrs:{id:e.id,type:"radio",name:"template-picker"},domProps:{checked:e.checked},on:{change:e.onCheck}}),e._v(" "),t("label",{staticClass:"template-picker__label",attrs:{for:e.id}},[t("div",{staticClass:"template-picker__preview",class:e.failedPreview?"template-picker__preview--failed":""},[t("img",{staticClass:"template-picker__image",attrs:{src:e.realPreviewUrl,alt:"",draggable:"false"},on:{error:e.onFailure}})]),e._v(" "),t("span",{staticClass:"template-picker__title"},[e._v("\n\t\t\t"+e._s(e.nameWithoutExt)+"\n\t\t")])])])}),[],!1,null,"0859a92c",null).exports,gt=w.default.extend({name:"TemplatePicker",components:{NcEmptyContent:lt.Z,NcModal:dt.Z,TemplatePreview:ht},props:{logger:{type:Object,required:!0}},data:()=>({checked:-1,loading:!1,name:null,opened:!1,provider:null}),computed:{extension(){return(0,ne.extname)(this.name)},nameWithoutExt(){return this.extension?this.name.slice(0,0-this.extension.length):this.name},emptyTemplate(){return{basename:t("files","Blank"),fileid:-1,filename:this.t("files","Blank"),hasPreview:!1,mime:this.provider?.mimetypes[0]||this.provider?.mimetypes}},selectedTemplate(){return this.provider?this.provider.templates.find((e=>e.fileid===this.checked)):null},style(){if(!this.provider)return{};const e=(this.provider.ratio?this.provider.ratio:1.77)>1?240:160;return{"--margin":"8px","--width":e+"px","--border":"2px","--fullwidth":e+16+4+"px","--height":this.provider.ratio?Math.round(e/this.provider.ratio)+"px":null}}},methods:{async open(e,t){this.checked=this.emptyTemplate.fileid,this.name=e,this.provider=t;const n=(await async function(){return(await s.Z.get((0,u.generateOcsUrl)("apps/files/api/v1/templates"))).data.ocs.data}()).find((e=>e.app===t.app&&e.label===t.label));if(null===n)throw new Error("Failed to match provider in results");this.provider=n,0!==n.templates.length?this.opened=!0:this.onSubmit()},close(){this.checked=this.emptyTemplate.fileid,this.loading=!1,this.name=null,this.opened=!1,this.provider=null},onCheck(e){this.checked=e},async onSubmit(){this.loading=!0;const e=new URL(window.location.href).searchParams.get("dir")||"/";this.nameWithoutExt===this.name&&(this.logger.warn("Fixed invalid filename",{name:this.name,extension:this.provider?.extension}),this.name=this.name+this.provider?.extension);try{const t=await async function(e,t,n){return(await s.Z.post((0,u.generateOcsUrl)("apps/files/api/v1/templates/create"),{filePath:e,templatePath:t,templateType:n})).data.ocs.data}((0,ne.normalize)(`${e}/${this.name}`),this.selectedTemplate?.filename,this.selectedTemplate?.templateType);this.logger.debug("Created new file",t);const n=(0,A.ts)()?.uid||null,r=new i.$B({id:t.fileid,source:(0,u.generateRemoteUrl)((0,ne.join)("dav/files",n,t.filename)),root:`/files/${n}`,mime:t.mime,mtime:new Date(1e3*t.lastmod),owner:n,size:t.size,permissions:t.permissions,attributes:{...t,"has-preview":t.hasPreview}});(0,o.j8)("files:node:created",r),window.OCP.Files.Router.goToRoute(null,{view:"files",fileid:r.fileid},{dir:r.dirname,openfile:!0}),this.close()}catch(e){this.logger.error("Error while creating the new file from template",{error:e}),(0,v.x2)(this.t("files","Unable to create new file from template"))}finally{this.loading=!1}}}});var mt=r(24142),At={};At.styleTagTransform=M(),At.setAttributes=R(),At.insert=N().bind(null,"head"),At.domAPI=S(),At.insertStyleElement=P(),k()(mt.Z,At),mt.Z&&mt.Z.locals&&mt.Z.locals;const vt=(0,pt.Z)(gt,(function(){var e=this,t=e._self._c;return e._self._setupProxy,e.opened?t("NcModal",{staticClass:"templates-picker",attrs:{"clear-view-delay":-1,size:"large"},on:{close:e.close}},[t("form",{staticClass:"templates-picker__form",style:e.style,on:{submit:function(t){return t.preventDefault(),t.stopPropagation(),e.onSubmit.apply(null,arguments)}}},[t("h2",[e._v(e._s(e.t("files","Pick a template for {name}",{name:e.nameWithoutExt})))]),e._v(" "),t("ul",{staticClass:"templates-picker__list"},[t("TemplatePreview",e._b({attrs:{checked:e.checked===e.emptyTemplate.fileid},on:{check:e.onCheck}},"TemplatePreview",e.emptyTemplate,!1)),e._v(" "),e._l(e.provider.templates,(function(n){return t("TemplatePreview",e._b({key:n.fileid,attrs:{checked:e.checked===n.fileid,ratio:e.provider.ratio},on:{check:e.onCheck}},"TemplatePreview",n,!1))}))],2),e._v(" "),t("div",{staticClass:"templates-picker__buttons"},[t("input",{staticClass:"primary",attrs:{type:"submit","aria-label":e.t("files","Create a new file with the selected template")},domProps:{value:e.t("files","Create")}})])]),e._v(" "),e.loading?t("NcEmptyContent",{staticClass:"templates-picker__loading",attrs:{icon:"icon-loading"}},[e._v("\n\t\t"+e._s(e.t("files","Creating file"))+"\n\t")]):e._e()],1):e._e()}),[],!1,null,"48121b39",null).exports,bt=(0,l.IY)().setApp("files").detectUser().build();w.default.mixin({methods:{t:a.Iu,n:a.uN}});const wt=document.createElement("div");wt.id="template-picker",document.body.appendChild(wt);let yt=(0,Ee.j)("files","templates",[]),_t=(0,Ee.j)("files","templates_path",!1);bt.debug("Templates providers",{templates:yt}),bt.debug("Templates folder",{templatesPath:_t});const Ct=new(w.default.extend(vt))({name:"TemplatePicker",propsData:{logger:bt}});Ct.$mount("#template-picker"),_t||(bt.debug("Templates folder not initialized"),(0,i.cd)({id:"template-picker",displayName:(0,a.Iu)("files","Create new templates folder"),iconSvgInline:'',order:10,enabled:e=>e.owner===(0,A.ts)()?.uid&&0!=(e.permissions&i.y3.CREATE),handler(e,t){const n=t.map((e=>e.basename)),r=_e((0,a.Iu)("files","Templates"),n);Et(e,r),(0,i.oE)("template-picker")}})),yt.forEach(((e,t)=>{(0,i.cd)({id:`template-new-${e.app}-${t}`,displayName:e.label,iconClass:e.iconClass||"icon-file",enabled:e=>0!=(e.permissions&i.y3.CREATE),order:11,handler(t,n){const r=n.map((e=>e.basename)),i=_e(e.label+e.extension,r);Ct.open(i,e)}})}));const Et=async function(e,t){const n=(0,ne.join)(e.path,t);try{bt.debug("Initializing the templates directory",{templatePath:n});const e=await s.Z.post((0,u.generateOcsUrl)("apps/files/api/v1/templates/path"),{templatePath:n,copySystemTemplates:!0});window.OCP.Files.Router.goToRoute(null,{view:"files",fileid:void 0},{dir:n}),yt=e.data.ocs.data.templates,_t=e.data.ocs.data.template_path}catch(e){bt.error("Unable to initialize the templates directory"),(0,v.x2)((0,a.Iu)("files","Unable to initialize the templates directory"))}};(0,i.p4)(c),(0,i.p4)(g),(0,i.p4)(b),(0,i.p4)(E),(0,i.p4)(he),(0,i.p4)(me),(0,i.p4)(Ae),(0,i.p4)(ve),(0,i.p4)(we),(0,i.p4)(ye),(0,i.cd)(Ce),(()=>{const e=(0,Ee.j)("files","favoriteFolders",[]),t=e.map(((e,t)=>rt(e,t))),n=(0,i.Ti)();n.register(new i.G7({id:"favorites",name:(0,a.Iu)("files","Favorites"),caption:(0,a.Iu)("files","List of favorites files and folders."),emptyTitle:(0,a.Iu)("files","No favorites yet"),emptyCaption:(0,a.Iu)("files","Files and folders you mark as favorite will show up here"),icon:y,order:5,columns:[],getContents:nt})),t.forEach((e=>n.register(e))),(0,o.Ld)("files:favorites:added",(e=>{e.type===i.Tv.Folder&&(null!==e.path&&e.root?.startsWith("/files")?s(e.path):d.error("Favorite folder is not within user files root",{node:e}))})),(0,o.Ld)("files:favorites:removed",(e=>{e.type===i.Tv.Folder&&(null!==e.path&&e.root?.startsWith("/files")?l(e.path):d.error("Favorite folder is not within user files root",{node:e}))}));const r=function(){e.sort(((e,t)=>e.localeCompare(t,(0,a.G3)(),{ignorePunctuation:!0}))),e.forEach(((e,n)=>{const r=t.find((t=>t.id===it(e)));r&&(r.order=n)}))},s=function(i){const o=rt(i);e.find((e=>e===i))||(e.push(i),t.push(o),r(),n.register(o))},l=function(i){const o=it(i),a=e.findIndex((e=>e===i));-1!==a&&(e.splice(a,1),t.splice(a,1),n.remove(o),r())}})(),(0,i.Ti)().register(new i.G7({id:"files",name:(0,a.Iu)("files","All files"),caption:(0,a.Iu)("files","List of your files and folders."),icon:ge,order:0,getContents:function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"/";const t=new AbortController,n=(0,i.h7)();return new Xe.CancelablePromise((async(r,i,o)=>{o((()=>t.abort()));try{const i=await Je.getDirectoryContents(e,{details:!0,data:n,includeSelf:!0,signal:t.signal}),o=i.data[0],a=i.data.slice(1);if(o.filename!==e)throw new Error("Root node does not match requested path");r({folder:Qe(o),contents:a.map((e=>{try{return Qe(e)}catch(t){return d.error(`Invalid node detected '${e.basename}'`,{error:t}),null}})).filter(Boolean)})}catch(e){i(e)}}))}})),(0,i.Ti)().register(new i.G7({id:"recent",name:(0,a.Iu)("files","Recent"),caption:(0,a.Iu)("files","List of recently modified files and folders."),emptyTitle:(0,a.Iu)("files","No recently modified files"),emptyCaption:(0,a.Iu)("files","Files and folders you recently modified will show up here."),icon:'',order:2,defaultSortKey:"mtime",getContents:async function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"/";const t=(await ot.getDirectoryContents(e,{details:!0,data:st,headers:{method:"SEARCH","Content-Type":"application/xml; charset=utf-8"},deep:!0})).data;return{folder:new i.gt({id:0,source:(0,u.generateRemoteUrl)("dav"+Ye),root:Ye,owner:(0,A.ts)()?.uid||null,permissions:i.y3.READ}),contents:t.map(Qe)}}})),"serviceWorker"in navigator?window.addEventListener("load",(async()=>{try{const e=(0,u.generateUrl)("/apps/files/preview-service-worker.js",{},{noRewrite:!0}),t=await navigator.serviceWorker.register(e,{scope:"/"});d.debug("SW registered: ",{registration:t})}catch(e){d.error("SW registration failed: ",{error:e})}})):d.debug("Service Worker is not enabled on this browser."),(0,i.qq)("nc:hidden",{nc:"http://nextcloud.org/ns"}),(0,i.qq)("nc:metadata-files-live-photo",{nc:"http://nextcloud.org/ns"})},50584:e=>{e.exports={100:"Continue",101:"Switching Protocols",102:"Processing",200:"OK",201:"Created",202:"Accepted",203:"Non-Authoritative Information",204:"No Content",205:"Reset Content",206:"Partial Content",207:"Multi-Status",208:"Already Reported",226:"IM Used",300:"Multiple Choices",301:"Moved Permanently",302:"Found",303:"See Other",304:"Not Modified",305:"Use Proxy",307:"Temporary Redirect",308:"Permanent Redirect",400:"Bad Request",401:"Unauthorized",402:"Payment Required",403:"Forbidden",404:"Not Found",405:"Method Not Allowed",406:"Not Acceptable",407:"Proxy Authentication Required",408:"Request Timeout",409:"Conflict",410:"Gone",411:"Length Required",412:"Precondition Failed",413:"Payload Too Large",414:"URI Too Long",415:"Unsupported Media Type",416:"Range Not Satisfiable",417:"Expectation Failed",418:"I'm a teapot",421:"Misdirected Request",422:"Unprocessable Entity",423:"Locked",424:"Failed Dependency",425:"Unordered Collection",426:"Upgrade Required",428:"Precondition Required",429:"Too Many Requests",431:"Request Header Fields Too Large",451:"Unavailable For Legal Reasons",500:"Internal Server Error",501:"Not Implemented",502:"Bad Gateway",503:"Service Unavailable",504:"Gateway Timeout",505:"HTTP Version Not Supported",506:"Variant Also Negotiates",507:"Insufficient Storage",508:"Loop Detected",509:"Bandwidth Limit Exceeded",510:"Not Extended",511:"Network Authentication Required"}},3443:function(e,t,n){var r,i,o=n(25108);function a(e){return a="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},a(e)}"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self&&self,r=function(e){"use strict";function t(e,n){return t=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},t(e,n)}function n(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,i=r(e);if(t){var o=r(this).constructor;n=Reflect.construct(i,arguments,o)}else n=i.apply(this,arguments);return function(e,t){if(t&&("object"===a(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(this,n)}}function r(e){return r=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},r(e)}function i(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(e){if("string"==typeof e)return s(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?s(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,i=function(){};return{s:i,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:i}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var o,a=!0,l=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return a=e.done,e},e:function(e){l=!0,o=e},f:function(){try{a||null==n.return||n.return()}finally{if(l)throw o}}}}function s(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n{"use strict";n.d(t,{Z:()=>h});var r=n(87537),i=n.n(r),o=n(23645),a=n.n(o),s=n(61667),l=n.n(s),d=new URL(n(81490),n.b),c=new URL(n(90888),n.b),u=a()(i()),f=l()(d),p=l()(c);u.push([e.id,`@charset "UTF-8";\n/**\n * @copyright Copyright (c) 2019 Julius Härtl \n *\n * @author Julius Härtl \n * @author John Molakvoæ \n *\n * @license GNU AGPL version 3 or any later version\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.toastify.dialogs {\n min-width: 200px;\n background: none;\n background-color: var(--color-main-background);\n color: var(--color-main-text);\n box-shadow: 0 0 6px 0 var(--color-box-shadow);\n padding: 0 12px;\n margin-top: 45px;\n position: fixed;\n z-index: 10100;\n border-radius: var(--border-radius);\n display: flex;\n align-items: center;\n}\n.toastify.dialogs .toast-undo-container {\n display: flex;\n align-items: center;\n}\n.toastify.dialogs .toast-undo-button,\n.toastify.dialogs .toast-close {\n position: static;\n overflow: hidden;\n box-sizing: border-box;\n min-width: 44px;\n height: 100%;\n padding: 12px;\n white-space: nowrap;\n background-repeat: no-repeat;\n background-position: center;\n background-color: transparent;\n min-height: 0;\n}\n.toastify.dialogs .toast-undo-button.toast-close,\n.toastify.dialogs .toast-close.toast-close {\n text-indent: 0;\n opacity: .4;\n border: none;\n min-height: 44px;\n margin-left: 10px;\n font-size: 0;\n}\n.toastify.dialogs .toast-undo-button.toast-close:before,\n.toastify.dialogs .toast-close.toast-close:before {\n background-image: url(${f});\n content: " ";\n filter: var(--background-invert-if-dark);\n display: inline-block;\n width: 16px;\n height: 16px;\n}\n.toastify.dialogs .toast-undo-button.toast-undo-button,\n.toastify.dialogs .toast-close.toast-undo-button {\n height: calc(100% - 6px);\n margin: 3px 3px 3px 12px;\n}\n.toastify.dialogs .toast-undo-button:hover,\n.toastify.dialogs .toast-undo-button:focus,\n.toastify.dialogs .toast-undo-button:active,\n.toastify.dialogs .toast-close:hover,\n.toastify.dialogs .toast-close:focus,\n.toastify.dialogs .toast-close:active {\n cursor: pointer;\n opacity: 1;\n}\n.toastify.dialogs.toastify-top {\n right: 10px;\n}\n.toastify.dialogs.toast-with-click {\n cursor: pointer;\n}\n.toastify.dialogs.toast-error {\n border-left: 3px solid var(--color-error);\n}\n.toastify.dialogs.toast-info {\n border-left: 3px solid var(--color-primary);\n}\n.toastify.dialogs.toast-warning {\n border-left: 3px solid var(--color-warning);\n}\n.toastify.dialogs.toast-success,\n.toastify.dialogs.toast-undo {\n border-left: 3px solid var(--color-success);\n}\n.theme--dark .toastify.dialogs .toast-close.toast-close:before {\n background-image: url(${p});\n}\n._file-picker__file-icon_1vgv4_5 {\n width: 32px;\n height: 32px;\n min-width: 32px;\n min-height: 32px;\n background-repeat: no-repeat;\n background-size: contain;\n display: flex;\n justify-content: center;\n}\ntr.file-picker__row[data-v-6aded0d9] {\n height: var(--row-height, 50px);\n}\ntr.file-picker__row td[data-v-6aded0d9] {\n cursor: pointer;\n overflow: hidden;\n text-overflow: ellipsis;\n border-bottom: none;\n}\ntr.file-picker__row td[data-v-6aded0d9]:not(.row-checkbox) {\n padding-inline: 14px 0;\n}\ntr.file-picker__row td.row-size[data-v-6aded0d9] {\n text-align: end;\n padding-inline: 0 14px;\n}\ntr.file-picker__row td.row-name[data-v-6aded0d9] {\n padding-inline: 2px 0;\n}\n@keyframes gradient-6aded0d9 {\n 0% {\n background-position: 0% 50%;\n }\n 50% {\n background-position: 100% 50%;\n }\n to {\n background-position: 0% 50%;\n }\n}\n.loading-row .row-checkbox[data-v-6aded0d9] {\n text-align: center !important;\n}\n.loading-row span[data-v-6aded0d9] {\n display: inline-block;\n height: 24px;\n background: linear-gradient(to right, var(--color-background-darker), var(--color-text-maxcontrast), var(--color-background-darker));\n background-size: 600px 100%;\n border-radius: var(--border-radius);\n animation: gradient-6aded0d9 12s ease infinite;\n}\n.loading-row .row-wrapper[data-v-6aded0d9] {\n display: inline-flex;\n align-items: center;\n}\n.loading-row .row-checkbox span[data-v-6aded0d9] {\n width: 24px;\n}\n.loading-row .row-name span[data-v-6aded0d9]:last-of-type {\n margin-inline-start: 6px;\n width: 130px;\n}\n.loading-row .row-size span[data-v-6aded0d9] {\n width: 80px;\n}\n.loading-row .row-modified span[data-v-6aded0d9] {\n width: 90px;\n}\ntr.file-picker__row[data-v-ee6f34b5] {\n height: var(--row-height, 50px);\n}\ntr.file-picker__row td[data-v-ee6f34b5] {\n cursor: pointer;\n overflow: hidden;\n text-overflow: ellipsis;\n border-bottom: none;\n}\ntr.file-picker__row td[data-v-ee6f34b5]:not(.row-checkbox) {\n padding-inline: 14px 0;\n}\ntr.file-picker__row td.row-size[data-v-ee6f34b5] {\n text-align: end;\n padding-inline: 0 14px;\n}\ntr.file-picker__row td.row-name[data-v-ee6f34b5] {\n padding-inline: 2px 0;\n}\n.file-picker__row--selected[data-v-ee6f34b5] {\n background-color: var(--color-background-dark);\n}\n.file-picker__row[data-v-ee6f34b5]:hover {\n background-color: var(--color-background-hover);\n}\n.file-picker__name-container[data-v-ee6f34b5] {\n display: flex;\n justify-content: start;\n align-items: center;\n height: 100%;\n}\n.file-picker__file-name[data-v-ee6f34b5] {\n padding-inline-start: 6px;\n min-width: 0;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n.file-picker__file-extension[data-v-ee6f34b5] {\n color: var(--color-text-maxcontrast);\n min-width: fit-content;\n}\n.file-picker__header-preview[data-v-4297db37] {\n width: 22px;\n height: 32px;\n flex: 0 0 auto;\n}\n.file-picker__files[data-v-4297db37] {\n margin: 2px;\n margin-inline-start: 12px;\n overflow: scroll auto;\n}\n.file-picker__files table[data-v-4297db37] {\n width: 100%;\n max-height: 100%;\n table-layout: fixed;\n}\n.file-picker__files th[data-v-4297db37] {\n position: -webkit-sticky;\n position: sticky;\n z-index: 1;\n top: 0;\n background-color: var(--color-main-background);\n padding: 2px;\n}\n.file-picker__files th .header-wrapper[data-v-4297db37] {\n display: flex;\n}\n.file-picker__files th.row-checkbox[data-v-4297db37] {\n width: 44px;\n}\n.file-picker__files th.row-name[data-v-4297db37] {\n width: 230px;\n}\n.file-picker__files th.row-size[data-v-4297db37] {\n width: 100px;\n}\n.file-picker__files th.row-modified[data-v-4297db37] {\n width: 120px;\n}\n.file-picker__files th[data-v-4297db37]:not(.row-size) .button-vue__wrapper {\n justify-content: start;\n flex-direction: row-reverse;\n}\n.file-picker__files th[data-v-4297db37]:not(.row-size) .button-vue {\n padding-inline: 16px 4px;\n}\n.file-picker__files th.row-size[data-v-4297db37] .button-vue__wrapper {\n justify-content: end;\n}\n.file-picker__files th[data-v-4297db37] .button-vue__wrapper {\n color: var(--color-text-maxcontrast);\n}\n.file-picker__files th[data-v-4297db37] .button-vue__wrapper .button-vue__text {\n font-weight: 400;\n}\n.file-picker__breadcrumbs[data-v-3bc9efa5] {\n flex-grow: 0 !important;\n}\n.file-picker__side[data-v-fcfd0f23] {\n display: flex;\n flex-direction: column;\n align-items: start;\n gap: .5rem;\n min-width: 200px;\n padding-block: 2px;\n overflow: auto;\n}\n.file-picker__side[data-v-fcfd0f23] .button-vue__wrapper {\n justify-content: start;\n}\n.file-picker__filter-input[data-v-fcfd0f23] {\n margin-block: 7px;\n max-width: 260px;\n}\n@media (max-width: 736px) {\n .file-picker__side[data-v-fcfd0f23] {\n flex-direction: row;\n min-width: unset;\n }\n}\n@media (max-width: 512px) {\n .file-picker__side[data-v-fcfd0f23] {\n flex-direction: row;\n min-width: unset;\n }\n .file-picker__filter-input[data-v-fcfd0f23] {\n max-width: unset;\n }\n}\n.file-picker__navigation {\n padding-inline: 2px;\n}\n.file-picker__navigation,\n.file-picker__navigation * {\n box-sizing: border-box;\n}\n.file-picker__navigation .v-select.select {\n min-width: 220px;\n}\n@media (min-width: 513px) and (max-width: 736px) {\n .file-picker__navigation {\n gap: 11px;\n }\n}\n@media (max-width: 512px) {\n .file-picker__navigation {\n flex-direction: column-reverse !important;\n }\n}\n.file-picker__view[data-v-86a13079] {\n height: 50px;\n display: flex;\n justify-content: start;\n align-items: center;\n}\n.file-picker__view h3[data-v-86a13079] {\n font-weight: 700;\n height: fit-content;\n margin: 0;\n}\n.file-picker__main[data-v-86a13079] {\n box-sizing: border-box;\n width: 100%;\n display: flex;\n flex-direction: column;\n min-height: 0;\n flex: 1;\n padding-inline: 2px;\n}\n.file-picker__main *[data-v-86a13079] {\n box-sizing: border-box;\n}\n[data-v-86a13079] .file-picker {\n height: min(80vh, 800px);\n}\n@media (max-width: 512px) {\n [data-v-86a13079] .file-picker {\n height: calc(100% - 16px - var(--default-clickable-area));\n }\n}\n[data-v-86a13079] .file-picker__content {\n display: flex;\n flex-direction: column;\n overflow: hidden;\n}\n`,"",{version:3,sources:["webpack://./node_modules/@nextcloud/dialogs/dist/style.css"],names:[],mappings:"AAAA,gBAAgB;AAChB;;;;;;;;;;;;;;;;;;;;EAoBE;AACF;EACE,gBAAgB;EAChB,gBAAgB;EAChB,8CAA8C;EAC9C,6BAA6B;EAC7B,6CAA6C;EAC7C,eAAe;EACf,gBAAgB;EAChB,eAAe;EACf,cAAc;EACd,mCAAmC;EACnC,aAAa;EACb,mBAAmB;AACrB;AACA;EACE,aAAa;EACb,mBAAmB;AACrB;AACA;;EAEE,gBAAgB;EAChB,gBAAgB;EAChB,sBAAsB;EACtB,eAAe;EACf,YAAY;EACZ,aAAa;EACb,mBAAmB;EACnB,4BAA4B;EAC5B,2BAA2B;EAC3B,6BAA6B;EAC7B,aAAa;AACf;AACA;;EAEE,cAAc;EACd,WAAW;EACX,YAAY;EACZ,gBAAgB;EAChB,iBAAiB;EACjB,YAAY;AACd;AACA;;EAEE,yDAAiR;EACjR,YAAY;EACZ,wCAAwC;EACxC,qBAAqB;EACrB,WAAW;EACX,YAAY;AACd;AACA;;EAEE,wBAAwB;EACxB,wBAAwB;AAC1B;AACA;;;;;;EAME,eAAe;EACf,UAAU;AACZ;AACA;EACE,WAAW;AACb;AACA;EACE,eAAe;AACjB;AACA;EACE,yCAAyC;AAC3C;AACA;EACE,2CAA2C;AAC7C;AACA;EACE,2CAA2C;AAC7C;AACA;;EAEE,2CAA2C;AAC7C;AACA;EACE,yDAAiU;AACnU;AACA;EACE,WAAW;EACX,YAAY;EACZ,eAAe;EACf,gBAAgB;EAChB,4BAA4B;EAC5B,wBAAwB;EACxB,aAAa;EACb,uBAAuB;AACzB;AACA;EACE,+BAA+B;AACjC;AACA;EACE,eAAe;EACf,gBAAgB;EAChB,uBAAuB;EACvB,mBAAmB;AACrB;AACA;EACE,sBAAsB;AACxB;AACA;EACE,eAAe;EACf,sBAAsB;AACxB;AACA;EACE,qBAAqB;AACvB;AACA;EACE;IACE,2BAA2B;EAC7B;EACA;IACE,6BAA6B;EAC/B;EACA;IACE,2BAA2B;EAC7B;AACF;AACA;EACE,6BAA6B;AAC/B;AACA;EACE,qBAAqB;EACrB,YAAY;EACZ,oIAAoI;EACpI,2BAA2B;EAC3B,mCAAmC;EACnC,8CAA8C;AAChD;AACA;EACE,oBAAoB;EACpB,mBAAmB;AACrB;AACA;EACE,WAAW;AACb;AACA;EACE,wBAAwB;EACxB,YAAY;AACd;AACA;EACE,WAAW;AACb;AACA;EACE,WAAW;AACb;AACA;EACE,+BAA+B;AACjC;AACA;EACE,eAAe;EACf,gBAAgB;EAChB,uBAAuB;EACvB,mBAAmB;AACrB;AACA;EACE,sBAAsB;AACxB;AACA;EACE,eAAe;EACf,sBAAsB;AACxB;AACA;EACE,qBAAqB;AACvB;AACA;EACE,8CAA8C;AAChD;AACA;EACE,+CAA+C;AACjD;AACA;EACE,aAAa;EACb,sBAAsB;EACtB,mBAAmB;EACnB,YAAY;AACd;AACA;EACE,yBAAyB;EACzB,YAAY;EACZ,gBAAgB;EAChB,uBAAuB;AACzB;AACA;EACE,oCAAoC;EACpC,sBAAsB;AACxB;AACA;EACE,WAAW;EACX,YAAY;EACZ,cAAc;AAChB;AACA;EACE,WAAW;EACX,yBAAyB;EACzB,qBAAqB;AACvB;AACA;EACE,WAAW;EACX,gBAAgB;EAChB,mBAAmB;AACrB;AACA;EACE,wBAAwB;EACxB,gBAAgB;EAChB,UAAU;EACV,MAAM;EACN,8CAA8C;EAC9C,YAAY;AACd;AACA;EACE,aAAa;AACf;AACA;EACE,WAAW;AACb;AACA;EACE,YAAY;AACd;AACA;EACE,YAAY;AACd;AACA;EACE,YAAY;AACd;AACA;EACE,sBAAsB;EACtB,2BAA2B;AAC7B;AACA;EACE,wBAAwB;AAC1B;AACA;EACE,oBAAoB;AACtB;AACA;EACE,oCAAoC;AACtC;AACA;EACE,gBAAgB;AAClB;AACA;EACE,uBAAuB;AACzB;AACA;EACE,aAAa;EACb,sBAAsB;EACtB,kBAAkB;EAClB,UAAU;EACV,gBAAgB;EAChB,kBAAkB;EAClB,cAAc;AAChB;AACA;EACE,sBAAsB;AACxB;AACA;EACE,iBAAiB;EACjB,gBAAgB;AAClB;AACA;EACE;IACE,mBAAmB;IACnB,gBAAgB;EAClB;AACF;AACA;EACE;IACE,mBAAmB;IACnB,gBAAgB;EAClB;EACA;IACE,gBAAgB;EAClB;AACF;AACA;EACE,mBAAmB;AACrB;AACA;;EAEE,sBAAsB;AACxB;AACA;EACE,gBAAgB;AAClB;AACA;EACE;IACE,SAAS;EACX;AACF;AACA;EACE;IACE,yCAAyC;EAC3C;AACF;AACA;EACE,YAAY;EACZ,aAAa;EACb,sBAAsB;EACtB,mBAAmB;AACrB;AACA;EACE,gBAAgB;EAChB,mBAAmB;EACnB,SAAS;AACX;AACA;EACE,sBAAsB;EACtB,WAAW;EACX,aAAa;EACb,sBAAsB;EACtB,aAAa;EACb,OAAO;EACP,mBAAmB;AACrB;AACA;EACE,sBAAsB;AACxB;AACA;EACE,wBAAwB;AAC1B;AACA;EACE;IACE,yDAAyD;EAC3D;AACF;AACA;EACE,aAAa;EACb,sBAAsB;EACtB,gBAAgB;AAClB",sourcesContent:['@charset "UTF-8";\n/**\n * @copyright Copyright (c) 2019 Julius Härtl \n *\n * @author Julius Härtl \n * @author John Molakvoæ \n *\n * @license GNU AGPL version 3 or any later version\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.toastify.dialogs {\n min-width: 200px;\n background: none;\n background-color: var(--color-main-background);\n color: var(--color-main-text);\n box-shadow: 0 0 6px 0 var(--color-box-shadow);\n padding: 0 12px;\n margin-top: 45px;\n position: fixed;\n z-index: 10100;\n border-radius: var(--border-radius);\n display: flex;\n align-items: center;\n}\n.toastify.dialogs .toast-undo-container {\n display: flex;\n align-items: center;\n}\n.toastify.dialogs .toast-undo-button,\n.toastify.dialogs .toast-close {\n position: static;\n overflow: hidden;\n box-sizing: border-box;\n min-width: 44px;\n height: 100%;\n padding: 12px;\n white-space: nowrap;\n background-repeat: no-repeat;\n background-position: center;\n background-color: transparent;\n min-height: 0;\n}\n.toastify.dialogs .toast-undo-button.toast-close,\n.toastify.dialogs .toast-close.toast-close {\n text-indent: 0;\n opacity: .4;\n border: none;\n min-height: 44px;\n margin-left: 10px;\n font-size: 0;\n}\n.toastify.dialogs .toast-undo-button.toast-close:before,\n.toastify.dialogs .toast-close.toast-close:before {\n background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGhlaWdodD0iMTYiIHdpZHRoPSIxNiI+CiAgPHBhdGggZD0iTTE0IDEyLjNMMTIuMyAxNCA4IDkuNyAzLjcgMTQgMiAxMi4zIDYuMyA4IDIgMy43IDMuNyAyIDggNi4zIDEyLjMgMiAxNCAzLjcgOS43IDh6Ii8+Cjwvc3ZnPgo=);\n content: " ";\n filter: var(--background-invert-if-dark);\n display: inline-block;\n width: 16px;\n height: 16px;\n}\n.toastify.dialogs .toast-undo-button.toast-undo-button,\n.toastify.dialogs .toast-close.toast-undo-button {\n height: calc(100% - 6px);\n margin: 3px 3px 3px 12px;\n}\n.toastify.dialogs .toast-undo-button:hover,\n.toastify.dialogs .toast-undo-button:focus,\n.toastify.dialogs .toast-undo-button:active,\n.toastify.dialogs .toast-close:hover,\n.toastify.dialogs .toast-close:focus,\n.toastify.dialogs .toast-close:active {\n cursor: pointer;\n opacity: 1;\n}\n.toastify.dialogs.toastify-top {\n right: 10px;\n}\n.toastify.dialogs.toast-with-click {\n cursor: pointer;\n}\n.toastify.dialogs.toast-error {\n border-left: 3px solid var(--color-error);\n}\n.toastify.dialogs.toast-info {\n border-left: 3px solid var(--color-primary);\n}\n.toastify.dialogs.toast-warning {\n border-left: 3px solid var(--color-warning);\n}\n.toastify.dialogs.toast-success,\n.toastify.dialogs.toast-undo {\n border-left: 3px solid var(--color-success);\n}\n.theme--dark .toastify.dialogs .toast-close.toast-close:before {\n background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGhlaWdodD0iMTYiIHdpZHRoPSIxNiI+CiAgPHBhdGggZD0iTTE0IDEyLjNMMTIuMyAxNCA4IDkuNyAzLjcgMTQgMiAxMi4zIDYuMyA4IDIgMy43IDMuNyAyIDggNi4zIDEyLjMgMiAxNCAzLjcgOS43IDh6IiBzdHlsZT0iZmlsbC1vcGFjaXR5OjE7ZmlsbDojZmZmZmZmIi8+Cjwvc3ZnPgo=);\n}\n._file-picker__file-icon_1vgv4_5 {\n width: 32px;\n height: 32px;\n min-width: 32px;\n min-height: 32px;\n background-repeat: no-repeat;\n background-size: contain;\n display: flex;\n justify-content: center;\n}\ntr.file-picker__row[data-v-6aded0d9] {\n height: var(--row-height, 50px);\n}\ntr.file-picker__row td[data-v-6aded0d9] {\n cursor: pointer;\n overflow: hidden;\n text-overflow: ellipsis;\n border-bottom: none;\n}\ntr.file-picker__row td[data-v-6aded0d9]:not(.row-checkbox) {\n padding-inline: 14px 0;\n}\ntr.file-picker__row td.row-size[data-v-6aded0d9] {\n text-align: end;\n padding-inline: 0 14px;\n}\ntr.file-picker__row td.row-name[data-v-6aded0d9] {\n padding-inline: 2px 0;\n}\n@keyframes gradient-6aded0d9 {\n 0% {\n background-position: 0% 50%;\n }\n 50% {\n background-position: 100% 50%;\n }\n to {\n background-position: 0% 50%;\n }\n}\n.loading-row .row-checkbox[data-v-6aded0d9] {\n text-align: center !important;\n}\n.loading-row span[data-v-6aded0d9] {\n display: inline-block;\n height: 24px;\n background: linear-gradient(to right, var(--color-background-darker), var(--color-text-maxcontrast), var(--color-background-darker));\n background-size: 600px 100%;\n border-radius: var(--border-radius);\n animation: gradient-6aded0d9 12s ease infinite;\n}\n.loading-row .row-wrapper[data-v-6aded0d9] {\n display: inline-flex;\n align-items: center;\n}\n.loading-row .row-checkbox span[data-v-6aded0d9] {\n width: 24px;\n}\n.loading-row .row-name span[data-v-6aded0d9]:last-of-type {\n margin-inline-start: 6px;\n width: 130px;\n}\n.loading-row .row-size span[data-v-6aded0d9] {\n width: 80px;\n}\n.loading-row .row-modified span[data-v-6aded0d9] {\n width: 90px;\n}\ntr.file-picker__row[data-v-ee6f34b5] {\n height: var(--row-height, 50px);\n}\ntr.file-picker__row td[data-v-ee6f34b5] {\n cursor: pointer;\n overflow: hidden;\n text-overflow: ellipsis;\n border-bottom: none;\n}\ntr.file-picker__row td[data-v-ee6f34b5]:not(.row-checkbox) {\n padding-inline: 14px 0;\n}\ntr.file-picker__row td.row-size[data-v-ee6f34b5] {\n text-align: end;\n padding-inline: 0 14px;\n}\ntr.file-picker__row td.row-name[data-v-ee6f34b5] {\n padding-inline: 2px 0;\n}\n.file-picker__row--selected[data-v-ee6f34b5] {\n background-color: var(--color-background-dark);\n}\n.file-picker__row[data-v-ee6f34b5]:hover {\n background-color: var(--color-background-hover);\n}\n.file-picker__name-container[data-v-ee6f34b5] {\n display: flex;\n justify-content: start;\n align-items: center;\n height: 100%;\n}\n.file-picker__file-name[data-v-ee6f34b5] {\n padding-inline-start: 6px;\n min-width: 0;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n.file-picker__file-extension[data-v-ee6f34b5] {\n color: var(--color-text-maxcontrast);\n min-width: fit-content;\n}\n.file-picker__header-preview[data-v-4297db37] {\n width: 22px;\n height: 32px;\n flex: 0 0 auto;\n}\n.file-picker__files[data-v-4297db37] {\n margin: 2px;\n margin-inline-start: 12px;\n overflow: scroll auto;\n}\n.file-picker__files table[data-v-4297db37] {\n width: 100%;\n max-height: 100%;\n table-layout: fixed;\n}\n.file-picker__files th[data-v-4297db37] {\n position: -webkit-sticky;\n position: sticky;\n z-index: 1;\n top: 0;\n background-color: var(--color-main-background);\n padding: 2px;\n}\n.file-picker__files th .header-wrapper[data-v-4297db37] {\n display: flex;\n}\n.file-picker__files th.row-checkbox[data-v-4297db37] {\n width: 44px;\n}\n.file-picker__files th.row-name[data-v-4297db37] {\n width: 230px;\n}\n.file-picker__files th.row-size[data-v-4297db37] {\n width: 100px;\n}\n.file-picker__files th.row-modified[data-v-4297db37] {\n width: 120px;\n}\n.file-picker__files th[data-v-4297db37]:not(.row-size) .button-vue__wrapper {\n justify-content: start;\n flex-direction: row-reverse;\n}\n.file-picker__files th[data-v-4297db37]:not(.row-size) .button-vue {\n padding-inline: 16px 4px;\n}\n.file-picker__files th.row-size[data-v-4297db37] .button-vue__wrapper {\n justify-content: end;\n}\n.file-picker__files th[data-v-4297db37] .button-vue__wrapper {\n color: var(--color-text-maxcontrast);\n}\n.file-picker__files th[data-v-4297db37] .button-vue__wrapper .button-vue__text {\n font-weight: 400;\n}\n.file-picker__breadcrumbs[data-v-3bc9efa5] {\n flex-grow: 0 !important;\n}\n.file-picker__side[data-v-fcfd0f23] {\n display: flex;\n flex-direction: column;\n align-items: start;\n gap: .5rem;\n min-width: 200px;\n padding-block: 2px;\n overflow: auto;\n}\n.file-picker__side[data-v-fcfd0f23] .button-vue__wrapper {\n justify-content: start;\n}\n.file-picker__filter-input[data-v-fcfd0f23] {\n margin-block: 7px;\n max-width: 260px;\n}\n@media (max-width: 736px) {\n .file-picker__side[data-v-fcfd0f23] {\n flex-direction: row;\n min-width: unset;\n }\n}\n@media (max-width: 512px) {\n .file-picker__side[data-v-fcfd0f23] {\n flex-direction: row;\n min-width: unset;\n }\n .file-picker__filter-input[data-v-fcfd0f23] {\n max-width: unset;\n }\n}\n.file-picker__navigation {\n padding-inline: 2px;\n}\n.file-picker__navigation,\n.file-picker__navigation * {\n box-sizing: border-box;\n}\n.file-picker__navigation .v-select.select {\n min-width: 220px;\n}\n@media (min-width: 513px) and (max-width: 736px) {\n .file-picker__navigation {\n gap: 11px;\n }\n}\n@media (max-width: 512px) {\n .file-picker__navigation {\n flex-direction: column-reverse !important;\n }\n}\n.file-picker__view[data-v-86a13079] {\n height: 50px;\n display: flex;\n justify-content: start;\n align-items: center;\n}\n.file-picker__view h3[data-v-86a13079] {\n font-weight: 700;\n height: fit-content;\n margin: 0;\n}\n.file-picker__main[data-v-86a13079] {\n box-sizing: border-box;\n width: 100%;\n display: flex;\n flex-direction: column;\n min-height: 0;\n flex: 1;\n padding-inline: 2px;\n}\n.file-picker__main *[data-v-86a13079] {\n box-sizing: border-box;\n}\n[data-v-86a13079] .file-picker {\n height: min(80vh, 800px);\n}\n@media (max-width: 512px) {\n [data-v-86a13079] .file-picker {\n height: calc(100% - 16px - var(--default-clickable-area));\n }\n}\n[data-v-86a13079] .file-picker__content {\n display: flex;\n flex-direction: column;\n overflow: hidden;\n}\n'],sourceRoot:""}]);const h=u},92246:(e,t,n)=>{"use strict";n.d(t,{Z:()=>s});var r=n(87537),i=n.n(r),o=n(23645),a=n.n(o)()(i());a.push([e.id,".template-picker__item[data-v-0859a92c]{display:flex}.template-picker__label[data-v-0859a92c]{display:flex;align-items:center;flex:1 1;flex-direction:column}.template-picker__label[data-v-0859a92c],.template-picker__label *[data-v-0859a92c]{cursor:pointer;user-select:none}.template-picker__label[data-v-0859a92c]::before{display:none !important}.template-picker__preview[data-v-0859a92c]{display:block;overflow:hidden;flex:1 1;width:var(--width);min-height:var(--height);max-height:var(--height);padding:0;border:var(--border) solid var(--color-border);border-radius:var(--border-radius-large)}input:checked+label>.template-picker__preview[data-v-0859a92c]{border-color:var(--color-primary-element)}.template-picker__preview--failed[data-v-0859a92c]{display:flex}.template-picker__image[data-v-0859a92c]{max-width:100%;background-color:var(--color-main-background);object-fit:cover}.template-picker__preview--failed .template-picker__image[data-v-0859a92c]{width:calc(var(--margin)*8);margin:auto;background-color:rgba(0,0,0,0) !important;object-fit:initial}.template-picker__title[data-v-0859a92c]{overflow:hidden;max-width:calc(var(--width) + 4px);padding:var(--margin);white-space:nowrap;text-overflow:ellipsis}","",{version:3,sources:["webpack://./apps/files/src/components/TemplatePreview.vue"],names:[],mappings:"AAGC,wCACC,YAAA,CAGD,yCACC,YAAA,CAEA,kBAAA,CACA,QAAA,CACA,qBAAA,CAEA,oFACC,cAAA,CACA,gBAAA,CAGD,iDACC,uBAAA,CAIF,2CACC,aAAA,CACA,eAAA,CAEA,QAAA,CACA,kBAAA,CACA,wBAAA,CACA,wBAAA,CACA,SAAA,CACA,8CAAA,CACA,wCAAA,CAEA,+DACC,yCAAA,CAGD,mDAEC,YAAA,CAIF,yCACC,cAAA,CACA,6CAAA,CAEA,gBAAA,CAID,2EACC,2BAAA,CAEA,WAAA,CACA,yCAAA,CAEA,kBAAA,CAGD,yCACC,eAAA,CAEA,kCAAA,CACA,qBAAA,CACA,kBAAA,CACA,sBAAA",sourcesContent:["\n\n.template-picker {\n\t&__item {\n\t\tdisplay: flex;\n\t}\n\n\t&__label {\n\t\tdisplay: flex;\n\t\t// Align in the middle of the grid\n\t\talign-items: center;\n\t\tflex: 1 1;\n\t\tflex-direction: column;\n\n\t\t&, * {\n\t\t\tcursor: pointer;\n\t\t\tuser-select: none;\n\t\t}\n\n\t\t&::before {\n\t\t\tdisplay: none !important;\n\t\t}\n\t}\n\n\t&__preview {\n\t\tdisplay: block;\n\t\toverflow: hidden;\n\t\t// Stretch so all entries are the same width\n\t\tflex: 1 1;\n\t\twidth: var(--width);\n\t\tmin-height: var(--height);\n\t\tmax-height: var(--height);\n\t\tpadding: 0;\n\t\tborder: var(--border) solid var(--color-border);\n\t\tborder-radius: var(--border-radius-large);\n\n\t\tinput:checked + label > & {\n\t\t\tborder-color: var(--color-primary-element);\n\t\t}\n\n\t\t&--failed {\n\t\t\t// Make sure to properly center fallback icon\n\t\t\tdisplay: flex;\n\t\t}\n\t}\n\n\t&__image {\n\t\tmax-width: 100%;\n\t\tbackground-color: var(--color-main-background);\n\n\t\tobject-fit: cover;\n\t}\n\n\t// Failed preview, fallback to mime icon\n\t&__preview--failed &__image {\n\t\twidth: calc(var(--margin) * 8);\n\t\t// Center mime icon\n\t\tmargin: auto;\n\t\tbackground-color: transparent !important;\n\n\t\tobject-fit: initial;\n\t}\n\n\t&__title {\n\t\toverflow: hidden;\n\t\t// also count preview border\n\t\tmax-width: calc(var(--width) + 2*2px);\n\t\tpadding: var(--margin);\n\t\twhite-space: nowrap;\n\t\ttext-overflow: ellipsis;\n\t}\n}\n\n"],sourceRoot:""}]);const s=a},24142:(e,t,n)=>{"use strict";n.d(t,{Z:()=>s});var r=n(87537),i=n.n(r),o=n(23645),a=n.n(o)()(i());a.push([e.id,".templates-picker__form[data-v-48121b39]{padding:calc(var(--margin)*2);padding-bottom:0}.templates-picker__form h2[data-v-48121b39]{text-align:center;font-weight:bold;margin:var(--margin) 0 calc(var(--margin)*2)}.templates-picker__list[data-v-48121b39]{display:grid;grid-gap:calc(var(--margin)*2);grid-auto-columns:1fr;max-width:calc(var(--fullwidth)*6);grid-template-columns:repeat(auto-fit, var(--fullwidth));grid-auto-rows:1fr;justify-content:center}.templates-picker__buttons[data-v-48121b39]{display:flex;justify-content:end;padding:calc(var(--margin)*2) var(--margin);position:sticky;bottom:0;background-image:linear-gradient(0, var(--gradient-main-background))}.templates-picker__buttons button[data-v-48121b39],.templates-picker__buttons input[type=submit][data-v-48121b39]{height:44px}.templates-picker[data-v-48121b39] .modal-container{position:relative}.templates-picker__loading[data-v-48121b39]{position:absolute;top:0;left:0;justify-content:center;width:100%;height:100%;margin:0;background-color:var(--color-main-background-translucent)}","",{version:3,sources:["webpack://./apps/files/src/views/TemplatePicker.vue"],names:[],mappings:"AAEC,yCACC,6BAAA,CAEA,gBAAA,CAEA,4CACC,iBAAA,CACA,gBAAA,CACA,4CAAA,CAIF,yCACC,YAAA,CACA,8BAAA,CACA,qBAAA,CAEA,kCAAA,CACA,wDAAA,CAEA,kBAAA,CAEA,sBAAA,CAGD,4CACC,YAAA,CACA,mBAAA,CACA,2CAAA,CACA,eAAA,CACA,QAAA,CACA,oEAAA,CAEA,kHACC,WAAA,CAKF,oDACC,iBAAA,CAGD,4CACC,iBAAA,CACA,KAAA,CACA,MAAA,CACA,sBAAA,CACA,UAAA,CACA,WAAA,CACA,QAAA,CACA,yDAAA",sourcesContent:["\n.templates-picker {\n\t&__form {\n\t\tpadding: calc(var(--margin) * 2);\n\t\t// Will be handled by the buttons\n\t\tpadding-bottom: 0;\n\n\t\th2 {\n\t\t\ttext-align: center;\n\t\t\tfont-weight: bold;\n\t\t\tmargin: var(--margin) 0 calc(var(--margin) * 2);\n\t\t}\n\t}\n\n\t&__list {\n\t\tdisplay: grid;\n\t\tgrid-gap: calc(var(--margin) * 2);\n\t\tgrid-auto-columns: 1fr;\n\t\t// We want maximum 5 columns. Putting 6 as we don't count the grid gap. So it will always be lower than 6\n\t\tmax-width: calc(var(--fullwidth) * 6);\n\t\tgrid-template-columns: repeat(auto-fit, var(--fullwidth));\n\t\t// Make sure all rows are the same height\n\t\tgrid-auto-rows: 1fr;\n\t\t// Center the columns set\n\t\tjustify-content: center;\n\t}\n\n\t&__buttons {\n\t\tdisplay: flex;\n\t\tjustify-content: end;\n\t\tpadding: calc(var(--margin) * 2) var(--margin);\n\t\tposition: sticky;\n\t\tbottom: 0;\n\t\tbackground-image: linear-gradient(0, var(--gradient-main-background));\n\n\t\tbutton, input[type='submit'] {\n\t\t\theight: 44px;\n\t\t}\n\t}\n\n\t// Make sure we're relative for the loading emptycontent on top\n\t::v-deep .modal-container {\n\t\tposition: relative;\n\t}\n\n\t&__loading {\n\t\tposition: absolute;\n\t\ttop: 0;\n\t\tleft: 0;\n\t\tjustify-content: center;\n\t\twidth: 100%;\n\t\theight: 100%;\n\t\tmargin: 0;\n\t\tbackground-color: var(--color-main-background-translucent);\n\t}\n}\n\n"],sourceRoot:""}]);const s=a},17187:(e,t,n)=>{"use strict";var r,i=n(25108),o="object"==typeof Reflect?Reflect:null,a=o&&"function"==typeof o.apply?o.apply:function(e,t,n){return Function.prototype.apply.call(e,t,n)};r=o&&"function"==typeof o.ownKeys?o.ownKeys:Object.getOwnPropertySymbols?function(e){return Object.getOwnPropertyNames(e).concat(Object.getOwnPropertySymbols(e))}:function(e){return Object.getOwnPropertyNames(e)};var s=Number.isNaN||function(e){return e!=e};function l(){l.init.call(this)}e.exports=l,e.exports.once=function(e,t){return new Promise((function(n,r){function i(n){e.removeListener(t,o),r(n)}function o(){"function"==typeof e.removeListener&&e.removeListener("error",i),n([].slice.call(arguments))}v(e,t,o,{once:!0}),"error"!==t&&function(e,t,n){"function"==typeof e.on&&v(e,"error",t,{once:!0})}(e,i)}))},l.EventEmitter=l,l.prototype._events=void 0,l.prototype._eventsCount=0,l.prototype._maxListeners=void 0;var d=10;function c(e){if("function"!=typeof e)throw new TypeError('The "listener" argument must be of type Function. Received type '+typeof e)}function u(e){return void 0===e._maxListeners?l.defaultMaxListeners:e._maxListeners}function f(e,t,n,r){var o,a,s,l;if(c(n),void 0===(a=e._events)?(a=e._events=Object.create(null),e._eventsCount=0):(void 0!==a.newListener&&(e.emit("newListener",t,n.listener?n.listener:n),a=e._events),s=a[t]),void 0===s)s=a[t]=n,++e._eventsCount;else if("function"==typeof s?s=a[t]=r?[n,s]:[s,n]:r?s.unshift(n):s.push(n),(o=u(e))>0&&s.length>o&&!s.warned){s.warned=!0;var d=new Error("Possible EventEmitter memory leak detected. "+s.length+" "+String(t)+" listeners added. Use emitter.setMaxListeners() to increase limit");d.name="MaxListenersExceededWarning",d.emitter=e,d.type=t,d.count=s.length,l=d,i&&i.warn&&i.warn(l)}return e}function p(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,0===arguments.length?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function h(e,t,n){var r={fired:!1,wrapFn:void 0,target:e,type:t,listener:n},i=p.bind(r);return i.listener=n,r.wrapFn=i,i}function g(e,t,n){var r=e._events;if(void 0===r)return[];var i=r[t];return void 0===i?[]:"function"==typeof i?n?[i.listener||i]:[i]:n?function(e){for(var t=new Array(e.length),n=0;n0&&(o=t[0]),o instanceof Error)throw o;var s=new Error("Unhandled error."+(o?" ("+o.message+")":""));throw s.context=o,s}var l=i[e];if(void 0===l)return!1;if("function"==typeof l)a(l,this,t);else{var d=l.length,c=A(l,d);for(n=0;n=0;o--)if(n[o]===t||n[o].listener===t){a=n[o].listener,i=o;break}if(i<0)return this;0===i?n.shift():function(e,t){for(;t+1=0;r--)this.removeListener(e,t[r]);return this},l.prototype.listeners=function(e){return g(this,e,!0)},l.prototype.rawListeners=function(e){return g(this,e,!1)},l.listenerCount=function(e,t){return"function"==typeof e.listenerCount?e.listenerCount(t):m.call(e,t)},l.prototype.listenerCount=m,l.prototype.eventNames=function(){return this._eventsCount>0?r(this._events):[]}},79267:(e,t,n)=>{var r=n(8501),i=n(8575),o=e.exports;for(var a in r)r.hasOwnProperty(a)&&(o[a]=r[a]);function s(e){if("string"==typeof e&&(e=i.parse(e)),e.protocol||(e.protocol="https:"),"https:"!==e.protocol)throw new Error('Protocol "'+e.protocol+'" not supported. Expected "https:"');return e}o.request=function(e,t){return e=s(e),r.request.call(this,e,t)},o.get=function(e,t){return e=s(e),r.get.call(this,e,t)}},94281:e=>{"use strict";var t={};function n(e,n,r){r||(r=Error);var i=function(e){var t,r;function i(t,r,i){return e.call(this,function(e,t,r){return"string"==typeof n?n:n(e,t,r)}(t,r,i))||this}return r=e,(t=i).prototype=Object.create(r.prototype),t.prototype.constructor=t,t.__proto__=r,i}(r);i.prototype.name=r.name,i.prototype.code=e,t[e]=i}function r(e,t){if(Array.isArray(e)){var n=e.length;return e=e.map((function(e){return String(e)})),n>2?"one of ".concat(t," ").concat(e.slice(0,n-1).join(", "),", or ")+e[n-1]:2===n?"one of ".concat(t," ").concat(e[0]," or ").concat(e[1]):"of ".concat(t," ").concat(e[0])}return"of ".concat(t," ").concat(String(e))}n("ERR_INVALID_OPT_VALUE",(function(e,t){return'The value "'+t+'" is invalid for option "'+e+'"'}),TypeError),n("ERR_INVALID_ARG_TYPE",(function(e,t,n){var i,o,a,s,l;if("string"==typeof t&&(o="not ",t.substr(0,4)===o)?(i="must not be",t=t.replace(/^not /,"")):i="must be",function(e,t,n){return(void 0===n||n>e.length)&&(n=e.length),e.substring(n-9,n)===t}(e," argument"))a="The ".concat(e," ").concat(i," ").concat(r(t,"type"));else{var d=("number"!=typeof l&&(l=0),l+1>(s=e).length||-1===s.indexOf(".",l)?"argument":"property");a='The "'.concat(e,'" ').concat(d," ").concat(i," ").concat(r(t,"type"))}return a+". Received type ".concat(typeof n)}),TypeError),n("ERR_STREAM_PUSH_AFTER_EOF","stream.push() after EOF"),n("ERR_METHOD_NOT_IMPLEMENTED",(function(e){return"The "+e+" method is not implemented"})),n("ERR_STREAM_PREMATURE_CLOSE","Premature close"),n("ERR_STREAM_DESTROYED",(function(e){return"Cannot call "+e+" after a stream was destroyed"})),n("ERR_MULTIPLE_CALLBACK","Callback called multiple times"),n("ERR_STREAM_CANNOT_PIPE","Cannot pipe, not readable"),n("ERR_STREAM_WRITE_AFTER_END","write after end"),n("ERR_STREAM_NULL_VALUES","May not write null values to stream",TypeError),n("ERR_UNKNOWN_ENCODING",(function(e){return"Unknown encoding: "+e}),TypeError),n("ERR_STREAM_UNSHIFT_AFTER_END_EVENT","stream.unshift() after end event"),e.exports.q=t},56753:(e,t,n)=>{"use strict";var r=n(34155),i=Object.keys||function(e){var t=[];for(var n in e)t.push(n);return t};e.exports=c;var o=n(79481),a=n(64229);n(35717)(c,o);for(var s=i(a.prototype),l=0;l{"use strict";e.exports=i;var r=n(74605);function i(e){if(!(this instanceof i))return new i(e);r.call(this,e)}n(35717)(i,r),i.prototype._transform=function(e,t,n){n(null,e)}},79481:(e,t,n)=>{"use strict";var r,i=n(34155);e.exports=x,x.ReadableState=E,n(17187).EventEmitter;var o,a=function(e,t){return e.listeners(t).length},s=n(22503),l=n(48764).Buffer,d=(void 0!==n.g?n.g:"undefined"!=typeof window?window:"undefined"!=typeof self?self:{}).Uint8Array||function(){},c=n(94616);o=c&&c.debuglog?c.debuglog("stream"):function(){};var u,f,p,h=n(57327),g=n(61195),m=n(82457).getHighWaterMark,A=n(94281).q,v=A.ERR_INVALID_ARG_TYPE,b=A.ERR_STREAM_PUSH_AFTER_EOF,w=A.ERR_METHOD_NOT_IMPLEMENTED,y=A.ERR_STREAM_UNSHIFT_AFTER_END_EVENT;n(35717)(x,s);var _=g.errorOrDestroy,C=["error","close","destroy","pause","resume"];function E(e,t,i){r=r||n(56753),e=e||{},"boolean"!=typeof i&&(i=t instanceof r),this.objectMode=!!e.objectMode,i&&(this.objectMode=this.objectMode||!!e.readableObjectMode),this.highWaterMark=m(this,e,"readableHighWaterMark",i),this.buffer=new h,this.length=0,this.pipes=null,this.pipesCount=0,this.flowing=null,this.ended=!1,this.endEmitted=!1,this.reading=!1,this.sync=!0,this.needReadable=!1,this.emittedReadable=!1,this.readableListening=!1,this.resumeScheduled=!1,this.paused=!0,this.emitClose=!1!==e.emitClose,this.autoDestroy=!!e.autoDestroy,this.destroyed=!1,this.defaultEncoding=e.defaultEncoding||"utf8",this.awaitDrain=0,this.readingMore=!1,this.decoder=null,this.encoding=null,e.encoding&&(u||(u=n(32553).s),this.decoder=new u(e.encoding),this.encoding=e.encoding)}function x(e){if(r=r||n(56753),!(this instanceof x))return new x(e);var t=this instanceof r;this._readableState=new E(e,this,t),this.readable=!0,e&&("function"==typeof e.read&&(this._read=e.read),"function"==typeof e.destroy&&(this._destroy=e.destroy)),s.call(this)}function k(e,t,n,r,i){o("readableAddChunk",t);var a,s=e._readableState;if(null===t)s.reading=!1,function(e,t){if(o("onEofChunk"),!t.ended){if(t.decoder){var n=t.decoder.end();n&&n.length&&(t.buffer.push(n),t.length+=t.objectMode?1:n.length)}t.ended=!0,t.sync?N(e):(t.needReadable=!1,t.emittedReadable||(t.emittedReadable=!0,O(e)))}}(e,s);else if(i||(a=function(e,t){var n,r;return r=t,l.isBuffer(r)||r instanceof d||"string"==typeof t||void 0===t||e.objectMode||(n=new v("chunk",["string","Buffer","Uint8Array"],t)),n}(s,t)),a)_(e,a);else if(s.objectMode||t&&t.length>0)if("string"==typeof t||s.objectMode||Object.getPrototypeOf(t)===l.prototype||(t=function(e){return l.from(e)}(t)),r)s.endEmitted?_(e,new y):T(e,s,t,!0);else if(s.ended)_(e,new b);else{if(s.destroyed)return!1;s.reading=!1,s.decoder&&!n?(t=s.decoder.write(t),s.objectMode||0!==t.length?T(e,s,t,!1):R(e,s)):T(e,s,t,!1)}else r||(s.reading=!1,R(e,s));return!s.ended&&(s.lengtht.highWaterMark&&(t.highWaterMark=function(e){return e>=S?e=S:(e--,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e++),e}(e)),e<=t.length?e:t.ended?t.length:(t.needReadable=!0,0))}function N(e){var t=e._readableState;o("emitReadable",t.needReadable,t.emittedReadable),t.needReadable=!1,t.emittedReadable||(o("emitReadable",t.flowing),t.emittedReadable=!0,i.nextTick(O,e))}function O(e){var t=e._readableState;o("emitReadable_",t.destroyed,t.length,t.ended),t.destroyed||!t.length&&!t.ended||(e.emit("readable"),t.emittedReadable=!1),t.needReadable=!t.flowing&&!t.ended&&t.length<=t.highWaterMark,j(e)}function R(e,t){t.readingMore||(t.readingMore=!0,i.nextTick(I,e,t))}function I(e,t){for(;!t.reading&&!t.ended&&(t.length0,t.resumeScheduled&&!t.paused?t.flowing=!0:e.listenerCount("data")>0&&e.resume()}function L(e){o("readable nexttick read 0"),e.read(0)}function M(e,t){o("resume",t.reading),t.reading||e.read(0),t.resumeScheduled=!1,e.emit("resume"),j(e),t.flowing&&!t.reading&&e.read(0)}function j(e){var t=e._readableState;for(o("flow",t.flowing);t.flowing&&null!==e.read(););}function D(e,t){return 0===t.length?null:(t.objectMode?n=t.buffer.shift():!e||e>=t.length?(n=t.decoder?t.buffer.join(""):1===t.buffer.length?t.buffer.first():t.buffer.concat(t.length),t.buffer.clear()):n=t.buffer.consume(e,t.decoder),n);var n}function F(e){var t=e._readableState;o("endReadable",t.endEmitted),t.endEmitted||(t.ended=!0,i.nextTick($,t,e))}function $(e,t){if(o("endReadableNT",e.endEmitted,e.length),!e.endEmitted&&0===e.length&&(e.endEmitted=!0,t.readable=!1,t.emit("end"),e.autoDestroy)){var n=t._writableState;(!n||n.autoDestroy&&n.finished)&&t.destroy()}}function U(e,t){for(var n=0,r=e.length;n=t.highWaterMark:t.length>0)||t.ended))return o("read: emitReadable",t.length,t.ended),0===t.length&&t.ended?F(this):N(this),null;if(0===(e=B(e,t))&&t.ended)return 0===t.length&&F(this),null;var r,i=t.needReadable;return o("need readable",i),(0===t.length||t.length-e0?D(e,t):null)?(t.needReadable=t.length<=t.highWaterMark,e=0):(t.length-=e,t.awaitDrain=0),0===t.length&&(t.ended||(t.needReadable=!0),n!==e&&t.ended&&F(this)),null!==r&&this.emit("data",r),r},x.prototype._read=function(e){_(this,new w("_read()"))},x.prototype.pipe=function(e,t){var n=this,r=this._readableState;switch(r.pipesCount){case 0:r.pipes=e;break;case 1:r.pipes=[r.pipes,e];break;default:r.pipes.push(e)}r.pipesCount+=1,o("pipe count=%d opts=%j",r.pipesCount,t);var s=t&&!1===t.end||e===i.stdout||e===i.stderr?g:l;function l(){o("onend"),e.end()}r.endEmitted?i.nextTick(s):n.once("end",s),e.on("unpipe",(function t(i,a){o("onunpipe"),i===n&&a&&!1===a.hasUnpiped&&(a.hasUnpiped=!0,o("cleanup"),e.removeListener("close",p),e.removeListener("finish",h),e.removeListener("drain",d),e.removeListener("error",f),e.removeListener("unpipe",t),n.removeListener("end",l),n.removeListener("end",g),n.removeListener("data",u),c=!0,!r.awaitDrain||e._writableState&&!e._writableState.needDrain||d())}));var d=function(e){return function(){var t=e._readableState;o("pipeOnDrain",t.awaitDrain),t.awaitDrain&&t.awaitDrain--,0===t.awaitDrain&&a(e,"data")&&(t.flowing=!0,j(e))}}(n);e.on("drain",d);var c=!1;function u(t){o("ondata");var i=e.write(t);o("dest.write",i),!1===i&&((1===r.pipesCount&&r.pipes===e||r.pipesCount>1&&-1!==U(r.pipes,e))&&!c&&(o("false write response, pause",r.awaitDrain),r.awaitDrain++),n.pause())}function f(t){o("onerror",t),g(),e.removeListener("error",f),0===a(e,"error")&&_(e,t)}function p(){e.removeListener("finish",h),g()}function h(){o("onfinish"),e.removeListener("close",p),g()}function g(){o("unpipe"),n.unpipe(e)}return n.on("data",u),function(e,t,n){if("function"==typeof e.prependListener)return e.prependListener(t,n);e._events&&e._events[t]?Array.isArray(e._events[t])?e._events[t].unshift(n):e._events[t]=[n,e._events[t]]:e.on(t,n)}(e,"error",f),e.once("close",p),e.once("finish",h),e.emit("pipe",n),r.flowing||(o("pipe resume"),n.resume()),e},x.prototype.unpipe=function(e){var t=this._readableState,n={hasUnpiped:!1};if(0===t.pipesCount)return this;if(1===t.pipesCount)return e&&e!==t.pipes||(e||(e=t.pipes),t.pipes=null,t.pipesCount=0,t.flowing=!1,e&&e.emit("unpipe",this,n)),this;if(!e){var r=t.pipes,i=t.pipesCount;t.pipes=null,t.pipesCount=0,t.flowing=!1;for(var o=0;o0,!1!==r.flowing&&this.resume()):"readable"===e&&(r.endEmitted||r.readableListening||(r.readableListening=r.needReadable=!0,r.flowing=!1,r.emittedReadable=!1,o("on readable",r.length,r.reading),r.length?N(this):r.reading||i.nextTick(L,this))),n},x.prototype.addListener=x.prototype.on,x.prototype.removeListener=function(e,t){var n=s.prototype.removeListener.call(this,e,t);return"readable"===e&&i.nextTick(P,this),n},x.prototype.removeAllListeners=function(e){var t=s.prototype.removeAllListeners.apply(this,arguments);return"readable"!==e&&void 0!==e||i.nextTick(P,this),t},x.prototype.resume=function(){var e=this._readableState;return e.flowing||(o("resume"),e.flowing=!e.readableListening,function(e,t){t.resumeScheduled||(t.resumeScheduled=!0,i.nextTick(M,e,t))}(this,e)),e.paused=!1,this},x.prototype.pause=function(){return o("call pause flowing=%j",this._readableState.flowing),!1!==this._readableState.flowing&&(o("pause"),this._readableState.flowing=!1,this.emit("pause")),this._readableState.paused=!0,this},x.prototype.wrap=function(e){var t=this,n=this._readableState,r=!1;for(var i in e.on("end",(function(){if(o("wrapped end"),n.decoder&&!n.ended){var e=n.decoder.end();e&&e.length&&t.push(e)}t.push(null)})),e.on("data",(function(i){o("wrapped data"),n.decoder&&(i=n.decoder.write(i)),n.objectMode&&null==i||(n.objectMode||i&&i.length)&&(t.push(i)||(r=!0,e.pause()))})),e)void 0===this[i]&&"function"==typeof e[i]&&(this[i]=function(t){return function(){return e[t].apply(e,arguments)}}(i));for(var a=0;a{"use strict";e.exports=c;var r=n(94281).q,i=r.ERR_METHOD_NOT_IMPLEMENTED,o=r.ERR_MULTIPLE_CALLBACK,a=r.ERR_TRANSFORM_ALREADY_TRANSFORMING,s=r.ERR_TRANSFORM_WITH_LENGTH_0,l=n(56753);function d(e,t){var n=this._transformState;n.transforming=!1;var r=n.writecb;if(null===r)return this.emit("error",new o);n.writechunk=null,n.writecb=null,null!=t&&this.push(t),r(e);var i=this._readableState;i.reading=!1,(i.needReadable||i.length{"use strict";var r,i=n(34155);function o(e){var t=this;this.next=null,this.entry=null,this.finish=function(){!function(e,t,n){var r=e.entry;for(e.entry=null;r;){var i=r.callback;t.pendingcb--,i(undefined),r=r.next}t.corkedRequestsFree.next=e}(t,e)}}e.exports=x,x.WritableState=E;var a,s={deprecate:n(94927)},l=n(22503),d=n(48764).Buffer,c=(void 0!==n.g?n.g:"undefined"!=typeof window?window:"undefined"!=typeof self?self:{}).Uint8Array||function(){},u=n(61195),f=n(82457).getHighWaterMark,p=n(94281).q,h=p.ERR_INVALID_ARG_TYPE,g=p.ERR_METHOD_NOT_IMPLEMENTED,m=p.ERR_MULTIPLE_CALLBACK,A=p.ERR_STREAM_CANNOT_PIPE,v=p.ERR_STREAM_DESTROYED,b=p.ERR_STREAM_NULL_VALUES,w=p.ERR_STREAM_WRITE_AFTER_END,y=p.ERR_UNKNOWN_ENCODING,_=u.errorOrDestroy;function C(){}function E(e,t,a){r=r||n(56753),e=e||{},"boolean"!=typeof a&&(a=t instanceof r),this.objectMode=!!e.objectMode,a&&(this.objectMode=this.objectMode||!!e.writableObjectMode),this.highWaterMark=f(this,e,"writableHighWaterMark",a),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var s=!1===e.decodeStrings;this.decodeStrings=!s,this.defaultEncoding=e.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(e){!function(e,t){var n=e._writableState,r=n.sync,o=n.writecb;if("function"!=typeof o)throw new m;if(function(e){e.writing=!1,e.writecb=null,e.length-=e.writelen,e.writelen=0}(n),t)!function(e,t,n,r,o){--t.pendingcb,n?(i.nextTick(o,r),i.nextTick(O,e,t),e._writableState.errorEmitted=!0,_(e,r)):(o(r),e._writableState.errorEmitted=!0,_(e,r),O(e,t))}(e,n,r,t,o);else{var a=B(n)||e.destroyed;a||n.corked||n.bufferProcessing||!n.bufferedRequest||S(e,n),r?i.nextTick(T,e,n,a,o):T(e,n,a,o)}}(t,e)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.emitClose=!1!==e.emitClose,this.autoDestroy=!!e.autoDestroy,this.bufferedRequestCount=0,this.corkedRequestsFree=new o(this)}function x(e){var t=this instanceof(r=r||n(56753));if(!t&&!a.call(x,this))return new x(e);this._writableState=new E(e,this,t),this.writable=!0,e&&("function"==typeof e.write&&(this._write=e.write),"function"==typeof e.writev&&(this._writev=e.writev),"function"==typeof e.destroy&&(this._destroy=e.destroy),"function"==typeof e.final&&(this._final=e.final)),l.call(this)}function k(e,t,n,r,i,o,a){t.writelen=r,t.writecb=a,t.writing=!0,t.sync=!0,t.destroyed?t.onwrite(new v("write")):n?e._writev(i,t.onwrite):e._write(i,o,t.onwrite),t.sync=!1}function T(e,t,n,r){n||function(e,t){0===t.length&&t.needDrain&&(t.needDrain=!1,e.emit("drain"))}(e,t),t.pendingcb--,r(),O(e,t)}function S(e,t){t.bufferProcessing=!0;var n=t.bufferedRequest;if(e._writev&&n&&n.next){var r=t.bufferedRequestCount,i=new Array(r),a=t.corkedRequestsFree;a.entry=n;for(var s=0,l=!0;n;)i[s]=n,n.isBuf||(l=!1),n=n.next,s+=1;i.allBuffers=l,k(e,t,!0,t.length,i,"",a.finish),t.pendingcb++,t.lastBufferedRequest=null,a.next?(t.corkedRequestsFree=a.next,a.next=null):t.corkedRequestsFree=new o(t),t.bufferedRequestCount=0}else{for(;n;){var d=n.chunk,c=n.encoding,u=n.callback;if(k(e,t,!1,t.objectMode?1:d.length,d,c,u),n=n.next,t.bufferedRequestCount--,t.writing)break}null===n&&(t.lastBufferedRequest=null)}t.bufferedRequest=n,t.bufferProcessing=!1}function B(e){return e.ending&&0===e.length&&null===e.bufferedRequest&&!e.finished&&!e.writing}function N(e,t){e._final((function(n){t.pendingcb--,n&&_(e,n),t.prefinished=!0,e.emit("prefinish"),O(e,t)}))}function O(e,t){var n=B(t);if(n&&(function(e,t){t.prefinished||t.finalCalled||("function"!=typeof e._final||t.destroyed?(t.prefinished=!0,e.emit("prefinish")):(t.pendingcb++,t.finalCalled=!0,i.nextTick(N,e,t)))}(e,t),0===t.pendingcb&&(t.finished=!0,e.emit("finish"),t.autoDestroy))){var r=e._readableState;(!r||r.autoDestroy&&r.endEmitted)&&e.destroy()}return n}n(35717)(x,l),E.prototype.getBuffer=function(){for(var e=this.bufferedRequest,t=[];e;)t.push(e),e=e.next;return t},function(){try{Object.defineProperty(E.prototype,"buffer",{get:s.deprecate((function(){return this.getBuffer()}),"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.","DEP0003")})}catch(e){}}(),"function"==typeof Symbol&&Symbol.hasInstance&&"function"==typeof Function.prototype[Symbol.hasInstance]?(a=Function.prototype[Symbol.hasInstance],Object.defineProperty(x,Symbol.hasInstance,{value:function(e){return!!a.call(this,e)||this===x&&e&&e._writableState instanceof E}})):a=function(e){return e instanceof this},x.prototype.pipe=function(){_(this,new A)},x.prototype.write=function(e,t,n){var r,o=this._writableState,a=!1,s=!o.objectMode&&(r=e,d.isBuffer(r)||r instanceof c);return s&&!d.isBuffer(e)&&(e=function(e){return d.from(e)}(e)),"function"==typeof t&&(n=t,t=null),s?t="buffer":t||(t=o.defaultEncoding),"function"!=typeof n&&(n=C),o.ending?function(e,t){var n=new w;_(e,n),i.nextTick(t,n)}(this,n):(s||function(e,t,n,r){var o;return null===n?o=new b:"string"==typeof n||t.objectMode||(o=new h("chunk",["string","Buffer"],n)),!o||(_(e,o),i.nextTick(r,o),!1)}(this,o,e,n))&&(o.pendingcb++,a=function(e,t,n,r,i,o){if(!n){var a=function(e,t,n){return e.objectMode||!1===e.decodeStrings||"string"!=typeof t||(t=d.from(t,n)),t}(t,r,i);r!==a&&(n=!0,i="buffer",r=a)}var s=t.objectMode?1:r.length;t.length+=s;var l=t.length-1))throw new y(e);return this._writableState.defaultEncoding=e,this},Object.defineProperty(x.prototype,"writableBuffer",{enumerable:!1,get:function(){return this._writableState&&this._writableState.getBuffer()}}),Object.defineProperty(x.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),x.prototype._write=function(e,t,n){n(new g("_write()"))},x.prototype._writev=null,x.prototype.end=function(e,t,n){var r=this._writableState;return"function"==typeof e?(n=e,e=null,t=null):"function"==typeof t&&(n=t,t=null),null!=e&&this.write(e,t),r.corked&&(r.corked=1,this.uncork()),r.ending||function(e,t,n){t.ending=!0,O(e,t),n&&(t.finished?i.nextTick(n):e.once("finish",n)),t.ended=!0,e.writable=!1}(this,r,n),this},Object.defineProperty(x.prototype,"writableLength",{enumerable:!1,get:function(){return this._writableState.length}}),Object.defineProperty(x.prototype,"destroyed",{enumerable:!1,get:function(){return void 0!==this._writableState&&this._writableState.destroyed},set:function(e){this._writableState&&(this._writableState.destroyed=e)}}),x.prototype.destroy=u.destroy,x.prototype._undestroy=u.undestroy,x.prototype._destroy=function(e,t){t(e)}},45850:(e,t,n)=>{"use strict";var r,i=n(34155);function o(e,t,n){return(t=function(e){var t=function(e,t){if("object"!=typeof e||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!=typeof r)return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var a=n(8610),s=Symbol("lastResolve"),l=Symbol("lastReject"),d=Symbol("error"),c=Symbol("ended"),u=Symbol("lastPromise"),f=Symbol("handlePromise"),p=Symbol("stream");function h(e,t){return{value:e,done:t}}function g(e){var t=e[s];if(null!==t){var n=e[p].read();null!==n&&(e[u]=null,e[s]=null,e[l]=null,t(h(n,!1)))}}function m(e){i.nextTick(g,e)}var A=Object.getPrototypeOf((function(){})),v=Object.setPrototypeOf((o(r={get stream(){return this[p]},next:function(){var e=this,t=this[d];if(null!==t)return Promise.reject(t);if(this[c])return Promise.resolve(h(void 0,!0));if(this[p].destroyed)return new Promise((function(t,n){i.nextTick((function(){e[d]?n(e[d]):t(h(void 0,!0))}))}));var n,r=this[u];if(r)n=new Promise(function(e,t){return function(n,r){e.then((function(){t[c]?n(h(void 0,!0)):t[f](n,r)}),r)}}(r,this));else{var o=this[p].read();if(null!==o)return Promise.resolve(h(o,!1));n=new Promise(this[f])}return this[u]=n,n}},Symbol.asyncIterator,(function(){return this})),o(r,"return",(function(){var e=this;return new Promise((function(t,n){e[p].destroy(null,(function(e){e?n(e):t(h(void 0,!0))}))}))})),r),A);e.exports=function(e){var t,n=Object.create(v,(o(t={},p,{value:e,writable:!0}),o(t,s,{value:null,writable:!0}),o(t,l,{value:null,writable:!0}),o(t,d,{value:null,writable:!0}),o(t,c,{value:e._readableState.endEmitted,writable:!0}),o(t,f,{value:function(e,t){var r=n[p].read();r?(n[u]=null,n[s]=null,n[l]=null,e(h(r,!1))):(n[s]=e,n[l]=t)},writable:!0}),t));return n[u]=null,a(e,(function(e){if(e&&"ERR_STREAM_PREMATURE_CLOSE"!==e.code){var t=n[l];return null!==t&&(n[u]=null,n[s]=null,n[l]=null,t(e)),void(n[d]=e)}var r=n[s];null!==r&&(n[u]=null,n[s]=null,n[l]=null,r(h(void 0,!0))),n[c]=!0})),e.on("readable",m.bind(null,n)),n}},57327:(e,t,n)=>{"use strict";function r(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function i(e){for(var t=1;t0?this.tail.next=t:this.head=t,this.tail=t,++this.length}},{key:"unshift",value:function(e){var t={data:e,next:this.head};0===this.length&&(this.tail=t),this.head=t,++this.length}},{key:"shift",value:function(){if(0!==this.length){var e=this.head.data;return 1===this.length?this.head=this.tail=null:this.head=this.head.next,--this.length,e}}},{key:"clear",value:function(){this.head=this.tail=null,this.length=0}},{key:"join",value:function(e){if(0===this.length)return"";for(var t=this.head,n=""+t.data;t=t.next;)n+=e+t.data;return n}},{key:"concat",value:function(e){if(0===this.length)return l.alloc(0);for(var t,n,r,i=l.allocUnsafe(e>>>0),o=this.head,a=0;o;)t=o.data,n=i,r=a,l.prototype.copy.call(t,n,r),a+=o.data.length,o=o.next;return i}},{key:"consume",value:function(e,t){var n;return ei.length?i.length:e;if(o===i.length?r+=i:r+=i.slice(0,e),0==(e-=o)){o===i.length?(++n,t.next?this.head=t.next:this.head=this.tail=null):(this.head=t,t.data=i.slice(o));break}++n}return this.length-=n,r}},{key:"_getBuffer",value:function(e){var t=l.allocUnsafe(e),n=this.head,r=1;for(n.data.copy(t),e-=n.data.length;n=n.next;){var i=n.data,o=e>i.length?i.length:e;if(i.copy(t,t.length-e,0,o),0==(e-=o)){o===i.length?(++r,n.next?this.head=n.next:this.head=this.tail=null):(this.head=n,n.data=i.slice(o));break}++r}return this.length-=r,t}},{key:c,value:function(e,t){return d(this,i(i({},t),{},{depth:0,customInspect:!1}))}}])&&a(t.prototype,n),Object.defineProperty(t,"prototype",{writable:!1}),e}()},61195:(e,t,n)=>{"use strict";var r=n(34155);function i(e,t){a(e,t),o(e)}function o(e){e._writableState&&!e._writableState.emitClose||e._readableState&&!e._readableState.emitClose||e.emit("close")}function a(e,t){e.emit("error",t)}e.exports={destroy:function(e,t){var n=this,s=this._readableState&&this._readableState.destroyed,l=this._writableState&&this._writableState.destroyed;return s||l?(t?t(e):e&&(this._writableState?this._writableState.errorEmitted||(this._writableState.errorEmitted=!0,r.nextTick(a,this,e)):r.nextTick(a,this,e)),this):(this._readableState&&(this._readableState.destroyed=!0),this._writableState&&(this._writableState.destroyed=!0),this._destroy(e||null,(function(e){!t&&e?n._writableState?n._writableState.errorEmitted?r.nextTick(o,n):(n._writableState.errorEmitted=!0,r.nextTick(i,n,e)):r.nextTick(i,n,e):t?(r.nextTick(o,n),t(e)):r.nextTick(o,n)})),this)},undestroy:function(){this._readableState&&(this._readableState.destroyed=!1,this._readableState.reading=!1,this._readableState.ended=!1,this._readableState.endEmitted=!1),this._writableState&&(this._writableState.destroyed=!1,this._writableState.ended=!1,this._writableState.ending=!1,this._writableState.finalCalled=!1,this._writableState.prefinished=!1,this._writableState.finished=!1,this._writableState.errorEmitted=!1)},errorOrDestroy:function(e,t){var n=e._readableState,r=e._writableState;n&&n.autoDestroy||r&&r.autoDestroy?e.destroy(t):e.emit("error",t)}}},8610:(e,t,n)=>{"use strict";var r=n(94281).q.ERR_STREAM_PREMATURE_CLOSE;function i(){}e.exports=function e(t,n,o){if("function"==typeof n)return e(t,null,n);n||(n={}),o=function(e){var t=!1;return function(){if(!t){t=!0;for(var n=arguments.length,r=new Array(n),i=0;i{e.exports=function(){throw new Error("Readable.from is not available in the browser")}},59946:(e,t,n)=>{"use strict";var r,i=n(94281).q,o=i.ERR_MISSING_ARGS,a=i.ERR_STREAM_DESTROYED;function s(e){if(e)throw e}function l(e){e()}function d(e,t){return e.pipe(t)}e.exports=function(){for(var e=arguments.length,t=new Array(e),i=0;i0,(function(e){c||(c=e),e&&f.forEach(l),o||(f.forEach(l),u(c))}))}));return t.reduce(d)}},82457:(e,t,n)=>{"use strict";var r=n(94281).q.ERR_INVALID_OPT_VALUE;e.exports={getHighWaterMark:function(e,t,n,i){var o=function(e,t,n){return null!=e.highWaterMark?e.highWaterMark:t?e[n]:null}(t,i,n);if(null!=o){if(!isFinite(o)||Math.floor(o)!==o||o<0)throw new r(i?n:"highWaterMark",o);return Math.floor(o)}return e.objectMode?16:16384}}},22503:(e,t,n)=>{e.exports=n(17187).EventEmitter},88473:(e,t,n)=>{(t=e.exports=n(79481)).Stream=t,t.Readable=t,t.Writable=n(64229),t.Duplex=n(56753),t.Transform=n(74605),t.PassThrough=n(82725),t.finished=n(8610),t.pipeline=n(59946)},89509:(e,t,n)=>{var r=n(48764),i=r.Buffer;function o(e,t){for(var n in e)t[n]=e[n]}function a(e,t,n){return i(e,t,n)}i.from&&i.alloc&&i.allocUnsafe&&i.allocUnsafeSlow?e.exports=r:(o(r,t),t.Buffer=a),a.prototype=Object.create(i.prototype),o(i,a),a.from=function(e,t,n){if("number"==typeof e)throw new TypeError("Argument must not be a number");return i(e,t,n)},a.alloc=function(e,t,n){if("number"!=typeof e)throw new TypeError("Argument must be a number");var r=i(e);return void 0!==t?"string"==typeof n?r.fill(t,n):r.fill(t):r.fill(0),r},a.allocUnsafe=function(e){if("number"!=typeof e)throw new TypeError("Argument must be a number");return i(e)},a.allocUnsafeSlow=function(e){if("number"!=typeof e)throw new TypeError("Argument must be a number");return r.SlowBuffer(e)}},42830:(e,t,n)=>{e.exports=i;var r=n(17187).EventEmitter;function i(){r.call(this)}n(35717)(i,r),i.Readable=n(79481),i.Writable=n(64229),i.Duplex=n(56753),i.Transform=n(74605),i.PassThrough=n(82725),i.finished=n(8610),i.pipeline=n(59946),i.Stream=i,i.prototype.pipe=function(e,t){var n=this;function i(t){e.writable&&!1===e.write(t)&&n.pause&&n.pause()}function o(){n.readable&&n.resume&&n.resume()}n.on("data",i),e.on("drain",o),e._isStdio||t&&!1===t.end||(n.on("end",s),n.on("close",l));var a=!1;function s(){a||(a=!0,e.end())}function l(){a||(a=!0,"function"==typeof e.destroy&&e.destroy())}function d(e){if(c(),0===r.listenerCount(this,"error"))throw e}function c(){n.removeListener("data",i),e.removeListener("drain",o),n.removeListener("end",s),n.removeListener("close",l),n.removeListener("error",d),e.removeListener("error",d),n.removeListener("end",c),n.removeListener("close",c),e.removeListener("close",c)}return n.on("error",d),e.on("error",d),n.on("end",c),n.on("close",c),e.on("close",c),e.emit("pipe",n),e}},8501:(e,t,n)=>{var r=n(11989),i=n(55676),o=n(47529),a=n(50584),s=n(8575),l=t;l.request=function(e,t){e="string"==typeof e?s.parse(e):o(e);var i=-1===n.g.location.protocol.search(/^https?:$/)?"http:":"",a=e.protocol||i,l=e.hostname||e.host,d=e.port,c=e.path||"/";l&&-1!==l.indexOf(":")&&(l="["+l+"]"),e.url=(l?a+"//"+l:"")+(d?":"+d:"")+c,e.method=(e.method||"GET").toUpperCase(),e.headers=e.headers||{};var u=new r(e);return t&&u.on("response",t),u},l.get=function(e,t){var n=l.request(e,t);return n.end(),n},l.ClientRequest=r,l.IncomingMessage=i.IncomingMessage,l.Agent=function(){},l.Agent.defaultMaxSockets=4,l.globalAgent=new l.Agent,l.STATUS_CODES=a,l.METHODS=["CHECKOUT","CONNECT","COPY","DELETE","GET","HEAD","LOCK","M-SEARCH","MERGE","MKACTIVITY","MKCOL","MOVE","NOTIFY","OPTIONS","PATCH","POST","PROPFIND","PROPPATCH","PURGE","PUT","REPORT","SEARCH","SUBSCRIBE","TRACE","UNLOCK","UNSUBSCRIBE"]},8725:(e,t,n)=>{var r;function i(){if(void 0!==r)return r;if(n.g.XMLHttpRequest){r=new n.g.XMLHttpRequest;try{r.open("GET",n.g.XDomainRequest?"/":"https://example.com")}catch(e){r=null}}else r=null;return r}function o(e){var t=i();if(!t)return!1;try{return t.responseType=e,t.responseType===e}catch(e){}return!1}function a(e){return"function"==typeof e}t.fetch=a(n.g.fetch)&&a(n.g.ReadableStream),t.writableStream=a(n.g.WritableStream),t.abortController=a(n.g.AbortController),t.arraybuffer=t.fetch||o("arraybuffer"),t.msstream=!t.fetch&&o("ms-stream"),t.mozchunkedarraybuffer=!t.fetch&&o("moz-chunked-arraybuffer"),t.overrideMimeType=t.fetch||!!i()&&a(i().overrideMimeType),r=null},11989:(e,t,n)=>{var r=n(48764).Buffer,i=n(34155),o=n(8725),a=n(35717),s=n(55676),l=n(88473),d=s.IncomingMessage,c=s.readyStates,u=e.exports=function(e){var t,n=this;l.Writable.call(n),n._opts=e,n._body=[],n._headers={},e.auth&&n.setHeader("Authorization","Basic "+r.from(e.auth).toString("base64")),Object.keys(e.headers).forEach((function(t){n.setHeader(t,e.headers[t])}));var i=!0;if("disable-fetch"===e.mode||"requestTimeout"in e&&!o.abortController)i=!1,t=!0;else if("prefer-streaming"===e.mode)t=!1;else if("allow-wrong-content-type"===e.mode)t=!o.overrideMimeType;else{if(e.mode&&"default"!==e.mode&&"prefer-fast"!==e.mode)throw new Error("Invalid value for opts.mode");t=!0}n._mode=function(e,t){return o.fetch&&t?"fetch":o.mozchunkedarraybuffer?"moz-chunked-arraybuffer":o.msstream?"ms-stream":o.arraybuffer&&e?"arraybuffer":"text"}(t,i),n._fetchTimer=null,n._socketTimeout=null,n._socketTimer=null,n.on("finish",(function(){n._onFinish()}))};a(u,l.Writable),u.prototype.setHeader=function(e,t){var n=e.toLowerCase();-1===f.indexOf(n)&&(this._headers[n]={name:e,value:t})},u.prototype.getHeader=function(e){var t=this._headers[e.toLowerCase()];return t?t.value:null},u.prototype.removeHeader=function(e){delete this._headers[e.toLowerCase()]},u.prototype._onFinish=function(){var e=this;if(!e._destroyed){var t=e._opts;"timeout"in t&&0!==t.timeout&&e.setTimeout(t.timeout);var r=e._headers,a=null;"GET"!==t.method&&"HEAD"!==t.method&&(a=new Blob(e._body,{type:(r["content-type"]||{}).value||""}));var s=[];if(Object.keys(r).forEach((function(e){var t=r[e].name,n=r[e].value;Array.isArray(n)?n.forEach((function(e){s.push([t,e])})):s.push([t,n])})),"fetch"===e._mode){var l=null;if(o.abortController){var d=new AbortController;l=d.signal,e._fetchAbortController=d,"requestTimeout"in t&&0!==t.requestTimeout&&(e._fetchTimer=n.g.setTimeout((function(){e.emit("requestTimeout"),e._fetchAbortController&&e._fetchAbortController.abort()}),t.requestTimeout))}n.g.fetch(e._opts.url,{method:e._opts.method,headers:s,body:a||void 0,mode:"cors",credentials:t.withCredentials?"include":"same-origin",signal:l}).then((function(t){e._fetchResponse=t,e._resetTimers(!1),e._connect()}),(function(t){e._resetTimers(!0),e._destroyed||e.emit("error",t)}))}else{var u=e._xhr=new n.g.XMLHttpRequest;try{u.open(e._opts.method,e._opts.url,!0)}catch(t){return void i.nextTick((function(){e.emit("error",t)}))}"responseType"in u&&(u.responseType=e._mode),"withCredentials"in u&&(u.withCredentials=!!t.withCredentials),"text"===e._mode&&"overrideMimeType"in u&&u.overrideMimeType("text/plain; charset=x-user-defined"),"requestTimeout"in t&&(u.timeout=t.requestTimeout,u.ontimeout=function(){e.emit("requestTimeout")}),s.forEach((function(e){u.setRequestHeader(e[0],e[1])})),e._response=null,u.onreadystatechange=function(){switch(u.readyState){case c.LOADING:case c.DONE:e._onXHRProgress()}},"moz-chunked-arraybuffer"===e._mode&&(u.onprogress=function(){e._onXHRProgress()}),u.onerror=function(){e._destroyed||(e._resetTimers(!0),e.emit("error",new Error("XHR error")))};try{u.send(a)}catch(t){return void i.nextTick((function(){e.emit("error",t)}))}}}},u.prototype._onXHRProgress=function(){var e=this;e._resetTimers(!1),function(e){try{var t=e.status;return null!==t&&0!==t}catch(e){return!1}}(e._xhr)&&!e._destroyed&&(e._response||e._connect(),e._response._onXHRProgress(e._resetTimers.bind(e)))},u.prototype._connect=function(){var e=this;e._destroyed||(e._response=new d(e._xhr,e._fetchResponse,e._mode,e._resetTimers.bind(e)),e._response.on("error",(function(t){e.emit("error",t)})),e.emit("response",e._response))},u.prototype._write=function(e,t,n){this._body.push(e),n()},u.prototype._resetTimers=function(e){var t=this;n.g.clearTimeout(t._socketTimer),t._socketTimer=null,e?(n.g.clearTimeout(t._fetchTimer),t._fetchTimer=null):t._socketTimeout&&(t._socketTimer=n.g.setTimeout((function(){t.emit("timeout")}),t._socketTimeout))},u.prototype.abort=u.prototype.destroy=function(e){var t=this;t._destroyed=!0,t._resetTimers(!0),t._response&&(t._response._destroyed=!0),t._xhr?t._xhr.abort():t._fetchAbortController&&t._fetchAbortController.abort(),e&&t.emit("error",e)},u.prototype.end=function(e,t,n){"function"==typeof e&&(n=e,e=void 0),l.Writable.prototype.end.call(this,e,t,n)},u.prototype.setTimeout=function(e,t){var n=this;t&&n.once("timeout",t),n._socketTimeout=e,n._resetTimers(!1)},u.prototype.flushHeaders=function(){},u.prototype.setNoDelay=function(){},u.prototype.setSocketKeepAlive=function(){};var f=["accept-charset","accept-encoding","access-control-request-headers","access-control-request-method","connection","content-length","cookie","cookie2","date","dnt","expect","host","keep-alive","origin","referer","te","trailer","transfer-encoding","upgrade","via"]},55676:(e,t,n)=>{var r=n(34155),i=n(48764).Buffer,o=n(8725),a=n(35717),s=n(88473),l=t.readyStates={UNSENT:0,OPENED:1,HEADERS_RECEIVED:2,LOADING:3,DONE:4},d=t.IncomingMessage=function(e,t,n,a){var l=this;if(s.Readable.call(l),l._mode=n,l.headers={},l.rawHeaders=[],l.trailers={},l.rawTrailers=[],l.on("end",(function(){r.nextTick((function(){l.emit("close")}))})),"fetch"===n){if(l._fetchResponse=t,l.url=t.url,l.statusCode=t.status,l.statusMessage=t.statusText,t.headers.forEach((function(e,t){l.headers[t.toLowerCase()]=e,l.rawHeaders.push(t,e)})),o.writableStream){var d=new WritableStream({write:function(e){return a(!1),new Promise((function(t,n){l._destroyed?n():l.push(i.from(e))?t():l._resumeFetch=t}))},close:function(){a(!0),l._destroyed||l.push(null)},abort:function(e){a(!0),l._destroyed||l.emit("error",e)}});try{return void t.body.pipeTo(d).catch((function(e){a(!0),l._destroyed||l.emit("error",e)}))}catch(e){}}var c=t.body.getReader();!function e(){c.read().then((function(t){l._destroyed||(a(t.done),t.done?l.push(null):(l.push(i.from(t.value)),e()))})).catch((function(e){a(!0),l._destroyed||l.emit("error",e)}))}()}else if(l._xhr=e,l._pos=0,l.url=e.responseURL,l.statusCode=e.status,l.statusMessage=e.statusText,e.getAllResponseHeaders().split(/\r?\n/).forEach((function(e){var t=e.match(/^([^:]+):\s*(.*)/);if(t){var n=t[1].toLowerCase();"set-cookie"===n?(void 0===l.headers[n]&&(l.headers[n]=[]),l.headers[n].push(t[2])):void 0!==l.headers[n]?l.headers[n]+=", "+t[2]:l.headers[n]=t[2],l.rawHeaders.push(t[1],t[2])}})),l._charset="x-user-defined",!o.overrideMimeType){var u=l.rawHeaders["mime-type"];if(u){var f=u.match(/;\s*charset=([^;])(;|$)/);f&&(l._charset=f[1].toLowerCase())}l._charset||(l._charset="utf-8")}};a(d,s.Readable),d.prototype._read=function(){var e=this._resumeFetch;e&&(this._resumeFetch=null,e())},d.prototype._onXHRProgress=function(e){var t=this,r=t._xhr,o=null;switch(t._mode){case"text":if((o=r.responseText).length>t._pos){var a=o.substr(t._pos);if("x-user-defined"===t._charset){for(var s=i.alloc(a.length),d=0;dt._pos&&(t.push(i.from(new Uint8Array(c.result.slice(t._pos)))),t._pos=c.result.byteLength)},c.onload=function(){e(!0),t.push(null)},c.readAsArrayBuffer(o)}t._xhr.readyState===l.DONE&&"ms-stream"!==t._mode&&(e(!0),t.push(null))}},32553:(e,t,n)=>{"use strict";var r=n(89509).Buffer,i=r.isEncoding||function(e){switch((e=""+e)&&e.toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":case"raw":return!0;default:return!1}};function o(e){var t;switch(this.encoding=function(e){var t=function(e){if(!e)return"utf8";for(var t;;)switch(e){case"utf8":case"utf-8":return"utf8";case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return"utf16le";case"latin1":case"binary":return"latin1";case"base64":case"ascii":case"hex":return e;default:if(t)return;e=(""+e).toLowerCase(),t=!0}}(e);if("string"!=typeof t&&(r.isEncoding===i||!i(e)))throw new Error("Unknown encoding: "+e);return t||e}(e),this.encoding){case"utf16le":this.text=l,this.end=d,t=4;break;case"utf8":this.fillLast=s,t=4;break;case"base64":this.text=c,this.end=u,t=3;break;default:return this.write=f,void(this.end=p)}this.lastNeed=0,this.lastTotal=0,this.lastChar=r.allocUnsafe(t)}function a(e){return e<=127?0:e>>5==6?2:e>>4==14?3:e>>3==30?4:e>>6==2?-1:-2}function s(e){var t=this.lastTotal-this.lastNeed,n=function(e,t,n){if(128!=(192&t[0]))return e.lastNeed=0,"�";if(e.lastNeed>1&&t.length>1){if(128!=(192&t[1]))return e.lastNeed=1,"�";if(e.lastNeed>2&&t.length>2&&128!=(192&t[2]))return e.lastNeed=2,"�"}}(this,e);return void 0!==n?n:this.lastNeed<=e.length?(e.copy(this.lastChar,t,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal)):(e.copy(this.lastChar,t,0,e.length),void(this.lastNeed-=e.length))}function l(e,t){if((e.length-t)%2==0){var n=e.toString("utf16le",t);if(n){var r=n.charCodeAt(n.length-1);if(r>=55296&&r<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1],n.slice(0,-1)}return n}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=e[e.length-1],e.toString("utf16le",t,e.length-1)}function d(e){var t=e&&e.length?this.write(e):"";if(this.lastNeed){var n=this.lastTotal-this.lastNeed;return t+this.lastChar.toString("utf16le",0,n)}return t}function c(e,t){var n=(e.length-t)%3;return 0===n?e.toString("base64",t):(this.lastNeed=3-n,this.lastTotal=3,1===n?this.lastChar[0]=e[e.length-1]:(this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1]),e.toString("base64",t,e.length-n))}function u(e){var t=e&&e.length?this.write(e):"";return this.lastNeed?t+this.lastChar.toString("base64",0,3-this.lastNeed):t}function f(e){return e.toString(this.encoding)}function p(e){return e&&e.length?this.write(e):""}t.s=o,o.prototype.write=function(e){if(0===e.length)return"";var t,n;if(this.lastNeed){if(void 0===(t=this.fillLast(e)))return"";n=this.lastNeed,this.lastNeed=0}else n=0;return n=0?(i>0&&(e.lastNeed=i-1),i):--r=0?(i>0&&(e.lastNeed=i-2),i):--r=0?(i>0&&(2===i?i=0:e.lastNeed=i-3),i):0}(this,e,t);if(!this.lastNeed)return e.toString("utf8",t);this.lastTotal=n;var r=e.length-(n-this.lastNeed);return e.copy(this.lastChar,0,r),e.toString("utf8",t,r)},o.prototype.fillLast=function(e){if(this.lastNeed<=e.length)return e.copy(this.lastChar,this.lastTotal-this.lastNeed,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);e.copy(this.lastChar,this.lastTotal-this.lastNeed,0,e.length),this.lastNeed-=e.length}},94927:(e,t,n)=>{var r=n(25108);function i(e){try{if(!n.g.localStorage)return!1}catch(e){return!1}var t=n.g.localStorage[e];return null!=t&&"true"===String(t).toLowerCase()}e.exports=function(e,t){if(i("noDeprecation"))return e;var n=!1;return function(){if(!n){if(i("throwDeprecation"))throw new Error(t);i("traceDeprecation")?r.trace(t):r.warn(t),n=!0}return e.apply(this,arguments)}}},47529:e=>{e.exports=function(){for(var e={},n=0;n{"use strict";e.exports="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGhlaWdodD0iMTYiIHdpZHRoPSIxNiI+CiAgPHBhdGggZD0iTTE0IDEyLjNMMTIuMyAxNCA4IDkuNyAzLjcgMTQgMiAxMi4zIDYuMyA4IDIgMy43IDMuNyAyIDggNi4zIDEyLjMgMiAxNCAzLjcgOS43IDh6Ii8+Cjwvc3ZnPgo="},90888:e=>{"use strict";e.exports="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGhlaWdodD0iMTYiIHdpZHRoPSIxNiI+CiAgPHBhdGggZD0iTTE0IDEyLjNMMTIuMyAxNCA4IDkuNyAzLjcgMTQgMiAxMi4zIDYuMyA4IDIgMy43IDMuNyAyIDggNi4zIDEyLjMgMiAxNCAzLjcgOS43IDh6IiBzdHlsZT0iZmlsbC1vcGFjaXR5OjE7ZmlsbDojZmZmZmZmIi8+Cjwvc3ZnPgo="},24654:()=>{},52361:()=>{},94616:()=>{},5656:(e,t,n)=>{"use strict";n.d(t,{$B:()=>P,DT:()=>A,G7:()=>st,RL:()=>$,Ti:()=>H,Tv:()=>B,_o:()=>M,cd:()=>dt,e4:()=>R,gt:()=>L,h7:()=>k,m0:()=>E,oE:()=>ct,p$:()=>v,p4:()=>b,pC:()=>F,qq:()=>C,rp:()=>D,sS:()=>m,tB:()=>T,w4:()=>x,y3:()=>w,zu:()=>S});var r=n(77958),i=n(17499),o=n(31352),a=n(62520),s=n(65358),l=n(79753),d=n(14596);const c=null===(u=(0,r.ts)())?(0,i.IY)().setApp("files").build():(0,i.IY)().setApp("files").setUid(u.uid).build();var u;class f{_entries=[];registerEntry(e){this.validateEntry(e),this._entries.push(e)}unregisterEntry(e){const t="string"==typeof e?this.getEntryIndex(e):this.getEntryIndex(e.id);-1!==t?this._entries.splice(t,1):c.warn("Entry not found, nothing removed",{entry:e,entries:this.getEntries()})}getEntries(e){return e?this._entries.filter((t=>"function"!=typeof t.enabled||t.enabled(e))):this._entries}getEntryIndex(e){return this._entries.findIndex((t=>t.id===e))}validateEntry(e){if(!e.id||!e.displayName||!e.iconSvgInline&&!e.iconClass||!e.handler)throw new Error("Invalid entry");if("string"!=typeof e.id||"string"!=typeof e.displayName)throw new Error("Invalid id or displayName property");if(e.iconClass&&"string"!=typeof e.iconClass||e.iconSvgInline&&"string"!=typeof e.iconSvgInline)throw new Error("Invalid icon provided");if(void 0!==e.enabled&&"function"!=typeof e.enabled)throw new Error("Invalid enabled property");if("function"!=typeof e.handler)throw new Error("Invalid handler property");if("order"in e&&"number"!=typeof e.order)throw new Error("Invalid order property");if(-1!==this.getEntryIndex(e.id))throw new Error("Duplicate entry")}}const p=function(){return typeof window._nc_newfilemenu>"u"&&(window._nc_newfilemenu=new f,c.debug("NewFileMenu initialized")),window._nc_newfilemenu},h=["B","KB","MB","GB","TB","PB"],g=["B","KiB","MiB","GiB","TiB","PiB"];function m(e,t=!1,n=!1,r=!1){n=n&&!r,"string"==typeof e&&(e=Number(e));let i=e>0?Math.floor(Math.log(e)/Math.log(r?1e3:1024)):0;i=Math.min((n?g.length:h.length)-1,i);const a=n?g[i]:h[i];let s=(e/Math.pow(r?1e3:1024,i)).toFixed(1);return!0===t&&0===i?("0.0"!==s?"< 1 ":"0 ")+(n?g[1]:h[1]):(s=i<2?parseFloat(s).toFixed(0):parseFloat(s).toLocaleString((0,o.aj)()),s+" "+a)}var A=(e=>(e.DEFAULT="default",e.HIDDEN="hidden",e))(A||{});class v{_action;constructor(e){this.validateAction(e),this._action=e}get id(){return this._action.id}get displayName(){return this._action.displayName}get title(){return this._action.title}get iconSvgInline(){return this._action.iconSvgInline}get enabled(){return this._action.enabled}get exec(){return this._action.exec}get execBatch(){return this._action.execBatch}get order(){return this._action.order}get parent(){return this._action.parent}get default(){return this._action.default}get inline(){return this._action.inline}get renderInline(){return this._action.renderInline}validateAction(e){if(!e.id||"string"!=typeof e.id)throw new Error("Invalid id");if(!e.displayName||"function"!=typeof e.displayName)throw new Error("Invalid displayName function");if("title"in e&&"function"!=typeof e.title)throw new Error("Invalid title function");if(!e.iconSvgInline||"function"!=typeof e.iconSvgInline)throw new Error("Invalid iconSvgInline function");if(!e.exec||"function"!=typeof e.exec)throw new Error("Invalid exec function");if("enabled"in e&&"function"!=typeof e.enabled)throw new Error("Invalid enabled function");if("execBatch"in e&&"function"!=typeof e.execBatch)throw new Error("Invalid execBatch function");if("order"in e&&"number"!=typeof e.order)throw new Error("Invalid order");if("parent"in e&&"string"!=typeof e.parent)throw new Error("Invalid parent");if(e.default&&!Object.values(A).includes(e.default))throw new Error("Invalid default");if("inline"in e&&"function"!=typeof e.inline)throw new Error("Invalid inline function");if("renderInline"in e&&"function"!=typeof e.renderInline)throw new Error("Invalid renderInline function")}}const b=function(e){typeof window._nc_fileactions>"u"&&(window._nc_fileactions=[],c.debug("FileActions initialized")),window._nc_fileactions.find((t=>t.id===e.id))?c.error(`FileAction ${e.id} already registered`,{action:e}):window._nc_fileactions.push(e)};var w=(e=>(e[e.NONE=0]="NONE",e[e.CREATE=4]="CREATE",e[e.READ=1]="READ",e[e.UPDATE=2]="UPDATE",e[e.DELETE=8]="DELETE",e[e.SHARE=16]="SHARE",e[e.ALL=31]="ALL",e))(w||{});const y=["d:getcontentlength","d:getcontenttype","d:getetag","d:getlastmodified","d:quota-available-bytes","d:resourcetype","nc:has-preview","nc:is-encrypted","nc:mount-type","nc:share-attributes","oc:comments-unread","oc:favorite","oc:fileid","oc:owner-display-name","oc:owner-id","oc:permissions","oc:share-types","oc:size","ocs:share-permissions"],_={d:"DAV:",nc:"http://nextcloud.org/ns",oc:"http://owncloud.org/ns",ocs:"http://open-collaboration-services.org/ns"},C=function(e,t={nc:"http://nextcloud.org/ns"}){typeof window._nc_dav_properties>"u"&&(window._nc_dav_properties=[...y],window._nc_dav_namespaces={..._});const n={...window._nc_dav_namespaces,...t};return window._nc_dav_properties.find((t=>t===e))?(c.error(`${e} already registered`,{prop:e}),!1):e.startsWith("<")||2!==e.split(":").length?(c.error(`${e} is not valid. See example: 'oc:fileid'`,{prop:e}),!1):n[e.split(":")[0]]?(window._nc_dav_properties.push(e),window._nc_dav_namespaces=n,!0):(c.error(`${e} namespace unknown`,{prop:e,namespaces:n}),!1)},E=function(){return typeof window._nc_dav_properties>"u"&&(window._nc_dav_properties=[...y]),window._nc_dav_properties.map((e=>`<${e} />`)).join(" ")},x=function(){return typeof window._nc_dav_namespaces>"u"&&(window._nc_dav_namespaces={..._}),Object.keys(window._nc_dav_namespaces).map((e=>`xmlns:${e}="${window._nc_dav_namespaces?.[e]}"`)).join(" ")},k=function(){return`\n\t\t\n\t\t\t\n\t\t\t\t${E()}\n\t\t\t\n\t\t`},T=function(e){return`\n\n\t\n\t\t\n\t\t\t\n\t\t\t\t${E()}\n\t\t\t\n\t\t\n\t\t\n\t\t\t\n\t\t\t\t/files/${(0,r.ts)()?.uid}/\n\t\t\t\tinfinity\n\t\t\t\n\t\t\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\thttpd/unix-directory\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t0\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t${e}\n\t\t\t\t\n\t\t\t\n\t\t\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\n\t\t\n\t\t\t100\n\t\t\t0\n\t\t\n\t\n`},S=function(e=""){let t=w.NONE;return e&&((e.includes("C")||e.includes("K"))&&(t|=w.CREATE),e.includes("G")&&(t|=w.READ),(e.includes("W")||e.includes("N")||e.includes("V"))&&(t|=w.UPDATE),e.includes("D")&&(t|=w.DELETE),e.includes("R")&&(t|=w.SHARE)),t};var B=(e=>(e.Folder="folder",e.File="file",e))(B||{});const N=function(e,t){return null!==e.match(t)},O=(e,t)=>{if(e.id&&"number"!=typeof e.id)throw new Error("Invalid id type of value");if(!e.source)throw new Error("Missing mandatory source");try{new URL(e.source)}catch{throw new Error("Invalid source format, source must be a valid URL")}if(!e.source.startsWith("http"))throw new Error("Invalid source format, only http(s) is supported");if(e.mtime&&!(e.mtime instanceof Date))throw new Error("Invalid mtime type");if(e.crtime&&!(e.crtime instanceof Date))throw new Error("Invalid crtime type");if(!e.mime||"string"!=typeof e.mime||!e.mime.match(/^[-\w.]+\/[-+\w.]+$/gi))throw new Error("Missing or invalid mandatory mime");if("size"in e&&"number"!=typeof e.size&&void 0!==e.size)throw new Error("Invalid size type");if("permissions"in e&&void 0!==e.permissions&&!("number"==typeof e.permissions&&e.permissions>=w.NONE&&e.permissions<=w.ALL))throw new Error("Invalid permissions");if(e.owner&&null!==e.owner&&"string"!=typeof e.owner)throw new Error("Invalid owner type");if(e.attributes&&"object"!=typeof e.attributes)throw new Error("Invalid attributes type");if(e.root&&"string"!=typeof e.root)throw new Error("Invalid root type");if(e.root&&!e.root.startsWith("/"))throw new Error("Root must start with a leading slash");if(e.root&&!e.source.includes(e.root))throw new Error("Root must be part of the source");if(e.root&&N(e.source,t)){const n=e.source.match(t)[0];if(!e.source.includes((0,a.join)(n,e.root)))throw new Error("The root must be relative to the service. e.g /files/emma")}if(e.status&&!Object.values(R).includes(e.status))throw new Error("Status must be a valid NodeStatus")};var R=(e=>(e.NEW="new",e.FAILED="failed",e.LOADING="loading",e.LOCKED="locked",e))(R||{});class I{_data;_attributes;_knownDavService=/(remote|public)\.php\/(web)?dav/i;constructor(e,t){O(e,t||this._knownDavService),this._data=e;const n={set:(e,t,n)=>(this.updateMtime(),Reflect.set(e,t,n)),deleteProperty:(e,t)=>(this.updateMtime(),Reflect.deleteProperty(e,t))};this._attributes=new Proxy(e.attributes||{},n),delete this._data.attributes,t&&(this._knownDavService=t)}get source(){return this._data.source.replace(/\/$/i,"")}get encodedSource(){const{origin:e}=new URL(this.source);return e+(0,s.Ec)(this.source.slice(e.length))}get basename(){return(0,a.basename)(this.source)}get extension(){return(0,a.extname)(this.source)}get dirname(){if(this.root){const e=this.source.indexOf(this.root);return(0,a.dirname)(this.source.slice(e+this.root.length)||"/")}const e=new URL(this.source);return(0,a.dirname)(e.pathname)}get mime(){return this._data.mime}get mtime(){return this._data.mtime}get crtime(){return this._data.crtime}get size(){return this._data.size}get attributes(){return this._attributes}get permissions(){return null!==this.owner||this.isDavRessource?void 0!==this._data.permissions?this._data.permissions:w.NONE:w.READ}get owner(){return this.isDavRessource?this._data.owner:null}get isDavRessource(){return N(this.source,this._knownDavService)}get root(){return this._data.root?this._data.root.replace(/^(.+)\/$/,"$1"):this.isDavRessource&&(0,a.dirname)(this.source).split(this._knownDavService).pop()||null}get path(){if(this.root){const e=this.source.indexOf(this.root);return this.source.slice(e+this.root.length)||"/"}return(this.dirname+"/"+this.basename).replace(/\/\//g,"/")}get fileid(){return this._data?.id||this.attributes?.fileid}get status(){return this._data?.status}set status(e){this._data.status=e}move(e){O({...this._data,source:e},this._knownDavService),this._data.source=e,this.updateMtime()}rename(e){if(e.includes("/"))throw new Error("Invalid basename");this.move((0,a.dirname)(this.source)+"/"+e)}updateMtime(){this._data.mtime&&(this._data.mtime=new Date)}}class P extends I{get type(){return B.File}}class L extends I{constructor(e){super({...e,mime:"httpd/unix-directory"})}get type(){return B.Folder}get extension(){return null}get mime(){return"httpd/unix-directory"}}const M=`/files/${(0,r.ts)()?.uid}`,j=(0,l.generateRemoteUrl)("dav"),D=function(e=j){const t=(0,d.eI)(e);function n(e){t.setHeaders({"X-Requested-With":"XMLHttpRequest",requesttoken:e??""})}return(0,r._S)(n),n((0,r.IH)()),(0,d.lD)().patch("fetch",((e,t)=>{const n=t.headers;return n?.method&&(t.method=n.method,delete n.method),fetch(e,t)})),t},F=async(e,t="/",n=M)=>(await e.getDirectoryContents(`${n}${t}`,{details:!0,data:`\n\t\t\n\t\t\t\n\t\t\t\t${E()}\n\t\t\t\n\t\t\t\n\t\t\t\t1\n\t\t\t\n\t\t`,headers:{method:"REPORT"},includeSelf:!0})).data.filter((e=>e.filename!==t)).map((e=>$(e,n))),$=function(e,t=M,n=j){const i=e.props,o=S(i?.permissions),a=(0,r.ts)()?.uid,s={id:i?.fileid||0,source:`${n}${e.filename}`,mtime:new Date(Date.parse(e.lastmod)),mime:e.mime,size:i?.size||Number.parseInt(i.getcontentlength||"0"),permissions:o,owner:a,root:t,attributes:{...e,...i,hasPreview:i?.["has-preview"]}};return delete s.attributes?.props,"file"===e.type?new P(s):new L(s)};class U{_views=[];_currentView=null;register(e){if(this._views.find((t=>t.id===e.id)))throw new Error(`View id ${e.id} is already registered`);this._views.push(e)}remove(e){const t=this._views.findIndex((t=>t.id===e));-1!==t&&this._views.splice(t,1)}get views(){return this._views}setActive(e){this._currentView=e}get active(){return this._currentView}}const H=function(){return typeof window._nc_navigation>"u"&&(window._nc_navigation=new U,c.debug("Navigation service initialized")),window._nc_navigation};class q{_column;constructor(e){V(e),this._column=e}get id(){return this._column.id}get title(){return this._column.title}get render(){return this._column.render}get sort(){return this._column.sort}get summary(){return this._column.summary}}const V=function(e){if(!e.id||"string"!=typeof e.id)throw new Error("A column id is required");if(!e.title||"string"!=typeof e.title)throw new Error("A column title is required");if(!e.render||"function"!=typeof e.render)throw new Error("A render function is required");if(e.sort&&"function"!=typeof e.sort)throw new Error("Column sortFunction must be a function");if(e.summary&&"function"!=typeof e.summary)throw new Error("Column summary must be a function");return!0};var W={},z={};!function(e){const t=":A-Za-z_\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD",n="["+t+"]["+t+"\\-.\\d\\u00B7\\u0300-\\u036F\\u203F-\\u2040]*",r=new RegExp("^"+n+"$");e.isExist=function(e){return typeof e<"u"},e.isEmptyObject=function(e){return 0===Object.keys(e).length},e.merge=function(e,t,n){if(t){const r=Object.keys(t),i=r.length;for(let o=0;o"u")},e.getAllMatches=function(e,t){const n=[];let r=t.exec(e);for(;r;){const i=[];i.startIndex=t.lastIndex-r[0].length;const o=r.length;for(let e=0;e5&&"xml"===r)return ie("InvalidXml","XML declaration allowed only at the start of the document.",se(e,t));if("?"==e[t]&&">"==e[t+1]){t++;break}continue}return t}function K(e,t){if(e.length>t+5&&"-"===e[t+1]&&"-"===e[t+2]){for(t+=3;t"===e[t+2]){t+=2;break}}else if(e.length>t+8&&"D"===e[t+1]&&"O"===e[t+2]&&"C"===e[t+3]&&"T"===e[t+4]&&"Y"===e[t+5]&&"P"===e[t+6]&&"E"===e[t+7]){let n=1;for(t+=8;t"===e[t]&&(n--,0===n))break}else if(e.length>t+9&&"["===e[t+1]&&"C"===e[t+2]&&"D"===e[t+3]&&"A"===e[t+4]&&"T"===e[t+5]&&"A"===e[t+6]&&"["===e[t+7])for(t+=8;t"===e[t+2]){t+=2;break}return t}W.validate=function(e,t){t=Object.assign({},Z,t);const n=[];let r=!1,i=!1;"\ufeff"===e[0]&&(e=e.substr(1));for(let o=0;o"!==e[o]&&" "!==e[o]&&"\t"!==e[o]&&"\n"!==e[o]&&"\r"!==e[o];o++)l+=e[o];if(l=l.trim(),"/"===l[l.length-1]&&(l=l.substring(0,l.length-1),o--),!ae(l)){let t;return t=0===l.trim().length?"Invalid space after '<'.":"Tag '"+l+"' is an invalid name.",ie("InvalidTag",t,se(e,o))}const d=ee(e,o);if(!1===d)return ie("InvalidAttr","Attributes for '"+l+"' have open quote.",se(e,o));let c=d.value;if(o=d.index,"/"===c[c.length-1]){const n=o-c.length;c=c.substring(0,c.length-1);const i=ne(c,t);if(!0!==i)return ie(i.err.code,i.err.msg,se(e,n+i.err.line));r=!0}else if(s){if(!d.tagClosed)return ie("InvalidTag","Closing tag '"+l+"' doesn't have proper closing.",se(e,o));if(c.trim().length>0)return ie("InvalidTag","Closing tag '"+l+"' can't have attributes or invalid starting.",se(e,a));{const t=n.pop();if(l!==t.tagName){let n=se(e,t.tagStartPos);return ie("InvalidTag","Expected closing tag '"+t.tagName+"' (opened in line "+n.line+", col "+n.col+") instead of closing tag '"+l+"'.",se(e,a))}0==n.length&&(i=!0)}}else{const s=ne(c,t);if(!0!==s)return ie(s.err.code,s.err.msg,se(e,o-c.length+s.err.line));if(!0===i)return ie("InvalidXml","Multiple possible root nodes found.",se(e,o));-1!==t.unpairedTags.indexOf(l)||n.push({tagName:l,tagStartPos:a}),r=!0}for(o++;o0)||ie("InvalidXml","Invalid '"+JSON.stringify(n.map((e=>e.tagName)),null,4).replace(/\r?\n/g,"")+"' found.",{line:1,col:1}):ie("InvalidXml","Start tag expected.",1)};const J='"',Q="'";function ee(e,t){let n="",r="",i=!1;for(;t"===e[t]&&""===r){i=!0;break}n+=e[t]}return""===r&&{value:n,index:t,tagClosed:i}}const te=new RegExp("(\\s*)([^\\s=]+)(\\s*=)?(\\s*(['\"])(([\\s\\S])*?)\\5)?","g");function ne(e,t){const n=Y.getAllMatches(e,te),r={};for(let e=0;e!1,commentPropName:!1,unpairedTags:[],processEntities:!0,htmlEntities:!1,ignoreDeclaration:!1,ignorePiTags:!1,transformTagName:!1,transformAttributeName:!1,updateTag:function(e,t,n){return e}};de.buildOptions=function(e){return Object.assign({},ce,e)},de.defaultOptions=ce;const ue=z;function fe(e,t){let n="";for(;t0?this.child.push({[e.tagname]:e.child,":@":e[":@"]}):this.child.push({[e.tagname]:e.child})}},Ee=function(e,t){const n={};if("O"!==e[t+3]||"C"!==e[t+4]||"T"!==e[t+5]||"Y"!==e[t+6]||"P"!==e[t+7]||"E"!==e[t+8])throw new Error("Invalid Tag instead of DOCTYPE");{t+=9;let r=1,i=!1,o=!1,a="";for(;t"===e[t]){if(o?"-"===e[t-1]&&"-"===e[t-2]&&(o=!1,r--):r--,0===r)break}else"["===e[t]?i=!0:a+=e[t];else{if(i&&he(e,t))t+=7,[entityName,val,t]=fe(e,t+1),-1===val.indexOf("&")&&(n[ve(entityName)]={regx:RegExp(`&${entityName};`,"g"),val});else if(i&&ge(e,t))t+=8;else if(i&&me(e,t))t+=8;else if(i&&Ae(e,t))t+=9;else{if(!pe)throw new Error("Invalid DOCTYPE");o=!0}r++,a=""}if(0!==r)throw new Error("Unclosed DOCTYPE")}return{entities:n,i:t}},xe=function(e,t={}){if(t=Object.assign({},ye,t),!e||"string"!=typeof e)return e;let n=e.trim();if(void 0!==t.skipLike&&t.skipLike.test(n))return e;if(t.hex&&be.test(n))return Number.parseInt(n,16);{const r=we.exec(n);if(r){const i=r[1],o=r[2];let a=function(e){return e&&-1!==e.indexOf(".")&&("."===(e=e.replace(/0+$/,""))?e="0":"."===e[0]?e="0"+e:"."===e[e.length-1]&&(e=e.substr(0,e.length-1))),e}(r[3]);const s=r[4]||r[6];if(!t.leadingZeros&&o.length>0&&i&&"."!==n[2])return e;if(!t.leadingZeros&&o.length>0&&!i&&"."!==n[1])return e;{const r=Number(n),l=""+r;return-1!==l.search(/[eE]/)||s?t.eNotation?r:e:-1!==n.indexOf(".")?"0"===l&&""===a||l===a||i&&l==="-"+a?r:e:o?a===l||i+a===l?r:e:n===l||n===i+l?r:e}}return e}};function ke(e){const t=Object.keys(e);for(let n=0;n0)){a||(e=this.replaceEntitiesValue(e));const r=this.options.tagValueProcessor(t,e,n,i,o);return null==r?e:typeof r!=typeof e||r!==e?r:this.options.trimValues||e.trim()===e?Fe(e,this.options.parseTagValue,this.options.numberParseOptions):e}}function Se(e){if(this.options.removeNSPrefix){const t=e.split(":"),n="/"===e.charAt(0)?"/":"";if("xmlns"===t[0])return"";2===t.length&&(e=n+t[1])}return e}"<((!\\[CDATA\\[([\\s\\S]*?)(]]>))|((NAME:)?(NAME))([^>]*)>|((\\/)(NAME)\\s*>))([^<]*)".replace(/NAME/g,_e.nameRegexp);const Be=new RegExp("([^\\s=]+)\\s*(=\\s*(['\"])([\\s\\S]*?)\\3)?","gm");function Ne(e,t,n){if(!this.options.ignoreAttributes&&"string"==typeof e){const n=_e.getAllMatches(e,Be),r=n.length,i={};for(let e=0;e",o,"Closing Tag is not closed.");let a=e.substring(o+2,t).trim();if(this.options.removeNSPrefix){const e=a.indexOf(":");-1!==e&&(a=a.substr(e+1))}this.options.transformTagName&&(a=this.options.transformTagName(a)),n&&(r=this.saveTextToParentTag(r,n,i));const s=i.substring(i.lastIndexOf(".")+1);if(a&&-1!==this.options.unpairedTags.indexOf(a))throw new Error(`Unpaired tag can not be used as closing tag: `);let l=0;s&&-1!==this.options.unpairedTags.indexOf(s)?(l=i.lastIndexOf(".",i.lastIndexOf(".")-1),this.tagsNodeStack.pop()):l=i.lastIndexOf("."),i=i.substring(0,l),n=this.tagsNodeStack.pop(),r="",o=t}else if("?"===e[o+1]){let t=je(e,o,!1,"?>");if(!t)throw new Error("Pi Tag is not closed.");if(r=this.saveTextToParentTag(r,n,i),!(this.options.ignoreDeclaration&&"?xml"===t.tagName||this.options.ignorePiTags)){const e=new Ce(t.tagName);e.add(this.options.textNodeName,""),t.tagName!==t.tagExp&&t.attrExpPresent&&(e[":@"]=this.buildAttributesMap(t.tagExp,i,t.tagName)),this.addChild(n,e,i)}o=t.closeIndex+1}else if("!--"===e.substr(o+1,3)){const t=Me(e,"--\x3e",o+4,"Comment is not closed.");if(this.options.commentPropName){const a=e.substring(o+4,t-2);r=this.saveTextToParentTag(r,n,i),n.add(this.options.commentPropName,[{[this.options.textNodeName]:a}])}o=t}else if("!D"===e.substr(o+1,2)){const t=Ee(e,o);this.docTypeEntities=t.entities,o=t.i}else if("!["===e.substr(o+1,2)){const t=Me(e,"]]>",o,"CDATA is not closed.")-2,a=e.substring(o+9,t);if(r=this.saveTextToParentTag(r,n,i),this.options.cdataPropName)n.add(this.options.cdataPropName,[{[this.options.textNodeName]:a}]);else{let e=this.parseTextData(a,n.tagname,i,!0,!1,!0);null==e&&(e=""),n.add(this.options.textNodeName,e)}o=t+2}else{let a=je(e,o,this.options.removeNSPrefix),s=a.tagName;const l=a.rawTagName;let d=a.tagExp,c=a.attrExpPresent,u=a.closeIndex;this.options.transformTagName&&(s=this.options.transformTagName(s)),n&&r&&"!xml"!==n.tagname&&(r=this.saveTextToParentTag(r,n,i,!1));const f=n;if(f&&-1!==this.options.unpairedTags.indexOf(f.tagname)&&(n=this.tagsNodeStack.pop(),i=i.substring(0,i.lastIndexOf("."))),s!==t.tagname&&(i+=i?"."+s:s),this.isItStopNode(this.options.stopNodes,i,s)){let t="";if(d.length>0&&d.lastIndexOf("/")===d.length-1)o=a.closeIndex;else if(-1!==this.options.unpairedTags.indexOf(s))o=a.closeIndex;else{const n=this.readStopNodeData(e,l,u+1);if(!n)throw new Error(`Unexpected end of ${l}`);o=n.i,t=n.tagContent}const r=new Ce(s);s!==d&&c&&(r[":@"]=this.buildAttributesMap(d,i,s)),t&&(t=this.parseTextData(t,s,i,!0,c,!0,!0)),i=i.substr(0,i.lastIndexOf(".")),r.add(this.options.textNodeName,t),this.addChild(n,r,i)}else{if(d.length>0&&d.lastIndexOf("/")===d.length-1){"/"===s[s.length-1]?(s=s.substr(0,s.length-1),i=i.substr(0,i.length-1),d=s):d=d.substr(0,d.length-1),this.options.transformTagName&&(s=this.options.transformTagName(s));const e=new Ce(s);s!==d&&c&&(e[":@"]=this.buildAttributesMap(d,i,s)),this.addChild(n,e,i),i=i.substr(0,i.lastIndexOf("."))}else{const e=new Ce(s);this.tagsNodeStack.push(n),s!==d&&c&&(e[":@"]=this.buildAttributesMap(d,i,s)),this.addChild(n,e,i),n=e}r="",o=u}}else r+=e[o];return t.child};function Re(e,t,n){const r=this.options.updateTag(t.tagname,n,t[":@"]);!1===r||("string"==typeof r&&(t.tagname=r),e.addChild(t))}const Ie=function(e){if(this.options.processEntities){for(let t in this.docTypeEntities){const n=this.docTypeEntities[t];e=e.replace(n.regx,n.val)}for(let t in this.lastEntities){const n=this.lastEntities[t];e=e.replace(n.regex,n.val)}if(this.options.htmlEntities)for(let t in this.htmlEntities){const n=this.htmlEntities[t];e=e.replace(n.regex,n.val)}e=e.replace(this.ampEntity.regex,this.ampEntity.val)}return e};function Pe(e,t,n,r){return e&&(void 0===r&&(r=0===Object.keys(t.child).length),void 0!==(e=this.parseTextData(e,t.tagname,n,!1,!!t[":@"]&&0!==Object.keys(t[":@"]).length,r))&&""!==e&&t.add(this.options.textNodeName,e),e=""),e}function Le(e,t,n){const r="*."+n;for(const n in e){const i=e[n];if(r===i||t===i)return!0}return!1}function Me(e,t,n,r){const i=e.indexOf(t,n);if(-1===i)throw new Error(r);return i+t.length-1}function je(e,t,n,r=">"){const i=function(e,t,n=">"){let r,i="";for(let o=t;o",n,`${t} is not closed`);if(e.substring(n+2,o).trim()===t&&(i--,0===i))return{tagContent:e.substring(r,n),i:o};n=o}else if("?"===e[n+1])n=Me(e,"?>",n+1,"StopNode is not closed.");else if("!--"===e.substr(n+1,3))n=Me(e,"--\x3e",n+3,"StopNode is not closed.");else if("!["===e.substr(n+1,2))n=Me(e,"]]>",n,"StopNode is not closed.")-2;else{const r=je(e,n,">");r&&((r&&r.tagName)===t&&"/"!==r.tagExp[r.tagExp.length-1]&&i++,n=r.closeIndex)}}function Fe(e,t,n){if(t&&"string"==typeof e){const t=e.trim();return"true"===t||"false"!==t&&xe(e,n)}return _e.isExist(e)?e:""}var $e={};function Ue(e,t,n){let r;const i={};for(let o=0;o0&&(i[t.textNodeName]=r):void 0!==r&&(i[t.textNodeName]=r),i}function He(e){const t=Object.keys(e);for(let e=0;e"},lt:{regex:/&(lt|#60|#x3C);/g,val:"<"},quot:{regex:/&(quot|#34|#x22);/g,val:'"'}},this.ampEntity={regex:/&(amp|#38|#x26);/g,val:"&"},this.htmlEntities={space:{regex:/&(nbsp|#160);/g,val:" "},cent:{regex:/&(cent|#162);/g,val:"¢"},pound:{regex:/&(pound|#163);/g,val:"£"},yen:{regex:/&(yen|#165);/g,val:"¥"},euro:{regex:/&(euro|#8364);/g,val:"€"},copyright:{regex:/&(copy|#169);/g,val:"©"},reg:{regex:/&(reg|#174);/g,val:"®"},inr:{regex:/&(inr|#8377);/g,val:"₹"}},this.addExternalEntities=ke,this.parseXml=Oe,this.parseTextData=Te,this.resolveNameSpace=Se,this.buildAttributesMap=Ne,this.isItStopNode=Le,this.replaceEntitiesValue=Ie,this.readStopNodeData=De,this.saveTextToParentTag=Pe,this.addChild=Re}},{prettify:Ye}=$e,Ze=W;function Ge(e,t,n,r){let i="",o=!1;for(let a=0;a`,o=!1;continue}if(l===t.commentPropName){i+=r+`\x3c!--${s[l][0][t.textNodeName]}--\x3e`,o=!0;continue}if("?"===l[0]){const e=Ke(s[":@"],t),n="?xml"===l?"":r;let a=s[l][0][t.textNodeName];a=0!==a.length?" "+a:"",i+=n+`<${l}${a}${e}?>`,o=!0;continue}let c=r;""!==c&&(c+=t.indentBy);const u=r+`<${l}${Ke(s[":@"],t)}`,f=Ge(s[l],t,d,c);-1!==t.unpairedTags.indexOf(l)?t.suppressUnpairedNode?i+=u+">":i+=u+"/>":f&&0!==f.length||!t.suppressEmptyNode?f&&f.endsWith(">")?i+=u+`>${f}${r}`:(i+=u+">",f&&""!==r&&(f.includes("/>")||f.includes("`):i+=u+"/>",o=!0}return i}function Xe(e){const t=Object.keys(e);for(let n=0;n0&&t.processEntities)for(let n=0;n0&&(n="\n"),Ge(e,t,"",n)},tt={attributeNamePrefix:"@_",attributesGroupName:!1,textNodeName:"#text",ignoreAttributes:!0,cdataPropName:!1,format:!1,indentBy:" ",suppressEmptyNode:!1,suppressUnpairedNode:!0,suppressBooleanAttributes:!0,tagValueProcessor:function(e,t){return t},attributeValueProcessor:function(e,t){return t},preserveOrder:!1,commentPropName:!1,unpairedTags:[],entities:[{regex:new RegExp("&","g"),val:"&"},{regex:new RegExp(">","g"),val:">"},{regex:new RegExp("<","g"),val:"<"},{regex:new RegExp("'","g"),val:"'"},{regex:new RegExp('"',"g"),val:"""}],processEntities:!0,stopNodes:[],oneListGroup:!1};function nt(e){this.options=Object.assign({},tt,e),this.options.ignoreAttributes||this.options.attributesGroupName?this.isAttribute=function(){return!1}:(this.attrPrefixLen=this.options.attributeNamePrefix.length,this.isAttribute=ot),this.processTextOrObjNode=rt,this.options.format?(this.indentate=it,this.tagEndChar=">\n",this.newLine="\n"):(this.indentate=function(){return""},this.tagEndChar=">",this.newLine="")}function rt(e,t,n){const r=this.j2x(e,n+1);return void 0!==e[this.options.textNodeName]&&1===Object.keys(e).length?this.buildTextValNode(e[this.options.textNodeName],t,r.attrStr,n):this.buildObjectNode(r.val,t,r.attrStr,n)}function it(e){return this.options.indentBy.repeat(e)}function ot(e){return!(!e.startsWith(this.options.attributeNamePrefix)||e===this.options.textNodeName)&&e.substr(this.attrPrefixLen)}nt.prototype.build=function(e){return this.options.preserveOrder?et(e,this.options):(Array.isArray(e)&&this.options.arrayNodeName&&this.options.arrayNodeName.length>1&&(e={[this.options.arrayNodeName]:e}),this.j2x(e,0).val)},nt.prototype.j2x=function(e,t){let n="",r="";for(let i in e)if(Object.prototype.hasOwnProperty.call(e,i))if(typeof e[i]>"u")this.isAttribute(i)&&(r+="");else if(null===e[i])this.isAttribute(i)?r+="":"?"===i[0]?r+=this.indentate(t)+"<"+i+"?"+this.tagEndChar:r+=this.indentate(t)+"<"+i+"/"+this.tagEndChar;else if(e[i]instanceof Date)r+=this.buildTextValNode(e[i],i,"",t);else if("object"!=typeof e[i]){const o=this.isAttribute(i);if(o)n+=this.buildAttrPairStr(o,""+e[i]);else if(i===this.options.textNodeName){let t=this.options.tagValueProcessor(i,""+e[i]);r+=this.replaceEntitiesValue(t)}else r+=this.buildTextValNode(e[i],i,"",t)}else if(Array.isArray(e[i])){const n=e[i].length;let o="";for(let a=0;a"u"||(null===n?"?"===i[0]?r+=this.indentate(t)+"<"+i+"?"+this.tagEndChar:r+=this.indentate(t)+"<"+i+"/"+this.tagEndChar:"object"==typeof n?this.options.oneListGroup?o+=this.j2x(n,t+1).val:o+=this.processTextOrObjNode(n,i,t):o+=this.buildTextValNode(n,i,"",t))}this.options.oneListGroup&&(o=this.buildObjectNode(o,i,"",t)),r+=o}else if(this.options.attributesGroupName&&i===this.options.attributesGroupName){const t=Object.keys(e[i]),r=t.length;for(let o=0;o"+e+i}},nt.prototype.closeTag=function(e){let t="";return-1!==this.options.unpairedTags.indexOf(e)?this.options.suppressUnpairedNode||(t="/"):t=this.options.suppressEmptyNode?"/":`>`+this.newLine;if(!1!==this.options.commentPropName&&t===this.options.commentPropName)return this.indentate(r)+`\x3c!--${e}--\x3e`+this.newLine;if("?"===t[0])return this.indentate(r)+"<"+t+n+"?"+this.tagEndChar;{let i=this.options.tagValueProcessor(t,e);return i=this.replaceEntitiesValue(i),""===i?this.indentate(r)+"<"+t+n+this.closeTag(t)+this.tagEndChar:this.indentate(r)+"<"+t+n+">"+i+"0&&this.options.processEntities)for(let t=0;t0&&(!e.caption||"string"!=typeof e.caption))throw new Error("View caption is required for top-level views and must be a string");if(!e.getContents||"function"!=typeof e.getContents)throw new Error("View getContents is required and must be a function");if(!e.icon||"string"!=typeof e.icon||!function(e){if("string"!=typeof e)throw new TypeError(`Expected a \`string\`, got \`${typeof e}\``);if(0===(e=e.trim()).length||!0!==at.XMLValidator.validate(e))return!1;let t;const n=new at.XMLParser;try{t=n.parse(e)}catch{return!1}return!(!t||!("svg"in t))}(e.icon))throw new Error("View icon is required and must be a valid svg string");if(!("order"in e)||"number"!=typeof e.order)throw new Error("View order is required and must be a number");if(e.columns&&e.columns.forEach((e=>{if(!(e instanceof q))throw new Error("View columns must be an array of Column. Invalid column found")})),e.emptyView&&"function"!=typeof e.emptyView)throw new Error("View emptyView must be a function");if(e.parent&&"string"!=typeof e.parent)throw new Error("View parent must be a string");if("sticky"in e&&"boolean"!=typeof e.sticky)throw new Error("View sticky must be a boolean");if("expanded"in e&&"boolean"!=typeof e.expanded)throw new Error("View expanded must be a boolean");if(e.defaultSortKey&&"string"!=typeof e.defaultSortKey)throw new Error("View defaultSortKey must be a string");return!0},dt=function(e){return p().registerEntry(e)},ct=function(e){return p().unregisterEntry(e)}}},o={};function a(e){var t=o[e];if(void 0!==t)return t.exports;var n=o[e]={id:e,loaded:!1,exports:{}};return i[e].call(n.exports,n,n.exports,a),n.loaded=!0,n.exports}a.m=i,e=[],a.O=(t,n,r,i)=>{if(!n){var o=1/0;for(c=0;c=i)&&Object.keys(a.O).every((e=>a.O[e](n[l])))?n.splice(l--,1):(s=!1,i0&&e[c-1][2]>i;c--)e[c]=e[c-1];e[c]=[n,r,i]},a.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return a.d(t,{a:t}),t},a.d=(e,t)=>{for(var n in t)a.o(t,n)&&!a.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},a.f={},a.e=e=>Promise.all(Object.keys(a.f).reduce(((t,n)=>(a.f[n](e,t),t)),[])),a.u=e=>e+"-"+e+".js?v="+{923:"2686613ba9d88601b889",8321:"8442e3d18a58ee1f612a"}[e],a.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),a.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),n={},r="nextcloud:",a.l=(e,t,i,o)=>{if(n[e])n[e].push(t);else{var s,l;if(void 0!==i)for(var d=document.getElementsByTagName("script"),c=0;c{s.onerror=s.onload=null,clearTimeout(p);var i=n[e];if(delete n[e],s.parentNode&&s.parentNode.removeChild(s),i&&i.forEach((e=>e(r))),t)return t(r)},p=setTimeout(f.bind(null,void 0,{type:"timeout",target:s}),12e4);s.onerror=f.bind(null,s.onerror),s.onload=f.bind(null,s.onload),l&&document.head.appendChild(s)}},a.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},a.nmd=e=>(e.paths=[],e.children||(e.children=[]),e),a.j=9837,(()=>{var e;a.g.importScripts&&(e=a.g.location+"");var t=a.g.document;if(!e&&t&&(t.currentScript&&(e=t.currentScript.src),!e)){var n=t.getElementsByTagName("script");if(n.length)for(var r=n.length-1;r>-1&&!e;)e=n[r--].src}if(!e)throw new Error("Automatic publicPath is not supported in this browser");e=e.replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),a.p=e})(),(()=>{a.b=document.baseURI||self.location.href;var e={9837:0};a.f.j=(t,n)=>{var r=a.o(e,t)?e[t]:void 0;if(0!==r)if(r)n.push(r[2]);else{var i=new Promise(((n,i)=>r=e[t]=[n,i]));n.push(r[2]=i);var o=a.p+a.u(t),s=new Error;a.l(o,(n=>{if(a.o(e,t)&&(0!==(r=e[t])&&(e[t]=void 0),r)){var i=n&&("load"===n.type?"missing":n.type),o=n&&n.target&&n.target.src;s.message="Loading chunk "+t+" failed.\n("+i+": "+o+")",s.name="ChunkLoadError",s.type=i,s.request=o,r[1](s)}}),"chunk-"+t,t)}},a.O.j=t=>0===e[t];var t=(t,n)=>{var r,i,o=n[0],s=n[1],l=n[2],d=0;if(o.some((t=>0!==e[t]))){for(r in s)a.o(s,r)&&(a.m[r]=s[r]);if(l)var c=l(a)}for(t&&t(n);da(34507)));s=a.O(s)})(); +//# sourceMappingURL=files-init.js.map?v=4f4937589088c6a4243d \ No newline at end of file diff --git a/dist/files-init.js.map b/dist/files-init.js.map index 0d8e9affe5630..8509405cd7874 100644 --- a/dist/files-init.js.map +++ b/dist/files-init.js.map @@ -1 +1 @@ -{"version":3,"file":"files-init.js?v=6d6177d634461c03e793","mappings":"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","sources":["webpack:///nextcloud/webpack/runtime/chunk loaded","webpack:///nextcloud/webpack/runtime/load script","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/./node_modules/@nextcloud/dialogs/dist/style.css?d87c","webpack:///nextcloud/node_modules/axios/index.js","webpack:///nextcloud/apps/files/src/actions/moveOrCopyActionUtils.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/newMenu/newFolder.ts","webpack:///nextcloud/node_modules/@buttercup/fetch/dist/index.browser.js","webpack:///nextcloud/node_modules/hot-patcher/dist/patcher.js","webpack:///nextcloud/node_modules/hot-patcher/dist/functions.js","webpack:///nextcloud/node_modules/webdav/dist/node/compat/patcher.js","webpack:///nextcloud/node_modules/webdav/dist/node/auth/digest.js","webpack:///nextcloud/node_modules/webdav/dist/node/tools/crypto.js","webpack:///nextcloud/node_modules/webdav/dist/node/tools/merge.js","webpack:///nextcloud/node_modules/webdav/dist/node/tools/headers.js","webpack:///nextcloud/node_modules/webdav/dist/node/compat/arrayBuffer.js","webpack:///nextcloud/node_modules/webdav/dist/node/request.js","webpack:///nextcloud/node_modules/webdav/dist/node/tools/body.js","webpack:///nextcloud/node_modules/webdav/dist/node/compat/buffer.js","webpack:///nextcloud/apps/files/src/services/WebdavClient.ts","webpack:///nextcloud/apps/files/src/utils/hashUtils.ts","webpack:///nextcloud/apps/files/src/services/Files.ts","webpack:///nextcloud/apps/files/src/services/Favorites.ts","webpack:///nextcloud/apps/files/src/views/favorites.ts","webpack:///nextcloud/apps/files/src/services/Recent.ts","webpack:///nextcloud/apps/files/src/views/TemplatePicker.vue","webpack:///nextcloud/apps/files/src/utils/fileUtils.ts","webpack:///nextcloud/apps/files/src/components/TemplatePreview.vue?vue&type=script&lang=js","webpack:///nextcloud/apps/files/src/components/TemplatePreview.vue","webpack:///nextcloud/apps/files/src/utils/davUtils.js","webpack://nextcloud/./apps/files/src/components/TemplatePreview.vue?af18","webpack://nextcloud/./apps/files/src/components/TemplatePreview.vue?81db","webpack://nextcloud/./apps/files/src/components/TemplatePreview.vue?c414","webpack:///nextcloud/apps/files/src/views/TemplatePicker.vue?vue&type=script&lang=ts","webpack:///nextcloud/apps/files/src/services/Templates.js","webpack://nextcloud/./apps/files/src/views/TemplatePicker.vue?0681","webpack://nextcloud/./apps/files/src/views/TemplatePicker.vue?afd8","webpack:///nextcloud/apps/files/src/init-templates.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/services/ServiceWorker.js","webpack:///nextcloud/apps/files/src/services/LivePhotos.ts","webpack:///nextcloud/node_modules/builtin-status-codes/browser.js","webpack:///nextcloud/node_modules/cancelable-promise/umd/CancelablePromise.js","webpack:///nextcloud/node_modules/@nextcloud/dialogs/dist/style.css","webpack:///nextcloud/apps/files/src/components/TemplatePreview.vue?vue&type=style&index=0&id=0859a92c&prod&lang=scss&scoped=true","webpack:///nextcloud/apps/files/src/views/TemplatePicker.vue?vue&type=style&index=0&id=48121b39&prod&lang=scss&scoped=true","webpack:///nextcloud/node_modules/events/events.js","webpack:///nextcloud/node_modules/https-browserify/index.js","webpack:///nextcloud/node_modules/readable-stream/errors-browser.js","webpack:///nextcloud/node_modules/readable-stream/lib/_stream_duplex.js","webpack:///nextcloud/node_modules/readable-stream/lib/_stream_passthrough.js","webpack:///nextcloud/node_modules/readable-stream/lib/_stream_readable.js","webpack:///nextcloud/node_modules/readable-stream/lib/_stream_transform.js","webpack:///nextcloud/node_modules/readable-stream/lib/_stream_writable.js","webpack:///nextcloud/node_modules/readable-stream/lib/internal/streams/async_iterator.js","webpack:///nextcloud/node_modules/readable-stream/lib/internal/streams/buffer_list.js","webpack:///nextcloud/node_modules/readable-stream/lib/internal/streams/destroy.js","webpack:///nextcloud/node_modules/readable-stream/lib/internal/streams/end-of-stream.js","webpack:///nextcloud/node_modules/readable-stream/lib/internal/streams/from-browser.js","webpack:///nextcloud/node_modules/readable-stream/lib/internal/streams/pipeline.js","webpack:///nextcloud/node_modules/readable-stream/lib/internal/streams/state.js","webpack:///nextcloud/node_modules/readable-stream/lib/internal/streams/stream-browser.js","webpack:///nextcloud/node_modules/readable-stream/readable-browser.js","webpack:///nextcloud/node_modules/safe-buffer/index.js","webpack:///nextcloud/node_modules/stream-browserify/index.js","webpack:///nextcloud/node_modules/stream-http/index.js","webpack:///nextcloud/node_modules/stream-http/lib/capability.js","webpack:///nextcloud/node_modules/stream-http/lib/request.js","webpack:///nextcloud/node_modules/stream-http/lib/response.js","webpack:///nextcloud/node_modules/string_decoder/lib/string_decoder.js","webpack:///nextcloud/node_modules/util-deprecate/browser.js","webpack:///nextcloud/node_modules/xtend/immutable.js","webpack:///nextcloud/node_modules/@nextcloud/files/dist/index.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};","/**\n * @copyright Copyright (c) 2022 John Molakvoæ \n *\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 */\nimport { getLoggerBuilder } from '@nextcloud/logger'\n\nexport default getLoggerBuilder()\n\t.setApp('files')\n\t.detectUser()\n\t.build()\n","/**\n * @copyright Copyright (c) 2023 John Molakvoæ \n *\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 */\nimport { emit } from '@nextcloud/event-bus';\nimport { Permission, Node, View, FileAction } from '@nextcloud/files';\nimport { translate as t } from '@nextcloud/l10n';\nimport axios from '@nextcloud/axios';\nimport TrashCanSvg from '@mdi/svg/svg/trash-can.svg?raw';\nimport logger from '../logger.js';\nexport const action = new FileAction({\n id: 'delete',\n displayName(nodes, view) {\n return view.id === 'trashbin'\n ? t('files', 'Delete permanently')\n : t('files', 'Delete');\n },\n iconSvgInline: () => TrashCanSvg,\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) {\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 return Promise.all(nodes.map(node => this.exec(node, view, dir)));\n },\n order: 100,\n});\n","/**\n * @copyright Copyright (c) 2023 John Molakvoæ \n *\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 */\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 downloadAttribute = JSON.parse(node.attributes['share-attributes']).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.source);\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 * @copyright Copyright (c) 2023 John Molakvoæ \n *\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 */\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 * @copyright Copyright (c) 2023 John Molakvoæ \n *\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 */\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 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!./style.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!./style.css\";\n export default content && content.locals ? content.locals : undefined;\n","import axios from './lib/axios.js';\n\n// This module is intended to unwrap Axios default export as named.\n// Keep top-level export same with static properties\n// so that it can keep same with es module or cjs\nconst {\n Axios,\n AxiosError,\n CanceledError,\n isCancel,\n CancelToken,\n VERSION,\n all,\n Cancel,\n isAxiosError,\n spread,\n toFormData,\n AxiosHeaders,\n HttpStatusCode,\n formToJSON,\n getAdapter,\n mergeConfig\n} = axios;\n\nexport {\n axios as default,\n Axios,\n AxiosError,\n CanceledError,\n isCancel,\n CancelToken,\n VERSION,\n all,\n Cancel,\n isAxiosError,\n spread,\n toFormData,\n AxiosHeaders,\n HttpStatusCode,\n formToJSON,\n getAdapter,\n mergeConfig\n}\n","/**\n * @copyright Copyright (c) 2023 John Molakvoæ \n *\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 */\nimport '@nextcloud/dialogs/style.css';\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 // For now the only restriction is that a shared file\n // cannot be copied if the download is disabled\n return canDownload(nodes);\n};\n","/**\n * @copyright Copyright (c) 2023 John Molakvoæ \n *\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 */\nimport '@nextcloud/dialogs/style.css';\n// eslint-disable-next-line n/no-extraneous-import\nimport { AxiosError } from 'axios';\nimport { basename, join } from 'path';\nimport { emit } from '@nextcloud/event-bus';\nimport { generateRemoteUrl } from '@nextcloud/router';\nimport { getCurrentUser } from '@nextcloud/auth';\nimport { getFilePickerBuilder, showError } from '@nextcloud/dialogs';\nimport { Permission, FileAction, FileType, NodeStatus } from '@nextcloud/files';\nimport { translate as t } from '@nextcloud/l10n';\nimport axios from '@nextcloud/axios';\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 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 if (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\n * destination: /foo\n * Allow move of /foo does not start with /foo/bar so allow\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 const relativePath = join(destination.path, node.basename);\n const destinationUrl = generateRemoteUrl(`dav/files/${getCurrentUser()?.uid}${relativePath}`);\n logger.debug(`${method} ${node.basename} to ${destinationUrl}`);\n // Set loading state\n Vue.set(node, 'status', NodeStatus.LOADING);\n const queue = getQueue();\n return await queue.add(async () => {\n try {\n await axios({\n method: method === MoveCopyAction.COPY ? 'COPY' : 'MOVE',\n url: node.encodedSource,\n headers: {\n Destination: encodeURI(destinationUrl),\n Overwrite: overwrite ? undefined : 'F',\n },\n });\n // If we're moving, update the node\n // if we're copying, we don't need to update the node\n // the view will refresh itself\n if (method === MoveCopyAction.MOVE) {\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 (error instanceof AxiosError) {\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 is 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 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} node The node to move/copy\n * @return {Promise} A promise that resolves to true if the action was successful\n */\nconst openFilePickerForAction = async (action, dir = '/', node) => {\n const filePicker = getFilePickerBuilder(t('files', 'Chose destination'))\n .allowDirectories(true)\n .setFilter((n) => {\n // We only want to show folders that we can create nodes in\n return (n.permissions & Permission.CREATE) !== 0\n // We don't want to show the current node in the file picker\n && node.fileid !== n.fileid;\n })\n .setMimeTypeFilter([])\n .setMultiSelect(false)\n .startAt(dir);\n return new Promise((resolve, reject) => {\n filePicker.setButtonFactory((nodes, path) => {\n const buttons = [];\n const target = basename(path);\n if (node.dirname === path) {\n // This file/folder is already in that directory\n return buttons;\n }\n if (node.path === path) {\n // You cannot move a file/folder onto itself\n return buttons;\n }\n if (action === MoveCopyAction.COPY || action === MoveCopyAction.MOVE_OR_COPY) {\n buttons.push({\n label: target ? t('files', 'Copy to {target}', { target }) : t('files', 'Copy'),\n type: 'primary',\n icon: CopyIconSvg,\n async callback(destination) {\n try {\n await handleCopyMoveNodeTo(node, destination[0], MoveCopyAction.COPY);\n resolve(true);\n }\n catch (error) {\n reject(error);\n }\n },\n });\n }\n if (action === MoveCopyAction.MOVE || action === MoveCopyAction.MOVE_OR_COPY) {\n buttons.push({\n label: target ? t('files', 'Move to {target}', { target }) : t('files', 'Move'),\n type: action === MoveCopyAction.MOVE ? 'primary' : 'secondary',\n icon: FolderMoveSvg,\n async callback(destination) {\n try {\n await handleCopyMoveNodeTo(node, destination[0], MoveCopyAction.MOVE);\n resolve(true);\n }\n catch (error) {\n console.warn('got error', error);\n reject(error);\n }\n },\n });\n }\n return buttons;\n });\n const picker = filePicker.build();\n picker.pick().catch(() => {\n reject(new Error(t('files', 'Cancelled move or copy operation')));\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 try {\n await openFilePickerForAction(action, dir, node);\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 order: 15,\n});\n","/**\n * @copyright Copyright (c) 2023 John Molakvoæ \n *\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 */\nimport { join } from 'path';\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, dir) {\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: join(dir, node.basename) });\n return null;\n },\n // Main action if enabled, meaning folders only\n default: DefaultType.HIDDEN,\n order: -100,\n});\n","/**\n * @copyright Copyright (c) 2023 John Molakvoæ \n *\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 */\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 });\n return null;\n },\n // Before openFolderAction\n order: -1000,\n default: DefaultType.HIDDEN,\n});\n","/**\n * @copyright Copyright (c) 2023 John Molakvoæ \n *\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 */\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 * @copyright Copyright (c) 2023 John Molakvoæ \n *\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 */\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 }, { 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 * @copyright Copyright (c) 2023 John Molakvoæ \n *\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 */\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) {\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, view, dir) {\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","import { basename, extname } 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 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};\n// TODO: move to @nextcloud/files\nexport const getUniqueName = (name, names) => {\n let newName = name;\n let i = 1;\n while (names.includes(newName)) {\n const ext = extname(name);\n newName = `${basename(name, ext)} (${i++})${ext}`;\n }\n return newName;\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 contentNames = content.map((node) => node.basename);\n const name = getUniqueName(t('files', 'New folder'), contentNames);\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 });\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 emit('files:node:rename', folder);\n },\n};\n","const inWebWorker = typeof WorkerGlobalScope !== \"undefined\" &&\n self instanceof WorkerGlobalScope;\nconst root = inWebWorker\n ? self\n : typeof window !== \"undefined\"\n ? window\n : globalThis;\nexport const fetch = root.fetch.bind(root);\nexport const Headers = root.Headers;\nexport const Request = root.Request;\nexport const Response = root.Response;\n","import { sequence } from \"./functions.js\";\nconst HOT_PATCHER_TYPE = \"@@HOTPATCHER\";\nconst NOOP = () => { };\nfunction createNewItem(method) {\n return {\n original: method,\n methods: [method],\n final: false\n };\n}\n/**\n * Hot patching manager class\n */\nexport class HotPatcher {\n constructor() {\n this._configuration = {\n registry: {},\n getEmptyAction: \"null\"\n };\n this.__type__ = HOT_PATCHER_TYPE;\n }\n /**\n * Configuration object reference\n * @readonly\n */\n get configuration() {\n return this._configuration;\n }\n /**\n * The action to take when a non-set method is requested\n * Possible values: null/throw\n */\n get getEmptyAction() {\n return this.configuration.getEmptyAction;\n }\n set getEmptyAction(newAction) {\n this.configuration.getEmptyAction = newAction;\n }\n /**\n * Control another hot-patcher instance\n * Force the remote instance to use patched methods from calling instance\n * @param target The target instance to control\n * @param allowTargetOverrides Allow the target to override patched methods on\n * the controller (default is false)\n * @returns Returns self\n * @throws {Error} Throws if the target is invalid\n */\n control(target, allowTargetOverrides = false) {\n if (!target || target.__type__ !== HOT_PATCHER_TYPE) {\n throw new Error(\"Failed taking control of target HotPatcher instance: Invalid type or object\");\n }\n Object.keys(target.configuration.registry).forEach(foreignKey => {\n if (this.configuration.registry.hasOwnProperty(foreignKey)) {\n if (allowTargetOverrides) {\n this.configuration.registry[foreignKey] = Object.assign({}, target.configuration.registry[foreignKey]);\n }\n }\n else {\n this.configuration.registry[foreignKey] = Object.assign({}, target.configuration.registry[foreignKey]);\n }\n });\n target._configuration = this.configuration;\n return this;\n }\n /**\n * Execute a patched method\n * @param key The method key\n * @param args Arguments to pass to the method (optional)\n * @see HotPatcher#get\n * @returns The output of the called method\n */\n execute(key, ...args) {\n const method = this.get(key) || NOOP;\n return method(...args);\n }\n /**\n * Get a method for a key\n * @param key The method key\n * @returns Returns the requested function or null if the function\n * does not exist and the host is configured to return null (and not throw)\n * @throws {Error} Throws if the configuration specifies to throw and the method\n * does not exist\n * @throws {Error} Throws if the `getEmptyAction` value is invalid\n */\n get(key) {\n const item = this.configuration.registry[key];\n if (!item) {\n switch (this.getEmptyAction) {\n case \"null\":\n return null;\n case \"throw\":\n throw new Error(`Failed handling method request: No method provided for override: ${key}`);\n default:\n throw new Error(`Failed handling request which resulted in an empty method: Invalid empty-action specified: ${this.getEmptyAction}`);\n }\n }\n return sequence(...item.methods);\n }\n /**\n * Check if a method has been patched\n * @param key The function key\n * @returns True if already patched\n */\n isPatched(key) {\n return !!this.configuration.registry[key];\n }\n /**\n * Patch a method name\n * @param key The method key to patch\n * @param method The function to set\n * @param opts Patch options\n * @returns Returns self\n */\n patch(key, method, opts = {}) {\n const { chain = false } = opts;\n if (this.configuration.registry[key] && this.configuration.registry[key].final) {\n throw new Error(`Failed patching '${key}': Method marked as being final`);\n }\n if (typeof method !== \"function\") {\n throw new Error(`Failed patching '${key}': Provided method is not a function`);\n }\n if (chain) {\n // Add new method to the chain\n if (!this.configuration.registry[key]) {\n // New key, create item\n this.configuration.registry[key] = createNewItem(method);\n }\n else {\n // Existing, push the method\n this.configuration.registry[key].methods.push(method);\n }\n }\n else {\n // Replace the original\n if (this.isPatched(key)) {\n const { original } = this.configuration.registry[key];\n this.configuration.registry[key] = Object.assign(createNewItem(method), {\n original\n });\n }\n else {\n this.configuration.registry[key] = createNewItem(method);\n }\n }\n return this;\n }\n /**\n * Patch a method inline, execute it and return the value\n * Used for patching contents of functions. This method will not apply a patched\n * function if it has already been patched, allowing for external overrides to\n * function. It also means that the function is cached so that it is not\n * instantiated every time the outer function is invoked.\n * @param key The function key to use\n * @param method The function to patch (once, only if not patched)\n * @param args Arguments to pass to the function\n * @returns The output of the patched function\n * @example\n * function mySpecialFunction(a, b) {\n * return hotPatcher.patchInline(\"func\", (a, b) => {\n * return a + b;\n * }, a, b);\n * }\n */\n patchInline(key, method, ...args) {\n if (!this.isPatched(key)) {\n this.patch(key, method);\n }\n return this.execute(key, ...args);\n }\n /**\n * Patch a method (or methods) in sequential-mode\n * See `patch()` with the option `chain: true`\n * @see patch\n * @param key The key to patch\n * @param methods The methods to patch\n * @returns Returns self\n */\n plugin(key, ...methods) {\n methods.forEach(method => {\n this.patch(key, method, { chain: true });\n });\n return this;\n }\n /**\n * Restore a patched method if it has been overridden\n * @param key The method key\n * @returns Returns self\n */\n restore(key) {\n if (!this.isPatched(key)) {\n throw new Error(`Failed restoring method: No method present for key: ${key}`);\n }\n else if (typeof this.configuration.registry[key].original !== \"function\") {\n throw new Error(`Failed restoring method: Original method not found or of invalid type for key: ${key}`);\n }\n this.configuration.registry[key].methods = [this.configuration.registry[key].original];\n return this;\n }\n /**\n * Set a method as being final\n * This sets a method as having been finally overridden. Attempts at overriding\n * again will fail with an error.\n * @param key The key to make final\n * @returns Returns self\n */\n setFinal(key) {\n if (!this.configuration.registry.hasOwnProperty(key)) {\n throw new Error(`Failed marking '${key}' as final: No method found for key`);\n }\n this.configuration.registry[key].final = true;\n return this;\n }\n}\n","export function sequence(...methods) {\n if (methods.length === 0) {\n throw new Error(\"Failed creating sequence: No functions provided\");\n }\n return function __executeSequence(...args) {\n let result = args;\n const _this = this;\n while (methods.length > 0) {\n const method = methods.shift();\n result = [method.apply(_this, result)];\n }\n return result[0];\n };\n}\n","import { HotPatcher } from \"hot-patcher\";\nlet __patcher = null;\nexport function getPatcher() {\n if (!__patcher) {\n __patcher = new HotPatcher();\n }\n return __patcher;\n}\n","import md5 from \"md5\";\nimport { ha1Compute } from \"../tools/crypto.js\";\nconst NONCE_CHARS = \"abcdef0123456789\";\nconst NONCE_SIZE = 32;\nexport function createDigestContext(username, password, ha1) {\n return { username, password, ha1, nc: 0, algorithm: \"md5\", hasDigestAuth: false };\n}\nexport function generateDigestAuthHeader(options, digest) {\n const url = options.url.replace(\"//\", \"\");\n const uri = url.indexOf(\"/\") == -1 ? \"/\" : url.slice(url.indexOf(\"/\"));\n const method = options.method ? options.method.toUpperCase() : \"GET\";\n const qop = /(^|,)\\s*auth\\s*($|,)/.test(digest.qop) ? \"auth\" : false;\n const ncString = `00000000${digest.nc}`.slice(-8);\n const ha1 = ha1Compute(digest.algorithm, digest.username, digest.realm, digest.password, digest.nonce, digest.cnonce, digest.ha1);\n const ha2 = md5(`${method}:${uri}`);\n const digestResponse = qop\n ? md5(`${ha1}:${digest.nonce}:${ncString}:${digest.cnonce}:${qop}:${ha2}`)\n : md5(`${ha1}:${digest.nonce}:${ha2}`);\n const authValues = {\n username: digest.username,\n realm: digest.realm,\n nonce: digest.nonce,\n uri,\n qop,\n response: digestResponse,\n nc: ncString,\n cnonce: digest.cnonce,\n algorithm: digest.algorithm,\n opaque: digest.opaque\n };\n const authHeader = [];\n for (const k in authValues) {\n if (authValues[k]) {\n if (k === \"qop\" || k === \"nc\" || k === \"algorithm\") {\n authHeader.push(`${k}=${authValues[k]}`);\n }\n else {\n authHeader.push(`${k}=\"${authValues[k]}\"`);\n }\n }\n }\n return `Digest ${authHeader.join(\", \")}`;\n}\nfunction makeNonce() {\n let uid = \"\";\n for (let i = 0; i < NONCE_SIZE; ++i) {\n uid = `${uid}${NONCE_CHARS[Math.floor(Math.random() * NONCE_CHARS.length)]}`;\n }\n return uid;\n}\nexport function parseDigestAuth(response, _digest) {\n const authHeader = (response.headers && response.headers.get(\"www-authenticate\")) || \"\";\n if (authHeader.split(/\\s/)[0].toLowerCase() !== \"digest\") {\n return false;\n }\n const re = /([a-z0-9_-]+)=(?:\"([^\"]+)\"|([a-z0-9_-]+))/gi;\n for (;;) {\n const match = re.exec(authHeader);\n if (!match) {\n break;\n }\n _digest[match[1]] = match[2] || match[3];\n }\n _digest.nc += 1;\n _digest.cnonce = makeNonce();\n return true;\n}\n","import md5 from \"md5\";\nexport function ha1Compute(algorithm, user, realm, pass, nonce, cnonce, ha1) {\n const ha1Hash = ha1 || md5(`${user}:${realm}:${pass}`);\n if (algorithm && algorithm.toLowerCase() === \"md5-sess\") {\n return md5(`${ha1Hash}:${nonce}:${cnonce}`);\n }\n return ha1Hash;\n}\n","export function cloneShallow(obj) {\n return isPlainObject(obj)\n ? Object.assign({}, obj)\n : Object.setPrototypeOf(Object.assign({}, obj), Object.getPrototypeOf(obj));\n}\nfunction isPlainObject(obj) {\n if (typeof obj !== \"object\" ||\n obj === null ||\n Object.prototype.toString.call(obj) != \"[object Object]\") {\n // Not an object\n return false;\n }\n if (Object.getPrototypeOf(obj) === null) {\n return true;\n }\n let proto = obj;\n // Find the prototype\n while (Object.getPrototypeOf(proto) !== null) {\n proto = Object.getPrototypeOf(proto);\n }\n return Object.getPrototypeOf(obj) === proto;\n}\nexport function merge(...args) {\n let output = null, items = [...args];\n while (items.length > 0) {\n const nextItem = items.shift();\n if (!output) {\n output = cloneShallow(nextItem);\n }\n else {\n output = mergeObjects(output, nextItem);\n }\n }\n return output;\n}\nfunction mergeObjects(obj1, obj2) {\n const output = cloneShallow(obj1);\n Object.keys(obj2).forEach(key => {\n if (!output.hasOwnProperty(key)) {\n output[key] = obj2[key];\n return;\n }\n if (Array.isArray(obj2[key])) {\n output[key] = Array.isArray(output[key])\n ? [...output[key], ...obj2[key]]\n : [...obj2[key]];\n }\n else if (typeof obj2[key] === \"object\" && !!obj2[key]) {\n output[key] =\n typeof output[key] === \"object\" && !!output[key]\n ? mergeObjects(output[key], obj2[key])\n : cloneShallow(obj2[key]);\n }\n else {\n output[key] = obj2[key];\n }\n });\n return output;\n}\n","export function convertResponseHeaders(headers) {\n const output = {};\n for (const key of headers.keys()) {\n output[key] = headers.get(key);\n }\n return output;\n}\nexport function mergeHeaders(...headerPayloads) {\n if (headerPayloads.length === 0)\n return {};\n const headerKeys = {};\n return headerPayloads.reduce((output, headers) => {\n Object.keys(headers).forEach(header => {\n const lowerHeader = header.toLowerCase();\n if (headerKeys.hasOwnProperty(lowerHeader)) {\n output[headerKeys[lowerHeader]] = headers[header];\n }\n else {\n headerKeys[lowerHeader] = header;\n output[header] = headers[header];\n }\n });\n return output;\n }, {});\n}\n","const hasArrayBuffer = typeof ArrayBuffer === \"function\";\nconst { toString: objToString } = Object.prototype;\n// Taken from: https://github.com/fengyuanchen/is-array-buffer/blob/master/src/index.js\nexport function isArrayBuffer(value) {\n return (hasArrayBuffer &&\n (value instanceof ArrayBuffer || objToString.call(value) === \"[object ArrayBuffer]\"));\n}\n","import { Agent as HTTPAgent } from \"http\";\nimport { Agent as HTTPSAgent } from \"https\";\nimport { fetch } from \"@buttercup/fetch\";\nimport { getPatcher } from \"./compat/patcher.js\";\nimport { isWeb } from \"./compat/env.js\";\nimport { generateDigestAuthHeader, parseDigestAuth } from \"./auth/digest.js\";\nimport { cloneShallow, merge } from \"./tools/merge.js\";\nimport { mergeHeaders } from \"./tools/headers.js\";\nimport { requestDataToFetchBody } from \"./tools/body.js\";\nfunction _request(requestOptions) {\n const patcher = getPatcher();\n return patcher.patchInline(\"request\", (options) => patcher.patchInline(\"fetch\", fetch, options.url, getFetchOptions(options)), requestOptions);\n}\nfunction getFetchOptions(requestOptions) {\n let headers = {};\n // Handle standard options\n const opts = {\n method: requestOptions.method\n };\n if (requestOptions.headers) {\n headers = mergeHeaders(headers, requestOptions.headers);\n }\n if (typeof requestOptions.data !== \"undefined\") {\n const [body, newHeaders] = requestDataToFetchBody(requestOptions.data);\n opts.body = body;\n headers = mergeHeaders(headers, newHeaders);\n }\n if (requestOptions.signal) {\n opts.signal = requestOptions.signal;\n }\n if (requestOptions.withCredentials) {\n opts.credentials = \"include\";\n }\n // Check for node-specific options\n if (!isWeb()) {\n if (requestOptions.httpAgent || requestOptions.httpsAgent) {\n opts.agent = (parsedURL) => {\n if (parsedURL.protocol === \"http:\") {\n return requestOptions.httpAgent || new HTTPAgent();\n }\n return requestOptions.httpsAgent || new HTTPSAgent();\n };\n }\n }\n // Attach headers\n opts.headers = headers;\n return opts;\n}\nexport function prepareRequestOptions(requestOptions, context, userOptions) {\n const finalOptions = cloneShallow(requestOptions);\n finalOptions.headers = mergeHeaders(context.headers, finalOptions.headers || {}, userOptions.headers || {});\n if (typeof userOptions.data !== \"undefined\") {\n finalOptions.data = userOptions.data;\n }\n if (userOptions.signal) {\n finalOptions.signal = userOptions.signal;\n }\n if (context.httpAgent) {\n finalOptions.httpAgent = context.httpAgent;\n }\n if (context.httpsAgent) {\n finalOptions.httpsAgent = context.httpsAgent;\n }\n if (context.digest) {\n finalOptions._digest = context.digest;\n }\n if (typeof context.withCredentials === \"boolean\") {\n finalOptions.withCredentials = context.withCredentials;\n }\n return finalOptions;\n}\nexport async function request(requestOptions) {\n // Client not configured for digest authentication\n if (!requestOptions._digest) {\n return _request(requestOptions);\n }\n // Remove client's digest authentication object from request options\n const _digest = requestOptions._digest;\n delete requestOptions._digest;\n // If client is already using digest authentication, include the digest authorization header\n if (_digest.hasDigestAuth) {\n requestOptions = merge(requestOptions, {\n headers: {\n Authorization: generateDigestAuthHeader(requestOptions, _digest)\n }\n });\n }\n // Perform digest request + check\n const response = await _request(requestOptions);\n if (response.status == 401) {\n _digest.hasDigestAuth = parseDigestAuth(response, _digest);\n if (_digest.hasDigestAuth) {\n requestOptions = merge(requestOptions, {\n headers: {\n Authorization: generateDigestAuthHeader(requestOptions, _digest)\n }\n });\n const response2 = await _request(requestOptions);\n if (response2.status == 401) {\n _digest.hasDigestAuth = false;\n }\n else {\n _digest.nc++;\n }\n return response2;\n }\n }\n else {\n _digest.nc++;\n }\n return response;\n}\n","import Stream from \"stream\";\nimport { isArrayBuffer } from \"../compat/arrayBuffer.js\";\nimport { isBuffer } from \"../compat/buffer.js\";\nimport { isWeb } from \"../compat/env.js\";\nexport function requestDataToFetchBody(data) {\n if (!isWeb() && data instanceof Stream.Readable) {\n // @ts-ignore\n return [data, {}];\n }\n if (typeof data === \"string\") {\n return [data, {}];\n }\n else if (isBuffer(data)) {\n return [data, {}];\n }\n else if (isArrayBuffer(data)) {\n return [data, {}];\n }\n else if (data && typeof data === \"object\") {\n return [\n JSON.stringify(data),\n {\n \"content-type\": \"application/json\"\n }\n ];\n }\n throw new Error(`Unable to convert request body: Unexpected body type: ${typeof data}`);\n}\n","export function isBuffer(value) {\n return (value != null &&\n value.constructor != null &&\n typeof value.constructor.isBuffer === \"function\" &&\n value.constructor.isBuffer(value));\n}\n","import { createClient, getPatcher } from 'webdav';\nimport { generateRemoteUrl } from '@nextcloud/router';\nimport { getCurrentUser, getRequestToken } from '@nextcloud/auth';\nimport { request } from 'webdav/dist/node/request.js';\nexport const rootPath = `/files/${getCurrentUser()?.uid}`;\nexport const defaultRootUrl = generateRemoteUrl('dav' + rootPath);\nexport const getClient = (rootUrl = defaultRootUrl) => {\n const client = createClient(rootUrl, {\n headers: {\n requesttoken: getRequestToken() || '',\n },\n });\n /**\n * Allow to override the METHOD to support dav REPORT\n *\n * @see https://github.com/perry-mitchell/webdav-client/blob/8d9694613c978ce7404e26a401c39a41f125f87f/source/request.ts\n */\n const patcher = getPatcher();\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n // https://github.com/perry-mitchell/hot-patcher/issues/6\n patcher.patch('request', (options) => {\n if (options.headers?.method) {\n options.method = options.headers.method;\n delete options.headers.method;\n }\n return request(options);\n });\n return client;\n};\n","/**\n * @copyright Copyright (c) 2023 John Molakvoæ \n *\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 */\nexport const hashCode = function (str) {\n return str.split('').reduce(function (a, b) {\n a = ((a << 5) - a) + b.charCodeAt(0);\n return a & a;\n }, 0);\n};\n","import { CancelablePromise } from 'cancelable-promise';\nimport { File, Folder, davParsePermissions, davGetDefaultPropfind } from '@nextcloud/files';\nimport { generateRemoteUrl } from '@nextcloud/router';\nimport { getCurrentUser } from '@nextcloud/auth';\nimport { getClient, rootPath } from './WebdavClient';\nimport { hashCode } from '../utils/hashUtils';\nimport logger from '../logger';\nconst client = getClient();\nexport const resultToNode = function (node) {\n const props = node.props;\n const permissions = davParsePermissions(props?.permissions);\n const owner = getCurrentUser()?.uid;\n const source = generateRemoteUrl('dav' + rootPath + node.filename);\n const id = props?.fileid < 0\n ? hashCode(source)\n : props?.fileid || 0;\n const nodeData = {\n id,\n source,\n mtime: new Date(node.lastmod),\n mime: node.mime,\n size: props?.size || 0,\n permissions,\n owner,\n root: rootPath,\n attributes: {\n ...node,\n ...props,\n hasPreview: props?.['has-preview'],\n failed: props?.fileid < 0,\n },\n };\n delete nodeData.attributes.props;\n return node.type === 'file'\n ? new File(nodeData)\n : new Folder(nodeData);\n};\nexport const getContents = (path = '/') => {\n const controller = new AbortController();\n const propfindPayload = davGetDefaultPropfind();\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) {\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 { Folder, getDavNameSpaces, getDavProperties, davGetDefaultPropfind } from '@nextcloud/files';\nimport { getClient } from './WebdavClient';\nimport { resultToNode } from './Files';\nconst client = getClient();\nconst reportPayload = `\n\n\t\n\t\t${getDavProperties()}\n\t\n\t\n\t\t1\n\t\n`;\nexport const getContents = async (path = '/') => {\n const propfindPayload = davGetDefaultPropfind();\n // Get root folder\n let rootResponse;\n if (path === '/') {\n rootResponse = await client.stat(path, {\n details: true,\n data: propfindPayload,\n });\n }\n const contentsResponse = await client.getDirectoryContents(path, {\n details: true,\n // Only filter favorites if we're at the root\n data: path === '/' ? reportPayload : propfindPayload,\n headers: {\n // Patched in WebdavClient.ts\n method: path === '/' ? 'REPORT' : 'PROPFIND',\n },\n includeSelf: true,\n });\n const root = rootResponse?.data || contentsResponse.data[0];\n const contents = contentsResponse.data.filter(node => node.filename !== path);\n return {\n folder: resultToNode(root),\n contents: contents.map(resultToNode),\n };\n};\n","/**\n * @copyright Copyright (c) 2023 John Molakvoæ \n *\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 */\nimport { basename } from 'path';\nimport { getLanguage, translate as t } from '@nextcloud/l10n';\nimport { loadState } from '@nextcloud/initial-state';\nimport { Node, FileType, View, getNavigation } from '@nextcloud/files';\nimport { subscribe } from '@nextcloud/event-bus';\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 generateFolderView = function (folder, index = 0) {\n return new View({\n id: generateIdFromPath(folder),\n name: basename(folder),\n icon: FolderSvg,\n order: index,\n params: {\n dir: folder,\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) => generateFolderView(folder, index));\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: 5,\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 addPathToFavorites(node.path);\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.localeCompare(b, getLanguage(), { ignorePunctuation: true }));\n favoriteFolders.forEach((folder, index) => {\n const view = favoriteFoldersViews.find(view => view.id === generateIdFromPath(folder));\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 addPathToFavorites = function (path) {\n const view = generateFolderView(path);\n // Skip if already exists\n if (favoriteFolders.find(folder => folder === path)) {\n return;\n }\n // Update arrays\n favoriteFolders.push(path);\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);\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","import { Folder, Permission, getDavNameSpaces, getDavProperties } from '@nextcloud/files';\nimport { generateRemoteUrl } from '@nextcloud/router';\nimport { getCurrentUser } from '@nextcloud/auth';\nimport { getClient, rootPath } from './WebdavClient';\nimport { resultToNode } from './Files';\nconst client = getClient(generateRemoteUrl('dav'));\nconst lastTwoWeeksTimestamp = Math.round((Date.now() / 1000) - (60 * 60 * 24 * 14));\nconst searchPayload = `\n\n\t\n\t\t\n\t\t\t\n\t\t\t\t${getDavProperties()}\n\t\t\t\n\t\t\n\t\t\n\t\t\t\n\t\t\t\t/files/${getCurrentUser()?.uid}/\n\t\t\t\tinfinity\n\t\t\t\n\t\t\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\thttpd/unix-directory\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t0\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t${lastTwoWeeksTimestamp}\n\t\t\t\t\n\t\t\t\n\t\t\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\n\t\t\n\t\t\t100\n\t\t\t0\n\t\t\n\t\n`;\nexport const getContents = async (path = '/') => {\n const contentsResponse = await client.getDirectoryContents(path, {\n details: true,\n data: searchPayload,\n headers: {\n // Patched in WebdavClient.ts\n method: 'SEARCH',\n // Somehow it's needed to get the correct response\n 'Content-Type': 'application/xml; charset=utf-8',\n },\n deep: true,\n });\n const contents = contentsResponse.data;\n return {\n folder: new Folder({\n id: 0,\n source: generateRemoteUrl('dav' + rootPath),\n root: rootPath,\n owner: getCurrentUser()?.uid || null,\n permissions: Permission.READ,\n }),\n contents: contents.map(resultToNode),\n };\n};\n","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return (_vm.opened)?_c('NcModal',{staticClass:\"templates-picker\",attrs:{\"clear-view-delay\":-1,\"size\":\"large\"},on:{\"close\":_vm.close}},[_c('form',{staticClass:\"templates-picker__form\",style:(_vm.style),on:{\"submit\":function($event){$event.preventDefault();$event.stopPropagation();return _vm.onSubmit.apply(null, arguments)}}},[_c('h2',[_vm._v(_vm._s(_vm.t('files', 'Pick a template for {name}', { name: _vm.nameWithoutExt })))]),_vm._v(\" \"),_c('ul',{staticClass:\"templates-picker__list\"},[_c('TemplatePreview',_vm._b({attrs:{\"checked\":_vm.checked === _vm.emptyTemplate.fileid},on:{\"check\":_vm.onCheck}},'TemplatePreview',_vm.emptyTemplate,false)),_vm._v(\" \"),_vm._l((_vm.provider.templates),function(template){return _c('TemplatePreview',_vm._b({key:template.fileid,attrs:{\"checked\":_vm.checked === template.fileid,\"ratio\":_vm.provider.ratio},on:{\"check\":_vm.onCheck}},'TemplatePreview',template,false))})],2),_vm._v(\" \"),_c('div',{staticClass:\"templates-picker__buttons\"},[_c('input',{staticClass:\"primary\",attrs:{\"type\":\"submit\",\"aria-label\":_vm.t('files', 'Create a new file with the selected template')},domProps:{\"value\":_vm.t('files', 'Create')}})])]),_vm._v(\" \"),(_vm.loading)?_c('NcEmptyContent',{staticClass:\"templates-picker__loading\",attrs:{\"icon\":\"icon-loading\"}},[_vm._v(\"\\n\\t\\t\"+_vm._s(_vm.t('files', 'Creating file'))+\"\\n\\t\")]):_vm._e()],1):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/**\n * @copyright Copyright (c) 2021 John Molakvoæ \n *\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 */\nimport { FileType } from '@nextcloud/files';\nimport { translate as t, translatePlural as n } from '@nextcloud/l10n';\nexport const encodeFilePath = function (path) {\n const pathSections = (path.startsWith('/') ? path : `/${path}`).split('/');\n let relativePath = '';\n pathSections.forEach((section) => {\n if (section !== '') {\n relativePath += '/' + encodeURIComponent(section);\n }\n });\n return relativePath;\n};\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","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TemplatePreview.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!./TemplatePreview.vue?vue&type=script&lang=js\"","\n\n\n\n\n\n\n","/**\n * @copyright Copyright (c) 2019 John Molakvoæ \n *\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 */\n\nimport { generateRemoteUrl } from '@nextcloud/router'\nimport { getCurrentUser } from '@nextcloud/auth'\n\nexport const getRootPath = function() {\n\tif (getCurrentUser()) {\n\t\treturn generateRemoteUrl(`dav/files/${getCurrentUser().uid}`)\n\t} else {\n\t\treturn generateRemoteUrl('webdav').replace('/remote.php', '/public.php')\n\t}\n}\n\nexport const isPublic = function() {\n\treturn !getCurrentUser()\n}\n\nexport const getToken = function() {\n\treturn document.getElementById('sharingToken') && document.getElementById('sharingToken').value\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!./TemplatePreview.vue?vue&type=style&index=0&id=0859a92c&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!./TemplatePreview.vue?vue&type=style&index=0&id=0859a92c&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./TemplatePreview.vue?vue&type=template&id=0859a92c&scoped=true\"\nimport script from \"./TemplatePreview.vue?vue&type=script&lang=js\"\nexport * from \"./TemplatePreview.vue?vue&type=script&lang=js\"\nimport style0 from \"./TemplatePreview.vue?vue&type=style&index=0&id=0859a92c&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 \"0859a92c\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('li',{staticClass:\"template-picker__item\"},[_c('input',{staticClass:\"radio\",attrs:{\"id\":_vm.id,\"type\":\"radio\",\"name\":\"template-picker\"},domProps:{\"checked\":_vm.checked},on:{\"change\":_vm.onCheck}}),_vm._v(\" \"),_c('label',{staticClass:\"template-picker__label\",attrs:{\"for\":_vm.id}},[_c('div',{staticClass:\"template-picker__preview\",class:_vm.failedPreview ? 'template-picker__preview--failed' : ''},[_c('img',{staticClass:\"template-picker__image\",attrs:{\"src\":_vm.realPreviewUrl,\"alt\":\"\",\"draggable\":\"false\"},on:{\"error\":_vm.onFailure}})]),_vm._v(\" \"),_c('span',{staticClass:\"template-picker__title\"},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.nameWithoutExt)+\"\\n\\t\\t\")])])])\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!./TemplatePicker.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!./TemplatePicker.vue?vue&type=script&lang=ts\"","/**\n * @copyright Copyright (c) 2021 John Molakvoæ \n *\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 */\n\nimport { generateOcsUrl } from '@nextcloud/router'\nimport axios from '@nextcloud/axios'\n\nexport const getTemplates = async function() {\n\tconst response = await axios.get(generateOcsUrl('apps/files/api/v1/templates'))\n\treturn response.data.ocs.data\n}\n\n/**\n * Create a new file from a specified template\n *\n * @param {string} filePath The new file destination path\n * @param {string} templatePath The template source path\n * @param {string} templateType The template type e.g 'user'\n */\nexport const createFromTemplate = async function(filePath, templatePath, templateType) {\n\tconst response = await axios.post(generateOcsUrl('apps/files/api/v1/templates/create'), {\n\t\tfilePath,\n\t\ttemplatePath,\n\t\ttemplateType,\n\t})\n\treturn response.data.ocs.data\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!./TemplatePicker.vue?vue&type=style&index=0&id=48121b39&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!./TemplatePicker.vue?vue&type=style&index=0&id=48121b39&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./TemplatePicker.vue?vue&type=template&id=48121b39&scoped=true\"\nimport script from \"./TemplatePicker.vue?vue&type=script&lang=ts\"\nexport * from \"./TemplatePicker.vue?vue&type=script&lang=ts\"\nimport style0 from \"./TemplatePicker.vue?vue&type=style&index=0&id=48121b39&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 \"48121b39\",\n null\n \n)\n\nexport default component.exports","import { Folder, Node, Permission, addNewFileMenuEntry, removeNewFileMenuEntry } from '@nextcloud/files';\nimport { generateOcsUrl } from '@nextcloud/router';\nimport { getLoggerBuilder } from '@nextcloud/logger';\nimport { join } from 'path';\nimport { loadState } from '@nextcloud/initial-state';\nimport { showError } from '@nextcloud/dialogs';\nimport { translate as t, translatePlural as n } from '@nextcloud/l10n';\nimport axios from '@nextcloud/axios';\nimport Vue from 'vue';\nimport PlusSvg from '@mdi/svg/svg/plus.svg?raw';\nimport TemplatePickerView from './views/TemplatePicker.vue';\nimport { getUniqueName } from './newMenu/newFolder';\nimport { getCurrentUser } from '@nextcloud/auth';\n// Set up logger\nconst logger = getLoggerBuilder()\n .setApp('files')\n .detectUser()\n .build();\n// Add translates functions\nVue.mixin({\n methods: {\n t,\n n,\n },\n});\n// Create document root\nconst TemplatePickerRoot = document.createElement('div');\nTemplatePickerRoot.id = 'template-picker';\ndocument.body.appendChild(TemplatePickerRoot);\n// Retrieve and init templates\nlet templates = loadState('files', 'templates', []);\nlet templatesPath = loadState('files', 'templates_path', false);\nlogger.debug('Templates providers', templates);\nlogger.debug('Templates folder', { templatesPath });\n// Init vue app\nconst View = Vue.extend(TemplatePickerView);\nconst TemplatePicker = new View({\n name: 'TemplatePicker',\n propsData: {\n logger,\n },\n});\nTemplatePicker.$mount('#template-picker');\nif (!templatesPath) {\n logger.debug('Templates folder not initialized');\n addNewFileMenuEntry({\n id: 'template-picker',\n displayName: t('files', 'Create new templates folder'),\n iconSvgInline: PlusSvg,\n order: 10,\n enabled(context) {\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 handler(context, content) {\n // Check for conflicts\n const contentNames = content.map((node) => node.basename);\n const name = getUniqueName(t('files', 'Templates'), contentNames);\n // Create the template folder\n initTemplatesFolder(context, name);\n // Remove the menu entry\n removeNewFileMenuEntry('template-picker');\n },\n });\n}\n// Init template files menu\ntemplates.forEach((provider, index) => {\n addNewFileMenuEntry({\n id: `template-new-${provider.app}-${index}`,\n displayName: provider.label,\n // TODO: migrate to inline svg\n iconClass: provider.iconClass || 'icon-file',\n enabled(context) {\n return (context.permissions & Permission.CREATE) !== 0;\n },\n order: 11,\n handler(context, content) {\n // Check for conflicts\n const contentNames = content.map((node) => node.basename);\n const name = getUniqueName(provider.label + provider.extension, contentNames);\n // Create the file\n TemplatePicker.open(name, provider);\n },\n });\n});\n// Init template folder\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 response = 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 templates = response.data.ocs.data.templates;\n templatesPath = response.data.ocs.data.template_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};\n","/**\n * @copyright Copyright (c) 2023 John Molakvoæ \n *\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 */\nimport MenuIcon from '@mdi/svg/svg/sun-compass.svg?raw';\nimport { FileAction, 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';\nimport registerFavoritesView from './views/favorites';\nimport registerRecentView from './views/recent';\nimport registerFilesView from './views/files';\nimport registerPreviewServiceWorker from './services/ServiceWorker.js';\nimport './init-templates';\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);\n// Register files views\nregisterFavoritesView();\nregisterFilesView();\nregisterRecentView();\n// Register preview service worker\nregisterPreviewServiceWorker();\nregisterDavProperty('nc:hidden', { nc: 'http://nextcloud.org/ns' });\ninitLivePhotos();\n","/**\n * @copyright Copyright (c) 2023 John Molakvoæ \n *\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 */\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 * @copyright Copyright (c) 2023 John Molakvoæ \n *\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 */\nimport { translate as t } from '@nextcloud/l10n';\nimport HistorySvg from '@mdi/svg/svg/history.svg?raw';\nimport { getContents } from '../services/Recent';\nimport { View, getNavigation } from '@nextcloud/files';\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: 2,\n defaultSortKey: 'mtime',\n getContents,\n }));\n};\n","/**\n * @copyright Copyright (c) 2019 Gary Kim \n *\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 */\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 * @copyright Copyright (c) 2023 Louis Chmn \n *\n * @author Louis Chmn \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 */\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","module.exports = {\n \"100\": \"Continue\",\n \"101\": \"Switching Protocols\",\n \"102\": \"Processing\",\n \"200\": \"OK\",\n \"201\": \"Created\",\n \"202\": \"Accepted\",\n \"203\": \"Non-Authoritative Information\",\n \"204\": \"No Content\",\n \"205\": \"Reset Content\",\n \"206\": \"Partial Content\",\n \"207\": \"Multi-Status\",\n \"208\": \"Already Reported\",\n \"226\": \"IM Used\",\n \"300\": \"Multiple Choices\",\n \"301\": \"Moved Permanently\",\n \"302\": \"Found\",\n \"303\": \"See Other\",\n \"304\": \"Not Modified\",\n \"305\": \"Use Proxy\",\n \"307\": \"Temporary Redirect\",\n \"308\": \"Permanent Redirect\",\n \"400\": \"Bad Request\",\n \"401\": \"Unauthorized\",\n \"402\": \"Payment Required\",\n \"403\": \"Forbidden\",\n \"404\": \"Not Found\",\n \"405\": \"Method Not Allowed\",\n \"406\": \"Not Acceptable\",\n \"407\": \"Proxy Authentication Required\",\n \"408\": \"Request Timeout\",\n \"409\": \"Conflict\",\n \"410\": \"Gone\",\n \"411\": \"Length Required\",\n \"412\": \"Precondition Failed\",\n \"413\": \"Payload Too Large\",\n \"414\": \"URI Too Long\",\n \"415\": \"Unsupported Media Type\",\n \"416\": \"Range Not Satisfiable\",\n \"417\": \"Expectation Failed\",\n \"418\": \"I'm a teapot\",\n \"421\": \"Misdirected Request\",\n \"422\": \"Unprocessable Entity\",\n \"423\": \"Locked\",\n \"424\": \"Failed Dependency\",\n \"425\": \"Unordered Collection\",\n \"426\": \"Upgrade Required\",\n \"428\": \"Precondition Required\",\n \"429\": \"Too Many Requests\",\n \"431\": \"Request Header Fields Too Large\",\n \"451\": \"Unavailable For Legal Reasons\",\n \"500\": \"Internal Server Error\",\n \"501\": \"Not Implemented\",\n \"502\": \"Bad Gateway\",\n \"503\": \"Service Unavailable\",\n \"504\": \"Gateway Timeout\",\n \"505\": \"HTTP Version Not Supported\",\n \"506\": \"Variant Also Negotiates\",\n \"507\": \"Insufficient Storage\",\n \"508\": \"Loop Detected\",\n \"509\": \"Bandwidth Limit Exceeded\",\n \"510\": \"Not Extended\",\n \"511\": \"Network Authentication Required\"\n}\n","function _typeof(obj) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }, _typeof(obj); }\n\n(function (global, factory) {\n if (typeof define === \"function\" && define.amd) {\n define([\"exports\"], factory);\n } else if (typeof exports !== \"undefined\") {\n factory(exports);\n } else {\n var mod = {\n exports: {}\n };\n factory(mod.exports);\n global.CancelablePromise = mod.exports;\n }\n})(typeof globalThis !== \"undefined\" ? globalThis : typeof self !== \"undefined\" ? self : this, function (_exports) {\n \"use strict\";\n\n Object.defineProperty(_exports, \"__esModule\", {\n value: true\n });\n _exports.CancelablePromise = void 0;\n _exports.cancelable = cancelable;\n _exports.default = void 0;\n _exports.isCancelablePromise = isCancelablePromise;\n\n function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, \"prototype\", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } else if (call !== void 0) { throw new TypeError(\"Derived constructors may only return object or undefined\"); } return _assertThisInitialized(self); }\n\n function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\n\n function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== \"undefined\" && o[Symbol.iterator] || o[\"@@iterator\"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }\n\n function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\n function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\n function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, \"prototype\", { writable: false }); return Constructor; }\n\n function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n function _classPrivateFieldInitSpec(obj, privateMap, value) { _checkPrivateRedeclaration(obj, privateMap); privateMap.set(obj, value); }\n\n function _checkPrivateRedeclaration(obj, privateCollection) { if (privateCollection.has(obj)) { throw new TypeError(\"Cannot initialize the same private elements twice on an object\"); } }\n\n function _classPrivateFieldGet(receiver, privateMap) { var descriptor = _classExtractFieldDescriptor(receiver, privateMap, \"get\"); return _classApplyDescriptorGet(receiver, descriptor); }\n\n function _classApplyDescriptorGet(receiver, descriptor) { if (descriptor.get) { return descriptor.get.call(receiver); } return descriptor.value; }\n\n function _classPrivateFieldSet(receiver, privateMap, value) { var descriptor = _classExtractFieldDescriptor(receiver, privateMap, \"set\"); _classApplyDescriptorSet(receiver, descriptor, value); return value; }\n\n function _classExtractFieldDescriptor(receiver, privateMap, action) { if (!privateMap.has(receiver)) { throw new TypeError(\"attempted to \" + action + \" private field on non-instance\"); } return privateMap.get(receiver); }\n\n function _classApplyDescriptorSet(receiver, descriptor, value) { if (descriptor.set) { descriptor.set.call(receiver, value); } else { if (!descriptor.writable) { throw new TypeError(\"attempted to set read only private field\"); } descriptor.value = value; } }\n\n var toStringTag = typeof Symbol !== 'undefined' ? Symbol.toStringTag : '@@toStringTag';\n\n var _internals = /*#__PURE__*/new WeakMap();\n\n var _promise = /*#__PURE__*/new WeakMap();\n\n var CancelablePromiseInternal = /*#__PURE__*/function () {\n function CancelablePromiseInternal(_ref) {\n var _ref$executor = _ref.executor,\n executor = _ref$executor === void 0 ? function () {} : _ref$executor,\n _ref$internals = _ref.internals,\n internals = _ref$internals === void 0 ? defaultInternals() : _ref$internals,\n _ref$promise = _ref.promise,\n promise = _ref$promise === void 0 ? new Promise(function (resolve, reject) {\n return executor(resolve, reject, function (onCancel) {\n internals.onCancelList.push(onCancel);\n });\n }) : _ref$promise;\n\n _classCallCheck(this, CancelablePromiseInternal);\n\n _classPrivateFieldInitSpec(this, _internals, {\n writable: true,\n value: void 0\n });\n\n _classPrivateFieldInitSpec(this, _promise, {\n writable: true,\n value: void 0\n });\n\n _defineProperty(this, toStringTag, 'CancelablePromise');\n\n this.cancel = this.cancel.bind(this);\n\n _classPrivateFieldSet(this, _internals, internals);\n\n _classPrivateFieldSet(this, _promise, promise || new Promise(function (resolve, reject) {\n return executor(resolve, reject, function (onCancel) {\n internals.onCancelList.push(onCancel);\n });\n }));\n }\n\n _createClass(CancelablePromiseInternal, [{\n key: \"then\",\n value: function then(onfulfilled, onrejected) {\n return makeCancelable(_classPrivateFieldGet(this, _promise).then(createCallback(onfulfilled, _classPrivateFieldGet(this, _internals)), createCallback(onrejected, _classPrivateFieldGet(this, _internals))), _classPrivateFieldGet(this, _internals));\n }\n }, {\n key: \"catch\",\n value: function _catch(onrejected) {\n return makeCancelable(_classPrivateFieldGet(this, _promise).catch(createCallback(onrejected, _classPrivateFieldGet(this, _internals))), _classPrivateFieldGet(this, _internals));\n }\n }, {\n key: \"finally\",\n value: function _finally(onfinally, runWhenCanceled) {\n var _this = this;\n\n if (runWhenCanceled) {\n _classPrivateFieldGet(this, _internals).onCancelList.push(onfinally);\n }\n\n return makeCancelable(_classPrivateFieldGet(this, _promise).finally(createCallback(function () {\n if (onfinally) {\n if (runWhenCanceled) {\n _classPrivateFieldGet(_this, _internals).onCancelList = _classPrivateFieldGet(_this, _internals).onCancelList.filter(function (callback) {\n return callback !== onfinally;\n });\n }\n\n return onfinally();\n }\n }, _classPrivateFieldGet(this, _internals))), _classPrivateFieldGet(this, _internals));\n }\n }, {\n key: \"cancel\",\n value: function cancel() {\n _classPrivateFieldGet(this, _internals).isCanceled = true;\n\n var callbacks = _classPrivateFieldGet(this, _internals).onCancelList;\n\n _classPrivateFieldGet(this, _internals).onCancelList = [];\n\n var _iterator = _createForOfIteratorHelper(callbacks),\n _step;\n\n try {\n for (_iterator.s(); !(_step = _iterator.n()).done;) {\n var callback = _step.value;\n\n if (typeof callback === 'function') {\n try {\n callback();\n } catch (err) {\n console.error(err);\n }\n }\n }\n } catch (err) {\n _iterator.e(err);\n } finally {\n _iterator.f();\n }\n }\n }, {\n key: \"isCanceled\",\n value: function isCanceled() {\n return _classPrivateFieldGet(this, _internals).isCanceled === true;\n }\n }]);\n\n return CancelablePromiseInternal;\n }();\n\n var CancelablePromise = /*#__PURE__*/function (_CancelablePromiseInt) {\n _inherits(CancelablePromise, _CancelablePromiseInt);\n\n var _super = _createSuper(CancelablePromise);\n\n function CancelablePromise(executor) {\n _classCallCheck(this, CancelablePromise);\n\n return _super.call(this, {\n executor: executor\n });\n }\n\n return _createClass(CancelablePromise);\n }(CancelablePromiseInternal);\n\n _exports.CancelablePromise = CancelablePromise;\n\n _defineProperty(CancelablePromise, \"all\", function all(iterable) {\n return makeAllCancelable(iterable, Promise.all(iterable));\n });\n\n _defineProperty(CancelablePromise, \"allSettled\", function allSettled(iterable) {\n return makeAllCancelable(iterable, Promise.allSettled(iterable));\n });\n\n _defineProperty(CancelablePromise, \"any\", function any(iterable) {\n return makeAllCancelable(iterable, Promise.any(iterable));\n });\n\n _defineProperty(CancelablePromise, \"race\", function race(iterable) {\n return makeAllCancelable(iterable, Promise.race(iterable));\n });\n\n _defineProperty(CancelablePromise, \"resolve\", function resolve(value) {\n return cancelable(Promise.resolve(value));\n });\n\n _defineProperty(CancelablePromise, \"reject\", function reject(reason) {\n return cancelable(Promise.reject(reason));\n });\n\n _defineProperty(CancelablePromise, \"isCancelable\", isCancelablePromise);\n\n var _default = CancelablePromise;\n _exports.default = _default;\n\n function cancelable(promise) {\n return makeCancelable(promise, defaultInternals());\n }\n\n function isCancelablePromise(promise) {\n return promise instanceof CancelablePromise || promise instanceof CancelablePromiseInternal;\n }\n\n function createCallback(onResult, internals) {\n if (onResult) {\n return function (arg) {\n if (!internals.isCanceled) {\n var result = onResult(arg);\n\n if (isCancelablePromise(result)) {\n internals.onCancelList.push(result.cancel);\n }\n\n return result;\n }\n\n return arg;\n };\n }\n }\n\n function makeCancelable(promise, internals) {\n return new CancelablePromiseInternal({\n internals: internals,\n promise: promise\n });\n }\n\n function makeAllCancelable(iterable, promise) {\n var internals = defaultInternals();\n internals.onCancelList.push(function () {\n var _iterator2 = _createForOfIteratorHelper(iterable),\n _step2;\n\n try {\n for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {\n var resolvable = _step2.value;\n\n if (isCancelablePromise(resolvable)) {\n resolvable.cancel();\n }\n }\n } catch (err) {\n _iterator2.e(err);\n } finally {\n _iterator2.f();\n }\n });\n return new CancelablePromiseInternal({\n internals: internals,\n promise: promise\n });\n }\n\n function defaultInternals() {\n return {\n isCanceled: false,\n onCancelList: []\n };\n }\n});\n//# sourceMappingURL=CancelablePromise.js.map","// 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\";\nimport ___CSS_LOADER_GET_URL_IMPORT___ from \"../../../css-loader/dist/runtime/getUrl.js\";\nvar ___CSS_LOADER_URL_IMPORT_0___ = new URL(\"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGhlaWdodD0iMTYiIHdpZHRoPSIxNiI+CiAgPHBhdGggZD0iTTE0IDEyLjNMMTIuMyAxNCA4IDkuNyAzLjcgMTQgMiAxMi4zIDYuMyA4IDIgMy43IDMuNyAyIDggNi4zIDEyLjMgMiAxNCAzLjcgOS43IDh6Ii8+Cjwvc3ZnPgo=\", import.meta.url);\nvar ___CSS_LOADER_URL_IMPORT_1___ = new URL(\"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGhlaWdodD0iMTYiIHdpZHRoPSIxNiI+CiAgPHBhdGggZD0iTTE0IDEyLjNMMTIuMyAxNCA4IDkuNyAzLjcgMTQgMiAxMi4zIDYuMyA4IDIgMy43IDMuNyAyIDggNi4zIDEyLjMgMiAxNCAzLjcgOS43IDh6IiBzdHlsZT0iZmlsbC1vcGFjaXR5OjE7ZmlsbDojZmZmZmZmIi8+Cjwvc3ZnPgo=\", import.meta.url);\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\nvar ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___);\nvar ___CSS_LOADER_URL_REPLACEMENT_1___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_1___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `@charset \"UTF-8\";\n/**\n * @copyright Copyright (c) 2019 Julius Härtl \n *\n * @author Julius Härtl \n * @author John Molakvoæ \n *\n * @license GNU AGPL version 3 or any later version\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.toastify.dialogs {\n min-width: 200px;\n background: none;\n background-color: var(--color-main-background);\n color: var(--color-main-text);\n box-shadow: 0 0 6px 0 var(--color-box-shadow);\n padding: 0 12px;\n margin-top: 45px;\n position: fixed;\n z-index: 10100;\n border-radius: var(--border-radius);\n display: flex;\n align-items: center;\n}\n.toastify.dialogs .toast-undo-container {\n display: flex;\n align-items: center;\n}\n.toastify.dialogs .toast-undo-button,\n.toastify.dialogs .toast-close {\n position: static;\n overflow: hidden;\n box-sizing: border-box;\n min-width: 44px;\n height: 100%;\n padding: 12px;\n white-space: nowrap;\n background-repeat: no-repeat;\n background-position: center;\n background-color: transparent;\n min-height: 0;\n}\n.toastify.dialogs .toast-undo-button.toast-close,\n.toastify.dialogs .toast-close.toast-close {\n text-indent: 0;\n opacity: .4;\n border: none;\n min-height: 44px;\n margin-left: 10px;\n font-size: 0;\n}\n.toastify.dialogs .toast-undo-button.toast-close:before,\n.toastify.dialogs .toast-close.toast-close:before {\n background-image: url(${___CSS_LOADER_URL_REPLACEMENT_0___});\n content: \" \";\n filter: var(--background-invert-if-dark);\n display: inline-block;\n width: 16px;\n height: 16px;\n}\n.toastify.dialogs .toast-undo-button.toast-undo-button,\n.toastify.dialogs .toast-close.toast-undo-button {\n height: calc(100% - 6px);\n margin: 3px 3px 3px 12px;\n}\n.toastify.dialogs .toast-undo-button:hover,\n.toastify.dialogs .toast-undo-button:focus,\n.toastify.dialogs .toast-undo-button:active,\n.toastify.dialogs .toast-close:hover,\n.toastify.dialogs .toast-close:focus,\n.toastify.dialogs .toast-close:active {\n cursor: pointer;\n opacity: 1;\n}\n.toastify.dialogs.toastify-top {\n right: 10px;\n}\n.toastify.dialogs.toast-with-click {\n cursor: pointer;\n}\n.toastify.dialogs.toast-error {\n border-left: 3px solid var(--color-error);\n}\n.toastify.dialogs.toast-info {\n border-left: 3px solid var(--color-primary);\n}\n.toastify.dialogs.toast-warning {\n border-left: 3px solid var(--color-warning);\n}\n.toastify.dialogs.toast-success,\n.toastify.dialogs.toast-undo {\n border-left: 3px solid var(--color-success);\n}\n.theme--dark .toastify.dialogs .toast-close.toast-close:before {\n background-image: url(${___CSS_LOADER_URL_REPLACEMENT_1___});\n}\n._file-picker__file-icon_1vgv4_5 {\n width: 32px;\n height: 32px;\n min-width: 32px;\n min-height: 32px;\n background-repeat: no-repeat;\n background-size: contain;\n display: flex;\n justify-content: center;\n}\ntr.file-picker__row[data-v-6aded0d9] {\n height: var(--row-height, 50px);\n}\ntr.file-picker__row td[data-v-6aded0d9] {\n cursor: pointer;\n overflow: hidden;\n text-overflow: ellipsis;\n border-bottom: none;\n}\ntr.file-picker__row td[data-v-6aded0d9]:not(.row-checkbox) {\n padding-inline: 14px 0;\n}\ntr.file-picker__row td.row-size[data-v-6aded0d9] {\n text-align: end;\n padding-inline: 0 14px;\n}\ntr.file-picker__row td.row-name[data-v-6aded0d9] {\n padding-inline: 2px 0;\n}\n@keyframes gradient-6aded0d9 {\n 0% {\n background-position: 0% 50%;\n }\n 50% {\n background-position: 100% 50%;\n }\n to {\n background-position: 0% 50%;\n }\n}\n.loading-row .row-checkbox[data-v-6aded0d9] {\n text-align: center !important;\n}\n.loading-row span[data-v-6aded0d9] {\n display: inline-block;\n height: 24px;\n background: linear-gradient(to right, var(--color-background-darker), var(--color-text-maxcontrast), var(--color-background-darker));\n background-size: 600px 100%;\n border-radius: var(--border-radius);\n animation: gradient-6aded0d9 12s ease infinite;\n}\n.loading-row .row-wrapper[data-v-6aded0d9] {\n display: inline-flex;\n align-items: center;\n}\n.loading-row .row-checkbox span[data-v-6aded0d9] {\n width: 24px;\n}\n.loading-row .row-name span[data-v-6aded0d9]:last-of-type {\n margin-inline-start: 6px;\n width: 130px;\n}\n.loading-row .row-size span[data-v-6aded0d9] {\n width: 80px;\n}\n.loading-row .row-modified span[data-v-6aded0d9] {\n width: 90px;\n}\ntr.file-picker__row[data-v-ee6f34b5] {\n height: var(--row-height, 50px);\n}\ntr.file-picker__row td[data-v-ee6f34b5] {\n cursor: pointer;\n overflow: hidden;\n text-overflow: ellipsis;\n border-bottom: none;\n}\ntr.file-picker__row td[data-v-ee6f34b5]:not(.row-checkbox) {\n padding-inline: 14px 0;\n}\ntr.file-picker__row td.row-size[data-v-ee6f34b5] {\n text-align: end;\n padding-inline: 0 14px;\n}\ntr.file-picker__row td.row-name[data-v-ee6f34b5] {\n padding-inline: 2px 0;\n}\n.file-picker__row--selected[data-v-ee6f34b5] {\n background-color: var(--color-background-dark);\n}\n.file-picker__row[data-v-ee6f34b5]:hover {\n background-color: var(--color-background-hover);\n}\n.file-picker__name-container[data-v-ee6f34b5] {\n display: flex;\n justify-content: start;\n align-items: center;\n height: 100%;\n}\n.file-picker__file-name[data-v-ee6f34b5] {\n padding-inline-start: 6px;\n min-width: 0;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n.file-picker__file-extension[data-v-ee6f34b5] {\n color: var(--color-text-maxcontrast);\n min-width: fit-content;\n}\n.file-picker__header-preview[data-v-4297db37] {\n width: 22px;\n height: 32px;\n flex: 0 0 auto;\n}\n.file-picker__files[data-v-4297db37] {\n margin: 2px;\n margin-inline-start: 12px;\n overflow: scroll auto;\n}\n.file-picker__files table[data-v-4297db37] {\n width: 100%;\n max-height: 100%;\n table-layout: fixed;\n}\n.file-picker__files th[data-v-4297db37] {\n position: -webkit-sticky;\n position: sticky;\n z-index: 1;\n top: 0;\n background-color: var(--color-main-background);\n padding: 2px;\n}\n.file-picker__files th .header-wrapper[data-v-4297db37] {\n display: flex;\n}\n.file-picker__files th.row-checkbox[data-v-4297db37] {\n width: 44px;\n}\n.file-picker__files th.row-name[data-v-4297db37] {\n width: 230px;\n}\n.file-picker__files th.row-size[data-v-4297db37] {\n width: 100px;\n}\n.file-picker__files th.row-modified[data-v-4297db37] {\n width: 120px;\n}\n.file-picker__files th[data-v-4297db37]:not(.row-size) .button-vue__wrapper {\n justify-content: start;\n flex-direction: row-reverse;\n}\n.file-picker__files th[data-v-4297db37]:not(.row-size) .button-vue {\n padding-inline: 16px 4px;\n}\n.file-picker__files th.row-size[data-v-4297db37] .button-vue__wrapper {\n justify-content: end;\n}\n.file-picker__files th[data-v-4297db37] .button-vue__wrapper {\n color: var(--color-text-maxcontrast);\n}\n.file-picker__files th[data-v-4297db37] .button-vue__wrapper .button-vue__text {\n font-weight: 400;\n}\n.file-picker__breadcrumbs[data-v-3bc9efa5] {\n flex-grow: 0 !important;\n}\n.file-picker__side[data-v-fcfd0f23] {\n display: flex;\n flex-direction: column;\n align-items: start;\n gap: .5rem;\n min-width: 200px;\n padding-block: 2px;\n overflow: auto;\n}\n.file-picker__side[data-v-fcfd0f23] .button-vue__wrapper {\n justify-content: start;\n}\n.file-picker__filter-input[data-v-fcfd0f23] {\n margin-block: 7px;\n max-width: 260px;\n}\n@media (max-width: 736px) {\n .file-picker__side[data-v-fcfd0f23] {\n flex-direction: row;\n min-width: unset;\n }\n}\n@media (max-width: 512px) {\n .file-picker__side[data-v-fcfd0f23] {\n flex-direction: row;\n min-width: unset;\n }\n .file-picker__filter-input[data-v-fcfd0f23] {\n max-width: unset;\n }\n}\n.file-picker__navigation {\n padding-inline: 2px;\n}\n.file-picker__navigation,\n.file-picker__navigation * {\n box-sizing: border-box;\n}\n.file-picker__navigation .v-select.select {\n min-width: 220px;\n}\n@media (min-width: 513px) and (max-width: 736px) {\n .file-picker__navigation {\n gap: 11px;\n }\n}\n@media (max-width: 512px) {\n .file-picker__navigation {\n flex-direction: column-reverse !important;\n }\n}\n.file-picker__view[data-v-86a13079] {\n height: 50px;\n display: flex;\n justify-content: start;\n align-items: center;\n}\n.file-picker__view h3[data-v-86a13079] {\n font-weight: 700;\n height: fit-content;\n margin: 0;\n}\n.file-picker__main[data-v-86a13079] {\n box-sizing: border-box;\n width: 100%;\n display: flex;\n flex-direction: column;\n min-height: 0;\n flex: 1;\n padding-inline: 2px;\n}\n.file-picker__main *[data-v-86a13079] {\n box-sizing: border-box;\n}\n[data-v-86a13079] .file-picker {\n height: min(80vh, 800px);\n}\n@media (max-width: 512px) {\n [data-v-86a13079] .file-picker {\n height: calc(100% - 16px - var(--default-clickable-area));\n }\n}\n[data-v-86a13079] .file-picker__content {\n display: flex;\n flex-direction: column;\n overflow: hidden;\n}\n`, \"\",{\"version\":3,\"sources\":[\"webpack://./node_modules/@nextcloud/dialogs/dist/style.css\"],\"names\":[],\"mappings\":\"AAAA,gBAAgB;AAChB;;;;;;;;;;;;;;;;;;;;EAoBE;AACF;EACE,gBAAgB;EAChB,gBAAgB;EAChB,8CAA8C;EAC9C,6BAA6B;EAC7B,6CAA6C;EAC7C,eAAe;EACf,gBAAgB;EAChB,eAAe;EACf,cAAc;EACd,mCAAmC;EACnC,aAAa;EACb,mBAAmB;AACrB;AACA;EACE,aAAa;EACb,mBAAmB;AACrB;AACA;;EAEE,gBAAgB;EAChB,gBAAgB;EAChB,sBAAsB;EACtB,eAAe;EACf,YAAY;EACZ,aAAa;EACb,mBAAmB;EACnB,4BAA4B;EAC5B,2BAA2B;EAC3B,6BAA6B;EAC7B,aAAa;AACf;AACA;;EAEE,cAAc;EACd,WAAW;EACX,YAAY;EACZ,gBAAgB;EAChB,iBAAiB;EACjB,YAAY;AACd;AACA;;EAEE,yDAAiR;EACjR,YAAY;EACZ,wCAAwC;EACxC,qBAAqB;EACrB,WAAW;EACX,YAAY;AACd;AACA;;EAEE,wBAAwB;EACxB,wBAAwB;AAC1B;AACA;;;;;;EAME,eAAe;EACf,UAAU;AACZ;AACA;EACE,WAAW;AACb;AACA;EACE,eAAe;AACjB;AACA;EACE,yCAAyC;AAC3C;AACA;EACE,2CAA2C;AAC7C;AACA;EACE,2CAA2C;AAC7C;AACA;;EAEE,2CAA2C;AAC7C;AACA;EACE,yDAAiU;AACnU;AACA;EACE,WAAW;EACX,YAAY;EACZ,eAAe;EACf,gBAAgB;EAChB,4BAA4B;EAC5B,wBAAwB;EACxB,aAAa;EACb,uBAAuB;AACzB;AACA;EACE,+BAA+B;AACjC;AACA;EACE,eAAe;EACf,gBAAgB;EAChB,uBAAuB;EACvB,mBAAmB;AACrB;AACA;EACE,sBAAsB;AACxB;AACA;EACE,eAAe;EACf,sBAAsB;AACxB;AACA;EACE,qBAAqB;AACvB;AACA;EACE;IACE,2BAA2B;EAC7B;EACA;IACE,6BAA6B;EAC/B;EACA;IACE,2BAA2B;EAC7B;AACF;AACA;EACE,6BAA6B;AAC/B;AACA;EACE,qBAAqB;EACrB,YAAY;EACZ,oIAAoI;EACpI,2BAA2B;EAC3B,mCAAmC;EACnC,8CAA8C;AAChD;AACA;EACE,oBAAoB;EACpB,mBAAmB;AACrB;AACA;EACE,WAAW;AACb;AACA;EACE,wBAAwB;EACxB,YAAY;AACd;AACA;EACE,WAAW;AACb;AACA;EACE,WAAW;AACb;AACA;EACE,+BAA+B;AACjC;AACA;EACE,eAAe;EACf,gBAAgB;EAChB,uBAAuB;EACvB,mBAAmB;AACrB;AACA;EACE,sBAAsB;AACxB;AACA;EACE,eAAe;EACf,sBAAsB;AACxB;AACA;EACE,qBAAqB;AACvB;AACA;EACE,8CAA8C;AAChD;AACA;EACE,+CAA+C;AACjD;AACA;EACE,aAAa;EACb,sBAAsB;EACtB,mBAAmB;EACnB,YAAY;AACd;AACA;EACE,yBAAyB;EACzB,YAAY;EACZ,gBAAgB;EAChB,uBAAuB;AACzB;AACA;EACE,oCAAoC;EACpC,sBAAsB;AACxB;AACA;EACE,WAAW;EACX,YAAY;EACZ,cAAc;AAChB;AACA;EACE,WAAW;EACX,yBAAyB;EACzB,qBAAqB;AACvB;AACA;EACE,WAAW;EACX,gBAAgB;EAChB,mBAAmB;AACrB;AACA;EACE,wBAAwB;EACxB,gBAAgB;EAChB,UAAU;EACV,MAAM;EACN,8CAA8C;EAC9C,YAAY;AACd;AACA;EACE,aAAa;AACf;AACA;EACE,WAAW;AACb;AACA;EACE,YAAY;AACd;AACA;EACE,YAAY;AACd;AACA;EACE,YAAY;AACd;AACA;EACE,sBAAsB;EACtB,2BAA2B;AAC7B;AACA;EACE,wBAAwB;AAC1B;AACA;EACE,oBAAoB;AACtB;AACA;EACE,oCAAoC;AACtC;AACA;EACE,gBAAgB;AAClB;AACA;EACE,uBAAuB;AACzB;AACA;EACE,aAAa;EACb,sBAAsB;EACtB,kBAAkB;EAClB,UAAU;EACV,gBAAgB;EAChB,kBAAkB;EAClB,cAAc;AAChB;AACA;EACE,sBAAsB;AACxB;AACA;EACE,iBAAiB;EACjB,gBAAgB;AAClB;AACA;EACE;IACE,mBAAmB;IACnB,gBAAgB;EAClB;AACF;AACA;EACE;IACE,mBAAmB;IACnB,gBAAgB;EAClB;EACA;IACE,gBAAgB;EAClB;AACF;AACA;EACE,mBAAmB;AACrB;AACA;;EAEE,sBAAsB;AACxB;AACA;EACE,gBAAgB;AAClB;AACA;EACE;IACE,SAAS;EACX;AACF;AACA;EACE;IACE,yCAAyC;EAC3C;AACF;AACA;EACE,YAAY;EACZ,aAAa;EACb,sBAAsB;EACtB,mBAAmB;AACrB;AACA;EACE,gBAAgB;EAChB,mBAAmB;EACnB,SAAS;AACX;AACA;EACE,sBAAsB;EACtB,WAAW;EACX,aAAa;EACb,sBAAsB;EACtB,aAAa;EACb,OAAO;EACP,mBAAmB;AACrB;AACA;EACE,sBAAsB;AACxB;AACA;EACE,wBAAwB;AAC1B;AACA;EACE;IACE,yDAAyD;EAC3D;AACF;AACA;EACE,aAAa;EACb,sBAAsB;EACtB,gBAAgB;AAClB\",\"sourcesContent\":[\"@charset \\\"UTF-8\\\";\\n/**\\n * @copyright Copyright (c) 2019 Julius Härtl \\n *\\n * @author Julius Härtl \\n * @author John Molakvoæ \\n *\\n * @license GNU AGPL version 3 or any later version\\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.toastify.dialogs {\\n min-width: 200px;\\n background: none;\\n background-color: var(--color-main-background);\\n color: var(--color-main-text);\\n box-shadow: 0 0 6px 0 var(--color-box-shadow);\\n padding: 0 12px;\\n margin-top: 45px;\\n position: fixed;\\n z-index: 10100;\\n border-radius: var(--border-radius);\\n display: flex;\\n align-items: center;\\n}\\n.toastify.dialogs .toast-undo-container {\\n display: flex;\\n align-items: center;\\n}\\n.toastify.dialogs .toast-undo-button,\\n.toastify.dialogs .toast-close {\\n position: static;\\n overflow: hidden;\\n box-sizing: border-box;\\n min-width: 44px;\\n height: 100%;\\n padding: 12px;\\n white-space: nowrap;\\n background-repeat: no-repeat;\\n background-position: center;\\n background-color: transparent;\\n min-height: 0;\\n}\\n.toastify.dialogs .toast-undo-button.toast-close,\\n.toastify.dialogs .toast-close.toast-close {\\n text-indent: 0;\\n opacity: .4;\\n border: none;\\n min-height: 44px;\\n margin-left: 10px;\\n font-size: 0;\\n}\\n.toastify.dialogs .toast-undo-button.toast-close:before,\\n.toastify.dialogs .toast-close.toast-close:before {\\n background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGhlaWdodD0iMTYiIHdpZHRoPSIxNiI+CiAgPHBhdGggZD0iTTE0IDEyLjNMMTIuMyAxNCA4IDkuNyAzLjcgMTQgMiAxMi4zIDYuMyA4IDIgMy43IDMuNyAyIDggNi4zIDEyLjMgMiAxNCAzLjcgOS43IDh6Ii8+Cjwvc3ZnPgo=);\\n content: \\\" \\\";\\n filter: var(--background-invert-if-dark);\\n display: inline-block;\\n width: 16px;\\n height: 16px;\\n}\\n.toastify.dialogs .toast-undo-button.toast-undo-button,\\n.toastify.dialogs .toast-close.toast-undo-button {\\n height: calc(100% - 6px);\\n margin: 3px 3px 3px 12px;\\n}\\n.toastify.dialogs .toast-undo-button:hover,\\n.toastify.dialogs .toast-undo-button:focus,\\n.toastify.dialogs .toast-undo-button:active,\\n.toastify.dialogs .toast-close:hover,\\n.toastify.dialogs .toast-close:focus,\\n.toastify.dialogs .toast-close:active {\\n cursor: pointer;\\n opacity: 1;\\n}\\n.toastify.dialogs.toastify-top {\\n right: 10px;\\n}\\n.toastify.dialogs.toast-with-click {\\n cursor: pointer;\\n}\\n.toastify.dialogs.toast-error {\\n border-left: 3px solid var(--color-error);\\n}\\n.toastify.dialogs.toast-info {\\n border-left: 3px solid var(--color-primary);\\n}\\n.toastify.dialogs.toast-warning {\\n border-left: 3px solid var(--color-warning);\\n}\\n.toastify.dialogs.toast-success,\\n.toastify.dialogs.toast-undo {\\n border-left: 3px solid var(--color-success);\\n}\\n.theme--dark .toastify.dialogs .toast-close.toast-close:before {\\n background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGhlaWdodD0iMTYiIHdpZHRoPSIxNiI+CiAgPHBhdGggZD0iTTE0IDEyLjNMMTIuMyAxNCA4IDkuNyAzLjcgMTQgMiAxMi4zIDYuMyA4IDIgMy43IDMuNyAyIDggNi4zIDEyLjMgMiAxNCAzLjcgOS43IDh6IiBzdHlsZT0iZmlsbC1vcGFjaXR5OjE7ZmlsbDojZmZmZmZmIi8+Cjwvc3ZnPgo=);\\n}\\n._file-picker__file-icon_1vgv4_5 {\\n width: 32px;\\n height: 32px;\\n min-width: 32px;\\n min-height: 32px;\\n background-repeat: no-repeat;\\n background-size: contain;\\n display: flex;\\n justify-content: center;\\n}\\ntr.file-picker__row[data-v-6aded0d9] {\\n height: var(--row-height, 50px);\\n}\\ntr.file-picker__row td[data-v-6aded0d9] {\\n cursor: pointer;\\n overflow: hidden;\\n text-overflow: ellipsis;\\n border-bottom: none;\\n}\\ntr.file-picker__row td[data-v-6aded0d9]:not(.row-checkbox) {\\n padding-inline: 14px 0;\\n}\\ntr.file-picker__row td.row-size[data-v-6aded0d9] {\\n text-align: end;\\n padding-inline: 0 14px;\\n}\\ntr.file-picker__row td.row-name[data-v-6aded0d9] {\\n padding-inline: 2px 0;\\n}\\n@keyframes gradient-6aded0d9 {\\n 0% {\\n background-position: 0% 50%;\\n }\\n 50% {\\n background-position: 100% 50%;\\n }\\n to {\\n background-position: 0% 50%;\\n }\\n}\\n.loading-row .row-checkbox[data-v-6aded0d9] {\\n text-align: center !important;\\n}\\n.loading-row span[data-v-6aded0d9] {\\n display: inline-block;\\n height: 24px;\\n background: linear-gradient(to right, var(--color-background-darker), var(--color-text-maxcontrast), var(--color-background-darker));\\n background-size: 600px 100%;\\n border-radius: var(--border-radius);\\n animation: gradient-6aded0d9 12s ease infinite;\\n}\\n.loading-row .row-wrapper[data-v-6aded0d9] {\\n display: inline-flex;\\n align-items: center;\\n}\\n.loading-row .row-checkbox span[data-v-6aded0d9] {\\n width: 24px;\\n}\\n.loading-row .row-name span[data-v-6aded0d9]:last-of-type {\\n margin-inline-start: 6px;\\n width: 130px;\\n}\\n.loading-row .row-size span[data-v-6aded0d9] {\\n width: 80px;\\n}\\n.loading-row .row-modified span[data-v-6aded0d9] {\\n width: 90px;\\n}\\ntr.file-picker__row[data-v-ee6f34b5] {\\n height: var(--row-height, 50px);\\n}\\ntr.file-picker__row td[data-v-ee6f34b5] {\\n cursor: pointer;\\n overflow: hidden;\\n text-overflow: ellipsis;\\n border-bottom: none;\\n}\\ntr.file-picker__row td[data-v-ee6f34b5]:not(.row-checkbox) {\\n padding-inline: 14px 0;\\n}\\ntr.file-picker__row td.row-size[data-v-ee6f34b5] {\\n text-align: end;\\n padding-inline: 0 14px;\\n}\\ntr.file-picker__row td.row-name[data-v-ee6f34b5] {\\n padding-inline: 2px 0;\\n}\\n.file-picker__row--selected[data-v-ee6f34b5] {\\n background-color: var(--color-background-dark);\\n}\\n.file-picker__row[data-v-ee6f34b5]:hover {\\n background-color: var(--color-background-hover);\\n}\\n.file-picker__name-container[data-v-ee6f34b5] {\\n display: flex;\\n justify-content: start;\\n align-items: center;\\n height: 100%;\\n}\\n.file-picker__file-name[data-v-ee6f34b5] {\\n padding-inline-start: 6px;\\n min-width: 0;\\n overflow: hidden;\\n text-overflow: ellipsis;\\n}\\n.file-picker__file-extension[data-v-ee6f34b5] {\\n color: var(--color-text-maxcontrast);\\n min-width: fit-content;\\n}\\n.file-picker__header-preview[data-v-4297db37] {\\n width: 22px;\\n height: 32px;\\n flex: 0 0 auto;\\n}\\n.file-picker__files[data-v-4297db37] {\\n margin: 2px;\\n margin-inline-start: 12px;\\n overflow: scroll auto;\\n}\\n.file-picker__files table[data-v-4297db37] {\\n width: 100%;\\n max-height: 100%;\\n table-layout: fixed;\\n}\\n.file-picker__files th[data-v-4297db37] {\\n position: -webkit-sticky;\\n position: sticky;\\n z-index: 1;\\n top: 0;\\n background-color: var(--color-main-background);\\n padding: 2px;\\n}\\n.file-picker__files th .header-wrapper[data-v-4297db37] {\\n display: flex;\\n}\\n.file-picker__files th.row-checkbox[data-v-4297db37] {\\n width: 44px;\\n}\\n.file-picker__files th.row-name[data-v-4297db37] {\\n width: 230px;\\n}\\n.file-picker__files th.row-size[data-v-4297db37] {\\n width: 100px;\\n}\\n.file-picker__files th.row-modified[data-v-4297db37] {\\n width: 120px;\\n}\\n.file-picker__files th[data-v-4297db37]:not(.row-size) .button-vue__wrapper {\\n justify-content: start;\\n flex-direction: row-reverse;\\n}\\n.file-picker__files th[data-v-4297db37]:not(.row-size) .button-vue {\\n padding-inline: 16px 4px;\\n}\\n.file-picker__files th.row-size[data-v-4297db37] .button-vue__wrapper {\\n justify-content: end;\\n}\\n.file-picker__files th[data-v-4297db37] .button-vue__wrapper {\\n color: var(--color-text-maxcontrast);\\n}\\n.file-picker__files th[data-v-4297db37] .button-vue__wrapper .button-vue__text {\\n font-weight: 400;\\n}\\n.file-picker__breadcrumbs[data-v-3bc9efa5] {\\n flex-grow: 0 !important;\\n}\\n.file-picker__side[data-v-fcfd0f23] {\\n display: flex;\\n flex-direction: column;\\n align-items: start;\\n gap: .5rem;\\n min-width: 200px;\\n padding-block: 2px;\\n overflow: auto;\\n}\\n.file-picker__side[data-v-fcfd0f23] .button-vue__wrapper {\\n justify-content: start;\\n}\\n.file-picker__filter-input[data-v-fcfd0f23] {\\n margin-block: 7px;\\n max-width: 260px;\\n}\\n@media (max-width: 736px) {\\n .file-picker__side[data-v-fcfd0f23] {\\n flex-direction: row;\\n min-width: unset;\\n }\\n}\\n@media (max-width: 512px) {\\n .file-picker__side[data-v-fcfd0f23] {\\n flex-direction: row;\\n min-width: unset;\\n }\\n .file-picker__filter-input[data-v-fcfd0f23] {\\n max-width: unset;\\n }\\n}\\n.file-picker__navigation {\\n padding-inline: 2px;\\n}\\n.file-picker__navigation,\\n.file-picker__navigation * {\\n box-sizing: border-box;\\n}\\n.file-picker__navigation .v-select.select {\\n min-width: 220px;\\n}\\n@media (min-width: 513px) and (max-width: 736px) {\\n .file-picker__navigation {\\n gap: 11px;\\n }\\n}\\n@media (max-width: 512px) {\\n .file-picker__navigation {\\n flex-direction: column-reverse !important;\\n }\\n}\\n.file-picker__view[data-v-86a13079] {\\n height: 50px;\\n display: flex;\\n justify-content: start;\\n align-items: center;\\n}\\n.file-picker__view h3[data-v-86a13079] {\\n font-weight: 700;\\n height: fit-content;\\n margin: 0;\\n}\\n.file-picker__main[data-v-86a13079] {\\n box-sizing: border-box;\\n width: 100%;\\n display: flex;\\n flex-direction: column;\\n min-height: 0;\\n flex: 1;\\n padding-inline: 2px;\\n}\\n.file-picker__main *[data-v-86a13079] {\\n box-sizing: border-box;\\n}\\n[data-v-86a13079] .file-picker {\\n height: min(80vh, 800px);\\n}\\n@media (max-width: 512px) {\\n [data-v-86a13079] .file-picker {\\n height: calc(100% - 16px - var(--default-clickable-area));\\n }\\n}\\n[data-v-86a13079] .file-picker__content {\\n display: flex;\\n flex-direction: column;\\n overflow: hidden;\\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, `.template-picker__item[data-v-0859a92c]{display:flex}.template-picker__label[data-v-0859a92c]{display:flex;align-items:center;flex:1 1;flex-direction:column}.template-picker__label[data-v-0859a92c],.template-picker__label *[data-v-0859a92c]{cursor:pointer;user-select:none}.template-picker__label[data-v-0859a92c]::before{display:none !important}.template-picker__preview[data-v-0859a92c]{display:block;overflow:hidden;flex:1 1;width:var(--width);min-height:var(--height);max-height:var(--height);padding:0;border:var(--border) solid var(--color-border);border-radius:var(--border-radius-large)}input:checked+label>.template-picker__preview[data-v-0859a92c]{border-color:var(--color-primary-element)}.template-picker__preview--failed[data-v-0859a92c]{display:flex}.template-picker__image[data-v-0859a92c]{max-width:100%;background-color:var(--color-main-background);object-fit:cover}.template-picker__preview--failed .template-picker__image[data-v-0859a92c]{width:calc(var(--margin)*8);margin:auto;background-color:rgba(0,0,0,0) !important;object-fit:initial}.template-picker__title[data-v-0859a92c]{overflow:hidden;max-width:calc(var(--width) + 4px);padding:var(--margin);white-space:nowrap;text-overflow:ellipsis}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/components/TemplatePreview.vue\"],\"names\":[],\"mappings\":\"AAGC,wCACC,YAAA,CAGD,yCACC,YAAA,CAEA,kBAAA,CACA,QAAA,CACA,qBAAA,CAEA,oFACC,cAAA,CACA,gBAAA,CAGD,iDACC,uBAAA,CAIF,2CACC,aAAA,CACA,eAAA,CAEA,QAAA,CACA,kBAAA,CACA,wBAAA,CACA,wBAAA,CACA,SAAA,CACA,8CAAA,CACA,wCAAA,CAEA,+DACC,yCAAA,CAGD,mDAEC,YAAA,CAIF,yCACC,cAAA,CACA,6CAAA,CAEA,gBAAA,CAID,2EACC,2BAAA,CAEA,WAAA,CACA,yCAAA,CAEA,kBAAA,CAGD,yCACC,eAAA,CAEA,kCAAA,CACA,qBAAA,CACA,kBAAA,CACA,sBAAA\",\"sourcesContent\":[\"\\n\\n.template-picker {\\n\\t&__item {\\n\\t\\tdisplay: flex;\\n\\t}\\n\\n\\t&__label {\\n\\t\\tdisplay: flex;\\n\\t\\t// Align in the middle of the grid\\n\\t\\talign-items: center;\\n\\t\\tflex: 1 1;\\n\\t\\tflex-direction: column;\\n\\n\\t\\t&, * {\\n\\t\\t\\tcursor: pointer;\\n\\t\\t\\tuser-select: none;\\n\\t\\t}\\n\\n\\t\\t&::before {\\n\\t\\t\\tdisplay: none !important;\\n\\t\\t}\\n\\t}\\n\\n\\t&__preview {\\n\\t\\tdisplay: block;\\n\\t\\toverflow: hidden;\\n\\t\\t// Stretch so all entries are the same width\\n\\t\\tflex: 1 1;\\n\\t\\twidth: var(--width);\\n\\t\\tmin-height: var(--height);\\n\\t\\tmax-height: var(--height);\\n\\t\\tpadding: 0;\\n\\t\\tborder: var(--border) solid var(--color-border);\\n\\t\\tborder-radius: var(--border-radius-large);\\n\\n\\t\\tinput:checked + label > & {\\n\\t\\t\\tborder-color: var(--color-primary-element);\\n\\t\\t}\\n\\n\\t\\t&--failed {\\n\\t\\t\\t// Make sure to properly center fallback icon\\n\\t\\t\\tdisplay: flex;\\n\\t\\t}\\n\\t}\\n\\n\\t&__image {\\n\\t\\tmax-width: 100%;\\n\\t\\tbackground-color: var(--color-main-background);\\n\\n\\t\\tobject-fit: cover;\\n\\t}\\n\\n\\t// Failed preview, fallback to mime icon\\n\\t&__preview--failed &__image {\\n\\t\\twidth: calc(var(--margin) * 8);\\n\\t\\t// Center mime icon\\n\\t\\tmargin: auto;\\n\\t\\tbackground-color: transparent !important;\\n\\n\\t\\tobject-fit: initial;\\n\\t}\\n\\n\\t&__title {\\n\\t\\toverflow: hidden;\\n\\t\\t// also count preview border\\n\\t\\tmax-width: calc(var(--width) + 2*2px);\\n\\t\\tpadding: var(--margin);\\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, `.templates-picker__form[data-v-48121b39]{padding:calc(var(--margin)*2);padding-bottom:0}.templates-picker__form h2[data-v-48121b39]{text-align:center;font-weight:bold;margin:var(--margin) 0 calc(var(--margin)*2)}.templates-picker__list[data-v-48121b39]{display:grid;grid-gap:calc(var(--margin)*2);grid-auto-columns:1fr;max-width:calc(var(--fullwidth)*6);grid-template-columns:repeat(auto-fit, var(--fullwidth));grid-auto-rows:1fr;justify-content:center}.templates-picker__buttons[data-v-48121b39]{display:flex;justify-content:end;padding:calc(var(--margin)*2) var(--margin);position:sticky;bottom:0;background-image:linear-gradient(0, var(--gradient-main-background))}.templates-picker__buttons button[data-v-48121b39],.templates-picker__buttons input[type=submit][data-v-48121b39]{height:44px}.templates-picker[data-v-48121b39] .modal-container{position:relative}.templates-picker__loading[data-v-48121b39]{position:absolute;top:0;left:0;justify-content:center;width:100%;height:100%;margin:0;background-color:var(--color-main-background-translucent)}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/views/TemplatePicker.vue\"],\"names\":[],\"mappings\":\"AAEC,yCACC,6BAAA,CAEA,gBAAA,CAEA,4CACC,iBAAA,CACA,gBAAA,CACA,4CAAA,CAIF,yCACC,YAAA,CACA,8BAAA,CACA,qBAAA,CAEA,kCAAA,CACA,wDAAA,CAEA,kBAAA,CAEA,sBAAA,CAGD,4CACC,YAAA,CACA,mBAAA,CACA,2CAAA,CACA,eAAA,CACA,QAAA,CACA,oEAAA,CAEA,kHACC,WAAA,CAKF,oDACC,iBAAA,CAGD,4CACC,iBAAA,CACA,KAAA,CACA,MAAA,CACA,sBAAA,CACA,UAAA,CACA,WAAA,CACA,QAAA,CACA,yDAAA\",\"sourcesContent\":[\"\\n.templates-picker {\\n\\t&__form {\\n\\t\\tpadding: calc(var(--margin) * 2);\\n\\t\\t// Will be handled by the buttons\\n\\t\\tpadding-bottom: 0;\\n\\n\\t\\th2 {\\n\\t\\t\\ttext-align: center;\\n\\t\\t\\tfont-weight: bold;\\n\\t\\t\\tmargin: var(--margin) 0 calc(var(--margin) * 2);\\n\\t\\t}\\n\\t}\\n\\n\\t&__list {\\n\\t\\tdisplay: grid;\\n\\t\\tgrid-gap: calc(var(--margin) * 2);\\n\\t\\tgrid-auto-columns: 1fr;\\n\\t\\t// We want maximum 5 columns. Putting 6 as we don't count the grid gap. So it will always be lower than 6\\n\\t\\tmax-width: calc(var(--fullwidth) * 6);\\n\\t\\tgrid-template-columns: repeat(auto-fit, var(--fullwidth));\\n\\t\\t// Make sure all rows are the same height\\n\\t\\tgrid-auto-rows: 1fr;\\n\\t\\t// Center the columns set\\n\\t\\tjustify-content: center;\\n\\t}\\n\\n\\t&__buttons {\\n\\t\\tdisplay: flex;\\n\\t\\tjustify-content: end;\\n\\t\\tpadding: calc(var(--margin) * 2) var(--margin);\\n\\t\\tposition: sticky;\\n\\t\\tbottom: 0;\\n\\t\\tbackground-image: linear-gradient(0, var(--gradient-main-background));\\n\\n\\t\\tbutton, input[type='submit'] {\\n\\t\\t\\theight: 44px;\\n\\t\\t}\\n\\t}\\n\\n\\t// Make sure we're relative for the loading emptycontent on top\\n\\t::v-deep .modal-container {\\n\\t\\tposition: relative;\\n\\t}\\n\\n\\t&__loading {\\n\\t\\tposition: absolute;\\n\\t\\ttop: 0;\\n\\t\\tleft: 0;\\n\\t\\tjustify-content: center;\\n\\t\\twidth: 100%;\\n\\t\\theight: 100%;\\n\\t\\tmargin: 0;\\n\\t\\tbackground-color: var(--color-main-background-translucent);\\n\\t}\\n}\\n\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Copyright Joyent, Inc. and other Node contributors.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a\n// copy of this software and associated documentation files (the\n// \"Software\"), to deal in the Software without restriction, including\n// without limitation the rights to use, copy, modify, merge, publish,\n// distribute, sublicense, and/or sell copies of the Software, and to permit\n// persons to whom the Software is furnished to do so, subject to the\n// following conditions:\n//\n// The above copyright notice and this permission notice shall be included\n// in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS\n// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN\n// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,\n// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR\n// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE\n// USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n'use strict';\n\nvar R = typeof Reflect === 'object' ? Reflect : null\nvar ReflectApply = R && typeof R.apply === 'function'\n ? R.apply\n : function ReflectApply(target, receiver, args) {\n return Function.prototype.apply.call(target, receiver, args);\n }\n\nvar ReflectOwnKeys\nif (R && typeof R.ownKeys === 'function') {\n ReflectOwnKeys = R.ownKeys\n} else if (Object.getOwnPropertySymbols) {\n ReflectOwnKeys = function ReflectOwnKeys(target) {\n return Object.getOwnPropertyNames(target)\n .concat(Object.getOwnPropertySymbols(target));\n };\n} else {\n ReflectOwnKeys = function ReflectOwnKeys(target) {\n return Object.getOwnPropertyNames(target);\n };\n}\n\nfunction ProcessEmitWarning(warning) {\n if (console && console.warn) console.warn(warning);\n}\n\nvar NumberIsNaN = Number.isNaN || function NumberIsNaN(value) {\n return value !== value;\n}\n\nfunction EventEmitter() {\n EventEmitter.init.call(this);\n}\nmodule.exports = EventEmitter;\nmodule.exports.once = once;\n\n// Backwards-compat with node 0.10.x\nEventEmitter.EventEmitter = EventEmitter;\n\nEventEmitter.prototype._events = undefined;\nEventEmitter.prototype._eventsCount = 0;\nEventEmitter.prototype._maxListeners = undefined;\n\n// By default EventEmitters will print a warning if more than 10 listeners are\n// added to it. This is a useful default which helps finding memory leaks.\nvar defaultMaxListeners = 10;\n\nfunction checkListener(listener) {\n if (typeof listener !== 'function') {\n throw new TypeError('The \"listener\" argument must be of type Function. Received type ' + typeof listener);\n }\n}\n\nObject.defineProperty(EventEmitter, 'defaultMaxListeners', {\n enumerable: true,\n get: function() {\n return defaultMaxListeners;\n },\n set: function(arg) {\n if (typeof arg !== 'number' || arg < 0 || NumberIsNaN(arg)) {\n throw new RangeError('The value of \"defaultMaxListeners\" is out of range. It must be a non-negative number. Received ' + arg + '.');\n }\n defaultMaxListeners = arg;\n }\n});\n\nEventEmitter.init = function() {\n\n if (this._events === undefined ||\n this._events === Object.getPrototypeOf(this)._events) {\n this._events = Object.create(null);\n this._eventsCount = 0;\n }\n\n this._maxListeners = this._maxListeners || undefined;\n};\n\n// Obviously not all Emitters should be limited to 10. This function allows\n// that to be increased. Set to zero for unlimited.\nEventEmitter.prototype.setMaxListeners = function setMaxListeners(n) {\n if (typeof n !== 'number' || n < 0 || NumberIsNaN(n)) {\n throw new RangeError('The value of \"n\" is out of range. It must be a non-negative number. Received ' + n + '.');\n }\n this._maxListeners = n;\n return this;\n};\n\nfunction _getMaxListeners(that) {\n if (that._maxListeners === undefined)\n return EventEmitter.defaultMaxListeners;\n return that._maxListeners;\n}\n\nEventEmitter.prototype.getMaxListeners = function getMaxListeners() {\n return _getMaxListeners(this);\n};\n\nEventEmitter.prototype.emit = function emit(type) {\n var args = [];\n for (var i = 1; i < arguments.length; i++) args.push(arguments[i]);\n var doError = (type === 'error');\n\n var events = this._events;\n if (events !== undefined)\n doError = (doError && events.error === undefined);\n else if (!doError)\n return false;\n\n // If there is no 'error' event listener then throw.\n if (doError) {\n var er;\n if (args.length > 0)\n er = args[0];\n if (er instanceof Error) {\n // Note: The comments on the `throw` lines are intentional, they show\n // up in Node's output if this results in an unhandled exception.\n throw er; // Unhandled 'error' event\n }\n // At least give some kind of context to the user\n var err = new Error('Unhandled error.' + (er ? ' (' + er.message + ')' : ''));\n err.context = er;\n throw err; // Unhandled 'error' event\n }\n\n var handler = events[type];\n\n if (handler === undefined)\n return false;\n\n if (typeof handler === 'function') {\n ReflectApply(handler, this, args);\n } else {\n var len = handler.length;\n var listeners = arrayClone(handler, len);\n for (var i = 0; i < len; ++i)\n ReflectApply(listeners[i], this, args);\n }\n\n return true;\n};\n\nfunction _addListener(target, type, listener, prepend) {\n var m;\n var events;\n var existing;\n\n checkListener(listener);\n\n events = target._events;\n if (events === undefined) {\n events = target._events = Object.create(null);\n target._eventsCount = 0;\n } else {\n // To avoid recursion in the case that type === \"newListener\"! Before\n // adding it to the listeners, first emit \"newListener\".\n if (events.newListener !== undefined) {\n target.emit('newListener', type,\n listener.listener ? listener.listener : listener);\n\n // Re-assign `events` because a newListener handler could have caused the\n // this._events to be assigned to a new object\n events = target._events;\n }\n existing = events[type];\n }\n\n if (existing === undefined) {\n // Optimize the case of one listener. Don't need the extra array object.\n existing = events[type] = listener;\n ++target._eventsCount;\n } else {\n if (typeof existing === 'function') {\n // Adding the second element, need to change to array.\n existing = events[type] =\n prepend ? [listener, existing] : [existing, listener];\n // If we've already got an array, just append.\n } else if (prepend) {\n existing.unshift(listener);\n } else {\n existing.push(listener);\n }\n\n // Check for listener leak\n m = _getMaxListeners(target);\n if (m > 0 && existing.length > m && !existing.warned) {\n existing.warned = true;\n // No error code for this since it is a Warning\n // eslint-disable-next-line no-restricted-syntax\n var w = new Error('Possible EventEmitter memory leak detected. ' +\n existing.length + ' ' + String(type) + ' listeners ' +\n 'added. Use emitter.setMaxListeners() to ' +\n 'increase limit');\n w.name = 'MaxListenersExceededWarning';\n w.emitter = target;\n w.type = type;\n w.count = existing.length;\n ProcessEmitWarning(w);\n }\n }\n\n return target;\n}\n\nEventEmitter.prototype.addListener = function addListener(type, listener) {\n return _addListener(this, type, listener, false);\n};\n\nEventEmitter.prototype.on = EventEmitter.prototype.addListener;\n\nEventEmitter.prototype.prependListener =\n function prependListener(type, listener) {\n return _addListener(this, type, listener, true);\n };\n\nfunction onceWrapper() {\n if (!this.fired) {\n this.target.removeListener(this.type, this.wrapFn);\n this.fired = true;\n if (arguments.length === 0)\n return this.listener.call(this.target);\n return this.listener.apply(this.target, arguments);\n }\n}\n\nfunction _onceWrap(target, type, listener) {\n var state = { fired: false, wrapFn: undefined, target: target, type: type, listener: listener };\n var wrapped = onceWrapper.bind(state);\n wrapped.listener = listener;\n state.wrapFn = wrapped;\n return wrapped;\n}\n\nEventEmitter.prototype.once = function once(type, listener) {\n checkListener(listener);\n this.on(type, _onceWrap(this, type, listener));\n return this;\n};\n\nEventEmitter.prototype.prependOnceListener =\n function prependOnceListener(type, listener) {\n checkListener(listener);\n this.prependListener(type, _onceWrap(this, type, listener));\n return this;\n };\n\n// Emits a 'removeListener' event if and only if the listener was removed.\nEventEmitter.prototype.removeListener =\n function removeListener(type, listener) {\n var list, events, position, i, originalListener;\n\n checkListener(listener);\n\n events = this._events;\n if (events === undefined)\n return this;\n\n list = events[type];\n if (list === undefined)\n return this;\n\n if (list === listener || list.listener === listener) {\n if (--this._eventsCount === 0)\n this._events = Object.create(null);\n else {\n delete events[type];\n if (events.removeListener)\n this.emit('removeListener', type, list.listener || listener);\n }\n } else if (typeof list !== 'function') {\n position = -1;\n\n for (i = list.length - 1; i >= 0; i--) {\n if (list[i] === listener || list[i].listener === listener) {\n originalListener = list[i].listener;\n position = i;\n break;\n }\n }\n\n if (position < 0)\n return this;\n\n if (position === 0)\n list.shift();\n else {\n spliceOne(list, position);\n }\n\n if (list.length === 1)\n events[type] = list[0];\n\n if (events.removeListener !== undefined)\n this.emit('removeListener', type, originalListener || listener);\n }\n\n return this;\n };\n\nEventEmitter.prototype.off = EventEmitter.prototype.removeListener;\n\nEventEmitter.prototype.removeAllListeners =\n function removeAllListeners(type) {\n var listeners, events, i;\n\n events = this._events;\n if (events === undefined)\n return this;\n\n // not listening for removeListener, no need to emit\n if (events.removeListener === undefined) {\n if (arguments.length === 0) {\n this._events = Object.create(null);\n this._eventsCount = 0;\n } else if (events[type] !== undefined) {\n if (--this._eventsCount === 0)\n this._events = Object.create(null);\n else\n delete events[type];\n }\n return this;\n }\n\n // emit removeListener for all listeners on all events\n if (arguments.length === 0) {\n var keys = Object.keys(events);\n var key;\n for (i = 0; i < keys.length; ++i) {\n key = keys[i];\n if (key === 'removeListener') continue;\n this.removeAllListeners(key);\n }\n this.removeAllListeners('removeListener');\n this._events = Object.create(null);\n this._eventsCount = 0;\n return this;\n }\n\n listeners = events[type];\n\n if (typeof listeners === 'function') {\n this.removeListener(type, listeners);\n } else if (listeners !== undefined) {\n // LIFO order\n for (i = listeners.length - 1; i >= 0; i--) {\n this.removeListener(type, listeners[i]);\n }\n }\n\n return this;\n };\n\nfunction _listeners(target, type, unwrap) {\n var events = target._events;\n\n if (events === undefined)\n return [];\n\n var evlistener = events[type];\n if (evlistener === undefined)\n return [];\n\n if (typeof evlistener === 'function')\n return unwrap ? [evlistener.listener || evlistener] : [evlistener];\n\n return unwrap ?\n unwrapListeners(evlistener) : arrayClone(evlistener, evlistener.length);\n}\n\nEventEmitter.prototype.listeners = function listeners(type) {\n return _listeners(this, type, true);\n};\n\nEventEmitter.prototype.rawListeners = function rawListeners(type) {\n return _listeners(this, type, false);\n};\n\nEventEmitter.listenerCount = function(emitter, type) {\n if (typeof emitter.listenerCount === 'function') {\n return emitter.listenerCount(type);\n } else {\n return listenerCount.call(emitter, type);\n }\n};\n\nEventEmitter.prototype.listenerCount = listenerCount;\nfunction listenerCount(type) {\n var events = this._events;\n\n if (events !== undefined) {\n var evlistener = events[type];\n\n if (typeof evlistener === 'function') {\n return 1;\n } else if (evlistener !== undefined) {\n return evlistener.length;\n }\n }\n\n return 0;\n}\n\nEventEmitter.prototype.eventNames = function eventNames() {\n return this._eventsCount > 0 ? ReflectOwnKeys(this._events) : [];\n};\n\nfunction arrayClone(arr, n) {\n var copy = new Array(n);\n for (var i = 0; i < n; ++i)\n copy[i] = arr[i];\n return copy;\n}\n\nfunction spliceOne(list, index) {\n for (; index + 1 < list.length; index++)\n list[index] = list[index + 1];\n list.pop();\n}\n\nfunction unwrapListeners(arr) {\n var ret = new Array(arr.length);\n for (var i = 0; i < ret.length; ++i) {\n ret[i] = arr[i].listener || arr[i];\n }\n return ret;\n}\n\nfunction once(emitter, name) {\n return new Promise(function (resolve, reject) {\n function errorListener(err) {\n emitter.removeListener(name, resolver);\n reject(err);\n }\n\n function resolver() {\n if (typeof emitter.removeListener === 'function') {\n emitter.removeListener('error', errorListener);\n }\n resolve([].slice.call(arguments));\n };\n\n eventTargetAgnosticAddListener(emitter, name, resolver, { once: true });\n if (name !== 'error') {\n addErrorHandlerIfEventEmitter(emitter, errorListener, { once: true });\n }\n });\n}\n\nfunction addErrorHandlerIfEventEmitter(emitter, handler, flags) {\n if (typeof emitter.on === 'function') {\n eventTargetAgnosticAddListener(emitter, 'error', handler, flags);\n }\n}\n\nfunction eventTargetAgnosticAddListener(emitter, name, listener, flags) {\n if (typeof emitter.on === 'function') {\n if (flags.once) {\n emitter.once(name, listener);\n } else {\n emitter.on(name, listener);\n }\n } else if (typeof emitter.addEventListener === 'function') {\n // EventTarget does not have `error` event semantics like Node\n // EventEmitters, we do not listen for `error` events here.\n emitter.addEventListener(name, function wrapListener(arg) {\n // IE does not have builtin `{ once: true }` support so we\n // have to do it manually.\n if (flags.once) {\n emitter.removeEventListener(name, wrapListener);\n }\n listener(arg);\n });\n } else {\n throw new TypeError('The \"emitter\" argument must be of type EventEmitter. Received type ' + typeof emitter);\n }\n}\n","var http = require('http')\nvar url = require('url')\n\nvar https = module.exports\n\nfor (var key in http) {\n if (http.hasOwnProperty(key)) https[key] = http[key]\n}\n\nhttps.request = function (params, cb) {\n params = validateParams(params)\n return http.request.call(this, params, cb)\n}\n\nhttps.get = function (params, cb) {\n params = validateParams(params)\n return http.get.call(this, params, cb)\n}\n\nfunction validateParams (params) {\n if (typeof params === 'string') {\n params = url.parse(params)\n }\n if (!params.protocol) {\n params.protocol = 'https:'\n }\n if (params.protocol !== 'https:') {\n throw new Error('Protocol \"' + params.protocol + '\" not supported. Expected \"https:\"')\n }\n return params\n}\n","'use strict';\n\nfunction _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; subClass.__proto__ = superClass; }\n\nvar codes = {};\n\nfunction createErrorType(code, message, Base) {\n if (!Base) {\n Base = Error;\n }\n\n function getMessage(arg1, arg2, arg3) {\n if (typeof message === 'string') {\n return message;\n } else {\n return message(arg1, arg2, arg3);\n }\n }\n\n var NodeError =\n /*#__PURE__*/\n function (_Base) {\n _inheritsLoose(NodeError, _Base);\n\n function NodeError(arg1, arg2, arg3) {\n return _Base.call(this, getMessage(arg1, arg2, arg3)) || this;\n }\n\n return NodeError;\n }(Base);\n\n NodeError.prototype.name = Base.name;\n NodeError.prototype.code = code;\n codes[code] = NodeError;\n} // https://github.com/nodejs/node/blob/v10.8.0/lib/internal/errors.js\n\n\nfunction oneOf(expected, thing) {\n if (Array.isArray(expected)) {\n var len = expected.length;\n expected = expected.map(function (i) {\n return String(i);\n });\n\n if (len > 2) {\n return \"one of \".concat(thing, \" \").concat(expected.slice(0, len - 1).join(', '), \", or \") + expected[len - 1];\n } else if (len === 2) {\n return \"one of \".concat(thing, \" \").concat(expected[0], \" or \").concat(expected[1]);\n } else {\n return \"of \".concat(thing, \" \").concat(expected[0]);\n }\n } else {\n return \"of \".concat(thing, \" \").concat(String(expected));\n }\n} // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/startsWith\n\n\nfunction startsWith(str, search, pos) {\n return str.substr(!pos || pos < 0 ? 0 : +pos, search.length) === search;\n} // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/endsWith\n\n\nfunction endsWith(str, search, this_len) {\n if (this_len === undefined || this_len > str.length) {\n this_len = str.length;\n }\n\n return str.substring(this_len - search.length, this_len) === search;\n} // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/includes\n\n\nfunction includes(str, search, start) {\n if (typeof start !== 'number') {\n start = 0;\n }\n\n if (start + search.length > str.length) {\n return false;\n } else {\n return str.indexOf(search, start) !== -1;\n }\n}\n\ncreateErrorType('ERR_INVALID_OPT_VALUE', function (name, value) {\n return 'The value \"' + value + '\" is invalid for option \"' + name + '\"';\n}, TypeError);\ncreateErrorType('ERR_INVALID_ARG_TYPE', function (name, expected, actual) {\n // determiner: 'must be' or 'must not be'\n var determiner;\n\n if (typeof expected === 'string' && startsWith(expected, 'not ')) {\n determiner = 'must not be';\n expected = expected.replace(/^not /, '');\n } else {\n determiner = 'must be';\n }\n\n var msg;\n\n if (endsWith(name, ' argument')) {\n // For cases like 'first argument'\n msg = \"The \".concat(name, \" \").concat(determiner, \" \").concat(oneOf(expected, 'type'));\n } else {\n var type = includes(name, '.') ? 'property' : 'argument';\n msg = \"The \\\"\".concat(name, \"\\\" \").concat(type, \" \").concat(determiner, \" \").concat(oneOf(expected, 'type'));\n }\n\n msg += \". Received type \".concat(typeof actual);\n return msg;\n}, TypeError);\ncreateErrorType('ERR_STREAM_PUSH_AFTER_EOF', 'stream.push() after EOF');\ncreateErrorType('ERR_METHOD_NOT_IMPLEMENTED', function (name) {\n return 'The ' + name + ' method is not implemented';\n});\ncreateErrorType('ERR_STREAM_PREMATURE_CLOSE', 'Premature close');\ncreateErrorType('ERR_STREAM_DESTROYED', function (name) {\n return 'Cannot call ' + name + ' after a stream was destroyed';\n});\ncreateErrorType('ERR_MULTIPLE_CALLBACK', 'Callback called multiple times');\ncreateErrorType('ERR_STREAM_CANNOT_PIPE', 'Cannot pipe, not readable');\ncreateErrorType('ERR_STREAM_WRITE_AFTER_END', 'write after end');\ncreateErrorType('ERR_STREAM_NULL_VALUES', 'May not write null values to stream', TypeError);\ncreateErrorType('ERR_UNKNOWN_ENCODING', function (arg) {\n return 'Unknown encoding: ' + arg;\n}, TypeError);\ncreateErrorType('ERR_STREAM_UNSHIFT_AFTER_END_EVENT', 'stream.unshift() after end event');\nmodule.exports.codes = codes;\n","// Copyright Joyent, Inc. and other Node contributors.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a\n// copy of this software and associated documentation files (the\n// \"Software\"), to deal in the Software without restriction, including\n// without limitation the rights to use, copy, modify, merge, publish,\n// distribute, sublicense, and/or sell copies of the Software, and to permit\n// persons to whom the Software is furnished to do so, subject to the\n// following conditions:\n//\n// The above copyright notice and this permission notice shall be included\n// in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS\n// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN\n// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,\n// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR\n// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE\n// USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n// a duplex stream is just a stream that is both readable and writable.\n// Since JS doesn't have multiple prototypal inheritance, this class\n// prototypally inherits from Readable, and then parasitically from\n// Writable.\n\n'use strict';\n\n/**/\nvar objectKeys = Object.keys || function (obj) {\n var keys = [];\n for (var key in obj) keys.push(key);\n return keys;\n};\n/**/\n\nmodule.exports = Duplex;\nvar Readable = require('./_stream_readable');\nvar Writable = require('./_stream_writable');\nrequire('inherits')(Duplex, Readable);\n{\n // Allow the keys array to be GC'ed.\n var keys = objectKeys(Writable.prototype);\n for (var v = 0; v < keys.length; v++) {\n var method = keys[v];\n if (!Duplex.prototype[method]) Duplex.prototype[method] = Writable.prototype[method];\n }\n}\nfunction Duplex(options) {\n if (!(this instanceof Duplex)) return new Duplex(options);\n Readable.call(this, options);\n Writable.call(this, options);\n this.allowHalfOpen = true;\n if (options) {\n if (options.readable === false) this.readable = false;\n if (options.writable === false) this.writable = false;\n if (options.allowHalfOpen === false) {\n this.allowHalfOpen = false;\n this.once('end', onend);\n }\n }\n}\nObject.defineProperty(Duplex.prototype, 'writableHighWaterMark', {\n // making it explicit this property is not enumerable\n // because otherwise some prototype manipulation in\n // userland will fail\n enumerable: false,\n get: function get() {\n return this._writableState.highWaterMark;\n }\n});\nObject.defineProperty(Duplex.prototype, 'writableBuffer', {\n // making it explicit this property is not enumerable\n // because otherwise some prototype manipulation in\n // userland will fail\n enumerable: false,\n get: function get() {\n return this._writableState && this._writableState.getBuffer();\n }\n});\nObject.defineProperty(Duplex.prototype, 'writableLength', {\n // making it explicit this property is not enumerable\n // because otherwise some prototype manipulation in\n // userland will fail\n enumerable: false,\n get: function get() {\n return this._writableState.length;\n }\n});\n\n// the no-half-open enforcer\nfunction onend() {\n // If the writable side ended, then we're ok.\n if (this._writableState.ended) return;\n\n // no more data can be written.\n // But allow more writes to happen in this tick.\n process.nextTick(onEndNT, this);\n}\nfunction onEndNT(self) {\n self.end();\n}\nObject.defineProperty(Duplex.prototype, 'destroyed', {\n // making it explicit this property is not enumerable\n // because otherwise some prototype manipulation in\n // userland will fail\n enumerable: false,\n get: function get() {\n if (this._readableState === undefined || this._writableState === undefined) {\n return false;\n }\n return this._readableState.destroyed && this._writableState.destroyed;\n },\n set: function set(value) {\n // we ignore the value if the stream\n // has not been initialized yet\n if (this._readableState === undefined || this._writableState === undefined) {\n return;\n }\n\n // backward compatibility, the user is explicitly\n // managing destroyed\n this._readableState.destroyed = value;\n this._writableState.destroyed = value;\n }\n});","// Copyright Joyent, Inc. and other Node contributors.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a\n// copy of this software and associated documentation files (the\n// \"Software\"), to deal in the Software without restriction, including\n// without limitation the rights to use, copy, modify, merge, publish,\n// distribute, sublicense, and/or sell copies of the Software, and to permit\n// persons to whom the Software is furnished to do so, subject to the\n// following conditions:\n//\n// The above copyright notice and this permission notice shall be included\n// in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS\n// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN\n// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,\n// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR\n// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE\n// USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n// a passthrough stream.\n// basically just the most minimal sort of Transform stream.\n// Every written chunk gets output as-is.\n\n'use strict';\n\nmodule.exports = PassThrough;\nvar Transform = require('./_stream_transform');\nrequire('inherits')(PassThrough, Transform);\nfunction PassThrough(options) {\n if (!(this instanceof PassThrough)) return new PassThrough(options);\n Transform.call(this, options);\n}\nPassThrough.prototype._transform = function (chunk, encoding, cb) {\n cb(null, chunk);\n};","// Copyright Joyent, Inc. and other Node contributors.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a\n// copy of this software and associated documentation files (the\n// \"Software\"), to deal in the Software without restriction, including\n// without limitation the rights to use, copy, modify, merge, publish,\n// distribute, sublicense, and/or sell copies of the Software, and to permit\n// persons to whom the Software is furnished to do so, subject to the\n// following conditions:\n//\n// The above copyright notice and this permission notice shall be included\n// in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS\n// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN\n// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,\n// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR\n// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE\n// USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n'use strict';\n\nmodule.exports = Readable;\n\n/**/\nvar Duplex;\n/**/\n\nReadable.ReadableState = ReadableState;\n\n/**/\nvar EE = require('events').EventEmitter;\nvar EElistenerCount = function EElistenerCount(emitter, type) {\n return emitter.listeners(type).length;\n};\n/**/\n\n/**/\nvar Stream = require('./internal/streams/stream');\n/**/\n\nvar Buffer = require('buffer').Buffer;\nvar OurUint8Array = (typeof global !== 'undefined' ? global : typeof window !== 'undefined' ? window : typeof self !== 'undefined' ? self : {}).Uint8Array || function () {};\nfunction _uint8ArrayToBuffer(chunk) {\n return Buffer.from(chunk);\n}\nfunction _isUint8Array(obj) {\n return Buffer.isBuffer(obj) || obj instanceof OurUint8Array;\n}\n\n/**/\nvar debugUtil = require('util');\nvar debug;\nif (debugUtil && debugUtil.debuglog) {\n debug = debugUtil.debuglog('stream');\n} else {\n debug = function debug() {};\n}\n/**/\n\nvar BufferList = require('./internal/streams/buffer_list');\nvar destroyImpl = require('./internal/streams/destroy');\nvar _require = require('./internal/streams/state'),\n getHighWaterMark = _require.getHighWaterMark;\nvar _require$codes = require('../errors').codes,\n ERR_INVALID_ARG_TYPE = _require$codes.ERR_INVALID_ARG_TYPE,\n ERR_STREAM_PUSH_AFTER_EOF = _require$codes.ERR_STREAM_PUSH_AFTER_EOF,\n ERR_METHOD_NOT_IMPLEMENTED = _require$codes.ERR_METHOD_NOT_IMPLEMENTED,\n ERR_STREAM_UNSHIFT_AFTER_END_EVENT = _require$codes.ERR_STREAM_UNSHIFT_AFTER_END_EVENT;\n\n// Lazy loaded to improve the startup performance.\nvar StringDecoder;\nvar createReadableStreamAsyncIterator;\nvar from;\nrequire('inherits')(Readable, Stream);\nvar errorOrDestroy = destroyImpl.errorOrDestroy;\nvar kProxyEvents = ['error', 'close', 'destroy', 'pause', 'resume'];\nfunction prependListener(emitter, event, fn) {\n // Sadly this is not cacheable as some libraries bundle their own\n // event emitter implementation with them.\n if (typeof emitter.prependListener === 'function') return emitter.prependListener(event, fn);\n\n // This is a hack to make sure that our error handler is attached before any\n // userland ones. NEVER DO THIS. This is here only because this code needs\n // to continue to work with older versions of Node.js that do not include\n // the prependListener() method. The goal is to eventually remove this hack.\n if (!emitter._events || !emitter._events[event]) emitter.on(event, fn);else if (Array.isArray(emitter._events[event])) emitter._events[event].unshift(fn);else emitter._events[event] = [fn, emitter._events[event]];\n}\nfunction ReadableState(options, stream, isDuplex) {\n Duplex = Duplex || require('./_stream_duplex');\n options = options || {};\n\n // Duplex streams are both readable and writable, but share\n // the same options object.\n // However, some cases require setting options to different\n // values for the readable and the writable sides of the duplex stream.\n // These options can be provided separately as readableXXX and writableXXX.\n if (typeof isDuplex !== 'boolean') isDuplex = stream instanceof Duplex;\n\n // object stream flag. Used to make read(n) ignore n and to\n // make all the buffer merging and length checks go away\n this.objectMode = !!options.objectMode;\n if (isDuplex) this.objectMode = this.objectMode || !!options.readableObjectMode;\n\n // the point at which it stops calling _read() to fill the buffer\n // Note: 0 is a valid value, means \"don't call _read preemptively ever\"\n this.highWaterMark = getHighWaterMark(this, options, 'readableHighWaterMark', isDuplex);\n\n // A linked list is used to store data chunks instead of an array because the\n // linked list can remove elements from the beginning faster than\n // array.shift()\n this.buffer = new BufferList();\n this.length = 0;\n this.pipes = null;\n this.pipesCount = 0;\n this.flowing = null;\n this.ended = false;\n this.endEmitted = false;\n this.reading = false;\n\n // a flag to be able to tell if the event 'readable'/'data' is emitted\n // immediately, or on a later tick. We set this to true at first, because\n // any actions that shouldn't happen until \"later\" should generally also\n // not happen before the first read call.\n this.sync = true;\n\n // whenever we return null, then we set a flag to say\n // that we're awaiting a 'readable' event emission.\n this.needReadable = false;\n this.emittedReadable = false;\n this.readableListening = false;\n this.resumeScheduled = false;\n this.paused = true;\n\n // Should close be emitted on destroy. Defaults to true.\n this.emitClose = options.emitClose !== false;\n\n // Should .destroy() be called after 'end' (and potentially 'finish')\n this.autoDestroy = !!options.autoDestroy;\n\n // has it been destroyed\n this.destroyed = false;\n\n // Crypto is kind of old and crusty. Historically, its default string\n // encoding is 'binary' so we have to make this configurable.\n // Everything else in the universe uses 'utf8', though.\n this.defaultEncoding = options.defaultEncoding || 'utf8';\n\n // the number of writers that are awaiting a drain event in .pipe()s\n this.awaitDrain = 0;\n\n // if true, a maybeReadMore has been scheduled\n this.readingMore = false;\n this.decoder = null;\n this.encoding = null;\n if (options.encoding) {\n if (!StringDecoder) StringDecoder = require('string_decoder/').StringDecoder;\n this.decoder = new StringDecoder(options.encoding);\n this.encoding = options.encoding;\n }\n}\nfunction Readable(options) {\n Duplex = Duplex || require('./_stream_duplex');\n if (!(this instanceof Readable)) return new Readable(options);\n\n // Checking for a Stream.Duplex instance is faster here instead of inside\n // the ReadableState constructor, at least with V8 6.5\n var isDuplex = this instanceof Duplex;\n this._readableState = new ReadableState(options, this, isDuplex);\n\n // legacy\n this.readable = true;\n if (options) {\n if (typeof options.read === 'function') this._read = options.read;\n if (typeof options.destroy === 'function') this._destroy = options.destroy;\n }\n Stream.call(this);\n}\nObject.defineProperty(Readable.prototype, 'destroyed', {\n // making it explicit this property is not enumerable\n // because otherwise some prototype manipulation in\n // userland will fail\n enumerable: false,\n get: function get() {\n if (this._readableState === undefined) {\n return false;\n }\n return this._readableState.destroyed;\n },\n set: function set(value) {\n // we ignore the value if the stream\n // has not been initialized yet\n if (!this._readableState) {\n return;\n }\n\n // backward compatibility, the user is explicitly\n // managing destroyed\n this._readableState.destroyed = value;\n }\n});\nReadable.prototype.destroy = destroyImpl.destroy;\nReadable.prototype._undestroy = destroyImpl.undestroy;\nReadable.prototype._destroy = function (err, cb) {\n cb(err);\n};\n\n// Manually shove something into the read() buffer.\n// This returns true if the highWaterMark has not been hit yet,\n// similar to how Writable.write() returns true if you should\n// write() some more.\nReadable.prototype.push = function (chunk, encoding) {\n var state = this._readableState;\n var skipChunkCheck;\n if (!state.objectMode) {\n if (typeof chunk === 'string') {\n encoding = encoding || state.defaultEncoding;\n if (encoding !== state.encoding) {\n chunk = Buffer.from(chunk, encoding);\n encoding = '';\n }\n skipChunkCheck = true;\n }\n } else {\n skipChunkCheck = true;\n }\n return readableAddChunk(this, chunk, encoding, false, skipChunkCheck);\n};\n\n// Unshift should *always* be something directly out of read()\nReadable.prototype.unshift = function (chunk) {\n return readableAddChunk(this, chunk, null, true, false);\n};\nfunction readableAddChunk(stream, chunk, encoding, addToFront, skipChunkCheck) {\n debug('readableAddChunk', chunk);\n var state = stream._readableState;\n if (chunk === null) {\n state.reading = false;\n onEofChunk(stream, state);\n } else {\n var er;\n if (!skipChunkCheck) er = chunkInvalid(state, chunk);\n if (er) {\n errorOrDestroy(stream, er);\n } else if (state.objectMode || chunk && chunk.length > 0) {\n if (typeof chunk !== 'string' && !state.objectMode && Object.getPrototypeOf(chunk) !== Buffer.prototype) {\n chunk = _uint8ArrayToBuffer(chunk);\n }\n if (addToFront) {\n if (state.endEmitted) errorOrDestroy(stream, new ERR_STREAM_UNSHIFT_AFTER_END_EVENT());else addChunk(stream, state, chunk, true);\n } else if (state.ended) {\n errorOrDestroy(stream, new ERR_STREAM_PUSH_AFTER_EOF());\n } else if (state.destroyed) {\n return false;\n } else {\n state.reading = false;\n if (state.decoder && !encoding) {\n chunk = state.decoder.write(chunk);\n if (state.objectMode || chunk.length !== 0) addChunk(stream, state, chunk, false);else maybeReadMore(stream, state);\n } else {\n addChunk(stream, state, chunk, false);\n }\n }\n } else if (!addToFront) {\n state.reading = false;\n maybeReadMore(stream, state);\n }\n }\n\n // We can push more data if we are below the highWaterMark.\n // Also, if we have no data yet, we can stand some more bytes.\n // This is to work around cases where hwm=0, such as the repl.\n return !state.ended && (state.length < state.highWaterMark || state.length === 0);\n}\nfunction addChunk(stream, state, chunk, addToFront) {\n if (state.flowing && state.length === 0 && !state.sync) {\n state.awaitDrain = 0;\n stream.emit('data', chunk);\n } else {\n // update the buffer info.\n state.length += state.objectMode ? 1 : chunk.length;\n if (addToFront) state.buffer.unshift(chunk);else state.buffer.push(chunk);\n if (state.needReadable) emitReadable(stream);\n }\n maybeReadMore(stream, state);\n}\nfunction chunkInvalid(state, chunk) {\n var er;\n if (!_isUint8Array(chunk) && typeof chunk !== 'string' && chunk !== undefined && !state.objectMode) {\n er = new ERR_INVALID_ARG_TYPE('chunk', ['string', 'Buffer', 'Uint8Array'], chunk);\n }\n return er;\n}\nReadable.prototype.isPaused = function () {\n return this._readableState.flowing === false;\n};\n\n// backwards compatibility.\nReadable.prototype.setEncoding = function (enc) {\n if (!StringDecoder) StringDecoder = require('string_decoder/').StringDecoder;\n var decoder = new StringDecoder(enc);\n this._readableState.decoder = decoder;\n // If setEncoding(null), decoder.encoding equals utf8\n this._readableState.encoding = this._readableState.decoder.encoding;\n\n // Iterate over current buffer to convert already stored Buffers:\n var p = this._readableState.buffer.head;\n var content = '';\n while (p !== null) {\n content += decoder.write(p.data);\n p = p.next;\n }\n this._readableState.buffer.clear();\n if (content !== '') this._readableState.buffer.push(content);\n this._readableState.length = content.length;\n return this;\n};\n\n// Don't raise the hwm > 1GB\nvar MAX_HWM = 0x40000000;\nfunction computeNewHighWaterMark(n) {\n if (n >= MAX_HWM) {\n // TODO(ronag): Throw ERR_VALUE_OUT_OF_RANGE.\n n = MAX_HWM;\n } else {\n // Get the next highest power of 2 to prevent increasing hwm excessively in\n // tiny amounts\n n--;\n n |= n >>> 1;\n n |= n >>> 2;\n n |= n >>> 4;\n n |= n >>> 8;\n n |= n >>> 16;\n n++;\n }\n return n;\n}\n\n// This function is designed to be inlinable, so please take care when making\n// changes to the function body.\nfunction howMuchToRead(n, state) {\n if (n <= 0 || state.length === 0 && state.ended) return 0;\n if (state.objectMode) return 1;\n if (n !== n) {\n // Only flow one buffer at a time\n if (state.flowing && state.length) return state.buffer.head.data.length;else return state.length;\n }\n // If we're asking for more than the current hwm, then raise the hwm.\n if (n > state.highWaterMark) state.highWaterMark = computeNewHighWaterMark(n);\n if (n <= state.length) return n;\n // Don't have enough\n if (!state.ended) {\n state.needReadable = true;\n return 0;\n }\n return state.length;\n}\n\n// you can override either this method, or the async _read(n) below.\nReadable.prototype.read = function (n) {\n debug('read', n);\n n = parseInt(n, 10);\n var state = this._readableState;\n var nOrig = n;\n if (n !== 0) state.emittedReadable = false;\n\n // if we're doing read(0) to trigger a readable event, but we\n // already have a bunch of data in the buffer, then just trigger\n // the 'readable' event and move on.\n if (n === 0 && state.needReadable && ((state.highWaterMark !== 0 ? state.length >= state.highWaterMark : state.length > 0) || state.ended)) {\n debug('read: emitReadable', state.length, state.ended);\n if (state.length === 0 && state.ended) endReadable(this);else emitReadable(this);\n return null;\n }\n n = howMuchToRead(n, state);\n\n // if we've ended, and we're now clear, then finish it up.\n if (n === 0 && state.ended) {\n if (state.length === 0) endReadable(this);\n return null;\n }\n\n // All the actual chunk generation logic needs to be\n // *below* the call to _read. The reason is that in certain\n // synthetic stream cases, such as passthrough streams, _read\n // may be a completely synchronous operation which may change\n // the state of the read buffer, providing enough data when\n // before there was *not* enough.\n //\n // So, the steps are:\n // 1. Figure out what the state of things will be after we do\n // a read from the buffer.\n //\n // 2. If that resulting state will trigger a _read, then call _read.\n // Note that this may be asynchronous, or synchronous. Yes, it is\n // deeply ugly to write APIs this way, but that still doesn't mean\n // that the Readable class should behave improperly, as streams are\n // designed to be sync/async agnostic.\n // Take note if the _read call is sync or async (ie, if the read call\n // has returned yet), so that we know whether or not it's safe to emit\n // 'readable' etc.\n //\n // 3. Actually pull the requested chunks out of the buffer and return.\n\n // if we need a readable event, then we need to do some reading.\n var doRead = state.needReadable;\n debug('need readable', doRead);\n\n // if we currently have less than the highWaterMark, then also read some\n if (state.length === 0 || state.length - n < state.highWaterMark) {\n doRead = true;\n debug('length less than watermark', doRead);\n }\n\n // however, if we've ended, then there's no point, and if we're already\n // reading, then it's unnecessary.\n if (state.ended || state.reading) {\n doRead = false;\n debug('reading or ended', doRead);\n } else if (doRead) {\n debug('do read');\n state.reading = true;\n state.sync = true;\n // if the length is currently zero, then we *need* a readable event.\n if (state.length === 0) state.needReadable = true;\n // call internal read method\n this._read(state.highWaterMark);\n state.sync = false;\n // If _read pushed data synchronously, then `reading` will be false,\n // and we need to re-evaluate how much data we can return to the user.\n if (!state.reading) n = howMuchToRead(nOrig, state);\n }\n var ret;\n if (n > 0) ret = fromList(n, state);else ret = null;\n if (ret === null) {\n state.needReadable = state.length <= state.highWaterMark;\n n = 0;\n } else {\n state.length -= n;\n state.awaitDrain = 0;\n }\n if (state.length === 0) {\n // If we have nothing in the buffer, then we want to know\n // as soon as we *do* get something into the buffer.\n if (!state.ended) state.needReadable = true;\n\n // If we tried to read() past the EOF, then emit end on the next tick.\n if (nOrig !== n && state.ended) endReadable(this);\n }\n if (ret !== null) this.emit('data', ret);\n return ret;\n};\nfunction onEofChunk(stream, state) {\n debug('onEofChunk');\n if (state.ended) return;\n if (state.decoder) {\n var chunk = state.decoder.end();\n if (chunk && chunk.length) {\n state.buffer.push(chunk);\n state.length += state.objectMode ? 1 : chunk.length;\n }\n }\n state.ended = true;\n if (state.sync) {\n // if we are sync, wait until next tick to emit the data.\n // Otherwise we risk emitting data in the flow()\n // the readable code triggers during a read() call\n emitReadable(stream);\n } else {\n // emit 'readable' now to make sure it gets picked up.\n state.needReadable = false;\n if (!state.emittedReadable) {\n state.emittedReadable = true;\n emitReadable_(stream);\n }\n }\n}\n\n// Don't emit readable right away in sync mode, because this can trigger\n// another read() call => stack overflow. This way, it might trigger\n// a nextTick recursion warning, but that's not so bad.\nfunction emitReadable(stream) {\n var state = stream._readableState;\n debug('emitReadable', state.needReadable, state.emittedReadable);\n state.needReadable = false;\n if (!state.emittedReadable) {\n debug('emitReadable', state.flowing);\n state.emittedReadable = true;\n process.nextTick(emitReadable_, stream);\n }\n}\nfunction emitReadable_(stream) {\n var state = stream._readableState;\n debug('emitReadable_', state.destroyed, state.length, state.ended);\n if (!state.destroyed && (state.length || state.ended)) {\n stream.emit('readable');\n state.emittedReadable = false;\n }\n\n // The stream needs another readable event if\n // 1. It is not flowing, as the flow mechanism will take\n // care of it.\n // 2. It is not ended.\n // 3. It is below the highWaterMark, so we can schedule\n // another readable later.\n state.needReadable = !state.flowing && !state.ended && state.length <= state.highWaterMark;\n flow(stream);\n}\n\n// at this point, the user has presumably seen the 'readable' event,\n// and called read() to consume some data. that may have triggered\n// in turn another _read(n) call, in which case reading = true if\n// it's in progress.\n// However, if we're not ended, or reading, and the length < hwm,\n// then go ahead and try to read some more preemptively.\nfunction maybeReadMore(stream, state) {\n if (!state.readingMore) {\n state.readingMore = true;\n process.nextTick(maybeReadMore_, stream, state);\n }\n}\nfunction maybeReadMore_(stream, state) {\n // Attempt to read more data if we should.\n //\n // The conditions for reading more data are (one of):\n // - Not enough data buffered (state.length < state.highWaterMark). The loop\n // is responsible for filling the buffer with enough data if such data\n // is available. If highWaterMark is 0 and we are not in the flowing mode\n // we should _not_ attempt to buffer any extra data. We'll get more data\n // when the stream consumer calls read() instead.\n // - No data in the buffer, and the stream is in flowing mode. In this mode\n // the loop below is responsible for ensuring read() is called. Failing to\n // call read here would abort the flow and there's no other mechanism for\n // continuing the flow if the stream consumer has just subscribed to the\n // 'data' event.\n //\n // In addition to the above conditions to keep reading data, the following\n // conditions prevent the data from being read:\n // - The stream has ended (state.ended).\n // - There is already a pending 'read' operation (state.reading). This is a\n // case where the the stream has called the implementation defined _read()\n // method, but they are processing the call asynchronously and have _not_\n // called push() with new data. In this case we skip performing more\n // read()s. The execution ends in this method again after the _read() ends\n // up calling push() with more data.\n while (!state.reading && !state.ended && (state.length < state.highWaterMark || state.flowing && state.length === 0)) {\n var len = state.length;\n debug('maybeReadMore read 0');\n stream.read(0);\n if (len === state.length)\n // didn't get any data, stop spinning.\n break;\n }\n state.readingMore = false;\n}\n\n// abstract method. to be overridden in specific implementation classes.\n// call cb(er, data) where data is <= n in length.\n// for virtual (non-string, non-buffer) streams, \"length\" is somewhat\n// arbitrary, and perhaps not very meaningful.\nReadable.prototype._read = function (n) {\n errorOrDestroy(this, new ERR_METHOD_NOT_IMPLEMENTED('_read()'));\n};\nReadable.prototype.pipe = function (dest, pipeOpts) {\n var src = this;\n var state = this._readableState;\n switch (state.pipesCount) {\n case 0:\n state.pipes = dest;\n break;\n case 1:\n state.pipes = [state.pipes, dest];\n break;\n default:\n state.pipes.push(dest);\n break;\n }\n state.pipesCount += 1;\n debug('pipe count=%d opts=%j', state.pipesCount, pipeOpts);\n var doEnd = (!pipeOpts || pipeOpts.end !== false) && dest !== process.stdout && dest !== process.stderr;\n var endFn = doEnd ? onend : unpipe;\n if (state.endEmitted) process.nextTick(endFn);else src.once('end', endFn);\n dest.on('unpipe', onunpipe);\n function onunpipe(readable, unpipeInfo) {\n debug('onunpipe');\n if (readable === src) {\n if (unpipeInfo && unpipeInfo.hasUnpiped === false) {\n unpipeInfo.hasUnpiped = true;\n cleanup();\n }\n }\n }\n function onend() {\n debug('onend');\n dest.end();\n }\n\n // when the dest drains, it reduces the awaitDrain counter\n // on the source. This would be more elegant with a .once()\n // handler in flow(), but adding and removing repeatedly is\n // too slow.\n var ondrain = pipeOnDrain(src);\n dest.on('drain', ondrain);\n var cleanedUp = false;\n function cleanup() {\n debug('cleanup');\n // cleanup event handlers once the pipe is broken\n dest.removeListener('close', onclose);\n dest.removeListener('finish', onfinish);\n dest.removeListener('drain', ondrain);\n dest.removeListener('error', onerror);\n dest.removeListener('unpipe', onunpipe);\n src.removeListener('end', onend);\n src.removeListener('end', unpipe);\n src.removeListener('data', ondata);\n cleanedUp = true;\n\n // if the reader is waiting for a drain event from this\n // specific writer, then it would cause it to never start\n // flowing again.\n // So, if this is awaiting a drain, then we just call it now.\n // If we don't know, then assume that we are waiting for one.\n if (state.awaitDrain && (!dest._writableState || dest._writableState.needDrain)) ondrain();\n }\n src.on('data', ondata);\n function ondata(chunk) {\n debug('ondata');\n var ret = dest.write(chunk);\n debug('dest.write', ret);\n if (ret === false) {\n // If the user unpiped during `dest.write()`, it is possible\n // to get stuck in a permanently paused state if that write\n // also returned false.\n // => Check whether `dest` is still a piping destination.\n if ((state.pipesCount === 1 && state.pipes === dest || state.pipesCount > 1 && indexOf(state.pipes, dest) !== -1) && !cleanedUp) {\n debug('false write response, pause', state.awaitDrain);\n state.awaitDrain++;\n }\n src.pause();\n }\n }\n\n // if the dest has an error, then stop piping into it.\n // however, don't suppress the throwing behavior for this.\n function onerror(er) {\n debug('onerror', er);\n unpipe();\n dest.removeListener('error', onerror);\n if (EElistenerCount(dest, 'error') === 0) errorOrDestroy(dest, er);\n }\n\n // Make sure our error handler is attached before userland ones.\n prependListener(dest, 'error', onerror);\n\n // Both close and finish should trigger unpipe, but only once.\n function onclose() {\n dest.removeListener('finish', onfinish);\n unpipe();\n }\n dest.once('close', onclose);\n function onfinish() {\n debug('onfinish');\n dest.removeListener('close', onclose);\n unpipe();\n }\n dest.once('finish', onfinish);\n function unpipe() {\n debug('unpipe');\n src.unpipe(dest);\n }\n\n // tell the dest that it's being piped to\n dest.emit('pipe', src);\n\n // start the flow if it hasn't been started already.\n if (!state.flowing) {\n debug('pipe resume');\n src.resume();\n }\n return dest;\n};\nfunction pipeOnDrain(src) {\n return function pipeOnDrainFunctionResult() {\n var state = src._readableState;\n debug('pipeOnDrain', state.awaitDrain);\n if (state.awaitDrain) state.awaitDrain--;\n if (state.awaitDrain === 0 && EElistenerCount(src, 'data')) {\n state.flowing = true;\n flow(src);\n }\n };\n}\nReadable.prototype.unpipe = function (dest) {\n var state = this._readableState;\n var unpipeInfo = {\n hasUnpiped: false\n };\n\n // if we're not piping anywhere, then do nothing.\n if (state.pipesCount === 0) return this;\n\n // just one destination. most common case.\n if (state.pipesCount === 1) {\n // passed in one, but it's not the right one.\n if (dest && dest !== state.pipes) return this;\n if (!dest) dest = state.pipes;\n\n // got a match.\n state.pipes = null;\n state.pipesCount = 0;\n state.flowing = false;\n if (dest) dest.emit('unpipe', this, unpipeInfo);\n return this;\n }\n\n // slow case. multiple pipe destinations.\n\n if (!dest) {\n // remove all.\n var dests = state.pipes;\n var len = state.pipesCount;\n state.pipes = null;\n state.pipesCount = 0;\n state.flowing = false;\n for (var i = 0; i < len; i++) dests[i].emit('unpipe', this, {\n hasUnpiped: false\n });\n return this;\n }\n\n // try to find the right one.\n var index = indexOf(state.pipes, dest);\n if (index === -1) return this;\n state.pipes.splice(index, 1);\n state.pipesCount -= 1;\n if (state.pipesCount === 1) state.pipes = state.pipes[0];\n dest.emit('unpipe', this, unpipeInfo);\n return this;\n};\n\n// set up data events if they are asked for\n// Ensure readable listeners eventually get something\nReadable.prototype.on = function (ev, fn) {\n var res = Stream.prototype.on.call(this, ev, fn);\n var state = this._readableState;\n if (ev === 'data') {\n // update readableListening so that resume() may be a no-op\n // a few lines down. This is needed to support once('readable').\n state.readableListening = this.listenerCount('readable') > 0;\n\n // Try start flowing on next tick if stream isn't explicitly paused\n if (state.flowing !== false) this.resume();\n } else if (ev === 'readable') {\n if (!state.endEmitted && !state.readableListening) {\n state.readableListening = state.needReadable = true;\n state.flowing = false;\n state.emittedReadable = false;\n debug('on readable', state.length, state.reading);\n if (state.length) {\n emitReadable(this);\n } else if (!state.reading) {\n process.nextTick(nReadingNextTick, this);\n }\n }\n }\n return res;\n};\nReadable.prototype.addListener = Readable.prototype.on;\nReadable.prototype.removeListener = function (ev, fn) {\n var res = Stream.prototype.removeListener.call(this, ev, fn);\n if (ev === 'readable') {\n // We need to check if there is someone still listening to\n // readable and reset the state. However this needs to happen\n // after readable has been emitted but before I/O (nextTick) to\n // support once('readable', fn) cycles. This means that calling\n // resume within the same tick will have no\n // effect.\n process.nextTick(updateReadableListening, this);\n }\n return res;\n};\nReadable.prototype.removeAllListeners = function (ev) {\n var res = Stream.prototype.removeAllListeners.apply(this, arguments);\n if (ev === 'readable' || ev === undefined) {\n // We need to check if there is someone still listening to\n // readable and reset the state. However this needs to happen\n // after readable has been emitted but before I/O (nextTick) to\n // support once('readable', fn) cycles. This means that calling\n // resume within the same tick will have no\n // effect.\n process.nextTick(updateReadableListening, this);\n }\n return res;\n};\nfunction updateReadableListening(self) {\n var state = self._readableState;\n state.readableListening = self.listenerCount('readable') > 0;\n if (state.resumeScheduled && !state.paused) {\n // flowing needs to be set to true now, otherwise\n // the upcoming resume will not flow.\n state.flowing = true;\n\n // crude way to check if we should resume\n } else if (self.listenerCount('data') > 0) {\n self.resume();\n }\n}\nfunction nReadingNextTick(self) {\n debug('readable nexttick read 0');\n self.read(0);\n}\n\n// pause() and resume() are remnants of the legacy readable stream API\n// If the user uses them, then switch into old mode.\nReadable.prototype.resume = function () {\n var state = this._readableState;\n if (!state.flowing) {\n debug('resume');\n // we flow only if there is no one listening\n // for readable, but we still have to call\n // resume()\n state.flowing = !state.readableListening;\n resume(this, state);\n }\n state.paused = false;\n return this;\n};\nfunction resume(stream, state) {\n if (!state.resumeScheduled) {\n state.resumeScheduled = true;\n process.nextTick(resume_, stream, state);\n }\n}\nfunction resume_(stream, state) {\n debug('resume', state.reading);\n if (!state.reading) {\n stream.read(0);\n }\n state.resumeScheduled = false;\n stream.emit('resume');\n flow(stream);\n if (state.flowing && !state.reading) stream.read(0);\n}\nReadable.prototype.pause = function () {\n debug('call pause flowing=%j', this._readableState.flowing);\n if (this._readableState.flowing !== false) {\n debug('pause');\n this._readableState.flowing = false;\n this.emit('pause');\n }\n this._readableState.paused = true;\n return this;\n};\nfunction flow(stream) {\n var state = stream._readableState;\n debug('flow', state.flowing);\n while (state.flowing && stream.read() !== null);\n}\n\n// wrap an old-style stream as the async data source.\n// This is *not* part of the readable stream interface.\n// It is an ugly unfortunate mess of history.\nReadable.prototype.wrap = function (stream) {\n var _this = this;\n var state = this._readableState;\n var paused = false;\n stream.on('end', function () {\n debug('wrapped end');\n if (state.decoder && !state.ended) {\n var chunk = state.decoder.end();\n if (chunk && chunk.length) _this.push(chunk);\n }\n _this.push(null);\n });\n stream.on('data', function (chunk) {\n debug('wrapped data');\n if (state.decoder) chunk = state.decoder.write(chunk);\n\n // don't skip over falsy values in objectMode\n if (state.objectMode && (chunk === null || chunk === undefined)) return;else if (!state.objectMode && (!chunk || !chunk.length)) return;\n var ret = _this.push(chunk);\n if (!ret) {\n paused = true;\n stream.pause();\n }\n });\n\n // proxy all the other methods.\n // important when wrapping filters and duplexes.\n for (var i in stream) {\n if (this[i] === undefined && typeof stream[i] === 'function') {\n this[i] = function methodWrap(method) {\n return function methodWrapReturnFunction() {\n return stream[method].apply(stream, arguments);\n };\n }(i);\n }\n }\n\n // proxy certain important events.\n for (var n = 0; n < kProxyEvents.length; n++) {\n stream.on(kProxyEvents[n], this.emit.bind(this, kProxyEvents[n]));\n }\n\n // when we try to consume some more bytes, simply unpause the\n // underlying stream.\n this._read = function (n) {\n debug('wrapped _read', n);\n if (paused) {\n paused = false;\n stream.resume();\n }\n };\n return this;\n};\nif (typeof Symbol === 'function') {\n Readable.prototype[Symbol.asyncIterator] = function () {\n if (createReadableStreamAsyncIterator === undefined) {\n createReadableStreamAsyncIterator = require('./internal/streams/async_iterator');\n }\n return createReadableStreamAsyncIterator(this);\n };\n}\nObject.defineProperty(Readable.prototype, 'readableHighWaterMark', {\n // making it explicit this property is not enumerable\n // because otherwise some prototype manipulation in\n // userland will fail\n enumerable: false,\n get: function get() {\n return this._readableState.highWaterMark;\n }\n});\nObject.defineProperty(Readable.prototype, 'readableBuffer', {\n // making it explicit this property is not enumerable\n // because otherwise some prototype manipulation in\n // userland will fail\n enumerable: false,\n get: function get() {\n return this._readableState && this._readableState.buffer;\n }\n});\nObject.defineProperty(Readable.prototype, 'readableFlowing', {\n // making it explicit this property is not enumerable\n // because otherwise some prototype manipulation in\n // userland will fail\n enumerable: false,\n get: function get() {\n return this._readableState.flowing;\n },\n set: function set(state) {\n if (this._readableState) {\n this._readableState.flowing = state;\n }\n }\n});\n\n// exposed for testing purposes only.\nReadable._fromList = fromList;\nObject.defineProperty(Readable.prototype, 'readableLength', {\n // making it explicit this property is not enumerable\n // because otherwise some prototype manipulation in\n // userland will fail\n enumerable: false,\n get: function get() {\n return this._readableState.length;\n }\n});\n\n// Pluck off n bytes from an array of buffers.\n// Length is the combined lengths of all the buffers in the list.\n// This function is designed to be inlinable, so please take care when making\n// changes to the function body.\nfunction fromList(n, state) {\n // nothing buffered\n if (state.length === 0) return null;\n var ret;\n if (state.objectMode) ret = state.buffer.shift();else if (!n || n >= state.length) {\n // read it all, truncate the list\n if (state.decoder) ret = state.buffer.join('');else if (state.buffer.length === 1) ret = state.buffer.first();else ret = state.buffer.concat(state.length);\n state.buffer.clear();\n } else {\n // read part of list\n ret = state.buffer.consume(n, state.decoder);\n }\n return ret;\n}\nfunction endReadable(stream) {\n var state = stream._readableState;\n debug('endReadable', state.endEmitted);\n if (!state.endEmitted) {\n state.ended = true;\n process.nextTick(endReadableNT, state, stream);\n }\n}\nfunction endReadableNT(state, stream) {\n debug('endReadableNT', state.endEmitted, state.length);\n\n // Check that we didn't get one last unshift.\n if (!state.endEmitted && state.length === 0) {\n state.endEmitted = true;\n stream.readable = false;\n stream.emit('end');\n if (state.autoDestroy) {\n // In case of duplex streams we need a way to detect\n // if the writable side is ready for autoDestroy as well\n var wState = stream._writableState;\n if (!wState || wState.autoDestroy && wState.finished) {\n stream.destroy();\n }\n }\n }\n}\nif (typeof Symbol === 'function') {\n Readable.from = function (iterable, opts) {\n if (from === undefined) {\n from = require('./internal/streams/from');\n }\n return from(Readable, iterable, opts);\n };\n}\nfunction indexOf(xs, x) {\n for (var i = 0, l = xs.length; i < l; i++) {\n if (xs[i] === x) return i;\n }\n return -1;\n}","// Copyright Joyent, Inc. and other Node contributors.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a\n// copy of this software and associated documentation files (the\n// \"Software\"), to deal in the Software without restriction, including\n// without limitation the rights to use, copy, modify, merge, publish,\n// distribute, sublicense, and/or sell copies of the Software, and to permit\n// persons to whom the Software is furnished to do so, subject to the\n// following conditions:\n//\n// The above copyright notice and this permission notice shall be included\n// in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS\n// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN\n// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,\n// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR\n// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE\n// USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n// a transform stream is a readable/writable stream where you do\n// something with the data. Sometimes it's called a \"filter\",\n// but that's not a great name for it, since that implies a thing where\n// some bits pass through, and others are simply ignored. (That would\n// be a valid example of a transform, of course.)\n//\n// While the output is causally related to the input, it's not a\n// necessarily symmetric or synchronous transformation. For example,\n// a zlib stream might take multiple plain-text writes(), and then\n// emit a single compressed chunk some time in the future.\n//\n// Here's how this works:\n//\n// The Transform stream has all the aspects of the readable and writable\n// stream classes. When you write(chunk), that calls _write(chunk,cb)\n// internally, and returns false if there's a lot of pending writes\n// buffered up. When you call read(), that calls _read(n) until\n// there's enough pending readable data buffered up.\n//\n// In a transform stream, the written data is placed in a buffer. When\n// _read(n) is called, it transforms the queued up data, calling the\n// buffered _write cb's as it consumes chunks. If consuming a single\n// written chunk would result in multiple output chunks, then the first\n// outputted bit calls the readcb, and subsequent chunks just go into\n// the read buffer, and will cause it to emit 'readable' if necessary.\n//\n// This way, back-pressure is actually determined by the reading side,\n// since _read has to be called to start processing a new chunk. However,\n// a pathological inflate type of transform can cause excessive buffering\n// here. For example, imagine a stream where every byte of input is\n// interpreted as an integer from 0-255, and then results in that many\n// bytes of output. Writing the 4 bytes {ff,ff,ff,ff} would result in\n// 1kb of data being output. In this case, you could write a very small\n// amount of input, and end up with a very large amount of output. In\n// such a pathological inflating mechanism, there'd be no way to tell\n// the system to stop doing the transform. A single 4MB write could\n// cause the system to run out of memory.\n//\n// However, even in such a pathological case, only a single written chunk\n// would be consumed, and then the rest would wait (un-transformed) until\n// the results of the previous transformed chunk were consumed.\n\n'use strict';\n\nmodule.exports = Transform;\nvar _require$codes = require('../errors').codes,\n ERR_METHOD_NOT_IMPLEMENTED = _require$codes.ERR_METHOD_NOT_IMPLEMENTED,\n ERR_MULTIPLE_CALLBACK = _require$codes.ERR_MULTIPLE_CALLBACK,\n ERR_TRANSFORM_ALREADY_TRANSFORMING = _require$codes.ERR_TRANSFORM_ALREADY_TRANSFORMING,\n ERR_TRANSFORM_WITH_LENGTH_0 = _require$codes.ERR_TRANSFORM_WITH_LENGTH_0;\nvar Duplex = require('./_stream_duplex');\nrequire('inherits')(Transform, Duplex);\nfunction afterTransform(er, data) {\n var ts = this._transformState;\n ts.transforming = false;\n var cb = ts.writecb;\n if (cb === null) {\n return this.emit('error', new ERR_MULTIPLE_CALLBACK());\n }\n ts.writechunk = null;\n ts.writecb = null;\n if (data != null)\n // single equals check for both `null` and `undefined`\n this.push(data);\n cb(er);\n var rs = this._readableState;\n rs.reading = false;\n if (rs.needReadable || rs.length < rs.highWaterMark) {\n this._read(rs.highWaterMark);\n }\n}\nfunction Transform(options) {\n if (!(this instanceof Transform)) return new Transform(options);\n Duplex.call(this, options);\n this._transformState = {\n afterTransform: afterTransform.bind(this),\n needTransform: false,\n transforming: false,\n writecb: null,\n writechunk: null,\n writeencoding: null\n };\n\n // start out asking for a readable event once data is transformed.\n this._readableState.needReadable = true;\n\n // we have implemented the _read method, and done the other things\n // that Readable wants before the first _read call, so unset the\n // sync guard flag.\n this._readableState.sync = false;\n if (options) {\n if (typeof options.transform === 'function') this._transform = options.transform;\n if (typeof options.flush === 'function') this._flush = options.flush;\n }\n\n // When the writable side finishes, then flush out anything remaining.\n this.on('prefinish', prefinish);\n}\nfunction prefinish() {\n var _this = this;\n if (typeof this._flush === 'function' && !this._readableState.destroyed) {\n this._flush(function (er, data) {\n done(_this, er, data);\n });\n } else {\n done(this, null, null);\n }\n}\nTransform.prototype.push = function (chunk, encoding) {\n this._transformState.needTransform = false;\n return Duplex.prototype.push.call(this, chunk, encoding);\n};\n\n// This is the part where you do stuff!\n// override this function in implementation classes.\n// 'chunk' is an input chunk.\n//\n// Call `push(newChunk)` to pass along transformed output\n// to the readable side. You may call 'push' zero or more times.\n//\n// Call `cb(err)` when you are done with this chunk. If you pass\n// an error, then that'll put the hurt on the whole operation. If you\n// never call cb(), then you'll never get another chunk.\nTransform.prototype._transform = function (chunk, encoding, cb) {\n cb(new ERR_METHOD_NOT_IMPLEMENTED('_transform()'));\n};\nTransform.prototype._write = function (chunk, encoding, cb) {\n var ts = this._transformState;\n ts.writecb = cb;\n ts.writechunk = chunk;\n ts.writeencoding = encoding;\n if (!ts.transforming) {\n var rs = this._readableState;\n if (ts.needTransform || rs.needReadable || rs.length < rs.highWaterMark) this._read(rs.highWaterMark);\n }\n};\n\n// Doesn't matter what the args are here.\n// _transform does all the work.\n// That we got here means that the readable side wants more data.\nTransform.prototype._read = function (n) {\n var ts = this._transformState;\n if (ts.writechunk !== null && !ts.transforming) {\n ts.transforming = true;\n this._transform(ts.writechunk, ts.writeencoding, ts.afterTransform);\n } else {\n // mark that we need a transform, so that any data that comes in\n // will get processed, now that we've asked for it.\n ts.needTransform = true;\n }\n};\nTransform.prototype._destroy = function (err, cb) {\n Duplex.prototype._destroy.call(this, err, function (err2) {\n cb(err2);\n });\n};\nfunction done(stream, er, data) {\n if (er) return stream.emit('error', er);\n if (data != null)\n // single equals check for both `null` and `undefined`\n stream.push(data);\n\n // TODO(BridgeAR): Write a test for these two error cases\n // if there's nothing in the write buffer, then that means\n // that nothing more will ever be provided\n if (stream._writableState.length) throw new ERR_TRANSFORM_WITH_LENGTH_0();\n if (stream._transformState.transforming) throw new ERR_TRANSFORM_ALREADY_TRANSFORMING();\n return stream.push(null);\n}","// Copyright Joyent, Inc. and other Node contributors.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a\n// copy of this software and associated documentation files (the\n// \"Software\"), to deal in the Software without restriction, including\n// without limitation the rights to use, copy, modify, merge, publish,\n// distribute, sublicense, and/or sell copies of the Software, and to permit\n// persons to whom the Software is furnished to do so, subject to the\n// following conditions:\n//\n// The above copyright notice and this permission notice shall be included\n// in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS\n// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN\n// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,\n// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR\n// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE\n// USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n// A bit simpler than readable streams.\n// Implement an async ._write(chunk, encoding, cb), and it'll handle all\n// the drain event emission and buffering.\n\n'use strict';\n\nmodule.exports = Writable;\n\n/* */\nfunction WriteReq(chunk, encoding, cb) {\n this.chunk = chunk;\n this.encoding = encoding;\n this.callback = cb;\n this.next = null;\n}\n\n// It seems a linked list but it is not\n// there will be only 2 of these for each stream\nfunction CorkedRequest(state) {\n var _this = this;\n this.next = null;\n this.entry = null;\n this.finish = function () {\n onCorkedFinish(_this, state);\n };\n}\n/* */\n\n/**/\nvar Duplex;\n/**/\n\nWritable.WritableState = WritableState;\n\n/**/\nvar internalUtil = {\n deprecate: require('util-deprecate')\n};\n/**/\n\n/**/\nvar Stream = require('./internal/streams/stream');\n/**/\n\nvar Buffer = require('buffer').Buffer;\nvar OurUint8Array = (typeof global !== 'undefined' ? global : typeof window !== 'undefined' ? window : typeof self !== 'undefined' ? self : {}).Uint8Array || function () {};\nfunction _uint8ArrayToBuffer(chunk) {\n return Buffer.from(chunk);\n}\nfunction _isUint8Array(obj) {\n return Buffer.isBuffer(obj) || obj instanceof OurUint8Array;\n}\nvar destroyImpl = require('./internal/streams/destroy');\nvar _require = require('./internal/streams/state'),\n getHighWaterMark = _require.getHighWaterMark;\nvar _require$codes = require('../errors').codes,\n ERR_INVALID_ARG_TYPE = _require$codes.ERR_INVALID_ARG_TYPE,\n ERR_METHOD_NOT_IMPLEMENTED = _require$codes.ERR_METHOD_NOT_IMPLEMENTED,\n ERR_MULTIPLE_CALLBACK = _require$codes.ERR_MULTIPLE_CALLBACK,\n ERR_STREAM_CANNOT_PIPE = _require$codes.ERR_STREAM_CANNOT_PIPE,\n ERR_STREAM_DESTROYED = _require$codes.ERR_STREAM_DESTROYED,\n ERR_STREAM_NULL_VALUES = _require$codes.ERR_STREAM_NULL_VALUES,\n ERR_STREAM_WRITE_AFTER_END = _require$codes.ERR_STREAM_WRITE_AFTER_END,\n ERR_UNKNOWN_ENCODING = _require$codes.ERR_UNKNOWN_ENCODING;\nvar errorOrDestroy = destroyImpl.errorOrDestroy;\nrequire('inherits')(Writable, Stream);\nfunction nop() {}\nfunction WritableState(options, stream, isDuplex) {\n Duplex = Duplex || require('./_stream_duplex');\n options = options || {};\n\n // Duplex streams are both readable and writable, but share\n // the same options object.\n // However, some cases require setting options to different\n // values for the readable and the writable sides of the duplex stream,\n // e.g. options.readableObjectMode vs. options.writableObjectMode, etc.\n if (typeof isDuplex !== 'boolean') isDuplex = stream instanceof Duplex;\n\n // object stream flag to indicate whether or not this stream\n // contains buffers or objects.\n this.objectMode = !!options.objectMode;\n if (isDuplex) this.objectMode = this.objectMode || !!options.writableObjectMode;\n\n // the point at which write() starts returning false\n // Note: 0 is a valid value, means that we always return false if\n // the entire buffer is not flushed immediately on write()\n this.highWaterMark = getHighWaterMark(this, options, 'writableHighWaterMark', isDuplex);\n\n // if _final has been called\n this.finalCalled = false;\n\n // drain event flag.\n this.needDrain = false;\n // at the start of calling end()\n this.ending = false;\n // when end() has been called, and returned\n this.ended = false;\n // when 'finish' is emitted\n this.finished = false;\n\n // has it been destroyed\n this.destroyed = false;\n\n // should we decode strings into buffers before passing to _write?\n // this is here so that some node-core streams can optimize string\n // handling at a lower level.\n var noDecode = options.decodeStrings === false;\n this.decodeStrings = !noDecode;\n\n // Crypto is kind of old and crusty. Historically, its default string\n // encoding is 'binary' so we have to make this configurable.\n // Everything else in the universe uses 'utf8', though.\n this.defaultEncoding = options.defaultEncoding || 'utf8';\n\n // not an actual buffer we keep track of, but a measurement\n // of how much we're waiting to get pushed to some underlying\n // socket or file.\n this.length = 0;\n\n // a flag to see when we're in the middle of a write.\n this.writing = false;\n\n // when true all writes will be buffered until .uncork() call\n this.corked = 0;\n\n // a flag to be able to tell if the onwrite cb is called immediately,\n // or on a later tick. We set this to true at first, because any\n // actions that shouldn't happen until \"later\" should generally also\n // not happen before the first write call.\n this.sync = true;\n\n // a flag to know if we're processing previously buffered items, which\n // may call the _write() callback in the same tick, so that we don't\n // end up in an overlapped onwrite situation.\n this.bufferProcessing = false;\n\n // the callback that's passed to _write(chunk,cb)\n this.onwrite = function (er) {\n onwrite(stream, er);\n };\n\n // the callback that the user supplies to write(chunk,encoding,cb)\n this.writecb = null;\n\n // the amount that is being written when _write is called.\n this.writelen = 0;\n this.bufferedRequest = null;\n this.lastBufferedRequest = null;\n\n // number of pending user-supplied write callbacks\n // this must be 0 before 'finish' can be emitted\n this.pendingcb = 0;\n\n // emit prefinish if the only thing we're waiting for is _write cbs\n // This is relevant for synchronous Transform streams\n this.prefinished = false;\n\n // True if the error was already emitted and should not be thrown again\n this.errorEmitted = false;\n\n // Should close be emitted on destroy. Defaults to true.\n this.emitClose = options.emitClose !== false;\n\n // Should .destroy() be called after 'finish' (and potentially 'end')\n this.autoDestroy = !!options.autoDestroy;\n\n // count buffered requests\n this.bufferedRequestCount = 0;\n\n // allocate the first CorkedRequest, there is always\n // one allocated and free to use, and we maintain at most two\n this.corkedRequestsFree = new CorkedRequest(this);\n}\nWritableState.prototype.getBuffer = function getBuffer() {\n var current = this.bufferedRequest;\n var out = [];\n while (current) {\n out.push(current);\n current = current.next;\n }\n return out;\n};\n(function () {\n try {\n Object.defineProperty(WritableState.prototype, 'buffer', {\n get: internalUtil.deprecate(function writableStateBufferGetter() {\n return this.getBuffer();\n }, '_writableState.buffer is deprecated. Use _writableState.getBuffer ' + 'instead.', 'DEP0003')\n });\n } catch (_) {}\n})();\n\n// Test _writableState for inheritance to account for Duplex streams,\n// whose prototype chain only points to Readable.\nvar realHasInstance;\nif (typeof Symbol === 'function' && Symbol.hasInstance && typeof Function.prototype[Symbol.hasInstance] === 'function') {\n realHasInstance = Function.prototype[Symbol.hasInstance];\n Object.defineProperty(Writable, Symbol.hasInstance, {\n value: function value(object) {\n if (realHasInstance.call(this, object)) return true;\n if (this !== Writable) return false;\n return object && object._writableState instanceof WritableState;\n }\n });\n} else {\n realHasInstance = function realHasInstance(object) {\n return object instanceof this;\n };\n}\nfunction Writable(options) {\n Duplex = Duplex || require('./_stream_duplex');\n\n // Writable ctor is applied to Duplexes, too.\n // `realHasInstance` is necessary because using plain `instanceof`\n // would return false, as no `_writableState` property is attached.\n\n // Trying to use the custom `instanceof` for Writable here will also break the\n // Node.js LazyTransform implementation, which has a non-trivial getter for\n // `_writableState` that would lead to infinite recursion.\n\n // Checking for a Stream.Duplex instance is faster here instead of inside\n // the WritableState constructor, at least with V8 6.5\n var isDuplex = this instanceof Duplex;\n if (!isDuplex && !realHasInstance.call(Writable, this)) return new Writable(options);\n this._writableState = new WritableState(options, this, isDuplex);\n\n // legacy.\n this.writable = true;\n if (options) {\n if (typeof options.write === 'function') this._write = options.write;\n if (typeof options.writev === 'function') this._writev = options.writev;\n if (typeof options.destroy === 'function') this._destroy = options.destroy;\n if (typeof options.final === 'function') this._final = options.final;\n }\n Stream.call(this);\n}\n\n// Otherwise people can pipe Writable streams, which is just wrong.\nWritable.prototype.pipe = function () {\n errorOrDestroy(this, new ERR_STREAM_CANNOT_PIPE());\n};\nfunction writeAfterEnd(stream, cb) {\n var er = new ERR_STREAM_WRITE_AFTER_END();\n // TODO: defer error events consistently everywhere, not just the cb\n errorOrDestroy(stream, er);\n process.nextTick(cb, er);\n}\n\n// Checks that a user-supplied chunk is valid, especially for the particular\n// mode the stream is in. Currently this means that `null` is never accepted\n// and undefined/non-string values are only allowed in object mode.\nfunction validChunk(stream, state, chunk, cb) {\n var er;\n if (chunk === null) {\n er = new ERR_STREAM_NULL_VALUES();\n } else if (typeof chunk !== 'string' && !state.objectMode) {\n er = new ERR_INVALID_ARG_TYPE('chunk', ['string', 'Buffer'], chunk);\n }\n if (er) {\n errorOrDestroy(stream, er);\n process.nextTick(cb, er);\n return false;\n }\n return true;\n}\nWritable.prototype.write = function (chunk, encoding, cb) {\n var state = this._writableState;\n var ret = false;\n var isBuf = !state.objectMode && _isUint8Array(chunk);\n if (isBuf && !Buffer.isBuffer(chunk)) {\n chunk = _uint8ArrayToBuffer(chunk);\n }\n if (typeof encoding === 'function') {\n cb = encoding;\n encoding = null;\n }\n if (isBuf) encoding = 'buffer';else if (!encoding) encoding = state.defaultEncoding;\n if (typeof cb !== 'function') cb = nop;\n if (state.ending) writeAfterEnd(this, cb);else if (isBuf || validChunk(this, state, chunk, cb)) {\n state.pendingcb++;\n ret = writeOrBuffer(this, state, isBuf, chunk, encoding, cb);\n }\n return ret;\n};\nWritable.prototype.cork = function () {\n this._writableState.corked++;\n};\nWritable.prototype.uncork = function () {\n var state = this._writableState;\n if (state.corked) {\n state.corked--;\n if (!state.writing && !state.corked && !state.bufferProcessing && state.bufferedRequest) clearBuffer(this, state);\n }\n};\nWritable.prototype.setDefaultEncoding = function setDefaultEncoding(encoding) {\n // node::ParseEncoding() requires lower case.\n if (typeof encoding === 'string') encoding = encoding.toLowerCase();\n if (!(['hex', 'utf8', 'utf-8', 'ascii', 'binary', 'base64', 'ucs2', 'ucs-2', 'utf16le', 'utf-16le', 'raw'].indexOf((encoding + '').toLowerCase()) > -1)) throw new ERR_UNKNOWN_ENCODING(encoding);\n this._writableState.defaultEncoding = encoding;\n return this;\n};\nObject.defineProperty(Writable.prototype, 'writableBuffer', {\n // making it explicit this property is not enumerable\n // because otherwise some prototype manipulation in\n // userland will fail\n enumerable: false,\n get: function get() {\n return this._writableState && this._writableState.getBuffer();\n }\n});\nfunction decodeChunk(state, chunk, encoding) {\n if (!state.objectMode && state.decodeStrings !== false && typeof chunk === 'string') {\n chunk = Buffer.from(chunk, encoding);\n }\n return chunk;\n}\nObject.defineProperty(Writable.prototype, 'writableHighWaterMark', {\n // making it explicit this property is not enumerable\n // because otherwise some prototype manipulation in\n // userland will fail\n enumerable: false,\n get: function get() {\n return this._writableState.highWaterMark;\n }\n});\n\n// if we're already writing something, then just put this\n// in the queue, and wait our turn. Otherwise, call _write\n// If we return false, then we need a drain event, so set that flag.\nfunction writeOrBuffer(stream, state, isBuf, chunk, encoding, cb) {\n if (!isBuf) {\n var newChunk = decodeChunk(state, chunk, encoding);\n if (chunk !== newChunk) {\n isBuf = true;\n encoding = 'buffer';\n chunk = newChunk;\n }\n }\n var len = state.objectMode ? 1 : chunk.length;\n state.length += len;\n var ret = state.length < state.highWaterMark;\n // we must ensure that previous needDrain will not be reset to false.\n if (!ret) state.needDrain = true;\n if (state.writing || state.corked) {\n var last = state.lastBufferedRequest;\n state.lastBufferedRequest = {\n chunk: chunk,\n encoding: encoding,\n isBuf: isBuf,\n callback: cb,\n next: null\n };\n if (last) {\n last.next = state.lastBufferedRequest;\n } else {\n state.bufferedRequest = state.lastBufferedRequest;\n }\n state.bufferedRequestCount += 1;\n } else {\n doWrite(stream, state, false, len, chunk, encoding, cb);\n }\n return ret;\n}\nfunction doWrite(stream, state, writev, len, chunk, encoding, cb) {\n state.writelen = len;\n state.writecb = cb;\n state.writing = true;\n state.sync = true;\n if (state.destroyed) state.onwrite(new ERR_STREAM_DESTROYED('write'));else if (writev) stream._writev(chunk, state.onwrite);else stream._write(chunk, encoding, state.onwrite);\n state.sync = false;\n}\nfunction onwriteError(stream, state, sync, er, cb) {\n --state.pendingcb;\n if (sync) {\n // defer the callback if we are being called synchronously\n // to avoid piling up things on the stack\n process.nextTick(cb, er);\n // this can emit finish, and it will always happen\n // after error\n process.nextTick(finishMaybe, stream, state);\n stream._writableState.errorEmitted = true;\n errorOrDestroy(stream, er);\n } else {\n // the caller expect this to happen before if\n // it is async\n cb(er);\n stream._writableState.errorEmitted = true;\n errorOrDestroy(stream, er);\n // this can emit finish, but finish must\n // always follow error\n finishMaybe(stream, state);\n }\n}\nfunction onwriteStateUpdate(state) {\n state.writing = false;\n state.writecb = null;\n state.length -= state.writelen;\n state.writelen = 0;\n}\nfunction onwrite(stream, er) {\n var state = stream._writableState;\n var sync = state.sync;\n var cb = state.writecb;\n if (typeof cb !== 'function') throw new ERR_MULTIPLE_CALLBACK();\n onwriteStateUpdate(state);\n if (er) onwriteError(stream, state, sync, er, cb);else {\n // Check if we're actually ready to finish, but don't emit yet\n var finished = needFinish(state) || stream.destroyed;\n if (!finished && !state.corked && !state.bufferProcessing && state.bufferedRequest) {\n clearBuffer(stream, state);\n }\n if (sync) {\n process.nextTick(afterWrite, stream, state, finished, cb);\n } else {\n afterWrite(stream, state, finished, cb);\n }\n }\n}\nfunction afterWrite(stream, state, finished, cb) {\n if (!finished) onwriteDrain(stream, state);\n state.pendingcb--;\n cb();\n finishMaybe(stream, state);\n}\n\n// Must force callback to be called on nextTick, so that we don't\n// emit 'drain' before the write() consumer gets the 'false' return\n// value, and has a chance to attach a 'drain' listener.\nfunction onwriteDrain(stream, state) {\n if (state.length === 0 && state.needDrain) {\n state.needDrain = false;\n stream.emit('drain');\n }\n}\n\n// if there's something in the buffer waiting, then process it\nfunction clearBuffer(stream, state) {\n state.bufferProcessing = true;\n var entry = state.bufferedRequest;\n if (stream._writev && entry && entry.next) {\n // Fast case, write everything using _writev()\n var l = state.bufferedRequestCount;\n var buffer = new Array(l);\n var holder = state.corkedRequestsFree;\n holder.entry = entry;\n var count = 0;\n var allBuffers = true;\n while (entry) {\n buffer[count] = entry;\n if (!entry.isBuf) allBuffers = false;\n entry = entry.next;\n count += 1;\n }\n buffer.allBuffers = allBuffers;\n doWrite(stream, state, true, state.length, buffer, '', holder.finish);\n\n // doWrite is almost always async, defer these to save a bit of time\n // as the hot path ends with doWrite\n state.pendingcb++;\n state.lastBufferedRequest = null;\n if (holder.next) {\n state.corkedRequestsFree = holder.next;\n holder.next = null;\n } else {\n state.corkedRequestsFree = new CorkedRequest(state);\n }\n state.bufferedRequestCount = 0;\n } else {\n // Slow case, write chunks one-by-one\n while (entry) {\n var chunk = entry.chunk;\n var encoding = entry.encoding;\n var cb = entry.callback;\n var len = state.objectMode ? 1 : chunk.length;\n doWrite(stream, state, false, len, chunk, encoding, cb);\n entry = entry.next;\n state.bufferedRequestCount--;\n // if we didn't call the onwrite immediately, then\n // it means that we need to wait until it does.\n // also, that means that the chunk and cb are currently\n // being processed, so move the buffer counter past them.\n if (state.writing) {\n break;\n }\n }\n if (entry === null) state.lastBufferedRequest = null;\n }\n state.bufferedRequest = entry;\n state.bufferProcessing = false;\n}\nWritable.prototype._write = function (chunk, encoding, cb) {\n cb(new ERR_METHOD_NOT_IMPLEMENTED('_write()'));\n};\nWritable.prototype._writev = null;\nWritable.prototype.end = function (chunk, encoding, cb) {\n var state = this._writableState;\n if (typeof chunk === 'function') {\n cb = chunk;\n chunk = null;\n encoding = null;\n } else if (typeof encoding === 'function') {\n cb = encoding;\n encoding = null;\n }\n if (chunk !== null && chunk !== undefined) this.write(chunk, encoding);\n\n // .end() fully uncorks\n if (state.corked) {\n state.corked = 1;\n this.uncork();\n }\n\n // ignore unnecessary end() calls.\n if (!state.ending) endWritable(this, state, cb);\n return this;\n};\nObject.defineProperty(Writable.prototype, 'writableLength', {\n // making it explicit this property is not enumerable\n // because otherwise some prototype manipulation in\n // userland will fail\n enumerable: false,\n get: function get() {\n return this._writableState.length;\n }\n});\nfunction needFinish(state) {\n return state.ending && state.length === 0 && state.bufferedRequest === null && !state.finished && !state.writing;\n}\nfunction callFinal(stream, state) {\n stream._final(function (err) {\n state.pendingcb--;\n if (err) {\n errorOrDestroy(stream, err);\n }\n state.prefinished = true;\n stream.emit('prefinish');\n finishMaybe(stream, state);\n });\n}\nfunction prefinish(stream, state) {\n if (!state.prefinished && !state.finalCalled) {\n if (typeof stream._final === 'function' && !state.destroyed) {\n state.pendingcb++;\n state.finalCalled = true;\n process.nextTick(callFinal, stream, state);\n } else {\n state.prefinished = true;\n stream.emit('prefinish');\n }\n }\n}\nfunction finishMaybe(stream, state) {\n var need = needFinish(state);\n if (need) {\n prefinish(stream, state);\n if (state.pendingcb === 0) {\n state.finished = true;\n stream.emit('finish');\n if (state.autoDestroy) {\n // In case of duplex streams we need a way to detect\n // if the readable side is ready for autoDestroy as well\n var rState = stream._readableState;\n if (!rState || rState.autoDestroy && rState.endEmitted) {\n stream.destroy();\n }\n }\n }\n }\n return need;\n}\nfunction endWritable(stream, state, cb) {\n state.ending = true;\n finishMaybe(stream, state);\n if (cb) {\n if (state.finished) process.nextTick(cb);else stream.once('finish', cb);\n }\n state.ended = true;\n stream.writable = false;\n}\nfunction onCorkedFinish(corkReq, state, err) {\n var entry = corkReq.entry;\n corkReq.entry = null;\n while (entry) {\n var cb = entry.callback;\n state.pendingcb--;\n cb(err);\n entry = entry.next;\n }\n\n // reuse the free corkReq.\n state.corkedRequestsFree.next = corkReq;\n}\nObject.defineProperty(Writable.prototype, 'destroyed', {\n // making it explicit this property is not enumerable\n // because otherwise some prototype manipulation in\n // userland will fail\n enumerable: false,\n get: function get() {\n if (this._writableState === undefined) {\n return false;\n }\n return this._writableState.destroyed;\n },\n set: function set(value) {\n // we ignore the value if the stream\n // has not been initialized yet\n if (!this._writableState) {\n return;\n }\n\n // backward compatibility, the user is explicitly\n // managing destroyed\n this._writableState.destroyed = value;\n }\n});\nWritable.prototype.destroy = destroyImpl.destroy;\nWritable.prototype._undestroy = destroyImpl.undestroy;\nWritable.prototype._destroy = function (err, cb) {\n cb(err);\n};","'use strict';\n\nvar _Object$setPrototypeO;\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nvar finished = require('./end-of-stream');\nvar kLastResolve = Symbol('lastResolve');\nvar kLastReject = Symbol('lastReject');\nvar kError = Symbol('error');\nvar kEnded = Symbol('ended');\nvar kLastPromise = Symbol('lastPromise');\nvar kHandlePromise = Symbol('handlePromise');\nvar kStream = Symbol('stream');\nfunction createIterResult(value, done) {\n return {\n value: value,\n done: done\n };\n}\nfunction readAndResolve(iter) {\n var resolve = iter[kLastResolve];\n if (resolve !== null) {\n var data = iter[kStream].read();\n // we defer if data is null\n // we can be expecting either 'end' or\n // 'error'\n if (data !== null) {\n iter[kLastPromise] = null;\n iter[kLastResolve] = null;\n iter[kLastReject] = null;\n resolve(createIterResult(data, false));\n }\n }\n}\nfunction onReadable(iter) {\n // we wait for the next tick, because it might\n // emit an error with process.nextTick\n process.nextTick(readAndResolve, iter);\n}\nfunction wrapForNext(lastPromise, iter) {\n return function (resolve, reject) {\n lastPromise.then(function () {\n if (iter[kEnded]) {\n resolve(createIterResult(undefined, true));\n return;\n }\n iter[kHandlePromise](resolve, reject);\n }, reject);\n };\n}\nvar AsyncIteratorPrototype = Object.getPrototypeOf(function () {});\nvar ReadableStreamAsyncIteratorPrototype = Object.setPrototypeOf((_Object$setPrototypeO = {\n get stream() {\n return this[kStream];\n },\n next: function next() {\n var _this = this;\n // if we have detected an error in the meanwhile\n // reject straight away\n var error = this[kError];\n if (error !== null) {\n return Promise.reject(error);\n }\n if (this[kEnded]) {\n return Promise.resolve(createIterResult(undefined, true));\n }\n if (this[kStream].destroyed) {\n // We need to defer via nextTick because if .destroy(err) is\n // called, the error will be emitted via nextTick, and\n // we cannot guarantee that there is no error lingering around\n // waiting to be emitted.\n return new Promise(function (resolve, reject) {\n process.nextTick(function () {\n if (_this[kError]) {\n reject(_this[kError]);\n } else {\n resolve(createIterResult(undefined, true));\n }\n });\n });\n }\n\n // if we have multiple next() calls\n // we will wait for the previous Promise to finish\n // this logic is optimized to support for await loops,\n // where next() is only called once at a time\n var lastPromise = this[kLastPromise];\n var promise;\n if (lastPromise) {\n promise = new Promise(wrapForNext(lastPromise, this));\n } else {\n // fast path needed to support multiple this.push()\n // without triggering the next() queue\n var data = this[kStream].read();\n if (data !== null) {\n return Promise.resolve(createIterResult(data, false));\n }\n promise = new Promise(this[kHandlePromise]);\n }\n this[kLastPromise] = promise;\n return promise;\n }\n}, _defineProperty(_Object$setPrototypeO, Symbol.asyncIterator, function () {\n return this;\n}), _defineProperty(_Object$setPrototypeO, \"return\", function _return() {\n var _this2 = this;\n // destroy(err, cb) is a private API\n // we can guarantee we have that here, because we control the\n // Readable class this is attached to\n return new Promise(function (resolve, reject) {\n _this2[kStream].destroy(null, function (err) {\n if (err) {\n reject(err);\n return;\n }\n resolve(createIterResult(undefined, true));\n });\n });\n}), _Object$setPrototypeO), AsyncIteratorPrototype);\nvar createReadableStreamAsyncIterator = function createReadableStreamAsyncIterator(stream) {\n var _Object$create;\n var iterator = Object.create(ReadableStreamAsyncIteratorPrototype, (_Object$create = {}, _defineProperty(_Object$create, kStream, {\n value: stream,\n writable: true\n }), _defineProperty(_Object$create, kLastResolve, {\n value: null,\n writable: true\n }), _defineProperty(_Object$create, kLastReject, {\n value: null,\n writable: true\n }), _defineProperty(_Object$create, kError, {\n value: null,\n writable: true\n }), _defineProperty(_Object$create, kEnded, {\n value: stream._readableState.endEmitted,\n writable: true\n }), _defineProperty(_Object$create, kHandlePromise, {\n value: function value(resolve, reject) {\n var data = iterator[kStream].read();\n if (data) {\n iterator[kLastPromise] = null;\n iterator[kLastResolve] = null;\n iterator[kLastReject] = null;\n resolve(createIterResult(data, false));\n } else {\n iterator[kLastResolve] = resolve;\n iterator[kLastReject] = reject;\n }\n },\n writable: true\n }), _Object$create));\n iterator[kLastPromise] = null;\n finished(stream, function (err) {\n if (err && err.code !== 'ERR_STREAM_PREMATURE_CLOSE') {\n var reject = iterator[kLastReject];\n // reject if we are waiting for data in the Promise\n // returned by next() and store the error\n if (reject !== null) {\n iterator[kLastPromise] = null;\n iterator[kLastResolve] = null;\n iterator[kLastReject] = null;\n reject(err);\n }\n iterator[kError] = err;\n return;\n }\n var resolve = iterator[kLastResolve];\n if (resolve !== null) {\n iterator[kLastPromise] = null;\n iterator[kLastResolve] = null;\n iterator[kLastReject] = null;\n resolve(createIterResult(undefined, true));\n }\n iterator[kEnded] = true;\n });\n stream.on('readable', onReadable.bind(null, iterator));\n return iterator;\n};\nmodule.exports = createReadableStreamAsyncIterator;","'use strict';\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, \"prototype\", { writable: false }); return Constructor; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nvar _require = require('buffer'),\n Buffer = _require.Buffer;\nvar _require2 = require('util'),\n inspect = _require2.inspect;\nvar custom = inspect && inspect.custom || 'inspect';\nfunction copyBuffer(src, target, offset) {\n Buffer.prototype.copy.call(src, target, offset);\n}\nmodule.exports = /*#__PURE__*/function () {\n function BufferList() {\n _classCallCheck(this, BufferList);\n this.head = null;\n this.tail = null;\n this.length = 0;\n }\n _createClass(BufferList, [{\n key: \"push\",\n value: function push(v) {\n var entry = {\n data: v,\n next: null\n };\n if (this.length > 0) this.tail.next = entry;else this.head = entry;\n this.tail = entry;\n ++this.length;\n }\n }, {\n key: \"unshift\",\n value: function unshift(v) {\n var entry = {\n data: v,\n next: this.head\n };\n if (this.length === 0) this.tail = entry;\n this.head = entry;\n ++this.length;\n }\n }, {\n key: \"shift\",\n value: function shift() {\n if (this.length === 0) return;\n var ret = this.head.data;\n if (this.length === 1) this.head = this.tail = null;else this.head = this.head.next;\n --this.length;\n return ret;\n }\n }, {\n key: \"clear\",\n value: function clear() {\n this.head = this.tail = null;\n this.length = 0;\n }\n }, {\n key: \"join\",\n value: function join(s) {\n if (this.length === 0) return '';\n var p = this.head;\n var ret = '' + p.data;\n while (p = p.next) ret += s + p.data;\n return ret;\n }\n }, {\n key: \"concat\",\n value: function concat(n) {\n if (this.length === 0) return Buffer.alloc(0);\n var ret = Buffer.allocUnsafe(n >>> 0);\n var p = this.head;\n var i = 0;\n while (p) {\n copyBuffer(p.data, ret, i);\n i += p.data.length;\n p = p.next;\n }\n return ret;\n }\n\n // Consumes a specified amount of bytes or characters from the buffered data.\n }, {\n key: \"consume\",\n value: function consume(n, hasStrings) {\n var ret;\n if (n < this.head.data.length) {\n // `slice` is the same for buffers and strings.\n ret = this.head.data.slice(0, n);\n this.head.data = this.head.data.slice(n);\n } else if (n === this.head.data.length) {\n // First chunk is a perfect match.\n ret = this.shift();\n } else {\n // Result spans more than one buffer.\n ret = hasStrings ? this._getString(n) : this._getBuffer(n);\n }\n return ret;\n }\n }, {\n key: \"first\",\n value: function first() {\n return this.head.data;\n }\n\n // Consumes a specified amount of characters from the buffered data.\n }, {\n key: \"_getString\",\n value: function _getString(n) {\n var p = this.head;\n var c = 1;\n var ret = p.data;\n n -= ret.length;\n while (p = p.next) {\n var str = p.data;\n var nb = n > str.length ? str.length : n;\n if (nb === str.length) ret += str;else ret += str.slice(0, n);\n n -= nb;\n if (n === 0) {\n if (nb === str.length) {\n ++c;\n if (p.next) this.head = p.next;else this.head = this.tail = null;\n } else {\n this.head = p;\n p.data = str.slice(nb);\n }\n break;\n }\n ++c;\n }\n this.length -= c;\n return ret;\n }\n\n // Consumes a specified amount of bytes from the buffered data.\n }, {\n key: \"_getBuffer\",\n value: function _getBuffer(n) {\n var ret = Buffer.allocUnsafe(n);\n var p = this.head;\n var c = 1;\n p.data.copy(ret);\n n -= p.data.length;\n while (p = p.next) {\n var buf = p.data;\n var nb = n > buf.length ? buf.length : n;\n buf.copy(ret, ret.length - n, 0, nb);\n n -= nb;\n if (n === 0) {\n if (nb === buf.length) {\n ++c;\n if (p.next) this.head = p.next;else this.head = this.tail = null;\n } else {\n this.head = p;\n p.data = buf.slice(nb);\n }\n break;\n }\n ++c;\n }\n this.length -= c;\n return ret;\n }\n\n // Make sure the linked list only shows the minimal necessary information.\n }, {\n key: custom,\n value: function value(_, options) {\n return inspect(this, _objectSpread(_objectSpread({}, options), {}, {\n // Only inspect one level.\n depth: 0,\n // It should not recurse.\n customInspect: false\n }));\n }\n }]);\n return BufferList;\n}();","'use strict';\n\n// undocumented cb() API, needed for core, not for public API\nfunction destroy(err, cb) {\n var _this = this;\n var readableDestroyed = this._readableState && this._readableState.destroyed;\n var writableDestroyed = this._writableState && this._writableState.destroyed;\n if (readableDestroyed || writableDestroyed) {\n if (cb) {\n cb(err);\n } else if (err) {\n if (!this._writableState) {\n process.nextTick(emitErrorNT, this, err);\n } else if (!this._writableState.errorEmitted) {\n this._writableState.errorEmitted = true;\n process.nextTick(emitErrorNT, this, err);\n }\n }\n return this;\n }\n\n // we set destroyed to true before firing error callbacks in order\n // to make it re-entrance safe in case destroy() is called within callbacks\n\n if (this._readableState) {\n this._readableState.destroyed = true;\n }\n\n // if this is a duplex stream mark the writable part as destroyed as well\n if (this._writableState) {\n this._writableState.destroyed = true;\n }\n this._destroy(err || null, function (err) {\n if (!cb && err) {\n if (!_this._writableState) {\n process.nextTick(emitErrorAndCloseNT, _this, err);\n } else if (!_this._writableState.errorEmitted) {\n _this._writableState.errorEmitted = true;\n process.nextTick(emitErrorAndCloseNT, _this, err);\n } else {\n process.nextTick(emitCloseNT, _this);\n }\n } else if (cb) {\n process.nextTick(emitCloseNT, _this);\n cb(err);\n } else {\n process.nextTick(emitCloseNT, _this);\n }\n });\n return this;\n}\nfunction emitErrorAndCloseNT(self, err) {\n emitErrorNT(self, err);\n emitCloseNT(self);\n}\nfunction emitCloseNT(self) {\n if (self._writableState && !self._writableState.emitClose) return;\n if (self._readableState && !self._readableState.emitClose) return;\n self.emit('close');\n}\nfunction undestroy() {\n if (this._readableState) {\n this._readableState.destroyed = false;\n this._readableState.reading = false;\n this._readableState.ended = false;\n this._readableState.endEmitted = false;\n }\n if (this._writableState) {\n this._writableState.destroyed = false;\n this._writableState.ended = false;\n this._writableState.ending = false;\n this._writableState.finalCalled = false;\n this._writableState.prefinished = false;\n this._writableState.finished = false;\n this._writableState.errorEmitted = false;\n }\n}\nfunction emitErrorNT(self, err) {\n self.emit('error', err);\n}\nfunction errorOrDestroy(stream, err) {\n // We have tests that rely on errors being emitted\n // in the same tick, so changing this is semver major.\n // For now when you opt-in to autoDestroy we allow\n // the error to be emitted nextTick. In a future\n // semver major update we should change the default to this.\n\n var rState = stream._readableState;\n var wState = stream._writableState;\n if (rState && rState.autoDestroy || wState && wState.autoDestroy) stream.destroy(err);else stream.emit('error', err);\n}\nmodule.exports = {\n destroy: destroy,\n undestroy: undestroy,\n errorOrDestroy: errorOrDestroy\n};","// Ported from https://github.com/mafintosh/end-of-stream with\n// permission from the author, Mathias Buus (@mafintosh).\n\n'use strict';\n\nvar ERR_STREAM_PREMATURE_CLOSE = require('../../../errors').codes.ERR_STREAM_PREMATURE_CLOSE;\nfunction once(callback) {\n var called = false;\n return function () {\n if (called) return;\n called = true;\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n callback.apply(this, args);\n };\n}\nfunction noop() {}\nfunction isRequest(stream) {\n return stream.setHeader && typeof stream.abort === 'function';\n}\nfunction eos(stream, opts, callback) {\n if (typeof opts === 'function') return eos(stream, null, opts);\n if (!opts) opts = {};\n callback = once(callback || noop);\n var readable = opts.readable || opts.readable !== false && stream.readable;\n var writable = opts.writable || opts.writable !== false && stream.writable;\n var onlegacyfinish = function onlegacyfinish() {\n if (!stream.writable) onfinish();\n };\n var writableEnded = stream._writableState && stream._writableState.finished;\n var onfinish = function onfinish() {\n writable = false;\n writableEnded = true;\n if (!readable) callback.call(stream);\n };\n var readableEnded = stream._readableState && stream._readableState.endEmitted;\n var onend = function onend() {\n readable = false;\n readableEnded = true;\n if (!writable) callback.call(stream);\n };\n var onerror = function onerror(err) {\n callback.call(stream, err);\n };\n var onclose = function onclose() {\n var err;\n if (readable && !readableEnded) {\n if (!stream._readableState || !stream._readableState.ended) err = new ERR_STREAM_PREMATURE_CLOSE();\n return callback.call(stream, err);\n }\n if (writable && !writableEnded) {\n if (!stream._writableState || !stream._writableState.ended) err = new ERR_STREAM_PREMATURE_CLOSE();\n return callback.call(stream, err);\n }\n };\n var onrequest = function onrequest() {\n stream.req.on('finish', onfinish);\n };\n if (isRequest(stream)) {\n stream.on('complete', onfinish);\n stream.on('abort', onclose);\n if (stream.req) onrequest();else stream.on('request', onrequest);\n } else if (writable && !stream._writableState) {\n // legacy streams\n stream.on('end', onlegacyfinish);\n stream.on('close', onlegacyfinish);\n }\n stream.on('end', onend);\n stream.on('finish', onfinish);\n if (opts.error !== false) stream.on('error', onerror);\n stream.on('close', onclose);\n return function () {\n stream.removeListener('complete', onfinish);\n stream.removeListener('abort', onclose);\n stream.removeListener('request', onrequest);\n if (stream.req) stream.req.removeListener('finish', onfinish);\n stream.removeListener('end', onlegacyfinish);\n stream.removeListener('close', onlegacyfinish);\n stream.removeListener('finish', onfinish);\n stream.removeListener('end', onend);\n stream.removeListener('error', onerror);\n stream.removeListener('close', onclose);\n };\n}\nmodule.exports = eos;","module.exports = function () {\n throw new Error('Readable.from is not available in the browser')\n};\n","// Ported from https://github.com/mafintosh/pump with\n// permission from the author, Mathias Buus (@mafintosh).\n\n'use strict';\n\nvar eos;\nfunction once(callback) {\n var called = false;\n return function () {\n if (called) return;\n called = true;\n callback.apply(void 0, arguments);\n };\n}\nvar _require$codes = require('../../../errors').codes,\n ERR_MISSING_ARGS = _require$codes.ERR_MISSING_ARGS,\n ERR_STREAM_DESTROYED = _require$codes.ERR_STREAM_DESTROYED;\nfunction noop(err) {\n // Rethrow the error if it exists to avoid swallowing it\n if (err) throw err;\n}\nfunction isRequest(stream) {\n return stream.setHeader && typeof stream.abort === 'function';\n}\nfunction destroyer(stream, reading, writing, callback) {\n callback = once(callback);\n var closed = false;\n stream.on('close', function () {\n closed = true;\n });\n if (eos === undefined) eos = require('./end-of-stream');\n eos(stream, {\n readable: reading,\n writable: writing\n }, function (err) {\n if (err) return callback(err);\n closed = true;\n callback();\n });\n var destroyed = false;\n return function (err) {\n if (closed) return;\n if (destroyed) return;\n destroyed = true;\n\n // request.destroy just do .end - .abort is what we want\n if (isRequest(stream)) return stream.abort();\n if (typeof stream.destroy === 'function') return stream.destroy();\n callback(err || new ERR_STREAM_DESTROYED('pipe'));\n };\n}\nfunction call(fn) {\n fn();\n}\nfunction pipe(from, to) {\n return from.pipe(to);\n}\nfunction popCallback(streams) {\n if (!streams.length) return noop;\n if (typeof streams[streams.length - 1] !== 'function') return noop;\n return streams.pop();\n}\nfunction pipeline() {\n for (var _len = arguments.length, streams = new Array(_len), _key = 0; _key < _len; _key++) {\n streams[_key] = arguments[_key];\n }\n var callback = popCallback(streams);\n if (Array.isArray(streams[0])) streams = streams[0];\n if (streams.length < 2) {\n throw new ERR_MISSING_ARGS('streams');\n }\n var error;\n var destroys = streams.map(function (stream, i) {\n var reading = i < streams.length - 1;\n var writing = i > 0;\n return destroyer(stream, reading, writing, function (err) {\n if (!error) error = err;\n if (err) destroys.forEach(call);\n if (reading) return;\n destroys.forEach(call);\n callback(error);\n });\n });\n return streams.reduce(pipe);\n}\nmodule.exports = pipeline;","'use strict';\n\nvar ERR_INVALID_OPT_VALUE = require('../../../errors').codes.ERR_INVALID_OPT_VALUE;\nfunction highWaterMarkFrom(options, isDuplex, duplexKey) {\n return options.highWaterMark != null ? options.highWaterMark : isDuplex ? options[duplexKey] : null;\n}\nfunction getHighWaterMark(state, options, duplexKey, isDuplex) {\n var hwm = highWaterMarkFrom(options, isDuplex, duplexKey);\n if (hwm != null) {\n if (!(isFinite(hwm) && Math.floor(hwm) === hwm) || hwm < 0) {\n var name = isDuplex ? duplexKey : 'highWaterMark';\n throw new ERR_INVALID_OPT_VALUE(name, hwm);\n }\n return Math.floor(hwm);\n }\n\n // Default value\n return state.objectMode ? 16 : 16 * 1024;\n}\nmodule.exports = {\n getHighWaterMark: getHighWaterMark\n};","module.exports = require('events').EventEmitter;\n","exports = module.exports = require('./lib/_stream_readable.js');\nexports.Stream = exports;\nexports.Readable = exports;\nexports.Writable = require('./lib/_stream_writable.js');\nexports.Duplex = require('./lib/_stream_duplex.js');\nexports.Transform = require('./lib/_stream_transform.js');\nexports.PassThrough = require('./lib/_stream_passthrough.js');\nexports.finished = require('./lib/internal/streams/end-of-stream.js');\nexports.pipeline = require('./lib/internal/streams/pipeline.js');\n","/*! safe-buffer. MIT License. Feross Aboukhadijeh */\n/* eslint-disable node/no-deprecated-api */\nvar buffer = require('buffer')\nvar Buffer = buffer.Buffer\n\n// alternative to using Object.keys for old browsers\nfunction copyProps (src, dst) {\n for (var key in src) {\n dst[key] = src[key]\n }\n}\nif (Buffer.from && Buffer.alloc && Buffer.allocUnsafe && Buffer.allocUnsafeSlow) {\n module.exports = buffer\n} else {\n // Copy properties from require('buffer')\n copyProps(buffer, exports)\n exports.Buffer = SafeBuffer\n}\n\nfunction SafeBuffer (arg, encodingOrOffset, length) {\n return Buffer(arg, encodingOrOffset, length)\n}\n\nSafeBuffer.prototype = Object.create(Buffer.prototype)\n\n// Copy static methods from Buffer\ncopyProps(Buffer, SafeBuffer)\n\nSafeBuffer.from = function (arg, encodingOrOffset, length) {\n if (typeof arg === 'number') {\n throw new TypeError('Argument must not be a number')\n }\n return Buffer(arg, encodingOrOffset, length)\n}\n\nSafeBuffer.alloc = function (size, fill, encoding) {\n if (typeof size !== 'number') {\n throw new TypeError('Argument must be a number')\n }\n var buf = Buffer(size)\n if (fill !== undefined) {\n if (typeof encoding === 'string') {\n buf.fill(fill, encoding)\n } else {\n buf.fill(fill)\n }\n } else {\n buf.fill(0)\n }\n return buf\n}\n\nSafeBuffer.allocUnsafe = function (size) {\n if (typeof size !== 'number') {\n throw new TypeError('Argument must be a number')\n }\n return Buffer(size)\n}\n\nSafeBuffer.allocUnsafeSlow = function (size) {\n if (typeof size !== 'number') {\n throw new TypeError('Argument must be a number')\n }\n return buffer.SlowBuffer(size)\n}\n","// Copyright Joyent, Inc. and other Node contributors.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a\n// copy of this software and associated documentation files (the\n// \"Software\"), to deal in the Software without restriction, including\n// without limitation the rights to use, copy, modify, merge, publish,\n// distribute, sublicense, and/or sell copies of the Software, and to permit\n// persons to whom the Software is furnished to do so, subject to the\n// following conditions:\n//\n// The above copyright notice and this permission notice shall be included\n// in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS\n// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN\n// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,\n// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR\n// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE\n// USE OR OTHER DEALINGS IN THE SOFTWARE.\n\nmodule.exports = Stream;\n\nvar EE = require('events').EventEmitter;\nvar inherits = require('inherits');\n\ninherits(Stream, EE);\nStream.Readable = require('readable-stream/lib/_stream_readable.js');\nStream.Writable = require('readable-stream/lib/_stream_writable.js');\nStream.Duplex = require('readable-stream/lib/_stream_duplex.js');\nStream.Transform = require('readable-stream/lib/_stream_transform.js');\nStream.PassThrough = require('readable-stream/lib/_stream_passthrough.js');\nStream.finished = require('readable-stream/lib/internal/streams/end-of-stream.js')\nStream.pipeline = require('readable-stream/lib/internal/streams/pipeline.js')\n\n// Backwards-compat with node 0.4.x\nStream.Stream = Stream;\n\n\n\n// old-style streams. Note that the pipe method (the only relevant\n// part of this class) is overridden in the Readable class.\n\nfunction Stream() {\n EE.call(this);\n}\n\nStream.prototype.pipe = function(dest, options) {\n var source = this;\n\n function ondata(chunk) {\n if (dest.writable) {\n if (false === dest.write(chunk) && source.pause) {\n source.pause();\n }\n }\n }\n\n source.on('data', ondata);\n\n function ondrain() {\n if (source.readable && source.resume) {\n source.resume();\n }\n }\n\n dest.on('drain', ondrain);\n\n // If the 'end' option is not supplied, dest.end() will be called when\n // source gets the 'end' or 'close' events. Only dest.end() once.\n if (!dest._isStdio && (!options || options.end !== false)) {\n source.on('end', onend);\n source.on('close', onclose);\n }\n\n var didOnEnd = false;\n function onend() {\n if (didOnEnd) return;\n didOnEnd = true;\n\n dest.end();\n }\n\n\n function onclose() {\n if (didOnEnd) return;\n didOnEnd = true;\n\n if (typeof dest.destroy === 'function') dest.destroy();\n }\n\n // don't leave dangling pipes when there are errors.\n function onerror(er) {\n cleanup();\n if (EE.listenerCount(this, 'error') === 0) {\n throw er; // Unhandled stream error in pipe.\n }\n }\n\n source.on('error', onerror);\n dest.on('error', onerror);\n\n // remove all the event listeners that were added.\n function cleanup() {\n source.removeListener('data', ondata);\n dest.removeListener('drain', ondrain);\n\n source.removeListener('end', onend);\n source.removeListener('close', onclose);\n\n source.removeListener('error', onerror);\n dest.removeListener('error', onerror);\n\n source.removeListener('end', cleanup);\n source.removeListener('close', cleanup);\n\n dest.removeListener('close', cleanup);\n }\n\n source.on('end', cleanup);\n source.on('close', cleanup);\n\n dest.on('close', cleanup);\n\n dest.emit('pipe', source);\n\n // Allow for unix-like usage: A.pipe(B).pipe(C)\n return dest;\n};\n","var ClientRequest = require('./lib/request')\nvar response = require('./lib/response')\nvar extend = require('xtend')\nvar statusCodes = require('builtin-status-codes')\nvar url = require('url')\n\nvar http = exports\n\nhttp.request = function (opts, cb) {\n\tif (typeof opts === 'string')\n\t\topts = url.parse(opts)\n\telse\n\t\topts = extend(opts)\n\n\t// Normally, the page is loaded from http or https, so not specifying a protocol\n\t// will result in a (valid) protocol-relative url. However, this won't work if\n\t// the protocol is something else, like 'file:'\n\tvar defaultProtocol = global.location.protocol.search(/^https?:$/) === -1 ? 'http:' : ''\n\n\tvar protocol = opts.protocol || defaultProtocol\n\tvar host = opts.hostname || opts.host\n\tvar port = opts.port\n\tvar path = opts.path || '/'\n\n\t// Necessary for IPv6 addresses\n\tif (host && host.indexOf(':') !== -1)\n\t\thost = '[' + host + ']'\n\n\t// This may be a relative url. The browser should always be able to interpret it correctly.\n\topts.url = (host ? (protocol + '//' + host) : '') + (port ? ':' + port : '') + path\n\topts.method = (opts.method || 'GET').toUpperCase()\n\topts.headers = opts.headers || {}\n\n\t// Also valid opts.auth, opts.mode\n\n\tvar req = new ClientRequest(opts)\n\tif (cb)\n\t\treq.on('response', cb)\n\treturn req\n}\n\nhttp.get = function get (opts, cb) {\n\tvar req = http.request(opts, cb)\n\treq.end()\n\treturn req\n}\n\nhttp.ClientRequest = ClientRequest\nhttp.IncomingMessage = response.IncomingMessage\n\nhttp.Agent = function () {}\nhttp.Agent.defaultMaxSockets = 4\n\nhttp.globalAgent = new http.Agent()\n\nhttp.STATUS_CODES = statusCodes\n\nhttp.METHODS = [\n\t'CHECKOUT',\n\t'CONNECT',\n\t'COPY',\n\t'DELETE',\n\t'GET',\n\t'HEAD',\n\t'LOCK',\n\t'M-SEARCH',\n\t'MERGE',\n\t'MKACTIVITY',\n\t'MKCOL',\n\t'MOVE',\n\t'NOTIFY',\n\t'OPTIONS',\n\t'PATCH',\n\t'POST',\n\t'PROPFIND',\n\t'PROPPATCH',\n\t'PURGE',\n\t'PUT',\n\t'REPORT',\n\t'SEARCH',\n\t'SUBSCRIBE',\n\t'TRACE',\n\t'UNLOCK',\n\t'UNSUBSCRIBE'\n]","exports.fetch = isFunction(global.fetch) && isFunction(global.ReadableStream)\n\nexports.writableStream = isFunction(global.WritableStream)\n\nexports.abortController = isFunction(global.AbortController)\n\n// The xhr request to example.com may violate some restrictive CSP configurations,\n// so if we're running in a browser that supports `fetch`, avoid calling getXHR()\n// and assume support for certain features below.\nvar xhr\nfunction getXHR () {\n\t// Cache the xhr value\n\tif (xhr !== undefined) return xhr\n\n\tif (global.XMLHttpRequest) {\n\t\txhr = new global.XMLHttpRequest()\n\t\t// If XDomainRequest is available (ie only, where xhr might not work\n\t\t// cross domain), use the page location. Otherwise use example.com\n\t\t// Note: this doesn't actually make an http request.\n\t\ttry {\n\t\t\txhr.open('GET', global.XDomainRequest ? '/' : 'https://example.com')\n\t\t} catch(e) {\n\t\t\txhr = null\n\t\t}\n\t} else {\n\t\t// Service workers don't have XHR\n\t\txhr = null\n\t}\n\treturn xhr\n}\n\nfunction checkTypeSupport (type) {\n\tvar xhr = getXHR()\n\tif (!xhr) return false\n\ttry {\n\t\txhr.responseType = type\n\t\treturn xhr.responseType === type\n\t} catch (e) {}\n\treturn false\n}\n\n// If fetch is supported, then arraybuffer will be supported too. Skip calling\n// checkTypeSupport(), since that calls getXHR().\nexports.arraybuffer = exports.fetch || checkTypeSupport('arraybuffer')\n\n// These next two tests unavoidably show warnings in Chrome. Since fetch will always\n// be used if it's available, just return false for these to avoid the warnings.\nexports.msstream = !exports.fetch && checkTypeSupport('ms-stream')\nexports.mozchunkedarraybuffer = !exports.fetch && checkTypeSupport('moz-chunked-arraybuffer')\n\n// If fetch is supported, then overrideMimeType will be supported too. Skip calling\n// getXHR().\nexports.overrideMimeType = exports.fetch || (getXHR() ? isFunction(getXHR().overrideMimeType) : false)\n\nfunction isFunction (value) {\n\treturn typeof value === 'function'\n}\n\nxhr = null // Help gc\n","var capability = require('./capability')\nvar inherits = require('inherits')\nvar response = require('./response')\nvar stream = require('readable-stream')\n\nvar IncomingMessage = response.IncomingMessage\nvar rStates = response.readyStates\n\nfunction decideMode (preferBinary, useFetch) {\n\tif (capability.fetch && useFetch) {\n\t\treturn 'fetch'\n\t} else if (capability.mozchunkedarraybuffer) {\n\t\treturn 'moz-chunked-arraybuffer'\n\t} else if (capability.msstream) {\n\t\treturn 'ms-stream'\n\t} else if (capability.arraybuffer && preferBinary) {\n\t\treturn 'arraybuffer'\n\t} else {\n\t\treturn 'text'\n\t}\n}\n\nvar ClientRequest = module.exports = function (opts) {\n\tvar self = this\n\tstream.Writable.call(self)\n\n\tself._opts = opts\n\tself._body = []\n\tself._headers = {}\n\tif (opts.auth)\n\t\tself.setHeader('Authorization', 'Basic ' + Buffer.from(opts.auth).toString('base64'))\n\tObject.keys(opts.headers).forEach(function (name) {\n\t\tself.setHeader(name, opts.headers[name])\n\t})\n\n\tvar preferBinary\n\tvar useFetch = true\n\tif (opts.mode === 'disable-fetch' || ('requestTimeout' in opts && !capability.abortController)) {\n\t\t// If the use of XHR should be preferred. Not typically needed.\n\t\tuseFetch = false\n\t\tpreferBinary = true\n\t} else if (opts.mode === 'prefer-streaming') {\n\t\t// If streaming is a high priority but binary compatibility and\n\t\t// the accuracy of the 'content-type' header aren't\n\t\tpreferBinary = false\n\t} else if (opts.mode === 'allow-wrong-content-type') {\n\t\t// If streaming is more important than preserving the 'content-type' header\n\t\tpreferBinary = !capability.overrideMimeType\n\t} else if (!opts.mode || opts.mode === 'default' || opts.mode === 'prefer-fast') {\n\t\t// Use binary if text streaming may corrupt data or the content-type header, or for speed\n\t\tpreferBinary = true\n\t} else {\n\t\tthrow new Error('Invalid value for opts.mode')\n\t}\n\tself._mode = decideMode(preferBinary, useFetch)\n\tself._fetchTimer = null\n\tself._socketTimeout = null\n\tself._socketTimer = null\n\n\tself.on('finish', function () {\n\t\tself._onFinish()\n\t})\n}\n\ninherits(ClientRequest, stream.Writable)\n\nClientRequest.prototype.setHeader = function (name, value) {\n\tvar self = this\n\tvar lowerName = name.toLowerCase()\n\t// This check is not necessary, but it prevents warnings from browsers about setting unsafe\n\t// headers. To be honest I'm not entirely sure hiding these warnings is a good thing, but\n\t// http-browserify did it, so I will too.\n\tif (unsafeHeaders.indexOf(lowerName) !== -1)\n\t\treturn\n\n\tself._headers[lowerName] = {\n\t\tname: name,\n\t\tvalue: value\n\t}\n}\n\nClientRequest.prototype.getHeader = function (name) {\n\tvar header = this._headers[name.toLowerCase()]\n\tif (header)\n\t\treturn header.value\n\treturn null\n}\n\nClientRequest.prototype.removeHeader = function (name) {\n\tvar self = this\n\tdelete self._headers[name.toLowerCase()]\n}\n\nClientRequest.prototype._onFinish = function () {\n\tvar self = this\n\n\tif (self._destroyed)\n\t\treturn\n\tvar opts = self._opts\n\n\tif ('timeout' in opts && opts.timeout !== 0) {\n\t\tself.setTimeout(opts.timeout)\n\t}\n\n\tvar headersObj = self._headers\n\tvar body = null\n\tif (opts.method !== 'GET' && opts.method !== 'HEAD') {\n body = new Blob(self._body, {\n type: (headersObj['content-type'] || {}).value || ''\n });\n }\n\n\t// create flattened list of headers\n\tvar headersList = []\n\tObject.keys(headersObj).forEach(function (keyName) {\n\t\tvar name = headersObj[keyName].name\n\t\tvar value = headersObj[keyName].value\n\t\tif (Array.isArray(value)) {\n\t\t\tvalue.forEach(function (v) {\n\t\t\t\theadersList.push([name, v])\n\t\t\t})\n\t\t} else {\n\t\t\theadersList.push([name, value])\n\t\t}\n\t})\n\n\tif (self._mode === 'fetch') {\n\t\tvar signal = null\n\t\tif (capability.abortController) {\n\t\t\tvar controller = new AbortController()\n\t\t\tsignal = controller.signal\n\t\t\tself._fetchAbortController = controller\n\n\t\t\tif ('requestTimeout' in opts && opts.requestTimeout !== 0) {\n\t\t\t\tself._fetchTimer = global.setTimeout(function () {\n\t\t\t\t\tself.emit('requestTimeout')\n\t\t\t\t\tif (self._fetchAbortController)\n\t\t\t\t\t\tself._fetchAbortController.abort()\n\t\t\t\t}, opts.requestTimeout)\n\t\t\t}\n\t\t}\n\n\t\tglobal.fetch(self._opts.url, {\n\t\t\tmethod: self._opts.method,\n\t\t\theaders: headersList,\n\t\t\tbody: body || undefined,\n\t\t\tmode: 'cors',\n\t\t\tcredentials: opts.withCredentials ? 'include' : 'same-origin',\n\t\t\tsignal: signal\n\t\t}).then(function (response) {\n\t\t\tself._fetchResponse = response\n\t\t\tself._resetTimers(false)\n\t\t\tself._connect()\n\t\t}, function (reason) {\n\t\t\tself._resetTimers(true)\n\t\t\tif (!self._destroyed)\n\t\t\t\tself.emit('error', reason)\n\t\t})\n\t} else {\n\t\tvar xhr = self._xhr = new global.XMLHttpRequest()\n\t\ttry {\n\t\t\txhr.open(self._opts.method, self._opts.url, true)\n\t\t} catch (err) {\n\t\t\tprocess.nextTick(function () {\n\t\t\t\tself.emit('error', err)\n\t\t\t})\n\t\t\treturn\n\t\t}\n\n\t\t// Can't set responseType on really old browsers\n\t\tif ('responseType' in xhr)\n\t\t\txhr.responseType = self._mode\n\n\t\tif ('withCredentials' in xhr)\n\t\t\txhr.withCredentials = !!opts.withCredentials\n\n\t\tif (self._mode === 'text' && 'overrideMimeType' in xhr)\n\t\t\txhr.overrideMimeType('text/plain; charset=x-user-defined')\n\n\t\tif ('requestTimeout' in opts) {\n\t\t\txhr.timeout = opts.requestTimeout\n\t\t\txhr.ontimeout = function () {\n\t\t\t\tself.emit('requestTimeout')\n\t\t\t}\n\t\t}\n\n\t\theadersList.forEach(function (header) {\n\t\t\txhr.setRequestHeader(header[0], header[1])\n\t\t})\n\n\t\tself._response = null\n\t\txhr.onreadystatechange = function () {\n\t\t\tswitch (xhr.readyState) {\n\t\t\t\tcase rStates.LOADING:\n\t\t\t\tcase rStates.DONE:\n\t\t\t\t\tself._onXHRProgress()\n\t\t\t\t\tbreak\n\t\t\t}\n\t\t}\n\t\t// Necessary for streaming in Firefox, since xhr.response is ONLY defined\n\t\t// in onprogress, not in onreadystatechange with xhr.readyState = 3\n\t\tif (self._mode === 'moz-chunked-arraybuffer') {\n\t\t\txhr.onprogress = function () {\n\t\t\t\tself._onXHRProgress()\n\t\t\t}\n\t\t}\n\n\t\txhr.onerror = function () {\n\t\t\tif (self._destroyed)\n\t\t\t\treturn\n\t\t\tself._resetTimers(true)\n\t\t\tself.emit('error', new Error('XHR error'))\n\t\t}\n\n\t\ttry {\n\t\t\txhr.send(body)\n\t\t} catch (err) {\n\t\t\tprocess.nextTick(function () {\n\t\t\t\tself.emit('error', err)\n\t\t\t})\n\t\t\treturn\n\t\t}\n\t}\n}\n\n/**\n * Checks if xhr.status is readable and non-zero, indicating no error.\n * Even though the spec says it should be available in readyState 3,\n * accessing it throws an exception in IE8\n */\nfunction statusValid (xhr) {\n\ttry {\n\t\tvar status = xhr.status\n\t\treturn (status !== null && status !== 0)\n\t} catch (e) {\n\t\treturn false\n\t}\n}\n\nClientRequest.prototype._onXHRProgress = function () {\n\tvar self = this\n\n\tself._resetTimers(false)\n\n\tif (!statusValid(self._xhr) || self._destroyed)\n\t\treturn\n\n\tif (!self._response)\n\t\tself._connect()\n\n\tself._response._onXHRProgress(self._resetTimers.bind(self))\n}\n\nClientRequest.prototype._connect = function () {\n\tvar self = this\n\n\tif (self._destroyed)\n\t\treturn\n\n\tself._response = new IncomingMessage(self._xhr, self._fetchResponse, self._mode, self._resetTimers.bind(self))\n\tself._response.on('error', function(err) {\n\t\tself.emit('error', err)\n\t})\n\n\tself.emit('response', self._response)\n}\n\nClientRequest.prototype._write = function (chunk, encoding, cb) {\n\tvar self = this\n\n\tself._body.push(chunk)\n\tcb()\n}\n\nClientRequest.prototype._resetTimers = function (done) {\n\tvar self = this\n\n\tglobal.clearTimeout(self._socketTimer)\n\tself._socketTimer = null\n\n\tif (done) {\n\t\tglobal.clearTimeout(self._fetchTimer)\n\t\tself._fetchTimer = null\n\t} else if (self._socketTimeout) {\n\t\tself._socketTimer = global.setTimeout(function () {\n\t\t\tself.emit('timeout')\n\t\t}, self._socketTimeout)\n\t}\n}\n\nClientRequest.prototype.abort = ClientRequest.prototype.destroy = function (err) {\n\tvar self = this\n\tself._destroyed = true\n\tself._resetTimers(true)\n\tif (self._response)\n\t\tself._response._destroyed = true\n\tif (self._xhr)\n\t\tself._xhr.abort()\n\telse if (self._fetchAbortController)\n\t\tself._fetchAbortController.abort()\n\n\tif (err)\n\t\tself.emit('error', err)\n}\n\nClientRequest.prototype.end = function (data, encoding, cb) {\n\tvar self = this\n\tif (typeof data === 'function') {\n\t\tcb = data\n\t\tdata = undefined\n\t}\n\n\tstream.Writable.prototype.end.call(self, data, encoding, cb)\n}\n\nClientRequest.prototype.setTimeout = function (timeout, cb) {\n\tvar self = this\n\n\tif (cb)\n\t\tself.once('timeout', cb)\n\n\tself._socketTimeout = timeout\n\tself._resetTimers(false)\n}\n\nClientRequest.prototype.flushHeaders = function () {}\nClientRequest.prototype.setNoDelay = function () {}\nClientRequest.prototype.setSocketKeepAlive = function () {}\n\n// Taken from http://www.w3.org/TR/XMLHttpRequest/#the-setrequestheader%28%29-method\nvar unsafeHeaders = [\n\t'accept-charset',\n\t'accept-encoding',\n\t'access-control-request-headers',\n\t'access-control-request-method',\n\t'connection',\n\t'content-length',\n\t'cookie',\n\t'cookie2',\n\t'date',\n\t'dnt',\n\t'expect',\n\t'host',\n\t'keep-alive',\n\t'origin',\n\t'referer',\n\t'te',\n\t'trailer',\n\t'transfer-encoding',\n\t'upgrade',\n\t'via'\n]\n","var capability = require('./capability')\nvar inherits = require('inherits')\nvar stream = require('readable-stream')\n\nvar rStates = exports.readyStates = {\n\tUNSENT: 0,\n\tOPENED: 1,\n\tHEADERS_RECEIVED: 2,\n\tLOADING: 3,\n\tDONE: 4\n}\n\nvar IncomingMessage = exports.IncomingMessage = function (xhr, response, mode, resetTimers) {\n\tvar self = this\n\tstream.Readable.call(self)\n\n\tself._mode = mode\n\tself.headers = {}\n\tself.rawHeaders = []\n\tself.trailers = {}\n\tself.rawTrailers = []\n\n\t// Fake the 'close' event, but only once 'end' fires\n\tself.on('end', function () {\n\t\t// The nextTick is necessary to prevent the 'request' module from causing an infinite loop\n\t\tprocess.nextTick(function () {\n\t\t\tself.emit('close')\n\t\t})\n\t})\n\n\tif (mode === 'fetch') {\n\t\tself._fetchResponse = response\n\n\t\tself.url = response.url\n\t\tself.statusCode = response.status\n\t\tself.statusMessage = response.statusText\n\t\t\n\t\tresponse.headers.forEach(function (header, key){\n\t\t\tself.headers[key.toLowerCase()] = header\n\t\t\tself.rawHeaders.push(key, header)\n\t\t})\n\n\t\tif (capability.writableStream) {\n\t\t\tvar writable = new WritableStream({\n\t\t\t\twrite: function (chunk) {\n\t\t\t\t\tresetTimers(false)\n\t\t\t\t\treturn new Promise(function (resolve, reject) {\n\t\t\t\t\t\tif (self._destroyed) {\n\t\t\t\t\t\t\treject()\n\t\t\t\t\t\t} else if(self.push(Buffer.from(chunk))) {\n\t\t\t\t\t\t\tresolve()\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tself._resumeFetch = resolve\n\t\t\t\t\t\t}\n\t\t\t\t\t})\n\t\t\t\t},\n\t\t\t\tclose: function () {\n\t\t\t\t\tresetTimers(true)\n\t\t\t\t\tif (!self._destroyed)\n\t\t\t\t\t\tself.push(null)\n\t\t\t\t},\n\t\t\t\tabort: function (err) {\n\t\t\t\t\tresetTimers(true)\n\t\t\t\t\tif (!self._destroyed)\n\t\t\t\t\t\tself.emit('error', err)\n\t\t\t\t}\n\t\t\t})\n\n\t\t\ttry {\n\t\t\t\tresponse.body.pipeTo(writable).catch(function (err) {\n\t\t\t\t\tresetTimers(true)\n\t\t\t\t\tif (!self._destroyed)\n\t\t\t\t\t\tself.emit('error', err)\n\t\t\t\t})\n\t\t\t\treturn\n\t\t\t} catch (e) {} // pipeTo method isn't defined. Can't find a better way to feature test this\n\t\t}\n\t\t// fallback for when writableStream or pipeTo aren't available\n\t\tvar reader = response.body.getReader()\n\t\tfunction read () {\n\t\t\treader.read().then(function (result) {\n\t\t\t\tif (self._destroyed)\n\t\t\t\t\treturn\n\t\t\t\tresetTimers(result.done)\n\t\t\t\tif (result.done) {\n\t\t\t\t\tself.push(null)\n\t\t\t\t\treturn\n\t\t\t\t}\n\t\t\t\tself.push(Buffer.from(result.value))\n\t\t\t\tread()\n\t\t\t}).catch(function (err) {\n\t\t\t\tresetTimers(true)\n\t\t\t\tif (!self._destroyed)\n\t\t\t\t\tself.emit('error', err)\n\t\t\t})\n\t\t}\n\t\tread()\n\t} else {\n\t\tself._xhr = xhr\n\t\tself._pos = 0\n\n\t\tself.url = xhr.responseURL\n\t\tself.statusCode = xhr.status\n\t\tself.statusMessage = xhr.statusText\n\t\tvar headers = xhr.getAllResponseHeaders().split(/\\r?\\n/)\n\t\theaders.forEach(function (header) {\n\t\t\tvar matches = header.match(/^([^:]+):\\s*(.*)/)\n\t\t\tif (matches) {\n\t\t\t\tvar key = matches[1].toLowerCase()\n\t\t\t\tif (key === 'set-cookie') {\n\t\t\t\t\tif (self.headers[key] === undefined) {\n\t\t\t\t\t\tself.headers[key] = []\n\t\t\t\t\t}\n\t\t\t\t\tself.headers[key].push(matches[2])\n\t\t\t\t} else if (self.headers[key] !== undefined) {\n\t\t\t\t\tself.headers[key] += ', ' + matches[2]\n\t\t\t\t} else {\n\t\t\t\t\tself.headers[key] = matches[2]\n\t\t\t\t}\n\t\t\t\tself.rawHeaders.push(matches[1], matches[2])\n\t\t\t}\n\t\t})\n\n\t\tself._charset = 'x-user-defined'\n\t\tif (!capability.overrideMimeType) {\n\t\t\tvar mimeType = self.rawHeaders['mime-type']\n\t\t\tif (mimeType) {\n\t\t\t\tvar charsetMatch = mimeType.match(/;\\s*charset=([^;])(;|$)/)\n\t\t\t\tif (charsetMatch) {\n\t\t\t\t\tself._charset = charsetMatch[1].toLowerCase()\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (!self._charset)\n\t\t\t\tself._charset = 'utf-8' // best guess\n\t\t}\n\t}\n}\n\ninherits(IncomingMessage, stream.Readable)\n\nIncomingMessage.prototype._read = function () {\n\tvar self = this\n\n\tvar resolve = self._resumeFetch\n\tif (resolve) {\n\t\tself._resumeFetch = null\n\t\tresolve()\n\t}\n}\n\nIncomingMessage.prototype._onXHRProgress = function (resetTimers) {\n\tvar self = this\n\n\tvar xhr = self._xhr\n\n\tvar response = null\n\tswitch (self._mode) {\n\t\tcase 'text':\n\t\t\tresponse = xhr.responseText\n\t\t\tif (response.length > self._pos) {\n\t\t\t\tvar newData = response.substr(self._pos)\n\t\t\t\tif (self._charset === 'x-user-defined') {\n\t\t\t\t\tvar buffer = Buffer.alloc(newData.length)\n\t\t\t\t\tfor (var i = 0; i < newData.length; i++)\n\t\t\t\t\t\tbuffer[i] = newData.charCodeAt(i) & 0xff\n\n\t\t\t\t\tself.push(buffer)\n\t\t\t\t} else {\n\t\t\t\t\tself.push(newData, self._charset)\n\t\t\t\t}\n\t\t\t\tself._pos = response.length\n\t\t\t}\n\t\t\tbreak\n\t\tcase 'arraybuffer':\n\t\t\tif (xhr.readyState !== rStates.DONE || !xhr.response)\n\t\t\t\tbreak\n\t\t\tresponse = xhr.response\n\t\t\tself.push(Buffer.from(new Uint8Array(response)))\n\t\t\tbreak\n\t\tcase 'moz-chunked-arraybuffer': // take whole\n\t\t\tresponse = xhr.response\n\t\t\tif (xhr.readyState !== rStates.LOADING || !response)\n\t\t\t\tbreak\n\t\t\tself.push(Buffer.from(new Uint8Array(response)))\n\t\t\tbreak\n\t\tcase 'ms-stream':\n\t\t\tresponse = xhr.response\n\t\t\tif (xhr.readyState !== rStates.LOADING)\n\t\t\t\tbreak\n\t\t\tvar reader = new global.MSStreamReader()\n\t\t\treader.onprogress = function () {\n\t\t\t\tif (reader.result.byteLength > self._pos) {\n\t\t\t\t\tself.push(Buffer.from(new Uint8Array(reader.result.slice(self._pos))))\n\t\t\t\t\tself._pos = reader.result.byteLength\n\t\t\t\t}\n\t\t\t}\n\t\t\treader.onload = function () {\n\t\t\t\tresetTimers(true)\n\t\t\t\tself.push(null)\n\t\t\t}\n\t\t\t// reader.onerror = ??? // TODO: this\n\t\t\treader.readAsArrayBuffer(response)\n\t\t\tbreak\n\t}\n\n\t// The ms-stream case handles end separately in reader.onload()\n\tif (self._xhr.readyState === rStates.DONE && self._mode !== 'ms-stream') {\n\t\tresetTimers(true)\n\t\tself.push(null)\n\t}\n}\n","// Copyright Joyent, Inc. and other Node contributors.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a\n// copy of this software and associated documentation files (the\n// \"Software\"), to deal in the Software without restriction, including\n// without limitation the rights to use, copy, modify, merge, publish,\n// distribute, sublicense, and/or sell copies of the Software, and to permit\n// persons to whom the Software is furnished to do so, subject to the\n// following conditions:\n//\n// The above copyright notice and this permission notice shall be included\n// in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS\n// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN\n// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,\n// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR\n// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE\n// USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n'use strict';\n\n/**/\n\nvar Buffer = require('safe-buffer').Buffer;\n/**/\n\nvar isEncoding = Buffer.isEncoding || function (encoding) {\n encoding = '' + encoding;\n switch (encoding && encoding.toLowerCase()) {\n case 'hex':case 'utf8':case 'utf-8':case 'ascii':case 'binary':case 'base64':case 'ucs2':case 'ucs-2':case 'utf16le':case 'utf-16le':case 'raw':\n return true;\n default:\n return false;\n }\n};\n\nfunction _normalizeEncoding(enc) {\n if (!enc) return 'utf8';\n var retried;\n while (true) {\n switch (enc) {\n case 'utf8':\n case 'utf-8':\n return 'utf8';\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return 'utf16le';\n case 'latin1':\n case 'binary':\n return 'latin1';\n case 'base64':\n case 'ascii':\n case 'hex':\n return enc;\n default:\n if (retried) return; // undefined\n enc = ('' + enc).toLowerCase();\n retried = true;\n }\n }\n};\n\n// Do not cache `Buffer.isEncoding` when checking encoding names as some\n// modules monkey-patch it to support additional encodings\nfunction normalizeEncoding(enc) {\n var nenc = _normalizeEncoding(enc);\n if (typeof nenc !== 'string' && (Buffer.isEncoding === isEncoding || !isEncoding(enc))) throw new Error('Unknown encoding: ' + enc);\n return nenc || enc;\n}\n\n// StringDecoder provides an interface for efficiently splitting a series of\n// buffers into a series of JS strings without breaking apart multi-byte\n// characters.\nexports.StringDecoder = StringDecoder;\nfunction StringDecoder(encoding) {\n this.encoding = normalizeEncoding(encoding);\n var nb;\n switch (this.encoding) {\n case 'utf16le':\n this.text = utf16Text;\n this.end = utf16End;\n nb = 4;\n break;\n case 'utf8':\n this.fillLast = utf8FillLast;\n nb = 4;\n break;\n case 'base64':\n this.text = base64Text;\n this.end = base64End;\n nb = 3;\n break;\n default:\n this.write = simpleWrite;\n this.end = simpleEnd;\n return;\n }\n this.lastNeed = 0;\n this.lastTotal = 0;\n this.lastChar = Buffer.allocUnsafe(nb);\n}\n\nStringDecoder.prototype.write = function (buf) {\n if (buf.length === 0) return '';\n var r;\n var i;\n if (this.lastNeed) {\n r = this.fillLast(buf);\n if (r === undefined) return '';\n i = this.lastNeed;\n this.lastNeed = 0;\n } else {\n i = 0;\n }\n if (i < buf.length) return r ? r + this.text(buf, i) : this.text(buf, i);\n return r || '';\n};\n\nStringDecoder.prototype.end = utf8End;\n\n// Returns only complete characters in a Buffer\nStringDecoder.prototype.text = utf8Text;\n\n// Attempts to complete a partial non-UTF-8 character using bytes from a Buffer\nStringDecoder.prototype.fillLast = function (buf) {\n if (this.lastNeed <= buf.length) {\n buf.copy(this.lastChar, this.lastTotal - this.lastNeed, 0, this.lastNeed);\n return this.lastChar.toString(this.encoding, 0, this.lastTotal);\n }\n buf.copy(this.lastChar, this.lastTotal - this.lastNeed, 0, buf.length);\n this.lastNeed -= buf.length;\n};\n\n// Checks the type of a UTF-8 byte, whether it's ASCII, a leading byte, or a\n// continuation byte. If an invalid byte is detected, -2 is returned.\nfunction utf8CheckByte(byte) {\n if (byte <= 0x7F) return 0;else if (byte >> 5 === 0x06) return 2;else if (byte >> 4 === 0x0E) return 3;else if (byte >> 3 === 0x1E) return 4;\n return byte >> 6 === 0x02 ? -1 : -2;\n}\n\n// Checks at most 3 bytes at the end of a Buffer in order to detect an\n// incomplete multi-byte UTF-8 character. The total number of bytes (2, 3, or 4)\n// needed to complete the UTF-8 character (if applicable) are returned.\nfunction utf8CheckIncomplete(self, buf, i) {\n var j = buf.length - 1;\n if (j < i) return 0;\n var nb = utf8CheckByte(buf[j]);\n if (nb >= 0) {\n if (nb > 0) self.lastNeed = nb - 1;\n return nb;\n }\n if (--j < i || nb === -2) return 0;\n nb = utf8CheckByte(buf[j]);\n if (nb >= 0) {\n if (nb > 0) self.lastNeed = nb - 2;\n return nb;\n }\n if (--j < i || nb === -2) return 0;\n nb = utf8CheckByte(buf[j]);\n if (nb >= 0) {\n if (nb > 0) {\n if (nb === 2) nb = 0;else self.lastNeed = nb - 3;\n }\n return nb;\n }\n return 0;\n}\n\n// Validates as many continuation bytes for a multi-byte UTF-8 character as\n// needed or are available. If we see a non-continuation byte where we expect\n// one, we \"replace\" the validated continuation bytes we've seen so far with\n// a single UTF-8 replacement character ('\\ufffd'), to match v8's UTF-8 decoding\n// behavior. The continuation byte check is included three times in the case\n// where all of the continuation bytes for a character exist in the same buffer.\n// It is also done this way as a slight performance increase instead of using a\n// loop.\nfunction utf8CheckExtraBytes(self, buf, p) {\n if ((buf[0] & 0xC0) !== 0x80) {\n self.lastNeed = 0;\n return '\\ufffd';\n }\n if (self.lastNeed > 1 && buf.length > 1) {\n if ((buf[1] & 0xC0) !== 0x80) {\n self.lastNeed = 1;\n return '\\ufffd';\n }\n if (self.lastNeed > 2 && buf.length > 2) {\n if ((buf[2] & 0xC0) !== 0x80) {\n self.lastNeed = 2;\n return '\\ufffd';\n }\n }\n }\n}\n\n// Attempts to complete a multi-byte UTF-8 character using bytes from a Buffer.\nfunction utf8FillLast(buf) {\n var p = this.lastTotal - this.lastNeed;\n var r = utf8CheckExtraBytes(this, buf, p);\n if (r !== undefined) return r;\n if (this.lastNeed <= buf.length) {\n buf.copy(this.lastChar, p, 0, this.lastNeed);\n return this.lastChar.toString(this.encoding, 0, this.lastTotal);\n }\n buf.copy(this.lastChar, p, 0, buf.length);\n this.lastNeed -= buf.length;\n}\n\n// Returns all complete UTF-8 characters in a Buffer. If the Buffer ended on a\n// partial character, the character's bytes are buffered until the required\n// number of bytes are available.\nfunction utf8Text(buf, i) {\n var total = utf8CheckIncomplete(this, buf, i);\n if (!this.lastNeed) return buf.toString('utf8', i);\n this.lastTotal = total;\n var end = buf.length - (total - this.lastNeed);\n buf.copy(this.lastChar, 0, end);\n return buf.toString('utf8', i, end);\n}\n\n// For UTF-8, a replacement character is added when ending on a partial\n// character.\nfunction utf8End(buf) {\n var r = buf && buf.length ? this.write(buf) : '';\n if (this.lastNeed) return r + '\\ufffd';\n return r;\n}\n\n// UTF-16LE typically needs two bytes per character, but even if we have an even\n// number of bytes available, we need to check if we end on a leading/high\n// surrogate. In that case, we need to wait for the next two bytes in order to\n// decode the last character properly.\nfunction utf16Text(buf, i) {\n if ((buf.length - i) % 2 === 0) {\n var r = buf.toString('utf16le', i);\n if (r) {\n var c = r.charCodeAt(r.length - 1);\n if (c >= 0xD800 && c <= 0xDBFF) {\n this.lastNeed = 2;\n this.lastTotal = 4;\n this.lastChar[0] = buf[buf.length - 2];\n this.lastChar[1] = buf[buf.length - 1];\n return r.slice(0, -1);\n }\n }\n return r;\n }\n this.lastNeed = 1;\n this.lastTotal = 2;\n this.lastChar[0] = buf[buf.length - 1];\n return buf.toString('utf16le', i, buf.length - 1);\n}\n\n// For UTF-16LE we do not explicitly append special replacement characters if we\n// end on a partial character, we simply let v8 handle that.\nfunction utf16End(buf) {\n var r = buf && buf.length ? this.write(buf) : '';\n if (this.lastNeed) {\n var end = this.lastTotal - this.lastNeed;\n return r + this.lastChar.toString('utf16le', 0, end);\n }\n return r;\n}\n\nfunction base64Text(buf, i) {\n var n = (buf.length - i) % 3;\n if (n === 0) return buf.toString('base64', i);\n this.lastNeed = 3 - n;\n this.lastTotal = 3;\n if (n === 1) {\n this.lastChar[0] = buf[buf.length - 1];\n } else {\n this.lastChar[0] = buf[buf.length - 2];\n this.lastChar[1] = buf[buf.length - 1];\n }\n return buf.toString('base64', i, buf.length - n);\n}\n\nfunction base64End(buf) {\n var r = buf && buf.length ? this.write(buf) : '';\n if (this.lastNeed) return r + this.lastChar.toString('base64', 0, 3 - this.lastNeed);\n return r;\n}\n\n// Pass bytes on through for single-byte encodings (e.g. ascii, latin1, hex)\nfunction simpleWrite(buf) {\n return buf.toString(this.encoding);\n}\n\nfunction simpleEnd(buf) {\n return buf && buf.length ? this.write(buf) : '';\n}","\n/**\n * Module exports.\n */\n\nmodule.exports = deprecate;\n\n/**\n * Mark that a method should not be used.\n * Returns a modified function which warns once by default.\n *\n * If `localStorage.noDeprecation = true` is set, then it is a no-op.\n *\n * If `localStorage.throwDeprecation = true` is set, then deprecated functions\n * will throw an Error when invoked.\n *\n * If `localStorage.traceDeprecation = true` is set, then deprecated functions\n * will invoke `console.trace()` instead of `console.error()`.\n *\n * @param {Function} fn - the function to deprecate\n * @param {String} msg - the string to print to the console when `fn` is invoked\n * @returns {Function} a new \"deprecated\" version of `fn`\n * @api public\n */\n\nfunction deprecate (fn, msg) {\n if (config('noDeprecation')) {\n return fn;\n }\n\n var warned = false;\n function deprecated() {\n if (!warned) {\n if (config('throwDeprecation')) {\n throw new Error(msg);\n } else if (config('traceDeprecation')) {\n console.trace(msg);\n } else {\n console.warn(msg);\n }\n warned = true;\n }\n return fn.apply(this, arguments);\n }\n\n return deprecated;\n}\n\n/**\n * Checks `localStorage` for boolean values for the given `name`.\n *\n * @param {String} name\n * @returns {Boolean}\n * @api private\n */\n\nfunction config (name) {\n // accessing global.localStorage can trigger a DOMException in sandboxed iframes\n try {\n if (!global.localStorage) return false;\n } catch (_) {\n return false;\n }\n var val = global.localStorage[name];\n if (null == val) return false;\n return String(val).toLowerCase() === 'true';\n}\n","module.exports = extend\n\nvar hasOwnProperty = Object.prototype.hasOwnProperty;\n\nfunction extend() {\n var target = {}\n\n for (var i = 0; i < arguments.length; i++) {\n var source = arguments[i]\n\n for (var key in source) {\n if (hasOwnProperty.call(source, key)) {\n target[key] = source[key]\n }\n }\n }\n\n return target\n}\n","import { getCurrentUser as A, onRequestTokenUpdate as ue, getRequestToken as de } from \"@nextcloud/auth\";\nimport { getLoggerBuilder as q } from \"@nextcloud/logger\";\nimport { getCanonicalLocale as ae } from \"@nextcloud/l10n\";\nimport { join as le, basename as fe, extname as ce, dirname as I } from \"path\";\nimport { encodePath as he } from \"@nextcloud/paths\";\nimport { generateRemoteUrl as pe } from \"@nextcloud/router\";\nimport { createClient as ge, getPatcher as we } from \"webdav\";\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 me = (e) => e === null ? q().setApp(\"files\").build() : q().setApp(\"files\").setUid(e.uid).build(), m = me(A());\n/**\n * @copyright Copyright (c) 2021 John Molakvoæ \n *\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 */\nclass Ne {\n _entries = [];\n registerEntry(t) {\n this.validateEntry(t), this._entries.push(t);\n }\n unregisterEntry(t) {\n const r = typeof t == \"string\" ? this.getEntryIndex(t) : this.getEntryIndex(t.id);\n if (r === -1) {\n m.warn(\"Entry not found, nothing removed\", { entry: t, entries: this.getEntries() });\n return;\n }\n this._entries.splice(r, 1);\n }\n /**\n * Get the list of registered entries\n *\n * @param {Folder} context the creation context. Usually the current folder\n */\n getEntries(t) {\n return t ? this._entries.filter((r) => typeof r.enabled == \"function\" ? r.enabled(t) : !0) : this._entries;\n }\n getEntryIndex(t) {\n return this._entries.findIndex((r) => r.id === t);\n }\n validateEntry(t) {\n if (!t.id || !t.displayName || !(t.iconSvgInline || t.iconClass) || !t.handler)\n throw new Error(\"Invalid entry\");\n if (typeof t.id != \"string\" || typeof t.displayName != \"string\")\n throw new Error(\"Invalid id or displayName property\");\n if (t.iconClass && typeof t.iconClass != \"string\" || t.iconSvgInline && typeof t.iconSvgInline != \"string\")\n throw new Error(\"Invalid icon provided\");\n if (t.enabled !== void 0 && typeof t.enabled != \"function\")\n throw new Error(\"Invalid enabled property\");\n if (typeof t.handler != \"function\")\n throw new Error(\"Invalid handler property\");\n if (\"order\" in t && typeof t.order != \"number\")\n throw new Error(\"Invalid order property\");\n if (this.getEntryIndex(t.id) !== -1)\n throw new Error(\"Duplicate entry\");\n }\n}\nconst F = function() {\n return typeof window._nc_newfilemenu > \"u\" && (window._nc_newfilemenu = new Ne(), m.debug(\"NewFileMenu initialized\")), window._nc_newfilemenu;\n};\n/**\n * @copyright 2019 Christoph Wurst \n *\n * @author Christoph Wurst \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 C = [\"B\", \"KB\", \"MB\", \"GB\", \"TB\", \"PB\"], P = [\"B\", \"KiB\", \"MiB\", \"GiB\", \"TiB\", \"PiB\"];\nfunction Yt(e, t = !1, r = !1, s = !1) {\n r = r && !s, typeof e == \"string\" && (e = Number(e));\n let n = e > 0 ? Math.floor(Math.log(e) / Math.log(s ? 1e3 : 1024)) : 0;\n n = Math.min((r ? P.length : C.length) - 1, n);\n const i = r ? P[n] : C[n];\n let d = (e / Math.pow(s ? 1e3 : 1024, n)).toFixed(1);\n return t === !0 && n === 0 ? (d !== \"0.0\" ? \"< 1 \" : \"0 \") + (r ? P[1] : C[1]) : (n < 2 ? d = parseFloat(d).toFixed(0) : d = parseFloat(d).toLocaleString(ae()), d + \" \" + i);\n}\nfunction Jt(e, t = !1) {\n try {\n e = `${e}`.toLocaleLowerCase().replaceAll(/\\s+/g, \"\").replaceAll(\",\", \".\");\n } catch {\n return null;\n }\n const r = e.match(/^([0-9]*(\\.[0-9]*)?)([kmgtp]?)(i?)b?$/);\n if (r === null || r[1] === \".\" || r[1] === \"\")\n return null;\n const s = {\n \"\": 0,\n k: 1,\n m: 2,\n g: 3,\n t: 4,\n p: 5,\n e: 6\n }, n = `${r[1]}`, i = r[4] === \"i\" || t ? 1024 : 1e3;\n return Math.round(Number.parseFloat(n) * i ** s[r[3]]);\n}\n/**\n * @copyright Copyright (c) 2023 John Molakvoæ \n *\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 */\nvar Z = /* @__PURE__ */ ((e) => (e.DEFAULT = \"default\", e.HIDDEN = \"hidden\", e))(Z || {});\nclass Qt {\n _action;\n constructor(t) {\n this.validateAction(t), this._action = t;\n }\n get id() {\n return this._action.id;\n }\n get displayName() {\n return this._action.displayName;\n }\n get title() {\n return this._action.title;\n }\n get iconSvgInline() {\n return this._action.iconSvgInline;\n }\n get enabled() {\n return this._action.enabled;\n }\n get exec() {\n return this._action.exec;\n }\n get execBatch() {\n return this._action.execBatch;\n }\n get order() {\n return this._action.order;\n }\n get parent() {\n return this._action.parent;\n }\n get default() {\n return this._action.default;\n }\n get inline() {\n return this._action.inline;\n }\n get renderInline() {\n return this._action.renderInline;\n }\n validateAction(t) {\n if (!t.id || typeof t.id != \"string\")\n throw new Error(\"Invalid id\");\n if (!t.displayName || typeof t.displayName != \"function\")\n throw new Error(\"Invalid displayName function\");\n if (\"title\" in t && typeof t.title != \"function\")\n throw new Error(\"Invalid title function\");\n if (!t.iconSvgInline || typeof t.iconSvgInline != \"function\")\n throw new Error(\"Invalid iconSvgInline function\");\n if (!t.exec || typeof t.exec != \"function\")\n throw new Error(\"Invalid exec function\");\n if (\"enabled\" in t && typeof t.enabled != \"function\")\n throw new Error(\"Invalid enabled function\");\n if (\"execBatch\" in t && typeof t.execBatch != \"function\")\n throw new Error(\"Invalid execBatch function\");\n if (\"order\" in t && typeof t.order != \"number\")\n throw new Error(\"Invalid order\");\n if (\"parent\" in t && typeof t.parent != \"string\")\n throw new Error(\"Invalid parent\");\n if (t.default && !Object.values(Z).includes(t.default))\n throw new Error(\"Invalid default\");\n if (\"inline\" in t && typeof t.inline != \"function\")\n throw new Error(\"Invalid inline function\");\n if (\"renderInline\" in t && typeof t.renderInline != \"function\")\n throw new Error(\"Invalid renderInline function\");\n }\n}\nconst Dt = function(e) {\n if (typeof window._nc_fileactions > \"u\" && (window._nc_fileactions = [], m.debug(\"FileActions initialized\")), window._nc_fileactions.find((t) => t.id === e.id)) {\n m.error(`FileAction ${e.id} already registered`, { action: e });\n return;\n }\n window._nc_fileactions.push(e);\n}, er = function() {\n return typeof window._nc_fileactions > \"u\" && (window._nc_fileactions = [], m.debug(\"FileActions initialized\")), window._nc_fileactions;\n};\n/**\n * @copyright Copyright (c) 2023 John Molakvoæ \n *\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 */\nclass tr {\n _header;\n constructor(t) {\n this.validateHeader(t), this._header = t;\n }\n get id() {\n return this._header.id;\n }\n get order() {\n return this._header.order;\n }\n get enabled() {\n return this._header.enabled;\n }\n get render() {\n return this._header.render;\n }\n get updated() {\n return this._header.updated;\n }\n validateHeader(t) {\n if (!t.id || !t.render || !t.updated)\n throw new Error(\"Invalid header: id, render and updated are required\");\n if (typeof t.id != \"string\")\n throw new Error(\"Invalid id property\");\n if (t.enabled !== void 0 && typeof t.enabled != \"function\")\n throw new Error(\"Invalid enabled property\");\n if (t.render && typeof t.render != \"function\")\n throw new Error(\"Invalid render property\");\n if (t.updated && typeof t.updated != \"function\")\n throw new Error(\"Invalid updated property\");\n }\n}\nconst rr = function(e) {\n if (typeof window._nc_filelistheader > \"u\" && (window._nc_filelistheader = [], m.debug(\"FileListHeaders initialized\")), window._nc_filelistheader.find((t) => t.id === e.id)) {\n m.error(`Header ${e.id} already registered`, { header: e });\n return;\n }\n window._nc_filelistheader.push(e);\n}, nr = function() {\n return typeof window._nc_filelistheader > \"u\" && (window._nc_filelistheader = [], m.debug(\"FileListHeaders initialized\")), window._nc_filelistheader;\n};\n/**\n * @copyright Copyright (c) 2022 John Molakvoæ \n *\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 */\nvar N = /* @__PURE__ */ ((e) => (e[e.NONE = 0] = \"NONE\", e[e.CREATE = 4] = \"CREATE\", e[e.READ = 1] = \"READ\", e[e.UPDATE = 2] = \"UPDATE\", e[e.DELETE = 8] = \"DELETE\", e[e.SHARE = 16] = \"SHARE\", e[e.ALL = 31] = \"ALL\", e))(N || {});\n/**\n * @copyright Copyright (c) 2023 John Molakvoæ \n *\n * @author John Molakvoæ \n * @author Ferdinand Thiessen \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 j = [\n \"d:getcontentlength\",\n \"d:getcontenttype\",\n \"d:getetag\",\n \"d:getlastmodified\",\n \"d:quota-available-bytes\",\n \"d:resourcetype\",\n \"nc:has-preview\",\n \"nc:is-encrypted\",\n \"nc:mount-type\",\n \"nc:share-attributes\",\n \"oc:comments-unread\",\n \"oc:favorite\",\n \"oc:fileid\",\n \"oc:owner-display-name\",\n \"oc:owner-id\",\n \"oc:permissions\",\n \"oc:share-types\",\n \"oc:size\",\n \"ocs:share-permissions\"\n], Y = {\n d: \"DAV:\",\n nc: \"http://nextcloud.org/ns\",\n oc: \"http://owncloud.org/ns\",\n ocs: \"http://open-collaboration-services.org/ns\"\n}, ir = function(e, t = { nc: \"http://nextcloud.org/ns\" }) {\n typeof window._nc_dav_properties > \"u\" && (window._nc_dav_properties = [...j], window._nc_dav_namespaces = { ...Y });\n const r = { ...window._nc_dav_namespaces, ...t };\n if (window._nc_dav_properties.find((n) => n === e))\n return m.error(`${e} already registered`, { prop: e }), !1;\n if (e.startsWith(\"<\") || e.split(\":\").length !== 2)\n return m.error(`${e} is not valid. See example: 'oc:fileid'`, { prop: e }), !1;\n const s = e.split(\":\")[0];\n return r[s] ? (window._nc_dav_properties.push(e), window._nc_dav_namespaces = r, !0) : (m.error(`${e} namespace unknown`, { prop: e, namespaces: r }), !1);\n}, V = function() {\n return typeof window._nc_dav_properties > \"u\" && (window._nc_dav_properties = [...j]), window._nc_dav_properties.map((e) => `<${e} />`).join(\" \");\n}, L = function() {\n return typeof window._nc_dav_namespaces > \"u\" && (window._nc_dav_namespaces = { ...Y }), Object.keys(window._nc_dav_namespaces).map((e) => `xmlns:${e}=\"${window._nc_dav_namespaces?.[e]}\"`).join(\" \");\n}, sr = function() {\n return `\n\t\t\n\t\t\t\n\t\t\t\t${V()}\n\t\t\t\n\t\t`;\n}, Ee = function() {\n return `\n\t\t\n\t\t\t\n\t\t\t\t${V()}\n\t\t\t\n\t\t\t\n\t\t\t\t1\n\t\t\t\n\t\t`;\n}, or = function(e) {\n return `\n\n\t\n\t\t\n\t\t\t\n\t\t\t\t${V()}\n\t\t\t\n\t\t\n\t\t\n\t\t\t\n\t\t\t\t/files/${A()?.uid}/\n\t\t\t\tinfinity\n\t\t\t\n\t\t\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\thttpd/unix-directory\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t0\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t${e}\n\t\t\t\t\n\t\t\t\n\t\t\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\n\t\t\n\t\t\t100\n\t\t\t0\n\t\t\n\t\n`;\n};\n/**\n * @copyright Copyright (c) 2023 John Molakvoæ \n *\n * @author John Molakvoæ \n * @author Ferdinand Thiessen \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 be = function(e = \"\") {\n let t = N.NONE;\n return e && ((e.includes(\"C\") || e.includes(\"K\")) && (t |= N.CREATE), e.includes(\"G\") && (t |= N.READ), (e.includes(\"W\") || e.includes(\"N\") || e.includes(\"V\")) && (t |= N.UPDATE), e.includes(\"D\") && (t |= N.DELETE), e.includes(\"R\") && (t |= N.SHARE)), t;\n};\n/**\n * @copyright Copyright (c) 2022 John Molakvoæ \n *\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 */\nvar R = /* @__PURE__ */ ((e) => (e.Folder = \"folder\", e.File = \"file\", e))(R || {});\n/**\n * @copyright Copyright (c) 2022 John Molakvoæ \n *\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 J = function(e, t) {\n return e.match(t) !== null;\n}, X = (e, t) => {\n if (e.id && typeof e.id != \"number\")\n throw new Error(\"Invalid id type of value\");\n if (!e.source)\n throw new Error(\"Missing mandatory source\");\n try {\n new URL(e.source);\n } catch {\n throw new Error(\"Invalid source format, source must be a valid URL\");\n }\n if (!e.source.startsWith(\"http\"))\n throw new Error(\"Invalid source format, only http(s) is supported\");\n if (e.mtime && !(e.mtime instanceof Date))\n throw new Error(\"Invalid mtime type\");\n if (e.crtime && !(e.crtime instanceof Date))\n throw new Error(\"Invalid crtime type\");\n if (!e.mime || typeof e.mime != \"string\" || !e.mime.match(/^[-\\w.]+\\/[-+\\w.]+$/gi))\n throw new Error(\"Missing or invalid mandatory mime\");\n if (\"size\" in e && typeof e.size != \"number\" && e.size !== void 0)\n throw new Error(\"Invalid size type\");\n if (\"permissions\" in e && e.permissions !== void 0 && !(typeof e.permissions == \"number\" && e.permissions >= N.NONE && e.permissions <= N.ALL))\n throw new Error(\"Invalid permissions\");\n if (e.owner && e.owner !== null && typeof e.owner != \"string\")\n throw new Error(\"Invalid owner type\");\n if (e.attributes && typeof e.attributes != \"object\")\n throw new Error(\"Invalid attributes type\");\n if (e.root && typeof e.root != \"string\")\n throw new Error(\"Invalid root type\");\n if (e.root && !e.root.startsWith(\"/\"))\n throw new Error(\"Root must start with a leading slash\");\n if (e.root && !e.source.includes(e.root))\n throw new Error(\"Root must be part of the source\");\n if (e.root && J(e.source, t)) {\n const r = e.source.match(t)[0];\n if (!e.source.includes(le(r, e.root)))\n throw new Error(\"The root must be relative to the service. e.g /files/emma\");\n }\n if (e.status && !Object.values(Q).includes(e.status))\n throw new Error(\"Status must be a valid NodeStatus\");\n};\n/**\n * @copyright Copyright (c) 2022 John Molakvoæ \n *\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 */\nvar Q = /* @__PURE__ */ ((e) => (e.NEW = \"new\", e.FAILED = \"failed\", e.LOADING = \"loading\", e.LOCKED = \"locked\", e))(Q || {});\nclass D {\n _data;\n _attributes;\n _knownDavService = /(remote|public)\\.php\\/(web)?dav/i;\n constructor(t, r) {\n X(t, r || this._knownDavService), this._data = t;\n const s = {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n set: (n, i, d) => (this.updateMtime(), Reflect.set(n, i, d)),\n deleteProperty: (n, i) => (this.updateMtime(), Reflect.deleteProperty(n, i))\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n };\n this._attributes = new Proxy(t.attributes || {}, s), delete this._data.attributes, r && (this._knownDavService = r);\n }\n /**\n * Get the source url to this object\n */\n get source() {\n return this._data.source.replace(/\\/$/i, \"\");\n }\n /**\n * Get the encoded source url to this object for requests purposes\n */\n get encodedSource() {\n const { origin: t } = new URL(this.source);\n return t + he(this.source.slice(t.length));\n }\n /**\n * Get this object name\n */\n get basename() {\n return fe(this.source);\n }\n /**\n * Get this object's extension\n */\n get extension() {\n return ce(this.source);\n }\n /**\n * Get the directory path leading to this object\n * Will use the relative path to root if available\n */\n get dirname() {\n if (this.root) {\n const r = this.source.indexOf(this.root);\n return I(this.source.slice(r + this.root.length) || \"/\");\n }\n const t = new URL(this.source);\n return I(t.pathname);\n }\n /**\n * Get the file mime\n */\n get mime() {\n return this._data.mime;\n }\n /**\n * Get the file modification time\n */\n get mtime() {\n return this._data.mtime;\n }\n /**\n * Get the file creation time\n */\n get crtime() {\n return this._data.crtime;\n }\n /**\n * Get the file size\n */\n get size() {\n return this._data.size;\n }\n /**\n * Get the file attribute\n */\n get attributes() {\n return this._attributes;\n }\n /**\n * Get the file permissions\n */\n get permissions() {\n return this.owner === null && !this.isDavRessource ? N.READ : this._data.permissions !== void 0 ? this._data.permissions : N.NONE;\n }\n /**\n * Get the file owner\n */\n get owner() {\n return this.isDavRessource ? this._data.owner : null;\n }\n /**\n * Is this a dav-related ressource ?\n */\n get isDavRessource() {\n return J(this.source, this._knownDavService);\n }\n /**\n * Get the dav root of this object\n */\n get root() {\n return this._data.root ? this._data.root.replace(/^(.+)\\/$/, \"$1\") : this.isDavRessource && I(this.source).split(this._knownDavService).pop() || null;\n }\n /**\n * Get the absolute path of this object relative to the root\n */\n get path() {\n if (this.root) {\n const t = this.source.indexOf(this.root);\n return this.source.slice(t + this.root.length) || \"/\";\n }\n return (this.dirname + \"/\" + this.basename).replace(/\\/\\//g, \"/\");\n }\n /**\n * Get the node id if defined.\n * Will look for the fileid in attributes if undefined.\n */\n get fileid() {\n return this._data?.id || this.attributes?.fileid;\n }\n /**\n * Get the node status.\n */\n get status() {\n return this._data?.status;\n }\n /**\n * Set the node status.\n */\n set status(t) {\n this._data.status = t;\n }\n /**\n * Move the node to a new destination\n *\n * @param {string} destination the new source.\n * e.g. https://cloud.domain.com/remote.php/dav/files/emma/Photos/picture.jpg\n */\n move(t) {\n X({ ...this._data, source: t }, this._knownDavService), this._data.source = t, this.updateMtime();\n }\n /**\n * Rename the node\n * This aliases the move method for easier usage\n *\n * @param basename The new name of the node\n */\n rename(t) {\n if (t.includes(\"/\"))\n throw new Error(\"Invalid basename\");\n this.move(I(this.source) + \"/\" + t);\n }\n /**\n * Update the mtime if exists.\n */\n updateMtime() {\n this._data.mtime && (this._data.mtime = /* @__PURE__ */ new Date());\n }\n}\n/**\n * @copyright Copyright (c) 2022 John Molakvoæ \n *\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 */\nclass ye extends D {\n get type() {\n return R.File;\n }\n}\n/**\n * @copyright Copyright (c) 2022 John Molakvoæ \n *\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 */\nclass _e extends D {\n constructor(t) {\n super({\n ...t,\n mime: \"httpd/unix-directory\"\n });\n }\n get type() {\n return R.Folder;\n }\n get extension() {\n return null;\n }\n get mime() {\n return \"httpd/unix-directory\";\n }\n}\n/**\n * @copyright Copyright (c) 2023 John Molakvoæ \n *\n * @author John Molakvoæ \n * @author Ferdinand Thiessen \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 ee = `/files/${A()?.uid}`, te = pe(\"dav\"), ur = function(e = te) {\n const t = ge(e);\n function r(n) {\n t.setHeaders({\n // Add this so the server knows it is an request from the browser\n \"X-Requested-With\": \"XMLHttpRequest\",\n // Inject user auth\n requesttoken: n ?? \"\"\n });\n }\n return ue(r), r(de()), we().patch(\"fetch\", (n, i) => {\n const d = i.headers;\n return d?.method && (i.method = d.method, delete d.method), fetch(n, i);\n }), t;\n}, dr = async (e, t = \"/\", r = ee) => (await e.getDirectoryContents(`${r}${t}`, {\n details: !0,\n data: Ee(),\n headers: {\n // see davGetClient for patched webdav client\n method: \"REPORT\"\n },\n includeSelf: !0\n})).data.filter((n) => n.filename !== t).map((n) => ve(n, r)), ve = function(e, t = ee, r = te) {\n const s = e.props, n = be(s?.permissions), i = A()?.uid, d = {\n id: s?.fileid || 0,\n source: `${r}${e.filename}`,\n mtime: new Date(Date.parse(e.lastmod)),\n mime: e.mime,\n size: s?.size || Number.parseInt(s.getcontentlength || \"0\"),\n permissions: n,\n owner: i,\n root: t,\n attributes: {\n ...e,\n ...s,\n hasPreview: s?.[\"has-preview\"]\n }\n };\n return delete d.attributes?.props, e.type === \"file\" ? new ye(d) : new _e(d);\n};\n/**\n * @copyright Copyright (c) 2022 John Molakvoæ \n *\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 */\nclass Te {\n _views = [];\n _currentView = null;\n register(t) {\n if (this._views.find((r) => r.id === t.id))\n throw new Error(`View id ${t.id} is already registered`);\n this._views.push(t);\n }\n remove(t) {\n const r = this._views.findIndex((s) => s.id === t);\n r !== -1 && this._views.splice(r, 1);\n }\n get views() {\n return this._views;\n }\n setActive(t) {\n this._currentView = t;\n }\n get active() {\n return this._currentView;\n }\n}\nconst ar = function() {\n return typeof window._nc_navigation > \"u\" && (window._nc_navigation = new Te(), m.debug(\"Navigation service initialized\")), window._nc_navigation;\n};\n/**\n * @copyright Copyright (c) 2022 John Molakvoæ \n *\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 */\nclass Ie {\n _column;\n constructor(t) {\n Ae(t), this._column = t;\n }\n get id() {\n return this._column.id;\n }\n get title() {\n return this._column.title;\n }\n get render() {\n return this._column.render;\n }\n get sort() {\n return this._column.sort;\n }\n get summary() {\n return this._column.summary;\n }\n}\nconst Ae = function(e) {\n if (!e.id || typeof e.id != \"string\")\n throw new Error(\"A column id is required\");\n if (!e.title || typeof e.title != \"string\")\n throw new Error(\"A column title is required\");\n if (!e.render || typeof e.render != \"function\")\n throw new Error(\"A render function is required\");\n if (e.sort && typeof e.sort != \"function\")\n throw new Error(\"Column sortFunction must be a function\");\n if (e.summary && typeof e.summary != \"function\")\n throw new Error(\"Column summary must be a function\");\n return !0;\n};\nvar S = {}, O = {};\n(function(e) {\n const t = \":A-Za-z_\\\\u00C0-\\\\u00D6\\\\u00D8-\\\\u00F6\\\\u00F8-\\\\u02FF\\\\u0370-\\\\u037D\\\\u037F-\\\\u1FFF\\\\u200C-\\\\u200D\\\\u2070-\\\\u218F\\\\u2C00-\\\\u2FEF\\\\u3001-\\\\uD7FF\\\\uF900-\\\\uFDCF\\\\uFDF0-\\\\uFFFD\", r = t + \"\\\\-.\\\\d\\\\u00B7\\\\u0300-\\\\u036F\\\\u203F-\\\\u2040\", s = \"[\" + t + \"][\" + r + \"]*\", n = new RegExp(\"^\" + s + \"$\"), i = function(u, o) {\n const a = [];\n let l = o.exec(u);\n for (; l; ) {\n const f = [];\n f.startIndex = o.lastIndex - l[0].length;\n const c = l.length;\n for (let g = 0; g < c; g++)\n f.push(l[g]);\n a.push(f), l = o.exec(u);\n }\n return a;\n }, d = function(u) {\n const o = n.exec(u);\n return !(o === null || typeof o > \"u\");\n };\n e.isExist = function(u) {\n return typeof u < \"u\";\n }, e.isEmptyObject = function(u) {\n return Object.keys(u).length === 0;\n }, e.merge = function(u, o, a) {\n if (o) {\n const l = Object.keys(o), f = l.length;\n for (let c = 0; c < f; c++)\n a === \"strict\" ? u[l[c]] = [o[l[c]]] : u[l[c]] = o[l[c]];\n }\n }, e.getValue = function(u) {\n return e.isExist(u) ? u : \"\";\n }, e.isName = d, e.getAllMatches = i, e.nameRegexp = s;\n})(O);\nconst M = O, Oe = {\n allowBooleanAttributes: !1,\n //A tag can have attributes without any value\n unpairedTags: []\n};\nS.validate = function(e, t) {\n t = Object.assign({}, Oe, t);\n const r = [];\n let s = !1, n = !1;\n e[0] === \"\\uFEFF\" && (e = e.substr(1));\n for (let i = 0; i < e.length; i++)\n if (e[i] === \"<\" && e[i + 1] === \"?\") {\n if (i += 2, i = G(e, i), i.err)\n return i;\n } else if (e[i] === \"<\") {\n let d = i;\n if (i++, e[i] === \"!\") {\n i = z(e, i);\n continue;\n } else {\n let u = !1;\n e[i] === \"/\" && (u = !0, i++);\n let o = \"\";\n for (; i < e.length && e[i] !== \">\" && e[i] !== \" \" && e[i] !== \"\t\" && e[i] !== `\n` && e[i] !== \"\\r\"; i++)\n o += e[i];\n if (o = o.trim(), o[o.length - 1] === \"/\" && (o = o.substring(0, o.length - 1), i--), !Re(o)) {\n let f;\n return o.trim().length === 0 ? f = \"Invalid space after '<'.\" : f = \"Tag '\" + o + \"' is an invalid name.\", p(\"InvalidTag\", f, w(e, i));\n }\n const a = xe(e, i);\n if (a === !1)\n return p(\"InvalidAttr\", \"Attributes for '\" + o + \"' have open quote.\", w(e, i));\n let l = a.value;\n if (i = a.index, l[l.length - 1] === \"/\") {\n const f = i - l.length;\n l = l.substring(0, l.length - 1);\n const c = H(l, t);\n if (c === !0)\n s = !0;\n else\n return p(c.err.code, c.err.msg, w(e, f + c.err.line));\n } else if (u)\n if (a.tagClosed) {\n if (l.trim().length > 0)\n return p(\"InvalidTag\", \"Closing tag '\" + o + \"' can't have attributes or invalid starting.\", w(e, d));\n {\n const f = r.pop();\n if (o !== f.tagName) {\n let c = w(e, f.tagStartPos);\n return p(\n \"InvalidTag\",\n \"Expected closing tag '\" + f.tagName + \"' (opened in line \" + c.line + \", col \" + c.col + \") instead of closing tag '\" + o + \"'.\",\n w(e, d)\n );\n }\n r.length == 0 && (n = !0);\n }\n } else\n return p(\"InvalidTag\", \"Closing tag '\" + o + \"' doesn't have proper closing.\", w(e, i));\n else {\n const f = H(l, t);\n if (f !== !0)\n return p(f.err.code, f.err.msg, w(e, i - l.length + f.err.line));\n if (n === !0)\n return p(\"InvalidXml\", \"Multiple possible root nodes found.\", w(e, i));\n t.unpairedTags.indexOf(o) !== -1 || r.push({ tagName: o, tagStartPos: d }), s = !0;\n }\n for (i++; i < e.length; i++)\n if (e[i] === \"<\")\n if (e[i + 1] === \"!\") {\n i++, i = z(e, i);\n continue;\n } else if (e[i + 1] === \"?\") {\n if (i = G(e, ++i), i.err)\n return i;\n } else\n break;\n else if (e[i] === \"&\") {\n const f = Ve(e, i);\n if (f == -1)\n return p(\"InvalidChar\", \"char '&' is not expected.\", w(e, i));\n i = f;\n } else if (n === !0 && !U(e[i]))\n return p(\"InvalidXml\", \"Extra text at the end\", w(e, i));\n e[i] === \"<\" && i--;\n }\n } else {\n if (U(e[i]))\n continue;\n return p(\"InvalidChar\", \"char '\" + e[i] + \"' is not expected.\", w(e, i));\n }\n if (s) {\n if (r.length == 1)\n return p(\"InvalidTag\", \"Unclosed tag '\" + r[0].tagName + \"'.\", w(e, r[0].tagStartPos));\n if (r.length > 0)\n return p(\"InvalidXml\", \"Invalid '\" + JSON.stringify(r.map((i) => i.tagName), null, 4).replace(/\\r?\\n/g, \"\") + \"' found.\", { line: 1, col: 1 });\n } else\n return p(\"InvalidXml\", \"Start tag expected.\", 1);\n return !0;\n};\nfunction U(e) {\n return e === \" \" || e === \"\t\" || e === `\n` || e === \"\\r\";\n}\nfunction G(e, t) {\n const r = t;\n for (; t < e.length; t++)\n if (e[t] == \"?\" || e[t] == \" \") {\n const s = e.substr(r, t - r);\n if (t > 5 && s === \"xml\")\n return p(\"InvalidXml\", \"XML declaration allowed only at the start of the document.\", w(e, t));\n if (e[t] == \"?\" && e[t + 1] == \">\") {\n t++;\n break;\n } else\n continue;\n }\n return t;\n}\nfunction z(e, t) {\n if (e.length > t + 5 && e[t + 1] === \"-\" && e[t + 2] === \"-\") {\n for (t += 3; t < e.length; t++)\n if (e[t] === \"-\" && e[t + 1] === \"-\" && e[t + 2] === \">\") {\n t += 2;\n break;\n }\n } else if (e.length > t + 8 && e[t + 1] === \"D\" && e[t + 2] === \"O\" && e[t + 3] === \"C\" && e[t + 4] === \"T\" && e[t + 5] === \"Y\" && e[t + 6] === \"P\" && e[t + 7] === \"E\") {\n let r = 1;\n for (t += 8; t < e.length; t++)\n if (e[t] === \"<\")\n r++;\n else if (e[t] === \">\" && (r--, r === 0))\n break;\n } else if (e.length > t + 9 && e[t + 1] === \"[\" && e[t + 2] === \"C\" && e[t + 3] === \"D\" && e[t + 4] === \"A\" && e[t + 5] === \"T\" && e[t + 6] === \"A\" && e[t + 7] === \"[\") {\n for (t += 8; t < e.length; t++)\n if (e[t] === \"]\" && e[t + 1] === \"]\" && e[t + 2] === \">\") {\n t += 2;\n break;\n }\n }\n return t;\n}\nconst Ce = '\"', Pe = \"'\";\nfunction xe(e, t) {\n let r = \"\", s = \"\", n = !1;\n for (; t < e.length; t++) {\n if (e[t] === Ce || e[t] === Pe)\n s === \"\" ? s = e[t] : s !== e[t] || (s = \"\");\n else if (e[t] === \">\" && s === \"\") {\n n = !0;\n break;\n }\n r += e[t];\n }\n return s !== \"\" ? !1 : {\n value: r,\n index: t,\n tagClosed: n\n };\n}\nconst $e = new RegExp(`(\\\\s*)([^\\\\s=]+)(\\\\s*=)?(\\\\s*(['\"])(([\\\\s\\\\S])*?)\\\\5)?`, \"g\");\nfunction H(e, t) {\n const r = M.getAllMatches(e, $e), s = {};\n for (let n = 0; n < r.length; n++) {\n if (r[n][1].length === 0)\n return p(\"InvalidAttr\", \"Attribute '\" + r[n][2] + \"' has no space in starting.\", v(r[n]));\n if (r[n][3] !== void 0 && r[n][4] === void 0)\n return p(\"InvalidAttr\", \"Attribute '\" + r[n][2] + \"' is without value.\", v(r[n]));\n if (r[n][3] === void 0 && !t.allowBooleanAttributes)\n return p(\"InvalidAttr\", \"boolean attribute '\" + r[n][2] + \"' is not allowed.\", v(r[n]));\n const i = r[n][2];\n if (!Le(i))\n return p(\"InvalidAttr\", \"Attribute '\" + i + \"' is an invalid name.\", v(r[n]));\n if (!s.hasOwnProperty(i))\n s[i] = 1;\n else\n return p(\"InvalidAttr\", \"Attribute '\" + i + \"' is repeated.\", v(r[n]));\n }\n return !0;\n}\nfunction Fe(e, t) {\n let r = /\\d/;\n for (e[t] === \"x\" && (t++, r = /[\\da-fA-F]/); t < e.length; t++) {\n if (e[t] === \";\")\n return t;\n if (!e[t].match(r))\n break;\n }\n return -1;\n}\nfunction Ve(e, t) {\n if (t++, e[t] === \";\")\n return -1;\n if (e[t] === \"#\")\n return t++, Fe(e, t);\n let r = 0;\n for (; t < e.length; t++, r++)\n if (!(e[t].match(/\\w/) && r < 20)) {\n if (e[t] === \";\")\n break;\n return -1;\n }\n return t;\n}\nfunction p(e, t, r) {\n return {\n err: {\n code: e,\n msg: t,\n line: r.line || r,\n col: r.col\n }\n };\n}\nfunction Le(e) {\n return M.isName(e);\n}\nfunction Re(e) {\n return M.isName(e);\n}\nfunction w(e, t) {\n const r = e.substring(0, t).split(/\\r?\\n/);\n return {\n line: r.length,\n // column number is last line's length + 1, because column numbering starts at 1:\n col: r[r.length - 1].length + 1\n };\n}\nfunction v(e) {\n return e.startIndex + e[1].length;\n}\nvar B = {};\nconst re = {\n preserveOrder: !1,\n attributeNamePrefix: \"@_\",\n attributesGroupName: !1,\n textNodeName: \"#text\",\n ignoreAttributes: !0,\n removeNSPrefix: !1,\n // remove NS from tag name or attribute name if true\n allowBooleanAttributes: !1,\n //a tag can have attributes without any value\n //ignoreRootElement : false,\n parseTagValue: !0,\n parseAttributeValue: !1,\n trimValues: !0,\n //Trim string values of tag and attributes\n cdataPropName: !1,\n numberParseOptions: {\n hex: !0,\n leadingZeros: !0,\n eNotation: !0\n },\n tagValueProcessor: function(e, t) {\n return t;\n },\n attributeValueProcessor: function(e, t) {\n return t;\n },\n stopNodes: [],\n //nested tags will not be parsed even for errors\n alwaysCreateTextNode: !1,\n isArray: () => !1,\n commentPropName: !1,\n unpairedTags: [],\n processEntities: !0,\n htmlEntities: !1,\n ignoreDeclaration: !1,\n ignorePiTags: !1,\n transformTagName: !1,\n transformAttributeName: !1,\n updateTag: function(e, t, r) {\n return e;\n }\n // skipEmptyListItem: false\n}, Se = function(e) {\n return Object.assign({}, re, e);\n};\nB.buildOptions = Se;\nB.defaultOptions = re;\nclass Me {\n constructor(t) {\n this.tagname = t, this.child = [], this[\":@\"] = {};\n }\n add(t, r) {\n t === \"__proto__\" && (t = \"#__proto__\"), this.child.push({ [t]: r });\n }\n addChild(t) {\n t.tagname === \"__proto__\" && (t.tagname = \"#__proto__\"), t[\":@\"] && Object.keys(t[\":@\"]).length > 0 ? this.child.push({ [t.tagname]: t.child, \":@\": t[\":@\"] }) : this.child.push({ [t.tagname]: t.child });\n }\n}\nvar Be = Me;\nconst ke = O;\nfunction qe(e, t) {\n const r = {};\n if (e[t + 3] === \"O\" && e[t + 4] === \"C\" && e[t + 5] === \"T\" && e[t + 6] === \"Y\" && e[t + 7] === \"P\" && e[t + 8] === \"E\") {\n t = t + 9;\n let s = 1, n = !1, i = !1, d = \"\";\n for (; t < e.length; t++)\n if (e[t] === \"<\" && !i) {\n if (n && Ge(e, t))\n t += 7, [entityName, val, t] = Xe(e, t + 1), val.indexOf(\"&\") === -1 && (r[We(entityName)] = {\n regx: RegExp(`&${entityName};`, \"g\"),\n val\n });\n else if (n && ze(e, t))\n t += 8;\n else if (n && He(e, t))\n t += 8;\n else if (n && Ke(e, t))\n t += 9;\n else if (Ue)\n i = !0;\n else\n throw new Error(\"Invalid DOCTYPE\");\n s++, d = \"\";\n } else if (e[t] === \">\") {\n if (i ? e[t - 1] === \"-\" && e[t - 2] === \"-\" && (i = !1, s--) : s--, s === 0)\n break;\n } else\n e[t] === \"[\" ? n = !0 : d += e[t];\n if (s !== 0)\n throw new Error(\"Unclosed DOCTYPE\");\n } else\n throw new Error(\"Invalid Tag instead of DOCTYPE\");\n return { entities: r, i: t };\n}\nfunction Xe(e, t) {\n let r = \"\";\n for (; t < e.length && e[t] !== \"'\" && e[t] !== '\"'; t++)\n r += e[t];\n if (r = r.trim(), r.indexOf(\" \") !== -1)\n throw new Error(\"External entites are not supported\");\n const s = e[t++];\n let n = \"\";\n for (; t < e.length && e[t] !== s; t++)\n n += e[t];\n return [r, n, t];\n}\nfunction Ue(e, t) {\n return e[t + 1] === \"!\" && e[t + 2] === \"-\" && e[t + 3] === \"-\";\n}\nfunction Ge(e, t) {\n return e[t + 1] === \"!\" && e[t + 2] === \"E\" && e[t + 3] === \"N\" && e[t + 4] === \"T\" && e[t + 5] === \"I\" && e[t + 6] === \"T\" && e[t + 7] === \"Y\";\n}\nfunction ze(e, t) {\n return e[t + 1] === \"!\" && e[t + 2] === \"E\" && e[t + 3] === \"L\" && e[t + 4] === \"E\" && e[t + 5] === \"M\" && e[t + 6] === \"E\" && e[t + 7] === \"N\" && e[t + 8] === \"T\";\n}\nfunction He(e, t) {\n return e[t + 1] === \"!\" && e[t + 2] === \"A\" && e[t + 3] === \"T\" && e[t + 4] === \"T\" && e[t + 5] === \"L\" && e[t + 6] === \"I\" && e[t + 7] === \"S\" && e[t + 8] === \"T\";\n}\nfunction Ke(e, t) {\n return e[t + 1] === \"!\" && e[t + 2] === \"N\" && e[t + 3] === \"O\" && e[t + 4] === \"T\" && e[t + 5] === \"A\" && e[t + 6] === \"T\" && e[t + 7] === \"I\" && e[t + 8] === \"O\" && e[t + 9] === \"N\";\n}\nfunction We(e) {\n if (ke.isName(e))\n return e;\n throw new Error(`Invalid entity name ${e}`);\n}\nvar Ze = qe;\nconst je = /^[-+]?0x[a-fA-F0-9]+$/, Ye = /^([\\-\\+])?(0*)(\\.[0-9]+([eE]\\-?[0-9]+)?|[0-9]+(\\.[0-9]+([eE]\\-?[0-9]+)?)?)$/;\n!Number.parseInt && window.parseInt && (Number.parseInt = window.parseInt);\n!Number.parseFloat && window.parseFloat && (Number.parseFloat = window.parseFloat);\nconst Je = {\n hex: !0,\n leadingZeros: !0,\n decimalPoint: \".\",\n eNotation: !0\n //skipLike: /regex/\n};\nfunction Qe(e, t = {}) {\n if (t = Object.assign({}, Je, t), !e || typeof e != \"string\")\n return e;\n let r = e.trim();\n if (t.skipLike !== void 0 && t.skipLike.test(r))\n return e;\n if (t.hex && je.test(r))\n return Number.parseInt(r, 16);\n {\n const s = Ye.exec(r);\n if (s) {\n const n = s[1], i = s[2];\n let d = De(s[3]);\n const u = s[4] || s[6];\n if (!t.leadingZeros && i.length > 0 && n && r[2] !== \".\")\n return e;\n if (!t.leadingZeros && i.length > 0 && !n && r[1] !== \".\")\n return e;\n {\n const o = Number(r), a = \"\" + o;\n return a.search(/[eE]/) !== -1 || u ? t.eNotation ? o : e : r.indexOf(\".\") !== -1 ? a === \"0\" && d === \"\" || a === d || n && a === \"-\" + d ? o : e : i ? d === a || n + d === a ? o : e : r === a || r === n + a ? o : e;\n }\n } else\n return e;\n }\n}\nfunction De(e) {\n return e && e.indexOf(\".\") !== -1 && (e = e.replace(/0+$/, \"\"), e === \".\" ? e = \"0\" : e[0] === \".\" ? e = \"0\" + e : e[e.length - 1] === \".\" && (e = e.substr(0, e.length - 1))), e;\n}\nvar et = Qe;\nconst k = O, T = Be, tt = Ze, rt = et;\n\"<((!\\\\[CDATA\\\\[([\\\\s\\\\S]*?)(]]>))|((NAME:)?(NAME))([^>]*)>|((\\\\/)(NAME)\\\\s*>))([^<]*)\".replace(/NAME/g, k.nameRegexp);\nlet nt = class {\n constructor(t) {\n this.options = t, this.currentNode = null, this.tagsNodeStack = [], this.docTypeEntities = {}, this.lastEntities = {\n apos: { regex: /&(apos|#39|#x27);/g, val: \"'\" },\n gt: { regex: /&(gt|#62|#x3E);/g, val: \">\" },\n lt: { regex: /&(lt|#60|#x3C);/g, val: \"<\" },\n quot: { regex: /&(quot|#34|#x22);/g, val: '\"' }\n }, this.ampEntity = { regex: /&(amp|#38|#x26);/g, val: \"&\" }, this.htmlEntities = {\n space: { regex: /&(nbsp|#160);/g, val: \" \" },\n // \"lt\" : { regex: /&(lt|#60);/g, val: \"<\" },\n // \"gt\" : { regex: /&(gt|#62);/g, val: \">\" },\n // \"amp\" : { regex: /&(amp|#38);/g, val: \"&\" },\n // \"quot\" : { regex: /&(quot|#34);/g, val: \"\\\"\" },\n // \"apos\" : { regex: /&(apos|#39);/g, val: \"'\" },\n cent: { regex: /&(cent|#162);/g, val: \"¢\" },\n pound: { regex: /&(pound|#163);/g, val: \"£\" },\n yen: { regex: /&(yen|#165);/g, val: \"¥\" },\n euro: { regex: /&(euro|#8364);/g, val: \"€\" },\n copyright: { regex: /&(copy|#169);/g, val: \"©\" },\n reg: { regex: /&(reg|#174);/g, val: \"®\" },\n inr: { regex: /&(inr|#8377);/g, val: \"₹\" }\n }, this.addExternalEntities = it, this.parseXml = at, this.parseTextData = st, this.resolveNameSpace = ot, this.buildAttributesMap = dt, this.isItStopNode = ht, this.replaceEntitiesValue = ft, this.readStopNodeData = gt, this.saveTextToParentTag = ct, this.addChild = lt;\n }\n};\nfunction it(e) {\n const t = Object.keys(e);\n for (let r = 0; r < t.length; r++) {\n const s = t[r];\n this.lastEntities[s] = {\n regex: new RegExp(\"&\" + s + \";\", \"g\"),\n val: e[s]\n };\n }\n}\nfunction st(e, t, r, s, n, i, d) {\n if (e !== void 0 && (this.options.trimValues && !s && (e = e.trim()), e.length > 0)) {\n d || (e = this.replaceEntitiesValue(e));\n const u = this.options.tagValueProcessor(t, e, r, n, i);\n return u == null ? e : typeof u != typeof e || u !== e ? u : this.options.trimValues ? $(e, this.options.parseTagValue, this.options.numberParseOptions) : e.trim() === e ? $(e, this.options.parseTagValue, this.options.numberParseOptions) : e;\n }\n}\nfunction ot(e) {\n if (this.options.removeNSPrefix) {\n const t = e.split(\":\"), r = e.charAt(0) === \"/\" ? \"/\" : \"\";\n if (t[0] === \"xmlns\")\n return \"\";\n t.length === 2 && (e = r + t[1]);\n }\n return e;\n}\nconst ut = new RegExp(`([^\\\\s=]+)\\\\s*(=\\\\s*(['\"])([\\\\s\\\\S]*?)\\\\3)?`, \"gm\");\nfunction dt(e, t, r) {\n if (!this.options.ignoreAttributes && typeof e == \"string\") {\n const s = k.getAllMatches(e, ut), n = s.length, i = {};\n for (let d = 0; d < n; d++) {\n const u = this.resolveNameSpace(s[d][1]);\n let o = s[d][4], a = this.options.attributeNamePrefix + u;\n if (u.length)\n if (this.options.transformAttributeName && (a = this.options.transformAttributeName(a)), a === \"__proto__\" && (a = \"#__proto__\"), o !== void 0) {\n this.options.trimValues && (o = o.trim()), o = this.replaceEntitiesValue(o);\n const l = this.options.attributeValueProcessor(u, o, t);\n l == null ? i[a] = o : typeof l != typeof o || l !== o ? i[a] = l : i[a] = $(\n o,\n this.options.parseAttributeValue,\n this.options.numberParseOptions\n );\n } else\n this.options.allowBooleanAttributes && (i[a] = !0);\n }\n if (!Object.keys(i).length)\n return;\n if (this.options.attributesGroupName) {\n const d = {};\n return d[this.options.attributesGroupName] = i, d;\n }\n return i;\n }\n}\nconst at = function(e) {\n e = e.replace(/\\r\\n?/g, `\n`);\n const t = new T(\"!xml\");\n let r = t, s = \"\", n = \"\";\n for (let i = 0; i < e.length; i++)\n if (e[i] === \"<\")\n if (e[i + 1] === \"/\") {\n const u = y(e, \">\", i, \"Closing Tag is not closed.\");\n let o = e.substring(i + 2, u).trim();\n if (this.options.removeNSPrefix) {\n const f = o.indexOf(\":\");\n f !== -1 && (o = o.substr(f + 1));\n }\n this.options.transformTagName && (o = this.options.transformTagName(o)), r && (s = this.saveTextToParentTag(s, r, n));\n const a = n.substring(n.lastIndexOf(\".\") + 1);\n if (o && this.options.unpairedTags.indexOf(o) !== -1)\n throw new Error(`Unpaired tag can not be used as closing tag: `);\n let l = 0;\n a && this.options.unpairedTags.indexOf(a) !== -1 ? (l = n.lastIndexOf(\".\", n.lastIndexOf(\".\") - 1), this.tagsNodeStack.pop()) : l = n.lastIndexOf(\".\"), n = n.substring(0, l), r = this.tagsNodeStack.pop(), s = \"\", i = u;\n } else if (e[i + 1] === \"?\") {\n let u = x(e, i, !1, \"?>\");\n if (!u)\n throw new Error(\"Pi Tag is not closed.\");\n if (s = this.saveTextToParentTag(s, r, n), !(this.options.ignoreDeclaration && u.tagName === \"?xml\" || this.options.ignorePiTags)) {\n const o = new T(u.tagName);\n o.add(this.options.textNodeName, \"\"), u.tagName !== u.tagExp && u.attrExpPresent && (o[\":@\"] = this.buildAttributesMap(u.tagExp, n, u.tagName)), this.addChild(r, o, n);\n }\n i = u.closeIndex + 1;\n } else if (e.substr(i + 1, 3) === \"!--\") {\n const u = y(e, \"-->\", i + 4, \"Comment is not closed.\");\n if (this.options.commentPropName) {\n const o = e.substring(i + 4, u - 2);\n s = this.saveTextToParentTag(s, r, n), r.add(this.options.commentPropName, [{ [this.options.textNodeName]: o }]);\n }\n i = u;\n } else if (e.substr(i + 1, 2) === \"!D\") {\n const u = tt(e, i);\n this.docTypeEntities = u.entities, i = u.i;\n } else if (e.substr(i + 1, 2) === \"![\") {\n const u = y(e, \"]]>\", i, \"CDATA is not closed.\") - 2, o = e.substring(i + 9, u);\n if (s = this.saveTextToParentTag(s, r, n), this.options.cdataPropName)\n r.add(this.options.cdataPropName, [{ [this.options.textNodeName]: o }]);\n else {\n let a = this.parseTextData(o, r.tagname, n, !0, !1, !0);\n a == null && (a = \"\"), r.add(this.options.textNodeName, a);\n }\n i = u + 2;\n } else {\n let u = x(e, i, this.options.removeNSPrefix), o = u.tagName;\n const a = u.rawTagName;\n let l = u.tagExp, f = u.attrExpPresent, c = u.closeIndex;\n this.options.transformTagName && (o = this.options.transformTagName(o)), r && s && r.tagname !== \"!xml\" && (s = this.saveTextToParentTag(s, r, n, !1));\n const g = r;\n if (g && this.options.unpairedTags.indexOf(g.tagname) !== -1 && (r = this.tagsNodeStack.pop(), n = n.substring(0, n.lastIndexOf(\".\"))), o !== t.tagname && (n += n ? \".\" + o : o), this.isItStopNode(this.options.stopNodes, n, o)) {\n let h = \"\";\n if (l.length > 0 && l.lastIndexOf(\"/\") === l.length - 1)\n i = u.closeIndex;\n else if (this.options.unpairedTags.indexOf(o) !== -1)\n i = u.closeIndex;\n else {\n const E = this.readStopNodeData(e, a, c + 1);\n if (!E)\n throw new Error(`Unexpected end of ${a}`);\n i = E.i, h = E.tagContent;\n }\n const _ = new T(o);\n o !== l && f && (_[\":@\"] = this.buildAttributesMap(l, n, o)), h && (h = this.parseTextData(h, o, n, !0, f, !0, !0)), n = n.substr(0, n.lastIndexOf(\".\")), _.add(this.options.textNodeName, h), this.addChild(r, _, n);\n } else {\n if (l.length > 0 && l.lastIndexOf(\"/\") === l.length - 1) {\n o[o.length - 1] === \"/\" ? (o = o.substr(0, o.length - 1), n = n.substr(0, n.length - 1), l = o) : l = l.substr(0, l.length - 1), this.options.transformTagName && (o = this.options.transformTagName(o));\n const h = new T(o);\n o !== l && f && (h[\":@\"] = this.buildAttributesMap(l, n, o)), this.addChild(r, h, n), n = n.substr(0, n.lastIndexOf(\".\"));\n } else {\n const h = new T(o);\n this.tagsNodeStack.push(r), o !== l && f && (h[\":@\"] = this.buildAttributesMap(l, n, o)), this.addChild(r, h, n), r = h;\n }\n s = \"\", i = c;\n }\n }\n else\n s += e[i];\n return t.child;\n};\nfunction lt(e, t, r) {\n const s = this.options.updateTag(t.tagname, r, t[\":@\"]);\n s === !1 || (typeof s == \"string\" && (t.tagname = s), e.addChild(t));\n}\nconst ft = function(e) {\n if (this.options.processEntities) {\n for (let t in this.docTypeEntities) {\n const r = this.docTypeEntities[t];\n e = e.replace(r.regx, r.val);\n }\n for (let t in this.lastEntities) {\n const r = this.lastEntities[t];\n e = e.replace(r.regex, r.val);\n }\n if (this.options.htmlEntities)\n for (let t in this.htmlEntities) {\n const r = this.htmlEntities[t];\n e = e.replace(r.regex, r.val);\n }\n e = e.replace(this.ampEntity.regex, this.ampEntity.val);\n }\n return e;\n};\nfunction ct(e, t, r, s) {\n return e && (s === void 0 && (s = Object.keys(t.child).length === 0), e = this.parseTextData(\n e,\n t.tagname,\n r,\n !1,\n t[\":@\"] ? Object.keys(t[\":@\"]).length !== 0 : !1,\n s\n ), e !== void 0 && e !== \"\" && t.add(this.options.textNodeName, e), e = \"\"), e;\n}\nfunction ht(e, t, r) {\n const s = \"*.\" + r;\n for (const n in e) {\n const i = e[n];\n if (s === i || t === i)\n return !0;\n }\n return !1;\n}\nfunction pt(e, t, r = \">\") {\n let s, n = \"\";\n for (let i = t; i < e.length; i++) {\n let d = e[i];\n if (s)\n d === s && (s = \"\");\n else if (d === '\"' || d === \"'\")\n s = d;\n else if (d === r[0])\n if (r[1]) {\n if (e[i + 1] === r[1])\n return {\n data: n,\n index: i\n };\n } else\n return {\n data: n,\n index: i\n };\n else\n d === \"\t\" && (d = \" \");\n n += d;\n }\n}\nfunction y(e, t, r, s) {\n const n = e.indexOf(t, r);\n if (n === -1)\n throw new Error(s);\n return n + t.length - 1;\n}\nfunction x(e, t, r, s = \">\") {\n const n = pt(e, t + 1, s);\n if (!n)\n return;\n let i = n.data;\n const d = n.index, u = i.search(/\\s/);\n let o = i, a = !0;\n u !== -1 && (o = i.substr(0, u).replace(/\\s\\s*$/, \"\"), i = i.substr(u + 1));\n const l = o;\n if (r) {\n const f = o.indexOf(\":\");\n f !== -1 && (o = o.substr(f + 1), a = o !== n.data.substr(f + 1));\n }\n return {\n tagName: o,\n tagExp: i,\n closeIndex: d,\n attrExpPresent: a,\n rawTagName: l\n };\n}\nfunction gt(e, t, r) {\n const s = r;\n let n = 1;\n for (; r < e.length; r++)\n if (e[r] === \"<\")\n if (e[r + 1] === \"/\") {\n const i = y(e, \">\", r, `${t} is not closed`);\n if (e.substring(r + 2, i).trim() === t && (n--, n === 0))\n return {\n tagContent: e.substring(s, r),\n i\n };\n r = i;\n } else if (e[r + 1] === \"?\")\n r = y(e, \"?>\", r + 1, \"StopNode is not closed.\");\n else if (e.substr(r + 1, 3) === \"!--\")\n r = y(e, \"-->\", r + 3, \"StopNode is not closed.\");\n else if (e.substr(r + 1, 2) === \"![\")\n r = y(e, \"]]>\", r, \"StopNode is not closed.\") - 2;\n else {\n const i = x(e, r, \">\");\n i && ((i && i.tagName) === t && i.tagExp[i.tagExp.length - 1] !== \"/\" && n++, r = i.closeIndex);\n }\n}\nfunction $(e, t, r) {\n if (t && typeof e == \"string\") {\n const s = e.trim();\n return s === \"true\" ? !0 : s === \"false\" ? !1 : rt(e, r);\n } else\n return k.isExist(e) ? e : \"\";\n}\nvar wt = nt, ne = {};\nfunction mt(e, t) {\n return ie(e, t);\n}\nfunction ie(e, t, r) {\n let s;\n const n = {};\n for (let i = 0; i < e.length; i++) {\n const d = e[i], u = Nt(d);\n let o = \"\";\n if (r === void 0 ? o = u : o = r + \".\" + u, u === t.textNodeName)\n s === void 0 ? s = d[u] : s += \"\" + d[u];\n else {\n if (u === void 0)\n continue;\n if (d[u]) {\n let a = ie(d[u], t, o);\n const l = bt(a, t);\n d[\":@\"] ? Et(a, d[\":@\"], o, t) : Object.keys(a).length === 1 && a[t.textNodeName] !== void 0 && !t.alwaysCreateTextNode ? a = a[t.textNodeName] : Object.keys(a).length === 0 && (t.alwaysCreateTextNode ? a[t.textNodeName] = \"\" : a = \"\"), n[u] !== void 0 && n.hasOwnProperty(u) ? (Array.isArray(n[u]) || (n[u] = [n[u]]), n[u].push(a)) : t.isArray(u, o, l) ? n[u] = [a] : n[u] = a;\n }\n }\n }\n return typeof s == \"string\" ? s.length > 0 && (n[t.textNodeName] = s) : s !== void 0 && (n[t.textNodeName] = s), n;\n}\nfunction Nt(e) {\n const t = Object.keys(e);\n for (let r = 0; r < t.length; r++) {\n const s = t[r];\n if (s !== \":@\")\n return s;\n }\n}\nfunction Et(e, t, r, s) {\n if (t) {\n const n = Object.keys(t), i = n.length;\n for (let d = 0; d < i; d++) {\n const u = n[d];\n s.isArray(u, r + \".\" + u, !0, !0) ? e[u] = [t[u]] : e[u] = t[u];\n }\n }\n}\nfunction bt(e, t) {\n const { textNodeName: r } = t, s = Object.keys(e).length;\n return !!(s === 0 || s === 1 && (e[r] || typeof e[r] == \"boolean\" || e[r] === 0));\n}\nne.prettify = mt;\nconst { buildOptions: yt } = B, _t = wt, { prettify: vt } = ne, Tt = S;\nlet It = class {\n constructor(t) {\n this.externalEntities = {}, this.options = yt(t);\n }\n /**\n * Parse XML dats to JS object \n * @param {string|Buffer} xmlData \n * @param {boolean|Object} validationOption \n */\n parse(t, r) {\n if (typeof t != \"string\")\n if (t.toString)\n t = t.toString();\n else\n throw new Error(\"XML data is accepted in String or Bytes[] form.\");\n if (r) {\n r === !0 && (r = {});\n const i = Tt.validate(t, r);\n if (i !== !0)\n throw Error(`${i.err.msg}:${i.err.line}:${i.err.col}`);\n }\n const s = new _t(this.options);\n s.addExternalEntities(this.externalEntities);\n const n = s.parseXml(t);\n return this.options.preserveOrder || n === void 0 ? n : vt(n, this.options);\n }\n /**\n * Add Entity which is not by default supported by this library\n * @param {string} key \n * @param {string} value \n */\n addEntity(t, r) {\n if (r.indexOf(\"&\") !== -1)\n throw new Error(\"Entity value can't have '&'\");\n if (t.indexOf(\"&\") !== -1 || t.indexOf(\";\") !== -1)\n throw new Error(\"An entity must be set without '&' and ';'. Eg. use '#xD' for ' '\");\n if (r === \"&\")\n throw new Error(\"An entity with value '&' is not permitted\");\n this.externalEntities[t] = r;\n }\n};\nvar At = It;\nconst Ot = `\n`;\nfunction Ct(e, t) {\n let r = \"\";\n return t.format && t.indentBy.length > 0 && (r = Ot), se(e, t, \"\", r);\n}\nfunction se(e, t, r, s) {\n let n = \"\", i = !1;\n for (let d = 0; d < e.length; d++) {\n const u = e[d], o = Pt(u);\n if (o === void 0)\n continue;\n let a = \"\";\n if (r.length === 0 ? a = o : a = `${r}.${o}`, o === t.textNodeName) {\n let h = u[o];\n xt(a, t) || (h = t.tagValueProcessor(o, h), h = oe(h, t)), i && (n += s), n += h, i = !1;\n continue;\n } else if (o === t.cdataPropName) {\n i && (n += s), n += ``, i = !1;\n continue;\n } else if (o === t.commentPropName) {\n n += s + ``, i = !0;\n continue;\n } else if (o[0] === \"?\") {\n const h = K(u[\":@\"], t), _ = o === \"?xml\" ? \"\" : s;\n let E = u[o][0][t.textNodeName];\n E = E.length !== 0 ? \" \" + E : \"\", n += _ + `<${o}${E}${h}?>`, i = !0;\n continue;\n }\n let l = s;\n l !== \"\" && (l += t.indentBy);\n const f = K(u[\":@\"], t), c = s + `<${o}${f}`, g = se(u[o], t, a, l);\n t.unpairedTags.indexOf(o) !== -1 ? t.suppressUnpairedNode ? n += c + \">\" : n += c + \"/>\" : (!g || g.length === 0) && t.suppressEmptyNode ? n += c + \"/>\" : g && g.endsWith(\">\") ? n += c + `>${g}${s}` : (n += c + \">\", g && s !== \"\" && (g.includes(\"/>\") || g.includes(\"`), i = !0;\n }\n return n;\n}\nfunction Pt(e) {\n const t = Object.keys(e);\n for (let r = 0; r < t.length; r++) {\n const s = t[r];\n if (e.hasOwnProperty(s) && s !== \":@\")\n return s;\n }\n}\nfunction K(e, t) {\n let r = \"\";\n if (e && !t.ignoreAttributes)\n for (let s in e) {\n if (!e.hasOwnProperty(s))\n continue;\n let n = t.attributeValueProcessor(s, e[s]);\n n = oe(n, t), n === !0 && t.suppressBooleanAttributes ? r += ` ${s.substr(t.attributeNamePrefix.length)}` : r += ` ${s.substr(t.attributeNamePrefix.length)}=\"${n}\"`;\n }\n return r;\n}\nfunction xt(e, t) {\n e = e.substr(0, e.length - t.textNodeName.length - 1);\n let r = e.substr(e.lastIndexOf(\".\") + 1);\n for (let s in t.stopNodes)\n if (t.stopNodes[s] === e || t.stopNodes[s] === \"*.\" + r)\n return !0;\n return !1;\n}\nfunction oe(e, t) {\n if (e && e.length > 0 && t.processEntities)\n for (let r = 0; r < t.entities.length; r++) {\n const s = t.entities[r];\n e = e.replace(s.regex, s.val);\n }\n return e;\n}\nvar $t = Ct;\nconst Ft = $t, Vt = {\n attributeNamePrefix: \"@_\",\n attributesGroupName: !1,\n textNodeName: \"#text\",\n ignoreAttributes: !0,\n cdataPropName: !1,\n format: !1,\n indentBy: \" \",\n suppressEmptyNode: !1,\n suppressUnpairedNode: !0,\n suppressBooleanAttributes: !0,\n tagValueProcessor: function(e, t) {\n return t;\n },\n attributeValueProcessor: function(e, t) {\n return t;\n },\n preserveOrder: !1,\n commentPropName: !1,\n unpairedTags: [],\n entities: [\n { regex: new RegExp(\"&\", \"g\"), val: \"&\" },\n //it must be on top\n { regex: new RegExp(\">\", \"g\"), val: \">\" },\n { regex: new RegExp(\"<\", \"g\"), val: \"<\" },\n { regex: new RegExp(\"'\", \"g\"), val: \"'\" },\n { regex: new RegExp('\"', \"g\"), val: \""\" }\n ],\n processEntities: !0,\n stopNodes: [],\n // transformTagName: false,\n // transformAttributeName: false,\n oneListGroup: !1\n};\nfunction b(e) {\n this.options = Object.assign({}, Vt, e), this.options.ignoreAttributes || this.options.attributesGroupName ? this.isAttribute = function() {\n return !1;\n } : (this.attrPrefixLen = this.options.attributeNamePrefix.length, this.isAttribute = St), this.processTextOrObjNode = Lt, this.options.format ? (this.indentate = Rt, this.tagEndChar = `>\n`, this.newLine = `\n`) : (this.indentate = function() {\n return \"\";\n }, this.tagEndChar = \">\", this.newLine = \"\");\n}\nb.prototype.build = function(e) {\n return this.options.preserveOrder ? Ft(e, this.options) : (Array.isArray(e) && this.options.arrayNodeName && this.options.arrayNodeName.length > 1 && (e = {\n [this.options.arrayNodeName]: e\n }), this.j2x(e, 0).val);\n};\nb.prototype.j2x = function(e, t) {\n let r = \"\", s = \"\";\n for (let n in e)\n if (Object.prototype.hasOwnProperty.call(e, n))\n if (typeof e[n] > \"u\")\n this.isAttribute(n) && (s += \"\");\n else if (e[n] === null)\n this.isAttribute(n) ? s += \"\" : n[0] === \"?\" ? s += this.indentate(t) + \"<\" + n + \"?\" + this.tagEndChar : s += this.indentate(t) + \"<\" + n + \"/\" + this.tagEndChar;\n else if (e[n] instanceof Date)\n s += this.buildTextValNode(e[n], n, \"\", t);\n else if (typeof e[n] != \"object\") {\n const i = this.isAttribute(n);\n if (i)\n r += this.buildAttrPairStr(i, \"\" + e[n]);\n else if (n === this.options.textNodeName) {\n let d = this.options.tagValueProcessor(n, \"\" + e[n]);\n s += this.replaceEntitiesValue(d);\n } else\n s += this.buildTextValNode(e[n], n, \"\", t);\n } else if (Array.isArray(e[n])) {\n const i = e[n].length;\n let d = \"\";\n for (let u = 0; u < i; u++) {\n const o = e[n][u];\n typeof o > \"u\" || (o === null ? n[0] === \"?\" ? s += this.indentate(t) + \"<\" + n + \"?\" + this.tagEndChar : s += this.indentate(t) + \"<\" + n + \"/\" + this.tagEndChar : typeof o == \"object\" ? this.options.oneListGroup ? d += this.j2x(o, t + 1).val : d += this.processTextOrObjNode(o, n, t) : d += this.buildTextValNode(o, n, \"\", t));\n }\n this.options.oneListGroup && (d = this.buildObjectNode(d, n, \"\", t)), s += d;\n } else if (this.options.attributesGroupName && n === this.options.attributesGroupName) {\n const i = Object.keys(e[n]), d = i.length;\n for (let u = 0; u < d; u++)\n r += this.buildAttrPairStr(i[u], \"\" + e[n][i[u]]);\n } else\n s += this.processTextOrObjNode(e[n], n, t);\n return { attrStr: r, val: s };\n};\nb.prototype.buildAttrPairStr = function(e, t) {\n return t = this.options.attributeValueProcessor(e, \"\" + t), t = this.replaceEntitiesValue(t), this.options.suppressBooleanAttributes && t === \"true\" ? \" \" + e : \" \" + e + '=\"' + t + '\"';\n};\nfunction Lt(e, t, r) {\n const s = this.j2x(e, r + 1);\n return e[this.options.textNodeName] !== void 0 && Object.keys(e).length === 1 ? this.buildTextValNode(e[this.options.textNodeName], t, s.attrStr, r) : this.buildObjectNode(s.val, t, s.attrStr, r);\n}\nb.prototype.buildObjectNode = function(e, t, r, s) {\n if (e === \"\")\n return t[0] === \"?\" ? this.indentate(s) + \"<\" + t + r + \"?\" + this.tagEndChar : this.indentate(s) + \"<\" + t + r + this.closeTag(t) + this.tagEndChar;\n {\n let n = \"\" + e + n : this.options.commentPropName !== !1 && t === this.options.commentPropName && i.length === 0 ? this.indentate(s) + `` + this.newLine : this.indentate(s) + \"<\" + t + r + i + this.tagEndChar + e + this.indentate(s) + n;\n }\n};\nb.prototype.closeTag = function(e) {\n let t = \"\";\n return this.options.unpairedTags.indexOf(e) !== -1 ? this.options.suppressUnpairedNode || (t = \"/\") : this.options.suppressEmptyNode ? t = \"/\" : t = `>` + this.newLine;\n if (this.options.commentPropName !== !1 && t === this.options.commentPropName)\n return this.indentate(s) + `` + this.newLine;\n if (t[0] === \"?\")\n return this.indentate(s) + \"<\" + t + r + \"?\" + this.tagEndChar;\n {\n let n = this.options.tagValueProcessor(t, e);\n return n = this.replaceEntitiesValue(n), n === \"\" ? this.indentate(s) + \"<\" + t + r + this.closeTag(t) + this.tagEndChar : this.indentate(s) + \"<\" + t + r + \">\" + n + \" 0 && this.options.processEntities)\n for (let t = 0; t < this.options.entities.length; t++) {\n const r = this.options.entities[t];\n e = e.replace(r.regex, r.val);\n }\n return e;\n};\nfunction Rt(e) {\n return this.options.indentBy.repeat(e);\n}\nfunction St(e) {\n return e.startsWith(this.options.attributeNamePrefix) && e !== this.options.textNodeName ? e.substr(this.attrPrefixLen) : !1;\n}\nvar Mt = b;\nconst Bt = S, kt = At, qt = Mt;\nvar W = {\n XMLParser: kt,\n XMLValidator: Bt,\n XMLBuilder: qt\n};\nfunction Xt(e) {\n if (typeof e != \"string\")\n throw new TypeError(`Expected a \\`string\\`, got \\`${typeof e}\\``);\n if (e = e.trim(), e.length === 0 || W.XMLValidator.validate(e) !== !0)\n return !1;\n let t;\n const r = new W.XMLParser();\n try {\n t = r.parse(e);\n } catch {\n return !1;\n }\n return !(!t || !(\"svg\" in t));\n}\n/**\n * @copyright Copyright (c) 2022 John Molakvoæ \n *\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 */\nclass cr {\n _view;\n constructor(t) {\n Ut(t), this._view = t;\n }\n get id() {\n return this._view.id;\n }\n get name() {\n return this._view.name;\n }\n get caption() {\n return this._view.caption;\n }\n get emptyTitle() {\n return this._view.emptyTitle;\n }\n get emptyCaption() {\n return this._view.emptyCaption;\n }\n get getContents() {\n return this._view.getContents;\n }\n get icon() {\n return this._view.icon;\n }\n set icon(t) {\n this._view.icon = t;\n }\n get order() {\n return this._view.order;\n }\n set order(t) {\n this._view.order = t;\n }\n get params() {\n return this._view.params;\n }\n set params(t) {\n this._view.params = t;\n }\n get columns() {\n return this._view.columns;\n }\n get emptyView() {\n return this._view.emptyView;\n }\n get parent() {\n return this._view.parent;\n }\n get sticky() {\n return this._view.sticky;\n }\n get expanded() {\n return this._view.expanded;\n }\n set expanded(t) {\n this._view.expanded = t;\n }\n get defaultSortKey() {\n return this._view.defaultSortKey;\n }\n}\nconst Ut = function(e) {\n if (!e.id || typeof e.id != \"string\")\n throw new Error(\"View id is required and must be a string\");\n if (!e.name || typeof e.name != \"string\")\n throw new Error(\"View name is required and must be a string\");\n if (e.columns && e.columns.length > 0 && (!e.caption || typeof e.caption != \"string\"))\n throw new Error(\"View caption is required for top-level views and must be a string\");\n if (!e.getContents || typeof e.getContents != \"function\")\n throw new Error(\"View getContents is required and must be a function\");\n if (!e.icon || typeof e.icon != \"string\" || !Xt(e.icon))\n throw new Error(\"View icon is required and must be a valid svg string\");\n if (!(\"order\" in e) || typeof e.order != \"number\")\n throw new Error(\"View order is required and must be a number\");\n if (e.columns && e.columns.forEach((t) => {\n if (!(t instanceof Ie))\n throw new Error(\"View columns must be an array of Column. Invalid column found\");\n }), e.emptyView && typeof e.emptyView != \"function\")\n throw new Error(\"View emptyView must be a function\");\n if (e.parent && typeof e.parent != \"string\")\n throw new Error(\"View parent must be a string\");\n if (\"sticky\" in e && typeof e.sticky != \"boolean\")\n throw new Error(\"View sticky must be a boolean\");\n if (\"expanded\" in e && typeof e.expanded != \"boolean\")\n throw new Error(\"View expanded must be a boolean\");\n if (e.defaultSortKey && typeof e.defaultSortKey != \"string\")\n throw new Error(\"View defaultSortKey must be a string\");\n return !0;\n};\n/**\n * @copyright 2019 Christoph Wurst \n *\n * @author Christoph Wurst \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 hr = function(e) {\n return F().registerEntry(e);\n}, pr = function(e) {\n return F().unregisterEntry(e);\n}, gr = function(e) {\n return F().getEntries(e).sort((r, s) => r.order !== void 0 && s.order !== void 0 && r.order !== s.order ? r.order - s.order : r.displayName.localeCompare(s.displayName, void 0, { numeric: !0, sensitivity: \"base\" }));\n};\nexport {\n Ie as Column,\n Z as DefaultType,\n ye as File,\n Qt as FileAction,\n R as FileType,\n _e as Folder,\n tr as Header,\n Te as Navigation,\n D as Node,\n Q as NodeStatus,\n N as Permission,\n cr as View,\n hr as addNewFileMenuEntry,\n ur as davGetClient,\n sr as davGetDefaultPropfind,\n Ee as davGetFavoritesReport,\n or as davGetRecentSearch,\n be as davParsePermissions,\n te as davRemoteURL,\n ve as davResultToNode,\n ee as davRootPath,\n Y as defaultDavNamespaces,\n j as defaultDavProperties,\n Yt as formatFileSize,\n L as getDavNameSpaces,\n V as getDavProperties,\n dr as getFavoriteNodes,\n er as getFileActions,\n nr as getFileListHeaders,\n ar as getNavigation,\n gr as getNewFileMenuEntries,\n Jt as parseFileSize,\n ir as registerDavProperty,\n Dt as registerFileAction,\n rr as registerFileListHeaders,\n pr as removeNewFileMenuEntry\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=\" + {\"923\":\"2686613ba9d88601b889\",\"8321\":\"8442e3d18a58ee1f612a\"}[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 = 9837;","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) 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\t9837: 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, [7874], () => (__webpack_require__(34507)))\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["deferred","inProgress","dataWebpackPrefix","getLoggerBuilder","setApp","detectUser","build","action","FileAction","id","displayName","nodes","view","t","iconSvgInline","enabled","length","map","node","permissions","every","permission","Permission","DELETE","exec","axios","delete","encodedSource","emit","error","logger","source","execBatch","dir","Promise","all","this","order","triggerDownload","url","hiddenElement","document","createElement","download","href","click","downloadNodes","secret","Math","random","toString","substring","generateUrl","files","JSON","stringify","basename","isDownloadable","READ","attributes","downloadAttribute","parse","find","attribute","scope","key","undefined","some","type","FileType","Folder","root","startsWith","async","Array","fill","UPDATE","path","link","generateOcsUrl","result","post","uid","getCurrentUser","window","location","host","encodePath","data","ocs","token","showError","openLocalClient","shouldFavorite","favorite","favoriteNode","willFavorite","tags","OC","TAG_FAVORITE","dirname","Vue","StarSvg","NONE","options","styleTagTransform","setAttributes","insert","domAPI","insertStyleElement","locals","Axios","AxiosError","CanceledError","isCancel","CancelToken","VERSION","Cancel","isAxiosError","spread","toFormData","AxiosHeaders","HttpStatusCode","formToJSON","getAdapter","mergeConfig","queue","getQueue","PQueue","concurrency","MoveCopyAction","canMove","reduce","min","ALL","canCopy","canDownload","getActionForNodes","MOVE_OR_COPY","MOVE","COPY","handleCopyMoveNodeTo","destination","method","overwrite","arguments","Error","relativePath","join","destinationUrl","generateRemoteUrl","debug","NodeStatus","LOADING","add","headers","Destination","encodeURI","Overwrite","response","status","message","FolderMoveSvg","filePicker","getFilePickerBuilder","allowDirectories","setFilter","n","CREATE","fileid","setMimeTypeFilter","setMultiSelect","startAt","resolve","reject","setButtonFactory","buttons","target","push","label","icon","CopyIconSvg","callback","console","warn","pick","catch","openFilePickerForAction","FolderSvg","isDavRessource","OCP","Files","Router","goToRoute","default","DefaultType","HIDDEN","InformationSvg","OCA","Sidebar","open","File","getUniqueName","name","names","newName","i","includes","ext","extname","entry","context","handler","content","contentNames","encodeURIComponent","parseInt","createNewFolder","folder","mtime","Date","owner","showSuccess","WorkerGlobalScope","self","globalThis","fetch","bind","Headers","Request","Response","HOT_PATCHER_TYPE","NOOP","createNewItem","original","methods","final","HotPatcher","constructor","_configuration","registry","getEmptyAction","__type__","configuration","newAction","control","allowTargetOverrides","Object","keys","forEach","foreignKey","hasOwnProperty","assign","execute","args","get","item","_this","shift","apply","sequence","isPatched","patch","opts","chain","patchInline","plugin","restore","setFinal","__patcher","NONCE_CHARS","generateDigestAuthHeader","digest","replace","uri","indexOf","slice","toUpperCase","qop","test","ncString","nc","ha1","algorithm","user","realm","pass","nonce","cnonce","ha1Hash","md5","toLowerCase","ha1Compute","username","password","ha2","digestResponse","authValues","opaque","authHeader","k","obj","prototype","call","getPrototypeOf","proto","isPlainObject","setPrototypeOf","merge","output","items","nextItem","mergeObjects","obj1","obj2","isArray","headerPayloads","headerKeys","header","lowerHeader","hasArrayBuffer","ArrayBuffer","objToString","_request","requestOptions","patcher","body","newHeaders","value","isBuffer","isArrayBuffer","requestDataToFetchBody","signal","withCredentials","credentials","httpAgent","httpsAgent","agent","parsedURL","protocol","getFetchOptions","rootPath","defaultRootUrl","getClient","rootUrl","client","createClient","requesttoken","getRequestToken","getPatcher","_digest","hasDigestAuth","Authorization","split","re","match","floor","makeNonce","parseDigestAuth","response2","request","hashCode","str","a","b","charCodeAt","resultToNode","props","davParsePermissions","filename","nodeData","lastmod","mime","size","hasPreview","failed","reportPayload","getDavNameSpaces","getDavProperties","getContents","propfindPayload","davGetDefaultPropfind","rootResponse","stat","details","contentsResponse","getDirectoryContents","includeSelf","contents","filter","generateFolderView","index","View","generateIdFromPath","params","parent","columns","lastTwoWeeksTimestamp","round","now","searchPayload","inheritAttrs","String","required","checked","Boolean","Number","previewUrl","ratio","failedPreview","computed","nameWithoutExt","realPreviewUrl","mimeIcon","getElementById","pathSections","section","encodeFilePath","MimeType","getIconUrl","onCheck","$emit","onFailure","_vm","_c","_self","staticClass","attrs","domProps","on","_v","class","_s","extend","components","NcEmptyContent","NcModal","TemplatePreview","loading","opened","provider","extension","emptyTemplate","mimetypes","selectedTemplate","templates","template","style","width","margin","border","fetchedProvider","getTemplates","app","onSubmit","close","currentDirectory","URL","searchParams","fileInfo","filePath","templatePath","templateType","createFromTemplate","normalize","openfile","_setupProxy","$event","preventDefault","stopPropagation","_b","_l","_e","mixin","TemplatePickerRoot","appendChild","loadState","templatesPath","TemplatePicker","TemplatePickerView","propsData","$mount","addNewFileMenuEntry","initTemplatesFolder","removeNewFileMenuEntry","iconClass","directory","copySystemTemplates","template_path","registerFileAction","deleteAction","downloadAction","editLocallyAction","favoriteAction","moveOrCopyAction","openFolderAction","openInFilesAction","renameAction","sidebarAction","viewInFolderAction","newFolderEntry","favoriteFolders","favoriteFoldersViews","Navigation","getNavigation","register","caption","emptyTitle","emptyCaption","subscribe","addPathToFavorites","removePathFromFavorites","updateAndSortViews","sort","localeCompare","getLanguage","ignorePunctuation","findIndex","splice","remove","registerFavoritesView","controller","AbortController","CancelablePromise","onCancel","abort","defaultSortKey","deep","navigator","addEventListener","noRewrite","registration","serviceWorker","registerDavProperty","module","exports","_typeof","Symbol","iterator","_exports","_setPrototypeOf","o","p","__proto__","_createSuper","Derived","hasNativeReflectConstruct","Reflect","construct","sham","Proxy","valueOf","e","_isNativeReflectConstruct","Super","_getPrototypeOf","NewTarget","TypeError","ReferenceError","_assertThisInitialized","_possibleConstructorReturn","_createForOfIteratorHelper","allowArrayLike","it","minLen","_arrayLikeToArray","from","_unsupportedIterableToArray","F","s","done","f","err","normalCompletion","didErr","step","next","_e2","return","arr","len","arr2","_classCallCheck","instance","Constructor","_defineProperties","descriptor","enumerable","configurable","writable","defineProperty","_createClass","protoProps","staticProps","_defineProperty","_classPrivateFieldInitSpec","privateMap","privateCollection","has","_checkPrivateRedeclaration","set","_classPrivateFieldGet","receiver","_classApplyDescriptorGet","_classExtractFieldDescriptor","_classPrivateFieldSet","_classApplyDescriptorSet","cancelable","isCancelablePromise","toStringTag","_internals","WeakMap","_promise","CancelablePromiseInternal","_ref","_ref$executor","executor","_ref$internals","internals","isCanceled","onCancelList","_ref$promise","promise","cancel","onfulfilled","onrejected","makeCancelable","then","createCallback","onfinally","runWhenCanceled","finally","callbacks","_step","_iterator","_CancelablePromiseInt","subClass","superClass","create","_inherits","_super","iterable","makeAllCancelable","allSettled","any","race","reason","_default","onResult","arg","_step2","_iterator2","resolvable","___CSS_LOADER_URL_IMPORT_0___","___CSS_LOADER_URL_IMPORT_1___","___CSS_LOADER_EXPORT___","___CSS_LOADER_URL_REPLACEMENT_0___","___CSS_LOADER_URL_REPLACEMENT_1___","ReflectOwnKeys","R","ReflectApply","Function","ownKeys","getOwnPropertySymbols","getOwnPropertyNames","concat","NumberIsNaN","isNaN","EventEmitter","init","once","emitter","errorListener","removeListener","resolver","eventTargetAgnosticAddListener","flags","addErrorHandlerIfEventEmitter","_events","_eventsCount","_maxListeners","defaultMaxListeners","checkListener","listener","_getMaxListeners","that","_addListener","prepend","m","events","existing","warning","newListener","unshift","warned","w","count","onceWrapper","fired","wrapFn","_onceWrap","state","wrapped","_listeners","unwrap","evlistener","ret","unwrapListeners","arrayClone","listenerCount","copy","wrapListener","removeEventListener","RangeError","setMaxListeners","getMaxListeners","doError","er","listeners","addListener","prependListener","prependOnceListener","list","position","originalListener","pop","spliceOne","off","removeAllListeners","rawListeners","eventNames","http","https","validateParams","cb","codes","createErrorType","code","Base","NodeError","_Base","arg1","arg2","arg3","getMessage","oneOf","expected","thing","actual","determiner","search","msg","start","substr","this_len","endsWith","objectKeys","Duplex","Readable","Writable","v","allowHalfOpen","readable","onend","_writableState","ended","process","nextTick","onEndNT","end","highWaterMark","getBuffer","_readableState","destroyed","PassThrough","Transform","_transform","chunk","encoding","ReadableState","EElistenerCount","Stream","Buffer","OurUint8Array","g","Uint8Array","debugUtil","debuglog","StringDecoder","createReadableStreamAsyncIterator","BufferList","destroyImpl","getHighWaterMark","_require$codes","ERR_INVALID_ARG_TYPE","ERR_STREAM_PUSH_AFTER_EOF","ERR_METHOD_NOT_IMPLEMENTED","ERR_STREAM_UNSHIFT_AFTER_END_EVENT","errorOrDestroy","kProxyEvents","stream","isDuplex","objectMode","readableObjectMode","buffer","pipes","pipesCount","flowing","endEmitted","reading","sync","needReadable","emittedReadable","readableListening","resumeScheduled","paused","emitClose","autoDestroy","defaultEncoding","awaitDrain","readingMore","decoder","read","_read","destroy","_destroy","readableAddChunk","addToFront","skipChunkCheck","emitReadable","emitReadable_","onEofChunk","chunkInvalid","_uint8ArrayToBuffer","addChunk","write","maybeReadMore","_undestroy","undestroy","isPaused","setEncoding","enc","head","clear","MAX_HWM","howMuchToRead","computeNewHighWaterMark","flow","maybeReadMore_","updateReadableListening","resume","nReadingNextTick","resume_","fromList","first","consume","endReadable","endReadableNT","wState","finished","xs","x","l","nOrig","doRead","pipe","dest","pipeOpts","src","endFn","stdout","stderr","unpipe","onunpipe","unpipeInfo","hasUnpiped","onclose","onfinish","ondrain","onerror","ondata","cleanedUp","needDrain","pipeOnDrain","pause","event","fn","dests","ev","res","wrap","asyncIterator","_fromList","ERR_MULTIPLE_CALLBACK","ERR_TRANSFORM_ALREADY_TRANSFORMING","ERR_TRANSFORM_WITH_LENGTH_0","afterTransform","ts","_transformState","transforming","writecb","writechunk","rs","needTransform","writeencoding","transform","flush","_flush","prefinish","_write","err2","CorkedRequest","finish","corkReq","pendingcb","onCorkedFinish","corkedRequestsFree","WritableState","realHasInstance","internalUtil","deprecate","ERR_STREAM_CANNOT_PIPE","ERR_STREAM_DESTROYED","ERR_STREAM_NULL_VALUES","ERR_STREAM_WRITE_AFTER_END","ERR_UNKNOWN_ENCODING","nop","writableObjectMode","finalCalled","ending","noDecode","decodeStrings","writing","corked","bufferProcessing","onwrite","writelen","onwriteStateUpdate","finishMaybe","errorEmitted","onwriteError","needFinish","bufferedRequest","clearBuffer","afterWrite","lastBufferedRequest","prefinished","bufferedRequestCount","writev","_writev","_final","doWrite","onwriteDrain","holder","allBuffers","isBuf","callFinal","need","rState","current","out","_","hasInstance","object","writeAfterEnd","validChunk","newChunk","decodeChunk","last","writeOrBuffer","cork","uncork","setDefaultEncoding","endWritable","_Object$setPrototypeO","input","hint","prim","toPrimitive","_toPrimitive","_toPropertyKey","kLastResolve","kLastReject","kError","kEnded","kLastPromise","kHandlePromise","kStream","createIterResult","readAndResolve","iter","onReadable","AsyncIteratorPrototype","ReadableStreamAsyncIteratorPrototype","lastPromise","wrapForNext","_this2","_Object$create","enumerableOnly","symbols","sym","getOwnPropertyDescriptor","_objectSpread","getOwnPropertyDescriptors","defineProperties","inspect","custom","tail","alloc","offset","allocUnsafe","hasStrings","_getString","_getBuffer","c","nb","buf","depth","customInspect","emitErrorAndCloseNT","emitErrorNT","emitCloseNT","readableDestroyed","writableDestroyed","ERR_STREAM_PREMATURE_CLOSE","noop","eos","called","_len","_key","onlegacyfinish","writableEnded","readableEnded","onrequest","req","setHeader","isRequest","ERR_MISSING_ARGS","to","streams","popCallback","destroys","closed","destroyer","ERR_INVALID_OPT_VALUE","duplexKey","hwm","highWaterMarkFrom","isFinite","pipeline","copyProps","dst","SafeBuffer","encodingOrOffset","allocUnsafeSlow","SlowBuffer","EE","inherits","_isStdio","didOnEnd","cleanup","ClientRequest","statusCodes","defaultProtocol","hostname","port","IncomingMessage","Agent","defaultMaxSockets","globalAgent","STATUS_CODES","METHODS","xhr","getXHR","XMLHttpRequest","XDomainRequest","checkTypeSupport","responseType","isFunction","ReadableStream","writableStream","WritableStream","abortController","arraybuffer","msstream","mozchunkedarraybuffer","overrideMimeType","capability","rStates","readyStates","preferBinary","_opts","_body","_headers","auth","useFetch","mode","_mode","decideMode","_fetchTimer","_socketTimeout","_socketTimer","_onFinish","lowerName","unsafeHeaders","getHeader","removeHeader","_destroyed","timeout","setTimeout","headersObj","Blob","headersList","keyName","_fetchAbortController","requestTimeout","_fetchResponse","_resetTimers","_connect","_xhr","ontimeout","setRequestHeader","_response","onreadystatechange","readyState","DONE","_onXHRProgress","onprogress","send","statusValid","clearTimeout","flushHeaders","setNoDelay","setSocketKeepAlive","UNSENT","OPENED","HEADERS_RECEIVED","resetTimers","rawHeaders","trailers","rawTrailers","statusCode","statusMessage","statusText","_resumeFetch","pipeTo","reader","getReader","_pos","responseURL","getAllResponseHeaders","matches","_charset","mimeType","charsetMatch","responseText","newData","MSStreamReader","byteLength","onload","readAsArrayBuffer","isEncoding","nenc","retried","_normalizeEncoding","normalizeEncoding","text","utf16Text","utf16End","fillLast","utf8FillLast","base64Text","base64End","simpleWrite","simpleEnd","lastNeed","lastTotal","lastChar","utf8CheckByte","byte","r","utf8CheckExtraBytes","total","j","utf8CheckIncomplete","config","localStorage","val","trace","setUid","Ne","_entries","registerEntry","validateEntry","unregisterEntry","getEntryIndex","entries","getEntries","_nc_newfilemenu","C","P","Yt","log","d","pow","toFixed","parseFloat","toLocaleString","Z","DEFAULT","Qt","_action","validateAction","title","inline","renderInline","values","Dt","_nc_fileactions","N","SHARE","Y","oc","ir","_nc_dav_properties","_nc_dav_namespaces","prop","namespaces","V","L","sr","or","be","J","X","crtime","Q","NEW","FAILED","LOCKED","D","_data","_attributes","_knownDavService","updateMtime","deleteProperty","origin","pathname","move","rename","ye","super","ee","te","ur","setHeaders","dr","ve","getcontentlength","Te","_views","_currentView","views","setActive","active","ar","_nc_navigation","Ie","_column","Ae","render","summary","S","O","RegExp","isExist","u","isEmptyObject","getValue","isName","getAllMatches","startIndex","lastIndex","nameRegexp","M","Oe","allowBooleanAttributes","unpairedTags","U","G","z","validate","trim","Re","xe","H","line","tagClosed","tagName","tagStartPos","col","Ve","Ce","Pe","$e","Le","Fe","B","preserveOrder","attributeNamePrefix","attributesGroupName","textNodeName","ignoreAttributes","removeNSPrefix","parseTagValue","parseAttributeValue","trimValues","cdataPropName","numberParseOptions","hex","leadingZeros","eNotation","tagValueProcessor","attributeValueProcessor","stopNodes","alwaysCreateTextNode","commentPropName","processEntities","htmlEntities","ignoreDeclaration","ignorePiTags","transformTagName","transformAttributeName","updateTag","buildOptions","defaultOptions","ke","Xe","Ue","Ge","ze","He","Ke","We","je","Ye","Je","decimalPoint","T","tagname","child","addChild","tt","entityName","regx","entities","rt","skipLike","De","lastEntities","regex","st","replaceEntitiesValue","$","ot","charAt","ut","dt","resolveNameSpace","at","y","saveTextToParentTag","lastIndexOf","tagsNodeStack","tagExp","attrExpPresent","buildAttributesMap","closeIndex","docTypeEntities","parseTextData","rawTagName","isItStopNode","h","E","readStopNodeData","tagContent","lt","ft","ampEntity","ct","ht","pt","gt","ne","ie","Nt","bt","Et","prettify","yt","_t","currentNode","apos","quot","space","cent","pound","yen","euro","copyright","reg","inr","addExternalEntities","parseXml","vt","Tt","se","Pt","xt","oe","K","indentBy","suppressUnpairedNode","suppressEmptyNode","suppressBooleanAttributes","Ft","format","Vt","oneListGroup","isAttribute","attrPrefixLen","St","processTextOrObjNode","Lt","indentate","Rt","tagEndChar","newLine","j2x","buildTextValNode","attrStr","buildObjectNode","repeat","arrayNodeName","buildAttrPairStr","closeTag","W","XMLParser","externalEntities","addEntity","XMLValidator","XMLBuilder","cr","_view","Ut","emptyView","sticky","expanded","Xt","hr","pr","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","loaded","__webpack_modules__","chunkIds","priority","notFulfilled","Infinity","fulfilled","getter","__esModule","definition","chunkId","promises","script","needAttach","scripts","getElementsByTagName","getAttribute","charset","setAttribute","onScriptComplete","prev","doneFns","parentNode","removeChild","nmd","paths","children","scriptUrl","importScripts","currentScript","baseURI","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=4f4937589088c6a4243d","mappings":"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","sources":["webpack:///nextcloud/webpack/runtime/chunk loaded","webpack:///nextcloud/webpack/runtime/load script","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/./node_modules/@nextcloud/dialogs/dist/style.css?d87c","webpack:///nextcloud/node_modules/axios/index.js","webpack:///nextcloud/apps/files/src/actions/moveOrCopyActionUtils.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/newMenu/newFolder.ts","webpack:///nextcloud/node_modules/@buttercup/fetch/dist/index.browser.js","webpack:///nextcloud/node_modules/hot-patcher/dist/patcher.js","webpack:///nextcloud/node_modules/hot-patcher/dist/functions.js","webpack:///nextcloud/node_modules/webdav/dist/node/compat/patcher.js","webpack:///nextcloud/node_modules/webdav/dist/node/auth/digest.js","webpack:///nextcloud/node_modules/webdav/dist/node/tools/crypto.js","webpack:///nextcloud/node_modules/webdav/dist/node/tools/merge.js","webpack:///nextcloud/node_modules/webdav/dist/node/tools/headers.js","webpack:///nextcloud/node_modules/webdav/dist/node/compat/arrayBuffer.js","webpack:///nextcloud/node_modules/webdav/dist/node/request.js","webpack:///nextcloud/node_modules/webdav/dist/node/tools/body.js","webpack:///nextcloud/node_modules/webdav/dist/node/compat/buffer.js","webpack:///nextcloud/apps/files/src/services/WebdavClient.ts","webpack:///nextcloud/apps/files/src/utils/hashUtils.ts","webpack:///nextcloud/apps/files/src/services/Files.ts","webpack:///nextcloud/apps/files/src/services/Favorites.ts","webpack:///nextcloud/apps/files/src/views/favorites.ts","webpack:///nextcloud/apps/files/src/services/Recent.ts","webpack:///nextcloud/apps/files/src/views/TemplatePicker.vue","webpack:///nextcloud/apps/files/src/utils/fileUtils.ts","webpack:///nextcloud/apps/files/src/components/TemplatePreview.vue?vue&type=script&lang=js","webpack:///nextcloud/apps/files/src/components/TemplatePreview.vue","webpack:///nextcloud/apps/files/src/utils/davUtils.js","webpack://nextcloud/./apps/files/src/components/TemplatePreview.vue?af18","webpack://nextcloud/./apps/files/src/components/TemplatePreview.vue?81db","webpack://nextcloud/./apps/files/src/components/TemplatePreview.vue?c414","webpack:///nextcloud/apps/files/src/views/TemplatePicker.vue?vue&type=script&lang=ts","webpack:///nextcloud/apps/files/src/services/Templates.js","webpack://nextcloud/./apps/files/src/views/TemplatePicker.vue?0681","webpack://nextcloud/./apps/files/src/views/TemplatePicker.vue?afd8","webpack:///nextcloud/apps/files/src/init-templates.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/services/ServiceWorker.js","webpack:///nextcloud/apps/files/src/services/LivePhotos.ts","webpack:///nextcloud/node_modules/builtin-status-codes/browser.js","webpack:///nextcloud/node_modules/cancelable-promise/umd/CancelablePromise.js","webpack:///nextcloud/node_modules/@nextcloud/dialogs/dist/style.css","webpack:///nextcloud/apps/files/src/components/TemplatePreview.vue?vue&type=style&index=0&id=0859a92c&prod&lang=scss&scoped=true","webpack:///nextcloud/apps/files/src/views/TemplatePicker.vue?vue&type=style&index=0&id=48121b39&prod&lang=scss&scoped=true","webpack:///nextcloud/node_modules/events/events.js","webpack:///nextcloud/node_modules/https-browserify/index.js","webpack:///nextcloud/node_modules/readable-stream/errors-browser.js","webpack:///nextcloud/node_modules/readable-stream/lib/_stream_duplex.js","webpack:///nextcloud/node_modules/readable-stream/lib/_stream_passthrough.js","webpack:///nextcloud/node_modules/readable-stream/lib/_stream_readable.js","webpack:///nextcloud/node_modules/readable-stream/lib/_stream_transform.js","webpack:///nextcloud/node_modules/readable-stream/lib/_stream_writable.js","webpack:///nextcloud/node_modules/readable-stream/lib/internal/streams/async_iterator.js","webpack:///nextcloud/node_modules/readable-stream/lib/internal/streams/buffer_list.js","webpack:///nextcloud/node_modules/readable-stream/lib/internal/streams/destroy.js","webpack:///nextcloud/node_modules/readable-stream/lib/internal/streams/end-of-stream.js","webpack:///nextcloud/node_modules/readable-stream/lib/internal/streams/from-browser.js","webpack:///nextcloud/node_modules/readable-stream/lib/internal/streams/pipeline.js","webpack:///nextcloud/node_modules/readable-stream/lib/internal/streams/state.js","webpack:///nextcloud/node_modules/readable-stream/lib/internal/streams/stream-browser.js","webpack:///nextcloud/node_modules/readable-stream/readable-browser.js","webpack:///nextcloud/node_modules/safe-buffer/index.js","webpack:///nextcloud/node_modules/stream-browserify/index.js","webpack:///nextcloud/node_modules/stream-http/index.js","webpack:///nextcloud/node_modules/stream-http/lib/capability.js","webpack:///nextcloud/node_modules/stream-http/lib/request.js","webpack:///nextcloud/node_modules/stream-http/lib/response.js","webpack:///nextcloud/node_modules/string_decoder/lib/string_decoder.js","webpack:///nextcloud/node_modules/util-deprecate/browser.js","webpack:///nextcloud/node_modules/xtend/immutable.js","webpack:///nextcloud/node_modules/@nextcloud/files/dist/index.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};","/**\n * @copyright Copyright (c) 2022 John Molakvoæ \n *\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 */\nimport { getLoggerBuilder } from '@nextcloud/logger'\n\nexport default getLoggerBuilder()\n\t.setApp('files')\n\t.detectUser()\n\t.build()\n","/**\n * @copyright Copyright (c) 2023 John Molakvoæ \n *\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 */\nimport { emit } from '@nextcloud/event-bus';\nimport { Permission, Node, View, FileAction } from '@nextcloud/files';\nimport { translate as t } from '@nextcloud/l10n';\nimport axios from '@nextcloud/axios';\nimport TrashCanSvg from '@mdi/svg/svg/trash-can.svg?raw';\nimport logger from '../logger.js';\nexport const action = new FileAction({\n id: 'delete',\n displayName(nodes, view) {\n return view.id === 'trashbin'\n ? t('files', 'Delete permanently')\n : t('files', 'Delete');\n },\n iconSvgInline: () => TrashCanSvg,\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) {\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 return Promise.all(nodes.map(node => this.exec(node, view, dir)));\n },\n order: 100,\n});\n","/**\n * @copyright Copyright (c) 2023 John Molakvoæ \n *\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 */\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 downloadAttribute = JSON.parse(node.attributes['share-attributes']).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.source);\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 * @copyright Copyright (c) 2023 John Molakvoæ \n *\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 */\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 * @copyright Copyright (c) 2023 John Molakvoæ \n *\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 */\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 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!./style.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!./style.css\";\n export default content && content.locals ? content.locals : undefined;\n","import axios from './lib/axios.js';\n\n// This module is intended to unwrap Axios default export as named.\n// Keep top-level export same with static properties\n// so that it can keep same with es module or cjs\nconst {\n Axios,\n AxiosError,\n CanceledError,\n isCancel,\n CancelToken,\n VERSION,\n all,\n Cancel,\n isAxiosError,\n spread,\n toFormData,\n AxiosHeaders,\n HttpStatusCode,\n formToJSON,\n getAdapter,\n mergeConfig\n} = axios;\n\nexport {\n axios as default,\n Axios,\n AxiosError,\n CanceledError,\n isCancel,\n CancelToken,\n VERSION,\n all,\n Cancel,\n isAxiosError,\n spread,\n toFormData,\n AxiosHeaders,\n HttpStatusCode,\n formToJSON,\n getAdapter,\n mergeConfig\n}\n","/**\n * @copyright Copyright (c) 2023 John Molakvoæ \n *\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 */\nimport '@nextcloud/dialogs/style.css';\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 // For now the only restriction is that a shared file\n // cannot be copied if the download is disabled\n return canDownload(nodes);\n};\n","/**\n * @copyright Copyright (c) 2023 John Molakvoæ \n *\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 */\nimport '@nextcloud/dialogs/style.css';\n// eslint-disable-next-line n/no-extraneous-import\nimport { AxiosError } from 'axios';\nimport { basename, join } from 'path';\nimport { emit } from '@nextcloud/event-bus';\nimport { generateRemoteUrl } from '@nextcloud/router';\nimport { getCurrentUser } from '@nextcloud/auth';\nimport { getFilePickerBuilder, showError } from '@nextcloud/dialogs';\nimport { Permission, FileAction, FileType, NodeStatus } from '@nextcloud/files';\nimport { translate as t } from '@nextcloud/l10n';\nimport axios from '@nextcloud/axios';\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 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 if (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\n * destination: /foo\n * Allow move of /foo does not start with /foo/bar so allow\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 const relativePath = join(destination.path, node.basename);\n const destinationUrl = generateRemoteUrl(`dav/files/${getCurrentUser()?.uid}${relativePath}`);\n // Set loading state\n Vue.set(node, 'status', NodeStatus.LOADING);\n const queue = getQueue();\n return await queue.add(async () => {\n try {\n await axios({\n method: method === MoveCopyAction.COPY ? 'COPY' : 'MOVE',\n url: node.encodedSource,\n headers: {\n Destination: encodeURI(destinationUrl),\n Overwrite: overwrite ? undefined : 'F',\n },\n });\n // If we're moving, update the node\n // if we're copying, we don't need to update the node\n // the view will refresh itself\n if (method === MoveCopyAction.MOVE) {\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 (error instanceof AxiosError) {\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 is 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 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', 'Chose destination'))\n .allowDirectories(true)\n .setFilter((n) => {\n // We only want to show folders that we can create nodes in\n return (n.permissions & Permission.CREATE) !== 0\n // We don't want to show the current nodes in the file picker\n && !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 (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.COPY || action === MoveCopyAction.MOVE_OR_COPY) {\n buttons.push({\n label: target ? t('files', 'Copy to {target}', { target }) : 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 if (action === MoveCopyAction.MOVE || action === MoveCopyAction.MOVE_OR_COPY) {\n buttons.push({\n label: target ? t('files', 'Move to {target}', { target }) : 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(() => {\n reject(new Error(t('files', 'Cancelled move or copy operation')));\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 const result = await openFilePickerForAction(action, dir, [node]);\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 * @copyright Copyright (c) 2023 John Molakvoæ \n *\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 */\nimport { join } from 'path';\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, dir) {\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: join(dir, node.basename) });\n return null;\n },\n // Main action if enabled, meaning folders only\n default: DefaultType.HIDDEN,\n order: -100,\n});\n","/**\n * @copyright Copyright (c) 2023 John Molakvoæ \n *\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 */\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 });\n return null;\n },\n // Before openFolderAction\n order: -1000,\n default: DefaultType.HIDDEN,\n});\n","/**\n * @copyright Copyright (c) 2023 John Molakvoæ \n *\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 */\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 * @copyright Copyright (c) 2023 John Molakvoæ \n *\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 */\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 }, { 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 * @copyright Copyright (c) 2023 John Molakvoæ \n *\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 */\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) {\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, view, dir) {\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","import { basename, extname } 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 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};\n// TODO: move to @nextcloud/files\nexport const getUniqueName = (name, names) => {\n let newName = name;\n let i = 1;\n while (names.includes(newName)) {\n const ext = extname(name);\n newName = `${basename(name, ext)} (${i++})${ext}`;\n }\n return newName;\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 contentNames = content.map((node) => node.basename);\n const name = getUniqueName(t('files', 'New folder'), contentNames);\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 });\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 emit('files:node:rename', folder);\n },\n};\n","const inWebWorker = typeof WorkerGlobalScope !== \"undefined\" &&\n self instanceof WorkerGlobalScope;\nconst root = inWebWorker\n ? self\n : typeof window !== \"undefined\"\n ? window\n : globalThis;\nexport const fetch = root.fetch.bind(root);\nexport const Headers = root.Headers;\nexport const Request = root.Request;\nexport const Response = root.Response;\n","import { sequence } from \"./functions.js\";\nconst HOT_PATCHER_TYPE = \"@@HOTPATCHER\";\nconst NOOP = () => { };\nfunction createNewItem(method) {\n return {\n original: method,\n methods: [method],\n final: false\n };\n}\n/**\n * Hot patching manager class\n */\nexport class HotPatcher {\n constructor() {\n this._configuration = {\n registry: {},\n getEmptyAction: \"null\"\n };\n this.__type__ = HOT_PATCHER_TYPE;\n }\n /**\n * Configuration object reference\n * @readonly\n */\n get configuration() {\n return this._configuration;\n }\n /**\n * The action to take when a non-set method is requested\n * Possible values: null/throw\n */\n get getEmptyAction() {\n return this.configuration.getEmptyAction;\n }\n set getEmptyAction(newAction) {\n this.configuration.getEmptyAction = newAction;\n }\n /**\n * Control another hot-patcher instance\n * Force the remote instance to use patched methods from calling instance\n * @param target The target instance to control\n * @param allowTargetOverrides Allow the target to override patched methods on\n * the controller (default is false)\n * @returns Returns self\n * @throws {Error} Throws if the target is invalid\n */\n control(target, allowTargetOverrides = false) {\n if (!target || target.__type__ !== HOT_PATCHER_TYPE) {\n throw new Error(\"Failed taking control of target HotPatcher instance: Invalid type or object\");\n }\n Object.keys(target.configuration.registry).forEach(foreignKey => {\n if (this.configuration.registry.hasOwnProperty(foreignKey)) {\n if (allowTargetOverrides) {\n this.configuration.registry[foreignKey] = Object.assign({}, target.configuration.registry[foreignKey]);\n }\n }\n else {\n this.configuration.registry[foreignKey] = Object.assign({}, target.configuration.registry[foreignKey]);\n }\n });\n target._configuration = this.configuration;\n return this;\n }\n /**\n * Execute a patched method\n * @param key The method key\n * @param args Arguments to pass to the method (optional)\n * @see HotPatcher#get\n * @returns The output of the called method\n */\n execute(key, ...args) {\n const method = this.get(key) || NOOP;\n return method(...args);\n }\n /**\n * Get a method for a key\n * @param key The method key\n * @returns Returns the requested function or null if the function\n * does not exist and the host is configured to return null (and not throw)\n * @throws {Error} Throws if the configuration specifies to throw and the method\n * does not exist\n * @throws {Error} Throws if the `getEmptyAction` value is invalid\n */\n get(key) {\n const item = this.configuration.registry[key];\n if (!item) {\n switch (this.getEmptyAction) {\n case \"null\":\n return null;\n case \"throw\":\n throw new Error(`Failed handling method request: No method provided for override: ${key}`);\n default:\n throw new Error(`Failed handling request which resulted in an empty method: Invalid empty-action specified: ${this.getEmptyAction}`);\n }\n }\n return sequence(...item.methods);\n }\n /**\n * Check if a method has been patched\n * @param key The function key\n * @returns True if already patched\n */\n isPatched(key) {\n return !!this.configuration.registry[key];\n }\n /**\n * Patch a method name\n * @param key The method key to patch\n * @param method The function to set\n * @param opts Patch options\n * @returns Returns self\n */\n patch(key, method, opts = {}) {\n const { chain = false } = opts;\n if (this.configuration.registry[key] && this.configuration.registry[key].final) {\n throw new Error(`Failed patching '${key}': Method marked as being final`);\n }\n if (typeof method !== \"function\") {\n throw new Error(`Failed patching '${key}': Provided method is not a function`);\n }\n if (chain) {\n // Add new method to the chain\n if (!this.configuration.registry[key]) {\n // New key, create item\n this.configuration.registry[key] = createNewItem(method);\n }\n else {\n // Existing, push the method\n this.configuration.registry[key].methods.push(method);\n }\n }\n else {\n // Replace the original\n if (this.isPatched(key)) {\n const { original } = this.configuration.registry[key];\n this.configuration.registry[key] = Object.assign(createNewItem(method), {\n original\n });\n }\n else {\n this.configuration.registry[key] = createNewItem(method);\n }\n }\n return this;\n }\n /**\n * Patch a method inline, execute it and return the value\n * Used for patching contents of functions. This method will not apply a patched\n * function if it has already been patched, allowing for external overrides to\n * function. It also means that the function is cached so that it is not\n * instantiated every time the outer function is invoked.\n * @param key The function key to use\n * @param method The function to patch (once, only if not patched)\n * @param args Arguments to pass to the function\n * @returns The output of the patched function\n * @example\n * function mySpecialFunction(a, b) {\n * return hotPatcher.patchInline(\"func\", (a, b) => {\n * return a + b;\n * }, a, b);\n * }\n */\n patchInline(key, method, ...args) {\n if (!this.isPatched(key)) {\n this.patch(key, method);\n }\n return this.execute(key, ...args);\n }\n /**\n * Patch a method (or methods) in sequential-mode\n * See `patch()` with the option `chain: true`\n * @see patch\n * @param key The key to patch\n * @param methods The methods to patch\n * @returns Returns self\n */\n plugin(key, ...methods) {\n methods.forEach(method => {\n this.patch(key, method, { chain: true });\n });\n return this;\n }\n /**\n * Restore a patched method if it has been overridden\n * @param key The method key\n * @returns Returns self\n */\n restore(key) {\n if (!this.isPatched(key)) {\n throw new Error(`Failed restoring method: No method present for key: ${key}`);\n }\n else if (typeof this.configuration.registry[key].original !== \"function\") {\n throw new Error(`Failed restoring method: Original method not found or of invalid type for key: ${key}`);\n }\n this.configuration.registry[key].methods = [this.configuration.registry[key].original];\n return this;\n }\n /**\n * Set a method as being final\n * This sets a method as having been finally overridden. Attempts at overriding\n * again will fail with an error.\n * @param key The key to make final\n * @returns Returns self\n */\n setFinal(key) {\n if (!this.configuration.registry.hasOwnProperty(key)) {\n throw new Error(`Failed marking '${key}' as final: No method found for key`);\n }\n this.configuration.registry[key].final = true;\n return this;\n }\n}\n","export function sequence(...methods) {\n if (methods.length === 0) {\n throw new Error(\"Failed creating sequence: No functions provided\");\n }\n return function __executeSequence(...args) {\n let result = args;\n const _this = this;\n while (methods.length > 0) {\n const method = methods.shift();\n result = [method.apply(_this, result)];\n }\n return result[0];\n };\n}\n","import { HotPatcher } from \"hot-patcher\";\nlet __patcher = null;\nexport function getPatcher() {\n if (!__patcher) {\n __patcher = new HotPatcher();\n }\n return __patcher;\n}\n","import md5 from \"md5\";\nimport { ha1Compute } from \"../tools/crypto.js\";\nconst NONCE_CHARS = \"abcdef0123456789\";\nconst NONCE_SIZE = 32;\nexport function createDigestContext(username, password, ha1) {\n return { username, password, ha1, nc: 0, algorithm: \"md5\", hasDigestAuth: false };\n}\nexport function generateDigestAuthHeader(options, digest) {\n const url = options.url.replace(\"//\", \"\");\n const uri = url.indexOf(\"/\") == -1 ? \"/\" : url.slice(url.indexOf(\"/\"));\n const method = options.method ? options.method.toUpperCase() : \"GET\";\n const qop = /(^|,)\\s*auth\\s*($|,)/.test(digest.qop) ? \"auth\" : false;\n const ncString = `00000000${digest.nc}`.slice(-8);\n const ha1 = ha1Compute(digest.algorithm, digest.username, digest.realm, digest.password, digest.nonce, digest.cnonce, digest.ha1);\n const ha2 = md5(`${method}:${uri}`);\n const digestResponse = qop\n ? md5(`${ha1}:${digest.nonce}:${ncString}:${digest.cnonce}:${qop}:${ha2}`)\n : md5(`${ha1}:${digest.nonce}:${ha2}`);\n const authValues = {\n username: digest.username,\n realm: digest.realm,\n nonce: digest.nonce,\n uri,\n qop,\n response: digestResponse,\n nc: ncString,\n cnonce: digest.cnonce,\n algorithm: digest.algorithm,\n opaque: digest.opaque\n };\n const authHeader = [];\n for (const k in authValues) {\n if (authValues[k]) {\n if (k === \"qop\" || k === \"nc\" || k === \"algorithm\") {\n authHeader.push(`${k}=${authValues[k]}`);\n }\n else {\n authHeader.push(`${k}=\"${authValues[k]}\"`);\n }\n }\n }\n return `Digest ${authHeader.join(\", \")}`;\n}\nfunction makeNonce() {\n let uid = \"\";\n for (let i = 0; i < NONCE_SIZE; ++i) {\n uid = `${uid}${NONCE_CHARS[Math.floor(Math.random() * NONCE_CHARS.length)]}`;\n }\n return uid;\n}\nexport function parseDigestAuth(response, _digest) {\n const authHeader = (response.headers && response.headers.get(\"www-authenticate\")) || \"\";\n if (authHeader.split(/\\s/)[0].toLowerCase() !== \"digest\") {\n return false;\n }\n const re = /([a-z0-9_-]+)=(?:\"([^\"]+)\"|([a-z0-9_-]+))/gi;\n for (;;) {\n const match = re.exec(authHeader);\n if (!match) {\n break;\n }\n _digest[match[1]] = match[2] || match[3];\n }\n _digest.nc += 1;\n _digest.cnonce = makeNonce();\n return true;\n}\n","import md5 from \"md5\";\nexport function ha1Compute(algorithm, user, realm, pass, nonce, cnonce, ha1) {\n const ha1Hash = ha1 || md5(`${user}:${realm}:${pass}`);\n if (algorithm && algorithm.toLowerCase() === \"md5-sess\") {\n return md5(`${ha1Hash}:${nonce}:${cnonce}`);\n }\n return ha1Hash;\n}\n","export function cloneShallow(obj) {\n return isPlainObject(obj)\n ? Object.assign({}, obj)\n : Object.setPrototypeOf(Object.assign({}, obj), Object.getPrototypeOf(obj));\n}\nfunction isPlainObject(obj) {\n if (typeof obj !== \"object\" ||\n obj === null ||\n Object.prototype.toString.call(obj) != \"[object Object]\") {\n // Not an object\n return false;\n }\n if (Object.getPrototypeOf(obj) === null) {\n return true;\n }\n let proto = obj;\n // Find the prototype\n while (Object.getPrototypeOf(proto) !== null) {\n proto = Object.getPrototypeOf(proto);\n }\n return Object.getPrototypeOf(obj) === proto;\n}\nexport function merge(...args) {\n let output = null, items = [...args];\n while (items.length > 0) {\n const nextItem = items.shift();\n if (!output) {\n output = cloneShallow(nextItem);\n }\n else {\n output = mergeObjects(output, nextItem);\n }\n }\n return output;\n}\nfunction mergeObjects(obj1, obj2) {\n const output = cloneShallow(obj1);\n Object.keys(obj2).forEach(key => {\n if (!output.hasOwnProperty(key)) {\n output[key] = obj2[key];\n return;\n }\n if (Array.isArray(obj2[key])) {\n output[key] = Array.isArray(output[key])\n ? [...output[key], ...obj2[key]]\n : [...obj2[key]];\n }\n else if (typeof obj2[key] === \"object\" && !!obj2[key]) {\n output[key] =\n typeof output[key] === \"object\" && !!output[key]\n ? mergeObjects(output[key], obj2[key])\n : cloneShallow(obj2[key]);\n }\n else {\n output[key] = obj2[key];\n }\n });\n return output;\n}\n","export function convertResponseHeaders(headers) {\n const output = {};\n for (const key of headers.keys()) {\n output[key] = headers.get(key);\n }\n return output;\n}\nexport function mergeHeaders(...headerPayloads) {\n if (headerPayloads.length === 0)\n return {};\n const headerKeys = {};\n return headerPayloads.reduce((output, headers) => {\n Object.keys(headers).forEach(header => {\n const lowerHeader = header.toLowerCase();\n if (headerKeys.hasOwnProperty(lowerHeader)) {\n output[headerKeys[lowerHeader]] = headers[header];\n }\n else {\n headerKeys[lowerHeader] = header;\n output[header] = headers[header];\n }\n });\n return output;\n }, {});\n}\n","const hasArrayBuffer = typeof ArrayBuffer === \"function\";\nconst { toString: objToString } = Object.prototype;\n// Taken from: https://github.com/fengyuanchen/is-array-buffer/blob/master/src/index.js\nexport function isArrayBuffer(value) {\n return (hasArrayBuffer &&\n (value instanceof ArrayBuffer || objToString.call(value) === \"[object ArrayBuffer]\"));\n}\n","import { Agent as HTTPAgent } from \"http\";\nimport { Agent as HTTPSAgent } from \"https\";\nimport { fetch } from \"@buttercup/fetch\";\nimport { getPatcher } from \"./compat/patcher.js\";\nimport { isWeb } from \"./compat/env.js\";\nimport { generateDigestAuthHeader, parseDigestAuth } from \"./auth/digest.js\";\nimport { cloneShallow, merge } from \"./tools/merge.js\";\nimport { mergeHeaders } from \"./tools/headers.js\";\nimport { requestDataToFetchBody } from \"./tools/body.js\";\nfunction _request(requestOptions) {\n const patcher = getPatcher();\n return patcher.patchInline(\"request\", (options) => patcher.patchInline(\"fetch\", fetch, options.url, getFetchOptions(options)), requestOptions);\n}\nfunction getFetchOptions(requestOptions) {\n let headers = {};\n // Handle standard options\n const opts = {\n method: requestOptions.method\n };\n if (requestOptions.headers) {\n headers = mergeHeaders(headers, requestOptions.headers);\n }\n if (typeof requestOptions.data !== \"undefined\") {\n const [body, newHeaders] = requestDataToFetchBody(requestOptions.data);\n opts.body = body;\n headers = mergeHeaders(headers, newHeaders);\n }\n if (requestOptions.signal) {\n opts.signal = requestOptions.signal;\n }\n if (requestOptions.withCredentials) {\n opts.credentials = \"include\";\n }\n // Check for node-specific options\n if (!isWeb()) {\n if (requestOptions.httpAgent || requestOptions.httpsAgent) {\n opts.agent = (parsedURL) => {\n if (parsedURL.protocol === \"http:\") {\n return requestOptions.httpAgent || new HTTPAgent();\n }\n return requestOptions.httpsAgent || new HTTPSAgent();\n };\n }\n }\n // Attach headers\n opts.headers = headers;\n return opts;\n}\nexport function prepareRequestOptions(requestOptions, context, userOptions) {\n const finalOptions = cloneShallow(requestOptions);\n finalOptions.headers = mergeHeaders(context.headers, finalOptions.headers || {}, userOptions.headers || {});\n if (typeof userOptions.data !== \"undefined\") {\n finalOptions.data = userOptions.data;\n }\n if (userOptions.signal) {\n finalOptions.signal = userOptions.signal;\n }\n if (context.httpAgent) {\n finalOptions.httpAgent = context.httpAgent;\n }\n if (context.httpsAgent) {\n finalOptions.httpsAgent = context.httpsAgent;\n }\n if (context.digest) {\n finalOptions._digest = context.digest;\n }\n if (typeof context.withCredentials === \"boolean\") {\n finalOptions.withCredentials = context.withCredentials;\n }\n return finalOptions;\n}\nexport async function request(requestOptions) {\n // Client not configured for digest authentication\n if (!requestOptions._digest) {\n return _request(requestOptions);\n }\n // Remove client's digest authentication object from request options\n const _digest = requestOptions._digest;\n delete requestOptions._digest;\n // If client is already using digest authentication, include the digest authorization header\n if (_digest.hasDigestAuth) {\n requestOptions = merge(requestOptions, {\n headers: {\n Authorization: generateDigestAuthHeader(requestOptions, _digest)\n }\n });\n }\n // Perform digest request + check\n const response = await _request(requestOptions);\n if (response.status == 401) {\n _digest.hasDigestAuth = parseDigestAuth(response, _digest);\n if (_digest.hasDigestAuth) {\n requestOptions = merge(requestOptions, {\n headers: {\n Authorization: generateDigestAuthHeader(requestOptions, _digest)\n }\n });\n const response2 = await _request(requestOptions);\n if (response2.status == 401) {\n _digest.hasDigestAuth = false;\n }\n else {\n _digest.nc++;\n }\n return response2;\n }\n }\n else {\n _digest.nc++;\n }\n return response;\n}\n","import Stream from \"stream\";\nimport { isArrayBuffer } from \"../compat/arrayBuffer.js\";\nimport { isBuffer } from \"../compat/buffer.js\";\nimport { isWeb } from \"../compat/env.js\";\nexport function requestDataToFetchBody(data) {\n if (!isWeb() && data instanceof Stream.Readable) {\n // @ts-ignore\n return [data, {}];\n }\n if (typeof data === \"string\") {\n return [data, {}];\n }\n else if (isBuffer(data)) {\n return [data, {}];\n }\n else if (isArrayBuffer(data)) {\n return [data, {}];\n }\n else if (data && typeof data === \"object\") {\n return [\n JSON.stringify(data),\n {\n \"content-type\": \"application/json\"\n }\n ];\n }\n throw new Error(`Unable to convert request body: Unexpected body type: ${typeof data}`);\n}\n","export function isBuffer(value) {\n return (value != null &&\n value.constructor != null &&\n typeof value.constructor.isBuffer === \"function\" &&\n value.constructor.isBuffer(value));\n}\n","import { createClient, getPatcher } from 'webdav';\nimport { generateRemoteUrl } from '@nextcloud/router';\nimport { getCurrentUser, getRequestToken } from '@nextcloud/auth';\nimport { request } from 'webdav/dist/node/request.js';\nexport const rootPath = `/files/${getCurrentUser()?.uid}`;\nexport const defaultRootUrl = generateRemoteUrl('dav' + rootPath);\nexport const getClient = (rootUrl = defaultRootUrl) => {\n const client = createClient(rootUrl, {\n headers: {\n requesttoken: getRequestToken() || '',\n },\n });\n /**\n * Allow to override the METHOD to support dav REPORT\n *\n * @see https://github.com/perry-mitchell/webdav-client/blob/8d9694613c978ce7404e26a401c39a41f125f87f/source/request.ts\n */\n const patcher = getPatcher();\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n // https://github.com/perry-mitchell/hot-patcher/issues/6\n patcher.patch('request', (options) => {\n if (options.headers?.method) {\n options.method = options.headers.method;\n delete options.headers.method;\n }\n return request(options);\n });\n return client;\n};\n","/**\n * @copyright Copyright (c) 2023 John Molakvoæ \n *\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 */\nexport const hashCode = function (str) {\n return str.split('').reduce(function (a, b) {\n a = ((a << 5) - a) + b.charCodeAt(0);\n return a & a;\n }, 0);\n};\n","import { CancelablePromise } from 'cancelable-promise';\nimport { File, Folder, davParsePermissions, davGetDefaultPropfind } from '@nextcloud/files';\nimport { generateRemoteUrl } from '@nextcloud/router';\nimport { getCurrentUser } from '@nextcloud/auth';\nimport { getClient, rootPath } from './WebdavClient';\nimport { hashCode } from '../utils/hashUtils';\nimport logger from '../logger';\nconst client = getClient();\nexport const resultToNode = function (node) {\n const props = node.props;\n const permissions = davParsePermissions(props?.permissions);\n const owner = getCurrentUser()?.uid;\n const source = generateRemoteUrl('dav' + rootPath + node.filename);\n const id = props?.fileid < 0\n ? hashCode(source)\n : props?.fileid || 0;\n const nodeData = {\n id,\n source,\n mtime: new Date(node.lastmod),\n mime: node.mime,\n size: props?.size || 0,\n permissions,\n owner,\n root: rootPath,\n attributes: {\n ...node,\n ...props,\n hasPreview: props?.['has-preview'],\n failed: props?.fileid < 0,\n },\n };\n delete nodeData.attributes.props;\n return node.type === 'file'\n ? new File(nodeData)\n : new Folder(nodeData);\n};\nexport const getContents = (path = '/') => {\n const controller = new AbortController();\n const propfindPayload = davGetDefaultPropfind();\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) {\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 { Folder, getDavNameSpaces, getDavProperties, davGetDefaultPropfind } from '@nextcloud/files';\nimport { getClient } from './WebdavClient';\nimport { resultToNode } from './Files';\nconst client = getClient();\nconst reportPayload = `\n\n\t\n\t\t${getDavProperties()}\n\t\n\t\n\t\t1\n\t\n`;\nexport const getContents = async (path = '/') => {\n const propfindPayload = davGetDefaultPropfind();\n // Get root folder\n let rootResponse;\n if (path === '/') {\n rootResponse = await client.stat(path, {\n details: true,\n data: propfindPayload,\n });\n }\n const contentsResponse = await client.getDirectoryContents(path, {\n details: true,\n // Only filter favorites if we're at the root\n data: path === '/' ? reportPayload : propfindPayload,\n headers: {\n // Patched in WebdavClient.ts\n method: path === '/' ? 'REPORT' : 'PROPFIND',\n },\n includeSelf: true,\n });\n const root = rootResponse?.data || contentsResponse.data[0];\n const contents = contentsResponse.data.filter(node => node.filename !== path);\n return {\n folder: resultToNode(root),\n contents: contents.map(resultToNode),\n };\n};\n","/**\n * @copyright Copyright (c) 2023 John Molakvoæ \n *\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 */\nimport { basename } from 'path';\nimport { getLanguage, translate as t } from '@nextcloud/l10n';\nimport { loadState } from '@nextcloud/initial-state';\nimport { Node, FileType, View, getNavigation } from '@nextcloud/files';\nimport { subscribe } from '@nextcloud/event-bus';\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 generateFolderView = function (folder, index = 0) {\n return new View({\n id: generateIdFromPath(folder),\n name: basename(folder),\n icon: FolderSvg,\n order: index,\n params: {\n dir: folder,\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) => generateFolderView(folder, index));\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: 5,\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 addPathToFavorites(node.path);\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.localeCompare(b, getLanguage(), { ignorePunctuation: true }));\n favoriteFolders.forEach((folder, index) => {\n const view = favoriteFoldersViews.find(view => view.id === generateIdFromPath(folder));\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 addPathToFavorites = function (path) {\n const view = generateFolderView(path);\n // Skip if already exists\n if (favoriteFolders.find(folder => folder === path)) {\n return;\n }\n // Update arrays\n favoriteFolders.push(path);\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);\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","import { Folder, Permission, getDavNameSpaces, getDavProperties } from '@nextcloud/files';\nimport { generateRemoteUrl } from '@nextcloud/router';\nimport { getCurrentUser } from '@nextcloud/auth';\nimport { getClient, rootPath } from './WebdavClient';\nimport { resultToNode } from './Files';\nconst client = getClient(generateRemoteUrl('dav'));\nconst lastTwoWeeksTimestamp = Math.round((Date.now() / 1000) - (60 * 60 * 24 * 14));\nconst searchPayload = `\n\n\t\n\t\t\n\t\t\t\n\t\t\t\t${getDavProperties()}\n\t\t\t\n\t\t\n\t\t\n\t\t\t\n\t\t\t\t/files/${getCurrentUser()?.uid}/\n\t\t\t\tinfinity\n\t\t\t\n\t\t\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\thttpd/unix-directory\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t0\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t${lastTwoWeeksTimestamp}\n\t\t\t\t\n\t\t\t\n\t\t\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\n\t\t\n\t\t\t100\n\t\t\t0\n\t\t\n\t\n`;\nexport const getContents = async (path = '/') => {\n const contentsResponse = await client.getDirectoryContents(path, {\n details: true,\n data: searchPayload,\n headers: {\n // Patched in WebdavClient.ts\n method: 'SEARCH',\n // Somehow it's needed to get the correct response\n 'Content-Type': 'application/xml; charset=utf-8',\n },\n deep: true,\n });\n const contents = contentsResponse.data;\n return {\n folder: new Folder({\n id: 0,\n source: generateRemoteUrl('dav' + rootPath),\n root: rootPath,\n owner: getCurrentUser()?.uid || null,\n permissions: Permission.READ,\n }),\n contents: contents.map(resultToNode),\n };\n};\n","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return (_vm.opened)?_c('NcModal',{staticClass:\"templates-picker\",attrs:{\"clear-view-delay\":-1,\"size\":\"large\"},on:{\"close\":_vm.close}},[_c('form',{staticClass:\"templates-picker__form\",style:(_vm.style),on:{\"submit\":function($event){$event.preventDefault();$event.stopPropagation();return _vm.onSubmit.apply(null, arguments)}}},[_c('h2',[_vm._v(_vm._s(_vm.t('files', 'Pick a template for {name}', { name: _vm.nameWithoutExt })))]),_vm._v(\" \"),_c('ul',{staticClass:\"templates-picker__list\"},[_c('TemplatePreview',_vm._b({attrs:{\"checked\":_vm.checked === _vm.emptyTemplate.fileid},on:{\"check\":_vm.onCheck}},'TemplatePreview',_vm.emptyTemplate,false)),_vm._v(\" \"),_vm._l((_vm.provider.templates),function(template){return _c('TemplatePreview',_vm._b({key:template.fileid,attrs:{\"checked\":_vm.checked === template.fileid,\"ratio\":_vm.provider.ratio},on:{\"check\":_vm.onCheck}},'TemplatePreview',template,false))})],2),_vm._v(\" \"),_c('div',{staticClass:\"templates-picker__buttons\"},[_c('input',{staticClass:\"primary\",attrs:{\"type\":\"submit\",\"aria-label\":_vm.t('files', 'Create a new file with the selected template')},domProps:{\"value\":_vm.t('files', 'Create')}})])]),_vm._v(\" \"),(_vm.loading)?_c('NcEmptyContent',{staticClass:\"templates-picker__loading\",attrs:{\"icon\":\"icon-loading\"}},[_vm._v(\"\\n\\t\\t\"+_vm._s(_vm.t('files', 'Creating file'))+\"\\n\\t\")]):_vm._e()],1):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/**\n * @copyright Copyright (c) 2021 John Molakvoæ \n *\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 */\nimport { FileType } from '@nextcloud/files';\nimport { translate as t, translatePlural as n } from '@nextcloud/l10n';\nexport const encodeFilePath = function (path) {\n const pathSections = (path.startsWith('/') ? path : `/${path}`).split('/');\n let relativePath = '';\n pathSections.forEach((section) => {\n if (section !== '') {\n relativePath += '/' + encodeURIComponent(section);\n }\n });\n return relativePath;\n};\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","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TemplatePreview.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!./TemplatePreview.vue?vue&type=script&lang=js\"","\n\n\n\n\n\n\n","/**\n * @copyright Copyright (c) 2019 John Molakvoæ \n *\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 */\n\nimport { generateRemoteUrl } from '@nextcloud/router'\nimport { getCurrentUser } from '@nextcloud/auth'\n\nexport const getRootPath = function() {\n\tif (getCurrentUser()) {\n\t\treturn generateRemoteUrl(`dav/files/${getCurrentUser().uid}`)\n\t} else {\n\t\treturn generateRemoteUrl('webdav').replace('/remote.php', '/public.php')\n\t}\n}\n\nexport const isPublic = function() {\n\treturn !getCurrentUser()\n}\n\nexport const getToken = function() {\n\treturn document.getElementById('sharingToken') && document.getElementById('sharingToken').value\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!./TemplatePreview.vue?vue&type=style&index=0&id=0859a92c&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!./TemplatePreview.vue?vue&type=style&index=0&id=0859a92c&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./TemplatePreview.vue?vue&type=template&id=0859a92c&scoped=true\"\nimport script from \"./TemplatePreview.vue?vue&type=script&lang=js\"\nexport * from \"./TemplatePreview.vue?vue&type=script&lang=js\"\nimport style0 from \"./TemplatePreview.vue?vue&type=style&index=0&id=0859a92c&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 \"0859a92c\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('li',{staticClass:\"template-picker__item\"},[_c('input',{staticClass:\"radio\",attrs:{\"id\":_vm.id,\"type\":\"radio\",\"name\":\"template-picker\"},domProps:{\"checked\":_vm.checked},on:{\"change\":_vm.onCheck}}),_vm._v(\" \"),_c('label',{staticClass:\"template-picker__label\",attrs:{\"for\":_vm.id}},[_c('div',{staticClass:\"template-picker__preview\",class:_vm.failedPreview ? 'template-picker__preview--failed' : ''},[_c('img',{staticClass:\"template-picker__image\",attrs:{\"src\":_vm.realPreviewUrl,\"alt\":\"\",\"draggable\":\"false\"},on:{\"error\":_vm.onFailure}})]),_vm._v(\" \"),_c('span',{staticClass:\"template-picker__title\"},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.nameWithoutExt)+\"\\n\\t\\t\")])])])\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!./TemplatePicker.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!./TemplatePicker.vue?vue&type=script&lang=ts\"","/**\n * @copyright Copyright (c) 2021 John Molakvoæ \n *\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 */\n\nimport { generateOcsUrl } from '@nextcloud/router'\nimport axios from '@nextcloud/axios'\n\nexport const getTemplates = async function() {\n\tconst response = await axios.get(generateOcsUrl('apps/files/api/v1/templates'))\n\treturn response.data.ocs.data\n}\n\n/**\n * Create a new file from a specified template\n *\n * @param {string} filePath The new file destination path\n * @param {string} templatePath The template source path\n * @param {string} templateType The template type e.g 'user'\n */\nexport const createFromTemplate = async function(filePath, templatePath, templateType) {\n\tconst response = await axios.post(generateOcsUrl('apps/files/api/v1/templates/create'), {\n\t\tfilePath,\n\t\ttemplatePath,\n\t\ttemplateType,\n\t})\n\treturn response.data.ocs.data\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!./TemplatePicker.vue?vue&type=style&index=0&id=48121b39&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!./TemplatePicker.vue?vue&type=style&index=0&id=48121b39&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./TemplatePicker.vue?vue&type=template&id=48121b39&scoped=true\"\nimport script from \"./TemplatePicker.vue?vue&type=script&lang=ts\"\nexport * from \"./TemplatePicker.vue?vue&type=script&lang=ts\"\nimport style0 from \"./TemplatePicker.vue?vue&type=style&index=0&id=48121b39&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 \"48121b39\",\n null\n \n)\n\nexport default component.exports","import { Folder, Node, Permission, addNewFileMenuEntry, removeNewFileMenuEntry } from '@nextcloud/files';\nimport { generateOcsUrl } from '@nextcloud/router';\nimport { getLoggerBuilder } from '@nextcloud/logger';\nimport { join } from 'path';\nimport { loadState } from '@nextcloud/initial-state';\nimport { showError } from '@nextcloud/dialogs';\nimport { translate as t, translatePlural as n } from '@nextcloud/l10n';\nimport axios from '@nextcloud/axios';\nimport Vue from 'vue';\nimport PlusSvg from '@mdi/svg/svg/plus.svg?raw';\nimport TemplatePickerView from './views/TemplatePicker.vue';\nimport { getUniqueName } from './newMenu/newFolder';\nimport { getCurrentUser } from '@nextcloud/auth';\n// Set up logger\nconst logger = getLoggerBuilder()\n .setApp('files')\n .detectUser()\n .build();\n// Add translates functions\nVue.mixin({\n methods: {\n t,\n n,\n },\n});\n// Create document root\nconst TemplatePickerRoot = document.createElement('div');\nTemplatePickerRoot.id = 'template-picker';\ndocument.body.appendChild(TemplatePickerRoot);\n// Retrieve and init templates\nlet templates = loadState('files', 'templates', []);\nlet templatesPath = loadState('files', 'templates_path', false);\nlogger.debug('Templates providers', { templates });\nlogger.debug('Templates folder', { templatesPath });\n// Init vue app\nconst View = Vue.extend(TemplatePickerView);\nconst TemplatePicker = new View({\n name: 'TemplatePicker',\n propsData: {\n logger,\n },\n});\nTemplatePicker.$mount('#template-picker');\nif (!templatesPath) {\n logger.debug('Templates folder not initialized');\n addNewFileMenuEntry({\n id: 'template-picker',\n displayName: t('files', 'Create new templates folder'),\n iconSvgInline: PlusSvg,\n order: 10,\n enabled(context) {\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 handler(context, content) {\n // Check for conflicts\n const contentNames = content.map((node) => node.basename);\n const name = getUniqueName(t('files', 'Templates'), contentNames);\n // Create the template folder\n initTemplatesFolder(context, name);\n // Remove the menu entry\n removeNewFileMenuEntry('template-picker');\n },\n });\n}\n// Init template files menu\ntemplates.forEach((provider, index) => {\n addNewFileMenuEntry({\n id: `template-new-${provider.app}-${index}`,\n displayName: provider.label,\n // TODO: migrate to inline svg\n iconClass: provider.iconClass || 'icon-file',\n enabled(context) {\n return (context.permissions & Permission.CREATE) !== 0;\n },\n order: 11,\n handler(context, content) {\n // Check for conflicts\n const contentNames = content.map((node) => node.basename);\n const name = getUniqueName(provider.label + provider.extension, contentNames);\n // Create the file\n TemplatePicker.open(name, provider);\n },\n });\n});\n// Init template folder\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 response = 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 templates = response.data.ocs.data.templates;\n templatesPath = response.data.ocs.data.template_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};\n","/**\n * @copyright Copyright (c) 2023 John Molakvoæ \n *\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 */\nimport MenuIcon from '@mdi/svg/svg/sun-compass.svg?raw';\nimport { FileAction, 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';\nimport registerFavoritesView from './views/favorites';\nimport registerRecentView from './views/recent';\nimport registerFilesView from './views/files';\nimport registerPreviewServiceWorker from './services/ServiceWorker.js';\nimport './init-templates';\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);\n// Register files views\nregisterFavoritesView();\nregisterFilesView();\nregisterRecentView();\n// Register preview service worker\nregisterPreviewServiceWorker();\nregisterDavProperty('nc:hidden', { nc: 'http://nextcloud.org/ns' });\ninitLivePhotos();\n","/**\n * @copyright Copyright (c) 2023 John Molakvoæ \n *\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 */\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 * @copyright Copyright (c) 2023 John Molakvoæ \n *\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 */\nimport { translate as t } from '@nextcloud/l10n';\nimport HistorySvg from '@mdi/svg/svg/history.svg?raw';\nimport { getContents } from '../services/Recent';\nimport { View, getNavigation } from '@nextcloud/files';\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: 2,\n defaultSortKey: 'mtime',\n getContents,\n }));\n};\n","/**\n * @copyright Copyright (c) 2019 Gary Kim \n *\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 */\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 * @copyright Copyright (c) 2023 Louis Chmn \n *\n * @author Louis Chmn \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 */\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","module.exports = {\n \"100\": \"Continue\",\n \"101\": \"Switching Protocols\",\n \"102\": \"Processing\",\n \"200\": \"OK\",\n \"201\": \"Created\",\n \"202\": \"Accepted\",\n \"203\": \"Non-Authoritative Information\",\n \"204\": \"No Content\",\n \"205\": \"Reset Content\",\n \"206\": \"Partial Content\",\n \"207\": \"Multi-Status\",\n \"208\": \"Already Reported\",\n \"226\": \"IM Used\",\n \"300\": \"Multiple Choices\",\n \"301\": \"Moved Permanently\",\n \"302\": \"Found\",\n \"303\": \"See Other\",\n \"304\": \"Not Modified\",\n \"305\": \"Use Proxy\",\n \"307\": \"Temporary Redirect\",\n \"308\": \"Permanent Redirect\",\n \"400\": \"Bad Request\",\n \"401\": \"Unauthorized\",\n \"402\": \"Payment Required\",\n \"403\": \"Forbidden\",\n \"404\": \"Not Found\",\n \"405\": \"Method Not Allowed\",\n \"406\": \"Not Acceptable\",\n \"407\": \"Proxy Authentication Required\",\n \"408\": \"Request Timeout\",\n \"409\": \"Conflict\",\n \"410\": \"Gone\",\n \"411\": \"Length Required\",\n \"412\": \"Precondition Failed\",\n \"413\": \"Payload Too Large\",\n \"414\": \"URI Too Long\",\n \"415\": \"Unsupported Media Type\",\n \"416\": \"Range Not Satisfiable\",\n \"417\": \"Expectation Failed\",\n \"418\": \"I'm a teapot\",\n \"421\": \"Misdirected Request\",\n \"422\": \"Unprocessable Entity\",\n \"423\": \"Locked\",\n \"424\": \"Failed Dependency\",\n \"425\": \"Unordered Collection\",\n \"426\": \"Upgrade Required\",\n \"428\": \"Precondition Required\",\n \"429\": \"Too Many Requests\",\n \"431\": \"Request Header Fields Too Large\",\n \"451\": \"Unavailable For Legal Reasons\",\n \"500\": \"Internal Server Error\",\n \"501\": \"Not Implemented\",\n \"502\": \"Bad Gateway\",\n \"503\": \"Service Unavailable\",\n \"504\": \"Gateway Timeout\",\n \"505\": \"HTTP Version Not Supported\",\n \"506\": \"Variant Also Negotiates\",\n \"507\": \"Insufficient Storage\",\n \"508\": \"Loop Detected\",\n \"509\": \"Bandwidth Limit Exceeded\",\n \"510\": \"Not Extended\",\n \"511\": \"Network Authentication Required\"\n}\n","function _typeof(obj) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }, _typeof(obj); }\n\n(function (global, factory) {\n if (typeof define === \"function\" && define.amd) {\n define([\"exports\"], factory);\n } else if (typeof exports !== \"undefined\") {\n factory(exports);\n } else {\n var mod = {\n exports: {}\n };\n factory(mod.exports);\n global.CancelablePromise = mod.exports;\n }\n})(typeof globalThis !== \"undefined\" ? globalThis : typeof self !== \"undefined\" ? self : this, function (_exports) {\n \"use strict\";\n\n Object.defineProperty(_exports, \"__esModule\", {\n value: true\n });\n _exports.CancelablePromise = void 0;\n _exports.cancelable = cancelable;\n _exports.default = void 0;\n _exports.isCancelablePromise = isCancelablePromise;\n\n function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, \"prototype\", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } else if (call !== void 0) { throw new TypeError(\"Derived constructors may only return object or undefined\"); } return _assertThisInitialized(self); }\n\n function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\n\n function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== \"undefined\" && o[Symbol.iterator] || o[\"@@iterator\"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }\n\n function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\n function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\n function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, \"prototype\", { writable: false }); return Constructor; }\n\n function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n function _classPrivateFieldInitSpec(obj, privateMap, value) { _checkPrivateRedeclaration(obj, privateMap); privateMap.set(obj, value); }\n\n function _checkPrivateRedeclaration(obj, privateCollection) { if (privateCollection.has(obj)) { throw new TypeError(\"Cannot initialize the same private elements twice on an object\"); } }\n\n function _classPrivateFieldGet(receiver, privateMap) { var descriptor = _classExtractFieldDescriptor(receiver, privateMap, \"get\"); return _classApplyDescriptorGet(receiver, descriptor); }\n\n function _classApplyDescriptorGet(receiver, descriptor) { if (descriptor.get) { return descriptor.get.call(receiver); } return descriptor.value; }\n\n function _classPrivateFieldSet(receiver, privateMap, value) { var descriptor = _classExtractFieldDescriptor(receiver, privateMap, \"set\"); _classApplyDescriptorSet(receiver, descriptor, value); return value; }\n\n function _classExtractFieldDescriptor(receiver, privateMap, action) { if (!privateMap.has(receiver)) { throw new TypeError(\"attempted to \" + action + \" private field on non-instance\"); } return privateMap.get(receiver); }\n\n function _classApplyDescriptorSet(receiver, descriptor, value) { if (descriptor.set) { descriptor.set.call(receiver, value); } else { if (!descriptor.writable) { throw new TypeError(\"attempted to set read only private field\"); } descriptor.value = value; } }\n\n var toStringTag = typeof Symbol !== 'undefined' ? Symbol.toStringTag : '@@toStringTag';\n\n var _internals = /*#__PURE__*/new WeakMap();\n\n var _promise = /*#__PURE__*/new WeakMap();\n\n var CancelablePromiseInternal = /*#__PURE__*/function () {\n function CancelablePromiseInternal(_ref) {\n var _ref$executor = _ref.executor,\n executor = _ref$executor === void 0 ? function () {} : _ref$executor,\n _ref$internals = _ref.internals,\n internals = _ref$internals === void 0 ? defaultInternals() : _ref$internals,\n _ref$promise = _ref.promise,\n promise = _ref$promise === void 0 ? new Promise(function (resolve, reject) {\n return executor(resolve, reject, function (onCancel) {\n internals.onCancelList.push(onCancel);\n });\n }) : _ref$promise;\n\n _classCallCheck(this, CancelablePromiseInternal);\n\n _classPrivateFieldInitSpec(this, _internals, {\n writable: true,\n value: void 0\n });\n\n _classPrivateFieldInitSpec(this, _promise, {\n writable: true,\n value: void 0\n });\n\n _defineProperty(this, toStringTag, 'CancelablePromise');\n\n this.cancel = this.cancel.bind(this);\n\n _classPrivateFieldSet(this, _internals, internals);\n\n _classPrivateFieldSet(this, _promise, promise || new Promise(function (resolve, reject) {\n return executor(resolve, reject, function (onCancel) {\n internals.onCancelList.push(onCancel);\n });\n }));\n }\n\n _createClass(CancelablePromiseInternal, [{\n key: \"then\",\n value: function then(onfulfilled, onrejected) {\n return makeCancelable(_classPrivateFieldGet(this, _promise).then(createCallback(onfulfilled, _classPrivateFieldGet(this, _internals)), createCallback(onrejected, _classPrivateFieldGet(this, _internals))), _classPrivateFieldGet(this, _internals));\n }\n }, {\n key: \"catch\",\n value: function _catch(onrejected) {\n return makeCancelable(_classPrivateFieldGet(this, _promise).catch(createCallback(onrejected, _classPrivateFieldGet(this, _internals))), _classPrivateFieldGet(this, _internals));\n }\n }, {\n key: \"finally\",\n value: function _finally(onfinally, runWhenCanceled) {\n var _this = this;\n\n if (runWhenCanceled) {\n _classPrivateFieldGet(this, _internals).onCancelList.push(onfinally);\n }\n\n return makeCancelable(_classPrivateFieldGet(this, _promise).finally(createCallback(function () {\n if (onfinally) {\n if (runWhenCanceled) {\n _classPrivateFieldGet(_this, _internals).onCancelList = _classPrivateFieldGet(_this, _internals).onCancelList.filter(function (callback) {\n return callback !== onfinally;\n });\n }\n\n return onfinally();\n }\n }, _classPrivateFieldGet(this, _internals))), _classPrivateFieldGet(this, _internals));\n }\n }, {\n key: \"cancel\",\n value: function cancel() {\n _classPrivateFieldGet(this, _internals).isCanceled = true;\n\n var callbacks = _classPrivateFieldGet(this, _internals).onCancelList;\n\n _classPrivateFieldGet(this, _internals).onCancelList = [];\n\n var _iterator = _createForOfIteratorHelper(callbacks),\n _step;\n\n try {\n for (_iterator.s(); !(_step = _iterator.n()).done;) {\n var callback = _step.value;\n\n if (typeof callback === 'function') {\n try {\n callback();\n } catch (err) {\n console.error(err);\n }\n }\n }\n } catch (err) {\n _iterator.e(err);\n } finally {\n _iterator.f();\n }\n }\n }, {\n key: \"isCanceled\",\n value: function isCanceled() {\n return _classPrivateFieldGet(this, _internals).isCanceled === true;\n }\n }]);\n\n return CancelablePromiseInternal;\n }();\n\n var CancelablePromise = /*#__PURE__*/function (_CancelablePromiseInt) {\n _inherits(CancelablePromise, _CancelablePromiseInt);\n\n var _super = _createSuper(CancelablePromise);\n\n function CancelablePromise(executor) {\n _classCallCheck(this, CancelablePromise);\n\n return _super.call(this, {\n executor: executor\n });\n }\n\n return _createClass(CancelablePromise);\n }(CancelablePromiseInternal);\n\n _exports.CancelablePromise = CancelablePromise;\n\n _defineProperty(CancelablePromise, \"all\", function all(iterable) {\n return makeAllCancelable(iterable, Promise.all(iterable));\n });\n\n _defineProperty(CancelablePromise, \"allSettled\", function allSettled(iterable) {\n return makeAllCancelable(iterable, Promise.allSettled(iterable));\n });\n\n _defineProperty(CancelablePromise, \"any\", function any(iterable) {\n return makeAllCancelable(iterable, Promise.any(iterable));\n });\n\n _defineProperty(CancelablePromise, \"race\", function race(iterable) {\n return makeAllCancelable(iterable, Promise.race(iterable));\n });\n\n _defineProperty(CancelablePromise, \"resolve\", function resolve(value) {\n return cancelable(Promise.resolve(value));\n });\n\n _defineProperty(CancelablePromise, \"reject\", function reject(reason) {\n return cancelable(Promise.reject(reason));\n });\n\n _defineProperty(CancelablePromise, \"isCancelable\", isCancelablePromise);\n\n var _default = CancelablePromise;\n _exports.default = _default;\n\n function cancelable(promise) {\n return makeCancelable(promise, defaultInternals());\n }\n\n function isCancelablePromise(promise) {\n return promise instanceof CancelablePromise || promise instanceof CancelablePromiseInternal;\n }\n\n function createCallback(onResult, internals) {\n if (onResult) {\n return function (arg) {\n if (!internals.isCanceled) {\n var result = onResult(arg);\n\n if (isCancelablePromise(result)) {\n internals.onCancelList.push(result.cancel);\n }\n\n return result;\n }\n\n return arg;\n };\n }\n }\n\n function makeCancelable(promise, internals) {\n return new CancelablePromiseInternal({\n internals: internals,\n promise: promise\n });\n }\n\n function makeAllCancelable(iterable, promise) {\n var internals = defaultInternals();\n internals.onCancelList.push(function () {\n var _iterator2 = _createForOfIteratorHelper(iterable),\n _step2;\n\n try {\n for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {\n var resolvable = _step2.value;\n\n if (isCancelablePromise(resolvable)) {\n resolvable.cancel();\n }\n }\n } catch (err) {\n _iterator2.e(err);\n } finally {\n _iterator2.f();\n }\n });\n return new CancelablePromiseInternal({\n internals: internals,\n promise: promise\n });\n }\n\n function defaultInternals() {\n return {\n isCanceled: false,\n onCancelList: []\n };\n }\n});\n//# sourceMappingURL=CancelablePromise.js.map","// 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\";\nimport ___CSS_LOADER_GET_URL_IMPORT___ from \"../../../css-loader/dist/runtime/getUrl.js\";\nvar ___CSS_LOADER_URL_IMPORT_0___ = new URL(\"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGhlaWdodD0iMTYiIHdpZHRoPSIxNiI+CiAgPHBhdGggZD0iTTE0IDEyLjNMMTIuMyAxNCA4IDkuNyAzLjcgMTQgMiAxMi4zIDYuMyA4IDIgMy43IDMuNyAyIDggNi4zIDEyLjMgMiAxNCAzLjcgOS43IDh6Ii8+Cjwvc3ZnPgo=\", import.meta.url);\nvar ___CSS_LOADER_URL_IMPORT_1___ = new URL(\"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGhlaWdodD0iMTYiIHdpZHRoPSIxNiI+CiAgPHBhdGggZD0iTTE0IDEyLjNMMTIuMyAxNCA4IDkuNyAzLjcgMTQgMiAxMi4zIDYuMyA4IDIgMy43IDMuNyAyIDggNi4zIDEyLjMgMiAxNCAzLjcgOS43IDh6IiBzdHlsZT0iZmlsbC1vcGFjaXR5OjE7ZmlsbDojZmZmZmZmIi8+Cjwvc3ZnPgo=\", import.meta.url);\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\nvar ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___);\nvar ___CSS_LOADER_URL_REPLACEMENT_1___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_1___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `@charset \"UTF-8\";\n/**\n * @copyright Copyright (c) 2019 Julius Härtl \n *\n * @author Julius Härtl \n * @author John Molakvoæ \n *\n * @license GNU AGPL version 3 or any later version\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.toastify.dialogs {\n min-width: 200px;\n background: none;\n background-color: var(--color-main-background);\n color: var(--color-main-text);\n box-shadow: 0 0 6px 0 var(--color-box-shadow);\n padding: 0 12px;\n margin-top: 45px;\n position: fixed;\n z-index: 10100;\n border-radius: var(--border-radius);\n display: flex;\n align-items: center;\n}\n.toastify.dialogs .toast-undo-container {\n display: flex;\n align-items: center;\n}\n.toastify.dialogs .toast-undo-button,\n.toastify.dialogs .toast-close {\n position: static;\n overflow: hidden;\n box-sizing: border-box;\n min-width: 44px;\n height: 100%;\n padding: 12px;\n white-space: nowrap;\n background-repeat: no-repeat;\n background-position: center;\n background-color: transparent;\n min-height: 0;\n}\n.toastify.dialogs .toast-undo-button.toast-close,\n.toastify.dialogs .toast-close.toast-close {\n text-indent: 0;\n opacity: .4;\n border: none;\n min-height: 44px;\n margin-left: 10px;\n font-size: 0;\n}\n.toastify.dialogs .toast-undo-button.toast-close:before,\n.toastify.dialogs .toast-close.toast-close:before {\n background-image: url(${___CSS_LOADER_URL_REPLACEMENT_0___});\n content: \" \";\n filter: var(--background-invert-if-dark);\n display: inline-block;\n width: 16px;\n height: 16px;\n}\n.toastify.dialogs .toast-undo-button.toast-undo-button,\n.toastify.dialogs .toast-close.toast-undo-button {\n height: calc(100% - 6px);\n margin: 3px 3px 3px 12px;\n}\n.toastify.dialogs .toast-undo-button:hover,\n.toastify.dialogs .toast-undo-button:focus,\n.toastify.dialogs .toast-undo-button:active,\n.toastify.dialogs .toast-close:hover,\n.toastify.dialogs .toast-close:focus,\n.toastify.dialogs .toast-close:active {\n cursor: pointer;\n opacity: 1;\n}\n.toastify.dialogs.toastify-top {\n right: 10px;\n}\n.toastify.dialogs.toast-with-click {\n cursor: pointer;\n}\n.toastify.dialogs.toast-error {\n border-left: 3px solid var(--color-error);\n}\n.toastify.dialogs.toast-info {\n border-left: 3px solid var(--color-primary);\n}\n.toastify.dialogs.toast-warning {\n border-left: 3px solid var(--color-warning);\n}\n.toastify.dialogs.toast-success,\n.toastify.dialogs.toast-undo {\n border-left: 3px solid var(--color-success);\n}\n.theme--dark .toastify.dialogs .toast-close.toast-close:before {\n background-image: url(${___CSS_LOADER_URL_REPLACEMENT_1___});\n}\n._file-picker__file-icon_1vgv4_5 {\n width: 32px;\n height: 32px;\n min-width: 32px;\n min-height: 32px;\n background-repeat: no-repeat;\n background-size: contain;\n display: flex;\n justify-content: center;\n}\ntr.file-picker__row[data-v-6aded0d9] {\n height: var(--row-height, 50px);\n}\ntr.file-picker__row td[data-v-6aded0d9] {\n cursor: pointer;\n overflow: hidden;\n text-overflow: ellipsis;\n border-bottom: none;\n}\ntr.file-picker__row td[data-v-6aded0d9]:not(.row-checkbox) {\n padding-inline: 14px 0;\n}\ntr.file-picker__row td.row-size[data-v-6aded0d9] {\n text-align: end;\n padding-inline: 0 14px;\n}\ntr.file-picker__row td.row-name[data-v-6aded0d9] {\n padding-inline: 2px 0;\n}\n@keyframes gradient-6aded0d9 {\n 0% {\n background-position: 0% 50%;\n }\n 50% {\n background-position: 100% 50%;\n }\n to {\n background-position: 0% 50%;\n }\n}\n.loading-row .row-checkbox[data-v-6aded0d9] {\n text-align: center !important;\n}\n.loading-row span[data-v-6aded0d9] {\n display: inline-block;\n height: 24px;\n background: linear-gradient(to right, var(--color-background-darker), var(--color-text-maxcontrast), var(--color-background-darker));\n background-size: 600px 100%;\n border-radius: var(--border-radius);\n animation: gradient-6aded0d9 12s ease infinite;\n}\n.loading-row .row-wrapper[data-v-6aded0d9] {\n display: inline-flex;\n align-items: center;\n}\n.loading-row .row-checkbox span[data-v-6aded0d9] {\n width: 24px;\n}\n.loading-row .row-name span[data-v-6aded0d9]:last-of-type {\n margin-inline-start: 6px;\n width: 130px;\n}\n.loading-row .row-size span[data-v-6aded0d9] {\n width: 80px;\n}\n.loading-row .row-modified span[data-v-6aded0d9] {\n width: 90px;\n}\ntr.file-picker__row[data-v-ee6f34b5] {\n height: var(--row-height, 50px);\n}\ntr.file-picker__row td[data-v-ee6f34b5] {\n cursor: pointer;\n overflow: hidden;\n text-overflow: ellipsis;\n border-bottom: none;\n}\ntr.file-picker__row td[data-v-ee6f34b5]:not(.row-checkbox) {\n padding-inline: 14px 0;\n}\ntr.file-picker__row td.row-size[data-v-ee6f34b5] {\n text-align: end;\n padding-inline: 0 14px;\n}\ntr.file-picker__row td.row-name[data-v-ee6f34b5] {\n padding-inline: 2px 0;\n}\n.file-picker__row--selected[data-v-ee6f34b5] {\n background-color: var(--color-background-dark);\n}\n.file-picker__row[data-v-ee6f34b5]:hover {\n background-color: var(--color-background-hover);\n}\n.file-picker__name-container[data-v-ee6f34b5] {\n display: flex;\n justify-content: start;\n align-items: center;\n height: 100%;\n}\n.file-picker__file-name[data-v-ee6f34b5] {\n padding-inline-start: 6px;\n min-width: 0;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n.file-picker__file-extension[data-v-ee6f34b5] {\n color: var(--color-text-maxcontrast);\n min-width: fit-content;\n}\n.file-picker__header-preview[data-v-4297db37] {\n width: 22px;\n height: 32px;\n flex: 0 0 auto;\n}\n.file-picker__files[data-v-4297db37] {\n margin: 2px;\n margin-inline-start: 12px;\n overflow: scroll auto;\n}\n.file-picker__files table[data-v-4297db37] {\n width: 100%;\n max-height: 100%;\n table-layout: fixed;\n}\n.file-picker__files th[data-v-4297db37] {\n position: -webkit-sticky;\n position: sticky;\n z-index: 1;\n top: 0;\n background-color: var(--color-main-background);\n padding: 2px;\n}\n.file-picker__files th .header-wrapper[data-v-4297db37] {\n display: flex;\n}\n.file-picker__files th.row-checkbox[data-v-4297db37] {\n width: 44px;\n}\n.file-picker__files th.row-name[data-v-4297db37] {\n width: 230px;\n}\n.file-picker__files th.row-size[data-v-4297db37] {\n width: 100px;\n}\n.file-picker__files th.row-modified[data-v-4297db37] {\n width: 120px;\n}\n.file-picker__files th[data-v-4297db37]:not(.row-size) .button-vue__wrapper {\n justify-content: start;\n flex-direction: row-reverse;\n}\n.file-picker__files th[data-v-4297db37]:not(.row-size) .button-vue {\n padding-inline: 16px 4px;\n}\n.file-picker__files th.row-size[data-v-4297db37] .button-vue__wrapper {\n justify-content: end;\n}\n.file-picker__files th[data-v-4297db37] .button-vue__wrapper {\n color: var(--color-text-maxcontrast);\n}\n.file-picker__files th[data-v-4297db37] .button-vue__wrapper .button-vue__text {\n font-weight: 400;\n}\n.file-picker__breadcrumbs[data-v-3bc9efa5] {\n flex-grow: 0 !important;\n}\n.file-picker__side[data-v-fcfd0f23] {\n display: flex;\n flex-direction: column;\n align-items: start;\n gap: .5rem;\n min-width: 200px;\n padding-block: 2px;\n overflow: auto;\n}\n.file-picker__side[data-v-fcfd0f23] .button-vue__wrapper {\n justify-content: start;\n}\n.file-picker__filter-input[data-v-fcfd0f23] {\n margin-block: 7px;\n max-width: 260px;\n}\n@media (max-width: 736px) {\n .file-picker__side[data-v-fcfd0f23] {\n flex-direction: row;\n min-width: unset;\n }\n}\n@media (max-width: 512px) {\n .file-picker__side[data-v-fcfd0f23] {\n flex-direction: row;\n min-width: unset;\n }\n .file-picker__filter-input[data-v-fcfd0f23] {\n max-width: unset;\n }\n}\n.file-picker__navigation {\n padding-inline: 2px;\n}\n.file-picker__navigation,\n.file-picker__navigation * {\n box-sizing: border-box;\n}\n.file-picker__navigation .v-select.select {\n min-width: 220px;\n}\n@media (min-width: 513px) and (max-width: 736px) {\n .file-picker__navigation {\n gap: 11px;\n }\n}\n@media (max-width: 512px) {\n .file-picker__navigation {\n flex-direction: column-reverse !important;\n }\n}\n.file-picker__view[data-v-86a13079] {\n height: 50px;\n display: flex;\n justify-content: start;\n align-items: center;\n}\n.file-picker__view h3[data-v-86a13079] {\n font-weight: 700;\n height: fit-content;\n margin: 0;\n}\n.file-picker__main[data-v-86a13079] {\n box-sizing: border-box;\n width: 100%;\n display: flex;\n flex-direction: column;\n min-height: 0;\n flex: 1;\n padding-inline: 2px;\n}\n.file-picker__main *[data-v-86a13079] {\n box-sizing: border-box;\n}\n[data-v-86a13079] .file-picker {\n height: min(80vh, 800px);\n}\n@media (max-width: 512px) {\n [data-v-86a13079] .file-picker {\n height: calc(100% - 16px - var(--default-clickable-area));\n }\n}\n[data-v-86a13079] .file-picker__content {\n display: flex;\n flex-direction: column;\n overflow: hidden;\n}\n`, \"\",{\"version\":3,\"sources\":[\"webpack://./node_modules/@nextcloud/dialogs/dist/style.css\"],\"names\":[],\"mappings\":\"AAAA,gBAAgB;AAChB;;;;;;;;;;;;;;;;;;;;EAoBE;AACF;EACE,gBAAgB;EAChB,gBAAgB;EAChB,8CAA8C;EAC9C,6BAA6B;EAC7B,6CAA6C;EAC7C,eAAe;EACf,gBAAgB;EAChB,eAAe;EACf,cAAc;EACd,mCAAmC;EACnC,aAAa;EACb,mBAAmB;AACrB;AACA;EACE,aAAa;EACb,mBAAmB;AACrB;AACA;;EAEE,gBAAgB;EAChB,gBAAgB;EAChB,sBAAsB;EACtB,eAAe;EACf,YAAY;EACZ,aAAa;EACb,mBAAmB;EACnB,4BAA4B;EAC5B,2BAA2B;EAC3B,6BAA6B;EAC7B,aAAa;AACf;AACA;;EAEE,cAAc;EACd,WAAW;EACX,YAAY;EACZ,gBAAgB;EAChB,iBAAiB;EACjB,YAAY;AACd;AACA;;EAEE,yDAAiR;EACjR,YAAY;EACZ,wCAAwC;EACxC,qBAAqB;EACrB,WAAW;EACX,YAAY;AACd;AACA;;EAEE,wBAAwB;EACxB,wBAAwB;AAC1B;AACA;;;;;;EAME,eAAe;EACf,UAAU;AACZ;AACA;EACE,WAAW;AACb;AACA;EACE,eAAe;AACjB;AACA;EACE,yCAAyC;AAC3C;AACA;EACE,2CAA2C;AAC7C;AACA;EACE,2CAA2C;AAC7C;AACA;;EAEE,2CAA2C;AAC7C;AACA;EACE,yDAAiU;AACnU;AACA;EACE,WAAW;EACX,YAAY;EACZ,eAAe;EACf,gBAAgB;EAChB,4BAA4B;EAC5B,wBAAwB;EACxB,aAAa;EACb,uBAAuB;AACzB;AACA;EACE,+BAA+B;AACjC;AACA;EACE,eAAe;EACf,gBAAgB;EAChB,uBAAuB;EACvB,mBAAmB;AACrB;AACA;EACE,sBAAsB;AACxB;AACA;EACE,eAAe;EACf,sBAAsB;AACxB;AACA;EACE,qBAAqB;AACvB;AACA;EACE;IACE,2BAA2B;EAC7B;EACA;IACE,6BAA6B;EAC/B;EACA;IACE,2BAA2B;EAC7B;AACF;AACA;EACE,6BAA6B;AAC/B;AACA;EACE,qBAAqB;EACrB,YAAY;EACZ,oIAAoI;EACpI,2BAA2B;EAC3B,mCAAmC;EACnC,8CAA8C;AAChD;AACA;EACE,oBAAoB;EACpB,mBAAmB;AACrB;AACA;EACE,WAAW;AACb;AACA;EACE,wBAAwB;EACxB,YAAY;AACd;AACA;EACE,WAAW;AACb;AACA;EACE,WAAW;AACb;AACA;EACE,+BAA+B;AACjC;AACA;EACE,eAAe;EACf,gBAAgB;EAChB,uBAAuB;EACvB,mBAAmB;AACrB;AACA;EACE,sBAAsB;AACxB;AACA;EACE,eAAe;EACf,sBAAsB;AACxB;AACA;EACE,qBAAqB;AACvB;AACA;EACE,8CAA8C;AAChD;AACA;EACE,+CAA+C;AACjD;AACA;EACE,aAAa;EACb,sBAAsB;EACtB,mBAAmB;EACnB,YAAY;AACd;AACA;EACE,yBAAyB;EACzB,YAAY;EACZ,gBAAgB;EAChB,uBAAuB;AACzB;AACA;EACE,oCAAoC;EACpC,sBAAsB;AACxB;AACA;EACE,WAAW;EACX,YAAY;EACZ,cAAc;AAChB;AACA;EACE,WAAW;EACX,yBAAyB;EACzB,qBAAqB;AACvB;AACA;EACE,WAAW;EACX,gBAAgB;EAChB,mBAAmB;AACrB;AACA;EACE,wBAAwB;EACxB,gBAAgB;EAChB,UAAU;EACV,MAAM;EACN,8CAA8C;EAC9C,YAAY;AACd;AACA;EACE,aAAa;AACf;AACA;EACE,WAAW;AACb;AACA;EACE,YAAY;AACd;AACA;EACE,YAAY;AACd;AACA;EACE,YAAY;AACd;AACA;EACE,sBAAsB;EACtB,2BAA2B;AAC7B;AACA;EACE,wBAAwB;AAC1B;AACA;EACE,oBAAoB;AACtB;AACA;EACE,oCAAoC;AACtC;AACA;EACE,gBAAgB;AAClB;AACA;EACE,uBAAuB;AACzB;AACA;EACE,aAAa;EACb,sBAAsB;EACtB,kBAAkB;EAClB,UAAU;EACV,gBAAgB;EAChB,kBAAkB;EAClB,cAAc;AAChB;AACA;EACE,sBAAsB;AACxB;AACA;EACE,iBAAiB;EACjB,gBAAgB;AAClB;AACA;EACE;IACE,mBAAmB;IACnB,gBAAgB;EAClB;AACF;AACA;EACE;IACE,mBAAmB;IACnB,gBAAgB;EAClB;EACA;IACE,gBAAgB;EAClB;AACF;AACA;EACE,mBAAmB;AACrB;AACA;;EAEE,sBAAsB;AACxB;AACA;EACE,gBAAgB;AAClB;AACA;EACE;IACE,SAAS;EACX;AACF;AACA;EACE;IACE,yCAAyC;EAC3C;AACF;AACA;EACE,YAAY;EACZ,aAAa;EACb,sBAAsB;EACtB,mBAAmB;AACrB;AACA;EACE,gBAAgB;EAChB,mBAAmB;EACnB,SAAS;AACX;AACA;EACE,sBAAsB;EACtB,WAAW;EACX,aAAa;EACb,sBAAsB;EACtB,aAAa;EACb,OAAO;EACP,mBAAmB;AACrB;AACA;EACE,sBAAsB;AACxB;AACA;EACE,wBAAwB;AAC1B;AACA;EACE;IACE,yDAAyD;EAC3D;AACF;AACA;EACE,aAAa;EACb,sBAAsB;EACtB,gBAAgB;AAClB\",\"sourcesContent\":[\"@charset \\\"UTF-8\\\";\\n/**\\n * @copyright Copyright (c) 2019 Julius Härtl \\n *\\n * @author Julius Härtl \\n * @author John Molakvoæ \\n *\\n * @license GNU AGPL version 3 or any later version\\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.toastify.dialogs {\\n min-width: 200px;\\n background: none;\\n background-color: var(--color-main-background);\\n color: var(--color-main-text);\\n box-shadow: 0 0 6px 0 var(--color-box-shadow);\\n padding: 0 12px;\\n margin-top: 45px;\\n position: fixed;\\n z-index: 10100;\\n border-radius: var(--border-radius);\\n display: flex;\\n align-items: center;\\n}\\n.toastify.dialogs .toast-undo-container {\\n display: flex;\\n align-items: center;\\n}\\n.toastify.dialogs .toast-undo-button,\\n.toastify.dialogs .toast-close {\\n position: static;\\n overflow: hidden;\\n box-sizing: border-box;\\n min-width: 44px;\\n height: 100%;\\n padding: 12px;\\n white-space: nowrap;\\n background-repeat: no-repeat;\\n background-position: center;\\n background-color: transparent;\\n min-height: 0;\\n}\\n.toastify.dialogs .toast-undo-button.toast-close,\\n.toastify.dialogs .toast-close.toast-close {\\n text-indent: 0;\\n opacity: .4;\\n border: none;\\n min-height: 44px;\\n margin-left: 10px;\\n font-size: 0;\\n}\\n.toastify.dialogs .toast-undo-button.toast-close:before,\\n.toastify.dialogs .toast-close.toast-close:before {\\n background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGhlaWdodD0iMTYiIHdpZHRoPSIxNiI+CiAgPHBhdGggZD0iTTE0IDEyLjNMMTIuMyAxNCA4IDkuNyAzLjcgMTQgMiAxMi4zIDYuMyA4IDIgMy43IDMuNyAyIDggNi4zIDEyLjMgMiAxNCAzLjcgOS43IDh6Ii8+Cjwvc3ZnPgo=);\\n content: \\\" \\\";\\n filter: var(--background-invert-if-dark);\\n display: inline-block;\\n width: 16px;\\n height: 16px;\\n}\\n.toastify.dialogs .toast-undo-button.toast-undo-button,\\n.toastify.dialogs .toast-close.toast-undo-button {\\n height: calc(100% - 6px);\\n margin: 3px 3px 3px 12px;\\n}\\n.toastify.dialogs .toast-undo-button:hover,\\n.toastify.dialogs .toast-undo-button:focus,\\n.toastify.dialogs .toast-undo-button:active,\\n.toastify.dialogs .toast-close:hover,\\n.toastify.dialogs .toast-close:focus,\\n.toastify.dialogs .toast-close:active {\\n cursor: pointer;\\n opacity: 1;\\n}\\n.toastify.dialogs.toastify-top {\\n right: 10px;\\n}\\n.toastify.dialogs.toast-with-click {\\n cursor: pointer;\\n}\\n.toastify.dialogs.toast-error {\\n border-left: 3px solid var(--color-error);\\n}\\n.toastify.dialogs.toast-info {\\n border-left: 3px solid var(--color-primary);\\n}\\n.toastify.dialogs.toast-warning {\\n border-left: 3px solid var(--color-warning);\\n}\\n.toastify.dialogs.toast-success,\\n.toastify.dialogs.toast-undo {\\n border-left: 3px solid var(--color-success);\\n}\\n.theme--dark .toastify.dialogs .toast-close.toast-close:before {\\n background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGhlaWdodD0iMTYiIHdpZHRoPSIxNiI+CiAgPHBhdGggZD0iTTE0IDEyLjNMMTIuMyAxNCA4IDkuNyAzLjcgMTQgMiAxMi4zIDYuMyA4IDIgMy43IDMuNyAyIDggNi4zIDEyLjMgMiAxNCAzLjcgOS43IDh6IiBzdHlsZT0iZmlsbC1vcGFjaXR5OjE7ZmlsbDojZmZmZmZmIi8+Cjwvc3ZnPgo=);\\n}\\n._file-picker__file-icon_1vgv4_5 {\\n width: 32px;\\n height: 32px;\\n min-width: 32px;\\n min-height: 32px;\\n background-repeat: no-repeat;\\n background-size: contain;\\n display: flex;\\n justify-content: center;\\n}\\ntr.file-picker__row[data-v-6aded0d9] {\\n height: var(--row-height, 50px);\\n}\\ntr.file-picker__row td[data-v-6aded0d9] {\\n cursor: pointer;\\n overflow: hidden;\\n text-overflow: ellipsis;\\n border-bottom: none;\\n}\\ntr.file-picker__row td[data-v-6aded0d9]:not(.row-checkbox) {\\n padding-inline: 14px 0;\\n}\\ntr.file-picker__row td.row-size[data-v-6aded0d9] {\\n text-align: end;\\n padding-inline: 0 14px;\\n}\\ntr.file-picker__row td.row-name[data-v-6aded0d9] {\\n padding-inline: 2px 0;\\n}\\n@keyframes gradient-6aded0d9 {\\n 0% {\\n background-position: 0% 50%;\\n }\\n 50% {\\n background-position: 100% 50%;\\n }\\n to {\\n background-position: 0% 50%;\\n }\\n}\\n.loading-row .row-checkbox[data-v-6aded0d9] {\\n text-align: center !important;\\n}\\n.loading-row span[data-v-6aded0d9] {\\n display: inline-block;\\n height: 24px;\\n background: linear-gradient(to right, var(--color-background-darker), var(--color-text-maxcontrast), var(--color-background-darker));\\n background-size: 600px 100%;\\n border-radius: var(--border-radius);\\n animation: gradient-6aded0d9 12s ease infinite;\\n}\\n.loading-row .row-wrapper[data-v-6aded0d9] {\\n display: inline-flex;\\n align-items: center;\\n}\\n.loading-row .row-checkbox span[data-v-6aded0d9] {\\n width: 24px;\\n}\\n.loading-row .row-name span[data-v-6aded0d9]:last-of-type {\\n margin-inline-start: 6px;\\n width: 130px;\\n}\\n.loading-row .row-size span[data-v-6aded0d9] {\\n width: 80px;\\n}\\n.loading-row .row-modified span[data-v-6aded0d9] {\\n width: 90px;\\n}\\ntr.file-picker__row[data-v-ee6f34b5] {\\n height: var(--row-height, 50px);\\n}\\ntr.file-picker__row td[data-v-ee6f34b5] {\\n cursor: pointer;\\n overflow: hidden;\\n text-overflow: ellipsis;\\n border-bottom: none;\\n}\\ntr.file-picker__row td[data-v-ee6f34b5]:not(.row-checkbox) {\\n padding-inline: 14px 0;\\n}\\ntr.file-picker__row td.row-size[data-v-ee6f34b5] {\\n text-align: end;\\n padding-inline: 0 14px;\\n}\\ntr.file-picker__row td.row-name[data-v-ee6f34b5] {\\n padding-inline: 2px 0;\\n}\\n.file-picker__row--selected[data-v-ee6f34b5] {\\n background-color: var(--color-background-dark);\\n}\\n.file-picker__row[data-v-ee6f34b5]:hover {\\n background-color: var(--color-background-hover);\\n}\\n.file-picker__name-container[data-v-ee6f34b5] {\\n display: flex;\\n justify-content: start;\\n align-items: center;\\n height: 100%;\\n}\\n.file-picker__file-name[data-v-ee6f34b5] {\\n padding-inline-start: 6px;\\n min-width: 0;\\n overflow: hidden;\\n text-overflow: ellipsis;\\n}\\n.file-picker__file-extension[data-v-ee6f34b5] {\\n color: var(--color-text-maxcontrast);\\n min-width: fit-content;\\n}\\n.file-picker__header-preview[data-v-4297db37] {\\n width: 22px;\\n height: 32px;\\n flex: 0 0 auto;\\n}\\n.file-picker__files[data-v-4297db37] {\\n margin: 2px;\\n margin-inline-start: 12px;\\n overflow: scroll auto;\\n}\\n.file-picker__files table[data-v-4297db37] {\\n width: 100%;\\n max-height: 100%;\\n table-layout: fixed;\\n}\\n.file-picker__files th[data-v-4297db37] {\\n position: -webkit-sticky;\\n position: sticky;\\n z-index: 1;\\n top: 0;\\n background-color: var(--color-main-background);\\n padding: 2px;\\n}\\n.file-picker__files th .header-wrapper[data-v-4297db37] {\\n display: flex;\\n}\\n.file-picker__files th.row-checkbox[data-v-4297db37] {\\n width: 44px;\\n}\\n.file-picker__files th.row-name[data-v-4297db37] {\\n width: 230px;\\n}\\n.file-picker__files th.row-size[data-v-4297db37] {\\n width: 100px;\\n}\\n.file-picker__files th.row-modified[data-v-4297db37] {\\n width: 120px;\\n}\\n.file-picker__files th[data-v-4297db37]:not(.row-size) .button-vue__wrapper {\\n justify-content: start;\\n flex-direction: row-reverse;\\n}\\n.file-picker__files th[data-v-4297db37]:not(.row-size) .button-vue {\\n padding-inline: 16px 4px;\\n}\\n.file-picker__files th.row-size[data-v-4297db37] .button-vue__wrapper {\\n justify-content: end;\\n}\\n.file-picker__files th[data-v-4297db37] .button-vue__wrapper {\\n color: var(--color-text-maxcontrast);\\n}\\n.file-picker__files th[data-v-4297db37] .button-vue__wrapper .button-vue__text {\\n font-weight: 400;\\n}\\n.file-picker__breadcrumbs[data-v-3bc9efa5] {\\n flex-grow: 0 !important;\\n}\\n.file-picker__side[data-v-fcfd0f23] {\\n display: flex;\\n flex-direction: column;\\n align-items: start;\\n gap: .5rem;\\n min-width: 200px;\\n padding-block: 2px;\\n overflow: auto;\\n}\\n.file-picker__side[data-v-fcfd0f23] .button-vue__wrapper {\\n justify-content: start;\\n}\\n.file-picker__filter-input[data-v-fcfd0f23] {\\n margin-block: 7px;\\n max-width: 260px;\\n}\\n@media (max-width: 736px) {\\n .file-picker__side[data-v-fcfd0f23] {\\n flex-direction: row;\\n min-width: unset;\\n }\\n}\\n@media (max-width: 512px) {\\n .file-picker__side[data-v-fcfd0f23] {\\n flex-direction: row;\\n min-width: unset;\\n }\\n .file-picker__filter-input[data-v-fcfd0f23] {\\n max-width: unset;\\n }\\n}\\n.file-picker__navigation {\\n padding-inline: 2px;\\n}\\n.file-picker__navigation,\\n.file-picker__navigation * {\\n box-sizing: border-box;\\n}\\n.file-picker__navigation .v-select.select {\\n min-width: 220px;\\n}\\n@media (min-width: 513px) and (max-width: 736px) {\\n .file-picker__navigation {\\n gap: 11px;\\n }\\n}\\n@media (max-width: 512px) {\\n .file-picker__navigation {\\n flex-direction: column-reverse !important;\\n }\\n}\\n.file-picker__view[data-v-86a13079] {\\n height: 50px;\\n display: flex;\\n justify-content: start;\\n align-items: center;\\n}\\n.file-picker__view h3[data-v-86a13079] {\\n font-weight: 700;\\n height: fit-content;\\n margin: 0;\\n}\\n.file-picker__main[data-v-86a13079] {\\n box-sizing: border-box;\\n width: 100%;\\n display: flex;\\n flex-direction: column;\\n min-height: 0;\\n flex: 1;\\n padding-inline: 2px;\\n}\\n.file-picker__main *[data-v-86a13079] {\\n box-sizing: border-box;\\n}\\n[data-v-86a13079] .file-picker {\\n height: min(80vh, 800px);\\n}\\n@media (max-width: 512px) {\\n [data-v-86a13079] .file-picker {\\n height: calc(100% - 16px - var(--default-clickable-area));\\n }\\n}\\n[data-v-86a13079] .file-picker__content {\\n display: flex;\\n flex-direction: column;\\n overflow: hidden;\\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, `.template-picker__item[data-v-0859a92c]{display:flex}.template-picker__label[data-v-0859a92c]{display:flex;align-items:center;flex:1 1;flex-direction:column}.template-picker__label[data-v-0859a92c],.template-picker__label *[data-v-0859a92c]{cursor:pointer;user-select:none}.template-picker__label[data-v-0859a92c]::before{display:none !important}.template-picker__preview[data-v-0859a92c]{display:block;overflow:hidden;flex:1 1;width:var(--width);min-height:var(--height);max-height:var(--height);padding:0;border:var(--border) solid var(--color-border);border-radius:var(--border-radius-large)}input:checked+label>.template-picker__preview[data-v-0859a92c]{border-color:var(--color-primary-element)}.template-picker__preview--failed[data-v-0859a92c]{display:flex}.template-picker__image[data-v-0859a92c]{max-width:100%;background-color:var(--color-main-background);object-fit:cover}.template-picker__preview--failed .template-picker__image[data-v-0859a92c]{width:calc(var(--margin)*8);margin:auto;background-color:rgba(0,0,0,0) !important;object-fit:initial}.template-picker__title[data-v-0859a92c]{overflow:hidden;max-width:calc(var(--width) + 4px);padding:var(--margin);white-space:nowrap;text-overflow:ellipsis}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/components/TemplatePreview.vue\"],\"names\":[],\"mappings\":\"AAGC,wCACC,YAAA,CAGD,yCACC,YAAA,CAEA,kBAAA,CACA,QAAA,CACA,qBAAA,CAEA,oFACC,cAAA,CACA,gBAAA,CAGD,iDACC,uBAAA,CAIF,2CACC,aAAA,CACA,eAAA,CAEA,QAAA,CACA,kBAAA,CACA,wBAAA,CACA,wBAAA,CACA,SAAA,CACA,8CAAA,CACA,wCAAA,CAEA,+DACC,yCAAA,CAGD,mDAEC,YAAA,CAIF,yCACC,cAAA,CACA,6CAAA,CAEA,gBAAA,CAID,2EACC,2BAAA,CAEA,WAAA,CACA,yCAAA,CAEA,kBAAA,CAGD,yCACC,eAAA,CAEA,kCAAA,CACA,qBAAA,CACA,kBAAA,CACA,sBAAA\",\"sourcesContent\":[\"\\n\\n.template-picker {\\n\\t&__item {\\n\\t\\tdisplay: flex;\\n\\t}\\n\\n\\t&__label {\\n\\t\\tdisplay: flex;\\n\\t\\t// Align in the middle of the grid\\n\\t\\talign-items: center;\\n\\t\\tflex: 1 1;\\n\\t\\tflex-direction: column;\\n\\n\\t\\t&, * {\\n\\t\\t\\tcursor: pointer;\\n\\t\\t\\tuser-select: none;\\n\\t\\t}\\n\\n\\t\\t&::before {\\n\\t\\t\\tdisplay: none !important;\\n\\t\\t}\\n\\t}\\n\\n\\t&__preview {\\n\\t\\tdisplay: block;\\n\\t\\toverflow: hidden;\\n\\t\\t// Stretch so all entries are the same width\\n\\t\\tflex: 1 1;\\n\\t\\twidth: var(--width);\\n\\t\\tmin-height: var(--height);\\n\\t\\tmax-height: var(--height);\\n\\t\\tpadding: 0;\\n\\t\\tborder: var(--border) solid var(--color-border);\\n\\t\\tborder-radius: var(--border-radius-large);\\n\\n\\t\\tinput:checked + label > & {\\n\\t\\t\\tborder-color: var(--color-primary-element);\\n\\t\\t}\\n\\n\\t\\t&--failed {\\n\\t\\t\\t// Make sure to properly center fallback icon\\n\\t\\t\\tdisplay: flex;\\n\\t\\t}\\n\\t}\\n\\n\\t&__image {\\n\\t\\tmax-width: 100%;\\n\\t\\tbackground-color: var(--color-main-background);\\n\\n\\t\\tobject-fit: cover;\\n\\t}\\n\\n\\t// Failed preview, fallback to mime icon\\n\\t&__preview--failed &__image {\\n\\t\\twidth: calc(var(--margin) * 8);\\n\\t\\t// Center mime icon\\n\\t\\tmargin: auto;\\n\\t\\tbackground-color: transparent !important;\\n\\n\\t\\tobject-fit: initial;\\n\\t}\\n\\n\\t&__title {\\n\\t\\toverflow: hidden;\\n\\t\\t// also count preview border\\n\\t\\tmax-width: calc(var(--width) + 2*2px);\\n\\t\\tpadding: var(--margin);\\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, `.templates-picker__form[data-v-48121b39]{padding:calc(var(--margin)*2);padding-bottom:0}.templates-picker__form h2[data-v-48121b39]{text-align:center;font-weight:bold;margin:var(--margin) 0 calc(var(--margin)*2)}.templates-picker__list[data-v-48121b39]{display:grid;grid-gap:calc(var(--margin)*2);grid-auto-columns:1fr;max-width:calc(var(--fullwidth)*6);grid-template-columns:repeat(auto-fit, var(--fullwidth));grid-auto-rows:1fr;justify-content:center}.templates-picker__buttons[data-v-48121b39]{display:flex;justify-content:end;padding:calc(var(--margin)*2) var(--margin);position:sticky;bottom:0;background-image:linear-gradient(0, var(--gradient-main-background))}.templates-picker__buttons button[data-v-48121b39],.templates-picker__buttons input[type=submit][data-v-48121b39]{height:44px}.templates-picker[data-v-48121b39] .modal-container{position:relative}.templates-picker__loading[data-v-48121b39]{position:absolute;top:0;left:0;justify-content:center;width:100%;height:100%;margin:0;background-color:var(--color-main-background-translucent)}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/views/TemplatePicker.vue\"],\"names\":[],\"mappings\":\"AAEC,yCACC,6BAAA,CAEA,gBAAA,CAEA,4CACC,iBAAA,CACA,gBAAA,CACA,4CAAA,CAIF,yCACC,YAAA,CACA,8BAAA,CACA,qBAAA,CAEA,kCAAA,CACA,wDAAA,CAEA,kBAAA,CAEA,sBAAA,CAGD,4CACC,YAAA,CACA,mBAAA,CACA,2CAAA,CACA,eAAA,CACA,QAAA,CACA,oEAAA,CAEA,kHACC,WAAA,CAKF,oDACC,iBAAA,CAGD,4CACC,iBAAA,CACA,KAAA,CACA,MAAA,CACA,sBAAA,CACA,UAAA,CACA,WAAA,CACA,QAAA,CACA,yDAAA\",\"sourcesContent\":[\"\\n.templates-picker {\\n\\t&__form {\\n\\t\\tpadding: calc(var(--margin) * 2);\\n\\t\\t// Will be handled by the buttons\\n\\t\\tpadding-bottom: 0;\\n\\n\\t\\th2 {\\n\\t\\t\\ttext-align: center;\\n\\t\\t\\tfont-weight: bold;\\n\\t\\t\\tmargin: var(--margin) 0 calc(var(--margin) * 2);\\n\\t\\t}\\n\\t}\\n\\n\\t&__list {\\n\\t\\tdisplay: grid;\\n\\t\\tgrid-gap: calc(var(--margin) * 2);\\n\\t\\tgrid-auto-columns: 1fr;\\n\\t\\t// We want maximum 5 columns. Putting 6 as we don't count the grid gap. So it will always be lower than 6\\n\\t\\tmax-width: calc(var(--fullwidth) * 6);\\n\\t\\tgrid-template-columns: repeat(auto-fit, var(--fullwidth));\\n\\t\\t// Make sure all rows are the same height\\n\\t\\tgrid-auto-rows: 1fr;\\n\\t\\t// Center the columns set\\n\\t\\tjustify-content: center;\\n\\t}\\n\\n\\t&__buttons {\\n\\t\\tdisplay: flex;\\n\\t\\tjustify-content: end;\\n\\t\\tpadding: calc(var(--margin) * 2) var(--margin);\\n\\t\\tposition: sticky;\\n\\t\\tbottom: 0;\\n\\t\\tbackground-image: linear-gradient(0, var(--gradient-main-background));\\n\\n\\t\\tbutton, input[type='submit'] {\\n\\t\\t\\theight: 44px;\\n\\t\\t}\\n\\t}\\n\\n\\t// Make sure we're relative for the loading emptycontent on top\\n\\t::v-deep .modal-container {\\n\\t\\tposition: relative;\\n\\t}\\n\\n\\t&__loading {\\n\\t\\tposition: absolute;\\n\\t\\ttop: 0;\\n\\t\\tleft: 0;\\n\\t\\tjustify-content: center;\\n\\t\\twidth: 100%;\\n\\t\\theight: 100%;\\n\\t\\tmargin: 0;\\n\\t\\tbackground-color: var(--color-main-background-translucent);\\n\\t}\\n}\\n\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Copyright Joyent, Inc. and other Node contributors.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a\n// copy of this software and associated documentation files (the\n// \"Software\"), to deal in the Software without restriction, including\n// without limitation the rights to use, copy, modify, merge, publish,\n// distribute, sublicense, and/or sell copies of the Software, and to permit\n// persons to whom the Software is furnished to do so, subject to the\n// following conditions:\n//\n// The above copyright notice and this permission notice shall be included\n// in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS\n// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN\n// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,\n// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR\n// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE\n// USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n'use strict';\n\nvar R = typeof Reflect === 'object' ? Reflect : null\nvar ReflectApply = R && typeof R.apply === 'function'\n ? R.apply\n : function ReflectApply(target, receiver, args) {\n return Function.prototype.apply.call(target, receiver, args);\n }\n\nvar ReflectOwnKeys\nif (R && typeof R.ownKeys === 'function') {\n ReflectOwnKeys = R.ownKeys\n} else if (Object.getOwnPropertySymbols) {\n ReflectOwnKeys = function ReflectOwnKeys(target) {\n return Object.getOwnPropertyNames(target)\n .concat(Object.getOwnPropertySymbols(target));\n };\n} else {\n ReflectOwnKeys = function ReflectOwnKeys(target) {\n return Object.getOwnPropertyNames(target);\n };\n}\n\nfunction ProcessEmitWarning(warning) {\n if (console && console.warn) console.warn(warning);\n}\n\nvar NumberIsNaN = Number.isNaN || function NumberIsNaN(value) {\n return value !== value;\n}\n\nfunction EventEmitter() {\n EventEmitter.init.call(this);\n}\nmodule.exports = EventEmitter;\nmodule.exports.once = once;\n\n// Backwards-compat with node 0.10.x\nEventEmitter.EventEmitter = EventEmitter;\n\nEventEmitter.prototype._events = undefined;\nEventEmitter.prototype._eventsCount = 0;\nEventEmitter.prototype._maxListeners = undefined;\n\n// By default EventEmitters will print a warning if more than 10 listeners are\n// added to it. This is a useful default which helps finding memory leaks.\nvar defaultMaxListeners = 10;\n\nfunction checkListener(listener) {\n if (typeof listener !== 'function') {\n throw new TypeError('The \"listener\" argument must be of type Function. Received type ' + typeof listener);\n }\n}\n\nObject.defineProperty(EventEmitter, 'defaultMaxListeners', {\n enumerable: true,\n get: function() {\n return defaultMaxListeners;\n },\n set: function(arg) {\n if (typeof arg !== 'number' || arg < 0 || NumberIsNaN(arg)) {\n throw new RangeError('The value of \"defaultMaxListeners\" is out of range. It must be a non-negative number. Received ' + arg + '.');\n }\n defaultMaxListeners = arg;\n }\n});\n\nEventEmitter.init = function() {\n\n if (this._events === undefined ||\n this._events === Object.getPrototypeOf(this)._events) {\n this._events = Object.create(null);\n this._eventsCount = 0;\n }\n\n this._maxListeners = this._maxListeners || undefined;\n};\n\n// Obviously not all Emitters should be limited to 10. This function allows\n// that to be increased. Set to zero for unlimited.\nEventEmitter.prototype.setMaxListeners = function setMaxListeners(n) {\n if (typeof n !== 'number' || n < 0 || NumberIsNaN(n)) {\n throw new RangeError('The value of \"n\" is out of range. It must be a non-negative number. Received ' + n + '.');\n }\n this._maxListeners = n;\n return this;\n};\n\nfunction _getMaxListeners(that) {\n if (that._maxListeners === undefined)\n return EventEmitter.defaultMaxListeners;\n return that._maxListeners;\n}\n\nEventEmitter.prototype.getMaxListeners = function getMaxListeners() {\n return _getMaxListeners(this);\n};\n\nEventEmitter.prototype.emit = function emit(type) {\n var args = [];\n for (var i = 1; i < arguments.length; i++) args.push(arguments[i]);\n var doError = (type === 'error');\n\n var events = this._events;\n if (events !== undefined)\n doError = (doError && events.error === undefined);\n else if (!doError)\n return false;\n\n // If there is no 'error' event listener then throw.\n if (doError) {\n var er;\n if (args.length > 0)\n er = args[0];\n if (er instanceof Error) {\n // Note: The comments on the `throw` lines are intentional, they show\n // up in Node's output if this results in an unhandled exception.\n throw er; // Unhandled 'error' event\n }\n // At least give some kind of context to the user\n var err = new Error('Unhandled error.' + (er ? ' (' + er.message + ')' : ''));\n err.context = er;\n throw err; // Unhandled 'error' event\n }\n\n var handler = events[type];\n\n if (handler === undefined)\n return false;\n\n if (typeof handler === 'function') {\n ReflectApply(handler, this, args);\n } else {\n var len = handler.length;\n var listeners = arrayClone(handler, len);\n for (var i = 0; i < len; ++i)\n ReflectApply(listeners[i], this, args);\n }\n\n return true;\n};\n\nfunction _addListener(target, type, listener, prepend) {\n var m;\n var events;\n var existing;\n\n checkListener(listener);\n\n events = target._events;\n if (events === undefined) {\n events = target._events = Object.create(null);\n target._eventsCount = 0;\n } else {\n // To avoid recursion in the case that type === \"newListener\"! Before\n // adding it to the listeners, first emit \"newListener\".\n if (events.newListener !== undefined) {\n target.emit('newListener', type,\n listener.listener ? listener.listener : listener);\n\n // Re-assign `events` because a newListener handler could have caused the\n // this._events to be assigned to a new object\n events = target._events;\n }\n existing = events[type];\n }\n\n if (existing === undefined) {\n // Optimize the case of one listener. Don't need the extra array object.\n existing = events[type] = listener;\n ++target._eventsCount;\n } else {\n if (typeof existing === 'function') {\n // Adding the second element, need to change to array.\n existing = events[type] =\n prepend ? [listener, existing] : [existing, listener];\n // If we've already got an array, just append.\n } else if (prepend) {\n existing.unshift(listener);\n } else {\n existing.push(listener);\n }\n\n // Check for listener leak\n m = _getMaxListeners(target);\n if (m > 0 && existing.length > m && !existing.warned) {\n existing.warned = true;\n // No error code for this since it is a Warning\n // eslint-disable-next-line no-restricted-syntax\n var w = new Error('Possible EventEmitter memory leak detected. ' +\n existing.length + ' ' + String(type) + ' listeners ' +\n 'added. Use emitter.setMaxListeners() to ' +\n 'increase limit');\n w.name = 'MaxListenersExceededWarning';\n w.emitter = target;\n w.type = type;\n w.count = existing.length;\n ProcessEmitWarning(w);\n }\n }\n\n return target;\n}\n\nEventEmitter.prototype.addListener = function addListener(type, listener) {\n return _addListener(this, type, listener, false);\n};\n\nEventEmitter.prototype.on = EventEmitter.prototype.addListener;\n\nEventEmitter.prototype.prependListener =\n function prependListener(type, listener) {\n return _addListener(this, type, listener, true);\n };\n\nfunction onceWrapper() {\n if (!this.fired) {\n this.target.removeListener(this.type, this.wrapFn);\n this.fired = true;\n if (arguments.length === 0)\n return this.listener.call(this.target);\n return this.listener.apply(this.target, arguments);\n }\n}\n\nfunction _onceWrap(target, type, listener) {\n var state = { fired: false, wrapFn: undefined, target: target, type: type, listener: listener };\n var wrapped = onceWrapper.bind(state);\n wrapped.listener = listener;\n state.wrapFn = wrapped;\n return wrapped;\n}\n\nEventEmitter.prototype.once = function once(type, listener) {\n checkListener(listener);\n this.on(type, _onceWrap(this, type, listener));\n return this;\n};\n\nEventEmitter.prototype.prependOnceListener =\n function prependOnceListener(type, listener) {\n checkListener(listener);\n this.prependListener(type, _onceWrap(this, type, listener));\n return this;\n };\n\n// Emits a 'removeListener' event if and only if the listener was removed.\nEventEmitter.prototype.removeListener =\n function removeListener(type, listener) {\n var list, events, position, i, originalListener;\n\n checkListener(listener);\n\n events = this._events;\n if (events === undefined)\n return this;\n\n list = events[type];\n if (list === undefined)\n return this;\n\n if (list === listener || list.listener === listener) {\n if (--this._eventsCount === 0)\n this._events = Object.create(null);\n else {\n delete events[type];\n if (events.removeListener)\n this.emit('removeListener', type, list.listener || listener);\n }\n } else if (typeof list !== 'function') {\n position = -1;\n\n for (i = list.length - 1; i >= 0; i--) {\n if (list[i] === listener || list[i].listener === listener) {\n originalListener = list[i].listener;\n position = i;\n break;\n }\n }\n\n if (position < 0)\n return this;\n\n if (position === 0)\n list.shift();\n else {\n spliceOne(list, position);\n }\n\n if (list.length === 1)\n events[type] = list[0];\n\n if (events.removeListener !== undefined)\n this.emit('removeListener', type, originalListener || listener);\n }\n\n return this;\n };\n\nEventEmitter.prototype.off = EventEmitter.prototype.removeListener;\n\nEventEmitter.prototype.removeAllListeners =\n function removeAllListeners(type) {\n var listeners, events, i;\n\n events = this._events;\n if (events === undefined)\n return this;\n\n // not listening for removeListener, no need to emit\n if (events.removeListener === undefined) {\n if (arguments.length === 0) {\n this._events = Object.create(null);\n this._eventsCount = 0;\n } else if (events[type] !== undefined) {\n if (--this._eventsCount === 0)\n this._events = Object.create(null);\n else\n delete events[type];\n }\n return this;\n }\n\n // emit removeListener for all listeners on all events\n if (arguments.length === 0) {\n var keys = Object.keys(events);\n var key;\n for (i = 0; i < keys.length; ++i) {\n key = keys[i];\n if (key === 'removeListener') continue;\n this.removeAllListeners(key);\n }\n this.removeAllListeners('removeListener');\n this._events = Object.create(null);\n this._eventsCount = 0;\n return this;\n }\n\n listeners = events[type];\n\n if (typeof listeners === 'function') {\n this.removeListener(type, listeners);\n } else if (listeners !== undefined) {\n // LIFO order\n for (i = listeners.length - 1; i >= 0; i--) {\n this.removeListener(type, listeners[i]);\n }\n }\n\n return this;\n };\n\nfunction _listeners(target, type, unwrap) {\n var events = target._events;\n\n if (events === undefined)\n return [];\n\n var evlistener = events[type];\n if (evlistener === undefined)\n return [];\n\n if (typeof evlistener === 'function')\n return unwrap ? [evlistener.listener || evlistener] : [evlistener];\n\n return unwrap ?\n unwrapListeners(evlistener) : arrayClone(evlistener, evlistener.length);\n}\n\nEventEmitter.prototype.listeners = function listeners(type) {\n return _listeners(this, type, true);\n};\n\nEventEmitter.prototype.rawListeners = function rawListeners(type) {\n return _listeners(this, type, false);\n};\n\nEventEmitter.listenerCount = function(emitter, type) {\n if (typeof emitter.listenerCount === 'function') {\n return emitter.listenerCount(type);\n } else {\n return listenerCount.call(emitter, type);\n }\n};\n\nEventEmitter.prototype.listenerCount = listenerCount;\nfunction listenerCount(type) {\n var events = this._events;\n\n if (events !== undefined) {\n var evlistener = events[type];\n\n if (typeof evlistener === 'function') {\n return 1;\n } else if (evlistener !== undefined) {\n return evlistener.length;\n }\n }\n\n return 0;\n}\n\nEventEmitter.prototype.eventNames = function eventNames() {\n return this._eventsCount > 0 ? ReflectOwnKeys(this._events) : [];\n};\n\nfunction arrayClone(arr, n) {\n var copy = new Array(n);\n for (var i = 0; i < n; ++i)\n copy[i] = arr[i];\n return copy;\n}\n\nfunction spliceOne(list, index) {\n for (; index + 1 < list.length; index++)\n list[index] = list[index + 1];\n list.pop();\n}\n\nfunction unwrapListeners(arr) {\n var ret = new Array(arr.length);\n for (var i = 0; i < ret.length; ++i) {\n ret[i] = arr[i].listener || arr[i];\n }\n return ret;\n}\n\nfunction once(emitter, name) {\n return new Promise(function (resolve, reject) {\n function errorListener(err) {\n emitter.removeListener(name, resolver);\n reject(err);\n }\n\n function resolver() {\n if (typeof emitter.removeListener === 'function') {\n emitter.removeListener('error', errorListener);\n }\n resolve([].slice.call(arguments));\n };\n\n eventTargetAgnosticAddListener(emitter, name, resolver, { once: true });\n if (name !== 'error') {\n addErrorHandlerIfEventEmitter(emitter, errorListener, { once: true });\n }\n });\n}\n\nfunction addErrorHandlerIfEventEmitter(emitter, handler, flags) {\n if (typeof emitter.on === 'function') {\n eventTargetAgnosticAddListener(emitter, 'error', handler, flags);\n }\n}\n\nfunction eventTargetAgnosticAddListener(emitter, name, listener, flags) {\n if (typeof emitter.on === 'function') {\n if (flags.once) {\n emitter.once(name, listener);\n } else {\n emitter.on(name, listener);\n }\n } else if (typeof emitter.addEventListener === 'function') {\n // EventTarget does not have `error` event semantics like Node\n // EventEmitters, we do not listen for `error` events here.\n emitter.addEventListener(name, function wrapListener(arg) {\n // IE does not have builtin `{ once: true }` support so we\n // have to do it manually.\n if (flags.once) {\n emitter.removeEventListener(name, wrapListener);\n }\n listener(arg);\n });\n } else {\n throw new TypeError('The \"emitter\" argument must be of type EventEmitter. Received type ' + typeof emitter);\n }\n}\n","var http = require('http')\nvar url = require('url')\n\nvar https = module.exports\n\nfor (var key in http) {\n if (http.hasOwnProperty(key)) https[key] = http[key]\n}\n\nhttps.request = function (params, cb) {\n params = validateParams(params)\n return http.request.call(this, params, cb)\n}\n\nhttps.get = function (params, cb) {\n params = validateParams(params)\n return http.get.call(this, params, cb)\n}\n\nfunction validateParams (params) {\n if (typeof params === 'string') {\n params = url.parse(params)\n }\n if (!params.protocol) {\n params.protocol = 'https:'\n }\n if (params.protocol !== 'https:') {\n throw new Error('Protocol \"' + params.protocol + '\" not supported. Expected \"https:\"')\n }\n return params\n}\n","'use strict';\n\nfunction _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; subClass.__proto__ = superClass; }\n\nvar codes = {};\n\nfunction createErrorType(code, message, Base) {\n if (!Base) {\n Base = Error;\n }\n\n function getMessage(arg1, arg2, arg3) {\n if (typeof message === 'string') {\n return message;\n } else {\n return message(arg1, arg2, arg3);\n }\n }\n\n var NodeError =\n /*#__PURE__*/\n function (_Base) {\n _inheritsLoose(NodeError, _Base);\n\n function NodeError(arg1, arg2, arg3) {\n return _Base.call(this, getMessage(arg1, arg2, arg3)) || this;\n }\n\n return NodeError;\n }(Base);\n\n NodeError.prototype.name = Base.name;\n NodeError.prototype.code = code;\n codes[code] = NodeError;\n} // https://github.com/nodejs/node/blob/v10.8.0/lib/internal/errors.js\n\n\nfunction oneOf(expected, thing) {\n if (Array.isArray(expected)) {\n var len = expected.length;\n expected = expected.map(function (i) {\n return String(i);\n });\n\n if (len > 2) {\n return \"one of \".concat(thing, \" \").concat(expected.slice(0, len - 1).join(', '), \", or \") + expected[len - 1];\n } else if (len === 2) {\n return \"one of \".concat(thing, \" \").concat(expected[0], \" or \").concat(expected[1]);\n } else {\n return \"of \".concat(thing, \" \").concat(expected[0]);\n }\n } else {\n return \"of \".concat(thing, \" \").concat(String(expected));\n }\n} // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/startsWith\n\n\nfunction startsWith(str, search, pos) {\n return str.substr(!pos || pos < 0 ? 0 : +pos, search.length) === search;\n} // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/endsWith\n\n\nfunction endsWith(str, search, this_len) {\n if (this_len === undefined || this_len > str.length) {\n this_len = str.length;\n }\n\n return str.substring(this_len - search.length, this_len) === search;\n} // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/includes\n\n\nfunction includes(str, search, start) {\n if (typeof start !== 'number') {\n start = 0;\n }\n\n if (start + search.length > str.length) {\n return false;\n } else {\n return str.indexOf(search, start) !== -1;\n }\n}\n\ncreateErrorType('ERR_INVALID_OPT_VALUE', function (name, value) {\n return 'The value \"' + value + '\" is invalid for option \"' + name + '\"';\n}, TypeError);\ncreateErrorType('ERR_INVALID_ARG_TYPE', function (name, expected, actual) {\n // determiner: 'must be' or 'must not be'\n var determiner;\n\n if (typeof expected === 'string' && startsWith(expected, 'not ')) {\n determiner = 'must not be';\n expected = expected.replace(/^not /, '');\n } else {\n determiner = 'must be';\n }\n\n var msg;\n\n if (endsWith(name, ' argument')) {\n // For cases like 'first argument'\n msg = \"The \".concat(name, \" \").concat(determiner, \" \").concat(oneOf(expected, 'type'));\n } else {\n var type = includes(name, '.') ? 'property' : 'argument';\n msg = \"The \\\"\".concat(name, \"\\\" \").concat(type, \" \").concat(determiner, \" \").concat(oneOf(expected, 'type'));\n }\n\n msg += \". Received type \".concat(typeof actual);\n return msg;\n}, TypeError);\ncreateErrorType('ERR_STREAM_PUSH_AFTER_EOF', 'stream.push() after EOF');\ncreateErrorType('ERR_METHOD_NOT_IMPLEMENTED', function (name) {\n return 'The ' + name + ' method is not implemented';\n});\ncreateErrorType('ERR_STREAM_PREMATURE_CLOSE', 'Premature close');\ncreateErrorType('ERR_STREAM_DESTROYED', function (name) {\n return 'Cannot call ' + name + ' after a stream was destroyed';\n});\ncreateErrorType('ERR_MULTIPLE_CALLBACK', 'Callback called multiple times');\ncreateErrorType('ERR_STREAM_CANNOT_PIPE', 'Cannot pipe, not readable');\ncreateErrorType('ERR_STREAM_WRITE_AFTER_END', 'write after end');\ncreateErrorType('ERR_STREAM_NULL_VALUES', 'May not write null values to stream', TypeError);\ncreateErrorType('ERR_UNKNOWN_ENCODING', function (arg) {\n return 'Unknown encoding: ' + arg;\n}, TypeError);\ncreateErrorType('ERR_STREAM_UNSHIFT_AFTER_END_EVENT', 'stream.unshift() after end event');\nmodule.exports.codes = codes;\n","// Copyright Joyent, Inc. and other Node contributors.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a\n// copy of this software and associated documentation files (the\n// \"Software\"), to deal in the Software without restriction, including\n// without limitation the rights to use, copy, modify, merge, publish,\n// distribute, sublicense, and/or sell copies of the Software, and to permit\n// persons to whom the Software is furnished to do so, subject to the\n// following conditions:\n//\n// The above copyright notice and this permission notice shall be included\n// in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS\n// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN\n// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,\n// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR\n// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE\n// USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n// a duplex stream is just a stream that is both readable and writable.\n// Since JS doesn't have multiple prototypal inheritance, this class\n// prototypally inherits from Readable, and then parasitically from\n// Writable.\n\n'use strict';\n\n/**/\nvar objectKeys = Object.keys || function (obj) {\n var keys = [];\n for (var key in obj) keys.push(key);\n return keys;\n};\n/**/\n\nmodule.exports = Duplex;\nvar Readable = require('./_stream_readable');\nvar Writable = require('./_stream_writable');\nrequire('inherits')(Duplex, Readable);\n{\n // Allow the keys array to be GC'ed.\n var keys = objectKeys(Writable.prototype);\n for (var v = 0; v < keys.length; v++) {\n var method = keys[v];\n if (!Duplex.prototype[method]) Duplex.prototype[method] = Writable.prototype[method];\n }\n}\nfunction Duplex(options) {\n if (!(this instanceof Duplex)) return new Duplex(options);\n Readable.call(this, options);\n Writable.call(this, options);\n this.allowHalfOpen = true;\n if (options) {\n if (options.readable === false) this.readable = false;\n if (options.writable === false) this.writable = false;\n if (options.allowHalfOpen === false) {\n this.allowHalfOpen = false;\n this.once('end', onend);\n }\n }\n}\nObject.defineProperty(Duplex.prototype, 'writableHighWaterMark', {\n // making it explicit this property is not enumerable\n // because otherwise some prototype manipulation in\n // userland will fail\n enumerable: false,\n get: function get() {\n return this._writableState.highWaterMark;\n }\n});\nObject.defineProperty(Duplex.prototype, 'writableBuffer', {\n // making it explicit this property is not enumerable\n // because otherwise some prototype manipulation in\n // userland will fail\n enumerable: false,\n get: function get() {\n return this._writableState && this._writableState.getBuffer();\n }\n});\nObject.defineProperty(Duplex.prototype, 'writableLength', {\n // making it explicit this property is not enumerable\n // because otherwise some prototype manipulation in\n // userland will fail\n enumerable: false,\n get: function get() {\n return this._writableState.length;\n }\n});\n\n// the no-half-open enforcer\nfunction onend() {\n // If the writable side ended, then we're ok.\n if (this._writableState.ended) return;\n\n // no more data can be written.\n // But allow more writes to happen in this tick.\n process.nextTick(onEndNT, this);\n}\nfunction onEndNT(self) {\n self.end();\n}\nObject.defineProperty(Duplex.prototype, 'destroyed', {\n // making it explicit this property is not enumerable\n // because otherwise some prototype manipulation in\n // userland will fail\n enumerable: false,\n get: function get() {\n if (this._readableState === undefined || this._writableState === undefined) {\n return false;\n }\n return this._readableState.destroyed && this._writableState.destroyed;\n },\n set: function set(value) {\n // we ignore the value if the stream\n // has not been initialized yet\n if (this._readableState === undefined || this._writableState === undefined) {\n return;\n }\n\n // backward compatibility, the user is explicitly\n // managing destroyed\n this._readableState.destroyed = value;\n this._writableState.destroyed = value;\n }\n});","// Copyright Joyent, Inc. and other Node contributors.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a\n// copy of this software and associated documentation files (the\n// \"Software\"), to deal in the Software without restriction, including\n// without limitation the rights to use, copy, modify, merge, publish,\n// distribute, sublicense, and/or sell copies of the Software, and to permit\n// persons to whom the Software is furnished to do so, subject to the\n// following conditions:\n//\n// The above copyright notice and this permission notice shall be included\n// in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS\n// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN\n// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,\n// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR\n// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE\n// USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n// a passthrough stream.\n// basically just the most minimal sort of Transform stream.\n// Every written chunk gets output as-is.\n\n'use strict';\n\nmodule.exports = PassThrough;\nvar Transform = require('./_stream_transform');\nrequire('inherits')(PassThrough, Transform);\nfunction PassThrough(options) {\n if (!(this instanceof PassThrough)) return new PassThrough(options);\n Transform.call(this, options);\n}\nPassThrough.prototype._transform = function (chunk, encoding, cb) {\n cb(null, chunk);\n};","// Copyright Joyent, Inc. and other Node contributors.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a\n// copy of this software and associated documentation files (the\n// \"Software\"), to deal in the Software without restriction, including\n// without limitation the rights to use, copy, modify, merge, publish,\n// distribute, sublicense, and/or sell copies of the Software, and to permit\n// persons to whom the Software is furnished to do so, subject to the\n// following conditions:\n//\n// The above copyright notice and this permission notice shall be included\n// in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS\n// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN\n// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,\n// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR\n// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE\n// USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n'use strict';\n\nmodule.exports = Readable;\n\n/**/\nvar Duplex;\n/**/\n\nReadable.ReadableState = ReadableState;\n\n/**/\nvar EE = require('events').EventEmitter;\nvar EElistenerCount = function EElistenerCount(emitter, type) {\n return emitter.listeners(type).length;\n};\n/**/\n\n/**/\nvar Stream = require('./internal/streams/stream');\n/**/\n\nvar Buffer = require('buffer').Buffer;\nvar OurUint8Array = (typeof global !== 'undefined' ? global : typeof window !== 'undefined' ? window : typeof self !== 'undefined' ? self : {}).Uint8Array || function () {};\nfunction _uint8ArrayToBuffer(chunk) {\n return Buffer.from(chunk);\n}\nfunction _isUint8Array(obj) {\n return Buffer.isBuffer(obj) || obj instanceof OurUint8Array;\n}\n\n/**/\nvar debugUtil = require('util');\nvar debug;\nif (debugUtil && debugUtil.debuglog) {\n debug = debugUtil.debuglog('stream');\n} else {\n debug = function debug() {};\n}\n/**/\n\nvar BufferList = require('./internal/streams/buffer_list');\nvar destroyImpl = require('./internal/streams/destroy');\nvar _require = require('./internal/streams/state'),\n getHighWaterMark = _require.getHighWaterMark;\nvar _require$codes = require('../errors').codes,\n ERR_INVALID_ARG_TYPE = _require$codes.ERR_INVALID_ARG_TYPE,\n ERR_STREAM_PUSH_AFTER_EOF = _require$codes.ERR_STREAM_PUSH_AFTER_EOF,\n ERR_METHOD_NOT_IMPLEMENTED = _require$codes.ERR_METHOD_NOT_IMPLEMENTED,\n ERR_STREAM_UNSHIFT_AFTER_END_EVENT = _require$codes.ERR_STREAM_UNSHIFT_AFTER_END_EVENT;\n\n// Lazy loaded to improve the startup performance.\nvar StringDecoder;\nvar createReadableStreamAsyncIterator;\nvar from;\nrequire('inherits')(Readable, Stream);\nvar errorOrDestroy = destroyImpl.errorOrDestroy;\nvar kProxyEvents = ['error', 'close', 'destroy', 'pause', 'resume'];\nfunction prependListener(emitter, event, fn) {\n // Sadly this is not cacheable as some libraries bundle their own\n // event emitter implementation with them.\n if (typeof emitter.prependListener === 'function') return emitter.prependListener(event, fn);\n\n // This is a hack to make sure that our error handler is attached before any\n // userland ones. NEVER DO THIS. This is here only because this code needs\n // to continue to work with older versions of Node.js that do not include\n // the prependListener() method. The goal is to eventually remove this hack.\n if (!emitter._events || !emitter._events[event]) emitter.on(event, fn);else if (Array.isArray(emitter._events[event])) emitter._events[event].unshift(fn);else emitter._events[event] = [fn, emitter._events[event]];\n}\nfunction ReadableState(options, stream, isDuplex) {\n Duplex = Duplex || require('./_stream_duplex');\n options = options || {};\n\n // Duplex streams are both readable and writable, but share\n // the same options object.\n // However, some cases require setting options to different\n // values for the readable and the writable sides of the duplex stream.\n // These options can be provided separately as readableXXX and writableXXX.\n if (typeof isDuplex !== 'boolean') isDuplex = stream instanceof Duplex;\n\n // object stream flag. Used to make read(n) ignore n and to\n // make all the buffer merging and length checks go away\n this.objectMode = !!options.objectMode;\n if (isDuplex) this.objectMode = this.objectMode || !!options.readableObjectMode;\n\n // the point at which it stops calling _read() to fill the buffer\n // Note: 0 is a valid value, means \"don't call _read preemptively ever\"\n this.highWaterMark = getHighWaterMark(this, options, 'readableHighWaterMark', isDuplex);\n\n // A linked list is used to store data chunks instead of an array because the\n // linked list can remove elements from the beginning faster than\n // array.shift()\n this.buffer = new BufferList();\n this.length = 0;\n this.pipes = null;\n this.pipesCount = 0;\n this.flowing = null;\n this.ended = false;\n this.endEmitted = false;\n this.reading = false;\n\n // a flag to be able to tell if the event 'readable'/'data' is emitted\n // immediately, or on a later tick. We set this to true at first, because\n // any actions that shouldn't happen until \"later\" should generally also\n // not happen before the first read call.\n this.sync = true;\n\n // whenever we return null, then we set a flag to say\n // that we're awaiting a 'readable' event emission.\n this.needReadable = false;\n this.emittedReadable = false;\n this.readableListening = false;\n this.resumeScheduled = false;\n this.paused = true;\n\n // Should close be emitted on destroy. Defaults to true.\n this.emitClose = options.emitClose !== false;\n\n // Should .destroy() be called after 'end' (and potentially 'finish')\n this.autoDestroy = !!options.autoDestroy;\n\n // has it been destroyed\n this.destroyed = false;\n\n // Crypto is kind of old and crusty. Historically, its default string\n // encoding is 'binary' so we have to make this configurable.\n // Everything else in the universe uses 'utf8', though.\n this.defaultEncoding = options.defaultEncoding || 'utf8';\n\n // the number of writers that are awaiting a drain event in .pipe()s\n this.awaitDrain = 0;\n\n // if true, a maybeReadMore has been scheduled\n this.readingMore = false;\n this.decoder = null;\n this.encoding = null;\n if (options.encoding) {\n if (!StringDecoder) StringDecoder = require('string_decoder/').StringDecoder;\n this.decoder = new StringDecoder(options.encoding);\n this.encoding = options.encoding;\n }\n}\nfunction Readable(options) {\n Duplex = Duplex || require('./_stream_duplex');\n if (!(this instanceof Readable)) return new Readable(options);\n\n // Checking for a Stream.Duplex instance is faster here instead of inside\n // the ReadableState constructor, at least with V8 6.5\n var isDuplex = this instanceof Duplex;\n this._readableState = new ReadableState(options, this, isDuplex);\n\n // legacy\n this.readable = true;\n if (options) {\n if (typeof options.read === 'function') this._read = options.read;\n if (typeof options.destroy === 'function') this._destroy = options.destroy;\n }\n Stream.call(this);\n}\nObject.defineProperty(Readable.prototype, 'destroyed', {\n // making it explicit this property is not enumerable\n // because otherwise some prototype manipulation in\n // userland will fail\n enumerable: false,\n get: function get() {\n if (this._readableState === undefined) {\n return false;\n }\n return this._readableState.destroyed;\n },\n set: function set(value) {\n // we ignore the value if the stream\n // has not been initialized yet\n if (!this._readableState) {\n return;\n }\n\n // backward compatibility, the user is explicitly\n // managing destroyed\n this._readableState.destroyed = value;\n }\n});\nReadable.prototype.destroy = destroyImpl.destroy;\nReadable.prototype._undestroy = destroyImpl.undestroy;\nReadable.prototype._destroy = function (err, cb) {\n cb(err);\n};\n\n// Manually shove something into the read() buffer.\n// This returns true if the highWaterMark has not been hit yet,\n// similar to how Writable.write() returns true if you should\n// write() some more.\nReadable.prototype.push = function (chunk, encoding) {\n var state = this._readableState;\n var skipChunkCheck;\n if (!state.objectMode) {\n if (typeof chunk === 'string') {\n encoding = encoding || state.defaultEncoding;\n if (encoding !== state.encoding) {\n chunk = Buffer.from(chunk, encoding);\n encoding = '';\n }\n skipChunkCheck = true;\n }\n } else {\n skipChunkCheck = true;\n }\n return readableAddChunk(this, chunk, encoding, false, skipChunkCheck);\n};\n\n// Unshift should *always* be something directly out of read()\nReadable.prototype.unshift = function (chunk) {\n return readableAddChunk(this, chunk, null, true, false);\n};\nfunction readableAddChunk(stream, chunk, encoding, addToFront, skipChunkCheck) {\n debug('readableAddChunk', chunk);\n var state = stream._readableState;\n if (chunk === null) {\n state.reading = false;\n onEofChunk(stream, state);\n } else {\n var er;\n if (!skipChunkCheck) er = chunkInvalid(state, chunk);\n if (er) {\n errorOrDestroy(stream, er);\n } else if (state.objectMode || chunk && chunk.length > 0) {\n if (typeof chunk !== 'string' && !state.objectMode && Object.getPrototypeOf(chunk) !== Buffer.prototype) {\n chunk = _uint8ArrayToBuffer(chunk);\n }\n if (addToFront) {\n if (state.endEmitted) errorOrDestroy(stream, new ERR_STREAM_UNSHIFT_AFTER_END_EVENT());else addChunk(stream, state, chunk, true);\n } else if (state.ended) {\n errorOrDestroy(stream, new ERR_STREAM_PUSH_AFTER_EOF());\n } else if (state.destroyed) {\n return false;\n } else {\n state.reading = false;\n if (state.decoder && !encoding) {\n chunk = state.decoder.write(chunk);\n if (state.objectMode || chunk.length !== 0) addChunk(stream, state, chunk, false);else maybeReadMore(stream, state);\n } else {\n addChunk(stream, state, chunk, false);\n }\n }\n } else if (!addToFront) {\n state.reading = false;\n maybeReadMore(stream, state);\n }\n }\n\n // We can push more data if we are below the highWaterMark.\n // Also, if we have no data yet, we can stand some more bytes.\n // This is to work around cases where hwm=0, such as the repl.\n return !state.ended && (state.length < state.highWaterMark || state.length === 0);\n}\nfunction addChunk(stream, state, chunk, addToFront) {\n if (state.flowing && state.length === 0 && !state.sync) {\n state.awaitDrain = 0;\n stream.emit('data', chunk);\n } else {\n // update the buffer info.\n state.length += state.objectMode ? 1 : chunk.length;\n if (addToFront) state.buffer.unshift(chunk);else state.buffer.push(chunk);\n if (state.needReadable) emitReadable(stream);\n }\n maybeReadMore(stream, state);\n}\nfunction chunkInvalid(state, chunk) {\n var er;\n if (!_isUint8Array(chunk) && typeof chunk !== 'string' && chunk !== undefined && !state.objectMode) {\n er = new ERR_INVALID_ARG_TYPE('chunk', ['string', 'Buffer', 'Uint8Array'], chunk);\n }\n return er;\n}\nReadable.prototype.isPaused = function () {\n return this._readableState.flowing === false;\n};\n\n// backwards compatibility.\nReadable.prototype.setEncoding = function (enc) {\n if (!StringDecoder) StringDecoder = require('string_decoder/').StringDecoder;\n var decoder = new StringDecoder(enc);\n this._readableState.decoder = decoder;\n // If setEncoding(null), decoder.encoding equals utf8\n this._readableState.encoding = this._readableState.decoder.encoding;\n\n // Iterate over current buffer to convert already stored Buffers:\n var p = this._readableState.buffer.head;\n var content = '';\n while (p !== null) {\n content += decoder.write(p.data);\n p = p.next;\n }\n this._readableState.buffer.clear();\n if (content !== '') this._readableState.buffer.push(content);\n this._readableState.length = content.length;\n return this;\n};\n\n// Don't raise the hwm > 1GB\nvar MAX_HWM = 0x40000000;\nfunction computeNewHighWaterMark(n) {\n if (n >= MAX_HWM) {\n // TODO(ronag): Throw ERR_VALUE_OUT_OF_RANGE.\n n = MAX_HWM;\n } else {\n // Get the next highest power of 2 to prevent increasing hwm excessively in\n // tiny amounts\n n--;\n n |= n >>> 1;\n n |= n >>> 2;\n n |= n >>> 4;\n n |= n >>> 8;\n n |= n >>> 16;\n n++;\n }\n return n;\n}\n\n// This function is designed to be inlinable, so please take care when making\n// changes to the function body.\nfunction howMuchToRead(n, state) {\n if (n <= 0 || state.length === 0 && state.ended) return 0;\n if (state.objectMode) return 1;\n if (n !== n) {\n // Only flow one buffer at a time\n if (state.flowing && state.length) return state.buffer.head.data.length;else return state.length;\n }\n // If we're asking for more than the current hwm, then raise the hwm.\n if (n > state.highWaterMark) state.highWaterMark = computeNewHighWaterMark(n);\n if (n <= state.length) return n;\n // Don't have enough\n if (!state.ended) {\n state.needReadable = true;\n return 0;\n }\n return state.length;\n}\n\n// you can override either this method, or the async _read(n) below.\nReadable.prototype.read = function (n) {\n debug('read', n);\n n = parseInt(n, 10);\n var state = this._readableState;\n var nOrig = n;\n if (n !== 0) state.emittedReadable = false;\n\n // if we're doing read(0) to trigger a readable event, but we\n // already have a bunch of data in the buffer, then just trigger\n // the 'readable' event and move on.\n if (n === 0 && state.needReadable && ((state.highWaterMark !== 0 ? state.length >= state.highWaterMark : state.length > 0) || state.ended)) {\n debug('read: emitReadable', state.length, state.ended);\n if (state.length === 0 && state.ended) endReadable(this);else emitReadable(this);\n return null;\n }\n n = howMuchToRead(n, state);\n\n // if we've ended, and we're now clear, then finish it up.\n if (n === 0 && state.ended) {\n if (state.length === 0) endReadable(this);\n return null;\n }\n\n // All the actual chunk generation logic needs to be\n // *below* the call to _read. The reason is that in certain\n // synthetic stream cases, such as passthrough streams, _read\n // may be a completely synchronous operation which may change\n // the state of the read buffer, providing enough data when\n // before there was *not* enough.\n //\n // So, the steps are:\n // 1. Figure out what the state of things will be after we do\n // a read from the buffer.\n //\n // 2. If that resulting state will trigger a _read, then call _read.\n // Note that this may be asynchronous, or synchronous. Yes, it is\n // deeply ugly to write APIs this way, but that still doesn't mean\n // that the Readable class should behave improperly, as streams are\n // designed to be sync/async agnostic.\n // Take note if the _read call is sync or async (ie, if the read call\n // has returned yet), so that we know whether or not it's safe to emit\n // 'readable' etc.\n //\n // 3. Actually pull the requested chunks out of the buffer and return.\n\n // if we need a readable event, then we need to do some reading.\n var doRead = state.needReadable;\n debug('need readable', doRead);\n\n // if we currently have less than the highWaterMark, then also read some\n if (state.length === 0 || state.length - n < state.highWaterMark) {\n doRead = true;\n debug('length less than watermark', doRead);\n }\n\n // however, if we've ended, then there's no point, and if we're already\n // reading, then it's unnecessary.\n if (state.ended || state.reading) {\n doRead = false;\n debug('reading or ended', doRead);\n } else if (doRead) {\n debug('do read');\n state.reading = true;\n state.sync = true;\n // if the length is currently zero, then we *need* a readable event.\n if (state.length === 0) state.needReadable = true;\n // call internal read method\n this._read(state.highWaterMark);\n state.sync = false;\n // If _read pushed data synchronously, then `reading` will be false,\n // and we need to re-evaluate how much data we can return to the user.\n if (!state.reading) n = howMuchToRead(nOrig, state);\n }\n var ret;\n if (n > 0) ret = fromList(n, state);else ret = null;\n if (ret === null) {\n state.needReadable = state.length <= state.highWaterMark;\n n = 0;\n } else {\n state.length -= n;\n state.awaitDrain = 0;\n }\n if (state.length === 0) {\n // If we have nothing in the buffer, then we want to know\n // as soon as we *do* get something into the buffer.\n if (!state.ended) state.needReadable = true;\n\n // If we tried to read() past the EOF, then emit end on the next tick.\n if (nOrig !== n && state.ended) endReadable(this);\n }\n if (ret !== null) this.emit('data', ret);\n return ret;\n};\nfunction onEofChunk(stream, state) {\n debug('onEofChunk');\n if (state.ended) return;\n if (state.decoder) {\n var chunk = state.decoder.end();\n if (chunk && chunk.length) {\n state.buffer.push(chunk);\n state.length += state.objectMode ? 1 : chunk.length;\n }\n }\n state.ended = true;\n if (state.sync) {\n // if we are sync, wait until next tick to emit the data.\n // Otherwise we risk emitting data in the flow()\n // the readable code triggers during a read() call\n emitReadable(stream);\n } else {\n // emit 'readable' now to make sure it gets picked up.\n state.needReadable = false;\n if (!state.emittedReadable) {\n state.emittedReadable = true;\n emitReadable_(stream);\n }\n }\n}\n\n// Don't emit readable right away in sync mode, because this can trigger\n// another read() call => stack overflow. This way, it might trigger\n// a nextTick recursion warning, but that's not so bad.\nfunction emitReadable(stream) {\n var state = stream._readableState;\n debug('emitReadable', state.needReadable, state.emittedReadable);\n state.needReadable = false;\n if (!state.emittedReadable) {\n debug('emitReadable', state.flowing);\n state.emittedReadable = true;\n process.nextTick(emitReadable_, stream);\n }\n}\nfunction emitReadable_(stream) {\n var state = stream._readableState;\n debug('emitReadable_', state.destroyed, state.length, state.ended);\n if (!state.destroyed && (state.length || state.ended)) {\n stream.emit('readable');\n state.emittedReadable = false;\n }\n\n // The stream needs another readable event if\n // 1. It is not flowing, as the flow mechanism will take\n // care of it.\n // 2. It is not ended.\n // 3. It is below the highWaterMark, so we can schedule\n // another readable later.\n state.needReadable = !state.flowing && !state.ended && state.length <= state.highWaterMark;\n flow(stream);\n}\n\n// at this point, the user has presumably seen the 'readable' event,\n// and called read() to consume some data. that may have triggered\n// in turn another _read(n) call, in which case reading = true if\n// it's in progress.\n// However, if we're not ended, or reading, and the length < hwm,\n// then go ahead and try to read some more preemptively.\nfunction maybeReadMore(stream, state) {\n if (!state.readingMore) {\n state.readingMore = true;\n process.nextTick(maybeReadMore_, stream, state);\n }\n}\nfunction maybeReadMore_(stream, state) {\n // Attempt to read more data if we should.\n //\n // The conditions for reading more data are (one of):\n // - Not enough data buffered (state.length < state.highWaterMark). The loop\n // is responsible for filling the buffer with enough data if such data\n // is available. If highWaterMark is 0 and we are not in the flowing mode\n // we should _not_ attempt to buffer any extra data. We'll get more data\n // when the stream consumer calls read() instead.\n // - No data in the buffer, and the stream is in flowing mode. In this mode\n // the loop below is responsible for ensuring read() is called. Failing to\n // call read here would abort the flow and there's no other mechanism for\n // continuing the flow if the stream consumer has just subscribed to the\n // 'data' event.\n //\n // In addition to the above conditions to keep reading data, the following\n // conditions prevent the data from being read:\n // - The stream has ended (state.ended).\n // - There is already a pending 'read' operation (state.reading). This is a\n // case where the the stream has called the implementation defined _read()\n // method, but they are processing the call asynchronously and have _not_\n // called push() with new data. In this case we skip performing more\n // read()s. The execution ends in this method again after the _read() ends\n // up calling push() with more data.\n while (!state.reading && !state.ended && (state.length < state.highWaterMark || state.flowing && state.length === 0)) {\n var len = state.length;\n debug('maybeReadMore read 0');\n stream.read(0);\n if (len === state.length)\n // didn't get any data, stop spinning.\n break;\n }\n state.readingMore = false;\n}\n\n// abstract method. to be overridden in specific implementation classes.\n// call cb(er, data) where data is <= n in length.\n// for virtual (non-string, non-buffer) streams, \"length\" is somewhat\n// arbitrary, and perhaps not very meaningful.\nReadable.prototype._read = function (n) {\n errorOrDestroy(this, new ERR_METHOD_NOT_IMPLEMENTED('_read()'));\n};\nReadable.prototype.pipe = function (dest, pipeOpts) {\n var src = this;\n var state = this._readableState;\n switch (state.pipesCount) {\n case 0:\n state.pipes = dest;\n break;\n case 1:\n state.pipes = [state.pipes, dest];\n break;\n default:\n state.pipes.push(dest);\n break;\n }\n state.pipesCount += 1;\n debug('pipe count=%d opts=%j', state.pipesCount, pipeOpts);\n var doEnd = (!pipeOpts || pipeOpts.end !== false) && dest !== process.stdout && dest !== process.stderr;\n var endFn = doEnd ? onend : unpipe;\n if (state.endEmitted) process.nextTick(endFn);else src.once('end', endFn);\n dest.on('unpipe', onunpipe);\n function onunpipe(readable, unpipeInfo) {\n debug('onunpipe');\n if (readable === src) {\n if (unpipeInfo && unpipeInfo.hasUnpiped === false) {\n unpipeInfo.hasUnpiped = true;\n cleanup();\n }\n }\n }\n function onend() {\n debug('onend');\n dest.end();\n }\n\n // when the dest drains, it reduces the awaitDrain counter\n // on the source. This would be more elegant with a .once()\n // handler in flow(), but adding and removing repeatedly is\n // too slow.\n var ondrain = pipeOnDrain(src);\n dest.on('drain', ondrain);\n var cleanedUp = false;\n function cleanup() {\n debug('cleanup');\n // cleanup event handlers once the pipe is broken\n dest.removeListener('close', onclose);\n dest.removeListener('finish', onfinish);\n dest.removeListener('drain', ondrain);\n dest.removeListener('error', onerror);\n dest.removeListener('unpipe', onunpipe);\n src.removeListener('end', onend);\n src.removeListener('end', unpipe);\n src.removeListener('data', ondata);\n cleanedUp = true;\n\n // if the reader is waiting for a drain event from this\n // specific writer, then it would cause it to never start\n // flowing again.\n // So, if this is awaiting a drain, then we just call it now.\n // If we don't know, then assume that we are waiting for one.\n if (state.awaitDrain && (!dest._writableState || dest._writableState.needDrain)) ondrain();\n }\n src.on('data', ondata);\n function ondata(chunk) {\n debug('ondata');\n var ret = dest.write(chunk);\n debug('dest.write', ret);\n if (ret === false) {\n // If the user unpiped during `dest.write()`, it is possible\n // to get stuck in a permanently paused state if that write\n // also returned false.\n // => Check whether `dest` is still a piping destination.\n if ((state.pipesCount === 1 && state.pipes === dest || state.pipesCount > 1 && indexOf(state.pipes, dest) !== -1) && !cleanedUp) {\n debug('false write response, pause', state.awaitDrain);\n state.awaitDrain++;\n }\n src.pause();\n }\n }\n\n // if the dest has an error, then stop piping into it.\n // however, don't suppress the throwing behavior for this.\n function onerror(er) {\n debug('onerror', er);\n unpipe();\n dest.removeListener('error', onerror);\n if (EElistenerCount(dest, 'error') === 0) errorOrDestroy(dest, er);\n }\n\n // Make sure our error handler is attached before userland ones.\n prependListener(dest, 'error', onerror);\n\n // Both close and finish should trigger unpipe, but only once.\n function onclose() {\n dest.removeListener('finish', onfinish);\n unpipe();\n }\n dest.once('close', onclose);\n function onfinish() {\n debug('onfinish');\n dest.removeListener('close', onclose);\n unpipe();\n }\n dest.once('finish', onfinish);\n function unpipe() {\n debug('unpipe');\n src.unpipe(dest);\n }\n\n // tell the dest that it's being piped to\n dest.emit('pipe', src);\n\n // start the flow if it hasn't been started already.\n if (!state.flowing) {\n debug('pipe resume');\n src.resume();\n }\n return dest;\n};\nfunction pipeOnDrain(src) {\n return function pipeOnDrainFunctionResult() {\n var state = src._readableState;\n debug('pipeOnDrain', state.awaitDrain);\n if (state.awaitDrain) state.awaitDrain--;\n if (state.awaitDrain === 0 && EElistenerCount(src, 'data')) {\n state.flowing = true;\n flow(src);\n }\n };\n}\nReadable.prototype.unpipe = function (dest) {\n var state = this._readableState;\n var unpipeInfo = {\n hasUnpiped: false\n };\n\n // if we're not piping anywhere, then do nothing.\n if (state.pipesCount === 0) return this;\n\n // just one destination. most common case.\n if (state.pipesCount === 1) {\n // passed in one, but it's not the right one.\n if (dest && dest !== state.pipes) return this;\n if (!dest) dest = state.pipes;\n\n // got a match.\n state.pipes = null;\n state.pipesCount = 0;\n state.flowing = false;\n if (dest) dest.emit('unpipe', this, unpipeInfo);\n return this;\n }\n\n // slow case. multiple pipe destinations.\n\n if (!dest) {\n // remove all.\n var dests = state.pipes;\n var len = state.pipesCount;\n state.pipes = null;\n state.pipesCount = 0;\n state.flowing = false;\n for (var i = 0; i < len; i++) dests[i].emit('unpipe', this, {\n hasUnpiped: false\n });\n return this;\n }\n\n // try to find the right one.\n var index = indexOf(state.pipes, dest);\n if (index === -1) return this;\n state.pipes.splice(index, 1);\n state.pipesCount -= 1;\n if (state.pipesCount === 1) state.pipes = state.pipes[0];\n dest.emit('unpipe', this, unpipeInfo);\n return this;\n};\n\n// set up data events if they are asked for\n// Ensure readable listeners eventually get something\nReadable.prototype.on = function (ev, fn) {\n var res = Stream.prototype.on.call(this, ev, fn);\n var state = this._readableState;\n if (ev === 'data') {\n // update readableListening so that resume() may be a no-op\n // a few lines down. This is needed to support once('readable').\n state.readableListening = this.listenerCount('readable') > 0;\n\n // Try start flowing on next tick if stream isn't explicitly paused\n if (state.flowing !== false) this.resume();\n } else if (ev === 'readable') {\n if (!state.endEmitted && !state.readableListening) {\n state.readableListening = state.needReadable = true;\n state.flowing = false;\n state.emittedReadable = false;\n debug('on readable', state.length, state.reading);\n if (state.length) {\n emitReadable(this);\n } else if (!state.reading) {\n process.nextTick(nReadingNextTick, this);\n }\n }\n }\n return res;\n};\nReadable.prototype.addListener = Readable.prototype.on;\nReadable.prototype.removeListener = function (ev, fn) {\n var res = Stream.prototype.removeListener.call(this, ev, fn);\n if (ev === 'readable') {\n // We need to check if there is someone still listening to\n // readable and reset the state. However this needs to happen\n // after readable has been emitted but before I/O (nextTick) to\n // support once('readable', fn) cycles. This means that calling\n // resume within the same tick will have no\n // effect.\n process.nextTick(updateReadableListening, this);\n }\n return res;\n};\nReadable.prototype.removeAllListeners = function (ev) {\n var res = Stream.prototype.removeAllListeners.apply(this, arguments);\n if (ev === 'readable' || ev === undefined) {\n // We need to check if there is someone still listening to\n // readable and reset the state. However this needs to happen\n // after readable has been emitted but before I/O (nextTick) to\n // support once('readable', fn) cycles. This means that calling\n // resume within the same tick will have no\n // effect.\n process.nextTick(updateReadableListening, this);\n }\n return res;\n};\nfunction updateReadableListening(self) {\n var state = self._readableState;\n state.readableListening = self.listenerCount('readable') > 0;\n if (state.resumeScheduled && !state.paused) {\n // flowing needs to be set to true now, otherwise\n // the upcoming resume will not flow.\n state.flowing = true;\n\n // crude way to check if we should resume\n } else if (self.listenerCount('data') > 0) {\n self.resume();\n }\n}\nfunction nReadingNextTick(self) {\n debug('readable nexttick read 0');\n self.read(0);\n}\n\n// pause() and resume() are remnants of the legacy readable stream API\n// If the user uses them, then switch into old mode.\nReadable.prototype.resume = function () {\n var state = this._readableState;\n if (!state.flowing) {\n debug('resume');\n // we flow only if there is no one listening\n // for readable, but we still have to call\n // resume()\n state.flowing = !state.readableListening;\n resume(this, state);\n }\n state.paused = false;\n return this;\n};\nfunction resume(stream, state) {\n if (!state.resumeScheduled) {\n state.resumeScheduled = true;\n process.nextTick(resume_, stream, state);\n }\n}\nfunction resume_(stream, state) {\n debug('resume', state.reading);\n if (!state.reading) {\n stream.read(0);\n }\n state.resumeScheduled = false;\n stream.emit('resume');\n flow(stream);\n if (state.flowing && !state.reading) stream.read(0);\n}\nReadable.prototype.pause = function () {\n debug('call pause flowing=%j', this._readableState.flowing);\n if (this._readableState.flowing !== false) {\n debug('pause');\n this._readableState.flowing = false;\n this.emit('pause');\n }\n this._readableState.paused = true;\n return this;\n};\nfunction flow(stream) {\n var state = stream._readableState;\n debug('flow', state.flowing);\n while (state.flowing && stream.read() !== null);\n}\n\n// wrap an old-style stream as the async data source.\n// This is *not* part of the readable stream interface.\n// It is an ugly unfortunate mess of history.\nReadable.prototype.wrap = function (stream) {\n var _this = this;\n var state = this._readableState;\n var paused = false;\n stream.on('end', function () {\n debug('wrapped end');\n if (state.decoder && !state.ended) {\n var chunk = state.decoder.end();\n if (chunk && chunk.length) _this.push(chunk);\n }\n _this.push(null);\n });\n stream.on('data', function (chunk) {\n debug('wrapped data');\n if (state.decoder) chunk = state.decoder.write(chunk);\n\n // don't skip over falsy values in objectMode\n if (state.objectMode && (chunk === null || chunk === undefined)) return;else if (!state.objectMode && (!chunk || !chunk.length)) return;\n var ret = _this.push(chunk);\n if (!ret) {\n paused = true;\n stream.pause();\n }\n });\n\n // proxy all the other methods.\n // important when wrapping filters and duplexes.\n for (var i in stream) {\n if (this[i] === undefined && typeof stream[i] === 'function') {\n this[i] = function methodWrap(method) {\n return function methodWrapReturnFunction() {\n return stream[method].apply(stream, arguments);\n };\n }(i);\n }\n }\n\n // proxy certain important events.\n for (var n = 0; n < kProxyEvents.length; n++) {\n stream.on(kProxyEvents[n], this.emit.bind(this, kProxyEvents[n]));\n }\n\n // when we try to consume some more bytes, simply unpause the\n // underlying stream.\n this._read = function (n) {\n debug('wrapped _read', n);\n if (paused) {\n paused = false;\n stream.resume();\n }\n };\n return this;\n};\nif (typeof Symbol === 'function') {\n Readable.prototype[Symbol.asyncIterator] = function () {\n if (createReadableStreamAsyncIterator === undefined) {\n createReadableStreamAsyncIterator = require('./internal/streams/async_iterator');\n }\n return createReadableStreamAsyncIterator(this);\n };\n}\nObject.defineProperty(Readable.prototype, 'readableHighWaterMark', {\n // making it explicit this property is not enumerable\n // because otherwise some prototype manipulation in\n // userland will fail\n enumerable: false,\n get: function get() {\n return this._readableState.highWaterMark;\n }\n});\nObject.defineProperty(Readable.prototype, 'readableBuffer', {\n // making it explicit this property is not enumerable\n // because otherwise some prototype manipulation in\n // userland will fail\n enumerable: false,\n get: function get() {\n return this._readableState && this._readableState.buffer;\n }\n});\nObject.defineProperty(Readable.prototype, 'readableFlowing', {\n // making it explicit this property is not enumerable\n // because otherwise some prototype manipulation in\n // userland will fail\n enumerable: false,\n get: function get() {\n return this._readableState.flowing;\n },\n set: function set(state) {\n if (this._readableState) {\n this._readableState.flowing = state;\n }\n }\n});\n\n// exposed for testing purposes only.\nReadable._fromList = fromList;\nObject.defineProperty(Readable.prototype, 'readableLength', {\n // making it explicit this property is not enumerable\n // because otherwise some prototype manipulation in\n // userland will fail\n enumerable: false,\n get: function get() {\n return this._readableState.length;\n }\n});\n\n// Pluck off n bytes from an array of buffers.\n// Length is the combined lengths of all the buffers in the list.\n// This function is designed to be inlinable, so please take care when making\n// changes to the function body.\nfunction fromList(n, state) {\n // nothing buffered\n if (state.length === 0) return null;\n var ret;\n if (state.objectMode) ret = state.buffer.shift();else if (!n || n >= state.length) {\n // read it all, truncate the list\n if (state.decoder) ret = state.buffer.join('');else if (state.buffer.length === 1) ret = state.buffer.first();else ret = state.buffer.concat(state.length);\n state.buffer.clear();\n } else {\n // read part of list\n ret = state.buffer.consume(n, state.decoder);\n }\n return ret;\n}\nfunction endReadable(stream) {\n var state = stream._readableState;\n debug('endReadable', state.endEmitted);\n if (!state.endEmitted) {\n state.ended = true;\n process.nextTick(endReadableNT, state, stream);\n }\n}\nfunction endReadableNT(state, stream) {\n debug('endReadableNT', state.endEmitted, state.length);\n\n // Check that we didn't get one last unshift.\n if (!state.endEmitted && state.length === 0) {\n state.endEmitted = true;\n stream.readable = false;\n stream.emit('end');\n if (state.autoDestroy) {\n // In case of duplex streams we need a way to detect\n // if the writable side is ready for autoDestroy as well\n var wState = stream._writableState;\n if (!wState || wState.autoDestroy && wState.finished) {\n stream.destroy();\n }\n }\n }\n}\nif (typeof Symbol === 'function') {\n Readable.from = function (iterable, opts) {\n if (from === undefined) {\n from = require('./internal/streams/from');\n }\n return from(Readable, iterable, opts);\n };\n}\nfunction indexOf(xs, x) {\n for (var i = 0, l = xs.length; i < l; i++) {\n if (xs[i] === x) return i;\n }\n return -1;\n}","// Copyright Joyent, Inc. and other Node contributors.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a\n// copy of this software and associated documentation files (the\n// \"Software\"), to deal in the Software without restriction, including\n// without limitation the rights to use, copy, modify, merge, publish,\n// distribute, sublicense, and/or sell copies of the Software, and to permit\n// persons to whom the Software is furnished to do so, subject to the\n// following conditions:\n//\n// The above copyright notice and this permission notice shall be included\n// in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS\n// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN\n// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,\n// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR\n// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE\n// USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n// a transform stream is a readable/writable stream where you do\n// something with the data. Sometimes it's called a \"filter\",\n// but that's not a great name for it, since that implies a thing where\n// some bits pass through, and others are simply ignored. (That would\n// be a valid example of a transform, of course.)\n//\n// While the output is causally related to the input, it's not a\n// necessarily symmetric or synchronous transformation. For example,\n// a zlib stream might take multiple plain-text writes(), and then\n// emit a single compressed chunk some time in the future.\n//\n// Here's how this works:\n//\n// The Transform stream has all the aspects of the readable and writable\n// stream classes. When you write(chunk), that calls _write(chunk,cb)\n// internally, and returns false if there's a lot of pending writes\n// buffered up. When you call read(), that calls _read(n) until\n// there's enough pending readable data buffered up.\n//\n// In a transform stream, the written data is placed in a buffer. When\n// _read(n) is called, it transforms the queued up data, calling the\n// buffered _write cb's as it consumes chunks. If consuming a single\n// written chunk would result in multiple output chunks, then the first\n// outputted bit calls the readcb, and subsequent chunks just go into\n// the read buffer, and will cause it to emit 'readable' if necessary.\n//\n// This way, back-pressure is actually determined by the reading side,\n// since _read has to be called to start processing a new chunk. However,\n// a pathological inflate type of transform can cause excessive buffering\n// here. For example, imagine a stream where every byte of input is\n// interpreted as an integer from 0-255, and then results in that many\n// bytes of output. Writing the 4 bytes {ff,ff,ff,ff} would result in\n// 1kb of data being output. In this case, you could write a very small\n// amount of input, and end up with a very large amount of output. In\n// such a pathological inflating mechanism, there'd be no way to tell\n// the system to stop doing the transform. A single 4MB write could\n// cause the system to run out of memory.\n//\n// However, even in such a pathological case, only a single written chunk\n// would be consumed, and then the rest would wait (un-transformed) until\n// the results of the previous transformed chunk were consumed.\n\n'use strict';\n\nmodule.exports = Transform;\nvar _require$codes = require('../errors').codes,\n ERR_METHOD_NOT_IMPLEMENTED = _require$codes.ERR_METHOD_NOT_IMPLEMENTED,\n ERR_MULTIPLE_CALLBACK = _require$codes.ERR_MULTIPLE_CALLBACK,\n ERR_TRANSFORM_ALREADY_TRANSFORMING = _require$codes.ERR_TRANSFORM_ALREADY_TRANSFORMING,\n ERR_TRANSFORM_WITH_LENGTH_0 = _require$codes.ERR_TRANSFORM_WITH_LENGTH_0;\nvar Duplex = require('./_stream_duplex');\nrequire('inherits')(Transform, Duplex);\nfunction afterTransform(er, data) {\n var ts = this._transformState;\n ts.transforming = false;\n var cb = ts.writecb;\n if (cb === null) {\n return this.emit('error', new ERR_MULTIPLE_CALLBACK());\n }\n ts.writechunk = null;\n ts.writecb = null;\n if (data != null)\n // single equals check for both `null` and `undefined`\n this.push(data);\n cb(er);\n var rs = this._readableState;\n rs.reading = false;\n if (rs.needReadable || rs.length < rs.highWaterMark) {\n this._read(rs.highWaterMark);\n }\n}\nfunction Transform(options) {\n if (!(this instanceof Transform)) return new Transform(options);\n Duplex.call(this, options);\n this._transformState = {\n afterTransform: afterTransform.bind(this),\n needTransform: false,\n transforming: false,\n writecb: null,\n writechunk: null,\n writeencoding: null\n };\n\n // start out asking for a readable event once data is transformed.\n this._readableState.needReadable = true;\n\n // we have implemented the _read method, and done the other things\n // that Readable wants before the first _read call, so unset the\n // sync guard flag.\n this._readableState.sync = false;\n if (options) {\n if (typeof options.transform === 'function') this._transform = options.transform;\n if (typeof options.flush === 'function') this._flush = options.flush;\n }\n\n // When the writable side finishes, then flush out anything remaining.\n this.on('prefinish', prefinish);\n}\nfunction prefinish() {\n var _this = this;\n if (typeof this._flush === 'function' && !this._readableState.destroyed) {\n this._flush(function (er, data) {\n done(_this, er, data);\n });\n } else {\n done(this, null, null);\n }\n}\nTransform.prototype.push = function (chunk, encoding) {\n this._transformState.needTransform = false;\n return Duplex.prototype.push.call(this, chunk, encoding);\n};\n\n// This is the part where you do stuff!\n// override this function in implementation classes.\n// 'chunk' is an input chunk.\n//\n// Call `push(newChunk)` to pass along transformed output\n// to the readable side. You may call 'push' zero or more times.\n//\n// Call `cb(err)` when you are done with this chunk. If you pass\n// an error, then that'll put the hurt on the whole operation. If you\n// never call cb(), then you'll never get another chunk.\nTransform.prototype._transform = function (chunk, encoding, cb) {\n cb(new ERR_METHOD_NOT_IMPLEMENTED('_transform()'));\n};\nTransform.prototype._write = function (chunk, encoding, cb) {\n var ts = this._transformState;\n ts.writecb = cb;\n ts.writechunk = chunk;\n ts.writeencoding = encoding;\n if (!ts.transforming) {\n var rs = this._readableState;\n if (ts.needTransform || rs.needReadable || rs.length < rs.highWaterMark) this._read(rs.highWaterMark);\n }\n};\n\n// Doesn't matter what the args are here.\n// _transform does all the work.\n// That we got here means that the readable side wants more data.\nTransform.prototype._read = function (n) {\n var ts = this._transformState;\n if (ts.writechunk !== null && !ts.transforming) {\n ts.transforming = true;\n this._transform(ts.writechunk, ts.writeencoding, ts.afterTransform);\n } else {\n // mark that we need a transform, so that any data that comes in\n // will get processed, now that we've asked for it.\n ts.needTransform = true;\n }\n};\nTransform.prototype._destroy = function (err, cb) {\n Duplex.prototype._destroy.call(this, err, function (err2) {\n cb(err2);\n });\n};\nfunction done(stream, er, data) {\n if (er) return stream.emit('error', er);\n if (data != null)\n // single equals check for both `null` and `undefined`\n stream.push(data);\n\n // TODO(BridgeAR): Write a test for these two error cases\n // if there's nothing in the write buffer, then that means\n // that nothing more will ever be provided\n if (stream._writableState.length) throw new ERR_TRANSFORM_WITH_LENGTH_0();\n if (stream._transformState.transforming) throw new ERR_TRANSFORM_ALREADY_TRANSFORMING();\n return stream.push(null);\n}","// Copyright Joyent, Inc. and other Node contributors.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a\n// copy of this software and associated documentation files (the\n// \"Software\"), to deal in the Software without restriction, including\n// without limitation the rights to use, copy, modify, merge, publish,\n// distribute, sublicense, and/or sell copies of the Software, and to permit\n// persons to whom the Software is furnished to do so, subject to the\n// following conditions:\n//\n// The above copyright notice and this permission notice shall be included\n// in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS\n// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN\n// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,\n// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR\n// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE\n// USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n// A bit simpler than readable streams.\n// Implement an async ._write(chunk, encoding, cb), and it'll handle all\n// the drain event emission and buffering.\n\n'use strict';\n\nmodule.exports = Writable;\n\n/* */\nfunction WriteReq(chunk, encoding, cb) {\n this.chunk = chunk;\n this.encoding = encoding;\n this.callback = cb;\n this.next = null;\n}\n\n// It seems a linked list but it is not\n// there will be only 2 of these for each stream\nfunction CorkedRequest(state) {\n var _this = this;\n this.next = null;\n this.entry = null;\n this.finish = function () {\n onCorkedFinish(_this, state);\n };\n}\n/* */\n\n/**/\nvar Duplex;\n/**/\n\nWritable.WritableState = WritableState;\n\n/**/\nvar internalUtil = {\n deprecate: require('util-deprecate')\n};\n/**/\n\n/**/\nvar Stream = require('./internal/streams/stream');\n/**/\n\nvar Buffer = require('buffer').Buffer;\nvar OurUint8Array = (typeof global !== 'undefined' ? global : typeof window !== 'undefined' ? window : typeof self !== 'undefined' ? self : {}).Uint8Array || function () {};\nfunction _uint8ArrayToBuffer(chunk) {\n return Buffer.from(chunk);\n}\nfunction _isUint8Array(obj) {\n return Buffer.isBuffer(obj) || obj instanceof OurUint8Array;\n}\nvar destroyImpl = require('./internal/streams/destroy');\nvar _require = require('./internal/streams/state'),\n getHighWaterMark = _require.getHighWaterMark;\nvar _require$codes = require('../errors').codes,\n ERR_INVALID_ARG_TYPE = _require$codes.ERR_INVALID_ARG_TYPE,\n ERR_METHOD_NOT_IMPLEMENTED = _require$codes.ERR_METHOD_NOT_IMPLEMENTED,\n ERR_MULTIPLE_CALLBACK = _require$codes.ERR_MULTIPLE_CALLBACK,\n ERR_STREAM_CANNOT_PIPE = _require$codes.ERR_STREAM_CANNOT_PIPE,\n ERR_STREAM_DESTROYED = _require$codes.ERR_STREAM_DESTROYED,\n ERR_STREAM_NULL_VALUES = _require$codes.ERR_STREAM_NULL_VALUES,\n ERR_STREAM_WRITE_AFTER_END = _require$codes.ERR_STREAM_WRITE_AFTER_END,\n ERR_UNKNOWN_ENCODING = _require$codes.ERR_UNKNOWN_ENCODING;\nvar errorOrDestroy = destroyImpl.errorOrDestroy;\nrequire('inherits')(Writable, Stream);\nfunction nop() {}\nfunction WritableState(options, stream, isDuplex) {\n Duplex = Duplex || require('./_stream_duplex');\n options = options || {};\n\n // Duplex streams are both readable and writable, but share\n // the same options object.\n // However, some cases require setting options to different\n // values for the readable and the writable sides of the duplex stream,\n // e.g. options.readableObjectMode vs. options.writableObjectMode, etc.\n if (typeof isDuplex !== 'boolean') isDuplex = stream instanceof Duplex;\n\n // object stream flag to indicate whether or not this stream\n // contains buffers or objects.\n this.objectMode = !!options.objectMode;\n if (isDuplex) this.objectMode = this.objectMode || !!options.writableObjectMode;\n\n // the point at which write() starts returning false\n // Note: 0 is a valid value, means that we always return false if\n // the entire buffer is not flushed immediately on write()\n this.highWaterMark = getHighWaterMark(this, options, 'writableHighWaterMark', isDuplex);\n\n // if _final has been called\n this.finalCalled = false;\n\n // drain event flag.\n this.needDrain = false;\n // at the start of calling end()\n this.ending = false;\n // when end() has been called, and returned\n this.ended = false;\n // when 'finish' is emitted\n this.finished = false;\n\n // has it been destroyed\n this.destroyed = false;\n\n // should we decode strings into buffers before passing to _write?\n // this is here so that some node-core streams can optimize string\n // handling at a lower level.\n var noDecode = options.decodeStrings === false;\n this.decodeStrings = !noDecode;\n\n // Crypto is kind of old and crusty. Historically, its default string\n // encoding is 'binary' so we have to make this configurable.\n // Everything else in the universe uses 'utf8', though.\n this.defaultEncoding = options.defaultEncoding || 'utf8';\n\n // not an actual buffer we keep track of, but a measurement\n // of how much we're waiting to get pushed to some underlying\n // socket or file.\n this.length = 0;\n\n // a flag to see when we're in the middle of a write.\n this.writing = false;\n\n // when true all writes will be buffered until .uncork() call\n this.corked = 0;\n\n // a flag to be able to tell if the onwrite cb is called immediately,\n // or on a later tick. We set this to true at first, because any\n // actions that shouldn't happen until \"later\" should generally also\n // not happen before the first write call.\n this.sync = true;\n\n // a flag to know if we're processing previously buffered items, which\n // may call the _write() callback in the same tick, so that we don't\n // end up in an overlapped onwrite situation.\n this.bufferProcessing = false;\n\n // the callback that's passed to _write(chunk,cb)\n this.onwrite = function (er) {\n onwrite(stream, er);\n };\n\n // the callback that the user supplies to write(chunk,encoding,cb)\n this.writecb = null;\n\n // the amount that is being written when _write is called.\n this.writelen = 0;\n this.bufferedRequest = null;\n this.lastBufferedRequest = null;\n\n // number of pending user-supplied write callbacks\n // this must be 0 before 'finish' can be emitted\n this.pendingcb = 0;\n\n // emit prefinish if the only thing we're waiting for is _write cbs\n // This is relevant for synchronous Transform streams\n this.prefinished = false;\n\n // True if the error was already emitted and should not be thrown again\n this.errorEmitted = false;\n\n // Should close be emitted on destroy. Defaults to true.\n this.emitClose = options.emitClose !== false;\n\n // Should .destroy() be called after 'finish' (and potentially 'end')\n this.autoDestroy = !!options.autoDestroy;\n\n // count buffered requests\n this.bufferedRequestCount = 0;\n\n // allocate the first CorkedRequest, there is always\n // one allocated and free to use, and we maintain at most two\n this.corkedRequestsFree = new CorkedRequest(this);\n}\nWritableState.prototype.getBuffer = function getBuffer() {\n var current = this.bufferedRequest;\n var out = [];\n while (current) {\n out.push(current);\n current = current.next;\n }\n return out;\n};\n(function () {\n try {\n Object.defineProperty(WritableState.prototype, 'buffer', {\n get: internalUtil.deprecate(function writableStateBufferGetter() {\n return this.getBuffer();\n }, '_writableState.buffer is deprecated. Use _writableState.getBuffer ' + 'instead.', 'DEP0003')\n });\n } catch (_) {}\n})();\n\n// Test _writableState for inheritance to account for Duplex streams,\n// whose prototype chain only points to Readable.\nvar realHasInstance;\nif (typeof Symbol === 'function' && Symbol.hasInstance && typeof Function.prototype[Symbol.hasInstance] === 'function') {\n realHasInstance = Function.prototype[Symbol.hasInstance];\n Object.defineProperty(Writable, Symbol.hasInstance, {\n value: function value(object) {\n if (realHasInstance.call(this, object)) return true;\n if (this !== Writable) return false;\n return object && object._writableState instanceof WritableState;\n }\n });\n} else {\n realHasInstance = function realHasInstance(object) {\n return object instanceof this;\n };\n}\nfunction Writable(options) {\n Duplex = Duplex || require('./_stream_duplex');\n\n // Writable ctor is applied to Duplexes, too.\n // `realHasInstance` is necessary because using plain `instanceof`\n // would return false, as no `_writableState` property is attached.\n\n // Trying to use the custom `instanceof` for Writable here will also break the\n // Node.js LazyTransform implementation, which has a non-trivial getter for\n // `_writableState` that would lead to infinite recursion.\n\n // Checking for a Stream.Duplex instance is faster here instead of inside\n // the WritableState constructor, at least with V8 6.5\n var isDuplex = this instanceof Duplex;\n if (!isDuplex && !realHasInstance.call(Writable, this)) return new Writable(options);\n this._writableState = new WritableState(options, this, isDuplex);\n\n // legacy.\n this.writable = true;\n if (options) {\n if (typeof options.write === 'function') this._write = options.write;\n if (typeof options.writev === 'function') this._writev = options.writev;\n if (typeof options.destroy === 'function') this._destroy = options.destroy;\n if (typeof options.final === 'function') this._final = options.final;\n }\n Stream.call(this);\n}\n\n// Otherwise people can pipe Writable streams, which is just wrong.\nWritable.prototype.pipe = function () {\n errorOrDestroy(this, new ERR_STREAM_CANNOT_PIPE());\n};\nfunction writeAfterEnd(stream, cb) {\n var er = new ERR_STREAM_WRITE_AFTER_END();\n // TODO: defer error events consistently everywhere, not just the cb\n errorOrDestroy(stream, er);\n process.nextTick(cb, er);\n}\n\n// Checks that a user-supplied chunk is valid, especially for the particular\n// mode the stream is in. Currently this means that `null` is never accepted\n// and undefined/non-string values are only allowed in object mode.\nfunction validChunk(stream, state, chunk, cb) {\n var er;\n if (chunk === null) {\n er = new ERR_STREAM_NULL_VALUES();\n } else if (typeof chunk !== 'string' && !state.objectMode) {\n er = new ERR_INVALID_ARG_TYPE('chunk', ['string', 'Buffer'], chunk);\n }\n if (er) {\n errorOrDestroy(stream, er);\n process.nextTick(cb, er);\n return false;\n }\n return true;\n}\nWritable.prototype.write = function (chunk, encoding, cb) {\n var state = this._writableState;\n var ret = false;\n var isBuf = !state.objectMode && _isUint8Array(chunk);\n if (isBuf && !Buffer.isBuffer(chunk)) {\n chunk = _uint8ArrayToBuffer(chunk);\n }\n if (typeof encoding === 'function') {\n cb = encoding;\n encoding = null;\n }\n if (isBuf) encoding = 'buffer';else if (!encoding) encoding = state.defaultEncoding;\n if (typeof cb !== 'function') cb = nop;\n if (state.ending) writeAfterEnd(this, cb);else if (isBuf || validChunk(this, state, chunk, cb)) {\n state.pendingcb++;\n ret = writeOrBuffer(this, state, isBuf, chunk, encoding, cb);\n }\n return ret;\n};\nWritable.prototype.cork = function () {\n this._writableState.corked++;\n};\nWritable.prototype.uncork = function () {\n var state = this._writableState;\n if (state.corked) {\n state.corked--;\n if (!state.writing && !state.corked && !state.bufferProcessing && state.bufferedRequest) clearBuffer(this, state);\n }\n};\nWritable.prototype.setDefaultEncoding = function setDefaultEncoding(encoding) {\n // node::ParseEncoding() requires lower case.\n if (typeof encoding === 'string') encoding = encoding.toLowerCase();\n if (!(['hex', 'utf8', 'utf-8', 'ascii', 'binary', 'base64', 'ucs2', 'ucs-2', 'utf16le', 'utf-16le', 'raw'].indexOf((encoding + '').toLowerCase()) > -1)) throw new ERR_UNKNOWN_ENCODING(encoding);\n this._writableState.defaultEncoding = encoding;\n return this;\n};\nObject.defineProperty(Writable.prototype, 'writableBuffer', {\n // making it explicit this property is not enumerable\n // because otherwise some prototype manipulation in\n // userland will fail\n enumerable: false,\n get: function get() {\n return this._writableState && this._writableState.getBuffer();\n }\n});\nfunction decodeChunk(state, chunk, encoding) {\n if (!state.objectMode && state.decodeStrings !== false && typeof chunk === 'string') {\n chunk = Buffer.from(chunk, encoding);\n }\n return chunk;\n}\nObject.defineProperty(Writable.prototype, 'writableHighWaterMark', {\n // making it explicit this property is not enumerable\n // because otherwise some prototype manipulation in\n // userland will fail\n enumerable: false,\n get: function get() {\n return this._writableState.highWaterMark;\n }\n});\n\n// if we're already writing something, then just put this\n// in the queue, and wait our turn. Otherwise, call _write\n// If we return false, then we need a drain event, so set that flag.\nfunction writeOrBuffer(stream, state, isBuf, chunk, encoding, cb) {\n if (!isBuf) {\n var newChunk = decodeChunk(state, chunk, encoding);\n if (chunk !== newChunk) {\n isBuf = true;\n encoding = 'buffer';\n chunk = newChunk;\n }\n }\n var len = state.objectMode ? 1 : chunk.length;\n state.length += len;\n var ret = state.length < state.highWaterMark;\n // we must ensure that previous needDrain will not be reset to false.\n if (!ret) state.needDrain = true;\n if (state.writing || state.corked) {\n var last = state.lastBufferedRequest;\n state.lastBufferedRequest = {\n chunk: chunk,\n encoding: encoding,\n isBuf: isBuf,\n callback: cb,\n next: null\n };\n if (last) {\n last.next = state.lastBufferedRequest;\n } else {\n state.bufferedRequest = state.lastBufferedRequest;\n }\n state.bufferedRequestCount += 1;\n } else {\n doWrite(stream, state, false, len, chunk, encoding, cb);\n }\n return ret;\n}\nfunction doWrite(stream, state, writev, len, chunk, encoding, cb) {\n state.writelen = len;\n state.writecb = cb;\n state.writing = true;\n state.sync = true;\n if (state.destroyed) state.onwrite(new ERR_STREAM_DESTROYED('write'));else if (writev) stream._writev(chunk, state.onwrite);else stream._write(chunk, encoding, state.onwrite);\n state.sync = false;\n}\nfunction onwriteError(stream, state, sync, er, cb) {\n --state.pendingcb;\n if (sync) {\n // defer the callback if we are being called synchronously\n // to avoid piling up things on the stack\n process.nextTick(cb, er);\n // this can emit finish, and it will always happen\n // after error\n process.nextTick(finishMaybe, stream, state);\n stream._writableState.errorEmitted = true;\n errorOrDestroy(stream, er);\n } else {\n // the caller expect this to happen before if\n // it is async\n cb(er);\n stream._writableState.errorEmitted = true;\n errorOrDestroy(stream, er);\n // this can emit finish, but finish must\n // always follow error\n finishMaybe(stream, state);\n }\n}\nfunction onwriteStateUpdate(state) {\n state.writing = false;\n state.writecb = null;\n state.length -= state.writelen;\n state.writelen = 0;\n}\nfunction onwrite(stream, er) {\n var state = stream._writableState;\n var sync = state.sync;\n var cb = state.writecb;\n if (typeof cb !== 'function') throw new ERR_MULTIPLE_CALLBACK();\n onwriteStateUpdate(state);\n if (er) onwriteError(stream, state, sync, er, cb);else {\n // Check if we're actually ready to finish, but don't emit yet\n var finished = needFinish(state) || stream.destroyed;\n if (!finished && !state.corked && !state.bufferProcessing && state.bufferedRequest) {\n clearBuffer(stream, state);\n }\n if (sync) {\n process.nextTick(afterWrite, stream, state, finished, cb);\n } else {\n afterWrite(stream, state, finished, cb);\n }\n }\n}\nfunction afterWrite(stream, state, finished, cb) {\n if (!finished) onwriteDrain(stream, state);\n state.pendingcb--;\n cb();\n finishMaybe(stream, state);\n}\n\n// Must force callback to be called on nextTick, so that we don't\n// emit 'drain' before the write() consumer gets the 'false' return\n// value, and has a chance to attach a 'drain' listener.\nfunction onwriteDrain(stream, state) {\n if (state.length === 0 && state.needDrain) {\n state.needDrain = false;\n stream.emit('drain');\n }\n}\n\n// if there's something in the buffer waiting, then process it\nfunction clearBuffer(stream, state) {\n state.bufferProcessing = true;\n var entry = state.bufferedRequest;\n if (stream._writev && entry && entry.next) {\n // Fast case, write everything using _writev()\n var l = state.bufferedRequestCount;\n var buffer = new Array(l);\n var holder = state.corkedRequestsFree;\n holder.entry = entry;\n var count = 0;\n var allBuffers = true;\n while (entry) {\n buffer[count] = entry;\n if (!entry.isBuf) allBuffers = false;\n entry = entry.next;\n count += 1;\n }\n buffer.allBuffers = allBuffers;\n doWrite(stream, state, true, state.length, buffer, '', holder.finish);\n\n // doWrite is almost always async, defer these to save a bit of time\n // as the hot path ends with doWrite\n state.pendingcb++;\n state.lastBufferedRequest = null;\n if (holder.next) {\n state.corkedRequestsFree = holder.next;\n holder.next = null;\n } else {\n state.corkedRequestsFree = new CorkedRequest(state);\n }\n state.bufferedRequestCount = 0;\n } else {\n // Slow case, write chunks one-by-one\n while (entry) {\n var chunk = entry.chunk;\n var encoding = entry.encoding;\n var cb = entry.callback;\n var len = state.objectMode ? 1 : chunk.length;\n doWrite(stream, state, false, len, chunk, encoding, cb);\n entry = entry.next;\n state.bufferedRequestCount--;\n // if we didn't call the onwrite immediately, then\n // it means that we need to wait until it does.\n // also, that means that the chunk and cb are currently\n // being processed, so move the buffer counter past them.\n if (state.writing) {\n break;\n }\n }\n if (entry === null) state.lastBufferedRequest = null;\n }\n state.bufferedRequest = entry;\n state.bufferProcessing = false;\n}\nWritable.prototype._write = function (chunk, encoding, cb) {\n cb(new ERR_METHOD_NOT_IMPLEMENTED('_write()'));\n};\nWritable.prototype._writev = null;\nWritable.prototype.end = function (chunk, encoding, cb) {\n var state = this._writableState;\n if (typeof chunk === 'function') {\n cb = chunk;\n chunk = null;\n encoding = null;\n } else if (typeof encoding === 'function') {\n cb = encoding;\n encoding = null;\n }\n if (chunk !== null && chunk !== undefined) this.write(chunk, encoding);\n\n // .end() fully uncorks\n if (state.corked) {\n state.corked = 1;\n this.uncork();\n }\n\n // ignore unnecessary end() calls.\n if (!state.ending) endWritable(this, state, cb);\n return this;\n};\nObject.defineProperty(Writable.prototype, 'writableLength', {\n // making it explicit this property is not enumerable\n // because otherwise some prototype manipulation in\n // userland will fail\n enumerable: false,\n get: function get() {\n return this._writableState.length;\n }\n});\nfunction needFinish(state) {\n return state.ending && state.length === 0 && state.bufferedRequest === null && !state.finished && !state.writing;\n}\nfunction callFinal(stream, state) {\n stream._final(function (err) {\n state.pendingcb--;\n if (err) {\n errorOrDestroy(stream, err);\n }\n state.prefinished = true;\n stream.emit('prefinish');\n finishMaybe(stream, state);\n });\n}\nfunction prefinish(stream, state) {\n if (!state.prefinished && !state.finalCalled) {\n if (typeof stream._final === 'function' && !state.destroyed) {\n state.pendingcb++;\n state.finalCalled = true;\n process.nextTick(callFinal, stream, state);\n } else {\n state.prefinished = true;\n stream.emit('prefinish');\n }\n }\n}\nfunction finishMaybe(stream, state) {\n var need = needFinish(state);\n if (need) {\n prefinish(stream, state);\n if (state.pendingcb === 0) {\n state.finished = true;\n stream.emit('finish');\n if (state.autoDestroy) {\n // In case of duplex streams we need a way to detect\n // if the readable side is ready for autoDestroy as well\n var rState = stream._readableState;\n if (!rState || rState.autoDestroy && rState.endEmitted) {\n stream.destroy();\n }\n }\n }\n }\n return need;\n}\nfunction endWritable(stream, state, cb) {\n state.ending = true;\n finishMaybe(stream, state);\n if (cb) {\n if (state.finished) process.nextTick(cb);else stream.once('finish', cb);\n }\n state.ended = true;\n stream.writable = false;\n}\nfunction onCorkedFinish(corkReq, state, err) {\n var entry = corkReq.entry;\n corkReq.entry = null;\n while (entry) {\n var cb = entry.callback;\n state.pendingcb--;\n cb(err);\n entry = entry.next;\n }\n\n // reuse the free corkReq.\n state.corkedRequestsFree.next = corkReq;\n}\nObject.defineProperty(Writable.prototype, 'destroyed', {\n // making it explicit this property is not enumerable\n // because otherwise some prototype manipulation in\n // userland will fail\n enumerable: false,\n get: function get() {\n if (this._writableState === undefined) {\n return false;\n }\n return this._writableState.destroyed;\n },\n set: function set(value) {\n // we ignore the value if the stream\n // has not been initialized yet\n if (!this._writableState) {\n return;\n }\n\n // backward compatibility, the user is explicitly\n // managing destroyed\n this._writableState.destroyed = value;\n }\n});\nWritable.prototype.destroy = destroyImpl.destroy;\nWritable.prototype._undestroy = destroyImpl.undestroy;\nWritable.prototype._destroy = function (err, cb) {\n cb(err);\n};","'use strict';\n\nvar _Object$setPrototypeO;\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nvar finished = require('./end-of-stream');\nvar kLastResolve = Symbol('lastResolve');\nvar kLastReject = Symbol('lastReject');\nvar kError = Symbol('error');\nvar kEnded = Symbol('ended');\nvar kLastPromise = Symbol('lastPromise');\nvar kHandlePromise = Symbol('handlePromise');\nvar kStream = Symbol('stream');\nfunction createIterResult(value, done) {\n return {\n value: value,\n done: done\n };\n}\nfunction readAndResolve(iter) {\n var resolve = iter[kLastResolve];\n if (resolve !== null) {\n var data = iter[kStream].read();\n // we defer if data is null\n // we can be expecting either 'end' or\n // 'error'\n if (data !== null) {\n iter[kLastPromise] = null;\n iter[kLastResolve] = null;\n iter[kLastReject] = null;\n resolve(createIterResult(data, false));\n }\n }\n}\nfunction onReadable(iter) {\n // we wait for the next tick, because it might\n // emit an error with process.nextTick\n process.nextTick(readAndResolve, iter);\n}\nfunction wrapForNext(lastPromise, iter) {\n return function (resolve, reject) {\n lastPromise.then(function () {\n if (iter[kEnded]) {\n resolve(createIterResult(undefined, true));\n return;\n }\n iter[kHandlePromise](resolve, reject);\n }, reject);\n };\n}\nvar AsyncIteratorPrototype = Object.getPrototypeOf(function () {});\nvar ReadableStreamAsyncIteratorPrototype = Object.setPrototypeOf((_Object$setPrototypeO = {\n get stream() {\n return this[kStream];\n },\n next: function next() {\n var _this = this;\n // if we have detected an error in the meanwhile\n // reject straight away\n var error = this[kError];\n if (error !== null) {\n return Promise.reject(error);\n }\n if (this[kEnded]) {\n return Promise.resolve(createIterResult(undefined, true));\n }\n if (this[kStream].destroyed) {\n // We need to defer via nextTick because if .destroy(err) is\n // called, the error will be emitted via nextTick, and\n // we cannot guarantee that there is no error lingering around\n // waiting to be emitted.\n return new Promise(function (resolve, reject) {\n process.nextTick(function () {\n if (_this[kError]) {\n reject(_this[kError]);\n } else {\n resolve(createIterResult(undefined, true));\n }\n });\n });\n }\n\n // if we have multiple next() calls\n // we will wait for the previous Promise to finish\n // this logic is optimized to support for await loops,\n // where next() is only called once at a time\n var lastPromise = this[kLastPromise];\n var promise;\n if (lastPromise) {\n promise = new Promise(wrapForNext(lastPromise, this));\n } else {\n // fast path needed to support multiple this.push()\n // without triggering the next() queue\n var data = this[kStream].read();\n if (data !== null) {\n return Promise.resolve(createIterResult(data, false));\n }\n promise = new Promise(this[kHandlePromise]);\n }\n this[kLastPromise] = promise;\n return promise;\n }\n}, _defineProperty(_Object$setPrototypeO, Symbol.asyncIterator, function () {\n return this;\n}), _defineProperty(_Object$setPrototypeO, \"return\", function _return() {\n var _this2 = this;\n // destroy(err, cb) is a private API\n // we can guarantee we have that here, because we control the\n // Readable class this is attached to\n return new Promise(function (resolve, reject) {\n _this2[kStream].destroy(null, function (err) {\n if (err) {\n reject(err);\n return;\n }\n resolve(createIterResult(undefined, true));\n });\n });\n}), _Object$setPrototypeO), AsyncIteratorPrototype);\nvar createReadableStreamAsyncIterator = function createReadableStreamAsyncIterator(stream) {\n var _Object$create;\n var iterator = Object.create(ReadableStreamAsyncIteratorPrototype, (_Object$create = {}, _defineProperty(_Object$create, kStream, {\n value: stream,\n writable: true\n }), _defineProperty(_Object$create, kLastResolve, {\n value: null,\n writable: true\n }), _defineProperty(_Object$create, kLastReject, {\n value: null,\n writable: true\n }), _defineProperty(_Object$create, kError, {\n value: null,\n writable: true\n }), _defineProperty(_Object$create, kEnded, {\n value: stream._readableState.endEmitted,\n writable: true\n }), _defineProperty(_Object$create, kHandlePromise, {\n value: function value(resolve, reject) {\n var data = iterator[kStream].read();\n if (data) {\n iterator[kLastPromise] = null;\n iterator[kLastResolve] = null;\n iterator[kLastReject] = null;\n resolve(createIterResult(data, false));\n } else {\n iterator[kLastResolve] = resolve;\n iterator[kLastReject] = reject;\n }\n },\n writable: true\n }), _Object$create));\n iterator[kLastPromise] = null;\n finished(stream, function (err) {\n if (err && err.code !== 'ERR_STREAM_PREMATURE_CLOSE') {\n var reject = iterator[kLastReject];\n // reject if we are waiting for data in the Promise\n // returned by next() and store the error\n if (reject !== null) {\n iterator[kLastPromise] = null;\n iterator[kLastResolve] = null;\n iterator[kLastReject] = null;\n reject(err);\n }\n iterator[kError] = err;\n return;\n }\n var resolve = iterator[kLastResolve];\n if (resolve !== null) {\n iterator[kLastPromise] = null;\n iterator[kLastResolve] = null;\n iterator[kLastReject] = null;\n resolve(createIterResult(undefined, true));\n }\n iterator[kEnded] = true;\n });\n stream.on('readable', onReadable.bind(null, iterator));\n return iterator;\n};\nmodule.exports = createReadableStreamAsyncIterator;","'use strict';\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, \"prototype\", { writable: false }); return Constructor; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nvar _require = require('buffer'),\n Buffer = _require.Buffer;\nvar _require2 = require('util'),\n inspect = _require2.inspect;\nvar custom = inspect && inspect.custom || 'inspect';\nfunction copyBuffer(src, target, offset) {\n Buffer.prototype.copy.call(src, target, offset);\n}\nmodule.exports = /*#__PURE__*/function () {\n function BufferList() {\n _classCallCheck(this, BufferList);\n this.head = null;\n this.tail = null;\n this.length = 0;\n }\n _createClass(BufferList, [{\n key: \"push\",\n value: function push(v) {\n var entry = {\n data: v,\n next: null\n };\n if (this.length > 0) this.tail.next = entry;else this.head = entry;\n this.tail = entry;\n ++this.length;\n }\n }, {\n key: \"unshift\",\n value: function unshift(v) {\n var entry = {\n data: v,\n next: this.head\n };\n if (this.length === 0) this.tail = entry;\n this.head = entry;\n ++this.length;\n }\n }, {\n key: \"shift\",\n value: function shift() {\n if (this.length === 0) return;\n var ret = this.head.data;\n if (this.length === 1) this.head = this.tail = null;else this.head = this.head.next;\n --this.length;\n return ret;\n }\n }, {\n key: \"clear\",\n value: function clear() {\n this.head = this.tail = null;\n this.length = 0;\n }\n }, {\n key: \"join\",\n value: function join(s) {\n if (this.length === 0) return '';\n var p = this.head;\n var ret = '' + p.data;\n while (p = p.next) ret += s + p.data;\n return ret;\n }\n }, {\n key: \"concat\",\n value: function concat(n) {\n if (this.length === 0) return Buffer.alloc(0);\n var ret = Buffer.allocUnsafe(n >>> 0);\n var p = this.head;\n var i = 0;\n while (p) {\n copyBuffer(p.data, ret, i);\n i += p.data.length;\n p = p.next;\n }\n return ret;\n }\n\n // Consumes a specified amount of bytes or characters from the buffered data.\n }, {\n key: \"consume\",\n value: function consume(n, hasStrings) {\n var ret;\n if (n < this.head.data.length) {\n // `slice` is the same for buffers and strings.\n ret = this.head.data.slice(0, n);\n this.head.data = this.head.data.slice(n);\n } else if (n === this.head.data.length) {\n // First chunk is a perfect match.\n ret = this.shift();\n } else {\n // Result spans more than one buffer.\n ret = hasStrings ? this._getString(n) : this._getBuffer(n);\n }\n return ret;\n }\n }, {\n key: \"first\",\n value: function first() {\n return this.head.data;\n }\n\n // Consumes a specified amount of characters from the buffered data.\n }, {\n key: \"_getString\",\n value: function _getString(n) {\n var p = this.head;\n var c = 1;\n var ret = p.data;\n n -= ret.length;\n while (p = p.next) {\n var str = p.data;\n var nb = n > str.length ? str.length : n;\n if (nb === str.length) ret += str;else ret += str.slice(0, n);\n n -= nb;\n if (n === 0) {\n if (nb === str.length) {\n ++c;\n if (p.next) this.head = p.next;else this.head = this.tail = null;\n } else {\n this.head = p;\n p.data = str.slice(nb);\n }\n break;\n }\n ++c;\n }\n this.length -= c;\n return ret;\n }\n\n // Consumes a specified amount of bytes from the buffered data.\n }, {\n key: \"_getBuffer\",\n value: function _getBuffer(n) {\n var ret = Buffer.allocUnsafe(n);\n var p = this.head;\n var c = 1;\n p.data.copy(ret);\n n -= p.data.length;\n while (p = p.next) {\n var buf = p.data;\n var nb = n > buf.length ? buf.length : n;\n buf.copy(ret, ret.length - n, 0, nb);\n n -= nb;\n if (n === 0) {\n if (nb === buf.length) {\n ++c;\n if (p.next) this.head = p.next;else this.head = this.tail = null;\n } else {\n this.head = p;\n p.data = buf.slice(nb);\n }\n break;\n }\n ++c;\n }\n this.length -= c;\n return ret;\n }\n\n // Make sure the linked list only shows the minimal necessary information.\n }, {\n key: custom,\n value: function value(_, options) {\n return inspect(this, _objectSpread(_objectSpread({}, options), {}, {\n // Only inspect one level.\n depth: 0,\n // It should not recurse.\n customInspect: false\n }));\n }\n }]);\n return BufferList;\n}();","'use strict';\n\n// undocumented cb() API, needed for core, not for public API\nfunction destroy(err, cb) {\n var _this = this;\n var readableDestroyed = this._readableState && this._readableState.destroyed;\n var writableDestroyed = this._writableState && this._writableState.destroyed;\n if (readableDestroyed || writableDestroyed) {\n if (cb) {\n cb(err);\n } else if (err) {\n if (!this._writableState) {\n process.nextTick(emitErrorNT, this, err);\n } else if (!this._writableState.errorEmitted) {\n this._writableState.errorEmitted = true;\n process.nextTick(emitErrorNT, this, err);\n }\n }\n return this;\n }\n\n // we set destroyed to true before firing error callbacks in order\n // to make it re-entrance safe in case destroy() is called within callbacks\n\n if (this._readableState) {\n this._readableState.destroyed = true;\n }\n\n // if this is a duplex stream mark the writable part as destroyed as well\n if (this._writableState) {\n this._writableState.destroyed = true;\n }\n this._destroy(err || null, function (err) {\n if (!cb && err) {\n if (!_this._writableState) {\n process.nextTick(emitErrorAndCloseNT, _this, err);\n } else if (!_this._writableState.errorEmitted) {\n _this._writableState.errorEmitted = true;\n process.nextTick(emitErrorAndCloseNT, _this, err);\n } else {\n process.nextTick(emitCloseNT, _this);\n }\n } else if (cb) {\n process.nextTick(emitCloseNT, _this);\n cb(err);\n } else {\n process.nextTick(emitCloseNT, _this);\n }\n });\n return this;\n}\nfunction emitErrorAndCloseNT(self, err) {\n emitErrorNT(self, err);\n emitCloseNT(self);\n}\nfunction emitCloseNT(self) {\n if (self._writableState && !self._writableState.emitClose) return;\n if (self._readableState && !self._readableState.emitClose) return;\n self.emit('close');\n}\nfunction undestroy() {\n if (this._readableState) {\n this._readableState.destroyed = false;\n this._readableState.reading = false;\n this._readableState.ended = false;\n this._readableState.endEmitted = false;\n }\n if (this._writableState) {\n this._writableState.destroyed = false;\n this._writableState.ended = false;\n this._writableState.ending = false;\n this._writableState.finalCalled = false;\n this._writableState.prefinished = false;\n this._writableState.finished = false;\n this._writableState.errorEmitted = false;\n }\n}\nfunction emitErrorNT(self, err) {\n self.emit('error', err);\n}\nfunction errorOrDestroy(stream, err) {\n // We have tests that rely on errors being emitted\n // in the same tick, so changing this is semver major.\n // For now when you opt-in to autoDestroy we allow\n // the error to be emitted nextTick. In a future\n // semver major update we should change the default to this.\n\n var rState = stream._readableState;\n var wState = stream._writableState;\n if (rState && rState.autoDestroy || wState && wState.autoDestroy) stream.destroy(err);else stream.emit('error', err);\n}\nmodule.exports = {\n destroy: destroy,\n undestroy: undestroy,\n errorOrDestroy: errorOrDestroy\n};","// Ported from https://github.com/mafintosh/end-of-stream with\n// permission from the author, Mathias Buus (@mafintosh).\n\n'use strict';\n\nvar ERR_STREAM_PREMATURE_CLOSE = require('../../../errors').codes.ERR_STREAM_PREMATURE_CLOSE;\nfunction once(callback) {\n var called = false;\n return function () {\n if (called) return;\n called = true;\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n callback.apply(this, args);\n };\n}\nfunction noop() {}\nfunction isRequest(stream) {\n return stream.setHeader && typeof stream.abort === 'function';\n}\nfunction eos(stream, opts, callback) {\n if (typeof opts === 'function') return eos(stream, null, opts);\n if (!opts) opts = {};\n callback = once(callback || noop);\n var readable = opts.readable || opts.readable !== false && stream.readable;\n var writable = opts.writable || opts.writable !== false && stream.writable;\n var onlegacyfinish = function onlegacyfinish() {\n if (!stream.writable) onfinish();\n };\n var writableEnded = stream._writableState && stream._writableState.finished;\n var onfinish = function onfinish() {\n writable = false;\n writableEnded = true;\n if (!readable) callback.call(stream);\n };\n var readableEnded = stream._readableState && stream._readableState.endEmitted;\n var onend = function onend() {\n readable = false;\n readableEnded = true;\n if (!writable) callback.call(stream);\n };\n var onerror = function onerror(err) {\n callback.call(stream, err);\n };\n var onclose = function onclose() {\n var err;\n if (readable && !readableEnded) {\n if (!stream._readableState || !stream._readableState.ended) err = new ERR_STREAM_PREMATURE_CLOSE();\n return callback.call(stream, err);\n }\n if (writable && !writableEnded) {\n if (!stream._writableState || !stream._writableState.ended) err = new ERR_STREAM_PREMATURE_CLOSE();\n return callback.call(stream, err);\n }\n };\n var onrequest = function onrequest() {\n stream.req.on('finish', onfinish);\n };\n if (isRequest(stream)) {\n stream.on('complete', onfinish);\n stream.on('abort', onclose);\n if (stream.req) onrequest();else stream.on('request', onrequest);\n } else if (writable && !stream._writableState) {\n // legacy streams\n stream.on('end', onlegacyfinish);\n stream.on('close', onlegacyfinish);\n }\n stream.on('end', onend);\n stream.on('finish', onfinish);\n if (opts.error !== false) stream.on('error', onerror);\n stream.on('close', onclose);\n return function () {\n stream.removeListener('complete', onfinish);\n stream.removeListener('abort', onclose);\n stream.removeListener('request', onrequest);\n if (stream.req) stream.req.removeListener('finish', onfinish);\n stream.removeListener('end', onlegacyfinish);\n stream.removeListener('close', onlegacyfinish);\n stream.removeListener('finish', onfinish);\n stream.removeListener('end', onend);\n stream.removeListener('error', onerror);\n stream.removeListener('close', onclose);\n };\n}\nmodule.exports = eos;","module.exports = function () {\n throw new Error('Readable.from is not available in the browser')\n};\n","// Ported from https://github.com/mafintosh/pump with\n// permission from the author, Mathias Buus (@mafintosh).\n\n'use strict';\n\nvar eos;\nfunction once(callback) {\n var called = false;\n return function () {\n if (called) return;\n called = true;\n callback.apply(void 0, arguments);\n };\n}\nvar _require$codes = require('../../../errors').codes,\n ERR_MISSING_ARGS = _require$codes.ERR_MISSING_ARGS,\n ERR_STREAM_DESTROYED = _require$codes.ERR_STREAM_DESTROYED;\nfunction noop(err) {\n // Rethrow the error if it exists to avoid swallowing it\n if (err) throw err;\n}\nfunction isRequest(stream) {\n return stream.setHeader && typeof stream.abort === 'function';\n}\nfunction destroyer(stream, reading, writing, callback) {\n callback = once(callback);\n var closed = false;\n stream.on('close', function () {\n closed = true;\n });\n if (eos === undefined) eos = require('./end-of-stream');\n eos(stream, {\n readable: reading,\n writable: writing\n }, function (err) {\n if (err) return callback(err);\n closed = true;\n callback();\n });\n var destroyed = false;\n return function (err) {\n if (closed) return;\n if (destroyed) return;\n destroyed = true;\n\n // request.destroy just do .end - .abort is what we want\n if (isRequest(stream)) return stream.abort();\n if (typeof stream.destroy === 'function') return stream.destroy();\n callback(err || new ERR_STREAM_DESTROYED('pipe'));\n };\n}\nfunction call(fn) {\n fn();\n}\nfunction pipe(from, to) {\n return from.pipe(to);\n}\nfunction popCallback(streams) {\n if (!streams.length) return noop;\n if (typeof streams[streams.length - 1] !== 'function') return noop;\n return streams.pop();\n}\nfunction pipeline() {\n for (var _len = arguments.length, streams = new Array(_len), _key = 0; _key < _len; _key++) {\n streams[_key] = arguments[_key];\n }\n var callback = popCallback(streams);\n if (Array.isArray(streams[0])) streams = streams[0];\n if (streams.length < 2) {\n throw new ERR_MISSING_ARGS('streams');\n }\n var error;\n var destroys = streams.map(function (stream, i) {\n var reading = i < streams.length - 1;\n var writing = i > 0;\n return destroyer(stream, reading, writing, function (err) {\n if (!error) error = err;\n if (err) destroys.forEach(call);\n if (reading) return;\n destroys.forEach(call);\n callback(error);\n });\n });\n return streams.reduce(pipe);\n}\nmodule.exports = pipeline;","'use strict';\n\nvar ERR_INVALID_OPT_VALUE = require('../../../errors').codes.ERR_INVALID_OPT_VALUE;\nfunction highWaterMarkFrom(options, isDuplex, duplexKey) {\n return options.highWaterMark != null ? options.highWaterMark : isDuplex ? options[duplexKey] : null;\n}\nfunction getHighWaterMark(state, options, duplexKey, isDuplex) {\n var hwm = highWaterMarkFrom(options, isDuplex, duplexKey);\n if (hwm != null) {\n if (!(isFinite(hwm) && Math.floor(hwm) === hwm) || hwm < 0) {\n var name = isDuplex ? duplexKey : 'highWaterMark';\n throw new ERR_INVALID_OPT_VALUE(name, hwm);\n }\n return Math.floor(hwm);\n }\n\n // Default value\n return state.objectMode ? 16 : 16 * 1024;\n}\nmodule.exports = {\n getHighWaterMark: getHighWaterMark\n};","module.exports = require('events').EventEmitter;\n","exports = module.exports = require('./lib/_stream_readable.js');\nexports.Stream = exports;\nexports.Readable = exports;\nexports.Writable = require('./lib/_stream_writable.js');\nexports.Duplex = require('./lib/_stream_duplex.js');\nexports.Transform = require('./lib/_stream_transform.js');\nexports.PassThrough = require('./lib/_stream_passthrough.js');\nexports.finished = require('./lib/internal/streams/end-of-stream.js');\nexports.pipeline = require('./lib/internal/streams/pipeline.js');\n","/*! safe-buffer. MIT License. Feross Aboukhadijeh */\n/* eslint-disable node/no-deprecated-api */\nvar buffer = require('buffer')\nvar Buffer = buffer.Buffer\n\n// alternative to using Object.keys for old browsers\nfunction copyProps (src, dst) {\n for (var key in src) {\n dst[key] = src[key]\n }\n}\nif (Buffer.from && Buffer.alloc && Buffer.allocUnsafe && Buffer.allocUnsafeSlow) {\n module.exports = buffer\n} else {\n // Copy properties from require('buffer')\n copyProps(buffer, exports)\n exports.Buffer = SafeBuffer\n}\n\nfunction SafeBuffer (arg, encodingOrOffset, length) {\n return Buffer(arg, encodingOrOffset, length)\n}\n\nSafeBuffer.prototype = Object.create(Buffer.prototype)\n\n// Copy static methods from Buffer\ncopyProps(Buffer, SafeBuffer)\n\nSafeBuffer.from = function (arg, encodingOrOffset, length) {\n if (typeof arg === 'number') {\n throw new TypeError('Argument must not be a number')\n }\n return Buffer(arg, encodingOrOffset, length)\n}\n\nSafeBuffer.alloc = function (size, fill, encoding) {\n if (typeof size !== 'number') {\n throw new TypeError('Argument must be a number')\n }\n var buf = Buffer(size)\n if (fill !== undefined) {\n if (typeof encoding === 'string') {\n buf.fill(fill, encoding)\n } else {\n buf.fill(fill)\n }\n } else {\n buf.fill(0)\n }\n return buf\n}\n\nSafeBuffer.allocUnsafe = function (size) {\n if (typeof size !== 'number') {\n throw new TypeError('Argument must be a number')\n }\n return Buffer(size)\n}\n\nSafeBuffer.allocUnsafeSlow = function (size) {\n if (typeof size !== 'number') {\n throw new TypeError('Argument must be a number')\n }\n return buffer.SlowBuffer(size)\n}\n","// Copyright Joyent, Inc. and other Node contributors.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a\n// copy of this software and associated documentation files (the\n// \"Software\"), to deal in the Software without restriction, including\n// without limitation the rights to use, copy, modify, merge, publish,\n// distribute, sublicense, and/or sell copies of the Software, and to permit\n// persons to whom the Software is furnished to do so, subject to the\n// following conditions:\n//\n// The above copyright notice and this permission notice shall be included\n// in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS\n// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN\n// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,\n// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR\n// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE\n// USE OR OTHER DEALINGS IN THE SOFTWARE.\n\nmodule.exports = Stream;\n\nvar EE = require('events').EventEmitter;\nvar inherits = require('inherits');\n\ninherits(Stream, EE);\nStream.Readable = require('readable-stream/lib/_stream_readable.js');\nStream.Writable = require('readable-stream/lib/_stream_writable.js');\nStream.Duplex = require('readable-stream/lib/_stream_duplex.js');\nStream.Transform = require('readable-stream/lib/_stream_transform.js');\nStream.PassThrough = require('readable-stream/lib/_stream_passthrough.js');\nStream.finished = require('readable-stream/lib/internal/streams/end-of-stream.js')\nStream.pipeline = require('readable-stream/lib/internal/streams/pipeline.js')\n\n// Backwards-compat with node 0.4.x\nStream.Stream = Stream;\n\n\n\n// old-style streams. Note that the pipe method (the only relevant\n// part of this class) is overridden in the Readable class.\n\nfunction Stream() {\n EE.call(this);\n}\n\nStream.prototype.pipe = function(dest, options) {\n var source = this;\n\n function ondata(chunk) {\n if (dest.writable) {\n if (false === dest.write(chunk) && source.pause) {\n source.pause();\n }\n }\n }\n\n source.on('data', ondata);\n\n function ondrain() {\n if (source.readable && source.resume) {\n source.resume();\n }\n }\n\n dest.on('drain', ondrain);\n\n // If the 'end' option is not supplied, dest.end() will be called when\n // source gets the 'end' or 'close' events. Only dest.end() once.\n if (!dest._isStdio && (!options || options.end !== false)) {\n source.on('end', onend);\n source.on('close', onclose);\n }\n\n var didOnEnd = false;\n function onend() {\n if (didOnEnd) return;\n didOnEnd = true;\n\n dest.end();\n }\n\n\n function onclose() {\n if (didOnEnd) return;\n didOnEnd = true;\n\n if (typeof dest.destroy === 'function') dest.destroy();\n }\n\n // don't leave dangling pipes when there are errors.\n function onerror(er) {\n cleanup();\n if (EE.listenerCount(this, 'error') === 0) {\n throw er; // Unhandled stream error in pipe.\n }\n }\n\n source.on('error', onerror);\n dest.on('error', onerror);\n\n // remove all the event listeners that were added.\n function cleanup() {\n source.removeListener('data', ondata);\n dest.removeListener('drain', ondrain);\n\n source.removeListener('end', onend);\n source.removeListener('close', onclose);\n\n source.removeListener('error', onerror);\n dest.removeListener('error', onerror);\n\n source.removeListener('end', cleanup);\n source.removeListener('close', cleanup);\n\n dest.removeListener('close', cleanup);\n }\n\n source.on('end', cleanup);\n source.on('close', cleanup);\n\n dest.on('close', cleanup);\n\n dest.emit('pipe', source);\n\n // Allow for unix-like usage: A.pipe(B).pipe(C)\n return dest;\n};\n","var ClientRequest = require('./lib/request')\nvar response = require('./lib/response')\nvar extend = require('xtend')\nvar statusCodes = require('builtin-status-codes')\nvar url = require('url')\n\nvar http = exports\n\nhttp.request = function (opts, cb) {\n\tif (typeof opts === 'string')\n\t\topts = url.parse(opts)\n\telse\n\t\topts = extend(opts)\n\n\t// Normally, the page is loaded from http or https, so not specifying a protocol\n\t// will result in a (valid) protocol-relative url. However, this won't work if\n\t// the protocol is something else, like 'file:'\n\tvar defaultProtocol = global.location.protocol.search(/^https?:$/) === -1 ? 'http:' : ''\n\n\tvar protocol = opts.protocol || defaultProtocol\n\tvar host = opts.hostname || opts.host\n\tvar port = opts.port\n\tvar path = opts.path || '/'\n\n\t// Necessary for IPv6 addresses\n\tif (host && host.indexOf(':') !== -1)\n\t\thost = '[' + host + ']'\n\n\t// This may be a relative url. The browser should always be able to interpret it correctly.\n\topts.url = (host ? (protocol + '//' + host) : '') + (port ? ':' + port : '') + path\n\topts.method = (opts.method || 'GET').toUpperCase()\n\topts.headers = opts.headers || {}\n\n\t// Also valid opts.auth, opts.mode\n\n\tvar req = new ClientRequest(opts)\n\tif (cb)\n\t\treq.on('response', cb)\n\treturn req\n}\n\nhttp.get = function get (opts, cb) {\n\tvar req = http.request(opts, cb)\n\treq.end()\n\treturn req\n}\n\nhttp.ClientRequest = ClientRequest\nhttp.IncomingMessage = response.IncomingMessage\n\nhttp.Agent = function () {}\nhttp.Agent.defaultMaxSockets = 4\n\nhttp.globalAgent = new http.Agent()\n\nhttp.STATUS_CODES = statusCodes\n\nhttp.METHODS = [\n\t'CHECKOUT',\n\t'CONNECT',\n\t'COPY',\n\t'DELETE',\n\t'GET',\n\t'HEAD',\n\t'LOCK',\n\t'M-SEARCH',\n\t'MERGE',\n\t'MKACTIVITY',\n\t'MKCOL',\n\t'MOVE',\n\t'NOTIFY',\n\t'OPTIONS',\n\t'PATCH',\n\t'POST',\n\t'PROPFIND',\n\t'PROPPATCH',\n\t'PURGE',\n\t'PUT',\n\t'REPORT',\n\t'SEARCH',\n\t'SUBSCRIBE',\n\t'TRACE',\n\t'UNLOCK',\n\t'UNSUBSCRIBE'\n]","exports.fetch = isFunction(global.fetch) && isFunction(global.ReadableStream)\n\nexports.writableStream = isFunction(global.WritableStream)\n\nexports.abortController = isFunction(global.AbortController)\n\n// The xhr request to example.com may violate some restrictive CSP configurations,\n// so if we're running in a browser that supports `fetch`, avoid calling getXHR()\n// and assume support for certain features below.\nvar xhr\nfunction getXHR () {\n\t// Cache the xhr value\n\tif (xhr !== undefined) return xhr\n\n\tif (global.XMLHttpRequest) {\n\t\txhr = new global.XMLHttpRequest()\n\t\t// If XDomainRequest is available (ie only, where xhr might not work\n\t\t// cross domain), use the page location. Otherwise use example.com\n\t\t// Note: this doesn't actually make an http request.\n\t\ttry {\n\t\t\txhr.open('GET', global.XDomainRequest ? '/' : 'https://example.com')\n\t\t} catch(e) {\n\t\t\txhr = null\n\t\t}\n\t} else {\n\t\t// Service workers don't have XHR\n\t\txhr = null\n\t}\n\treturn xhr\n}\n\nfunction checkTypeSupport (type) {\n\tvar xhr = getXHR()\n\tif (!xhr) return false\n\ttry {\n\t\txhr.responseType = type\n\t\treturn xhr.responseType === type\n\t} catch (e) {}\n\treturn false\n}\n\n// If fetch is supported, then arraybuffer will be supported too. Skip calling\n// checkTypeSupport(), since that calls getXHR().\nexports.arraybuffer = exports.fetch || checkTypeSupport('arraybuffer')\n\n// These next two tests unavoidably show warnings in Chrome. Since fetch will always\n// be used if it's available, just return false for these to avoid the warnings.\nexports.msstream = !exports.fetch && checkTypeSupport('ms-stream')\nexports.mozchunkedarraybuffer = !exports.fetch && checkTypeSupport('moz-chunked-arraybuffer')\n\n// If fetch is supported, then overrideMimeType will be supported too. Skip calling\n// getXHR().\nexports.overrideMimeType = exports.fetch || (getXHR() ? isFunction(getXHR().overrideMimeType) : false)\n\nfunction isFunction (value) {\n\treturn typeof value === 'function'\n}\n\nxhr = null // Help gc\n","var capability = require('./capability')\nvar inherits = require('inherits')\nvar response = require('./response')\nvar stream = require('readable-stream')\n\nvar IncomingMessage = response.IncomingMessage\nvar rStates = response.readyStates\n\nfunction decideMode (preferBinary, useFetch) {\n\tif (capability.fetch && useFetch) {\n\t\treturn 'fetch'\n\t} else if (capability.mozchunkedarraybuffer) {\n\t\treturn 'moz-chunked-arraybuffer'\n\t} else if (capability.msstream) {\n\t\treturn 'ms-stream'\n\t} else if (capability.arraybuffer && preferBinary) {\n\t\treturn 'arraybuffer'\n\t} else {\n\t\treturn 'text'\n\t}\n}\n\nvar ClientRequest = module.exports = function (opts) {\n\tvar self = this\n\tstream.Writable.call(self)\n\n\tself._opts = opts\n\tself._body = []\n\tself._headers = {}\n\tif (opts.auth)\n\t\tself.setHeader('Authorization', 'Basic ' + Buffer.from(opts.auth).toString('base64'))\n\tObject.keys(opts.headers).forEach(function (name) {\n\t\tself.setHeader(name, opts.headers[name])\n\t})\n\n\tvar preferBinary\n\tvar useFetch = true\n\tif (opts.mode === 'disable-fetch' || ('requestTimeout' in opts && !capability.abortController)) {\n\t\t// If the use of XHR should be preferred. Not typically needed.\n\t\tuseFetch = false\n\t\tpreferBinary = true\n\t} else if (opts.mode === 'prefer-streaming') {\n\t\t// If streaming is a high priority but binary compatibility and\n\t\t// the accuracy of the 'content-type' header aren't\n\t\tpreferBinary = false\n\t} else if (opts.mode === 'allow-wrong-content-type') {\n\t\t// If streaming is more important than preserving the 'content-type' header\n\t\tpreferBinary = !capability.overrideMimeType\n\t} else if (!opts.mode || opts.mode === 'default' || opts.mode === 'prefer-fast') {\n\t\t// Use binary if text streaming may corrupt data or the content-type header, or for speed\n\t\tpreferBinary = true\n\t} else {\n\t\tthrow new Error('Invalid value for opts.mode')\n\t}\n\tself._mode = decideMode(preferBinary, useFetch)\n\tself._fetchTimer = null\n\tself._socketTimeout = null\n\tself._socketTimer = null\n\n\tself.on('finish', function () {\n\t\tself._onFinish()\n\t})\n}\n\ninherits(ClientRequest, stream.Writable)\n\nClientRequest.prototype.setHeader = function (name, value) {\n\tvar self = this\n\tvar lowerName = name.toLowerCase()\n\t// This check is not necessary, but it prevents warnings from browsers about setting unsafe\n\t// headers. To be honest I'm not entirely sure hiding these warnings is a good thing, but\n\t// http-browserify did it, so I will too.\n\tif (unsafeHeaders.indexOf(lowerName) !== -1)\n\t\treturn\n\n\tself._headers[lowerName] = {\n\t\tname: name,\n\t\tvalue: value\n\t}\n}\n\nClientRequest.prototype.getHeader = function (name) {\n\tvar header = this._headers[name.toLowerCase()]\n\tif (header)\n\t\treturn header.value\n\treturn null\n}\n\nClientRequest.prototype.removeHeader = function (name) {\n\tvar self = this\n\tdelete self._headers[name.toLowerCase()]\n}\n\nClientRequest.prototype._onFinish = function () {\n\tvar self = this\n\n\tif (self._destroyed)\n\t\treturn\n\tvar opts = self._opts\n\n\tif ('timeout' in opts && opts.timeout !== 0) {\n\t\tself.setTimeout(opts.timeout)\n\t}\n\n\tvar headersObj = self._headers\n\tvar body = null\n\tif (opts.method !== 'GET' && opts.method !== 'HEAD') {\n body = new Blob(self._body, {\n type: (headersObj['content-type'] || {}).value || ''\n });\n }\n\n\t// create flattened list of headers\n\tvar headersList = []\n\tObject.keys(headersObj).forEach(function (keyName) {\n\t\tvar name = headersObj[keyName].name\n\t\tvar value = headersObj[keyName].value\n\t\tif (Array.isArray(value)) {\n\t\t\tvalue.forEach(function (v) {\n\t\t\t\theadersList.push([name, v])\n\t\t\t})\n\t\t} else {\n\t\t\theadersList.push([name, value])\n\t\t}\n\t})\n\n\tif (self._mode === 'fetch') {\n\t\tvar signal = null\n\t\tif (capability.abortController) {\n\t\t\tvar controller = new AbortController()\n\t\t\tsignal = controller.signal\n\t\t\tself._fetchAbortController = controller\n\n\t\t\tif ('requestTimeout' in opts && opts.requestTimeout !== 0) {\n\t\t\t\tself._fetchTimer = global.setTimeout(function () {\n\t\t\t\t\tself.emit('requestTimeout')\n\t\t\t\t\tif (self._fetchAbortController)\n\t\t\t\t\t\tself._fetchAbortController.abort()\n\t\t\t\t}, opts.requestTimeout)\n\t\t\t}\n\t\t}\n\n\t\tglobal.fetch(self._opts.url, {\n\t\t\tmethod: self._opts.method,\n\t\t\theaders: headersList,\n\t\t\tbody: body || undefined,\n\t\t\tmode: 'cors',\n\t\t\tcredentials: opts.withCredentials ? 'include' : 'same-origin',\n\t\t\tsignal: signal\n\t\t}).then(function (response) {\n\t\t\tself._fetchResponse = response\n\t\t\tself._resetTimers(false)\n\t\t\tself._connect()\n\t\t}, function (reason) {\n\t\t\tself._resetTimers(true)\n\t\t\tif (!self._destroyed)\n\t\t\t\tself.emit('error', reason)\n\t\t})\n\t} else {\n\t\tvar xhr = self._xhr = new global.XMLHttpRequest()\n\t\ttry {\n\t\t\txhr.open(self._opts.method, self._opts.url, true)\n\t\t} catch (err) {\n\t\t\tprocess.nextTick(function () {\n\t\t\t\tself.emit('error', err)\n\t\t\t})\n\t\t\treturn\n\t\t}\n\n\t\t// Can't set responseType on really old browsers\n\t\tif ('responseType' in xhr)\n\t\t\txhr.responseType = self._mode\n\n\t\tif ('withCredentials' in xhr)\n\t\t\txhr.withCredentials = !!opts.withCredentials\n\n\t\tif (self._mode === 'text' && 'overrideMimeType' in xhr)\n\t\t\txhr.overrideMimeType('text/plain; charset=x-user-defined')\n\n\t\tif ('requestTimeout' in opts) {\n\t\t\txhr.timeout = opts.requestTimeout\n\t\t\txhr.ontimeout = function () {\n\t\t\t\tself.emit('requestTimeout')\n\t\t\t}\n\t\t}\n\n\t\theadersList.forEach(function (header) {\n\t\t\txhr.setRequestHeader(header[0], header[1])\n\t\t})\n\n\t\tself._response = null\n\t\txhr.onreadystatechange = function () {\n\t\t\tswitch (xhr.readyState) {\n\t\t\t\tcase rStates.LOADING:\n\t\t\t\tcase rStates.DONE:\n\t\t\t\t\tself._onXHRProgress()\n\t\t\t\t\tbreak\n\t\t\t}\n\t\t}\n\t\t// Necessary for streaming in Firefox, since xhr.response is ONLY defined\n\t\t// in onprogress, not in onreadystatechange with xhr.readyState = 3\n\t\tif (self._mode === 'moz-chunked-arraybuffer') {\n\t\t\txhr.onprogress = function () {\n\t\t\t\tself._onXHRProgress()\n\t\t\t}\n\t\t}\n\n\t\txhr.onerror = function () {\n\t\t\tif (self._destroyed)\n\t\t\t\treturn\n\t\t\tself._resetTimers(true)\n\t\t\tself.emit('error', new Error('XHR error'))\n\t\t}\n\n\t\ttry {\n\t\t\txhr.send(body)\n\t\t} catch (err) {\n\t\t\tprocess.nextTick(function () {\n\t\t\t\tself.emit('error', err)\n\t\t\t})\n\t\t\treturn\n\t\t}\n\t}\n}\n\n/**\n * Checks if xhr.status is readable and non-zero, indicating no error.\n * Even though the spec says it should be available in readyState 3,\n * accessing it throws an exception in IE8\n */\nfunction statusValid (xhr) {\n\ttry {\n\t\tvar status = xhr.status\n\t\treturn (status !== null && status !== 0)\n\t} catch (e) {\n\t\treturn false\n\t}\n}\n\nClientRequest.prototype._onXHRProgress = function () {\n\tvar self = this\n\n\tself._resetTimers(false)\n\n\tif (!statusValid(self._xhr) || self._destroyed)\n\t\treturn\n\n\tif (!self._response)\n\t\tself._connect()\n\n\tself._response._onXHRProgress(self._resetTimers.bind(self))\n}\n\nClientRequest.prototype._connect = function () {\n\tvar self = this\n\n\tif (self._destroyed)\n\t\treturn\n\n\tself._response = new IncomingMessage(self._xhr, self._fetchResponse, self._mode, self._resetTimers.bind(self))\n\tself._response.on('error', function(err) {\n\t\tself.emit('error', err)\n\t})\n\n\tself.emit('response', self._response)\n}\n\nClientRequest.prototype._write = function (chunk, encoding, cb) {\n\tvar self = this\n\n\tself._body.push(chunk)\n\tcb()\n}\n\nClientRequest.prototype._resetTimers = function (done) {\n\tvar self = this\n\n\tglobal.clearTimeout(self._socketTimer)\n\tself._socketTimer = null\n\n\tif (done) {\n\t\tglobal.clearTimeout(self._fetchTimer)\n\t\tself._fetchTimer = null\n\t} else if (self._socketTimeout) {\n\t\tself._socketTimer = global.setTimeout(function () {\n\t\t\tself.emit('timeout')\n\t\t}, self._socketTimeout)\n\t}\n}\n\nClientRequest.prototype.abort = ClientRequest.prototype.destroy = function (err) {\n\tvar self = this\n\tself._destroyed = true\n\tself._resetTimers(true)\n\tif (self._response)\n\t\tself._response._destroyed = true\n\tif (self._xhr)\n\t\tself._xhr.abort()\n\telse if (self._fetchAbortController)\n\t\tself._fetchAbortController.abort()\n\n\tif (err)\n\t\tself.emit('error', err)\n}\n\nClientRequest.prototype.end = function (data, encoding, cb) {\n\tvar self = this\n\tif (typeof data === 'function') {\n\t\tcb = data\n\t\tdata = undefined\n\t}\n\n\tstream.Writable.prototype.end.call(self, data, encoding, cb)\n}\n\nClientRequest.prototype.setTimeout = function (timeout, cb) {\n\tvar self = this\n\n\tif (cb)\n\t\tself.once('timeout', cb)\n\n\tself._socketTimeout = timeout\n\tself._resetTimers(false)\n}\n\nClientRequest.prototype.flushHeaders = function () {}\nClientRequest.prototype.setNoDelay = function () {}\nClientRequest.prototype.setSocketKeepAlive = function () {}\n\n// Taken from http://www.w3.org/TR/XMLHttpRequest/#the-setrequestheader%28%29-method\nvar unsafeHeaders = [\n\t'accept-charset',\n\t'accept-encoding',\n\t'access-control-request-headers',\n\t'access-control-request-method',\n\t'connection',\n\t'content-length',\n\t'cookie',\n\t'cookie2',\n\t'date',\n\t'dnt',\n\t'expect',\n\t'host',\n\t'keep-alive',\n\t'origin',\n\t'referer',\n\t'te',\n\t'trailer',\n\t'transfer-encoding',\n\t'upgrade',\n\t'via'\n]\n","var capability = require('./capability')\nvar inherits = require('inherits')\nvar stream = require('readable-stream')\n\nvar rStates = exports.readyStates = {\n\tUNSENT: 0,\n\tOPENED: 1,\n\tHEADERS_RECEIVED: 2,\n\tLOADING: 3,\n\tDONE: 4\n}\n\nvar IncomingMessage = exports.IncomingMessage = function (xhr, response, mode, resetTimers) {\n\tvar self = this\n\tstream.Readable.call(self)\n\n\tself._mode = mode\n\tself.headers = {}\n\tself.rawHeaders = []\n\tself.trailers = {}\n\tself.rawTrailers = []\n\n\t// Fake the 'close' event, but only once 'end' fires\n\tself.on('end', function () {\n\t\t// The nextTick is necessary to prevent the 'request' module from causing an infinite loop\n\t\tprocess.nextTick(function () {\n\t\t\tself.emit('close')\n\t\t})\n\t})\n\n\tif (mode === 'fetch') {\n\t\tself._fetchResponse = response\n\n\t\tself.url = response.url\n\t\tself.statusCode = response.status\n\t\tself.statusMessage = response.statusText\n\t\t\n\t\tresponse.headers.forEach(function (header, key){\n\t\t\tself.headers[key.toLowerCase()] = header\n\t\t\tself.rawHeaders.push(key, header)\n\t\t})\n\n\t\tif (capability.writableStream) {\n\t\t\tvar writable = new WritableStream({\n\t\t\t\twrite: function (chunk) {\n\t\t\t\t\tresetTimers(false)\n\t\t\t\t\treturn new Promise(function (resolve, reject) {\n\t\t\t\t\t\tif (self._destroyed) {\n\t\t\t\t\t\t\treject()\n\t\t\t\t\t\t} else if(self.push(Buffer.from(chunk))) {\n\t\t\t\t\t\t\tresolve()\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tself._resumeFetch = resolve\n\t\t\t\t\t\t}\n\t\t\t\t\t})\n\t\t\t\t},\n\t\t\t\tclose: function () {\n\t\t\t\t\tresetTimers(true)\n\t\t\t\t\tif (!self._destroyed)\n\t\t\t\t\t\tself.push(null)\n\t\t\t\t},\n\t\t\t\tabort: function (err) {\n\t\t\t\t\tresetTimers(true)\n\t\t\t\t\tif (!self._destroyed)\n\t\t\t\t\t\tself.emit('error', err)\n\t\t\t\t}\n\t\t\t})\n\n\t\t\ttry {\n\t\t\t\tresponse.body.pipeTo(writable).catch(function (err) {\n\t\t\t\t\tresetTimers(true)\n\t\t\t\t\tif (!self._destroyed)\n\t\t\t\t\t\tself.emit('error', err)\n\t\t\t\t})\n\t\t\t\treturn\n\t\t\t} catch (e) {} // pipeTo method isn't defined. Can't find a better way to feature test this\n\t\t}\n\t\t// fallback for when writableStream or pipeTo aren't available\n\t\tvar reader = response.body.getReader()\n\t\tfunction read () {\n\t\t\treader.read().then(function (result) {\n\t\t\t\tif (self._destroyed)\n\t\t\t\t\treturn\n\t\t\t\tresetTimers(result.done)\n\t\t\t\tif (result.done) {\n\t\t\t\t\tself.push(null)\n\t\t\t\t\treturn\n\t\t\t\t}\n\t\t\t\tself.push(Buffer.from(result.value))\n\t\t\t\tread()\n\t\t\t}).catch(function (err) {\n\t\t\t\tresetTimers(true)\n\t\t\t\tif (!self._destroyed)\n\t\t\t\t\tself.emit('error', err)\n\t\t\t})\n\t\t}\n\t\tread()\n\t} else {\n\t\tself._xhr = xhr\n\t\tself._pos = 0\n\n\t\tself.url = xhr.responseURL\n\t\tself.statusCode = xhr.status\n\t\tself.statusMessage = xhr.statusText\n\t\tvar headers = xhr.getAllResponseHeaders().split(/\\r?\\n/)\n\t\theaders.forEach(function (header) {\n\t\t\tvar matches = header.match(/^([^:]+):\\s*(.*)/)\n\t\t\tif (matches) {\n\t\t\t\tvar key = matches[1].toLowerCase()\n\t\t\t\tif (key === 'set-cookie') {\n\t\t\t\t\tif (self.headers[key] === undefined) {\n\t\t\t\t\t\tself.headers[key] = []\n\t\t\t\t\t}\n\t\t\t\t\tself.headers[key].push(matches[2])\n\t\t\t\t} else if (self.headers[key] !== undefined) {\n\t\t\t\t\tself.headers[key] += ', ' + matches[2]\n\t\t\t\t} else {\n\t\t\t\t\tself.headers[key] = matches[2]\n\t\t\t\t}\n\t\t\t\tself.rawHeaders.push(matches[1], matches[2])\n\t\t\t}\n\t\t})\n\n\t\tself._charset = 'x-user-defined'\n\t\tif (!capability.overrideMimeType) {\n\t\t\tvar mimeType = self.rawHeaders['mime-type']\n\t\t\tif (mimeType) {\n\t\t\t\tvar charsetMatch = mimeType.match(/;\\s*charset=([^;])(;|$)/)\n\t\t\t\tif (charsetMatch) {\n\t\t\t\t\tself._charset = charsetMatch[1].toLowerCase()\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (!self._charset)\n\t\t\t\tself._charset = 'utf-8' // best guess\n\t\t}\n\t}\n}\n\ninherits(IncomingMessage, stream.Readable)\n\nIncomingMessage.prototype._read = function () {\n\tvar self = this\n\n\tvar resolve = self._resumeFetch\n\tif (resolve) {\n\t\tself._resumeFetch = null\n\t\tresolve()\n\t}\n}\n\nIncomingMessage.prototype._onXHRProgress = function (resetTimers) {\n\tvar self = this\n\n\tvar xhr = self._xhr\n\n\tvar response = null\n\tswitch (self._mode) {\n\t\tcase 'text':\n\t\t\tresponse = xhr.responseText\n\t\t\tif (response.length > self._pos) {\n\t\t\t\tvar newData = response.substr(self._pos)\n\t\t\t\tif (self._charset === 'x-user-defined') {\n\t\t\t\t\tvar buffer = Buffer.alloc(newData.length)\n\t\t\t\t\tfor (var i = 0; i < newData.length; i++)\n\t\t\t\t\t\tbuffer[i] = newData.charCodeAt(i) & 0xff\n\n\t\t\t\t\tself.push(buffer)\n\t\t\t\t} else {\n\t\t\t\t\tself.push(newData, self._charset)\n\t\t\t\t}\n\t\t\t\tself._pos = response.length\n\t\t\t}\n\t\t\tbreak\n\t\tcase 'arraybuffer':\n\t\t\tif (xhr.readyState !== rStates.DONE || !xhr.response)\n\t\t\t\tbreak\n\t\t\tresponse = xhr.response\n\t\t\tself.push(Buffer.from(new Uint8Array(response)))\n\t\t\tbreak\n\t\tcase 'moz-chunked-arraybuffer': // take whole\n\t\t\tresponse = xhr.response\n\t\t\tif (xhr.readyState !== rStates.LOADING || !response)\n\t\t\t\tbreak\n\t\t\tself.push(Buffer.from(new Uint8Array(response)))\n\t\t\tbreak\n\t\tcase 'ms-stream':\n\t\t\tresponse = xhr.response\n\t\t\tif (xhr.readyState !== rStates.LOADING)\n\t\t\t\tbreak\n\t\t\tvar reader = new global.MSStreamReader()\n\t\t\treader.onprogress = function () {\n\t\t\t\tif (reader.result.byteLength > self._pos) {\n\t\t\t\t\tself.push(Buffer.from(new Uint8Array(reader.result.slice(self._pos))))\n\t\t\t\t\tself._pos = reader.result.byteLength\n\t\t\t\t}\n\t\t\t}\n\t\t\treader.onload = function () {\n\t\t\t\tresetTimers(true)\n\t\t\t\tself.push(null)\n\t\t\t}\n\t\t\t// reader.onerror = ??? // TODO: this\n\t\t\treader.readAsArrayBuffer(response)\n\t\t\tbreak\n\t}\n\n\t// The ms-stream case handles end separately in reader.onload()\n\tif (self._xhr.readyState === rStates.DONE && self._mode !== 'ms-stream') {\n\t\tresetTimers(true)\n\t\tself.push(null)\n\t}\n}\n","// Copyright Joyent, Inc. and other Node contributors.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a\n// copy of this software and associated documentation files (the\n// \"Software\"), to deal in the Software without restriction, including\n// without limitation the rights to use, copy, modify, merge, publish,\n// distribute, sublicense, and/or sell copies of the Software, and to permit\n// persons to whom the Software is furnished to do so, subject to the\n// following conditions:\n//\n// The above copyright notice and this permission notice shall be included\n// in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS\n// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN\n// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,\n// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR\n// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE\n// USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n'use strict';\n\n/**/\n\nvar Buffer = require('safe-buffer').Buffer;\n/**/\n\nvar isEncoding = Buffer.isEncoding || function (encoding) {\n encoding = '' + encoding;\n switch (encoding && encoding.toLowerCase()) {\n case 'hex':case 'utf8':case 'utf-8':case 'ascii':case 'binary':case 'base64':case 'ucs2':case 'ucs-2':case 'utf16le':case 'utf-16le':case 'raw':\n return true;\n default:\n return false;\n }\n};\n\nfunction _normalizeEncoding(enc) {\n if (!enc) return 'utf8';\n var retried;\n while (true) {\n switch (enc) {\n case 'utf8':\n case 'utf-8':\n return 'utf8';\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return 'utf16le';\n case 'latin1':\n case 'binary':\n return 'latin1';\n case 'base64':\n case 'ascii':\n case 'hex':\n return enc;\n default:\n if (retried) return; // undefined\n enc = ('' + enc).toLowerCase();\n retried = true;\n }\n }\n};\n\n// Do not cache `Buffer.isEncoding` when checking encoding names as some\n// modules monkey-patch it to support additional encodings\nfunction normalizeEncoding(enc) {\n var nenc = _normalizeEncoding(enc);\n if (typeof nenc !== 'string' && (Buffer.isEncoding === isEncoding || !isEncoding(enc))) throw new Error('Unknown encoding: ' + enc);\n return nenc || enc;\n}\n\n// StringDecoder provides an interface for efficiently splitting a series of\n// buffers into a series of JS strings without breaking apart multi-byte\n// characters.\nexports.StringDecoder = StringDecoder;\nfunction StringDecoder(encoding) {\n this.encoding = normalizeEncoding(encoding);\n var nb;\n switch (this.encoding) {\n case 'utf16le':\n this.text = utf16Text;\n this.end = utf16End;\n nb = 4;\n break;\n case 'utf8':\n this.fillLast = utf8FillLast;\n nb = 4;\n break;\n case 'base64':\n this.text = base64Text;\n this.end = base64End;\n nb = 3;\n break;\n default:\n this.write = simpleWrite;\n this.end = simpleEnd;\n return;\n }\n this.lastNeed = 0;\n this.lastTotal = 0;\n this.lastChar = Buffer.allocUnsafe(nb);\n}\n\nStringDecoder.prototype.write = function (buf) {\n if (buf.length === 0) return '';\n var r;\n var i;\n if (this.lastNeed) {\n r = this.fillLast(buf);\n if (r === undefined) return '';\n i = this.lastNeed;\n this.lastNeed = 0;\n } else {\n i = 0;\n }\n if (i < buf.length) return r ? r + this.text(buf, i) : this.text(buf, i);\n return r || '';\n};\n\nStringDecoder.prototype.end = utf8End;\n\n// Returns only complete characters in a Buffer\nStringDecoder.prototype.text = utf8Text;\n\n// Attempts to complete a partial non-UTF-8 character using bytes from a Buffer\nStringDecoder.prototype.fillLast = function (buf) {\n if (this.lastNeed <= buf.length) {\n buf.copy(this.lastChar, this.lastTotal - this.lastNeed, 0, this.lastNeed);\n return this.lastChar.toString(this.encoding, 0, this.lastTotal);\n }\n buf.copy(this.lastChar, this.lastTotal - this.lastNeed, 0, buf.length);\n this.lastNeed -= buf.length;\n};\n\n// Checks the type of a UTF-8 byte, whether it's ASCII, a leading byte, or a\n// continuation byte. If an invalid byte is detected, -2 is returned.\nfunction utf8CheckByte(byte) {\n if (byte <= 0x7F) return 0;else if (byte >> 5 === 0x06) return 2;else if (byte >> 4 === 0x0E) return 3;else if (byte >> 3 === 0x1E) return 4;\n return byte >> 6 === 0x02 ? -1 : -2;\n}\n\n// Checks at most 3 bytes at the end of a Buffer in order to detect an\n// incomplete multi-byte UTF-8 character. The total number of bytes (2, 3, or 4)\n// needed to complete the UTF-8 character (if applicable) are returned.\nfunction utf8CheckIncomplete(self, buf, i) {\n var j = buf.length - 1;\n if (j < i) return 0;\n var nb = utf8CheckByte(buf[j]);\n if (nb >= 0) {\n if (nb > 0) self.lastNeed = nb - 1;\n return nb;\n }\n if (--j < i || nb === -2) return 0;\n nb = utf8CheckByte(buf[j]);\n if (nb >= 0) {\n if (nb > 0) self.lastNeed = nb - 2;\n return nb;\n }\n if (--j < i || nb === -2) return 0;\n nb = utf8CheckByte(buf[j]);\n if (nb >= 0) {\n if (nb > 0) {\n if (nb === 2) nb = 0;else self.lastNeed = nb - 3;\n }\n return nb;\n }\n return 0;\n}\n\n// Validates as many continuation bytes for a multi-byte UTF-8 character as\n// needed or are available. If we see a non-continuation byte where we expect\n// one, we \"replace\" the validated continuation bytes we've seen so far with\n// a single UTF-8 replacement character ('\\ufffd'), to match v8's UTF-8 decoding\n// behavior. The continuation byte check is included three times in the case\n// where all of the continuation bytes for a character exist in the same buffer.\n// It is also done this way as a slight performance increase instead of using a\n// loop.\nfunction utf8CheckExtraBytes(self, buf, p) {\n if ((buf[0] & 0xC0) !== 0x80) {\n self.lastNeed = 0;\n return '\\ufffd';\n }\n if (self.lastNeed > 1 && buf.length > 1) {\n if ((buf[1] & 0xC0) !== 0x80) {\n self.lastNeed = 1;\n return '\\ufffd';\n }\n if (self.lastNeed > 2 && buf.length > 2) {\n if ((buf[2] & 0xC0) !== 0x80) {\n self.lastNeed = 2;\n return '\\ufffd';\n }\n }\n }\n}\n\n// Attempts to complete a multi-byte UTF-8 character using bytes from a Buffer.\nfunction utf8FillLast(buf) {\n var p = this.lastTotal - this.lastNeed;\n var r = utf8CheckExtraBytes(this, buf, p);\n if (r !== undefined) return r;\n if (this.lastNeed <= buf.length) {\n buf.copy(this.lastChar, p, 0, this.lastNeed);\n return this.lastChar.toString(this.encoding, 0, this.lastTotal);\n }\n buf.copy(this.lastChar, p, 0, buf.length);\n this.lastNeed -= buf.length;\n}\n\n// Returns all complete UTF-8 characters in a Buffer. If the Buffer ended on a\n// partial character, the character's bytes are buffered until the required\n// number of bytes are available.\nfunction utf8Text(buf, i) {\n var total = utf8CheckIncomplete(this, buf, i);\n if (!this.lastNeed) return buf.toString('utf8', i);\n this.lastTotal = total;\n var end = buf.length - (total - this.lastNeed);\n buf.copy(this.lastChar, 0, end);\n return buf.toString('utf8', i, end);\n}\n\n// For UTF-8, a replacement character is added when ending on a partial\n// character.\nfunction utf8End(buf) {\n var r = buf && buf.length ? this.write(buf) : '';\n if (this.lastNeed) return r + '\\ufffd';\n return r;\n}\n\n// UTF-16LE typically needs two bytes per character, but even if we have an even\n// number of bytes available, we need to check if we end on a leading/high\n// surrogate. In that case, we need to wait for the next two bytes in order to\n// decode the last character properly.\nfunction utf16Text(buf, i) {\n if ((buf.length - i) % 2 === 0) {\n var r = buf.toString('utf16le', i);\n if (r) {\n var c = r.charCodeAt(r.length - 1);\n if (c >= 0xD800 && c <= 0xDBFF) {\n this.lastNeed = 2;\n this.lastTotal = 4;\n this.lastChar[0] = buf[buf.length - 2];\n this.lastChar[1] = buf[buf.length - 1];\n return r.slice(0, -1);\n }\n }\n return r;\n }\n this.lastNeed = 1;\n this.lastTotal = 2;\n this.lastChar[0] = buf[buf.length - 1];\n return buf.toString('utf16le', i, buf.length - 1);\n}\n\n// For UTF-16LE we do not explicitly append special replacement characters if we\n// end on a partial character, we simply let v8 handle that.\nfunction utf16End(buf) {\n var r = buf && buf.length ? this.write(buf) : '';\n if (this.lastNeed) {\n var end = this.lastTotal - this.lastNeed;\n return r + this.lastChar.toString('utf16le', 0, end);\n }\n return r;\n}\n\nfunction base64Text(buf, i) {\n var n = (buf.length - i) % 3;\n if (n === 0) return buf.toString('base64', i);\n this.lastNeed = 3 - n;\n this.lastTotal = 3;\n if (n === 1) {\n this.lastChar[0] = buf[buf.length - 1];\n } else {\n this.lastChar[0] = buf[buf.length - 2];\n this.lastChar[1] = buf[buf.length - 1];\n }\n return buf.toString('base64', i, buf.length - n);\n}\n\nfunction base64End(buf) {\n var r = buf && buf.length ? this.write(buf) : '';\n if (this.lastNeed) return r + this.lastChar.toString('base64', 0, 3 - this.lastNeed);\n return r;\n}\n\n// Pass bytes on through for single-byte encodings (e.g. ascii, latin1, hex)\nfunction simpleWrite(buf) {\n return buf.toString(this.encoding);\n}\n\nfunction simpleEnd(buf) {\n return buf && buf.length ? this.write(buf) : '';\n}","\n/**\n * Module exports.\n */\n\nmodule.exports = deprecate;\n\n/**\n * Mark that a method should not be used.\n * Returns a modified function which warns once by default.\n *\n * If `localStorage.noDeprecation = true` is set, then it is a no-op.\n *\n * If `localStorage.throwDeprecation = true` is set, then deprecated functions\n * will throw an Error when invoked.\n *\n * If `localStorage.traceDeprecation = true` is set, then deprecated functions\n * will invoke `console.trace()` instead of `console.error()`.\n *\n * @param {Function} fn - the function to deprecate\n * @param {String} msg - the string to print to the console when `fn` is invoked\n * @returns {Function} a new \"deprecated\" version of `fn`\n * @api public\n */\n\nfunction deprecate (fn, msg) {\n if (config('noDeprecation')) {\n return fn;\n }\n\n var warned = false;\n function deprecated() {\n if (!warned) {\n if (config('throwDeprecation')) {\n throw new Error(msg);\n } else if (config('traceDeprecation')) {\n console.trace(msg);\n } else {\n console.warn(msg);\n }\n warned = true;\n }\n return fn.apply(this, arguments);\n }\n\n return deprecated;\n}\n\n/**\n * Checks `localStorage` for boolean values for the given `name`.\n *\n * @param {String} name\n * @returns {Boolean}\n * @api private\n */\n\nfunction config (name) {\n // accessing global.localStorage can trigger a DOMException in sandboxed iframes\n try {\n if (!global.localStorage) return false;\n } catch (_) {\n return false;\n }\n var val = global.localStorage[name];\n if (null == val) return false;\n return String(val).toLowerCase() === 'true';\n}\n","module.exports = extend\n\nvar hasOwnProperty = Object.prototype.hasOwnProperty;\n\nfunction extend() {\n var target = {}\n\n for (var i = 0; i < arguments.length; i++) {\n var source = arguments[i]\n\n for (var key in source) {\n if (hasOwnProperty.call(source, key)) {\n target[key] = source[key]\n }\n }\n }\n\n return target\n}\n","import { getCurrentUser as A, onRequestTokenUpdate as ue, getRequestToken as de } from \"@nextcloud/auth\";\nimport { getLoggerBuilder as q } from \"@nextcloud/logger\";\nimport { getCanonicalLocale as ae } from \"@nextcloud/l10n\";\nimport { join as le, basename as fe, extname as ce, dirname as I } from \"path\";\nimport { encodePath as he } from \"@nextcloud/paths\";\nimport { generateRemoteUrl as pe } from \"@nextcloud/router\";\nimport { createClient as ge, getPatcher as we } from \"webdav\";\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 me = (e) => e === null ? q().setApp(\"files\").build() : q().setApp(\"files\").setUid(e.uid).build(), m = me(A());\n/**\n * @copyright Copyright (c) 2021 John Molakvoæ \n *\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 */\nclass Ne {\n _entries = [];\n registerEntry(t) {\n this.validateEntry(t), this._entries.push(t);\n }\n unregisterEntry(t) {\n const r = typeof t == \"string\" ? this.getEntryIndex(t) : this.getEntryIndex(t.id);\n if (r === -1) {\n m.warn(\"Entry not found, nothing removed\", { entry: t, entries: this.getEntries() });\n return;\n }\n this._entries.splice(r, 1);\n }\n /**\n * Get the list of registered entries\n *\n * @param {Folder} context the creation context. Usually the current folder\n */\n getEntries(t) {\n return t ? this._entries.filter((r) => typeof r.enabled == \"function\" ? r.enabled(t) : !0) : this._entries;\n }\n getEntryIndex(t) {\n return this._entries.findIndex((r) => r.id === t);\n }\n validateEntry(t) {\n if (!t.id || !t.displayName || !(t.iconSvgInline || t.iconClass) || !t.handler)\n throw new Error(\"Invalid entry\");\n if (typeof t.id != \"string\" || typeof t.displayName != \"string\")\n throw new Error(\"Invalid id or displayName property\");\n if (t.iconClass && typeof t.iconClass != \"string\" || t.iconSvgInline && typeof t.iconSvgInline != \"string\")\n throw new Error(\"Invalid icon provided\");\n if (t.enabled !== void 0 && typeof t.enabled != \"function\")\n throw new Error(\"Invalid enabled property\");\n if (typeof t.handler != \"function\")\n throw new Error(\"Invalid handler property\");\n if (\"order\" in t && typeof t.order != \"number\")\n throw new Error(\"Invalid order property\");\n if (this.getEntryIndex(t.id) !== -1)\n throw new Error(\"Duplicate entry\");\n }\n}\nconst F = function() {\n return typeof window._nc_newfilemenu > \"u\" && (window._nc_newfilemenu = new Ne(), m.debug(\"NewFileMenu initialized\")), window._nc_newfilemenu;\n};\n/**\n * @copyright 2019 Christoph Wurst \n *\n * @author Christoph Wurst \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 C = [\"B\", \"KB\", \"MB\", \"GB\", \"TB\", \"PB\"], P = [\"B\", \"KiB\", \"MiB\", \"GiB\", \"TiB\", \"PiB\"];\nfunction Yt(e, t = !1, r = !1, s = !1) {\n r = r && !s, typeof e == \"string\" && (e = Number(e));\n let n = e > 0 ? Math.floor(Math.log(e) / Math.log(s ? 1e3 : 1024)) : 0;\n n = Math.min((r ? P.length : C.length) - 1, n);\n const i = r ? P[n] : C[n];\n let d = (e / Math.pow(s ? 1e3 : 1024, n)).toFixed(1);\n return t === !0 && n === 0 ? (d !== \"0.0\" ? \"< 1 \" : \"0 \") + (r ? P[1] : C[1]) : (n < 2 ? d = parseFloat(d).toFixed(0) : d = parseFloat(d).toLocaleString(ae()), d + \" \" + i);\n}\nfunction Jt(e, t = !1) {\n try {\n e = `${e}`.toLocaleLowerCase().replaceAll(/\\s+/g, \"\").replaceAll(\",\", \".\");\n } catch {\n return null;\n }\n const r = e.match(/^([0-9]*(\\.[0-9]*)?)([kmgtp]?)(i?)b?$/);\n if (r === null || r[1] === \".\" || r[1] === \"\")\n return null;\n const s = {\n \"\": 0,\n k: 1,\n m: 2,\n g: 3,\n t: 4,\n p: 5,\n e: 6\n }, n = `${r[1]}`, i = r[4] === \"i\" || t ? 1024 : 1e3;\n return Math.round(Number.parseFloat(n) * i ** s[r[3]]);\n}\n/**\n * @copyright Copyright (c) 2023 John Molakvoæ \n *\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 */\nvar Z = /* @__PURE__ */ ((e) => (e.DEFAULT = \"default\", e.HIDDEN = \"hidden\", e))(Z || {});\nclass Qt {\n _action;\n constructor(t) {\n this.validateAction(t), this._action = t;\n }\n get id() {\n return this._action.id;\n }\n get displayName() {\n return this._action.displayName;\n }\n get title() {\n return this._action.title;\n }\n get iconSvgInline() {\n return this._action.iconSvgInline;\n }\n get enabled() {\n return this._action.enabled;\n }\n get exec() {\n return this._action.exec;\n }\n get execBatch() {\n return this._action.execBatch;\n }\n get order() {\n return this._action.order;\n }\n get parent() {\n return this._action.parent;\n }\n get default() {\n return this._action.default;\n }\n get inline() {\n return this._action.inline;\n }\n get renderInline() {\n return this._action.renderInline;\n }\n validateAction(t) {\n if (!t.id || typeof t.id != \"string\")\n throw new Error(\"Invalid id\");\n if (!t.displayName || typeof t.displayName != \"function\")\n throw new Error(\"Invalid displayName function\");\n if (\"title\" in t && typeof t.title != \"function\")\n throw new Error(\"Invalid title function\");\n if (!t.iconSvgInline || typeof t.iconSvgInline != \"function\")\n throw new Error(\"Invalid iconSvgInline function\");\n if (!t.exec || typeof t.exec != \"function\")\n throw new Error(\"Invalid exec function\");\n if (\"enabled\" in t && typeof t.enabled != \"function\")\n throw new Error(\"Invalid enabled function\");\n if (\"execBatch\" in t && typeof t.execBatch != \"function\")\n throw new Error(\"Invalid execBatch function\");\n if (\"order\" in t && typeof t.order != \"number\")\n throw new Error(\"Invalid order\");\n if (\"parent\" in t && typeof t.parent != \"string\")\n throw new Error(\"Invalid parent\");\n if (t.default && !Object.values(Z).includes(t.default))\n throw new Error(\"Invalid default\");\n if (\"inline\" in t && typeof t.inline != \"function\")\n throw new Error(\"Invalid inline function\");\n if (\"renderInline\" in t && typeof t.renderInline != \"function\")\n throw new Error(\"Invalid renderInline function\");\n }\n}\nconst Dt = function(e) {\n if (typeof window._nc_fileactions > \"u\" && (window._nc_fileactions = [], m.debug(\"FileActions initialized\")), window._nc_fileactions.find((t) => t.id === e.id)) {\n m.error(`FileAction ${e.id} already registered`, { action: e });\n return;\n }\n window._nc_fileactions.push(e);\n}, er = function() {\n return typeof window._nc_fileactions > \"u\" && (window._nc_fileactions = [], m.debug(\"FileActions initialized\")), window._nc_fileactions;\n};\n/**\n * @copyright Copyright (c) 2023 John Molakvoæ \n *\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 */\nclass tr {\n _header;\n constructor(t) {\n this.validateHeader(t), this._header = t;\n }\n get id() {\n return this._header.id;\n }\n get order() {\n return this._header.order;\n }\n get enabled() {\n return this._header.enabled;\n }\n get render() {\n return this._header.render;\n }\n get updated() {\n return this._header.updated;\n }\n validateHeader(t) {\n if (!t.id || !t.render || !t.updated)\n throw new Error(\"Invalid header: id, render and updated are required\");\n if (typeof t.id != \"string\")\n throw new Error(\"Invalid id property\");\n if (t.enabled !== void 0 && typeof t.enabled != \"function\")\n throw new Error(\"Invalid enabled property\");\n if (t.render && typeof t.render != \"function\")\n throw new Error(\"Invalid render property\");\n if (t.updated && typeof t.updated != \"function\")\n throw new Error(\"Invalid updated property\");\n }\n}\nconst rr = function(e) {\n if (typeof window._nc_filelistheader > \"u\" && (window._nc_filelistheader = [], m.debug(\"FileListHeaders initialized\")), window._nc_filelistheader.find((t) => t.id === e.id)) {\n m.error(`Header ${e.id} already registered`, { header: e });\n return;\n }\n window._nc_filelistheader.push(e);\n}, nr = function() {\n return typeof window._nc_filelistheader > \"u\" && (window._nc_filelistheader = [], m.debug(\"FileListHeaders initialized\")), window._nc_filelistheader;\n};\n/**\n * @copyright Copyright (c) 2022 John Molakvoæ \n *\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 */\nvar N = /* @__PURE__ */ ((e) => (e[e.NONE = 0] = \"NONE\", e[e.CREATE = 4] = \"CREATE\", e[e.READ = 1] = \"READ\", e[e.UPDATE = 2] = \"UPDATE\", e[e.DELETE = 8] = \"DELETE\", e[e.SHARE = 16] = \"SHARE\", e[e.ALL = 31] = \"ALL\", e))(N || {});\n/**\n * @copyright Copyright (c) 2023 John Molakvoæ \n *\n * @author John Molakvoæ \n * @author Ferdinand Thiessen \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 j = [\n \"d:getcontentlength\",\n \"d:getcontenttype\",\n \"d:getetag\",\n \"d:getlastmodified\",\n \"d:quota-available-bytes\",\n \"d:resourcetype\",\n \"nc:has-preview\",\n \"nc:is-encrypted\",\n \"nc:mount-type\",\n \"nc:share-attributes\",\n \"oc:comments-unread\",\n \"oc:favorite\",\n \"oc:fileid\",\n \"oc:owner-display-name\",\n \"oc:owner-id\",\n \"oc:permissions\",\n \"oc:share-types\",\n \"oc:size\",\n \"ocs:share-permissions\"\n], Y = {\n d: \"DAV:\",\n nc: \"http://nextcloud.org/ns\",\n oc: \"http://owncloud.org/ns\",\n ocs: \"http://open-collaboration-services.org/ns\"\n}, ir = function(e, t = { nc: \"http://nextcloud.org/ns\" }) {\n typeof window._nc_dav_properties > \"u\" && (window._nc_dav_properties = [...j], window._nc_dav_namespaces = { ...Y });\n const r = { ...window._nc_dav_namespaces, ...t };\n if (window._nc_dav_properties.find((n) => n === e))\n return m.error(`${e} already registered`, { prop: e }), !1;\n if (e.startsWith(\"<\") || e.split(\":\").length !== 2)\n return m.error(`${e} is not valid. See example: 'oc:fileid'`, { prop: e }), !1;\n const s = e.split(\":\")[0];\n return r[s] ? (window._nc_dav_properties.push(e), window._nc_dav_namespaces = r, !0) : (m.error(`${e} namespace unknown`, { prop: e, namespaces: r }), !1);\n}, V = function() {\n return typeof window._nc_dav_properties > \"u\" && (window._nc_dav_properties = [...j]), window._nc_dav_properties.map((e) => `<${e} />`).join(\" \");\n}, L = function() {\n return typeof window._nc_dav_namespaces > \"u\" && (window._nc_dav_namespaces = { ...Y }), Object.keys(window._nc_dav_namespaces).map((e) => `xmlns:${e}=\"${window._nc_dav_namespaces?.[e]}\"`).join(\" \");\n}, sr = function() {\n return `\n\t\t\n\t\t\t\n\t\t\t\t${V()}\n\t\t\t\n\t\t`;\n}, Ee = function() {\n return `\n\t\t\n\t\t\t\n\t\t\t\t${V()}\n\t\t\t\n\t\t\t\n\t\t\t\t1\n\t\t\t\n\t\t`;\n}, or = function(e) {\n return `\n\n\t\n\t\t\n\t\t\t\n\t\t\t\t${V()}\n\t\t\t\n\t\t\n\t\t\n\t\t\t\n\t\t\t\t/files/${A()?.uid}/\n\t\t\t\tinfinity\n\t\t\t\n\t\t\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\thttpd/unix-directory\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t0\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t${e}\n\t\t\t\t\n\t\t\t\n\t\t\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\n\t\t\n\t\t\t100\n\t\t\t0\n\t\t\n\t\n`;\n};\n/**\n * @copyright Copyright (c) 2023 John Molakvoæ \n *\n * @author John Molakvoæ \n * @author Ferdinand Thiessen \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 be = function(e = \"\") {\n let t = N.NONE;\n return e && ((e.includes(\"C\") || e.includes(\"K\")) && (t |= N.CREATE), e.includes(\"G\") && (t |= N.READ), (e.includes(\"W\") || e.includes(\"N\") || e.includes(\"V\")) && (t |= N.UPDATE), e.includes(\"D\") && (t |= N.DELETE), e.includes(\"R\") && (t |= N.SHARE)), t;\n};\n/**\n * @copyright Copyright (c) 2022 John Molakvoæ \n *\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 */\nvar R = /* @__PURE__ */ ((e) => (e.Folder = \"folder\", e.File = \"file\", e))(R || {});\n/**\n * @copyright Copyright (c) 2022 John Molakvoæ \n *\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 J = function(e, t) {\n return e.match(t) !== null;\n}, X = (e, t) => {\n if (e.id && typeof e.id != \"number\")\n throw new Error(\"Invalid id type of value\");\n if (!e.source)\n throw new Error(\"Missing mandatory source\");\n try {\n new URL(e.source);\n } catch {\n throw new Error(\"Invalid source format, source must be a valid URL\");\n }\n if (!e.source.startsWith(\"http\"))\n throw new Error(\"Invalid source format, only http(s) is supported\");\n if (e.mtime && !(e.mtime instanceof Date))\n throw new Error(\"Invalid mtime type\");\n if (e.crtime && !(e.crtime instanceof Date))\n throw new Error(\"Invalid crtime type\");\n if (!e.mime || typeof e.mime != \"string\" || !e.mime.match(/^[-\\w.]+\\/[-+\\w.]+$/gi))\n throw new Error(\"Missing or invalid mandatory mime\");\n if (\"size\" in e && typeof e.size != \"number\" && e.size !== void 0)\n throw new Error(\"Invalid size type\");\n if (\"permissions\" in e && e.permissions !== void 0 && !(typeof e.permissions == \"number\" && e.permissions >= N.NONE && e.permissions <= N.ALL))\n throw new Error(\"Invalid permissions\");\n if (e.owner && e.owner !== null && typeof e.owner != \"string\")\n throw new Error(\"Invalid owner type\");\n if (e.attributes && typeof e.attributes != \"object\")\n throw new Error(\"Invalid attributes type\");\n if (e.root && typeof e.root != \"string\")\n throw new Error(\"Invalid root type\");\n if (e.root && !e.root.startsWith(\"/\"))\n throw new Error(\"Root must start with a leading slash\");\n if (e.root && !e.source.includes(e.root))\n throw new Error(\"Root must be part of the source\");\n if (e.root && J(e.source, t)) {\n const r = e.source.match(t)[0];\n if (!e.source.includes(le(r, e.root)))\n throw new Error(\"The root must be relative to the service. e.g /files/emma\");\n }\n if (e.status && !Object.values(Q).includes(e.status))\n throw new Error(\"Status must be a valid NodeStatus\");\n};\n/**\n * @copyright Copyright (c) 2022 John Molakvoæ \n *\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 */\nvar Q = /* @__PURE__ */ ((e) => (e.NEW = \"new\", e.FAILED = \"failed\", e.LOADING = \"loading\", e.LOCKED = \"locked\", e))(Q || {});\nclass D {\n _data;\n _attributes;\n _knownDavService = /(remote|public)\\.php\\/(web)?dav/i;\n constructor(t, r) {\n X(t, r || this._knownDavService), this._data = t;\n const s = {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n set: (n, i, d) => (this.updateMtime(), Reflect.set(n, i, d)),\n deleteProperty: (n, i) => (this.updateMtime(), Reflect.deleteProperty(n, i))\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n };\n this._attributes = new Proxy(t.attributes || {}, s), delete this._data.attributes, r && (this._knownDavService = r);\n }\n /**\n * Get the source url to this object\n */\n get source() {\n return this._data.source.replace(/\\/$/i, \"\");\n }\n /**\n * Get the encoded source url to this object for requests purposes\n */\n get encodedSource() {\n const { origin: t } = new URL(this.source);\n return t + he(this.source.slice(t.length));\n }\n /**\n * Get this object name\n */\n get basename() {\n return fe(this.source);\n }\n /**\n * Get this object's extension\n */\n get extension() {\n return ce(this.source);\n }\n /**\n * Get the directory path leading to this object\n * Will use the relative path to root if available\n */\n get dirname() {\n if (this.root) {\n const r = this.source.indexOf(this.root);\n return I(this.source.slice(r + this.root.length) || \"/\");\n }\n const t = new URL(this.source);\n return I(t.pathname);\n }\n /**\n * Get the file mime\n */\n get mime() {\n return this._data.mime;\n }\n /**\n * Get the file modification time\n */\n get mtime() {\n return this._data.mtime;\n }\n /**\n * Get the file creation time\n */\n get crtime() {\n return this._data.crtime;\n }\n /**\n * Get the file size\n */\n get size() {\n return this._data.size;\n }\n /**\n * Get the file attribute\n */\n get attributes() {\n return this._attributes;\n }\n /**\n * Get the file permissions\n */\n get permissions() {\n return this.owner === null && !this.isDavRessource ? N.READ : this._data.permissions !== void 0 ? this._data.permissions : N.NONE;\n }\n /**\n * Get the file owner\n */\n get owner() {\n return this.isDavRessource ? this._data.owner : null;\n }\n /**\n * Is this a dav-related ressource ?\n */\n get isDavRessource() {\n return J(this.source, this._knownDavService);\n }\n /**\n * Get the dav root of this object\n */\n get root() {\n return this._data.root ? this._data.root.replace(/^(.+)\\/$/, \"$1\") : this.isDavRessource && I(this.source).split(this._knownDavService).pop() || null;\n }\n /**\n * Get the absolute path of this object relative to the root\n */\n get path() {\n if (this.root) {\n const t = this.source.indexOf(this.root);\n return this.source.slice(t + this.root.length) || \"/\";\n }\n return (this.dirname + \"/\" + this.basename).replace(/\\/\\//g, \"/\");\n }\n /**\n * Get the node id if defined.\n * Will look for the fileid in attributes if undefined.\n */\n get fileid() {\n return this._data?.id || this.attributes?.fileid;\n }\n /**\n * Get the node status.\n */\n get status() {\n return this._data?.status;\n }\n /**\n * Set the node status.\n */\n set status(t) {\n this._data.status = t;\n }\n /**\n * Move the node to a new destination\n *\n * @param {string} destination the new source.\n * e.g. https://cloud.domain.com/remote.php/dav/files/emma/Photos/picture.jpg\n */\n move(t) {\n X({ ...this._data, source: t }, this._knownDavService), this._data.source = t, this.updateMtime();\n }\n /**\n * Rename the node\n * This aliases the move method for easier usage\n *\n * @param basename The new name of the node\n */\n rename(t) {\n if (t.includes(\"/\"))\n throw new Error(\"Invalid basename\");\n this.move(I(this.source) + \"/\" + t);\n }\n /**\n * Update the mtime if exists.\n */\n updateMtime() {\n this._data.mtime && (this._data.mtime = /* @__PURE__ */ new Date());\n }\n}\n/**\n * @copyright Copyright (c) 2022 John Molakvoæ \n *\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 */\nclass ye extends D {\n get type() {\n return R.File;\n }\n}\n/**\n * @copyright Copyright (c) 2022 John Molakvoæ \n *\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 */\nclass _e extends D {\n constructor(t) {\n super({\n ...t,\n mime: \"httpd/unix-directory\"\n });\n }\n get type() {\n return R.Folder;\n }\n get extension() {\n return null;\n }\n get mime() {\n return \"httpd/unix-directory\";\n }\n}\n/**\n * @copyright Copyright (c) 2023 John Molakvoæ \n *\n * @author John Molakvoæ \n * @author Ferdinand Thiessen \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 ee = `/files/${A()?.uid}`, te = pe(\"dav\"), ur = function(e = te) {\n const t = ge(e);\n function r(n) {\n t.setHeaders({\n // Add this so the server knows it is an request from the browser\n \"X-Requested-With\": \"XMLHttpRequest\",\n // Inject user auth\n requesttoken: n ?? \"\"\n });\n }\n return ue(r), r(de()), we().patch(\"fetch\", (n, i) => {\n const d = i.headers;\n return d?.method && (i.method = d.method, delete d.method), fetch(n, i);\n }), t;\n}, dr = async (e, t = \"/\", r = ee) => (await e.getDirectoryContents(`${r}${t}`, {\n details: !0,\n data: Ee(),\n headers: {\n // see davGetClient for patched webdav client\n method: \"REPORT\"\n },\n includeSelf: !0\n})).data.filter((n) => n.filename !== t).map((n) => ve(n, r)), ve = function(e, t = ee, r = te) {\n const s = e.props, n = be(s?.permissions), i = A()?.uid, d = {\n id: s?.fileid || 0,\n source: `${r}${e.filename}`,\n mtime: new Date(Date.parse(e.lastmod)),\n mime: e.mime,\n size: s?.size || Number.parseInt(s.getcontentlength || \"0\"),\n permissions: n,\n owner: i,\n root: t,\n attributes: {\n ...e,\n ...s,\n hasPreview: s?.[\"has-preview\"]\n }\n };\n return delete d.attributes?.props, e.type === \"file\" ? new ye(d) : new _e(d);\n};\n/**\n * @copyright Copyright (c) 2022 John Molakvoæ \n *\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 */\nclass Te {\n _views = [];\n _currentView = null;\n register(t) {\n if (this._views.find((r) => r.id === t.id))\n throw new Error(`View id ${t.id} is already registered`);\n this._views.push(t);\n }\n remove(t) {\n const r = this._views.findIndex((s) => s.id === t);\n r !== -1 && this._views.splice(r, 1);\n }\n get views() {\n return this._views;\n }\n setActive(t) {\n this._currentView = t;\n }\n get active() {\n return this._currentView;\n }\n}\nconst ar = function() {\n return typeof window._nc_navigation > \"u\" && (window._nc_navigation = new Te(), m.debug(\"Navigation service initialized\")), window._nc_navigation;\n};\n/**\n * @copyright Copyright (c) 2022 John Molakvoæ \n *\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 */\nclass Ie {\n _column;\n constructor(t) {\n Ae(t), this._column = t;\n }\n get id() {\n return this._column.id;\n }\n get title() {\n return this._column.title;\n }\n get render() {\n return this._column.render;\n }\n get sort() {\n return this._column.sort;\n }\n get summary() {\n return this._column.summary;\n }\n}\nconst Ae = function(e) {\n if (!e.id || typeof e.id != \"string\")\n throw new Error(\"A column id is required\");\n if (!e.title || typeof e.title != \"string\")\n throw new Error(\"A column title is required\");\n if (!e.render || typeof e.render != \"function\")\n throw new Error(\"A render function is required\");\n if (e.sort && typeof e.sort != \"function\")\n throw new Error(\"Column sortFunction must be a function\");\n if (e.summary && typeof e.summary != \"function\")\n throw new Error(\"Column summary must be a function\");\n return !0;\n};\nvar S = {}, O = {};\n(function(e) {\n const t = \":A-Za-z_\\\\u00C0-\\\\u00D6\\\\u00D8-\\\\u00F6\\\\u00F8-\\\\u02FF\\\\u0370-\\\\u037D\\\\u037F-\\\\u1FFF\\\\u200C-\\\\u200D\\\\u2070-\\\\u218F\\\\u2C00-\\\\u2FEF\\\\u3001-\\\\uD7FF\\\\uF900-\\\\uFDCF\\\\uFDF0-\\\\uFFFD\", r = t + \"\\\\-.\\\\d\\\\u00B7\\\\u0300-\\\\u036F\\\\u203F-\\\\u2040\", s = \"[\" + t + \"][\" + r + \"]*\", n = new RegExp(\"^\" + s + \"$\"), i = function(u, o) {\n const a = [];\n let l = o.exec(u);\n for (; l; ) {\n const f = [];\n f.startIndex = o.lastIndex - l[0].length;\n const c = l.length;\n for (let g = 0; g < c; g++)\n f.push(l[g]);\n a.push(f), l = o.exec(u);\n }\n return a;\n }, d = function(u) {\n const o = n.exec(u);\n return !(o === null || typeof o > \"u\");\n };\n e.isExist = function(u) {\n return typeof u < \"u\";\n }, e.isEmptyObject = function(u) {\n return Object.keys(u).length === 0;\n }, e.merge = function(u, o, a) {\n if (o) {\n const l = Object.keys(o), f = l.length;\n for (let c = 0; c < f; c++)\n a === \"strict\" ? u[l[c]] = [o[l[c]]] : u[l[c]] = o[l[c]];\n }\n }, e.getValue = function(u) {\n return e.isExist(u) ? u : \"\";\n }, e.isName = d, e.getAllMatches = i, e.nameRegexp = s;\n})(O);\nconst M = O, Oe = {\n allowBooleanAttributes: !1,\n //A tag can have attributes without any value\n unpairedTags: []\n};\nS.validate = function(e, t) {\n t = Object.assign({}, Oe, t);\n const r = [];\n let s = !1, n = !1;\n e[0] === \"\\uFEFF\" && (e = e.substr(1));\n for (let i = 0; i < e.length; i++)\n if (e[i] === \"<\" && e[i + 1] === \"?\") {\n if (i += 2, i = G(e, i), i.err)\n return i;\n } else if (e[i] === \"<\") {\n let d = i;\n if (i++, e[i] === \"!\") {\n i = z(e, i);\n continue;\n } else {\n let u = !1;\n e[i] === \"/\" && (u = !0, i++);\n let o = \"\";\n for (; i < e.length && e[i] !== \">\" && e[i] !== \" \" && e[i] !== \"\t\" && e[i] !== `\n` && e[i] !== \"\\r\"; i++)\n o += e[i];\n if (o = o.trim(), o[o.length - 1] === \"/\" && (o = o.substring(0, o.length - 1), i--), !Re(o)) {\n let f;\n return o.trim().length === 0 ? f = \"Invalid space after '<'.\" : f = \"Tag '\" + o + \"' is an invalid name.\", p(\"InvalidTag\", f, w(e, i));\n }\n const a = xe(e, i);\n if (a === !1)\n return p(\"InvalidAttr\", \"Attributes for '\" + o + \"' have open quote.\", w(e, i));\n let l = a.value;\n if (i = a.index, l[l.length - 1] === \"/\") {\n const f = i - l.length;\n l = l.substring(0, l.length - 1);\n const c = H(l, t);\n if (c === !0)\n s = !0;\n else\n return p(c.err.code, c.err.msg, w(e, f + c.err.line));\n } else if (u)\n if (a.tagClosed) {\n if (l.trim().length > 0)\n return p(\"InvalidTag\", \"Closing tag '\" + o + \"' can't have attributes or invalid starting.\", w(e, d));\n {\n const f = r.pop();\n if (o !== f.tagName) {\n let c = w(e, f.tagStartPos);\n return p(\n \"InvalidTag\",\n \"Expected closing tag '\" + f.tagName + \"' (opened in line \" + c.line + \", col \" + c.col + \") instead of closing tag '\" + o + \"'.\",\n w(e, d)\n );\n }\n r.length == 0 && (n = !0);\n }\n } else\n return p(\"InvalidTag\", \"Closing tag '\" + o + \"' doesn't have proper closing.\", w(e, i));\n else {\n const f = H(l, t);\n if (f !== !0)\n return p(f.err.code, f.err.msg, w(e, i - l.length + f.err.line));\n if (n === !0)\n return p(\"InvalidXml\", \"Multiple possible root nodes found.\", w(e, i));\n t.unpairedTags.indexOf(o) !== -1 || r.push({ tagName: o, tagStartPos: d }), s = !0;\n }\n for (i++; i < e.length; i++)\n if (e[i] === \"<\")\n if (e[i + 1] === \"!\") {\n i++, i = z(e, i);\n continue;\n } else if (e[i + 1] === \"?\") {\n if (i = G(e, ++i), i.err)\n return i;\n } else\n break;\n else if (e[i] === \"&\") {\n const f = Ve(e, i);\n if (f == -1)\n return p(\"InvalidChar\", \"char '&' is not expected.\", w(e, i));\n i = f;\n } else if (n === !0 && !U(e[i]))\n return p(\"InvalidXml\", \"Extra text at the end\", w(e, i));\n e[i] === \"<\" && i--;\n }\n } else {\n if (U(e[i]))\n continue;\n return p(\"InvalidChar\", \"char '\" + e[i] + \"' is not expected.\", w(e, i));\n }\n if (s) {\n if (r.length == 1)\n return p(\"InvalidTag\", \"Unclosed tag '\" + r[0].tagName + \"'.\", w(e, r[0].tagStartPos));\n if (r.length > 0)\n return p(\"InvalidXml\", \"Invalid '\" + JSON.stringify(r.map((i) => i.tagName), null, 4).replace(/\\r?\\n/g, \"\") + \"' found.\", { line: 1, col: 1 });\n } else\n return p(\"InvalidXml\", \"Start tag expected.\", 1);\n return !0;\n};\nfunction U(e) {\n return e === \" \" || e === \"\t\" || e === `\n` || e === \"\\r\";\n}\nfunction G(e, t) {\n const r = t;\n for (; t < e.length; t++)\n if (e[t] == \"?\" || e[t] == \" \") {\n const s = e.substr(r, t - r);\n if (t > 5 && s === \"xml\")\n return p(\"InvalidXml\", \"XML declaration allowed only at the start of the document.\", w(e, t));\n if (e[t] == \"?\" && e[t + 1] == \">\") {\n t++;\n break;\n } else\n continue;\n }\n return t;\n}\nfunction z(e, t) {\n if (e.length > t + 5 && e[t + 1] === \"-\" && e[t + 2] === \"-\") {\n for (t += 3; t < e.length; t++)\n if (e[t] === \"-\" && e[t + 1] === \"-\" && e[t + 2] === \">\") {\n t += 2;\n break;\n }\n } else if (e.length > t + 8 && e[t + 1] === \"D\" && e[t + 2] === \"O\" && e[t + 3] === \"C\" && e[t + 4] === \"T\" && e[t + 5] === \"Y\" && e[t + 6] === \"P\" && e[t + 7] === \"E\") {\n let r = 1;\n for (t += 8; t < e.length; t++)\n if (e[t] === \"<\")\n r++;\n else if (e[t] === \">\" && (r--, r === 0))\n break;\n } else if (e.length > t + 9 && e[t + 1] === \"[\" && e[t + 2] === \"C\" && e[t + 3] === \"D\" && e[t + 4] === \"A\" && e[t + 5] === \"T\" && e[t + 6] === \"A\" && e[t + 7] === \"[\") {\n for (t += 8; t < e.length; t++)\n if (e[t] === \"]\" && e[t + 1] === \"]\" && e[t + 2] === \">\") {\n t += 2;\n break;\n }\n }\n return t;\n}\nconst Ce = '\"', Pe = \"'\";\nfunction xe(e, t) {\n let r = \"\", s = \"\", n = !1;\n for (; t < e.length; t++) {\n if (e[t] === Ce || e[t] === Pe)\n s === \"\" ? s = e[t] : s !== e[t] || (s = \"\");\n else if (e[t] === \">\" && s === \"\") {\n n = !0;\n break;\n }\n r += e[t];\n }\n return s !== \"\" ? !1 : {\n value: r,\n index: t,\n tagClosed: n\n };\n}\nconst $e = new RegExp(`(\\\\s*)([^\\\\s=]+)(\\\\s*=)?(\\\\s*(['\"])(([\\\\s\\\\S])*?)\\\\5)?`, \"g\");\nfunction H(e, t) {\n const r = M.getAllMatches(e, $e), s = {};\n for (let n = 0; n < r.length; n++) {\n if (r[n][1].length === 0)\n return p(\"InvalidAttr\", \"Attribute '\" + r[n][2] + \"' has no space in starting.\", v(r[n]));\n if (r[n][3] !== void 0 && r[n][4] === void 0)\n return p(\"InvalidAttr\", \"Attribute '\" + r[n][2] + \"' is without value.\", v(r[n]));\n if (r[n][3] === void 0 && !t.allowBooleanAttributes)\n return p(\"InvalidAttr\", \"boolean attribute '\" + r[n][2] + \"' is not allowed.\", v(r[n]));\n const i = r[n][2];\n if (!Le(i))\n return p(\"InvalidAttr\", \"Attribute '\" + i + \"' is an invalid name.\", v(r[n]));\n if (!s.hasOwnProperty(i))\n s[i] = 1;\n else\n return p(\"InvalidAttr\", \"Attribute '\" + i + \"' is repeated.\", v(r[n]));\n }\n return !0;\n}\nfunction Fe(e, t) {\n let r = /\\d/;\n for (e[t] === \"x\" && (t++, r = /[\\da-fA-F]/); t < e.length; t++) {\n if (e[t] === \";\")\n return t;\n if (!e[t].match(r))\n break;\n }\n return -1;\n}\nfunction Ve(e, t) {\n if (t++, e[t] === \";\")\n return -1;\n if (e[t] === \"#\")\n return t++, Fe(e, t);\n let r = 0;\n for (; t < e.length; t++, r++)\n if (!(e[t].match(/\\w/) && r < 20)) {\n if (e[t] === \";\")\n break;\n return -1;\n }\n return t;\n}\nfunction p(e, t, r) {\n return {\n err: {\n code: e,\n msg: t,\n line: r.line || r,\n col: r.col\n }\n };\n}\nfunction Le(e) {\n return M.isName(e);\n}\nfunction Re(e) {\n return M.isName(e);\n}\nfunction w(e, t) {\n const r = e.substring(0, t).split(/\\r?\\n/);\n return {\n line: r.length,\n // column number is last line's length + 1, because column numbering starts at 1:\n col: r[r.length - 1].length + 1\n };\n}\nfunction v(e) {\n return e.startIndex + e[1].length;\n}\nvar B = {};\nconst re = {\n preserveOrder: !1,\n attributeNamePrefix: \"@_\",\n attributesGroupName: !1,\n textNodeName: \"#text\",\n ignoreAttributes: !0,\n removeNSPrefix: !1,\n // remove NS from tag name or attribute name if true\n allowBooleanAttributes: !1,\n //a tag can have attributes without any value\n //ignoreRootElement : false,\n parseTagValue: !0,\n parseAttributeValue: !1,\n trimValues: !0,\n //Trim string values of tag and attributes\n cdataPropName: !1,\n numberParseOptions: {\n hex: !0,\n leadingZeros: !0,\n eNotation: !0\n },\n tagValueProcessor: function(e, t) {\n return t;\n },\n attributeValueProcessor: function(e, t) {\n return t;\n },\n stopNodes: [],\n //nested tags will not be parsed even for errors\n alwaysCreateTextNode: !1,\n isArray: () => !1,\n commentPropName: !1,\n unpairedTags: [],\n processEntities: !0,\n htmlEntities: !1,\n ignoreDeclaration: !1,\n ignorePiTags: !1,\n transformTagName: !1,\n transformAttributeName: !1,\n updateTag: function(e, t, r) {\n return e;\n }\n // skipEmptyListItem: false\n}, Se = function(e) {\n return Object.assign({}, re, e);\n};\nB.buildOptions = Se;\nB.defaultOptions = re;\nclass Me {\n constructor(t) {\n this.tagname = t, this.child = [], this[\":@\"] = {};\n }\n add(t, r) {\n t === \"__proto__\" && (t = \"#__proto__\"), this.child.push({ [t]: r });\n }\n addChild(t) {\n t.tagname === \"__proto__\" && (t.tagname = \"#__proto__\"), t[\":@\"] && Object.keys(t[\":@\"]).length > 0 ? this.child.push({ [t.tagname]: t.child, \":@\": t[\":@\"] }) : this.child.push({ [t.tagname]: t.child });\n }\n}\nvar Be = Me;\nconst ke = O;\nfunction qe(e, t) {\n const r = {};\n if (e[t + 3] === \"O\" && e[t + 4] === \"C\" && e[t + 5] === \"T\" && e[t + 6] === \"Y\" && e[t + 7] === \"P\" && e[t + 8] === \"E\") {\n t = t + 9;\n let s = 1, n = !1, i = !1, d = \"\";\n for (; t < e.length; t++)\n if (e[t] === \"<\" && !i) {\n if (n && Ge(e, t))\n t += 7, [entityName, val, t] = Xe(e, t + 1), val.indexOf(\"&\") === -1 && (r[We(entityName)] = {\n regx: RegExp(`&${entityName};`, \"g\"),\n val\n });\n else if (n && ze(e, t))\n t += 8;\n else if (n && He(e, t))\n t += 8;\n else if (n && Ke(e, t))\n t += 9;\n else if (Ue)\n i = !0;\n else\n throw new Error(\"Invalid DOCTYPE\");\n s++, d = \"\";\n } else if (e[t] === \">\") {\n if (i ? e[t - 1] === \"-\" && e[t - 2] === \"-\" && (i = !1, s--) : s--, s === 0)\n break;\n } else\n e[t] === \"[\" ? n = !0 : d += e[t];\n if (s !== 0)\n throw new Error(\"Unclosed DOCTYPE\");\n } else\n throw new Error(\"Invalid Tag instead of DOCTYPE\");\n return { entities: r, i: t };\n}\nfunction Xe(e, t) {\n let r = \"\";\n for (; t < e.length && e[t] !== \"'\" && e[t] !== '\"'; t++)\n r += e[t];\n if (r = r.trim(), r.indexOf(\" \") !== -1)\n throw new Error(\"External entites are not supported\");\n const s = e[t++];\n let n = \"\";\n for (; t < e.length && e[t] !== s; t++)\n n += e[t];\n return [r, n, t];\n}\nfunction Ue(e, t) {\n return e[t + 1] === \"!\" && e[t + 2] === \"-\" && e[t + 3] === \"-\";\n}\nfunction Ge(e, t) {\n return e[t + 1] === \"!\" && e[t + 2] === \"E\" && e[t + 3] === \"N\" && e[t + 4] === \"T\" && e[t + 5] === \"I\" && e[t + 6] === \"T\" && e[t + 7] === \"Y\";\n}\nfunction ze(e, t) {\n return e[t + 1] === \"!\" && e[t + 2] === \"E\" && e[t + 3] === \"L\" && e[t + 4] === \"E\" && e[t + 5] === \"M\" && e[t + 6] === \"E\" && e[t + 7] === \"N\" && e[t + 8] === \"T\";\n}\nfunction He(e, t) {\n return e[t + 1] === \"!\" && e[t + 2] === \"A\" && e[t + 3] === \"T\" && e[t + 4] === \"T\" && e[t + 5] === \"L\" && e[t + 6] === \"I\" && e[t + 7] === \"S\" && e[t + 8] === \"T\";\n}\nfunction Ke(e, t) {\n return e[t + 1] === \"!\" && e[t + 2] === \"N\" && e[t + 3] === \"O\" && e[t + 4] === \"T\" && e[t + 5] === \"A\" && e[t + 6] === \"T\" && e[t + 7] === \"I\" && e[t + 8] === \"O\" && e[t + 9] === \"N\";\n}\nfunction We(e) {\n if (ke.isName(e))\n return e;\n throw new Error(`Invalid entity name ${e}`);\n}\nvar Ze = qe;\nconst je = /^[-+]?0x[a-fA-F0-9]+$/, Ye = /^([\\-\\+])?(0*)(\\.[0-9]+([eE]\\-?[0-9]+)?|[0-9]+(\\.[0-9]+([eE]\\-?[0-9]+)?)?)$/;\n!Number.parseInt && window.parseInt && (Number.parseInt = window.parseInt);\n!Number.parseFloat && window.parseFloat && (Number.parseFloat = window.parseFloat);\nconst Je = {\n hex: !0,\n leadingZeros: !0,\n decimalPoint: \".\",\n eNotation: !0\n //skipLike: /regex/\n};\nfunction Qe(e, t = {}) {\n if (t = Object.assign({}, Je, t), !e || typeof e != \"string\")\n return e;\n let r = e.trim();\n if (t.skipLike !== void 0 && t.skipLike.test(r))\n return e;\n if (t.hex && je.test(r))\n return Number.parseInt(r, 16);\n {\n const s = Ye.exec(r);\n if (s) {\n const n = s[1], i = s[2];\n let d = De(s[3]);\n const u = s[4] || s[6];\n if (!t.leadingZeros && i.length > 0 && n && r[2] !== \".\")\n return e;\n if (!t.leadingZeros && i.length > 0 && !n && r[1] !== \".\")\n return e;\n {\n const o = Number(r), a = \"\" + o;\n return a.search(/[eE]/) !== -1 || u ? t.eNotation ? o : e : r.indexOf(\".\") !== -1 ? a === \"0\" && d === \"\" || a === d || n && a === \"-\" + d ? o : e : i ? d === a || n + d === a ? o : e : r === a || r === n + a ? o : e;\n }\n } else\n return e;\n }\n}\nfunction De(e) {\n return e && e.indexOf(\".\") !== -1 && (e = e.replace(/0+$/, \"\"), e === \".\" ? e = \"0\" : e[0] === \".\" ? e = \"0\" + e : e[e.length - 1] === \".\" && (e = e.substr(0, e.length - 1))), e;\n}\nvar et = Qe;\nconst k = O, T = Be, tt = Ze, rt = et;\n\"<((!\\\\[CDATA\\\\[([\\\\s\\\\S]*?)(]]>))|((NAME:)?(NAME))([^>]*)>|((\\\\/)(NAME)\\\\s*>))([^<]*)\".replace(/NAME/g, k.nameRegexp);\nlet nt = class {\n constructor(t) {\n this.options = t, this.currentNode = null, this.tagsNodeStack = [], this.docTypeEntities = {}, this.lastEntities = {\n apos: { regex: /&(apos|#39|#x27);/g, val: \"'\" },\n gt: { regex: /&(gt|#62|#x3E);/g, val: \">\" },\n lt: { regex: /&(lt|#60|#x3C);/g, val: \"<\" },\n quot: { regex: /&(quot|#34|#x22);/g, val: '\"' }\n }, this.ampEntity = { regex: /&(amp|#38|#x26);/g, val: \"&\" }, this.htmlEntities = {\n space: { regex: /&(nbsp|#160);/g, val: \" \" },\n // \"lt\" : { regex: /&(lt|#60);/g, val: \"<\" },\n // \"gt\" : { regex: /&(gt|#62);/g, val: \">\" },\n // \"amp\" : { regex: /&(amp|#38);/g, val: \"&\" },\n // \"quot\" : { regex: /&(quot|#34);/g, val: \"\\\"\" },\n // \"apos\" : { regex: /&(apos|#39);/g, val: \"'\" },\n cent: { regex: /&(cent|#162);/g, val: \"¢\" },\n pound: { regex: /&(pound|#163);/g, val: \"£\" },\n yen: { regex: /&(yen|#165);/g, val: \"¥\" },\n euro: { regex: /&(euro|#8364);/g, val: \"€\" },\n copyright: { regex: /&(copy|#169);/g, val: \"©\" },\n reg: { regex: /&(reg|#174);/g, val: \"®\" },\n inr: { regex: /&(inr|#8377);/g, val: \"₹\" }\n }, this.addExternalEntities = it, this.parseXml = at, this.parseTextData = st, this.resolveNameSpace = ot, this.buildAttributesMap = dt, this.isItStopNode = ht, this.replaceEntitiesValue = ft, this.readStopNodeData = gt, this.saveTextToParentTag = ct, this.addChild = lt;\n }\n};\nfunction it(e) {\n const t = Object.keys(e);\n for (let r = 0; r < t.length; r++) {\n const s = t[r];\n this.lastEntities[s] = {\n regex: new RegExp(\"&\" + s + \";\", \"g\"),\n val: e[s]\n };\n }\n}\nfunction st(e, t, r, s, n, i, d) {\n if (e !== void 0 && (this.options.trimValues && !s && (e = e.trim()), e.length > 0)) {\n d || (e = this.replaceEntitiesValue(e));\n const u = this.options.tagValueProcessor(t, e, r, n, i);\n return u == null ? e : typeof u != typeof e || u !== e ? u : this.options.trimValues ? $(e, this.options.parseTagValue, this.options.numberParseOptions) : e.trim() === e ? $(e, this.options.parseTagValue, this.options.numberParseOptions) : e;\n }\n}\nfunction ot(e) {\n if (this.options.removeNSPrefix) {\n const t = e.split(\":\"), r = e.charAt(0) === \"/\" ? \"/\" : \"\";\n if (t[0] === \"xmlns\")\n return \"\";\n t.length === 2 && (e = r + t[1]);\n }\n return e;\n}\nconst ut = new RegExp(`([^\\\\s=]+)\\\\s*(=\\\\s*(['\"])([\\\\s\\\\S]*?)\\\\3)?`, \"gm\");\nfunction dt(e, t, r) {\n if (!this.options.ignoreAttributes && typeof e == \"string\") {\n const s = k.getAllMatches(e, ut), n = s.length, i = {};\n for (let d = 0; d < n; d++) {\n const u = this.resolveNameSpace(s[d][1]);\n let o = s[d][4], a = this.options.attributeNamePrefix + u;\n if (u.length)\n if (this.options.transformAttributeName && (a = this.options.transformAttributeName(a)), a === \"__proto__\" && (a = \"#__proto__\"), o !== void 0) {\n this.options.trimValues && (o = o.trim()), o = this.replaceEntitiesValue(o);\n const l = this.options.attributeValueProcessor(u, o, t);\n l == null ? i[a] = o : typeof l != typeof o || l !== o ? i[a] = l : i[a] = $(\n o,\n this.options.parseAttributeValue,\n this.options.numberParseOptions\n );\n } else\n this.options.allowBooleanAttributes && (i[a] = !0);\n }\n if (!Object.keys(i).length)\n return;\n if (this.options.attributesGroupName) {\n const d = {};\n return d[this.options.attributesGroupName] = i, d;\n }\n return i;\n }\n}\nconst at = function(e) {\n e = e.replace(/\\r\\n?/g, `\n`);\n const t = new T(\"!xml\");\n let r = t, s = \"\", n = \"\";\n for (let i = 0; i < e.length; i++)\n if (e[i] === \"<\")\n if (e[i + 1] === \"/\") {\n const u = y(e, \">\", i, \"Closing Tag is not closed.\");\n let o = e.substring(i + 2, u).trim();\n if (this.options.removeNSPrefix) {\n const f = o.indexOf(\":\");\n f !== -1 && (o = o.substr(f + 1));\n }\n this.options.transformTagName && (o = this.options.transformTagName(o)), r && (s = this.saveTextToParentTag(s, r, n));\n const a = n.substring(n.lastIndexOf(\".\") + 1);\n if (o && this.options.unpairedTags.indexOf(o) !== -1)\n throw new Error(`Unpaired tag can not be used as closing tag: `);\n let l = 0;\n a && this.options.unpairedTags.indexOf(a) !== -1 ? (l = n.lastIndexOf(\".\", n.lastIndexOf(\".\") - 1), this.tagsNodeStack.pop()) : l = n.lastIndexOf(\".\"), n = n.substring(0, l), r = this.tagsNodeStack.pop(), s = \"\", i = u;\n } else if (e[i + 1] === \"?\") {\n let u = x(e, i, !1, \"?>\");\n if (!u)\n throw new Error(\"Pi Tag is not closed.\");\n if (s = this.saveTextToParentTag(s, r, n), !(this.options.ignoreDeclaration && u.tagName === \"?xml\" || this.options.ignorePiTags)) {\n const o = new T(u.tagName);\n o.add(this.options.textNodeName, \"\"), u.tagName !== u.tagExp && u.attrExpPresent && (o[\":@\"] = this.buildAttributesMap(u.tagExp, n, u.tagName)), this.addChild(r, o, n);\n }\n i = u.closeIndex + 1;\n } else if (e.substr(i + 1, 3) === \"!--\") {\n const u = y(e, \"-->\", i + 4, \"Comment is not closed.\");\n if (this.options.commentPropName) {\n const o = e.substring(i + 4, u - 2);\n s = this.saveTextToParentTag(s, r, n), r.add(this.options.commentPropName, [{ [this.options.textNodeName]: o }]);\n }\n i = u;\n } else if (e.substr(i + 1, 2) === \"!D\") {\n const u = tt(e, i);\n this.docTypeEntities = u.entities, i = u.i;\n } else if (e.substr(i + 1, 2) === \"![\") {\n const u = y(e, \"]]>\", i, \"CDATA is not closed.\") - 2, o = e.substring(i + 9, u);\n if (s = this.saveTextToParentTag(s, r, n), this.options.cdataPropName)\n r.add(this.options.cdataPropName, [{ [this.options.textNodeName]: o }]);\n else {\n let a = this.parseTextData(o, r.tagname, n, !0, !1, !0);\n a == null && (a = \"\"), r.add(this.options.textNodeName, a);\n }\n i = u + 2;\n } else {\n let u = x(e, i, this.options.removeNSPrefix), o = u.tagName;\n const a = u.rawTagName;\n let l = u.tagExp, f = u.attrExpPresent, c = u.closeIndex;\n this.options.transformTagName && (o = this.options.transformTagName(o)), r && s && r.tagname !== \"!xml\" && (s = this.saveTextToParentTag(s, r, n, !1));\n const g = r;\n if (g && this.options.unpairedTags.indexOf(g.tagname) !== -1 && (r = this.tagsNodeStack.pop(), n = n.substring(0, n.lastIndexOf(\".\"))), o !== t.tagname && (n += n ? \".\" + o : o), this.isItStopNode(this.options.stopNodes, n, o)) {\n let h = \"\";\n if (l.length > 0 && l.lastIndexOf(\"/\") === l.length - 1)\n i = u.closeIndex;\n else if (this.options.unpairedTags.indexOf(o) !== -1)\n i = u.closeIndex;\n else {\n const E = this.readStopNodeData(e, a, c + 1);\n if (!E)\n throw new Error(`Unexpected end of ${a}`);\n i = E.i, h = E.tagContent;\n }\n const _ = new T(o);\n o !== l && f && (_[\":@\"] = this.buildAttributesMap(l, n, o)), h && (h = this.parseTextData(h, o, n, !0, f, !0, !0)), n = n.substr(0, n.lastIndexOf(\".\")), _.add(this.options.textNodeName, h), this.addChild(r, _, n);\n } else {\n if (l.length > 0 && l.lastIndexOf(\"/\") === l.length - 1) {\n o[o.length - 1] === \"/\" ? (o = o.substr(0, o.length - 1), n = n.substr(0, n.length - 1), l = o) : l = l.substr(0, l.length - 1), this.options.transformTagName && (o = this.options.transformTagName(o));\n const h = new T(o);\n o !== l && f && (h[\":@\"] = this.buildAttributesMap(l, n, o)), this.addChild(r, h, n), n = n.substr(0, n.lastIndexOf(\".\"));\n } else {\n const h = new T(o);\n this.tagsNodeStack.push(r), o !== l && f && (h[\":@\"] = this.buildAttributesMap(l, n, o)), this.addChild(r, h, n), r = h;\n }\n s = \"\", i = c;\n }\n }\n else\n s += e[i];\n return t.child;\n};\nfunction lt(e, t, r) {\n const s = this.options.updateTag(t.tagname, r, t[\":@\"]);\n s === !1 || (typeof s == \"string\" && (t.tagname = s), e.addChild(t));\n}\nconst ft = function(e) {\n if (this.options.processEntities) {\n for (let t in this.docTypeEntities) {\n const r = this.docTypeEntities[t];\n e = e.replace(r.regx, r.val);\n }\n for (let t in this.lastEntities) {\n const r = this.lastEntities[t];\n e = e.replace(r.regex, r.val);\n }\n if (this.options.htmlEntities)\n for (let t in this.htmlEntities) {\n const r = this.htmlEntities[t];\n e = e.replace(r.regex, r.val);\n }\n e = e.replace(this.ampEntity.regex, this.ampEntity.val);\n }\n return e;\n};\nfunction ct(e, t, r, s) {\n return e && (s === void 0 && (s = Object.keys(t.child).length === 0), e = this.parseTextData(\n e,\n t.tagname,\n r,\n !1,\n t[\":@\"] ? Object.keys(t[\":@\"]).length !== 0 : !1,\n s\n ), e !== void 0 && e !== \"\" && t.add(this.options.textNodeName, e), e = \"\"), e;\n}\nfunction ht(e, t, r) {\n const s = \"*.\" + r;\n for (const n in e) {\n const i = e[n];\n if (s === i || t === i)\n return !0;\n }\n return !1;\n}\nfunction pt(e, t, r = \">\") {\n let s, n = \"\";\n for (let i = t; i < e.length; i++) {\n let d = e[i];\n if (s)\n d === s && (s = \"\");\n else if (d === '\"' || d === \"'\")\n s = d;\n else if (d === r[0])\n if (r[1]) {\n if (e[i + 1] === r[1])\n return {\n data: n,\n index: i\n };\n } else\n return {\n data: n,\n index: i\n };\n else\n d === \"\t\" && (d = \" \");\n n += d;\n }\n}\nfunction y(e, t, r, s) {\n const n = e.indexOf(t, r);\n if (n === -1)\n throw new Error(s);\n return n + t.length - 1;\n}\nfunction x(e, t, r, s = \">\") {\n const n = pt(e, t + 1, s);\n if (!n)\n return;\n let i = n.data;\n const d = n.index, u = i.search(/\\s/);\n let o = i, a = !0;\n u !== -1 && (o = i.substr(0, u).replace(/\\s\\s*$/, \"\"), i = i.substr(u + 1));\n const l = o;\n if (r) {\n const f = o.indexOf(\":\");\n f !== -1 && (o = o.substr(f + 1), a = o !== n.data.substr(f + 1));\n }\n return {\n tagName: o,\n tagExp: i,\n closeIndex: d,\n attrExpPresent: a,\n rawTagName: l\n };\n}\nfunction gt(e, t, r) {\n const s = r;\n let n = 1;\n for (; r < e.length; r++)\n if (e[r] === \"<\")\n if (e[r + 1] === \"/\") {\n const i = y(e, \">\", r, `${t} is not closed`);\n if (e.substring(r + 2, i).trim() === t && (n--, n === 0))\n return {\n tagContent: e.substring(s, r),\n i\n };\n r = i;\n } else if (e[r + 1] === \"?\")\n r = y(e, \"?>\", r + 1, \"StopNode is not closed.\");\n else if (e.substr(r + 1, 3) === \"!--\")\n r = y(e, \"-->\", r + 3, \"StopNode is not closed.\");\n else if (e.substr(r + 1, 2) === \"![\")\n r = y(e, \"]]>\", r, \"StopNode is not closed.\") - 2;\n else {\n const i = x(e, r, \">\");\n i && ((i && i.tagName) === t && i.tagExp[i.tagExp.length - 1] !== \"/\" && n++, r = i.closeIndex);\n }\n}\nfunction $(e, t, r) {\n if (t && typeof e == \"string\") {\n const s = e.trim();\n return s === \"true\" ? !0 : s === \"false\" ? !1 : rt(e, r);\n } else\n return k.isExist(e) ? e : \"\";\n}\nvar wt = nt, ne = {};\nfunction mt(e, t) {\n return ie(e, t);\n}\nfunction ie(e, t, r) {\n let s;\n const n = {};\n for (let i = 0; i < e.length; i++) {\n const d = e[i], u = Nt(d);\n let o = \"\";\n if (r === void 0 ? o = u : o = r + \".\" + u, u === t.textNodeName)\n s === void 0 ? s = d[u] : s += \"\" + d[u];\n else {\n if (u === void 0)\n continue;\n if (d[u]) {\n let a = ie(d[u], t, o);\n const l = bt(a, t);\n d[\":@\"] ? Et(a, d[\":@\"], o, t) : Object.keys(a).length === 1 && a[t.textNodeName] !== void 0 && !t.alwaysCreateTextNode ? a = a[t.textNodeName] : Object.keys(a).length === 0 && (t.alwaysCreateTextNode ? a[t.textNodeName] = \"\" : a = \"\"), n[u] !== void 0 && n.hasOwnProperty(u) ? (Array.isArray(n[u]) || (n[u] = [n[u]]), n[u].push(a)) : t.isArray(u, o, l) ? n[u] = [a] : n[u] = a;\n }\n }\n }\n return typeof s == \"string\" ? s.length > 0 && (n[t.textNodeName] = s) : s !== void 0 && (n[t.textNodeName] = s), n;\n}\nfunction Nt(e) {\n const t = Object.keys(e);\n for (let r = 0; r < t.length; r++) {\n const s = t[r];\n if (s !== \":@\")\n return s;\n }\n}\nfunction Et(e, t, r, s) {\n if (t) {\n const n = Object.keys(t), i = n.length;\n for (let d = 0; d < i; d++) {\n const u = n[d];\n s.isArray(u, r + \".\" + u, !0, !0) ? e[u] = [t[u]] : e[u] = t[u];\n }\n }\n}\nfunction bt(e, t) {\n const { textNodeName: r } = t, s = Object.keys(e).length;\n return !!(s === 0 || s === 1 && (e[r] || typeof e[r] == \"boolean\" || e[r] === 0));\n}\nne.prettify = mt;\nconst { buildOptions: yt } = B, _t = wt, { prettify: vt } = ne, Tt = S;\nlet It = class {\n constructor(t) {\n this.externalEntities = {}, this.options = yt(t);\n }\n /**\n * Parse XML dats to JS object \n * @param {string|Buffer} xmlData \n * @param {boolean|Object} validationOption \n */\n parse(t, r) {\n if (typeof t != \"string\")\n if (t.toString)\n t = t.toString();\n else\n throw new Error(\"XML data is accepted in String or Bytes[] form.\");\n if (r) {\n r === !0 && (r = {});\n const i = Tt.validate(t, r);\n if (i !== !0)\n throw Error(`${i.err.msg}:${i.err.line}:${i.err.col}`);\n }\n const s = new _t(this.options);\n s.addExternalEntities(this.externalEntities);\n const n = s.parseXml(t);\n return this.options.preserveOrder || n === void 0 ? n : vt(n, this.options);\n }\n /**\n * Add Entity which is not by default supported by this library\n * @param {string} key \n * @param {string} value \n */\n addEntity(t, r) {\n if (r.indexOf(\"&\") !== -1)\n throw new Error(\"Entity value can't have '&'\");\n if (t.indexOf(\"&\") !== -1 || t.indexOf(\";\") !== -1)\n throw new Error(\"An entity must be set without '&' and ';'. Eg. use '#xD' for ' '\");\n if (r === \"&\")\n throw new Error(\"An entity with value '&' is not permitted\");\n this.externalEntities[t] = r;\n }\n};\nvar At = It;\nconst Ot = `\n`;\nfunction Ct(e, t) {\n let r = \"\";\n return t.format && t.indentBy.length > 0 && (r = Ot), se(e, t, \"\", r);\n}\nfunction se(e, t, r, s) {\n let n = \"\", i = !1;\n for (let d = 0; d < e.length; d++) {\n const u = e[d], o = Pt(u);\n if (o === void 0)\n continue;\n let a = \"\";\n if (r.length === 0 ? a = o : a = `${r}.${o}`, o === t.textNodeName) {\n let h = u[o];\n xt(a, t) || (h = t.tagValueProcessor(o, h), h = oe(h, t)), i && (n += s), n += h, i = !1;\n continue;\n } else if (o === t.cdataPropName) {\n i && (n += s), n += ``, i = !1;\n continue;\n } else if (o === t.commentPropName) {\n n += s + ``, i = !0;\n continue;\n } else if (o[0] === \"?\") {\n const h = K(u[\":@\"], t), _ = o === \"?xml\" ? \"\" : s;\n let E = u[o][0][t.textNodeName];\n E = E.length !== 0 ? \" \" + E : \"\", n += _ + `<${o}${E}${h}?>`, i = !0;\n continue;\n }\n let l = s;\n l !== \"\" && (l += t.indentBy);\n const f = K(u[\":@\"], t), c = s + `<${o}${f}`, g = se(u[o], t, a, l);\n t.unpairedTags.indexOf(o) !== -1 ? t.suppressUnpairedNode ? n += c + \">\" : n += c + \"/>\" : (!g || g.length === 0) && t.suppressEmptyNode ? n += c + \"/>\" : g && g.endsWith(\">\") ? n += c + `>${g}${s}` : (n += c + \">\", g && s !== \"\" && (g.includes(\"/>\") || g.includes(\"`), i = !0;\n }\n return n;\n}\nfunction Pt(e) {\n const t = Object.keys(e);\n for (let r = 0; r < t.length; r++) {\n const s = t[r];\n if (e.hasOwnProperty(s) && s !== \":@\")\n return s;\n }\n}\nfunction K(e, t) {\n let r = \"\";\n if (e && !t.ignoreAttributes)\n for (let s in e) {\n if (!e.hasOwnProperty(s))\n continue;\n let n = t.attributeValueProcessor(s, e[s]);\n n = oe(n, t), n === !0 && t.suppressBooleanAttributes ? r += ` ${s.substr(t.attributeNamePrefix.length)}` : r += ` ${s.substr(t.attributeNamePrefix.length)}=\"${n}\"`;\n }\n return r;\n}\nfunction xt(e, t) {\n e = e.substr(0, e.length - t.textNodeName.length - 1);\n let r = e.substr(e.lastIndexOf(\".\") + 1);\n for (let s in t.stopNodes)\n if (t.stopNodes[s] === e || t.stopNodes[s] === \"*.\" + r)\n return !0;\n return !1;\n}\nfunction oe(e, t) {\n if (e && e.length > 0 && t.processEntities)\n for (let r = 0; r < t.entities.length; r++) {\n const s = t.entities[r];\n e = e.replace(s.regex, s.val);\n }\n return e;\n}\nvar $t = Ct;\nconst Ft = $t, Vt = {\n attributeNamePrefix: \"@_\",\n attributesGroupName: !1,\n textNodeName: \"#text\",\n ignoreAttributes: !0,\n cdataPropName: !1,\n format: !1,\n indentBy: \" \",\n suppressEmptyNode: !1,\n suppressUnpairedNode: !0,\n suppressBooleanAttributes: !0,\n tagValueProcessor: function(e, t) {\n return t;\n },\n attributeValueProcessor: function(e, t) {\n return t;\n },\n preserveOrder: !1,\n commentPropName: !1,\n unpairedTags: [],\n entities: [\n { regex: new RegExp(\"&\", \"g\"), val: \"&\" },\n //it must be on top\n { regex: new RegExp(\">\", \"g\"), val: \">\" },\n { regex: new RegExp(\"<\", \"g\"), val: \"<\" },\n { regex: new RegExp(\"'\", \"g\"), val: \"'\" },\n { regex: new RegExp('\"', \"g\"), val: \""\" }\n ],\n processEntities: !0,\n stopNodes: [],\n // transformTagName: false,\n // transformAttributeName: false,\n oneListGroup: !1\n};\nfunction b(e) {\n this.options = Object.assign({}, Vt, e), this.options.ignoreAttributes || this.options.attributesGroupName ? this.isAttribute = function() {\n return !1;\n } : (this.attrPrefixLen = this.options.attributeNamePrefix.length, this.isAttribute = St), this.processTextOrObjNode = Lt, this.options.format ? (this.indentate = Rt, this.tagEndChar = `>\n`, this.newLine = `\n`) : (this.indentate = function() {\n return \"\";\n }, this.tagEndChar = \">\", this.newLine = \"\");\n}\nb.prototype.build = function(e) {\n return this.options.preserveOrder ? Ft(e, this.options) : (Array.isArray(e) && this.options.arrayNodeName && this.options.arrayNodeName.length > 1 && (e = {\n [this.options.arrayNodeName]: e\n }), this.j2x(e, 0).val);\n};\nb.prototype.j2x = function(e, t) {\n let r = \"\", s = \"\";\n for (let n in e)\n if (Object.prototype.hasOwnProperty.call(e, n))\n if (typeof e[n] > \"u\")\n this.isAttribute(n) && (s += \"\");\n else if (e[n] === null)\n this.isAttribute(n) ? s += \"\" : n[0] === \"?\" ? s += this.indentate(t) + \"<\" + n + \"?\" + this.tagEndChar : s += this.indentate(t) + \"<\" + n + \"/\" + this.tagEndChar;\n else if (e[n] instanceof Date)\n s += this.buildTextValNode(e[n], n, \"\", t);\n else if (typeof e[n] != \"object\") {\n const i = this.isAttribute(n);\n if (i)\n r += this.buildAttrPairStr(i, \"\" + e[n]);\n else if (n === this.options.textNodeName) {\n let d = this.options.tagValueProcessor(n, \"\" + e[n]);\n s += this.replaceEntitiesValue(d);\n } else\n s += this.buildTextValNode(e[n], n, \"\", t);\n } else if (Array.isArray(e[n])) {\n const i = e[n].length;\n let d = \"\";\n for (let u = 0; u < i; u++) {\n const o = e[n][u];\n typeof o > \"u\" || (o === null ? n[0] === \"?\" ? s += this.indentate(t) + \"<\" + n + \"?\" + this.tagEndChar : s += this.indentate(t) + \"<\" + n + \"/\" + this.tagEndChar : typeof o == \"object\" ? this.options.oneListGroup ? d += this.j2x(o, t + 1).val : d += this.processTextOrObjNode(o, n, t) : d += this.buildTextValNode(o, n, \"\", t));\n }\n this.options.oneListGroup && (d = this.buildObjectNode(d, n, \"\", t)), s += d;\n } else if (this.options.attributesGroupName && n === this.options.attributesGroupName) {\n const i = Object.keys(e[n]), d = i.length;\n for (let u = 0; u < d; u++)\n r += this.buildAttrPairStr(i[u], \"\" + e[n][i[u]]);\n } else\n s += this.processTextOrObjNode(e[n], n, t);\n return { attrStr: r, val: s };\n};\nb.prototype.buildAttrPairStr = function(e, t) {\n return t = this.options.attributeValueProcessor(e, \"\" + t), t = this.replaceEntitiesValue(t), this.options.suppressBooleanAttributes && t === \"true\" ? \" \" + e : \" \" + e + '=\"' + t + '\"';\n};\nfunction Lt(e, t, r) {\n const s = this.j2x(e, r + 1);\n return e[this.options.textNodeName] !== void 0 && Object.keys(e).length === 1 ? this.buildTextValNode(e[this.options.textNodeName], t, s.attrStr, r) : this.buildObjectNode(s.val, t, s.attrStr, r);\n}\nb.prototype.buildObjectNode = function(e, t, r, s) {\n if (e === \"\")\n return t[0] === \"?\" ? this.indentate(s) + \"<\" + t + r + \"?\" + this.tagEndChar : this.indentate(s) + \"<\" + t + r + this.closeTag(t) + this.tagEndChar;\n {\n let n = \"\" + e + n : this.options.commentPropName !== !1 && t === this.options.commentPropName && i.length === 0 ? this.indentate(s) + `` + this.newLine : this.indentate(s) + \"<\" + t + r + i + this.tagEndChar + e + this.indentate(s) + n;\n }\n};\nb.prototype.closeTag = function(e) {\n let t = \"\";\n return this.options.unpairedTags.indexOf(e) !== -1 ? this.options.suppressUnpairedNode || (t = \"/\") : this.options.suppressEmptyNode ? t = \"/\" : t = `>` + this.newLine;\n if (this.options.commentPropName !== !1 && t === this.options.commentPropName)\n return this.indentate(s) + `` + this.newLine;\n if (t[0] === \"?\")\n return this.indentate(s) + \"<\" + t + r + \"?\" + this.tagEndChar;\n {\n let n = this.options.tagValueProcessor(t, e);\n return n = this.replaceEntitiesValue(n), n === \"\" ? this.indentate(s) + \"<\" + t + r + this.closeTag(t) + this.tagEndChar : this.indentate(s) + \"<\" + t + r + \">\" + n + \" 0 && this.options.processEntities)\n for (let t = 0; t < this.options.entities.length; t++) {\n const r = this.options.entities[t];\n e = e.replace(r.regex, r.val);\n }\n return e;\n};\nfunction Rt(e) {\n return this.options.indentBy.repeat(e);\n}\nfunction St(e) {\n return e.startsWith(this.options.attributeNamePrefix) && e !== this.options.textNodeName ? e.substr(this.attrPrefixLen) : !1;\n}\nvar Mt = b;\nconst Bt = S, kt = At, qt = Mt;\nvar W = {\n XMLParser: kt,\n XMLValidator: Bt,\n XMLBuilder: qt\n};\nfunction Xt(e) {\n if (typeof e != \"string\")\n throw new TypeError(`Expected a \\`string\\`, got \\`${typeof e}\\``);\n if (e = e.trim(), e.length === 0 || W.XMLValidator.validate(e) !== !0)\n return !1;\n let t;\n const r = new W.XMLParser();\n try {\n t = r.parse(e);\n } catch {\n return !1;\n }\n return !(!t || !(\"svg\" in t));\n}\n/**\n * @copyright Copyright (c) 2022 John Molakvoæ \n *\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 */\nclass cr {\n _view;\n constructor(t) {\n Ut(t), this._view = t;\n }\n get id() {\n return this._view.id;\n }\n get name() {\n return this._view.name;\n }\n get caption() {\n return this._view.caption;\n }\n get emptyTitle() {\n return this._view.emptyTitle;\n }\n get emptyCaption() {\n return this._view.emptyCaption;\n }\n get getContents() {\n return this._view.getContents;\n }\n get icon() {\n return this._view.icon;\n }\n set icon(t) {\n this._view.icon = t;\n }\n get order() {\n return this._view.order;\n }\n set order(t) {\n this._view.order = t;\n }\n get params() {\n return this._view.params;\n }\n set params(t) {\n this._view.params = t;\n }\n get columns() {\n return this._view.columns;\n }\n get emptyView() {\n return this._view.emptyView;\n }\n get parent() {\n return this._view.parent;\n }\n get sticky() {\n return this._view.sticky;\n }\n get expanded() {\n return this._view.expanded;\n }\n set expanded(t) {\n this._view.expanded = t;\n }\n get defaultSortKey() {\n return this._view.defaultSortKey;\n }\n}\nconst Ut = function(e) {\n if (!e.id || typeof e.id != \"string\")\n throw new Error(\"View id is required and must be a string\");\n if (!e.name || typeof e.name != \"string\")\n throw new Error(\"View name is required and must be a string\");\n if (e.columns && e.columns.length > 0 && (!e.caption || typeof e.caption != \"string\"))\n throw new Error(\"View caption is required for top-level views and must be a string\");\n if (!e.getContents || typeof e.getContents != \"function\")\n throw new Error(\"View getContents is required and must be a function\");\n if (!e.icon || typeof e.icon != \"string\" || !Xt(e.icon))\n throw new Error(\"View icon is required and must be a valid svg string\");\n if (!(\"order\" in e) || typeof e.order != \"number\")\n throw new Error(\"View order is required and must be a number\");\n if (e.columns && e.columns.forEach((t) => {\n if (!(t instanceof Ie))\n throw new Error(\"View columns must be an array of Column. Invalid column found\");\n }), e.emptyView && typeof e.emptyView != \"function\")\n throw new Error(\"View emptyView must be a function\");\n if (e.parent && typeof e.parent != \"string\")\n throw new Error(\"View parent must be a string\");\n if (\"sticky\" in e && typeof e.sticky != \"boolean\")\n throw new Error(\"View sticky must be a boolean\");\n if (\"expanded\" in e && typeof e.expanded != \"boolean\")\n throw new Error(\"View expanded must be a boolean\");\n if (e.defaultSortKey && typeof e.defaultSortKey != \"string\")\n throw new Error(\"View defaultSortKey must be a string\");\n return !0;\n};\n/**\n * @copyright 2019 Christoph Wurst \n *\n * @author Christoph Wurst \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 hr = function(e) {\n return F().registerEntry(e);\n}, pr = function(e) {\n return F().unregisterEntry(e);\n}, gr = function(e) {\n return F().getEntries(e).sort((r, s) => r.order !== void 0 && s.order !== void 0 && r.order !== s.order ? r.order - s.order : r.displayName.localeCompare(s.displayName, void 0, { numeric: !0, sensitivity: \"base\" }));\n};\nexport {\n Ie as Column,\n Z as DefaultType,\n ye as File,\n Qt as FileAction,\n R as FileType,\n _e as Folder,\n tr as Header,\n Te as Navigation,\n D as Node,\n Q as NodeStatus,\n N as Permission,\n cr as View,\n hr as addNewFileMenuEntry,\n ur as davGetClient,\n sr as davGetDefaultPropfind,\n Ee as davGetFavoritesReport,\n or as davGetRecentSearch,\n be as davParsePermissions,\n te as davRemoteURL,\n ve as davResultToNode,\n ee as davRootPath,\n Y as defaultDavNamespaces,\n j as defaultDavProperties,\n Yt as formatFileSize,\n L as getDavNameSpaces,\n V as getDavProperties,\n dr as getFavoriteNodes,\n er as getFileActions,\n nr as getFileListHeaders,\n ar as getNavigation,\n gr as getNewFileMenuEntries,\n Jt as parseFileSize,\n ir as registerDavProperty,\n Dt as registerFileAction,\n rr as registerFileListHeaders,\n pr as removeNewFileMenuEntry\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=\" + {\"923\":\"2686613ba9d88601b889\",\"8321\":\"8442e3d18a58ee1f612a\"}[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 = 9837;","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) 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\t9837: 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, [7874], () => (__webpack_require__(34507)))\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["deferred","inProgress","dataWebpackPrefix","getLoggerBuilder","setApp","detectUser","build","action","FileAction","id","displayName","nodes","view","t","iconSvgInline","enabled","length","map","node","permissions","every","permission","Permission","DELETE","exec","axios","delete","encodedSource","emit","error","logger","source","execBatch","dir","Promise","all","this","order","triggerDownload","url","hiddenElement","document","createElement","download","href","click","downloadNodes","secret","Math","random","toString","substring","generateUrl","files","JSON","stringify","basename","isDownloadable","READ","attributes","downloadAttribute","parse","find","attribute","scope","key","undefined","some","type","FileType","Folder","root","startsWith","async","Array","fill","UPDATE","path","link","generateOcsUrl","result","post","uid","getCurrentUser","window","location","host","encodePath","data","ocs","token","showError","openLocalClient","shouldFavorite","favorite","favoriteNode","willFavorite","tags","OC","TAG_FAVORITE","dirname","Vue","StarSvg","NONE","options","styleTagTransform","setAttributes","insert","domAPI","insertStyleElement","locals","Axios","AxiosError","CanceledError","isCancel","CancelToken","VERSION","Cancel","isAxiosError","spread","toFormData","AxiosHeaders","HttpStatusCode","formToJSON","getAdapter","mergeConfig","queue","getQueue","PQueue","concurrency","MoveCopyAction","canMove","reduce","min","ALL","canCopy","canDownload","getActionForNodes","MOVE_OR_COPY","MOVE","COPY","handleCopyMoveNodeTo","destination","method","overwrite","arguments","Error","relativePath","join","destinationUrl","generateRemoteUrl","NodeStatus","LOADING","add","headers","Destination","encodeURI","Overwrite","response","status","message","openFilePickerForAction","fileIDs","fileid","filter","Boolean","filePicker","getFilePickerBuilder","allowDirectories","setFilter","n","CREATE","includes","setMimeTypeFilter","setMultiSelect","startAt","resolve","reject","setButtonFactory","_selection","buttons","target","dirnames","paths","push","label","icon","CopyIconSvg","callback","FolderMoveSvg","pick","catch","promises","FolderSvg","isDavRessource","OCP","Files","Router","goToRoute","default","DefaultType","HIDDEN","InformationSvg","OCA","Sidebar","open","File","getUniqueName","name","names","newName","i","ext","extname","entry","context","handler","content","contentNames","encodeURIComponent","parseInt","createNewFolder","folder","mtime","Date","owner","showSuccess","debug","WorkerGlobalScope","self","globalThis","fetch","bind","Headers","Request","Response","HOT_PATCHER_TYPE","NOOP","createNewItem","original","methods","final","HotPatcher","constructor","_configuration","registry","getEmptyAction","__type__","configuration","newAction","control","allowTargetOverrides","Object","keys","forEach","foreignKey","hasOwnProperty","assign","execute","args","get","item","_this","shift","apply","sequence","isPatched","patch","opts","chain","patchInline","plugin","restore","setFinal","__patcher","NONCE_CHARS","generateDigestAuthHeader","digest","replace","uri","indexOf","slice","toUpperCase","qop","test","ncString","nc","ha1","algorithm","user","realm","pass","nonce","cnonce","ha1Hash","md5","toLowerCase","ha1Compute","username","password","ha2","digestResponse","authValues","opaque","authHeader","k","obj","prototype","call","getPrototypeOf","proto","isPlainObject","setPrototypeOf","merge","output","items","nextItem","mergeObjects","obj1","obj2","isArray","headerPayloads","headerKeys","header","lowerHeader","hasArrayBuffer","ArrayBuffer","objToString","_request","requestOptions","patcher","body","newHeaders","value","isBuffer","isArrayBuffer","requestDataToFetchBody","signal","withCredentials","credentials","httpAgent","httpsAgent","agent","parsedURL","protocol","getFetchOptions","rootPath","defaultRootUrl","getClient","rootUrl","client","createClient","requesttoken","getRequestToken","getPatcher","_digest","hasDigestAuth","Authorization","split","re","match","floor","makeNonce","parseDigestAuth","response2","request","hashCode","str","a","b","charCodeAt","resultToNode","props","davParsePermissions","filename","nodeData","lastmod","mime","size","hasPreview","failed","reportPayload","getDavNameSpaces","getDavProperties","getContents","propfindPayload","davGetDefaultPropfind","rootResponse","stat","details","contentsResponse","getDirectoryContents","includeSelf","contents","generateFolderView","index","View","generateIdFromPath","params","parent","columns","lastTwoWeeksTimestamp","round","now","searchPayload","inheritAttrs","String","required","checked","Number","previewUrl","ratio","failedPreview","computed","nameWithoutExt","realPreviewUrl","mimeIcon","getElementById","pathSections","section","encodeFilePath","MimeType","getIconUrl","onCheck","$emit","onFailure","_vm","_c","_self","staticClass","attrs","domProps","on","_v","class","_s","extend","components","NcEmptyContent","NcModal","TemplatePreview","loading","opened","provider","extension","emptyTemplate","mimetypes","selectedTemplate","templates","template","style","width","margin","border","fetchedProvider","getTemplates","app","onSubmit","close","currentDirectory","URL","searchParams","warn","fileInfo","filePath","templatePath","templateType","createFromTemplate","normalize","openfile","_setupProxy","$event","preventDefault","stopPropagation","_b","_l","_e","mixin","TemplatePickerRoot","appendChild","loadState","templatesPath","TemplatePicker","TemplatePickerView","propsData","$mount","addNewFileMenuEntry","initTemplatesFolder","removeNewFileMenuEntry","iconClass","directory","copySystemTemplates","template_path","registerFileAction","deleteAction","downloadAction","editLocallyAction","favoriteAction","moveOrCopyAction","openFolderAction","openInFilesAction","renameAction","sidebarAction","viewInFolderAction","newFolderEntry","favoriteFolders","favoriteFoldersViews","Navigation","getNavigation","register","caption","emptyTitle","emptyCaption","subscribe","addPathToFavorites","removePathFromFavorites","updateAndSortViews","sort","localeCompare","getLanguage","ignorePunctuation","findIndex","splice","remove","registerFavoritesView","controller","AbortController","CancelablePromise","onCancel","abort","defaultSortKey","deep","navigator","addEventListener","noRewrite","registration","serviceWorker","registerDavProperty","module","exports","_typeof","Symbol","iterator","_exports","_setPrototypeOf","o","p","__proto__","_createSuper","Derived","hasNativeReflectConstruct","Reflect","construct","sham","Proxy","valueOf","e","_isNativeReflectConstruct","Super","_getPrototypeOf","NewTarget","TypeError","ReferenceError","_assertThisInitialized","_possibleConstructorReturn","_createForOfIteratorHelper","allowArrayLike","it","minLen","_arrayLikeToArray","from","_unsupportedIterableToArray","F","s","done","f","err","normalCompletion","didErr","step","next","_e2","return","arr","len","arr2","_classCallCheck","instance","Constructor","_defineProperties","descriptor","enumerable","configurable","writable","defineProperty","_createClass","protoProps","staticProps","_defineProperty","_classPrivateFieldInitSpec","privateMap","privateCollection","has","_checkPrivateRedeclaration","set","_classPrivateFieldGet","receiver","_classApplyDescriptorGet","_classExtractFieldDescriptor","_classPrivateFieldSet","_classApplyDescriptorSet","cancelable","isCancelablePromise","toStringTag","_internals","WeakMap","_promise","CancelablePromiseInternal","_ref","_ref$executor","executor","_ref$internals","internals","isCanceled","onCancelList","_ref$promise","promise","cancel","onfulfilled","onrejected","makeCancelable","then","createCallback","onfinally","runWhenCanceled","finally","callbacks","_step","_iterator","console","_CancelablePromiseInt","subClass","superClass","create","_inherits","_super","iterable","makeAllCancelable","allSettled","any","race","reason","_default","onResult","arg","_step2","_iterator2","resolvable","___CSS_LOADER_URL_IMPORT_0___","___CSS_LOADER_URL_IMPORT_1___","___CSS_LOADER_EXPORT___","___CSS_LOADER_URL_REPLACEMENT_0___","___CSS_LOADER_URL_REPLACEMENT_1___","ReflectOwnKeys","R","ReflectApply","Function","ownKeys","getOwnPropertySymbols","getOwnPropertyNames","concat","NumberIsNaN","isNaN","EventEmitter","init","once","emitter","errorListener","removeListener","resolver","eventTargetAgnosticAddListener","flags","addErrorHandlerIfEventEmitter","_events","_eventsCount","_maxListeners","defaultMaxListeners","checkListener","listener","_getMaxListeners","that","_addListener","prepend","m","events","existing","warning","newListener","unshift","warned","w","count","onceWrapper","fired","wrapFn","_onceWrap","state","wrapped","_listeners","unwrap","evlistener","ret","unwrapListeners","arrayClone","listenerCount","copy","wrapListener","removeEventListener","RangeError","setMaxListeners","getMaxListeners","doError","er","listeners","addListener","prependListener","prependOnceListener","list","position","originalListener","pop","spliceOne","off","removeAllListeners","rawListeners","eventNames","http","https","validateParams","cb","codes","createErrorType","code","Base","NodeError","_Base","arg1","arg2","arg3","getMessage","oneOf","expected","thing","actual","determiner","search","msg","start","substr","this_len","endsWith","objectKeys","Duplex","Readable","Writable","v","allowHalfOpen","readable","onend","_writableState","ended","process","nextTick","onEndNT","end","highWaterMark","getBuffer","_readableState","destroyed","PassThrough","Transform","_transform","chunk","encoding","ReadableState","EElistenerCount","Stream","Buffer","OurUint8Array","g","Uint8Array","debugUtil","debuglog","StringDecoder","createReadableStreamAsyncIterator","BufferList","destroyImpl","getHighWaterMark","_require$codes","ERR_INVALID_ARG_TYPE","ERR_STREAM_PUSH_AFTER_EOF","ERR_METHOD_NOT_IMPLEMENTED","ERR_STREAM_UNSHIFT_AFTER_END_EVENT","errorOrDestroy","kProxyEvents","stream","isDuplex","objectMode","readableObjectMode","buffer","pipes","pipesCount","flowing","endEmitted","reading","sync","needReadable","emittedReadable","readableListening","resumeScheduled","paused","emitClose","autoDestroy","defaultEncoding","awaitDrain","readingMore","decoder","read","_read","destroy","_destroy","readableAddChunk","addToFront","skipChunkCheck","emitReadable","emitReadable_","onEofChunk","chunkInvalid","_uint8ArrayToBuffer","addChunk","write","maybeReadMore","_undestroy","undestroy","isPaused","setEncoding","enc","head","clear","MAX_HWM","howMuchToRead","computeNewHighWaterMark","flow","maybeReadMore_","updateReadableListening","resume","nReadingNextTick","resume_","fromList","first","consume","endReadable","endReadableNT","wState","finished","xs","x","l","nOrig","doRead","pipe","dest","pipeOpts","src","endFn","stdout","stderr","unpipe","onunpipe","unpipeInfo","hasUnpiped","onclose","onfinish","ondrain","onerror","ondata","cleanedUp","needDrain","pipeOnDrain","pause","event","fn","dests","ev","res","wrap","asyncIterator","_fromList","ERR_MULTIPLE_CALLBACK","ERR_TRANSFORM_ALREADY_TRANSFORMING","ERR_TRANSFORM_WITH_LENGTH_0","afterTransform","ts","_transformState","transforming","writecb","writechunk","rs","needTransform","writeencoding","transform","flush","_flush","prefinish","_write","err2","CorkedRequest","finish","corkReq","pendingcb","onCorkedFinish","corkedRequestsFree","WritableState","realHasInstance","internalUtil","deprecate","ERR_STREAM_CANNOT_PIPE","ERR_STREAM_DESTROYED","ERR_STREAM_NULL_VALUES","ERR_STREAM_WRITE_AFTER_END","ERR_UNKNOWN_ENCODING","nop","writableObjectMode","finalCalled","ending","noDecode","decodeStrings","writing","corked","bufferProcessing","onwrite","writelen","onwriteStateUpdate","finishMaybe","errorEmitted","onwriteError","needFinish","bufferedRequest","clearBuffer","afterWrite","lastBufferedRequest","prefinished","bufferedRequestCount","writev","_writev","_final","doWrite","onwriteDrain","holder","allBuffers","isBuf","callFinal","need","rState","current","out","_","hasInstance","object","writeAfterEnd","validChunk","newChunk","decodeChunk","last","writeOrBuffer","cork","uncork","setDefaultEncoding","endWritable","_Object$setPrototypeO","input","hint","prim","toPrimitive","_toPrimitive","_toPropertyKey","kLastResolve","kLastReject","kError","kEnded","kLastPromise","kHandlePromise","kStream","createIterResult","readAndResolve","iter","onReadable","AsyncIteratorPrototype","ReadableStreamAsyncIteratorPrototype","lastPromise","wrapForNext","_this2","_Object$create","enumerableOnly","symbols","sym","getOwnPropertyDescriptor","_objectSpread","getOwnPropertyDescriptors","defineProperties","inspect","custom","tail","alloc","offset","allocUnsafe","hasStrings","_getString","_getBuffer","c","nb","buf","depth","customInspect","emitErrorAndCloseNT","emitErrorNT","emitCloseNT","readableDestroyed","writableDestroyed","ERR_STREAM_PREMATURE_CLOSE","noop","eos","called","_len","_key","onlegacyfinish","writableEnded","readableEnded","onrequest","req","setHeader","isRequest","ERR_MISSING_ARGS","to","streams","popCallback","destroys","closed","destroyer","ERR_INVALID_OPT_VALUE","duplexKey","hwm","highWaterMarkFrom","isFinite","pipeline","copyProps","dst","SafeBuffer","encodingOrOffset","allocUnsafeSlow","SlowBuffer","EE","inherits","_isStdio","didOnEnd","cleanup","ClientRequest","statusCodes","defaultProtocol","hostname","port","IncomingMessage","Agent","defaultMaxSockets","globalAgent","STATUS_CODES","METHODS","xhr","getXHR","XMLHttpRequest","XDomainRequest","checkTypeSupport","responseType","isFunction","ReadableStream","writableStream","WritableStream","abortController","arraybuffer","msstream","mozchunkedarraybuffer","overrideMimeType","capability","rStates","readyStates","preferBinary","_opts","_body","_headers","auth","useFetch","mode","_mode","decideMode","_fetchTimer","_socketTimeout","_socketTimer","_onFinish","lowerName","unsafeHeaders","getHeader","removeHeader","_destroyed","timeout","setTimeout","headersObj","Blob","headersList","keyName","_fetchAbortController","requestTimeout","_fetchResponse","_resetTimers","_connect","_xhr","ontimeout","setRequestHeader","_response","onreadystatechange","readyState","DONE","_onXHRProgress","onprogress","send","statusValid","clearTimeout","flushHeaders","setNoDelay","setSocketKeepAlive","UNSENT","OPENED","HEADERS_RECEIVED","resetTimers","rawHeaders","trailers","rawTrailers","statusCode","statusMessage","statusText","_resumeFetch","pipeTo","reader","getReader","_pos","responseURL","getAllResponseHeaders","matches","_charset","mimeType","charsetMatch","responseText","newData","MSStreamReader","byteLength","onload","readAsArrayBuffer","isEncoding","nenc","retried","_normalizeEncoding","normalizeEncoding","text","utf16Text","utf16End","fillLast","utf8FillLast","base64Text","base64End","simpleWrite","simpleEnd","lastNeed","lastTotal","lastChar","utf8CheckByte","byte","r","utf8CheckExtraBytes","total","j","utf8CheckIncomplete","config","localStorage","val","trace","setUid","Ne","_entries","registerEntry","validateEntry","unregisterEntry","getEntryIndex","entries","getEntries","_nc_newfilemenu","C","P","Yt","log","d","pow","toFixed","parseFloat","toLocaleString","Z","DEFAULT","Qt","_action","validateAction","title","inline","renderInline","values","Dt","_nc_fileactions","N","SHARE","Y","oc","ir","_nc_dav_properties","_nc_dav_namespaces","prop","namespaces","V","L","sr","or","be","J","X","crtime","Q","NEW","FAILED","LOCKED","D","_data","_attributes","_knownDavService","updateMtime","deleteProperty","origin","pathname","move","rename","ye","super","ee","te","ur","setHeaders","dr","ve","getcontentlength","Te","_views","_currentView","views","setActive","active","ar","_nc_navigation","Ie","_column","Ae","render","summary","S","O","RegExp","isExist","u","isEmptyObject","getValue","isName","getAllMatches","startIndex","lastIndex","nameRegexp","M","Oe","allowBooleanAttributes","unpairedTags","U","G","z","validate","trim","Re","xe","H","line","tagClosed","tagName","tagStartPos","col","Ve","Ce","Pe","$e","Le","Fe","B","preserveOrder","attributeNamePrefix","attributesGroupName","textNodeName","ignoreAttributes","removeNSPrefix","parseTagValue","parseAttributeValue","trimValues","cdataPropName","numberParseOptions","hex","leadingZeros","eNotation","tagValueProcessor","attributeValueProcessor","stopNodes","alwaysCreateTextNode","commentPropName","processEntities","htmlEntities","ignoreDeclaration","ignorePiTags","transformTagName","transformAttributeName","updateTag","buildOptions","defaultOptions","ke","Xe","Ue","Ge","ze","He","Ke","We","je","Ye","Je","decimalPoint","T","tagname","child","addChild","tt","entityName","regx","entities","rt","skipLike","De","lastEntities","regex","st","replaceEntitiesValue","$","ot","charAt","ut","dt","resolveNameSpace","at","y","saveTextToParentTag","lastIndexOf","tagsNodeStack","tagExp","attrExpPresent","buildAttributesMap","closeIndex","docTypeEntities","parseTextData","rawTagName","isItStopNode","h","E","readStopNodeData","tagContent","lt","ft","ampEntity","ct","ht","pt","gt","ne","ie","Nt","bt","Et","prettify","yt","_t","currentNode","apos","quot","space","cent","pound","yen","euro","copyright","reg","inr","addExternalEntities","parseXml","vt","Tt","se","Pt","xt","oe","K","indentBy","suppressUnpairedNode","suppressEmptyNode","suppressBooleanAttributes","Ft","format","Vt","oneListGroup","isAttribute","attrPrefixLen","St","processTextOrObjNode","Lt","indentate","Rt","tagEndChar","newLine","j2x","buildTextValNode","attrStr","buildObjectNode","repeat","arrayNodeName","buildAttrPairStr","closeTag","W","XMLParser","externalEntities","addEntity","XMLValidator","XMLBuilder","cr","_view","Ut","emptyView","sticky","expanded","Xt","hr","pr","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","loaded","__webpack_modules__","chunkIds","priority","notFulfilled","Infinity","fulfilled","getter","__esModule","definition","chunkId","script","needAttach","scripts","getElementsByTagName","getAttribute","charset","setAttribute","onScriptComplete","prev","doneFns","parentNode","removeChild","nmd","children","scriptUrl","importScripts","currentScript","baseURI","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 02821a44e5210..59bf8d9c47d46 100644 --- a/dist/files-main.js +++ b/dist/files-main.js @@ -1,3 +1,3 @@ /*! For license information please see files-main.js.LICENSE.txt */ -(()=>{var e,n,s,i={75634:(e,n,s)=>{"use strict";var i={};s.r(i),s.d(i,{exclude:()=>_a,extract:()=>Aa,parse:()=>wa,parseUrl:()=>ba,pick:()=>xa,stringify:()=>ya,stringifyUrl:()=>Ca});var a=s(20144),r=!0;function o(){return"undefined"!=typeof navigator&&"undefined"!=typeof window?window:void 0!==s.g?s.g:{}}a.default.util.warn;const l="function"==typeof Proxy,c="devtools-plugin:setup";let d,u;class m{constructor(t,e){this.target=null,this.targetQueue=[],this.onQueue=[],this.plugin=t,this.hook=e;const n={};if(t.settings)for(const e in t.settings){const s=t.settings[e];n[e]=s.defaultValue}const i=`__vue-devtools-plugin-settings__${t.id}`;let a=Object.assign({},n);try{const t=localStorage.getItem(i),e=JSON.parse(t);Object.assign(a,e)}catch(t){}this.fallbacks={getSettings:()=>a,setSettings(t){try{localStorage.setItem(i,JSON.stringify(t))}catch(t){}a=t},now:()=>{return void 0!==d||("undefined"!=typeof window&&window.performance?(d=!0,u=window.performance):void 0!==s.g&&(null===(t=s.g.perf_hooks)||void 0===t?void 0:t.performance)?(d=!0,u=s.g.perf_hooks.performance):d=!1),d?u.now():Date.now();var t}},e&&e.on("plugin:settings:set",((t,e)=>{t===this.plugin.id&&this.fallbacks.setSettings(e)})),this.proxiedOn=new Proxy({},{get:(t,e)=>this.target?this.target.on[e]:(...t)=>{this.onQueue.push({method:e,args:t})}}),this.proxiedTarget=new Proxy({},{get:(t,e)=>this.target?this.target[e]:"on"===e?this.proxiedOn:Object.keys(this.fallbacks).includes(e)?(...t)=>(this.targetQueue.push({method:e,args:t,resolve:()=>{}}),this.fallbacks[e](...t)):(...t)=>new Promise((n=>{this.targetQueue.push({method:e,args:t,resolve:n})}))})}async setRealTarget(t){this.target=t;for(const t of this.onQueue)this.target.on[t.method](...t.args);for(const t of this.targetQueue)t.resolve(await this.target[t.method](...t.args))}}function f(t,e){const n=t,s=o(),i=o().__VUE_DEVTOOLS_GLOBAL_HOOK__,a=l&&n.enableEarlyProxy;if(!i||!s.__VUE_DEVTOOLS_PLUGIN_API_AVAILABLE__&&a){const t=a?new m(n,i):null;(s.__VUE_DEVTOOLS_PLUGINS__=s.__VUE_DEVTOOLS_PLUGINS__||[]).push({pluginDescriptor:n,setupFn:e,proxy:t}),t&&e(t.proxiedTarget)}else i.emit(c,t,e)}var p=s(25108);let g;const h=t=>g=t,v=Symbol();function A(t){return t&&"object"==typeof t&&"[object Object]"===Object.prototype.toString.call(t)&&"function"!=typeof t.toJSON}var w;!function(t){t.direct="direct",t.patchObject="patch object",t.patchFunction="patch function"}(w||(w={}));const y="undefined"!=typeof window,b="undefined"!=typeof __VUE_PROD_DEVTOOLS__&&__VUE_PROD_DEVTOOLS__&&y,C=(()=>"object"==typeof window&&window.window===window?window:"object"==typeof self&&self.self===self?self:"object"==typeof global&&global.global===global?global:"object"==typeof globalThis?globalThis:{HTMLElement:null})();function x(t,e,n){const s=new XMLHttpRequest;s.open("GET",t),s.responseType="blob",s.onload=function(){L(s.response,e,n)},s.onerror=function(){p.error("could not download file")},s.send()}function _(t){const e=new XMLHttpRequest;e.open("HEAD",t,!1);try{e.send()}catch(t){}return e.status>=200&&e.status<=299}function T(t){try{t.dispatchEvent(new MouseEvent("click"))}catch(e){const n=document.createEvent("MouseEvents");n.initMouseEvent("click",!0,!0,window,0,0,0,80,20,!1,!1,!1,!1,0,null),t.dispatchEvent(n)}}const k="object"==typeof navigator?navigator:{userAgent:""},S=(()=>/Macintosh/.test(k.userAgent)&&/AppleWebKit/.test(k.userAgent)&&!/Safari/.test(k.userAgent))(),L=y?"undefined"!=typeof HTMLAnchorElement&&"download"in HTMLAnchorElement.prototype&&!S?function(t,e="download",n){const s=document.createElement("a");s.download=e,s.rel="noopener","string"==typeof t?(s.href=t,s.origin!==location.origin?_(s.href)?x(t,e,n):(s.target="_blank",T(s)):T(s)):(s.href=URL.createObjectURL(t),setTimeout((function(){URL.revokeObjectURL(s.href)}),4e4),setTimeout((function(){T(s)}),0))}:"msSaveOrOpenBlob"in k?function(t,e="download",n){if("string"==typeof t)if(_(t))x(t,e,n);else{const e=document.createElement("a");e.href=t,e.target="_blank",setTimeout((function(){T(e)}))}else navigator.msSaveOrOpenBlob(function(t,{autoBom:e=!1}={}){return e&&/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(t.type)?new Blob([String.fromCharCode(65279),t],{type:t.type}):t}(t,n),e)}:function(t,e,n,s){if((s=s||open("","_blank"))&&(s.document.title=s.document.body.innerText="downloading..."),"string"==typeof t)return x(t,e,n);const i="application/octet-stream"===t.type,a=/constructor/i.test(String(C.HTMLElement))||"safari"in C,r=/CriOS\/[\d]+/.test(navigator.userAgent);if((r||i&&a||S)&&"undefined"!=typeof FileReader){const e=new FileReader;e.onloadend=function(){let t=e.result;if("string"!=typeof t)throw s=null,new Error("Wrong reader.result type");t=r?t:t.replace(/^data:[^;]*;/,"data:attachment/file;"),s?s.location.href=t:location.assign(t),s=null},e.readAsDataURL(t)}else{const e=URL.createObjectURL(t);s?s.location.assign(e):location.href=e,s=null,setTimeout((function(){URL.revokeObjectURL(e)}),4e4)}}:()=>{};function E(t,e){const n="🍍 "+t;"function"==typeof __VUE_DEVTOOLS_TOAST__?__VUE_DEVTOOLS_TOAST__(n,e):"error"===e?p.error(n):"warn"===e?p.warn(n):p.log(n)}function N(t){return"_a"in t&&"install"in t}function F(){if(!("clipboard"in navigator))return E("Your browser doesn't support the Clipboard API","error"),!0}function B(t){return!!(t instanceof Error&&t.message.toLowerCase().includes("document is not focused"))&&(E('You need to activate the "Emulate a focused page" setting in the "Rendering" panel of devtools.',"warn"),!0)}let P;function j(t,e){for(const n in e){const s=t.state.value[n];s?Object.assign(s,e[n]):t.state.value[n]=e[n]}}function I(t){return{_custom:{display:t}}}const O="🍍 Pinia (root)",U="_root";function D(t){return N(t)?{id:U,label:O}:{id:t.$id,label:t.$id}}function $(t){return t?Array.isArray(t)?t.reduce(((t,e)=>(t.keys.push(e.key),t.operations.push(e.type),t.oldValue[e.key]=e.oldValue,t.newValue[e.key]=e.newValue,t)),{oldValue:{},keys:[],operations:[],newValue:{}}):{operation:I(t.type),key:I(t.key),oldValue:t.oldValue,newValue:t.newValue}:{}}function z(t){switch(t){case w.direct:return"mutation";case w.patchFunction:case w.patchObject:return"$patch";default:return"unknown"}}let R=!0;const M=[],V="pinia:mutations",H="pinia",{assign:q}=Object,Z=t=>"🍍 "+t;function G(t,e){f({id:"dev.esm.pinia",label:"Pinia 🍍",logo:"https://pinia.vuejs.org/logo.svg",packageName:"pinia",homepage:"https://pinia.vuejs.org",componentStateTypes:M,app:t},(n=>{"function"!=typeof n.now&&E("You seem to be using an outdated version of Vue Devtools. Are you still using the Beta release instead of the stable one? You can find the links at https://devtools.vuejs.org/guide/installation.html."),n.addTimelineLayer({id:V,label:"Pinia 🍍",color:15064968}),n.addInspector({id:H,label:"Pinia 🍍",icon:"storage",treeFilterPlaceholder:"Search stores",actions:[{icon:"content_copy",action:()=>{!async function(t){if(!F())try{await navigator.clipboard.writeText(JSON.stringify(t.state.value)),E("Global state copied to clipboard.")}catch(t){if(B(t))return;E("Failed to serialize the state. Check the console for more details.","error"),p.error(t)}}(e)},tooltip:"Serialize and copy the state"},{icon:"content_paste",action:async()=>{await async function(t){if(!F())try{j(t,JSON.parse(await navigator.clipboard.readText())),E("Global state pasted from clipboard.")}catch(t){if(B(t))return;E("Failed to deserialize the state from clipboard. Check the console for more details.","error"),p.error(t)}}(e),n.sendInspectorTree(H),n.sendInspectorState(H)},tooltip:"Replace the state with the content of your clipboard"},{icon:"save",action:()=>{!async function(t){try{L(new Blob([JSON.stringify(t.state.value)],{type:"text/plain;charset=utf-8"}),"pinia-state.json")}catch(t){E("Failed to export the state as JSON. Check the console for more details.","error"),p.error(t)}}(e)},tooltip:"Save the state as a JSON file"},{icon:"folder_open",action:async()=>{await async function(t){try{const e=(P||(P=document.createElement("input"),P.type="file",P.accept=".json"),function(){return new Promise(((t,e)=>{P.onchange=async()=>{const e=P.files;if(!e)return t(null);const n=e.item(0);return t(n?{text:await n.text(),file:n}:null)},P.oncancel=()=>t(null),P.onerror=e,P.click()}))}),n=await e();if(!n)return;const{text:s,file:i}=n;j(t,JSON.parse(s)),E(`Global state imported from "${i.name}".`)}catch(t){E("Failed to import the state from JSON. Check the console for more details.","error"),p.error(t)}}(e),n.sendInspectorTree(H),n.sendInspectorState(H)},tooltip:"Import the state from a JSON file"}],nodeActions:[{icon:"restore",tooltip:'Reset the state (with "$reset")',action:t=>{const n=e._s.get(t);n?"function"!=typeof n.$reset?E(`Cannot reset "${t}" store because it doesn't have a "$reset" method implemented.`,"warn"):(n.$reset(),E(`Store "${t}" reset.`)):E(`Cannot reset "${t}" store because it wasn't found.`,"warn")}}]}),n.on.inspectComponent(((t,e)=>{const n=t.componentInstance&&t.componentInstance.proxy;if(n&&n._pStores){const e=t.componentInstance.proxy._pStores;Object.values(e).forEach((e=>{t.instanceData.state.push({type:Z(e.$id),key:"state",editable:!0,value:e._isOptionsAPI?{_custom:{value:(0,a.toRaw)(e.$state),actions:[{icon:"restore",tooltip:"Reset the state of this store",action:()=>e.$reset()}]}}:Object.keys(e.$state).reduce(((t,n)=>(t[n]=e.$state[n],t)),{})}),e._getters&&e._getters.length&&t.instanceData.state.push({type:Z(e.$id),key:"getters",editable:!1,value:e._getters.reduce(((t,n)=>{try{t[n]=e[n]}catch(e){t[n]=e}return t}),{})})}))}})),n.on.getInspectorTree((n=>{if(n.app===t&&n.inspectorId===H){let t=[e];t=t.concat(Array.from(e._s.values())),n.rootNodes=(n.filter?t.filter((t=>"$id"in t?t.$id.toLowerCase().includes(n.filter.toLowerCase()):O.toLowerCase().includes(n.filter.toLowerCase()))):t).map(D)}})),n.on.getInspectorState((n=>{if(n.app===t&&n.inspectorId===H){const t=n.nodeId===U?e:e._s.get(n.nodeId);if(!t)return;t&&(n.state=function(t){if(N(t)){const e=Array.from(t._s.keys()),n=t._s,s={state:e.map((e=>({editable:!0,key:e,value:t.state.value[e]}))),getters:e.filter((t=>n.get(t)._getters)).map((t=>{const e=n.get(t);return{editable:!1,key:t,value:e._getters.reduce(((t,n)=>(t[n]=e[n],t)),{})}}))};return s}const e={state:Object.keys(t.$state).map((e=>({editable:!0,key:e,value:t.$state[e]})))};return t._getters&&t._getters.length&&(e.getters=t._getters.map((e=>({editable:!1,key:e,value:t[e]})))),t._customProperties.size&&(e.customProperties=Array.from(t._customProperties).map((e=>({editable:!0,key:e,value:t[e]})))),e}(t))}})),n.on.editInspectorState(((n,s)=>{if(n.app===t&&n.inspectorId===H){const t=n.nodeId===U?e:e._s.get(n.nodeId);if(!t)return E(`store "${n.nodeId}" not found`,"error");const{path:s}=n;N(t)?s.unshift("state"):1===s.length&&t._customProperties.has(s[0])&&!(s[0]in t.$state)||s.unshift("$state"),R=!1,n.set(t,s,n.state.value),R=!0}})),n.on.editComponentState((t=>{if(t.type.startsWith("🍍")){const n=t.type.replace(/^🍍\s*/,""),s=e._s.get(n);if(!s)return E(`store "${n}" not found`,"error");const{path:i}=t;if("state"!==i[0])return E(`Invalid path for store "${n}":\n${i}\nOnly state can be modified.`);i[0]="$state",R=!1,t.set(s,i,t.state.value),R=!0}}))}))}let W,Y=0;function K(t,e,n){const s=e.reduce(((e,n)=>(e[n]=(0,a.toRaw)(t)[n],e)),{});for(const e in s)t[e]=function(){const i=Y,a=n?new Proxy(t,{get:(...t)=>(W=i,Reflect.get(...t)),set:(...t)=>(W=i,Reflect.set(...t))}):t;W=i;const r=s[e].apply(a,arguments);return W=void 0,r}}function J({app:t,store:e,options:n}){if(e.$id.startsWith("__hot:"))return;e._isOptionsAPI=!!n.state,K(e,Object.keys(n.actions),e._isOptionsAPI);const s=e._hotUpdate;(0,a.toRaw)(e)._hotUpdate=function(t){s.apply(this,arguments),K(e,Object.keys(t._hmrPayload.actions),!!e._isOptionsAPI)},function(t,e){M.includes(Z(e.$id))||M.push(Z(e.$id)),f({id:"dev.esm.pinia",label:"Pinia 🍍",logo:"https://pinia.vuejs.org/logo.svg",packageName:"pinia",homepage:"https://pinia.vuejs.org",componentStateTypes:M,app:t,settings:{logStoreChanges:{label:"Notify about new/deleted stores",type:"boolean",defaultValue:!0}}},(t=>{const n="function"==typeof t.now?t.now.bind(t):Date.now;e.$onAction((({after:s,onError:i,name:a,args:r})=>{const o=Y++;t.addTimelineEvent({layerId:V,event:{time:n(),title:"🛫 "+a,subtitle:"start",data:{store:I(e.$id),action:I(a),args:r},groupId:o}}),s((s=>{W=void 0,t.addTimelineEvent({layerId:V,event:{time:n(),title:"🛬 "+a,subtitle:"end",data:{store:I(e.$id),action:I(a),args:r,result:s},groupId:o}})})),i((s=>{W=void 0,t.addTimelineEvent({layerId:V,event:{time:n(),logType:"error",title:"💥 "+a,subtitle:"end",data:{store:I(e.$id),action:I(a),args:r,error:s},groupId:o}})}))}),!0),e._customProperties.forEach((s=>{(0,a.watch)((()=>(0,a.unref)(e[s])),((e,i)=>{t.notifyComponentUpdate(),t.sendInspectorState(H),R&&t.addTimelineEvent({layerId:V,event:{time:n(),title:"Change",subtitle:s,data:{newValue:e,oldValue:i},groupId:W}})}),{deep:!0})})),e.$subscribe((({events:s,type:i},a)=>{if(t.notifyComponentUpdate(),t.sendInspectorState(H),!R)return;const r={time:n(),title:z(i),data:q({store:I(e.$id)},$(s)),groupId:W};i===w.patchFunction?r.subtitle="⤵️":i===w.patchObject?r.subtitle="🧩":s&&!Array.isArray(s)&&(r.subtitle=s.type),s&&(r.data["rawEvent(s)"]={_custom:{display:"DebuggerEvent",type:"object",tooltip:"raw DebuggerEvent[]",value:s}}),t.addTimelineEvent({layerId:V,event:r})}),{detached:!0,flush:"sync"});const s=e._hotUpdate;e._hotUpdate=(0,a.markRaw)((i=>{s(i),t.addTimelineEvent({layerId:V,event:{time:n(),title:"🔥 "+e.$id,subtitle:"HMR update",data:{store:I(e.$id),info:I("HMR update")}}}),t.notifyComponentUpdate(),t.sendInspectorTree(H),t.sendInspectorState(H)}));const{$dispose:i}=e;e.$dispose=()=>{i(),t.notifyComponentUpdate(),t.sendInspectorTree(H),t.sendInspectorState(H),t.getSettings().logStoreChanges&&E(`Disposed "${e.$id}" store 🗑`)},t.notifyComponentUpdate(),t.sendInspectorTree(H),t.sendInspectorState(H),t.getSettings().logStoreChanges&&E(`"${e.$id}" store installed 🆕`)}))}(t,e)}const Q=()=>{};function X(t,e,n,s=Q){t.push(e);const i=()=>{const n=t.indexOf(e);n>-1&&(t.splice(n,1),s())};return!n&&(0,a.getCurrentScope)()&&(0,a.onScopeDispose)(i),i}function tt(t,...e){t.slice().forEach((t=>{t(...e)}))}const et=t=>t();function nt(t,e){t instanceof Map&&e instanceof Map&&e.forEach(((e,n)=>t.set(n,e))),t instanceof Set&&e instanceof Set&&e.forEach(t.add,t);for(const n in e){if(!e.hasOwnProperty(n))continue;const s=e[n],i=t[n];A(i)&&A(s)&&t.hasOwnProperty(n)&&!(0,a.isRef)(s)&&!(0,a.isReactive)(s)?t[n]=nt(i,s):t[n]=s}return t}const st=Symbol(),it=new WeakMap,{assign:at}=Object;function rt(t,e,n={},s,i,o){let l;const c=at({actions:{}},n),d={deep:!0};let u,m,f,p=[],g=[];const v=s.state.value[t];o||v||(r?(0,a.set)(s.state.value,t,{}):s.state.value[t]={});const y=(0,a.ref)({});let C;function x(e){let n;u=m=!1,"function"==typeof e?(e(s.state.value[t]),n={type:w.patchFunction,storeId:t,events:f}):(nt(s.state.value[t],e),n={type:w.patchObject,payload:e,storeId:t,events:f});const i=C=Symbol();(0,a.nextTick)().then((()=>{C===i&&(u=!0)})),m=!0,tt(p,n,s.state.value[t])}const _=o?function(){const{state:t}=n,e=t?t():{};this.$patch((t=>{at(t,e)}))}:Q;function T(e,n){return function(){h(s);const i=Array.from(arguments),a=[],r=[];let o;tt(g,{args:i,name:e,store:L,after:function(t){a.push(t)},onError:function(t){r.push(t)}});try{o=n.apply(this&&this.$id===t?this:L,i)}catch(t){throw tt(r,t),t}return o instanceof Promise?o.then((t=>(tt(a,t),t))).catch((t=>(tt(r,t),Promise.reject(t)))):(tt(a,o),o)}}const k=(0,a.markRaw)({actions:{},getters:{},state:[],hotState:y}),S={_p:s,$id:t,$onAction:X.bind(null,g),$patch:x,$reset:_,$subscribe(e,n={}){const i=X(p,e,n.detached,(()=>r())),r=l.run((()=>(0,a.watch)((()=>s.state.value[t]),(s=>{("sync"===n.flush?m:u)&&e({storeId:t,type:w.direct,events:f},s)}),at({},d,n))));return i},$dispose:function(){l.stop(),p=[],g=[],s._s.delete(t)}};r&&(S._r=!1);const L=(0,a.reactive)(b?at({_hmrPayload:k,_customProperties:(0,a.markRaw)(new Set)},S):S);s._s.set(t,L);const E=(s._a&&s._a.runWithContext||et)((()=>s._e.run((()=>(l=(0,a.effectScope)()).run(e)))));for(const e in E){const n=E[e];if((0,a.isRef)(n)&&(F=n,!(0,a.isRef)(F)||!F.effect)||(0,a.isReactive)(n))o||(!v||(N=n,r?it.has(N):A(N)&&N.hasOwnProperty(st))||((0,a.isRef)(n)?n.value=v[e]:nt(n,v[e])),r?(0,a.set)(s.state.value[t],e,n):s.state.value[t][e]=n);else if("function"==typeof n){const t=T(e,n);r?(0,a.set)(E,e,t):E[e]=t,c.actions[e]=n}}var N,F;if(r?Object.keys(E).forEach((t=>{(0,a.set)(L,t,E[t])})):(at(L,E),at((0,a.toRaw)(L),E)),Object.defineProperty(L,"$state",{get:()=>s.state.value[t],set:t=>{x((e=>{at(e,t)}))}}),b){const t={writable:!0,configurable:!0,enumerable:!1};["_p","_hmrPayload","_getters","_customProperties"].forEach((e=>{Object.defineProperty(L,e,at({value:L[e]},t))}))}return r&&(L._r=!0),s._p.forEach((t=>{if(b){const e=l.run((()=>t({store:L,app:s._a,pinia:s,options:c})));Object.keys(e||{}).forEach((t=>L._customProperties.add(t))),at(L,e)}else at(L,l.run((()=>t({store:L,app:s._a,pinia:s,options:c}))))})),v&&o&&n.hydrate&&n.hydrate(L.$state,v),u=!0,m=!0,L}function ot(t,e,n){let s,i;const o="function"==typeof e;function l(t,n){const l=!!(0,a.getCurrentInstance)();return(t=t||(l?(0,a.inject)(v,null):null))&&h(t),(t=g)._s.has(s)||(o?rt(s,e,i,t):function(t,e,n,s){const{state:i,actions:o,getters:l}=e,c=n.state.value[t];let d;d=rt(t,(function(){c||(r?(0,a.set)(n.state.value,t,i?i():{}):n.state.value[t]=i?i():{});const e=(0,a.toRefs)(n.state.value[t]);return at(e,o,Object.keys(l||{}).reduce(((e,s)=>(e[s]=(0,a.markRaw)((0,a.computed)((()=>{h(n);const e=n._s.get(t);if(!r||e._r)return l[s].call(e,e)}))),e)),{}))}),e,n,0,!0)}(s,i,t)),t._s.get(s)}return"string"==typeof t?(s=t,i=o?n:e):(i=t,s=t.id),l.$id=s,l}var lt=s(5656),ct=s(77958),dt=s(69183),ut=s(42515),mt=s(62520),ft=function(t,e){return te?1:0},pt=function(t,e){var n=t.localeCompare(e);return n?n/Math.abs(n):0},gt=/(^0x[\da-fA-F]+$|^([+-]?(?:\d+(?:\.\d*)?|\.\d+)(?:[eE][+-]?\d+)?(?!\.\d+)(?=\D|\s|$))|\d+)/g,ht=/^\s+|\s+$/g,vt=/\s+/g,At=/^[+-]?(?:\d+(?:\.\d*)?|\.\d+)(?:[eE][+-]?\d+)?$/,wt=/(^([\w ]+,?[\w ]+)?[\w ]+,?[\w ]+\d+:\d+(:\d+)?[\w ]?|^\d{1,4}[/-]\d{1,4}[/-]\d{1,4}|^\w+, \w+ \d+, \d{4})/,yt=/^0+[1-9]{1}[0-9]*$/,bt=/[^\x00-\x80]/,Ct=function(t,e){return te?1:0},xt=function(t){return t.replace(vt," ").replace(ht,"")},_t=function(t){if(0!==t.length){var e=Number(t);if(!Number.isNaN(e))return e}},Tt=function(t,e,n){if(At.test(t)&&(!yt.test(t)||0===e||"."!==n[e-1]))return _t(t)||0},kt=function(t,e,n){return{parsedNumber:Tt(t,e,n),normalizedString:xt(t)}},St=function(t){var e=function(t){return t.replace(gt,"\0$1\0").replace(/\0$/,"").replace(/^\0/,"").split("\0")}(t).map(kt);return e},Lt=function(t){return"function"==typeof t},Et=function(t){return Number.isNaN(t)||t instanceof Number&&Number.isNaN(t.valueOf())},Nt=function(t){return null===t},Ft=function(t){return!(null===t||"object"!=typeof t||Array.isArray(t)||t instanceof Number||t instanceof String||t instanceof Boolean||t instanceof Date)},Bt=function(t){return"symbol"==typeof t},Pt=function(t){return void 0===t},jt=function(t){if("string"==typeof t||t instanceof String||("number"==typeof t||t instanceof Number)&&!Et(t)||"boolean"==typeof t||t instanceof Boolean||t instanceof Date){var e=function(t){return"boolean"==typeof t||t instanceof Boolean?Number(t).toString():"number"==typeof t||t instanceof Number?t.toString():t instanceof Date?t.getTime().toString():"string"==typeof t||t instanceof String?t.toLowerCase().replace(ht,""):""}(t),n=function(t){var e=_t(t);return void 0!==e?e:function(t){try{var e=Date.parse(t);return!Number.isNaN(e)&&wt.test(t)?e:void 0}catch(t){return}}(t)}(e);return{parsedNumber:n,chunks:St(n?""+n:e),value:t}}return{isArray:Array.isArray(t),isFunction:Lt(t),isNaN:Et(t),isNull:Nt(t),isObject:Ft(t),isSymbol:Bt(t),isUndefined:Pt(t),value:t}},It=function(t){return"function"==typeof t?t:function(e){if(Array.isArray(e)){var n=Number(t);if(Number.isInteger(n))return e[n]}else if(e&&"object"==typeof e){var s=Object.getOwnPropertyDescriptor(e,t);return null==s?void 0:s.value}return e}};function Ot(t,e,n){if(!t||!Array.isArray(t))return[];var s=function(t){if(!t)return[];var e=Array.isArray(t)?[].concat(t):[t];return e.some((function(t){return"string"!=typeof t&&"number"!=typeof t&&"function"!=typeof t}))?[]:e}(e),i=function(t){if(!t)return[];var e=Array.isArray(t)?[].concat(t):[t];return e.some((function(t){return"asc"!==t&&"desc"!==t&&"function"!=typeof t}))?[]:e}(n);return function(t,e,n){var s=e.length?e.map(It):[function(t){return t}],i=t.map((function(t,e){return{index:e,values:s.map((function(e){return e(t)})).map(jt)}}));return i.sort((function(t,e){return function(t,e,n){for(var s=t.index,i=t.values,a=e.index,r=e.values,o=i.length,l=n.length,c=0;ci||s>i?n<=i?-1:1:0}(f.chunks,p.chunks):function(t,e){return(t.chunks?!e.chunks:e.chunks)?t.chunks?-1:1:(t.isNaN?!e.isNaN:e.isNaN)?t.isNaN?-1:1:(t.isSymbol?!e.isSymbol:e.isSymbol)?t.isSymbol?-1:1:(t.isObject?!e.isObject:e.isObject)?t.isObject?-1:1:(t.isArray?!e.isArray:e.isArray)?t.isArray?-1:1:(t.isFunction?!e.isFunction:e.isFunction)?t.isFunction?-1:1:(t.isNull?!e.isNull:e.isNull)?t.isNull?-1:1:0}(f,p));if(m)return m*("desc"===d?-1:1)}}var f,p;return s-a}(t,e,n)})),i.map((function(e){return function(t,e){return t[e]}(t,e.index)}))}(t,s,i)}var Ut=s(31352),Dt=s(41922),$t=s(9239),zt=s(90207);const Rt={name:"FormatListBulletedSquareIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};var Mt=s(51900);const Vt=(0,Mt.Z)(Rt,(function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon format-list-bulleted-square-icon",attrs:{"aria-hidden":!t.title,"aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M3,4H7V8H3V4M9,5V7H21V5H9M3,10H7V14H3V10M9,11V13H21V11H9M3,16H7V20H3V16M9,17V19H21V17H9"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports;var Ht=s(40874),qt=s(74628),Zt=s(22175),Gt=s(64865),Wt=s(20435);const Yt={name:"ShareVariantIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},Kt=(0,Mt.Z)(Yt,(function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon share-variant-icon",attrs:{"aria-hidden":!t.title,"aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M18,16.08C17.24,16.08 16.56,16.38 16.04,16.85L8.91,12.7C8.96,12.47 9,12.24 9,12C9,11.76 8.96,11.53 8.91,11.3L15.96,7.19C16.5,7.69 17.21,8 18,8A3,3 0 0,0 21,5A3,3 0 0,0 18,2A3,3 0 0,0 15,5C15,5.24 15.04,5.47 15.09,5.7L8.04,9.81C7.5,9.31 6.79,9 6,9A3,3 0 0,0 3,12A3,3 0 0,0 6,15C6.79,15 7.5,14.69 8.04,14.19L15.16,18.34C15.11,18.55 15.08,18.77 15.08,19C15.08,20.61 16.39,21.91 18,21.91C19.61,21.91 20.92,20.61 20.92,19A2.92,2.92 0 0,0 18,16.08Z"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports,Jt={name:"ViewGridIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},Qt=(0,Mt.Z)(Jt,(function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon view-grid-icon",attrs:{"aria-hidden":!t.title,"aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M3,11H11V3H3M3,21H11V13H3M13,21H21V13H13M13,3V11H21V3"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports;var Xt=s(48250);const te=(0,s(17499).IY)().setApp("files").detectUser().build(),ee=new lt.p$({id:"details",displayName:()=>(0,Ut.Iu)("files","Open details"),iconSvgInline:()=>Xt,enabled:t=>1===t.length&&!!t[0]&&!!window?.OCA?.Files?.Sidebar&&((t[0].root?.startsWith("/files/")&&t[0].permissions!==lt.y3.NONE)??!1),async exec(t,e,n){try{return await window.OCA.Files.Sidebar.open(t.path),window.OCP.Files.Router.goToRoute(null,{view:e.id,fileid:t.fileid},{dir:n},!0),null}catch(t){return te.error("Error while opening sidebar",{error:t}),!1}},order:-50}),ne=function(){const t=ot("files",{state:()=>({files:{},roots:{}}),getters:{getNode:t=>e=>t.files[e],getNodes:t=>e=>e.map((e=>t.files[e])).filter(Boolean),getRoot:t=>e=>t.roots[e]},actions:{updateNodes(t){const e=t.reduce(((t,e)=>e.fileid?(t[e.fileid]=e,t):(te.error("Trying to update/set a node without fileid",e),t)),{});a.default.set(this,"files",{...this.files,...e})},deleteNodes(t){t.forEach((t=>{t.fileid&&a.default.delete(this.files,t.fileid)}))},setRoot(t){let{service:e,root:n}=t;a.default.set(this.roots,e,n)},onDeletedNode(t){this.deleteNodes([t])},onCreatedNode(t){this.updateNodes([t])},onUpdatedNode(t){this.updateNodes([t])}}})(...arguments);return t._initialized||((0,dt.Ld)("files:node:created",t.onCreatedNode),(0,dt.Ld)("files:node:deleted",t.onDeletedNode),(0,dt.Ld)("files:node:updated",t.onUpdatedNode),t._initialized=!0),t},se=function(){const t=ne(),e=ot("paths",{state:()=>({paths:{}}),getters:{getPath:t=>(e,n)=>{if(t.paths[e])return t.paths[e][n]}},actions:{addPath(t){this.paths[t.service]||a.default.set(this.paths,t.service,{}),a.default.set(this.paths[t.service],t.path,t.fileid)},onCreatedNode(e){const n=(0,lt.Ti)()?.active?.id||"files";if(e.fileid){if(e.type===lt.Tv.Folder&&this.addPath({service:n,path:e.path,fileid:e.fileid}),"/"===e.dirname){const s=t.getRoot(n);return s._children||a.default.set(s,"_children",[]),void s._children.push(e.fileid)}if(this.paths[n][e.dirname]){const s=this.paths[n][e.dirname],i=t.getNode(s);return te.debug("Path already exists, updating children",{parentFolder:i,node:e}),i?(i._children||a.default.set(i,"_children",[]),void i._children.push(e.fileid)):void te.error("Parent folder not found",{parentId:s})}te.debug("Parent path does not exists, skipping children update",{node:e})}else te.error("Node has no fileid",{node:e})}}})(...arguments);return e._initialized||((0,dt.Ld)("files:node:created",e.onCreatedNode),e._initialized=!0),e},ie=ot("selection",{state:()=>({selected:[],lastSelection:[],lastSelectedIndex:null}),actions:{set(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];a.default.set(this,"selected",[...new Set(t)])},setLastIndex(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;a.default.set(this,"lastSelection",t?this.selected:[]),a.default.set(this,"lastSelectedIndex",t)},reset(){a.default.set(this,"selected",[]),a.default.set(this,"lastSelection",[]),a.default.set(this,"lastSelectedIndex",null)}}});let ae;var re=s(79753),oe=s(43554),le=s(93664);const ce=(0,oe.j)("files","config",{show_hidden:!1,crop_image_previews:!0,sort_favorites_first:!0,grid_view:!1}),de=function(){const t=ot("userconfig",{state:()=>({userConfig:ce}),actions:{onUpdate(t,e){a.default.set(this.userConfig,t,e)},async update(t,e){await le.Z.put((0,re.generateUrl)("/apps/files/api/v1/config/"+t),{value:e}),(0,dt.j8)("files:config:updated",{key:t,value:e})}}})(...arguments);return t._initialized||((0,dt.Ld)("files:config:updated",(function(e){let{key:n,value:s}=e;t.onUpdate(n,s)})),t._initialized=!0),t},ue=(0,oe.j)("files","viewConfigs",{}),me=function(){const t=ot("viewconfig",{state:()=>({viewConfig:ue}),getters:{getConfig:t=>e=>t.viewConfig[e]||{}},actions:{onUpdate(t,e,n){this.viewConfig[t]||a.default.set(this.viewConfig,t,{}),a.default.set(this.viewConfig[t],e,n)},async update(t,e,n){le.Z.put((0,re.generateUrl)(`/apps/files/api/v1/views/${t}/${e}`),{value:n}),(0,dt.j8)("files:viewconfig:updated",{view:t,key:e,value:n})},setSortingBy(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"basename",e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"files";this.update(e,"sorting_mode",t),this.update(e,"sorting_direction","asc")},toggleSortingDirection(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"files";const e="asc"===(this.getConfig(t)||{sorting_direction:"asc"}).sorting_direction?"desc":"asc";this.update(t,"sorting_direction",e)}}}),e=t(...arguments);return e._initialized||((0,dt.Ld)("files:viewconfig:updated",(function(t){let{view:n,key:s,value:i}=t;e.onUpdate(n,s,i)})),e._initialized=!0),e},fe={name:"HomeIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},pe=(0,Mt.Z)(fe,(function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon home-icon",attrs:{"aria-hidden":!t.title,"aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M10,20V14H14V20H19V12H22L12,3L2,12H5V20H10Z"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports;var ge=s(36402),he=s(49231);const ve=a.default.extend({name:"BreadCrumbs",components:{Home:pe,NcBreadcrumbs:he.Z,NcBreadcrumb:ge.Z},props:{path:{type:String,default:"/"}},setup:()=>({filesStore:ne(),pathsStore:se()}),computed:{currentView(){return this.$navigation.active},dirs(){var t;return["/",...this.path.split("/").filter(Boolean).map((t="/",e=>t+=`${e}/`)).map((t=>t.replace(/^(.+)\/$/,"$1")))]},sections(){return this.dirs.map((t=>{const e=this.getFileIdFromPath(t),n={...this.$route,params:{fileid:e},query:{dir:t}};return{dir:t,exact:!0,name:this.getDirDisplayName(t),to:n}}))}},methods:{getNodeFromId(t){return this.filesStore.getNode(t)},getFileIdFromPath(t){return this.pathsStore.getPath(this.currentView?.id,t)},getDirDisplayName(e){if("/"===e)return t("files","Home");const n=this.getFileIdFromPath(e),s=this.getNodeFromId(n);return s?.attributes?.displayName||(0,mt.basename)(e)},onClick(t){t?.query?.dir===this.$route.query.dir&&this.$emit("reload")},ariaLabel(e){return e?.to?.query?.dir===this.$route.query.dir?t("files","Reload current directory"):t("files",'Go to the "{dir}" directory',e)}}});var Ae=s(93379),we=s.n(Ae),ye=s(7795),be=s.n(ye),Ce=s(90569),xe=s.n(Ce),_e=s(3565),Te=s.n(_e),ke=s(19216),Se=s.n(ke),Le=s(44589),Ee=s.n(Le),Ne=s(26057),Fe={};Fe.styleTagTransform=Ee(),Fe.setAttributes=Te(),Fe.insert=xe().bind(null,"head"),Fe.domAPI=be(),Fe.insertStyleElement=Se(),we()(Ne.Z,Fe),Ne.Z&&Ne.Z.locals&&Ne.Z.locals;const Be=(0,Mt.Z)(ve,(function(){var t=this,e=t._self._c;return t._self._setupProxy,e("NcBreadcrumbs",{attrs:{"data-cy-files-content-breadcrumbs":""},scopedSlots:t._u([{key:"actions",fn:function(){return[t._t("actions")]},proxy:!0}],null,!0)},t._l(t.sections,(function(n,s){return e("NcBreadcrumb",t._b({key:n.dir,attrs:{"aria-label":t.ariaLabel(n),title:t.ariaLabel(n)},nativeOn:{click:function(e){return t.onClick(n.to)}},scopedSlots:t._u([0===s?{key:"icon",fn:function(){return[e("Home",{attrs:{size:20}})]},proxy:!0}:null],null,!0)},"NcBreadcrumb",n,!1))})),1)}),[],!1,null,"c33b6662",null).exports;var Pe=s(64024),je=s(52925),Ie=s(80351),Oe=s.n(Ie);const Ue={name:"FileMultipleIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},De=(0,Mt.Z)(Ue,(function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon file-multiple-icon",attrs:{"aria-hidden":!t.title,"aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("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"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports;var $e=s(81456),ze=s(65720);const Re=(0,Mt.Z)(ze.Z,$e.s,$e.x,!1,null,null,null).exports,Me=a.default.extend({name:"DragAndDropPreview",components:{FileMultipleIcon:De,FolderIcon:Re},data:()=>({nodes:[]}),computed:{isSingleNode(){return 1===this.nodes.length},isSingleFolder(){return this.isSingleNode&&this.nodes[0].type===lt.Tv.Folder},name(){return this.size?`${this.summary} – ${this.size}`:this.summary},size(){const t=this.nodes.reduce(((t,e)=>t+e.size||0),0),e=parseInt(t,10)||0;return"number"!=typeof e||e<0?null:(0,lt.sS)(e,!0)},summary(){if(this.isSingleNode){const t=this.nodes[0];return t.attributes?.displayName||t.basename}return(t=>{const e=t.filter((t=>t.type===lt.Tv.File)).length,n=t.filter((t=>t.type===lt.Tv.Folder)).length;return 0===e?(0,Ut.uN)("files","{folderCount} folder","{folderCount} folders",n,{folderCount:n}):0===n?(0,Ut.uN)("files","{fileCount} file","{fileCount} files",e,{fileCount:e}):1===e?(0,Ut.uN)("files","1 file and {folderCount} folder","1 file and {folderCount} folders",n,{folderCount:n}):1===n?(0,Ut.uN)("files","{fileCount} file and 1 folder","{fileCount} files and 1 folder",e,{fileCount:e}):(0,Ut.Iu)("files","{fileCount} files and {folderCount} folders",{fileCount:e,folderCount:n})})(this.nodes)}},methods:{update(t){this.nodes=t,this.$refs.previewImg.replaceChildren(),t.slice(0,3).forEach((t=>{const e=document.querySelector(`[data-cy-files-list-row-fileid="${t.fileid}"] .files-list__row-icon img`);e&&this.$refs.previewImg.appendChild(e.parentNode.cloneNode(!0))})),this.$nextTick((()=>{this.$emit("loaded",this.$el)}))}}}),Ve=Me;var He=s(50262),qe={};qe.styleTagTransform=Ee(),qe.setAttributes=Te(),qe.insert=xe().bind(null,"head"),qe.domAPI=be(),qe.insertStyleElement=Se(),we()(He.Z,qe),He.Z&&He.Z.locals&&He.Z.locals;const Ze=(0,Mt.Z)(Ve,(function(){var t=this,e=t._self._c;return t._self._setupProxy,e("div",{staticClass:"files-list-drag-image"},[e("span",{staticClass:"files-list-drag-image__icon"},[e("span",{ref:"previewImg"}),t._v(" "),t.isSingleFolder?e("FolderIcon"):e("FileMultipleIcon")],1),t._v(" "),e("span",{staticClass:"files-list-drag-image__name"},[t._v(t._s(t.name))])])}),[],!1,null,null,null).exports,Ge=a.default.extend(Ze);let We;const Ye=async t=>new Promise((e=>{We||(We=(new Ge).$mount(),document.body.appendChild(We.$el)),We.update(t),We.$on("loaded",(()=>{e(We.$el),We.$off("loaded")}))}));var Ke=s(51473),Je={};Je.styleTagTransform=Ee(),Je.setAttributes=Te(),Je.insert=xe().bind(null,"head"),Je.domAPI=be(),Je.insertStyleElement=Se(),we()(Ke.Z,Je),Ke.Z&&Ke.Z.locals&&Ke.Z.locals;var Qe=s(51120);const{Axios:Xe,AxiosError:tn,CanceledError:en,isCancel:nn,CancelToken:sn,VERSION:an,all:rn,Cancel:on,isAxiosError:ln,spread:cn,toFormData:dn,AxiosHeaders:un,HttpStatusCode:mn,formToJSON:fn,getAdapter:pn,mergeConfig:gn}=Qe.default;var hn=s(59546),vn=s(96384),An=s(59440);let wn;const yn=()=>(wn||(wn=new An.Z({concurrency:3})),wn);var bn;!function(t){t.MOVE="Move",t.COPY="Copy",t.MOVE_OR_COPY="move-or-copy"}(bn||(bn={}));const Cn=t=>0!=(t.reduce(((t,e)=>Math.min(t,e.permissions)),lt.y3.ALL)<.y3.UPDATE),xn=t=>(t=>t.every((t=>!JSON.parse(t.attributes?.["share-attributes"]??"[]").some((t=>"permissions"===t.scope&&!1===t.enabled&&"download"===t.key)))))(t);var _n=s(25108);const Tn=t=>Cn(t)?xn(t)?bn.MOVE_OR_COPY:bn.MOVE:bn.COPY,kn=async function(t,e,n){let s=arguments.length>3&&void 0!==arguments[3]&&arguments[3];if(!e)return;if(e.type!==lt.Tv.Folder)throw new Error((0,Ut.Iu)("files","Destination is not a folder"));if(t.dirname===e.path)throw new Error((0,Ut.Iu)("files","This file/folder is already in that directory"));if(e.path.startsWith(t.path))throw new Error((0,Ut.Iu)("files","You cannot move a file/folder onto itself or into a subfolder of itself"));const i=(0,mt.join)(e.path,t.basename),r=(0,re.generateRemoteUrl)(`dav/files/${(0,ct.ts)()?.uid}${i}`);te.debug(`${n} ${t.basename} to ${r}`),a.default.set(t,"status",lt.e4.LOADING);const o=yn();return await o.add((async()=>{try{await(0,le.Z)({method:n===bn.COPY?"COPY":"MOVE",url:t.encodedSource,headers:{Destination:encodeURI(r),Overwrite:s?void 0:"F"}}),n===bn.MOVE&&(0,dt.j8)("files:node:deleted",t)}catch(t){if(t instanceof tn){if(412===t?.response?.status)throw new Error((0,Ut.Iu)("files","A file or folder with that name already exists in this folder"));if(423===t?.response?.status)throw new Error((0,Ut.Iu)("files","The files is locked"));if(404===t?.response?.status)throw new Error((0,Ut.Iu)("files","The file does not exist anymore"));if(t.message)throw new Error(t.message)}throw new Error}finally{a.default.set(t,"status",void 0)}}))},Sn=(new lt.p$({id:"move-copy",displayName(t){switch(Tn(t)){case bn.MOVE:return(0,Ut.Iu)("files","Move");case bn.COPY:return(0,Ut.Iu)("files","Copy");case bn.MOVE_OR_COPY:return(0,Ut.Iu)("files","Move or copy")}},iconSvgInline:()=>vn,enabled:t=>!!t.every((t=>t.root?.startsWith("/files/")))&&t.length>0&&(Cn(t)||xn(t)),async exec(t,e,n){const s=Tn([t]);try{return await async function(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"/",n=arguments.length>2?arguments[2]:void 0;const s=(0,Pe.fn)((0,Ut.Iu)("files","Chose destination")).allowDirectories(!0).setFilter((t=>0!=(t.permissions<.y3.CREATE)&&n.fileid!==t.fileid)).setMimeTypeFilter([]).setMultiSelect(!1).startAt(e);return new Promise(((e,i)=>{s.setButtonFactory(((s,a)=>{const r=[],o=(0,mt.basename)(a);return n.dirname===a||n.path===a||(t!==bn.COPY&&t!==bn.MOVE_OR_COPY||r.push({label:o?(0,Ut.Iu)("files","Copy to {target}",{target:o}):(0,Ut.Iu)("files","Copy"),type:"primary",icon:hn,async callback(t){try{await kn(n,t[0],bn.COPY),e(!0)}catch(t){i(t)}}}),t!==bn.MOVE&&t!==bn.MOVE_OR_COPY||r.push({label:o?(0,Ut.Iu)("files","Move to {target}",{target:o}):(0,Ut.Iu)("files","Move"),type:t===bn.MOVE?"primary":"secondary",icon:vn,async callback(t){try{await kn(n,t[0],bn.MOVE),e(!0)}catch(t){_n.warn("got error",t),i(t)}}})),r})),s.build().pick().catch((()=>{i(new Error((0,Ut.Iu)("files","Cancelled move or copy operation")))}))}))}(s,n,t),!0}catch(t){return!!(t instanceof Error&&t.message)&&((0,Pe.x2)(t.message),null)}},order:15}),function(t){return t.split("").reduce((function(t,e){return(t=(t<<5)-t+e.charCodeAt(0))&t}),0)}),Ln=ot("actionsmenu",{state:()=>({opened:null})}),En=ot("dragging",{state:()=>({dragging:[]}),actions:{set(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];a.default.set(this,"dragging",t)},reset(){a.default.set(this,"dragging",[])}}}),Nn=function(){const t=ot("renaming",{state:()=>({renamingNode:void 0,newName:""})})(...arguments);return t._initialized||((0,dt.Ld)("files:node:rename",(function(e){t.renamingNode=e,t.newName=e.basename})),t._initialized=!0),t};var Fn=s(97947);const Bn={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 t=await this.render(this.source,this.currentView);t?this.$el.replaceChildren(t):this.$el.replaceChildren()}}},Pn=(0,Mt.Z)(Bn,(function(){return(0,this._self._c)("span")}),[],!1,null,null,null).exports,jn={name:"ArrowLeftIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},In=(0,Mt.Z)(jn,(function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon arrow-left-icon",attrs:{"aria-hidden":!t.title,"aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M20,11V13H8L13.5,18.5L12.08,19.92L4.16,12L12.08,4.08L13.5,5.5L8,11H20Z"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports,On={name:"ChevronRightIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},Un=(0,Mt.Z)(On,(function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon chevron-right-icon",attrs:{"aria-hidden":!t.title,"aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M8.59,16.58L13.17,12L8.59,7.41L10,6L16,12L10,18L8.59,16.58Z"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports;var Dn=s(72155),$n=s(55212),zn=s(96204);const Rn=(0,lt.Vn)(),Mn=a.default.extend({name:"FileEntryActions",components:{ArrowLeftIcon:In,ChevronRightIcon:Un,CustomElementRender:Pn,NcActionButton:Dn.Z,NcActions:$n.Z,NcActionSeparator:zn.Z,NcIconSvgWrapper:Gt.Z,NcLoadingIcon:Wt.Z},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}},data:()=>({openedSubmenu:null}),computed:{currentDir(){return(this.$route?.query?.dir?.toString()||"/").replace(/^(.+)\/$/,"$1")},currentView(){return this.$navigation.active},isLoading(){return this.source.status===lt.e4.LOADING},enabledActions(){return this.source.attributes.failed?[]:Rn.filter((t=>!t.enabled||t.enabled([this.source],this.currentView))).sort(((t,e)=>(t.order||0)-(e.order||0)))},enabledInlineActions(){return this.filesListWidth<768||this.gridMode?[]:this.enabledActions.filter((t=>t?.inline?.(this.source,this.currentView)))},enabledRenderActions(){return this.gridMode?[]:this.enabledActions.filter((t=>"function"==typeof t.renderInline))},enabledDefaultActions(){return this.enabledActions.filter((t=>!!t?.default))},enabledMenuActions(){if(this.openedSubmenu)return this.enabledInlineActions;const t=[...this.enabledInlineActions,...this.enabledActions.filter((t=>t.default!==lt.DT.HIDDEN&&"function"!=typeof t.renderInline))].filter(((t,e,n)=>e===n.findIndex((e=>e.id===t.id)))),e=t.filter((t=>!t.parent)).map((t=>t.id));return t.filter((t=>!(t.parent&&e.includes(t.parent))))},enabledSubmenuActions(){return this.enabledActions.filter((t=>t.parent)).reduce(((t,e)=>(t[e.parent]||(t[e.parent]=[]),t[e.parent].push(e),t)),{})},openedMenu:{get(){return this.opened},set(t){this.$emit("update:opened",t)}},getBoundariesElement:()=>document.querySelector(".app-content > .files-list"),mountType(){return this.source._attributes["mount-type"]}},methods:{actionDisplayName(t){if((this.gridMode||this.filesListWidth<768&&t.inline)&&"function"==typeof t.title){const e=t.title([this.source],this.currentView);if(e)return e}return t.displayName([this.source],this.currentView)},async onActionClick(t){let e=arguments.length>1&&void 0!==arguments[1]&&arguments[1];if(this.enabledSubmenuActions[t.id])return void(this.openedSubmenu=t);const n=t.displayName([this.source],this.currentView);try{this.$emit("update:loading",t.id),a.default.set(this.source,"status",lt.e4.LOADING);const e=await t.exec(this.source,this.currentView,this.currentDir);if(null==e)return;if(e)return void(0,Pe.s$)((0,Ut.Iu)("files",'"{displayName}" action executed successfully',{displayName:n}));(0,Pe.x2)((0,Ut.Iu)("files",'"{displayName}" action failed',{displayName:n}))}catch(e){te.error("Error while executing action",{action:t,e}),(0,Pe.x2)((0,Ut.Iu)("files",'"{displayName}" action failed',{displayName:n}))}finally{this.$emit("update:loading",""),a.default.set(this.source,"status",void 0),e&&(this.openedSubmenu=null)}},execDefaultAction(t){this.enabledDefaultActions.length>0&&(t.preventDefault(),t.stopPropagation(),this.enabledDefaultActions[0].exec(this.source,this.currentView,this.currentDir))},isMenu(t){return this.enabledSubmenuActions[t]?.length>0},t:Ut.Iu}}),Vn=Mn;var Hn=s(21367),qn={};qn.styleTagTransform=Ee(),qn.setAttributes=Te(),qn.insert=xe().bind(null,"head"),qn.domAPI=be(),qn.insertStyleElement=Se(),we()(Hn.Z,qn),Hn.Z&&Hn.Z.locals&&Hn.Z.locals;var Zn=(0,Mt.Z)(Vn,(function(){var t=this,e=t._self._c;return t._self._setupProxy,e("td",{staticClass:"files-list__row-actions",attrs:{"data-cy-files-list-row-actions":""}},[t._l(t.enabledRenderActions,(function(n){return e("CustomElementRender",{key:n.id,staticClass:"files-list__row-action--inline",class:"files-list__row-action-"+n.id,attrs:{"current-view":t.currentView,render:n.renderInline,source:t.source}})})),t._v(" "),e("NcActions",{ref:"actionsMenu",attrs:{"boundaries-element":t.getBoundariesElement,container:t.getBoundariesElement,disabled:t.isLoading||""!==t.loading,"force-name":!0,type:"tertiary","force-menu":0===t.enabledInlineActions.length,inline:t.enabledInlineActions.length,open:t.openedMenu},on:{"update:open":function(e){t.openedMenu=e},close:function(e){t.openedSubmenu=null}}},[t._l(t.enabledMenuActions,(function(n){return e("NcActionButton",{key:n.id,class:{[`files-list__row-action-${n.id}`]:!0,"files-list__row-action--menu":t.isMenu(n.id)},attrs:{"close-after-click":!t.isMenu(n.id),"data-cy-files-list-row-action":n.id,"is-menu":t.isMenu(n.id),title:n.title?.([t.source],t.currentView)},on:{click:function(e){return t.onActionClick(n)}},scopedSlots:t._u([{key:"icon",fn:function(){return[t.loading===n.id?e("NcLoadingIcon",{attrs:{size:18}}):e("NcIconSvgWrapper",{attrs:{svg:n.iconSvgInline([t.source],t.currentView)}})]},proxy:!0}],null,!0)},[t._v("\n\t\t\t"+t._s("shared"===t.mountType&&"sharing-status"===n.id?"":t.actionDisplayName(n))+"\n\t\t")])})),t._v(" "),t.openedSubmenu&&t.enabledSubmenuActions[t.openedSubmenu?.id]?[e("NcActionButton",{staticClass:"files-list__row-action-back",on:{click:function(e){t.openedSubmenu=null}},scopedSlots:t._u([{key:"icon",fn:function(){return[e("ArrowLeftIcon")]},proxy:!0}],null,!1,3001860362)},[t._v("\n\t\t\t\t"+t._s(t.actionDisplayName(t.openedSubmenu))+"\n\t\t\t")]),t._v(" "),e("NcActionSeparator"),t._v(" "),t._l(t.enabledSubmenuActions[t.openedSubmenu?.id],(function(n){return e("NcActionButton",{key:n.id,staticClass:"files-list__row-action--submenu",class:`files-list__row-action-${n.id}`,attrs:{"close-after-click":!1,"data-cy-files-list-row-action":n.id,title:n.title?.([t.source],t.currentView)},on:{click:function(e){return t.onActionClick(n)}},scopedSlots:t._u([{key:"icon",fn:function(){return[t.loading===n.id?e("NcLoadingIcon",{attrs:{size:18}}):e("NcIconSvgWrapper",{attrs:{svg:n.iconSvgInline([t.source],t.currentView)}})]},proxy:!0}],null,!0)},[t._v("\n\t\t\t\t"+t._s(t.actionDisplayName(n))+"\n\t\t\t")])}))]:t._e()],2)],2)}),[],!1,null,"6dd8d639",null);const Gn=Zn.exports;var Wn=s(34741);const Yn=a.default.extend({name:"FileEntryCheckbox",components:{NcCheckboxRadioSwitch:Wn.Z,NcLoadingIcon:Wt.Z},props:{displayName:{type:String,required:!0},fileid:{type:String,required:!0},isLoading:{type:Boolean,default:!1},nodes:{type:Array,required:!0}},setup(){const t=ie(),e=function(){const t=ot("keyboard",{state:()=>({altKey:!1,ctrlKey:!1,metaKey:!1,shiftKey:!1}),actions:{onEvent(t){t||(t=window.event),a.default.set(this,"altKey",!!t.altKey),a.default.set(this,"ctrlKey",!!t.ctrlKey),a.default.set(this,"metaKey",!!t.metaKey),a.default.set(this,"shiftKey",!!t.shiftKey)}}})(...arguments);return t._initialized||(window.addEventListener("keydown",t.onEvent),window.addEventListener("keyup",t.onEvent),window.addEventListener("mousemove",t.onEvent),t._initialized=!0),t}();return{keyboardStore:e,selectionStore:t}},computed:{selectedFiles(){return this.selectionStore.selected},isSelected(){return this.selectedFiles.includes(this.fileid)},index(){return this.nodes.findIndex((t=>t.fileid===parseInt(this.fileid)))}},methods:{onSelectionChange(t){const e=this.index,n=this.selectionStore.lastSelectedIndex;if(this.keyboardStore?.shiftKey&&null!==n){const t=this.selectedFiles.includes(this.fileid),s=Math.min(e,n),i=Math.max(n,e),a=this.selectionStore.lastSelection,r=this.nodes.map((t=>t.fileid?.toString?.())).slice(s,i+1),o=[...a,...r].filter((e=>!t||e!==this.fileid));return te.debug("Shift key pressed, selecting all files in between",{start:s,end:i,filesToSelect:r,isAlreadySelected:t}),void this.selectionStore.set(o)}const s=t?[...this.selectedFiles,this.fileid]:this.selectedFiles.filter((t=>t!==this.fileid));te.debug("Updating selection",{selection:s}),this.selectionStore.set(s),this.selectionStore.setLastIndex(e)},t:Ut.Iu}}),Kn=(0,Mt.Z)(Yn,(function(){var t=this,e=t._self._c;return t._self._setupProxy,e("td",{staticClass:"files-list__row-checkbox"},[t.isLoading?e("NcLoadingIcon"):e("NcCheckboxRadioSwitch",{attrs:{"aria-label":t.t("files","Select the row for {displayName}",{displayName:t.displayName}),checked:t.isSelected},on:{"update:checked":t.onSelectionChange}})],1)}),[],!1,null,null,null).exports;var Jn=s(49368);const Qn=(0,oe.j)("files","forbiddenCharacters",""),Xn=a.default.extend({name:"FileEntryName",components:{NcTextField:Jn.Z},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:()=>({renamingStore:Nn()}),computed:{isRenaming(){return this.renamingStore.renamingNode===this.source},isRenamingSmallScreen(){return this.isRenaming&&this.filesListWidth<512},newName:{get(){return this.renamingStore.newName},set(t){this.renamingStore.newName=t}},renameLabel(){return{[lt.Tv.File]:(0,Ut.Iu)("files","File name"),[lt.Tv.Folder]:(0,Ut.Iu)("files","Folder name")}[this.source.type]},linkTo(){if(this.source.attributes.failed)return{title:(0,Ut.Iu)("files","This node is unavailable"),is:"span"};const t=this.$parent?.$refs?.actions?.enabledDefaultActions;return t?.length>0?{title:t[0].displayName([this.source],this.currentView),role:"button"}:this.source?.permissions<.y3.READ?{download:this.source.basename,href:this.source.source,title:(0,Ut.Iu)("files","Download file {name}",{name:this.displayName})}:{is:"span"}}},watch:{isRenaming(t){t&&this.startRenaming()}},methods:{checkInputValidity(t){const e=t.target,n=this.newName.trim?.()||"";te.debug("Checking input validity",{newName:n});try{this.isFileNameValid(n),e.setCustomValidity(""),e.title=""}catch(t){e.setCustomValidity(t.message),e.title=t.message}finally{e.reportValidity()}},isFileNameValid(t){const e=t.trim();if("."===e||".."===e)throw new Error((0,Ut.Iu)("files",'"{name}" is an invalid file name.',{name:t}));if(0===e.length)throw new Error((0,Ut.Iu)("files","File name cannot be empty."));if(-1!==e.indexOf("/"))throw new Error((0,Ut.Iu)("files",'"/" is not allowed inside a file name.'));if(e.match(OC.config.blacklist_files_regex))throw new Error((0,Ut.Iu)("files",'"{name}" is not an allowed filetype.',{name:t}));if(this.checkIfNodeExists(t))throw new Error((0,Ut.Iu)("files","{newName} already exists.",{newName:t}));return e.split("").forEach((t=>{if(-1!==Qn.indexOf(t))throw new Error(this.t("files",'"{char}" is not allowed inside a file name.',{char:t}))})),!0},checkIfNodeExists(t){return this.nodes.find((e=>e.basename===t&&e!==this.source))},startRenaming(){this.$nextTick((()=>{const t=(this.source.extension||"").split("").length,e=this.source.basename.split("").length-t,n=this.$refs.renameInput?.$refs?.inputField?.$refs?.input;n?(n.setSelectionRange(0,e),n.focus(),n.dispatchEvent(new Event("keyup"))):te.error("Could not find the rename input")}))},stopRenaming(){this.isRenaming&&this.renamingStore.$reset()},async onRename(){const t=this.source.basename,e=this.source.encodedSource,n=this.newName.trim?.()||"";if(""!==n)if(t!==n)if(this.checkIfNodeExists(n))(0,Pe.x2)((0,Ut.Iu)("files","Another entry with the same name already exists"));else{this.loading="renaming",a.default.set(this.source,"status",lt.e4.LOADING),this.source.rename(n),te.debug("Moving file to",{destination:this.source.encodedSource,oldEncodedSource:e});try{await(0,le.Z)({method:"MOVE",url:e,headers:{Destination:this.source.encodedSource,Overwrite:"F"}}),(0,dt.j8)("files:node:updated",this.source),(0,dt.j8)("files:node:renamed",this.source),(0,Pe.s$)((0,Ut.Iu)("files",'Renamed "{oldName}" to "{newName}"',{oldName:t,newName:n})),this.stopRenaming(),this.$nextTick((()=>{this.$refs.basename.focus()}))}catch(e){if(te.error("Error while renaming file",{error:e}),this.source.rename(t),this.$refs.renameInput.focus(),404===e?.response?.status)return void(0,Pe.x2)((0,Ut.Iu)("files",'Could not rename "{oldName}", it does not exist any more',{oldName:t}));if(412===e?.response?.status)return void(0,Pe.x2)((0,Ut.Iu)("files",'The name "{newName}" is already used in the folder "{dir}". Please choose a different name.',{newName:n,dir:this.currentDir}));(0,Pe.x2)((0,Ut.Iu)("files",'Could not rename "{oldName}"',{oldName:t}))}finally{this.loading=!1,a.default.set(this.source,"status",void 0)}}else this.stopRenaming();else(0,Pe.x2)((0,Ut.Iu)("files","Name cannot be empty"))},t:Ut.Iu}}),ts=(0,Mt.Z)(Xn,(function(){var t=this,e=t._self._c;return t._self._setupProxy,t.isRenaming?e("form",{directives:[{name:"on-click-outside",rawName:"v-on-click-outside",value:t.stopRenaming,expression:"stopRenaming"}],staticClass:"files-list__row-rename",attrs:{"aria-label":t.t("files","Rename file")},on:{submit:function(e){return e.preventDefault(),e.stopPropagation(),t.onRename.apply(null,arguments)}}},[e("NcTextField",{ref:"renameInput",attrs:{label:t.renameLabel,autofocus:!0,minlength:1,required:!0,value:t.newName,enterkeyhint:"done"},on:{"update:value":function(e){t.newName=e},keyup:[t.checkInputValidity,function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"esc",27,e.key,["Esc","Escape"])?null:t.stopRenaming.apply(null,arguments)}]}})],1):e("a",t._b({ref:"basename",staticClass:"files-list__row-name-link",attrs:{"aria-hidden":t.isRenaming,"data-cy-files-list-row-name-link":""},on:{click:function(e){return t.$emit("click",e)}}},"a",t.linkTo,!1),[e("span",{staticClass:"files-list__row-name-text"},[e("span",{staticClass:"files-list__row-name-",domProps:{textContent:t._s(t.displayName)}}),t._v(" "),e("span",{staticClass:"files-list__row-name-ext",domProps:{textContent:t._s(t.extension)}})])])}),[],!1,null,null,null).exports;var es=s(60186);const ns={name:"AccountPlusIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},ss=(0,Mt.Z)(ns,(function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon account-plus-icon",attrs:{"aria-hidden":!t.title,"aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("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"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports,is={name:"FileIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},as=(0,Mt.Z)(is,(function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon file-icon",attrs:{"aria-hidden":!t.title,"aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("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"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports,rs={name:"FolderOpenIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},os=(0,Mt.Z)(rs,(function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon folder-open-icon",attrs:{"aria-hidden":!t.title,"aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("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"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports,ls={name:"KeyIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},cs=(0,Mt.Z)(ls,(function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon key-icon",attrs:{"aria-hidden":!t.title,"aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("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"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports,ds={name:"NetworkIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},us=(0,Mt.Z)(ds,(function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon network-icon",attrs:{"aria-hidden":!t.title,"aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("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"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports,ms={name:"TagIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},fs=(0,Mt.Z)(ms,(function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon tag-icon",attrs:{"aria-hidden":!t.title,"aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("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"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports,ps={name:"PlayCircleIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},gs=(0,Mt.Z)(ps,(function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon play-circle-icon",attrs:{"aria-hidden":!t.title,"aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("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"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports,hs={name:"CollectivesIcon",props:{title:{type:String,default:""},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},vs=(0,Mt.Z)(hs,(function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon collectives-icon",attrs:{"aria-hidden":!t.title,"aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 16 16"}},[e("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"}}),t._v(" "),e("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"}}),t._v(" "),e("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"}}),t._v(" "),e("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"}}),t._v(" "),e("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"}}),t._v(" "),e("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,As=(0,a.defineComponent)({name:"FavoriteIcon",components:{NcIconSvgWrapper:Gt.Z},data:()=>({StarSvg:''}),async mounted(){await this.$nextTick();const t=this.$el.querySelector("svg");t?.setAttribute?.("viewBox","-4 -4 30 30")},methods:{t:Ut.Iu}});var ws=s(99292),ys={};ys.styleTagTransform=Ee(),ys.setAttributes=Te(),ys.insert=xe().bind(null,"head"),ys.domAPI=be(),ys.insertStyleElement=Se(),we()(ws.Z,ys),ws.Z&&ws.Z.locals&&ws.Z.locals;const bs=(0,Mt.Z)(As,(function(){var t=this,e=t._self._c;return t._self._setupProxy,e("NcIconSvgWrapper",{staticClass:"favorite-marker-icon",attrs:{name:t.t("files","Favorite"),svg:t.StarSvg}})}),[],!1,null,"04e52abc",null).exports,Cs=a.default.extend({name:"FileEntryPreview",components:{AccountGroupIcon:es.Z,AccountPlusIcon:ss,CollectivesIcon:vs,FavoriteIcon:bs,FileIcon:as,FolderIcon:Re,FolderOpenIcon:os,KeyIcon:cs,LinkIcon:zt.Z,NetworkIcon:us,TagIcon:fs},props:{source:{type:Object,required:!0},dragover:{type:Boolean,default:!1},gridMode:{type:Boolean,default:!1}},setup:()=>({userConfigStore:de()}),data:()=>({backgroundFailed:void 0}),computed:{fileid(){return this.source?.fileid?.toString?.()},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===lt.Tv.Folder)return null;if(!0===this.backgroundFailed)return null;try{const t=this.source.attributes.previewUrl||(0,re.generateUrl)("/core/preview?fileId={fileid}",{fileid:this.fileid}),e=new URL(window.location.origin+t);return e.searchParams.set("x",this.gridMode?"128":"32"),e.searchParams.set("y",this.gridMode?"128":"32"),e.searchParams.set("mimeFallback","true"),e.searchParams.set("a",!0===this.cropPreviews?"0":"1"),e.href}catch(t){return null}},fileOverlay(){return void 0!==this.source.attributes["metadata-files-live-photo"]?gs:null},folderOverlay(){if(this.source.type!==lt.Tv.Folder)return null;if(1===this.source?.attributes?.["is-encrypted"])return cs;if(this.source?.attributes?.["is-tag"])return fs;const t=Object.values(this.source?.attributes?.["share-types"]||{}).flat();if(t.some((t=>t===Dt.D.SHARE_TYPE_LINK||t===Dt.D.SHARE_TYPE_EMAIL)))return zt.Z;if(t.length>0)return ss;switch(this.source?.attributes?.["mount-type"]){case"external":case"external-session":return us;case"group":return es.Z;case"collective":return vs}return null}},methods:{reset(){!0===this.backgroundFailed&&this.$refs.previewImg&&(this.$refs.previewImg.src=""),this.backgroundFailed=void 0},t:Ut.Iu}}),xs=(0,Mt.Z)(Cs,(function(){var t=this,e=t._self._c;return t._self._setupProxy,e("span",{staticClass:"files-list__row-icon"},["folder"===t.source.type?[t.dragover?t._m(0):[t._m(1),t._v(" "),t.folderOverlay?e(t.folderOverlay,{tag:"OverlayIcon",staticClass:"files-list__row-icon-overlay"}):t._e()]]:t.previewUrl&&!0!==t.backgroundFailed?e("img",{ref:"previewImg",staticClass:"files-list__row-icon-preview",class:{"files-list__row-icon-preview--loaded":!1===t.backgroundFailed},attrs:{alt:"",loading:"lazy",src:t.previewUrl},on:{error:function(e){t.backgroundFailed=!0},load:function(e){t.backgroundFailed=!1}}}):t._m(2),t._v(" "),t.isFavorite?e("span",{staticClass:"files-list__row-icon-favorite"},[t._m(3)],1):t._e(),t._v(" "),t.fileOverlay?e(t.fileOverlay,{tag:"OverlayIcon",staticClass:"files-list__row-icon-overlay files-list__row-icon-overlay--file"}):t._e()],2)}),[function(){var t=this._self._c;return this._self._setupProxy,t("FolderOpenIcon")},function(){var t=this._self._c;return this._self._setupProxy,t("FolderIcon")},function(){var t=this._self._c;return this._self._setupProxy,t("FileIcon")},function(){var t=this._self._c;return this._self._setupProxy,t("FavoriteIcon")}],!1,null,null,null).exports;a.default.directive("onClickOutside",je.hs);const _s=(0,a.defineComponent)({name:"FileEntry",components:{CustomElementRender:Pn,FileEntryActions:Gn,FileEntryCheckbox:Kn,FileEntryName:ts,FileEntryPreview:xs,NcDateTime:Fn.Z},props:{isMtimeAvailable:{type:Boolean,default:!1},isSizeAvailable:{type:Boolean,default:!1},source:{type:[lt.gt,lt.$B,lt.NB],required:!0},nodes:{type:Array,required:!0},filesListWidth:{type:Number,default:0},compact:{type:Boolean,default:!1}},setup:()=>({actionsMenuStore:Ln(),draggingStore:En(),filesStore:ne(),renamingStore:Nn(),selectionStore:ie()}),data:()=>({loading:"",dragover:!1}),computed:{rowListeners(){return{...this.isRenaming?{}:{dragstart:this.onDragStart,dragover:this.onDragOver},contextmenu:this.onRightClick,dragleave:this.onDragLeave,dragend:this.onDragEnd,drop:this.onDrop}},currentView(){return this.$navigation.active},columns(){return this.filesListWidth<512||this.compact?[]:this.currentView?.columns||[]},currentDir(){return(this.$route?.query?.dir?.toString()||"/").replace(/^(.+)\/$/,"$1")},currentFileId(){return this.$route.params?.fileid||this.$route.query?.fileid||null},fileid(){return this.source?.fileid?.toString?.()},uniqueId(){return Sn(this.source.source)},isLoading(){return this.source.status===lt.e4.LOADING},extension(){return this.source.attributes?.displayName?(0,mt.extname)(this.source.attributes.displayName):this.source.extension||""},displayName(){const t=this.extension,e=this.source.attributes.displayName||this.source.basename;return t?e.slice(0,0-t.length):e},size(){const t=parseInt(this.source.size,10)||0;return"number"!=typeof t||t<0?(0,Ut.Iu)("files","Pending"):(0,lt.sS)(t,!0)},sizeOpacity(){const t=parseInt(this.source.size,10)||0;return!t||t<0?{}:{color:`color-mix(in srgb, var(--color-main-text) ${Math.round(Math.min(100,100*Math.pow(this.source.size/10485760,2)))}%, var(--color-text-maxcontrast))`}},mtimeOpacity(){const t=26784e5,e=this.source.mtime?.getTime?.();if(!e)return{};const n=Math.round(Math.min(100,100*(t-(Date.now()-e))/t));return n<0?{}:{color:`color-mix(in srgb, var(--color-main-text) ${n}%, var(--color-text-maxcontrast))`}},mtimeTitle(){return this.source.mtime?Oe()(this.source.mtime).format("LLL"):""},draggingFiles(){return this.draggingStore.dragging},selectedFiles(){return this.selectionStore.selected},isSelected(){return this.selectedFiles.includes(this.fileid)},isRenaming(){return this.renamingStore.renamingNode===this.source},isRenamingSmallScreen(){return this.isRenaming&&this.filesListWidth<512},isActive(){return this.fileid===this.currentFileId?.toString?.()},canDrag(){if(this.isRenaming)return!1;const t=t=>0!=(t?.permissions<.y3.UPDATE);return this.selectedFiles.length>0?this.selectedFiles.map((t=>this.filesStore.getNode(t))).every(t):t(this.source)},canDrop(){return this.source.type===lt.Tv.Folder&&!this.draggingFiles.includes(this.fileid)&&0!=(this.source.permissions<.y3.CREATE)},openedMenu:{get(){return this.actionsMenuStore.opened===this.uniqueId},set(t){this.actionsMenuStore.opened=t?this.uniqueId:null}}},watch:{source(){this.resetState()}},beforeDestroy(){this.resetState()},methods:{resetState(){this.loading="",this.$refs.preview.reset(),this.openedMenu=!1},onRightClick(t){if(this.openedMenu)return;const e=this.selectedFiles.length>1;this.actionsMenuStore.opened=this.isSelected&&e?"global":this.uniqueId,t.preventDefault(),t.stopPropagation()},execDefaultAction(){this.$refs.actions.execDefaultAction(...arguments)},openDetailsIfAvailable(t){t.preventDefault(),t.stopPropagation(),ee?.enabled?.([this.source],this.currentView)&&ee.exec(this.source,this.currentView,this.currentDir)},onDragOver(t){this.dragover=this.canDrop,this.canDrop?t.ctrlKey?t.dataTransfer.dropEffect="copy":t.dataTransfer.dropEffect="move":t.dataTransfer.dropEffect="none"},onDragLeave(t){const e=t.currentTarget;e?.contains(t.relatedTarget)||(this.dragover=!1)},async onDragStart(t){if(t.stopPropagation(),!this.canDrag)return t.preventDefault(),void t.stopPropagation();te.debug("Drag started"),this.renamingStore.$reset(),this.selectedFiles.includes(this.fileid)?this.draggingStore.set(this.selectedFiles):this.draggingStore.set([this.fileid]);const e=this.draggingStore.dragging.map((t=>this.filesStore.getNode(t))),n=await Ye(e);t.dataTransfer?.setDragImage(n,-10,-10)},onDragEnd(){this.draggingStore.reset(),this.dragover=!1,te.debug("Drag ended")},async onDrop(t){if(!this.draggingFiles&&!t.dataTransfer?.files?.length)return;if(t.preventDefault(),t.stopPropagation(),!this.canDrop||0!==t.button)return;const e=t.ctrlKey;if(this.dragover=!1,te.debug("Dropped",{event:t,selection:this.draggingFiles}),t.dataTransfer?.files?.length>0){const e=(0,$t.g)();return t.dataTransfer.files.forEach((t=>{e.upload((0,mt.join)(this.source.path,t.name),t)})),void te.debug(`Uploading files to ${this.source.path}`)}this.draggingFiles.map((t=>this.filesStore.getNode(t))).forEach((async t=>{a.default.set(t,"status",lt.e4.LOADING);try{await kn(t,this.source,e?bn.COPY:bn.MOVE)}catch(n){te.error("Error while moving file",{error:n}),e?(0,Pe.x2)((0,Ut.Iu)("files","Could not copy {file}. {message}",{file:t.basename,message:n.message||""})):(0,Pe.x2)((0,Ut.Iu)("files","Could not move {file}. {message}",{file:t.basename,message:n.message||""}))}finally{a.default.set(t,"status",void 0)}})),this.draggingFiles.some((t=>this.selectedFiles.includes(t)))&&(te.debug("Dropped selection, resetting select store..."),this.selectionStore.reset())},t:Ut.Iu,formatFileSize:lt.sS}}),Ts=_s,ks=(0,Mt.Z)(Ts,(function(){var t=this,e=t._self._c;return t._self._setupProxy,e("tr",t._g({staticClass:"files-list__row",class:{"files-list__row--dragover":t.dragover,"files-list__row--loading":t.isLoading},attrs:{"data-cy-files-list-row":"","data-cy-files-list-row-fileid":t.fileid,"data-cy-files-list-row-name":t.source.basename,draggable:t.canDrag}},t.rowListeners),[t.source.attributes.failed?e("span",{staticClass:"files-list__row--failed"}):t._e(),t._v(" "),e("FileEntryCheckbox",{attrs:{"display-name":t.displayName,fileid:t.fileid,"is-loading":t.isLoading,nodes:t.nodes}}),t._v(" "),e("td",{staticClass:"files-list__row-name",attrs:{"data-cy-files-list-row-name":""}},[e("FileEntryPreview",{ref:"preview",attrs:{source:t.source,dragover:t.dragover},nativeOn:{click:function(e){return t.execDefaultAction.apply(null,arguments)}}}),t._v(" "),e("FileEntryName",{ref:"name",attrs:{"display-name":t.displayName,extension:t.extension,"files-list-width":t.filesListWidth,nodes:t.nodes,source:t.source},on:{click:t.execDefaultAction}})],1),t._v(" "),e("FileEntryActions",{directives:[{name:"show",rawName:"v-show",value:!t.isRenamingSmallScreen,expression:"!isRenamingSmallScreen"}],ref:"actions",class:`files-list__row-actions-${t.uniqueId}`,attrs:{"files-list-width":t.filesListWidth,loading:t.loading,opened:t.openedMenu,source:t.source},on:{"update:loading":function(e){t.loading=e},"update:opened":function(e){t.openedMenu=e}}}),t._v(" "),!t.compact&&t.isSizeAvailable?e("td",{staticClass:"files-list__row-size",style:t.sizeOpacity,attrs:{"data-cy-files-list-row-size":""},on:{click:t.openDetailsIfAvailable}},[e("span",[t._v(t._s(t.size))])]):t._e(),t._v(" "),!t.compact&&t.isMtimeAvailable?e("td",{staticClass:"files-list__row-mtime",style:t.mtimeOpacity,attrs:{"data-cy-files-list-row-mtime":""},on:{click:t.openDetailsIfAvailable}},[e("NcDateTime",{attrs:{timestamp:t.source.mtime,"ignore-seconds":!0}})],1):t._e(),t._v(" "),t._l(t.columns,(function(n){return e("td",{key:n.id,staticClass:"files-list__row-column-custom",class:`files-list__row-${t.currentView?.id}-${n.id}`,attrs:{"data-cy-files-list-row-column-custom":n.id},on:{click:t.openDetailsIfAvailable}},[e("CustomElementRender",{attrs:{"current-view":t.currentView,render:n.render,source:t.source}})],1)}))],2)}),[],!1,null,null,null).exports;a.default.directive("onClickOutside",je.hs);const Ss=a.default.extend({name:"FileEntryGrid",components:{FileEntryActions:Gn,FileEntryCheckbox:Kn,FileEntryName:ts,FileEntryPreview:xs},inheritAttrs:!1,props:{source:{type:[lt.gt,lt.$B,lt.NB],required:!0},nodes:{type:Array,required:!0},filesListWidth:{type:Number,default:0}},setup:()=>({actionsMenuStore:Ln(),draggingStore:En(),filesStore:ne(),renamingStore:Nn(),selectionStore:ie()}),data:()=>({loading:"",dragover:!1}),computed:{currentView(){return this.$navigation.active},currentDir(){return(this.$route?.query?.dir?.toString()||"/").replace(/^(.+)\/$/,"$1")},currentFileId(){return this.$route.params?.fileid||this.$route.query?.fileid||null},fileid(){return this.source?.fileid?.toString?.()},uniqueId(){return Sn(this.source.source)},isLoading(){return this.source.status===lt.e4.LOADING},extension(){return this.source.attributes?.displayName?(0,mt.extname)(this.source.attributes.displayName):this.source.extension||""},displayName(){const t=this.extension,e=this.source.attributes.displayName||this.source.basename;return t?e.slice(0,0-t.length):e},draggingFiles(){return this.draggingStore.dragging},selectedFiles(){return this.selectionStore.selected},isSelected(){return this.selectedFiles.includes(this.fileid)},isRenaming(){return this.renamingStore.renamingNode===this.source},isActive(){return this.fileid===this.currentFileId?.toString?.()},canDrag(){const t=t=>0!=(t?.permissions<.y3.UPDATE);return this.selectedFiles.length>0?this.selectedFiles.map((t=>this.filesStore.getNode(t))).every(t):t(this.source)},canDrop(){return this.source.type===lt.Tv.Folder&&!this.draggingFiles.includes(this.fileid)&&0!=(this.source.permissions<.y3.CREATE)},openedMenu:{get(){return this.actionsMenuStore.opened===this.uniqueId},set(t){this.actionsMenuStore.opened=t?this.uniqueId:null}}},watch:{source(){this.resetState()}},beforeDestroy(){this.resetState()},methods:{resetState(){this.loading="",this.$refs.preview.reset(),this.openedMenu=!1},onRightClick(t){if(this.openedMenu)return;const e=this.selectedFiles.length>1;this.actionsMenuStore.opened=this.isSelected&&e?"global":this.uniqueId,t.preventDefault(),t.stopPropagation()},execDefaultAction(){this.$refs.actions.execDefaultAction(...arguments)},openDetailsIfAvailable(t){t.preventDefault(),t.stopPropagation(),ee?.enabled?.([this.source],this.currentView)&&ee.exec(this.source,this.currentView,this.currentDir)},onDragOver(t){this.dragover=this.canDrop,this.canDrop?t.ctrlKey?t.dataTransfer.dropEffect="copy":t.dataTransfer.dropEffect="move":t.dataTransfer.dropEffect="none"},onDragLeave(t){const e=t.currentTarget;e?.contains(t.relatedTarget)||(this.dragover=!1)},async onDragStart(t){if(t.stopPropagation(),!this.canDrag)return t.preventDefault(),void t.stopPropagation();te.debug("Drag started"),this.renamingStore.$reset(),this.selectedFiles.includes(this.fileid)?this.draggingStore.set(this.selectedFiles):this.draggingStore.set([this.fileid]);const e=this.draggingStore.dragging.map((t=>this.filesStore.getNode(t))),n=await Ye(e);t.dataTransfer?.setDragImage(n,-10,-10)},onDragEnd(){this.draggingStore.reset(),this.dragover=!1,te.debug("Drag ended")},async onDrop(t){if(t.preventDefault(),t.stopPropagation(),!this.canDrop||0!==t.button)return;const e=t.ctrlKey;if(this.dragover=!1,te.debug("Dropped",{event:t,selection:this.draggingFiles}),t.dataTransfer?.files?.length>0){const e=(0,$t.g)();return t.dataTransfer.files.forEach((t=>{e.upload((0,mt.join)(this.source.path,t.name),t)})),void te.debug(`Uploading files to ${this.source.path}`)}this.draggingFiles.map((t=>this.filesStore.getNode(t))).forEach((async t=>{a.default.set(t,"status",lt.e4.LOADING);try{await kn(t,this.source,e?bn.COPY:bn.MOVE)}catch(n){te.error("Error while moving file",{error:n}),e?(0,Pe.x2)((0,Ut.Iu)("files","Could not copy {file}. {message}",{file:t.basename,message:n.message||""})):(0,Pe.x2)((0,Ut.Iu)("files","Could not move {file}. {message}",{file:t.basename,message:n.message||""}))}finally{a.default.set(t,"status",void 0)}})),this.draggingFiles.some((t=>this.selectedFiles.includes(t)))&&(te.debug("Dropped selection, resetting select store..."),this.selectionStore.reset())},t:Ut.Iu}}),Ls=Ss,Es=(0,Mt.Z)(Ls,(function(){var t=this,e=t._self._c;return t._self._setupProxy,e("tr",{staticClass:"files-list__row",class:{"files-list__row--active":t.isActive,"files-list__row--dragover":t.dragover,"files-list__row--loading":t.isLoading},attrs:{"data-cy-files-list-row":"","data-cy-files-list-row-fileid":t.fileid,"data-cy-files-list-row-name":t.source.basename,draggable:t.canDrag},on:{contextmenu:t.onRightClick,dragover:t.onDragOver,dragleave:t.onDragLeave,dragstart:t.onDragStart,dragend:t.onDragEnd,drop:t.onDrop}},[t.source.attributes.failed?e("span",{staticClass:"files-list__row--failed"}):t._e(),t._v(" "),e("FileEntryCheckbox",{attrs:{"display-name":t.displayName,fileid:t.fileid,"is-loading":t.isLoading,nodes:t.nodes}}),t._v(" "),e("td",{staticClass:"files-list__row-name",attrs:{"data-cy-files-list-row-name":""}},[e("FileEntryPreview",{ref:"preview",attrs:{dragover:t.dragover,"grid-mode":!0,source:t.source},nativeOn:{click:function(e){return t.execDefaultAction.apply(null,arguments)}}}),t._v(" "),e("FileEntryName",{ref:"name",attrs:{"display-name":t.displayName,extension:t.extension,"files-list-width":t.filesListWidth,"grid-mode":!0,nodes:t.nodes,source:t.source},on:{click:t.execDefaultAction}})],1),t._v(" "),e("FileEntryActions",{ref:"actions",class:`files-list__row-actions-${t.uniqueId}`,attrs:{"files-list-width":t.filesListWidth,"grid-mode":!0,loading:t.loading,opened:t.openedMenu,source:t.source},on:{"update:loading":function(e){t.loading=e},"update:opened":function(e){t.openedMenu=e}}})],1)}),[],!1,null,null,null).exports;var Ns=s(25108);const Fs={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(t){t&&this.header.updated(this.currentFolder,this.currentView)},currentFolder(){this.header.updated(this.currentFolder,this.currentView)}},mounted(){Ns.debug("Mounted",this.header.id),this.header.render(this.$refs.mount,this.currentFolder,this.currentView)}},Bs=(0,Mt.Z)(Fs,(function(){var t=this,e=t._self._c;return e("div",{directives:[{name:"show",rawName:"v-show",value:t.enabled,expression:"enabled"}],class:`files-list__header-${t.header.id}`},[e("span",{ref:"mount"})])}),[],!1,null,null,null).exports,Ps=a.default.extend({name:"FilesListTableFooter",components:{},props:{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 t=se();return{filesStore:ne(),pathsStore:t}},computed:{currentView(){return this.$navigation.active},dir(){return(this.$route?.query?.dir||"/").replace(/^(.+)\/$/,"$1")},currentFolder(){if(!this.currentView?.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(){return this.filesListWidth<512?[]:this.currentView?.columns||[]},totalSize(){return this.currentFolder?.size?(0,lt.sS)(this.currentFolder.size,!0):(0,lt.sS)(this.nodes.reduce(((t,e)=>t+e.size||0),0),!0)}},methods:{classForColumn(t){return{"files-list__row-column-custom":!0,[`files-list__row-${this.currentView.id}-${t.id}`]:!0}},t:Ut.Iu}});var js=s(68252),Is={};Is.styleTagTransform=Ee(),Is.setAttributes=Te(),Is.insert=xe().bind(null,"head"),Is.domAPI=be(),Is.insertStyleElement=Se(),we()(js.Z,Is),js.Z&&js.Z.locals&&js.Z.locals;const Os=(0,Mt.Z)(Ps,(function(){var t=this,e=t._self._c;return t._self._setupProxy,e("tr",[e("th",{staticClass:"files-list__row-checkbox"},[e("span",{staticClass:"hidden-visually"},[t._v(t._s(t.t("files","Total rows summary")))])]),t._v(" "),e("td",{staticClass:"files-list__row-name"},[e("span",{staticClass:"files-list__row-icon"}),t._v(" "),e("span",[t._v(t._s(t.summary))])]),t._v(" "),e("td",{staticClass:"files-list__row-actions"}),t._v(" "),t.isSizeAvailable?e("td",{staticClass:"files-list__column files-list__row-size"},[e("span",[t._v(t._s(t.totalSize))])]):t._e(),t._v(" "),t.isMtimeAvailable?e("td",{staticClass:"files-list__column files-list__row-mtime"}):t._e(),t._v(" "),t._l(t.columns,(function(n){return e("th",{key:n.id,class:t.classForColumn(n)},[e("span",[t._v(t._s(n.summary?.(t.nodes,t.currentView)))])])}))],2)}),[],!1,null,"58f7b64d",null).exports,Us=a.default.extend({data:()=>({filesListWidth:null}),mounted(){const t=document.querySelector("#app-content-vue");this.filesListWidth=t?.clientWidth??null,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()}}),Ds=(0,lt.Vn)(),$s=a.default.extend({name:"FilesListTableHeaderActions",components:{NcActions:$n.Z,NcActionButton:Dn.Z,NcIconSvgWrapper:Gt.Z,NcLoadingIcon:Wt.Z},mixins:[Us],props:{currentView:{type:Object,required:!0},selectedNodes:{type:Array,default:()=>[]}},setup:()=>({actionsMenuStore:Ln(),filesStore:ne(),selectionStore:ie()}),data:()=>({loading:null}),computed:{dir(){return(this.$route?.query?.dir||"/").replace(/^(.+)\/$/,"$1")},enabledActions(){return Ds.filter((t=>t.execBatch)).filter((t=>!t.enabled||t.enabled(this.nodes,this.currentView))).sort(((t,e)=>(t.order||0)-(e.order||0)))},nodes(){return this.selectedNodes.map((t=>this.getNode(t))).filter((t=>t))},areSomeNodesLoading(){return this.nodes.some((t=>t.status===lt.e4.LOADING))},openedMenu:{get(){return"global"===this.actionsMenuStore.opened},set(t){this.actionsMenuStore.opened=t?"global":null}},inlineActions(){return this.filesListWidth<512?0:this.filesListWidth<768?1:this.filesListWidth<1024?2:3}},methods:{getNode(t){return this.filesStore.getNode(t)},async onActionClick(t){const e=t.displayName(this.nodes,this.currentView),n=this.selectedNodes;try{this.loading=t.id,this.nodes.forEach((t=>{a.default.set(t,"status",lt.e4.LOADING)}));const s=await t.execBatch(this.nodes,this.currentView,this.dir);if(!s.some((t=>null!==t)))return void this.selectionStore.reset();if(s.some((t=>!1===t))){const t=n.filter(((t,e)=>!1===s[e]));return this.selectionStore.set(t),void(0,Pe.x2)(this.t("files",'"{displayName}" failed on some elements ',{displayName:e}))}(0,Pe.s$)(this.t("files",'"{displayName}" batch action executed successfully',{displayName:e})),this.selectionStore.reset()}catch(n){te.error("Error while executing action",{action:t,e:n}),(0,Pe.x2)(this.t("files",'"{displayName}" action failed',{displayName:e}))}finally{this.loading=null,this.nodes.forEach((t=>{a.default.set(t,"status",void 0)}))}},t:Ut.Iu}}),zs=$s;var Rs=s(65769),Ms={};Ms.styleTagTransform=Ee(),Ms.setAttributes=Te(),Ms.insert=xe().bind(null,"head"),Ms.domAPI=be(),Ms.insertStyleElement=Se(),we()(Rs.Z,Ms),Rs.Z&&Rs.Z.locals&&Rs.Z.locals;var Vs=(0,Mt.Z)(zs,(function(){var t=this,e=t._self._c;return t._self._setupProxy,e("th",{staticClass:"files-list__column files-list__row-actions-batch",attrs:{colspan:"2"}},[e("NcActions",{ref:"actionsMenu",attrs:{disabled:!!t.loading||t.areSomeNodesLoading,"force-name":!0,inline:t.inlineActions,"menu-name":t.inlineActions<=1?t.t("files","Actions"):null,open:t.openedMenu},on:{"update:open":function(e){t.openedMenu=e}}},t._l(t.enabledActions,(function(n){return e("NcActionButton",{key:n.id,class:"files-list__row-actions-batch-"+n.id,on:{click:function(e){return t.onActionClick(n)}},scopedSlots:t._u([{key:"icon",fn:function(){return[t.loading===n.id?e("NcLoadingIcon",{attrs:{size:18}}):e("NcIconSvgWrapper",{attrs:{svg:n.iconSvgInline(t.nodes,t.currentView)}})]},proxy:!0}],null,!0)},[t._v("\n\t\t\t"+t._s(n.displayName(t.nodes,t.currentView))+"\n\t\t")])})),1)],1)}),[],!1,null,"72bacee0",null);const Hs=Vs.exports;var qs=s(63198),Zs=s(7290);const Gs=a.default.extend({computed:{...(Ys=me,Ks=["getConfig","setSortingBy","toggleSortingDirection"],Array.isArray(Ks)?Ks.reduce(((t,e)=>(t[e]=function(){return Ys(this.$pinia)[e]},t)),{}):Object.keys(Ks).reduce(((t,e)=>(t[e]=function(){const t=Ys(this.$pinia),n=Ks[e];return"function"==typeof n?n.call(this,t):t[n]},t)),{})),currentView(){return this.$navigation.active},sortingMode(){return this.getConfig(this.currentView.id)?.sorting_mode||this.currentView?.defaultSortKey||"basename"},isAscSorting(){const t=this.getConfig(this.currentView.id)?.sorting_direction;return"desc"!==t}},methods:{toggleSortBy(t){this.sortingMode!==t?this.setSortingBy(t,this.currentView.id):this.toggleSortingDirection(this.currentView.id)}}}),Ws=(0,a.defineComponent)({name:"FilesListTableHeaderButton",components:{MenuDown:qs.Z,MenuUp:Zs.Z,NcButton:qt.Z},mixins:[Gs],props:{name:{type:String,required:!0},mode:{type:String,required:!0}},methods:{t:Ut.Iu}});var Ys,Ks,Js=s(36980),Qs={};Qs.styleTagTransform=Ee(),Qs.setAttributes=Te(),Qs.insert=xe().bind(null,"head"),Qs.domAPI=be(),Qs.insertStyleElement=Se(),we()(Js.Z,Qs),Js.Z&&Js.Z.locals&&Js.Z.locals;const Xs=(0,Mt.Z)(Ws,(function(){var t=this,e=t._self._c;return t._self._setupProxy,e("NcButton",{class:["files-list__column-sort-button",{"files-list__column-sort-button--active":t.sortingMode===t.mode,"files-list__column-sort-button--size":"size"===t.sortingMode}],attrs:{alignment:"size"===t.mode?"end":"start-reverse",type:"tertiary"},on:{click:function(e){return t.toggleSortBy(t.mode)}},scopedSlots:t._u([{key:"icon",fn:function(){return[t.sortingMode!==t.mode||t.isAscSorting?e("MenuUp",{staticClass:"files-list__column-sort-button-icon"}):e("MenuDown",{staticClass:"files-list__column-sort-button-icon"})]},proxy:!0}])},[t._v(" "),e("span",{staticClass:"files-list__column-sort-button-text"},[t._v(t._s(t.name))])])}),[],!1,null,"097f69d4",null).exports,ti=a.default.extend({name:"FilesListTableHeader",components:{FilesListTableHeaderButton:Xs,NcCheckboxRadioSwitch:Wn.Z,FilesListTableHeaderActions:Hs},mixins:[Gs],props:{isMtimeAvailable:{type:Boolean,default:!1},isSizeAvailable:{type:Boolean,default:!1},nodes:{type:Array,required:!0},filesListWidth:{type:Number,default:0}},setup:()=>({filesStore:ne(),selectionStore:ie()}),computed:{currentView(){return this.$navigation.active},columns(){return this.filesListWidth<512?[]:this.currentView?.columns||[]},dir(){return(this.$route?.query?.dir||"/").replace(/^(.+)\/$/,"$1")},selectAllBind(){const t=this.isNoneSelected||this.isSomeSelected?this.t("files","Select all"):this.t("files","Unselect all");return{"aria-label":t,checked:this.isAllSelected,indeterminate:this.isSomeSelected,title:t}},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(t){return this.sortingMode===t?this.isAscSorting?"ascending":"descending":null},classForColumn(t){return{"files-list__column":!0,"files-list__column--sortable":!!t.sort,"files-list__row-column-custom":!0,[`files-list__row-${this.currentView.id}-${t.id}`]:!0}},onToggleAll(t){if(t){const t=this.nodes.map((t=>t.fileid.toString()));te.debug("Added all nodes to selection",{selection:t}),this.selectionStore.setLastIndex(null),this.selectionStore.set(t)}else te.debug("Cleared selection"),this.selectionStore.reset()},t:Ut.Iu}});var ei=s(41002),ni={};ni.styleTagTransform=Ee(),ni.setAttributes=Te(),ni.insert=xe().bind(null,"head"),ni.domAPI=be(),ni.insertStyleElement=Se(),we()(ei.Z,ni),ei.Z&&ei.Z.locals&&ei.Z.locals;const si=(0,Mt.Z)(ti,(function(){var t=this,e=t._self._c;return t._self._setupProxy,e("tr",{staticClass:"files-list__row-head"},[e("th",{staticClass:"files-list__column files-list__row-checkbox"},[e("NcCheckboxRadioSwitch",t._b({on:{"update:checked":t.onToggleAll}},"NcCheckboxRadioSwitch",t.selectAllBind,!1))],1),t._v(" "),t.isNoneSelected?[e("th",{staticClass:"files-list__column files-list__row-name files-list__column--sortable",attrs:{"aria-sort":t.ariaSortForMode("basename")}},[e("span",{staticClass:"files-list__row-icon"}),t._v(" "),e("FilesListTableHeaderButton",{attrs:{name:t.t("files","Name"),mode:"basename"}})],1),t._v(" "),e("th",{staticClass:"files-list__row-actions"}),t._v(" "),t.isSizeAvailable?e("th",{staticClass:"files-list__column files-list__row-size",class:{"files-list__column--sortable":t.isSizeAvailable},attrs:{"aria-sort":t.ariaSortForMode("size")}},[e("FilesListTableHeaderButton",{attrs:{name:t.t("files","Size"),mode:"size"}})],1):t._e(),t._v(" "),t.isMtimeAvailable?e("th",{staticClass:"files-list__column files-list__row-mtime",class:{"files-list__column--sortable":t.isMtimeAvailable},attrs:{"aria-sort":t.ariaSortForMode("mtime")}},[e("FilesListTableHeaderButton",{attrs:{name:t.t("files","Modified"),mode:"mtime"}})],1):t._e(),t._v(" "),t._l(t.columns,(function(n){return e("th",{key:n.id,class:t.classForColumn(n),attrs:{"aria-sort":t.ariaSortForMode(n.id)}},[n.sort?e("FilesListTableHeaderButton",{attrs:{name:n.title,mode:n.id}}):e("span",[t._v("\n\t\t\t\t"+t._s(n.title)+"\n\t\t\t")])],1)}))]:e("FilesListTableHeaderActions",{attrs:{"current-view":t.currentView,"selected-nodes":t.selectedNodes}})],2)}),[],!1,null,"585fdb03",null).exports;var ii=s(20296),ai=s(25108);const ri=a.default.extend({name:"VirtualList",mixins:[Us],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 t=this.dataSources.slice(this.startIndex,this.startIndex+this.shownItems),e=t.filter((t=>Object.values(this.$_recycledPool).includes(t[this.dataKey]))).map((t=>t[this.dataKey])),n=Object.keys(this.$_recycledPool).filter((t=>!e.includes(this.$_recycledPool[t])));return t.map((t=>{const e=Object.values(this.$_recycledPool).indexOf(t[this.dataKey]);if(-1!==e)return{key:Object.keys(this.$_recycledPool)[e],item:t};const s=n.pop()||Math.random().toString(36).substr(2);return this.$_recycledPool[s]=t[this.dataKey],{key:s,item:t}}))},tbodyStyle(){const t=this.startIndex+this.rowCount>this.dataSources.length,e=this.dataSources.length-this.startIndex-this.shownItems,n=Math.floor(Math.min(this.dataSources.length-this.startIndex,e)/this.columnCount);return{paddingTop:Math.floor(this.startIndex/this.columnCount)*this.itemHeight+"px",paddingBottom:t?0:n*this.itemHeight+"px"}}},watch:{scrollToIndex(t){this.scrollTo(t)},columnCount(t,e){0!==e?this.scrollTo(this.index):ai.debug("VirtualList: columnCount is 0, skipping scroll")}},mounted(){const t=this.$refs?.before,e=this.$el,n=this.$refs?.thead;this.resizeObserver=new ResizeObserver((0,ii.debounce)((()=>{this.beforeHeight=t?.clientHeight??0,this.headerHeight=n?.clientHeight??0,this.tableHeight=e?.clientHeight??0,te.debug("VirtualList: resizeObserver updated"),this.onScroll()}),100,!1)),this.resizeObserver.observe(t),this.resizeObserver.observe(e),this.resizeObserver.observe(n),this.scrollToIndex&&this.scrollTo(this.scrollToIndex),this.$el.addEventListener("scroll",this.onScroll,{passive:!0}),this.$_recycledPool={}},beforeDestroy(){this.resizeObserver&&this.resizeObserver.disconnect()},methods:{scrollTo(t){this.index=t;const e=(Math.floor(t/this.columnCount)-.5)*this.itemHeight+this.beforeHeight;te.debug("VirtualList: scrolling to index "+t,{scrollTop:e,columnCount:this.columnCount}),this.$el.scrollTop=e},onScroll(){this._onScrollHandle??=requestAnimationFrame((()=>{this._onScrollHandle=null;const t=this.$el.scrollTop-this.beforeHeight,e=Math.floor(t/this.itemHeight)*this.columnCount;this.index=Math.max(0,e),this.$emit("scroll")}))}}}),oi=(0,Mt.Z)(ri,(function(){var t=this,e=t._self._c;return t._self._setupProxy,e("div",{staticClass:"files-list",attrs:{"data-cy-files-list":""}},[e("div",{ref:"before",staticClass:"files-list__before"},[t._t("before")],2),t._v(" "),e("table",{staticClass:"files-list__table"},[t.caption?e("caption",{staticClass:"hidden-visually"},[t._v("\n\t\t\t"+t._s(t.caption)+"\n\t\t")]):t._e(),t._v(" "),e("thead",{ref:"thead",staticClass:"files-list__thead",attrs:{"data-cy-files-list-thead":""}},[t._t("header")],2),t._v(" "),e("tbody",{staticClass:"files-list__tbody",class:t.gridMode?"files-list__tbody--grid":"files-list__tbody--list",style:t.tbodyStyle,attrs:{"data-cy-files-list-tbody":""}},t._l(t.renderedItems,(function(n,s){let{key:i,item:a}=n;return e(t.dataComponent,t._b({key:i,tag:"component",attrs:{source:a,index:s}},"component",t.extraProps,!1))})),1),t._v(" "),e("tfoot",{directives:[{name:"show",rawName:"v-show",value:t.isReady,expression:"isReady"}],staticClass:"files-list__tfoot",attrs:{"data-cy-files-list-tfoot":""}},[t._t("footer")],2)])])}),[],!1,null,null,null).exports,li=(0,a.defineComponent)({name:"FilesListVirtual",components:{FilesListHeader:Bs,FilesListTableFooter:Os,FilesListTableHeader:si,VirtualList:oi},mixins:[Us],props:{currentView:{type:lt.G7,required:!0},currentFolder:{type:lt.gt,required:!0},nodes:{type:Array,required:!0}},setup:()=>({userConfigStore:de()}),data:()=>({FileEntry:ks,FileEntryGrid:Es,headers:(0,lt.De)(),scrollToIndex:0,dndNoticeHeight:0}),computed:{userConfig(){return this.userConfigStore.userConfig},files(){return this.nodes.filter((t=>"file"===t.type))},fileId(){return parseInt(this.$route.params.fileid)||null},summaryFile(){const t=this.files.length;return(0,Ut.uN)("files","{count} file","{count} files",t,{count:t})},summaryFolder(){const t=this.nodes.length-this.files.length;return(0,Ut.uN)("files","{count} folder","{count} folders",t,{count:t})},summary(){return(0,Ut.Iu)("files","{summaryFile} and {summaryFolder}",this)},isMtimeAvailable(){return!(this.filesListWidth<768)&&this.nodes.some((t=>void 0!==t.mtime))},isSizeAvailable(){return!(this.filesListWidth<768)&&this.nodes.some((t=>void 0!==t.attributes.size))},sortedHeaders(){return this.currentFolder&&this.currentView?[...this.headers].sort(((t,e)=>t.order-e.order)):[]},caption(){const t=(0,Ut.Iu)("files","List of files and folders.");return`${this.currentView.caption||t}\n${(0,Ut.Iu)("files","Column headers with buttons are sortable.")}\n${(0,Ut.Iu)("files","This list is not fully rendered for performance reasons. The files will be rendered as you navigate through the list.")}`}},watch:{fileId(t){this.scrollToFile(t,!1)}},mounted(){window.document.querySelector("main.app-content").addEventListener("dragover",this.onDragOver),this.scrollToFile(this.fileId),this.openSidebarForFile(this.fileId),this.handleOpenFile()},beforeDestroy(){window.document.querySelector("main.app-content").removeEventListener("dragover",this.onDragOver)},methods:{openSidebarForFile(t){if(document.documentElement.clientWidth>1024&&this.currentFolder.fileid!==t){const e=this.nodes.find((e=>e.fileid===t));e&&ee?.enabled?.([e],this.currentView)&&(te.debug("Opening sidebar on file "+e.path,{node:e}),ee.exec(e,this.currentView,this.currentFolder.path))}},scrollToFile(t){let e=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];if(t){const n=this.nodes.findIndex((e=>e.fileid===t));e&&-1===n&&t!==this.currentFolder.fileid&&(0,Pe.x2)(this.t("files","File not found")),this.scrollToIndex=Math.max(0,n)}},handleOpenFile(){const t=(0,oe.j)("files","openFileInfo",{});if(void 0===t)return;const e=this.nodes.find((e=>e.fileid===t.id));void 0!==e&&(te.debug("Opening file "+e.path,{node:e}),(0,lt.Vn)().filter((t=>!t.enabled||t.enabled([e],this.currentView))).sort(((t,e)=>(t.order||0)-(e.order||0))).filter((t=>!!t?.default))[0].exec(e,this.currentView,this.currentFolder.path))},getFileId:t=>t.fileid,onDragOver(t){const e=t.dataTransfer?.types.includes("Files");if(e)return;t.preventDefault(),t.stopPropagation();const n=this.$refs.table.$el.getBoundingClientRect().top,s=n+this.$refs.table.$el.getBoundingClientRect().height;t.clientYs-50&&(this.$refs.table.$el.scrollTop=this.$refs.table.$el.scrollTop+25)},t:Ut.Iu}});var ci=s(51272),di={};di.styleTagTransform=Ee(),di.setAttributes=Te(),di.insert=xe().bind(null,"head"),di.domAPI=be(),di.insertStyleElement=Se(),we()(ci.Z,di),ci.Z&&ci.Z.locals&&ci.Z.locals;var ui=s(61590),mi={};mi.styleTagTransform=Ee(),mi.setAttributes=Te(),mi.insert=xe().bind(null,"head"),mi.domAPI=be(),mi.insertStyleElement=Se(),we()(ui.Z,mi),ui.Z&&ui.Z.locals&&ui.Z.locals;const fi=(0,Mt.Z)(li,(function(){var t=this,e=t._self._c;return t._self._setupProxy,e("VirtualList",{ref:"table",attrs:{"data-component":t.userConfig.grid_view?t.FileEntryGrid:t.FileEntry,"data-key":"source","data-sources":t.nodes,"grid-mode":t.userConfig.grid_view,"extra-props":{isMtimeAvailable:t.isMtimeAvailable,isSizeAvailable:t.isSizeAvailable,nodes:t.nodes,filesListWidth:t.filesListWidth},"scroll-to-index":t.scrollToIndex,caption:t.caption},scopedSlots:t._u([{key:"before",fn:function(){return t._l(t.sortedHeaders,(function(n){return e("FilesListHeader",{key:n.id,attrs:{"current-folder":t.currentFolder,"current-view":t.currentView,header:n}})}))},proxy:!0},{key:"header",fn:function(){return[e("FilesListTableHeader",{ref:"thead",attrs:{"files-list-width":t.filesListWidth,"is-mtime-available":t.isMtimeAvailable,"is-size-available":t.isSizeAvailable,nodes:t.nodes}})]},proxy:!0},{key:"footer",fn:function(){return[e("FilesListTableFooter",{attrs:{"files-list-width":t.filesListWidth,"is-mtime-available":t.isMtimeAvailable,"is-size-available":t.isSizeAvailable,nodes:t.nodes,summary:t.summary}})]},proxy:!0}])})}),[],!1,null,"1b17ff10",null).exports,pi={name:"TrayArrowDownIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},gi=(0,Mt.Z)(pi,(function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon tray-arrow-down-icon",attrs:{"aria-hidden":!t.title,"aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("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"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports,hi=async function(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";const n=(0,$t.g)();try{return await n.upload(`${e}${t.name}`,t)}catch(e){throw(0,Pe.x2)((0,Ut.Iu)("files",'Uploading "{filename}" failed',{filename:t.name})),e}},vi=async function(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";if(t.isFile)return[await new Promise(((n,s)=>{t.file((async t=>n(await hi(t,e))),(t=>s(t)))}))];{const n=t;te.debug("Handle directory recursivly",{name:n.name});const s=`${lt._o}${(0,$t.g)().destination.path}${e}${n.name}`,i=(0,lt.rp)();if(!await i.exists(s)){te.debug("Directory does not exist, creating it",{absolutPath:s}),await i.createDirectory(s,{recursive:!0});const t=await i.stat(s,{details:!0,data:(0,lt.h7)()});(0,dt.j8)("files:node:created",(0,lt.RL)(t.data))}const a=await function(t){const e=t.createReader();return new Promise(((t,n)=>{const s=[],i=()=>{e.readEntries((e=>{e.length?(s.push(...e),i()):t(s)}),(t=>{n(t)}))};i()}))}(n),r=a.sort((t=>t.isFile?-1:1)).map((t=>vi(t,`${e}${n.name}/`)));return(await Promise.all(r)).flat()}},Ai=(0,a.defineComponent)({name:"DragAndDropNotice",components:{TrayArrowDownIcon:gi},props:{currentFolder:{type:Object,required:!0}},data:()=>({dragover:!1}),mounted(){const t=window.document.querySelector("main.app-content");t.addEventListener("dragover",this.onDragOver),t.addEventListener("dragleave",this.onDragLeave)},beforeDestroy(){const t=window.document.querySelector("main.app-content");t.removeEventListener("dragover",this.onDragOver),t.removeEventListener("dragleave",this.onDragLeave)},methods:{onDragOver(t){const e=t.dataTransfer?.types.includes("Files");e&&(this.dragover=!0)},onDragLeave(){this.dragover&&(this.dragover=!1)},onDrop(t){this.$el.querySelector("tbody")?.contains(t.target)||(t.preventDefault(),t.stopPropagation(),t.dataTransfer&&t.dataTransfer.items.length>0&&(te.debug(`Uploading files to ${this.currentFolder.path}`),(async t=>{const e=[];for(const n of t.items){if("file"!==n.kind){te.debug("Skipping dropped item",{kind:n.kind,type:n.type});continue}const t=n?.getAsEntry?.()??n.webkitGetAsEntry();if(null===t){te.debug("Could not get FilesystemEntry of item, falling back to file");const t=n.getAsFile();null===t?(te.warn("Could not process DataTransferItem",{type:n.type,kind:n.kind}),(0,Pe.x2)((0,Ut.Iu)("files","One of the dropped files could not be processed"))):e.push(await hi(t))}else te.debug("Handle recursive upload",{entry:t.name}),e.push(...await vi(t))}return e})(t.dataTransfer).then((t=>{te.debug("Upload terminated",{uploads:t}),(0,Pe.s$)((0,Ut.Iu)("files","Upload successful"));const e=t.findLast((t=>!t.file.webkitRelativePath.includes("/")&&t.response?.headers?.["oc-fileid"]));void 0!==e&&this.$router.push({...this.$route,params:{view:this.$route.params?.view??"files",fileid:parseInt(e.response.headers["oc-fileid"])}})}))),this.dragover=!1)},t:Ut.Iu}});var wi=s(81432),yi={};yi.styleTagTransform=Ee(),yi.setAttributes=Te(),yi.insert=xe().bind(null,"head"),yi.domAPI=be(),yi.insertStyleElement=Se(),we()(wi.Z,yi),wi.Z&&wi.Z.locals&&wi.Z.locals;const bi=(0,Mt.Z)(Ai,(function(){var t=this,e=t._self._c;return t._self._setupProxy,e("div",{directives:[{name:"show",rawName:"v-show",value:t.dragover,expression:"dragover"}],staticClass:"files-list__drag-drop-notice",on:{drop:t.onDrop}},[e("div",{staticClass:"files-list__drag-drop-notice-wrapper"},[e("TrayArrowDownIcon",{attrs:{size:48}}),t._v(" "),e("h3",{staticClass:"files-list-drag-drop-notice__title"},[t._v("\n\t\t\t"+t._s(t.t("files","Drag and drop files here to upload"))+"\n\t\t")])],1)])}),[],!1,null,"7e0e423e",null).exports,Ci=void 0!==(0,ut.getCapabilities)()?.files_sharing,xi=(0,a.defineComponent)({name:"FilesList",components:{BreadCrumbs:Be,DragAndDropNotice:bi,FilesListVirtual:fi,LinkIcon:zt.Z,ListViewIcon:Vt,NcAppContent:Ht.Z,NcButton:qt.Z,NcEmptyContent:Zt.Z,NcIconSvgWrapper:Gt.Z,NcLoadingIcon:Wt.Z,ShareVariantIcon:Kt,UploadPicker:$t.U,ViewGridIcon:Qt},mixins:[Us,Gs],setup(){const t=ne(),e=se(),n=ie(),s=function(){return ae=(0,$t.g)(),ot("uploader",{state:()=>({queue:ae.queue})})(...arguments)}();return{filesStore:t,pathsStore:e,selectionStore:n,uploaderStore:s,userConfigStore:de(),viewConfigStore:me()}},data:()=>({loading:!0,promise:null,Type:Dt.D}),computed:{userConfig(){return this.userConfigStore.userConfig},currentView(){return this.$navigation.active||this.$navigation.views.find((t=>"files"===t.id))},dir(){return(this.$route?.query?.dir?.toString()||"/").replace(/^(.+)\/$/,"$1")},currentFolder(){if(!this.currentView?.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)},sortingParameters(){return[[...this.userConfig.sort_favorites_first?[t=>1!==t.attributes?.favorite]:[],..."basename"===this.sortingMode?[t=>"folder"!==t.type]:[],..."basename"!==this.sortingMode?[t=>t[this.sortingMode]]:[],t=>t.attributes?.displayName||t.basename,t=>t.basename],[...this.userConfig.sort_favorites_first?["asc"]:[],..."basename"===this.sortingMode?["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(){if(!this.currentView)return[];const t=(this.currentView?.columns||[]).find((t=>t.id===this.sortingMode));if(t?.sort&&"function"==typeof t.sort){const e=[...this.dirContents].sort(t.sort);return this.isAscSorting?e:e.reverse()}return Ot([...this.dirContents],...this.sortingParameters)},dirContents(){const t=this.userConfigStore?.userConfig.show_hidden;return(this.currentFolder?._children||[]).map(this.getNode).filter((e=>t?!!e:e&&!0!==e?.attributes?.hidden&&!e?.basename.startsWith(".")))},isEmptyDir(){return 0===this.dirContents.length},isRefreshing(){return void 0!==this.currentFolder&&!this.isEmptyDir&&this.loading},toPreviousDir(){const t=this.dir.split("/").slice(0,-1).join("/")||"/";return{...this.$route,query:{dir:t}}},shareAttributes(){if(this.currentFolder?.attributes?.["share-types"])return Object.values(this.currentFolder?.attributes?.["share-types"]||{}).flat()},shareButtonLabel(){return this.shareAttributes?this.shareButtonType===Dt.D.SHARE_TYPE_LINK?this.t("files","Shared by link"):this.t("files","Shared"):this.t("files","Share")},shareButtonType(){return this.shareAttributes?this.shareAttributes.some((t=>t===Dt.D.SHARE_TYPE_LINK))?Dt.D.SHARE_TYPE_LINK:Dt.D.SHARE_TYPE_USER:null},gridViewButtonLabel(){return this.userConfig.grid_view?this.t("files","Switch to list view"):this.t("files","Switch to grid view")},canUpload(){return this.currentFolder&&0!=(this.currentFolder.permissions<.y3.CREATE)},canShare(){return Ci&&this.currentFolder&&0!=(this.currentFolder.permissions<.y3.SHARE)}},watch:{currentView(t,e){t?.id!==e?.id&&(te.debug("View changed",{newView:t,oldView:e}),this.selectionStore.reset(),this.fetchContent())},dir(t,e){te.debug("Directory changed",{newDir:t,oldDir:e}),this.selectionStore.reset(),this.fetchContent(),this.$refs?.filesListVirtual?.$el&&(this.$refs.filesListVirtual.$el.scrollTop=0)},dirContents(t){te.debug("Directory contents changed",{view:this.currentView,folder:this.currentFolder,contents:t}),(0,dt.j8)("files:list:updated",{view:this.currentView,folder:this.currentFolder,contents:t})}},mounted(){this.fetchContent()},methods:{async fetchContent(){this.loading=!0;const t=this.dir,e=this.currentView;if(e){"function"==typeof this.promise?.cancel&&(this.promise.cancel(),te.debug("Cancelled previous ongoing fetch")),this.promise=e.getContents(t);try{const{folder:n,contents:s}=await this.promise;te.debug("Fetched contents",{dir:t,folder:n,contents:s}),this.filesStore.updateNodes(s),this.$set(n,"_children",s.map((t=>t.fileid))),"/"===t?this.filesStore.setRoot({service:e.id,root:n}):n.fileid?(this.filesStore.updateNodes([n]),this.pathsStore.addPath({service:e.id,fileid:n.fileid,path:t})):te.error("Invalid root folder returned",{dir:t,folder:n,currentView:e}),s.filter((t=>"folder"===t.type)).forEach((n=>{this.pathsStore.addPath({service:e.id,fileid:n.fileid,path:(0,mt.join)(t,n.basename)})}))}catch(t){te.error("Error while fetching content",{error:t})}finally{this.loading=!1}}else te.debug("The current view doesn't exists or is not ready.",{currentView:e})},getNode(t){return this.filesStore.getNode(t)},onUpload(t){(0,mt.dirname)(t.source)===this.currentFolder?.source&&this.fetchContent()},openSharingSidebar(){window?.OCA?.Files?.Sidebar?.setActiveTab&&window.OCA.Files.Sidebar.setActiveTab("sharing"),ee.exec(this.currentFolder,this.currentView,this.currentFolder.path)},toggleGridView(){this.userConfigStore.update("grid_view",!this.userConfig.grid_view)},t:Ut.Iu,n:Ut.uN}});var _i=s(80794),Ti={};Ti.styleTagTransform=Ee(),Ti.setAttributes=Te(),Ti.insert=xe().bind(null,"head"),Ti.domAPI=be(),Ti.insertStyleElement=Se(),we()(_i.Z,Ti),_i.Z&&_i.Z.locals&&_i.Z.locals;const ki=(0,Mt.Z)(xi,(function(){var t=this,e=t._self._c;return t._self._setupProxy,e("NcAppContent",{attrs:{"data-cy-files-content":""}},[e("div",{staticClass:"files-list__header"},[e("BreadCrumbs",{attrs:{path:t.dir},on:{reload:t.fetchContent},scopedSlots:t._u([{key:"actions",fn:function(){return[t.canShare&&t.filesListWidth>=512?e("NcButton",{staticClass:"files-list__header-share-button",class:{"files-list__header-share-button--shared":t.shareButtonType},attrs:{"aria-label":t.shareButtonLabel,title:t.shareButtonLabel,type:"tertiary"},on:{click:t.openSharingSidebar},scopedSlots:t._u([{key:"icon",fn:function(){return[t.shareButtonType===t.Type.SHARE_TYPE_LINK?e("LinkIcon"):e("ShareVariantIcon",{attrs:{size:20}})]},proxy:!0}],null,!1,2776780758)}):t._e(),t._v(" "),t.currentFolder&&t.canUpload?e("UploadPicker",{attrs:{content:t.dirContents,destination:t.currentFolder,multiple:!0},on:{uploaded:t.onUpload}}):t._e()]},proxy:!0}])}),t._v(" "),t.filesListWidth>=512?e("NcButton",{staticClass:"files-list__header-grid-button",attrs:{"aria-label":t.gridViewButtonLabel,title:t.gridViewButtonLabel,type:"tertiary"},on:{click:t.toggleGridView},scopedSlots:t._u([{key:"icon",fn:function(){return[t.userConfig.grid_view?e("ListViewIcon"):e("ViewGridIcon")]},proxy:!0}],null,!1,1682960703)}):t._e(),t._v(" "),t.isRefreshing?e("NcLoadingIcon",{staticClass:"files-list__refresh-icon"}):t._e()],1),t._v(" "),!t.loading&&t.canUpload?e("DragAndDropNotice",{attrs:{"current-folder":t.currentFolder}}):t._e(),t._v(" "),t.loading&&!t.isRefreshing?e("NcLoadingIcon",{staticClass:"files-list__loading-icon",attrs:{size:38,name:t.t("files","Loading current folder")}}):!t.loading&&t.isEmptyDir?e("NcEmptyContent",{attrs:{name:t.currentView?.emptyTitle||t.t("files","No files in here"),description:t.currentView?.emptyCaption||t.t("files","Upload some content or sync with your devices!"),"data-cy-files-content-empty":""},scopedSlots:t._u([{key:"action",fn:function(){return["/"!==t.dir?e("NcButton",{attrs:{"aria-label":t.t("files","Go to the previous folder"),type:"primary",to:t.toPreviousDir}},[t._v("\n\t\t\t\t"+t._s(t.t("files","Go back"))+"\n\t\t\t")]):t._e()]},proxy:!0},{key:"icon",fn:function(){return[e("NcIconSvgWrapper",{attrs:{svg:t.currentView.icon}})]},proxy:!0}])}):e("FilesListVirtual",{ref:"filesListVirtual",attrs:{"current-folder":t.currentFolder,"current-view":t.currentView,nodes:t.dirContentsSorted}})],1)}),[],!1,null,"14acd289",null).exports;var Si=s(69608),Li=s(44792);const Ei=(0,Mt.Z)(Li.Z,Si.s,Si.x,!1,null,null,null).exports;var Ni=s(92870),Fi=s(51235);function Bi(t,e,n){var s,i=n||{},a=i.noTrailing,r=void 0!==a&&a,o=i.noLeading,l=void 0!==o&&o,c=i.debounceMode,d=void 0===c?void 0:c,u=!1,m=0;function f(){s&&clearTimeout(s)}function p(){for(var n=arguments.length,i=new Array(n),a=0;at?l?(m=Date.now(),r||(s=setTimeout(d?g:p,t))):p():!0!==r&&(s=setTimeout(d?g:p,void 0===d?t-c:t)))}return p.cancel=function(t){var e=(t||{}).upcomingOnly,n=void 0!==e&&e;f(),u=!n},p}const Pi={name:"ChartPieIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},ji=(0,Mt.Z)(Pi,(function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon chart-pie-icon",attrs:{"aria-hidden":!t.title,"aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("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"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports;var Ii=s(34854);const Oi={name:"NavigationQuota",components:{ChartPie:ji,NcAppNavigationItem:Fi.Z,NcProgressBar:Ii.Z},data:()=>({loadingStorageStats:!1,storageStats:(0,oe.j)("files","storageStats",null)}),computed:{storageStatsTitle(){const t=(0,lt.sS)(this.storageStats?.used,!1,!1,!0),e=(0,lt.sS)(this.storageStats?.quota,!1,!1,!0);return this.storageStats?.quota<0?this.t("files","{usedQuotaByte} used",{usedQuotaByte:t}):this.t("files","{used} of {quota} used",{used:t,quota:e})},storageStatsTooltip(){return this.storageStats.relative?this.t("files","{relative}% used",this.storageStats):""}},beforeMount(){setInterval(this.throttleUpdateStorageStats,6e4),(0,dt.Ld)("files:node:created",this.throttleUpdateStorageStats),(0,dt.Ld)("files:node:deleted",this.throttleUpdateStorageStats),(0,dt.Ld)("files:node:moved",this.throttleUpdateStorageStats),(0,dt.Ld)("files:node:updated",this.throttleUpdateStorageStats)},methods:{debounceUpdateStorageStats:(Ui={}.atBegin,Bi(200,(function(t){this.updateStorageStats(t)}),{debounceMode:!1!==(void 0!==Ui&&Ui)})),throttleUpdateStorageStats:Bi(1e3,(function(t){this.updateStorageStats(t)})),async updateStorageStats(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;if(!this.loadingStorageStats){this.loadingStorageStats=!0;try{const t=await le.Z.get((0,re.generateUrl)("/apps/files/api/v1/stats"));if(!t?.data?.data)throw new Error("Invalid storage stats");this.storageStats=t.data.data}catch(n){te.error("Could not refresh storage stats",{error:n}),e&&(0,Pe.x2)(t("files","Could not refresh storage stats"))}finally{this.loadingStorageStats=!1}}},t:Ut.Iu}};var Ui,Di=s(77895),$i={};$i.styleTagTransform=Ee(),$i.setAttributes=Te(),$i.insert=xe().bind(null,"head"),$i.domAPI=be(),$i.insertStyleElement=Se(),we()(Di.Z,$i),Di.Z&&Di.Z.locals&&Di.Z.locals;const zi=(0,Mt.Z)(Oi,(function(){var t=this,e=t._self._c;return t.storageStats?e("NcAppNavigationItem",{staticClass:"app-navigation-entry__settings-quota",class:{"app-navigation-entry__settings-quota--not-unlimited":t.storageStats.quota>=0},attrs:{"aria-label":t.t("files","Storage informations"),loading:t.loadingStorageStats,name:t.storageStatsTitle,title:t.storageStatsTooltip,"data-cy-files-navigation-settings-quota":""},on:{click:function(e){return e.stopPropagation(),e.preventDefault(),t.debounceUpdateStorageStats.apply(null,arguments)}}},[e("ChartPie",{attrs:{slot:"icon",size:20},slot:"icon"}),t._v(" "),t.storageStats.quota>=0?e("NcProgressBar",{attrs:{slot:"extra",error:t.storageStats.relative>80,value:Math.min(t.storageStats.relative,100)},slot:"extra"}):t._e()],1):t._e()}),[],!1,null,"2bae6012",null).exports;var Ri=s(33429),Mi=s(56956);const Vi={name:"ClipboardIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},Hi=(0,Mt.Z)(Vi,(function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon clipboard-icon",attrs:{"aria-hidden":!t.title,"aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("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"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports;var qi=s(6905);const Zi={name:"Setting",props:{el:{type:Function,required:!0}},mounted(){this.$el.appendChild(this.el())}},Gi=(0,Mt.Z)(Zi,(function(){return(0,this._self._c)("div")}),[],!1,null,null,null).exports,Wi={name:"Settings",components:{Clipboard:Hi,NcAppSettingsDialog:Ri.Z,NcAppSettingsSection:Mi.Z,NcCheckboxRadioSwitch:Wn.Z,NcInputField:qi.Z,Setting:Gi},props:{open:{type:Boolean,default:!1}},setup:()=>({userConfigStore:de()}),data:()=>({settings:window.OCA?.Files?.Settings?.settings||[],webdavUrl:(0,re.generateRemoteUrl)("dav/files/"+encodeURIComponent((0,ct.ts)()?.uid)),webdavDocs:"https://docs.nextcloud.com/server/stable/go.php?to=user-webdav",appPasswordUrl:(0,re.generateUrl)("/settings/user/security#generate-app-token-section"),webdavUrlCopied:!1}),computed:{userConfig(){return this.userConfigStore.userConfig}},beforeMount(){this.settings.forEach((t=>t.open()))},beforeDestroy(){this.settings.forEach((t=>t.close()))},methods:{onClose(){this.$emit("close")},setConfig(t,e){this.userConfigStore.update(t,e)},async copyCloudId(){document.querySelector("input#webdav-url-input").select(),navigator.clipboard?(await navigator.clipboard.writeText(this.webdavUrl),this.webdavUrlCopied=!0,(0,Pe.s$)(t("files","WebDAV URL copied to clipboard")),setTimeout((()=>{this.webdavUrlCopied=!1}),5e3)):(0,Pe.x2)(t("files","Clipboard is not available"))},t:Ut.Iu}};var Yi=s(78320),Ki={};Ki.styleTagTransform=Ee(),Ki.setAttributes=Te(),Ki.insert=xe().bind(null,"head"),Ki.domAPI=be(),Ki.insertStyleElement=Se(),we()(Yi.Z,Ki),Yi.Z&&Yi.Z.locals&&Yi.Z.locals;const Ji=(0,Mt.Z)(Wi,(function(){var t=this,e=t._self._c;return e("NcAppSettingsDialog",{attrs:{open:t.open,"show-navigation":!0,name:t.t("files","Files settings")},on:{"update:open":t.onClose}},[e("NcAppSettingsSection",{attrs:{id:"settings",name:t.t("files","Files settings")}},[e("NcCheckboxRadioSwitch",{attrs:{checked:t.userConfig.sort_favorites_first},on:{"update:checked":function(e){return t.setConfig("sort_favorites_first",e)}}},[t._v("\n\t\t\t"+t._s(t.t("files","Sort favorites first"))+"\n\t\t")]),t._v(" "),e("NcCheckboxRadioSwitch",{attrs:{checked:t.userConfig.show_hidden},on:{"update:checked":function(e){return t.setConfig("show_hidden",e)}}},[t._v("\n\t\t\t"+t._s(t.t("files","Show hidden files"))+"\n\t\t")]),t._v(" "),e("NcCheckboxRadioSwitch",{attrs:{checked:t.userConfig.crop_image_previews},on:{"update:checked":function(e){return t.setConfig("crop_image_previews",e)}}},[t._v("\n\t\t\t"+t._s(t.t("files","Crop image previews"))+"\n\t\t")]),t._v(" "),e("NcCheckboxRadioSwitch",{attrs:{checked:t.userConfig.grid_view},on:{"update:checked":function(e){return t.setConfig("grid_view",e)}}},[t._v("\n\t\t\t"+t._s(t.t("files","Enable the grid view"))+"\n\t\t")])],1),t._v(" "),0!==t.settings.length?e("NcAppSettingsSection",{attrs:{id:"more-settings",name:t.t("files","Additional settings")}},[t._l(t.settings,(function(t){return[e("Setting",{key:t.name,attrs:{el:t.el}})]}))],2):t._e(),t._v(" "),e("NcAppSettingsSection",{attrs:{id:"webdav",name:t.t("files","WebDAV")}},[e("NcInputField",{attrs:{id:"webdav-url-input","show-trailing-button":!0,success:t.webdavUrlCopied,"trailing-button-label":t.t("files","Copy to clipboard"),value:t.webdavUrl,readonly:"readonly",type:"url"},on:{focus:function(t){return t.target.select()},"trailing-button-click":t.copyCloudId},scopedSlots:t._u([{key:"trailing-button-icon",fn:function(){return[e("Clipboard",{attrs:{size:20}})]},proxy:!0}])}),t._v(" "),e("em",[e("a",{staticClass:"setting-link",attrs:{href:t.webdavDocs,target:"_blank",rel:"noreferrer noopener"}},[t._v("\n\t\t\t\t"+t._s(t.t("files","Use this address to access your Files via WebDAV"))+" ↗\n\t\t\t")])]),t._v(" "),e("br"),t._v(" "),e("em",[e("a",{staticClass:"setting-link",attrs:{href:t.appPasswordUrl}},[t._v("\n\t\t\t\t"+t._s(t.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,"011c3819",null).exports,Qi={name:"Navigation",components:{Cog:Ei,NavigationQuota:zi,NcAppNavigation:Ni.Z,NcAppNavigationItem:Fi.Z,NcIconSvgWrapper:Gt.Z,SettingsModal:Ji},props:{Navigation:{type:Object,required:!0}},setup:()=>({viewConfigStore:me()}),data:()=>({settingsOpened:!1}),computed:{currentViewId(){return this.$route?.params?.view||"files"},currentView(){return this.views.find((t=>t.id===this.currentViewId))},views(){return this.Navigation.views},parentViews(){return this.views.filter((t=>!t.parent)).sort(((t,e)=>t.order-e.order))},childViews(){return this.views.filter((t=>!!t.parent)).reduce(((t,e)=>(t[e.parent]=[...t[e.parent]||[],e],t[e.parent].sort(((t,e)=>t.order-e.order)),t)),{})}},watch:{currentView(t,e){t.id!==e?.id&&(this.Navigation.setActive(t),te.debug("Navigation changed",{id:t.id,view:t}),this.showView(t))}},beforeMount(){this.currentView&&(te.debug("Navigation mounted. Showing requested view",{view:this.currentView}),this.showView(this.currentView))},methods:{showView(t){window?.OCA?.Files?.Sidebar?.close?.(),this.Navigation.setActive(t),function(t){const e=document.getElementById("page-heading-level-1");e&&(e.textContent=t)}(t.name),(0,dt.j8)("files:navigation:changed",t)},onToggleExpand(t){const e=this.isExpanded(t);t.expanded=!e,this.viewConfigStore.update(t.id,"expanded",!e)},isExpanded(t){return"boolean"==typeof this.viewConfigStore.getConfig(t.id)?.expanded?!0===this.viewConfigStore.getConfig(t.id).expanded:!0===t.expanded},generateToNavigation(t){if(t.params){const{dir:e,fileid:n}=t.params;return{name:"filelist",params:t.params,query:{dir:e,fileid:n}}}return{name:"filelist",params:{view:t.id}}},openSettings(){this.settingsOpened=!0},onSettingsClose(){this.settingsOpened=!1},t:Ut.Iu}};var Xi=s(24852),ta={};ta.styleTagTransform=Ee(),ta.setAttributes=Te(),ta.insert=xe().bind(null,"head"),ta.domAPI=be(),ta.insertStyleElement=Se(),we()(Xi.Z,ta),Xi.Z&&Xi.Z.locals&&Xi.Z.locals;const ea=(0,Mt.Z)(Qi,(function(){var t=this,e=t._self._c;return e("NcAppNavigation",{attrs:{"data-cy-files-navigation":"","aria-label":t.t("files","Files")},scopedSlots:t._u([{key:"list",fn:function(){return t._l(t.parentViews,(function(n){return e("NcAppNavigationItem",{key:n.id,attrs:{"allow-collapse":!0,"data-cy-files-navigation-item":n.id,icon:n.iconClass,open:t.isExpanded(n),pinned:n.sticky,name:n.name,to:t.generateToNavigation(n)},on:{"update:open":function(e){return t.onToggleExpand(n)}}},[n.icon?e("NcIconSvgWrapper",{attrs:{slot:"icon",svg:n.icon},slot:"icon"}):t._e(),t._v(" "),t._l(t.childViews[n.id],(function(n){return e("NcAppNavigationItem",{key:n.id,attrs:{"data-cy-files-navigation-item":n.id,exact:!0,icon:n.iconClass,name:n.name,to:t.generateToNavigation(n)}},[n.icon?e("NcIconSvgWrapper",{attrs:{slot:"icon",svg:n.icon},slot:"icon"}):t._e()],1)}))],2)}))},proxy:!0},{key:"footer",fn:function(){return[e("ul",{staticClass:"app-navigation-entry__settings"},[e("NavigationQuota"),t._v(" "),e("NcAppNavigationItem",{attrs:{"aria-label":t.t("files","Open the files app settings"),name:t.t("files","Files settings"),"data-cy-files-navigation-settings-button":""},on:{click:function(e){return e.preventDefault(),e.stopPropagation(),t.openSettings.apply(null,arguments)}}},[e("Cog",{attrs:{slot:"icon",size:20},slot:"icon"})],1)],1)]},proxy:!0}])},[t._v(" "),t._v(" "),e("SettingsModal",{attrs:{open:t.settingsOpened,"data-cy-files-navigation-settings":""},on:{close:t.onSettingsClose}})],1)}),[],!1,null,"1a7f07dd",null).exports,na="%[a-f0-9]{2}",sa=new RegExp("("+na+")|([^%]+?)","gi"),ia=new RegExp("("+na+")+","gi");function aa(t,e){try{return[decodeURIComponent(t.join(""))]}catch{}if(1===t.length)return t;e=e||1;const n=t.slice(0,e),s=t.slice(e);return Array.prototype.concat.call([],aa(n),aa(s))}function ra(t){try{return decodeURIComponent(t)}catch{let e=t.match(sa)||[];for(let n=1;nnull==t,da=t=>encodeURIComponent(t).replace(/[!'()*]/g,(t=>`%${t.charCodeAt(0).toString(16).toUpperCase()}`)),ua=Symbol("encodeFragmentIdentifier");function ma(t){if("string"!=typeof t||1!==t.length)throw new TypeError("arrayFormatSeparator must be single character string")}function fa(t,e){return e.encode?e.strict?da(t):encodeURIComponent(t):t}function pa(t,e){return e.decode?function(t){if("string"!=typeof t)throw new TypeError("Expected `encodedURI` to be of type `string`, got `"+typeof t+"`");try{return decodeURIComponent(t)}catch{return function(t){const e={"%FE%FF":"��","%FF%FE":"��"};let n=ia.exec(t);for(;n;){try{e[n[0]]=decodeURIComponent(n[0])}catch{const t=ra(n[0]);t!==n[0]&&(e[n[0]]=t)}n=ia.exec(t)}e["%C2"]="�";const s=Object.keys(e);for(const n of s)t=t.replace(new RegExp(n,"g"),e[n]);return t}(t)}}(t):t}function ga(t){return Array.isArray(t)?t.sort():"object"==typeof t?ga(Object.keys(t)).sort(((t,e)=>Number(t)-Number(e))).map((e=>t[e])):t}function ha(t){const e=t.indexOf("#");return-1!==e&&(t=t.slice(0,e)),t}function va(t,e){return e.parseNumbers&&!Number.isNaN(Number(t))&&"string"==typeof t&&""!==t.trim()?t=Number(t):!e.parseBooleans||null===t||"true"!==t.toLowerCase()&&"false"!==t.toLowerCase()||(t="true"===t.toLowerCase()),t}function Aa(t){const e=(t=ha(t)).indexOf("?");return-1===e?"":t.slice(e+1)}function wa(t,e){ma((e={decode:!0,sort:!0,arrayFormat:"none",arrayFormatSeparator:",",parseNumbers:!1,parseBooleans:!1,...e}).arrayFormatSeparator);const n=function(t){let e;switch(t.arrayFormat){case"index":return(t,n,s)=>{e=/\[(\d*)]$/.exec(t),t=t.replace(/\[\d*]$/,""),e?(void 0===s[t]&&(s[t]={}),s[t][e[1]]=n):s[t]=n};case"bracket":return(t,n,s)=>{e=/(\[])$/.exec(t),t=t.replace(/\[]$/,""),e?void 0!==s[t]?s[t]=[...s[t],n]:s[t]=[n]:s[t]=n};case"colon-list-separator":return(t,n,s)=>{e=/(:list)$/.exec(t),t=t.replace(/:list$/,""),e?void 0!==s[t]?s[t]=[...s[t],n]:s[t]=[n]:s[t]=n};case"comma":case"separator":return(e,n,s)=>{const i="string"==typeof n&&n.includes(t.arrayFormatSeparator),a="string"==typeof n&&!i&&pa(n,t).includes(t.arrayFormatSeparator);n=a?pa(n,t):n;const r=i||a?n.split(t.arrayFormatSeparator).map((e=>pa(e,t))):null===n?n:pa(n,t);s[e]=r};case"bracket-separator":return(e,n,s)=>{const i=/(\[])$/.test(e);if(e=e.replace(/\[]$/,""),!i)return void(s[e]=n?pa(n,t):n);const a=null===n?[]:n.split(t.arrayFormatSeparator).map((e=>pa(e,t)));void 0!==s[e]?s[e]=[...s[e],...a]:s[e]=a};default:return(t,e,n)=>{void 0!==n[t]?n[t]=[...[n[t]].flat(),e]:n[t]=e}}}(e),s=Object.create(null);if("string"!=typeof t)return s;if(!(t=t.trim().replace(/^[?#&]/,"")))return s;for(const i of t.split("&")){if(""===i)continue;const t=e.decode?i.replace(/\+/g," "):i;let[a,r]=oa(t,"=");void 0===a&&(a=t),r=void 0===r?null:["comma","separator","bracket-separator"].includes(e.arrayFormat)?r:pa(r,e),n(pa(a,e),r,s)}for(const[t,n]of Object.entries(s))if("object"==typeof n&&null!==n)for(const[t,s]of Object.entries(n))n[t]=va(s,e);else s[t]=va(n,e);return!1===e.sort?s:(!0===e.sort?Object.keys(s).sort():Object.keys(s).sort(e.sort)).reduce(((t,e)=>{const n=s[e];return Boolean(n)&&"object"==typeof n&&!Array.isArray(n)?t[e]=ga(n):t[e]=n,t}),Object.create(null))}function ya(t,e){if(!t)return"";ma((e={encode:!0,strict:!0,arrayFormat:"none",arrayFormatSeparator:",",...e}).arrayFormatSeparator);const n=n=>e.skipNull&&ca(t[n])||e.skipEmptyString&&""===t[n],s=function(t){switch(t.arrayFormat){case"index":return e=>(n,s)=>{const i=n.length;return void 0===s||t.skipNull&&null===s||t.skipEmptyString&&""===s?n:null===s?[...n,[fa(e,t),"[",i,"]"].join("")]:[...n,[fa(e,t),"[",fa(i,t),"]=",fa(s,t)].join("")]};case"bracket":return e=>(n,s)=>void 0===s||t.skipNull&&null===s||t.skipEmptyString&&""===s?n:null===s?[...n,[fa(e,t),"[]"].join("")]:[...n,[fa(e,t),"[]=",fa(s,t)].join("")];case"colon-list-separator":return e=>(n,s)=>void 0===s||t.skipNull&&null===s||t.skipEmptyString&&""===s?n:null===s?[...n,[fa(e,t),":list="].join("")]:[...n,[fa(e,t),":list=",fa(s,t)].join("")];case"comma":case"separator":case"bracket-separator":{const e="bracket-separator"===t.arrayFormat?"[]=":"=";return n=>(s,i)=>void 0===i||t.skipNull&&null===i||t.skipEmptyString&&""===i?s:(i=null===i?"":i,0===s.length?[[fa(n,t),e,fa(i,t)].join("")]:[[s,fa(i,t)].join(t.arrayFormatSeparator)])}default:return e=>(n,s)=>void 0===s||t.skipNull&&null===s||t.skipEmptyString&&""===s?n:null===s?[...n,fa(e,t)]:[...n,[fa(e,t),"=",fa(s,t)].join("")]}}(e),i={};for(const[e,s]of Object.entries(t))n(e)||(i[e]=s);const a=Object.keys(i);return!1!==e.sort&&a.sort(e.sort),a.map((n=>{const i=t[n];return void 0===i?"":null===i?fa(n,e):Array.isArray(i)?0===i.length&&"bracket-separator"===e.arrayFormat?fa(n,e)+"[]":i.reduce(s(n),[]).join("&"):fa(n,e)+"="+fa(i,e)})).filter((t=>t.length>0)).join("&")}function ba(t,e){e={decode:!0,...e};let[n,s]=oa(t,"#");return void 0===n&&(n=t),{url:n?.split("?")?.[0]??"",query:wa(Aa(t),e),...e&&e.parseFragmentIdentifier&&s?{fragmentIdentifier:pa(s,e)}:{}}}function Ca(t,e){e={encode:!0,strict:!0,[ua]:!0,...e};const n=ha(t.url).split("?")[0]||"";let s=ya({...wa(Aa(t.url),{sort:!1}),...t.query},e);s&&(s=`?${s}`);let i=function(t){let e="";const n=t.indexOf("#");return-1!==n&&(e=t.slice(n)),e}(t.url);if(t.fragmentIdentifier){const s=new URL(n);s.hash=t.fragmentIdentifier,i=e[ua]?s.hash:`#${t.fragmentIdentifier}`}return`${n}${s}${i}`}function xa(t,e,n){n={parseFragmentIdentifier:!0,[ua]:!1,...n};const{url:s,query:i,fragmentIdentifier:a}=ba(t,n);return Ca({url:s,query:la(i,e),fragmentIdentifier:a},n)}function _a(t,e,n){return xa(t,Array.isArray(e)?t=>!e.includes(t):(t,n)=>!e(t,n),n)}const Ta=i;var ka=s(25108);function Sa(t,e){for(var n in e)t[n]=e[n];return t}var La=/[!'()*]/g,Ea=function(t){return"%"+t.charCodeAt(0).toString(16)},Na=/%2C/g,Fa=function(t){return encodeURIComponent(t).replace(La,Ea).replace(Na,",")};function Ba(t){try{return decodeURIComponent(t)}catch(t){}return t}var Pa=function(t){return null==t||"object"==typeof t?t:String(t)};function ja(t){var e={};return(t=t.trim().replace(/^(\?|#|&)/,""))?(t.split("&").forEach((function(t){var n=t.replace(/\+/g," ").split("="),s=Ba(n.shift()),i=n.length>0?Ba(n.join("=")):null;void 0===e[s]?e[s]=i:Array.isArray(e[s])?e[s].push(i):e[s]=[e[s],i]})),e):e}function Ia(t){var e=t?Object.keys(t).map((function(e){var n=t[e];if(void 0===n)return"";if(null===n)return Fa(e);if(Array.isArray(n)){var s=[];return n.forEach((function(t){void 0!==t&&(null===t?s.push(Fa(e)):s.push(Fa(e)+"="+Fa(t)))})),s.join("&")}return Fa(e)+"="+Fa(n)})).filter((function(t){return t.length>0})).join("&"):null;return e?"?"+e:""}var Oa=/\/?$/;function Ua(t,e,n,s){var i=s&&s.options.stringifyQuery,a=e.query||{};try{a=Da(a)}catch(t){}var r={name:e.name||t&&t.name,meta:t&&t.meta||{},path:e.path||"/",hash:e.hash||"",query:a,params:e.params||{},fullPath:Ra(e,i),matched:t?za(t):[]};return n&&(r.redirectedFrom=Ra(n,i)),Object.freeze(r)}function Da(t){if(Array.isArray(t))return t.map(Da);if(t&&"object"==typeof t){var e={};for(var n in t)e[n]=Da(t[n]);return e}return t}var $a=Ua(null,{path:"/"});function za(t){for(var e=[];t;)e.unshift(t),t=t.parent;return e}function Ra(t,e){var n=t.path,s=t.query;void 0===s&&(s={});var i=t.hash;return void 0===i&&(i=""),(n||"/")+(e||Ia)(s)+i}function Ma(t,e,n){return e===$a?t===e:!!e&&(t.path&&e.path?t.path.replace(Oa,"")===e.path.replace(Oa,"")&&(n||t.hash===e.hash&&Va(t.query,e.query)):!(!t.name||!e.name)&&t.name===e.name&&(n||t.hash===e.hash&&Va(t.query,e.query)&&Va(t.params,e.params)))}function Va(t,e){if(void 0===t&&(t={}),void 0===e&&(e={}),!t||!e)return t===e;var n=Object.keys(t).sort(),s=Object.keys(e).sort();return n.length===s.length&&n.every((function(n,i){var a=t[n];if(s[i]!==n)return!1;var r=e[n];return null==a||null==r?a===r:"object"==typeof a&&"object"==typeof r?Va(a,r):String(a)===String(r)}))}function Ha(t){for(var e=0;e=0&&(e=t.slice(s),t=t.slice(0,s));var i=t.indexOf("?");return i>=0&&(n=t.slice(i+1),t=t.slice(0,i)),{path:t,query:n,hash:e}}(i.path||""),c=e&&e.path||"/",d=l.path?Ga(l.path,c,n||i.append):c,u=function(t,e,n){void 0===e&&(e={});var s,i=n||ja;try{s=i(t||"")}catch(t){s={}}for(var a in e){var r=e[a];s[a]=Array.isArray(r)?r.map(Pa):Pa(r)}return s}(l.query,i.query,s&&s.options.parseQuery),m=i.hash||l.hash;return m&&"#"!==m.charAt(0)&&(m="#"+m),{_normalized:!0,path:d,query:u,hash:m}}var mr,fr=function(){},pr={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(t){var e=this,n=this.$router,s=this.$route,i=n.resolve(this.to,s,this.append),a=i.location,r=i.route,o=i.href,l={},c=n.options.linkActiveClass,d=n.options.linkExactActiveClass,u=null==c?"router-link-active":c,m=null==d?"router-link-exact-active":d,f=null==this.activeClass?u:this.activeClass,p=null==this.exactActiveClass?m:this.exactActiveClass,g=r.redirectedFrom?Ua(null,ur(r.redirectedFrom),null,n):r;l[p]=Ma(s,g,this.exactPath),l[f]=this.exact||this.exactPath?l[p]:function(t,e){return 0===t.path.replace(Oa,"/").indexOf(e.path.replace(Oa,"/"))&&(!e.hash||t.hash===e.hash)&&function(t,e){for(var n in e)if(!(n in t))return!1;return!0}(t.query,e.query)}(s,g);var h=l[p]?this.ariaCurrentValue:null,v=function(t){gr(t)&&(e.replace?n.replace(a,fr):n.push(a,fr))},A={click:gr};Array.isArray(this.event)?this.event.forEach((function(t){A[t]=v})):A[this.event]=v;var w={class:l},y=!this.$scopedSlots.$hasNormal&&this.$scopedSlots.default&&this.$scopedSlots.default({href:o,route:r,navigate:v,isActive:l[f],isExactActive:l[p]});if(y){if(1===y.length)return y[0];if(y.length>1||!y.length)return 0===y.length?t():t("span",{},y)}if("a"===this.tag)w.on=A,w.attrs={href:o,"aria-current":h};else{var b=hr(this.$slots.default);if(b){b.isStatic=!1;var C=b.data=Sa({},b.data);for(var x in C.on=C.on||{},C.on){var _=C.on[x];x in A&&(C.on[x]=Array.isArray(_)?_:[_])}for(var T in A)T in C.on?C.on[T].push(A[T]):C.on[T]=v;var k=b.data.attrs=Sa({},b.data.attrs);k.href=o,k["aria-current"]=h}else w.on=A}return t(this.tag,w,this.$slots.default)}};function gr(t){if(!(t.metaKey||t.altKey||t.ctrlKey||t.shiftKey||t.defaultPrevented||void 0!==t.button&&0!==t.button)){if(t.currentTarget&&t.currentTarget.getAttribute){var e=t.currentTarget.getAttribute("target");if(/\b_blank\b/i.test(e))return}return t.preventDefault&&t.preventDefault(),!0}}function hr(t){if(t)for(var e,n=0;n-1&&(l.params[m]=n.params[m]);return l.path=dr(d.path,l.params),o(d,l,r)}if(l.path){l.params={};for(var f=0;f-1}function Gr(t,e){return Zr(t)&&t._isRouter&&(null==e||t.type===e)}function Wr(t,e,n){var s=function(i){i>=t.length?n():t[i]?e(t[i],(function(){s(i+1)})):s(i+1)};s(0)}function Yr(t,e){return Kr(t.map((function(t){return Object.keys(t.components).map((function(n){return e(t.components[n],t.instances[n],t,n)}))})))}function Kr(t){return Array.prototype.concat.apply([],t)}var Jr="function"==typeof Symbol&&"symbol"==typeof Symbol.toStringTag;function Qr(t){var e=!1;return function(){for(var n=[],s=arguments.length;s--;)n[s]=arguments[s];if(!e)return e=!0,t.apply(this,n)}}var Xr=function(t,e){this.router=t,this.base=function(t){if(!t)if(vr){var e=document.querySelector("base");t=(t=e&&e.getAttribute("href")||"/").replace(/^https?:\/\/[^\/]+/,"")}else t="/";return"/"!==t.charAt(0)&&(t="/"+t),t.replace(/\/$/,"")}(e),this.current=$a,this.pending=null,this.ready=!1,this.readyCbs=[],this.readyErrorCbs=[],this.errorCbs=[],this.listeners=[]};function to(t,e,n,s){var i=Yr(t,(function(t,s,i,a){var r=function(t,e){return"function"!=typeof t&&(t=mr.extend(t)),t.options[e]}(t,e);if(r)return Array.isArray(r)?r.map((function(t){return n(t,s,i,a)})):n(r,s,i,a)}));return Kr(s?i.reverse():i)}function eo(t,e){if(e)return function(){return t.apply(e,arguments)}}Xr.prototype.listen=function(t){this.cb=t},Xr.prototype.onReady=function(t,e){this.ready?t():(this.readyCbs.push(t),e&&this.readyErrorCbs.push(e))},Xr.prototype.onError=function(t){this.errorCbs.push(t)},Xr.prototype.transitionTo=function(t,e,n){var s,i=this;try{s=this.router.match(t,this.current)}catch(t){throw this.errorCbs.forEach((function(e){e(t)})),t}var a=this.current;this.confirmTransition(s,(function(){i.updateRoute(s),e&&e(s),i.ensureURL(),i.router.afterHooks.forEach((function(t){t&&t(s,a)})),i.ready||(i.ready=!0,i.readyCbs.forEach((function(t){t(s)})))}),(function(t){n&&n(t),t&&!i.ready&&(Gr(t,Mr.redirected)&&a===$a||(i.ready=!0,i.readyErrorCbs.forEach((function(e){e(t)}))))}))},Xr.prototype.confirmTransition=function(t,e,n){var s=this,i=this.current;this.pending=t;var a,r,o=function(t){!Gr(t)&&Zr(t)&&(s.errorCbs.length?s.errorCbs.forEach((function(e){e(t)})):ka.error(t)),n&&n(t)},l=t.matched.length-1,c=i.matched.length-1;if(Ma(t,i)&&l===c&&t.matched[l]===i.matched[c])return this.ensureURL(),t.hash&&Nr(this.router,i,t,!1),o(((r=Hr(a=i,t,Mr.duplicated,'Avoided redundant navigation to current location: "'+a.fullPath+'".')).name="NavigationDuplicated",r));var d,u=function(t,e){var n,s=Math.max(t.length,e.length);for(n=0;n0)){var e=this.router,n=e.options.scrollBehavior,s=$r&&n;s&&this.listeners.push(Er());var i=function(){var n=t.current,i=so(t.base);t.current===$a&&i===t._startLocation||t.transitionTo(i,(function(t){s&&Nr(e,t,n,!0)}))};window.addEventListener("popstate",i),this.listeners.push((function(){window.removeEventListener("popstate",i)}))}},e.prototype.go=function(t){window.history.go(t)},e.prototype.push=function(t,e,n){var s=this,i=this.current;this.transitionTo(t,(function(t){zr(Wa(s.base+t.fullPath)),Nr(s.router,t,i,!1),e&&e(t)}),n)},e.prototype.replace=function(t,e,n){var s=this,i=this.current;this.transitionTo(t,(function(t){Rr(Wa(s.base+t.fullPath)),Nr(s.router,t,i,!1),e&&e(t)}),n)},e.prototype.ensureURL=function(t){if(so(this.base)!==this.current.fullPath){var e=Wa(this.base+this.current.fullPath);t?zr(e):Rr(e)}},e.prototype.getCurrentLocation=function(){return so(this.base)},e}(Xr);function so(t){var e=window.location.pathname,n=e.toLowerCase(),s=t.toLowerCase();return!t||n!==s&&0!==n.indexOf(Wa(s+"/"))||(e=e.slice(t.length)),(e||"/")+window.location.search+window.location.hash}var io=function(t){function e(e,n,s){t.call(this,e,n),s&&function(t){var e=so(t);if(!/^\/#/.test(e))return window.location.replace(Wa(t+"/#"+e)),!0}(this.base)||ao()}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.setupListeners=function(){var t=this;if(!(this.listeners.length>0)){var e=this.router.options.scrollBehavior,n=$r&&e;n&&this.listeners.push(Er());var s=function(){var e=t.current;ao()&&t.transitionTo(ro(),(function(s){n&&Nr(t.router,s,e,!0),$r||co(s.fullPath)}))},i=$r?"popstate":"hashchange";window.addEventListener(i,s),this.listeners.push((function(){window.removeEventListener(i,s)}))}},e.prototype.push=function(t,e,n){var s=this,i=this.current;this.transitionTo(t,(function(t){lo(t.fullPath),Nr(s.router,t,i,!1),e&&e(t)}),n)},e.prototype.replace=function(t,e,n){var s=this,i=this.current;this.transitionTo(t,(function(t){co(t.fullPath),Nr(s.router,t,i,!1),e&&e(t)}),n)},e.prototype.go=function(t){window.history.go(t)},e.prototype.ensureURL=function(t){var e=this.current.fullPath;ro()!==e&&(t?lo(e):co(e))},e.prototype.getCurrentLocation=function(){return ro()},e}(Xr);function ao(){var t=ro();return"/"===t.charAt(0)||(co("/"+t),!1)}function ro(){var t=window.location.href,e=t.indexOf("#");return e<0?"":t=t.slice(e+1)}function oo(t){var e=window.location.href,n=e.indexOf("#");return(n>=0?e.slice(0,n):e)+"#"+t}function lo(t){$r?zr(oo(t)):window.location.hash=t}function co(t){$r?Rr(oo(t)):window.location.replace(oo(t))}var uo=function(t){function e(e,n){t.call(this,e,n),this.stack=[],this.index=-1}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.push=function(t,e,n){var s=this;this.transitionTo(t,(function(t){s.stack=s.stack.slice(0,s.index+1).concat(t),s.index++,e&&e(t)}),n)},e.prototype.replace=function(t,e,n){var s=this;this.transitionTo(t,(function(t){s.stack=s.stack.slice(0,s.index).concat(t),e&&e(t)}),n)},e.prototype.go=function(t){var e=this,n=this.index+t;if(!(n<0||n>=this.stack.length)){var s=this.stack[n];this.confirmTransition(s,(function(){var t=e.current;e.index=n,e.updateRoute(s),e.router.afterHooks.forEach((function(e){e&&e(s,t)}))}),(function(t){Gr(t,Mr.duplicated)&&(e.index=n)}))}},e.prototype.getCurrentLocation=function(){var t=this.stack[this.stack.length-1];return t?t.fullPath:"/"},e.prototype.ensureURL=function(){},e}(Xr),mo=function(t){void 0===t&&(t={}),this.app=null,this.apps=[],this.options=t,this.beforeHooks=[],this.resolveHooks=[],this.afterHooks=[],this.matcher=br(t.routes||[],this);var e=t.mode||"hash";switch(this.fallback="history"===e&&!$r&&!1!==t.fallback,this.fallback&&(e="hash"),vr||(e="abstract"),this.mode=e,e){case"history":this.history=new no(this,t.base);break;case"hash":this.history=new io(this,t.base,this.fallback);break;case"abstract":this.history=new uo(this,t.base)}},fo={currentRoute:{configurable:!0}};mo.prototype.match=function(t,e,n){return this.matcher.match(t,e,n)},fo.currentRoute.get=function(){return this.history&&this.history.current},mo.prototype.init=function(t){var e=this;if(this.apps.push(t),t.$once("hook:destroyed",(function(){var n=e.apps.indexOf(t);n>-1&&e.apps.splice(n,1),e.app===t&&(e.app=e.apps[0]||null),e.app||e.history.teardown()})),!this.app){this.app=t;var n=this.history;if(n instanceof no||n instanceof io){var s=function(t){n.setupListeners(),function(t){var s=n.current,i=e.options.scrollBehavior;$r&&i&&"fullPath"in t&&Nr(e,t,s,!1)}(t)};n.transitionTo(n.getCurrentLocation(),s,s)}n.listen((function(t){e.apps.forEach((function(e){e._route=t}))}))}},mo.prototype.beforeEach=function(t){return go(this.beforeHooks,t)},mo.prototype.beforeResolve=function(t){return go(this.resolveHooks,t)},mo.prototype.afterEach=function(t){return go(this.afterHooks,t)},mo.prototype.onReady=function(t,e){this.history.onReady(t,e)},mo.prototype.onError=function(t){this.history.onError(t)},mo.prototype.push=function(t,e,n){var s=this;if(!e&&!n&&"undefined"!=typeof Promise)return new Promise((function(e,n){s.history.push(t,e,n)}));this.history.push(t,e,n)},mo.prototype.replace=function(t,e,n){var s=this;if(!e&&!n&&"undefined"!=typeof Promise)return new Promise((function(e,n){s.history.replace(t,e,n)}));this.history.replace(t,e,n)},mo.prototype.go=function(t){this.history.go(t)},mo.prototype.back=function(){this.go(-1)},mo.prototype.forward=function(){this.go(1)},mo.prototype.getMatchedComponents=function(t){var e=t?t.matched?t:this.resolve(t).route:this.currentRoute;return e?[].concat.apply([],e.matched.map((function(t){return Object.keys(t.components).map((function(e){return t.components[e]}))}))):[]},mo.prototype.resolve=function(t,e,n){var s=ur(t,e=e||this.history.current,n,this),i=this.match(s,e),a=i.redirectedFrom||i.fullPath,r=function(t,e,n){var s="hash"===n?"#"+e:e;return t?Wa(t+"/"+s):s}(this.history.base,a,this.mode);return{location:s,route:i,href:r,normalizedTo:s,resolved:i}},mo.prototype.getRoutes=function(){return this.matcher.getRoutes()},mo.prototype.addRoute=function(t,e){this.matcher.addRoute(t,e),this.history.current!==$a&&this.history.transitionTo(this.history.getCurrentLocation())},mo.prototype.addRoutes=function(t){this.matcher.addRoutes(t),this.history.current!==$a&&this.history.transitionTo(this.history.getCurrentLocation())},Object.defineProperties(mo.prototype,fo);var po=mo;function go(t,e){return t.push(e),function(){var n=t.indexOf(e);n>-1&&t.splice(n,1)}}mo.install=function t(e){if(!t.installed||mr!==e){t.installed=!0,mr=e;var n=function(t){return void 0!==t},s=function(t,e){var s=t.$options._parentVnode;n(s)&&n(s=s.data)&&n(s=s.registerRouteInstance)&&s(t,e)};e.mixin({beforeCreate:function(){n(this.$options.router)?(this._routerRoot=this,this._router=this.$options.router,this._router.init(this),e.util.defineReactive(this,"_route",this._router.history.current)):this._routerRoot=this.$parent&&this.$parent._routerRoot||this,s(this,this)},destroyed:function(){s(this)}}),Object.defineProperty(e.prototype,"$router",{get:function(){return this._routerRoot._router}}),Object.defineProperty(e.prototype,"$route",{get:function(){return this._routerRoot._route}}),e.component("RouterView",qa),e.component("RouterLink",pr);var i=e.config.optionMergeStrategies;i.beforeRouteEnter=i.beforeRouteLeave=i.beforeRouteUpdate=i.created}},mo.version="3.6.5",mo.isNavigationFailure=Gr,mo.NavigationFailureType=Mr,mo.START_LOCATION=$a,vr&&window.Vue&&window.Vue.use(mo),a.default.use(po);const ho=po.prototype.push;po.prototype.push=function(t,e,n){return e||n?ho.call(this,t,e,n):ho.call(this,t).catch((t=>t))};const vo=new po({mode:"history",base:(0,re.generateUrl)("/apps/files"),linkActiveClass:"active",routes:[{path:"/",redirect:{name:"filelist"}},{path:"/:view/:fileid?",name:"filelist",props:!0}],stringifyQuery(t){const e=Ta.stringify(t).replace(/%2F/gim,"/");return e?"?"+e:""}});function Ao(t,e,n){return(e=function(t){var e=function(t,e){if("object"!=typeof t||null===t)return t;var n=t[Symbol.toPrimitive];if(void 0!==n){var s=n.call(t,"string");if("object"!=typeof s)return s;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==typeof e?e:String(e)}(e))in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}var wo=s(25108);s.nc=btoa((0,ct.IH)()),window.OCA.Files=window.OCA.Files??{},window.OCP.Files=window.OCP.Files??{};const yo=new class{constructor(t){var e,n,s;e=this,s=void 0,(n=function(t){var e=function(t,e){if("object"!=typeof t||null===t)return t;var n=t[Symbol.toPrimitive];if(void 0!==n){var s=n.call(t,"string");if("object"!=typeof s)return s;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==typeof e?e:String(e)}(n="_router"))in e?Object.defineProperty(e,n,{value:s,enumerable:!0,configurable:!0,writable:!0}):e[n]=s,this._router=t}get name(){return this._router.currentRoute.name}get query(){return this._router.currentRoute.query||{}}get params(){return this._router.currentRoute.params||{}}goTo(t){let e=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return this._router.push({path:t,replace:e})}goToRoute(t,e,n,s){return this._router.push({name:t,query:n,params:e,replace:s})}}(vo);Object.assign(window.OCP.Files,{Router:yo}),a.default.use((function(t){t.mixin({beforeCreate(){const t=this.$options;if(t.pinia){const e=t.pinia;if(!this._provided){const t={};Object.defineProperty(this,"_provided",{get:()=>t,set:e=>Object.assign(t,e)})}this._provided[v]=e,this.$pinia||(this.$pinia=e),e._a=this,y&&h(e),b&&G(e._a,e)}else!this.$pinia&&t.parent&&t.parent.$pinia&&(this.$pinia=t.parent.$pinia)},destroyed(){delete this._pStores}})}));const bo=function(){const t=(0,a.effectScope)(!0),e=t.run((()=>(0,a.ref)({})));let n=[],s=[];const i=(0,a.markRaw)({install(t){h(i),r||(i._a=t,t.provide(v,i),t.config.globalProperties.$pinia=i,b&&G(t,i),s.forEach((t=>n.push(t))),s=[])},use(t){return this._a||r?n.push(t):s.push(t),this},_p:n,_a:null,_e:t,_s:new Map,state:e});return b&&"undefined"!=typeof Proxy&&i.use(J),i}(),Co=(0,lt.Ti)();a.default.prototype.$navigation=Co;const xo=new class{constructor(){var t,e,n;t=this,n=void 0,(e=function(t){var e=function(t,e){if("object"!=typeof t||null===t)return t;var n=t[Symbol.toPrimitive];if(void 0!==n){var s=n.call(t,"string");if("object"!=typeof s)return s;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==typeof e?e:String(e)}(e="_settings"))in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,this._settings=[],wo.debug("OCA.Files.Settings initialized")}register(t){return this._settings.filter((e=>e.name===t.name)).length>0?(wo.error("A setting with the same name is already registered"),!1):(this._settings.push(t),!0)}get settings(){return this._settings}};Object.assign(window.OCA.Files,{Settings:xo}),Object.assign(window.OCA.Files.Settings,{Setting:class{constructor(t,e){let{el:n,open:s,close:i}=e;Ao(this,"_close",void 0),Ao(this,"_el",void 0),Ao(this,"_name",void 0),Ao(this,"_open",void 0),this._name=t,this._el=n,this._open=s,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(a.default.extend(ea))({name:"FilesNavigationRoot",propsData:{Navigation:Co},router:vo,pinia:bo}).$mount("#app-navigation-files"),new(a.default.extend(ki))({name:"FilesListRoot",router:vo,pinia:bo}).$mount("#app-content-vue")},51473:(t,e,n)=>{"use strict";n.d(e,{Z:()=>p});var s=n(87537),i=n.n(s),a=n(23645),r=n.n(a),o=n(61667),l=n.n(o),c=new URL(n(81490),n.b),d=new URL(n(90888),n.b),u=r()(i()),m=l()(c),f=l()(d);u.push([t.id,`@charset "UTF-8";\n/**\n * @copyright Copyright (c) 2019 Julius Härtl \n *\n * @author Julius Härtl \n * @author John Molakvoæ \n *\n * @license GNU AGPL version 3 or any later version\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.toastify.dialogs {\n min-width: 200px;\n background: none;\n background-color: var(--color-main-background);\n color: var(--color-main-text);\n box-shadow: 0 0 6px 0 var(--color-box-shadow);\n padding: 0 12px;\n margin-top: 45px;\n position: fixed;\n z-index: 10100;\n border-radius: var(--border-radius);\n display: flex;\n align-items: center;\n}\n.toastify.dialogs .toast-undo-container {\n display: flex;\n align-items: center;\n}\n.toastify.dialogs .toast-undo-button,\n.toastify.dialogs .toast-close {\n position: static;\n overflow: hidden;\n box-sizing: border-box;\n min-width: 44px;\n height: 100%;\n padding: 12px;\n white-space: nowrap;\n background-repeat: no-repeat;\n background-position: center;\n background-color: transparent;\n min-height: 0;\n}\n.toastify.dialogs .toast-undo-button.toast-close,\n.toastify.dialogs .toast-close.toast-close {\n text-indent: 0;\n opacity: .4;\n border: none;\n min-height: 44px;\n margin-left: 10px;\n font-size: 0;\n}\n.toastify.dialogs .toast-undo-button.toast-close:before,\n.toastify.dialogs .toast-close.toast-close:before {\n background-image: url(${m});\n content: " ";\n filter: var(--background-invert-if-dark);\n display: inline-block;\n width: 16px;\n height: 16px;\n}\n.toastify.dialogs .toast-undo-button.toast-undo-button,\n.toastify.dialogs .toast-close.toast-undo-button {\n height: calc(100% - 6px);\n margin: 3px 3px 3px 12px;\n}\n.toastify.dialogs .toast-undo-button:hover,\n.toastify.dialogs .toast-undo-button:focus,\n.toastify.dialogs .toast-undo-button:active,\n.toastify.dialogs .toast-close:hover,\n.toastify.dialogs .toast-close:focus,\n.toastify.dialogs .toast-close:active {\n cursor: pointer;\n opacity: 1;\n}\n.toastify.dialogs.toastify-top {\n right: 10px;\n}\n.toastify.dialogs.toast-with-click {\n cursor: pointer;\n}\n.toastify.dialogs.toast-error {\n border-left: 3px solid var(--color-error);\n}\n.toastify.dialogs.toast-info {\n border-left: 3px solid var(--color-primary);\n}\n.toastify.dialogs.toast-warning {\n border-left: 3px solid var(--color-warning);\n}\n.toastify.dialogs.toast-success,\n.toastify.dialogs.toast-undo {\n border-left: 3px solid var(--color-success);\n}\n.theme--dark .toastify.dialogs .toast-close.toast-close:before {\n background-image: url(${f});\n}\n._file-picker__file-icon_1vgv4_5 {\n width: 32px;\n height: 32px;\n min-width: 32px;\n min-height: 32px;\n background-repeat: no-repeat;\n background-size: contain;\n display: flex;\n justify-content: center;\n}\ntr.file-picker__row[data-v-6aded0d9] {\n height: var(--row-height, 50px);\n}\ntr.file-picker__row td[data-v-6aded0d9] {\n cursor: pointer;\n overflow: hidden;\n text-overflow: ellipsis;\n border-bottom: none;\n}\ntr.file-picker__row td[data-v-6aded0d9]:not(.row-checkbox) {\n padding-inline: 14px 0;\n}\ntr.file-picker__row td.row-size[data-v-6aded0d9] {\n text-align: end;\n padding-inline: 0 14px;\n}\ntr.file-picker__row td.row-name[data-v-6aded0d9] {\n padding-inline: 2px 0;\n}\n@keyframes gradient-6aded0d9 {\n 0% {\n background-position: 0% 50%;\n }\n 50% {\n background-position: 100% 50%;\n }\n to {\n background-position: 0% 50%;\n }\n}\n.loading-row .row-checkbox[data-v-6aded0d9] {\n text-align: center !important;\n}\n.loading-row span[data-v-6aded0d9] {\n display: inline-block;\n height: 24px;\n background: linear-gradient(to right, var(--color-background-darker), var(--color-text-maxcontrast), var(--color-background-darker));\n background-size: 600px 100%;\n border-radius: var(--border-radius);\n animation: gradient-6aded0d9 12s ease infinite;\n}\n.loading-row .row-wrapper[data-v-6aded0d9] {\n display: inline-flex;\n align-items: center;\n}\n.loading-row .row-checkbox span[data-v-6aded0d9] {\n width: 24px;\n}\n.loading-row .row-name span[data-v-6aded0d9]:last-of-type {\n margin-inline-start: 6px;\n width: 130px;\n}\n.loading-row .row-size span[data-v-6aded0d9] {\n width: 80px;\n}\n.loading-row .row-modified span[data-v-6aded0d9] {\n width: 90px;\n}\ntr.file-picker__row[data-v-ee6f34b5] {\n height: var(--row-height, 50px);\n}\ntr.file-picker__row td[data-v-ee6f34b5] {\n cursor: pointer;\n overflow: hidden;\n text-overflow: ellipsis;\n border-bottom: none;\n}\ntr.file-picker__row td[data-v-ee6f34b5]:not(.row-checkbox) {\n padding-inline: 14px 0;\n}\ntr.file-picker__row td.row-size[data-v-ee6f34b5] {\n text-align: end;\n padding-inline: 0 14px;\n}\ntr.file-picker__row td.row-name[data-v-ee6f34b5] {\n padding-inline: 2px 0;\n}\n.file-picker__row--selected[data-v-ee6f34b5] {\n background-color: var(--color-background-dark);\n}\n.file-picker__row[data-v-ee6f34b5]:hover {\n background-color: var(--color-background-hover);\n}\n.file-picker__name-container[data-v-ee6f34b5] {\n display: flex;\n justify-content: start;\n align-items: center;\n height: 100%;\n}\n.file-picker__file-name[data-v-ee6f34b5] {\n padding-inline-start: 6px;\n min-width: 0;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n.file-picker__file-extension[data-v-ee6f34b5] {\n color: var(--color-text-maxcontrast);\n min-width: fit-content;\n}\n.file-picker__header-preview[data-v-4297db37] {\n width: 22px;\n height: 32px;\n flex: 0 0 auto;\n}\n.file-picker__files[data-v-4297db37] {\n margin: 2px;\n margin-inline-start: 12px;\n overflow: scroll auto;\n}\n.file-picker__files table[data-v-4297db37] {\n width: 100%;\n max-height: 100%;\n table-layout: fixed;\n}\n.file-picker__files th[data-v-4297db37] {\n position: -webkit-sticky;\n position: sticky;\n z-index: 1;\n top: 0;\n background-color: var(--color-main-background);\n padding: 2px;\n}\n.file-picker__files th .header-wrapper[data-v-4297db37] {\n display: flex;\n}\n.file-picker__files th.row-checkbox[data-v-4297db37] {\n width: 44px;\n}\n.file-picker__files th.row-name[data-v-4297db37] {\n width: 230px;\n}\n.file-picker__files th.row-size[data-v-4297db37] {\n width: 100px;\n}\n.file-picker__files th.row-modified[data-v-4297db37] {\n width: 120px;\n}\n.file-picker__files th[data-v-4297db37]:not(.row-size) .button-vue__wrapper {\n justify-content: start;\n flex-direction: row-reverse;\n}\n.file-picker__files th[data-v-4297db37]:not(.row-size) .button-vue {\n padding-inline: 16px 4px;\n}\n.file-picker__files th.row-size[data-v-4297db37] .button-vue__wrapper {\n justify-content: end;\n}\n.file-picker__files th[data-v-4297db37] .button-vue__wrapper {\n color: var(--color-text-maxcontrast);\n}\n.file-picker__files th[data-v-4297db37] .button-vue__wrapper .button-vue__text {\n font-weight: 400;\n}\n.file-picker__breadcrumbs[data-v-3bc9efa5] {\n flex-grow: 0 !important;\n}\n.file-picker__side[data-v-fcfd0f23] {\n display: flex;\n flex-direction: column;\n align-items: start;\n gap: .5rem;\n min-width: 200px;\n padding-block: 2px;\n overflow: auto;\n}\n.file-picker__side[data-v-fcfd0f23] .button-vue__wrapper {\n justify-content: start;\n}\n.file-picker__filter-input[data-v-fcfd0f23] {\n margin-block: 7px;\n max-width: 260px;\n}\n@media (max-width: 736px) {\n .file-picker__side[data-v-fcfd0f23] {\n flex-direction: row;\n min-width: unset;\n }\n}\n@media (max-width: 512px) {\n .file-picker__side[data-v-fcfd0f23] {\n flex-direction: row;\n min-width: unset;\n }\n .file-picker__filter-input[data-v-fcfd0f23] {\n max-width: unset;\n }\n}\n.file-picker__navigation {\n padding-inline: 2px;\n}\n.file-picker__navigation,\n.file-picker__navigation * {\n box-sizing: border-box;\n}\n.file-picker__navigation .v-select.select {\n min-width: 220px;\n}\n@media (min-width: 513px) and (max-width: 736px) {\n .file-picker__navigation {\n gap: 11px;\n }\n}\n@media (max-width: 512px) {\n .file-picker__navigation {\n flex-direction: column-reverse !important;\n }\n}\n.file-picker__view[data-v-86a13079] {\n height: 50px;\n display: flex;\n justify-content: start;\n align-items: center;\n}\n.file-picker__view h3[data-v-86a13079] {\n font-weight: 700;\n height: fit-content;\n margin: 0;\n}\n.file-picker__main[data-v-86a13079] {\n box-sizing: border-box;\n width: 100%;\n display: flex;\n flex-direction: column;\n min-height: 0;\n flex: 1;\n padding-inline: 2px;\n}\n.file-picker__main *[data-v-86a13079] {\n box-sizing: border-box;\n}\n[data-v-86a13079] .file-picker {\n height: min(80vh, 800px);\n}\n@media (max-width: 512px) {\n [data-v-86a13079] .file-picker {\n height: calc(100% - 16px - var(--default-clickable-area));\n }\n}\n[data-v-86a13079] .file-picker__content {\n display: flex;\n flex-direction: column;\n overflow: hidden;\n}\n`,"",{version:3,sources:["webpack://./node_modules/@nextcloud/dialogs/dist/style.css"],names:[],mappings:"AAAA,gBAAgB;AAChB;;;;;;;;;;;;;;;;;;;;EAoBE;AACF;EACE,gBAAgB;EAChB,gBAAgB;EAChB,8CAA8C;EAC9C,6BAA6B;EAC7B,6CAA6C;EAC7C,eAAe;EACf,gBAAgB;EAChB,eAAe;EACf,cAAc;EACd,mCAAmC;EACnC,aAAa;EACb,mBAAmB;AACrB;AACA;EACE,aAAa;EACb,mBAAmB;AACrB;AACA;;EAEE,gBAAgB;EAChB,gBAAgB;EAChB,sBAAsB;EACtB,eAAe;EACf,YAAY;EACZ,aAAa;EACb,mBAAmB;EACnB,4BAA4B;EAC5B,2BAA2B;EAC3B,6BAA6B;EAC7B,aAAa;AACf;AACA;;EAEE,cAAc;EACd,WAAW;EACX,YAAY;EACZ,gBAAgB;EAChB,iBAAiB;EACjB,YAAY;AACd;AACA;;EAEE,yDAAiR;EACjR,YAAY;EACZ,wCAAwC;EACxC,qBAAqB;EACrB,WAAW;EACX,YAAY;AACd;AACA;;EAEE,wBAAwB;EACxB,wBAAwB;AAC1B;AACA;;;;;;EAME,eAAe;EACf,UAAU;AACZ;AACA;EACE,WAAW;AACb;AACA;EACE,eAAe;AACjB;AACA;EACE,yCAAyC;AAC3C;AACA;EACE,2CAA2C;AAC7C;AACA;EACE,2CAA2C;AAC7C;AACA;;EAEE,2CAA2C;AAC7C;AACA;EACE,yDAAiU;AACnU;AACA;EACE,WAAW;EACX,YAAY;EACZ,eAAe;EACf,gBAAgB;EAChB,4BAA4B;EAC5B,wBAAwB;EACxB,aAAa;EACb,uBAAuB;AACzB;AACA;EACE,+BAA+B;AACjC;AACA;EACE,eAAe;EACf,gBAAgB;EAChB,uBAAuB;EACvB,mBAAmB;AACrB;AACA;EACE,sBAAsB;AACxB;AACA;EACE,eAAe;EACf,sBAAsB;AACxB;AACA;EACE,qBAAqB;AACvB;AACA;EACE;IACE,2BAA2B;EAC7B;EACA;IACE,6BAA6B;EAC/B;EACA;IACE,2BAA2B;EAC7B;AACF;AACA;EACE,6BAA6B;AAC/B;AACA;EACE,qBAAqB;EACrB,YAAY;EACZ,oIAAoI;EACpI,2BAA2B;EAC3B,mCAAmC;EACnC,8CAA8C;AAChD;AACA;EACE,oBAAoB;EACpB,mBAAmB;AACrB;AACA;EACE,WAAW;AACb;AACA;EACE,wBAAwB;EACxB,YAAY;AACd;AACA;EACE,WAAW;AACb;AACA;EACE,WAAW;AACb;AACA;EACE,+BAA+B;AACjC;AACA;EACE,eAAe;EACf,gBAAgB;EAChB,uBAAuB;EACvB,mBAAmB;AACrB;AACA;EACE,sBAAsB;AACxB;AACA;EACE,eAAe;EACf,sBAAsB;AACxB;AACA;EACE,qBAAqB;AACvB;AACA;EACE,8CAA8C;AAChD;AACA;EACE,+CAA+C;AACjD;AACA;EACE,aAAa;EACb,sBAAsB;EACtB,mBAAmB;EACnB,YAAY;AACd;AACA;EACE,yBAAyB;EACzB,YAAY;EACZ,gBAAgB;EAChB,uBAAuB;AACzB;AACA;EACE,oCAAoC;EACpC,sBAAsB;AACxB;AACA;EACE,WAAW;EACX,YAAY;EACZ,cAAc;AAChB;AACA;EACE,WAAW;EACX,yBAAyB;EACzB,qBAAqB;AACvB;AACA;EACE,WAAW;EACX,gBAAgB;EAChB,mBAAmB;AACrB;AACA;EACE,wBAAwB;EACxB,gBAAgB;EAChB,UAAU;EACV,MAAM;EACN,8CAA8C;EAC9C,YAAY;AACd;AACA;EACE,aAAa;AACf;AACA;EACE,WAAW;AACb;AACA;EACE,YAAY;AACd;AACA;EACE,YAAY;AACd;AACA;EACE,YAAY;AACd;AACA;EACE,sBAAsB;EACtB,2BAA2B;AAC7B;AACA;EACE,wBAAwB;AAC1B;AACA;EACE,oBAAoB;AACtB;AACA;EACE,oCAAoC;AACtC;AACA;EACE,gBAAgB;AAClB;AACA;EACE,uBAAuB;AACzB;AACA;EACE,aAAa;EACb,sBAAsB;EACtB,kBAAkB;EAClB,UAAU;EACV,gBAAgB;EAChB,kBAAkB;EAClB,cAAc;AAChB;AACA;EACE,sBAAsB;AACxB;AACA;EACE,iBAAiB;EACjB,gBAAgB;AAClB;AACA;EACE;IACE,mBAAmB;IACnB,gBAAgB;EAClB;AACF;AACA;EACE;IACE,mBAAmB;IACnB,gBAAgB;EAClB;EACA;IACE,gBAAgB;EAClB;AACF;AACA;EACE,mBAAmB;AACrB;AACA;;EAEE,sBAAsB;AACxB;AACA;EACE,gBAAgB;AAClB;AACA;EACE;IACE,SAAS;EACX;AACF;AACA;EACE;IACE,yCAAyC;EAC3C;AACF;AACA;EACE,YAAY;EACZ,aAAa;EACb,sBAAsB;EACtB,mBAAmB;AACrB;AACA;EACE,gBAAgB;EAChB,mBAAmB;EACnB,SAAS;AACX;AACA;EACE,sBAAsB;EACtB,WAAW;EACX,aAAa;EACb,sBAAsB;EACtB,aAAa;EACb,OAAO;EACP,mBAAmB;AACrB;AACA;EACE,sBAAsB;AACxB;AACA;EACE,wBAAwB;AAC1B;AACA;EACE;IACE,yDAAyD;EAC3D;AACF;AACA;EACE,aAAa;EACb,sBAAsB;EACtB,gBAAgB;AAClB",sourcesContent:['@charset "UTF-8";\n/**\n * @copyright Copyright (c) 2019 Julius Härtl \n *\n * @author Julius Härtl \n * @author John Molakvoæ \n *\n * @license GNU AGPL version 3 or any later version\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.toastify.dialogs {\n min-width: 200px;\n background: none;\n background-color: var(--color-main-background);\n color: var(--color-main-text);\n box-shadow: 0 0 6px 0 var(--color-box-shadow);\n padding: 0 12px;\n margin-top: 45px;\n position: fixed;\n z-index: 10100;\n border-radius: var(--border-radius);\n display: flex;\n align-items: center;\n}\n.toastify.dialogs .toast-undo-container {\n display: flex;\n align-items: center;\n}\n.toastify.dialogs .toast-undo-button,\n.toastify.dialogs .toast-close {\n position: static;\n overflow: hidden;\n box-sizing: border-box;\n min-width: 44px;\n height: 100%;\n padding: 12px;\n white-space: nowrap;\n background-repeat: no-repeat;\n background-position: center;\n background-color: transparent;\n min-height: 0;\n}\n.toastify.dialogs .toast-undo-button.toast-close,\n.toastify.dialogs .toast-close.toast-close {\n text-indent: 0;\n opacity: .4;\n border: none;\n min-height: 44px;\n margin-left: 10px;\n font-size: 0;\n}\n.toastify.dialogs .toast-undo-button.toast-close:before,\n.toastify.dialogs .toast-close.toast-close:before {\n background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGhlaWdodD0iMTYiIHdpZHRoPSIxNiI+CiAgPHBhdGggZD0iTTE0IDEyLjNMMTIuMyAxNCA4IDkuNyAzLjcgMTQgMiAxMi4zIDYuMyA4IDIgMy43IDMuNyAyIDggNi4zIDEyLjMgMiAxNCAzLjcgOS43IDh6Ii8+Cjwvc3ZnPgo=);\n content: " ";\n filter: var(--background-invert-if-dark);\n display: inline-block;\n width: 16px;\n height: 16px;\n}\n.toastify.dialogs .toast-undo-button.toast-undo-button,\n.toastify.dialogs .toast-close.toast-undo-button {\n height: calc(100% - 6px);\n margin: 3px 3px 3px 12px;\n}\n.toastify.dialogs .toast-undo-button:hover,\n.toastify.dialogs .toast-undo-button:focus,\n.toastify.dialogs .toast-undo-button:active,\n.toastify.dialogs .toast-close:hover,\n.toastify.dialogs .toast-close:focus,\n.toastify.dialogs .toast-close:active {\n cursor: pointer;\n opacity: 1;\n}\n.toastify.dialogs.toastify-top {\n right: 10px;\n}\n.toastify.dialogs.toast-with-click {\n cursor: pointer;\n}\n.toastify.dialogs.toast-error {\n border-left: 3px solid var(--color-error);\n}\n.toastify.dialogs.toast-info {\n border-left: 3px solid var(--color-primary);\n}\n.toastify.dialogs.toast-warning {\n border-left: 3px solid var(--color-warning);\n}\n.toastify.dialogs.toast-success,\n.toastify.dialogs.toast-undo {\n border-left: 3px solid var(--color-success);\n}\n.theme--dark .toastify.dialogs .toast-close.toast-close:before {\n background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGhlaWdodD0iMTYiIHdpZHRoPSIxNiI+CiAgPHBhdGggZD0iTTE0IDEyLjNMMTIuMyAxNCA4IDkuNyAzLjcgMTQgMiAxMi4zIDYuMyA4IDIgMy43IDMuNyAyIDggNi4zIDEyLjMgMiAxNCAzLjcgOS43IDh6IiBzdHlsZT0iZmlsbC1vcGFjaXR5OjE7ZmlsbDojZmZmZmZmIi8+Cjwvc3ZnPgo=);\n}\n._file-picker__file-icon_1vgv4_5 {\n width: 32px;\n height: 32px;\n min-width: 32px;\n min-height: 32px;\n background-repeat: no-repeat;\n background-size: contain;\n display: flex;\n justify-content: center;\n}\ntr.file-picker__row[data-v-6aded0d9] {\n height: var(--row-height, 50px);\n}\ntr.file-picker__row td[data-v-6aded0d9] {\n cursor: pointer;\n overflow: hidden;\n text-overflow: ellipsis;\n border-bottom: none;\n}\ntr.file-picker__row td[data-v-6aded0d9]:not(.row-checkbox) {\n padding-inline: 14px 0;\n}\ntr.file-picker__row td.row-size[data-v-6aded0d9] {\n text-align: end;\n padding-inline: 0 14px;\n}\ntr.file-picker__row td.row-name[data-v-6aded0d9] {\n padding-inline: 2px 0;\n}\n@keyframes gradient-6aded0d9 {\n 0% {\n background-position: 0% 50%;\n }\n 50% {\n background-position: 100% 50%;\n }\n to {\n background-position: 0% 50%;\n }\n}\n.loading-row .row-checkbox[data-v-6aded0d9] {\n text-align: center !important;\n}\n.loading-row span[data-v-6aded0d9] {\n display: inline-block;\n height: 24px;\n background: linear-gradient(to right, var(--color-background-darker), var(--color-text-maxcontrast), var(--color-background-darker));\n background-size: 600px 100%;\n border-radius: var(--border-radius);\n animation: gradient-6aded0d9 12s ease infinite;\n}\n.loading-row .row-wrapper[data-v-6aded0d9] {\n display: inline-flex;\n align-items: center;\n}\n.loading-row .row-checkbox span[data-v-6aded0d9] {\n width: 24px;\n}\n.loading-row .row-name span[data-v-6aded0d9]:last-of-type {\n margin-inline-start: 6px;\n width: 130px;\n}\n.loading-row .row-size span[data-v-6aded0d9] {\n width: 80px;\n}\n.loading-row .row-modified span[data-v-6aded0d9] {\n width: 90px;\n}\ntr.file-picker__row[data-v-ee6f34b5] {\n height: var(--row-height, 50px);\n}\ntr.file-picker__row td[data-v-ee6f34b5] {\n cursor: pointer;\n overflow: hidden;\n text-overflow: ellipsis;\n border-bottom: none;\n}\ntr.file-picker__row td[data-v-ee6f34b5]:not(.row-checkbox) {\n padding-inline: 14px 0;\n}\ntr.file-picker__row td.row-size[data-v-ee6f34b5] {\n text-align: end;\n padding-inline: 0 14px;\n}\ntr.file-picker__row td.row-name[data-v-ee6f34b5] {\n padding-inline: 2px 0;\n}\n.file-picker__row--selected[data-v-ee6f34b5] {\n background-color: var(--color-background-dark);\n}\n.file-picker__row[data-v-ee6f34b5]:hover {\n background-color: var(--color-background-hover);\n}\n.file-picker__name-container[data-v-ee6f34b5] {\n display: flex;\n justify-content: start;\n align-items: center;\n height: 100%;\n}\n.file-picker__file-name[data-v-ee6f34b5] {\n padding-inline-start: 6px;\n min-width: 0;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n.file-picker__file-extension[data-v-ee6f34b5] {\n color: var(--color-text-maxcontrast);\n min-width: fit-content;\n}\n.file-picker__header-preview[data-v-4297db37] {\n width: 22px;\n height: 32px;\n flex: 0 0 auto;\n}\n.file-picker__files[data-v-4297db37] {\n margin: 2px;\n margin-inline-start: 12px;\n overflow: scroll auto;\n}\n.file-picker__files table[data-v-4297db37] {\n width: 100%;\n max-height: 100%;\n table-layout: fixed;\n}\n.file-picker__files th[data-v-4297db37] {\n position: -webkit-sticky;\n position: sticky;\n z-index: 1;\n top: 0;\n background-color: var(--color-main-background);\n padding: 2px;\n}\n.file-picker__files th .header-wrapper[data-v-4297db37] {\n display: flex;\n}\n.file-picker__files th.row-checkbox[data-v-4297db37] {\n width: 44px;\n}\n.file-picker__files th.row-name[data-v-4297db37] {\n width: 230px;\n}\n.file-picker__files th.row-size[data-v-4297db37] {\n width: 100px;\n}\n.file-picker__files th.row-modified[data-v-4297db37] {\n width: 120px;\n}\n.file-picker__files th[data-v-4297db37]:not(.row-size) .button-vue__wrapper {\n justify-content: start;\n flex-direction: row-reverse;\n}\n.file-picker__files th[data-v-4297db37]:not(.row-size) .button-vue {\n padding-inline: 16px 4px;\n}\n.file-picker__files th.row-size[data-v-4297db37] .button-vue__wrapper {\n justify-content: end;\n}\n.file-picker__files th[data-v-4297db37] .button-vue__wrapper {\n color: var(--color-text-maxcontrast);\n}\n.file-picker__files th[data-v-4297db37] .button-vue__wrapper .button-vue__text {\n font-weight: 400;\n}\n.file-picker__breadcrumbs[data-v-3bc9efa5] {\n flex-grow: 0 !important;\n}\n.file-picker__side[data-v-fcfd0f23] {\n display: flex;\n flex-direction: column;\n align-items: start;\n gap: .5rem;\n min-width: 200px;\n padding-block: 2px;\n overflow: auto;\n}\n.file-picker__side[data-v-fcfd0f23] .button-vue__wrapper {\n justify-content: start;\n}\n.file-picker__filter-input[data-v-fcfd0f23] {\n margin-block: 7px;\n max-width: 260px;\n}\n@media (max-width: 736px) {\n .file-picker__side[data-v-fcfd0f23] {\n flex-direction: row;\n min-width: unset;\n }\n}\n@media (max-width: 512px) {\n .file-picker__side[data-v-fcfd0f23] {\n flex-direction: row;\n min-width: unset;\n }\n .file-picker__filter-input[data-v-fcfd0f23] {\n max-width: unset;\n }\n}\n.file-picker__navigation {\n padding-inline: 2px;\n}\n.file-picker__navigation,\n.file-picker__navigation * {\n box-sizing: border-box;\n}\n.file-picker__navigation .v-select.select {\n min-width: 220px;\n}\n@media (min-width: 513px) and (max-width: 736px) {\n .file-picker__navigation {\n gap: 11px;\n }\n}\n@media (max-width: 512px) {\n .file-picker__navigation {\n flex-direction: column-reverse !important;\n }\n}\n.file-picker__view[data-v-86a13079] {\n height: 50px;\n display: flex;\n justify-content: start;\n align-items: center;\n}\n.file-picker__view h3[data-v-86a13079] {\n font-weight: 700;\n height: fit-content;\n margin: 0;\n}\n.file-picker__main[data-v-86a13079] {\n box-sizing: border-box;\n width: 100%;\n display: flex;\n flex-direction: column;\n min-height: 0;\n flex: 1;\n padding-inline: 2px;\n}\n.file-picker__main *[data-v-86a13079] {\n box-sizing: border-box;\n}\n[data-v-86a13079] .file-picker {\n height: min(80vh, 800px);\n}\n@media (max-width: 512px) {\n [data-v-86a13079] .file-picker {\n height: calc(100% - 16px - var(--default-clickable-area));\n }\n}\n[data-v-86a13079] .file-picker__content {\n display: flex;\n flex-direction: column;\n overflow: hidden;\n}\n'],sourceRoot:""}]);const p=u},82396:(t,e,n)=>{"use strict";n.d(e,{Z:()=>o});var s=n(87537),i=n.n(s),a=n(23645),r=n.n(a)()(i());r.push([t.id,".upload-picker[data-v-f09fb109] {\n display: inline-flex;\n align-items: center;\n height: 44px;\n}\n.upload-picker__progress[data-v-f09fb109] {\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-f09fb109] {\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n}\n.upload-picker--uploading .upload-picker__progress[data-v-f09fb109] {\n max-width: 200px;\n margin-right: 20px;\n margin-left: 8px;\n}\n.upload-picker--paused .upload-picker__progress[data-v-f09fb109] {\n animation: breathing-f09fb109 3s ease-out infinite normal;\n}\n@keyframes breathing-f09fb109 {\n 0% {\n opacity: .5;\n }\n 25% {\n opacity: 1;\n }\n 60% {\n opacity: .5;\n }\n to {\n opacity: .5;\n }\n}\n","",{version:3,sources:["webpack://./node_modules/@nextcloud/upload/dist/assets/index-f2495ce6.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;EACE;IACE,WAAW;EACb;EACA;IACE,UAAU;EACZ;EACA;IACE,WAAW;EACb;EACA;IACE,WAAW;EACb;AACF",sourcesContent:[".upload-picker[data-v-f09fb109] {\n display: inline-flex;\n align-items: center;\n height: 44px;\n}\n.upload-picker__progress[data-v-f09fb109] {\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-f09fb109] {\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n}\n.upload-picker--uploading .upload-picker__progress[data-v-f09fb109] {\n max-width: 200px;\n margin-right: 20px;\n margin-left: 8px;\n}\n.upload-picker--paused .upload-picker__progress[data-v-f09fb109] {\n animation: breathing-f09fb109 3s ease-out infinite normal;\n}\n@keyframes breathing-f09fb109 {\n 0% {\n opacity: .5;\n }\n 25% {\n opacity: 1;\n }\n 60% {\n opacity: .5;\n }\n to {\n opacity: .5;\n }\n}\n"],sourceRoot:""}]);const o=r},26057:(t,e,n)=>{"use strict";n.d(e,{Z:()=>o});var s=n(87537),i=n.n(s),a=n(23645),r=n.n(a)()(i());r.push([t.id,".breadcrumb[data-v-c33b6662]{flex:1 1 100% !important;width:100%}.breadcrumb[data-v-c33b6662] a{cursor:pointer !important}","",{version:3,sources:["webpack://./apps/files/src/components/BreadCrumbs.vue"],names:[],mappings:"AACA,6BAEC,wBAAA,CACA,UAAA,CAEA,+BACC,yBAAA",sourcesContent:["\n.breadcrumb {\n\t// Take as much space as possible\n\tflex: 1 1 100% !important;\n\twidth: 100%;\n\n\t::v-deep a {\n\t\tcursor: pointer !important;\n\t}\n}\n\n"],sourceRoot:""}]);const o=r},81432:(t,e,n)=>{"use strict";n.d(e,{Z:()=>o});var s=n(87537),i=n.n(s),a=n(23645),r=n.n(a)()(i());r.push([t.id,".files-list__drag-drop-notice[data-v-7e0e423e]{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-7e0e423e]{margin-left:16px;color:inherit}.files-list__drag-drop-notice-wrapper[data-v-7e0e423e]{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},50262:(t,e,n)=>{"use strict";n.d(e,{Z:()=>o});var s=n(87537),i=n.n(s),a=n(23645),r=n.n(a)()(i());r.push([t.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},99292:(t,e,n)=>{"use strict";n.d(e,{Z:()=>o});var s=n(87537),i=n.n(s),a=n(23645),r=n.n(a)()(i());r.push([t.id,".favorite-marker-icon[data-v-04e52abc]{color:#a08b00;min-width:unset !important;min-height:unset !important}.favorite-marker-icon[data-v-04e52abc] svg{width:26px !important;height:26px !important;max-width:unset !important;max-height:unset !important}.favorite-marker-icon[data-v-04e52abc] 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,aAAA,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: #a08b00;\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},21367:(t,e,n)=>{"use strict";n.d(e,{Z:()=>o});var s=n(87537),i=n.n(s),a=n(23645),r=n.n(a)()(i());r.push([t.id,"[data-v-6dd8d639] .button-vue--icon-and-text .button-vue__text{color:var(--color-primary-element)}[data-v-6dd8d639] .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:"AAGC,+DACC,kCAAA,CAED,+DACC,kCAAA",sourcesContent:["\n\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},68252:(t,e,n)=>{"use strict";n.d(e,{Z:()=>o});var s=n(87537),i=n.n(s),a=n(23645),r=n.n(a)()(i());r.push([t.id,"tr[data-v-58f7b64d]{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-58f7b64d]{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},41002:(t,e,n)=>{"use strict";n.d(e,{Z:()=>o});var s=n(87537),i=n.n(s),a=n(23645),r=n.n(a)()(i());r.push([t.id,".files-list__column[data-v-585fdb03]{user-select:none;color:var(--color-text-maxcontrast) !important}.files-list__column--sortable[data-v-585fdb03]{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},65769:(t,e,n)=>{"use strict";n.d(e,{Z:()=>o});var s=n(87537),i=n.n(s),a=n(23645),r=n.n(a)()(i());r.push([t.id,".files-list__row-actions-batch[data-v-72bacee0]{flex:1 1 100% !important}.files-list__row-actions-batch[data-v-72bacee0] .button-vue__wrapper{width:100%}.files-list__row-actions-batch[data-v-72bacee0] .button-vue__wrapper span.button-vue__text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}","",{version:3,sources:["webpack://./apps/files/src/components/FilesListTableHeaderActions.vue"],names:[],mappings:"AACA,gDACC,wBAAA,CAGA,qEACC,UAAA,CACA,2FACC,eAAA,CACA,sBAAA,CACA,kBAAA",sourcesContent:["\n.files-list__row-actions-batch {\n\tflex: 1 1 100% !important;\n\n\t// Remove when https://github.com/nextcloud/nextcloud-vue/pull/3936 is merged\n\t::v-deep .button-vue__wrapper {\n\t\twidth: 100%;\n\t\tspan.button-vue__text {\n\t\t\toverflow: hidden;\n\t\t\ttext-overflow: ellipsis;\n\t\t\twhite-space: nowrap;\n\t\t}\n\t}\n}\n"],sourceRoot:""}]);const o=r},36980:(t,e,n)=>{"use strict";n.d(e,{Z:()=>o});var s=n(87537),i=n.n(s),a=n(23645),r=n.n(a)()(i());r.push([t.id,".files-list__column-sort-button[data-v-097f69d4]{margin:0 calc(var(--cell-margin)*-1);min-width:calc(100% - 3*var(--cell-margin)) !important}.files-list__column-sort-button-text[data-v-097f69d4]{color:var(--color-text-maxcontrast);font-weight:normal}.files-list__column-sort-button-icon[data-v-097f69d4]{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-097f69d4]{inset-inline-start:10px}.files-list__column-sort-button--active .files-list__column-sort-button-icon[data-v-097f69d4],.files-list__column-sort-button:hover .files-list__column-sort-button-icon[data-v-097f69d4],.files-list__column-sort-button:focus .files-list__column-sort-button-icon[data-v-097f69d4],.files-list__column-sort-button:active .files-list__column-sort-button-icon[data-v-097f69d4]{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},51272:(t,e,n)=>{"use strict";n.d(e,{Z:()=>o});var s=n(87537),i=n.n(s),a=n(23645),r=n.n(a)()(i());r.push([t.id,".files-list[data-v-1b17ff10]{--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-1b17ff10] tbody{will-change:padding;contain:layout paint style;display:flex;flex-direction:column;width:100%;position:relative}.files-list[data-v-1b17ff10] tbody tr{contain:strict}.files-list[data-v-1b17ff10] tbody tr:hover,.files-list[data-v-1b17ff10] tbody tr:focus{background-color:var(--color-background-dark)}.files-list[data-v-1b17ff10] .files-list__before{display:flex;flex-direction:column}.files-list[data-v-1b17ff10] .files-list__table{display:block}.files-list[data-v-1b17ff10] .files-list__thead,.files-list[data-v-1b17ff10] .files-list__tfoot{display:flex;flex-direction:column;width:100%;background-color:var(--color-main-background)}.files-list[data-v-1b17ff10] .files-list__thead{position:sticky;z-index:10;top:0}.files-list[data-v-1b17ff10] .files-list__tfoot{min-height:300px}.files-list[data-v-1b17ff10] 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-1b17ff10] td,.files-list[data-v-1b17ff10] 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-1b17ff10] td span,.files-list[data-v-1b17ff10] th span{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.files-list[data-v-1b17ff10] .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-1b17ff10] .files-list__row-checkbox{justify-content:center}.files-list[data-v-1b17ff10] .files-list__row-checkbox .checkbox-radio-switch{display:flex;justify-content:center;--icon-size: var(--checkbox-size)}.files-list[data-v-1b17ff10] .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-1b17ff10] .files-list__row-checkbox .checkbox-radio-switch .checkbox-radio-switch__icon{margin:0 !important}.files-list[data-v-1b17ff10] .files-list__row:hover,.files-list[data-v-1b17ff10] .files-list__row:focus,.files-list[data-v-1b17ff10] .files-list__row:active,.files-list[data-v-1b17ff10] .files-list__row--active,.files-list[data-v-1b17ff10] .files-list__row--dragover{background-color:var(--color-background-hover);--color-text-maxcontrast: var(--color-main-text)}.files-list[data-v-1b17ff10] .files-list__row:hover>*,.files-list[data-v-1b17ff10] .files-list__row:focus>*,.files-list[data-v-1b17ff10] .files-list__row:active>*,.files-list[data-v-1b17ff10] .files-list__row--active>*,.files-list[data-v-1b17ff10] .files-list__row--dragover>*{--color-border: var(--color-border-dark)}.files-list[data-v-1b17ff10] .files-list__row:hover .favorite-marker-icon svg path,.files-list[data-v-1b17ff10] .files-list__row:focus .favorite-marker-icon svg path,.files-list[data-v-1b17ff10] .files-list__row:active .favorite-marker-icon svg path,.files-list[data-v-1b17ff10] .files-list__row--active .favorite-marker-icon svg path,.files-list[data-v-1b17ff10] .files-list__row--dragover .favorite-marker-icon svg path{stroke:var(--color-background-hover)}.files-list[data-v-1b17ff10] .files-list__row--dragover *{pointer-events:none}.files-list[data-v-1b17ff10] .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-1b17ff10] .files-list__row-icon *{cursor:pointer}.files-list[data-v-1b17ff10] .files-list__row-icon>span{justify-content:flex-start}.files-list[data-v-1b17ff10] .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-1b17ff10] .files-list__row-icon>span.folder-icon,.files-list[data-v-1b17ff10] .files-list__row-icon>span.folder-open-icon{margin:-3px}.files-list[data-v-1b17ff10] .files-list__row-icon>span.folder-icon svg,.files-list[data-v-1b17ff10] .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-1b17ff10] .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-1b17ff10] .files-list__row-icon-preview:not(.files-list__row-icon-preview--loaded){background:var(--color-loading-dark)}.files-list[data-v-1b17ff10] .files-list__row-icon-favorite{position:absolute;top:0px;right:-10px}.files-list[data-v-1b17ff10] .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-1b17ff10] .files-list__row-icon-overlay--file{color:var(--color-main-text);background:var(--color-main-background);border-radius:100%}.files-list[data-v-1b17ff10] .files-list__row-name{overflow:hidden;flex:1 1 auto}.files-list[data-v-1b17ff10] .files-list__row-name a{display:flex;align-items:center;width:100%;height:100%;min-width:0}.files-list[data-v-1b17ff10] .files-list__row-name a:focus-visible{outline:none}.files-list[data-v-1b17ff10] .files-list__row-name a:focus .files-list__row-name-text,.files-list[data-v-1b17ff10] .files-list__row-name a:focus-visible .files-list__row-name-text{outline:2px solid var(--color-main-text) !important;border-radius:20px}.files-list[data-v-1b17ff10] .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-1b17ff10] .files-list__row-name .files-list__row-name-ext{color:var(--color-text-maxcontrast);overflow:visible}.files-list[data-v-1b17ff10] .files-list__row-rename{width:100%;max-width:600px}.files-list[data-v-1b17ff10] .files-list__row-rename input{width:100%;margin-left:-8px;padding:2px 6px;border-width:2px}.files-list[data-v-1b17ff10] .files-list__row-rename input:invalid{border-color:var(--color-error);color:red}.files-list[data-v-1b17ff10] .files-list__row-actions{width:auto}.files-list[data-v-1b17ff10] .files-list__row-actions~td,.files-list[data-v-1b17ff10] .files-list__row-actions~th{margin:0 var(--cell-margin)}.files-list[data-v-1b17ff10] .files-list__row-actions button .button-vue__text{font-weight:normal}.files-list[data-v-1b17ff10] .files-list__row-action--inline{margin-right:7px}.files-list[data-v-1b17ff10] .files-list__row-mtime,.files-list[data-v-1b17ff10] .files-list__row-size{color:var(--color-text-maxcontrast)}.files-list[data-v-1b17ff10] .files-list__row-size{width:calc(var(--row-height)*1.5);justify-content:flex-end}.files-list[data-v-1b17ff10] .files-list__row-mtime{width:calc(var(--row-height)*2)}.files-list[data-v-1b17ff10] .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,iDACC,aAAA,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,sLAEC,mDAAA,CACA,kBAAA,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__table {\n\t\t\tdisplay: block;\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&:focus-visible .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}\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},61590:(t,e,n)=>{"use strict";n.d(e,{Z:()=>o});var s=n(87537),i=n.n(s),a=n(23645),r=n.n(a)()(i());r.push([t.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},77895:(t,e,n)=>{"use strict";n.d(e,{Z:()=>o});var s=n(87537),i=n.n(s),a=n(23645),r=n.n(a)()(i());r.push([t.id,".app-navigation-entry__settings-quota--not-unlimited[data-v-2bae6012] .app-navigation-entry__name{margin-top:-6px}.app-navigation-entry__settings-quota progress[data-v-2bae6012]{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},80794:(t,e,n)=>{"use strict";n.d(e,{Z:()=>o});var s=n(87537),i=n.n(s),a=n(23645),r=n.n(a)()(i());r.push([t.id,".app-content[data-v-14acd289]{display:flex;overflow:hidden;flex-direction:column;max-height:100%;position:relative}.files-list__header[data-v-14acd289]{display:flex;align-items:center;flex:0 0;margin:4px 4px 4px 50px;max-width:100%}.files-list__header>*[data-v-14acd289]{flex:0 0}.files-list__header-share-button[data-v-14acd289]{opacity:.3}.files-list__header-share-button--shared[data-v-14acd289]{opacity:1}.files-list__refresh-icon[data-v-14acd289]{flex:0 0 44px;width:44px;height:44px}.files-list__loading-icon[data-v-14acd289]{margin:auto}","",{version:3,sources:["webpack://./apps/files/src/views/FilesList.vue"],names:[],mappings:"AACA,8BAEC,YAAA,CACA,eAAA,CACA,qBAAA,CACA,eAAA,CACA,iBAAA,CAOA,qCACC,YAAA,CACA,kBAAA,CAEA,QAAA,CAEA,uBAAA,CACA,cAAA,CACA,uCAGC,QAAA,CAGD,kDACC,UAAA,CACA,0DACC,SAAA,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;\n}\n\n$margin: 4px;\n$navigationToggleSize: 50px;\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\t// Align with the navigation toggle icon\n\t\tmargin: $margin $margin $margin $navigationToggleSize;\n\t\tmax-width: 100%;\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\topacity: .3;\n\t\t\t&--shared {\n\t\t\t\topacity: 1;\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\n"],sourceRoot:""}]);const o=r},24852:(t,e,n)=>{"use strict";n.d(e,{Z:()=>o});var s=n(87537),i=n.n(s),a=n(23645),r=n.n(a)()(i());r.push([t.id,".app-navigation[data-v-1a7f07dd] .app-navigation-entry-icon{background-repeat:no-repeat;background-position:center}.app-navigation[data-v-1a7f07dd] .app-navigation-entry.active .button-vue.icon-collapse:not(:hover){color:var(--color-primary-element-text)}.app-navigation>ul.app-navigation__list[data-v-1a7f07dd]{padding-bottom:var(--default-grid-baseline, 4px)}.app-navigation-entry__settings[data-v-1a7f07dd]{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},78320:(t,e,n)=>{"use strict";n.d(e,{Z:()=>o});var s=n(87537),i=n.n(s),a=n(23645),r=n.n(a)()(i());r.push([t.id,".setting-link[data-v-011c3819]: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},46700:(t,e,n)=>{var s={"./af":42786,"./af.js":42786,"./ar":30867,"./ar-dz":14130,"./ar-dz.js":14130,"./ar-kw":96135,"./ar-kw.js":96135,"./ar-ly":56440,"./ar-ly.js":56440,"./ar-ma":47702,"./ar-ma.js":47702,"./ar-sa":16040,"./ar-sa.js":16040,"./ar-tn":37100,"./ar-tn.js":37100,"./ar.js":30867,"./az":31083,"./az.js":31083,"./be":9808,"./be.js":9808,"./bg":68338,"./bg.js":68338,"./bm":67438,"./bm.js":67438,"./bn":8905,"./bn-bd":76225,"./bn-bd.js":76225,"./bn.js":8905,"./bo":11560,"./bo.js":11560,"./br":1278,"./br.js":1278,"./bs":80622,"./bs.js":80622,"./ca":2468,"./ca.js":2468,"./cs":5822,"./cs.js":5822,"./cv":50877,"./cv.js":50877,"./cy":47373,"./cy.js":47373,"./da":24780,"./da.js":24780,"./de":59740,"./de-at":60217,"./de-at.js":60217,"./de-ch":60894,"./de-ch.js":60894,"./de.js":59740,"./dv":5300,"./dv.js":5300,"./el":50837,"./el.js":50837,"./en-au":78348,"./en-au.js":78348,"./en-ca":77925,"./en-ca.js":77925,"./en-gb":22243,"./en-gb.js":22243,"./en-ie":46436,"./en-ie.js":46436,"./en-il":47207,"./en-il.js":47207,"./en-in":44175,"./en-in.js":44175,"./en-nz":76319,"./en-nz.js":76319,"./en-sg":31662,"./en-sg.js":31662,"./eo":92915,"./eo.js":92915,"./es":55655,"./es-do":55251,"./es-do.js":55251,"./es-mx":96112,"./es-mx.js":96112,"./es-us":71146,"./es-us.js":71146,"./es.js":55655,"./et":5603,"./et.js":5603,"./eu":77763,"./eu.js":77763,"./fa":76959,"./fa.js":76959,"./fi":11897,"./fi.js":11897,"./fil":42549,"./fil.js":42549,"./fo":94694,"./fo.js":94694,"./fr":94470,"./fr-ca":63049,"./fr-ca.js":63049,"./fr-ch":52330,"./fr-ch.js":52330,"./fr.js":94470,"./fy":5044,"./fy.js":5044,"./ga":29295,"./ga.js":29295,"./gd":2101,"./gd.js":2101,"./gl":38794,"./gl.js":38794,"./gom-deva":27884,"./gom-deva.js":27884,"./gom-latn":23168,"./gom-latn.js":23168,"./gu":95349,"./gu.js":95349,"./he":24206,"./he.js":24206,"./hi":30094,"./hi.js":30094,"./hr":30316,"./hr.js":30316,"./hu":22138,"./hu.js":22138,"./hy-am":11423,"./hy-am.js":11423,"./id":29218,"./id.js":29218,"./is":90135,"./is.js":90135,"./it":90626,"./it-ch":10150,"./it-ch.js":10150,"./it.js":90626,"./ja":39183,"./ja.js":39183,"./jv":24286,"./jv.js":24286,"./ka":12105,"./ka.js":12105,"./kk":47772,"./kk.js":47772,"./km":18758,"./km.js":18758,"./kn":79282,"./kn.js":79282,"./ko":33730,"./ko.js":33730,"./ku":1408,"./ku.js":1408,"./ky":33291,"./ky.js":33291,"./lb":36841,"./lb.js":36841,"./lo":55466,"./lo.js":55466,"./lt":57010,"./lt.js":57010,"./lv":37595,"./lv.js":37595,"./me":39861,"./me.js":39861,"./mi":35493,"./mi.js":35493,"./mk":95966,"./mk.js":95966,"./ml":87341,"./ml.js":87341,"./mn":5115,"./mn.js":5115,"./mr":10370,"./mr.js":10370,"./ms":9847,"./ms-my":41237,"./ms-my.js":41237,"./ms.js":9847,"./mt":72126,"./mt.js":72126,"./my":56165,"./my.js":56165,"./nb":64924,"./nb.js":64924,"./ne":16744,"./ne.js":16744,"./nl":93901,"./nl-be":59814,"./nl-be.js":59814,"./nl.js":93901,"./nn":83877,"./nn.js":83877,"./oc-lnc":92135,"./oc-lnc.js":92135,"./pa-in":15858,"./pa-in.js":15858,"./pl":64495,"./pl.js":64495,"./pt":89520,"./pt-br":57971,"./pt-br.js":57971,"./pt.js":89520,"./ro":96459,"./ro.js":96459,"./ru":21793,"./ru.js":21793,"./sd":40950,"./sd.js":40950,"./se":10490,"./se.js":10490,"./si":90124,"./si.js":90124,"./sk":64249,"./sk.js":64249,"./sl":14985,"./sl.js":14985,"./sq":51104,"./sq.js":51104,"./sr":49131,"./sr-cyrl":79915,"./sr-cyrl.js":79915,"./sr.js":49131,"./ss":85893,"./ss.js":85893,"./sv":98760,"./sv.js":98760,"./sw":91172,"./sw.js":91172,"./ta":27333,"./ta.js":27333,"./te":23110,"./te.js":23110,"./tet":52095,"./tet.js":52095,"./tg":27321,"./tg.js":27321,"./th":9041,"./th.js":9041,"./tk":19005,"./tk.js":19005,"./tl-ph":75768,"./tl-ph.js":75768,"./tlh":89444,"./tlh.js":89444,"./tr":72397,"./tr.js":72397,"./tzl":28254,"./tzl.js":28254,"./tzm":51106,"./tzm-latn":30699,"./tzm-latn.js":30699,"./tzm.js":51106,"./ug-cn":9288,"./ug-cn.js":9288,"./uk":67691,"./uk.js":67691,"./ur":13795,"./ur.js":13795,"./uz":6791,"./uz-latn":60588,"./uz-latn.js":60588,"./uz.js":6791,"./vi":65666,"./vi.js":65666,"./x-pseudo":14378,"./x-pseudo.js":14378,"./yo":75805,"./yo.js":75805,"./zh-cn":83839,"./zh-cn.js":83839,"./zh-hk":55726,"./zh-hk.js":55726,"./zh-mo":99807,"./zh-mo.js":99807,"./zh-tw":74152,"./zh-tw.js":74152};function i(t){var e=a(t);return n(e)}function a(t){if(!n.o(s,t)){var e=new Error("Cannot find module '"+t+"'");throw e.code="MODULE_NOT_FOUND",e}return s[t]}i.keys=function(){return Object.keys(s)},i.resolve=a,t.exports=i,i.id=46700},69481:t=>{function e(t,e){return null==t?e:t}t.exports=function(t){var n,s=e((t=t||{}).max,1),i=e(t.min,0),a=e(t.autostart,!0),r=e(t.ignoreSameProgress,!1),o=null,l=null,c=null,d=(n=e(t.historyTimeConstant,2.5),function(t,e,s){return t+s/(s+n)*(e-t)});function u(){m(i)}function m(t,e){if("number"!=typeof e&&(e=Date.now()),l!==e&&(!r||c!==t)){if(null===l||null===c)return c=t,void(l=e);var n=.001*(e-l),s=(t-c)/n;o=null===o?s:d(o,s,n),c=t,l=e}}return{start:u,reset:function(){o=null,l=null,c=null,a&&u()},report:m,estimate:function(t){if(null===c)return 1/0;if(c>=s)return 0;if(null===o)return 1/0;var e=(s-c)/o;return"number"==typeof t&&"number"==typeof l&&(e-=.001*(t-l)),Math.max(0,e)},rate:function(){return null===o?0:o}}}},81490:t=>{"use strict";t.exports="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGhlaWdodD0iMTYiIHdpZHRoPSIxNiI+CiAgPHBhdGggZD0iTTE0IDEyLjNMMTIuMyAxNCA4IDkuNyAzLjcgMTQgMiAxMi4zIDYuMyA4IDIgMy43IDMuNyAyIDggNi4zIDEyLjMgMiAxNCAzLjcgOS43IDh6Ii8+Cjwvc3ZnPgo="},90888:t=>{"use strict";t.exports="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGhlaWdodD0iMTYiIHdpZHRoPSIxNiI+CiAgPHBhdGggZD0iTTE0IDEyLjNMMTIuMyAxNCA4IDkuNyAzLjcgMTQgMiAxMi4zIDYuMyA4IDIgMy43IDMuNyAyIDggNi4zIDEyLjMgMiAxNCAzLjcgOS43IDh6IiBzdHlsZT0iZmlsbC1vcGFjaXR5OjE7ZmlsbDojZmZmZmZmIi8+Cjwvc3ZnPgo="},5656:(t,e,n)=>{"use strict";n.d(e,{$B:()=>B,DT:()=>h,De:()=>w,G7:()=>ae,Ir:()=>oe,NB:()=>F,RL:()=>D,Ti:()=>z,Tv:()=>S,Vn:()=>A,_o:()=>j,e4:()=>N,gt:()=>P,h7:()=>T,p$:()=>v,pC:()=>U,rp:()=>O,sS:()=>g,tB:()=>k,y3:()=>y});var s=n(77958),i=n(17499),a=n(31352),r=n(62520),o=n(65358),l=n(79753),c=n(14596);const d=null===(u=(0,s.ts)())?(0,i.IY)().setApp("files").build():(0,i.IY)().setApp("files").setUid(u.uid).build();var u;class m{_entries=[];registerEntry(t){this.validateEntry(t),this._entries.push(t)}unregisterEntry(t){const e="string"==typeof t?this.getEntryIndex(t):this.getEntryIndex(t.id);-1!==e?this._entries.splice(e,1):d.warn("Entry not found, nothing removed",{entry:t,entries:this.getEntries()})}getEntries(t){return t?this._entries.filter((e=>"function"!=typeof e.enabled||e.enabled(t))):this._entries}getEntryIndex(t){return this._entries.findIndex((e=>e.id===t))}validateEntry(t){if(!t.id||!t.displayName||!t.iconSvgInline&&!t.iconClass||!t.handler)throw new Error("Invalid entry");if("string"!=typeof t.id||"string"!=typeof t.displayName)throw new Error("Invalid id or displayName property");if(t.iconClass&&"string"!=typeof t.iconClass||t.iconSvgInline&&"string"!=typeof t.iconSvgInline)throw new Error("Invalid icon provided");if(void 0!==t.enabled&&"function"!=typeof t.enabled)throw new Error("Invalid enabled property");if("function"!=typeof t.handler)throw new Error("Invalid handler property");if("order"in t&&"number"!=typeof t.order)throw new Error("Invalid order property");if(-1!==this.getEntryIndex(t.id))throw new Error("Duplicate entry")}}const f=["B","KB","MB","GB","TB","PB"],p=["B","KiB","MiB","GiB","TiB","PiB"];function g(t,e=!1,n=!1,s=!1){n=n&&!s,"string"==typeof t&&(t=Number(t));let i=t>0?Math.floor(Math.log(t)/Math.log(s?1e3:1024)):0;i=Math.min((n?p.length:f.length)-1,i);const r=n?p[i]:f[i];let o=(t/Math.pow(s?1e3:1024,i)).toFixed(1);return!0===e&&0===i?("0.0"!==o?"< 1 ":"0 ")+(n?p[1]:f[1]):(o=i<2?parseFloat(o).toFixed(0):parseFloat(o).toLocaleString((0,a.aj)()),o+" "+r)}var h=(t=>(t.DEFAULT="default",t.HIDDEN="hidden",t))(h||{});class v{_action;constructor(t){this.validateAction(t),this._action=t}get id(){return this._action.id}get displayName(){return this._action.displayName}get title(){return this._action.title}get iconSvgInline(){return this._action.iconSvgInline}get enabled(){return this._action.enabled}get exec(){return this._action.exec}get execBatch(){return this._action.execBatch}get order(){return this._action.order}get parent(){return this._action.parent}get default(){return this._action.default}get inline(){return this._action.inline}get renderInline(){return this._action.renderInline}validateAction(t){if(!t.id||"string"!=typeof t.id)throw new Error("Invalid id");if(!t.displayName||"function"!=typeof t.displayName)throw new Error("Invalid displayName function");if("title"in t&&"function"!=typeof t.title)throw new Error("Invalid title function");if(!t.iconSvgInline||"function"!=typeof t.iconSvgInline)throw new Error("Invalid iconSvgInline function");if(!t.exec||"function"!=typeof t.exec)throw new Error("Invalid exec function");if("enabled"in t&&"function"!=typeof t.enabled)throw new Error("Invalid enabled function");if("execBatch"in t&&"function"!=typeof t.execBatch)throw new Error("Invalid execBatch function");if("order"in t&&"number"!=typeof t.order)throw new Error("Invalid order");if("parent"in t&&"string"!=typeof t.parent)throw new Error("Invalid parent");if(t.default&&!Object.values(h).includes(t.default))throw new Error("Invalid default");if("inline"in t&&"function"!=typeof t.inline)throw new Error("Invalid inline function");if("renderInline"in t&&"function"!=typeof t.renderInline)throw new Error("Invalid renderInline function")}}const A=function(){return typeof window._nc_fileactions>"u"&&(window._nc_fileactions=[],d.debug("FileActions initialized")),window._nc_fileactions},w=function(){return typeof window._nc_filelistheader>"u"&&(window._nc_filelistheader=[],d.debug("FileListHeaders initialized")),window._nc_filelistheader};var y=(t=>(t[t.NONE=0]="NONE",t[t.CREATE=4]="CREATE",t[t.READ=1]="READ",t[t.UPDATE=2]="UPDATE",t[t.DELETE=8]="DELETE",t[t.SHARE=16]="SHARE",t[t.ALL=31]="ALL",t))(y||{});const b=["d:getcontentlength","d:getcontenttype","d:getetag","d:getlastmodified","d:quota-available-bytes","d:resourcetype","nc:has-preview","nc:is-encrypted","nc:mount-type","nc:share-attributes","oc:comments-unread","oc:favorite","oc:fileid","oc:owner-display-name","oc:owner-id","oc:permissions","oc:share-types","oc:size","ocs:share-permissions"],C={d:"DAV:",nc:"http://nextcloud.org/ns",oc:"http://owncloud.org/ns",ocs:"http://open-collaboration-services.org/ns"},x=function(){return typeof window._nc_dav_properties>"u"&&(window._nc_dav_properties=[...b]),window._nc_dav_properties.map((t=>`<${t} />`)).join(" ")},_=function(){return typeof window._nc_dav_namespaces>"u"&&(window._nc_dav_namespaces={...C}),Object.keys(window._nc_dav_namespaces).map((t=>`xmlns:${t}="${window._nc_dav_namespaces?.[t]}"`)).join(" ")},T=function(){return`\n\t\t\n\t\t\t\n\t\t\t\t${x()}\n\t\t\t\n\t\t`},k=function(t){return`\n\n\t\n\t\t\n\t\t\t\n\t\t\t\t${x()}\n\t\t\t\n\t\t\n\t\t\n\t\t\t\n\t\t\t\t/files/${(0,s.ts)()?.uid}/\n\t\t\t\tinfinity\n\t\t\t\n\t\t\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\thttpd/unix-directory\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t0\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t${t}\n\t\t\t\t\n\t\t\t\n\t\t\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\n\t\t\n\t\t\t100\n\t\t\t0\n\t\t\n\t\n`};var S=(t=>(t.Folder="folder",t.File="file",t))(S||{});const L=function(t,e){return null!==t.match(e)},E=(t,e)=>{if(t.id&&"number"!=typeof t.id)throw new Error("Invalid id type of value");if(!t.source)throw new Error("Missing mandatory source");try{new URL(t.source)}catch{throw new Error("Invalid source format, source must be a valid URL")}if(!t.source.startsWith("http"))throw new Error("Invalid source format, only http(s) is supported");if(t.mtime&&!(t.mtime instanceof Date))throw new Error("Invalid mtime type");if(t.crtime&&!(t.crtime instanceof Date))throw new Error("Invalid crtime type");if(!t.mime||"string"!=typeof t.mime||!t.mime.match(/^[-\w.]+\/[-+\w.]+$/gi))throw new Error("Missing or invalid mandatory mime");if("size"in t&&"number"!=typeof t.size&&void 0!==t.size)throw new Error("Invalid size type");if("permissions"in t&&void 0!==t.permissions&&!("number"==typeof t.permissions&&t.permissions>=y.NONE&&t.permissions<=y.ALL))throw new Error("Invalid permissions");if(t.owner&&null!==t.owner&&"string"!=typeof t.owner)throw new Error("Invalid owner type");if(t.attributes&&"object"!=typeof t.attributes)throw new Error("Invalid attributes type");if(t.root&&"string"!=typeof t.root)throw new Error("Invalid root type");if(t.root&&!t.root.startsWith("/"))throw new Error("Root must start with a leading slash");if(t.root&&!t.source.includes(t.root))throw new Error("Root must be part of the source");if(t.root&&L(t.source,e)){const n=t.source.match(e)[0];if(!t.source.includes((0,r.join)(n,t.root)))throw new Error("The root must be relative to the service. e.g /files/emma")}if(t.status&&!Object.values(N).includes(t.status))throw new Error("Status must be a valid NodeStatus")};var N=(t=>(t.NEW="new",t.FAILED="failed",t.LOADING="loading",t.LOCKED="locked",t))(N||{});class F{_data;_attributes;_knownDavService=/(remote|public)\.php\/(web)?dav/i;constructor(t,e){E(t,e||this._knownDavService),this._data=t;const n={set:(t,e,n)=>(this.updateMtime(),Reflect.set(t,e,n)),deleteProperty:(t,e)=>(this.updateMtime(),Reflect.deleteProperty(t,e))};this._attributes=new Proxy(t.attributes||{},n),delete this._data.attributes,e&&(this._knownDavService=e)}get source(){return this._data.source.replace(/\/$/i,"")}get encodedSource(){const{origin:t}=new URL(this.source);return t+(0,o.Ec)(this.source.slice(t.length))}get basename(){return(0,r.basename)(this.source)}get extension(){return(0,r.extname)(this.source)}get dirname(){if(this.root){const t=this.source.indexOf(this.root);return(0,r.dirname)(this.source.slice(t+this.root.length)||"/")}const t=new URL(this.source);return(0,r.dirname)(t.pathname)}get mime(){return this._data.mime}get mtime(){return this._data.mtime}get crtime(){return this._data.crtime}get size(){return this._data.size}get attributes(){return this._attributes}get permissions(){return null!==this.owner||this.isDavRessource?void 0!==this._data.permissions?this._data.permissions:y.NONE:y.READ}get owner(){return this.isDavRessource?this._data.owner:null}get isDavRessource(){return L(this.source,this._knownDavService)}get root(){return this._data.root?this._data.root.replace(/^(.+)\/$/,"$1"):this.isDavRessource&&(0,r.dirname)(this.source).split(this._knownDavService).pop()||null}get path(){if(this.root){const t=this.source.indexOf(this.root);return this.source.slice(t+this.root.length)||"/"}return(this.dirname+"/"+this.basename).replace(/\/\//g,"/")}get fileid(){return this._data?.id||this.attributes?.fileid}get status(){return this._data?.status}set status(t){this._data.status=t}move(t){E({...this._data,source:t},this._knownDavService),this._data.source=t,this.updateMtime()}rename(t){if(t.includes("/"))throw new Error("Invalid basename");this.move((0,r.dirname)(this.source)+"/"+t)}updateMtime(){this._data.mtime&&(this._data.mtime=new Date)}}class B extends F{get type(){return S.File}}class P extends F{constructor(t){super({...t,mime:"httpd/unix-directory"})}get type(){return S.Folder}get extension(){return null}get mime(){return"httpd/unix-directory"}}const j=`/files/${(0,s.ts)()?.uid}`,I=(0,l.generateRemoteUrl)("dav"),O=function(t=I){const e=(0,c.eI)(t);function n(t){e.setHeaders({"X-Requested-With":"XMLHttpRequest",requesttoken:t??""})}return(0,s._S)(n),n((0,s.IH)()),(0,c.lD)().patch("fetch",((t,e)=>{const n=e.headers;return n?.method&&(e.method=n.method,delete n.method),fetch(t,e)})),e},U=async(t,e="/",n=j)=>(await t.getDirectoryContents(`${n}${e}`,{details:!0,data:`\n\t\t\n\t\t\t\n\t\t\t\t${x()}\n\t\t\t\n\t\t\t\n\t\t\t\t1\n\t\t\t\n\t\t`,headers:{method:"REPORT"},includeSelf:!0})).data.filter((t=>t.filename!==e)).map((t=>D(t,n))),D=function(t,e=j,n=I){const i=t.props,a=function(t=""){let e=y.NONE;return t&&((t.includes("C")||t.includes("K"))&&(e|=y.CREATE),t.includes("G")&&(e|=y.READ),(t.includes("W")||t.includes("N")||t.includes("V"))&&(e|=y.UPDATE),t.includes("D")&&(e|=y.DELETE),t.includes("R")&&(e|=y.SHARE)),e}(i?.permissions),r=(0,s.ts)()?.uid,o={id:i?.fileid||0,source:`${n}${t.filename}`,mtime:new Date(Date.parse(t.lastmod)),mime:t.mime,size:i?.size||Number.parseInt(i.getcontentlength||"0"),permissions:a,owner:r,root:e,attributes:{...t,...i,hasPreview:i?.["has-preview"]}};return delete o.attributes?.props,"file"===t.type?new B(o):new P(o)};class ${_views=[];_currentView=null;register(t){if(this._views.find((e=>e.id===t.id)))throw new Error(`View id ${t.id} is already registered`);this._views.push(t)}remove(t){const e=this._views.findIndex((e=>e.id===t));-1!==e&&this._views.splice(e,1)}get views(){return this._views}setActive(t){this._currentView=t}get active(){return this._currentView}}const z=function(){return typeof window._nc_navigation>"u"&&(window._nc_navigation=new $,d.debug("Navigation service initialized")),window._nc_navigation};class R{_column;constructor(t){M(t),this._column=t}get id(){return this._column.id}get title(){return this._column.title}get render(){return this._column.render}get sort(){return this._column.sort}get summary(){return this._column.summary}}const M=function(t){if(!t.id||"string"!=typeof t.id)throw new Error("A column id is required");if(!t.title||"string"!=typeof t.title)throw new Error("A column title is required");if(!t.render||"function"!=typeof t.render)throw new Error("A render function is required");if(t.sort&&"function"!=typeof t.sort)throw new Error("Column sortFunction must be a function");if(t.summary&&"function"!=typeof t.summary)throw new Error("Column summary must be a function");return!0};var V={},H={};!function(t){const e=":A-Za-z_\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD",n="["+e+"]["+e+"\\-.\\d\\u00B7\\u0300-\\u036F\\u203F-\\u2040]*",s=new RegExp("^"+n+"$");t.isExist=function(t){return typeof t<"u"},t.isEmptyObject=function(t){return 0===Object.keys(t).length},t.merge=function(t,e,n){if(e){const s=Object.keys(e),i=s.length;for(let a=0;a"u")},t.getAllMatches=function(t,e){const n=[];let s=e.exec(t);for(;s;){const i=[];i.startIndex=e.lastIndex-s[0].length;const a=s.length;for(let t=0;t5&&"xml"===s)return nt("InvalidXml","XML declaration allowed only at the start of the document.",at(t,e));if("?"==t[e]&&">"==t[e+1]){e++;break}continue}return e}function Y(t,e){if(t.length>e+5&&"-"===t[e+1]&&"-"===t[e+2]){for(e+=3;e"===t[e+2]){e+=2;break}}else if(t.length>e+8&&"D"===t[e+1]&&"O"===t[e+2]&&"C"===t[e+3]&&"T"===t[e+4]&&"Y"===t[e+5]&&"P"===t[e+6]&&"E"===t[e+7]){let n=1;for(e+=8;e"===t[e]&&(n--,0===n))break}else if(t.length>e+9&&"["===t[e+1]&&"C"===t[e+2]&&"D"===t[e+3]&&"A"===t[e+4]&&"T"===t[e+5]&&"A"===t[e+6]&&"["===t[e+7])for(e+=8;e"===t[e+2]){e+=2;break}return e}V.validate=function(t,e){e=Object.assign({},Z,e);const n=[];let s=!1,i=!1;"\ufeff"===t[0]&&(t=t.substr(1));for(let a=0;a"!==t[a]&&" "!==t[a]&&"\t"!==t[a]&&"\n"!==t[a]&&"\r"!==t[a];a++)l+=t[a];if(l=l.trim(),"/"===l[l.length-1]&&(l=l.substring(0,l.length-1),a--),!it(l)){let e;return e=0===l.trim().length?"Invalid space after '<'.":"Tag '"+l+"' is an invalid name.",nt("InvalidTag",e,at(t,a))}const c=Q(t,a);if(!1===c)return nt("InvalidAttr","Attributes for '"+l+"' have open quote.",at(t,a));let d=c.value;if(a=c.index,"/"===d[d.length-1]){const n=a-d.length;d=d.substring(0,d.length-1);const i=tt(d,e);if(!0!==i)return nt(i.err.code,i.err.msg,at(t,n+i.err.line));s=!0}else if(o){if(!c.tagClosed)return nt("InvalidTag","Closing tag '"+l+"' doesn't have proper closing.",at(t,a));if(d.trim().length>0)return nt("InvalidTag","Closing tag '"+l+"' can't have attributes or invalid starting.",at(t,r));{const e=n.pop();if(l!==e.tagName){let n=at(t,e.tagStartPos);return nt("InvalidTag","Expected closing tag '"+e.tagName+"' (opened in line "+n.line+", col "+n.col+") instead of closing tag '"+l+"'.",at(t,r))}0==n.length&&(i=!0)}}else{const o=tt(d,e);if(!0!==o)return nt(o.err.code,o.err.msg,at(t,a-d.length+o.err.line));if(!0===i)return nt("InvalidXml","Multiple possible root nodes found.",at(t,a));-1!==e.unpairedTags.indexOf(l)||n.push({tagName:l,tagStartPos:r}),s=!0}for(a++;a0)||nt("InvalidXml","Invalid '"+JSON.stringify(n.map((t=>t.tagName)),null,4).replace(/\r?\n/g,"")+"' found.",{line:1,col:1}):nt("InvalidXml","Start tag expected.",1)};const K='"',J="'";function Q(t,e){let n="",s="",i=!1;for(;e"===t[e]&&""===s){i=!0;break}n+=t[e]}return""===s&&{value:n,index:e,tagClosed:i}}const X=new RegExp("(\\s*)([^\\s=]+)(\\s*=)?(\\s*(['\"])(([\\s\\S])*?)\\5)?","g");function tt(t,e){const n=q.getAllMatches(t,X),s={};for(let t=0;t!1,commentPropName:!1,unpairedTags:[],processEntities:!0,htmlEntities:!1,ignoreDeclaration:!1,ignorePiTags:!1,transformTagName:!1,transformAttributeName:!1,updateTag:function(t,e,n){return t}};ot.buildOptions=function(t){return Object.assign({},lt,t)},ot.defaultOptions=lt;const ct=H;function dt(t,e){let n="";for(;e0?this.child.push({[t.tagname]:t.child,":@":t[":@"]}):this.child.push({[t.tagname]:t.child})}},Ct=function(t,e){const n={};if("O"!==t[e+3]||"C"!==t[e+4]||"T"!==t[e+5]||"Y"!==t[e+6]||"P"!==t[e+7]||"E"!==t[e+8])throw new Error("Invalid Tag instead of DOCTYPE");{e+=9;let s=1,i=!1,a=!1,r="";for(;e"===t[e]){if(a?"-"===t[e-1]&&"-"===t[e-2]&&(a=!1,s--):s--,0===s)break}else"["===t[e]?i=!0:r+=t[e];else{if(i&&mt(t,e))e+=7,[entityName,val,e]=dt(t,e+1),-1===val.indexOf("&")&&(n[ht(entityName)]={regx:RegExp(`&${entityName};`,"g"),val});else if(i&&ft(t,e))e+=8;else if(i&&pt(t,e))e+=8;else if(i&>(t,e))e+=9;else{if(!ut)throw new Error("Invalid DOCTYPE");a=!0}s++,r=""}if(0!==s)throw new Error("Unclosed DOCTYPE")}return{entities:n,i:e}},xt=function(t,e={}){if(e=Object.assign({},wt,e),!t||"string"!=typeof t)return t;let n=t.trim();if(void 0!==e.skipLike&&e.skipLike.test(n))return t;if(e.hex&&vt.test(n))return Number.parseInt(n,16);{const s=At.exec(n);if(s){const i=s[1],a=s[2];let r=function(t){return t&&-1!==t.indexOf(".")&&("."===(t=t.replace(/0+$/,""))?t="0":"."===t[0]?t="0"+t:"."===t[t.length-1]&&(t=t.substr(0,t.length-1))),t}(s[3]);const o=s[4]||s[6];if(!e.leadingZeros&&a.length>0&&i&&"."!==n[2])return t;if(!e.leadingZeros&&a.length>0&&!i&&"."!==n[1])return t;{const s=Number(n),l=""+s;return-1!==l.search(/[eE]/)||o?e.eNotation?s:t:-1!==n.indexOf(".")?"0"===l&&""===r||l===r||i&&l==="-"+r?s:t:a?r===l||i+r===l?s:t:n===l||n===i+l?s:t}}return t}};function _t(t){const e=Object.keys(t);for(let n=0;n0)){r||(t=this.replaceEntitiesValue(t));const s=this.options.tagValueProcessor(e,t,n,i,a);return null==s?t:typeof s!=typeof t||s!==t?s:this.options.trimValues||t.trim()===t?Ut(t,this.options.parseTagValue,this.options.numberParseOptions):t}}function kt(t){if(this.options.removeNSPrefix){const e=t.split(":"),n="/"===t.charAt(0)?"/":"";if("xmlns"===e[0])return"";2===e.length&&(t=n+e[1])}return t}"<((!\\[CDATA\\[([\\s\\S]*?)(]]>))|((NAME:)?(NAME))([^>]*)>|((\\/)(NAME)\\s*>))([^<]*)".replace(/NAME/g,yt.nameRegexp);const St=new RegExp("([^\\s=]+)\\s*(=\\s*(['\"])([\\s\\S]*?)\\3)?","gm");function Lt(t,e,n){if(!this.options.ignoreAttributes&&"string"==typeof t){const n=yt.getAllMatches(t,St),s=n.length,i={};for(let t=0;t",a,"Closing Tag is not closed.");let r=t.substring(a+2,e).trim();if(this.options.removeNSPrefix){const t=r.indexOf(":");-1!==t&&(r=r.substr(t+1))}this.options.transformTagName&&(r=this.options.transformTagName(r)),n&&(s=this.saveTextToParentTag(s,n,i));const o=i.substring(i.lastIndexOf(".")+1);if(r&&-1!==this.options.unpairedTags.indexOf(r))throw new Error(`Unpaired tag can not be used as closing tag: `);let l=0;o&&-1!==this.options.unpairedTags.indexOf(o)?(l=i.lastIndexOf(".",i.lastIndexOf(".")-1),this.tagsNodeStack.pop()):l=i.lastIndexOf("."),i=i.substring(0,l),n=this.tagsNodeStack.pop(),s="",a=e}else if("?"===t[a+1]){let e=It(t,a,!1,"?>");if(!e)throw new Error("Pi Tag is not closed.");if(s=this.saveTextToParentTag(s,n,i),!(this.options.ignoreDeclaration&&"?xml"===e.tagName||this.options.ignorePiTags)){const t=new bt(e.tagName);t.add(this.options.textNodeName,""),e.tagName!==e.tagExp&&e.attrExpPresent&&(t[":@"]=this.buildAttributesMap(e.tagExp,i,e.tagName)),this.addChild(n,t,i)}a=e.closeIndex+1}else if("!--"===t.substr(a+1,3)){const e=jt(t,"--\x3e",a+4,"Comment is not closed.");if(this.options.commentPropName){const r=t.substring(a+4,e-2);s=this.saveTextToParentTag(s,n,i),n.add(this.options.commentPropName,[{[this.options.textNodeName]:r}])}a=e}else if("!D"===t.substr(a+1,2)){const e=Ct(t,a);this.docTypeEntities=e.entities,a=e.i}else if("!["===t.substr(a+1,2)){const e=jt(t,"]]>",a,"CDATA is not closed.")-2,r=t.substring(a+9,e);if(s=this.saveTextToParentTag(s,n,i),this.options.cdataPropName)n.add(this.options.cdataPropName,[{[this.options.textNodeName]:r}]);else{let t=this.parseTextData(r,n.tagname,i,!0,!1,!0);null==t&&(t=""),n.add(this.options.textNodeName,t)}a=e+2}else{let r=It(t,a,this.options.removeNSPrefix),o=r.tagName;const l=r.rawTagName;let c=r.tagExp,d=r.attrExpPresent,u=r.closeIndex;this.options.transformTagName&&(o=this.options.transformTagName(o)),n&&s&&"!xml"!==n.tagname&&(s=this.saveTextToParentTag(s,n,i,!1));const m=n;if(m&&-1!==this.options.unpairedTags.indexOf(m.tagname)&&(n=this.tagsNodeStack.pop(),i=i.substring(0,i.lastIndexOf("."))),o!==e.tagname&&(i+=i?"."+o:o),this.isItStopNode(this.options.stopNodes,i,o)){let e="";if(c.length>0&&c.lastIndexOf("/")===c.length-1)a=r.closeIndex;else if(-1!==this.options.unpairedTags.indexOf(o))a=r.closeIndex;else{const n=this.readStopNodeData(t,l,u+1);if(!n)throw new Error(`Unexpected end of ${l}`);a=n.i,e=n.tagContent}const s=new bt(o);o!==c&&d&&(s[":@"]=this.buildAttributesMap(c,i,o)),e&&(e=this.parseTextData(e,o,i,!0,d,!0,!0)),i=i.substr(0,i.lastIndexOf(".")),s.add(this.options.textNodeName,e),this.addChild(n,s,i)}else{if(c.length>0&&c.lastIndexOf("/")===c.length-1){"/"===o[o.length-1]?(o=o.substr(0,o.length-1),i=i.substr(0,i.length-1),c=o):c=c.substr(0,c.length-1),this.options.transformTagName&&(o=this.options.transformTagName(o));const t=new bt(o);o!==c&&d&&(t[":@"]=this.buildAttributesMap(c,i,o)),this.addChild(n,t,i),i=i.substr(0,i.lastIndexOf("."))}else{const t=new bt(o);this.tagsNodeStack.push(n),o!==c&&d&&(t[":@"]=this.buildAttributesMap(c,i,o)),this.addChild(n,t,i),n=t}s="",a=u}}else s+=t[a];return e.child};function Nt(t,e,n){const s=this.options.updateTag(e.tagname,n,e[":@"]);!1===s||("string"==typeof s&&(e.tagname=s),t.addChild(e))}const Ft=function(t){if(this.options.processEntities){for(let e in this.docTypeEntities){const n=this.docTypeEntities[e];t=t.replace(n.regx,n.val)}for(let e in this.lastEntities){const n=this.lastEntities[e];t=t.replace(n.regex,n.val)}if(this.options.htmlEntities)for(let e in this.htmlEntities){const n=this.htmlEntities[e];t=t.replace(n.regex,n.val)}t=t.replace(this.ampEntity.regex,this.ampEntity.val)}return t};function Bt(t,e,n,s){return t&&(void 0===s&&(s=0===Object.keys(e.child).length),void 0!==(t=this.parseTextData(t,e.tagname,n,!1,!!e[":@"]&&0!==Object.keys(e[":@"]).length,s))&&""!==t&&e.add(this.options.textNodeName,t),t=""),t}function Pt(t,e,n){const s="*."+n;for(const n in t){const i=t[n];if(s===i||e===i)return!0}return!1}function jt(t,e,n,s){const i=t.indexOf(e,n);if(-1===i)throw new Error(s);return i+e.length-1}function It(t,e,n,s=">"){const i=function(t,e,n=">"){let s,i="";for(let a=e;a",n,`${e} is not closed`);if(t.substring(n+2,a).trim()===e&&(i--,0===i))return{tagContent:t.substring(s,n),i:a};n=a}else if("?"===t[n+1])n=jt(t,"?>",n+1,"StopNode is not closed.");else if("!--"===t.substr(n+1,3))n=jt(t,"--\x3e",n+3,"StopNode is not closed.");else if("!["===t.substr(n+1,2))n=jt(t,"]]>",n,"StopNode is not closed.")-2;else{const s=It(t,n,">");s&&((s&&s.tagName)===e&&"/"!==s.tagExp[s.tagExp.length-1]&&i++,n=s.closeIndex)}}function Ut(t,e,n){if(e&&"string"==typeof t){const e=t.trim();return"true"===e||"false"!==e&&xt(t,n)}return yt.isExist(t)?t:""}var Dt={};function $t(t,e,n){let s;const i={};for(let a=0;a0&&(i[e.textNodeName]=s):void 0!==s&&(i[e.textNodeName]=s),i}function zt(t){const e=Object.keys(t);for(let t=0;t"},lt:{regex:/&(lt|#60|#x3C);/g,val:"<"},quot:{regex:/&(quot|#34|#x22);/g,val:'"'}},this.ampEntity={regex:/&(amp|#38|#x26);/g,val:"&"},this.htmlEntities={space:{regex:/&(nbsp|#160);/g,val:" "},cent:{regex:/&(cent|#162);/g,val:"¢"},pound:{regex:/&(pound|#163);/g,val:"£"},yen:{regex:/&(yen|#165);/g,val:"¥"},euro:{regex:/&(euro|#8364);/g,val:"€"},copyright:{regex:/&(copy|#169);/g,val:"©"},reg:{regex:/&(reg|#174);/g,val:"®"},inr:{regex:/&(inr|#8377);/g,val:"₹"}},this.addExternalEntities=_t,this.parseXml=Et,this.parseTextData=Tt,this.resolveNameSpace=kt,this.buildAttributesMap=Lt,this.isItStopNode=Pt,this.replaceEntitiesValue=Ft,this.readStopNodeData=Ot,this.saveTextToParentTag=Bt,this.addChild=Nt}},{prettify:qt}=Dt,Zt=V;function Gt(t,e,n,s){let i="",a=!1;for(let r=0;r`,a=!1;continue}if(l===e.commentPropName){i+=s+`\x3c!--${o[l][0][e.textNodeName]}--\x3e`,a=!0;continue}if("?"===l[0]){const t=Yt(o[":@"],e),n="?xml"===l?"":s;let r=o[l][0][e.textNodeName];r=0!==r.length?" "+r:"",i+=n+`<${l}${r}${t}?>`,a=!0;continue}let d=s;""!==d&&(d+=e.indentBy);const u=s+`<${l}${Yt(o[":@"],e)}`,m=Gt(o[l],e,c,d);-1!==e.unpairedTags.indexOf(l)?e.suppressUnpairedNode?i+=u+">":i+=u+"/>":m&&0!==m.length||!e.suppressEmptyNode?m&&m.endsWith(">")?i+=u+`>${m}${s}`:(i+=u+">",m&&""!==s&&(m.includes("/>")||m.includes("`):i+=u+"/>",a=!0}return i}function Wt(t){const e=Object.keys(t);for(let n=0;n0&&e.processEntities)for(let n=0;n0&&(n="\n"),Gt(t,e,"",n)},Xt={attributeNamePrefix:"@_",attributesGroupName:!1,textNodeName:"#text",ignoreAttributes:!0,cdataPropName:!1,format:!1,indentBy:" ",suppressEmptyNode:!1,suppressUnpairedNode:!0,suppressBooleanAttributes:!0,tagValueProcessor:function(t,e){return e},attributeValueProcessor:function(t,e){return e},preserveOrder:!1,commentPropName:!1,unpairedTags:[],entities:[{regex:new RegExp("&","g"),val:"&"},{regex:new RegExp(">","g"),val:">"},{regex:new RegExp("<","g"),val:"<"},{regex:new RegExp("'","g"),val:"'"},{regex:new RegExp('"',"g"),val:"""}],processEntities:!0,stopNodes:[],oneListGroup:!1};function te(t){this.options=Object.assign({},Xt,t),this.options.ignoreAttributes||this.options.attributesGroupName?this.isAttribute=function(){return!1}:(this.attrPrefixLen=this.options.attributeNamePrefix.length,this.isAttribute=se),this.processTextOrObjNode=ee,this.options.format?(this.indentate=ne,this.tagEndChar=">\n",this.newLine="\n"):(this.indentate=function(){return""},this.tagEndChar=">",this.newLine="")}function ee(t,e,n){const s=this.j2x(t,n+1);return void 0!==t[this.options.textNodeName]&&1===Object.keys(t).length?this.buildTextValNode(t[this.options.textNodeName],e,s.attrStr,n):this.buildObjectNode(s.val,e,s.attrStr,n)}function ne(t){return this.options.indentBy.repeat(t)}function se(t){return!(!t.startsWith(this.options.attributeNamePrefix)||t===this.options.textNodeName)&&t.substr(this.attrPrefixLen)}te.prototype.build=function(t){return this.options.preserveOrder?Qt(t,this.options):(Array.isArray(t)&&this.options.arrayNodeName&&this.options.arrayNodeName.length>1&&(t={[this.options.arrayNodeName]:t}),this.j2x(t,0).val)},te.prototype.j2x=function(t,e){let n="",s="";for(let i in t)if(Object.prototype.hasOwnProperty.call(t,i))if(typeof t[i]>"u")this.isAttribute(i)&&(s+="");else if(null===t[i])this.isAttribute(i)?s+="":"?"===i[0]?s+=this.indentate(e)+"<"+i+"?"+this.tagEndChar:s+=this.indentate(e)+"<"+i+"/"+this.tagEndChar;else if(t[i]instanceof Date)s+=this.buildTextValNode(t[i],i,"",e);else if("object"!=typeof t[i]){const a=this.isAttribute(i);if(a)n+=this.buildAttrPairStr(a,""+t[i]);else if(i===this.options.textNodeName){let e=this.options.tagValueProcessor(i,""+t[i]);s+=this.replaceEntitiesValue(e)}else s+=this.buildTextValNode(t[i],i,"",e)}else if(Array.isArray(t[i])){const n=t[i].length;let a="";for(let r=0;r"u"||(null===n?"?"===i[0]?s+=this.indentate(e)+"<"+i+"?"+this.tagEndChar:s+=this.indentate(e)+"<"+i+"/"+this.tagEndChar:"object"==typeof n?this.options.oneListGroup?a+=this.j2x(n,e+1).val:a+=this.processTextOrObjNode(n,i,e):a+=this.buildTextValNode(n,i,"",e))}this.options.oneListGroup&&(a=this.buildObjectNode(a,i,"",e)),s+=a}else if(this.options.attributesGroupName&&i===this.options.attributesGroupName){const e=Object.keys(t[i]),s=e.length;for(let a=0;a"+t+i}},te.prototype.closeTag=function(t){let e="";return-1!==this.options.unpairedTags.indexOf(t)?this.options.suppressUnpairedNode||(e="/"):e=this.options.suppressEmptyNode?"/":`>`+this.newLine;if(!1!==this.options.commentPropName&&e===this.options.commentPropName)return this.indentate(s)+`\x3c!--${t}--\x3e`+this.newLine;if("?"===e[0])return this.indentate(s)+"<"+e+n+"?"+this.tagEndChar;{let i=this.options.tagValueProcessor(e,t);return i=this.replaceEntitiesValue(i),""===i?this.indentate(s)+"<"+e+n+this.closeTag(e)+this.tagEndChar:this.indentate(s)+"<"+e+n+">"+i+"0&&this.options.processEntities)for(let e=0;e0&&(!t.caption||"string"!=typeof t.caption))throw new Error("View caption is required for top-level views and must be a string");if(!t.getContents||"function"!=typeof t.getContents)throw new Error("View getContents is required and must be a function");if(!t.icon||"string"!=typeof t.icon||!function(t){if("string"!=typeof t)throw new TypeError(`Expected a \`string\`, got \`${typeof t}\``);if(0===(t=t.trim()).length||!0!==ie.XMLValidator.validate(t))return!1;let e;const n=new ie.XMLParser;try{e=n.parse(t)}catch{return!1}return!(!e||!("svg"in e))}(t.icon))throw new Error("View icon is required and must be a valid svg string");if(!("order"in t)||"number"!=typeof t.order)throw new Error("View order is required and must be a number");if(t.columns&&t.columns.forEach((t=>{if(!(t instanceof R))throw new Error("View columns must be an array of Column. Invalid column found")})),t.emptyView&&"function"!=typeof t.emptyView)throw new Error("View emptyView must be a function");if(t.parent&&"string"!=typeof t.parent)throw new Error("View parent must be a string");if("sticky"in t&&"boolean"!=typeof t.sticky)throw new Error("View sticky must be a boolean");if("expanded"in t&&"boolean"!=typeof t.expanded)throw new Error("View expanded must be a boolean");if(t.defaultSortKey&&"string"!=typeof t.defaultSortKey)throw new Error("View defaultSortKey must be a string");return!0},oe=function(t){return(typeof window._nc_newfilemenu>"u"&&(window._nc_newfilemenu=new m,d.debug("NewFileMenu initialized")),window._nc_newfilemenu).getEntries(t).sort(((t,e)=>void 0!==t.order&&void 0!==e.order&&t.order!==e.order?t.order-e.order:t.displayName.localeCompare(e.displayName,void 0,{numeric:!0,sensitivity:"base"})))}},9239:(t,e,n)=>{"use strict";n.d(e,{U:()=>rl,V:()=>ja,a:()=>sl,g:()=>ll,l:()=>Ve,n:()=>Jo,t:()=>il});var s=n(93379),i=n.n(s),a=n(7795),r=n.n(a),o=n(90569),l=n.n(o),c=n(3565),d=n.n(c),u=n(19216),m=n.n(u),f=n(44589),p=n.n(f),g=n(82396),h={};h.styleTagTransform=p(),h.setAttributes=d(),h.insert=l().bind(null,"head"),h.domAPI=r(),h.insertStyleElement=m(),i()(g.Z,h),g.Z&&g.Z.locals&&g.Z.locals;var v=n(79753),A=n(77958),w=n(5656),y=n(93664);class b extends Error{constructor(t){super(t||"Promise was canceled"),this.name="CancelError"}get isCanceled(){return!0}}const C=Object.freeze({pending:Symbol("pending"),canceled:Symbol("canceled"),resolved:Symbol("resolved"),rejected:Symbol("rejected")});class x{static fn(t){return(...e)=>new x(((n,s,i)=>{e.push(i),t(...e).then(n,s)}))}#t=[];#e=!0;#n=C.pending;#s;#i;constructor(t){this.#s=new Promise(((e,n)=>{this.#i=n;const s=t=>{if(this.#n!==C.pending)throw new Error(`The \`onCancel\` handler was attached after the promise ${this.#n.description}.`);this.#t.push(t)};Object.defineProperties(s,{shouldReject:{get:()=>this.#e,set:t=>{this.#e=t}}}),t((t=>{this.#n===C.canceled&&s.shouldReject||(e(t),this.#a(C.resolved))}),(t=>{this.#n===C.canceled&&s.shouldReject||(n(t),this.#a(C.rejected))}),s)}))}then(t,e){return this.#s.then(t,e)}catch(t){return this.#s.catch(t)}finally(t){return this.#s.finally(t)}cancel(t){if(this.#n===C.pending){if(this.#a(C.canceled),this.#t.length>0)try{for(const t of this.#t)t()}catch(t){return void this.#i(t)}this.#e&&this.#i(new b(t))}}get isCanceled(){return this.#n===C.canceled}#a(t){this.#n===C.pending&&(this.#n=t)}}Object.setPrototypeOf(x.prototype,Promise.prototype);var _=n(59440),T=n(43452);const k=(t,e,n)=>t.bind(n);var S=n(17499),L=n(64024),E=n(69481),N=n(72155),F=n(55212),B=n(74628),P=n(64865),j=n(34854),I=n(48264),O=n(48764).Buffer,U=n(25108);function D(t,e){return function(){return t.apply(e,arguments)}}const{toString:$}=Object.prototype,{getPrototypeOf:z}=Object,R=(Z=Object.create(null),t=>{const e=$.call(t);return Z[e]||(Z[e]=e.slice(8,-1).toLowerCase())}),M=t=>(t=t.toLowerCase(),e=>R(e)===t),V=t=>e=>typeof e===t,{isArray:H}=Array,q=V("undefined");var Z;const G=M("ArrayBuffer"),W=V("string"),Y=V("function"),K=V("number"),J=t=>null!==t&&"object"==typeof t,Q=t=>{if("object"!==R(t))return!1;const e=z(t);return!(null!==e&&e!==Object.prototype&&null!==Object.getPrototypeOf(e)||Symbol.toStringTag in t||Symbol.iterator in t)},X=M("Date"),tt=M("File"),et=M("Blob"),nt=M("FileList"),st=M("URLSearchParams");function it(t,e,{allOwnKeys:n=!1}={}){if(null===t||typeof t>"u")return;let s,i;if("object"!=typeof t&&(t=[t]),H(t))for(s=0,i=t.length;s0;)if(s=n[i],e===s.toLowerCase())return s;return null}const rt=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global,ot=t=>!q(t)&&t!==rt,lt=(t=>e=>t&&e instanceof t)(typeof Uint8Array<"u"&&z(Uint8Array)),ct=M("HTMLFormElement"),dt=(({hasOwnProperty:t})=>(e,n)=>t.call(e,n))(Object.prototype),ut=M("RegExp"),mt=(t,e)=>{const n=Object.getOwnPropertyDescriptors(t),s={};it(n,((n,i)=>{let a;!1!==(a=e(n,i,t))&&(s[i]=a||n)})),Object.defineProperties(t,s)},ft="abcdefghijklmnopqrstuvwxyz",pt="0123456789",gt={DIGIT:pt,ALPHA:ft,ALPHA_DIGIT:ft+ft.toUpperCase()+pt},ht=M("AsyncFunction"),vt={isArray:H,isArrayBuffer:G,isBuffer:function(t){return null!==t&&!q(t)&&null!==t.constructor&&!q(t.constructor)&&Y(t.constructor.isBuffer)&&t.constructor.isBuffer(t)},isFormData:t=>{let e;return t&&("function"==typeof FormData&&t instanceof FormData||Y(t.append)&&("formdata"===(e=R(t))||"object"===e&&Y(t.toString)&&"[object FormData]"===t.toString()))},isArrayBufferView:function(t){let e;return e=typeof ArrayBuffer<"u"&&ArrayBuffer.isView?ArrayBuffer.isView(t):t&&t.buffer&&G(t.buffer),e},isString:W,isNumber:K,isBoolean:t=>!0===t||!1===t,isObject:J,isPlainObject:Q,isUndefined:q,isDate:X,isFile:tt,isBlob:et,isRegExp:ut,isFunction:Y,isStream:t=>J(t)&&Y(t.pipe),isURLSearchParams:st,isTypedArray:lt,isFileList:nt,forEach:it,merge:function t(){const{caseless:e}=ot(this)&&this||{},n={},s=(s,i)=>{const a=e&&at(n,i)||i;Q(n[a])&&Q(s)?n[a]=t(n[a],s):Q(s)?n[a]=t({},s):H(s)?n[a]=s.slice():n[a]=s};for(let t=0,e=arguments.length;t(it(e,((e,s)=>{n&&Y(e)?t[s]=D(e,n):t[s]=e}),{allOwnKeys:s}),t),trim:t=>t.trim?t.trim():t.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,""),stripBOM:t=>(65279===t.charCodeAt(0)&&(t=t.slice(1)),t),inherits:(t,e,n,s)=>{t.prototype=Object.create(e.prototype,s),t.prototype.constructor=t,Object.defineProperty(t,"super",{value:e.prototype}),n&&Object.assign(t.prototype,n)},toFlatObject:(t,e,n,s)=>{let i,a,r;const o={};if(e=e||{},null==t)return e;do{for(i=Object.getOwnPropertyNames(t),a=i.length;a-- >0;)r=i[a],(!s||s(r,t,e))&&!o[r]&&(e[r]=t[r],o[r]=!0);t=!1!==n&&z(t)}while(t&&(!n||n(t,e))&&t!==Object.prototype);return e},kindOf:R,kindOfTest:M,endsWith:(t,e,n)=>{t=String(t),(void 0===n||n>t.length)&&(n=t.length),n-=e.length;const s=t.indexOf(e,n);return-1!==s&&s===n},toArray:t=>{if(!t)return null;if(H(t))return t;let e=t.length;if(!K(e))return null;const n=new Array(e);for(;e-- >0;)n[e]=t[e];return n},forEachEntry:(t,e)=>{const n=(t&&t[Symbol.iterator]).call(t);let s;for(;(s=n.next())&&!s.done;){const n=s.value;e.call(t,n[0],n[1])}},matchAll:(t,e)=>{let n;const s=[];for(;null!==(n=t.exec(e));)s.push(n);return s},isHTMLForm:ct,hasOwnProperty:dt,hasOwnProp:dt,reduceDescriptors:mt,freezeMethods:t=>{mt(t,((e,n)=>{if(Y(t)&&-1!==["arguments","caller","callee"].indexOf(n))return!1;const s=t[n];if(Y(s)){if(e.enumerable=!1,"writable"in e)return void(e.writable=!1);e.set||(e.set=()=>{throw Error("Can not rewrite read-only method '"+n+"'")})}}))},toObjectSet:(t,e)=>{const n={},s=t=>{t.forEach((t=>{n[t]=!0}))};return H(t)?s(t):s(String(t).split(e)),n},toCamelCase:t=>t.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,(function(t,e,n){return e.toUpperCase()+n})),noop:()=>{},toFiniteNumber:(t,e)=>(t=+t,Number.isFinite(t)?t:e),findKey:at,global:rt,isContextDefined:ot,ALPHABET:gt,generateString:(t=16,e=gt.ALPHA_DIGIT)=>{let n="";const{length:s}=e;for(;t--;)n+=e[Math.random()*s|0];return n},isSpecCompliantForm:function(t){return!!(t&&Y(t.append)&&"FormData"===t[Symbol.toStringTag]&&t[Symbol.iterator])},toJSONObject:t=>{const e=new Array(10),n=(t,s)=>{if(J(t)){if(e.indexOf(t)>=0)return;if(!("toJSON"in t)){e[s]=t;const i=H(t)?[]:{};return it(t,((t,e)=>{const a=n(t,s+1);!q(a)&&(i[e]=a)})),e[s]=void 0,i}}return t};return n(t,0)},isAsyncFn:ht,isThenable:t=>t&&(J(t)||Y(t))&&Y(t.then)&&Y(t.catch)};function At(t,e,n,s,i){Error.call(this),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=(new Error).stack,this.message=t,this.name="AxiosError",e&&(this.code=e),n&&(this.config=n),s&&(this.request=s),i&&(this.response=i)}vt.inherits(At,Error,{toJSON:function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:vt.toJSONObject(this.config),code:this.code,status:this.response&&this.response.status?this.response.status:null}}});const wt=At.prototype,yt={};function bt(t){return vt.isPlainObject(t)||vt.isArray(t)}function Ct(t){return vt.endsWith(t,"[]")?t.slice(0,-2):t}function xt(t,e,n){return t?t.concat(e).map((function(t,e){return t=Ct(t),!n&&e?"["+t+"]":t})).join(n?".":""):e}["ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","ECONNABORTED","ETIMEDOUT","ERR_NETWORK","ERR_FR_TOO_MANY_REDIRECTS","ERR_DEPRECATED","ERR_BAD_RESPONSE","ERR_BAD_REQUEST","ERR_CANCELED","ERR_NOT_SUPPORT","ERR_INVALID_URL"].forEach((t=>{yt[t]={value:t}})),Object.defineProperties(At,yt),Object.defineProperty(wt,"isAxiosError",{value:!0}),At.from=(t,e,n,s,i,a)=>{const r=Object.create(wt);return vt.toFlatObject(t,r,(function(t){return t!==Error.prototype}),(t=>"isAxiosError"!==t)),At.call(r,t.message,e,n,s,i),r.cause=t,r.name=t.name,a&&Object.assign(r,a),r};const _t=vt.toFlatObject(vt,{},null,(function(t){return/^is[A-Z]/.test(t)}));function Tt(t,e,n){if(!vt.isObject(t))throw new TypeError("target must be an object");e=e||new FormData;const s=(n=vt.toFlatObject(n,{metaTokens:!0,dots:!1,indexes:!1},!1,(function(t,e){return!vt.isUndefined(e[t])}))).metaTokens,i=n.visitor||c,a=n.dots,r=n.indexes,o=(n.Blob||typeof Blob<"u"&&Blob)&&vt.isSpecCompliantForm(e);if(!vt.isFunction(i))throw new TypeError("visitor must be a function");function l(t){if(null===t)return"";if(vt.isDate(t))return t.toISOString();if(!o&&vt.isBlob(t))throw new At("Blob is not supported. Use a Buffer instead.");return vt.isArrayBuffer(t)||vt.isTypedArray(t)?o&&"function"==typeof Blob?new Blob([t]):O.from(t):t}function c(t,n,i){let o=t;if(t&&!i&&"object"==typeof t)if(vt.endsWith(n,"{}"))n=s?n:n.slice(0,-2),t=JSON.stringify(t);else if(vt.isArray(t)&&function(t){return vt.isArray(t)&&!t.some(bt)}(t)||(vt.isFileList(t)||vt.endsWith(n,"[]"))&&(o=vt.toArray(t)))return n=Ct(n),o.forEach((function(t,s){!vt.isUndefined(t)&&null!==t&&e.append(!0===r?xt([n],s,a):null===r?n:n+"[]",l(t))})),!1;return!!bt(t)||(e.append(xt(i,n,a),l(t)),!1)}const d=[],u=Object.assign(_t,{defaultVisitor:c,convertValue:l,isVisitable:bt});if(!vt.isObject(t))throw new TypeError("data must be an object");return function t(n,s){if(!vt.isUndefined(n)){if(-1!==d.indexOf(n))throw Error("Circular reference detected in "+s.join("."));d.push(n),vt.forEach(n,(function(n,a){!0===(!(vt.isUndefined(n)||null===n)&&i.call(e,n,vt.isString(a)?a.trim():a,s,u))&&t(n,s?s.concat(a):[a])})),d.pop()}}(t),e}function kt(t){const e={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(t).replace(/[!'()~]|%20|%00/g,(function(t){return e[t]}))}function St(t,e){this._pairs=[],t&&Tt(t,this,e)}const Lt=St.prototype;function Et(t){return encodeURIComponent(t).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}function Nt(t,e,n){if(!e)return t;const s=n&&n.encode||Et,i=n&&n.serialize;let a;if(a=i?i(e,n):vt.isURLSearchParams(e)?e.toString():new St(e,n).toString(s),a){const e=t.indexOf("#");-1!==e&&(t=t.slice(0,e)),t+=(-1===t.indexOf("?")?"?":"&")+a}return t}Lt.append=function(t,e){this._pairs.push([t,e])},Lt.toString=function(t){const e=t?function(e){return t.call(this,e,kt)}:kt;return this._pairs.map((function(t){return e(t[0])+"="+e(t[1])}),"").join("&")};const Ft=class{constructor(){this.handlers=[]}use(t,e,n){return this.handlers.push({fulfilled:t,rejected:e,synchronous:!!n&&n.synchronous,runWhen:n?n.runWhen:null}),this.handlers.length-1}eject(t){this.handlers[t]&&(this.handlers[t]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(t){vt.forEach(this.handlers,(function(e){null!==e&&t(e)}))}},Bt={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1},Pt={isBrowser:!0,classes:{URLSearchParams:typeof URLSearchParams<"u"?URLSearchParams:St,FormData:typeof FormData<"u"?FormData:null,Blob:typeof Blob<"u"?Blob:null},protocols:["http","https","file","blob","url","data"]},jt=typeof window<"u"&&typeof document<"u",It=(t=>jt&&["ReactNative","NativeScript","NS"].indexOf(t)<0)(typeof navigator<"u"&&navigator.product),Ot=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&"function"==typeof self.importScripts,Ut={...Object.freeze(Object.defineProperty({__proto__:null,hasBrowserEnv:jt,hasStandardBrowserEnv:It,hasStandardBrowserWebWorkerEnv:Ot},Symbol.toStringTag,{value:"Module"})),...Pt};function Dt(t){function e(t,n,s,i){let a=t[i++];const r=Number.isFinite(+a),o=i>=t.length;return a=!a&&vt.isArray(s)?s.length:a,o?(vt.hasOwnProp(s,a)?s[a]=[s[a],n]:s[a]=n,!r):((!s[a]||!vt.isObject(s[a]))&&(s[a]=[]),e(t,n,s[a],i)&&vt.isArray(s[a])&&(s[a]=function(t){const e={},n=Object.keys(t);let s;const i=n.length;let a;for(s=0;s{e(function(t){return vt.matchAll(/\w+|\[(\w*)]/g,t).map((t=>"[]"===t[0]?"":t[1]||t[0]))}(t),s,n,0)})),n}return null}const $t={transitional:Bt,adapter:["xhr","http"],transformRequest:[function(t,e){const n=e.getContentType()||"",s=n.indexOf("application/json")>-1,i=vt.isObject(t);if(i&&vt.isHTMLForm(t)&&(t=new FormData(t)),vt.isFormData(t))return s&&s?JSON.stringify(Dt(t)):t;if(vt.isArrayBuffer(t)||vt.isBuffer(t)||vt.isStream(t)||vt.isFile(t)||vt.isBlob(t))return t;if(vt.isArrayBufferView(t))return t.buffer;if(vt.isURLSearchParams(t))return e.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),t.toString();let a;if(i){if(n.indexOf("application/x-www-form-urlencoded")>-1)return function(t,e){return Tt(t,new Ut.classes.URLSearchParams,Object.assign({visitor:function(t,e,n,s){return Ut.isNode&&vt.isBuffer(t)?(this.append(e,t.toString("base64")),!1):s.defaultVisitor.apply(this,arguments)}},e))}(t,this.formSerializer).toString();if((a=vt.isFileList(t))||n.indexOf("multipart/form-data")>-1){const e=this.env&&this.env.FormData;return Tt(a?{"files[]":t}:t,e&&new e,this.formSerializer)}}return i||s?(e.setContentType("application/json",!1),function(t,e,n){if(vt.isString(t))try{return(0,JSON.parse)(t),vt.trim(t)}catch(t){if("SyntaxError"!==t.name)throw t}return(0,JSON.stringify)(t)}(t)):t}],transformResponse:[function(t){const e=this.transitional||$t.transitional,n=e&&e.forcedJSONParsing,s="json"===this.responseType;if(t&&vt.isString(t)&&(n&&!this.responseType||s)){const n=!(e&&e.silentJSONParsing)&&s;try{return JSON.parse(t)}catch(t){if(n)throw"SyntaxError"===t.name?At.from(t,At.ERR_BAD_RESPONSE,this,null,this.response):t}}return t}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:Ut.classes.FormData,Blob:Ut.classes.Blob},validateStatus:function(t){return t>=200&&t<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};vt.forEach(["delete","get","head","post","put","patch"],(t=>{$t.headers[t]={}}));const zt=$t,Rt=vt.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]),Mt=Symbol("internals");function Vt(t){return t&&String(t).trim().toLowerCase()}function Ht(t){return!1===t||null==t?t:vt.isArray(t)?t.map(Ht):String(t)}function qt(t,e,n,s,i){if(vt.isFunction(s))return s.call(this,e,n);if(i&&(e=n),vt.isString(e)){if(vt.isString(s))return-1!==e.indexOf(s);if(vt.isRegExp(s))return s.test(e)}}let Zt=class{constructor(t){t&&this.set(t)}set(t,e,n){const s=this;function i(t,e,n){const i=Vt(e);if(!i)throw new Error("header name must be a non-empty string");const a=vt.findKey(s,i);(!a||void 0===s[a]||!0===n||void 0===n&&!1!==s[a])&&(s[a||e]=Ht(t))}const a=(t,e)=>vt.forEach(t,((t,n)=>i(t,n,e)));return vt.isPlainObject(t)||t instanceof this.constructor?a(t,e):vt.isString(t)&&(t=t.trim())&&!(t=>/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(t.trim()))(t)?a((t=>{const e={};let n,s,i;return t&&t.split("\n").forEach((function(t){i=t.indexOf(":"),n=t.substring(0,i).trim().toLowerCase(),s=t.substring(i+1).trim(),!(!n||e[n]&&Rt[n])&&("set-cookie"===n?e[n]?e[n].push(s):e[n]=[s]:e[n]=e[n]?e[n]+", "+s:s)})),e})(t),e):null!=t&&i(e,t,n),this}get(t,e){if(t=Vt(t)){const n=vt.findKey(this,t);if(n){const t=this[n];if(!e)return t;if(!0===e)return function(t){const e=Object.create(null),n=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g;let s;for(;s=n.exec(t);)e[s[1]]=s[2];return e}(t);if(vt.isFunction(e))return e.call(this,t,n);if(vt.isRegExp(e))return e.exec(t);throw new TypeError("parser must be boolean|regexp|function")}}}has(t,e){if(t=Vt(t)){const n=vt.findKey(this,t);return!(!n||void 0===this[n]||e&&!qt(0,this[n],n,e))}return!1}delete(t,e){const n=this;let s=!1;function i(t){if(t=Vt(t)){const i=vt.findKey(n,t);i&&(!e||qt(0,n[i],i,e))&&(delete n[i],s=!0)}}return vt.isArray(t)?t.forEach(i):i(t),s}clear(t){const e=Object.keys(this);let n=e.length,s=!1;for(;n--;){const i=e[n];(!t||qt(0,this[i],i,t,!0))&&(delete this[i],s=!0)}return s}normalize(t){const e=this,n={};return vt.forEach(this,((s,i)=>{const a=vt.findKey(n,i);if(a)return e[a]=Ht(s),void delete e[i];const r=t?function(t){return t.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,((t,e,n)=>e.toUpperCase()+n))}(i):String(i).trim();r!==i&&delete e[i],e[r]=Ht(s),n[r]=!0})),this}concat(...t){return this.constructor.concat(this,...t)}toJSON(t){const e=Object.create(null);return vt.forEach(this,((n,s)=>{null!=n&&!1!==n&&(e[s]=t&&vt.isArray(n)?n.join(", "):n)})),e}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map((([t,e])=>t+": "+e)).join("\n")}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(t){return t instanceof this?t:new this(t)}static concat(t,...e){const n=new this(t);return e.forEach((t=>n.set(t))),n}static accessor(t){const e=(this[Mt]=this[Mt]={accessors:{}}).accessors,n=this.prototype;function s(t){const s=Vt(t);e[s]||(function(t,e){const n=vt.toCamelCase(" "+e);["get","set","has"].forEach((s=>{Object.defineProperty(t,s+n,{value:function(t,n,i){return this[s].call(this,e,t,n,i)},configurable:!0})}))}(n,t),e[s]=!0)}return vt.isArray(t)?t.forEach(s):s(t),this}};Zt.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]),vt.reduceDescriptors(Zt.prototype,(({value:t},e)=>{let n=e[0].toUpperCase()+e.slice(1);return{get:()=>t,set(t){this[n]=t}}})),vt.freezeMethods(Zt);const Gt=Zt;function Wt(t,e){const n=this||zt,s=e||n,i=Gt.from(s.headers);let a=s.data;return vt.forEach(t,(function(t){a=t.call(n,a,i.normalize(),e?e.status:void 0)})),i.normalize(),a}function Yt(t){return!(!t||!t.__CANCEL__)}function Kt(t,e,n){At.call(this,t??"canceled",At.ERR_CANCELED,e,n),this.name="CanceledError"}vt.inherits(Kt,At,{__CANCEL__:!0});const Jt=Ut.hasStandardBrowserEnv?{write:function(t,e,n,s,i,a){const r=[];r.push(t+"="+encodeURIComponent(e)),vt.isNumber(n)&&r.push("expires="+new Date(n).toGMTString()),vt.isString(s)&&r.push("path="+s),vt.isString(i)&&r.push("domain="+i),!0===a&&r.push("secure"),document.cookie=r.join("; ")},read:function(t){const e=document.cookie.match(new RegExp("(^|;\\s*)("+t+")=([^;]*)"));return e?decodeURIComponent(e[3]):null},remove:function(t){this.write(t,"",Date.now()-864e5)}}:{write:function(){},read:function(){return null},remove:function(){}};function Qt(t,e){return t&&!function(t){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(t)}(e)?function(t,e){return e?t.replace(/\/+$/,"")+"/"+e.replace(/^\/+/,""):t}(t,e):e}const Xt=Ut.hasStandardBrowserEnv?function(){const t=/(msie|trident)/i.test(navigator.userAgent),e=document.createElement("a");let n;function s(n){let s=n;return t&&(e.setAttribute("href",s),s=e.href),e.setAttribute("href",s),{href:e.href,protocol:e.protocol?e.protocol.replace(/:$/,""):"",host:e.host,search:e.search?e.search.replace(/^\?/,""):"",hash:e.hash?e.hash.replace(/^#/,""):"",hostname:e.hostname,port:e.port,pathname:"/"===e.pathname.charAt(0)?e.pathname:"/"+e.pathname}}return n=s(window.location.href),function(t){const e=vt.isString(t)?s(t):t;return e.protocol===n.protocol&&e.host===n.host}}():function(){return!0};function te(t,e){let n=0;const s=function(t,e){t=t||10;const n=new Array(t),s=new Array(t);let i,a=0,r=0;return e=void 0!==e?e:1e3,function(o){const l=Date.now(),c=s[r];i||(i=l),n[a]=o,s[a]=l;let d=r,u=0;for(;d!==a;)u+=n[d++],d%=t;if(a=(a+1)%t,a===r&&(r=(r+1)%t),l-i{const a=i.loaded,r=i.lengthComputable?i.total:void 0,o=a-n,l=s(o);n=a;const c={loaded:a,total:r,progress:r?a/r:void 0,bytes:o,rate:l||void 0,estimated:l&&r&&a<=r?(r-a)/l:void 0,event:i};c[e?"download":"upload"]=!0,t(c)}}const ee=typeof XMLHttpRequest<"u"&&function(t){return new Promise((function(e,n){let s=t.data;const i=Gt.from(t.headers).normalize(),a=t.responseType;let r,o;function l(){t.cancelToken&&t.cancelToken.unsubscribe(r),t.signal&&t.signal.removeEventListener("abort",r)}if(vt.isFormData(s))if(Ut.hasStandardBrowserEnv||Ut.hasStandardBrowserWebWorkerEnv)i.setContentType(!1);else if(!1!==(o=i.getContentType())){const[t,...e]=o?o.split(";").map((t=>t.trim())).filter(Boolean):[];i.setContentType([t||"multipart/form-data",...e].join("; "))}let c=new XMLHttpRequest;if(t.auth){const e=t.auth.username||"",n=t.auth.password?unescape(encodeURIComponent(t.auth.password)):"";i.set("Authorization","Basic "+btoa(e+":"+n))}const d=Qt(t.baseURL,t.url);function u(){if(!c)return;const s=Gt.from("getAllResponseHeaders"in c&&c.getAllResponseHeaders());(function(t,e,n){const s=n.config.validateStatus;n.status&&s&&!s(n.status)?e(new At("Request failed with status code "+n.status,[At.ERR_BAD_REQUEST,At.ERR_BAD_RESPONSE][Math.floor(n.status/100)-4],n.config,n.request,n)):t(n)})((function(t){e(t),l()}),(function(t){n(t),l()}),{data:a&&"text"!==a&&"json"!==a?c.response:c.responseText,status:c.status,statusText:c.statusText,headers:s,config:t,request:c}),c=null}if(c.open(t.method.toUpperCase(),Nt(d,t.params,t.paramsSerializer),!0),c.timeout=t.timeout,"onloadend"in c?c.onloadend=u:c.onreadystatechange=function(){!c||4!==c.readyState||0===c.status&&(!c.responseURL||0!==c.responseURL.indexOf("file:"))||setTimeout(u)},c.onabort=function(){c&&(n(new At("Request aborted",At.ECONNABORTED,t,c)),c=null)},c.onerror=function(){n(new At("Network Error",At.ERR_NETWORK,t,c)),c=null},c.ontimeout=function(){let e=t.timeout?"timeout of "+t.timeout+"ms exceeded":"timeout exceeded";const s=t.transitional||Bt;t.timeoutErrorMessage&&(e=t.timeoutErrorMessage),n(new At(e,s.clarifyTimeoutError?At.ETIMEDOUT:At.ECONNABORTED,t,c)),c=null},Ut.hasStandardBrowserEnv){const e=Xt(d)&&t.xsrfCookieName&&Jt.read(t.xsrfCookieName);e&&i.set(t.xsrfHeaderName,e)}void 0===s&&i.setContentType(null),"setRequestHeader"in c&&vt.forEach(i.toJSON(),(function(t,e){c.setRequestHeader(e,t)})),vt.isUndefined(t.withCredentials)||(c.withCredentials=!!t.withCredentials),a&&"json"!==a&&(c.responseType=t.responseType),"function"==typeof t.onDownloadProgress&&c.addEventListener("progress",te(t.onDownloadProgress,!0)),"function"==typeof t.onUploadProgress&&c.upload&&c.upload.addEventListener("progress",te(t.onUploadProgress)),(t.cancelToken||t.signal)&&(r=e=>{c&&(n(!e||e.type?new Kt(null,t,c):e),c.abort(),c=null)},t.cancelToken&&t.cancelToken.subscribe(r),t.signal&&(t.signal.aborted?r():t.signal.addEventListener("abort",r)));const m=function(t){const e=/^([-+\w]{1,25})(:?\/\/|:)/.exec(t);return e&&e[1]||""}(d);m&&-1===Ut.protocols.indexOf(m)?n(new At("Unsupported protocol "+m+":",At.ERR_BAD_REQUEST,t)):c.send(s||null)}))},ne={http:null,xhr:ee};vt.forEach(ne,((t,e)=>{if(t){try{Object.defineProperty(t,"name",{value:e})}catch{}Object.defineProperty(t,"adapterName",{value:e})}}));const se=t=>`- ${t}`,ie=t=>vt.isFunction(t)||null===t||!1===t,ae=t=>{t=vt.isArray(t)?t:[t];const{length:e}=t;let n,s;const i={};for(let a=0;a`adapter ${t} `+(!1===e?"is not supported by the environment":"is not available in the build")));throw new At("There is no suitable adapter to dispatch the request "+(e?t.length>1?"since :\n"+t.map(se).join("\n"):" "+se(t[0]):"as no adapter specified"),"ERR_NOT_SUPPORT")}return s};function re(t){if(t.cancelToken&&t.cancelToken.throwIfRequested(),t.signal&&t.signal.aborted)throw new Kt(null,t)}function oe(t){return re(t),t.headers=Gt.from(t.headers),t.data=Wt.call(t,t.transformRequest),-1!==["post","put","patch"].indexOf(t.method)&&t.headers.setContentType("application/x-www-form-urlencoded",!1),ae(t.adapter||zt.adapter)(t).then((function(e){return re(t),e.data=Wt.call(t,t.transformResponse,e),e.headers=Gt.from(e.headers),e}),(function(e){return Yt(e)||(re(t),e&&e.response&&(e.response.data=Wt.call(t,t.transformResponse,e.response),e.response.headers=Gt.from(e.response.headers))),Promise.reject(e)}))}const le=t=>t instanceof Gt?t.toJSON():t;function ce(t,e){e=e||{};const n={};function s(t,e,n){return vt.isPlainObject(t)&&vt.isPlainObject(e)?vt.merge.call({caseless:n},t,e):vt.isPlainObject(e)?vt.merge({},e):vt.isArray(e)?e.slice():e}function i(t,e,n){return vt.isUndefined(e)?vt.isUndefined(t)?void 0:s(void 0,t,n):s(t,e,n)}function a(t,e){if(!vt.isUndefined(e))return s(void 0,e)}function r(t,e){return vt.isUndefined(e)?vt.isUndefined(t)?void 0:s(void 0,t):s(void 0,e)}function o(n,i,a){return a in e?s(n,i):a in t?s(void 0,n):void 0}const l={url:a,method:a,data:a,baseURL:r,transformRequest:r,transformResponse:r,paramsSerializer:r,timeout:r,timeoutMessage:r,withCredentials:r,adapter:r,responseType:r,xsrfCookieName:r,xsrfHeaderName:r,onUploadProgress:r,onDownloadProgress:r,decompress:r,maxContentLength:r,maxBodyLength:r,beforeRedirect:r,transport:r,httpAgent:r,httpsAgent:r,cancelToken:r,socketPath:r,responseEncoding:r,validateStatus:o,headers:(t,e)=>i(le(t),le(e),!0)};return vt.forEach(Object.keys(Object.assign({},t,e)),(function(s){const a=l[s]||i,r=a(t[s],e[s],s);vt.isUndefined(r)&&a!==o||(n[s]=r)})),n}const de={};["object","boolean","number","function","string","symbol"].forEach(((t,e)=>{de[t]=function(n){return typeof n===t||"a"+(e<1?"n ":" ")+t}}));const ue={};de.transitional=function(t,e,n){function s(t,e){return"[Axios v1.6.1] Transitional option '"+t+"'"+e+(n?". "+n:"")}return(n,i,a)=>{if(!1===t)throw new At(s(i," has been removed"+(e?" in "+e:"")),At.ERR_DEPRECATED);return e&&!ue[i]&&(ue[i]=!0,U.warn(s(i," has been deprecated since v"+e+" and will be removed in the near future"))),!t||t(n,i,a)}};const me={assertOptions:function(t,e,n){if("object"!=typeof t)throw new At("options must be an object",At.ERR_BAD_OPTION_VALUE);const s=Object.keys(t);let i=s.length;for(;i-- >0;){const a=s[i],r=e[a];if(r){const e=t[a],n=void 0===e||r(e,a,t);if(!0!==n)throw new At("option "+a+" must be "+n,At.ERR_BAD_OPTION_VALUE)}else if(!0!==n)throw new At("Unknown option "+a,At.ERR_BAD_OPTION)}},validators:de},fe=me.validators;let pe=class{constructor(t){this.defaults=t,this.interceptors={request:new Ft,response:new Ft}}request(t,e){"string"==typeof t?(e=e||{}).url=t:e=t||{},e=ce(this.defaults,e);const{transitional:n,paramsSerializer:s,headers:i}=e;void 0!==n&&me.assertOptions(n,{silentJSONParsing:fe.transitional(fe.boolean),forcedJSONParsing:fe.transitional(fe.boolean),clarifyTimeoutError:fe.transitional(fe.boolean)},!1),null!=s&&(vt.isFunction(s)?e.paramsSerializer={serialize:s}:me.assertOptions(s,{encode:fe.function,serialize:fe.function},!0)),e.method=(e.method||this.defaults.method||"get").toLowerCase();let a=i&&vt.merge(i.common,i[e.method]);i&&vt.forEach(["delete","get","head","post","put","patch","common"],(t=>{delete i[t]})),e.headers=Gt.concat(a,i);const r=[];let o=!0;this.interceptors.request.forEach((function(t){"function"==typeof t.runWhen&&!1===t.runWhen(e)||(o=o&&t.synchronous,r.unshift(t.fulfilled,t.rejected))}));const l=[];this.interceptors.response.forEach((function(t){l.push(t.fulfilled,t.rejected)}));let c,d,u=0;if(!o){const t=[oe.bind(this),void 0];for(t.unshift.apply(t,r),t.push.apply(t,l),d=t.length,c=Promise.resolve(e);u{he[e]=t}));const ve=he,Ae=function t(e){const n=new ge(e),s=D(ge.prototype.request,n);return vt.extend(s,ge.prototype,n,{allOwnKeys:!0}),vt.extend(s,n,null,{allOwnKeys:!0}),s.create=function(n){return t(ce(e,n))},s}(zt);Ae.Axios=ge,Ae.CanceledError=Kt,Ae.CancelToken=class t{constructor(t){if("function"!=typeof t)throw new TypeError("executor must be a function.");let e;this.promise=new Promise((function(t){e=t}));const n=this;this.promise.then((t=>{if(!n._listeners)return;let e=n._listeners.length;for(;e-- >0;)n._listeners[e](t);n._listeners=null})),this.promise.then=t=>{let e;const s=new Promise((t=>{n.subscribe(t),e=t})).then(t);return s.cancel=function(){n.unsubscribe(e)},s},t((function(t,s,i){n.reason||(n.reason=new Kt(t,s,i),e(n.reason))}))}throwIfRequested(){if(this.reason)throw this.reason}subscribe(t){this.reason?t(this.reason):this._listeners?this._listeners.push(t):this._listeners=[t]}unsubscribe(t){if(!this._listeners)return;const e=this._listeners.indexOf(t);-1!==e&&this._listeners.splice(e,1)}static source(){let e;return{token:new t((function(t){e=t})),cancel:e}}},Ae.isCancel=Yt,Ae.VERSION="1.6.1",Ae.toFormData=Tt,Ae.AxiosError=At,Ae.Cancel=Ae.CanceledError,Ae.all=function(t){return Promise.all(t)},Ae.spread=function(t){return function(e){return t.apply(null,e)}},Ae.isAxiosError=function(t){return vt.isObject(t)&&!0===t.isAxiosError},Ae.mergeConfig=ce,Ae.AxiosHeaders=Gt,Ae.formToJSON=t=>Dt(vt.isHTMLForm(t)?new FormData(t):t),Ae.getAdapter=ae,Ae.HttpStatusCode=ve,Ae.default=Ae;const we=Ae,{Axios:ye,AxiosError:be,CanceledError:Ce,isCancel:xe,CancelToken:_e,VERSION:Te,all:ke,Cancel:Se,isAxiosError:Le,spread:Ee,toFormData:Ne,AxiosHeaders:Fe,HttpStatusCode:Be,formToJSON:Pe,getAdapter:je,mergeConfig:Ie}=we,Oe=function(t){if(!Number.isInteger(1)&&1!==Number.POSITIVE_INFINITY)throw new TypeError("Expected `concurrency` to be a number from 1 and up");const e=new T.Z;let n=0;const s=async(t,s,i)=>{n++;const a=(async()=>t(...i))();s(a);try{await a}catch{}n--,e.size>0&&e.dequeue()()},i=(t,...i)=>new Promise((a=>{((t,i,a)=>{e.enqueue(k(s.bind(void 0,t,i,a))),(async()=>{await Promise.resolve(),n<1&&e.size>0&&e.dequeue()()})()})(t,a,i)}));return Object.defineProperties(i,{activeCount:{get:()=>n},pendingCount:{get:()=>e.size},clearQueue:{value(){e.clear()}}}),i}(),Ue=new FileReader,De=async function(t,e,n,s=(()=>{}),i=void 0,a=void 0){let r;return r=e instanceof Blob?e:await e(),i&&(a??={},a.Destination=i),await y.Z.request({method:"PUT",url:t,data:r,signal:n,onUploadProgress:s,headers:a})},$e=function(t,e,n){return Oe((()=>new Promise(((s,i)=>{Ue.onload=()=>{null!==Ue.result&&s(new Blob([Ue.result],{type:"application/octet-stream"})),i(new Error("Error while reading the file"))},Ue.readAsArrayBuffer(t.slice(e,e+n))}))))},ze=function(t=void 0){const e=window.OC?.appConfig?.files?.max_chunk_size;if(e<=0)return 0;if(!Number(e))return 10485760;const n=Math.max(Number(e),5242880);return void 0===t?n:Math.max(n,Math.ceil(t/1e4))};var Re=(t=>(t[t.INITIALIZED=0]="INITIALIZED",t[t.UPLOADING=1]="UPLOADING",t[t.ASSEMBLING=2]="ASSEMBLING",t[t.FINISHED=3]="FINISHED",t[t.CANCELLED=4]="CANCELLED",t[t.FAILED=5]="FAILED",t))(Re||{});let Me=class{_source;_file;_isChunked;_chunks;_size;_uploaded=0;_startTime=0;_status=0;_controller;_response=null;constructor(t,e=!1,n,s){const i=Math.min(ze()>0?Math.ceil(n/ze()):1,1e4);this._source=t,this._isChunked=e&&ze()>0&&i>1,this._chunks=this._isChunked?i:1,this._size=n,this._file=s,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(t){this._response=t}get response(){return this._response}get uploaded(){return this._uploaded}set uploaded(t){if(t>=this._size)return this._status=this._isChunked?2:3,void(this._uploaded=this._size);this._status=1,this._uploaded=t,0===this._startTime&&(this._startTime=(new Date).getTime())}get status(){return this._status}set status(t){this._status=t}get signal(){return this._controller.signal}cancel(){this._controller.abort(),this._status=4}};const Ve=(t=>null===t?(0,S.IY)().setApp("uploader").build():(0,S.IY)().setApp("uploader").setUid(t.uid).build())((0,A.ts)());var He=(t=>(t[t.IDLE=0]="IDLE",t[t.UPLOADING=1]="UPLOADING",t[t.PAUSED=2]="PAUSED",t))(He||{});class qe{_destinationFolder;_isPublic;_uploadQueue=[];_jobQueue=new _.Z({concurrency:3});_queueSize=0;_queueProgress=0;_queueStatus=0;_notifiers=[];constructor(t=!1,e){if(this._isPublic=t,!e){const t=(0,A.ts)()?.uid,n=(0,v.generateRemoteUrl)(`dav/files/${t}`);if(!t)throw new Error("User is not logged in");e=new w.gt({id:0,owner:t,permissions:w.y3.ALL,root:`/files/${t}`,source:n})}this.destination=e,Ve.debug("Upload workspace initialized",{destination:this.destination,root:this.root,isPublic:t,maxChunksSize:ze()})}get destination(){return this._destinationFolder}set destination(t){if(!t)throw new Error("Invalid destination folder");this._destinationFolder=t}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 t=this._uploadQueue.map((t=>t.size)).reduce(((t,e)=>t+e),0),e=this._uploadQueue.map((t=>t.uploaded)).reduce(((t,e)=>t+e),0);this._queueSize=t,this._queueProgress=e,2!==this._queueStatus&&(this._queueStatus=this._jobQueue.size>0?1:0)}addNotifier(t){this._notifiers.push(t)}upload(t,e){const n=`${this.root}/${t.replace(/^\//,"")}`;Ve.debug(`Uploading ${e.name} to ${n}`);const s=ze(e.size),i=0===s||e.size{if(o(a.cancel),i){Ve.debug("Initializing regular upload",{file:e,upload:a});const s=await $e(e,0,a.size),i=async()=>{try{a.response=await De(n,s,a.signal,(()=>this.updateStats()),void 0,{"X-OC-Mtime":e.lastModified/1e3}),a.uploaded=a.size,this.updateStats(),Ve.debug(`Successfully uploaded ${e.name}`,{file:e,upload:a}),t(a)}catch(t){if(t instanceof Ce)return a.status=Re.FAILED,void r("Upload has been cancelled");t?.response&&(a.response=t.response),a.status=Re.FAILED,Ve.error(`Failed uploading ${e.name}`,{error:t,file:e,upload:a}),r("Failed uploading the file")}this._notifiers.forEach((t=>{try{t(a)}catch{}}))};this._jobQueue.add(i),this.updateStats()}else{Ve.debug("Initializing chunked upload",{file:e,upload:a});const i=await async function(t){const e=`${(0,v.generateRemoteUrl)(`dav/uploads/${(0,A.ts)()?.uid}`)}/web-file-upload-${[...Array(16)].map((()=>Math.floor(16*Math.random()).toString(16))).join("")}`,n=t?{Destination:t}:void 0;return await y.Z.request({method:"MKCOL",url:e,headers:n}),e}(n),o=[];for(let t=0;t$e(e,r,s),d=()=>De(`${i}/${t+1}`,c,a.signal,(()=>this.updateStats()),n,{"X-OC-Mtime":e.lastModified/1e3,"OC-Total-Length":e.size}).then((()=>{a.uploaded=a.uploaded+s})).catch((e=>{throw e instanceof Ce||(Ve.error(`Chunk ${t+1} ${r} - ${l} uploading failed`),a.status=Re.FAILED),e}));o.push(this._jobQueue.add(d))}try{await Promise.all(o),this.updateStats(),a.response=await y.Z.request({method:"MOVE",url:`${i}/.file`,headers:{Destination:n}}),this.updateStats(),a.status=Re.FINISHED,Ve.debug(`Successfully uploaded ${e.name}`,{file:e,upload:a}),t(a)}catch(t){t instanceof Ce?(a.status=Re.FAILED,r("Upload has been cancelled")):(a.status=Re.FAILED,r("Failed assembling the chunks together")),y.Z.request({method:"DELETE",url:`${i}`})}this._notifiers.forEach((t=>{try{t(a)}catch{}}))}return this._jobQueue.onIdle().then((()=>this.reset())),a}))}}var Ze=Object.freeze({}),Ge=Array.isArray;function We(t){return null==t}function Ye(t){return null!=t}function Ke(t){return!0===t}function Je(t){return"string"==typeof t||"number"==typeof t||"symbol"==typeof t||"boolean"==typeof t}function Qe(t){return"function"==typeof t}function Xe(t){return null!==t&&"object"==typeof t}var tn=Object.prototype.toString;function en(t){return"[object Object]"===tn.call(t)}function nn(t){var e=parseFloat(String(t));return e>=0&&Math.floor(e)===e&&isFinite(t)}function sn(t){return Ye(t)&&"function"==typeof t.then&&"function"==typeof t.catch}function an(t){return null==t?"":Array.isArray(t)||en(t)&&t.toString===tn?JSON.stringify(t,null,2):String(t)}function rn(t){var e=parseFloat(t);return isNaN(e)?t:e}function on(t,e){for(var n=Object.create(null),s=t.split(","),i=0;i-1)return t.splice(s,1)}}var dn=Object.prototype.hasOwnProperty;function un(t,e){return dn.call(t,e)}function mn(t){var e=Object.create(null);return function(n){return e[n]||(e[n]=t(n))}}var fn=/-(\w)/g,pn=mn((function(t){return t.replace(fn,(function(t,e){return e?e.toUpperCase():""}))})),gn=mn((function(t){return t.charAt(0).toUpperCase()+t.slice(1)})),hn=/\B([A-Z])/g,vn=mn((function(t){return t.replace(hn,"-$1").toLowerCase()})),An=Function.prototype.bind?function(t,e){return t.bind(e)}:function(t,e){function n(n){var s=arguments.length;return s?s>1?t.apply(e,arguments):t.call(e,n):t.call(e)}return n._length=t.length,n};function wn(t,e){e=e||0;for(var n=t.length-e,s=new Array(n);n--;)s[n]=t[n+e];return s}function yn(t,e){for(var n in e)t[n]=e[n];return t}function bn(t){for(var e={},n=0;n0,zn=Un&&Un.indexOf("edge/")>0;Un&&Un.indexOf("android");var Rn=Un&&/iphone|ipad|ipod|ios/.test(Un),Mn=Un&&Un.match(/firefox\/(\d+)/),Vn={}.watch,Hn=!1;if(On)try{var qn={};Object.defineProperty(qn,"passive",{get:function(){Hn=!0}}),window.addEventListener("test-passive",null,qn)}catch{}var Zn,Gn=function(){return void 0===Zn&&(Zn=!On&&typeof global<"u"&&global.process&&"server"===global.process.env.VUE_ENV),Zn},Wn=On&&window.__VUE_DEVTOOLS_GLOBAL_HOOK__;function Yn(t){return"function"==typeof t&&/native code/.test(t.toString())}var Kn,Jn=typeof Symbol<"u"&&Yn(Symbol)&&typeof Reflect<"u"&&Yn(Reflect.ownKeys);Kn=typeof Set<"u"&&Yn(Set)?Set:function(){function t(){this.set=Object.create(null)}return t.prototype.has=function(t){return!0===this.set[t]},t.prototype.add=function(t){this.set[t]=!0},t.prototype.clear=function(){this.set=Object.create(null)},t}();var Qn=null;function Xn(t){void 0===t&&(t=null),t||Qn&&Qn._scope.off(),Qn=t,t&&t._scope.on()}var ts=function(){function t(t,e,n,s,i,a,r,o){this.tag=t,this.data=e,this.children=n,this.text=s,this.elm=i,this.ns=void 0,this.context=a,this.fnContext=void 0,this.fnOptions=void 0,this.fnScopeId=void 0,this.key=e&&e.key,this.componentOptions=r,this.componentInstance=void 0,this.parent=void 0,this.raw=!1,this.isStatic=!1,this.isRootInsert=!0,this.isComment=!1,this.isCloned=!1,this.isOnce=!1,this.asyncFactory=o,this.asyncMeta=void 0,this.isAsyncPlaceholder=!1}return Object.defineProperty(t.prototype,"child",{get:function(){return this.componentInstance},enumerable:!1,configurable:!0}),t}(),es=function(t){void 0===t&&(t="");var e=new ts;return e.text=t,e.isComment=!0,e};function ns(t){return new ts(void 0,void 0,void 0,String(t))}function ss(t){var e=new ts(t.tag,t.data,t.children&&t.children.slice(),t.text,t.elm,t.context,t.componentOptions,t.asyncFactory);return e.ns=t.ns,e.isStatic=t.isStatic,e.key=t.key,e.isComment=t.isComment,e.fnContext=t.fnContext,e.fnOptions=t.fnOptions,e.fnScopeId=t.fnScopeId,e.asyncMeta=t.asyncMeta,e.isCloned=!0,e}var is=0,as=[],rs=function(){function t(){this._pending=!1,this.id=is++,this.subs=[]}return t.prototype.addSub=function(t){this.subs.push(t)},t.prototype.removeSub=function(t){this.subs[this.subs.indexOf(t)]=null,this._pending||(this._pending=!0,as.push(this))},t.prototype.depend=function(e){t.target&&t.target.addDep(this)},t.prototype.notify=function(t){for(var e=this.subs.filter((function(t){return t})),n=0,s=e.length;n0&&(Is((s=Os(s,"".concat(e||"","_").concat(n)))[0])&&Is(a)&&(r[i]=ns(a.text+s[0].text),s.shift()),r.push.apply(r,s)):Je(s)?Is(a)?r[i]=ns(a.text+s):""!==s&&r.push(ns(s)):Is(s)&&Is(a)?r[i]=ns(a.text+s.text):(Ke(t._isVList)&&Ye(s.tag)&&We(s.key)&&Ye(e)&&(s.key="__vlist".concat(e,"_").concat(n,"__")),r.push(s)));return r}function Us(t,e){var n,s,i,a,r=null;if(Ge(t)||"string"==typeof t)for(r=new Array(t.length),n=0,s=t.length;n0,r=e?!!e.$stable:!a,o=e&&e.$key;if(e){if(e._normalized)return e._normalized;if(r&&s&&s!==Ze&&o===s.$key&&!a&&!s.$hasNormal)return s;for(var l in i={},e)e[l]&&"$"!==l[0]&&(i[l]=ni(t,n,l,e[l]))}else i={};for(var c in n)c in i||(i[c]=si(n,c));return e&&Object.isExtensible(e)&&(e._normalized=i),Pn(i,"$stable",r),Pn(i,"$key",o),Pn(i,"$hasNormal",a),i}function ni(t,e,n,s){var i=function(){var e=Qn;Xn(t);var n=arguments.length?s.apply(null,arguments):s({}),i=(n=n&&"object"==typeof n&&!Ge(n)?[n]:js(n))&&n[0];return Xn(e),n&&(!i||1===n.length&&i.isComment&&!ti(i))?void 0:n};return s.proxy&&Object.defineProperty(e,n,{get:i,enumerable:!0,configurable:!0}),i}function si(t,e){return function(){return t[e]}}function ii(t,e,n,s,i){var a=!1;for(var r in e)r in t?e[r]!==n[r]&&(a=!0):(a=!0,ai(t,r,s,i));for(var r in t)r in e||(a=!0,delete t[r]);return a}function ai(t,e,n,s){Object.defineProperty(t,e,{enumerable:!0,configurable:!0,get:function(){return n[s][e]}})}function ri(t,e){for(var n in e)t[n]=e[n];for(var n in t)n in e||delete t[n]}var oi=null;function li(t,e){return(t.__esModule||Jn&&"Module"===t[Symbol.toStringTag])&&(t=t.default),Xe(t)?e.extend(t):t}function ci(t){if(Ge(t))for(var e=0;eYi&&Hi[n].id>t.id;)n--;Hi.splice(n+1,0,t)}else Hi.push(t);Gi||(Gi=!0,Si(ta))}}(this)},t.prototype.run=function(){if(this.active){var t=this.get();if(t!==this.value||Xe(t)||this.deep){var e=this.value;if(this.value=t,this.user){var n='callback for watcher "'.concat(this.expression,'"');gi(this.cb,this.vm,[t,e],this.vm,n)}else this.cb.call(this.vm,t,e)}}},t.prototype.evaluate=function(){this.value=this.get(),this.dirty=!1},t.prototype.depend=function(){for(var t=this.deps.length;t--;)this.deps[t].depend()},t.prototype.teardown=function(){if(this.vm&&!this.vm._isBeingDestroyed&&cn(this.vm._scope.effects,this),this.active){for(var t=this.deps.length;t--;)this.deps[t].removeSub(this);this.active=!1,this.onStop&&this.onStop()}},t}();function ji(t,e){Fi.$on(t,e)}function Ii(t,e){Fi.$off(t,e)}function Oi(t,e){var n=Fi;return function s(){null!==e.apply(null,arguments)&&n.$off(t,s)}}function Ui(t,e,n){Fi=t,Fs(e,n||{},ji,Ii,Oi,t),Fi=void 0}var Di=null;function $i(t){var e=Di;return Di=t,function(){Di=e}}function zi(t){for(;t&&(t=t.$parent);)if(t._inactive)return!0;return!1}function Ri(t,e){if(e){if(t._directInactive=!1,zi(t))return}else if(t._directInactive)return;if(t._inactive||null===t._inactive){t._inactive=!1;for(var n=0;ndocument.createEvent("Event").timeStamp&&(Ji=function(){return Qi.now()})}var Xi=function(t,e){if(t.post){if(!e.post)return 1}else if(e.post)return-1;return t.id-e.id};function ta(){var t,e;for(Ki=Ji(),Wi=!0,Hi.sort(Xi),Yi=0;Yi-1)if(a&&!un(i,"default"))r=!1;else if(""===r||r===vn(t)){var l=xa(String,i.type);(l<0||o-1:"string"==typeof t?t.split(",").indexOf(e)>-1:!!function(t){return"[object RegExp]"===tn.call(t)}(t)&&t.test(e)}function Ua(t,e){var n=t.cache,s=t.keys,i=t._vnode;for(var a in n){var r=n[a];if(r){var o=r.name;o&&!e(o)&&Da(n,a,s,i)}}}function Da(t,e,n,s){var i=t[e];i&&(!s||i.tag!==s.tag)&&i.componentInstance.$destroy(),t[e]=null,cn(n,e)}!function(t){t.prototype._init=function(t){var e=this;e._uid=Ba++,e._isVue=!0,e.__v_skip=!0,e._scope=new Ls(!0),e._scope._vm=!0,t&&t._isComponent?function(t,e){var n=t.$options=Object.create(t.constructor.options),s=e._parentVnode;n.parent=e.parent,n._parentVnode=s;var i=s.componentOptions;n.propsData=i.propsData,n._parentListeners=i.listeners,n._renderChildren=i.children,n._componentTag=i.tag,e.render&&(n.render=e.render,n.staticRenderFns=e.staticRenderFns)}(e,t):e.$options=va(Pa(e.constructor),t||{},e),e._renderProxy=e,e._self=e,function(t){var e=t.$options,n=e.parent;if(n&&!e.abstract){for(;n.$options.abstract&&n.$parent;)n=n.$parent;n.$children.push(t)}t.$parent=n,t.$root=n?n.$root:t,t.$children=[],t.$refs={},t._provided=n?n._provided:Object.create(null),t._watcher=null,t._inactive=null,t._directInactive=!1,t._isMounted=!1,t._isDestroyed=!1,t._isBeingDestroyed=!1}(e),function(t){t._events=Object.create(null),t._hasHookEvent=!1;var e=t.$options._parentListeners;e&&Ui(t,e)}(e),function(t){t._vnode=null,t._staticTrees=null;var e=t.$options,n=t.$vnode=e._parentVnode,s=n&&n.context;t.$slots=Qs(e._renderChildren,s),t.$scopedSlots=n?ei(t.$parent,n.data.scopedSlots,t.$slots):Ze,t._c=function(e,n,s,i){return mi(t,e,n,s,i,!1)},t.$createElement=function(e,n,s,i){return mi(t,e,n,s,i,!0)};var i=n&&n.data;ws(t,"$attrs",i&&i.attrs||Ze,null,!0),ws(t,"$listeners",e._parentListeners||Ze,null,!0)}(e),Vi(e,"beforeCreate",void 0,!1),function(t){var e=ea(t.$options.inject,t);e&&(gs(!1),Object.keys(e).forEach((function(n){ws(t,n,e[n])})),gs(!0))}(e),ka(e),function(t){var e=t.$options.provide;if(e){var n=Qe(e)?e.call(t):e;if(!Xe(n))return;for(var s=function(t){var e=t._provided,n=t.$parent&&t.$parent._provided;return n===e?t._provided=Object.create(n):e}(t),i=Jn?Reflect.ownKeys(n):Object.keys(n),a=0;a1?wn(n):n;for(var s=wn(arguments,1),i='event handler for "'.concat(t,'"'),a=0,r=n.length;aparseInt(this.max)&&Da(e,n[0],n,this._vnode),this.vnodeToCache=null}}},created:function(){this.cache=Object.create(null),this.keys=[]},destroyed:function(){for(var t in this.cache)Da(this.cache,t,this.keys)},mounted:function(){var t=this;this.cacheVNode(),this.$watch("include",(function(e){Ua(t,(function(t){return Oa(e,t)}))})),this.$watch("exclude",(function(e){Ua(t,(function(t){return!Oa(e,t)}))}))},updated:function(){this.cacheVNode()},render:function(){var t=this.$slots.default,e=ci(t),n=e&&e.componentOptions;if(n){var s=Ia(n),i=this.include,a=this.exclude;if(i&&(!s||!Oa(i,s))||a&&s&&Oa(a,s))return e;var r=this.cache,o=this.keys,l=null==e.key?n.Ctor.cid+(n.tag?"::".concat(n.tag):""):e.key;r[l]?(e.componentInstance=r[l].componentInstance,cn(o,l),o.push(l)):(this.vnodeToCache=e,this.keyToCache=l),e.data.keepAlive=!0}return e||t&&t[0]}},Ra={KeepAlive:za};!function(t){var e={get:function(){return Fn}};Object.defineProperty(t,"config",e),t.util={warn:da,extend:yn,mergeOptions:va,defineReactive:ws},t.set=ys,t.delete=bs,t.nextTick=Si,t.observable=function(t){return As(t),t},t.options=Object.create(null),En.forEach((function(e){t.options[e+"s"]=Object.create(null)})),t.options._base=t,yn(t.options.components,Ra),function(t){t.use=function(t){var e=this._installedPlugins||(this._installedPlugins=[]);if(e.indexOf(t)>-1)return this;var n=wn(arguments,1);return n.unshift(this),Qe(t.install)?t.install.apply(t,n):Qe(t)&&t.apply(null,n),e.push(t),this}}(t),function(t){t.mixin=function(t){return this.options=va(this.options,t),this}}(t),function(t){t.cid=0;var e=1;t.extend=function(t){t=t||{};var n=this,s=n.cid,i=t._Ctor||(t._Ctor={});if(i[s])return i[s];var a=aa(t)||aa(n.options),r=function(t){this._init(t)};return(r.prototype=Object.create(n.prototype)).constructor=r,r.cid=e++,r.options=va(n.options,t),r.super=n,r.options.props&&function(t){var e=t.options.props;for(var n in e)Ta(t.prototype,"_props",n)}(r),r.options.computed&&function(t){var e=t.options.computed;for(var n in e)La(t.prototype,n,e[n])}(r),r.extend=n.extend,r.mixin=n.mixin,r.use=n.use,En.forEach((function(t){r[t]=n[t]})),a&&(r.options.components[a]=r),r.superOptions=n.options,r.extendOptions=t,r.sealedOptions=yn({},r.options),i[s]=r,r}}(t),function(t){En.forEach((function(e){t[e]=function(t,n){return n?("component"===e&&en(n)&&(n.name=n.name||t,n=this.options._base.extend(n)),"directive"===e&&Qe(n)&&(n={bind:n,update:n}),this.options[e+"s"][t]=n,n):this.options[e+"s"][t]}}))}(t)}(ja),Object.defineProperty(ja.prototype,"$isServer",{get:Gn}),Object.defineProperty(ja.prototype,"$ssrContext",{get:function(){return this.$vnode&&this.$vnode.ssrContext}}),Object.defineProperty(ja,"FunctionalRenderContext",{value:na}),ja.version="2.7.15";var Ma=on("style,class"),Va=on("input,textarea,option,select,progress"),Ha=on("contenteditable,draggable,spellcheck"),qa=on("events,caret,typing,plaintext-only"),Za=function(t,e){return Ja(e)||"false"===e?"false":"contenteditable"===t&&qa(e)?e:"true"},Ga=on("allowfullscreen,async,autofocus,autoplay,checked,compact,controls,declare,default,defaultchecked,defaultmuted,defaultselected,defer,disabled,enabled,formnovalidate,hidden,indeterminate,inert,ismap,itemscope,loop,multiple,muted,nohref,noresize,noshade,novalidate,nowrap,open,pauseonexit,readonly,required,reversed,scoped,seamless,selected,sortable,truespeed,typemustmatch,visible"),Wa="http://www.w3.org/1999/xlink",Ya=function(t){return":"===t.charAt(5)&&"xlink"===t.slice(0,5)},Ka=function(t){return Ya(t)?t.slice(6,t.length):""},Ja=function(t){return null==t||!1===t};function Qa(t,e){return{staticClass:Xa(t.staticClass,e.staticClass),class:Ye(t.class)?[t.class,e.class]:e.class}}function Xa(t,e){return t?e?t+" "+e:t:e||""}function tr(t){return Array.isArray(t)?function(t){for(var e,n="",s=0,i=t.length;s-1?_r(t,e,n):Ga(e)?Ja(n)?t.removeAttribute(e):(n="allowfullscreen"===e&&"EMBED"===t.tagName?"true":e,t.setAttribute(e,n)):Ha(e)?t.setAttribute(e,Za(e,n)):Ya(e)?Ja(n)?t.removeAttributeNS(Wa,Ka(e)):t.setAttributeNS(Wa,e,n):_r(t,e,n)}function _r(t,e,n){if(Ja(n))t.removeAttribute(e);else{if(Dn&&!$n&&"TEXTAREA"===t.tagName&&"placeholder"===e&&""!==n&&!t.__ieph){var s=function(e){e.stopImmediatePropagation(),t.removeEventListener("input",s)};t.addEventListener("input",s),t.__ieph=!0}t.setAttribute(e,n)}}var Tr={create:Cr,update:Cr};function kr(t,e){var n=e.elm,s=e.data,i=t.data;if(!(We(s.staticClass)&&We(s.class)&&(We(i)||We(i.staticClass)&&We(i.class)))){var a=function(t){for(var e=t.data,n=t,s=t;Ye(s.componentInstance);)(s=s.componentInstance._vnode)&&s.data&&(e=Qa(s.data,e));for(;Ye(n=n.parent);)n&&n.data&&(e=Qa(e,n.data));return function(t,e){return Ye(t)||Ye(e)?Xa(t,tr(e)):""}(e.staticClass,e.class)}(e),r=n._transitionClasses;Ye(r)&&(a=Xa(a,tr(r))),a!==n._prevClass&&(n.setAttribute("class",a),n._prevClass=a)}}var Sr,Lr={create:kr,update:kr},Er="__r",Nr="__c";function Fr(t,e,n){var s=Sr;return function i(){null!==e.apply(null,arguments)&&jr(t,i,n,s)}}var Br=wi&&!(Mn&&Number(Mn[1])<=53);function Pr(t,e,n,s){if(Br){var i=Ki,a=e;e=a._wrapper=function(t){if(t.target===t.currentTarget||t.timeStamp>=i||t.timeStamp<=0||t.target.ownerDocument!==document)return a.apply(this,arguments)}}Sr.addEventListener(t,e,Hn?{capture:n,passive:s}:n)}function jr(t,e,n,s){(s||Sr).removeEventListener(t,e._wrapper||e,n)}function Ir(t,e){if(!We(t.data.on)||!We(e.data.on)){var n=e.data.on||{},s=t.data.on||{};Sr=e.elm||t.elm,function(t){if(Ye(t[Er])){var e=Dn?"change":"input";t[e]=[].concat(t[Er],t[e]||[]),delete t[Er]}Ye(t[Nr])&&(t.change=[].concat(t[Nr],t.change||[]),delete t[Nr])}(n),Fs(n,s,Pr,jr,Fr,e.context),Sr=void 0}}var Or,Ur={create:Ir,update:Ir,destroy:function(t){return Ir(t,ur)}};function Dr(t,e){if(!We(t.data.domProps)||!We(e.data.domProps)){var n,s,i=e.elm,a=t.data.domProps||{},r=e.data.domProps||{};for(n in(Ye(r.__ob__)||Ke(r._v_attr_proxy))&&(r=e.data.domProps=yn({},r)),a)n in r||(i[n]="");for(n in r){if(s=r[n],"textContent"===n||"innerHTML"===n){if(e.children&&(e.children.length=0),s===a[n])continue;1===i.childNodes.length&&i.removeChild(i.childNodes[0])}if("value"===n&&"PROGRESS"!==i.tagName){i._value=s;var o=We(s)?"":String(s);$r(i,o)&&(i.value=o)}else if("innerHTML"===n&&sr(i.tagName)&&We(i.innerHTML)){(Or=Or||document.createElement("div")).innerHTML="".concat(s,"");for(var l=Or.firstChild;i.firstChild;)i.removeChild(i.firstChild);for(;l.firstChild;)i.appendChild(l.firstChild)}else if(s!==a[n])try{i[n]=s}catch{}}}}function $r(t,e){return!t.composing&&("OPTION"===t.tagName||function(t,e){var n=!0;try{n=document.activeElement!==t}catch{}return n&&t.value!==e}(t,e)||function(t,e){var n=t.value,s=t._vModifiers;if(Ye(s)){if(s.number)return rn(n)!==rn(e);if(s.trim)return n.trim()!==e.trim()}return n!==e}(t,e))}var zr={create:Dr,update:Dr},Rr=mn((function(t){var e={},n=/:(.+)/;return t.split(/;(?![^(]*\))/g).forEach((function(t){if(t){var s=t.split(n);s.length>1&&(e[s[0].trim()]=s[1].trim())}})),e}));function Mr(t){var e=Vr(t.style);return t.staticStyle?yn(t.staticStyle,e):e}function Vr(t){return Array.isArray(t)?bn(t):"string"==typeof t?Rr(t):t}var Hr,qr=/^--/,Zr=/\s*!important$/,Gr=function(t,e,n){if(qr.test(e))t.style.setProperty(e,n);else if(Zr.test(n))t.style.setProperty(vn(e),n.replace(Zr,""),"important");else{var s=Yr(e);if(Array.isArray(n))for(var i=0,a=n.length;i-1?e.split(Qr).forEach((function(e){return t.classList.add(e)})):t.classList.add(e);else{var n=" ".concat(t.getAttribute("class")||""," ");n.indexOf(" "+e+" ")<0&&t.setAttribute("class",(n+e).trim())}}function to(t,e){if(e&&(e=e.trim()))if(t.classList)e.indexOf(" ")>-1?e.split(Qr).forEach((function(e){return t.classList.remove(e)})):t.classList.remove(e),t.classList.length||t.removeAttribute("class");else{for(var n=" ".concat(t.getAttribute("class")||""," "),s=" "+e+" ";n.indexOf(s)>=0;)n=n.replace(s," ");(n=n.trim())?t.setAttribute("class",n):t.removeAttribute("class")}}function eo(t){if(t){if("object"==typeof t){var e={};return!1!==t.css&&yn(e,no(t.name||"v")),yn(e,t),e}if("string"==typeof t)return no(t)}}var no=mn((function(t){return{enterClass:"".concat(t,"-enter"),enterToClass:"".concat(t,"-enter-to"),enterActiveClass:"".concat(t,"-enter-active"),leaveClass:"".concat(t,"-leave"),leaveToClass:"".concat(t,"-leave-to"),leaveActiveClass:"".concat(t,"-leave-active")}})),so=On&&!$n,io="transition",ao="animation",ro="transition",oo="transitionend",lo="animation",co="animationend";so&&(void 0===window.ontransitionend&&void 0!==window.onwebkittransitionend&&(ro="WebkitTransition",oo="webkitTransitionEnd"),void 0===window.onanimationend&&void 0!==window.onwebkitanimationend&&(lo="WebkitAnimation",co="webkitAnimationEnd"));var uo=On?window.requestAnimationFrame?window.requestAnimationFrame.bind(window):setTimeout:function(t){return t()};function mo(t){uo((function(){uo(t)}))}function fo(t,e){var n=t._transitionClasses||(t._transitionClasses=[]);n.indexOf(e)<0&&(n.push(e),Xr(t,e))}function po(t,e){t._transitionClasses&&cn(t._transitionClasses,e),to(t,e)}function go(t,e,n){var s=vo(t,e),i=s.type,a=s.timeout,r=s.propCount;if(!i)return n();var o=i===io?oo:co,l=0,c=function(){t.removeEventListener(o,d),n()},d=function(e){e.target===t&&++l>=r&&c()};setTimeout((function(){l0&&(n=io,d=r,u=a.length):e===ao?c>0&&(n=ao,d=c,u=l.length):u=(n=(d=Math.max(r,c))>0?r>c?io:ao:null)?n===io?a.length:l.length:0,{type:n,timeout:d,propCount:u,hasTransform:n===io&&ho.test(s[ro+"Property"])}}function Ao(t,e){for(;t.length1}function _o(t,e){!0!==e.data.show&&yo(e)}var To=On?{create:_o,activate:_o,remove:function(t,e){!0!==t.data.show?bo(t,e):e()}}:{},ko=function(t){var e,n,s={},i=t.modules,a=t.nodeOps;for(e=0;em?p(t,We(n[v+1])?null:n[v+1].elm,n,u,v,s):u>v&&h(e,d,m)}(c,f,g,n,l):Ye(g)?(Ye(t.text)&&a.setTextContent(c,""),p(c,null,g,0,g.length-1,n)):Ye(f)?h(f,0,f.length-1):Ye(t.text)&&a.setTextContent(c,""):t.text!==e.text&&a.setTextContent(c,e.text),Ye(m)&&Ye(d=m.hook)&&Ye(d=d.postpatch)&&d(t,e)}}function y(t,e,n){if(Ke(n)&&Ye(t.parent))t.parent.data.pendingInsert=e;else for(var s=0;s-1,r.selected!==a&&(r.selected=a);else if(Tn(Fo(r),s))return void(t.selectedIndex!==o&&(t.selectedIndex=o));i||(t.selectedIndex=-1)}}function No(t,e){return e.every((function(e){return!Tn(e,t)}))}function Fo(t){return"_value"in t?t._value:t.value}function Bo(t){t.target.composing=!0}function Po(t){t.target.composing&&(t.target.composing=!1,jo(t.target,"input"))}function jo(t,e){var n=document.createEvent("HTMLEvents");n.initEvent(e,!0,!0),t.dispatchEvent(n)}function Io(t){return!t.componentInstance||t.data&&t.data.transition?t:Io(t.componentInstance._vnode)}var Oo={bind:function(t,e,n){var s=e.value,i=(n=Io(n)).data&&n.data.transition,a=t.__vOriginalDisplay="none"===t.style.display?"":t.style.display;s&&i?(n.data.show=!0,yo(n,(function(){t.style.display=a}))):t.style.display=s?a:"none"},update:function(t,e,n){var s=e.value;!s!=!e.oldValue&&((n=Io(n)).data&&n.data.transition?(n.data.show=!0,s?yo(n,(function(){t.style.display=t.__vOriginalDisplay})):bo(n,(function(){t.style.display="none"}))):t.style.display=s?t.__vOriginalDisplay:"none")},unbind:function(t,e,n,s,i){i||(t.style.display=t.__vOriginalDisplay)}},Uo={model:So,show:Oo},Do={name:String,appear:Boolean,css:Boolean,mode:String,type:String,enterClass:String,leaveClass:String,enterToClass:String,leaveToClass:String,enterActiveClass:String,leaveActiveClass:String,appearClass:String,appearActiveClass:String,appearToClass:String,duration:[Number,String,Object]};function $o(t){var e=t&&t.componentOptions;return e&&e.Ctor.options.abstract?$o(ci(e.children)):t}function zo(t){var e={},n=t.$options;for(var s in n.propsData)e[s]=t[s];var i=n._parentListeners;for(var s in i)e[pn(s)]=i[s];return e}function Ro(t,e){if(/\d-keep-alive$/.test(e.tag))return t("keep-alive",{props:e.componentOptions.propsData})}var Mo=function(t){return t.tag||ti(t)},Vo=function(t){return"show"===t.name},Ho={name:"transition",props:Do,abstract:!0,render:function(t){var e=this,n=this.$slots.default;if(n&&(n=n.filter(Mo)).length){var s=this.mode,i=n[0];if(function(t){for(;t=t.parent;)if(t.data.transition)return!0}(this.$vnode))return i;var a=$o(i);if(!a)return i;if(this._leaving)return Ro(t,i);var r="__transition-".concat(this._uid,"-");a.key=null==a.key?a.isComment?r+"comment":r+a.tag:Je(a.key)?0===String(a.key).indexOf(r)?a.key:r+a.key:a.key;var o=(a.data||(a.data={})).transition=zo(this),l=this._vnode,c=$o(l);if(a.data.directives&&a.data.directives.some(Vo)&&(a.data.show=!0),c&&c.data&&!function(t,e){return e.key===t.key&&e.tag===t.tag}(a,c)&&!ti(c)&&(!c.componentInstance||!c.componentInstance._vnode.isComment)){var d=c.data.transition=yn({},o);if("out-in"===s)return this._leaving=!0,Bs(d,"afterLeave",(function(){e._leaving=!1,e.$forceUpdate()})),Ro(t,i);if("in-out"===s){if(ti(a))return l;var u,m=function(){u()};Bs(o,"afterEnter",m),Bs(o,"enterCancelled",m),Bs(d,"delayLeave",(function(t){u=t}))}}return i}}},qo=yn({tag:String,moveClass:String},Do);delete qo.mode;var Zo={props:qo,beforeMount:function(){var t=this,e=this._update;this._update=function(n,s){var i=$i(t);t.__patch__(t._vnode,t.kept,!1,!0),t._vnode=t.kept,i(),e.call(t,n,s)}},render:function(t){for(var e=this.tag||this.$vnode.data.tag||"span",n=Object.create(null),s=this.prevChildren=this.children,i=this.$slots.default||[],a=this.children=[],r=zo(this),o=0;o-1?ar[t]=e.constructor===window.HTMLUnknownElement||e.constructor===window.HTMLElement:ar[t]=/HTMLUnknownElement/.test(e.toString())},yn(ja.options.directives,Uo),yn(ja.options.components,Ko),ja.prototype.__patch__=On?ko:Cn,ja.prototype.$mount=function(t,e){return function(t,e,n){var s;t.$el=e,t.$options.render||(t.$options.render=es),Vi(t,"beforeMount"),s=function(){t._update(t._render(),n)},new Pi(t,s,Cn,{before:function(){t._isMounted&&!t._isDestroyed&&Vi(t,"beforeUpdate")}},!0),n=!1;var i=t._preWatchers;if(i)for(var a=0;a, 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 , 2023","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:\nJohn Molakvoæ , 2023\nAli , 2023\n"},msgstr:["Last-Translator: Ali , 2023\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"]},"{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 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} ملف","تخطَّ {count} ملف","تخطَّ {count} ملف","تخطَّ {count} ملف","تخطَّ {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:"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":"Transifex Bot <>, 2022","Language-Team":"Asturian (https://www.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:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Asturian (https://www.transifex.com/nextcloud/teams/64236/ast/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ast\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:"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":"Pavel Borecki , 2023","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:\nJohn Molakvoæ , 2023\nPavel Borecki , 2023\n"},msgstr:["Last-Translator: Pavel Borecki , 2023\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 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"]},"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":"Simon T, 2023","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:\nJohn Molakvoæ , 2023\nSimon T, 2023\n"},msgstr:["Last-Translator: Simon T, 2023\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"]},Add:{msgid:"Add",msgstr:["Tilføj"]},"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 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"]},"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 , 2023","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:\nJohn Molakvoæ , 2023\nMarkus Eckstein, 2023\nMario Siegmann , 2023\n"},msgstr:["Last-Translator: Mario Siegmann , 2023\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 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 ist 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"]},"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 , 2023","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:\nJohn Molakvoæ , 2023\nMark Ziegler , 2023\nMario Siegmann , 2023\n"},msgstr:["Last-Translator: Mario Siegmann , 2023\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"]},"{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 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 Sie beide Versionen auswählen, 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:["{count} 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"]},"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 , 2023","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:\nJohn Molakvoæ , 2023\nAndi Chandler , 2023\n"},msgstr:["Last-Translator: Andi Chandler , 2023\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"]},Add:{msgid:"Add",msgstr:["Add"]},"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 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:["If you select both versions, the copied file will have a number added to its name."]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Last modified date unknown"]},"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"]},"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":"Next Cloud , 2023","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:\nJohn Molakvoæ , 2023\nFranciscoFJ , 2023\nNext Cloud , 2023\n"},msgstr:["Last-Translator: Next Cloud , 2023\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"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} archivo en conflicto","{count} archivos en conflicto","{count} archivos en conflicto"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} archivo en conflicto en {dirname}","{count} archivos en conflicto en {dirname}","{count} archivos en conflicto 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 uploads":{msgid:"Cancel uploads",msgstr:["Cancelar subidas"]},Continue:{msgid:"Continue",msgstr:["Continuar"]},"estimating time left":{msgid:"estimating time left",msgstr:["estimación del tiempo restante"]},"Existing version":{msgid:"Existing version",msgstr:["Versión 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:["Si selecciona ambas versiones, al archivo copiado se le añadirá un número en el nombre."]},"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"]},"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 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 cancelled":{msgid:"Upload cancelled",msgstr:["Subida cancelada"]},"Upload files":{msgid:"Upload files",msgstr:["Subir archivos"]},"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":"Liviu Milies, 2023","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:\nJohn Molakvoæ , 2023\nJean-Claude Richard , 2023\nClément Saccoccio, 2023\nLiviu Milies, 2023\n"},msgstr:["Last-Translator: Liviu Milies, 2023\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 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, un nombre sera postfixé au nom du fichier."]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Date de dernière modification inconnue"]},New:{msgid:"New",msgstr:["Nou"]},"New version":{msgid:"New version",msgstr:["Nouvelle version"]},paused:{msgid:"paused",msgstr:["en pause"]},"Preview image":{msgid:"Preview image",msgstr:["Image d'aperçu"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Sélectionner toutes les cases"]},"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:["Envoi annulé"]},"Upload files":{msgid:"Upload files",msgstr:["Téléverser des fichiers"]},"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:"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 , 2023","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:\nJohn Molakvoæ , 2023\nNacho , 2023\nMiguel Anxo Bouzada , 2023\n"},msgstr:["Last-Translator: Miguel Anxo Bouzada , 2023\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"]},"{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 uploads":{msgid:"Cancel uploads",msgstr:["Cancelar envíos"]},Continue:{msgid:"Continue",msgstr:["Continuar"]},"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 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 selecciona ambas as versións, o ficheiro copiado terá un número engadido ao seu nome."]},"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"]},"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 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 cancelled":{msgid:"Upload cancelled",msgstr:["Envío cancelado"]},"Upload files":{msgid:"Upload files",msgstr:["Enviar ficheiros"]},"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":"Lep Lep, 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\n"},msgstr:["Last-Translator: Lep Lep, 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"]},Add:{msgid:"Add",msgstr:["Aggiungi"]},"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 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":"Brandon Han, 2022","Language-Team":"Korean (https://www.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:\nBrandon Han, 2022\n"},msgstr:["Last-Translator: Brandon Han, 2022\nLanguage-Team: Korean (https://www.transifex.com/nextcloud/teams/64236/ko/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ko\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:"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":"Ari Selseng , 2022","Language-Team":"Norwegian Bokmål (Norway) (https://www.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:\nAri Selseng , 2022\n"},msgstr:["Last-Translator: Ari Selseng , 2022\nLanguage-Team: Norwegian Bokmål (Norway) (https://www.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"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} sekunder igjen"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["{time} igjen"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["noen få sekunder igjen"]},Add:{msgid:"Add",msgstr:["Legg til"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Avbryt opplastninger"]},"estimating time left":{msgid:"estimating time left",msgstr:["Estimerer tid igjen"]},paused:{msgid:"paused",msgstr:["pauset"]},"Upload files":{msgid:"Upload files",msgstr:["Last opp filer"]}}}}},{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":"M H , 2023","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:\nJohn Molakvoæ , 2023\nM H , 2023\n"},msgstr:["Last-Translator: M H , 2023\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 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 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:["Jeżeli wybierzesz obie wersje to do nazw skopiowanych plików 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"]},"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":"Flávio Veras , 2022","Language-Team":"Portuguese (Brazil) (https://www.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:\nLeonardo Colman , 2022\nJeann Cavalcante , 2022\nFlávio Veras , 2022\n"},msgstr:["Last-Translator: Flávio Veras , 2022\nLanguage-Team: Portuguese (Brazil) (https://www.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"]},"{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:["alguns segundos restantes"]},Add:{msgid:"Add",msgstr:["Adicionar"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Cancelar uploads"]},"estimating time left":{msgid:"estimating time left",msgstr:["estimando tempo restante"]},paused:{msgid:"paused",msgstr:["pausado"]},"Upload files":{msgid:"Upload files",msgstr:["Enviar arquivos"]}}}}},{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":"Александр, 2023","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:\nJohn Molakvoæ , 2023\nMax Smith , 2023\nАлександр, 2023\n"},msgstr:["Last-Translator: Александр, 2023\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"]},"{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:["осталось несколько секунд"]},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} файла","Пропустить {count} файлов","Пропустить {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:"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:["Отпреми фајлове"]},"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, 2023","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:\nJohn Molakvoæ , 2023\nMagnus Höglund, 2023\n"},msgstr:["Last-Translator: Magnus Höglund, 2023\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"]},"{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 uploads":{msgid:"Cancel uploads",msgstr:["Avbryt uppladdningar"]},Continue:{msgid:"Continue",msgstr:["Fortsätt"]},"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 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:["Om du väljer båda versionerna kommer den kopierade filen att få ett nummer tillagt i namnet."]},"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"]},"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 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 cancelled":{msgid:"Upload cancelled",msgstr:["Uppladdningen avbröts"]},"Upload files":{msgid:"Upload files",msgstr:["Ladda upp filer"]},"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 , 2023","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:\nJohn Molakvoæ , 2023\nKaya Zeren , 2023\n"},msgstr:["Last-Translator: Kaya Zeren , 2023\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"]},"{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 uploads":{msgid:"Cancel uploads",msgstr:["Yüklemeleri iptal et"]},Continue:{msgid:"Continue",msgstr:["İlerle"]},"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 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:["İki sürümü de seçerseniz, kopyalanan dosyanın adına bir sayı eklenir."]},"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"]},"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 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 cancelled":{msgid:"Upload cancelled",msgstr:["Yükleme iptal edildi"]},"Upload files":{msgid:"Upload files",msgstr:["Dosyaları yükle"]},"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 , 2023","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:\nJohn Molakvoæ , 2023\nMehi Loki, 2023\nO St , 2023\n"},msgstr:["Last-Translator: O St , 2023\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 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} файлів","Пропустити {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:"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":"blakduk, 2023","Language-Team":"Vietnamese (https://www.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:\nblakduk, 2023\n"},msgstr:["Last-Translator: blakduk, 2023\nLanguage-Team: Vietnamese (https://www.transifex.com/nextcloud/teams/64236/vi/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: vi\nPlural-Forms: nplurals=1; plural=0;\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["Còn {second} giây"]},"{time} left":{msgid:"{time} left",comments:{extracted:"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"]},Add:{msgid:"Add",msgstr:["Thêm"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Huỷ tải lên"]},"estimating time left":{msgid:"estimating time left",msgstr:["Thời gian còn lại dự kiến"]},paused:{msgid:"paused",msgstr:["đã tạm dừng"]},"Upload files":{msgid:"Upload files",msgstr:["Tập tin tải lên"]}}}}},{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, 2023","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:\nJohn Molakvoæ , 2023\nCafé Tango, 2023\n"},msgstr:["Last-Translator: Café Tango, 2023\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:["還剩幾秒"]},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_TW",json:{charset:"utf-8",headers:{"Last-Translator":"黃柏諺 , 2023","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:\nJohn Molakvoæ , 2023\n黃柏諺 , 2023\n"},msgstr:["Last-Translator: 黃柏諺 , 2023\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:["還剩幾秒"]},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:["您必須為每個檔案都至少選取一個版本以繼續。"]}}}}}].map((t=>el.addTranslation(t.locale,t.json)));const nl=el.build(),sl=nl.ngettext.bind(nl),il=nl.gettext.bind(nl),al=ja.extend({name:"UploadPicker",components:{Cancel:Qo,NcActionButton:N.Z,NcActions:F.Z,NcButton:B.Z,NcIconSvgWrapper:P.Z,NcProgressBar:j.Z,Plus:Xo,Upload:tl},props:{accept:{type:Array,default:null},disabled:{type:Boolean,default:!1},multiple:{type:Boolean,default:!1},destination:{type:w.gt,default:void 0},content:{type:Array,default:()=>[]}},data:()=>({addLabel:il("New"),cancelLabel:il("Cancel uploads"),uploadLabel:il("Upload files"),eta:null,timeLeft:"",newFileMenuEntries:[],uploadManager:ll()}),computed:{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((t=>t.status===Re.FAILED)).length},isUploading(){return this.queue?.length>0},isAssembling(){return 0!==this.queue?.filter((t=>t.status===Re.ASSEMBLING)).length},isPaused(){return this.uploadManager.info?.status===He.PAUSED},buttonName(){if(!this.isUploading)return this.addLabel}},watch:{destination(t){this.setDestination(t)},totalQueueSize(t){this.eta=E({min:0,max:t}),this.updateStatus()},uploadedQueueSize(t){this.eta?.report?.(t),this.updateStatus()},isPaused(t){t?this.$emit("paused",this.queue):this.$emit("resumed",this.queue)}},beforeMount(){this.destination&&this.setDestination(this.destination),this.uploadManager.addNotifier(this.onUploadCompletion),Ve.debug("UploadPicker initialised")},methods:{onClick(){this.$refs.input.click()},async onPick(){let t=[...this.$refs.input.files];if(function(t,e){const n=e.map((t=>t.basename));return t.filter((t=>{const e=t instanceof File?t.name:t.basename;return-1!==n.indexOf(e)})).length>0}(t,this.content)){const e=t.filter((t=>this.content.find((e=>e.basename===t.name)))).filter(Boolean),s=t.filter((t=>!e.includes(t)));try{const{selected:i,renamed:a}=await async function(t,e,s){const{default:i}=await n.e(4454).then(n.bind(n,44454));return new Promise(((n,a)=>{const r=new i({propsData:{dirname:t,conflicts:e,content:s}});r.$on("submit",(t=>{n(t),r.$destroy(),r.$el?.parentNode?.removeChild(r.$el)})),r.$on("cancel",(t=>{a(t??new Error("Canceled")),r.$destroy(),r.$el?.parentNode?.removeChild(r.$el)})),r.$mount(),document.body.appendChild(r.$el)}))}(this.destination.basename,e,this.content);t=[...s,...i,...a]}catch{return void(0,L.x2)(il("Upload cancelled"))}}t.forEach((t=>{this.uploadManager.upload(t.name,t).catch((()=>{}))})),this.$refs.form.reset()},onCancel(){this.uploadManager.queue.forEach((t=>{t.cancel()})),this.$refs.form.reset()},updateStatus(){if(this.isPaused)return void(this.timeLeft=il("paused"));const t=Math.round(this.eta.estimate());if(t!==1/0)if(t<10)this.timeLeft=il("a few seconds left");else if(t>60){const e=new Date(0);e.setSeconds(t);const n=e.toISOString().slice(11,19);this.timeLeft=il("{time} left",{time:n})}else this.timeLeft=il("{seconds} seconds left",{seconds:t});else this.timeLeft=il("estimating time left")},setDestination(t){this.destination?(Ve.debug("Destination set",{destination:t}),this.uploadManager.destination=t,this.newFileMenuEntries=(0,w.Ir)(t)):Ve.debug("Invalid destination")},onUploadCompletion(t){t.status===Re.FAILED?this.$emit("failed",t):this.$emit("uploaded",t)}}}),rl=Jo(al,(function(){var t=this,e=t._self._c;return t._self._setupProxy,t.destination?e("form",{ref:"form",staticClass:"upload-picker",class:{"upload-picker--uploading":t.isUploading,"upload-picker--paused":t.isPaused},attrs:{"data-cy-upload-picker":""}},[t.newFileMenuEntries&&0===t.newFileMenuEntries.length?e("NcButton",{attrs:{disabled:t.disabled,"data-cy-upload-picker-add":"",type:"secondary"},on:{click:t.onClick},scopedSlots:t._u([{key:"icon",fn:function(){return[e("Plus",{attrs:{title:"",size:20,decorative:""}})]},proxy:!0}],null,!1,2954875042)},[t._v(" "+t._s(t.buttonName)+" ")]):e("NcActions",{attrs:{"menu-name":t.buttonName,"menu-title":t.addLabel,type:"secondary"},scopedSlots:t._u([{key:"icon",fn:function(){return[e("Plus",{attrs:{title:"",size:20,decorative:""}})]},proxy:!0}],null,!1,2954875042)},[e("NcActionButton",{attrs:{"data-cy-upload-picker-add":"","close-after-click":!0},on:{click:t.onClick},scopedSlots:t._u([{key:"icon",fn:function(){return[e("Upload",{attrs:{title:"",size:20,decorative:""}})]},proxy:!0}],null,!1,3606034491)},[t._v(" "+t._s(t.uploadLabel)+" ")]),t._l(t.newFileMenuEntries,(function(n){return e("NcActionButton",{key:n.id,staticClass:"upload-picker__menu-entry",attrs:{icon:n.iconClass,"close-after-click":!0},on:{click:function(e){return n.handler(t.destination,t.content)}},scopedSlots:t._u([n.iconSvgInline?{key:"icon",fn:function(){return[e("NcIconSvgWrapper",{attrs:{svg:n.iconSvgInline}})]},proxy:!0}:null],null,!0)},[t._v(" "+t._s(n.displayName)+" ")])}))],2),e("div",{staticClass:"upload-picker__progress"},[e("NcProgressBar",{attrs:{error:t.hasFailure,value:t.progress,size:"medium"}}),e("p",[t._v(t._s(t.timeLeft))])],1),t.isUploading?e("NcButton",{staticClass:"upload-picker__cancel",attrs:{type:"tertiary","aria-label":t.cancelLabel,"data-cy-upload-picker-cancel":""},on:{click:t.onCancel},scopedSlots:t._u([{key:"icon",fn:function(){return[e("Cancel",{attrs:{title:"",size:20}})]},proxy:!0}],null,!1,4076886712)}):t._e(),e("input",{directives:[{name:"show",rawName:"v-show",value:!1,expression:"false"}],ref:"input",attrs:{type:"file",accept:t.accept?.join?.(", "),multiple:t.multiple,"data-cy-upload-picker-input":""},on:{change:t.onPick}})],1):t._e()}),[],!1,null,"f09fb109",null,null).exports;let ol=null;function ll(){const t=null!==document.querySelector('input[name="isPublic"][value="1"]');return ol instanceof qe||(ol=new qe(t)),ol}}},a={};function r(t){var e=a[t];if(void 0!==e)return e.exports;var n=a[t]={id:t,loaded:!1,exports:{}};return i[t].call(n.exports,n,n.exports,r),n.loaded=!0,n.exports}r.m=i,e=[],r.O=(t,n,s,i)=>{if(!n){var a=1/0;for(d=0;d=i)&&Object.keys(r.O).every((t=>r.O[t](n[l])))?n.splice(l--,1):(o=!1,i0&&e[d-1][2]>i;d--)e[d]=e[d-1];e[d]=[n,s,i]},r.n=t=>{var e=t&&t.__esModule?()=>t.default:()=>t;return r.d(e,{a:e}),e},r.d=(t,e)=>{for(var n in e)r.o(e,n)&&!r.o(t,n)&&Object.defineProperty(t,n,{enumerable:!0,get:e[n]})},r.f={},r.e=t=>Promise.all(Object.keys(r.f).reduce(((e,n)=>(r.f[n](t,e),e)),[])),r.u=t=>t+"-"+t+".js?v="+{923:"2686613ba9d88601b889",4454:"01ee6c5df96bab2df261",8321:"8442e3d18a58ee1f612a"}[t],r.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(t){if("object"==typeof window)return window}}(),r.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e),n={},s="nextcloud:",r.l=(t,e,i,a)=>{if(n[t])n[t].push(e);else{var o,l;if(void 0!==i)for(var c=document.getElementsByTagName("script"),d=0;d{o.onerror=o.onload=null,clearTimeout(f);var i=n[t];if(delete n[t],o.parentNode&&o.parentNode.removeChild(o),i&&i.forEach((t=>t(s))),e)return e(s)},f=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=t=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},r.nmd=t=>(t.paths=[],t.children||(t.children=[]),t),r.j=2181,(()=>{var t;r.g.importScripts&&(t=r.g.location+"");var e=r.g.document;if(!t&&e&&(e.currentScript&&(t=e.currentScript.src),!t)){var n=e.getElementsByTagName("script");if(n.length)for(var s=n.length-1;s>-1&&!t;)t=n[s--].src}if(!t)throw new Error("Automatic publicPath is not supported in this browser");t=t.replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),r.p=t})(),(()=>{r.b=document.baseURI||self.location.href;var t={2181:0};r.f.j=(e,n)=>{var s=r.o(t,e)?t[e]:void 0;if(0!==s)if(s)n.push(s[2]);else{var i=new Promise(((n,i)=>s=t[e]=[n,i]));n.push(s[2]=i);var a=r.p+r.u(e),o=new Error;r.l(a,(n=>{if(r.o(t,e)&&(0!==(s=t[e])&&(t[e]=void 0),s)){var i=n&&("load"===n.type?"missing":n.type),a=n&&n.target&&n.target.src;o.message="Loading chunk "+e+" failed.\n("+i+": "+a+")",o.name="ChunkLoadError",o.type=i,o.request=a,s[1](o)}}),"chunk-"+e,e)}},r.O.j=e=>0===t[e];var e=(e,n)=>{var s,i,a=n[0],o=n[1],l=n[2],c=0;if(a.some((e=>0!==t[e]))){for(s in o)r.o(o,s)&&(r.m[s]=o[s]);if(l)var d=l(r)}for(e&&e(n);cr(75634)));o=r.O(o)})(); -//# sourceMappingURL=files-main.js.map?v=e93841898aefe77dc2e5 \ No newline at end of file +(()=>{var e,n,s,i={75634:(e,n,s)=>{"use strict";var i={};s.r(i),s.d(i,{exclude:()=>_a,extract:()=>Aa,parse:()=>wa,parseUrl:()=>ba,pick:()=>xa,stringify:()=>ya,stringifyUrl:()=>Ca});var a=s(20144),r=!0;function o(){return"undefined"!=typeof navigator&&"undefined"!=typeof window?window:void 0!==s.g?s.g:{}}a.default.util.warn;const l="function"==typeof Proxy,c="devtools-plugin:setup";let d,u;class m{constructor(t,e){this.target=null,this.targetQueue=[],this.onQueue=[],this.plugin=t,this.hook=e;const n={};if(t.settings)for(const e in t.settings){const s=t.settings[e];n[e]=s.defaultValue}const i=`__vue-devtools-plugin-settings__${t.id}`;let a=Object.assign({},n);try{const t=localStorage.getItem(i),e=JSON.parse(t);Object.assign(a,e)}catch(t){}this.fallbacks={getSettings:()=>a,setSettings(t){try{localStorage.setItem(i,JSON.stringify(t))}catch(t){}a=t},now:()=>{return void 0!==d||("undefined"!=typeof window&&window.performance?(d=!0,u=window.performance):void 0!==s.g&&(null===(t=s.g.perf_hooks)||void 0===t?void 0:t.performance)?(d=!0,u=s.g.perf_hooks.performance):d=!1),d?u.now():Date.now();var t}},e&&e.on("plugin:settings:set",((t,e)=>{t===this.plugin.id&&this.fallbacks.setSettings(e)})),this.proxiedOn=new Proxy({},{get:(t,e)=>this.target?this.target.on[e]:(...t)=>{this.onQueue.push({method:e,args:t})}}),this.proxiedTarget=new Proxy({},{get:(t,e)=>this.target?this.target[e]:"on"===e?this.proxiedOn:Object.keys(this.fallbacks).includes(e)?(...t)=>(this.targetQueue.push({method:e,args:t,resolve:()=>{}}),this.fallbacks[e](...t)):(...t)=>new Promise((n=>{this.targetQueue.push({method:e,args:t,resolve:n})}))})}async setRealTarget(t){this.target=t;for(const t of this.onQueue)this.target.on[t.method](...t.args);for(const t of this.targetQueue)t.resolve(await this.target[t.method](...t.args))}}function f(t,e){const n=t,s=o(),i=o().__VUE_DEVTOOLS_GLOBAL_HOOK__,a=l&&n.enableEarlyProxy;if(!i||!s.__VUE_DEVTOOLS_PLUGIN_API_AVAILABLE__&&a){const t=a?new m(n,i):null;(s.__VUE_DEVTOOLS_PLUGINS__=s.__VUE_DEVTOOLS_PLUGINS__||[]).push({pluginDescriptor:n,setupFn:e,proxy:t}),t&&e(t.proxiedTarget)}else i.emit(c,t,e)}var p=s(25108);let g;const h=t=>g=t,v=Symbol();function A(t){return t&&"object"==typeof t&&"[object Object]"===Object.prototype.toString.call(t)&&"function"!=typeof t.toJSON}var w;!function(t){t.direct="direct",t.patchObject="patch object",t.patchFunction="patch function"}(w||(w={}));const y="undefined"!=typeof window,b="undefined"!=typeof __VUE_PROD_DEVTOOLS__&&__VUE_PROD_DEVTOOLS__&&y,C=(()=>"object"==typeof window&&window.window===window?window:"object"==typeof self&&self.self===self?self:"object"==typeof global&&global.global===global?global:"object"==typeof globalThis?globalThis:{HTMLElement:null})();function x(t,e,n){const s=new XMLHttpRequest;s.open("GET",t),s.responseType="blob",s.onload=function(){L(s.response,e,n)},s.onerror=function(){p.error("could not download file")},s.send()}function _(t){const e=new XMLHttpRequest;e.open("HEAD",t,!1);try{e.send()}catch(t){}return e.status>=200&&e.status<=299}function T(t){try{t.dispatchEvent(new MouseEvent("click"))}catch(e){const n=document.createEvent("MouseEvents");n.initMouseEvent("click",!0,!0,window,0,0,0,80,20,!1,!1,!1,!1,0,null),t.dispatchEvent(n)}}const k="object"==typeof navigator?navigator:{userAgent:""},S=(()=>/Macintosh/.test(k.userAgent)&&/AppleWebKit/.test(k.userAgent)&&!/Safari/.test(k.userAgent))(),L=y?"undefined"!=typeof HTMLAnchorElement&&"download"in HTMLAnchorElement.prototype&&!S?function(t,e="download",n){const s=document.createElement("a");s.download=e,s.rel="noopener","string"==typeof t?(s.href=t,s.origin!==location.origin?_(s.href)?x(t,e,n):(s.target="_blank",T(s)):T(s)):(s.href=URL.createObjectURL(t),setTimeout((function(){URL.revokeObjectURL(s.href)}),4e4),setTimeout((function(){T(s)}),0))}:"msSaveOrOpenBlob"in k?function(t,e="download",n){if("string"==typeof t)if(_(t))x(t,e,n);else{const e=document.createElement("a");e.href=t,e.target="_blank",setTimeout((function(){T(e)}))}else navigator.msSaveOrOpenBlob(function(t,{autoBom:e=!1}={}){return e&&/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(t.type)?new Blob([String.fromCharCode(65279),t],{type:t.type}):t}(t,n),e)}:function(t,e,n,s){if((s=s||open("","_blank"))&&(s.document.title=s.document.body.innerText="downloading..."),"string"==typeof t)return x(t,e,n);const i="application/octet-stream"===t.type,a=/constructor/i.test(String(C.HTMLElement))||"safari"in C,r=/CriOS\/[\d]+/.test(navigator.userAgent);if((r||i&&a||S)&&"undefined"!=typeof FileReader){const e=new FileReader;e.onloadend=function(){let t=e.result;if("string"!=typeof t)throw s=null,new Error("Wrong reader.result type");t=r?t:t.replace(/^data:[^;]*;/,"data:attachment/file;"),s?s.location.href=t:location.assign(t),s=null},e.readAsDataURL(t)}else{const e=URL.createObjectURL(t);s?s.location.assign(e):location.href=e,s=null,setTimeout((function(){URL.revokeObjectURL(e)}),4e4)}}:()=>{};function E(t,e){const n="🍍 "+t;"function"==typeof __VUE_DEVTOOLS_TOAST__?__VUE_DEVTOOLS_TOAST__(n,e):"error"===e?p.error(n):"warn"===e?p.warn(n):p.log(n)}function N(t){return"_a"in t&&"install"in t}function F(){if(!("clipboard"in navigator))return E("Your browser doesn't support the Clipboard API","error"),!0}function B(t){return!!(t instanceof Error&&t.message.toLowerCase().includes("document is not focused"))&&(E('You need to activate the "Emulate a focused page" setting in the "Rendering" panel of devtools.',"warn"),!0)}let P;function j(t,e){for(const n in e){const s=t.state.value[n];s?Object.assign(s,e[n]):t.state.value[n]=e[n]}}function I(t){return{_custom:{display:t}}}const O="🍍 Pinia (root)",U="_root";function D(t){return N(t)?{id:U,label:O}:{id:t.$id,label:t.$id}}function $(t){return t?Array.isArray(t)?t.reduce(((t,e)=>(t.keys.push(e.key),t.operations.push(e.type),t.oldValue[e.key]=e.oldValue,t.newValue[e.key]=e.newValue,t)),{oldValue:{},keys:[],operations:[],newValue:{}}):{operation:I(t.type),key:I(t.key),oldValue:t.oldValue,newValue:t.newValue}:{}}function z(t){switch(t){case w.direct:return"mutation";case w.patchFunction:case w.patchObject:return"$patch";default:return"unknown"}}let R=!0;const M=[],V="pinia:mutations",H="pinia",{assign:q}=Object,Z=t=>"🍍 "+t;function G(t,e){f({id:"dev.esm.pinia",label:"Pinia 🍍",logo:"https://pinia.vuejs.org/logo.svg",packageName:"pinia",homepage:"https://pinia.vuejs.org",componentStateTypes:M,app:t},(n=>{"function"!=typeof n.now&&E("You seem to be using an outdated version of Vue Devtools. Are you still using the Beta release instead of the stable one? You can find the links at https://devtools.vuejs.org/guide/installation.html."),n.addTimelineLayer({id:V,label:"Pinia 🍍",color:15064968}),n.addInspector({id:H,label:"Pinia 🍍",icon:"storage",treeFilterPlaceholder:"Search stores",actions:[{icon:"content_copy",action:()=>{!async function(t){if(!F())try{await navigator.clipboard.writeText(JSON.stringify(t.state.value)),E("Global state copied to clipboard.")}catch(t){if(B(t))return;E("Failed to serialize the state. Check the console for more details.","error"),p.error(t)}}(e)},tooltip:"Serialize and copy the state"},{icon:"content_paste",action:async()=>{await async function(t){if(!F())try{j(t,JSON.parse(await navigator.clipboard.readText())),E("Global state pasted from clipboard.")}catch(t){if(B(t))return;E("Failed to deserialize the state from clipboard. Check the console for more details.","error"),p.error(t)}}(e),n.sendInspectorTree(H),n.sendInspectorState(H)},tooltip:"Replace the state with the content of your clipboard"},{icon:"save",action:()=>{!async function(t){try{L(new Blob([JSON.stringify(t.state.value)],{type:"text/plain;charset=utf-8"}),"pinia-state.json")}catch(t){E("Failed to export the state as JSON. Check the console for more details.","error"),p.error(t)}}(e)},tooltip:"Save the state as a JSON file"},{icon:"folder_open",action:async()=>{await async function(t){try{const e=(P||(P=document.createElement("input"),P.type="file",P.accept=".json"),function(){return new Promise(((t,e)=>{P.onchange=async()=>{const e=P.files;if(!e)return t(null);const n=e.item(0);return t(n?{text:await n.text(),file:n}:null)},P.oncancel=()=>t(null),P.onerror=e,P.click()}))}),n=await e();if(!n)return;const{text:s,file:i}=n;j(t,JSON.parse(s)),E(`Global state imported from "${i.name}".`)}catch(t){E("Failed to import the state from JSON. Check the console for more details.","error"),p.error(t)}}(e),n.sendInspectorTree(H),n.sendInspectorState(H)},tooltip:"Import the state from a JSON file"}],nodeActions:[{icon:"restore",tooltip:'Reset the state (with "$reset")',action:t=>{const n=e._s.get(t);n?"function"!=typeof n.$reset?E(`Cannot reset "${t}" store because it doesn't have a "$reset" method implemented.`,"warn"):(n.$reset(),E(`Store "${t}" reset.`)):E(`Cannot reset "${t}" store because it wasn't found.`,"warn")}}]}),n.on.inspectComponent(((t,e)=>{const n=t.componentInstance&&t.componentInstance.proxy;if(n&&n._pStores){const e=t.componentInstance.proxy._pStores;Object.values(e).forEach((e=>{t.instanceData.state.push({type:Z(e.$id),key:"state",editable:!0,value:e._isOptionsAPI?{_custom:{value:(0,a.toRaw)(e.$state),actions:[{icon:"restore",tooltip:"Reset the state of this store",action:()=>e.$reset()}]}}:Object.keys(e.$state).reduce(((t,n)=>(t[n]=e.$state[n],t)),{})}),e._getters&&e._getters.length&&t.instanceData.state.push({type:Z(e.$id),key:"getters",editable:!1,value:e._getters.reduce(((t,n)=>{try{t[n]=e[n]}catch(e){t[n]=e}return t}),{})})}))}})),n.on.getInspectorTree((n=>{if(n.app===t&&n.inspectorId===H){let t=[e];t=t.concat(Array.from(e._s.values())),n.rootNodes=(n.filter?t.filter((t=>"$id"in t?t.$id.toLowerCase().includes(n.filter.toLowerCase()):O.toLowerCase().includes(n.filter.toLowerCase()))):t).map(D)}})),n.on.getInspectorState((n=>{if(n.app===t&&n.inspectorId===H){const t=n.nodeId===U?e:e._s.get(n.nodeId);if(!t)return;t&&(n.state=function(t){if(N(t)){const e=Array.from(t._s.keys()),n=t._s,s={state:e.map((e=>({editable:!0,key:e,value:t.state.value[e]}))),getters:e.filter((t=>n.get(t)._getters)).map((t=>{const e=n.get(t);return{editable:!1,key:t,value:e._getters.reduce(((t,n)=>(t[n]=e[n],t)),{})}}))};return s}const e={state:Object.keys(t.$state).map((e=>({editable:!0,key:e,value:t.$state[e]})))};return t._getters&&t._getters.length&&(e.getters=t._getters.map((e=>({editable:!1,key:e,value:t[e]})))),t._customProperties.size&&(e.customProperties=Array.from(t._customProperties).map((e=>({editable:!0,key:e,value:t[e]})))),e}(t))}})),n.on.editInspectorState(((n,s)=>{if(n.app===t&&n.inspectorId===H){const t=n.nodeId===U?e:e._s.get(n.nodeId);if(!t)return E(`store "${n.nodeId}" not found`,"error");const{path:s}=n;N(t)?s.unshift("state"):1===s.length&&t._customProperties.has(s[0])&&!(s[0]in t.$state)||s.unshift("$state"),R=!1,n.set(t,s,n.state.value),R=!0}})),n.on.editComponentState((t=>{if(t.type.startsWith("🍍")){const n=t.type.replace(/^🍍\s*/,""),s=e._s.get(n);if(!s)return E(`store "${n}" not found`,"error");const{path:i}=t;if("state"!==i[0])return E(`Invalid path for store "${n}":\n${i}\nOnly state can be modified.`);i[0]="$state",R=!1,t.set(s,i,t.state.value),R=!0}}))}))}let W,Y=0;function K(t,e,n){const s=e.reduce(((e,n)=>(e[n]=(0,a.toRaw)(t)[n],e)),{});for(const e in s)t[e]=function(){const i=Y,a=n?new Proxy(t,{get:(...t)=>(W=i,Reflect.get(...t)),set:(...t)=>(W=i,Reflect.set(...t))}):t;W=i;const r=s[e].apply(a,arguments);return W=void 0,r}}function J({app:t,store:e,options:n}){if(e.$id.startsWith("__hot:"))return;e._isOptionsAPI=!!n.state,K(e,Object.keys(n.actions),e._isOptionsAPI);const s=e._hotUpdate;(0,a.toRaw)(e)._hotUpdate=function(t){s.apply(this,arguments),K(e,Object.keys(t._hmrPayload.actions),!!e._isOptionsAPI)},function(t,e){M.includes(Z(e.$id))||M.push(Z(e.$id)),f({id:"dev.esm.pinia",label:"Pinia 🍍",logo:"https://pinia.vuejs.org/logo.svg",packageName:"pinia",homepage:"https://pinia.vuejs.org",componentStateTypes:M,app:t,settings:{logStoreChanges:{label:"Notify about new/deleted stores",type:"boolean",defaultValue:!0}}},(t=>{const n="function"==typeof t.now?t.now.bind(t):Date.now;e.$onAction((({after:s,onError:i,name:a,args:r})=>{const o=Y++;t.addTimelineEvent({layerId:V,event:{time:n(),title:"🛫 "+a,subtitle:"start",data:{store:I(e.$id),action:I(a),args:r},groupId:o}}),s((s=>{W=void 0,t.addTimelineEvent({layerId:V,event:{time:n(),title:"🛬 "+a,subtitle:"end",data:{store:I(e.$id),action:I(a),args:r,result:s},groupId:o}})})),i((s=>{W=void 0,t.addTimelineEvent({layerId:V,event:{time:n(),logType:"error",title:"💥 "+a,subtitle:"end",data:{store:I(e.$id),action:I(a),args:r,error:s},groupId:o}})}))}),!0),e._customProperties.forEach((s=>{(0,a.watch)((()=>(0,a.unref)(e[s])),((e,i)=>{t.notifyComponentUpdate(),t.sendInspectorState(H),R&&t.addTimelineEvent({layerId:V,event:{time:n(),title:"Change",subtitle:s,data:{newValue:e,oldValue:i},groupId:W}})}),{deep:!0})})),e.$subscribe((({events:s,type:i},a)=>{if(t.notifyComponentUpdate(),t.sendInspectorState(H),!R)return;const r={time:n(),title:z(i),data:q({store:I(e.$id)},$(s)),groupId:W};i===w.patchFunction?r.subtitle="⤵️":i===w.patchObject?r.subtitle="🧩":s&&!Array.isArray(s)&&(r.subtitle=s.type),s&&(r.data["rawEvent(s)"]={_custom:{display:"DebuggerEvent",type:"object",tooltip:"raw DebuggerEvent[]",value:s}}),t.addTimelineEvent({layerId:V,event:r})}),{detached:!0,flush:"sync"});const s=e._hotUpdate;e._hotUpdate=(0,a.markRaw)((i=>{s(i),t.addTimelineEvent({layerId:V,event:{time:n(),title:"🔥 "+e.$id,subtitle:"HMR update",data:{store:I(e.$id),info:I("HMR update")}}}),t.notifyComponentUpdate(),t.sendInspectorTree(H),t.sendInspectorState(H)}));const{$dispose:i}=e;e.$dispose=()=>{i(),t.notifyComponentUpdate(),t.sendInspectorTree(H),t.sendInspectorState(H),t.getSettings().logStoreChanges&&E(`Disposed "${e.$id}" store 🗑`)},t.notifyComponentUpdate(),t.sendInspectorTree(H),t.sendInspectorState(H),t.getSettings().logStoreChanges&&E(`"${e.$id}" store installed 🆕`)}))}(t,e)}const Q=()=>{};function X(t,e,n,s=Q){t.push(e);const i=()=>{const n=t.indexOf(e);n>-1&&(t.splice(n,1),s())};return!n&&(0,a.getCurrentScope)()&&(0,a.onScopeDispose)(i),i}function tt(t,...e){t.slice().forEach((t=>{t(...e)}))}const et=t=>t();function nt(t,e){t instanceof Map&&e instanceof Map&&e.forEach(((e,n)=>t.set(n,e))),t instanceof Set&&e instanceof Set&&e.forEach(t.add,t);for(const n in e){if(!e.hasOwnProperty(n))continue;const s=e[n],i=t[n];A(i)&&A(s)&&t.hasOwnProperty(n)&&!(0,a.isRef)(s)&&!(0,a.isReactive)(s)?t[n]=nt(i,s):t[n]=s}return t}const st=Symbol(),it=new WeakMap,{assign:at}=Object;function rt(t,e,n={},s,i,o){let l;const c=at({actions:{}},n),d={deep:!0};let u,m,f,p=[],g=[];const v=s.state.value[t];o||v||(r?(0,a.set)(s.state.value,t,{}):s.state.value[t]={});const y=(0,a.ref)({});let C;function x(e){let n;u=m=!1,"function"==typeof e?(e(s.state.value[t]),n={type:w.patchFunction,storeId:t,events:f}):(nt(s.state.value[t],e),n={type:w.patchObject,payload:e,storeId:t,events:f});const i=C=Symbol();(0,a.nextTick)().then((()=>{C===i&&(u=!0)})),m=!0,tt(p,n,s.state.value[t])}const _=o?function(){const{state:t}=n,e=t?t():{};this.$patch((t=>{at(t,e)}))}:Q;function T(e,n){return function(){h(s);const i=Array.from(arguments),a=[],r=[];let o;tt(g,{args:i,name:e,store:L,after:function(t){a.push(t)},onError:function(t){r.push(t)}});try{o=n.apply(this&&this.$id===t?this:L,i)}catch(t){throw tt(r,t),t}return o instanceof Promise?o.then((t=>(tt(a,t),t))).catch((t=>(tt(r,t),Promise.reject(t)))):(tt(a,o),o)}}const k=(0,a.markRaw)({actions:{},getters:{},state:[],hotState:y}),S={_p:s,$id:t,$onAction:X.bind(null,g),$patch:x,$reset:_,$subscribe(e,n={}){const i=X(p,e,n.detached,(()=>r())),r=l.run((()=>(0,a.watch)((()=>s.state.value[t]),(s=>{("sync"===n.flush?m:u)&&e({storeId:t,type:w.direct,events:f},s)}),at({},d,n))));return i},$dispose:function(){l.stop(),p=[],g=[],s._s.delete(t)}};r&&(S._r=!1);const L=(0,a.reactive)(b?at({_hmrPayload:k,_customProperties:(0,a.markRaw)(new Set)},S):S);s._s.set(t,L);const E=(s._a&&s._a.runWithContext||et)((()=>s._e.run((()=>(l=(0,a.effectScope)()).run(e)))));for(const e in E){const n=E[e];if((0,a.isRef)(n)&&(F=n,!(0,a.isRef)(F)||!F.effect)||(0,a.isReactive)(n))o||(!v||(N=n,r?it.has(N):A(N)&&N.hasOwnProperty(st))||((0,a.isRef)(n)?n.value=v[e]:nt(n,v[e])),r?(0,a.set)(s.state.value[t],e,n):s.state.value[t][e]=n);else if("function"==typeof n){const t=T(e,n);r?(0,a.set)(E,e,t):E[e]=t,c.actions[e]=n}}var N,F;if(r?Object.keys(E).forEach((t=>{(0,a.set)(L,t,E[t])})):(at(L,E),at((0,a.toRaw)(L),E)),Object.defineProperty(L,"$state",{get:()=>s.state.value[t],set:t=>{x((e=>{at(e,t)}))}}),b){const t={writable:!0,configurable:!0,enumerable:!1};["_p","_hmrPayload","_getters","_customProperties"].forEach((e=>{Object.defineProperty(L,e,at({value:L[e]},t))}))}return r&&(L._r=!0),s._p.forEach((t=>{if(b){const e=l.run((()=>t({store:L,app:s._a,pinia:s,options:c})));Object.keys(e||{}).forEach((t=>L._customProperties.add(t))),at(L,e)}else at(L,l.run((()=>t({store:L,app:s._a,pinia:s,options:c}))))})),v&&o&&n.hydrate&&n.hydrate(L.$state,v),u=!0,m=!0,L}function ot(t,e,n){let s,i;const o="function"==typeof e;function l(t,n){const l=!!(0,a.getCurrentInstance)();return(t=t||(l?(0,a.inject)(v,null):null))&&h(t),(t=g)._s.has(s)||(o?rt(s,e,i,t):function(t,e,n,s){const{state:i,actions:o,getters:l}=e,c=n.state.value[t];let d;d=rt(t,(function(){c||(r?(0,a.set)(n.state.value,t,i?i():{}):n.state.value[t]=i?i():{});const e=(0,a.toRefs)(n.state.value[t]);return at(e,o,Object.keys(l||{}).reduce(((e,s)=>(e[s]=(0,a.markRaw)((0,a.computed)((()=>{h(n);const e=n._s.get(t);if(!r||e._r)return l[s].call(e,e)}))),e)),{}))}),e,n,0,!0)}(s,i,t)),t._s.get(s)}return"string"==typeof t?(s=t,i=o?n:e):(i=t,s=t.id),l.$id=s,l}var lt=s(5656),ct=s(77958),dt=s(69183),ut=s(42515),mt=s(62520),ft=function(t,e){return te?1:0},pt=function(t,e){var n=t.localeCompare(e);return n?n/Math.abs(n):0},gt=/(^0x[\da-fA-F]+$|^([+-]?(?:\d+(?:\.\d*)?|\.\d+)(?:[eE][+-]?\d+)?(?!\.\d+)(?=\D|\s|$))|\d+)/g,ht=/^\s+|\s+$/g,vt=/\s+/g,At=/^[+-]?(?:\d+(?:\.\d*)?|\.\d+)(?:[eE][+-]?\d+)?$/,wt=/(^([\w ]+,?[\w ]+)?[\w ]+,?[\w ]+\d+:\d+(:\d+)?[\w ]?|^\d{1,4}[/-]\d{1,4}[/-]\d{1,4}|^\w+, \w+ \d+, \d{4})/,yt=/^0+[1-9]{1}[0-9]*$/,bt=/[^\x00-\x80]/,Ct=function(t,e){return te?1:0},xt=function(t){return t.replace(vt," ").replace(ht,"")},_t=function(t){if(0!==t.length){var e=Number(t);if(!Number.isNaN(e))return e}},Tt=function(t,e,n){if(At.test(t)&&(!yt.test(t)||0===e||"."!==n[e-1]))return _t(t)||0},kt=function(t,e,n){return{parsedNumber:Tt(t,e,n),normalizedString:xt(t)}},St=function(t){var e=function(t){return t.replace(gt,"\0$1\0").replace(/\0$/,"").replace(/^\0/,"").split("\0")}(t).map(kt);return e},Lt=function(t){return"function"==typeof t},Et=function(t){return Number.isNaN(t)||t instanceof Number&&Number.isNaN(t.valueOf())},Nt=function(t){return null===t},Ft=function(t){return!(null===t||"object"!=typeof t||Array.isArray(t)||t instanceof Number||t instanceof String||t instanceof Boolean||t instanceof Date)},Bt=function(t){return"symbol"==typeof t},Pt=function(t){return void 0===t},jt=function(t){if("string"==typeof t||t instanceof String||("number"==typeof t||t instanceof Number)&&!Et(t)||"boolean"==typeof t||t instanceof Boolean||t instanceof Date){var e=function(t){return"boolean"==typeof t||t instanceof Boolean?Number(t).toString():"number"==typeof t||t instanceof Number?t.toString():t instanceof Date?t.getTime().toString():"string"==typeof t||t instanceof String?t.toLowerCase().replace(ht,""):""}(t),n=function(t){var e=_t(t);return void 0!==e?e:function(t){try{var e=Date.parse(t);return!Number.isNaN(e)&&wt.test(t)?e:void 0}catch(t){return}}(t)}(e);return{parsedNumber:n,chunks:St(n?""+n:e),value:t}}return{isArray:Array.isArray(t),isFunction:Lt(t),isNaN:Et(t),isNull:Nt(t),isObject:Ft(t),isSymbol:Bt(t),isUndefined:Pt(t),value:t}},It=function(t){return"function"==typeof t?t:function(e){if(Array.isArray(e)){var n=Number(t);if(Number.isInteger(n))return e[n]}else if(e&&"object"==typeof e){var s=Object.getOwnPropertyDescriptor(e,t);return null==s?void 0:s.value}return e}};function Ot(t,e,n){if(!t||!Array.isArray(t))return[];var s=function(t){if(!t)return[];var e=Array.isArray(t)?[].concat(t):[t];return e.some((function(t){return"string"!=typeof t&&"number"!=typeof t&&"function"!=typeof t}))?[]:e}(e),i=function(t){if(!t)return[];var e=Array.isArray(t)?[].concat(t):[t];return e.some((function(t){return"asc"!==t&&"desc"!==t&&"function"!=typeof t}))?[]:e}(n);return function(t,e,n){var s=e.length?e.map(It):[function(t){return t}],i=t.map((function(t,e){return{index:e,values:s.map((function(e){return e(t)})).map(jt)}}));return i.sort((function(t,e){return function(t,e,n){for(var s=t.index,i=t.values,a=e.index,r=e.values,o=i.length,l=n.length,c=0;ci||s>i?n<=i?-1:1:0}(f.chunks,p.chunks):function(t,e){return(t.chunks?!e.chunks:e.chunks)?t.chunks?-1:1:(t.isNaN?!e.isNaN:e.isNaN)?t.isNaN?-1:1:(t.isSymbol?!e.isSymbol:e.isSymbol)?t.isSymbol?-1:1:(t.isObject?!e.isObject:e.isObject)?t.isObject?-1:1:(t.isArray?!e.isArray:e.isArray)?t.isArray?-1:1:(t.isFunction?!e.isFunction:e.isFunction)?t.isFunction?-1:1:(t.isNull?!e.isNull:e.isNull)?t.isNull?-1:1:0}(f,p));if(m)return m*("desc"===d?-1:1)}}var f,p;return s-a}(t,e,n)})),i.map((function(e){return function(t,e){return t[e]}(t,e.index)}))}(t,s,i)}var Ut=s(31352),Dt=s(41922),$t=s(9239),zt=s(90207);const Rt={name:"FormatListBulletedSquareIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};var Mt=s(51900);const Vt=(0,Mt.Z)(Rt,(function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon format-list-bulleted-square-icon",attrs:{"aria-hidden":!t.title,"aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M3,4H7V8H3V4M9,5V7H21V5H9M3,10H7V14H3V10M9,11V13H21V11H9M3,16H7V20H3V16M9,17V19H21V17H9"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports;var Ht=s(40874),qt=s(74628),Zt=s(22175),Gt=s(64865),Wt=s(20435);const Yt={name:"ShareVariantIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},Kt=(0,Mt.Z)(Yt,(function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon share-variant-icon",attrs:{"aria-hidden":!t.title,"aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M18,16.08C17.24,16.08 16.56,16.38 16.04,16.85L8.91,12.7C8.96,12.47 9,12.24 9,12C9,11.76 8.96,11.53 8.91,11.3L15.96,7.19C16.5,7.69 17.21,8 18,8A3,3 0 0,0 21,5A3,3 0 0,0 18,2A3,3 0 0,0 15,5C15,5.24 15.04,5.47 15.09,5.7L8.04,9.81C7.5,9.31 6.79,9 6,9A3,3 0 0,0 3,12A3,3 0 0,0 6,15C6.79,15 7.5,14.69 8.04,14.19L15.16,18.34C15.11,18.55 15.08,18.77 15.08,19C15.08,20.61 16.39,21.91 18,21.91C19.61,21.91 20.92,20.61 20.92,19A2.92,2.92 0 0,0 18,16.08Z"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports,Jt={name:"ViewGridIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},Qt=(0,Mt.Z)(Jt,(function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon view-grid-icon",attrs:{"aria-hidden":!t.title,"aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M3,11H11V3H3M3,21H11V13H3M13,21H21V13H13M13,3V11H21V3"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports;var Xt=s(48250);const te=(0,s(17499).IY)().setApp("files").detectUser().build(),ee=new lt.p$({id:"details",displayName:()=>(0,Ut.Iu)("files","Open details"),iconSvgInline:()=>Xt,enabled:t=>1===t.length&&!!t[0]&&!!window?.OCA?.Files?.Sidebar&&((t[0].root?.startsWith("/files/")&&t[0].permissions!==lt.y3.NONE)??!1),async exec(t,e,n){try{return await window.OCA.Files.Sidebar.open(t.path),window.OCP.Files.Router.goToRoute(null,{view:e.id,fileid:t.fileid},{dir:n},!0),null}catch(t){return te.error("Error while opening sidebar",{error:t}),!1}},order:-50}),ne=function(){const t=ot("files",{state:()=>({files:{},roots:{}}),getters:{getNode:t=>e=>t.files[e],getNodes:t=>e=>e.map((e=>t.files[e])).filter(Boolean),getRoot:t=>e=>t.roots[e]},actions:{updateNodes(t){const e=t.reduce(((t,e)=>e.fileid?(t[e.fileid]=e,t):(te.error("Trying to update/set a node without fileid",e),t)),{});a.default.set(this,"files",{...this.files,...e})},deleteNodes(t){t.forEach((t=>{t.fileid&&a.default.delete(this.files,t.fileid)}))},setRoot(t){let{service:e,root:n}=t;a.default.set(this.roots,e,n)},onDeletedNode(t){this.deleteNodes([t])},onCreatedNode(t){this.updateNodes([t])},onUpdatedNode(t){this.updateNodes([t])}}})(...arguments);return t._initialized||((0,dt.Ld)("files:node:created",t.onCreatedNode),(0,dt.Ld)("files:node:deleted",t.onDeletedNode),(0,dt.Ld)("files:node:updated",t.onUpdatedNode),t._initialized=!0),t},se=function(){const t=ne(),e=ot("paths",{state:()=>({paths:{}}),getters:{getPath:t=>(e,n)=>{if(t.paths[e])return t.paths[e][n]}},actions:{addPath(t){this.paths[t.service]||a.default.set(this.paths,t.service,{}),a.default.set(this.paths[t.service],t.path,t.fileid)},onCreatedNode(e){const n=(0,lt.Ti)()?.active?.id||"files";if(e.fileid){if(e.type===lt.Tv.Folder&&this.addPath({service:n,path:e.path,fileid:e.fileid}),"/"===e.dirname){const s=t.getRoot(n);return s._children||a.default.set(s,"_children",[]),void s._children.push(e.fileid)}if(this.paths[n][e.dirname]){const s=this.paths[n][e.dirname],i=t.getNode(s);return te.debug("Path already exists, updating children",{parentFolder:i,node:e}),i?(i._children||a.default.set(i,"_children",[]),void i._children.push(e.fileid)):void te.error("Parent folder not found",{parentId:s})}te.debug("Parent path does not exists, skipping children update",{node:e})}else te.error("Node has no fileid",{node:e})}}})(...arguments);return e._initialized||((0,dt.Ld)("files:node:created",e.onCreatedNode),e._initialized=!0),e},ie=ot("selection",{state:()=>({selected:[],lastSelection:[],lastSelectedIndex:null}),actions:{set(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];a.default.set(this,"selected",[...new Set(t)])},setLastIndex(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;a.default.set(this,"lastSelection",t?this.selected:[]),a.default.set(this,"lastSelectedIndex",t)},reset(){a.default.set(this,"selected",[]),a.default.set(this,"lastSelection",[]),a.default.set(this,"lastSelectedIndex",null)}}});let ae;var re=s(79753),oe=s(43554),le=s(93664);const ce=(0,oe.j)("files","config",{show_hidden:!1,crop_image_previews:!0,sort_favorites_first:!0,grid_view:!1}),de=function(){const t=ot("userconfig",{state:()=>({userConfig:ce}),actions:{onUpdate(t,e){a.default.set(this.userConfig,t,e)},async update(t,e){await le.Z.put((0,re.generateUrl)("/apps/files/api/v1/config/"+t),{value:e}),(0,dt.j8)("files:config:updated",{key:t,value:e})}}})(...arguments);return t._initialized||((0,dt.Ld)("files:config:updated",(function(e){let{key:n,value:s}=e;t.onUpdate(n,s)})),t._initialized=!0),t},ue=(0,oe.j)("files","viewConfigs",{}),me=function(){const t=ot("viewconfig",{state:()=>({viewConfig:ue}),getters:{getConfig:t=>e=>t.viewConfig[e]||{}},actions:{onUpdate(t,e,n){this.viewConfig[t]||a.default.set(this.viewConfig,t,{}),a.default.set(this.viewConfig[t],e,n)},async update(t,e,n){le.Z.put((0,re.generateUrl)(`/apps/files/api/v1/views/${t}/${e}`),{value:n}),(0,dt.j8)("files:viewconfig:updated",{view:t,key:e,value:n})},setSortingBy(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"basename",e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"files";this.update(e,"sorting_mode",t),this.update(e,"sorting_direction","asc")},toggleSortingDirection(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"files";const e="asc"===(this.getConfig(t)||{sorting_direction:"asc"}).sorting_direction?"desc":"asc";this.update(t,"sorting_direction",e)}}}),e=t(...arguments);return e._initialized||((0,dt.Ld)("files:viewconfig:updated",(function(t){let{view:n,key:s,value:i}=t;e.onUpdate(n,s,i)})),e._initialized=!0),e},fe={name:"HomeIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},pe=(0,Mt.Z)(fe,(function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon home-icon",attrs:{"aria-hidden":!t.title,"aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M10,20V14H14V20H19V12H22L12,3L2,12H5V20H10Z"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports;var ge=s(36402),he=s(49231);const ve=a.default.extend({name:"BreadCrumbs",components:{Home:pe,NcBreadcrumbs:he.Z,NcBreadcrumb:ge.Z},props:{path:{type:String,default:"/"}},setup:()=>({filesStore:ne(),pathsStore:se()}),computed:{currentView(){return this.$navigation.active},dirs(){var t;return["/",...this.path.split("/").filter(Boolean).map((t="/",e=>t+=`${e}/`)).map((t=>t.replace(/^(.+)\/$/,"$1")))]},sections(){return this.dirs.map((t=>{const e=this.getFileIdFromPath(t),n={...this.$route,params:{fileid:e},query:{dir:t}};return{dir:t,exact:!0,name:this.getDirDisplayName(t),to:n}}))}},methods:{getNodeFromId(t){return this.filesStore.getNode(t)},getFileIdFromPath(t){return this.pathsStore.getPath(this.currentView?.id,t)},getDirDisplayName(e){if("/"===e)return t("files","Home");const n=this.getFileIdFromPath(e),s=this.getNodeFromId(n);return s?.attributes?.displayName||(0,mt.basename)(e)},onClick(t){t?.query?.dir===this.$route.query.dir&&this.$emit("reload")},ariaLabel(e){return e?.to?.query?.dir===this.$route.query.dir?t("files","Reload current directory"):t("files",'Go to the "{dir}" directory',e)}}});var Ae=s(93379),we=s.n(Ae),ye=s(7795),be=s.n(ye),Ce=s(90569),xe=s.n(Ce),_e=s(3565),Te=s.n(_e),ke=s(19216),Se=s.n(ke),Le=s(44589),Ee=s.n(Le),Ne=s(26057),Fe={};Fe.styleTagTransform=Ee(),Fe.setAttributes=Te(),Fe.insert=xe().bind(null,"head"),Fe.domAPI=be(),Fe.insertStyleElement=Se(),we()(Ne.Z,Fe),Ne.Z&&Ne.Z.locals&&Ne.Z.locals;const Be=(0,Mt.Z)(ve,(function(){var t=this,e=t._self._c;return t._self._setupProxy,e("NcBreadcrumbs",{attrs:{"data-cy-files-content-breadcrumbs":""},scopedSlots:t._u([{key:"actions",fn:function(){return[t._t("actions")]},proxy:!0}],null,!0)},t._l(t.sections,(function(n,s){return e("NcBreadcrumb",t._b({key:n.dir,attrs:{"aria-label":t.ariaLabel(n),title:t.ariaLabel(n)},nativeOn:{click:function(e){return t.onClick(n.to)}},scopedSlots:t._u([0===s?{key:"icon",fn:function(){return[e("Home",{attrs:{size:20}})]},proxy:!0}:null],null,!0)},"NcBreadcrumb",n,!1))})),1)}),[],!1,null,"c33b6662",null).exports;var Pe=s(64024),je=s(52925),Ie=s(80351),Oe=s.n(Ie);const Ue={name:"FileMultipleIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},De=(0,Mt.Z)(Ue,(function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon file-multiple-icon",attrs:{"aria-hidden":!t.title,"aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("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"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports;var $e=s(81456),ze=s(65720);const Re=(0,Mt.Z)(ze.Z,$e.s,$e.x,!1,null,null,null).exports,Me=a.default.extend({name:"DragAndDropPreview",components:{FileMultipleIcon:De,FolderIcon:Re},data:()=>({nodes:[]}),computed:{isSingleNode(){return 1===this.nodes.length},isSingleFolder(){return this.isSingleNode&&this.nodes[0].type===lt.Tv.Folder},name(){return this.size?`${this.summary} – ${this.size}`:this.summary},size(){const t=this.nodes.reduce(((t,e)=>t+e.size||0),0),e=parseInt(t,10)||0;return"number"!=typeof e||e<0?null:(0,lt.sS)(e,!0)},summary(){if(this.isSingleNode){const t=this.nodes[0];return t.attributes?.displayName||t.basename}return(t=>{const e=t.filter((t=>t.type===lt.Tv.File)).length,n=t.filter((t=>t.type===lt.Tv.Folder)).length;return 0===e?(0,Ut.uN)("files","{folderCount} folder","{folderCount} folders",n,{folderCount:n}):0===n?(0,Ut.uN)("files","{fileCount} file","{fileCount} files",e,{fileCount:e}):1===e?(0,Ut.uN)("files","1 file and {folderCount} folder","1 file and {folderCount} folders",n,{folderCount:n}):1===n?(0,Ut.uN)("files","{fileCount} file and 1 folder","{fileCount} files and 1 folder",e,{fileCount:e}):(0,Ut.Iu)("files","{fileCount} files and {folderCount} folders",{fileCount:e,folderCount:n})})(this.nodes)}},methods:{update(t){this.nodes=t,this.$refs.previewImg.replaceChildren(),t.slice(0,3).forEach((t=>{const e=document.querySelector(`[data-cy-files-list-row-fileid="${t.fileid}"] .files-list__row-icon img`);e&&this.$refs.previewImg.appendChild(e.parentNode.cloneNode(!0))})),this.$nextTick((()=>{this.$emit("loaded",this.$el)}))}}}),Ve=Me;var He=s(50262),qe={};qe.styleTagTransform=Ee(),qe.setAttributes=Te(),qe.insert=xe().bind(null,"head"),qe.domAPI=be(),qe.insertStyleElement=Se(),we()(He.Z,qe),He.Z&&He.Z.locals&&He.Z.locals;const Ze=(0,Mt.Z)(Ve,(function(){var t=this,e=t._self._c;return t._self._setupProxy,e("div",{staticClass:"files-list-drag-image"},[e("span",{staticClass:"files-list-drag-image__icon"},[e("span",{ref:"previewImg"}),t._v(" "),t.isSingleFolder?e("FolderIcon"):e("FileMultipleIcon")],1),t._v(" "),e("span",{staticClass:"files-list-drag-image__name"},[t._v(t._s(t.name))])])}),[],!1,null,null,null).exports,Ge=a.default.extend(Ze);let We;const Ye=async t=>new Promise((e=>{We||(We=(new Ge).$mount(),document.body.appendChild(We.$el)),We.update(t),We.$on("loaded",(()=>{e(We.$el),We.$off("loaded")}))}));var Ke=s(51473),Je={};Je.styleTagTransform=Ee(),Je.setAttributes=Te(),Je.insert=xe().bind(null,"head"),Je.domAPI=be(),Je.insertStyleElement=Se(),we()(Ke.Z,Je),Ke.Z&&Ke.Z.locals&&Ke.Z.locals;var Qe=s(51120);const{Axios:Xe,AxiosError:tn,CanceledError:en,isCancel:nn,CancelToken:sn,VERSION:an,all:rn,Cancel:on,isAxiosError:ln,spread:cn,toFormData:dn,AxiosHeaders:un,HttpStatusCode:mn,formToJSON:fn,getAdapter:pn,mergeConfig:gn}=Qe.default;var hn=s(59546),vn=s(96384),An=s(59440);let wn;const yn=()=>(wn||(wn=new An.Z({concurrency:3})),wn);var bn;!function(t){t.MOVE="Move",t.COPY="Copy",t.MOVE_OR_COPY="move-or-copy"}(bn||(bn={}));const Cn=t=>0!=(t.reduce(((t,e)=>Math.min(t,e.permissions)),lt.y3.ALL)<.y3.UPDATE),xn=t=>(t=>t.every((t=>!JSON.parse(t.attributes?.["share-attributes"]??"[]").some((t=>"permissions"===t.scope&&!1===t.enabled&&"download"===t.key)))))(t),_n=t=>Cn(t)?xn(t)?bn.MOVE_OR_COPY:bn.MOVE:bn.COPY,Tn=async function(t,e,n){let s=arguments.length>3&&void 0!==arguments[3]&&arguments[3];if(!e)return;if(e.type!==lt.Tv.Folder)throw new Error((0,Ut.Iu)("files","Destination is not a folder"));if(t.dirname===e.path)throw new Error((0,Ut.Iu)("files","This file/folder is already in that directory"));if(e.path.startsWith(t.path))throw new Error((0,Ut.Iu)("files","You cannot move a file/folder onto itself or into a subfolder of itself"));const i=(0,mt.join)(e.path,t.basename),r=(0,re.generateRemoteUrl)(`dav/files/${(0,ct.ts)()?.uid}${i}`);a.default.set(t,"status",lt.e4.LOADING);const o=yn();return await o.add((async()=>{try{await(0,le.Z)({method:n===bn.COPY?"COPY":"MOVE",url:t.encodedSource,headers:{Destination:encodeURI(r),Overwrite:s?void 0:"F"}}),n===bn.MOVE&&(0,dt.j8)("files:node:deleted",t)}catch(t){if(t instanceof tn){if(412===t?.response?.status)throw new Error((0,Ut.Iu)("files","A file or folder with that name already exists in this folder"));if(423===t?.response?.status)throw new Error((0,Ut.Iu)("files","The files is locked"));if(404===t?.response?.status)throw new Error((0,Ut.Iu)("files","The file does not exist anymore"));if(t.message)throw new Error(t.message)}throw new Error}finally{a.default.set(t,"status",void 0)}}))},kn=async function(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"/",n=arguments.length>2?arguments[2]:void 0;const s=n.map((t=>t.fileid)).filter(Boolean),i=(0,Pe.fn)((0,Ut.Iu)("files","Chose destination")).allowDirectories(!0).setFilter((t=>0!=(t.permissions<.y3.CREATE)&&!s.includes(t.fileid))).setMimeTypeFilter([]).setMultiSelect(!1).startAt(e);return new Promise(((e,s)=>{i.setButtonFactory(((s,i)=>{const a=[],r=(0,mt.basename)(i),o=n.map((t=>t.dirname)),l=n.map((t=>t.path));return o.includes(i)||l.includes(i)||(t!==bn.COPY&&t!==bn.MOVE_OR_COPY||a.push({label:r?(0,Ut.Iu)("files","Copy to {target}",{target:r}):(0,Ut.Iu)("files","Copy"),type:"primary",icon:hn,async callback(t){e({destination:t[0],action:bn.COPY})}}),t!==bn.MOVE&&t!==bn.MOVE_OR_COPY||a.push({label:r?(0,Ut.Iu)("files","Move to {target}",{target:r}):(0,Ut.Iu)("files","Move"),type:t===bn.MOVE?"primary":"secondary",icon:vn,async callback(t){e({destination:t[0],action:bn.MOVE})}})),a})),i.build().pick().catch((()=>{s(new Error((0,Ut.Iu)("files","Cancelled move or copy operation")))}))}))},Sn=(new lt.p$({id:"move-copy",displayName(t){switch(_n(t)){case bn.MOVE:return(0,Ut.Iu)("files","Move");case bn.COPY:return(0,Ut.Iu)("files","Copy");case bn.MOVE_OR_COPY:return(0,Ut.Iu)("files","Move or copy")}},iconSvgInline:()=>vn,enabled:t=>!!t.every((t=>t.root?.startsWith("/files/")))&&t.length>0&&(Cn(t)||xn(t)),async exec(t,e,n){const s=_n([t]),i=await kn(s,n,[t]);try{return await Tn(t,i.destination,i.action),!0}catch(t){return!!(t instanceof Error&&t.message)&&((0,Pe.x2)(t.message),null)}},async execBatch(t,e,n){const s=_n(t),i=await kn(s,n,t),a=t.map((async t=>{try{return await Tn(t,i.destination,i.action),!0}catch(e){return te.error(`Failed to ${i.action} node`,{node:t,error:e}),!1}}));return await Promise.all(a)},order:15}),function(t){return t.split("").reduce((function(t,e){return(t=(t<<5)-t+e.charCodeAt(0))&t}),0)}),Ln=ot("actionsmenu",{state:()=>({opened:null})}),En=ot("dragging",{state:()=>({dragging:[]}),actions:{set(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];a.default.set(this,"dragging",t)},reset(){a.default.set(this,"dragging",[])}}}),Nn=function(){const t=ot("renaming",{state:()=>({renamingNode:void 0,newName:""})})(...arguments);return t._initialized||((0,dt.Ld)("files:node:rename",(function(e){t.renamingNode=e,t.newName=e.basename})),t._initialized=!0),t};var Fn=s(97947);const Bn={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 t=await this.render(this.source,this.currentView);t?this.$el.replaceChildren(t):this.$el.replaceChildren()}}},Pn=(0,Mt.Z)(Bn,(function(){return(0,this._self._c)("span")}),[],!1,null,null,null).exports,jn={name:"ArrowLeftIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},In=(0,Mt.Z)(jn,(function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon arrow-left-icon",attrs:{"aria-hidden":!t.title,"aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M20,11V13H8L13.5,18.5L12.08,19.92L4.16,12L12.08,4.08L13.5,5.5L8,11H20Z"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports,On={name:"ChevronRightIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},Un=(0,Mt.Z)(On,(function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon chevron-right-icon",attrs:{"aria-hidden":!t.title,"aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M8.59,16.58L13.17,12L8.59,7.41L10,6L16,12L10,18L8.59,16.58Z"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports;var Dn=s(72155),$n=s(55212),zn=s(96204);const Rn=(0,lt.Vn)(),Mn=a.default.extend({name:"FileEntryActions",components:{ArrowLeftIcon:In,ChevronRightIcon:Un,CustomElementRender:Pn,NcActionButton:Dn.Z,NcActions:$n.Z,NcActionSeparator:zn.Z,NcIconSvgWrapper:Gt.Z,NcLoadingIcon:Wt.Z},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}},data:()=>({openedSubmenu:null}),computed:{currentDir(){return(this.$route?.query?.dir?.toString()||"/").replace(/^(.+)\/$/,"$1")},currentView(){return this.$navigation.active},isLoading(){return this.source.status===lt.e4.LOADING},enabledActions(){return this.source.attributes.failed?[]:Rn.filter((t=>!t.enabled||t.enabled([this.source],this.currentView))).sort(((t,e)=>(t.order||0)-(e.order||0)))},enabledInlineActions(){return this.filesListWidth<768||this.gridMode?[]:this.enabledActions.filter((t=>t?.inline?.(this.source,this.currentView)))},enabledRenderActions(){return this.gridMode?[]:this.enabledActions.filter((t=>"function"==typeof t.renderInline))},enabledDefaultActions(){return this.enabledActions.filter((t=>!!t?.default))},enabledMenuActions(){if(this.openedSubmenu)return this.enabledInlineActions;const t=[...this.enabledInlineActions,...this.enabledActions.filter((t=>t.default!==lt.DT.HIDDEN&&"function"!=typeof t.renderInline))].filter(((t,e,n)=>e===n.findIndex((e=>e.id===t.id)))),e=t.filter((t=>!t.parent)).map((t=>t.id));return t.filter((t=>!(t.parent&&e.includes(t.parent))))},enabledSubmenuActions(){return this.enabledActions.filter((t=>t.parent)).reduce(((t,e)=>(t[e.parent]||(t[e.parent]=[]),t[e.parent].push(e),t)),{})},openedMenu:{get(){return this.opened},set(t){this.$emit("update:opened",t)}},getBoundariesElement:()=>document.querySelector(".app-content > .files-list"),mountType(){return this.source._attributes["mount-type"]}},methods:{actionDisplayName(t){if((this.gridMode||this.filesListWidth<768&&t.inline)&&"function"==typeof t.title){const e=t.title([this.source],this.currentView);if(e)return e}return t.displayName([this.source],this.currentView)},async onActionClick(t){let e=arguments.length>1&&void 0!==arguments[1]&&arguments[1];if(this.enabledSubmenuActions[t.id])return void(this.openedSubmenu=t);const n=t.displayName([this.source],this.currentView);try{this.$emit("update:loading",t.id),a.default.set(this.source,"status",lt.e4.LOADING);const e=await t.exec(this.source,this.currentView,this.currentDir);if(null==e)return;if(e)return void(0,Pe.s$)((0,Ut.Iu)("files",'"{displayName}" action executed successfully',{displayName:n}));(0,Pe.x2)((0,Ut.Iu)("files",'"{displayName}" action failed',{displayName:n}))}catch(e){te.error("Error while executing action",{action:t,e}),(0,Pe.x2)((0,Ut.Iu)("files",'"{displayName}" action failed',{displayName:n}))}finally{this.$emit("update:loading",""),a.default.set(this.source,"status",void 0),e&&(this.openedSubmenu=null)}},execDefaultAction(t){this.enabledDefaultActions.length>0&&(t.preventDefault(),t.stopPropagation(),this.enabledDefaultActions[0].exec(this.source,this.currentView,this.currentDir))},isMenu(t){return this.enabledSubmenuActions[t]?.length>0},t:Ut.Iu}}),Vn=Mn;var Hn=s(21367),qn={};qn.styleTagTransform=Ee(),qn.setAttributes=Te(),qn.insert=xe().bind(null,"head"),qn.domAPI=be(),qn.insertStyleElement=Se(),we()(Hn.Z,qn),Hn.Z&&Hn.Z.locals&&Hn.Z.locals;var Zn=(0,Mt.Z)(Vn,(function(){var t=this,e=t._self._c;return t._self._setupProxy,e("td",{staticClass:"files-list__row-actions",attrs:{"data-cy-files-list-row-actions":""}},[t._l(t.enabledRenderActions,(function(n){return e("CustomElementRender",{key:n.id,staticClass:"files-list__row-action--inline",class:"files-list__row-action-"+n.id,attrs:{"current-view":t.currentView,render:n.renderInline,source:t.source}})})),t._v(" "),e("NcActions",{ref:"actionsMenu",attrs:{"boundaries-element":t.getBoundariesElement,container:t.getBoundariesElement,disabled:t.isLoading||""!==t.loading,"force-name":!0,type:"tertiary","force-menu":0===t.enabledInlineActions.length,inline:t.enabledInlineActions.length,open:t.openedMenu},on:{"update:open":function(e){t.openedMenu=e},close:function(e){t.openedSubmenu=null}}},[t._l(t.enabledMenuActions,(function(n){return e("NcActionButton",{key:n.id,class:{[`files-list__row-action-${n.id}`]:!0,"files-list__row-action--menu":t.isMenu(n.id)},attrs:{"close-after-click":!t.isMenu(n.id),"data-cy-files-list-row-action":n.id,"is-menu":t.isMenu(n.id),title:n.title?.([t.source],t.currentView)},on:{click:function(e){return t.onActionClick(n)}},scopedSlots:t._u([{key:"icon",fn:function(){return[t.loading===n.id?e("NcLoadingIcon",{attrs:{size:18}}):e("NcIconSvgWrapper",{attrs:{svg:n.iconSvgInline([t.source],t.currentView)}})]},proxy:!0}],null,!0)},[t._v("\n\t\t\t"+t._s("shared"===t.mountType&&"sharing-status"===n.id?"":t.actionDisplayName(n))+"\n\t\t")])})),t._v(" "),t.openedSubmenu&&t.enabledSubmenuActions[t.openedSubmenu?.id]?[e("NcActionButton",{staticClass:"files-list__row-action-back",on:{click:function(e){t.openedSubmenu=null}},scopedSlots:t._u([{key:"icon",fn:function(){return[e("ArrowLeftIcon")]},proxy:!0}],null,!1,3001860362)},[t._v("\n\t\t\t\t"+t._s(t.actionDisplayName(t.openedSubmenu))+"\n\t\t\t")]),t._v(" "),e("NcActionSeparator"),t._v(" "),t._l(t.enabledSubmenuActions[t.openedSubmenu?.id],(function(n){return e("NcActionButton",{key:n.id,staticClass:"files-list__row-action--submenu",class:`files-list__row-action-${n.id}`,attrs:{"close-after-click":!1,"data-cy-files-list-row-action":n.id,title:n.title?.([t.source],t.currentView)},on:{click:function(e){return t.onActionClick(n)}},scopedSlots:t._u([{key:"icon",fn:function(){return[t.loading===n.id?e("NcLoadingIcon",{attrs:{size:18}}):e("NcIconSvgWrapper",{attrs:{svg:n.iconSvgInline([t.source],t.currentView)}})]},proxy:!0}],null,!0)},[t._v("\n\t\t\t\t"+t._s(t.actionDisplayName(n))+"\n\t\t\t")])}))]:t._e()],2)],2)}),[],!1,null,"6dd8d639",null);const Gn=Zn.exports;var Wn=s(34741);const Yn=a.default.extend({name:"FileEntryCheckbox",components:{NcCheckboxRadioSwitch:Wn.Z,NcLoadingIcon:Wt.Z},props:{displayName:{type:String,required:!0},fileid:{type:String,required:!0},isLoading:{type:Boolean,default:!1},nodes:{type:Array,required:!0}},setup(){const t=ie(),e=function(){const t=ot("keyboard",{state:()=>({altKey:!1,ctrlKey:!1,metaKey:!1,shiftKey:!1}),actions:{onEvent(t){t||(t=window.event),a.default.set(this,"altKey",!!t.altKey),a.default.set(this,"ctrlKey",!!t.ctrlKey),a.default.set(this,"metaKey",!!t.metaKey),a.default.set(this,"shiftKey",!!t.shiftKey)}}})(...arguments);return t._initialized||(window.addEventListener("keydown",t.onEvent),window.addEventListener("keyup",t.onEvent),window.addEventListener("mousemove",t.onEvent),t._initialized=!0),t}();return{keyboardStore:e,selectionStore:t}},computed:{selectedFiles(){return this.selectionStore.selected},isSelected(){return this.selectedFiles.includes(this.fileid)},index(){return this.nodes.findIndex((t=>t.fileid===parseInt(this.fileid)))}},methods:{onSelectionChange(t){const e=this.index,n=this.selectionStore.lastSelectedIndex;if(this.keyboardStore?.shiftKey&&null!==n){const t=this.selectedFiles.includes(this.fileid),s=Math.min(e,n),i=Math.max(n,e),a=this.selectionStore.lastSelection,r=this.nodes.map((t=>t.fileid?.toString?.())).slice(s,i+1),o=[...a,...r].filter((e=>!t||e!==this.fileid));return te.debug("Shift key pressed, selecting all files in between",{start:s,end:i,filesToSelect:r,isAlreadySelected:t}),void this.selectionStore.set(o)}const s=t?[...this.selectedFiles,this.fileid]:this.selectedFiles.filter((t=>t!==this.fileid));te.debug("Updating selection",{selection:s}),this.selectionStore.set(s),this.selectionStore.setLastIndex(e)},t:Ut.Iu}}),Kn=(0,Mt.Z)(Yn,(function(){var t=this,e=t._self._c;return t._self._setupProxy,e("td",{staticClass:"files-list__row-checkbox"},[t.isLoading?e("NcLoadingIcon"):e("NcCheckboxRadioSwitch",{attrs:{"aria-label":t.t("files","Select the row for {displayName}",{displayName:t.displayName}),checked:t.isSelected},on:{"update:checked":t.onSelectionChange}})],1)}),[],!1,null,null,null).exports;var Jn=s(49368);const Qn=(0,oe.j)("files","forbiddenCharacters",""),Xn=a.default.extend({name:"FileEntryName",components:{NcTextField:Jn.Z},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:()=>({renamingStore:Nn()}),computed:{isRenaming(){return this.renamingStore.renamingNode===this.source},isRenamingSmallScreen(){return this.isRenaming&&this.filesListWidth<512},newName:{get(){return this.renamingStore.newName},set(t){this.renamingStore.newName=t}},renameLabel(){return{[lt.Tv.File]:(0,Ut.Iu)("files","File name"),[lt.Tv.Folder]:(0,Ut.Iu)("files","Folder name")}[this.source.type]},linkTo(){if(this.source.attributes.failed)return{title:(0,Ut.Iu)("files","This node is unavailable"),is:"span"};const t=this.$parent?.$refs?.actions?.enabledDefaultActions;return t?.length>0?{title:t[0].displayName([this.source],this.currentView),role:"button"}:this.source?.permissions<.y3.READ?{download:this.source.basename,href:this.source.source,title:(0,Ut.Iu)("files","Download file {name}",{name:this.displayName})}:{is:"span"}}},watch:{isRenaming(t){t&&this.startRenaming()}},methods:{checkInputValidity(t){const e=t.target,n=this.newName.trim?.()||"";te.debug("Checking input validity",{newName:n});try{this.isFileNameValid(n),e.setCustomValidity(""),e.title=""}catch(t){e.setCustomValidity(t.message),e.title=t.message}finally{e.reportValidity()}},isFileNameValid(t){const e=t.trim();if("."===e||".."===e)throw new Error((0,Ut.Iu)("files",'"{name}" is an invalid file name.',{name:t}));if(0===e.length)throw new Error((0,Ut.Iu)("files","File name cannot be empty."));if(-1!==e.indexOf("/"))throw new Error((0,Ut.Iu)("files",'"/" is not allowed inside a file name.'));if(e.match(OC.config.blacklist_files_regex))throw new Error((0,Ut.Iu)("files",'"{name}" is not an allowed filetype.',{name:t}));if(this.checkIfNodeExists(t))throw new Error((0,Ut.Iu)("files","{newName} already exists.",{newName:t}));return e.split("").forEach((t=>{if(-1!==Qn.indexOf(t))throw new Error(this.t("files",'"{char}" is not allowed inside a file name.',{char:t}))})),!0},checkIfNodeExists(t){return this.nodes.find((e=>e.basename===t&&e!==this.source))},startRenaming(){this.$nextTick((()=>{const t=(this.source.extension||"").split("").length,e=this.source.basename.split("").length-t,n=this.$refs.renameInput?.$refs?.inputField?.$refs?.input;n?(n.setSelectionRange(0,e),n.focus(),n.dispatchEvent(new Event("keyup"))):te.error("Could not find the rename input")}))},stopRenaming(){this.isRenaming&&this.renamingStore.$reset()},async onRename(){const t=this.source.basename,e=this.source.encodedSource,n=this.newName.trim?.()||"";if(""!==n)if(t!==n)if(this.checkIfNodeExists(n))(0,Pe.x2)((0,Ut.Iu)("files","Another entry with the same name already exists"));else{this.loading="renaming",a.default.set(this.source,"status",lt.e4.LOADING),this.source.rename(n),te.debug("Moving file to",{destination:this.source.encodedSource,oldEncodedSource:e});try{await(0,le.Z)({method:"MOVE",url:e,headers:{Destination:this.source.encodedSource,Overwrite:"F"}}),(0,dt.j8)("files:node:updated",this.source),(0,dt.j8)("files:node:renamed",this.source),(0,Pe.s$)((0,Ut.Iu)("files",'Renamed "{oldName}" to "{newName}"',{oldName:t,newName:n})),this.stopRenaming(),this.$nextTick((()=>{this.$refs.basename.focus()}))}catch(e){if(te.error("Error while renaming file",{error:e}),this.source.rename(t),this.$refs.renameInput.focus(),404===e?.response?.status)return void(0,Pe.x2)((0,Ut.Iu)("files",'Could not rename "{oldName}", it does not exist any more',{oldName:t}));if(412===e?.response?.status)return void(0,Pe.x2)((0,Ut.Iu)("files",'The name "{newName}" is already used in the folder "{dir}". Please choose a different name.',{newName:n,dir:this.currentDir}));(0,Pe.x2)((0,Ut.Iu)("files",'Could not rename "{oldName}"',{oldName:t}))}finally{this.loading=!1,a.default.set(this.source,"status",void 0)}}else this.stopRenaming();else(0,Pe.x2)((0,Ut.Iu)("files","Name cannot be empty"))},t:Ut.Iu}}),ts=(0,Mt.Z)(Xn,(function(){var t=this,e=t._self._c;return t._self._setupProxy,t.isRenaming?e("form",{directives:[{name:"on-click-outside",rawName:"v-on-click-outside",value:t.stopRenaming,expression:"stopRenaming"}],staticClass:"files-list__row-rename",attrs:{"aria-label":t.t("files","Rename file")},on:{submit:function(e){return e.preventDefault(),e.stopPropagation(),t.onRename.apply(null,arguments)}}},[e("NcTextField",{ref:"renameInput",attrs:{label:t.renameLabel,autofocus:!0,minlength:1,required:!0,value:t.newName,enterkeyhint:"done"},on:{"update:value":function(e){t.newName=e},keyup:[t.checkInputValidity,function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"esc",27,e.key,["Esc","Escape"])?null:t.stopRenaming.apply(null,arguments)}]}})],1):e("a",t._b({ref:"basename",staticClass:"files-list__row-name-link",attrs:{"aria-hidden":t.isRenaming,"data-cy-files-list-row-name-link":""},on:{click:function(e){return t.$emit("click",e)}}},"a",t.linkTo,!1),[e("span",{staticClass:"files-list__row-name-text"},[e("span",{staticClass:"files-list__row-name-",domProps:{textContent:t._s(t.displayName)}}),t._v(" "),e("span",{staticClass:"files-list__row-name-ext",domProps:{textContent:t._s(t.extension)}})])])}),[],!1,null,null,null).exports;var es=s(60186);const ns={name:"AccountPlusIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},ss=(0,Mt.Z)(ns,(function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon account-plus-icon",attrs:{"aria-hidden":!t.title,"aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("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"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports,is={name:"FileIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},as=(0,Mt.Z)(is,(function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon file-icon",attrs:{"aria-hidden":!t.title,"aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("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"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports,rs={name:"FolderOpenIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},os=(0,Mt.Z)(rs,(function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon folder-open-icon",attrs:{"aria-hidden":!t.title,"aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("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"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports,ls={name:"KeyIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},cs=(0,Mt.Z)(ls,(function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon key-icon",attrs:{"aria-hidden":!t.title,"aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("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"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports,ds={name:"NetworkIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},us=(0,Mt.Z)(ds,(function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon network-icon",attrs:{"aria-hidden":!t.title,"aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("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"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports,ms={name:"TagIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},fs=(0,Mt.Z)(ms,(function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon tag-icon",attrs:{"aria-hidden":!t.title,"aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("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"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports,ps={name:"PlayCircleIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},gs=(0,Mt.Z)(ps,(function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon play-circle-icon",attrs:{"aria-hidden":!t.title,"aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("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"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports,hs={name:"CollectivesIcon",props:{title:{type:String,default:""},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},vs=(0,Mt.Z)(hs,(function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon collectives-icon",attrs:{"aria-hidden":!t.title,"aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 16 16"}},[e("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"}}),t._v(" "),e("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"}}),t._v(" "),e("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"}}),t._v(" "),e("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"}}),t._v(" "),e("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"}}),t._v(" "),e("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,As=(0,a.defineComponent)({name:"FavoriteIcon",components:{NcIconSvgWrapper:Gt.Z},data:()=>({StarSvg:''}),async mounted(){await this.$nextTick();const t=this.$el.querySelector("svg");t?.setAttribute?.("viewBox","-4 -4 30 30")},methods:{t:Ut.Iu}});var ws=s(99292),ys={};ys.styleTagTransform=Ee(),ys.setAttributes=Te(),ys.insert=xe().bind(null,"head"),ys.domAPI=be(),ys.insertStyleElement=Se(),we()(ws.Z,ys),ws.Z&&ws.Z.locals&&ws.Z.locals;const bs=(0,Mt.Z)(As,(function(){var t=this,e=t._self._c;return t._self._setupProxy,e("NcIconSvgWrapper",{staticClass:"favorite-marker-icon",attrs:{name:t.t("files","Favorite"),svg:t.StarSvg}})}),[],!1,null,"04e52abc",null).exports,Cs=a.default.extend({name:"FileEntryPreview",components:{AccountGroupIcon:es.Z,AccountPlusIcon:ss,CollectivesIcon:vs,FavoriteIcon:bs,FileIcon:as,FolderIcon:Re,FolderOpenIcon:os,KeyIcon:cs,LinkIcon:zt.Z,NetworkIcon:us,TagIcon:fs},props:{source:{type:Object,required:!0},dragover:{type:Boolean,default:!1},gridMode:{type:Boolean,default:!1}},setup:()=>({userConfigStore:de()}),data:()=>({backgroundFailed:void 0}),computed:{fileid(){return this.source?.fileid?.toString?.()},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===lt.Tv.Folder)return null;if(!0===this.backgroundFailed)return null;try{const t=this.source.attributes.previewUrl||(0,re.generateUrl)("/core/preview?fileId={fileid}",{fileid:this.fileid}),e=new URL(window.location.origin+t);return e.searchParams.set("x",this.gridMode?"128":"32"),e.searchParams.set("y",this.gridMode?"128":"32"),e.searchParams.set("mimeFallback","true"),e.searchParams.set("a",!0===this.cropPreviews?"0":"1"),e.href}catch(t){return null}},fileOverlay(){return void 0!==this.source.attributes["metadata-files-live-photo"]?gs:null},folderOverlay(){if(this.source.type!==lt.Tv.Folder)return null;if(1===this.source?.attributes?.["is-encrypted"])return cs;if(this.source?.attributes?.["is-tag"])return fs;const t=Object.values(this.source?.attributes?.["share-types"]||{}).flat();if(t.some((t=>t===Dt.D.SHARE_TYPE_LINK||t===Dt.D.SHARE_TYPE_EMAIL)))return zt.Z;if(t.length>0)return ss;switch(this.source?.attributes?.["mount-type"]){case"external":case"external-session":return us;case"group":return es.Z;case"collective":return vs}return null}},methods:{reset(){!0===this.backgroundFailed&&this.$refs.previewImg&&(this.$refs.previewImg.src=""),this.backgroundFailed=void 0},t:Ut.Iu}}),xs=(0,Mt.Z)(Cs,(function(){var t=this,e=t._self._c;return t._self._setupProxy,e("span",{staticClass:"files-list__row-icon"},["folder"===t.source.type?[t.dragover?t._m(0):[t._m(1),t._v(" "),t.folderOverlay?e(t.folderOverlay,{tag:"OverlayIcon",staticClass:"files-list__row-icon-overlay"}):t._e()]]:t.previewUrl&&!0!==t.backgroundFailed?e("img",{ref:"previewImg",staticClass:"files-list__row-icon-preview",class:{"files-list__row-icon-preview--loaded":!1===t.backgroundFailed},attrs:{alt:"",loading:"lazy",src:t.previewUrl},on:{error:function(e){t.backgroundFailed=!0},load:function(e){t.backgroundFailed=!1}}}):t._m(2),t._v(" "),t.isFavorite?e("span",{staticClass:"files-list__row-icon-favorite"},[t._m(3)],1):t._e(),t._v(" "),t.fileOverlay?e(t.fileOverlay,{tag:"OverlayIcon",staticClass:"files-list__row-icon-overlay files-list__row-icon-overlay--file"}):t._e()],2)}),[function(){var t=this._self._c;return this._self._setupProxy,t("FolderOpenIcon")},function(){var t=this._self._c;return this._self._setupProxy,t("FolderIcon")},function(){var t=this._self._c;return this._self._setupProxy,t("FileIcon")},function(){var t=this._self._c;return this._self._setupProxy,t("FavoriteIcon")}],!1,null,null,null).exports;a.default.directive("onClickOutside",je.hs);const _s=(0,a.defineComponent)({name:"FileEntry",components:{CustomElementRender:Pn,FileEntryActions:Gn,FileEntryCheckbox:Kn,FileEntryName:ts,FileEntryPreview:xs,NcDateTime:Fn.Z},props:{isMtimeAvailable:{type:Boolean,default:!1},isSizeAvailable:{type:Boolean,default:!1},source:{type:[lt.gt,lt.$B,lt.NB],required:!0},nodes:{type:Array,required:!0},filesListWidth:{type:Number,default:0},compact:{type:Boolean,default:!1}},setup:()=>({actionsMenuStore:Ln(),draggingStore:En(),filesStore:ne(),renamingStore:Nn(),selectionStore:ie()}),data:()=>({loading:"",dragover:!1}),computed:{rowListeners(){return{...this.isRenaming?{}:{dragstart:this.onDragStart,dragover:this.onDragOver},contextmenu:this.onRightClick,dragleave:this.onDragLeave,dragend:this.onDragEnd,drop:this.onDrop}},currentView(){return this.$navigation.active},columns(){return this.filesListWidth<512||this.compact?[]:this.currentView?.columns||[]},currentDir(){return(this.$route?.query?.dir?.toString()||"/").replace(/^(.+)\/$/,"$1")},currentFileId(){return this.$route.params?.fileid||this.$route.query?.fileid||null},fileid(){return this.source?.fileid?.toString?.()},uniqueId(){return Sn(this.source.source)},isLoading(){return this.source.status===lt.e4.LOADING},extension(){return this.source.attributes?.displayName?(0,mt.extname)(this.source.attributes.displayName):this.source.extension||""},displayName(){const t=this.extension,e=this.source.attributes.displayName||this.source.basename;return t?e.slice(0,0-t.length):e},size(){const t=parseInt(this.source.size,10)||0;return"number"!=typeof t||t<0?(0,Ut.Iu)("files","Pending"):(0,lt.sS)(t,!0)},sizeOpacity(){const t=parseInt(this.source.size,10)||0;return!t||t<0?{}:{color:`color-mix(in srgb, var(--color-main-text) ${Math.round(Math.min(100,100*Math.pow(this.source.size/10485760,2)))}%, var(--color-text-maxcontrast))`}},mtimeOpacity(){const t=26784e5,e=this.source.mtime?.getTime?.();if(!e)return{};const n=Math.round(Math.min(100,100*(t-(Date.now()-e))/t));return n<0?{}:{color:`color-mix(in srgb, var(--color-main-text) ${n}%, var(--color-text-maxcontrast))`}},mtimeTitle(){return this.source.mtime?Oe()(this.source.mtime).format("LLL"):""},draggingFiles(){return this.draggingStore.dragging},selectedFiles(){return this.selectionStore.selected},isSelected(){return this.selectedFiles.includes(this.fileid)},isRenaming(){return this.renamingStore.renamingNode===this.source},isRenamingSmallScreen(){return this.isRenaming&&this.filesListWidth<512},isActive(){return this.fileid===this.currentFileId?.toString?.()},canDrag(){if(this.isRenaming)return!1;const t=t=>0!=(t?.permissions<.y3.UPDATE);return this.selectedFiles.length>0?this.selectedFiles.map((t=>this.filesStore.getNode(t))).every(t):t(this.source)},canDrop(){return this.source.type===lt.Tv.Folder&&!this.draggingFiles.includes(this.fileid)&&0!=(this.source.permissions<.y3.CREATE)},openedMenu:{get(){return this.actionsMenuStore.opened===this.uniqueId},set(t){this.actionsMenuStore.opened=t?this.uniqueId:null}}},watch:{source(){this.resetState()}},beforeDestroy(){this.resetState()},methods:{resetState(){this.loading="",this.$refs.preview.reset(),this.openedMenu=!1},onRightClick(t){if(this.openedMenu)return;const e=this.selectedFiles.length>1;this.actionsMenuStore.opened=this.isSelected&&e?"global":this.uniqueId,t.preventDefault(),t.stopPropagation()},execDefaultAction(){this.$refs.actions.execDefaultAction(...arguments)},openDetailsIfAvailable(t){t.preventDefault(),t.stopPropagation(),ee?.enabled?.([this.source],this.currentView)&&ee.exec(this.source,this.currentView,this.currentDir)},onDragOver(t){this.dragover=this.canDrop,this.canDrop?t.ctrlKey?t.dataTransfer.dropEffect="copy":t.dataTransfer.dropEffect="move":t.dataTransfer.dropEffect="none"},onDragLeave(t){const e=t.currentTarget;e?.contains(t.relatedTarget)||(this.dragover=!1)},async onDragStart(t){if(t.stopPropagation(),!this.canDrag)return t.preventDefault(),void t.stopPropagation();te.debug("Drag started"),this.renamingStore.$reset(),this.selectedFiles.includes(this.fileid)?this.draggingStore.set(this.selectedFiles):this.draggingStore.set([this.fileid]);const e=this.draggingStore.dragging.map((t=>this.filesStore.getNode(t))),n=await Ye(e);t.dataTransfer?.setDragImage(n,-10,-10)},onDragEnd(){this.draggingStore.reset(),this.dragover=!1,te.debug("Drag ended")},async onDrop(t){if(!this.draggingFiles&&!t.dataTransfer?.files?.length)return;if(t.preventDefault(),t.stopPropagation(),!this.canDrop||0!==t.button)return;const e=t.ctrlKey;if(this.dragover=!1,te.debug("Dropped",{event:t,selection:this.draggingFiles}),t.dataTransfer?.files?.length>0){const e=(0,$t.g)();return t.dataTransfer.files.forEach((t=>{e.upload((0,mt.join)(this.source.path,t.name),t)})),void te.debug(`Uploading files to ${this.source.path}`)}this.draggingFiles.map((t=>this.filesStore.getNode(t))).forEach((async t=>{a.default.set(t,"status",lt.e4.LOADING);try{await Tn(t,this.source,e?bn.COPY:bn.MOVE)}catch(n){te.error("Error while moving file",{error:n}),e?(0,Pe.x2)((0,Ut.Iu)("files","Could not copy {file}. {message}",{file:t.basename,message:n.message||""})):(0,Pe.x2)((0,Ut.Iu)("files","Could not move {file}. {message}",{file:t.basename,message:n.message||""}))}finally{a.default.set(t,"status",void 0)}})),this.draggingFiles.some((t=>this.selectedFiles.includes(t)))&&(te.debug("Dropped selection, resetting select store..."),this.selectionStore.reset())},t:Ut.Iu,formatFileSize:lt.sS}}),Ts=_s,ks=(0,Mt.Z)(Ts,(function(){var t=this,e=t._self._c;return t._self._setupProxy,e("tr",t._g({staticClass:"files-list__row",class:{"files-list__row--dragover":t.dragover,"files-list__row--loading":t.isLoading},attrs:{"data-cy-files-list-row":"","data-cy-files-list-row-fileid":t.fileid,"data-cy-files-list-row-name":t.source.basename,draggable:t.canDrag}},t.rowListeners),[t.source.attributes.failed?e("span",{staticClass:"files-list__row--failed"}):t._e(),t._v(" "),e("FileEntryCheckbox",{attrs:{"display-name":t.displayName,fileid:t.fileid,"is-loading":t.isLoading,nodes:t.nodes}}),t._v(" "),e("td",{staticClass:"files-list__row-name",attrs:{"data-cy-files-list-row-name":""}},[e("FileEntryPreview",{ref:"preview",attrs:{source:t.source,dragover:t.dragover},nativeOn:{click:function(e){return t.execDefaultAction.apply(null,arguments)}}}),t._v(" "),e("FileEntryName",{ref:"name",attrs:{"display-name":t.displayName,extension:t.extension,"files-list-width":t.filesListWidth,nodes:t.nodes,source:t.source},on:{click:t.execDefaultAction}})],1),t._v(" "),e("FileEntryActions",{directives:[{name:"show",rawName:"v-show",value:!t.isRenamingSmallScreen,expression:"!isRenamingSmallScreen"}],ref:"actions",class:`files-list__row-actions-${t.uniqueId}`,attrs:{"files-list-width":t.filesListWidth,loading:t.loading,opened:t.openedMenu,source:t.source},on:{"update:loading":function(e){t.loading=e},"update:opened":function(e){t.openedMenu=e}}}),t._v(" "),!t.compact&&t.isSizeAvailable?e("td",{staticClass:"files-list__row-size",style:t.sizeOpacity,attrs:{"data-cy-files-list-row-size":""},on:{click:t.openDetailsIfAvailable}},[e("span",[t._v(t._s(t.size))])]):t._e(),t._v(" "),!t.compact&&t.isMtimeAvailable?e("td",{staticClass:"files-list__row-mtime",style:t.mtimeOpacity,attrs:{"data-cy-files-list-row-mtime":""},on:{click:t.openDetailsIfAvailable}},[e("NcDateTime",{attrs:{timestamp:t.source.mtime,"ignore-seconds":!0}})],1):t._e(),t._v(" "),t._l(t.columns,(function(n){return e("td",{key:n.id,staticClass:"files-list__row-column-custom",class:`files-list__row-${t.currentView?.id}-${n.id}`,attrs:{"data-cy-files-list-row-column-custom":n.id},on:{click:t.openDetailsIfAvailable}},[e("CustomElementRender",{attrs:{"current-view":t.currentView,render:n.render,source:t.source}})],1)}))],2)}),[],!1,null,null,null).exports;a.default.directive("onClickOutside",je.hs);const Ss=a.default.extend({name:"FileEntryGrid",components:{FileEntryActions:Gn,FileEntryCheckbox:Kn,FileEntryName:ts,FileEntryPreview:xs},inheritAttrs:!1,props:{source:{type:[lt.gt,lt.$B,lt.NB],required:!0},nodes:{type:Array,required:!0},filesListWidth:{type:Number,default:0}},setup:()=>({actionsMenuStore:Ln(),draggingStore:En(),filesStore:ne(),renamingStore:Nn(),selectionStore:ie()}),data:()=>({loading:"",dragover:!1}),computed:{currentView(){return this.$navigation.active},currentDir(){return(this.$route?.query?.dir?.toString()||"/").replace(/^(.+)\/$/,"$1")},currentFileId(){return this.$route.params?.fileid||this.$route.query?.fileid||null},fileid(){return this.source?.fileid?.toString?.()},uniqueId(){return Sn(this.source.source)},isLoading(){return this.source.status===lt.e4.LOADING},extension(){return this.source.attributes?.displayName?(0,mt.extname)(this.source.attributes.displayName):this.source.extension||""},displayName(){const t=this.extension,e=this.source.attributes.displayName||this.source.basename;return t?e.slice(0,0-t.length):e},draggingFiles(){return this.draggingStore.dragging},selectedFiles(){return this.selectionStore.selected},isSelected(){return this.selectedFiles.includes(this.fileid)},isRenaming(){return this.renamingStore.renamingNode===this.source},isActive(){return this.fileid===this.currentFileId?.toString?.()},canDrag(){const t=t=>0!=(t?.permissions<.y3.UPDATE);return this.selectedFiles.length>0?this.selectedFiles.map((t=>this.filesStore.getNode(t))).every(t):t(this.source)},canDrop(){return this.source.type===lt.Tv.Folder&&!this.draggingFiles.includes(this.fileid)&&0!=(this.source.permissions<.y3.CREATE)},openedMenu:{get(){return this.actionsMenuStore.opened===this.uniqueId},set(t){this.actionsMenuStore.opened=t?this.uniqueId:null}}},watch:{source(){this.resetState()}},beforeDestroy(){this.resetState()},methods:{resetState(){this.loading="",this.$refs.preview.reset(),this.openedMenu=!1},onRightClick(t){if(this.openedMenu)return;const e=this.selectedFiles.length>1;this.actionsMenuStore.opened=this.isSelected&&e?"global":this.uniqueId,t.preventDefault(),t.stopPropagation()},execDefaultAction(){this.$refs.actions.execDefaultAction(...arguments)},openDetailsIfAvailable(t){t.preventDefault(),t.stopPropagation(),ee?.enabled?.([this.source],this.currentView)&&ee.exec(this.source,this.currentView,this.currentDir)},onDragOver(t){this.dragover=this.canDrop,this.canDrop?t.ctrlKey?t.dataTransfer.dropEffect="copy":t.dataTransfer.dropEffect="move":t.dataTransfer.dropEffect="none"},onDragLeave(t){const e=t.currentTarget;e?.contains(t.relatedTarget)||(this.dragover=!1)},async onDragStart(t){if(t.stopPropagation(),!this.canDrag)return t.preventDefault(),void t.stopPropagation();te.debug("Drag started"),this.renamingStore.$reset(),this.selectedFiles.includes(this.fileid)?this.draggingStore.set(this.selectedFiles):this.draggingStore.set([this.fileid]);const e=this.draggingStore.dragging.map((t=>this.filesStore.getNode(t))),n=await Ye(e);t.dataTransfer?.setDragImage(n,-10,-10)},onDragEnd(){this.draggingStore.reset(),this.dragover=!1,te.debug("Drag ended")},async onDrop(t){if(t.preventDefault(),t.stopPropagation(),!this.canDrop||0!==t.button)return;const e=t.ctrlKey;if(this.dragover=!1,te.debug("Dropped",{event:t,selection:this.draggingFiles}),t.dataTransfer?.files?.length>0){const e=(0,$t.g)();return t.dataTransfer.files.forEach((t=>{e.upload((0,mt.join)(this.source.path,t.name),t)})),void te.debug(`Uploading files to ${this.source.path}`)}this.draggingFiles.map((t=>this.filesStore.getNode(t))).forEach((async t=>{a.default.set(t,"status",lt.e4.LOADING);try{await Tn(t,this.source,e?bn.COPY:bn.MOVE)}catch(n){te.error("Error while moving file",{error:n}),e?(0,Pe.x2)((0,Ut.Iu)("files","Could not copy {file}. {message}",{file:t.basename,message:n.message||""})):(0,Pe.x2)((0,Ut.Iu)("files","Could not move {file}. {message}",{file:t.basename,message:n.message||""}))}finally{a.default.set(t,"status",void 0)}})),this.draggingFiles.some((t=>this.selectedFiles.includes(t)))&&(te.debug("Dropped selection, resetting select store..."),this.selectionStore.reset())},t:Ut.Iu}}),Ls=Ss,Es=(0,Mt.Z)(Ls,(function(){var t=this,e=t._self._c;return t._self._setupProxy,e("tr",{staticClass:"files-list__row",class:{"files-list__row--active":t.isActive,"files-list__row--dragover":t.dragover,"files-list__row--loading":t.isLoading},attrs:{"data-cy-files-list-row":"","data-cy-files-list-row-fileid":t.fileid,"data-cy-files-list-row-name":t.source.basename,draggable:t.canDrag},on:{contextmenu:t.onRightClick,dragover:t.onDragOver,dragleave:t.onDragLeave,dragstart:t.onDragStart,dragend:t.onDragEnd,drop:t.onDrop}},[t.source.attributes.failed?e("span",{staticClass:"files-list__row--failed"}):t._e(),t._v(" "),e("FileEntryCheckbox",{attrs:{"display-name":t.displayName,fileid:t.fileid,"is-loading":t.isLoading,nodes:t.nodes}}),t._v(" "),e("td",{staticClass:"files-list__row-name",attrs:{"data-cy-files-list-row-name":""}},[e("FileEntryPreview",{ref:"preview",attrs:{dragover:t.dragover,"grid-mode":!0,source:t.source},nativeOn:{click:function(e){return t.execDefaultAction.apply(null,arguments)}}}),t._v(" "),e("FileEntryName",{ref:"name",attrs:{"display-name":t.displayName,extension:t.extension,"files-list-width":t.filesListWidth,"grid-mode":!0,nodes:t.nodes,source:t.source},on:{click:t.execDefaultAction}})],1),t._v(" "),e("FileEntryActions",{ref:"actions",class:`files-list__row-actions-${t.uniqueId}`,attrs:{"files-list-width":t.filesListWidth,"grid-mode":!0,loading:t.loading,opened:t.openedMenu,source:t.source},on:{"update:loading":function(e){t.loading=e},"update:opened":function(e){t.openedMenu=e}}})],1)}),[],!1,null,null,null).exports;var Ns=s(25108);const Fs={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(t){t&&this.header.updated(this.currentFolder,this.currentView)},currentFolder(){this.header.updated(this.currentFolder,this.currentView)}},mounted(){Ns.debug("Mounted",this.header.id),this.header.render(this.$refs.mount,this.currentFolder,this.currentView)}},Bs=(0,Mt.Z)(Fs,(function(){var t=this,e=t._self._c;return e("div",{directives:[{name:"show",rawName:"v-show",value:t.enabled,expression:"enabled"}],class:`files-list__header-${t.header.id}`},[e("span",{ref:"mount"})])}),[],!1,null,null,null).exports,Ps=a.default.extend({name:"FilesListTableFooter",components:{},props:{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 t=se();return{filesStore:ne(),pathsStore:t}},computed:{currentView(){return this.$navigation.active},dir(){return(this.$route?.query?.dir||"/").replace(/^(.+)\/$/,"$1")},currentFolder(){if(!this.currentView?.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(){return this.filesListWidth<512?[]:this.currentView?.columns||[]},totalSize(){return this.currentFolder?.size?(0,lt.sS)(this.currentFolder.size,!0):(0,lt.sS)(this.nodes.reduce(((t,e)=>t+e.size||0),0),!0)}},methods:{classForColumn(t){return{"files-list__row-column-custom":!0,[`files-list__row-${this.currentView.id}-${t.id}`]:!0}},t:Ut.Iu}});var js=s(68252),Is={};Is.styleTagTransform=Ee(),Is.setAttributes=Te(),Is.insert=xe().bind(null,"head"),Is.domAPI=be(),Is.insertStyleElement=Se(),we()(js.Z,Is),js.Z&&js.Z.locals&&js.Z.locals;const Os=(0,Mt.Z)(Ps,(function(){var t=this,e=t._self._c;return t._self._setupProxy,e("tr",[e("th",{staticClass:"files-list__row-checkbox"},[e("span",{staticClass:"hidden-visually"},[t._v(t._s(t.t("files","Total rows summary")))])]),t._v(" "),e("td",{staticClass:"files-list__row-name"},[e("span",{staticClass:"files-list__row-icon"}),t._v(" "),e("span",[t._v(t._s(t.summary))])]),t._v(" "),e("td",{staticClass:"files-list__row-actions"}),t._v(" "),t.isSizeAvailable?e("td",{staticClass:"files-list__column files-list__row-size"},[e("span",[t._v(t._s(t.totalSize))])]):t._e(),t._v(" "),t.isMtimeAvailable?e("td",{staticClass:"files-list__column files-list__row-mtime"}):t._e(),t._v(" "),t._l(t.columns,(function(n){return e("th",{key:n.id,class:t.classForColumn(n)},[e("span",[t._v(t._s(n.summary?.(t.nodes,t.currentView)))])])}))],2)}),[],!1,null,"58f7b64d",null).exports,Us=a.default.extend({data:()=>({filesListWidth:null}),mounted(){const t=document.querySelector("#app-content-vue");this.filesListWidth=t?.clientWidth??null,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()}}),Ds=(0,lt.Vn)(),$s=a.default.extend({name:"FilesListTableHeaderActions",components:{NcActions:$n.Z,NcActionButton:Dn.Z,NcIconSvgWrapper:Gt.Z,NcLoadingIcon:Wt.Z},mixins:[Us],props:{currentView:{type:Object,required:!0},selectedNodes:{type:Array,default:()=>[]}},setup:()=>({actionsMenuStore:Ln(),filesStore:ne(),selectionStore:ie()}),data:()=>({loading:null}),computed:{dir(){return(this.$route?.query?.dir||"/").replace(/^(.+)\/$/,"$1")},enabledActions(){return Ds.filter((t=>t.execBatch)).filter((t=>!t.enabled||t.enabled(this.nodes,this.currentView))).sort(((t,e)=>(t.order||0)-(e.order||0)))},nodes(){return this.selectedNodes.map((t=>this.getNode(t))).filter((t=>t))},areSomeNodesLoading(){return this.nodes.some((t=>t.status===lt.e4.LOADING))},openedMenu:{get(){return"global"===this.actionsMenuStore.opened},set(t){this.actionsMenuStore.opened=t?"global":null}},inlineActions(){return this.filesListWidth<512?0:this.filesListWidth<768?1:this.filesListWidth<1024?2:3}},methods:{getNode(t){return this.filesStore.getNode(t)},async onActionClick(t){const e=t.displayName(this.nodes,this.currentView),n=this.selectedNodes;try{this.loading=t.id,this.nodes.forEach((t=>{a.default.set(t,"status",lt.e4.LOADING)}));const s=await t.execBatch(this.nodes,this.currentView,this.dir);if(!s.some((t=>null!==t)))return void this.selectionStore.reset();if(s.some((t=>!1===t))){const t=n.filter(((t,e)=>!1===s[e]));return this.selectionStore.set(t),void(0,Pe.x2)(this.t("files",'"{displayName}" failed on some elements ',{displayName:e}))}(0,Pe.s$)(this.t("files",'"{displayName}" batch action executed successfully',{displayName:e})),this.selectionStore.reset()}catch(n){te.error("Error while executing action",{action:t,e:n}),(0,Pe.x2)(this.t("files",'"{displayName}" action failed',{displayName:e}))}finally{this.loading=null,this.nodes.forEach((t=>{a.default.set(t,"status",void 0)}))}},t:Ut.Iu}}),zs=$s;var Rs=s(65769),Ms={};Ms.styleTagTransform=Ee(),Ms.setAttributes=Te(),Ms.insert=xe().bind(null,"head"),Ms.domAPI=be(),Ms.insertStyleElement=Se(),we()(Rs.Z,Ms),Rs.Z&&Rs.Z.locals&&Rs.Z.locals;var Vs=(0,Mt.Z)(zs,(function(){var t=this,e=t._self._c;return t._self._setupProxy,e("th",{staticClass:"files-list__column files-list__row-actions-batch",attrs:{colspan:"2"}},[e("NcActions",{ref:"actionsMenu",attrs:{disabled:!!t.loading||t.areSomeNodesLoading,"force-name":!0,inline:t.inlineActions,"menu-name":t.inlineActions<=1?t.t("files","Actions"):null,open:t.openedMenu},on:{"update:open":function(e){t.openedMenu=e}}},t._l(t.enabledActions,(function(n){return e("NcActionButton",{key:n.id,class:"files-list__row-actions-batch-"+n.id,on:{click:function(e){return t.onActionClick(n)}},scopedSlots:t._u([{key:"icon",fn:function(){return[t.loading===n.id?e("NcLoadingIcon",{attrs:{size:18}}):e("NcIconSvgWrapper",{attrs:{svg:n.iconSvgInline(t.nodes,t.currentView)}})]},proxy:!0}],null,!0)},[t._v("\n\t\t\t"+t._s(n.displayName(t.nodes,t.currentView))+"\n\t\t")])})),1)],1)}),[],!1,null,"72bacee0",null);const Hs=Vs.exports;var qs=s(63198),Zs=s(7290);const Gs=a.default.extend({computed:{...(Ys=me,Ks=["getConfig","setSortingBy","toggleSortingDirection"],Array.isArray(Ks)?Ks.reduce(((t,e)=>(t[e]=function(){return Ys(this.$pinia)[e]},t)),{}):Object.keys(Ks).reduce(((t,e)=>(t[e]=function(){const t=Ys(this.$pinia),n=Ks[e];return"function"==typeof n?n.call(this,t):t[n]},t)),{})),currentView(){return this.$navigation.active},sortingMode(){return this.getConfig(this.currentView.id)?.sorting_mode||this.currentView?.defaultSortKey||"basename"},isAscSorting(){const t=this.getConfig(this.currentView.id)?.sorting_direction;return"desc"!==t}},methods:{toggleSortBy(t){this.sortingMode!==t?this.setSortingBy(t,this.currentView.id):this.toggleSortingDirection(this.currentView.id)}}}),Ws=(0,a.defineComponent)({name:"FilesListTableHeaderButton",components:{MenuDown:qs.Z,MenuUp:Zs.Z,NcButton:qt.Z},mixins:[Gs],props:{name:{type:String,required:!0},mode:{type:String,required:!0}},methods:{t:Ut.Iu}});var Ys,Ks,Js=s(36980),Qs={};Qs.styleTagTransform=Ee(),Qs.setAttributes=Te(),Qs.insert=xe().bind(null,"head"),Qs.domAPI=be(),Qs.insertStyleElement=Se(),we()(Js.Z,Qs),Js.Z&&Js.Z.locals&&Js.Z.locals;const Xs=(0,Mt.Z)(Ws,(function(){var t=this,e=t._self._c;return t._self._setupProxy,e("NcButton",{class:["files-list__column-sort-button",{"files-list__column-sort-button--active":t.sortingMode===t.mode,"files-list__column-sort-button--size":"size"===t.sortingMode}],attrs:{alignment:"size"===t.mode?"end":"start-reverse",type:"tertiary"},on:{click:function(e){return t.toggleSortBy(t.mode)}},scopedSlots:t._u([{key:"icon",fn:function(){return[t.sortingMode!==t.mode||t.isAscSorting?e("MenuUp",{staticClass:"files-list__column-sort-button-icon"}):e("MenuDown",{staticClass:"files-list__column-sort-button-icon"})]},proxy:!0}])},[t._v(" "),e("span",{staticClass:"files-list__column-sort-button-text"},[t._v(t._s(t.name))])])}),[],!1,null,"097f69d4",null).exports,ti=a.default.extend({name:"FilesListTableHeader",components:{FilesListTableHeaderButton:Xs,NcCheckboxRadioSwitch:Wn.Z,FilesListTableHeaderActions:Hs},mixins:[Gs],props:{isMtimeAvailable:{type:Boolean,default:!1},isSizeAvailable:{type:Boolean,default:!1},nodes:{type:Array,required:!0},filesListWidth:{type:Number,default:0}},setup:()=>({filesStore:ne(),selectionStore:ie()}),computed:{currentView(){return this.$navigation.active},columns(){return this.filesListWidth<512?[]:this.currentView?.columns||[]},dir(){return(this.$route?.query?.dir||"/").replace(/^(.+)\/$/,"$1")},selectAllBind(){const t=this.isNoneSelected||this.isSomeSelected?this.t("files","Select all"):this.t("files","Unselect all");return{"aria-label":t,checked:this.isAllSelected,indeterminate:this.isSomeSelected,title:t}},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(t){return this.sortingMode===t?this.isAscSorting?"ascending":"descending":null},classForColumn(t){return{"files-list__column":!0,"files-list__column--sortable":!!t.sort,"files-list__row-column-custom":!0,[`files-list__row-${this.currentView.id}-${t.id}`]:!0}},onToggleAll(t){if(t){const t=this.nodes.map((t=>t.fileid.toString()));te.debug("Added all nodes to selection",{selection:t}),this.selectionStore.setLastIndex(null),this.selectionStore.set(t)}else te.debug("Cleared selection"),this.selectionStore.reset()},t:Ut.Iu}});var ei=s(41002),ni={};ni.styleTagTransform=Ee(),ni.setAttributes=Te(),ni.insert=xe().bind(null,"head"),ni.domAPI=be(),ni.insertStyleElement=Se(),we()(ei.Z,ni),ei.Z&&ei.Z.locals&&ei.Z.locals;const si=(0,Mt.Z)(ti,(function(){var t=this,e=t._self._c;return t._self._setupProxy,e("tr",{staticClass:"files-list__row-head"},[e("th",{staticClass:"files-list__column files-list__row-checkbox"},[e("NcCheckboxRadioSwitch",t._b({on:{"update:checked":t.onToggleAll}},"NcCheckboxRadioSwitch",t.selectAllBind,!1))],1),t._v(" "),t.isNoneSelected?[e("th",{staticClass:"files-list__column files-list__row-name files-list__column--sortable",attrs:{"aria-sort":t.ariaSortForMode("basename")}},[e("span",{staticClass:"files-list__row-icon"}),t._v(" "),e("FilesListTableHeaderButton",{attrs:{name:t.t("files","Name"),mode:"basename"}})],1),t._v(" "),e("th",{staticClass:"files-list__row-actions"}),t._v(" "),t.isSizeAvailable?e("th",{staticClass:"files-list__column files-list__row-size",class:{"files-list__column--sortable":t.isSizeAvailable},attrs:{"aria-sort":t.ariaSortForMode("size")}},[e("FilesListTableHeaderButton",{attrs:{name:t.t("files","Size"),mode:"size"}})],1):t._e(),t._v(" "),t.isMtimeAvailable?e("th",{staticClass:"files-list__column files-list__row-mtime",class:{"files-list__column--sortable":t.isMtimeAvailable},attrs:{"aria-sort":t.ariaSortForMode("mtime")}},[e("FilesListTableHeaderButton",{attrs:{name:t.t("files","Modified"),mode:"mtime"}})],1):t._e(),t._v(" "),t._l(t.columns,(function(n){return e("th",{key:n.id,class:t.classForColumn(n),attrs:{"aria-sort":t.ariaSortForMode(n.id)}},[n.sort?e("FilesListTableHeaderButton",{attrs:{name:n.title,mode:n.id}}):e("span",[t._v("\n\t\t\t\t"+t._s(n.title)+"\n\t\t\t")])],1)}))]:e("FilesListTableHeaderActions",{attrs:{"current-view":t.currentView,"selected-nodes":t.selectedNodes}})],2)}),[],!1,null,"585fdb03",null).exports;var ii=s(20296),ai=s(25108);const ri=a.default.extend({name:"VirtualList",mixins:[Us],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 t=this.dataSources.slice(this.startIndex,this.startIndex+this.shownItems),e=t.filter((t=>Object.values(this.$_recycledPool).includes(t[this.dataKey]))).map((t=>t[this.dataKey])),n=Object.keys(this.$_recycledPool).filter((t=>!e.includes(this.$_recycledPool[t])));return t.map((t=>{const e=Object.values(this.$_recycledPool).indexOf(t[this.dataKey]);if(-1!==e)return{key:Object.keys(this.$_recycledPool)[e],item:t};const s=n.pop()||Math.random().toString(36).substr(2);return this.$_recycledPool[s]=t[this.dataKey],{key:s,item:t}}))},tbodyStyle(){const t=this.startIndex+this.rowCount>this.dataSources.length,e=this.dataSources.length-this.startIndex-this.shownItems,n=Math.floor(Math.min(this.dataSources.length-this.startIndex,e)/this.columnCount);return{paddingTop:Math.floor(this.startIndex/this.columnCount)*this.itemHeight+"px",paddingBottom:t?0:n*this.itemHeight+"px"}}},watch:{scrollToIndex(t){this.scrollTo(t)},columnCount(t,e){0!==e?this.scrollTo(this.index):ai.debug("VirtualList: columnCount is 0, skipping scroll")}},mounted(){const t=this.$refs?.before,e=this.$el,n=this.$refs?.thead;this.resizeObserver=new ResizeObserver((0,ii.debounce)((()=>{this.beforeHeight=t?.clientHeight??0,this.headerHeight=n?.clientHeight??0,this.tableHeight=e?.clientHeight??0,te.debug("VirtualList: resizeObserver updated"),this.onScroll()}),100,!1)),this.resizeObserver.observe(t),this.resizeObserver.observe(e),this.resizeObserver.observe(n),this.scrollToIndex&&this.scrollTo(this.scrollToIndex),this.$el.addEventListener("scroll",this.onScroll,{passive:!0}),this.$_recycledPool={}},beforeDestroy(){this.resizeObserver&&this.resizeObserver.disconnect()},methods:{scrollTo(t){this.index=t;const e=(Math.floor(t/this.columnCount)-.5)*this.itemHeight+this.beforeHeight;te.debug("VirtualList: scrolling to index "+t,{scrollTop:e,columnCount:this.columnCount}),this.$el.scrollTop=e},onScroll(){this._onScrollHandle??=requestAnimationFrame((()=>{this._onScrollHandle=null;const t=this.$el.scrollTop-this.beforeHeight,e=Math.floor(t/this.itemHeight)*this.columnCount;this.index=Math.max(0,e),this.$emit("scroll")}))}}}),oi=(0,Mt.Z)(ri,(function(){var t=this,e=t._self._c;return t._self._setupProxy,e("div",{staticClass:"files-list",attrs:{"data-cy-files-list":""}},[e("div",{ref:"before",staticClass:"files-list__before"},[t._t("before")],2),t._v(" "),e("table",{staticClass:"files-list__table"},[t.caption?e("caption",{staticClass:"hidden-visually"},[t._v("\n\t\t\t"+t._s(t.caption)+"\n\t\t")]):t._e(),t._v(" "),e("thead",{ref:"thead",staticClass:"files-list__thead",attrs:{"data-cy-files-list-thead":""}},[t._t("header")],2),t._v(" "),e("tbody",{staticClass:"files-list__tbody",class:t.gridMode?"files-list__tbody--grid":"files-list__tbody--list",style:t.tbodyStyle,attrs:{"data-cy-files-list-tbody":""}},t._l(t.renderedItems,(function(n,s){let{key:i,item:a}=n;return e(t.dataComponent,t._b({key:i,tag:"component",attrs:{source:a,index:s}},"component",t.extraProps,!1))})),1),t._v(" "),e("tfoot",{directives:[{name:"show",rawName:"v-show",value:t.isReady,expression:"isReady"}],staticClass:"files-list__tfoot",attrs:{"data-cy-files-list-tfoot":""}},[t._t("footer")],2)])])}),[],!1,null,null,null).exports,li=(0,a.defineComponent)({name:"FilesListVirtual",components:{FilesListHeader:Bs,FilesListTableFooter:Os,FilesListTableHeader:si,VirtualList:oi},mixins:[Us],props:{currentView:{type:lt.G7,required:!0},currentFolder:{type:lt.gt,required:!0},nodes:{type:Array,required:!0}},setup:()=>({userConfigStore:de()}),data:()=>({FileEntry:ks,FileEntryGrid:Es,headers:(0,lt.De)(),scrollToIndex:0,dndNoticeHeight:0}),computed:{userConfig(){return this.userConfigStore.userConfig},files(){return this.nodes.filter((t=>"file"===t.type))},fileId(){return parseInt(this.$route.params.fileid)||null},summaryFile(){const t=this.files.length;return(0,Ut.uN)("files","{count} file","{count} files",t,{count:t})},summaryFolder(){const t=this.nodes.length-this.files.length;return(0,Ut.uN)("files","{count} folder","{count} folders",t,{count:t})},summary(){return(0,Ut.Iu)("files","{summaryFile} and {summaryFolder}",this)},isMtimeAvailable(){return!(this.filesListWidth<768)&&this.nodes.some((t=>void 0!==t.mtime))},isSizeAvailable(){return!(this.filesListWidth<768)&&this.nodes.some((t=>void 0!==t.attributes.size))},sortedHeaders(){return this.currentFolder&&this.currentView?[...this.headers].sort(((t,e)=>t.order-e.order)):[]},caption(){const t=(0,Ut.Iu)("files","List of files and folders.");return`${this.currentView.caption||t}\n${(0,Ut.Iu)("files","Column headers with buttons are sortable.")}\n${(0,Ut.Iu)("files","This list is not fully rendered for performance reasons. The files will be rendered as you navigate through the list.")}`}},watch:{fileId(t){this.scrollToFile(t,!1)}},mounted(){window.document.querySelector("main.app-content").addEventListener("dragover",this.onDragOver),this.scrollToFile(this.fileId),this.openSidebarForFile(this.fileId),this.handleOpenFile()},beforeDestroy(){window.document.querySelector("main.app-content").removeEventListener("dragover",this.onDragOver)},methods:{openSidebarForFile(t){if(document.documentElement.clientWidth>1024&&this.currentFolder.fileid!==t){const e=this.nodes.find((e=>e.fileid===t));e&&ee?.enabled?.([e],this.currentView)&&(te.debug("Opening sidebar on file "+e.path,{node:e}),ee.exec(e,this.currentView,this.currentFolder.path))}},scrollToFile(t){let e=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];if(t){const n=this.nodes.findIndex((e=>e.fileid===t));e&&-1===n&&t!==this.currentFolder.fileid&&(0,Pe.x2)(this.t("files","File not found")),this.scrollToIndex=Math.max(0,n)}},handleOpenFile(){const t=(0,oe.j)("files","openFileInfo",{});if(void 0===t)return;const e=this.nodes.find((e=>e.fileid===t.id));void 0!==e&&(te.debug("Opening file "+e.path,{node:e}),(0,lt.Vn)().filter((t=>!t.enabled||t.enabled([e],this.currentView))).sort(((t,e)=>(t.order||0)-(e.order||0))).filter((t=>!!t?.default))[0].exec(e,this.currentView,this.currentFolder.path))},getFileId:t=>t.fileid,onDragOver(t){const e=t.dataTransfer?.types.includes("Files");if(e)return;t.preventDefault(),t.stopPropagation();const n=this.$refs.table.$el.getBoundingClientRect().top,s=n+this.$refs.table.$el.getBoundingClientRect().height;t.clientYs-50&&(this.$refs.table.$el.scrollTop=this.$refs.table.$el.scrollTop+25)},t:Ut.Iu}});var ci=s(51272),di={};di.styleTagTransform=Ee(),di.setAttributes=Te(),di.insert=xe().bind(null,"head"),di.domAPI=be(),di.insertStyleElement=Se(),we()(ci.Z,di),ci.Z&&ci.Z.locals&&ci.Z.locals;var ui=s(61590),mi={};mi.styleTagTransform=Ee(),mi.setAttributes=Te(),mi.insert=xe().bind(null,"head"),mi.domAPI=be(),mi.insertStyleElement=Se(),we()(ui.Z,mi),ui.Z&&ui.Z.locals&&ui.Z.locals;const fi=(0,Mt.Z)(li,(function(){var t=this,e=t._self._c;return t._self._setupProxy,e("VirtualList",{ref:"table",attrs:{"data-component":t.userConfig.grid_view?t.FileEntryGrid:t.FileEntry,"data-key":"source","data-sources":t.nodes,"grid-mode":t.userConfig.grid_view,"extra-props":{isMtimeAvailable:t.isMtimeAvailable,isSizeAvailable:t.isSizeAvailable,nodes:t.nodes,filesListWidth:t.filesListWidth},"scroll-to-index":t.scrollToIndex,caption:t.caption},scopedSlots:t._u([{key:"before",fn:function(){return t._l(t.sortedHeaders,(function(n){return e("FilesListHeader",{key:n.id,attrs:{"current-folder":t.currentFolder,"current-view":t.currentView,header:n}})}))},proxy:!0},{key:"header",fn:function(){return[e("FilesListTableHeader",{ref:"thead",attrs:{"files-list-width":t.filesListWidth,"is-mtime-available":t.isMtimeAvailable,"is-size-available":t.isSizeAvailable,nodes:t.nodes}})]},proxy:!0},{key:"footer",fn:function(){return[e("FilesListTableFooter",{attrs:{"files-list-width":t.filesListWidth,"is-mtime-available":t.isMtimeAvailable,"is-size-available":t.isSizeAvailable,nodes:t.nodes,summary:t.summary}})]},proxy:!0}])})}),[],!1,null,"1b17ff10",null).exports,pi={name:"TrayArrowDownIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},gi=(0,Mt.Z)(pi,(function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon tray-arrow-down-icon",attrs:{"aria-hidden":!t.title,"aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("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"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports,hi=async function(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";const n=(0,$t.g)();try{return await n.upload(`${e}${t.name}`,t)}catch(e){throw(0,Pe.x2)((0,Ut.Iu)("files",'Uploading "{filename}" failed',{filename:t.name})),e}},vi=async function(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";if(t.isFile)return[await new Promise(((n,s)=>{t.file((async t=>n(await hi(t,e))),(t=>s(t)))}))];{const n=t;te.debug("Handle directory recursivly",{name:n.name});const s=`${lt._o}${(0,$t.g)().destination.path}${e}${n.name}`,i=(0,lt.rp)();if(!await i.exists(s)){te.debug("Directory does not exist, creating it",{absolutPath:s}),await i.createDirectory(s,{recursive:!0});const t=await i.stat(s,{details:!0,data:(0,lt.h7)()});(0,dt.j8)("files:node:created",(0,lt.RL)(t.data))}const a=await function(t){const e=t.createReader();return new Promise(((t,n)=>{const s=[],i=()=>{e.readEntries((e=>{e.length?(s.push(...e),i()):t(s)}),(t=>{n(t)}))};i()}))}(n),r=a.sort((t=>t.isFile?-1:1)).map((t=>vi(t,`${e}${n.name}/`)));return(await Promise.all(r)).flat()}},Ai=(0,a.defineComponent)({name:"DragAndDropNotice",components:{TrayArrowDownIcon:gi},props:{currentFolder:{type:Object,required:!0}},data:()=>({dragover:!1}),mounted(){const t=window.document.querySelector("main.app-content");t.addEventListener("dragover",this.onDragOver),t.addEventListener("dragleave",this.onDragLeave)},beforeDestroy(){const t=window.document.querySelector("main.app-content");t.removeEventListener("dragover",this.onDragOver),t.removeEventListener("dragleave",this.onDragLeave)},methods:{onDragOver(t){const e=t.dataTransfer?.types.includes("Files");e&&(this.dragover=!0)},onDragLeave(){this.dragover&&(this.dragover=!1)},onDrop(t){this.$el.querySelector("tbody")?.contains(t.target)||(t.preventDefault(),t.stopPropagation(),t.dataTransfer&&t.dataTransfer.items.length>0&&(te.debug(`Uploading files to ${this.currentFolder.path}`),(async t=>{const e=[];for(const n of t.items){if("file"!==n.kind){te.debug("Skipping dropped item",{kind:n.kind,type:n.type});continue}const t=n?.getAsEntry?.()??n.webkitGetAsEntry();if(null===t){te.debug("Could not get FilesystemEntry of item, falling back to file");const t=n.getAsFile();null===t?(te.warn("Could not process DataTransferItem",{type:n.type,kind:n.kind}),(0,Pe.x2)((0,Ut.Iu)("files","One of the dropped files could not be processed"))):e.push(await hi(t))}else te.debug("Handle recursive upload",{entry:t.name}),e.push(...await vi(t))}return e})(t.dataTransfer).then((t=>{te.debug("Upload terminated",{uploads:t}),(0,Pe.s$)((0,Ut.Iu)("files","Upload successful"));const e=t.findLast((t=>!t.file.webkitRelativePath.includes("/")&&t.response?.headers?.["oc-fileid"]));void 0!==e&&this.$router.push({...this.$route,params:{view:this.$route.params?.view??"files",fileid:parseInt(e.response.headers["oc-fileid"])}})}))),this.dragover=!1)},t:Ut.Iu}});var wi=s(81432),yi={};yi.styleTagTransform=Ee(),yi.setAttributes=Te(),yi.insert=xe().bind(null,"head"),yi.domAPI=be(),yi.insertStyleElement=Se(),we()(wi.Z,yi),wi.Z&&wi.Z.locals&&wi.Z.locals;const bi=(0,Mt.Z)(Ai,(function(){var t=this,e=t._self._c;return t._self._setupProxy,e("div",{directives:[{name:"show",rawName:"v-show",value:t.dragover,expression:"dragover"}],staticClass:"files-list__drag-drop-notice",on:{drop:t.onDrop}},[e("div",{staticClass:"files-list__drag-drop-notice-wrapper"},[e("TrayArrowDownIcon",{attrs:{size:48}}),t._v(" "),e("h3",{staticClass:"files-list-drag-drop-notice__title"},[t._v("\n\t\t\t"+t._s(t.t("files","Drag and drop files here to upload"))+"\n\t\t")])],1)])}),[],!1,null,"7e0e423e",null).exports,Ci=void 0!==(0,ut.getCapabilities)()?.files_sharing,xi=(0,a.defineComponent)({name:"FilesList",components:{BreadCrumbs:Be,DragAndDropNotice:bi,FilesListVirtual:fi,LinkIcon:zt.Z,ListViewIcon:Vt,NcAppContent:Ht.Z,NcButton:qt.Z,NcEmptyContent:Zt.Z,NcIconSvgWrapper:Gt.Z,NcLoadingIcon:Wt.Z,ShareVariantIcon:Kt,UploadPicker:$t.U,ViewGridIcon:Qt},mixins:[Us,Gs],setup(){const t=ne(),e=se(),n=ie(),s=function(){return ae=(0,$t.g)(),ot("uploader",{state:()=>({queue:ae.queue})})(...arguments)}();return{filesStore:t,pathsStore:e,selectionStore:n,uploaderStore:s,userConfigStore:de(),viewConfigStore:me()}},data:()=>({loading:!0,promise:null,Type:Dt.D}),computed:{userConfig(){return this.userConfigStore.userConfig},currentView(){return this.$navigation.active||this.$navigation.views.find((t=>"files"===t.id))},dir(){return(this.$route?.query?.dir?.toString()||"/").replace(/^(.+)\/$/,"$1")},currentFolder(){if(!this.currentView?.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)},sortingParameters(){return[[...this.userConfig.sort_favorites_first?[t=>1!==t.attributes?.favorite]:[],..."basename"===this.sortingMode?[t=>"folder"!==t.type]:[],..."basename"!==this.sortingMode?[t=>t[this.sortingMode]]:[],t=>t.attributes?.displayName||t.basename,t=>t.basename],[...this.userConfig.sort_favorites_first?["asc"]:[],..."basename"===this.sortingMode?["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(){if(!this.currentView)return[];const t=(this.currentView?.columns||[]).find((t=>t.id===this.sortingMode));if(t?.sort&&"function"==typeof t.sort){const e=[...this.dirContents].sort(t.sort);return this.isAscSorting?e:e.reverse()}return Ot([...this.dirContents],...this.sortingParameters)},dirContents(){const t=this.userConfigStore?.userConfig.show_hidden;return(this.currentFolder?._children||[]).map(this.getNode).filter((e=>t?!!e:e&&!0!==e?.attributes?.hidden&&!e?.basename.startsWith(".")))},isEmptyDir(){return 0===this.dirContents.length},isRefreshing(){return void 0!==this.currentFolder&&!this.isEmptyDir&&this.loading},toPreviousDir(){const t=this.dir.split("/").slice(0,-1).join("/")||"/";return{...this.$route,query:{dir:t}}},shareAttributes(){if(this.currentFolder?.attributes?.["share-types"])return Object.values(this.currentFolder?.attributes?.["share-types"]||{}).flat()},shareButtonLabel(){return this.shareAttributes?this.shareButtonType===Dt.D.SHARE_TYPE_LINK?this.t("files","Shared by link"):this.t("files","Shared"):this.t("files","Share")},shareButtonType(){return this.shareAttributes?this.shareAttributes.some((t=>t===Dt.D.SHARE_TYPE_LINK))?Dt.D.SHARE_TYPE_LINK:Dt.D.SHARE_TYPE_USER:null},gridViewButtonLabel(){return this.userConfig.grid_view?this.t("files","Switch to list view"):this.t("files","Switch to grid view")},canUpload(){return this.currentFolder&&0!=(this.currentFolder.permissions<.y3.CREATE)},canShare(){return Ci&&this.currentFolder&&0!=(this.currentFolder.permissions<.y3.SHARE)}},watch:{currentView(t,e){t?.id!==e?.id&&(te.debug("View changed",{newView:t,oldView:e}),this.selectionStore.reset(),this.fetchContent())},dir(t,e){te.debug("Directory changed",{newDir:t,oldDir:e}),this.selectionStore.reset(),this.fetchContent(),this.$refs?.filesListVirtual?.$el&&(this.$refs.filesListVirtual.$el.scrollTop=0)},dirContents(t){te.debug("Directory contents changed",{view:this.currentView,folder:this.currentFolder,contents:t}),(0,dt.j8)("files:list:updated",{view:this.currentView,folder:this.currentFolder,contents:t})}},mounted(){this.fetchContent()},methods:{async fetchContent(){this.loading=!0;const t=this.dir,e=this.currentView;if(e){"function"==typeof this.promise?.cancel&&(this.promise.cancel(),te.debug("Cancelled previous ongoing fetch")),this.promise=e.getContents(t);try{const{folder:n,contents:s}=await this.promise;te.debug("Fetched contents",{dir:t,folder:n,contents:s}),this.filesStore.updateNodes(s),this.$set(n,"_children",s.map((t=>t.fileid))),"/"===t?this.filesStore.setRoot({service:e.id,root:n}):n.fileid?(this.filesStore.updateNodes([n]),this.pathsStore.addPath({service:e.id,fileid:n.fileid,path:t})):te.error("Invalid root folder returned",{dir:t,folder:n,currentView:e}),s.filter((t=>"folder"===t.type)).forEach((n=>{this.pathsStore.addPath({service:e.id,fileid:n.fileid,path:(0,mt.join)(t,n.basename)})}))}catch(t){te.error("Error while fetching content",{error:t})}finally{this.loading=!1}}else te.debug("The current view doesn't exists or is not ready.",{currentView:e})},getNode(t){return this.filesStore.getNode(t)},onUpload(t){(0,mt.dirname)(t.source)===this.currentFolder?.source&&this.fetchContent()},openSharingSidebar(){window?.OCA?.Files?.Sidebar?.setActiveTab&&window.OCA.Files.Sidebar.setActiveTab("sharing"),ee.exec(this.currentFolder,this.currentView,this.currentFolder.path)},toggleGridView(){this.userConfigStore.update("grid_view",!this.userConfig.grid_view)},t:Ut.Iu,n:Ut.uN}});var _i=s(80794),Ti={};Ti.styleTagTransform=Ee(),Ti.setAttributes=Te(),Ti.insert=xe().bind(null,"head"),Ti.domAPI=be(),Ti.insertStyleElement=Se(),we()(_i.Z,Ti),_i.Z&&_i.Z.locals&&_i.Z.locals;const ki=(0,Mt.Z)(xi,(function(){var t=this,e=t._self._c;return t._self._setupProxy,e("NcAppContent",{attrs:{"data-cy-files-content":""}},[e("div",{staticClass:"files-list__header"},[e("BreadCrumbs",{attrs:{path:t.dir},on:{reload:t.fetchContent},scopedSlots:t._u([{key:"actions",fn:function(){return[t.canShare&&t.filesListWidth>=512?e("NcButton",{staticClass:"files-list__header-share-button",class:{"files-list__header-share-button--shared":t.shareButtonType},attrs:{"aria-label":t.shareButtonLabel,title:t.shareButtonLabel,type:"tertiary"},on:{click:t.openSharingSidebar},scopedSlots:t._u([{key:"icon",fn:function(){return[t.shareButtonType===t.Type.SHARE_TYPE_LINK?e("LinkIcon"):e("ShareVariantIcon",{attrs:{size:20}})]},proxy:!0}],null,!1,2776780758)}):t._e(),t._v(" "),t.currentFolder&&t.canUpload?e("UploadPicker",{attrs:{content:t.dirContents,destination:t.currentFolder,multiple:!0},on:{uploaded:t.onUpload}}):t._e()]},proxy:!0}])}),t._v(" "),t.filesListWidth>=512?e("NcButton",{staticClass:"files-list__header-grid-button",attrs:{"aria-label":t.gridViewButtonLabel,title:t.gridViewButtonLabel,type:"tertiary"},on:{click:t.toggleGridView},scopedSlots:t._u([{key:"icon",fn:function(){return[t.userConfig.grid_view?e("ListViewIcon"):e("ViewGridIcon")]},proxy:!0}],null,!1,1682960703)}):t._e(),t._v(" "),t.isRefreshing?e("NcLoadingIcon",{staticClass:"files-list__refresh-icon"}):t._e()],1),t._v(" "),!t.loading&&t.canUpload?e("DragAndDropNotice",{attrs:{"current-folder":t.currentFolder}}):t._e(),t._v(" "),t.loading&&!t.isRefreshing?e("NcLoadingIcon",{staticClass:"files-list__loading-icon",attrs:{size:38,name:t.t("files","Loading current folder")}}):!t.loading&&t.isEmptyDir?e("NcEmptyContent",{attrs:{name:t.currentView?.emptyTitle||t.t("files","No files in here"),description:t.currentView?.emptyCaption||t.t("files","Upload some content or sync with your devices!"),"data-cy-files-content-empty":""},scopedSlots:t._u([{key:"action",fn:function(){return["/"!==t.dir?e("NcButton",{attrs:{"aria-label":t.t("files","Go to the previous folder"),type:"primary",to:t.toPreviousDir}},[t._v("\n\t\t\t\t"+t._s(t.t("files","Go back"))+"\n\t\t\t")]):t._e()]},proxy:!0},{key:"icon",fn:function(){return[e("NcIconSvgWrapper",{attrs:{svg:t.currentView.icon}})]},proxy:!0}])}):e("FilesListVirtual",{ref:"filesListVirtual",attrs:{"current-folder":t.currentFolder,"current-view":t.currentView,nodes:t.dirContentsSorted}})],1)}),[],!1,null,"14acd289",null).exports;var Si=s(69608),Li=s(44792);const Ei=(0,Mt.Z)(Li.Z,Si.s,Si.x,!1,null,null,null).exports;var Ni=s(92870),Fi=s(51235);function Bi(t,e,n){var s,i=n||{},a=i.noTrailing,r=void 0!==a&&a,o=i.noLeading,l=void 0!==o&&o,c=i.debounceMode,d=void 0===c?void 0:c,u=!1,m=0;function f(){s&&clearTimeout(s)}function p(){for(var n=arguments.length,i=new Array(n),a=0;at?l?(m=Date.now(),r||(s=setTimeout(d?g:p,t))):p():!0!==r&&(s=setTimeout(d?g:p,void 0===d?t-c:t)))}return p.cancel=function(t){var e=(t||{}).upcomingOnly,n=void 0!==e&&e;f(),u=!n},p}const Pi={name:"ChartPieIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},ji=(0,Mt.Z)(Pi,(function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon chart-pie-icon",attrs:{"aria-hidden":!t.title,"aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("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"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports;var Ii=s(34854);const Oi={name:"NavigationQuota",components:{ChartPie:ji,NcAppNavigationItem:Fi.Z,NcProgressBar:Ii.Z},data:()=>({loadingStorageStats:!1,storageStats:(0,oe.j)("files","storageStats",null)}),computed:{storageStatsTitle(){const t=(0,lt.sS)(this.storageStats?.used,!1,!1,!0),e=(0,lt.sS)(this.storageStats?.quota,!1,!1,!0);return this.storageStats?.quota<0?this.t("files","{usedQuotaByte} used",{usedQuotaByte:t}):this.t("files","{used} of {quota} used",{used:t,quota:e})},storageStatsTooltip(){return this.storageStats.relative?this.t("files","{relative}% used",this.storageStats):""}},beforeMount(){setInterval(this.throttleUpdateStorageStats,6e4),(0,dt.Ld)("files:node:created",this.throttleUpdateStorageStats),(0,dt.Ld)("files:node:deleted",this.throttleUpdateStorageStats),(0,dt.Ld)("files:node:moved",this.throttleUpdateStorageStats),(0,dt.Ld)("files:node:updated",this.throttleUpdateStorageStats)},methods:{debounceUpdateStorageStats:(Ui={}.atBegin,Bi(200,(function(t){this.updateStorageStats(t)}),{debounceMode:!1!==(void 0!==Ui&&Ui)})),throttleUpdateStorageStats:Bi(1e3,(function(t){this.updateStorageStats(t)})),async updateStorageStats(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;if(!this.loadingStorageStats){this.loadingStorageStats=!0;try{const t=await le.Z.get((0,re.generateUrl)("/apps/files/api/v1/stats"));if(!t?.data?.data)throw new Error("Invalid storage stats");this.storageStats=t.data.data}catch(n){te.error("Could not refresh storage stats",{error:n}),e&&(0,Pe.x2)(t("files","Could not refresh storage stats"))}finally{this.loadingStorageStats=!1}}},t:Ut.Iu}};var Ui,Di=s(77895),$i={};$i.styleTagTransform=Ee(),$i.setAttributes=Te(),$i.insert=xe().bind(null,"head"),$i.domAPI=be(),$i.insertStyleElement=Se(),we()(Di.Z,$i),Di.Z&&Di.Z.locals&&Di.Z.locals;const zi=(0,Mt.Z)(Oi,(function(){var t=this,e=t._self._c;return t.storageStats?e("NcAppNavigationItem",{staticClass:"app-navigation-entry__settings-quota",class:{"app-navigation-entry__settings-quota--not-unlimited":t.storageStats.quota>=0},attrs:{"aria-label":t.t("files","Storage informations"),loading:t.loadingStorageStats,name:t.storageStatsTitle,title:t.storageStatsTooltip,"data-cy-files-navigation-settings-quota":""},on:{click:function(e){return e.stopPropagation(),e.preventDefault(),t.debounceUpdateStorageStats.apply(null,arguments)}}},[e("ChartPie",{attrs:{slot:"icon",size:20},slot:"icon"}),t._v(" "),t.storageStats.quota>=0?e("NcProgressBar",{attrs:{slot:"extra",error:t.storageStats.relative>80,value:Math.min(t.storageStats.relative,100)},slot:"extra"}):t._e()],1):t._e()}),[],!1,null,"2bae6012",null).exports;var Ri=s(33429),Mi=s(56956);const Vi={name:"ClipboardIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},Hi=(0,Mt.Z)(Vi,(function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon clipboard-icon",attrs:{"aria-hidden":!t.title,"aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("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"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports;var qi=s(6905);const Zi={name:"Setting",props:{el:{type:Function,required:!0}},mounted(){this.$el.appendChild(this.el())}},Gi=(0,Mt.Z)(Zi,(function(){return(0,this._self._c)("div")}),[],!1,null,null,null).exports,Wi={name:"Settings",components:{Clipboard:Hi,NcAppSettingsDialog:Ri.Z,NcAppSettingsSection:Mi.Z,NcCheckboxRadioSwitch:Wn.Z,NcInputField:qi.Z,Setting:Gi},props:{open:{type:Boolean,default:!1}},setup:()=>({userConfigStore:de()}),data:()=>({settings:window.OCA?.Files?.Settings?.settings||[],webdavUrl:(0,re.generateRemoteUrl)("dav/files/"+encodeURIComponent((0,ct.ts)()?.uid)),webdavDocs:"https://docs.nextcloud.com/server/stable/go.php?to=user-webdav",appPasswordUrl:(0,re.generateUrl)("/settings/user/security#generate-app-token-section"),webdavUrlCopied:!1}),computed:{userConfig(){return this.userConfigStore.userConfig}},beforeMount(){this.settings.forEach((t=>t.open()))},beforeDestroy(){this.settings.forEach((t=>t.close()))},methods:{onClose(){this.$emit("close")},setConfig(t,e){this.userConfigStore.update(t,e)},async copyCloudId(){document.querySelector("input#webdav-url-input").select(),navigator.clipboard?(await navigator.clipboard.writeText(this.webdavUrl),this.webdavUrlCopied=!0,(0,Pe.s$)(t("files","WebDAV URL copied to clipboard")),setTimeout((()=>{this.webdavUrlCopied=!1}),5e3)):(0,Pe.x2)(t("files","Clipboard is not available"))},t:Ut.Iu}};var Yi=s(78320),Ki={};Ki.styleTagTransform=Ee(),Ki.setAttributes=Te(),Ki.insert=xe().bind(null,"head"),Ki.domAPI=be(),Ki.insertStyleElement=Se(),we()(Yi.Z,Ki),Yi.Z&&Yi.Z.locals&&Yi.Z.locals;const Ji=(0,Mt.Z)(Wi,(function(){var t=this,e=t._self._c;return e("NcAppSettingsDialog",{attrs:{open:t.open,"show-navigation":!0,name:t.t("files","Files settings")},on:{"update:open":t.onClose}},[e("NcAppSettingsSection",{attrs:{id:"settings",name:t.t("files","Files settings")}},[e("NcCheckboxRadioSwitch",{attrs:{checked:t.userConfig.sort_favorites_first},on:{"update:checked":function(e){return t.setConfig("sort_favorites_first",e)}}},[t._v("\n\t\t\t"+t._s(t.t("files","Sort favorites first"))+"\n\t\t")]),t._v(" "),e("NcCheckboxRadioSwitch",{attrs:{checked:t.userConfig.show_hidden},on:{"update:checked":function(e){return t.setConfig("show_hidden",e)}}},[t._v("\n\t\t\t"+t._s(t.t("files","Show hidden files"))+"\n\t\t")]),t._v(" "),e("NcCheckboxRadioSwitch",{attrs:{checked:t.userConfig.crop_image_previews},on:{"update:checked":function(e){return t.setConfig("crop_image_previews",e)}}},[t._v("\n\t\t\t"+t._s(t.t("files","Crop image previews"))+"\n\t\t")]),t._v(" "),e("NcCheckboxRadioSwitch",{attrs:{checked:t.userConfig.grid_view},on:{"update:checked":function(e){return t.setConfig("grid_view",e)}}},[t._v("\n\t\t\t"+t._s(t.t("files","Enable the grid view"))+"\n\t\t")])],1),t._v(" "),0!==t.settings.length?e("NcAppSettingsSection",{attrs:{id:"more-settings",name:t.t("files","Additional settings")}},[t._l(t.settings,(function(t){return[e("Setting",{key:t.name,attrs:{el:t.el}})]}))],2):t._e(),t._v(" "),e("NcAppSettingsSection",{attrs:{id:"webdav",name:t.t("files","WebDAV")}},[e("NcInputField",{attrs:{id:"webdav-url-input","show-trailing-button":!0,success:t.webdavUrlCopied,"trailing-button-label":t.t("files","Copy to clipboard"),value:t.webdavUrl,readonly:"readonly",type:"url"},on:{focus:function(t){return t.target.select()},"trailing-button-click":t.copyCloudId},scopedSlots:t._u([{key:"trailing-button-icon",fn:function(){return[e("Clipboard",{attrs:{size:20}})]},proxy:!0}])}),t._v(" "),e("em",[e("a",{staticClass:"setting-link",attrs:{href:t.webdavDocs,target:"_blank",rel:"noreferrer noopener"}},[t._v("\n\t\t\t\t"+t._s(t.t("files","Use this address to access your Files via WebDAV"))+" ↗\n\t\t\t")])]),t._v(" "),e("br"),t._v(" "),e("em",[e("a",{staticClass:"setting-link",attrs:{href:t.appPasswordUrl}},[t._v("\n\t\t\t\t"+t._s(t.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,"011c3819",null).exports,Qi={name:"Navigation",components:{Cog:Ei,NavigationQuota:zi,NcAppNavigation:Ni.Z,NcAppNavigationItem:Fi.Z,NcIconSvgWrapper:Gt.Z,SettingsModal:Ji},props:{Navigation:{type:Object,required:!0}},setup:()=>({viewConfigStore:me()}),data:()=>({settingsOpened:!1}),computed:{currentViewId(){return this.$route?.params?.view||"files"},currentView(){return this.views.find((t=>t.id===this.currentViewId))},views(){return this.Navigation.views},parentViews(){return this.views.filter((t=>!t.parent)).sort(((t,e)=>t.order-e.order))},childViews(){return this.views.filter((t=>!!t.parent)).reduce(((t,e)=>(t[e.parent]=[...t[e.parent]||[],e],t[e.parent].sort(((t,e)=>t.order-e.order)),t)),{})}},watch:{currentView(t,e){t.id!==e?.id&&(this.Navigation.setActive(t),te.debug("Navigation changed",{id:t.id,view:t}),this.showView(t))}},beforeMount(){this.currentView&&(te.debug("Navigation mounted. Showing requested view",{view:this.currentView}),this.showView(this.currentView))},methods:{showView(t){window?.OCA?.Files?.Sidebar?.close?.(),this.Navigation.setActive(t),function(t){const e=document.getElementById("page-heading-level-1");e&&(e.textContent=t)}(t.name),(0,dt.j8)("files:navigation:changed",t)},onToggleExpand(t){const e=this.isExpanded(t);t.expanded=!e,this.viewConfigStore.update(t.id,"expanded",!e)},isExpanded(t){return"boolean"==typeof this.viewConfigStore.getConfig(t.id)?.expanded?!0===this.viewConfigStore.getConfig(t.id).expanded:!0===t.expanded},generateToNavigation(t){if(t.params){const{dir:e,fileid:n}=t.params;return{name:"filelist",params:t.params,query:{dir:e,fileid:n}}}return{name:"filelist",params:{view:t.id}}},openSettings(){this.settingsOpened=!0},onSettingsClose(){this.settingsOpened=!1},t:Ut.Iu}};var Xi=s(24852),ta={};ta.styleTagTransform=Ee(),ta.setAttributes=Te(),ta.insert=xe().bind(null,"head"),ta.domAPI=be(),ta.insertStyleElement=Se(),we()(Xi.Z,ta),Xi.Z&&Xi.Z.locals&&Xi.Z.locals;const ea=(0,Mt.Z)(Qi,(function(){var t=this,e=t._self._c;return e("NcAppNavigation",{attrs:{"data-cy-files-navigation":"","aria-label":t.t("files","Files")},scopedSlots:t._u([{key:"list",fn:function(){return t._l(t.parentViews,(function(n){return e("NcAppNavigationItem",{key:n.id,attrs:{"allow-collapse":!0,"data-cy-files-navigation-item":n.id,icon:n.iconClass,open:t.isExpanded(n),pinned:n.sticky,name:n.name,to:t.generateToNavigation(n)},on:{"update:open":function(e){return t.onToggleExpand(n)}}},[n.icon?e("NcIconSvgWrapper",{attrs:{slot:"icon",svg:n.icon},slot:"icon"}):t._e(),t._v(" "),t._l(t.childViews[n.id],(function(n){return e("NcAppNavigationItem",{key:n.id,attrs:{"data-cy-files-navigation-item":n.id,exact:!0,icon:n.iconClass,name:n.name,to:t.generateToNavigation(n)}},[n.icon?e("NcIconSvgWrapper",{attrs:{slot:"icon",svg:n.icon},slot:"icon"}):t._e()],1)}))],2)}))},proxy:!0},{key:"footer",fn:function(){return[e("ul",{staticClass:"app-navigation-entry__settings"},[e("NavigationQuota"),t._v(" "),e("NcAppNavigationItem",{attrs:{"aria-label":t.t("files","Open the files app settings"),name:t.t("files","Files settings"),"data-cy-files-navigation-settings-button":""},on:{click:function(e){return e.preventDefault(),e.stopPropagation(),t.openSettings.apply(null,arguments)}}},[e("Cog",{attrs:{slot:"icon",size:20},slot:"icon"})],1)],1)]},proxy:!0}])},[t._v(" "),t._v(" "),e("SettingsModal",{attrs:{open:t.settingsOpened,"data-cy-files-navigation-settings":""},on:{close:t.onSettingsClose}})],1)}),[],!1,null,"1a7f07dd",null).exports,na="%[a-f0-9]{2}",sa=new RegExp("("+na+")|([^%]+?)","gi"),ia=new RegExp("("+na+")+","gi");function aa(t,e){try{return[decodeURIComponent(t.join(""))]}catch{}if(1===t.length)return t;e=e||1;const n=t.slice(0,e),s=t.slice(e);return Array.prototype.concat.call([],aa(n),aa(s))}function ra(t){try{return decodeURIComponent(t)}catch{let e=t.match(sa)||[];for(let n=1;nnull==t,da=t=>encodeURIComponent(t).replace(/[!'()*]/g,(t=>`%${t.charCodeAt(0).toString(16).toUpperCase()}`)),ua=Symbol("encodeFragmentIdentifier");function ma(t){if("string"!=typeof t||1!==t.length)throw new TypeError("arrayFormatSeparator must be single character string")}function fa(t,e){return e.encode?e.strict?da(t):encodeURIComponent(t):t}function pa(t,e){return e.decode?function(t){if("string"!=typeof t)throw new TypeError("Expected `encodedURI` to be of type `string`, got `"+typeof t+"`");try{return decodeURIComponent(t)}catch{return function(t){const e={"%FE%FF":"��","%FF%FE":"��"};let n=ia.exec(t);for(;n;){try{e[n[0]]=decodeURIComponent(n[0])}catch{const t=ra(n[0]);t!==n[0]&&(e[n[0]]=t)}n=ia.exec(t)}e["%C2"]="�";const s=Object.keys(e);for(const n of s)t=t.replace(new RegExp(n,"g"),e[n]);return t}(t)}}(t):t}function ga(t){return Array.isArray(t)?t.sort():"object"==typeof t?ga(Object.keys(t)).sort(((t,e)=>Number(t)-Number(e))).map((e=>t[e])):t}function ha(t){const e=t.indexOf("#");return-1!==e&&(t=t.slice(0,e)),t}function va(t,e){return e.parseNumbers&&!Number.isNaN(Number(t))&&"string"==typeof t&&""!==t.trim()?t=Number(t):!e.parseBooleans||null===t||"true"!==t.toLowerCase()&&"false"!==t.toLowerCase()||(t="true"===t.toLowerCase()),t}function Aa(t){const e=(t=ha(t)).indexOf("?");return-1===e?"":t.slice(e+1)}function wa(t,e){ma((e={decode:!0,sort:!0,arrayFormat:"none",arrayFormatSeparator:",",parseNumbers:!1,parseBooleans:!1,...e}).arrayFormatSeparator);const n=function(t){let e;switch(t.arrayFormat){case"index":return(t,n,s)=>{e=/\[(\d*)]$/.exec(t),t=t.replace(/\[\d*]$/,""),e?(void 0===s[t]&&(s[t]={}),s[t][e[1]]=n):s[t]=n};case"bracket":return(t,n,s)=>{e=/(\[])$/.exec(t),t=t.replace(/\[]$/,""),e?void 0!==s[t]?s[t]=[...s[t],n]:s[t]=[n]:s[t]=n};case"colon-list-separator":return(t,n,s)=>{e=/(:list)$/.exec(t),t=t.replace(/:list$/,""),e?void 0!==s[t]?s[t]=[...s[t],n]:s[t]=[n]:s[t]=n};case"comma":case"separator":return(e,n,s)=>{const i="string"==typeof n&&n.includes(t.arrayFormatSeparator),a="string"==typeof n&&!i&&pa(n,t).includes(t.arrayFormatSeparator);n=a?pa(n,t):n;const r=i||a?n.split(t.arrayFormatSeparator).map((e=>pa(e,t))):null===n?n:pa(n,t);s[e]=r};case"bracket-separator":return(e,n,s)=>{const i=/(\[])$/.test(e);if(e=e.replace(/\[]$/,""),!i)return void(s[e]=n?pa(n,t):n);const a=null===n?[]:n.split(t.arrayFormatSeparator).map((e=>pa(e,t)));void 0!==s[e]?s[e]=[...s[e],...a]:s[e]=a};default:return(t,e,n)=>{void 0!==n[t]?n[t]=[...[n[t]].flat(),e]:n[t]=e}}}(e),s=Object.create(null);if("string"!=typeof t)return s;if(!(t=t.trim().replace(/^[?#&]/,"")))return s;for(const i of t.split("&")){if(""===i)continue;const t=e.decode?i.replace(/\+/g," "):i;let[a,r]=oa(t,"=");void 0===a&&(a=t),r=void 0===r?null:["comma","separator","bracket-separator"].includes(e.arrayFormat)?r:pa(r,e),n(pa(a,e),r,s)}for(const[t,n]of Object.entries(s))if("object"==typeof n&&null!==n)for(const[t,s]of Object.entries(n))n[t]=va(s,e);else s[t]=va(n,e);return!1===e.sort?s:(!0===e.sort?Object.keys(s).sort():Object.keys(s).sort(e.sort)).reduce(((t,e)=>{const n=s[e];return Boolean(n)&&"object"==typeof n&&!Array.isArray(n)?t[e]=ga(n):t[e]=n,t}),Object.create(null))}function ya(t,e){if(!t)return"";ma((e={encode:!0,strict:!0,arrayFormat:"none",arrayFormatSeparator:",",...e}).arrayFormatSeparator);const n=n=>e.skipNull&&ca(t[n])||e.skipEmptyString&&""===t[n],s=function(t){switch(t.arrayFormat){case"index":return e=>(n,s)=>{const i=n.length;return void 0===s||t.skipNull&&null===s||t.skipEmptyString&&""===s?n:null===s?[...n,[fa(e,t),"[",i,"]"].join("")]:[...n,[fa(e,t),"[",fa(i,t),"]=",fa(s,t)].join("")]};case"bracket":return e=>(n,s)=>void 0===s||t.skipNull&&null===s||t.skipEmptyString&&""===s?n:null===s?[...n,[fa(e,t),"[]"].join("")]:[...n,[fa(e,t),"[]=",fa(s,t)].join("")];case"colon-list-separator":return e=>(n,s)=>void 0===s||t.skipNull&&null===s||t.skipEmptyString&&""===s?n:null===s?[...n,[fa(e,t),":list="].join("")]:[...n,[fa(e,t),":list=",fa(s,t)].join("")];case"comma":case"separator":case"bracket-separator":{const e="bracket-separator"===t.arrayFormat?"[]=":"=";return n=>(s,i)=>void 0===i||t.skipNull&&null===i||t.skipEmptyString&&""===i?s:(i=null===i?"":i,0===s.length?[[fa(n,t),e,fa(i,t)].join("")]:[[s,fa(i,t)].join(t.arrayFormatSeparator)])}default:return e=>(n,s)=>void 0===s||t.skipNull&&null===s||t.skipEmptyString&&""===s?n:null===s?[...n,fa(e,t)]:[...n,[fa(e,t),"=",fa(s,t)].join("")]}}(e),i={};for(const[e,s]of Object.entries(t))n(e)||(i[e]=s);const a=Object.keys(i);return!1!==e.sort&&a.sort(e.sort),a.map((n=>{const i=t[n];return void 0===i?"":null===i?fa(n,e):Array.isArray(i)?0===i.length&&"bracket-separator"===e.arrayFormat?fa(n,e)+"[]":i.reduce(s(n),[]).join("&"):fa(n,e)+"="+fa(i,e)})).filter((t=>t.length>0)).join("&")}function ba(t,e){e={decode:!0,...e};let[n,s]=oa(t,"#");return void 0===n&&(n=t),{url:n?.split("?")?.[0]??"",query:wa(Aa(t),e),...e&&e.parseFragmentIdentifier&&s?{fragmentIdentifier:pa(s,e)}:{}}}function Ca(t,e){e={encode:!0,strict:!0,[ua]:!0,...e};const n=ha(t.url).split("?")[0]||"";let s=ya({...wa(Aa(t.url),{sort:!1}),...t.query},e);s&&(s=`?${s}`);let i=function(t){let e="";const n=t.indexOf("#");return-1!==n&&(e=t.slice(n)),e}(t.url);if(t.fragmentIdentifier){const s=new URL(n);s.hash=t.fragmentIdentifier,i=e[ua]?s.hash:`#${t.fragmentIdentifier}`}return`${n}${s}${i}`}function xa(t,e,n){n={parseFragmentIdentifier:!0,[ua]:!1,...n};const{url:s,query:i,fragmentIdentifier:a}=ba(t,n);return Ca({url:s,query:la(i,e),fragmentIdentifier:a},n)}function _a(t,e,n){return xa(t,Array.isArray(e)?t=>!e.includes(t):(t,n)=>!e(t,n),n)}const Ta=i;var ka=s(25108);function Sa(t,e){for(var n in e)t[n]=e[n];return t}var La=/[!'()*]/g,Ea=function(t){return"%"+t.charCodeAt(0).toString(16)},Na=/%2C/g,Fa=function(t){return encodeURIComponent(t).replace(La,Ea).replace(Na,",")};function Ba(t){try{return decodeURIComponent(t)}catch(t){}return t}var Pa=function(t){return null==t||"object"==typeof t?t:String(t)};function ja(t){var e={};return(t=t.trim().replace(/^(\?|#|&)/,""))?(t.split("&").forEach((function(t){var n=t.replace(/\+/g," ").split("="),s=Ba(n.shift()),i=n.length>0?Ba(n.join("=")):null;void 0===e[s]?e[s]=i:Array.isArray(e[s])?e[s].push(i):e[s]=[e[s],i]})),e):e}function Ia(t){var e=t?Object.keys(t).map((function(e){var n=t[e];if(void 0===n)return"";if(null===n)return Fa(e);if(Array.isArray(n)){var s=[];return n.forEach((function(t){void 0!==t&&(null===t?s.push(Fa(e)):s.push(Fa(e)+"="+Fa(t)))})),s.join("&")}return Fa(e)+"="+Fa(n)})).filter((function(t){return t.length>0})).join("&"):null;return e?"?"+e:""}var Oa=/\/?$/;function Ua(t,e,n,s){var i=s&&s.options.stringifyQuery,a=e.query||{};try{a=Da(a)}catch(t){}var r={name:e.name||t&&t.name,meta:t&&t.meta||{},path:e.path||"/",hash:e.hash||"",query:a,params:e.params||{},fullPath:Ra(e,i),matched:t?za(t):[]};return n&&(r.redirectedFrom=Ra(n,i)),Object.freeze(r)}function Da(t){if(Array.isArray(t))return t.map(Da);if(t&&"object"==typeof t){var e={};for(var n in t)e[n]=Da(t[n]);return e}return t}var $a=Ua(null,{path:"/"});function za(t){for(var e=[];t;)e.unshift(t),t=t.parent;return e}function Ra(t,e){var n=t.path,s=t.query;void 0===s&&(s={});var i=t.hash;return void 0===i&&(i=""),(n||"/")+(e||Ia)(s)+i}function Ma(t,e,n){return e===$a?t===e:!!e&&(t.path&&e.path?t.path.replace(Oa,"")===e.path.replace(Oa,"")&&(n||t.hash===e.hash&&Va(t.query,e.query)):!(!t.name||!e.name)&&t.name===e.name&&(n||t.hash===e.hash&&Va(t.query,e.query)&&Va(t.params,e.params)))}function Va(t,e){if(void 0===t&&(t={}),void 0===e&&(e={}),!t||!e)return t===e;var n=Object.keys(t).sort(),s=Object.keys(e).sort();return n.length===s.length&&n.every((function(n,i){var a=t[n];if(s[i]!==n)return!1;var r=e[n];return null==a||null==r?a===r:"object"==typeof a&&"object"==typeof r?Va(a,r):String(a)===String(r)}))}function Ha(t){for(var e=0;e=0&&(e=t.slice(s),t=t.slice(0,s));var i=t.indexOf("?");return i>=0&&(n=t.slice(i+1),t=t.slice(0,i)),{path:t,query:n,hash:e}}(i.path||""),c=e&&e.path||"/",d=l.path?Ga(l.path,c,n||i.append):c,u=function(t,e,n){void 0===e&&(e={});var s,i=n||ja;try{s=i(t||"")}catch(t){s={}}for(var a in e){var r=e[a];s[a]=Array.isArray(r)?r.map(Pa):Pa(r)}return s}(l.query,i.query,s&&s.options.parseQuery),m=i.hash||l.hash;return m&&"#"!==m.charAt(0)&&(m="#"+m),{_normalized:!0,path:d,query:u,hash:m}}var mr,fr=function(){},pr={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(t){var e=this,n=this.$router,s=this.$route,i=n.resolve(this.to,s,this.append),a=i.location,r=i.route,o=i.href,l={},c=n.options.linkActiveClass,d=n.options.linkExactActiveClass,u=null==c?"router-link-active":c,m=null==d?"router-link-exact-active":d,f=null==this.activeClass?u:this.activeClass,p=null==this.exactActiveClass?m:this.exactActiveClass,g=r.redirectedFrom?Ua(null,ur(r.redirectedFrom),null,n):r;l[p]=Ma(s,g,this.exactPath),l[f]=this.exact||this.exactPath?l[p]:function(t,e){return 0===t.path.replace(Oa,"/").indexOf(e.path.replace(Oa,"/"))&&(!e.hash||t.hash===e.hash)&&function(t,e){for(var n in e)if(!(n in t))return!1;return!0}(t.query,e.query)}(s,g);var h=l[p]?this.ariaCurrentValue:null,v=function(t){gr(t)&&(e.replace?n.replace(a,fr):n.push(a,fr))},A={click:gr};Array.isArray(this.event)?this.event.forEach((function(t){A[t]=v})):A[this.event]=v;var w={class:l},y=!this.$scopedSlots.$hasNormal&&this.$scopedSlots.default&&this.$scopedSlots.default({href:o,route:r,navigate:v,isActive:l[f],isExactActive:l[p]});if(y){if(1===y.length)return y[0];if(y.length>1||!y.length)return 0===y.length?t():t("span",{},y)}if("a"===this.tag)w.on=A,w.attrs={href:o,"aria-current":h};else{var b=hr(this.$slots.default);if(b){b.isStatic=!1;var C=b.data=Sa({},b.data);for(var x in C.on=C.on||{},C.on){var _=C.on[x];x in A&&(C.on[x]=Array.isArray(_)?_:[_])}for(var T in A)T in C.on?C.on[T].push(A[T]):C.on[T]=v;var k=b.data.attrs=Sa({},b.data.attrs);k.href=o,k["aria-current"]=h}else w.on=A}return t(this.tag,w,this.$slots.default)}};function gr(t){if(!(t.metaKey||t.altKey||t.ctrlKey||t.shiftKey||t.defaultPrevented||void 0!==t.button&&0!==t.button)){if(t.currentTarget&&t.currentTarget.getAttribute){var e=t.currentTarget.getAttribute("target");if(/\b_blank\b/i.test(e))return}return t.preventDefault&&t.preventDefault(),!0}}function hr(t){if(t)for(var e,n=0;n-1&&(l.params[m]=n.params[m]);return l.path=dr(d.path,l.params),o(d,l,r)}if(l.path){l.params={};for(var f=0;f-1}function Gr(t,e){return Zr(t)&&t._isRouter&&(null==e||t.type===e)}function Wr(t,e,n){var s=function(i){i>=t.length?n():t[i]?e(t[i],(function(){s(i+1)})):s(i+1)};s(0)}function Yr(t,e){return Kr(t.map((function(t){return Object.keys(t.components).map((function(n){return e(t.components[n],t.instances[n],t,n)}))})))}function Kr(t){return Array.prototype.concat.apply([],t)}var Jr="function"==typeof Symbol&&"symbol"==typeof Symbol.toStringTag;function Qr(t){var e=!1;return function(){for(var n=[],s=arguments.length;s--;)n[s]=arguments[s];if(!e)return e=!0,t.apply(this,n)}}var Xr=function(t,e){this.router=t,this.base=function(t){if(!t)if(vr){var e=document.querySelector("base");t=(t=e&&e.getAttribute("href")||"/").replace(/^https?:\/\/[^\/]+/,"")}else t="/";return"/"!==t.charAt(0)&&(t="/"+t),t.replace(/\/$/,"")}(e),this.current=$a,this.pending=null,this.ready=!1,this.readyCbs=[],this.readyErrorCbs=[],this.errorCbs=[],this.listeners=[]};function to(t,e,n,s){var i=Yr(t,(function(t,s,i,a){var r=function(t,e){return"function"!=typeof t&&(t=mr.extend(t)),t.options[e]}(t,e);if(r)return Array.isArray(r)?r.map((function(t){return n(t,s,i,a)})):n(r,s,i,a)}));return Kr(s?i.reverse():i)}function eo(t,e){if(e)return function(){return t.apply(e,arguments)}}Xr.prototype.listen=function(t){this.cb=t},Xr.prototype.onReady=function(t,e){this.ready?t():(this.readyCbs.push(t),e&&this.readyErrorCbs.push(e))},Xr.prototype.onError=function(t){this.errorCbs.push(t)},Xr.prototype.transitionTo=function(t,e,n){var s,i=this;try{s=this.router.match(t,this.current)}catch(t){throw this.errorCbs.forEach((function(e){e(t)})),t}var a=this.current;this.confirmTransition(s,(function(){i.updateRoute(s),e&&e(s),i.ensureURL(),i.router.afterHooks.forEach((function(t){t&&t(s,a)})),i.ready||(i.ready=!0,i.readyCbs.forEach((function(t){t(s)})))}),(function(t){n&&n(t),t&&!i.ready&&(Gr(t,Mr.redirected)&&a===$a||(i.ready=!0,i.readyErrorCbs.forEach((function(e){e(t)}))))}))},Xr.prototype.confirmTransition=function(t,e,n){var s=this,i=this.current;this.pending=t;var a,r,o=function(t){!Gr(t)&&Zr(t)&&(s.errorCbs.length?s.errorCbs.forEach((function(e){e(t)})):ka.error(t)),n&&n(t)},l=t.matched.length-1,c=i.matched.length-1;if(Ma(t,i)&&l===c&&t.matched[l]===i.matched[c])return this.ensureURL(),t.hash&&Nr(this.router,i,t,!1),o(((r=Hr(a=i,t,Mr.duplicated,'Avoided redundant navigation to current location: "'+a.fullPath+'".')).name="NavigationDuplicated",r));var d,u=function(t,e){var n,s=Math.max(t.length,e.length);for(n=0;n0)){var e=this.router,n=e.options.scrollBehavior,s=$r&&n;s&&this.listeners.push(Er());var i=function(){var n=t.current,i=so(t.base);t.current===$a&&i===t._startLocation||t.transitionTo(i,(function(t){s&&Nr(e,t,n,!0)}))};window.addEventListener("popstate",i),this.listeners.push((function(){window.removeEventListener("popstate",i)}))}},e.prototype.go=function(t){window.history.go(t)},e.prototype.push=function(t,e,n){var s=this,i=this.current;this.transitionTo(t,(function(t){zr(Wa(s.base+t.fullPath)),Nr(s.router,t,i,!1),e&&e(t)}),n)},e.prototype.replace=function(t,e,n){var s=this,i=this.current;this.transitionTo(t,(function(t){Rr(Wa(s.base+t.fullPath)),Nr(s.router,t,i,!1),e&&e(t)}),n)},e.prototype.ensureURL=function(t){if(so(this.base)!==this.current.fullPath){var e=Wa(this.base+this.current.fullPath);t?zr(e):Rr(e)}},e.prototype.getCurrentLocation=function(){return so(this.base)},e}(Xr);function so(t){var e=window.location.pathname,n=e.toLowerCase(),s=t.toLowerCase();return!t||n!==s&&0!==n.indexOf(Wa(s+"/"))||(e=e.slice(t.length)),(e||"/")+window.location.search+window.location.hash}var io=function(t){function e(e,n,s){t.call(this,e,n),s&&function(t){var e=so(t);if(!/^\/#/.test(e))return window.location.replace(Wa(t+"/#"+e)),!0}(this.base)||ao()}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.setupListeners=function(){var t=this;if(!(this.listeners.length>0)){var e=this.router.options.scrollBehavior,n=$r&&e;n&&this.listeners.push(Er());var s=function(){var e=t.current;ao()&&t.transitionTo(ro(),(function(s){n&&Nr(t.router,s,e,!0),$r||co(s.fullPath)}))},i=$r?"popstate":"hashchange";window.addEventListener(i,s),this.listeners.push((function(){window.removeEventListener(i,s)}))}},e.prototype.push=function(t,e,n){var s=this,i=this.current;this.transitionTo(t,(function(t){lo(t.fullPath),Nr(s.router,t,i,!1),e&&e(t)}),n)},e.prototype.replace=function(t,e,n){var s=this,i=this.current;this.transitionTo(t,(function(t){co(t.fullPath),Nr(s.router,t,i,!1),e&&e(t)}),n)},e.prototype.go=function(t){window.history.go(t)},e.prototype.ensureURL=function(t){var e=this.current.fullPath;ro()!==e&&(t?lo(e):co(e))},e.prototype.getCurrentLocation=function(){return ro()},e}(Xr);function ao(){var t=ro();return"/"===t.charAt(0)||(co("/"+t),!1)}function ro(){var t=window.location.href,e=t.indexOf("#");return e<0?"":t=t.slice(e+1)}function oo(t){var e=window.location.href,n=e.indexOf("#");return(n>=0?e.slice(0,n):e)+"#"+t}function lo(t){$r?zr(oo(t)):window.location.hash=t}function co(t){$r?Rr(oo(t)):window.location.replace(oo(t))}var uo=function(t){function e(e,n){t.call(this,e,n),this.stack=[],this.index=-1}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.push=function(t,e,n){var s=this;this.transitionTo(t,(function(t){s.stack=s.stack.slice(0,s.index+1).concat(t),s.index++,e&&e(t)}),n)},e.prototype.replace=function(t,e,n){var s=this;this.transitionTo(t,(function(t){s.stack=s.stack.slice(0,s.index).concat(t),e&&e(t)}),n)},e.prototype.go=function(t){var e=this,n=this.index+t;if(!(n<0||n>=this.stack.length)){var s=this.stack[n];this.confirmTransition(s,(function(){var t=e.current;e.index=n,e.updateRoute(s),e.router.afterHooks.forEach((function(e){e&&e(s,t)}))}),(function(t){Gr(t,Mr.duplicated)&&(e.index=n)}))}},e.prototype.getCurrentLocation=function(){var t=this.stack[this.stack.length-1];return t?t.fullPath:"/"},e.prototype.ensureURL=function(){},e}(Xr),mo=function(t){void 0===t&&(t={}),this.app=null,this.apps=[],this.options=t,this.beforeHooks=[],this.resolveHooks=[],this.afterHooks=[],this.matcher=br(t.routes||[],this);var e=t.mode||"hash";switch(this.fallback="history"===e&&!$r&&!1!==t.fallback,this.fallback&&(e="hash"),vr||(e="abstract"),this.mode=e,e){case"history":this.history=new no(this,t.base);break;case"hash":this.history=new io(this,t.base,this.fallback);break;case"abstract":this.history=new uo(this,t.base)}},fo={currentRoute:{configurable:!0}};mo.prototype.match=function(t,e,n){return this.matcher.match(t,e,n)},fo.currentRoute.get=function(){return this.history&&this.history.current},mo.prototype.init=function(t){var e=this;if(this.apps.push(t),t.$once("hook:destroyed",(function(){var n=e.apps.indexOf(t);n>-1&&e.apps.splice(n,1),e.app===t&&(e.app=e.apps[0]||null),e.app||e.history.teardown()})),!this.app){this.app=t;var n=this.history;if(n instanceof no||n instanceof io){var s=function(t){n.setupListeners(),function(t){var s=n.current,i=e.options.scrollBehavior;$r&&i&&"fullPath"in t&&Nr(e,t,s,!1)}(t)};n.transitionTo(n.getCurrentLocation(),s,s)}n.listen((function(t){e.apps.forEach((function(e){e._route=t}))}))}},mo.prototype.beforeEach=function(t){return go(this.beforeHooks,t)},mo.prototype.beforeResolve=function(t){return go(this.resolveHooks,t)},mo.prototype.afterEach=function(t){return go(this.afterHooks,t)},mo.prototype.onReady=function(t,e){this.history.onReady(t,e)},mo.prototype.onError=function(t){this.history.onError(t)},mo.prototype.push=function(t,e,n){var s=this;if(!e&&!n&&"undefined"!=typeof Promise)return new Promise((function(e,n){s.history.push(t,e,n)}));this.history.push(t,e,n)},mo.prototype.replace=function(t,e,n){var s=this;if(!e&&!n&&"undefined"!=typeof Promise)return new Promise((function(e,n){s.history.replace(t,e,n)}));this.history.replace(t,e,n)},mo.prototype.go=function(t){this.history.go(t)},mo.prototype.back=function(){this.go(-1)},mo.prototype.forward=function(){this.go(1)},mo.prototype.getMatchedComponents=function(t){var e=t?t.matched?t:this.resolve(t).route:this.currentRoute;return e?[].concat.apply([],e.matched.map((function(t){return Object.keys(t.components).map((function(e){return t.components[e]}))}))):[]},mo.prototype.resolve=function(t,e,n){var s=ur(t,e=e||this.history.current,n,this),i=this.match(s,e),a=i.redirectedFrom||i.fullPath,r=function(t,e,n){var s="hash"===n?"#"+e:e;return t?Wa(t+"/"+s):s}(this.history.base,a,this.mode);return{location:s,route:i,href:r,normalizedTo:s,resolved:i}},mo.prototype.getRoutes=function(){return this.matcher.getRoutes()},mo.prototype.addRoute=function(t,e){this.matcher.addRoute(t,e),this.history.current!==$a&&this.history.transitionTo(this.history.getCurrentLocation())},mo.prototype.addRoutes=function(t){this.matcher.addRoutes(t),this.history.current!==$a&&this.history.transitionTo(this.history.getCurrentLocation())},Object.defineProperties(mo.prototype,fo);var po=mo;function go(t,e){return t.push(e),function(){var n=t.indexOf(e);n>-1&&t.splice(n,1)}}mo.install=function t(e){if(!t.installed||mr!==e){t.installed=!0,mr=e;var n=function(t){return void 0!==t},s=function(t,e){var s=t.$options._parentVnode;n(s)&&n(s=s.data)&&n(s=s.registerRouteInstance)&&s(t,e)};e.mixin({beforeCreate:function(){n(this.$options.router)?(this._routerRoot=this,this._router=this.$options.router,this._router.init(this),e.util.defineReactive(this,"_route",this._router.history.current)):this._routerRoot=this.$parent&&this.$parent._routerRoot||this,s(this,this)},destroyed:function(){s(this)}}),Object.defineProperty(e.prototype,"$router",{get:function(){return this._routerRoot._router}}),Object.defineProperty(e.prototype,"$route",{get:function(){return this._routerRoot._route}}),e.component("RouterView",qa),e.component("RouterLink",pr);var i=e.config.optionMergeStrategies;i.beforeRouteEnter=i.beforeRouteLeave=i.beforeRouteUpdate=i.created}},mo.version="3.6.5",mo.isNavigationFailure=Gr,mo.NavigationFailureType=Mr,mo.START_LOCATION=$a,vr&&window.Vue&&window.Vue.use(mo),a.default.use(po);const ho=po.prototype.push;po.prototype.push=function(t,e,n){return e||n?ho.call(this,t,e,n):ho.call(this,t).catch((t=>t))};const vo=new po({mode:"history",base:(0,re.generateUrl)("/apps/files"),linkActiveClass:"active",routes:[{path:"/",redirect:{name:"filelist"}},{path:"/:view/:fileid?",name:"filelist",props:!0}],stringifyQuery(t){const e=Ta.stringify(t).replace(/%2F/gim,"/");return e?"?"+e:""}});function Ao(t,e,n){return(e=function(t){var e=function(t,e){if("object"!=typeof t||null===t)return t;var n=t[Symbol.toPrimitive];if(void 0!==n){var s=n.call(t,"string");if("object"!=typeof s)return s;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==typeof e?e:String(e)}(e))in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}var wo=s(25108);s.nc=btoa((0,ct.IH)()),window.OCA.Files=window.OCA.Files??{},window.OCP.Files=window.OCP.Files??{};const yo=new class{constructor(t){var e,n,s;e=this,s=void 0,(n=function(t){var e=function(t,e){if("object"!=typeof t||null===t)return t;var n=t[Symbol.toPrimitive];if(void 0!==n){var s=n.call(t,"string");if("object"!=typeof s)return s;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==typeof e?e:String(e)}(n="_router"))in e?Object.defineProperty(e,n,{value:s,enumerable:!0,configurable:!0,writable:!0}):e[n]=s,this._router=t}get name(){return this._router.currentRoute.name}get query(){return this._router.currentRoute.query||{}}get params(){return this._router.currentRoute.params||{}}goTo(t){let e=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return this._router.push({path:t,replace:e})}goToRoute(t,e,n,s){return this._router.push({name:t,query:n,params:e,replace:s})}}(vo);Object.assign(window.OCP.Files,{Router:yo}),a.default.use((function(t){t.mixin({beforeCreate(){const t=this.$options;if(t.pinia){const e=t.pinia;if(!this._provided){const t={};Object.defineProperty(this,"_provided",{get:()=>t,set:e=>Object.assign(t,e)})}this._provided[v]=e,this.$pinia||(this.$pinia=e),e._a=this,y&&h(e),b&&G(e._a,e)}else!this.$pinia&&t.parent&&t.parent.$pinia&&(this.$pinia=t.parent.$pinia)},destroyed(){delete this._pStores}})}));const bo=function(){const t=(0,a.effectScope)(!0),e=t.run((()=>(0,a.ref)({})));let n=[],s=[];const i=(0,a.markRaw)({install(t){h(i),r||(i._a=t,t.provide(v,i),t.config.globalProperties.$pinia=i,b&&G(t,i),s.forEach((t=>n.push(t))),s=[])},use(t){return this._a||r?n.push(t):s.push(t),this},_p:n,_a:null,_e:t,_s:new Map,state:e});return b&&"undefined"!=typeof Proxy&&i.use(J),i}(),Co=(0,lt.Ti)();a.default.prototype.$navigation=Co;const xo=new class{constructor(){var t,e,n;t=this,n=void 0,(e=function(t){var e=function(t,e){if("object"!=typeof t||null===t)return t;var n=t[Symbol.toPrimitive];if(void 0!==n){var s=n.call(t,"string");if("object"!=typeof s)return s;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==typeof e?e:String(e)}(e="_settings"))in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,this._settings=[],wo.debug("OCA.Files.Settings initialized")}register(t){return this._settings.filter((e=>e.name===t.name)).length>0?(wo.error("A setting with the same name is already registered"),!1):(this._settings.push(t),!0)}get settings(){return this._settings}};Object.assign(window.OCA.Files,{Settings:xo}),Object.assign(window.OCA.Files.Settings,{Setting:class{constructor(t,e){let{el:n,open:s,close:i}=e;Ao(this,"_close",void 0),Ao(this,"_el",void 0),Ao(this,"_name",void 0),Ao(this,"_open",void 0),this._name=t,this._el=n,this._open=s,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(a.default.extend(ea))({name:"FilesNavigationRoot",propsData:{Navigation:Co},router:vo,pinia:bo}).$mount("#app-navigation-files"),new(a.default.extend(ki))({name:"FilesListRoot",router:vo,pinia:bo}).$mount("#app-content-vue")},51473:(t,e,n)=>{"use strict";n.d(e,{Z:()=>p});var s=n(87537),i=n.n(s),a=n(23645),r=n.n(a),o=n(61667),l=n.n(o),c=new URL(n(81490),n.b),d=new URL(n(90888),n.b),u=r()(i()),m=l()(c),f=l()(d);u.push([t.id,`@charset "UTF-8";\n/**\n * @copyright Copyright (c) 2019 Julius Härtl \n *\n * @author Julius Härtl \n * @author John Molakvoæ \n *\n * @license GNU AGPL version 3 or any later version\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.toastify.dialogs {\n min-width: 200px;\n background: none;\n background-color: var(--color-main-background);\n color: var(--color-main-text);\n box-shadow: 0 0 6px 0 var(--color-box-shadow);\n padding: 0 12px;\n margin-top: 45px;\n position: fixed;\n z-index: 10100;\n border-radius: var(--border-radius);\n display: flex;\n align-items: center;\n}\n.toastify.dialogs .toast-undo-container {\n display: flex;\n align-items: center;\n}\n.toastify.dialogs .toast-undo-button,\n.toastify.dialogs .toast-close {\n position: static;\n overflow: hidden;\n box-sizing: border-box;\n min-width: 44px;\n height: 100%;\n padding: 12px;\n white-space: nowrap;\n background-repeat: no-repeat;\n background-position: center;\n background-color: transparent;\n min-height: 0;\n}\n.toastify.dialogs .toast-undo-button.toast-close,\n.toastify.dialogs .toast-close.toast-close {\n text-indent: 0;\n opacity: .4;\n border: none;\n min-height: 44px;\n margin-left: 10px;\n font-size: 0;\n}\n.toastify.dialogs .toast-undo-button.toast-close:before,\n.toastify.dialogs .toast-close.toast-close:before {\n background-image: url(${m});\n content: " ";\n filter: var(--background-invert-if-dark);\n display: inline-block;\n width: 16px;\n height: 16px;\n}\n.toastify.dialogs .toast-undo-button.toast-undo-button,\n.toastify.dialogs .toast-close.toast-undo-button {\n height: calc(100% - 6px);\n margin: 3px 3px 3px 12px;\n}\n.toastify.dialogs .toast-undo-button:hover,\n.toastify.dialogs .toast-undo-button:focus,\n.toastify.dialogs .toast-undo-button:active,\n.toastify.dialogs .toast-close:hover,\n.toastify.dialogs .toast-close:focus,\n.toastify.dialogs .toast-close:active {\n cursor: pointer;\n opacity: 1;\n}\n.toastify.dialogs.toastify-top {\n right: 10px;\n}\n.toastify.dialogs.toast-with-click {\n cursor: pointer;\n}\n.toastify.dialogs.toast-error {\n border-left: 3px solid var(--color-error);\n}\n.toastify.dialogs.toast-info {\n border-left: 3px solid var(--color-primary);\n}\n.toastify.dialogs.toast-warning {\n border-left: 3px solid var(--color-warning);\n}\n.toastify.dialogs.toast-success,\n.toastify.dialogs.toast-undo {\n border-left: 3px solid var(--color-success);\n}\n.theme--dark .toastify.dialogs .toast-close.toast-close:before {\n background-image: url(${f});\n}\n._file-picker__file-icon_1vgv4_5 {\n width: 32px;\n height: 32px;\n min-width: 32px;\n min-height: 32px;\n background-repeat: no-repeat;\n background-size: contain;\n display: flex;\n justify-content: center;\n}\ntr.file-picker__row[data-v-6aded0d9] {\n height: var(--row-height, 50px);\n}\ntr.file-picker__row td[data-v-6aded0d9] {\n cursor: pointer;\n overflow: hidden;\n text-overflow: ellipsis;\n border-bottom: none;\n}\ntr.file-picker__row td[data-v-6aded0d9]:not(.row-checkbox) {\n padding-inline: 14px 0;\n}\ntr.file-picker__row td.row-size[data-v-6aded0d9] {\n text-align: end;\n padding-inline: 0 14px;\n}\ntr.file-picker__row td.row-name[data-v-6aded0d9] {\n padding-inline: 2px 0;\n}\n@keyframes gradient-6aded0d9 {\n 0% {\n background-position: 0% 50%;\n }\n 50% {\n background-position: 100% 50%;\n }\n to {\n background-position: 0% 50%;\n }\n}\n.loading-row .row-checkbox[data-v-6aded0d9] {\n text-align: center !important;\n}\n.loading-row span[data-v-6aded0d9] {\n display: inline-block;\n height: 24px;\n background: linear-gradient(to right, var(--color-background-darker), var(--color-text-maxcontrast), var(--color-background-darker));\n background-size: 600px 100%;\n border-radius: var(--border-radius);\n animation: gradient-6aded0d9 12s ease infinite;\n}\n.loading-row .row-wrapper[data-v-6aded0d9] {\n display: inline-flex;\n align-items: center;\n}\n.loading-row .row-checkbox span[data-v-6aded0d9] {\n width: 24px;\n}\n.loading-row .row-name span[data-v-6aded0d9]:last-of-type {\n margin-inline-start: 6px;\n width: 130px;\n}\n.loading-row .row-size span[data-v-6aded0d9] {\n width: 80px;\n}\n.loading-row .row-modified span[data-v-6aded0d9] {\n width: 90px;\n}\ntr.file-picker__row[data-v-ee6f34b5] {\n height: var(--row-height, 50px);\n}\ntr.file-picker__row td[data-v-ee6f34b5] {\n cursor: pointer;\n overflow: hidden;\n text-overflow: ellipsis;\n border-bottom: none;\n}\ntr.file-picker__row td[data-v-ee6f34b5]:not(.row-checkbox) {\n padding-inline: 14px 0;\n}\ntr.file-picker__row td.row-size[data-v-ee6f34b5] {\n text-align: end;\n padding-inline: 0 14px;\n}\ntr.file-picker__row td.row-name[data-v-ee6f34b5] {\n padding-inline: 2px 0;\n}\n.file-picker__row--selected[data-v-ee6f34b5] {\n background-color: var(--color-background-dark);\n}\n.file-picker__row[data-v-ee6f34b5]:hover {\n background-color: var(--color-background-hover);\n}\n.file-picker__name-container[data-v-ee6f34b5] {\n display: flex;\n justify-content: start;\n align-items: center;\n height: 100%;\n}\n.file-picker__file-name[data-v-ee6f34b5] {\n padding-inline-start: 6px;\n min-width: 0;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n.file-picker__file-extension[data-v-ee6f34b5] {\n color: var(--color-text-maxcontrast);\n min-width: fit-content;\n}\n.file-picker__header-preview[data-v-4297db37] {\n width: 22px;\n height: 32px;\n flex: 0 0 auto;\n}\n.file-picker__files[data-v-4297db37] {\n margin: 2px;\n margin-inline-start: 12px;\n overflow: scroll auto;\n}\n.file-picker__files table[data-v-4297db37] {\n width: 100%;\n max-height: 100%;\n table-layout: fixed;\n}\n.file-picker__files th[data-v-4297db37] {\n position: -webkit-sticky;\n position: sticky;\n z-index: 1;\n top: 0;\n background-color: var(--color-main-background);\n padding: 2px;\n}\n.file-picker__files th .header-wrapper[data-v-4297db37] {\n display: flex;\n}\n.file-picker__files th.row-checkbox[data-v-4297db37] {\n width: 44px;\n}\n.file-picker__files th.row-name[data-v-4297db37] {\n width: 230px;\n}\n.file-picker__files th.row-size[data-v-4297db37] {\n width: 100px;\n}\n.file-picker__files th.row-modified[data-v-4297db37] {\n width: 120px;\n}\n.file-picker__files th[data-v-4297db37]:not(.row-size) .button-vue__wrapper {\n justify-content: start;\n flex-direction: row-reverse;\n}\n.file-picker__files th[data-v-4297db37]:not(.row-size) .button-vue {\n padding-inline: 16px 4px;\n}\n.file-picker__files th.row-size[data-v-4297db37] .button-vue__wrapper {\n justify-content: end;\n}\n.file-picker__files th[data-v-4297db37] .button-vue__wrapper {\n color: var(--color-text-maxcontrast);\n}\n.file-picker__files th[data-v-4297db37] .button-vue__wrapper .button-vue__text {\n font-weight: 400;\n}\n.file-picker__breadcrumbs[data-v-3bc9efa5] {\n flex-grow: 0 !important;\n}\n.file-picker__side[data-v-fcfd0f23] {\n display: flex;\n flex-direction: column;\n align-items: start;\n gap: .5rem;\n min-width: 200px;\n padding-block: 2px;\n overflow: auto;\n}\n.file-picker__side[data-v-fcfd0f23] .button-vue__wrapper {\n justify-content: start;\n}\n.file-picker__filter-input[data-v-fcfd0f23] {\n margin-block: 7px;\n max-width: 260px;\n}\n@media (max-width: 736px) {\n .file-picker__side[data-v-fcfd0f23] {\n flex-direction: row;\n min-width: unset;\n }\n}\n@media (max-width: 512px) {\n .file-picker__side[data-v-fcfd0f23] {\n flex-direction: row;\n min-width: unset;\n }\n .file-picker__filter-input[data-v-fcfd0f23] {\n max-width: unset;\n }\n}\n.file-picker__navigation {\n padding-inline: 2px;\n}\n.file-picker__navigation,\n.file-picker__navigation * {\n box-sizing: border-box;\n}\n.file-picker__navigation .v-select.select {\n min-width: 220px;\n}\n@media (min-width: 513px) and (max-width: 736px) {\n .file-picker__navigation {\n gap: 11px;\n }\n}\n@media (max-width: 512px) {\n .file-picker__navigation {\n flex-direction: column-reverse !important;\n }\n}\n.file-picker__view[data-v-86a13079] {\n height: 50px;\n display: flex;\n justify-content: start;\n align-items: center;\n}\n.file-picker__view h3[data-v-86a13079] {\n font-weight: 700;\n height: fit-content;\n margin: 0;\n}\n.file-picker__main[data-v-86a13079] {\n box-sizing: border-box;\n width: 100%;\n display: flex;\n flex-direction: column;\n min-height: 0;\n flex: 1;\n padding-inline: 2px;\n}\n.file-picker__main *[data-v-86a13079] {\n box-sizing: border-box;\n}\n[data-v-86a13079] .file-picker {\n height: min(80vh, 800px);\n}\n@media (max-width: 512px) {\n [data-v-86a13079] .file-picker {\n height: calc(100% - 16px - var(--default-clickable-area));\n }\n}\n[data-v-86a13079] .file-picker__content {\n display: flex;\n flex-direction: column;\n overflow: hidden;\n}\n`,"",{version:3,sources:["webpack://./node_modules/@nextcloud/dialogs/dist/style.css"],names:[],mappings:"AAAA,gBAAgB;AAChB;;;;;;;;;;;;;;;;;;;;EAoBE;AACF;EACE,gBAAgB;EAChB,gBAAgB;EAChB,8CAA8C;EAC9C,6BAA6B;EAC7B,6CAA6C;EAC7C,eAAe;EACf,gBAAgB;EAChB,eAAe;EACf,cAAc;EACd,mCAAmC;EACnC,aAAa;EACb,mBAAmB;AACrB;AACA;EACE,aAAa;EACb,mBAAmB;AACrB;AACA;;EAEE,gBAAgB;EAChB,gBAAgB;EAChB,sBAAsB;EACtB,eAAe;EACf,YAAY;EACZ,aAAa;EACb,mBAAmB;EACnB,4BAA4B;EAC5B,2BAA2B;EAC3B,6BAA6B;EAC7B,aAAa;AACf;AACA;;EAEE,cAAc;EACd,WAAW;EACX,YAAY;EACZ,gBAAgB;EAChB,iBAAiB;EACjB,YAAY;AACd;AACA;;EAEE,yDAAiR;EACjR,YAAY;EACZ,wCAAwC;EACxC,qBAAqB;EACrB,WAAW;EACX,YAAY;AACd;AACA;;EAEE,wBAAwB;EACxB,wBAAwB;AAC1B;AACA;;;;;;EAME,eAAe;EACf,UAAU;AACZ;AACA;EACE,WAAW;AACb;AACA;EACE,eAAe;AACjB;AACA;EACE,yCAAyC;AAC3C;AACA;EACE,2CAA2C;AAC7C;AACA;EACE,2CAA2C;AAC7C;AACA;;EAEE,2CAA2C;AAC7C;AACA;EACE,yDAAiU;AACnU;AACA;EACE,WAAW;EACX,YAAY;EACZ,eAAe;EACf,gBAAgB;EAChB,4BAA4B;EAC5B,wBAAwB;EACxB,aAAa;EACb,uBAAuB;AACzB;AACA;EACE,+BAA+B;AACjC;AACA;EACE,eAAe;EACf,gBAAgB;EAChB,uBAAuB;EACvB,mBAAmB;AACrB;AACA;EACE,sBAAsB;AACxB;AACA;EACE,eAAe;EACf,sBAAsB;AACxB;AACA;EACE,qBAAqB;AACvB;AACA;EACE;IACE,2BAA2B;EAC7B;EACA;IACE,6BAA6B;EAC/B;EACA;IACE,2BAA2B;EAC7B;AACF;AACA;EACE,6BAA6B;AAC/B;AACA;EACE,qBAAqB;EACrB,YAAY;EACZ,oIAAoI;EACpI,2BAA2B;EAC3B,mCAAmC;EACnC,8CAA8C;AAChD;AACA;EACE,oBAAoB;EACpB,mBAAmB;AACrB;AACA;EACE,WAAW;AACb;AACA;EACE,wBAAwB;EACxB,YAAY;AACd;AACA;EACE,WAAW;AACb;AACA;EACE,WAAW;AACb;AACA;EACE,+BAA+B;AACjC;AACA;EACE,eAAe;EACf,gBAAgB;EAChB,uBAAuB;EACvB,mBAAmB;AACrB;AACA;EACE,sBAAsB;AACxB;AACA;EACE,eAAe;EACf,sBAAsB;AACxB;AACA;EACE,qBAAqB;AACvB;AACA;EACE,8CAA8C;AAChD;AACA;EACE,+CAA+C;AACjD;AACA;EACE,aAAa;EACb,sBAAsB;EACtB,mBAAmB;EACnB,YAAY;AACd;AACA;EACE,yBAAyB;EACzB,YAAY;EACZ,gBAAgB;EAChB,uBAAuB;AACzB;AACA;EACE,oCAAoC;EACpC,sBAAsB;AACxB;AACA;EACE,WAAW;EACX,YAAY;EACZ,cAAc;AAChB;AACA;EACE,WAAW;EACX,yBAAyB;EACzB,qBAAqB;AACvB;AACA;EACE,WAAW;EACX,gBAAgB;EAChB,mBAAmB;AACrB;AACA;EACE,wBAAwB;EACxB,gBAAgB;EAChB,UAAU;EACV,MAAM;EACN,8CAA8C;EAC9C,YAAY;AACd;AACA;EACE,aAAa;AACf;AACA;EACE,WAAW;AACb;AACA;EACE,YAAY;AACd;AACA;EACE,YAAY;AACd;AACA;EACE,YAAY;AACd;AACA;EACE,sBAAsB;EACtB,2BAA2B;AAC7B;AACA;EACE,wBAAwB;AAC1B;AACA;EACE,oBAAoB;AACtB;AACA;EACE,oCAAoC;AACtC;AACA;EACE,gBAAgB;AAClB;AACA;EACE,uBAAuB;AACzB;AACA;EACE,aAAa;EACb,sBAAsB;EACtB,kBAAkB;EAClB,UAAU;EACV,gBAAgB;EAChB,kBAAkB;EAClB,cAAc;AAChB;AACA;EACE,sBAAsB;AACxB;AACA;EACE,iBAAiB;EACjB,gBAAgB;AAClB;AACA;EACE;IACE,mBAAmB;IACnB,gBAAgB;EAClB;AACF;AACA;EACE;IACE,mBAAmB;IACnB,gBAAgB;EAClB;EACA;IACE,gBAAgB;EAClB;AACF;AACA;EACE,mBAAmB;AACrB;AACA;;EAEE,sBAAsB;AACxB;AACA;EACE,gBAAgB;AAClB;AACA;EACE;IACE,SAAS;EACX;AACF;AACA;EACE;IACE,yCAAyC;EAC3C;AACF;AACA;EACE,YAAY;EACZ,aAAa;EACb,sBAAsB;EACtB,mBAAmB;AACrB;AACA;EACE,gBAAgB;EAChB,mBAAmB;EACnB,SAAS;AACX;AACA;EACE,sBAAsB;EACtB,WAAW;EACX,aAAa;EACb,sBAAsB;EACtB,aAAa;EACb,OAAO;EACP,mBAAmB;AACrB;AACA;EACE,sBAAsB;AACxB;AACA;EACE,wBAAwB;AAC1B;AACA;EACE;IACE,yDAAyD;EAC3D;AACF;AACA;EACE,aAAa;EACb,sBAAsB;EACtB,gBAAgB;AAClB",sourcesContent:['@charset "UTF-8";\n/**\n * @copyright Copyright (c) 2019 Julius Härtl \n *\n * @author Julius Härtl \n * @author John Molakvoæ \n *\n * @license GNU AGPL version 3 or any later version\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.toastify.dialogs {\n min-width: 200px;\n background: none;\n background-color: var(--color-main-background);\n color: var(--color-main-text);\n box-shadow: 0 0 6px 0 var(--color-box-shadow);\n padding: 0 12px;\n margin-top: 45px;\n position: fixed;\n z-index: 10100;\n border-radius: var(--border-radius);\n display: flex;\n align-items: center;\n}\n.toastify.dialogs .toast-undo-container {\n display: flex;\n align-items: center;\n}\n.toastify.dialogs .toast-undo-button,\n.toastify.dialogs .toast-close {\n position: static;\n overflow: hidden;\n box-sizing: border-box;\n min-width: 44px;\n height: 100%;\n padding: 12px;\n white-space: nowrap;\n background-repeat: no-repeat;\n background-position: center;\n background-color: transparent;\n min-height: 0;\n}\n.toastify.dialogs .toast-undo-button.toast-close,\n.toastify.dialogs .toast-close.toast-close {\n text-indent: 0;\n opacity: .4;\n border: none;\n min-height: 44px;\n margin-left: 10px;\n font-size: 0;\n}\n.toastify.dialogs .toast-undo-button.toast-close:before,\n.toastify.dialogs .toast-close.toast-close:before {\n background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGhlaWdodD0iMTYiIHdpZHRoPSIxNiI+CiAgPHBhdGggZD0iTTE0IDEyLjNMMTIuMyAxNCA4IDkuNyAzLjcgMTQgMiAxMi4zIDYuMyA4IDIgMy43IDMuNyAyIDggNi4zIDEyLjMgMiAxNCAzLjcgOS43IDh6Ii8+Cjwvc3ZnPgo=);\n content: " ";\n filter: var(--background-invert-if-dark);\n display: inline-block;\n width: 16px;\n height: 16px;\n}\n.toastify.dialogs .toast-undo-button.toast-undo-button,\n.toastify.dialogs .toast-close.toast-undo-button {\n height: calc(100% - 6px);\n margin: 3px 3px 3px 12px;\n}\n.toastify.dialogs .toast-undo-button:hover,\n.toastify.dialogs .toast-undo-button:focus,\n.toastify.dialogs .toast-undo-button:active,\n.toastify.dialogs .toast-close:hover,\n.toastify.dialogs .toast-close:focus,\n.toastify.dialogs .toast-close:active {\n cursor: pointer;\n opacity: 1;\n}\n.toastify.dialogs.toastify-top {\n right: 10px;\n}\n.toastify.dialogs.toast-with-click {\n cursor: pointer;\n}\n.toastify.dialogs.toast-error {\n border-left: 3px solid var(--color-error);\n}\n.toastify.dialogs.toast-info {\n border-left: 3px solid var(--color-primary);\n}\n.toastify.dialogs.toast-warning {\n border-left: 3px solid var(--color-warning);\n}\n.toastify.dialogs.toast-success,\n.toastify.dialogs.toast-undo {\n border-left: 3px solid var(--color-success);\n}\n.theme--dark .toastify.dialogs .toast-close.toast-close:before {\n background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGhlaWdodD0iMTYiIHdpZHRoPSIxNiI+CiAgPHBhdGggZD0iTTE0IDEyLjNMMTIuMyAxNCA4IDkuNyAzLjcgMTQgMiAxMi4zIDYuMyA4IDIgMy43IDMuNyAyIDggNi4zIDEyLjMgMiAxNCAzLjcgOS43IDh6IiBzdHlsZT0iZmlsbC1vcGFjaXR5OjE7ZmlsbDojZmZmZmZmIi8+Cjwvc3ZnPgo=);\n}\n._file-picker__file-icon_1vgv4_5 {\n width: 32px;\n height: 32px;\n min-width: 32px;\n min-height: 32px;\n background-repeat: no-repeat;\n background-size: contain;\n display: flex;\n justify-content: center;\n}\ntr.file-picker__row[data-v-6aded0d9] {\n height: var(--row-height, 50px);\n}\ntr.file-picker__row td[data-v-6aded0d9] {\n cursor: pointer;\n overflow: hidden;\n text-overflow: ellipsis;\n border-bottom: none;\n}\ntr.file-picker__row td[data-v-6aded0d9]:not(.row-checkbox) {\n padding-inline: 14px 0;\n}\ntr.file-picker__row td.row-size[data-v-6aded0d9] {\n text-align: end;\n padding-inline: 0 14px;\n}\ntr.file-picker__row td.row-name[data-v-6aded0d9] {\n padding-inline: 2px 0;\n}\n@keyframes gradient-6aded0d9 {\n 0% {\n background-position: 0% 50%;\n }\n 50% {\n background-position: 100% 50%;\n }\n to {\n background-position: 0% 50%;\n }\n}\n.loading-row .row-checkbox[data-v-6aded0d9] {\n text-align: center !important;\n}\n.loading-row span[data-v-6aded0d9] {\n display: inline-block;\n height: 24px;\n background: linear-gradient(to right, var(--color-background-darker), var(--color-text-maxcontrast), var(--color-background-darker));\n background-size: 600px 100%;\n border-radius: var(--border-radius);\n animation: gradient-6aded0d9 12s ease infinite;\n}\n.loading-row .row-wrapper[data-v-6aded0d9] {\n display: inline-flex;\n align-items: center;\n}\n.loading-row .row-checkbox span[data-v-6aded0d9] {\n width: 24px;\n}\n.loading-row .row-name span[data-v-6aded0d9]:last-of-type {\n margin-inline-start: 6px;\n width: 130px;\n}\n.loading-row .row-size span[data-v-6aded0d9] {\n width: 80px;\n}\n.loading-row .row-modified span[data-v-6aded0d9] {\n width: 90px;\n}\ntr.file-picker__row[data-v-ee6f34b5] {\n height: var(--row-height, 50px);\n}\ntr.file-picker__row td[data-v-ee6f34b5] {\n cursor: pointer;\n overflow: hidden;\n text-overflow: ellipsis;\n border-bottom: none;\n}\ntr.file-picker__row td[data-v-ee6f34b5]:not(.row-checkbox) {\n padding-inline: 14px 0;\n}\ntr.file-picker__row td.row-size[data-v-ee6f34b5] {\n text-align: end;\n padding-inline: 0 14px;\n}\ntr.file-picker__row td.row-name[data-v-ee6f34b5] {\n padding-inline: 2px 0;\n}\n.file-picker__row--selected[data-v-ee6f34b5] {\n background-color: var(--color-background-dark);\n}\n.file-picker__row[data-v-ee6f34b5]:hover {\n background-color: var(--color-background-hover);\n}\n.file-picker__name-container[data-v-ee6f34b5] {\n display: flex;\n justify-content: start;\n align-items: center;\n height: 100%;\n}\n.file-picker__file-name[data-v-ee6f34b5] {\n padding-inline-start: 6px;\n min-width: 0;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n.file-picker__file-extension[data-v-ee6f34b5] {\n color: var(--color-text-maxcontrast);\n min-width: fit-content;\n}\n.file-picker__header-preview[data-v-4297db37] {\n width: 22px;\n height: 32px;\n flex: 0 0 auto;\n}\n.file-picker__files[data-v-4297db37] {\n margin: 2px;\n margin-inline-start: 12px;\n overflow: scroll auto;\n}\n.file-picker__files table[data-v-4297db37] {\n width: 100%;\n max-height: 100%;\n table-layout: fixed;\n}\n.file-picker__files th[data-v-4297db37] {\n position: -webkit-sticky;\n position: sticky;\n z-index: 1;\n top: 0;\n background-color: var(--color-main-background);\n padding: 2px;\n}\n.file-picker__files th .header-wrapper[data-v-4297db37] {\n display: flex;\n}\n.file-picker__files th.row-checkbox[data-v-4297db37] {\n width: 44px;\n}\n.file-picker__files th.row-name[data-v-4297db37] {\n width: 230px;\n}\n.file-picker__files th.row-size[data-v-4297db37] {\n width: 100px;\n}\n.file-picker__files th.row-modified[data-v-4297db37] {\n width: 120px;\n}\n.file-picker__files th[data-v-4297db37]:not(.row-size) .button-vue__wrapper {\n justify-content: start;\n flex-direction: row-reverse;\n}\n.file-picker__files th[data-v-4297db37]:not(.row-size) .button-vue {\n padding-inline: 16px 4px;\n}\n.file-picker__files th.row-size[data-v-4297db37] .button-vue__wrapper {\n justify-content: end;\n}\n.file-picker__files th[data-v-4297db37] .button-vue__wrapper {\n color: var(--color-text-maxcontrast);\n}\n.file-picker__files th[data-v-4297db37] .button-vue__wrapper .button-vue__text {\n font-weight: 400;\n}\n.file-picker__breadcrumbs[data-v-3bc9efa5] {\n flex-grow: 0 !important;\n}\n.file-picker__side[data-v-fcfd0f23] {\n display: flex;\n flex-direction: column;\n align-items: start;\n gap: .5rem;\n min-width: 200px;\n padding-block: 2px;\n overflow: auto;\n}\n.file-picker__side[data-v-fcfd0f23] .button-vue__wrapper {\n justify-content: start;\n}\n.file-picker__filter-input[data-v-fcfd0f23] {\n margin-block: 7px;\n max-width: 260px;\n}\n@media (max-width: 736px) {\n .file-picker__side[data-v-fcfd0f23] {\n flex-direction: row;\n min-width: unset;\n }\n}\n@media (max-width: 512px) {\n .file-picker__side[data-v-fcfd0f23] {\n flex-direction: row;\n min-width: unset;\n }\n .file-picker__filter-input[data-v-fcfd0f23] {\n max-width: unset;\n }\n}\n.file-picker__navigation {\n padding-inline: 2px;\n}\n.file-picker__navigation,\n.file-picker__navigation * {\n box-sizing: border-box;\n}\n.file-picker__navigation .v-select.select {\n min-width: 220px;\n}\n@media (min-width: 513px) and (max-width: 736px) {\n .file-picker__navigation {\n gap: 11px;\n }\n}\n@media (max-width: 512px) {\n .file-picker__navigation {\n flex-direction: column-reverse !important;\n }\n}\n.file-picker__view[data-v-86a13079] {\n height: 50px;\n display: flex;\n justify-content: start;\n align-items: center;\n}\n.file-picker__view h3[data-v-86a13079] {\n font-weight: 700;\n height: fit-content;\n margin: 0;\n}\n.file-picker__main[data-v-86a13079] {\n box-sizing: border-box;\n width: 100%;\n display: flex;\n flex-direction: column;\n min-height: 0;\n flex: 1;\n padding-inline: 2px;\n}\n.file-picker__main *[data-v-86a13079] {\n box-sizing: border-box;\n}\n[data-v-86a13079] .file-picker {\n height: min(80vh, 800px);\n}\n@media (max-width: 512px) {\n [data-v-86a13079] .file-picker {\n height: calc(100% - 16px - var(--default-clickable-area));\n }\n}\n[data-v-86a13079] .file-picker__content {\n display: flex;\n flex-direction: column;\n overflow: hidden;\n}\n'],sourceRoot:""}]);const p=u},82396:(t,e,n)=>{"use strict";n.d(e,{Z:()=>o});var s=n(87537),i=n.n(s),a=n(23645),r=n.n(a)()(i());r.push([t.id,".upload-picker[data-v-f09fb109] {\n display: inline-flex;\n align-items: center;\n height: 44px;\n}\n.upload-picker__progress[data-v-f09fb109] {\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-f09fb109] {\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n}\n.upload-picker--uploading .upload-picker__progress[data-v-f09fb109] {\n max-width: 200px;\n margin-right: 20px;\n margin-left: 8px;\n}\n.upload-picker--paused .upload-picker__progress[data-v-f09fb109] {\n animation: breathing-f09fb109 3s ease-out infinite normal;\n}\n@keyframes breathing-f09fb109 {\n 0% {\n opacity: .5;\n }\n 25% {\n opacity: 1;\n }\n 60% {\n opacity: .5;\n }\n to {\n opacity: .5;\n }\n}\n","",{version:3,sources:["webpack://./node_modules/@nextcloud/upload/dist/assets/index-f2495ce6.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;EACE;IACE,WAAW;EACb;EACA;IACE,UAAU;EACZ;EACA;IACE,WAAW;EACb;EACA;IACE,WAAW;EACb;AACF",sourcesContent:[".upload-picker[data-v-f09fb109] {\n display: inline-flex;\n align-items: center;\n height: 44px;\n}\n.upload-picker__progress[data-v-f09fb109] {\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-f09fb109] {\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n}\n.upload-picker--uploading .upload-picker__progress[data-v-f09fb109] {\n max-width: 200px;\n margin-right: 20px;\n margin-left: 8px;\n}\n.upload-picker--paused .upload-picker__progress[data-v-f09fb109] {\n animation: breathing-f09fb109 3s ease-out infinite normal;\n}\n@keyframes breathing-f09fb109 {\n 0% {\n opacity: .5;\n }\n 25% {\n opacity: 1;\n }\n 60% {\n opacity: .5;\n }\n to {\n opacity: .5;\n }\n}\n"],sourceRoot:""}]);const o=r},26057:(t,e,n)=>{"use strict";n.d(e,{Z:()=>o});var s=n(87537),i=n.n(s),a=n(23645),r=n.n(a)()(i());r.push([t.id,".breadcrumb[data-v-c33b6662]{flex:1 1 100% !important;width:100%}.breadcrumb[data-v-c33b6662] a{cursor:pointer !important}","",{version:3,sources:["webpack://./apps/files/src/components/BreadCrumbs.vue"],names:[],mappings:"AACA,6BAEC,wBAAA,CACA,UAAA,CAEA,+BACC,yBAAA",sourcesContent:["\n.breadcrumb {\n\t// Take as much space as possible\n\tflex: 1 1 100% !important;\n\twidth: 100%;\n\n\t::v-deep a {\n\t\tcursor: pointer !important;\n\t}\n}\n\n"],sourceRoot:""}]);const o=r},81432:(t,e,n)=>{"use strict";n.d(e,{Z:()=>o});var s=n(87537),i=n.n(s),a=n(23645),r=n.n(a)()(i());r.push([t.id,".files-list__drag-drop-notice[data-v-7e0e423e]{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-7e0e423e]{margin-left:16px;color:inherit}.files-list__drag-drop-notice-wrapper[data-v-7e0e423e]{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},50262:(t,e,n)=>{"use strict";n.d(e,{Z:()=>o});var s=n(87537),i=n.n(s),a=n(23645),r=n.n(a)()(i());r.push([t.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},99292:(t,e,n)=>{"use strict";n.d(e,{Z:()=>o});var s=n(87537),i=n.n(s),a=n(23645),r=n.n(a)()(i());r.push([t.id,".favorite-marker-icon[data-v-04e52abc]{color:#a08b00;min-width:unset !important;min-height:unset !important}.favorite-marker-icon[data-v-04e52abc] svg{width:26px !important;height:26px !important;max-width:unset !important;max-height:unset !important}.favorite-marker-icon[data-v-04e52abc] 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,aAAA,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: #a08b00;\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},21367:(t,e,n)=>{"use strict";n.d(e,{Z:()=>o});var s=n(87537),i=n.n(s),a=n(23645),r=n.n(a)()(i());r.push([t.id,"[data-v-6dd8d639] .button-vue--icon-and-text .button-vue__text{color:var(--color-primary-element)}[data-v-6dd8d639] .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:"AAGC,+DACC,kCAAA,CAED,+DACC,kCAAA",sourcesContent:["\n\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},68252:(t,e,n)=>{"use strict";n.d(e,{Z:()=>o});var s=n(87537),i=n.n(s),a=n(23645),r=n.n(a)()(i());r.push([t.id,"tr[data-v-58f7b64d]{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-58f7b64d]{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},41002:(t,e,n)=>{"use strict";n.d(e,{Z:()=>o});var s=n(87537),i=n.n(s),a=n(23645),r=n.n(a)()(i());r.push([t.id,".files-list__column[data-v-585fdb03]{user-select:none;color:var(--color-text-maxcontrast) !important}.files-list__column--sortable[data-v-585fdb03]{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},65769:(t,e,n)=>{"use strict";n.d(e,{Z:()=>o});var s=n(87537),i=n.n(s),a=n(23645),r=n.n(a)()(i());r.push([t.id,".files-list__row-actions-batch[data-v-72bacee0]{flex:1 1 100% !important}.files-list__row-actions-batch[data-v-72bacee0] .button-vue__wrapper{width:100%}.files-list__row-actions-batch[data-v-72bacee0] .button-vue__wrapper span.button-vue__text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}","",{version:3,sources:["webpack://./apps/files/src/components/FilesListTableHeaderActions.vue"],names:[],mappings:"AACA,gDACC,wBAAA,CAGA,qEACC,UAAA,CACA,2FACC,eAAA,CACA,sBAAA,CACA,kBAAA",sourcesContent:["\n.files-list__row-actions-batch {\n\tflex: 1 1 100% !important;\n\n\t// Remove when https://github.com/nextcloud/nextcloud-vue/pull/3936 is merged\n\t::v-deep .button-vue__wrapper {\n\t\twidth: 100%;\n\t\tspan.button-vue__text {\n\t\t\toverflow: hidden;\n\t\t\ttext-overflow: ellipsis;\n\t\t\twhite-space: nowrap;\n\t\t}\n\t}\n}\n"],sourceRoot:""}]);const o=r},36980:(t,e,n)=>{"use strict";n.d(e,{Z:()=>o});var s=n(87537),i=n.n(s),a=n(23645),r=n.n(a)()(i());r.push([t.id,".files-list__column-sort-button[data-v-097f69d4]{margin:0 calc(var(--cell-margin)*-1);min-width:calc(100% - 3*var(--cell-margin)) !important}.files-list__column-sort-button-text[data-v-097f69d4]{color:var(--color-text-maxcontrast);font-weight:normal}.files-list__column-sort-button-icon[data-v-097f69d4]{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-097f69d4]{inset-inline-start:10px}.files-list__column-sort-button--active .files-list__column-sort-button-icon[data-v-097f69d4],.files-list__column-sort-button:hover .files-list__column-sort-button-icon[data-v-097f69d4],.files-list__column-sort-button:focus .files-list__column-sort-button-icon[data-v-097f69d4],.files-list__column-sort-button:active .files-list__column-sort-button-icon[data-v-097f69d4]{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},51272:(t,e,n)=>{"use strict";n.d(e,{Z:()=>o});var s=n(87537),i=n.n(s),a=n(23645),r=n.n(a)()(i());r.push([t.id,".files-list[data-v-1b17ff10]{--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-1b17ff10] tbody{will-change:padding;contain:layout paint style;display:flex;flex-direction:column;width:100%;position:relative}.files-list[data-v-1b17ff10] tbody tr{contain:strict}.files-list[data-v-1b17ff10] tbody tr:hover,.files-list[data-v-1b17ff10] tbody tr:focus{background-color:var(--color-background-dark)}.files-list[data-v-1b17ff10] .files-list__before{display:flex;flex-direction:column}.files-list[data-v-1b17ff10] .files-list__table{display:block}.files-list[data-v-1b17ff10] .files-list__thead,.files-list[data-v-1b17ff10] .files-list__tfoot{display:flex;flex-direction:column;width:100%;background-color:var(--color-main-background)}.files-list[data-v-1b17ff10] .files-list__thead{position:sticky;z-index:10;top:0}.files-list[data-v-1b17ff10] .files-list__tfoot{min-height:300px}.files-list[data-v-1b17ff10] 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-1b17ff10] td,.files-list[data-v-1b17ff10] 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-1b17ff10] td span,.files-list[data-v-1b17ff10] th span{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.files-list[data-v-1b17ff10] .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-1b17ff10] .files-list__row-checkbox{justify-content:center}.files-list[data-v-1b17ff10] .files-list__row-checkbox .checkbox-radio-switch{display:flex;justify-content:center;--icon-size: var(--checkbox-size)}.files-list[data-v-1b17ff10] .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-1b17ff10] .files-list__row-checkbox .checkbox-radio-switch .checkbox-radio-switch__icon{margin:0 !important}.files-list[data-v-1b17ff10] .files-list__row:hover,.files-list[data-v-1b17ff10] .files-list__row:focus,.files-list[data-v-1b17ff10] .files-list__row:active,.files-list[data-v-1b17ff10] .files-list__row--active,.files-list[data-v-1b17ff10] .files-list__row--dragover{background-color:var(--color-background-hover);--color-text-maxcontrast: var(--color-main-text)}.files-list[data-v-1b17ff10] .files-list__row:hover>*,.files-list[data-v-1b17ff10] .files-list__row:focus>*,.files-list[data-v-1b17ff10] .files-list__row:active>*,.files-list[data-v-1b17ff10] .files-list__row--active>*,.files-list[data-v-1b17ff10] .files-list__row--dragover>*{--color-border: var(--color-border-dark)}.files-list[data-v-1b17ff10] .files-list__row:hover .favorite-marker-icon svg path,.files-list[data-v-1b17ff10] .files-list__row:focus .favorite-marker-icon svg path,.files-list[data-v-1b17ff10] .files-list__row:active .favorite-marker-icon svg path,.files-list[data-v-1b17ff10] .files-list__row--active .favorite-marker-icon svg path,.files-list[data-v-1b17ff10] .files-list__row--dragover .favorite-marker-icon svg path{stroke:var(--color-background-hover)}.files-list[data-v-1b17ff10] .files-list__row--dragover *{pointer-events:none}.files-list[data-v-1b17ff10] .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-1b17ff10] .files-list__row-icon *{cursor:pointer}.files-list[data-v-1b17ff10] .files-list__row-icon>span{justify-content:flex-start}.files-list[data-v-1b17ff10] .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-1b17ff10] .files-list__row-icon>span.folder-icon,.files-list[data-v-1b17ff10] .files-list__row-icon>span.folder-open-icon{margin:-3px}.files-list[data-v-1b17ff10] .files-list__row-icon>span.folder-icon svg,.files-list[data-v-1b17ff10] .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-1b17ff10] .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-1b17ff10] .files-list__row-icon-preview:not(.files-list__row-icon-preview--loaded){background:var(--color-loading-dark)}.files-list[data-v-1b17ff10] .files-list__row-icon-favorite{position:absolute;top:0px;right:-10px}.files-list[data-v-1b17ff10] .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-1b17ff10] .files-list__row-icon-overlay--file{color:var(--color-main-text);background:var(--color-main-background);border-radius:100%}.files-list[data-v-1b17ff10] .files-list__row-name{overflow:hidden;flex:1 1 auto}.files-list[data-v-1b17ff10] .files-list__row-name a{display:flex;align-items:center;width:100%;height:100%;min-width:0}.files-list[data-v-1b17ff10] .files-list__row-name a:focus-visible{outline:none}.files-list[data-v-1b17ff10] .files-list__row-name a:focus .files-list__row-name-text,.files-list[data-v-1b17ff10] .files-list__row-name a:focus-visible .files-list__row-name-text{outline:2px solid var(--color-main-text) !important;border-radius:20px}.files-list[data-v-1b17ff10] .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-1b17ff10] .files-list__row-name .files-list__row-name-ext{color:var(--color-text-maxcontrast);overflow:visible}.files-list[data-v-1b17ff10] .files-list__row-rename{width:100%;max-width:600px}.files-list[data-v-1b17ff10] .files-list__row-rename input{width:100%;margin-left:-8px;padding:2px 6px;border-width:2px}.files-list[data-v-1b17ff10] .files-list__row-rename input:invalid{border-color:var(--color-error);color:red}.files-list[data-v-1b17ff10] .files-list__row-actions{width:auto}.files-list[data-v-1b17ff10] .files-list__row-actions~td,.files-list[data-v-1b17ff10] .files-list__row-actions~th{margin:0 var(--cell-margin)}.files-list[data-v-1b17ff10] .files-list__row-actions button .button-vue__text{font-weight:normal}.files-list[data-v-1b17ff10] .files-list__row-action--inline{margin-right:7px}.files-list[data-v-1b17ff10] .files-list__row-mtime,.files-list[data-v-1b17ff10] .files-list__row-size{color:var(--color-text-maxcontrast)}.files-list[data-v-1b17ff10] .files-list__row-size{width:calc(var(--row-height)*1.5);justify-content:flex-end}.files-list[data-v-1b17ff10] .files-list__row-mtime{width:calc(var(--row-height)*2)}.files-list[data-v-1b17ff10] .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,iDACC,aAAA,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,sLAEC,mDAAA,CACA,kBAAA,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__table {\n\t\t\tdisplay: block;\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&:focus-visible .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}\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},61590:(t,e,n)=>{"use strict";n.d(e,{Z:()=>o});var s=n(87537),i=n.n(s),a=n(23645),r=n.n(a)()(i());r.push([t.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},77895:(t,e,n)=>{"use strict";n.d(e,{Z:()=>o});var s=n(87537),i=n.n(s),a=n(23645),r=n.n(a)()(i());r.push([t.id,".app-navigation-entry__settings-quota--not-unlimited[data-v-2bae6012] .app-navigation-entry__name{margin-top:-6px}.app-navigation-entry__settings-quota progress[data-v-2bae6012]{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},80794:(t,e,n)=>{"use strict";n.d(e,{Z:()=>o});var s=n(87537),i=n.n(s),a=n(23645),r=n.n(a)()(i());r.push([t.id,".app-content[data-v-14acd289]{display:flex;overflow:hidden;flex-direction:column;max-height:100%;position:relative}.files-list__header[data-v-14acd289]{display:flex;align-items:center;flex:0 0;margin:4px 4px 4px 50px;max-width:100%}.files-list__header>*[data-v-14acd289]{flex:0 0}.files-list__header-share-button[data-v-14acd289]{opacity:.3}.files-list__header-share-button--shared[data-v-14acd289]{opacity:1}.files-list__refresh-icon[data-v-14acd289]{flex:0 0 44px;width:44px;height:44px}.files-list__loading-icon[data-v-14acd289]{margin:auto}","",{version:3,sources:["webpack://./apps/files/src/views/FilesList.vue"],names:[],mappings:"AACA,8BAEC,YAAA,CACA,eAAA,CACA,qBAAA,CACA,eAAA,CACA,iBAAA,CAOA,qCACC,YAAA,CACA,kBAAA,CAEA,QAAA,CAEA,uBAAA,CACA,cAAA,CACA,uCAGC,QAAA,CAGD,kDACC,UAAA,CACA,0DACC,SAAA,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;\n}\n\n$margin: 4px;\n$navigationToggleSize: 50px;\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\t// Align with the navigation toggle icon\n\t\tmargin: $margin $margin $margin $navigationToggleSize;\n\t\tmax-width: 100%;\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\topacity: .3;\n\t\t\t&--shared {\n\t\t\t\topacity: 1;\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\n"],sourceRoot:""}]);const o=r},24852:(t,e,n)=>{"use strict";n.d(e,{Z:()=>o});var s=n(87537),i=n.n(s),a=n(23645),r=n.n(a)()(i());r.push([t.id,".app-navigation[data-v-1a7f07dd] .app-navigation-entry-icon{background-repeat:no-repeat;background-position:center}.app-navigation[data-v-1a7f07dd] .app-navigation-entry.active .button-vue.icon-collapse:not(:hover){color:var(--color-primary-element-text)}.app-navigation>ul.app-navigation__list[data-v-1a7f07dd]{padding-bottom:var(--default-grid-baseline, 4px)}.app-navigation-entry__settings[data-v-1a7f07dd]{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},78320:(t,e,n)=>{"use strict";n.d(e,{Z:()=>o});var s=n(87537),i=n.n(s),a=n(23645),r=n.n(a)()(i());r.push([t.id,".setting-link[data-v-011c3819]: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},46700:(t,e,n)=>{var s={"./af":42786,"./af.js":42786,"./ar":30867,"./ar-dz":14130,"./ar-dz.js":14130,"./ar-kw":96135,"./ar-kw.js":96135,"./ar-ly":56440,"./ar-ly.js":56440,"./ar-ma":47702,"./ar-ma.js":47702,"./ar-sa":16040,"./ar-sa.js":16040,"./ar-tn":37100,"./ar-tn.js":37100,"./ar.js":30867,"./az":31083,"./az.js":31083,"./be":9808,"./be.js":9808,"./bg":68338,"./bg.js":68338,"./bm":67438,"./bm.js":67438,"./bn":8905,"./bn-bd":76225,"./bn-bd.js":76225,"./bn.js":8905,"./bo":11560,"./bo.js":11560,"./br":1278,"./br.js":1278,"./bs":80622,"./bs.js":80622,"./ca":2468,"./ca.js":2468,"./cs":5822,"./cs.js":5822,"./cv":50877,"./cv.js":50877,"./cy":47373,"./cy.js":47373,"./da":24780,"./da.js":24780,"./de":59740,"./de-at":60217,"./de-at.js":60217,"./de-ch":60894,"./de-ch.js":60894,"./de.js":59740,"./dv":5300,"./dv.js":5300,"./el":50837,"./el.js":50837,"./en-au":78348,"./en-au.js":78348,"./en-ca":77925,"./en-ca.js":77925,"./en-gb":22243,"./en-gb.js":22243,"./en-ie":46436,"./en-ie.js":46436,"./en-il":47207,"./en-il.js":47207,"./en-in":44175,"./en-in.js":44175,"./en-nz":76319,"./en-nz.js":76319,"./en-sg":31662,"./en-sg.js":31662,"./eo":92915,"./eo.js":92915,"./es":55655,"./es-do":55251,"./es-do.js":55251,"./es-mx":96112,"./es-mx.js":96112,"./es-us":71146,"./es-us.js":71146,"./es.js":55655,"./et":5603,"./et.js":5603,"./eu":77763,"./eu.js":77763,"./fa":76959,"./fa.js":76959,"./fi":11897,"./fi.js":11897,"./fil":42549,"./fil.js":42549,"./fo":94694,"./fo.js":94694,"./fr":94470,"./fr-ca":63049,"./fr-ca.js":63049,"./fr-ch":52330,"./fr-ch.js":52330,"./fr.js":94470,"./fy":5044,"./fy.js":5044,"./ga":29295,"./ga.js":29295,"./gd":2101,"./gd.js":2101,"./gl":38794,"./gl.js":38794,"./gom-deva":27884,"./gom-deva.js":27884,"./gom-latn":23168,"./gom-latn.js":23168,"./gu":95349,"./gu.js":95349,"./he":24206,"./he.js":24206,"./hi":30094,"./hi.js":30094,"./hr":30316,"./hr.js":30316,"./hu":22138,"./hu.js":22138,"./hy-am":11423,"./hy-am.js":11423,"./id":29218,"./id.js":29218,"./is":90135,"./is.js":90135,"./it":90626,"./it-ch":10150,"./it-ch.js":10150,"./it.js":90626,"./ja":39183,"./ja.js":39183,"./jv":24286,"./jv.js":24286,"./ka":12105,"./ka.js":12105,"./kk":47772,"./kk.js":47772,"./km":18758,"./km.js":18758,"./kn":79282,"./kn.js":79282,"./ko":33730,"./ko.js":33730,"./ku":1408,"./ku.js":1408,"./ky":33291,"./ky.js":33291,"./lb":36841,"./lb.js":36841,"./lo":55466,"./lo.js":55466,"./lt":57010,"./lt.js":57010,"./lv":37595,"./lv.js":37595,"./me":39861,"./me.js":39861,"./mi":35493,"./mi.js":35493,"./mk":95966,"./mk.js":95966,"./ml":87341,"./ml.js":87341,"./mn":5115,"./mn.js":5115,"./mr":10370,"./mr.js":10370,"./ms":9847,"./ms-my":41237,"./ms-my.js":41237,"./ms.js":9847,"./mt":72126,"./mt.js":72126,"./my":56165,"./my.js":56165,"./nb":64924,"./nb.js":64924,"./ne":16744,"./ne.js":16744,"./nl":93901,"./nl-be":59814,"./nl-be.js":59814,"./nl.js":93901,"./nn":83877,"./nn.js":83877,"./oc-lnc":92135,"./oc-lnc.js":92135,"./pa-in":15858,"./pa-in.js":15858,"./pl":64495,"./pl.js":64495,"./pt":89520,"./pt-br":57971,"./pt-br.js":57971,"./pt.js":89520,"./ro":96459,"./ro.js":96459,"./ru":21793,"./ru.js":21793,"./sd":40950,"./sd.js":40950,"./se":10490,"./se.js":10490,"./si":90124,"./si.js":90124,"./sk":64249,"./sk.js":64249,"./sl":14985,"./sl.js":14985,"./sq":51104,"./sq.js":51104,"./sr":49131,"./sr-cyrl":79915,"./sr-cyrl.js":79915,"./sr.js":49131,"./ss":85893,"./ss.js":85893,"./sv":98760,"./sv.js":98760,"./sw":91172,"./sw.js":91172,"./ta":27333,"./ta.js":27333,"./te":23110,"./te.js":23110,"./tet":52095,"./tet.js":52095,"./tg":27321,"./tg.js":27321,"./th":9041,"./th.js":9041,"./tk":19005,"./tk.js":19005,"./tl-ph":75768,"./tl-ph.js":75768,"./tlh":89444,"./tlh.js":89444,"./tr":72397,"./tr.js":72397,"./tzl":28254,"./tzl.js":28254,"./tzm":51106,"./tzm-latn":30699,"./tzm-latn.js":30699,"./tzm.js":51106,"./ug-cn":9288,"./ug-cn.js":9288,"./uk":67691,"./uk.js":67691,"./ur":13795,"./ur.js":13795,"./uz":6791,"./uz-latn":60588,"./uz-latn.js":60588,"./uz.js":6791,"./vi":65666,"./vi.js":65666,"./x-pseudo":14378,"./x-pseudo.js":14378,"./yo":75805,"./yo.js":75805,"./zh-cn":83839,"./zh-cn.js":83839,"./zh-hk":55726,"./zh-hk.js":55726,"./zh-mo":99807,"./zh-mo.js":99807,"./zh-tw":74152,"./zh-tw.js":74152};function i(t){var e=a(t);return n(e)}function a(t){if(!n.o(s,t)){var e=new Error("Cannot find module '"+t+"'");throw e.code="MODULE_NOT_FOUND",e}return s[t]}i.keys=function(){return Object.keys(s)},i.resolve=a,t.exports=i,i.id=46700},69481:t=>{function e(t,e){return null==t?e:t}t.exports=function(t){var n,s=e((t=t||{}).max,1),i=e(t.min,0),a=e(t.autostart,!0),r=e(t.ignoreSameProgress,!1),o=null,l=null,c=null,d=(n=e(t.historyTimeConstant,2.5),function(t,e,s){return t+s/(s+n)*(e-t)});function u(){m(i)}function m(t,e){if("number"!=typeof e&&(e=Date.now()),l!==e&&(!r||c!==t)){if(null===l||null===c)return c=t,void(l=e);var n=.001*(e-l),s=(t-c)/n;o=null===o?s:d(o,s,n),c=t,l=e}}return{start:u,reset:function(){o=null,l=null,c=null,a&&u()},report:m,estimate:function(t){if(null===c)return 1/0;if(c>=s)return 0;if(null===o)return 1/0;var e=(s-c)/o;return"number"==typeof t&&"number"==typeof l&&(e-=.001*(t-l)),Math.max(0,e)},rate:function(){return null===o?0:o}}}},81490:t=>{"use strict";t.exports="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGhlaWdodD0iMTYiIHdpZHRoPSIxNiI+CiAgPHBhdGggZD0iTTE0IDEyLjNMMTIuMyAxNCA4IDkuNyAzLjcgMTQgMiAxMi4zIDYuMyA4IDIgMy43IDMuNyAyIDggNi4zIDEyLjMgMiAxNCAzLjcgOS43IDh6Ii8+Cjwvc3ZnPgo="},90888:t=>{"use strict";t.exports="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGhlaWdodD0iMTYiIHdpZHRoPSIxNiI+CiAgPHBhdGggZD0iTTE0IDEyLjNMMTIuMyAxNCA4IDkuNyAzLjcgMTQgMiAxMi4zIDYuMyA4IDIgMy43IDMuNyAyIDggNi4zIDEyLjMgMiAxNCAzLjcgOS43IDh6IiBzdHlsZT0iZmlsbC1vcGFjaXR5OjE7ZmlsbDojZmZmZmZmIi8+Cjwvc3ZnPgo="},5656:(t,e,n)=>{"use strict";n.d(e,{$B:()=>B,DT:()=>h,De:()=>w,G7:()=>ae,Ir:()=>oe,NB:()=>F,RL:()=>D,Ti:()=>z,Tv:()=>S,Vn:()=>A,_o:()=>j,e4:()=>N,gt:()=>P,h7:()=>T,p$:()=>v,pC:()=>U,rp:()=>O,sS:()=>g,tB:()=>k,y3:()=>y});var s=n(77958),i=n(17499),a=n(31352),r=n(62520),o=n(65358),l=n(79753),c=n(14596);const d=null===(u=(0,s.ts)())?(0,i.IY)().setApp("files").build():(0,i.IY)().setApp("files").setUid(u.uid).build();var u;class m{_entries=[];registerEntry(t){this.validateEntry(t),this._entries.push(t)}unregisterEntry(t){const e="string"==typeof t?this.getEntryIndex(t):this.getEntryIndex(t.id);-1!==e?this._entries.splice(e,1):d.warn("Entry not found, nothing removed",{entry:t,entries:this.getEntries()})}getEntries(t){return t?this._entries.filter((e=>"function"!=typeof e.enabled||e.enabled(t))):this._entries}getEntryIndex(t){return this._entries.findIndex((e=>e.id===t))}validateEntry(t){if(!t.id||!t.displayName||!t.iconSvgInline&&!t.iconClass||!t.handler)throw new Error("Invalid entry");if("string"!=typeof t.id||"string"!=typeof t.displayName)throw new Error("Invalid id or displayName property");if(t.iconClass&&"string"!=typeof t.iconClass||t.iconSvgInline&&"string"!=typeof t.iconSvgInline)throw new Error("Invalid icon provided");if(void 0!==t.enabled&&"function"!=typeof t.enabled)throw new Error("Invalid enabled property");if("function"!=typeof t.handler)throw new Error("Invalid handler property");if("order"in t&&"number"!=typeof t.order)throw new Error("Invalid order property");if(-1!==this.getEntryIndex(t.id))throw new Error("Duplicate entry")}}const f=["B","KB","MB","GB","TB","PB"],p=["B","KiB","MiB","GiB","TiB","PiB"];function g(t,e=!1,n=!1,s=!1){n=n&&!s,"string"==typeof t&&(t=Number(t));let i=t>0?Math.floor(Math.log(t)/Math.log(s?1e3:1024)):0;i=Math.min((n?p.length:f.length)-1,i);const r=n?p[i]:f[i];let o=(t/Math.pow(s?1e3:1024,i)).toFixed(1);return!0===e&&0===i?("0.0"!==o?"< 1 ":"0 ")+(n?p[1]:f[1]):(o=i<2?parseFloat(o).toFixed(0):parseFloat(o).toLocaleString((0,a.aj)()),o+" "+r)}var h=(t=>(t.DEFAULT="default",t.HIDDEN="hidden",t))(h||{});class v{_action;constructor(t){this.validateAction(t),this._action=t}get id(){return this._action.id}get displayName(){return this._action.displayName}get title(){return this._action.title}get iconSvgInline(){return this._action.iconSvgInline}get enabled(){return this._action.enabled}get exec(){return this._action.exec}get execBatch(){return this._action.execBatch}get order(){return this._action.order}get parent(){return this._action.parent}get default(){return this._action.default}get inline(){return this._action.inline}get renderInline(){return this._action.renderInline}validateAction(t){if(!t.id||"string"!=typeof t.id)throw new Error("Invalid id");if(!t.displayName||"function"!=typeof t.displayName)throw new Error("Invalid displayName function");if("title"in t&&"function"!=typeof t.title)throw new Error("Invalid title function");if(!t.iconSvgInline||"function"!=typeof t.iconSvgInline)throw new Error("Invalid iconSvgInline function");if(!t.exec||"function"!=typeof t.exec)throw new Error("Invalid exec function");if("enabled"in t&&"function"!=typeof t.enabled)throw new Error("Invalid enabled function");if("execBatch"in t&&"function"!=typeof t.execBatch)throw new Error("Invalid execBatch function");if("order"in t&&"number"!=typeof t.order)throw new Error("Invalid order");if("parent"in t&&"string"!=typeof t.parent)throw new Error("Invalid parent");if(t.default&&!Object.values(h).includes(t.default))throw new Error("Invalid default");if("inline"in t&&"function"!=typeof t.inline)throw new Error("Invalid inline function");if("renderInline"in t&&"function"!=typeof t.renderInline)throw new Error("Invalid renderInline function")}}const A=function(){return typeof window._nc_fileactions>"u"&&(window._nc_fileactions=[],d.debug("FileActions initialized")),window._nc_fileactions},w=function(){return typeof window._nc_filelistheader>"u"&&(window._nc_filelistheader=[],d.debug("FileListHeaders initialized")),window._nc_filelistheader};var y=(t=>(t[t.NONE=0]="NONE",t[t.CREATE=4]="CREATE",t[t.READ=1]="READ",t[t.UPDATE=2]="UPDATE",t[t.DELETE=8]="DELETE",t[t.SHARE=16]="SHARE",t[t.ALL=31]="ALL",t))(y||{});const b=["d:getcontentlength","d:getcontenttype","d:getetag","d:getlastmodified","d:quota-available-bytes","d:resourcetype","nc:has-preview","nc:is-encrypted","nc:mount-type","nc:share-attributes","oc:comments-unread","oc:favorite","oc:fileid","oc:owner-display-name","oc:owner-id","oc:permissions","oc:share-types","oc:size","ocs:share-permissions"],C={d:"DAV:",nc:"http://nextcloud.org/ns",oc:"http://owncloud.org/ns",ocs:"http://open-collaboration-services.org/ns"},x=function(){return typeof window._nc_dav_properties>"u"&&(window._nc_dav_properties=[...b]),window._nc_dav_properties.map((t=>`<${t} />`)).join(" ")},_=function(){return typeof window._nc_dav_namespaces>"u"&&(window._nc_dav_namespaces={...C}),Object.keys(window._nc_dav_namespaces).map((t=>`xmlns:${t}="${window._nc_dav_namespaces?.[t]}"`)).join(" ")},T=function(){return`\n\t\t\n\t\t\t\n\t\t\t\t${x()}\n\t\t\t\n\t\t`},k=function(t){return`\n\n\t\n\t\t\n\t\t\t\n\t\t\t\t${x()}\n\t\t\t\n\t\t\n\t\t\n\t\t\t\n\t\t\t\t/files/${(0,s.ts)()?.uid}/\n\t\t\t\tinfinity\n\t\t\t\n\t\t\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\thttpd/unix-directory\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t0\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t${t}\n\t\t\t\t\n\t\t\t\n\t\t\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\n\t\t\n\t\t\t100\n\t\t\t0\n\t\t\n\t\n`};var S=(t=>(t.Folder="folder",t.File="file",t))(S||{});const L=function(t,e){return null!==t.match(e)},E=(t,e)=>{if(t.id&&"number"!=typeof t.id)throw new Error("Invalid id type of value");if(!t.source)throw new Error("Missing mandatory source");try{new URL(t.source)}catch{throw new Error("Invalid source format, source must be a valid URL")}if(!t.source.startsWith("http"))throw new Error("Invalid source format, only http(s) is supported");if(t.mtime&&!(t.mtime instanceof Date))throw new Error("Invalid mtime type");if(t.crtime&&!(t.crtime instanceof Date))throw new Error("Invalid crtime type");if(!t.mime||"string"!=typeof t.mime||!t.mime.match(/^[-\w.]+\/[-+\w.]+$/gi))throw new Error("Missing or invalid mandatory mime");if("size"in t&&"number"!=typeof t.size&&void 0!==t.size)throw new Error("Invalid size type");if("permissions"in t&&void 0!==t.permissions&&!("number"==typeof t.permissions&&t.permissions>=y.NONE&&t.permissions<=y.ALL))throw new Error("Invalid permissions");if(t.owner&&null!==t.owner&&"string"!=typeof t.owner)throw new Error("Invalid owner type");if(t.attributes&&"object"!=typeof t.attributes)throw new Error("Invalid attributes type");if(t.root&&"string"!=typeof t.root)throw new Error("Invalid root type");if(t.root&&!t.root.startsWith("/"))throw new Error("Root must start with a leading slash");if(t.root&&!t.source.includes(t.root))throw new Error("Root must be part of the source");if(t.root&&L(t.source,e)){const n=t.source.match(e)[0];if(!t.source.includes((0,r.join)(n,t.root)))throw new Error("The root must be relative to the service. e.g /files/emma")}if(t.status&&!Object.values(N).includes(t.status))throw new Error("Status must be a valid NodeStatus")};var N=(t=>(t.NEW="new",t.FAILED="failed",t.LOADING="loading",t.LOCKED="locked",t))(N||{});class F{_data;_attributes;_knownDavService=/(remote|public)\.php\/(web)?dav/i;constructor(t,e){E(t,e||this._knownDavService),this._data=t;const n={set:(t,e,n)=>(this.updateMtime(),Reflect.set(t,e,n)),deleteProperty:(t,e)=>(this.updateMtime(),Reflect.deleteProperty(t,e))};this._attributes=new Proxy(t.attributes||{},n),delete this._data.attributes,e&&(this._knownDavService=e)}get source(){return this._data.source.replace(/\/$/i,"")}get encodedSource(){const{origin:t}=new URL(this.source);return t+(0,o.Ec)(this.source.slice(t.length))}get basename(){return(0,r.basename)(this.source)}get extension(){return(0,r.extname)(this.source)}get dirname(){if(this.root){const t=this.source.indexOf(this.root);return(0,r.dirname)(this.source.slice(t+this.root.length)||"/")}const t=new URL(this.source);return(0,r.dirname)(t.pathname)}get mime(){return this._data.mime}get mtime(){return this._data.mtime}get crtime(){return this._data.crtime}get size(){return this._data.size}get attributes(){return this._attributes}get permissions(){return null!==this.owner||this.isDavRessource?void 0!==this._data.permissions?this._data.permissions:y.NONE:y.READ}get owner(){return this.isDavRessource?this._data.owner:null}get isDavRessource(){return L(this.source,this._knownDavService)}get root(){return this._data.root?this._data.root.replace(/^(.+)\/$/,"$1"):this.isDavRessource&&(0,r.dirname)(this.source).split(this._knownDavService).pop()||null}get path(){if(this.root){const t=this.source.indexOf(this.root);return this.source.slice(t+this.root.length)||"/"}return(this.dirname+"/"+this.basename).replace(/\/\//g,"/")}get fileid(){return this._data?.id||this.attributes?.fileid}get status(){return this._data?.status}set status(t){this._data.status=t}move(t){E({...this._data,source:t},this._knownDavService),this._data.source=t,this.updateMtime()}rename(t){if(t.includes("/"))throw new Error("Invalid basename");this.move((0,r.dirname)(this.source)+"/"+t)}updateMtime(){this._data.mtime&&(this._data.mtime=new Date)}}class B extends F{get type(){return S.File}}class P extends F{constructor(t){super({...t,mime:"httpd/unix-directory"})}get type(){return S.Folder}get extension(){return null}get mime(){return"httpd/unix-directory"}}const j=`/files/${(0,s.ts)()?.uid}`,I=(0,l.generateRemoteUrl)("dav"),O=function(t=I){const e=(0,c.eI)(t);function n(t){e.setHeaders({"X-Requested-With":"XMLHttpRequest",requesttoken:t??""})}return(0,s._S)(n),n((0,s.IH)()),(0,c.lD)().patch("fetch",((t,e)=>{const n=e.headers;return n?.method&&(e.method=n.method,delete n.method),fetch(t,e)})),e},U=async(t,e="/",n=j)=>(await t.getDirectoryContents(`${n}${e}`,{details:!0,data:`\n\t\t\n\t\t\t\n\t\t\t\t${x()}\n\t\t\t\n\t\t\t\n\t\t\t\t1\n\t\t\t\n\t\t`,headers:{method:"REPORT"},includeSelf:!0})).data.filter((t=>t.filename!==e)).map((t=>D(t,n))),D=function(t,e=j,n=I){const i=t.props,a=function(t=""){let e=y.NONE;return t&&((t.includes("C")||t.includes("K"))&&(e|=y.CREATE),t.includes("G")&&(e|=y.READ),(t.includes("W")||t.includes("N")||t.includes("V"))&&(e|=y.UPDATE),t.includes("D")&&(e|=y.DELETE),t.includes("R")&&(e|=y.SHARE)),e}(i?.permissions),r=(0,s.ts)()?.uid,o={id:i?.fileid||0,source:`${n}${t.filename}`,mtime:new Date(Date.parse(t.lastmod)),mime:t.mime,size:i?.size||Number.parseInt(i.getcontentlength||"0"),permissions:a,owner:r,root:e,attributes:{...t,...i,hasPreview:i?.["has-preview"]}};return delete o.attributes?.props,"file"===t.type?new B(o):new P(o)};class ${_views=[];_currentView=null;register(t){if(this._views.find((e=>e.id===t.id)))throw new Error(`View id ${t.id} is already registered`);this._views.push(t)}remove(t){const e=this._views.findIndex((e=>e.id===t));-1!==e&&this._views.splice(e,1)}get views(){return this._views}setActive(t){this._currentView=t}get active(){return this._currentView}}const z=function(){return typeof window._nc_navigation>"u"&&(window._nc_navigation=new $,d.debug("Navigation service initialized")),window._nc_navigation};class R{_column;constructor(t){M(t),this._column=t}get id(){return this._column.id}get title(){return this._column.title}get render(){return this._column.render}get sort(){return this._column.sort}get summary(){return this._column.summary}}const M=function(t){if(!t.id||"string"!=typeof t.id)throw new Error("A column id is required");if(!t.title||"string"!=typeof t.title)throw new Error("A column title is required");if(!t.render||"function"!=typeof t.render)throw new Error("A render function is required");if(t.sort&&"function"!=typeof t.sort)throw new Error("Column sortFunction must be a function");if(t.summary&&"function"!=typeof t.summary)throw new Error("Column summary must be a function");return!0};var V={},H={};!function(t){const e=":A-Za-z_\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD",n="["+e+"]["+e+"\\-.\\d\\u00B7\\u0300-\\u036F\\u203F-\\u2040]*",s=new RegExp("^"+n+"$");t.isExist=function(t){return typeof t<"u"},t.isEmptyObject=function(t){return 0===Object.keys(t).length},t.merge=function(t,e,n){if(e){const s=Object.keys(e),i=s.length;for(let a=0;a"u")},t.getAllMatches=function(t,e){const n=[];let s=e.exec(t);for(;s;){const i=[];i.startIndex=e.lastIndex-s[0].length;const a=s.length;for(let t=0;t5&&"xml"===s)return nt("InvalidXml","XML declaration allowed only at the start of the document.",at(t,e));if("?"==t[e]&&">"==t[e+1]){e++;break}continue}return e}function Y(t,e){if(t.length>e+5&&"-"===t[e+1]&&"-"===t[e+2]){for(e+=3;e"===t[e+2]){e+=2;break}}else if(t.length>e+8&&"D"===t[e+1]&&"O"===t[e+2]&&"C"===t[e+3]&&"T"===t[e+4]&&"Y"===t[e+5]&&"P"===t[e+6]&&"E"===t[e+7]){let n=1;for(e+=8;e"===t[e]&&(n--,0===n))break}else if(t.length>e+9&&"["===t[e+1]&&"C"===t[e+2]&&"D"===t[e+3]&&"A"===t[e+4]&&"T"===t[e+5]&&"A"===t[e+6]&&"["===t[e+7])for(e+=8;e"===t[e+2]){e+=2;break}return e}V.validate=function(t,e){e=Object.assign({},Z,e);const n=[];let s=!1,i=!1;"\ufeff"===t[0]&&(t=t.substr(1));for(let a=0;a"!==t[a]&&" "!==t[a]&&"\t"!==t[a]&&"\n"!==t[a]&&"\r"!==t[a];a++)l+=t[a];if(l=l.trim(),"/"===l[l.length-1]&&(l=l.substring(0,l.length-1),a--),!it(l)){let e;return e=0===l.trim().length?"Invalid space after '<'.":"Tag '"+l+"' is an invalid name.",nt("InvalidTag",e,at(t,a))}const c=Q(t,a);if(!1===c)return nt("InvalidAttr","Attributes for '"+l+"' have open quote.",at(t,a));let d=c.value;if(a=c.index,"/"===d[d.length-1]){const n=a-d.length;d=d.substring(0,d.length-1);const i=tt(d,e);if(!0!==i)return nt(i.err.code,i.err.msg,at(t,n+i.err.line));s=!0}else if(o){if(!c.tagClosed)return nt("InvalidTag","Closing tag '"+l+"' doesn't have proper closing.",at(t,a));if(d.trim().length>0)return nt("InvalidTag","Closing tag '"+l+"' can't have attributes or invalid starting.",at(t,r));{const e=n.pop();if(l!==e.tagName){let n=at(t,e.tagStartPos);return nt("InvalidTag","Expected closing tag '"+e.tagName+"' (opened in line "+n.line+", col "+n.col+") instead of closing tag '"+l+"'.",at(t,r))}0==n.length&&(i=!0)}}else{const o=tt(d,e);if(!0!==o)return nt(o.err.code,o.err.msg,at(t,a-d.length+o.err.line));if(!0===i)return nt("InvalidXml","Multiple possible root nodes found.",at(t,a));-1!==e.unpairedTags.indexOf(l)||n.push({tagName:l,tagStartPos:r}),s=!0}for(a++;a0)||nt("InvalidXml","Invalid '"+JSON.stringify(n.map((t=>t.tagName)),null,4).replace(/\r?\n/g,"")+"' found.",{line:1,col:1}):nt("InvalidXml","Start tag expected.",1)};const K='"',J="'";function Q(t,e){let n="",s="",i=!1;for(;e"===t[e]&&""===s){i=!0;break}n+=t[e]}return""===s&&{value:n,index:e,tagClosed:i}}const X=new RegExp("(\\s*)([^\\s=]+)(\\s*=)?(\\s*(['\"])(([\\s\\S])*?)\\5)?","g");function tt(t,e){const n=q.getAllMatches(t,X),s={};for(let t=0;t!1,commentPropName:!1,unpairedTags:[],processEntities:!0,htmlEntities:!1,ignoreDeclaration:!1,ignorePiTags:!1,transformTagName:!1,transformAttributeName:!1,updateTag:function(t,e,n){return t}};ot.buildOptions=function(t){return Object.assign({},lt,t)},ot.defaultOptions=lt;const ct=H;function dt(t,e){let n="";for(;e0?this.child.push({[t.tagname]:t.child,":@":t[":@"]}):this.child.push({[t.tagname]:t.child})}},Ct=function(t,e){const n={};if("O"!==t[e+3]||"C"!==t[e+4]||"T"!==t[e+5]||"Y"!==t[e+6]||"P"!==t[e+7]||"E"!==t[e+8])throw new Error("Invalid Tag instead of DOCTYPE");{e+=9;let s=1,i=!1,a=!1,r="";for(;e"===t[e]){if(a?"-"===t[e-1]&&"-"===t[e-2]&&(a=!1,s--):s--,0===s)break}else"["===t[e]?i=!0:r+=t[e];else{if(i&&mt(t,e))e+=7,[entityName,val,e]=dt(t,e+1),-1===val.indexOf("&")&&(n[ht(entityName)]={regx:RegExp(`&${entityName};`,"g"),val});else if(i&&ft(t,e))e+=8;else if(i&&pt(t,e))e+=8;else if(i&>(t,e))e+=9;else{if(!ut)throw new Error("Invalid DOCTYPE");a=!0}s++,r=""}if(0!==s)throw new Error("Unclosed DOCTYPE")}return{entities:n,i:e}},xt=function(t,e={}){if(e=Object.assign({},wt,e),!t||"string"!=typeof t)return t;let n=t.trim();if(void 0!==e.skipLike&&e.skipLike.test(n))return t;if(e.hex&&vt.test(n))return Number.parseInt(n,16);{const s=At.exec(n);if(s){const i=s[1],a=s[2];let r=function(t){return t&&-1!==t.indexOf(".")&&("."===(t=t.replace(/0+$/,""))?t="0":"."===t[0]?t="0"+t:"."===t[t.length-1]&&(t=t.substr(0,t.length-1))),t}(s[3]);const o=s[4]||s[6];if(!e.leadingZeros&&a.length>0&&i&&"."!==n[2])return t;if(!e.leadingZeros&&a.length>0&&!i&&"."!==n[1])return t;{const s=Number(n),l=""+s;return-1!==l.search(/[eE]/)||o?e.eNotation?s:t:-1!==n.indexOf(".")?"0"===l&&""===r||l===r||i&&l==="-"+r?s:t:a?r===l||i+r===l?s:t:n===l||n===i+l?s:t}}return t}};function _t(t){const e=Object.keys(t);for(let n=0;n0)){r||(t=this.replaceEntitiesValue(t));const s=this.options.tagValueProcessor(e,t,n,i,a);return null==s?t:typeof s!=typeof t||s!==t?s:this.options.trimValues||t.trim()===t?Ut(t,this.options.parseTagValue,this.options.numberParseOptions):t}}function kt(t){if(this.options.removeNSPrefix){const e=t.split(":"),n="/"===t.charAt(0)?"/":"";if("xmlns"===e[0])return"";2===e.length&&(t=n+e[1])}return t}"<((!\\[CDATA\\[([\\s\\S]*?)(]]>))|((NAME:)?(NAME))([^>]*)>|((\\/)(NAME)\\s*>))([^<]*)".replace(/NAME/g,yt.nameRegexp);const St=new RegExp("([^\\s=]+)\\s*(=\\s*(['\"])([\\s\\S]*?)\\3)?","gm");function Lt(t,e,n){if(!this.options.ignoreAttributes&&"string"==typeof t){const n=yt.getAllMatches(t,St),s=n.length,i={};for(let t=0;t",a,"Closing Tag is not closed.");let r=t.substring(a+2,e).trim();if(this.options.removeNSPrefix){const t=r.indexOf(":");-1!==t&&(r=r.substr(t+1))}this.options.transformTagName&&(r=this.options.transformTagName(r)),n&&(s=this.saveTextToParentTag(s,n,i));const o=i.substring(i.lastIndexOf(".")+1);if(r&&-1!==this.options.unpairedTags.indexOf(r))throw new Error(`Unpaired tag can not be used as closing tag: `);let l=0;o&&-1!==this.options.unpairedTags.indexOf(o)?(l=i.lastIndexOf(".",i.lastIndexOf(".")-1),this.tagsNodeStack.pop()):l=i.lastIndexOf("."),i=i.substring(0,l),n=this.tagsNodeStack.pop(),s="",a=e}else if("?"===t[a+1]){let e=It(t,a,!1,"?>");if(!e)throw new Error("Pi Tag is not closed.");if(s=this.saveTextToParentTag(s,n,i),!(this.options.ignoreDeclaration&&"?xml"===e.tagName||this.options.ignorePiTags)){const t=new bt(e.tagName);t.add(this.options.textNodeName,""),e.tagName!==e.tagExp&&e.attrExpPresent&&(t[":@"]=this.buildAttributesMap(e.tagExp,i,e.tagName)),this.addChild(n,t,i)}a=e.closeIndex+1}else if("!--"===t.substr(a+1,3)){const e=jt(t,"--\x3e",a+4,"Comment is not closed.");if(this.options.commentPropName){const r=t.substring(a+4,e-2);s=this.saveTextToParentTag(s,n,i),n.add(this.options.commentPropName,[{[this.options.textNodeName]:r}])}a=e}else if("!D"===t.substr(a+1,2)){const e=Ct(t,a);this.docTypeEntities=e.entities,a=e.i}else if("!["===t.substr(a+1,2)){const e=jt(t,"]]>",a,"CDATA is not closed.")-2,r=t.substring(a+9,e);if(s=this.saveTextToParentTag(s,n,i),this.options.cdataPropName)n.add(this.options.cdataPropName,[{[this.options.textNodeName]:r}]);else{let t=this.parseTextData(r,n.tagname,i,!0,!1,!0);null==t&&(t=""),n.add(this.options.textNodeName,t)}a=e+2}else{let r=It(t,a,this.options.removeNSPrefix),o=r.tagName;const l=r.rawTagName;let c=r.tagExp,d=r.attrExpPresent,u=r.closeIndex;this.options.transformTagName&&(o=this.options.transformTagName(o)),n&&s&&"!xml"!==n.tagname&&(s=this.saveTextToParentTag(s,n,i,!1));const m=n;if(m&&-1!==this.options.unpairedTags.indexOf(m.tagname)&&(n=this.tagsNodeStack.pop(),i=i.substring(0,i.lastIndexOf("."))),o!==e.tagname&&(i+=i?"."+o:o),this.isItStopNode(this.options.stopNodes,i,o)){let e="";if(c.length>0&&c.lastIndexOf("/")===c.length-1)a=r.closeIndex;else if(-1!==this.options.unpairedTags.indexOf(o))a=r.closeIndex;else{const n=this.readStopNodeData(t,l,u+1);if(!n)throw new Error(`Unexpected end of ${l}`);a=n.i,e=n.tagContent}const s=new bt(o);o!==c&&d&&(s[":@"]=this.buildAttributesMap(c,i,o)),e&&(e=this.parseTextData(e,o,i,!0,d,!0,!0)),i=i.substr(0,i.lastIndexOf(".")),s.add(this.options.textNodeName,e),this.addChild(n,s,i)}else{if(c.length>0&&c.lastIndexOf("/")===c.length-1){"/"===o[o.length-1]?(o=o.substr(0,o.length-1),i=i.substr(0,i.length-1),c=o):c=c.substr(0,c.length-1),this.options.transformTagName&&(o=this.options.transformTagName(o));const t=new bt(o);o!==c&&d&&(t[":@"]=this.buildAttributesMap(c,i,o)),this.addChild(n,t,i),i=i.substr(0,i.lastIndexOf("."))}else{const t=new bt(o);this.tagsNodeStack.push(n),o!==c&&d&&(t[":@"]=this.buildAttributesMap(c,i,o)),this.addChild(n,t,i),n=t}s="",a=u}}else s+=t[a];return e.child};function Nt(t,e,n){const s=this.options.updateTag(e.tagname,n,e[":@"]);!1===s||("string"==typeof s&&(e.tagname=s),t.addChild(e))}const Ft=function(t){if(this.options.processEntities){for(let e in this.docTypeEntities){const n=this.docTypeEntities[e];t=t.replace(n.regx,n.val)}for(let e in this.lastEntities){const n=this.lastEntities[e];t=t.replace(n.regex,n.val)}if(this.options.htmlEntities)for(let e in this.htmlEntities){const n=this.htmlEntities[e];t=t.replace(n.regex,n.val)}t=t.replace(this.ampEntity.regex,this.ampEntity.val)}return t};function Bt(t,e,n,s){return t&&(void 0===s&&(s=0===Object.keys(e.child).length),void 0!==(t=this.parseTextData(t,e.tagname,n,!1,!!e[":@"]&&0!==Object.keys(e[":@"]).length,s))&&""!==t&&e.add(this.options.textNodeName,t),t=""),t}function Pt(t,e,n){const s="*."+n;for(const n in t){const i=t[n];if(s===i||e===i)return!0}return!1}function jt(t,e,n,s){const i=t.indexOf(e,n);if(-1===i)throw new Error(s);return i+e.length-1}function It(t,e,n,s=">"){const i=function(t,e,n=">"){let s,i="";for(let a=e;a",n,`${e} is not closed`);if(t.substring(n+2,a).trim()===e&&(i--,0===i))return{tagContent:t.substring(s,n),i:a};n=a}else if("?"===t[n+1])n=jt(t,"?>",n+1,"StopNode is not closed.");else if("!--"===t.substr(n+1,3))n=jt(t,"--\x3e",n+3,"StopNode is not closed.");else if("!["===t.substr(n+1,2))n=jt(t,"]]>",n,"StopNode is not closed.")-2;else{const s=It(t,n,">");s&&((s&&s.tagName)===e&&"/"!==s.tagExp[s.tagExp.length-1]&&i++,n=s.closeIndex)}}function Ut(t,e,n){if(e&&"string"==typeof t){const e=t.trim();return"true"===e||"false"!==e&&xt(t,n)}return yt.isExist(t)?t:""}var Dt={};function $t(t,e,n){let s;const i={};for(let a=0;a0&&(i[e.textNodeName]=s):void 0!==s&&(i[e.textNodeName]=s),i}function zt(t){const e=Object.keys(t);for(let t=0;t"},lt:{regex:/&(lt|#60|#x3C);/g,val:"<"},quot:{regex:/&(quot|#34|#x22);/g,val:'"'}},this.ampEntity={regex:/&(amp|#38|#x26);/g,val:"&"},this.htmlEntities={space:{regex:/&(nbsp|#160);/g,val:" "},cent:{regex:/&(cent|#162);/g,val:"¢"},pound:{regex:/&(pound|#163);/g,val:"£"},yen:{regex:/&(yen|#165);/g,val:"¥"},euro:{regex:/&(euro|#8364);/g,val:"€"},copyright:{regex:/&(copy|#169);/g,val:"©"},reg:{regex:/&(reg|#174);/g,val:"®"},inr:{regex:/&(inr|#8377);/g,val:"₹"}},this.addExternalEntities=_t,this.parseXml=Et,this.parseTextData=Tt,this.resolveNameSpace=kt,this.buildAttributesMap=Lt,this.isItStopNode=Pt,this.replaceEntitiesValue=Ft,this.readStopNodeData=Ot,this.saveTextToParentTag=Bt,this.addChild=Nt}},{prettify:qt}=Dt,Zt=V;function Gt(t,e,n,s){let i="",a=!1;for(let r=0;r`,a=!1;continue}if(l===e.commentPropName){i+=s+`\x3c!--${o[l][0][e.textNodeName]}--\x3e`,a=!0;continue}if("?"===l[0]){const t=Yt(o[":@"],e),n="?xml"===l?"":s;let r=o[l][0][e.textNodeName];r=0!==r.length?" "+r:"",i+=n+`<${l}${r}${t}?>`,a=!0;continue}let d=s;""!==d&&(d+=e.indentBy);const u=s+`<${l}${Yt(o[":@"],e)}`,m=Gt(o[l],e,c,d);-1!==e.unpairedTags.indexOf(l)?e.suppressUnpairedNode?i+=u+">":i+=u+"/>":m&&0!==m.length||!e.suppressEmptyNode?m&&m.endsWith(">")?i+=u+`>${m}${s}`:(i+=u+">",m&&""!==s&&(m.includes("/>")||m.includes("`):i+=u+"/>",a=!0}return i}function Wt(t){const e=Object.keys(t);for(let n=0;n0&&e.processEntities)for(let n=0;n0&&(n="\n"),Gt(t,e,"",n)},Xt={attributeNamePrefix:"@_",attributesGroupName:!1,textNodeName:"#text",ignoreAttributes:!0,cdataPropName:!1,format:!1,indentBy:" ",suppressEmptyNode:!1,suppressUnpairedNode:!0,suppressBooleanAttributes:!0,tagValueProcessor:function(t,e){return e},attributeValueProcessor:function(t,e){return e},preserveOrder:!1,commentPropName:!1,unpairedTags:[],entities:[{regex:new RegExp("&","g"),val:"&"},{regex:new RegExp(">","g"),val:">"},{regex:new RegExp("<","g"),val:"<"},{regex:new RegExp("'","g"),val:"'"},{regex:new RegExp('"',"g"),val:"""}],processEntities:!0,stopNodes:[],oneListGroup:!1};function te(t){this.options=Object.assign({},Xt,t),this.options.ignoreAttributes||this.options.attributesGroupName?this.isAttribute=function(){return!1}:(this.attrPrefixLen=this.options.attributeNamePrefix.length,this.isAttribute=se),this.processTextOrObjNode=ee,this.options.format?(this.indentate=ne,this.tagEndChar=">\n",this.newLine="\n"):(this.indentate=function(){return""},this.tagEndChar=">",this.newLine="")}function ee(t,e,n){const s=this.j2x(t,n+1);return void 0!==t[this.options.textNodeName]&&1===Object.keys(t).length?this.buildTextValNode(t[this.options.textNodeName],e,s.attrStr,n):this.buildObjectNode(s.val,e,s.attrStr,n)}function ne(t){return this.options.indentBy.repeat(t)}function se(t){return!(!t.startsWith(this.options.attributeNamePrefix)||t===this.options.textNodeName)&&t.substr(this.attrPrefixLen)}te.prototype.build=function(t){return this.options.preserveOrder?Qt(t,this.options):(Array.isArray(t)&&this.options.arrayNodeName&&this.options.arrayNodeName.length>1&&(t={[this.options.arrayNodeName]:t}),this.j2x(t,0).val)},te.prototype.j2x=function(t,e){let n="",s="";for(let i in t)if(Object.prototype.hasOwnProperty.call(t,i))if(typeof t[i]>"u")this.isAttribute(i)&&(s+="");else if(null===t[i])this.isAttribute(i)?s+="":"?"===i[0]?s+=this.indentate(e)+"<"+i+"?"+this.tagEndChar:s+=this.indentate(e)+"<"+i+"/"+this.tagEndChar;else if(t[i]instanceof Date)s+=this.buildTextValNode(t[i],i,"",e);else if("object"!=typeof t[i]){const a=this.isAttribute(i);if(a)n+=this.buildAttrPairStr(a,""+t[i]);else if(i===this.options.textNodeName){let e=this.options.tagValueProcessor(i,""+t[i]);s+=this.replaceEntitiesValue(e)}else s+=this.buildTextValNode(t[i],i,"",e)}else if(Array.isArray(t[i])){const n=t[i].length;let a="";for(let r=0;r"u"||(null===n?"?"===i[0]?s+=this.indentate(e)+"<"+i+"?"+this.tagEndChar:s+=this.indentate(e)+"<"+i+"/"+this.tagEndChar:"object"==typeof n?this.options.oneListGroup?a+=this.j2x(n,e+1).val:a+=this.processTextOrObjNode(n,i,e):a+=this.buildTextValNode(n,i,"",e))}this.options.oneListGroup&&(a=this.buildObjectNode(a,i,"",e)),s+=a}else if(this.options.attributesGroupName&&i===this.options.attributesGroupName){const e=Object.keys(t[i]),s=e.length;for(let a=0;a"+t+i}},te.prototype.closeTag=function(t){let e="";return-1!==this.options.unpairedTags.indexOf(t)?this.options.suppressUnpairedNode||(e="/"):e=this.options.suppressEmptyNode?"/":`>`+this.newLine;if(!1!==this.options.commentPropName&&e===this.options.commentPropName)return this.indentate(s)+`\x3c!--${t}--\x3e`+this.newLine;if("?"===e[0])return this.indentate(s)+"<"+e+n+"?"+this.tagEndChar;{let i=this.options.tagValueProcessor(e,t);return i=this.replaceEntitiesValue(i),""===i?this.indentate(s)+"<"+e+n+this.closeTag(e)+this.tagEndChar:this.indentate(s)+"<"+e+n+">"+i+"0&&this.options.processEntities)for(let e=0;e0&&(!t.caption||"string"!=typeof t.caption))throw new Error("View caption is required for top-level views and must be a string");if(!t.getContents||"function"!=typeof t.getContents)throw new Error("View getContents is required and must be a function");if(!t.icon||"string"!=typeof t.icon||!function(t){if("string"!=typeof t)throw new TypeError(`Expected a \`string\`, got \`${typeof t}\``);if(0===(t=t.trim()).length||!0!==ie.XMLValidator.validate(t))return!1;let e;const n=new ie.XMLParser;try{e=n.parse(t)}catch{return!1}return!(!e||!("svg"in e))}(t.icon))throw new Error("View icon is required and must be a valid svg string");if(!("order"in t)||"number"!=typeof t.order)throw new Error("View order is required and must be a number");if(t.columns&&t.columns.forEach((t=>{if(!(t instanceof R))throw new Error("View columns must be an array of Column. Invalid column found")})),t.emptyView&&"function"!=typeof t.emptyView)throw new Error("View emptyView must be a function");if(t.parent&&"string"!=typeof t.parent)throw new Error("View parent must be a string");if("sticky"in t&&"boolean"!=typeof t.sticky)throw new Error("View sticky must be a boolean");if("expanded"in t&&"boolean"!=typeof t.expanded)throw new Error("View expanded must be a boolean");if(t.defaultSortKey&&"string"!=typeof t.defaultSortKey)throw new Error("View defaultSortKey must be a string");return!0},oe=function(t){return(typeof window._nc_newfilemenu>"u"&&(window._nc_newfilemenu=new m,d.debug("NewFileMenu initialized")),window._nc_newfilemenu).getEntries(t).sort(((t,e)=>void 0!==t.order&&void 0!==e.order&&t.order!==e.order?t.order-e.order:t.displayName.localeCompare(e.displayName,void 0,{numeric:!0,sensitivity:"base"})))}},9239:(t,e,n)=>{"use strict";n.d(e,{U:()=>rl,V:()=>ja,a:()=>sl,g:()=>ll,l:()=>Ve,n:()=>Jo,t:()=>il});var s=n(93379),i=n.n(s),a=n(7795),r=n.n(a),o=n(90569),l=n.n(o),c=n(3565),d=n.n(c),u=n(19216),m=n.n(u),f=n(44589),p=n.n(f),g=n(82396),h={};h.styleTagTransform=p(),h.setAttributes=d(),h.insert=l().bind(null,"head"),h.domAPI=r(),h.insertStyleElement=m(),i()(g.Z,h),g.Z&&g.Z.locals&&g.Z.locals;var v=n(79753),A=n(77958),w=n(5656),y=n(93664);class b extends Error{constructor(t){super(t||"Promise was canceled"),this.name="CancelError"}get isCanceled(){return!0}}const C=Object.freeze({pending:Symbol("pending"),canceled:Symbol("canceled"),resolved:Symbol("resolved"),rejected:Symbol("rejected")});class x{static fn(t){return(...e)=>new x(((n,s,i)=>{e.push(i),t(...e).then(n,s)}))}#t=[];#e=!0;#n=C.pending;#s;#i;constructor(t){this.#s=new Promise(((e,n)=>{this.#i=n;const s=t=>{if(this.#n!==C.pending)throw new Error(`The \`onCancel\` handler was attached after the promise ${this.#n.description}.`);this.#t.push(t)};Object.defineProperties(s,{shouldReject:{get:()=>this.#e,set:t=>{this.#e=t}}}),t((t=>{this.#n===C.canceled&&s.shouldReject||(e(t),this.#a(C.resolved))}),(t=>{this.#n===C.canceled&&s.shouldReject||(n(t),this.#a(C.rejected))}),s)}))}then(t,e){return this.#s.then(t,e)}catch(t){return this.#s.catch(t)}finally(t){return this.#s.finally(t)}cancel(t){if(this.#n===C.pending){if(this.#a(C.canceled),this.#t.length>0)try{for(const t of this.#t)t()}catch(t){return void this.#i(t)}this.#e&&this.#i(new b(t))}}get isCanceled(){return this.#n===C.canceled}#a(t){this.#n===C.pending&&(this.#n=t)}}Object.setPrototypeOf(x.prototype,Promise.prototype);var _=n(59440),T=n(43452);const k=(t,e,n)=>t.bind(n);var S=n(17499),L=n(64024),E=n(69481),N=n(72155),F=n(55212),B=n(74628),P=n(64865),j=n(34854),I=n(48264),O=n(48764).Buffer,U=n(25108);function D(t,e){return function(){return t.apply(e,arguments)}}const{toString:$}=Object.prototype,{getPrototypeOf:z}=Object,R=(Z=Object.create(null),t=>{const e=$.call(t);return Z[e]||(Z[e]=e.slice(8,-1).toLowerCase())}),M=t=>(t=t.toLowerCase(),e=>R(e)===t),V=t=>e=>typeof e===t,{isArray:H}=Array,q=V("undefined");var Z;const G=M("ArrayBuffer"),W=V("string"),Y=V("function"),K=V("number"),J=t=>null!==t&&"object"==typeof t,Q=t=>{if("object"!==R(t))return!1;const e=z(t);return!(null!==e&&e!==Object.prototype&&null!==Object.getPrototypeOf(e)||Symbol.toStringTag in t||Symbol.iterator in t)},X=M("Date"),tt=M("File"),et=M("Blob"),nt=M("FileList"),st=M("URLSearchParams");function it(t,e,{allOwnKeys:n=!1}={}){if(null===t||typeof t>"u")return;let s,i;if("object"!=typeof t&&(t=[t]),H(t))for(s=0,i=t.length;s0;)if(s=n[i],e===s.toLowerCase())return s;return null}const rt=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global,ot=t=>!q(t)&&t!==rt,lt=(t=>e=>t&&e instanceof t)(typeof Uint8Array<"u"&&z(Uint8Array)),ct=M("HTMLFormElement"),dt=(({hasOwnProperty:t})=>(e,n)=>t.call(e,n))(Object.prototype),ut=M("RegExp"),mt=(t,e)=>{const n=Object.getOwnPropertyDescriptors(t),s={};it(n,((n,i)=>{let a;!1!==(a=e(n,i,t))&&(s[i]=a||n)})),Object.defineProperties(t,s)},ft="abcdefghijklmnopqrstuvwxyz",pt="0123456789",gt={DIGIT:pt,ALPHA:ft,ALPHA_DIGIT:ft+ft.toUpperCase()+pt},ht=M("AsyncFunction"),vt={isArray:H,isArrayBuffer:G,isBuffer:function(t){return null!==t&&!q(t)&&null!==t.constructor&&!q(t.constructor)&&Y(t.constructor.isBuffer)&&t.constructor.isBuffer(t)},isFormData:t=>{let e;return t&&("function"==typeof FormData&&t instanceof FormData||Y(t.append)&&("formdata"===(e=R(t))||"object"===e&&Y(t.toString)&&"[object FormData]"===t.toString()))},isArrayBufferView:function(t){let e;return e=typeof ArrayBuffer<"u"&&ArrayBuffer.isView?ArrayBuffer.isView(t):t&&t.buffer&&G(t.buffer),e},isString:W,isNumber:K,isBoolean:t=>!0===t||!1===t,isObject:J,isPlainObject:Q,isUndefined:q,isDate:X,isFile:tt,isBlob:et,isRegExp:ut,isFunction:Y,isStream:t=>J(t)&&Y(t.pipe),isURLSearchParams:st,isTypedArray:lt,isFileList:nt,forEach:it,merge:function t(){const{caseless:e}=ot(this)&&this||{},n={},s=(s,i)=>{const a=e&&at(n,i)||i;Q(n[a])&&Q(s)?n[a]=t(n[a],s):Q(s)?n[a]=t({},s):H(s)?n[a]=s.slice():n[a]=s};for(let t=0,e=arguments.length;t(it(e,((e,s)=>{n&&Y(e)?t[s]=D(e,n):t[s]=e}),{allOwnKeys:s}),t),trim:t=>t.trim?t.trim():t.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,""),stripBOM:t=>(65279===t.charCodeAt(0)&&(t=t.slice(1)),t),inherits:(t,e,n,s)=>{t.prototype=Object.create(e.prototype,s),t.prototype.constructor=t,Object.defineProperty(t,"super",{value:e.prototype}),n&&Object.assign(t.prototype,n)},toFlatObject:(t,e,n,s)=>{let i,a,r;const o={};if(e=e||{},null==t)return e;do{for(i=Object.getOwnPropertyNames(t),a=i.length;a-- >0;)r=i[a],(!s||s(r,t,e))&&!o[r]&&(e[r]=t[r],o[r]=!0);t=!1!==n&&z(t)}while(t&&(!n||n(t,e))&&t!==Object.prototype);return e},kindOf:R,kindOfTest:M,endsWith:(t,e,n)=>{t=String(t),(void 0===n||n>t.length)&&(n=t.length),n-=e.length;const s=t.indexOf(e,n);return-1!==s&&s===n},toArray:t=>{if(!t)return null;if(H(t))return t;let e=t.length;if(!K(e))return null;const n=new Array(e);for(;e-- >0;)n[e]=t[e];return n},forEachEntry:(t,e)=>{const n=(t&&t[Symbol.iterator]).call(t);let s;for(;(s=n.next())&&!s.done;){const n=s.value;e.call(t,n[0],n[1])}},matchAll:(t,e)=>{let n;const s=[];for(;null!==(n=t.exec(e));)s.push(n);return s},isHTMLForm:ct,hasOwnProperty:dt,hasOwnProp:dt,reduceDescriptors:mt,freezeMethods:t=>{mt(t,((e,n)=>{if(Y(t)&&-1!==["arguments","caller","callee"].indexOf(n))return!1;const s=t[n];if(Y(s)){if(e.enumerable=!1,"writable"in e)return void(e.writable=!1);e.set||(e.set=()=>{throw Error("Can not rewrite read-only method '"+n+"'")})}}))},toObjectSet:(t,e)=>{const n={},s=t=>{t.forEach((t=>{n[t]=!0}))};return H(t)?s(t):s(String(t).split(e)),n},toCamelCase:t=>t.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,(function(t,e,n){return e.toUpperCase()+n})),noop:()=>{},toFiniteNumber:(t,e)=>(t=+t,Number.isFinite(t)?t:e),findKey:at,global:rt,isContextDefined:ot,ALPHABET:gt,generateString:(t=16,e=gt.ALPHA_DIGIT)=>{let n="";const{length:s}=e;for(;t--;)n+=e[Math.random()*s|0];return n},isSpecCompliantForm:function(t){return!!(t&&Y(t.append)&&"FormData"===t[Symbol.toStringTag]&&t[Symbol.iterator])},toJSONObject:t=>{const e=new Array(10),n=(t,s)=>{if(J(t)){if(e.indexOf(t)>=0)return;if(!("toJSON"in t)){e[s]=t;const i=H(t)?[]:{};return it(t,((t,e)=>{const a=n(t,s+1);!q(a)&&(i[e]=a)})),e[s]=void 0,i}}return t};return n(t,0)},isAsyncFn:ht,isThenable:t=>t&&(J(t)||Y(t))&&Y(t.then)&&Y(t.catch)};function At(t,e,n,s,i){Error.call(this),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=(new Error).stack,this.message=t,this.name="AxiosError",e&&(this.code=e),n&&(this.config=n),s&&(this.request=s),i&&(this.response=i)}vt.inherits(At,Error,{toJSON:function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:vt.toJSONObject(this.config),code:this.code,status:this.response&&this.response.status?this.response.status:null}}});const wt=At.prototype,yt={};function bt(t){return vt.isPlainObject(t)||vt.isArray(t)}function Ct(t){return vt.endsWith(t,"[]")?t.slice(0,-2):t}function xt(t,e,n){return t?t.concat(e).map((function(t,e){return t=Ct(t),!n&&e?"["+t+"]":t})).join(n?".":""):e}["ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","ECONNABORTED","ETIMEDOUT","ERR_NETWORK","ERR_FR_TOO_MANY_REDIRECTS","ERR_DEPRECATED","ERR_BAD_RESPONSE","ERR_BAD_REQUEST","ERR_CANCELED","ERR_NOT_SUPPORT","ERR_INVALID_URL"].forEach((t=>{yt[t]={value:t}})),Object.defineProperties(At,yt),Object.defineProperty(wt,"isAxiosError",{value:!0}),At.from=(t,e,n,s,i,a)=>{const r=Object.create(wt);return vt.toFlatObject(t,r,(function(t){return t!==Error.prototype}),(t=>"isAxiosError"!==t)),At.call(r,t.message,e,n,s,i),r.cause=t,r.name=t.name,a&&Object.assign(r,a),r};const _t=vt.toFlatObject(vt,{},null,(function(t){return/^is[A-Z]/.test(t)}));function Tt(t,e,n){if(!vt.isObject(t))throw new TypeError("target must be an object");e=e||new FormData;const s=(n=vt.toFlatObject(n,{metaTokens:!0,dots:!1,indexes:!1},!1,(function(t,e){return!vt.isUndefined(e[t])}))).metaTokens,i=n.visitor||c,a=n.dots,r=n.indexes,o=(n.Blob||typeof Blob<"u"&&Blob)&&vt.isSpecCompliantForm(e);if(!vt.isFunction(i))throw new TypeError("visitor must be a function");function l(t){if(null===t)return"";if(vt.isDate(t))return t.toISOString();if(!o&&vt.isBlob(t))throw new At("Blob is not supported. Use a Buffer instead.");return vt.isArrayBuffer(t)||vt.isTypedArray(t)?o&&"function"==typeof Blob?new Blob([t]):O.from(t):t}function c(t,n,i){let o=t;if(t&&!i&&"object"==typeof t)if(vt.endsWith(n,"{}"))n=s?n:n.slice(0,-2),t=JSON.stringify(t);else if(vt.isArray(t)&&function(t){return vt.isArray(t)&&!t.some(bt)}(t)||(vt.isFileList(t)||vt.endsWith(n,"[]"))&&(o=vt.toArray(t)))return n=Ct(n),o.forEach((function(t,s){!vt.isUndefined(t)&&null!==t&&e.append(!0===r?xt([n],s,a):null===r?n:n+"[]",l(t))})),!1;return!!bt(t)||(e.append(xt(i,n,a),l(t)),!1)}const d=[],u=Object.assign(_t,{defaultVisitor:c,convertValue:l,isVisitable:bt});if(!vt.isObject(t))throw new TypeError("data must be an object");return function t(n,s){if(!vt.isUndefined(n)){if(-1!==d.indexOf(n))throw Error("Circular reference detected in "+s.join("."));d.push(n),vt.forEach(n,(function(n,a){!0===(!(vt.isUndefined(n)||null===n)&&i.call(e,n,vt.isString(a)?a.trim():a,s,u))&&t(n,s?s.concat(a):[a])})),d.pop()}}(t),e}function kt(t){const e={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(t).replace(/[!'()~]|%20|%00/g,(function(t){return e[t]}))}function St(t,e){this._pairs=[],t&&Tt(t,this,e)}const Lt=St.prototype;function Et(t){return encodeURIComponent(t).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}function Nt(t,e,n){if(!e)return t;const s=n&&n.encode||Et,i=n&&n.serialize;let a;if(a=i?i(e,n):vt.isURLSearchParams(e)?e.toString():new St(e,n).toString(s),a){const e=t.indexOf("#");-1!==e&&(t=t.slice(0,e)),t+=(-1===t.indexOf("?")?"?":"&")+a}return t}Lt.append=function(t,e){this._pairs.push([t,e])},Lt.toString=function(t){const e=t?function(e){return t.call(this,e,kt)}:kt;return this._pairs.map((function(t){return e(t[0])+"="+e(t[1])}),"").join("&")};const Ft=class{constructor(){this.handlers=[]}use(t,e,n){return this.handlers.push({fulfilled:t,rejected:e,synchronous:!!n&&n.synchronous,runWhen:n?n.runWhen:null}),this.handlers.length-1}eject(t){this.handlers[t]&&(this.handlers[t]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(t){vt.forEach(this.handlers,(function(e){null!==e&&t(e)}))}},Bt={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1},Pt={isBrowser:!0,classes:{URLSearchParams:typeof URLSearchParams<"u"?URLSearchParams:St,FormData:typeof FormData<"u"?FormData:null,Blob:typeof Blob<"u"?Blob:null},protocols:["http","https","file","blob","url","data"]},jt=typeof window<"u"&&typeof document<"u",It=(t=>jt&&["ReactNative","NativeScript","NS"].indexOf(t)<0)(typeof navigator<"u"&&navigator.product),Ot=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&"function"==typeof self.importScripts,Ut={...Object.freeze(Object.defineProperty({__proto__:null,hasBrowserEnv:jt,hasStandardBrowserEnv:It,hasStandardBrowserWebWorkerEnv:Ot},Symbol.toStringTag,{value:"Module"})),...Pt};function Dt(t){function e(t,n,s,i){let a=t[i++];const r=Number.isFinite(+a),o=i>=t.length;return a=!a&&vt.isArray(s)?s.length:a,o?(vt.hasOwnProp(s,a)?s[a]=[s[a],n]:s[a]=n,!r):((!s[a]||!vt.isObject(s[a]))&&(s[a]=[]),e(t,n,s[a],i)&&vt.isArray(s[a])&&(s[a]=function(t){const e={},n=Object.keys(t);let s;const i=n.length;let a;for(s=0;s{e(function(t){return vt.matchAll(/\w+|\[(\w*)]/g,t).map((t=>"[]"===t[0]?"":t[1]||t[0]))}(t),s,n,0)})),n}return null}const $t={transitional:Bt,adapter:["xhr","http"],transformRequest:[function(t,e){const n=e.getContentType()||"",s=n.indexOf("application/json")>-1,i=vt.isObject(t);if(i&&vt.isHTMLForm(t)&&(t=new FormData(t)),vt.isFormData(t))return s&&s?JSON.stringify(Dt(t)):t;if(vt.isArrayBuffer(t)||vt.isBuffer(t)||vt.isStream(t)||vt.isFile(t)||vt.isBlob(t))return t;if(vt.isArrayBufferView(t))return t.buffer;if(vt.isURLSearchParams(t))return e.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),t.toString();let a;if(i){if(n.indexOf("application/x-www-form-urlencoded")>-1)return function(t,e){return Tt(t,new Ut.classes.URLSearchParams,Object.assign({visitor:function(t,e,n,s){return Ut.isNode&&vt.isBuffer(t)?(this.append(e,t.toString("base64")),!1):s.defaultVisitor.apply(this,arguments)}},e))}(t,this.formSerializer).toString();if((a=vt.isFileList(t))||n.indexOf("multipart/form-data")>-1){const e=this.env&&this.env.FormData;return Tt(a?{"files[]":t}:t,e&&new e,this.formSerializer)}}return i||s?(e.setContentType("application/json",!1),function(t,e,n){if(vt.isString(t))try{return(0,JSON.parse)(t),vt.trim(t)}catch(t){if("SyntaxError"!==t.name)throw t}return(0,JSON.stringify)(t)}(t)):t}],transformResponse:[function(t){const e=this.transitional||$t.transitional,n=e&&e.forcedJSONParsing,s="json"===this.responseType;if(t&&vt.isString(t)&&(n&&!this.responseType||s)){const n=!(e&&e.silentJSONParsing)&&s;try{return JSON.parse(t)}catch(t){if(n)throw"SyntaxError"===t.name?At.from(t,At.ERR_BAD_RESPONSE,this,null,this.response):t}}return t}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:Ut.classes.FormData,Blob:Ut.classes.Blob},validateStatus:function(t){return t>=200&&t<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};vt.forEach(["delete","get","head","post","put","patch"],(t=>{$t.headers[t]={}}));const zt=$t,Rt=vt.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]),Mt=Symbol("internals");function Vt(t){return t&&String(t).trim().toLowerCase()}function Ht(t){return!1===t||null==t?t:vt.isArray(t)?t.map(Ht):String(t)}function qt(t,e,n,s,i){if(vt.isFunction(s))return s.call(this,e,n);if(i&&(e=n),vt.isString(e)){if(vt.isString(s))return-1!==e.indexOf(s);if(vt.isRegExp(s))return s.test(e)}}let Zt=class{constructor(t){t&&this.set(t)}set(t,e,n){const s=this;function i(t,e,n){const i=Vt(e);if(!i)throw new Error("header name must be a non-empty string");const a=vt.findKey(s,i);(!a||void 0===s[a]||!0===n||void 0===n&&!1!==s[a])&&(s[a||e]=Ht(t))}const a=(t,e)=>vt.forEach(t,((t,n)=>i(t,n,e)));return vt.isPlainObject(t)||t instanceof this.constructor?a(t,e):vt.isString(t)&&(t=t.trim())&&!(t=>/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(t.trim()))(t)?a((t=>{const e={};let n,s,i;return t&&t.split("\n").forEach((function(t){i=t.indexOf(":"),n=t.substring(0,i).trim().toLowerCase(),s=t.substring(i+1).trim(),!(!n||e[n]&&Rt[n])&&("set-cookie"===n?e[n]?e[n].push(s):e[n]=[s]:e[n]=e[n]?e[n]+", "+s:s)})),e})(t),e):null!=t&&i(e,t,n),this}get(t,e){if(t=Vt(t)){const n=vt.findKey(this,t);if(n){const t=this[n];if(!e)return t;if(!0===e)return function(t){const e=Object.create(null),n=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g;let s;for(;s=n.exec(t);)e[s[1]]=s[2];return e}(t);if(vt.isFunction(e))return e.call(this,t,n);if(vt.isRegExp(e))return e.exec(t);throw new TypeError("parser must be boolean|regexp|function")}}}has(t,e){if(t=Vt(t)){const n=vt.findKey(this,t);return!(!n||void 0===this[n]||e&&!qt(0,this[n],n,e))}return!1}delete(t,e){const n=this;let s=!1;function i(t){if(t=Vt(t)){const i=vt.findKey(n,t);i&&(!e||qt(0,n[i],i,e))&&(delete n[i],s=!0)}}return vt.isArray(t)?t.forEach(i):i(t),s}clear(t){const e=Object.keys(this);let n=e.length,s=!1;for(;n--;){const i=e[n];(!t||qt(0,this[i],i,t,!0))&&(delete this[i],s=!0)}return s}normalize(t){const e=this,n={};return vt.forEach(this,((s,i)=>{const a=vt.findKey(n,i);if(a)return e[a]=Ht(s),void delete e[i];const r=t?function(t){return t.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,((t,e,n)=>e.toUpperCase()+n))}(i):String(i).trim();r!==i&&delete e[i],e[r]=Ht(s),n[r]=!0})),this}concat(...t){return this.constructor.concat(this,...t)}toJSON(t){const e=Object.create(null);return vt.forEach(this,((n,s)=>{null!=n&&!1!==n&&(e[s]=t&&vt.isArray(n)?n.join(", "):n)})),e}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map((([t,e])=>t+": "+e)).join("\n")}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(t){return t instanceof this?t:new this(t)}static concat(t,...e){const n=new this(t);return e.forEach((t=>n.set(t))),n}static accessor(t){const e=(this[Mt]=this[Mt]={accessors:{}}).accessors,n=this.prototype;function s(t){const s=Vt(t);e[s]||(function(t,e){const n=vt.toCamelCase(" "+e);["get","set","has"].forEach((s=>{Object.defineProperty(t,s+n,{value:function(t,n,i){return this[s].call(this,e,t,n,i)},configurable:!0})}))}(n,t),e[s]=!0)}return vt.isArray(t)?t.forEach(s):s(t),this}};Zt.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]),vt.reduceDescriptors(Zt.prototype,(({value:t},e)=>{let n=e[0].toUpperCase()+e.slice(1);return{get:()=>t,set(t){this[n]=t}}})),vt.freezeMethods(Zt);const Gt=Zt;function Wt(t,e){const n=this||zt,s=e||n,i=Gt.from(s.headers);let a=s.data;return vt.forEach(t,(function(t){a=t.call(n,a,i.normalize(),e?e.status:void 0)})),i.normalize(),a}function Yt(t){return!(!t||!t.__CANCEL__)}function Kt(t,e,n){At.call(this,t??"canceled",At.ERR_CANCELED,e,n),this.name="CanceledError"}vt.inherits(Kt,At,{__CANCEL__:!0});const Jt=Ut.hasStandardBrowserEnv?{write:function(t,e,n,s,i,a){const r=[];r.push(t+"="+encodeURIComponent(e)),vt.isNumber(n)&&r.push("expires="+new Date(n).toGMTString()),vt.isString(s)&&r.push("path="+s),vt.isString(i)&&r.push("domain="+i),!0===a&&r.push("secure"),document.cookie=r.join("; ")},read:function(t){const e=document.cookie.match(new RegExp("(^|;\\s*)("+t+")=([^;]*)"));return e?decodeURIComponent(e[3]):null},remove:function(t){this.write(t,"",Date.now()-864e5)}}:{write:function(){},read:function(){return null},remove:function(){}};function Qt(t,e){return t&&!function(t){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(t)}(e)?function(t,e){return e?t.replace(/\/+$/,"")+"/"+e.replace(/^\/+/,""):t}(t,e):e}const Xt=Ut.hasStandardBrowserEnv?function(){const t=/(msie|trident)/i.test(navigator.userAgent),e=document.createElement("a");let n;function s(n){let s=n;return t&&(e.setAttribute("href",s),s=e.href),e.setAttribute("href",s),{href:e.href,protocol:e.protocol?e.protocol.replace(/:$/,""):"",host:e.host,search:e.search?e.search.replace(/^\?/,""):"",hash:e.hash?e.hash.replace(/^#/,""):"",hostname:e.hostname,port:e.port,pathname:"/"===e.pathname.charAt(0)?e.pathname:"/"+e.pathname}}return n=s(window.location.href),function(t){const e=vt.isString(t)?s(t):t;return e.protocol===n.protocol&&e.host===n.host}}():function(){return!0};function te(t,e){let n=0;const s=function(t,e){t=t||10;const n=new Array(t),s=new Array(t);let i,a=0,r=0;return e=void 0!==e?e:1e3,function(o){const l=Date.now(),c=s[r];i||(i=l),n[a]=o,s[a]=l;let d=r,u=0;for(;d!==a;)u+=n[d++],d%=t;if(a=(a+1)%t,a===r&&(r=(r+1)%t),l-i{const a=i.loaded,r=i.lengthComputable?i.total:void 0,o=a-n,l=s(o);n=a;const c={loaded:a,total:r,progress:r?a/r:void 0,bytes:o,rate:l||void 0,estimated:l&&r&&a<=r?(r-a)/l:void 0,event:i};c[e?"download":"upload"]=!0,t(c)}}const ee=typeof XMLHttpRequest<"u"&&function(t){return new Promise((function(e,n){let s=t.data;const i=Gt.from(t.headers).normalize(),a=t.responseType;let r,o;function l(){t.cancelToken&&t.cancelToken.unsubscribe(r),t.signal&&t.signal.removeEventListener("abort",r)}if(vt.isFormData(s))if(Ut.hasStandardBrowserEnv||Ut.hasStandardBrowserWebWorkerEnv)i.setContentType(!1);else if(!1!==(o=i.getContentType())){const[t,...e]=o?o.split(";").map((t=>t.trim())).filter(Boolean):[];i.setContentType([t||"multipart/form-data",...e].join("; "))}let c=new XMLHttpRequest;if(t.auth){const e=t.auth.username||"",n=t.auth.password?unescape(encodeURIComponent(t.auth.password)):"";i.set("Authorization","Basic "+btoa(e+":"+n))}const d=Qt(t.baseURL,t.url);function u(){if(!c)return;const s=Gt.from("getAllResponseHeaders"in c&&c.getAllResponseHeaders());(function(t,e,n){const s=n.config.validateStatus;n.status&&s&&!s(n.status)?e(new At("Request failed with status code "+n.status,[At.ERR_BAD_REQUEST,At.ERR_BAD_RESPONSE][Math.floor(n.status/100)-4],n.config,n.request,n)):t(n)})((function(t){e(t),l()}),(function(t){n(t),l()}),{data:a&&"text"!==a&&"json"!==a?c.response:c.responseText,status:c.status,statusText:c.statusText,headers:s,config:t,request:c}),c=null}if(c.open(t.method.toUpperCase(),Nt(d,t.params,t.paramsSerializer),!0),c.timeout=t.timeout,"onloadend"in c?c.onloadend=u:c.onreadystatechange=function(){!c||4!==c.readyState||0===c.status&&(!c.responseURL||0!==c.responseURL.indexOf("file:"))||setTimeout(u)},c.onabort=function(){c&&(n(new At("Request aborted",At.ECONNABORTED,t,c)),c=null)},c.onerror=function(){n(new At("Network Error",At.ERR_NETWORK,t,c)),c=null},c.ontimeout=function(){let e=t.timeout?"timeout of "+t.timeout+"ms exceeded":"timeout exceeded";const s=t.transitional||Bt;t.timeoutErrorMessage&&(e=t.timeoutErrorMessage),n(new At(e,s.clarifyTimeoutError?At.ETIMEDOUT:At.ECONNABORTED,t,c)),c=null},Ut.hasStandardBrowserEnv){const e=Xt(d)&&t.xsrfCookieName&&Jt.read(t.xsrfCookieName);e&&i.set(t.xsrfHeaderName,e)}void 0===s&&i.setContentType(null),"setRequestHeader"in c&&vt.forEach(i.toJSON(),(function(t,e){c.setRequestHeader(e,t)})),vt.isUndefined(t.withCredentials)||(c.withCredentials=!!t.withCredentials),a&&"json"!==a&&(c.responseType=t.responseType),"function"==typeof t.onDownloadProgress&&c.addEventListener("progress",te(t.onDownloadProgress,!0)),"function"==typeof t.onUploadProgress&&c.upload&&c.upload.addEventListener("progress",te(t.onUploadProgress)),(t.cancelToken||t.signal)&&(r=e=>{c&&(n(!e||e.type?new Kt(null,t,c):e),c.abort(),c=null)},t.cancelToken&&t.cancelToken.subscribe(r),t.signal&&(t.signal.aborted?r():t.signal.addEventListener("abort",r)));const m=function(t){const e=/^([-+\w]{1,25})(:?\/\/|:)/.exec(t);return e&&e[1]||""}(d);m&&-1===Ut.protocols.indexOf(m)?n(new At("Unsupported protocol "+m+":",At.ERR_BAD_REQUEST,t)):c.send(s||null)}))},ne={http:null,xhr:ee};vt.forEach(ne,((t,e)=>{if(t){try{Object.defineProperty(t,"name",{value:e})}catch{}Object.defineProperty(t,"adapterName",{value:e})}}));const se=t=>`- ${t}`,ie=t=>vt.isFunction(t)||null===t||!1===t,ae=t=>{t=vt.isArray(t)?t:[t];const{length:e}=t;let n,s;const i={};for(let a=0;a`adapter ${t} `+(!1===e?"is not supported by the environment":"is not available in the build")));throw new At("There is no suitable adapter to dispatch the request "+(e?t.length>1?"since :\n"+t.map(se).join("\n"):" "+se(t[0]):"as no adapter specified"),"ERR_NOT_SUPPORT")}return s};function re(t){if(t.cancelToken&&t.cancelToken.throwIfRequested(),t.signal&&t.signal.aborted)throw new Kt(null,t)}function oe(t){return re(t),t.headers=Gt.from(t.headers),t.data=Wt.call(t,t.transformRequest),-1!==["post","put","patch"].indexOf(t.method)&&t.headers.setContentType("application/x-www-form-urlencoded",!1),ae(t.adapter||zt.adapter)(t).then((function(e){return re(t),e.data=Wt.call(t,t.transformResponse,e),e.headers=Gt.from(e.headers),e}),(function(e){return Yt(e)||(re(t),e&&e.response&&(e.response.data=Wt.call(t,t.transformResponse,e.response),e.response.headers=Gt.from(e.response.headers))),Promise.reject(e)}))}const le=t=>t instanceof Gt?t.toJSON():t;function ce(t,e){e=e||{};const n={};function s(t,e,n){return vt.isPlainObject(t)&&vt.isPlainObject(e)?vt.merge.call({caseless:n},t,e):vt.isPlainObject(e)?vt.merge({},e):vt.isArray(e)?e.slice():e}function i(t,e,n){return vt.isUndefined(e)?vt.isUndefined(t)?void 0:s(void 0,t,n):s(t,e,n)}function a(t,e){if(!vt.isUndefined(e))return s(void 0,e)}function r(t,e){return vt.isUndefined(e)?vt.isUndefined(t)?void 0:s(void 0,t):s(void 0,e)}function o(n,i,a){return a in e?s(n,i):a in t?s(void 0,n):void 0}const l={url:a,method:a,data:a,baseURL:r,transformRequest:r,transformResponse:r,paramsSerializer:r,timeout:r,timeoutMessage:r,withCredentials:r,adapter:r,responseType:r,xsrfCookieName:r,xsrfHeaderName:r,onUploadProgress:r,onDownloadProgress:r,decompress:r,maxContentLength:r,maxBodyLength:r,beforeRedirect:r,transport:r,httpAgent:r,httpsAgent:r,cancelToken:r,socketPath:r,responseEncoding:r,validateStatus:o,headers:(t,e)=>i(le(t),le(e),!0)};return vt.forEach(Object.keys(Object.assign({},t,e)),(function(s){const a=l[s]||i,r=a(t[s],e[s],s);vt.isUndefined(r)&&a!==o||(n[s]=r)})),n}const de={};["object","boolean","number","function","string","symbol"].forEach(((t,e)=>{de[t]=function(n){return typeof n===t||"a"+(e<1?"n ":" ")+t}}));const ue={};de.transitional=function(t,e,n){function s(t,e){return"[Axios v1.6.1] Transitional option '"+t+"'"+e+(n?". "+n:"")}return(n,i,a)=>{if(!1===t)throw new At(s(i," has been removed"+(e?" in "+e:"")),At.ERR_DEPRECATED);return e&&!ue[i]&&(ue[i]=!0,U.warn(s(i," has been deprecated since v"+e+" and will be removed in the near future"))),!t||t(n,i,a)}};const me={assertOptions:function(t,e,n){if("object"!=typeof t)throw new At("options must be an object",At.ERR_BAD_OPTION_VALUE);const s=Object.keys(t);let i=s.length;for(;i-- >0;){const a=s[i],r=e[a];if(r){const e=t[a],n=void 0===e||r(e,a,t);if(!0!==n)throw new At("option "+a+" must be "+n,At.ERR_BAD_OPTION_VALUE)}else if(!0!==n)throw new At("Unknown option "+a,At.ERR_BAD_OPTION)}},validators:de},fe=me.validators;let pe=class{constructor(t){this.defaults=t,this.interceptors={request:new Ft,response:new Ft}}request(t,e){"string"==typeof t?(e=e||{}).url=t:e=t||{},e=ce(this.defaults,e);const{transitional:n,paramsSerializer:s,headers:i}=e;void 0!==n&&me.assertOptions(n,{silentJSONParsing:fe.transitional(fe.boolean),forcedJSONParsing:fe.transitional(fe.boolean),clarifyTimeoutError:fe.transitional(fe.boolean)},!1),null!=s&&(vt.isFunction(s)?e.paramsSerializer={serialize:s}:me.assertOptions(s,{encode:fe.function,serialize:fe.function},!0)),e.method=(e.method||this.defaults.method||"get").toLowerCase();let a=i&&vt.merge(i.common,i[e.method]);i&&vt.forEach(["delete","get","head","post","put","patch","common"],(t=>{delete i[t]})),e.headers=Gt.concat(a,i);const r=[];let o=!0;this.interceptors.request.forEach((function(t){"function"==typeof t.runWhen&&!1===t.runWhen(e)||(o=o&&t.synchronous,r.unshift(t.fulfilled,t.rejected))}));const l=[];this.interceptors.response.forEach((function(t){l.push(t.fulfilled,t.rejected)}));let c,d,u=0;if(!o){const t=[oe.bind(this),void 0];for(t.unshift.apply(t,r),t.push.apply(t,l),d=t.length,c=Promise.resolve(e);u{he[e]=t}));const ve=he,Ae=function t(e){const n=new ge(e),s=D(ge.prototype.request,n);return vt.extend(s,ge.prototype,n,{allOwnKeys:!0}),vt.extend(s,n,null,{allOwnKeys:!0}),s.create=function(n){return t(ce(e,n))},s}(zt);Ae.Axios=ge,Ae.CanceledError=Kt,Ae.CancelToken=class t{constructor(t){if("function"!=typeof t)throw new TypeError("executor must be a function.");let e;this.promise=new Promise((function(t){e=t}));const n=this;this.promise.then((t=>{if(!n._listeners)return;let e=n._listeners.length;for(;e-- >0;)n._listeners[e](t);n._listeners=null})),this.promise.then=t=>{let e;const s=new Promise((t=>{n.subscribe(t),e=t})).then(t);return s.cancel=function(){n.unsubscribe(e)},s},t((function(t,s,i){n.reason||(n.reason=new Kt(t,s,i),e(n.reason))}))}throwIfRequested(){if(this.reason)throw this.reason}subscribe(t){this.reason?t(this.reason):this._listeners?this._listeners.push(t):this._listeners=[t]}unsubscribe(t){if(!this._listeners)return;const e=this._listeners.indexOf(t);-1!==e&&this._listeners.splice(e,1)}static source(){let e;return{token:new t((function(t){e=t})),cancel:e}}},Ae.isCancel=Yt,Ae.VERSION="1.6.1",Ae.toFormData=Tt,Ae.AxiosError=At,Ae.Cancel=Ae.CanceledError,Ae.all=function(t){return Promise.all(t)},Ae.spread=function(t){return function(e){return t.apply(null,e)}},Ae.isAxiosError=function(t){return vt.isObject(t)&&!0===t.isAxiosError},Ae.mergeConfig=ce,Ae.AxiosHeaders=Gt,Ae.formToJSON=t=>Dt(vt.isHTMLForm(t)?new FormData(t):t),Ae.getAdapter=ae,Ae.HttpStatusCode=ve,Ae.default=Ae;const we=Ae,{Axios:ye,AxiosError:be,CanceledError:Ce,isCancel:xe,CancelToken:_e,VERSION:Te,all:ke,Cancel:Se,isAxiosError:Le,spread:Ee,toFormData:Ne,AxiosHeaders:Fe,HttpStatusCode:Be,formToJSON:Pe,getAdapter:je,mergeConfig:Ie}=we,Oe=function(t){if(!Number.isInteger(1)&&1!==Number.POSITIVE_INFINITY)throw new TypeError("Expected `concurrency` to be a number from 1 and up");const e=new T.Z;let n=0;const s=async(t,s,i)=>{n++;const a=(async()=>t(...i))();s(a);try{await a}catch{}n--,e.size>0&&e.dequeue()()},i=(t,...i)=>new Promise((a=>{((t,i,a)=>{e.enqueue(k(s.bind(void 0,t,i,a))),(async()=>{await Promise.resolve(),n<1&&e.size>0&&e.dequeue()()})()})(t,a,i)}));return Object.defineProperties(i,{activeCount:{get:()=>n},pendingCount:{get:()=>e.size},clearQueue:{value(){e.clear()}}}),i}(),Ue=new FileReader,De=async function(t,e,n,s=(()=>{}),i=void 0,a=void 0){let r;return r=e instanceof Blob?e:await e(),i&&(a??={},a.Destination=i),await y.Z.request({method:"PUT",url:t,data:r,signal:n,onUploadProgress:s,headers:a})},$e=function(t,e,n){return Oe((()=>new Promise(((s,i)=>{Ue.onload=()=>{null!==Ue.result&&s(new Blob([Ue.result],{type:"application/octet-stream"})),i(new Error("Error while reading the file"))},Ue.readAsArrayBuffer(t.slice(e,e+n))}))))},ze=function(t=void 0){const e=window.OC?.appConfig?.files?.max_chunk_size;if(e<=0)return 0;if(!Number(e))return 10485760;const n=Math.max(Number(e),5242880);return void 0===t?n:Math.max(n,Math.ceil(t/1e4))};var Re=(t=>(t[t.INITIALIZED=0]="INITIALIZED",t[t.UPLOADING=1]="UPLOADING",t[t.ASSEMBLING=2]="ASSEMBLING",t[t.FINISHED=3]="FINISHED",t[t.CANCELLED=4]="CANCELLED",t[t.FAILED=5]="FAILED",t))(Re||{});let Me=class{_source;_file;_isChunked;_chunks;_size;_uploaded=0;_startTime=0;_status=0;_controller;_response=null;constructor(t,e=!1,n,s){const i=Math.min(ze()>0?Math.ceil(n/ze()):1,1e4);this._source=t,this._isChunked=e&&ze()>0&&i>1,this._chunks=this._isChunked?i:1,this._size=n,this._file=s,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(t){this._response=t}get response(){return this._response}get uploaded(){return this._uploaded}set uploaded(t){if(t>=this._size)return this._status=this._isChunked?2:3,void(this._uploaded=this._size);this._status=1,this._uploaded=t,0===this._startTime&&(this._startTime=(new Date).getTime())}get status(){return this._status}set status(t){this._status=t}get signal(){return this._controller.signal}cancel(){this._controller.abort(),this._status=4}};const Ve=(t=>null===t?(0,S.IY)().setApp("uploader").build():(0,S.IY)().setApp("uploader").setUid(t.uid).build())((0,A.ts)());var He=(t=>(t[t.IDLE=0]="IDLE",t[t.UPLOADING=1]="UPLOADING",t[t.PAUSED=2]="PAUSED",t))(He||{});class qe{_destinationFolder;_isPublic;_uploadQueue=[];_jobQueue=new _.Z({concurrency:3});_queueSize=0;_queueProgress=0;_queueStatus=0;_notifiers=[];constructor(t=!1,e){if(this._isPublic=t,!e){const t=(0,A.ts)()?.uid,n=(0,v.generateRemoteUrl)(`dav/files/${t}`);if(!t)throw new Error("User is not logged in");e=new w.gt({id:0,owner:t,permissions:w.y3.ALL,root:`/files/${t}`,source:n})}this.destination=e,Ve.debug("Upload workspace initialized",{destination:this.destination,root:this.root,isPublic:t,maxChunksSize:ze()})}get destination(){return this._destinationFolder}set destination(t){if(!t)throw new Error("Invalid destination folder");this._destinationFolder=t}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 t=this._uploadQueue.map((t=>t.size)).reduce(((t,e)=>t+e),0),e=this._uploadQueue.map((t=>t.uploaded)).reduce(((t,e)=>t+e),0);this._queueSize=t,this._queueProgress=e,2!==this._queueStatus&&(this._queueStatus=this._jobQueue.size>0?1:0)}addNotifier(t){this._notifiers.push(t)}upload(t,e){const n=`${this.root}/${t.replace(/^\//,"")}`;Ve.debug(`Uploading ${e.name} to ${n}`);const s=ze(e.size),i=0===s||e.size{if(o(a.cancel),i){Ve.debug("Initializing regular upload",{file:e,upload:a});const s=await $e(e,0,a.size),i=async()=>{try{a.response=await De(n,s,a.signal,(()=>this.updateStats()),void 0,{"X-OC-Mtime":e.lastModified/1e3}),a.uploaded=a.size,this.updateStats(),Ve.debug(`Successfully uploaded ${e.name}`,{file:e,upload:a}),t(a)}catch(t){if(t instanceof Ce)return a.status=Re.FAILED,void r("Upload has been cancelled");t?.response&&(a.response=t.response),a.status=Re.FAILED,Ve.error(`Failed uploading ${e.name}`,{error:t,file:e,upload:a}),r("Failed uploading the file")}this._notifiers.forEach((t=>{try{t(a)}catch{}}))};this._jobQueue.add(i),this.updateStats()}else{Ve.debug("Initializing chunked upload",{file:e,upload:a});const i=await async function(t){const e=`${(0,v.generateRemoteUrl)(`dav/uploads/${(0,A.ts)()?.uid}`)}/web-file-upload-${[...Array(16)].map((()=>Math.floor(16*Math.random()).toString(16))).join("")}`,n=t?{Destination:t}:void 0;return await y.Z.request({method:"MKCOL",url:e,headers:n}),e}(n),o=[];for(let t=0;t$e(e,r,s),d=()=>De(`${i}/${t+1}`,c,a.signal,(()=>this.updateStats()),n,{"X-OC-Mtime":e.lastModified/1e3,"OC-Total-Length":e.size}).then((()=>{a.uploaded=a.uploaded+s})).catch((e=>{throw e instanceof Ce||(Ve.error(`Chunk ${t+1} ${r} - ${l} uploading failed`),a.status=Re.FAILED),e}));o.push(this._jobQueue.add(d))}try{await Promise.all(o),this.updateStats(),a.response=await y.Z.request({method:"MOVE",url:`${i}/.file`,headers:{Destination:n}}),this.updateStats(),a.status=Re.FINISHED,Ve.debug(`Successfully uploaded ${e.name}`,{file:e,upload:a}),t(a)}catch(t){t instanceof Ce?(a.status=Re.FAILED,r("Upload has been cancelled")):(a.status=Re.FAILED,r("Failed assembling the chunks together")),y.Z.request({method:"DELETE",url:`${i}`})}this._notifiers.forEach((t=>{try{t(a)}catch{}}))}return this._jobQueue.onIdle().then((()=>this.reset())),a}))}}var Ze=Object.freeze({}),Ge=Array.isArray;function We(t){return null==t}function Ye(t){return null!=t}function Ke(t){return!0===t}function Je(t){return"string"==typeof t||"number"==typeof t||"symbol"==typeof t||"boolean"==typeof t}function Qe(t){return"function"==typeof t}function Xe(t){return null!==t&&"object"==typeof t}var tn=Object.prototype.toString;function en(t){return"[object Object]"===tn.call(t)}function nn(t){var e=parseFloat(String(t));return e>=0&&Math.floor(e)===e&&isFinite(t)}function sn(t){return Ye(t)&&"function"==typeof t.then&&"function"==typeof t.catch}function an(t){return null==t?"":Array.isArray(t)||en(t)&&t.toString===tn?JSON.stringify(t,null,2):String(t)}function rn(t){var e=parseFloat(t);return isNaN(e)?t:e}function on(t,e){for(var n=Object.create(null),s=t.split(","),i=0;i-1)return t.splice(s,1)}}var dn=Object.prototype.hasOwnProperty;function un(t,e){return dn.call(t,e)}function mn(t){var e=Object.create(null);return function(n){return e[n]||(e[n]=t(n))}}var fn=/-(\w)/g,pn=mn((function(t){return t.replace(fn,(function(t,e){return e?e.toUpperCase():""}))})),gn=mn((function(t){return t.charAt(0).toUpperCase()+t.slice(1)})),hn=/\B([A-Z])/g,vn=mn((function(t){return t.replace(hn,"-$1").toLowerCase()})),An=Function.prototype.bind?function(t,e){return t.bind(e)}:function(t,e){function n(n){var s=arguments.length;return s?s>1?t.apply(e,arguments):t.call(e,n):t.call(e)}return n._length=t.length,n};function wn(t,e){e=e||0;for(var n=t.length-e,s=new Array(n);n--;)s[n]=t[n+e];return s}function yn(t,e){for(var n in e)t[n]=e[n];return t}function bn(t){for(var e={},n=0;n0,zn=Un&&Un.indexOf("edge/")>0;Un&&Un.indexOf("android");var Rn=Un&&/iphone|ipad|ipod|ios/.test(Un),Mn=Un&&Un.match(/firefox\/(\d+)/),Vn={}.watch,Hn=!1;if(On)try{var qn={};Object.defineProperty(qn,"passive",{get:function(){Hn=!0}}),window.addEventListener("test-passive",null,qn)}catch{}var Zn,Gn=function(){return void 0===Zn&&(Zn=!On&&typeof global<"u"&&global.process&&"server"===global.process.env.VUE_ENV),Zn},Wn=On&&window.__VUE_DEVTOOLS_GLOBAL_HOOK__;function Yn(t){return"function"==typeof t&&/native code/.test(t.toString())}var Kn,Jn=typeof Symbol<"u"&&Yn(Symbol)&&typeof Reflect<"u"&&Yn(Reflect.ownKeys);Kn=typeof Set<"u"&&Yn(Set)?Set:function(){function t(){this.set=Object.create(null)}return t.prototype.has=function(t){return!0===this.set[t]},t.prototype.add=function(t){this.set[t]=!0},t.prototype.clear=function(){this.set=Object.create(null)},t}();var Qn=null;function Xn(t){void 0===t&&(t=null),t||Qn&&Qn._scope.off(),Qn=t,t&&t._scope.on()}var ts=function(){function t(t,e,n,s,i,a,r,o){this.tag=t,this.data=e,this.children=n,this.text=s,this.elm=i,this.ns=void 0,this.context=a,this.fnContext=void 0,this.fnOptions=void 0,this.fnScopeId=void 0,this.key=e&&e.key,this.componentOptions=r,this.componentInstance=void 0,this.parent=void 0,this.raw=!1,this.isStatic=!1,this.isRootInsert=!0,this.isComment=!1,this.isCloned=!1,this.isOnce=!1,this.asyncFactory=o,this.asyncMeta=void 0,this.isAsyncPlaceholder=!1}return Object.defineProperty(t.prototype,"child",{get:function(){return this.componentInstance},enumerable:!1,configurable:!0}),t}(),es=function(t){void 0===t&&(t="");var e=new ts;return e.text=t,e.isComment=!0,e};function ns(t){return new ts(void 0,void 0,void 0,String(t))}function ss(t){var e=new ts(t.tag,t.data,t.children&&t.children.slice(),t.text,t.elm,t.context,t.componentOptions,t.asyncFactory);return e.ns=t.ns,e.isStatic=t.isStatic,e.key=t.key,e.isComment=t.isComment,e.fnContext=t.fnContext,e.fnOptions=t.fnOptions,e.fnScopeId=t.fnScopeId,e.asyncMeta=t.asyncMeta,e.isCloned=!0,e}var is=0,as=[],rs=function(){function t(){this._pending=!1,this.id=is++,this.subs=[]}return t.prototype.addSub=function(t){this.subs.push(t)},t.prototype.removeSub=function(t){this.subs[this.subs.indexOf(t)]=null,this._pending||(this._pending=!0,as.push(this))},t.prototype.depend=function(e){t.target&&t.target.addDep(this)},t.prototype.notify=function(t){for(var e=this.subs.filter((function(t){return t})),n=0,s=e.length;n0&&(Is((s=Os(s,"".concat(e||"","_").concat(n)))[0])&&Is(a)&&(r[i]=ns(a.text+s[0].text),s.shift()),r.push.apply(r,s)):Je(s)?Is(a)?r[i]=ns(a.text+s):""!==s&&r.push(ns(s)):Is(s)&&Is(a)?r[i]=ns(a.text+s.text):(Ke(t._isVList)&&Ye(s.tag)&&We(s.key)&&Ye(e)&&(s.key="__vlist".concat(e,"_").concat(n,"__")),r.push(s)));return r}function Us(t,e){var n,s,i,a,r=null;if(Ge(t)||"string"==typeof t)for(r=new Array(t.length),n=0,s=t.length;n0,r=e?!!e.$stable:!a,o=e&&e.$key;if(e){if(e._normalized)return e._normalized;if(r&&s&&s!==Ze&&o===s.$key&&!a&&!s.$hasNormal)return s;for(var l in i={},e)e[l]&&"$"!==l[0]&&(i[l]=ni(t,n,l,e[l]))}else i={};for(var c in n)c in i||(i[c]=si(n,c));return e&&Object.isExtensible(e)&&(e._normalized=i),Pn(i,"$stable",r),Pn(i,"$key",o),Pn(i,"$hasNormal",a),i}function ni(t,e,n,s){var i=function(){var e=Qn;Xn(t);var n=arguments.length?s.apply(null,arguments):s({}),i=(n=n&&"object"==typeof n&&!Ge(n)?[n]:js(n))&&n[0];return Xn(e),n&&(!i||1===n.length&&i.isComment&&!ti(i))?void 0:n};return s.proxy&&Object.defineProperty(e,n,{get:i,enumerable:!0,configurable:!0}),i}function si(t,e){return function(){return t[e]}}function ii(t,e,n,s,i){var a=!1;for(var r in e)r in t?e[r]!==n[r]&&(a=!0):(a=!0,ai(t,r,s,i));for(var r in t)r in e||(a=!0,delete t[r]);return a}function ai(t,e,n,s){Object.defineProperty(t,e,{enumerable:!0,configurable:!0,get:function(){return n[s][e]}})}function ri(t,e){for(var n in e)t[n]=e[n];for(var n in t)n in e||delete t[n]}var oi=null;function li(t,e){return(t.__esModule||Jn&&"Module"===t[Symbol.toStringTag])&&(t=t.default),Xe(t)?e.extend(t):t}function ci(t){if(Ge(t))for(var e=0;eYi&&Hi[n].id>t.id;)n--;Hi.splice(n+1,0,t)}else Hi.push(t);Gi||(Gi=!0,Si(ta))}}(this)},t.prototype.run=function(){if(this.active){var t=this.get();if(t!==this.value||Xe(t)||this.deep){var e=this.value;if(this.value=t,this.user){var n='callback for watcher "'.concat(this.expression,'"');gi(this.cb,this.vm,[t,e],this.vm,n)}else this.cb.call(this.vm,t,e)}}},t.prototype.evaluate=function(){this.value=this.get(),this.dirty=!1},t.prototype.depend=function(){for(var t=this.deps.length;t--;)this.deps[t].depend()},t.prototype.teardown=function(){if(this.vm&&!this.vm._isBeingDestroyed&&cn(this.vm._scope.effects,this),this.active){for(var t=this.deps.length;t--;)this.deps[t].removeSub(this);this.active=!1,this.onStop&&this.onStop()}},t}();function ji(t,e){Fi.$on(t,e)}function Ii(t,e){Fi.$off(t,e)}function Oi(t,e){var n=Fi;return function s(){null!==e.apply(null,arguments)&&n.$off(t,s)}}function Ui(t,e,n){Fi=t,Fs(e,n||{},ji,Ii,Oi,t),Fi=void 0}var Di=null;function $i(t){var e=Di;return Di=t,function(){Di=e}}function zi(t){for(;t&&(t=t.$parent);)if(t._inactive)return!0;return!1}function Ri(t,e){if(e){if(t._directInactive=!1,zi(t))return}else if(t._directInactive)return;if(t._inactive||null===t._inactive){t._inactive=!1;for(var n=0;ndocument.createEvent("Event").timeStamp&&(Ji=function(){return Qi.now()})}var Xi=function(t,e){if(t.post){if(!e.post)return 1}else if(e.post)return-1;return t.id-e.id};function ta(){var t,e;for(Ki=Ji(),Wi=!0,Hi.sort(Xi),Yi=0;Yi-1)if(a&&!un(i,"default"))r=!1;else if(""===r||r===vn(t)){var l=xa(String,i.type);(l<0||o-1:"string"==typeof t?t.split(",").indexOf(e)>-1:!!function(t){return"[object RegExp]"===tn.call(t)}(t)&&t.test(e)}function Ua(t,e){var n=t.cache,s=t.keys,i=t._vnode;for(var a in n){var r=n[a];if(r){var o=r.name;o&&!e(o)&&Da(n,a,s,i)}}}function Da(t,e,n,s){var i=t[e];i&&(!s||i.tag!==s.tag)&&i.componentInstance.$destroy(),t[e]=null,cn(n,e)}!function(t){t.prototype._init=function(t){var e=this;e._uid=Ba++,e._isVue=!0,e.__v_skip=!0,e._scope=new Ls(!0),e._scope._vm=!0,t&&t._isComponent?function(t,e){var n=t.$options=Object.create(t.constructor.options),s=e._parentVnode;n.parent=e.parent,n._parentVnode=s;var i=s.componentOptions;n.propsData=i.propsData,n._parentListeners=i.listeners,n._renderChildren=i.children,n._componentTag=i.tag,e.render&&(n.render=e.render,n.staticRenderFns=e.staticRenderFns)}(e,t):e.$options=va(Pa(e.constructor),t||{},e),e._renderProxy=e,e._self=e,function(t){var e=t.$options,n=e.parent;if(n&&!e.abstract){for(;n.$options.abstract&&n.$parent;)n=n.$parent;n.$children.push(t)}t.$parent=n,t.$root=n?n.$root:t,t.$children=[],t.$refs={},t._provided=n?n._provided:Object.create(null),t._watcher=null,t._inactive=null,t._directInactive=!1,t._isMounted=!1,t._isDestroyed=!1,t._isBeingDestroyed=!1}(e),function(t){t._events=Object.create(null),t._hasHookEvent=!1;var e=t.$options._parentListeners;e&&Ui(t,e)}(e),function(t){t._vnode=null,t._staticTrees=null;var e=t.$options,n=t.$vnode=e._parentVnode,s=n&&n.context;t.$slots=Qs(e._renderChildren,s),t.$scopedSlots=n?ei(t.$parent,n.data.scopedSlots,t.$slots):Ze,t._c=function(e,n,s,i){return mi(t,e,n,s,i,!1)},t.$createElement=function(e,n,s,i){return mi(t,e,n,s,i,!0)};var i=n&&n.data;ws(t,"$attrs",i&&i.attrs||Ze,null,!0),ws(t,"$listeners",e._parentListeners||Ze,null,!0)}(e),Vi(e,"beforeCreate",void 0,!1),function(t){var e=ea(t.$options.inject,t);e&&(gs(!1),Object.keys(e).forEach((function(n){ws(t,n,e[n])})),gs(!0))}(e),ka(e),function(t){var e=t.$options.provide;if(e){var n=Qe(e)?e.call(t):e;if(!Xe(n))return;for(var s=function(t){var e=t._provided,n=t.$parent&&t.$parent._provided;return n===e?t._provided=Object.create(n):e}(t),i=Jn?Reflect.ownKeys(n):Object.keys(n),a=0;a1?wn(n):n;for(var s=wn(arguments,1),i='event handler for "'.concat(t,'"'),a=0,r=n.length;aparseInt(this.max)&&Da(e,n[0],n,this._vnode),this.vnodeToCache=null}}},created:function(){this.cache=Object.create(null),this.keys=[]},destroyed:function(){for(var t in this.cache)Da(this.cache,t,this.keys)},mounted:function(){var t=this;this.cacheVNode(),this.$watch("include",(function(e){Ua(t,(function(t){return Oa(e,t)}))})),this.$watch("exclude",(function(e){Ua(t,(function(t){return!Oa(e,t)}))}))},updated:function(){this.cacheVNode()},render:function(){var t=this.$slots.default,e=ci(t),n=e&&e.componentOptions;if(n){var s=Ia(n),i=this.include,a=this.exclude;if(i&&(!s||!Oa(i,s))||a&&s&&Oa(a,s))return e;var r=this.cache,o=this.keys,l=null==e.key?n.Ctor.cid+(n.tag?"::".concat(n.tag):""):e.key;r[l]?(e.componentInstance=r[l].componentInstance,cn(o,l),o.push(l)):(this.vnodeToCache=e,this.keyToCache=l),e.data.keepAlive=!0}return e||t&&t[0]}},Ra={KeepAlive:za};!function(t){var e={get:function(){return Fn}};Object.defineProperty(t,"config",e),t.util={warn:da,extend:yn,mergeOptions:va,defineReactive:ws},t.set=ys,t.delete=bs,t.nextTick=Si,t.observable=function(t){return As(t),t},t.options=Object.create(null),En.forEach((function(e){t.options[e+"s"]=Object.create(null)})),t.options._base=t,yn(t.options.components,Ra),function(t){t.use=function(t){var e=this._installedPlugins||(this._installedPlugins=[]);if(e.indexOf(t)>-1)return this;var n=wn(arguments,1);return n.unshift(this),Qe(t.install)?t.install.apply(t,n):Qe(t)&&t.apply(null,n),e.push(t),this}}(t),function(t){t.mixin=function(t){return this.options=va(this.options,t),this}}(t),function(t){t.cid=0;var e=1;t.extend=function(t){t=t||{};var n=this,s=n.cid,i=t._Ctor||(t._Ctor={});if(i[s])return i[s];var a=aa(t)||aa(n.options),r=function(t){this._init(t)};return(r.prototype=Object.create(n.prototype)).constructor=r,r.cid=e++,r.options=va(n.options,t),r.super=n,r.options.props&&function(t){var e=t.options.props;for(var n in e)Ta(t.prototype,"_props",n)}(r),r.options.computed&&function(t){var e=t.options.computed;for(var n in e)La(t.prototype,n,e[n])}(r),r.extend=n.extend,r.mixin=n.mixin,r.use=n.use,En.forEach((function(t){r[t]=n[t]})),a&&(r.options.components[a]=r),r.superOptions=n.options,r.extendOptions=t,r.sealedOptions=yn({},r.options),i[s]=r,r}}(t),function(t){En.forEach((function(e){t[e]=function(t,n){return n?("component"===e&&en(n)&&(n.name=n.name||t,n=this.options._base.extend(n)),"directive"===e&&Qe(n)&&(n={bind:n,update:n}),this.options[e+"s"][t]=n,n):this.options[e+"s"][t]}}))}(t)}(ja),Object.defineProperty(ja.prototype,"$isServer",{get:Gn}),Object.defineProperty(ja.prototype,"$ssrContext",{get:function(){return this.$vnode&&this.$vnode.ssrContext}}),Object.defineProperty(ja,"FunctionalRenderContext",{value:na}),ja.version="2.7.15";var Ma=on("style,class"),Va=on("input,textarea,option,select,progress"),Ha=on("contenteditable,draggable,spellcheck"),qa=on("events,caret,typing,plaintext-only"),Za=function(t,e){return Ja(e)||"false"===e?"false":"contenteditable"===t&&qa(e)?e:"true"},Ga=on("allowfullscreen,async,autofocus,autoplay,checked,compact,controls,declare,default,defaultchecked,defaultmuted,defaultselected,defer,disabled,enabled,formnovalidate,hidden,indeterminate,inert,ismap,itemscope,loop,multiple,muted,nohref,noresize,noshade,novalidate,nowrap,open,pauseonexit,readonly,required,reversed,scoped,seamless,selected,sortable,truespeed,typemustmatch,visible"),Wa="http://www.w3.org/1999/xlink",Ya=function(t){return":"===t.charAt(5)&&"xlink"===t.slice(0,5)},Ka=function(t){return Ya(t)?t.slice(6,t.length):""},Ja=function(t){return null==t||!1===t};function Qa(t,e){return{staticClass:Xa(t.staticClass,e.staticClass),class:Ye(t.class)?[t.class,e.class]:e.class}}function Xa(t,e){return t?e?t+" "+e:t:e||""}function tr(t){return Array.isArray(t)?function(t){for(var e,n="",s=0,i=t.length;s-1?_r(t,e,n):Ga(e)?Ja(n)?t.removeAttribute(e):(n="allowfullscreen"===e&&"EMBED"===t.tagName?"true":e,t.setAttribute(e,n)):Ha(e)?t.setAttribute(e,Za(e,n)):Ya(e)?Ja(n)?t.removeAttributeNS(Wa,Ka(e)):t.setAttributeNS(Wa,e,n):_r(t,e,n)}function _r(t,e,n){if(Ja(n))t.removeAttribute(e);else{if(Dn&&!$n&&"TEXTAREA"===t.tagName&&"placeholder"===e&&""!==n&&!t.__ieph){var s=function(e){e.stopImmediatePropagation(),t.removeEventListener("input",s)};t.addEventListener("input",s),t.__ieph=!0}t.setAttribute(e,n)}}var Tr={create:Cr,update:Cr};function kr(t,e){var n=e.elm,s=e.data,i=t.data;if(!(We(s.staticClass)&&We(s.class)&&(We(i)||We(i.staticClass)&&We(i.class)))){var a=function(t){for(var e=t.data,n=t,s=t;Ye(s.componentInstance);)(s=s.componentInstance._vnode)&&s.data&&(e=Qa(s.data,e));for(;Ye(n=n.parent);)n&&n.data&&(e=Qa(e,n.data));return function(t,e){return Ye(t)||Ye(e)?Xa(t,tr(e)):""}(e.staticClass,e.class)}(e),r=n._transitionClasses;Ye(r)&&(a=Xa(a,tr(r))),a!==n._prevClass&&(n.setAttribute("class",a),n._prevClass=a)}}var Sr,Lr={create:kr,update:kr},Er="__r",Nr="__c";function Fr(t,e,n){var s=Sr;return function i(){null!==e.apply(null,arguments)&&jr(t,i,n,s)}}var Br=wi&&!(Mn&&Number(Mn[1])<=53);function Pr(t,e,n,s){if(Br){var i=Ki,a=e;e=a._wrapper=function(t){if(t.target===t.currentTarget||t.timeStamp>=i||t.timeStamp<=0||t.target.ownerDocument!==document)return a.apply(this,arguments)}}Sr.addEventListener(t,e,Hn?{capture:n,passive:s}:n)}function jr(t,e,n,s){(s||Sr).removeEventListener(t,e._wrapper||e,n)}function Ir(t,e){if(!We(t.data.on)||!We(e.data.on)){var n=e.data.on||{},s=t.data.on||{};Sr=e.elm||t.elm,function(t){if(Ye(t[Er])){var e=Dn?"change":"input";t[e]=[].concat(t[Er],t[e]||[]),delete t[Er]}Ye(t[Nr])&&(t.change=[].concat(t[Nr],t.change||[]),delete t[Nr])}(n),Fs(n,s,Pr,jr,Fr,e.context),Sr=void 0}}var Or,Ur={create:Ir,update:Ir,destroy:function(t){return Ir(t,ur)}};function Dr(t,e){if(!We(t.data.domProps)||!We(e.data.domProps)){var n,s,i=e.elm,a=t.data.domProps||{},r=e.data.domProps||{};for(n in(Ye(r.__ob__)||Ke(r._v_attr_proxy))&&(r=e.data.domProps=yn({},r)),a)n in r||(i[n]="");for(n in r){if(s=r[n],"textContent"===n||"innerHTML"===n){if(e.children&&(e.children.length=0),s===a[n])continue;1===i.childNodes.length&&i.removeChild(i.childNodes[0])}if("value"===n&&"PROGRESS"!==i.tagName){i._value=s;var o=We(s)?"":String(s);$r(i,o)&&(i.value=o)}else if("innerHTML"===n&&sr(i.tagName)&&We(i.innerHTML)){(Or=Or||document.createElement("div")).innerHTML="".concat(s,"");for(var l=Or.firstChild;i.firstChild;)i.removeChild(i.firstChild);for(;l.firstChild;)i.appendChild(l.firstChild)}else if(s!==a[n])try{i[n]=s}catch{}}}}function $r(t,e){return!t.composing&&("OPTION"===t.tagName||function(t,e){var n=!0;try{n=document.activeElement!==t}catch{}return n&&t.value!==e}(t,e)||function(t,e){var n=t.value,s=t._vModifiers;if(Ye(s)){if(s.number)return rn(n)!==rn(e);if(s.trim)return n.trim()!==e.trim()}return n!==e}(t,e))}var zr={create:Dr,update:Dr},Rr=mn((function(t){var e={},n=/:(.+)/;return t.split(/;(?![^(]*\))/g).forEach((function(t){if(t){var s=t.split(n);s.length>1&&(e[s[0].trim()]=s[1].trim())}})),e}));function Mr(t){var e=Vr(t.style);return t.staticStyle?yn(t.staticStyle,e):e}function Vr(t){return Array.isArray(t)?bn(t):"string"==typeof t?Rr(t):t}var Hr,qr=/^--/,Zr=/\s*!important$/,Gr=function(t,e,n){if(qr.test(e))t.style.setProperty(e,n);else if(Zr.test(n))t.style.setProperty(vn(e),n.replace(Zr,""),"important");else{var s=Yr(e);if(Array.isArray(n))for(var i=0,a=n.length;i-1?e.split(Qr).forEach((function(e){return t.classList.add(e)})):t.classList.add(e);else{var n=" ".concat(t.getAttribute("class")||""," ");n.indexOf(" "+e+" ")<0&&t.setAttribute("class",(n+e).trim())}}function to(t,e){if(e&&(e=e.trim()))if(t.classList)e.indexOf(" ")>-1?e.split(Qr).forEach((function(e){return t.classList.remove(e)})):t.classList.remove(e),t.classList.length||t.removeAttribute("class");else{for(var n=" ".concat(t.getAttribute("class")||""," "),s=" "+e+" ";n.indexOf(s)>=0;)n=n.replace(s," ");(n=n.trim())?t.setAttribute("class",n):t.removeAttribute("class")}}function eo(t){if(t){if("object"==typeof t){var e={};return!1!==t.css&&yn(e,no(t.name||"v")),yn(e,t),e}if("string"==typeof t)return no(t)}}var no=mn((function(t){return{enterClass:"".concat(t,"-enter"),enterToClass:"".concat(t,"-enter-to"),enterActiveClass:"".concat(t,"-enter-active"),leaveClass:"".concat(t,"-leave"),leaveToClass:"".concat(t,"-leave-to"),leaveActiveClass:"".concat(t,"-leave-active")}})),so=On&&!$n,io="transition",ao="animation",ro="transition",oo="transitionend",lo="animation",co="animationend";so&&(void 0===window.ontransitionend&&void 0!==window.onwebkittransitionend&&(ro="WebkitTransition",oo="webkitTransitionEnd"),void 0===window.onanimationend&&void 0!==window.onwebkitanimationend&&(lo="WebkitAnimation",co="webkitAnimationEnd"));var uo=On?window.requestAnimationFrame?window.requestAnimationFrame.bind(window):setTimeout:function(t){return t()};function mo(t){uo((function(){uo(t)}))}function fo(t,e){var n=t._transitionClasses||(t._transitionClasses=[]);n.indexOf(e)<0&&(n.push(e),Xr(t,e))}function po(t,e){t._transitionClasses&&cn(t._transitionClasses,e),to(t,e)}function go(t,e,n){var s=vo(t,e),i=s.type,a=s.timeout,r=s.propCount;if(!i)return n();var o=i===io?oo:co,l=0,c=function(){t.removeEventListener(o,d),n()},d=function(e){e.target===t&&++l>=r&&c()};setTimeout((function(){l0&&(n=io,d=r,u=a.length):e===ao?c>0&&(n=ao,d=c,u=l.length):u=(n=(d=Math.max(r,c))>0?r>c?io:ao:null)?n===io?a.length:l.length:0,{type:n,timeout:d,propCount:u,hasTransform:n===io&&ho.test(s[ro+"Property"])}}function Ao(t,e){for(;t.length1}function _o(t,e){!0!==e.data.show&&yo(e)}var To=On?{create:_o,activate:_o,remove:function(t,e){!0!==t.data.show?bo(t,e):e()}}:{},ko=function(t){var e,n,s={},i=t.modules,a=t.nodeOps;for(e=0;em?p(t,We(n[v+1])?null:n[v+1].elm,n,u,v,s):u>v&&h(e,d,m)}(c,f,g,n,l):Ye(g)?(Ye(t.text)&&a.setTextContent(c,""),p(c,null,g,0,g.length-1,n)):Ye(f)?h(f,0,f.length-1):Ye(t.text)&&a.setTextContent(c,""):t.text!==e.text&&a.setTextContent(c,e.text),Ye(m)&&Ye(d=m.hook)&&Ye(d=d.postpatch)&&d(t,e)}}function y(t,e,n){if(Ke(n)&&Ye(t.parent))t.parent.data.pendingInsert=e;else for(var s=0;s-1,r.selected!==a&&(r.selected=a);else if(Tn(Fo(r),s))return void(t.selectedIndex!==o&&(t.selectedIndex=o));i||(t.selectedIndex=-1)}}function No(t,e){return e.every((function(e){return!Tn(e,t)}))}function Fo(t){return"_value"in t?t._value:t.value}function Bo(t){t.target.composing=!0}function Po(t){t.target.composing&&(t.target.composing=!1,jo(t.target,"input"))}function jo(t,e){var n=document.createEvent("HTMLEvents");n.initEvent(e,!0,!0),t.dispatchEvent(n)}function Io(t){return!t.componentInstance||t.data&&t.data.transition?t:Io(t.componentInstance._vnode)}var Oo={bind:function(t,e,n){var s=e.value,i=(n=Io(n)).data&&n.data.transition,a=t.__vOriginalDisplay="none"===t.style.display?"":t.style.display;s&&i?(n.data.show=!0,yo(n,(function(){t.style.display=a}))):t.style.display=s?a:"none"},update:function(t,e,n){var s=e.value;!s!=!e.oldValue&&((n=Io(n)).data&&n.data.transition?(n.data.show=!0,s?yo(n,(function(){t.style.display=t.__vOriginalDisplay})):bo(n,(function(){t.style.display="none"}))):t.style.display=s?t.__vOriginalDisplay:"none")},unbind:function(t,e,n,s,i){i||(t.style.display=t.__vOriginalDisplay)}},Uo={model:So,show:Oo},Do={name:String,appear:Boolean,css:Boolean,mode:String,type:String,enterClass:String,leaveClass:String,enterToClass:String,leaveToClass:String,enterActiveClass:String,leaveActiveClass:String,appearClass:String,appearActiveClass:String,appearToClass:String,duration:[Number,String,Object]};function $o(t){var e=t&&t.componentOptions;return e&&e.Ctor.options.abstract?$o(ci(e.children)):t}function zo(t){var e={},n=t.$options;for(var s in n.propsData)e[s]=t[s];var i=n._parentListeners;for(var s in i)e[pn(s)]=i[s];return e}function Ro(t,e){if(/\d-keep-alive$/.test(e.tag))return t("keep-alive",{props:e.componentOptions.propsData})}var Mo=function(t){return t.tag||ti(t)},Vo=function(t){return"show"===t.name},Ho={name:"transition",props:Do,abstract:!0,render:function(t){var e=this,n=this.$slots.default;if(n&&(n=n.filter(Mo)).length){var s=this.mode,i=n[0];if(function(t){for(;t=t.parent;)if(t.data.transition)return!0}(this.$vnode))return i;var a=$o(i);if(!a)return i;if(this._leaving)return Ro(t,i);var r="__transition-".concat(this._uid,"-");a.key=null==a.key?a.isComment?r+"comment":r+a.tag:Je(a.key)?0===String(a.key).indexOf(r)?a.key:r+a.key:a.key;var o=(a.data||(a.data={})).transition=zo(this),l=this._vnode,c=$o(l);if(a.data.directives&&a.data.directives.some(Vo)&&(a.data.show=!0),c&&c.data&&!function(t,e){return e.key===t.key&&e.tag===t.tag}(a,c)&&!ti(c)&&(!c.componentInstance||!c.componentInstance._vnode.isComment)){var d=c.data.transition=yn({},o);if("out-in"===s)return this._leaving=!0,Bs(d,"afterLeave",(function(){e._leaving=!1,e.$forceUpdate()})),Ro(t,i);if("in-out"===s){if(ti(a))return l;var u,m=function(){u()};Bs(o,"afterEnter",m),Bs(o,"enterCancelled",m),Bs(d,"delayLeave",(function(t){u=t}))}}return i}}},qo=yn({tag:String,moveClass:String},Do);delete qo.mode;var Zo={props:qo,beforeMount:function(){var t=this,e=this._update;this._update=function(n,s){var i=$i(t);t.__patch__(t._vnode,t.kept,!1,!0),t._vnode=t.kept,i(),e.call(t,n,s)}},render:function(t){for(var e=this.tag||this.$vnode.data.tag||"span",n=Object.create(null),s=this.prevChildren=this.children,i=this.$slots.default||[],a=this.children=[],r=zo(this),o=0;o-1?ar[t]=e.constructor===window.HTMLUnknownElement||e.constructor===window.HTMLElement:ar[t]=/HTMLUnknownElement/.test(e.toString())},yn(ja.options.directives,Uo),yn(ja.options.components,Ko),ja.prototype.__patch__=On?ko:Cn,ja.prototype.$mount=function(t,e){return function(t,e,n){var s;t.$el=e,t.$options.render||(t.$options.render=es),Vi(t,"beforeMount"),s=function(){t._update(t._render(),n)},new Pi(t,s,Cn,{before:function(){t._isMounted&&!t._isDestroyed&&Vi(t,"beforeUpdate")}},!0),n=!1;var i=t._preWatchers;if(i)for(var a=0;a, 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 , 2023","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:\nJohn Molakvoæ , 2023\nAli , 2023\n"},msgstr:["Last-Translator: Ali , 2023\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"]},"{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 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} ملف","تخطَّ {count} ملف","تخطَّ {count} ملف","تخطَّ {count} ملف","تخطَّ {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:"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":"Transifex Bot <>, 2022","Language-Team":"Asturian (https://www.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:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Asturian (https://www.transifex.com/nextcloud/teams/64236/ast/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ast\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:"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":"Pavel Borecki , 2023","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:\nJohn Molakvoæ , 2023\nPavel Borecki , 2023\n"},msgstr:["Last-Translator: Pavel Borecki , 2023\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 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"]},"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":"Simon T, 2023","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:\nJohn Molakvoæ , 2023\nSimon T, 2023\n"},msgstr:["Last-Translator: Simon T, 2023\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"]},Add:{msgid:"Add",msgstr:["Tilføj"]},"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 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"]},"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 , 2023","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:\nJohn Molakvoæ , 2023\nMarkus Eckstein, 2023\nMario Siegmann , 2023\n"},msgstr:["Last-Translator: Mario Siegmann , 2023\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 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 ist 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"]},"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 , 2023","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:\nJohn Molakvoæ , 2023\nMark Ziegler , 2023\nMario Siegmann , 2023\n"},msgstr:["Last-Translator: Mario Siegmann , 2023\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"]},"{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 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 Sie beide Versionen auswählen, 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:["{count} 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"]},"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 , 2023","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:\nJohn Molakvoæ , 2023\nAndi Chandler , 2023\n"},msgstr:["Last-Translator: Andi Chandler , 2023\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"]},Add:{msgid:"Add",msgstr:["Add"]},"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 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:["If you select both versions, the copied file will have a number added to its name."]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Last modified date unknown"]},"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"]},"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":"Next Cloud , 2023","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:\nJohn Molakvoæ , 2023\nFranciscoFJ , 2023\nNext Cloud , 2023\n"},msgstr:["Last-Translator: Next Cloud , 2023\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"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} archivo en conflicto","{count} archivos en conflicto","{count} archivos en conflicto"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} archivo en conflicto en {dirname}","{count} archivos en conflicto en {dirname}","{count} archivos en conflicto 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 uploads":{msgid:"Cancel uploads",msgstr:["Cancelar subidas"]},Continue:{msgid:"Continue",msgstr:["Continuar"]},"estimating time left":{msgid:"estimating time left",msgstr:["estimación del tiempo restante"]},"Existing version":{msgid:"Existing version",msgstr:["Versión 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:["Si selecciona ambas versiones, al archivo copiado se le añadirá un número en el nombre."]},"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"]},"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 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 cancelled":{msgid:"Upload cancelled",msgstr:["Subida cancelada"]},"Upload files":{msgid:"Upload files",msgstr:["Subir archivos"]},"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":"Liviu Milies, 2023","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:\nJohn Molakvoæ , 2023\nJean-Claude Richard , 2023\nClément Saccoccio, 2023\nLiviu Milies, 2023\n"},msgstr:["Last-Translator: Liviu Milies, 2023\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 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, un nombre sera postfixé au nom du fichier."]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Date de dernière modification inconnue"]},New:{msgid:"New",msgstr:["Nou"]},"New version":{msgid:"New version",msgstr:["Nouvelle version"]},paused:{msgid:"paused",msgstr:["en pause"]},"Preview image":{msgid:"Preview image",msgstr:["Image d'aperçu"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Sélectionner toutes les cases"]},"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:["Envoi annulé"]},"Upload files":{msgid:"Upload files",msgstr:["Téléverser des fichiers"]},"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:"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 , 2023","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:\nJohn Molakvoæ , 2023\nNacho , 2023\nMiguel Anxo Bouzada , 2023\n"},msgstr:["Last-Translator: Miguel Anxo Bouzada , 2023\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"]},"{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 uploads":{msgid:"Cancel uploads",msgstr:["Cancelar envíos"]},Continue:{msgid:"Continue",msgstr:["Continuar"]},"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 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 selecciona ambas as versións, o ficheiro copiado terá un número engadido ao seu nome."]},"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"]},"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 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 cancelled":{msgid:"Upload cancelled",msgstr:["Envío cancelado"]},"Upload files":{msgid:"Upload files",msgstr:["Enviar ficheiros"]},"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":"Lep Lep, 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\n"},msgstr:["Last-Translator: Lep Lep, 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"]},Add:{msgid:"Add",msgstr:["Aggiungi"]},"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 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":"Brandon Han, 2022","Language-Team":"Korean (https://www.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:\nBrandon Han, 2022\n"},msgstr:["Last-Translator: Brandon Han, 2022\nLanguage-Team: Korean (https://www.transifex.com/nextcloud/teams/64236/ko/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ko\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:"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":"Ari Selseng , 2022","Language-Team":"Norwegian Bokmål (Norway) (https://www.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:\nAri Selseng , 2022\n"},msgstr:["Last-Translator: Ari Selseng , 2022\nLanguage-Team: Norwegian Bokmål (Norway) (https://www.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"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} sekunder igjen"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["{time} igjen"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["noen få sekunder igjen"]},Add:{msgid:"Add",msgstr:["Legg til"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Avbryt opplastninger"]},"estimating time left":{msgid:"estimating time left",msgstr:["Estimerer tid igjen"]},paused:{msgid:"paused",msgstr:["pauset"]},"Upload files":{msgid:"Upload files",msgstr:["Last opp filer"]}}}}},{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":"M H , 2023","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:\nJohn Molakvoæ , 2023\nM H , 2023\n"},msgstr:["Last-Translator: M H , 2023\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 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 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:["Jeżeli wybierzesz obie wersje to do nazw skopiowanych plików 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"]},"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":"Flávio Veras , 2022","Language-Team":"Portuguese (Brazil) (https://www.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:\nLeonardo Colman , 2022\nJeann Cavalcante , 2022\nFlávio Veras , 2022\n"},msgstr:["Last-Translator: Flávio Veras , 2022\nLanguage-Team: Portuguese (Brazil) (https://www.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"]},"{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:["alguns segundos restantes"]},Add:{msgid:"Add",msgstr:["Adicionar"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Cancelar uploads"]},"estimating time left":{msgid:"estimating time left",msgstr:["estimando tempo restante"]},paused:{msgid:"paused",msgstr:["pausado"]},"Upload files":{msgid:"Upload files",msgstr:["Enviar arquivos"]}}}}},{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":"Александр, 2023","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:\nJohn Molakvoæ , 2023\nMax Smith , 2023\nАлександр, 2023\n"},msgstr:["Last-Translator: Александр, 2023\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"]},"{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:["осталось несколько секунд"]},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} файла","Пропустить {count} файлов","Пропустить {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:"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:["Отпреми фајлове"]},"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, 2023","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:\nJohn Molakvoæ , 2023\nMagnus Höglund, 2023\n"},msgstr:["Last-Translator: Magnus Höglund, 2023\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"]},"{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 uploads":{msgid:"Cancel uploads",msgstr:["Avbryt uppladdningar"]},Continue:{msgid:"Continue",msgstr:["Fortsätt"]},"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 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:["Om du väljer båda versionerna kommer den kopierade filen att få ett nummer tillagt i namnet."]},"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"]},"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 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 cancelled":{msgid:"Upload cancelled",msgstr:["Uppladdningen avbröts"]},"Upload files":{msgid:"Upload files",msgstr:["Ladda upp filer"]},"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 , 2023","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:\nJohn Molakvoæ , 2023\nKaya Zeren , 2023\n"},msgstr:["Last-Translator: Kaya Zeren , 2023\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"]},"{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 uploads":{msgid:"Cancel uploads",msgstr:["Yüklemeleri iptal et"]},Continue:{msgid:"Continue",msgstr:["İlerle"]},"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 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:["İki sürümü de seçerseniz, kopyalanan dosyanın adına bir sayı eklenir."]},"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"]},"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 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 cancelled":{msgid:"Upload cancelled",msgstr:["Yükleme iptal edildi"]},"Upload files":{msgid:"Upload files",msgstr:["Dosyaları yükle"]},"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 , 2023","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:\nJohn Molakvoæ , 2023\nMehi Loki, 2023\nO St , 2023\n"},msgstr:["Last-Translator: O St , 2023\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 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} файлів","Пропустити {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:"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":"blakduk, 2023","Language-Team":"Vietnamese (https://www.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:\nblakduk, 2023\n"},msgstr:["Last-Translator: blakduk, 2023\nLanguage-Team: Vietnamese (https://www.transifex.com/nextcloud/teams/64236/vi/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: vi\nPlural-Forms: nplurals=1; plural=0;\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["Còn {second} giây"]},"{time} left":{msgid:"{time} left",comments:{extracted:"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"]},Add:{msgid:"Add",msgstr:["Thêm"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Huỷ tải lên"]},"estimating time left":{msgid:"estimating time left",msgstr:["Thời gian còn lại dự kiến"]},paused:{msgid:"paused",msgstr:["đã tạm dừng"]},"Upload files":{msgid:"Upload files",msgstr:["Tập tin tải lên"]}}}}},{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, 2023","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:\nJohn Molakvoæ , 2023\nCafé Tango, 2023\n"},msgstr:["Last-Translator: Café Tango, 2023\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:["還剩幾秒"]},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_TW",json:{charset:"utf-8",headers:{"Last-Translator":"黃柏諺 , 2023","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:\nJohn Molakvoæ , 2023\n黃柏諺 , 2023\n"},msgstr:["Last-Translator: 黃柏諺 , 2023\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:["還剩幾秒"]},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:["您必須為每個檔案都至少選取一個版本以繼續。"]}}}}}].map((t=>el.addTranslation(t.locale,t.json)));const nl=el.build(),sl=nl.ngettext.bind(nl),il=nl.gettext.bind(nl),al=ja.extend({name:"UploadPicker",components:{Cancel:Qo,NcActionButton:N.Z,NcActions:F.Z,NcButton:B.Z,NcIconSvgWrapper:P.Z,NcProgressBar:j.Z,Plus:Xo,Upload:tl},props:{accept:{type:Array,default:null},disabled:{type:Boolean,default:!1},multiple:{type:Boolean,default:!1},destination:{type:w.gt,default:void 0},content:{type:Array,default:()=>[]}},data:()=>({addLabel:il("New"),cancelLabel:il("Cancel uploads"),uploadLabel:il("Upload files"),eta:null,timeLeft:"",newFileMenuEntries:[],uploadManager:ll()}),computed:{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((t=>t.status===Re.FAILED)).length},isUploading(){return this.queue?.length>0},isAssembling(){return 0!==this.queue?.filter((t=>t.status===Re.ASSEMBLING)).length},isPaused(){return this.uploadManager.info?.status===He.PAUSED},buttonName(){if(!this.isUploading)return this.addLabel}},watch:{destination(t){this.setDestination(t)},totalQueueSize(t){this.eta=E({min:0,max:t}),this.updateStatus()},uploadedQueueSize(t){this.eta?.report?.(t),this.updateStatus()},isPaused(t){t?this.$emit("paused",this.queue):this.$emit("resumed",this.queue)}},beforeMount(){this.destination&&this.setDestination(this.destination),this.uploadManager.addNotifier(this.onUploadCompletion),Ve.debug("UploadPicker initialised")},methods:{onClick(){this.$refs.input.click()},async onPick(){let t=[...this.$refs.input.files];if(function(t,e){const n=e.map((t=>t.basename));return t.filter((t=>{const e=t instanceof File?t.name:t.basename;return-1!==n.indexOf(e)})).length>0}(t,this.content)){const e=t.filter((t=>this.content.find((e=>e.basename===t.name)))).filter(Boolean),s=t.filter((t=>!e.includes(t)));try{const{selected:i,renamed:a}=await async function(t,e,s){const{default:i}=await n.e(4454).then(n.bind(n,44454));return new Promise(((n,a)=>{const r=new i({propsData:{dirname:t,conflicts:e,content:s}});r.$on("submit",(t=>{n(t),r.$destroy(),r.$el?.parentNode?.removeChild(r.$el)})),r.$on("cancel",(t=>{a(t??new Error("Canceled")),r.$destroy(),r.$el?.parentNode?.removeChild(r.$el)})),r.$mount(),document.body.appendChild(r.$el)}))}(this.destination.basename,e,this.content);t=[...s,...i,...a]}catch{return void(0,L.x2)(il("Upload cancelled"))}}t.forEach((t=>{this.uploadManager.upload(t.name,t).catch((()=>{}))})),this.$refs.form.reset()},onCancel(){this.uploadManager.queue.forEach((t=>{t.cancel()})),this.$refs.form.reset()},updateStatus(){if(this.isPaused)return void(this.timeLeft=il("paused"));const t=Math.round(this.eta.estimate());if(t!==1/0)if(t<10)this.timeLeft=il("a few seconds left");else if(t>60){const e=new Date(0);e.setSeconds(t);const n=e.toISOString().slice(11,19);this.timeLeft=il("{time} left",{time:n})}else this.timeLeft=il("{seconds} seconds left",{seconds:t});else this.timeLeft=il("estimating time left")},setDestination(t){this.destination?(Ve.debug("Destination set",{destination:t}),this.uploadManager.destination=t,this.newFileMenuEntries=(0,w.Ir)(t)):Ve.debug("Invalid destination")},onUploadCompletion(t){t.status===Re.FAILED?this.$emit("failed",t):this.$emit("uploaded",t)}}}),rl=Jo(al,(function(){var t=this,e=t._self._c;return t._self._setupProxy,t.destination?e("form",{ref:"form",staticClass:"upload-picker",class:{"upload-picker--uploading":t.isUploading,"upload-picker--paused":t.isPaused},attrs:{"data-cy-upload-picker":""}},[t.newFileMenuEntries&&0===t.newFileMenuEntries.length?e("NcButton",{attrs:{disabled:t.disabled,"data-cy-upload-picker-add":"",type:"secondary"},on:{click:t.onClick},scopedSlots:t._u([{key:"icon",fn:function(){return[e("Plus",{attrs:{title:"",size:20,decorative:""}})]},proxy:!0}],null,!1,2954875042)},[t._v(" "+t._s(t.buttonName)+" ")]):e("NcActions",{attrs:{"menu-name":t.buttonName,"menu-title":t.addLabel,type:"secondary"},scopedSlots:t._u([{key:"icon",fn:function(){return[e("Plus",{attrs:{title:"",size:20,decorative:""}})]},proxy:!0}],null,!1,2954875042)},[e("NcActionButton",{attrs:{"data-cy-upload-picker-add":"","close-after-click":!0},on:{click:t.onClick},scopedSlots:t._u([{key:"icon",fn:function(){return[e("Upload",{attrs:{title:"",size:20,decorative:""}})]},proxy:!0}],null,!1,3606034491)},[t._v(" "+t._s(t.uploadLabel)+" ")]),t._l(t.newFileMenuEntries,(function(n){return e("NcActionButton",{key:n.id,staticClass:"upload-picker__menu-entry",attrs:{icon:n.iconClass,"close-after-click":!0},on:{click:function(e){return n.handler(t.destination,t.content)}},scopedSlots:t._u([n.iconSvgInline?{key:"icon",fn:function(){return[e("NcIconSvgWrapper",{attrs:{svg:n.iconSvgInline}})]},proxy:!0}:null],null,!0)},[t._v(" "+t._s(n.displayName)+" ")])}))],2),e("div",{staticClass:"upload-picker__progress"},[e("NcProgressBar",{attrs:{error:t.hasFailure,value:t.progress,size:"medium"}}),e("p",[t._v(t._s(t.timeLeft))])],1),t.isUploading?e("NcButton",{staticClass:"upload-picker__cancel",attrs:{type:"tertiary","aria-label":t.cancelLabel,"data-cy-upload-picker-cancel":""},on:{click:t.onCancel},scopedSlots:t._u([{key:"icon",fn:function(){return[e("Cancel",{attrs:{title:"",size:20}})]},proxy:!0}],null,!1,4076886712)}):t._e(),e("input",{directives:[{name:"show",rawName:"v-show",value:!1,expression:"false"}],ref:"input",attrs:{type:"file",accept:t.accept?.join?.(", "),multiple:t.multiple,"data-cy-upload-picker-input":""},on:{change:t.onPick}})],1):t._e()}),[],!1,null,"f09fb109",null,null).exports;let ol=null;function ll(){const t=null!==document.querySelector('input[name="isPublic"][value="1"]');return ol instanceof qe||(ol=new qe(t)),ol}}},a={};function r(t){var e=a[t];if(void 0!==e)return e.exports;var n=a[t]={id:t,loaded:!1,exports:{}};return i[t].call(n.exports,n,n.exports,r),n.loaded=!0,n.exports}r.m=i,e=[],r.O=(t,n,s,i)=>{if(!n){var a=1/0;for(d=0;d=i)&&Object.keys(r.O).every((t=>r.O[t](n[l])))?n.splice(l--,1):(o=!1,i0&&e[d-1][2]>i;d--)e[d]=e[d-1];e[d]=[n,s,i]},r.n=t=>{var e=t&&t.__esModule?()=>t.default:()=>t;return r.d(e,{a:e}),e},r.d=(t,e)=>{for(var n in e)r.o(e,n)&&!r.o(t,n)&&Object.defineProperty(t,n,{enumerable:!0,get:e[n]})},r.f={},r.e=t=>Promise.all(Object.keys(r.f).reduce(((e,n)=>(r.f[n](t,e),e)),[])),r.u=t=>t+"-"+t+".js?v="+{923:"2686613ba9d88601b889",4454:"01ee6c5df96bab2df261",8321:"8442e3d18a58ee1f612a"}[t],r.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(t){if("object"==typeof window)return window}}(),r.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e),n={},s="nextcloud:",r.l=(t,e,i,a)=>{if(n[t])n[t].push(e);else{var o,l;if(void 0!==i)for(var c=document.getElementsByTagName("script"),d=0;d{o.onerror=o.onload=null,clearTimeout(f);var i=n[t];if(delete n[t],o.parentNode&&o.parentNode.removeChild(o),i&&i.forEach((t=>t(s))),e)return e(s)},f=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=t=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},r.nmd=t=>(t.paths=[],t.children||(t.children=[]),t),r.j=2181,(()=>{var t;r.g.importScripts&&(t=r.g.location+"");var e=r.g.document;if(!t&&e&&(e.currentScript&&(t=e.currentScript.src),!t)){var n=e.getElementsByTagName("script");if(n.length)for(var s=n.length-1;s>-1&&!t;)t=n[s--].src}if(!t)throw new Error("Automatic publicPath is not supported in this browser");t=t.replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),r.p=t})(),(()=>{r.b=document.baseURI||self.location.href;var t={2181:0};r.f.j=(e,n)=>{var s=r.o(t,e)?t[e]:void 0;if(0!==s)if(s)n.push(s[2]);else{var i=new Promise(((n,i)=>s=t[e]=[n,i]));n.push(s[2]=i);var a=r.p+r.u(e),o=new Error;r.l(a,(n=>{if(r.o(t,e)&&(0!==(s=t[e])&&(t[e]=void 0),s)){var i=n&&("load"===n.type?"missing":n.type),a=n&&n.target&&n.target.src;o.message="Loading chunk "+e+" failed.\n("+i+": "+a+")",o.name="ChunkLoadError",o.type=i,o.request=a,s[1](o)}}),"chunk-"+e,e)}},r.O.j=e=>0===t[e];var e=(e,n)=>{var s,i,a=n[0],o=n[1],l=n[2],c=0;if(a.some((e=>0!==t[e]))){for(s in o)r.o(o,s)&&(r.m[s]=o[s]);if(l)var d=l(r)}for(e&&e(n);cr(75634)));o=r.O(o)})(); +//# sourceMappingURL=files-main.js.map?v=9b808693c4a5542602e8 \ No newline at end of file diff --git a/dist/files-main.js.map b/dist/files-main.js.map index 7eef5de056344..03aa08c2676ba 100644 --- a/dist/files-main.js.map +++ b/dist/files-main.js.map @@ -1 +1 @@ -{"version":3,"file":"files-main.js?v=e93841898aefe77dc2e5","mappings":"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","sources":["webpack:///nextcloud/webpack/runtime/chunk loaded","webpack:///nextcloud/webpack/runtime/load script","webpack:///nextcloud/node_modules/pinia/node_modules/vue-demi/lib/index.mjs","webpack:///nextcloud/node_modules/@vue/devtools-api/lib/esm/env.js","webpack:///nextcloud/node_modules/@vue/devtools-api/lib/esm/const.js","webpack:///nextcloud/node_modules/@vue/devtools-api/lib/esm/time.js","webpack:///nextcloud/node_modules/@vue/devtools-api/lib/esm/proxy.js","webpack:///nextcloud/node_modules/@vue/devtools-api/lib/esm/index.js","webpack:///nextcloud/node_modules/pinia/dist/pinia.mjs","webpack:///nextcloud/node_modules/natural-orderby/dist/index.js","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=03d22f04","webpack:///nextcloud/node_modules/vue-material-design-icons/ShareVariant.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/ShareVariant.vue?vue&type=script&lang=js","webpack://nextcloud/./node_modules/vue-material-design-icons/ShareVariant.vue?0b71","webpack:///nextcloud/node_modules/vue-material-design-icons/ShareVariant.vue?vue&type=template&id=1f144a5c","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=6ca550f9","webpack:///nextcloud/apps/files/src/logger.js","webpack:///nextcloud/apps/files/src/actions/sidebarAction.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/store/userconfig.ts","webpack:///nextcloud/apps/files/src/store/viewConfig.ts","webpack:///nextcloud/node_modules/vue-material-design-icons/Home.vue?vue&type=script&lang=js","webpack:///nextcloud/node_modules/vue-material-design-icons/Home.vue","webpack://nextcloud/./node_modules/vue-material-design-icons/Home.vue?e73b","webpack:///nextcloud/node_modules/vue-material-design-icons/Home.vue?vue&type=template&id=69a49b0f","webpack:///nextcloud/apps/files/src/components/BreadCrumbs.vue","webpack:///nextcloud/apps/files/src/components/BreadCrumbs.vue?vue&type=script&lang=js","webpack://nextcloud/./apps/files/src/components/BreadCrumbs.vue?cde9","webpack://nextcloud/./apps/files/src/components/BreadCrumbs.vue?d357","webpack://nextcloud/./apps/files/src/components/BreadCrumbs.vue?e906","webpack:///nextcloud/apps/files/src/components/FilesListVirtual.vue","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=065722db","webpack://nextcloud/./node_modules/vue-material-design-icons/Folder.vue?b60e","webpack:///nextcloud/apps/files/src/components/DragAndDropPreview.vue","webpack:///nextcloud/apps/files/src/utils/fileUtils.ts","webpack:///nextcloud/apps/files/src/components/DragAndDropPreview.vue?vue&type=script&lang=ts","webpack://nextcloud/./apps/files/src/components/DragAndDropPreview.vue?3906","webpack://nextcloud/./apps/files/src/components/DragAndDropPreview.vue?36f6","webpack:///nextcloud/apps/files/src/utils/dragUtils.ts","webpack://nextcloud/./node_modules/@nextcloud/dialogs/dist/style.css?d87c","webpack:///nextcloud/node_modules/axios/index.js","webpack:///nextcloud/apps/files/src/actions/moveOrCopyActionUtils.ts","webpack:///nextcloud/apps/files/src/actions/moveOrCopyAction.ts","webpack:///nextcloud/apps/files/src/utils/hashUtils.ts","webpack:///nextcloud/apps/files/src/store/actionsmenu.ts","webpack:///nextcloud/apps/files/src/store/dragging.ts","webpack:///nextcloud/apps/files/src/store/renaming.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/node_modules/vue-material-design-icons/ArrowLeft.vue?vue&type=script&lang=js","webpack:///nextcloud/node_modules/vue-material-design-icons/ArrowLeft.vue","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=187c55d7","webpack:///nextcloud/node_modules/vue-material-design-icons/ChevronRight.vue?vue&type=script&lang=js","webpack:///nextcloud/node_modules/vue-material-design-icons/ChevronRight.vue","webpack://nextcloud/./node_modules/vue-material-design-icons/ChevronRight.vue?621b","webpack:///nextcloud/node_modules/vue-material-design-icons/ChevronRight.vue?vue&type=template&id=750bcc07","webpack:///nextcloud/apps/files/src/components/FileEntry/FileEntryActions.vue","webpack:///nextcloud/apps/files/src/components/FileEntry/FileEntryActions.vue?vue&type=script&lang=ts","webpack://nextcloud/./apps/files/src/components/FileEntry/FileEntryActions.vue?96ce","webpack://nextcloud/./apps/files/src/components/FileEntry/FileEntryActions.vue?7b52","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?vue&type=script&lang=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/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=98f97aee","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","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=5c8d96c6","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=3b29b1d5","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=aa295eae","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=7c7d2907","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=4d7171be","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=34d1e782","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?6d98","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","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","webpack:///nextcloud/apps/files/src/components/FileEntryGrid.vue?vue&type=script&lang=ts","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?4abf","webpack://nextcloud/./apps/files/src/components/FilesListTableFooter.vue?fa4c","webpack:///nextcloud/apps/files/src/mixins/filesListWidth.ts","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?6e2b","webpack://nextcloud/./apps/files/src/components/FilesListTableHeaderActions.vue?9494","webpack:///nextcloud/apps/files/src/components/FilesListTableHeaderButton.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?7b8e","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","webpack://nextcloud/./apps/files/src/components/FilesListTableHeader.vue?66bd","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/FilesListVirtual.vue?vue&type=script&lang=ts","webpack://nextcloud/./apps/files/src/components/FilesListVirtual.vue?3a1b","webpack://nextcloud/./apps/files/src/components/FilesListVirtual.vue?522e","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=547c388d","webpack:///nextcloud/apps/files/src/services/DropService.ts","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?393a","webpack://nextcloud/./apps/files/src/components/DragAndDropNotice.vue?a2e0","webpack:///nextcloud/apps/files/src/views/FilesList.vue","webpack:///nextcloud/apps/files/src/views/FilesList.vue?vue&type=script&lang=ts","webpack://nextcloud/./apps/files/src/views/FilesList.vue?ed4f","webpack://nextcloud/./apps/files/src/views/FilesList.vue?1e5b","webpack:///nextcloud/apps/files/src/views/Navigation.vue","webpack://nextcloud/./node_modules/vue-material-design-icons/Cog.vue?4d6d","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=44de6464","webpack:///nextcloud/apps/files/src/components/NavigationQuota.vue","webpack:///nextcloud/apps/files/src/components/NavigationQuota.vue?vue&type=script&lang=js","webpack://nextcloud/./apps/files/src/components/NavigationQuota.vue?de57","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=0e008e34","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/views/Settings.vue?vue&type=script&lang=js","webpack:///nextcloud/apps/files/src/views/Settings.vue","webpack://nextcloud/./apps/files/src/views/Settings.vue?0f1b","webpack://nextcloud/./apps/files/src/views/Settings.vue?b81b","webpack:///nextcloud/apps/files/src/views/Navigation.vue?vue&type=script&lang=ts","webpack:///nextcloud/core/src/OCP/accessibility.js","webpack://nextcloud/./apps/files/src/views/Navigation.vue?2e0e","webpack://nextcloud/./apps/files/src/views/Navigation.vue?74b9","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/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/dialogs/dist/style.css","webpack:///nextcloud/node_modules/@nextcloud/upload/dist/assets/index-f2495ce6.css","webpack:///nextcloud/apps/files/src/components/BreadCrumbs.vue?vue&type=style&index=0&id=c33b6662&prod&lang=scss&scoped=true","webpack:///nextcloud/apps/files/src/components/DragAndDropNotice.vue?vue&type=style&index=0&id=7e0e423e&prod&lang=scss&scoped=true","webpack:///nextcloud/apps/files/src/components/DragAndDropPreview.vue?vue&type=style&index=0&id=578d5cf6&prod&lang=scss","webpack:///nextcloud/apps/files/src/components/FileEntry/FavoriteIcon.vue?vue&type=style&index=0&id=04e52abc&prod&lang=scss&scoped=true","webpack:///nextcloud/apps/files/src/components/FileEntry/FileEntryActions.vue?vue&type=style&index=0&id=6dd8d639&prod&lang=scss&scoped=true","webpack:///nextcloud/apps/files/src/components/FilesListTableFooter.vue?vue&type=style&index=0&id=58f7b64d&prod&scoped=true&lang=scss","webpack:///nextcloud/apps/files/src/components/FilesListTableHeader.vue?vue&type=style&index=0&id=585fdb03&prod&scoped=true&lang=scss","webpack:///nextcloud/apps/files/src/components/FilesListTableHeaderActions.vue?vue&type=style&index=0&id=72bacee0&prod&scoped=true&lang=scss","webpack:///nextcloud/apps/files/src/components/FilesListTableHeaderButton.vue?vue&type=style&index=0&id=097f69d4&prod&scoped=true&lang=scss","webpack:///nextcloud/apps/files/src/components/FilesListVirtual.vue?vue&type=style&index=0&id=1b17ff10&prod&scoped=true&lang=scss","webpack:///nextcloud/apps/files/src/components/FilesListVirtual.vue?vue&type=style&index=1&id=1b17ff10&prod&lang=scss","webpack:///nextcloud/apps/files/src/components/NavigationQuota.vue?vue&type=style&index=0&id=2bae6012&prod&lang=scss&scoped=true","webpack:///nextcloud/apps/files/src/views/FilesList.vue?vue&type=style&index=0&id=14acd289&prod&scoped=true&lang=scss","webpack:///nextcloud/apps/files/src/views/Navigation.vue?vue&type=style&index=0&id=1a7f07dd&prod&scoped=true&lang=scss","webpack:///nextcloud/apps/files/src/views/Settings.vue?vue&type=style&index=0&id=011c3819&prod&lang=scss&scoped=true","webpack:///nextcloud/node_modules/moment/locale|sync|/^\\.\\/.*$","webpack:///nextcloud/node_modules/simple-eta/index.js","webpack:///nextcloud/node_modules/@nextcloud/files/dist/index.mjs","webpack://nextcloud/./node_modules/@nextcloud/upload/dist/assets/index-f2495ce6.css?6708","webpack:///nextcloud/node_modules/p-cancelable/index.js","webpack:///nextcloud/node_modules/@nextcloud/upload/node_modules/p-limit/async-hooks-stub.js","webpack:///nextcloud/node_modules/@nextcloud/upload/dist/chunks/index-daca53bd.mjs","webpack:///nextcloud/node_modules/@nextcloud/upload/node_modules/p-limit/index.js","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};","import Vue from 'vue'\nimport { getCurrentInstance } from 'vue'\n\nvar isVue2 = true\nvar isVue3 = false\nvar Vue2 = Vue\nvar warn = Vue.util.warn\n\nfunction install() {}\n\n// createApp polyfill\nexport function createApp(rootComponent, rootProps) {\n var vm\n var provide = {}\n var app = {\n config: Vue.config,\n use: Vue.use.bind(Vue),\n mixin: Vue.mixin.bind(Vue),\n component: Vue.component.bind(Vue),\n provide: function (key, value) {\n provide[key] = value\n return this\n },\n directive: function (name, dir) {\n if (dir) {\n Vue.directive(name, dir)\n return app\n } else {\n return Vue.directive(name)\n }\n },\n mount: function (el, hydrating) {\n if (!vm) {\n vm = new Vue(Object.assign({ propsData: rootProps }, rootComponent, { provide: Object.assign(provide, rootComponent.provide) }))\n vm.$mount(el, hydrating)\n return vm\n } else {\n return vm\n }\n },\n unmount: function () {\n if (vm) {\n vm.$destroy()\n vm = undefined\n }\n },\n }\n return app\n}\n\nexport {\n Vue,\n Vue2,\n isVue2,\n isVue3,\n install,\n warn\n}\n\n// Vue 3 components mock\nfunction createMockComponent(name) {\n return {\n setup() {\n throw new Error('[vue-demi] ' + name + ' is not supported in Vue 2. It\\'s provided to avoid compiler errors.')\n }\n }\n}\nexport var Fragment = /*#__PURE__*/ createMockComponent('Fragment')\nexport var Transition = /*#__PURE__*/ createMockComponent('Transition')\nexport var TransitionGroup = /*#__PURE__*/ createMockComponent('TransitionGroup')\nexport var Teleport = /*#__PURE__*/ createMockComponent('Teleport')\nexport var Suspense = /*#__PURE__*/ createMockComponent('Suspense')\nexport var KeepAlive = /*#__PURE__*/ createMockComponent('KeepAlive')\n\nexport * from 'vue'\n\n// Not implemented https://github.com/vuejs/core/pull/8111, falls back to getCurrentInstance()\nexport function hasInjectionContext() {\n return !!getCurrentInstance()\n}\n","export function getDevtoolsGlobalHook() {\n return getTarget().__VUE_DEVTOOLS_GLOBAL_HOOK__;\n}\nexport function getTarget() {\n // @ts-ignore\n return (typeof navigator !== 'undefined' && typeof window !== 'undefined')\n ? window\n : typeof global !== 'undefined'\n ? global\n : {};\n}\nexport const isProxyAvailable = typeof Proxy === 'function';\n","export const HOOK_SETUP = 'devtools-plugin:setup';\nexport const HOOK_PLUGIN_SETTINGS_SET = 'plugin:settings:set';\n","let supported;\nlet perf;\nexport function isPerformanceSupported() {\n var _a;\n if (supported !== undefined) {\n return supported;\n }\n if (typeof window !== 'undefined' && window.performance) {\n supported = true;\n perf = window.performance;\n }\n else if (typeof global !== 'undefined' && ((_a = global.perf_hooks) === null || _a === void 0 ? void 0 : _a.performance)) {\n supported = true;\n perf = global.perf_hooks.performance;\n }\n else {\n supported = false;\n }\n return supported;\n}\nexport function now() {\n return isPerformanceSupported() ? perf.now() : Date.now();\n}\n","import { HOOK_PLUGIN_SETTINGS_SET } from './const.js';\nimport { now } from './time.js';\nexport class ApiProxy {\n constructor(plugin, hook) {\n this.target = null;\n this.targetQueue = [];\n this.onQueue = [];\n this.plugin = plugin;\n this.hook = hook;\n const defaultSettings = {};\n if (plugin.settings) {\n for (const id in plugin.settings) {\n const item = plugin.settings[id];\n defaultSettings[id] = item.defaultValue;\n }\n }\n const localSettingsSaveId = `__vue-devtools-plugin-settings__${plugin.id}`;\n let currentSettings = Object.assign({}, defaultSettings);\n try {\n const raw = localStorage.getItem(localSettingsSaveId);\n const data = JSON.parse(raw);\n Object.assign(currentSettings, data);\n }\n catch (e) {\n // noop\n }\n this.fallbacks = {\n getSettings() {\n return currentSettings;\n },\n setSettings(value) {\n try {\n localStorage.setItem(localSettingsSaveId, JSON.stringify(value));\n }\n catch (e) {\n // noop\n }\n currentSettings = value;\n },\n now() {\n return now();\n },\n };\n if (hook) {\n hook.on(HOOK_PLUGIN_SETTINGS_SET, (pluginId, value) => {\n if (pluginId === this.plugin.id) {\n this.fallbacks.setSettings(value);\n }\n });\n }\n this.proxiedOn = new Proxy({}, {\n get: (_target, prop) => {\n if (this.target) {\n return this.target.on[prop];\n }\n else {\n return (...args) => {\n this.onQueue.push({\n method: prop,\n args,\n });\n };\n }\n },\n });\n this.proxiedTarget = new Proxy({}, {\n get: (_target, prop) => {\n if (this.target) {\n return this.target[prop];\n }\n else if (prop === 'on') {\n return this.proxiedOn;\n }\n else if (Object.keys(this.fallbacks).includes(prop)) {\n return (...args) => {\n this.targetQueue.push({\n method: prop,\n args,\n resolve: () => { },\n });\n return this.fallbacks[prop](...args);\n };\n }\n else {\n return (...args) => {\n return new Promise(resolve => {\n this.targetQueue.push({\n method: prop,\n args,\n resolve,\n });\n });\n };\n }\n },\n });\n }\n async setRealTarget(target) {\n this.target = target;\n for (const item of this.onQueue) {\n this.target.on[item.method](...item.args);\n }\n for (const item of this.targetQueue) {\n item.resolve(await this.target[item.method](...item.args));\n }\n }\n}\n","import { getTarget, getDevtoolsGlobalHook, isProxyAvailable } from './env.js';\nimport { HOOK_SETUP } from './const.js';\nimport { ApiProxy } from './proxy.js';\nexport * from './api/index.js';\nexport * from './plugin.js';\nexport * from './time.js';\nexport function setupDevtoolsPlugin(pluginDescriptor, setupFn) {\n const descriptor = pluginDescriptor;\n const target = getTarget();\n const hook = getDevtoolsGlobalHook();\n const enableProxy = isProxyAvailable && descriptor.enableEarlyProxy;\n if (hook && (target.__VUE_DEVTOOLS_PLUGIN_API_AVAILABLE__ || !enableProxy)) {\n hook.emit(HOOK_SETUP, pluginDescriptor, setupFn);\n }\n else {\n const proxy = enableProxy ? new ApiProxy(descriptor, hook) : null;\n const list = target.__VUE_DEVTOOLS_PLUGINS__ = target.__VUE_DEVTOOLS_PLUGINS__ || [];\n list.push({\n pluginDescriptor: descriptor,\n setupFn,\n proxy,\n });\n if (proxy)\n setupFn(proxy.proxiedTarget);\n }\n}\n","/*!\n * pinia v2.1.7\n * (c) 2023 Eduardo San Martin Morote\n * @license MIT\n */\nimport { hasInjectionContext, inject, toRaw, watch, unref, markRaw, effectScope, ref, isVue2, isRef, isReactive, set, getCurrentScope, onScopeDispose, getCurrentInstance, reactive, toRef, del, nextTick, computed, toRefs } from 'vue-demi';\nimport { setupDevtoolsPlugin } from '@vue/devtools-api';\n\n/**\n * setActivePinia must be called to handle SSR at the top of functions like\n * `fetch`, `setup`, `serverPrefetch` and others\n */\nlet activePinia;\n/**\n * Sets or unsets the active pinia. Used in SSR and internally when calling\n * actions and getters\n *\n * @param pinia - Pinia instance\n */\n// @ts-expect-error: cannot constrain the type of the return\nconst setActivePinia = (pinia) => (activePinia = pinia);\n/**\n * Get the currently active pinia if there is any.\n */\nconst getActivePinia = () => (hasInjectionContext() && inject(piniaSymbol)) || activePinia;\nconst piniaSymbol = ((process.env.NODE_ENV !== 'production') ? Symbol('pinia') : /* istanbul ignore next */ Symbol());\n\nfunction isPlainObject(\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\no) {\n return (o &&\n typeof o === 'object' &&\n Object.prototype.toString.call(o) === '[object Object]' &&\n typeof o.toJSON !== 'function');\n}\n// type DeepReadonly = { readonly [P in keyof T]: DeepReadonly }\n// TODO: can we change these to numbers?\n/**\n * Possible types for SubscriptionCallback\n */\nvar MutationType;\n(function (MutationType) {\n /**\n * Direct mutation of the state:\n *\n * - `store.name = 'new name'`\n * - `store.$state.name = 'new name'`\n * - `store.list.push('new item')`\n */\n MutationType[\"direct\"] = \"direct\";\n /**\n * Mutated the state with `$patch` and an object\n *\n * - `store.$patch({ name: 'newName' })`\n */\n MutationType[\"patchObject\"] = \"patch object\";\n /**\n * Mutated the state with `$patch` and a function\n *\n * - `store.$patch(state => state.name = 'newName')`\n */\n MutationType[\"patchFunction\"] = \"patch function\";\n // maybe reset? for $state = {} and $reset\n})(MutationType || (MutationType = {}));\n\nconst IS_CLIENT = typeof window !== 'undefined';\n/**\n * Should we add the devtools plugins.\n * - only if dev mode or forced through the prod devtools flag\n * - not in test\n * - only if window exists (could change in the future)\n */\nconst USE_DEVTOOLS = ((process.env.NODE_ENV !== 'production') || (typeof __VUE_PROD_DEVTOOLS__ !== 'undefined' && __VUE_PROD_DEVTOOLS__)) && !(process.env.NODE_ENV === 'test') && IS_CLIENT;\n\n/*\n * FileSaver.js A saveAs() FileSaver implementation.\n *\n * Originally by Eli Grey, adapted as an ESM module by Eduardo San Martin\n * Morote.\n *\n * License : MIT\n */\n// The one and only way of getting global scope in all environments\n// https://stackoverflow.com/q/3277182/1008999\nconst _global = /*#__PURE__*/ (() => typeof window === 'object' && window.window === window\n ? window\n : typeof self === 'object' && self.self === self\n ? self\n : typeof global === 'object' && global.global === global\n ? global\n : typeof globalThis === 'object'\n ? globalThis\n : { HTMLElement: null })();\nfunction bom(blob, { autoBom = false } = {}) {\n // prepend BOM for UTF-8 XML and text/* types (including HTML)\n // note: your browser will automatically convert UTF-16 U+FEFF to EF BB BF\n if (autoBom &&\n /^\\s*(?:text\\/\\S*|application\\/xml|\\S*\\/\\S*\\+xml)\\s*;.*charset\\s*=\\s*utf-8/i.test(blob.type)) {\n return new Blob([String.fromCharCode(0xfeff), blob], { type: blob.type });\n }\n return blob;\n}\nfunction download(url, name, opts) {\n const xhr = new XMLHttpRequest();\n xhr.open('GET', url);\n xhr.responseType = 'blob';\n xhr.onload = function () {\n saveAs(xhr.response, name, opts);\n };\n xhr.onerror = function () {\n console.error('could not download file');\n };\n xhr.send();\n}\nfunction corsEnabled(url) {\n const xhr = new XMLHttpRequest();\n // use sync to avoid popup blocker\n xhr.open('HEAD', url, false);\n try {\n xhr.send();\n }\n catch (e) { }\n return xhr.status >= 200 && xhr.status <= 299;\n}\n// `a.click()` doesn't work for all browsers (#465)\nfunction click(node) {\n try {\n node.dispatchEvent(new MouseEvent('click'));\n }\n catch (e) {\n const evt = document.createEvent('MouseEvents');\n evt.initMouseEvent('click', true, true, window, 0, 0, 0, 80, 20, false, false, false, false, 0, null);\n node.dispatchEvent(evt);\n }\n}\nconst _navigator = \n typeof navigator === 'object' ? navigator : { userAgent: '' };\n// Detect WebView inside a native macOS app by ruling out all browsers\n// We just need to check for 'Safari' because all other browsers (besides Firefox) include that too\n// https://www.whatismybrowser.com/guides/the-latest-user-agent/macos\nconst isMacOSWebView = /*#__PURE__*/ (() => /Macintosh/.test(_navigator.userAgent) &&\n /AppleWebKit/.test(_navigator.userAgent) &&\n !/Safari/.test(_navigator.userAgent))();\nconst saveAs = !IS_CLIENT\n ? () => { } // noop\n : // Use download attribute first if possible (#193 Lumia mobile) unless this is a macOS WebView or mini program\n typeof HTMLAnchorElement !== 'undefined' &&\n 'download' in HTMLAnchorElement.prototype &&\n !isMacOSWebView\n ? downloadSaveAs\n : // Use msSaveOrOpenBlob as a second approach\n 'msSaveOrOpenBlob' in _navigator\n ? msSaveAs\n : // Fallback to using FileReader and a popup\n fileSaverSaveAs;\nfunction downloadSaveAs(blob, name = 'download', opts) {\n const a = document.createElement('a');\n a.download = name;\n a.rel = 'noopener'; // tabnabbing\n // TODO: detect chrome extensions & packaged apps\n // a.target = '_blank'\n if (typeof blob === 'string') {\n // Support regular links\n a.href = blob;\n if (a.origin !== location.origin) {\n if (corsEnabled(a.href)) {\n download(blob, name, opts);\n }\n else {\n a.target = '_blank';\n click(a);\n }\n }\n else {\n click(a);\n }\n }\n else {\n // Support blobs\n a.href = URL.createObjectURL(blob);\n setTimeout(function () {\n URL.revokeObjectURL(a.href);\n }, 4e4); // 40s\n setTimeout(function () {\n click(a);\n }, 0);\n }\n}\nfunction msSaveAs(blob, name = 'download', opts) {\n if (typeof blob === 'string') {\n if (corsEnabled(blob)) {\n download(blob, name, opts);\n }\n else {\n const a = document.createElement('a');\n a.href = blob;\n a.target = '_blank';\n setTimeout(function () {\n click(a);\n });\n }\n }\n else {\n // @ts-ignore: works on windows\n navigator.msSaveOrOpenBlob(bom(blob, opts), name);\n }\n}\nfunction fileSaverSaveAs(blob, name, opts, popup) {\n // Open a popup immediately do go around popup blocker\n // Mostly only available on user interaction and the fileReader is async so...\n popup = popup || open('', '_blank');\n if (popup) {\n popup.document.title = popup.document.body.innerText = 'downloading...';\n }\n if (typeof blob === 'string')\n return download(blob, name, opts);\n const force = blob.type === 'application/octet-stream';\n const isSafari = /constructor/i.test(String(_global.HTMLElement)) || 'safari' in _global;\n const isChromeIOS = /CriOS\\/[\\d]+/.test(navigator.userAgent);\n if ((isChromeIOS || (force && isSafari) || isMacOSWebView) &&\n typeof FileReader !== 'undefined') {\n // Safari doesn't allow downloading of blob URLs\n const reader = new FileReader();\n reader.onloadend = function () {\n let url = reader.result;\n if (typeof url !== 'string') {\n popup = null;\n throw new Error('Wrong reader.result type');\n }\n url = isChromeIOS\n ? url\n : url.replace(/^data:[^;]*;/, 'data:attachment/file;');\n if (popup) {\n popup.location.href = url;\n }\n else {\n location.assign(url);\n }\n popup = null; // reverse-tabnabbing #460\n };\n reader.readAsDataURL(blob);\n }\n else {\n const url = URL.createObjectURL(blob);\n if (popup)\n popup.location.assign(url);\n else\n location.href = url;\n popup = null; // reverse-tabnabbing #460\n setTimeout(function () {\n URL.revokeObjectURL(url);\n }, 4e4); // 40s\n }\n}\n\n/**\n * Shows a toast or console.log\n *\n * @param message - message to log\n * @param type - different color of the tooltip\n */\nfunction toastMessage(message, type) {\n const piniaMessage = '🍍 ' + message;\n if (typeof __VUE_DEVTOOLS_TOAST__ === 'function') {\n // No longer available :(\n __VUE_DEVTOOLS_TOAST__(piniaMessage, type);\n }\n else if (type === 'error') {\n console.error(piniaMessage);\n }\n else if (type === 'warn') {\n console.warn(piniaMessage);\n }\n else {\n console.log(piniaMessage);\n }\n}\nfunction isPinia(o) {\n return '_a' in o && 'install' in o;\n}\n\n/**\n * This file contain devtools actions, they are not Pinia actions.\n */\n// ---\nfunction checkClipboardAccess() {\n if (!('clipboard' in navigator)) {\n toastMessage(`Your browser doesn't support the Clipboard API`, 'error');\n return true;\n }\n}\nfunction checkNotFocusedError(error) {\n if (error instanceof Error &&\n error.message.toLowerCase().includes('document is not focused')) {\n toastMessage('You need to activate the \"Emulate a focused page\" setting in the \"Rendering\" panel of devtools.', 'warn');\n return true;\n }\n return false;\n}\nasync function actionGlobalCopyState(pinia) {\n if (checkClipboardAccess())\n return;\n try {\n await navigator.clipboard.writeText(JSON.stringify(pinia.state.value));\n toastMessage('Global state copied to clipboard.');\n }\n catch (error) {\n if (checkNotFocusedError(error))\n return;\n toastMessage(`Failed to serialize the state. Check the console for more details.`, 'error');\n console.error(error);\n }\n}\nasync function actionGlobalPasteState(pinia) {\n if (checkClipboardAccess())\n return;\n try {\n loadStoresState(pinia, JSON.parse(await navigator.clipboard.readText()));\n toastMessage('Global state pasted from clipboard.');\n }\n catch (error) {\n if (checkNotFocusedError(error))\n return;\n toastMessage(`Failed to deserialize the state from clipboard. Check the console for more details.`, 'error');\n console.error(error);\n }\n}\nasync function actionGlobalSaveState(pinia) {\n try {\n saveAs(new Blob([JSON.stringify(pinia.state.value)], {\n type: 'text/plain;charset=utf-8',\n }), 'pinia-state.json');\n }\n catch (error) {\n toastMessage(`Failed to export the state as JSON. Check the console for more details.`, 'error');\n console.error(error);\n }\n}\nlet fileInput;\nfunction getFileOpener() {\n if (!fileInput) {\n fileInput = document.createElement('input');\n fileInput.type = 'file';\n fileInput.accept = '.json';\n }\n function openFile() {\n return new Promise((resolve, reject) => {\n fileInput.onchange = async () => {\n const files = fileInput.files;\n if (!files)\n return resolve(null);\n const file = files.item(0);\n if (!file)\n return resolve(null);\n return resolve({ text: await file.text(), file });\n };\n // @ts-ignore: TODO: changed from 4.3 to 4.4\n fileInput.oncancel = () => resolve(null);\n fileInput.onerror = reject;\n fileInput.click();\n });\n }\n return openFile;\n}\nasync function actionGlobalOpenStateFile(pinia) {\n try {\n const open = getFileOpener();\n const result = await open();\n if (!result)\n return;\n const { text, file } = result;\n loadStoresState(pinia, JSON.parse(text));\n toastMessage(`Global state imported from \"${file.name}\".`);\n }\n catch (error) {\n toastMessage(`Failed to import the state from JSON. Check the console for more details.`, 'error');\n console.error(error);\n }\n}\nfunction loadStoresState(pinia, state) {\n for (const key in state) {\n const storeState = pinia.state.value[key];\n // store is already instantiated, patch it\n if (storeState) {\n Object.assign(storeState, state[key]);\n }\n else {\n // store is not instantiated, set the initial state\n pinia.state.value[key] = state[key];\n }\n }\n}\n\nfunction formatDisplay(display) {\n return {\n _custom: {\n display,\n },\n };\n}\nconst PINIA_ROOT_LABEL = '🍍 Pinia (root)';\nconst PINIA_ROOT_ID = '_root';\nfunction formatStoreForInspectorTree(store) {\n return isPinia(store)\n ? {\n id: PINIA_ROOT_ID,\n label: PINIA_ROOT_LABEL,\n }\n : {\n id: store.$id,\n label: store.$id,\n };\n}\nfunction formatStoreForInspectorState(store) {\n if (isPinia(store)) {\n const storeNames = Array.from(store._s.keys());\n const storeMap = store._s;\n const state = {\n state: storeNames.map((storeId) => ({\n editable: true,\n key: storeId,\n value: store.state.value[storeId],\n })),\n getters: storeNames\n .filter((id) => storeMap.get(id)._getters)\n .map((id) => {\n const store = storeMap.get(id);\n return {\n editable: false,\n key: id,\n value: store._getters.reduce((getters, key) => {\n getters[key] = store[key];\n return getters;\n }, {}),\n };\n }),\n };\n return state;\n }\n const state = {\n state: Object.keys(store.$state).map((key) => ({\n editable: true,\n key,\n value: store.$state[key],\n })),\n };\n // avoid adding empty getters\n if (store._getters && store._getters.length) {\n state.getters = store._getters.map((getterName) => ({\n editable: false,\n key: getterName,\n value: store[getterName],\n }));\n }\n if (store._customProperties.size) {\n state.customProperties = Array.from(store._customProperties).map((key) => ({\n editable: true,\n key,\n value: store[key],\n }));\n }\n return state;\n}\nfunction formatEventData(events) {\n if (!events)\n return {};\n if (Array.isArray(events)) {\n // TODO: handle add and delete for arrays and objects\n return events.reduce((data, event) => {\n data.keys.push(event.key);\n data.operations.push(event.type);\n data.oldValue[event.key] = event.oldValue;\n data.newValue[event.key] = event.newValue;\n return data;\n }, {\n oldValue: {},\n keys: [],\n operations: [],\n newValue: {},\n });\n }\n else {\n return {\n operation: formatDisplay(events.type),\n key: formatDisplay(events.key),\n oldValue: events.oldValue,\n newValue: events.newValue,\n };\n }\n}\nfunction formatMutationType(type) {\n switch (type) {\n case MutationType.direct:\n return 'mutation';\n case MutationType.patchFunction:\n return '$patch';\n case MutationType.patchObject:\n return '$patch';\n default:\n return 'unknown';\n }\n}\n\n// timeline can be paused when directly changing the state\nlet isTimelineActive = true;\nconst componentStateTypes = [];\nconst MUTATIONS_LAYER_ID = 'pinia:mutations';\nconst INSPECTOR_ID = 'pinia';\nconst { assign: assign$1 } = Object;\n/**\n * Gets the displayed name of a store in devtools\n *\n * @param id - id of the store\n * @returns a formatted string\n */\nconst getStoreType = (id) => '🍍 ' + id;\n/**\n * Add the pinia plugin without any store. Allows displaying a Pinia plugin tab\n * as soon as it is added to the application.\n *\n * @param app - Vue application\n * @param pinia - pinia instance\n */\nfunction registerPiniaDevtools(app, pinia) {\n setupDevtoolsPlugin({\n id: 'dev.esm.pinia',\n label: 'Pinia 🍍',\n logo: 'https://pinia.vuejs.org/logo.svg',\n packageName: 'pinia',\n homepage: 'https://pinia.vuejs.org',\n componentStateTypes,\n app,\n }, (api) => {\n if (typeof api.now !== 'function') {\n toastMessage('You seem to be using an outdated version of Vue Devtools. Are you still using the Beta release instead of the stable one? You can find the links at https://devtools.vuejs.org/guide/installation.html.');\n }\n api.addTimelineLayer({\n id: MUTATIONS_LAYER_ID,\n label: `Pinia 🍍`,\n color: 0xe5df88,\n });\n api.addInspector({\n id: INSPECTOR_ID,\n label: 'Pinia 🍍',\n icon: 'storage',\n treeFilterPlaceholder: 'Search stores',\n actions: [\n {\n icon: 'content_copy',\n action: () => {\n actionGlobalCopyState(pinia);\n },\n tooltip: 'Serialize and copy the state',\n },\n {\n icon: 'content_paste',\n action: async () => {\n await actionGlobalPasteState(pinia);\n api.sendInspectorTree(INSPECTOR_ID);\n api.sendInspectorState(INSPECTOR_ID);\n },\n tooltip: 'Replace the state with the content of your clipboard',\n },\n {\n icon: 'save',\n action: () => {\n actionGlobalSaveState(pinia);\n },\n tooltip: 'Save the state as a JSON file',\n },\n {\n icon: 'folder_open',\n action: async () => {\n await actionGlobalOpenStateFile(pinia);\n api.sendInspectorTree(INSPECTOR_ID);\n api.sendInspectorState(INSPECTOR_ID);\n },\n tooltip: 'Import the state from a JSON file',\n },\n ],\n nodeActions: [\n {\n icon: 'restore',\n tooltip: 'Reset the state (with \"$reset\")',\n action: (nodeId) => {\n const store = pinia._s.get(nodeId);\n if (!store) {\n toastMessage(`Cannot reset \"${nodeId}\" store because it wasn't found.`, 'warn');\n }\n else if (typeof store.$reset !== 'function') {\n toastMessage(`Cannot reset \"${nodeId}\" store because it doesn't have a \"$reset\" method implemented.`, 'warn');\n }\n else {\n store.$reset();\n toastMessage(`Store \"${nodeId}\" reset.`);\n }\n },\n },\n ],\n });\n api.on.inspectComponent((payload, ctx) => {\n const proxy = (payload.componentInstance &&\n payload.componentInstance.proxy);\n if (proxy && proxy._pStores) {\n const piniaStores = payload.componentInstance.proxy._pStores;\n Object.values(piniaStores).forEach((store) => {\n payload.instanceData.state.push({\n type: getStoreType(store.$id),\n key: 'state',\n editable: true,\n value: store._isOptionsAPI\n ? {\n _custom: {\n value: toRaw(store.$state),\n actions: [\n {\n icon: 'restore',\n tooltip: 'Reset the state of this store',\n action: () => store.$reset(),\n },\n ],\n },\n }\n : // NOTE: workaround to unwrap transferred refs\n Object.keys(store.$state).reduce((state, key) => {\n state[key] = store.$state[key];\n return state;\n }, {}),\n });\n if (store._getters && store._getters.length) {\n payload.instanceData.state.push({\n type: getStoreType(store.$id),\n key: 'getters',\n editable: false,\n value: store._getters.reduce((getters, key) => {\n try {\n getters[key] = store[key];\n }\n catch (error) {\n // @ts-expect-error: we just want to show it in devtools\n getters[key] = error;\n }\n return getters;\n }, {}),\n });\n }\n });\n }\n });\n api.on.getInspectorTree((payload) => {\n if (payload.app === app && payload.inspectorId === INSPECTOR_ID) {\n let stores = [pinia];\n stores = stores.concat(Array.from(pinia._s.values()));\n payload.rootNodes = (payload.filter\n ? stores.filter((store) => '$id' in store\n ? store.$id\n .toLowerCase()\n .includes(payload.filter.toLowerCase())\n : PINIA_ROOT_LABEL.toLowerCase().includes(payload.filter.toLowerCase()))\n : stores).map(formatStoreForInspectorTree);\n }\n });\n api.on.getInspectorState((payload) => {\n if (payload.app === app && payload.inspectorId === INSPECTOR_ID) {\n const inspectedStore = payload.nodeId === PINIA_ROOT_ID\n ? pinia\n : pinia._s.get(payload.nodeId);\n if (!inspectedStore) {\n // this could be the selected store restored for a different project\n // so it's better not to say anything here\n return;\n }\n if (inspectedStore) {\n payload.state = formatStoreForInspectorState(inspectedStore);\n }\n }\n });\n api.on.editInspectorState((payload, ctx) => {\n if (payload.app === app && payload.inspectorId === INSPECTOR_ID) {\n const inspectedStore = payload.nodeId === PINIA_ROOT_ID\n ? pinia\n : pinia._s.get(payload.nodeId);\n if (!inspectedStore) {\n return toastMessage(`store \"${payload.nodeId}\" not found`, 'error');\n }\n const { path } = payload;\n if (!isPinia(inspectedStore)) {\n // access only the state\n if (path.length !== 1 ||\n !inspectedStore._customProperties.has(path[0]) ||\n path[0] in inspectedStore.$state) {\n path.unshift('$state');\n }\n }\n else {\n // Root access, we can omit the `.value` because the devtools API does it for us\n path.unshift('state');\n }\n isTimelineActive = false;\n payload.set(inspectedStore, path, payload.state.value);\n isTimelineActive = true;\n }\n });\n api.on.editComponentState((payload) => {\n if (payload.type.startsWith('🍍')) {\n const storeId = payload.type.replace(/^🍍\\s*/, '');\n const store = pinia._s.get(storeId);\n if (!store) {\n return toastMessage(`store \"${storeId}\" not found`, 'error');\n }\n const { path } = payload;\n if (path[0] !== 'state') {\n return toastMessage(`Invalid path for store \"${storeId}\":\\n${path}\\nOnly state can be modified.`);\n }\n // rewrite the first entry to be able to directly set the state as\n // well as any other path\n path[0] = '$state';\n isTimelineActive = false;\n payload.set(store, path, payload.state.value);\n isTimelineActive = true;\n }\n });\n });\n}\nfunction addStoreToDevtools(app, store) {\n if (!componentStateTypes.includes(getStoreType(store.$id))) {\n componentStateTypes.push(getStoreType(store.$id));\n }\n setupDevtoolsPlugin({\n id: 'dev.esm.pinia',\n label: 'Pinia 🍍',\n logo: 'https://pinia.vuejs.org/logo.svg',\n packageName: 'pinia',\n homepage: 'https://pinia.vuejs.org',\n componentStateTypes,\n app,\n settings: {\n logStoreChanges: {\n label: 'Notify about new/deleted stores',\n type: 'boolean',\n defaultValue: true,\n },\n // useEmojis: {\n // label: 'Use emojis in messages ⚡️',\n // type: 'boolean',\n // defaultValue: true,\n // },\n },\n }, (api) => {\n // gracefully handle errors\n const now = typeof api.now === 'function' ? api.now.bind(api) : Date.now;\n store.$onAction(({ after, onError, name, args }) => {\n const groupId = runningActionId++;\n api.addTimelineEvent({\n layerId: MUTATIONS_LAYER_ID,\n event: {\n time: now(),\n title: '🛫 ' + name,\n subtitle: 'start',\n data: {\n store: formatDisplay(store.$id),\n action: formatDisplay(name),\n args,\n },\n groupId,\n },\n });\n after((result) => {\n activeAction = undefined;\n api.addTimelineEvent({\n layerId: MUTATIONS_LAYER_ID,\n event: {\n time: now(),\n title: '🛬 ' + name,\n subtitle: 'end',\n data: {\n store: formatDisplay(store.$id),\n action: formatDisplay(name),\n args,\n result,\n },\n groupId,\n },\n });\n });\n onError((error) => {\n activeAction = undefined;\n api.addTimelineEvent({\n layerId: MUTATIONS_LAYER_ID,\n event: {\n time: now(),\n logType: 'error',\n title: '💥 ' + name,\n subtitle: 'end',\n data: {\n store: formatDisplay(store.$id),\n action: formatDisplay(name),\n args,\n error,\n },\n groupId,\n },\n });\n });\n }, true);\n store._customProperties.forEach((name) => {\n watch(() => unref(store[name]), (newValue, oldValue) => {\n api.notifyComponentUpdate();\n api.sendInspectorState(INSPECTOR_ID);\n if (isTimelineActive) {\n api.addTimelineEvent({\n layerId: MUTATIONS_LAYER_ID,\n event: {\n time: now(),\n title: 'Change',\n subtitle: name,\n data: {\n newValue,\n oldValue,\n },\n groupId: activeAction,\n },\n });\n }\n }, { deep: true });\n });\n store.$subscribe(({ events, type }, state) => {\n api.notifyComponentUpdate();\n api.sendInspectorState(INSPECTOR_ID);\n if (!isTimelineActive)\n return;\n // rootStore.state[store.id] = state\n const eventData = {\n time: now(),\n title: formatMutationType(type),\n data: assign$1({ store: formatDisplay(store.$id) }, formatEventData(events)),\n groupId: activeAction,\n };\n if (type === MutationType.patchFunction) {\n eventData.subtitle = '⤵️';\n }\n else if (type === MutationType.patchObject) {\n eventData.subtitle = '🧩';\n }\n else if (events && !Array.isArray(events)) {\n eventData.subtitle = events.type;\n }\n if (events) {\n eventData.data['rawEvent(s)'] = {\n _custom: {\n display: 'DebuggerEvent',\n type: 'object',\n tooltip: 'raw DebuggerEvent[]',\n value: events,\n },\n };\n }\n api.addTimelineEvent({\n layerId: MUTATIONS_LAYER_ID,\n event: eventData,\n });\n }, { detached: true, flush: 'sync' });\n const hotUpdate = store._hotUpdate;\n store._hotUpdate = markRaw((newStore) => {\n hotUpdate(newStore);\n api.addTimelineEvent({\n layerId: MUTATIONS_LAYER_ID,\n event: {\n time: now(),\n title: '🔥 ' + store.$id,\n subtitle: 'HMR update',\n data: {\n store: formatDisplay(store.$id),\n info: formatDisplay(`HMR update`),\n },\n },\n });\n // update the devtools too\n api.notifyComponentUpdate();\n api.sendInspectorTree(INSPECTOR_ID);\n api.sendInspectorState(INSPECTOR_ID);\n });\n const { $dispose } = store;\n store.$dispose = () => {\n $dispose();\n api.notifyComponentUpdate();\n api.sendInspectorTree(INSPECTOR_ID);\n api.sendInspectorState(INSPECTOR_ID);\n api.getSettings().logStoreChanges &&\n toastMessage(`Disposed \"${store.$id}\" store 🗑`);\n };\n // trigger an update so it can display new registered stores\n api.notifyComponentUpdate();\n api.sendInspectorTree(INSPECTOR_ID);\n api.sendInspectorState(INSPECTOR_ID);\n api.getSettings().logStoreChanges &&\n toastMessage(`\"${store.$id}\" store installed 🆕`);\n });\n}\nlet runningActionId = 0;\nlet activeAction;\n/**\n * Patches a store to enable action grouping in devtools by wrapping the store with a Proxy that is passed as the\n * context of all actions, allowing us to set `runningAction` on each access and effectively associating any state\n * mutation to the action.\n *\n * @param store - store to patch\n * @param actionNames - list of actionst to patch\n */\nfunction patchActionForGrouping(store, actionNames, wrapWithProxy) {\n // original actions of the store as they are given by pinia. We are going to override them\n const actions = actionNames.reduce((storeActions, actionName) => {\n // use toRaw to avoid tracking #541\n storeActions[actionName] = toRaw(store)[actionName];\n return storeActions;\n }, {});\n for (const actionName in actions) {\n store[actionName] = function () {\n // the running action id is incremented in a before action hook\n const _actionId = runningActionId;\n const trackedStore = wrapWithProxy\n ? new Proxy(store, {\n get(...args) {\n activeAction = _actionId;\n return Reflect.get(...args);\n },\n set(...args) {\n activeAction = _actionId;\n return Reflect.set(...args);\n },\n })\n : store;\n // For Setup Stores we need https://github.com/tc39/proposal-async-context\n activeAction = _actionId;\n const retValue = actions[actionName].apply(trackedStore, arguments);\n // this is safer as async actions in Setup Stores would associate mutations done outside of the action\n activeAction = undefined;\n return retValue;\n };\n }\n}\n/**\n * pinia.use(devtoolsPlugin)\n */\nfunction devtoolsPlugin({ app, store, options }) {\n // HMR module\n if (store.$id.startsWith('__hot:')) {\n return;\n }\n // detect option api vs setup api\n store._isOptionsAPI = !!options.state;\n patchActionForGrouping(store, Object.keys(options.actions), store._isOptionsAPI);\n // Upgrade the HMR to also update the new actions\n const originalHotUpdate = store._hotUpdate;\n toRaw(store)._hotUpdate = function (newStore) {\n originalHotUpdate.apply(this, arguments);\n patchActionForGrouping(store, Object.keys(newStore._hmrPayload.actions), !!store._isOptionsAPI);\n };\n addStoreToDevtools(app, \n // FIXME: is there a way to allow the assignment from Store to StoreGeneric?\n store);\n}\n\n/**\n * Creates a Pinia instance to be used by the application\n */\nfunction createPinia() {\n const scope = effectScope(true);\n // NOTE: here we could check the window object for a state and directly set it\n // if there is anything like it with Vue 3 SSR\n const state = scope.run(() => ref({}));\n let _p = [];\n // plugins added before calling app.use(pinia)\n let toBeInstalled = [];\n const pinia = markRaw({\n install(app) {\n // this allows calling useStore() outside of a component setup after\n // installing pinia's plugin\n setActivePinia(pinia);\n if (!isVue2) {\n pinia._a = app;\n app.provide(piniaSymbol, pinia);\n app.config.globalProperties.$pinia = pinia;\n /* istanbul ignore else */\n if (USE_DEVTOOLS) {\n registerPiniaDevtools(app, pinia);\n }\n toBeInstalled.forEach((plugin) => _p.push(plugin));\n toBeInstalled = [];\n }\n },\n use(plugin) {\n if (!this._a && !isVue2) {\n toBeInstalled.push(plugin);\n }\n else {\n _p.push(plugin);\n }\n return this;\n },\n _p,\n // it's actually undefined here\n // @ts-expect-error\n _a: null,\n _e: scope,\n _s: new Map(),\n state,\n });\n // pinia devtools rely on dev only features so they cannot be forced unless\n // the dev build of Vue is used. Avoid old browsers like IE11.\n if (USE_DEVTOOLS && typeof Proxy !== 'undefined') {\n pinia.use(devtoolsPlugin);\n }\n return pinia;\n}\n\n/**\n * Checks if a function is a `StoreDefinition`.\n *\n * @param fn - object to test\n * @returns true if `fn` is a StoreDefinition\n */\nconst isUseStore = (fn) => {\n return typeof fn === 'function' && typeof fn.$id === 'string';\n};\n/**\n * Mutates in place `newState` with `oldState` to _hot update_ it. It will\n * remove any key not existing in `newState` and recursively merge plain\n * objects.\n *\n * @param newState - new state object to be patched\n * @param oldState - old state that should be used to patch newState\n * @returns - newState\n */\nfunction patchObject(newState, oldState) {\n // no need to go through symbols because they cannot be serialized anyway\n for (const key in oldState) {\n const subPatch = oldState[key];\n // skip the whole sub tree\n if (!(key in newState)) {\n continue;\n }\n const targetValue = newState[key];\n if (isPlainObject(targetValue) &&\n isPlainObject(subPatch) &&\n !isRef(subPatch) &&\n !isReactive(subPatch)) {\n newState[key] = patchObject(targetValue, subPatch);\n }\n else {\n // objects are either a bit more complex (e.g. refs) or primitives, so we\n // just set the whole thing\n if (isVue2) {\n set(newState, key, subPatch);\n }\n else {\n newState[key] = subPatch;\n }\n }\n }\n return newState;\n}\n/**\n * Creates an _accept_ function to pass to `import.meta.hot` in Vite applications.\n *\n * @example\n * ```js\n * const useUser = defineStore(...)\n * if (import.meta.hot) {\n * import.meta.hot.accept(acceptHMRUpdate(useUser, import.meta.hot))\n * }\n * ```\n *\n * @param initialUseStore - return of the defineStore to hot update\n * @param hot - `import.meta.hot`\n */\nfunction acceptHMRUpdate(initialUseStore, hot) {\n // strip as much as possible from iife.prod\n if (!(process.env.NODE_ENV !== 'production')) {\n return () => { };\n }\n return (newModule) => {\n const pinia = hot.data.pinia || initialUseStore._pinia;\n if (!pinia) {\n // this store is still not used\n return;\n }\n // preserve the pinia instance across loads\n hot.data.pinia = pinia;\n // console.log('got data', newStore)\n for (const exportName in newModule) {\n const useStore = newModule[exportName];\n // console.log('checking for', exportName)\n if (isUseStore(useStore) && pinia._s.has(useStore.$id)) {\n // console.log('Accepting update for', useStore.$id)\n const id = useStore.$id;\n if (id !== initialUseStore.$id) {\n console.warn(`The id of the store changed from \"${initialUseStore.$id}\" to \"${id}\". Reloading.`);\n // return import.meta.hot.invalidate()\n return hot.invalidate();\n }\n const existingStore = pinia._s.get(id);\n if (!existingStore) {\n console.log(`[Pinia]: skipping hmr because store doesn't exist yet`);\n return;\n }\n useStore(pinia, existingStore);\n }\n }\n };\n}\n\nconst noop = () => { };\nfunction addSubscription(subscriptions, callback, detached, onCleanup = noop) {\n subscriptions.push(callback);\n const removeSubscription = () => {\n const idx = subscriptions.indexOf(callback);\n if (idx > -1) {\n subscriptions.splice(idx, 1);\n onCleanup();\n }\n };\n if (!detached && getCurrentScope()) {\n onScopeDispose(removeSubscription);\n }\n return removeSubscription;\n}\nfunction triggerSubscriptions(subscriptions, ...args) {\n subscriptions.slice().forEach((callback) => {\n callback(...args);\n });\n}\n\nconst fallbackRunWithContext = (fn) => fn();\nfunction mergeReactiveObjects(target, patchToApply) {\n // Handle Map instances\n if (target instanceof Map && patchToApply instanceof Map) {\n patchToApply.forEach((value, key) => target.set(key, value));\n }\n // Handle Set instances\n if (target instanceof Set && patchToApply instanceof Set) {\n patchToApply.forEach(target.add, target);\n }\n // no need to go through symbols because they cannot be serialized anyway\n for (const key in patchToApply) {\n if (!patchToApply.hasOwnProperty(key))\n continue;\n const subPatch = patchToApply[key];\n const targetValue = target[key];\n if (isPlainObject(targetValue) &&\n isPlainObject(subPatch) &&\n target.hasOwnProperty(key) &&\n !isRef(subPatch) &&\n !isReactive(subPatch)) {\n // NOTE: here I wanted to warn about inconsistent types but it's not possible because in setup stores one might\n // start the value of a property as a certain type e.g. a Map, and then for some reason, during SSR, change that\n // to `undefined`. When trying to hydrate, we want to override the Map with `undefined`.\n target[key] = mergeReactiveObjects(targetValue, subPatch);\n }\n else {\n // @ts-expect-error: subPatch is a valid value\n target[key] = subPatch;\n }\n }\n return target;\n}\nconst skipHydrateSymbol = (process.env.NODE_ENV !== 'production')\n ? Symbol('pinia:skipHydration')\n : /* istanbul ignore next */ Symbol();\nconst skipHydrateMap = /*#__PURE__*/ new WeakMap();\n/**\n * Tells Pinia to skip the hydration process of a given object. This is useful in setup stores (only) when you return a\n * stateful object in the store but it isn't really state. e.g. returning a router instance in a setup store.\n *\n * @param obj - target object\n * @returns obj\n */\nfunction skipHydrate(obj) {\n return isVue2\n ? // in @vue/composition-api, the refs are sealed so defineProperty doesn't work...\n /* istanbul ignore next */ skipHydrateMap.set(obj, 1) && obj\n : Object.defineProperty(obj, skipHydrateSymbol, {});\n}\n/**\n * Returns whether a value should be hydrated\n *\n * @param obj - target variable\n * @returns true if `obj` should be hydrated\n */\nfunction shouldHydrate(obj) {\n return isVue2\n ? /* istanbul ignore next */ !skipHydrateMap.has(obj)\n : !isPlainObject(obj) || !obj.hasOwnProperty(skipHydrateSymbol);\n}\nconst { assign } = Object;\nfunction isComputed(o) {\n return !!(isRef(o) && o.effect);\n}\nfunction createOptionsStore(id, options, pinia, hot) {\n const { state, actions, getters } = options;\n const initialState = pinia.state.value[id];\n let store;\n function setup() {\n if (!initialState && (!(process.env.NODE_ENV !== 'production') || !hot)) {\n /* istanbul ignore if */\n if (isVue2) {\n set(pinia.state.value, id, state ? state() : {});\n }\n else {\n pinia.state.value[id] = state ? state() : {};\n }\n }\n // avoid creating a state in pinia.state.value\n const localState = (process.env.NODE_ENV !== 'production') && hot\n ? // use ref() to unwrap refs inside state TODO: check if this is still necessary\n toRefs(ref(state ? state() : {}).value)\n : toRefs(pinia.state.value[id]);\n return assign(localState, actions, Object.keys(getters || {}).reduce((computedGetters, name) => {\n if ((process.env.NODE_ENV !== 'production') && name in localState) {\n console.warn(`[🍍]: A getter cannot have the same name as another state property. Rename one of them. Found with \"${name}\" in store \"${id}\".`);\n }\n computedGetters[name] = markRaw(computed(() => {\n setActivePinia(pinia);\n // it was created just before\n const store = pinia._s.get(id);\n // allow cross using stores\n /* istanbul ignore next */\n if (isVue2 && !store._r)\n return;\n // @ts-expect-error\n // return getters![name].call(context, context)\n // TODO: avoid reading the getter while assigning with a global variable\n return getters[name].call(store, store);\n }));\n return computedGetters;\n }, {}));\n }\n store = createSetupStore(id, setup, options, pinia, hot, true);\n return store;\n}\nfunction createSetupStore($id, setup, options = {}, pinia, hot, isOptionsStore) {\n let scope;\n const optionsForPlugin = assign({ actions: {} }, options);\n /* istanbul ignore if */\n if ((process.env.NODE_ENV !== 'production') && !pinia._e.active) {\n throw new Error('Pinia destroyed');\n }\n // watcher options for $subscribe\n const $subscribeOptions = {\n deep: true,\n // flush: 'post',\n };\n /* istanbul ignore else */\n if ((process.env.NODE_ENV !== 'production') && !isVue2) {\n $subscribeOptions.onTrigger = (event) => {\n /* istanbul ignore else */\n if (isListening) {\n debuggerEvents = event;\n // avoid triggering this while the store is being built and the state is being set in pinia\n }\n else if (isListening == false && !store._hotUpdating) {\n // let patch send all the events together later\n /* istanbul ignore else */\n if (Array.isArray(debuggerEvents)) {\n debuggerEvents.push(event);\n }\n else {\n console.error('🍍 debuggerEvents should be an array. This is most likely an internal Pinia bug.');\n }\n }\n };\n }\n // internal state\n let isListening; // set to true at the end\n let isSyncListening; // set to true at the end\n let subscriptions = [];\n let actionSubscriptions = [];\n let debuggerEvents;\n const initialState = pinia.state.value[$id];\n // avoid setting the state for option stores if it is set\n // by the setup\n if (!isOptionsStore && !initialState && (!(process.env.NODE_ENV !== 'production') || !hot)) {\n /* istanbul ignore if */\n if (isVue2) {\n set(pinia.state.value, $id, {});\n }\n else {\n pinia.state.value[$id] = {};\n }\n }\n const hotState = ref({});\n // avoid triggering too many listeners\n // https://github.com/vuejs/pinia/issues/1129\n let activeListener;\n function $patch(partialStateOrMutator) {\n let subscriptionMutation;\n isListening = isSyncListening = false;\n // reset the debugger events since patches are sync\n /* istanbul ignore else */\n if ((process.env.NODE_ENV !== 'production')) {\n debuggerEvents = [];\n }\n if (typeof partialStateOrMutator === 'function') {\n partialStateOrMutator(pinia.state.value[$id]);\n subscriptionMutation = {\n type: MutationType.patchFunction,\n storeId: $id,\n events: debuggerEvents,\n };\n }\n else {\n mergeReactiveObjects(pinia.state.value[$id], partialStateOrMutator);\n subscriptionMutation = {\n type: MutationType.patchObject,\n payload: partialStateOrMutator,\n storeId: $id,\n events: debuggerEvents,\n };\n }\n const myListenerId = (activeListener = Symbol());\n nextTick().then(() => {\n if (activeListener === myListenerId) {\n isListening = true;\n }\n });\n isSyncListening = true;\n // because we paused the watcher, we need to manually call the subscriptions\n triggerSubscriptions(subscriptions, subscriptionMutation, pinia.state.value[$id]);\n }\n const $reset = isOptionsStore\n ? function $reset() {\n const { state } = options;\n const newState = state ? state() : {};\n // we use a patch to group all changes into one single subscription\n this.$patch(($state) => {\n assign($state, newState);\n });\n }\n : /* istanbul ignore next */\n (process.env.NODE_ENV !== 'production')\n ? () => {\n throw new Error(`🍍: Store \"${$id}\" is built using the setup syntax and does not implement $reset().`);\n }\n : noop;\n function $dispose() {\n scope.stop();\n subscriptions = [];\n actionSubscriptions = [];\n pinia._s.delete($id);\n }\n /**\n * Wraps an action to handle subscriptions.\n *\n * @param name - name of the action\n * @param action - action to wrap\n * @returns a wrapped action to handle subscriptions\n */\n function wrapAction(name, action) {\n return function () {\n setActivePinia(pinia);\n const args = Array.from(arguments);\n const afterCallbackList = [];\n const onErrorCallbackList = [];\n function after(callback) {\n afterCallbackList.push(callback);\n }\n function onError(callback) {\n onErrorCallbackList.push(callback);\n }\n // @ts-expect-error\n triggerSubscriptions(actionSubscriptions, {\n args,\n name,\n store,\n after,\n onError,\n });\n let ret;\n try {\n ret = action.apply(this && this.$id === $id ? this : store, args);\n // handle sync errors\n }\n catch (error) {\n triggerSubscriptions(onErrorCallbackList, error);\n throw error;\n }\n if (ret instanceof Promise) {\n return ret\n .then((value) => {\n triggerSubscriptions(afterCallbackList, value);\n return value;\n })\n .catch((error) => {\n triggerSubscriptions(onErrorCallbackList, error);\n return Promise.reject(error);\n });\n }\n // trigger after callbacks\n triggerSubscriptions(afterCallbackList, ret);\n return ret;\n };\n }\n const _hmrPayload = /*#__PURE__*/ markRaw({\n actions: {},\n getters: {},\n state: [],\n hotState,\n });\n const partialStore = {\n _p: pinia,\n // _s: scope,\n $id,\n $onAction: addSubscription.bind(null, actionSubscriptions),\n $patch,\n $reset,\n $subscribe(callback, options = {}) {\n const removeSubscription = addSubscription(subscriptions, callback, options.detached, () => stopWatcher());\n const stopWatcher = scope.run(() => watch(() => pinia.state.value[$id], (state) => {\n if (options.flush === 'sync' ? isSyncListening : isListening) {\n callback({\n storeId: $id,\n type: MutationType.direct,\n events: debuggerEvents,\n }, state);\n }\n }, assign({}, $subscribeOptions, options)));\n return removeSubscription;\n },\n $dispose,\n };\n /* istanbul ignore if */\n if (isVue2) {\n // start as non ready\n partialStore._r = false;\n }\n const store = reactive((process.env.NODE_ENV !== 'production') || USE_DEVTOOLS\n ? assign({\n _hmrPayload,\n _customProperties: markRaw(new Set()), // devtools custom properties\n }, partialStore\n // must be added later\n // setupStore\n )\n : partialStore);\n // store the partial store now so the setup of stores can instantiate each other before they are finished without\n // creating infinite loops.\n pinia._s.set($id, store);\n const runWithContext = (pinia._a && pinia._a.runWithContext) || fallbackRunWithContext;\n // TODO: idea create skipSerialize that marks properties as non serializable and they are skipped\n const setupStore = runWithContext(() => pinia._e.run(() => (scope = effectScope()).run(setup)));\n // overwrite existing actions to support $onAction\n for (const key in setupStore) {\n const prop = setupStore[key];\n if ((isRef(prop) && !isComputed(prop)) || isReactive(prop)) {\n // mark it as a piece of state to be serialized\n if ((process.env.NODE_ENV !== 'production') && hot) {\n set(hotState.value, key, toRef(setupStore, key));\n // createOptionStore directly sets the state in pinia.state.value so we\n // can just skip that\n }\n else if (!isOptionsStore) {\n // in setup stores we must hydrate the state and sync pinia state tree with the refs the user just created\n if (initialState && shouldHydrate(prop)) {\n if (isRef(prop)) {\n prop.value = initialState[key];\n }\n else {\n // probably a reactive object, lets recursively assign\n // @ts-expect-error: prop is unknown\n mergeReactiveObjects(prop, initialState[key]);\n }\n }\n // transfer the ref to the pinia state to keep everything in sync\n /* istanbul ignore if */\n if (isVue2) {\n set(pinia.state.value[$id], key, prop);\n }\n else {\n pinia.state.value[$id][key] = prop;\n }\n }\n /* istanbul ignore else */\n if ((process.env.NODE_ENV !== 'production')) {\n _hmrPayload.state.push(key);\n }\n // action\n }\n else if (typeof prop === 'function') {\n // @ts-expect-error: we are overriding the function we avoid wrapping if\n const actionValue = (process.env.NODE_ENV !== 'production') && hot ? prop : wrapAction(key, prop);\n // this a hot module replacement store because the hotUpdate method needs\n // to do it with the right context\n /* istanbul ignore if */\n if (isVue2) {\n set(setupStore, key, actionValue);\n }\n else {\n // @ts-expect-error\n setupStore[key] = actionValue;\n }\n /* istanbul ignore else */\n if ((process.env.NODE_ENV !== 'production')) {\n _hmrPayload.actions[key] = prop;\n }\n // list actions so they can be used in plugins\n // @ts-expect-error\n optionsForPlugin.actions[key] = prop;\n }\n else if ((process.env.NODE_ENV !== 'production')) {\n // add getters for devtools\n if (isComputed(prop)) {\n _hmrPayload.getters[key] = isOptionsStore\n ? // @ts-expect-error\n options.getters[key]\n : prop;\n if (IS_CLIENT) {\n const getters = setupStore._getters ||\n // @ts-expect-error: same\n (setupStore._getters = markRaw([]));\n getters.push(key);\n }\n }\n }\n }\n // add the state, getters, and action properties\n /* istanbul ignore if */\n if (isVue2) {\n Object.keys(setupStore).forEach((key) => {\n set(store, key, setupStore[key]);\n });\n }\n else {\n assign(store, setupStore);\n // allows retrieving reactive objects with `storeToRefs()`. Must be called after assigning to the reactive object.\n // Make `storeToRefs()` work with `reactive()` #799\n assign(toRaw(store), setupStore);\n }\n // use this instead of a computed with setter to be able to create it anywhere\n // without linking the computed lifespan to wherever the store is first\n // created.\n Object.defineProperty(store, '$state', {\n get: () => ((process.env.NODE_ENV !== 'production') && hot ? hotState.value : pinia.state.value[$id]),\n set: (state) => {\n /* istanbul ignore if */\n if ((process.env.NODE_ENV !== 'production') && hot) {\n throw new Error('cannot set hotState');\n }\n $patch(($state) => {\n assign($state, state);\n });\n },\n });\n // add the hotUpdate before plugins to allow them to override it\n /* istanbul ignore else */\n if ((process.env.NODE_ENV !== 'production')) {\n store._hotUpdate = markRaw((newStore) => {\n store._hotUpdating = true;\n newStore._hmrPayload.state.forEach((stateKey) => {\n if (stateKey in store.$state) {\n const newStateTarget = newStore.$state[stateKey];\n const oldStateSource = store.$state[stateKey];\n if (typeof newStateTarget === 'object' &&\n isPlainObject(newStateTarget) &&\n isPlainObject(oldStateSource)) {\n patchObject(newStateTarget, oldStateSource);\n }\n else {\n // transfer the ref\n newStore.$state[stateKey] = oldStateSource;\n }\n }\n // patch direct access properties to allow store.stateProperty to work as\n // store.$state.stateProperty\n set(store, stateKey, toRef(newStore.$state, stateKey));\n });\n // remove deleted state properties\n Object.keys(store.$state).forEach((stateKey) => {\n if (!(stateKey in newStore.$state)) {\n del(store, stateKey);\n }\n });\n // avoid devtools logging this as a mutation\n isListening = false;\n isSyncListening = false;\n pinia.state.value[$id] = toRef(newStore._hmrPayload, 'hotState');\n isSyncListening = true;\n nextTick().then(() => {\n isListening = true;\n });\n for (const actionName in newStore._hmrPayload.actions) {\n const action = newStore[actionName];\n set(store, actionName, wrapAction(actionName, action));\n }\n // TODO: does this work in both setup and option store?\n for (const getterName in newStore._hmrPayload.getters) {\n const getter = newStore._hmrPayload.getters[getterName];\n const getterValue = isOptionsStore\n ? // special handling of options api\n computed(() => {\n setActivePinia(pinia);\n return getter.call(store, store);\n })\n : getter;\n set(store, getterName, getterValue);\n }\n // remove deleted getters\n Object.keys(store._hmrPayload.getters).forEach((key) => {\n if (!(key in newStore._hmrPayload.getters)) {\n del(store, key);\n }\n });\n // remove old actions\n Object.keys(store._hmrPayload.actions).forEach((key) => {\n if (!(key in newStore._hmrPayload.actions)) {\n del(store, key);\n }\n });\n // update the values used in devtools and to allow deleting new properties later on\n store._hmrPayload = newStore._hmrPayload;\n store._getters = newStore._getters;\n store._hotUpdating = false;\n });\n }\n if (USE_DEVTOOLS) {\n const nonEnumerable = {\n writable: true,\n configurable: true,\n // avoid warning on devtools trying to display this property\n enumerable: false,\n };\n ['_p', '_hmrPayload', '_getters', '_customProperties'].forEach((p) => {\n Object.defineProperty(store, p, assign({ value: store[p] }, nonEnumerable));\n });\n }\n /* istanbul ignore if */\n if (isVue2) {\n // mark the store as ready before plugins\n store._r = true;\n }\n // apply all plugins\n pinia._p.forEach((extender) => {\n /* istanbul ignore else */\n if (USE_DEVTOOLS) {\n const extensions = scope.run(() => extender({\n store,\n app: pinia._a,\n pinia,\n options: optionsForPlugin,\n }));\n Object.keys(extensions || {}).forEach((key) => store._customProperties.add(key));\n assign(store, extensions);\n }\n else {\n assign(store, scope.run(() => extender({\n store,\n app: pinia._a,\n pinia,\n options: optionsForPlugin,\n })));\n }\n });\n if ((process.env.NODE_ENV !== 'production') &&\n store.$state &&\n typeof store.$state === 'object' &&\n typeof store.$state.constructor === 'function' &&\n !store.$state.constructor.toString().includes('[native code]')) {\n console.warn(`[🍍]: The \"state\" must be a plain object. It cannot be\\n` +\n `\\tstate: () => new MyClass()\\n` +\n `Found in store \"${store.$id}\".`);\n }\n // only apply hydrate to option stores with an initial state in pinia\n if (initialState &&\n isOptionsStore &&\n options.hydrate) {\n options.hydrate(store.$state, initialState);\n }\n isListening = true;\n isSyncListening = true;\n return store;\n}\nfunction defineStore(\n// TODO: add proper types from above\nidOrOptions, setup, setupOptions) {\n let id;\n let options;\n const isSetupStore = typeof setup === 'function';\n if (typeof idOrOptions === 'string') {\n id = idOrOptions;\n // the option store setup will contain the actual options in this case\n options = isSetupStore ? setupOptions : setup;\n }\n else {\n options = idOrOptions;\n id = idOrOptions.id;\n if ((process.env.NODE_ENV !== 'production') && typeof id !== 'string') {\n throw new Error(`[🍍]: \"defineStore()\" must be passed a store id as its first argument.`);\n }\n }\n function useStore(pinia, hot) {\n const hasContext = hasInjectionContext();\n pinia =\n // in test mode, ignore the argument provided as we can always retrieve a\n // pinia instance with getActivePinia()\n ((process.env.NODE_ENV === 'test') && activePinia && activePinia._testing ? null : pinia) ||\n (hasContext ? inject(piniaSymbol, null) : null);\n if (pinia)\n setActivePinia(pinia);\n if ((process.env.NODE_ENV !== 'production') && !activePinia) {\n throw new Error(`[🍍]: \"getActivePinia()\" was called but there was no active Pinia. Are you trying to use a store before calling \"app.use(pinia)\"?\\n` +\n `See https://pinia.vuejs.org/core-concepts/outside-component-usage.html for help.\\n` +\n `This will fail in production.`);\n }\n pinia = activePinia;\n if (!pinia._s.has(id)) {\n // creating the store registers it in `pinia._s`\n if (isSetupStore) {\n createSetupStore(id, setup, options, pinia);\n }\n else {\n createOptionsStore(id, options, pinia);\n }\n /* istanbul ignore else */\n if ((process.env.NODE_ENV !== 'production')) {\n // @ts-expect-error: not the right inferred type\n useStore._pinia = pinia;\n }\n }\n const store = pinia._s.get(id);\n if ((process.env.NODE_ENV !== 'production') && hot) {\n const hotId = '__hot:' + id;\n const newStore = isSetupStore\n ? createSetupStore(hotId, setup, options, pinia, true)\n : createOptionsStore(hotId, assign({}, options), pinia, true);\n hot._hotUpdate(newStore);\n // cleanup the state properties and the store from the cache\n delete pinia.state.value[hotId];\n pinia._s.delete(hotId);\n }\n if ((process.env.NODE_ENV !== 'production') && IS_CLIENT) {\n const currentInstance = getCurrentInstance();\n // save stores in instances to access them devtools\n if (currentInstance &&\n currentInstance.proxy &&\n // avoid adding stores that are just built for hot module replacement\n !hot) {\n const vm = currentInstance.proxy;\n const cache = '_pStores' in vm ? vm._pStores : (vm._pStores = {});\n cache[id] = store;\n }\n }\n // StoreGeneric cannot be casted towards Store\n return store;\n }\n useStore.$id = id;\n return useStore;\n}\n\nlet mapStoreSuffix = 'Store';\n/**\n * Changes the suffix added by `mapStores()`. Can be set to an empty string.\n * Defaults to `\"Store\"`. Make sure to extend the MapStoresCustomization\n * interface if you are using TypeScript.\n *\n * @param suffix - new suffix\n */\nfunction setMapStoreSuffix(suffix // could be 'Store' but that would be annoying for JS\n) {\n mapStoreSuffix = suffix;\n}\n/**\n * Allows using stores without the composition API (`setup()`) by generating an\n * object to be spread in the `computed` field of a component. It accepts a list\n * of store definitions.\n *\n * @example\n * ```js\n * export default {\n * computed: {\n * // other computed properties\n * ...mapStores(useUserStore, useCartStore)\n * },\n *\n * created() {\n * this.userStore // store with id \"user\"\n * this.cartStore // store with id \"cart\"\n * }\n * }\n * ```\n *\n * @param stores - list of stores to map to an object\n */\nfunction mapStores(...stores) {\n if ((process.env.NODE_ENV !== 'production') && Array.isArray(stores[0])) {\n console.warn(`[🍍]: Directly pass all stores to \"mapStores()\" without putting them in an array:\\n` +\n `Replace\\n` +\n `\\tmapStores([useAuthStore, useCartStore])\\n` +\n `with\\n` +\n `\\tmapStores(useAuthStore, useCartStore)\\n` +\n `This will fail in production if not fixed.`);\n stores = stores[0];\n }\n return stores.reduce((reduced, useStore) => {\n // @ts-expect-error: $id is added by defineStore\n reduced[useStore.$id + mapStoreSuffix] = function () {\n return useStore(this.$pinia);\n };\n return reduced;\n }, {});\n}\n/**\n * Allows using state and getters from one store without using the composition\n * API (`setup()`) by generating an object to be spread in the `computed` field\n * of a component.\n *\n * @param useStore - store to map from\n * @param keysOrMapper - array or object\n */\nfunction mapState(useStore, keysOrMapper) {\n return Array.isArray(keysOrMapper)\n ? keysOrMapper.reduce((reduced, key) => {\n reduced[key] = function () {\n return useStore(this.$pinia)[key];\n };\n return reduced;\n }, {})\n : Object.keys(keysOrMapper).reduce((reduced, key) => {\n // @ts-expect-error\n reduced[key] = function () {\n const store = useStore(this.$pinia);\n const storeKey = keysOrMapper[key];\n // for some reason TS is unable to infer the type of storeKey to be a\n // function\n return typeof storeKey === 'function'\n ? storeKey.call(this, store)\n : store[storeKey];\n };\n return reduced;\n }, {});\n}\n/**\n * Alias for `mapState()`. You should use `mapState()` instead.\n * @deprecated use `mapState()` instead.\n */\nconst mapGetters = mapState;\n/**\n * Allows directly using actions from your store without using the composition\n * API (`setup()`) by generating an object to be spread in the `methods` field\n * of a component.\n *\n * @param useStore - store to map from\n * @param keysOrMapper - array or object\n */\nfunction mapActions(useStore, keysOrMapper) {\n return Array.isArray(keysOrMapper)\n ? keysOrMapper.reduce((reduced, key) => {\n // @ts-expect-error\n reduced[key] = function (...args) {\n return useStore(this.$pinia)[key](...args);\n };\n return reduced;\n }, {})\n : Object.keys(keysOrMapper).reduce((reduced, key) => {\n // @ts-expect-error\n reduced[key] = function (...args) {\n return useStore(this.$pinia)[keysOrMapper[key]](...args);\n };\n return reduced;\n }, {});\n}\n/**\n * Allows using state and getters from one store without using the composition\n * API (`setup()`) by generating an object to be spread in the `computed` field\n * of a component.\n *\n * @param useStore - store to map from\n * @param keysOrMapper - array or object\n */\nfunction mapWritableState(useStore, keysOrMapper) {\n return Array.isArray(keysOrMapper)\n ? keysOrMapper.reduce((reduced, key) => {\n // @ts-ignore\n reduced[key] = {\n get() {\n return useStore(this.$pinia)[key];\n },\n set(value) {\n // it's easier to type it here as any\n return (useStore(this.$pinia)[key] = value);\n },\n };\n return reduced;\n }, {})\n : Object.keys(keysOrMapper).reduce((reduced, key) => {\n // @ts-ignore\n reduced[key] = {\n get() {\n return useStore(this.$pinia)[keysOrMapper[key]];\n },\n set(value) {\n // it's easier to type it here as any\n return (useStore(this.$pinia)[keysOrMapper[key]] = value);\n },\n };\n return reduced;\n }, {});\n}\n\n/**\n * Creates an object of references with all the state, getters, and plugin-added\n * state properties of the store. Similar to `toRefs()` but specifically\n * designed for Pinia stores so methods and non reactive properties are\n * completely ignored.\n *\n * @param store - store to extract the refs from\n */\nfunction storeToRefs(store) {\n // See https://github.com/vuejs/pinia/issues/852\n // It's easier to just use toRefs() even if it includes more stuff\n if (isVue2) {\n // @ts-expect-error: toRefs include methods and others\n return toRefs(store);\n }\n else {\n store = toRaw(store);\n const refs = {};\n for (const key in store) {\n const value = store[key];\n if (isRef(value) || isReactive(value)) {\n // @ts-expect-error: the key is state or getter\n refs[key] =\n // ---\n toRef(store, key);\n }\n }\n return refs;\n }\n}\n\n/**\n * Vue 2 Plugin that must be installed for pinia to work. Note **you don't need\n * this plugin if you are using Nuxt.js**. Use the `buildModule` instead:\n * https://pinia.vuejs.org/ssr/nuxt.html.\n *\n * @example\n * ```js\n * import Vue from 'vue'\n * import { PiniaVuePlugin, createPinia } from 'pinia'\n *\n * Vue.use(PiniaVuePlugin)\n * const pinia = createPinia()\n *\n * new Vue({\n * el: '#app',\n * // ...\n * pinia,\n * })\n * ```\n *\n * @param _Vue - `Vue` imported from 'vue'.\n */\nconst PiniaVuePlugin = function (_Vue) {\n // Equivalent of\n // app.config.globalProperties.$pinia = pinia\n _Vue.mixin({\n beforeCreate() {\n const options = this.$options;\n if (options.pinia) {\n const pinia = options.pinia;\n // HACK: taken from provide(): https://github.com/vuejs/composition-api/blob/main/src/apis/inject.ts#L31\n /* istanbul ignore else */\n if (!this._provided) {\n const provideCache = {};\n Object.defineProperty(this, '_provided', {\n get: () => provideCache,\n set: (v) => Object.assign(provideCache, v),\n });\n }\n this._provided[piniaSymbol] = pinia;\n // propagate the pinia instance in an SSR friendly way\n // avoid adding it to nuxt twice\n /* istanbul ignore else */\n if (!this.$pinia) {\n this.$pinia = pinia;\n }\n pinia._a = this;\n if (IS_CLIENT) {\n // this allows calling useStore() outside of a component setup after\n // installing pinia's plugin\n setActivePinia(pinia);\n }\n if (USE_DEVTOOLS) {\n registerPiniaDevtools(pinia._a, pinia);\n }\n }\n else if (!this.$pinia && options.parent && options.parent.$pinia) {\n this.$pinia = options.parent.$pinia;\n }\n },\n destroyed() {\n delete this._pStores;\n },\n });\n};\n\nexport { MutationType, PiniaVuePlugin, acceptHMRUpdate, createPinia, defineStore, getActivePinia, mapActions, mapGetters, mapState, mapStores, mapWritableState, setActivePinia, setMapStoreSuffix, skipHydrate, storeToRefs };\n","/**\n * natural-orderby v3.0.2\n *\n * Copyright (c) Olaf Ennen\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE.md file in the root directory of this source tree.\n *\n * @license MIT\n */\nvar compareNumbers = function compareNumbers(numberA, numberB) {\n if (numberA < numberB) {\n return -1;\n }\n if (numberA > numberB) {\n return 1;\n }\n return 0;\n};\n\nvar compareUnicode = function compareUnicode(stringA, stringB) {\n var result = stringA.localeCompare(stringB);\n return result ? result / Math.abs(result) : 0;\n};\n\nvar RE_NUMBERS = /(^0x[\\da-fA-F]+$|^([+-]?(?:\\d+(?:\\.\\d*)?|\\.\\d+)(?:[eE][+-]?\\d+)?(?!\\.\\d+)(?=\\D|\\s|$))|\\d+)/g;\nvar RE_LEADING_OR_TRAILING_WHITESPACES = /^\\s+|\\s+$/g; // trim pre-post whitespace\nvar RE_WHITESPACES = /\\s+/g; // normalize all whitespace to single ' ' character\nvar RE_INT_OR_FLOAT = /^[+-]?(?:\\d+(?:\\.\\d*)?|\\.\\d+)(?:[eE][+-]?\\d+)?$/; // identify integers and floats\nvar RE_DATE = /(^([\\w ]+,?[\\w ]+)?[\\w ]+,?[\\w ]+\\d+:\\d+(:\\d+)?[\\w ]?|^\\d{1,4}[/-]\\d{1,4}[/-]\\d{1,4}|^\\w+, \\w+ \\d+, \\d{4})/; // identify date strings\nvar RE_LEADING_ZERO = /^0+[1-9]{1}[0-9]*$/;\n// eslint-disable-next-line no-control-regex\nvar RE_UNICODE_CHARACTERS = /[^\\x00-\\x80]/;\n\nvar stringCompare = function stringCompare(stringA, stringB) {\n if (stringA < stringB) {\n return -1;\n }\n if (stringA > stringB) {\n return 1;\n }\n return 0;\n};\n\nvar compareChunks = function compareChunks(chunksA, chunksB) {\n var lengthA = chunksA.length;\n var lengthB = chunksB.length;\n var size = Math.min(lengthA, lengthB);\n for (var i = 0; i < size; i++) {\n var chunkA = chunksA[i];\n var chunkB = chunksB[i];\n if (chunkA.normalizedString !== chunkB.normalizedString) {\n if (chunkA.normalizedString === '' !== (chunkB.normalizedString === '')) {\n // empty strings have lowest value\n return chunkA.normalizedString === '' ? -1 : 1;\n }\n if (chunkA.parsedNumber !== undefined && chunkB.parsedNumber !== undefined) {\n // compare numbers\n var result = compareNumbers(chunkA.parsedNumber, chunkB.parsedNumber);\n if (result === 0) {\n // compare string value, if parsed numbers are equal\n // Example:\n // chunkA = { parsedNumber: 1, normalizedString: \"001\" }\n // chunkB = { parsedNumber: 1, normalizedString: \"01\" }\n // chunkA.parsedNumber === chunkB.parsedNumber\n // chunkA.normalizedString < chunkB.normalizedString\n return stringCompare(chunkA.normalizedString, chunkB.normalizedString);\n }\n return result;\n } else if (chunkA.parsedNumber !== undefined || chunkB.parsedNumber !== undefined) {\n // number < string\n return chunkA.parsedNumber !== undefined ? -1 : 1;\n } else if (RE_UNICODE_CHARACTERS.test(chunkA.normalizedString + chunkB.normalizedString)) {\n // use locale comparison only if one of the chunks contains unicode characters\n return compareUnicode(chunkA.normalizedString, chunkB.normalizedString);\n } else {\n // use common string comparison for performance reason\n return stringCompare(chunkA.normalizedString, chunkB.normalizedString);\n }\n }\n }\n // if the chunks are equal so far, the one which has more chunks is greater than the other one\n if (lengthA > size || lengthB > size) {\n return lengthA <= size ? -1 : 1;\n }\n return 0;\n};\n\nvar compareOtherTypes = function compareOtherTypes(valueA, valueB) {\n if (!valueA.chunks ? valueB.chunks : !valueB.chunks) {\n return !valueA.chunks ? 1 : -1;\n }\n if (valueA.isNaN ? !valueB.isNaN : valueB.isNaN) {\n return valueA.isNaN ? -1 : 1;\n }\n if (valueA.isSymbol ? !valueB.isSymbol : valueB.isSymbol) {\n return valueA.isSymbol ? -1 : 1;\n }\n if (valueA.isObject ? !valueB.isObject : valueB.isObject) {\n return valueA.isObject ? -1 : 1;\n }\n if (valueA.isArray ? !valueB.isArray : valueB.isArray) {\n return valueA.isArray ? -1 : 1;\n }\n if (valueA.isFunction ? !valueB.isFunction : valueB.isFunction) {\n return valueA.isFunction ? -1 : 1;\n }\n if (valueA.isNull ? !valueB.isNull : valueB.isNull) {\n return valueA.isNull ? -1 : 1;\n }\n return 0;\n};\n\nvar compareValues = function compareValues(valueA, valueB) {\n if (valueA.value === valueB.value) {\n return 0;\n }\n if (valueA.parsedNumber !== undefined && valueB.parsedNumber !== undefined) {\n return compareNumbers(valueA.parsedNumber, valueB.parsedNumber);\n }\n if (valueA.chunks && valueB.chunks) {\n return compareChunks(valueA.chunks, valueB.chunks);\n }\n return compareOtherTypes(valueA, valueB);\n};\n\nvar normalizeAlphaChunk = function normalizeAlphaChunk(chunk) {\n return chunk.replace(RE_WHITESPACES, ' ').replace(RE_LEADING_OR_TRAILING_WHITESPACES, '');\n};\n\nvar parseNumber = function parseNumber(value) {\n if (value.length !== 0) {\n var parsedNumber = Number(value);\n if (!Number.isNaN(parsedNumber)) {\n return parsedNumber;\n }\n }\n return undefined;\n};\n\nvar normalizeNumericChunk = function normalizeNumericChunk(chunk, index, chunks) {\n if (RE_INT_OR_FLOAT.test(chunk)) {\n // don´t parse a number, if there´s a preceding decimal point\n // to keep significance\n // e.g. 1.0020, 1.020\n if (!RE_LEADING_ZERO.test(chunk) || index === 0 || chunks[index - 1] !== '.') {\n return parseNumber(chunk) || 0;\n }\n }\n return undefined;\n};\n\nvar createChunkMap = function createChunkMap(chunk, index, chunks) {\n return {\n parsedNumber: normalizeNumericChunk(chunk, index, chunks),\n normalizedString: normalizeAlphaChunk(chunk)\n };\n};\n\nvar createChunks = function createChunks(value) {\n return value.replace(RE_NUMBERS, '\\0$1\\0').replace(/\\0$/, '').replace(/^\\0/, '').split('\\0');\n};\n\nvar createChunkMaps = function createChunkMaps(value) {\n var chunksMaps = createChunks(value).map(createChunkMap);\n return chunksMaps;\n};\n\nvar isFunction = function isFunction(value) {\n return typeof value === 'function';\n};\n\nvar isNaN = function isNaN(value) {\n return Number.isNaN(value) || value instanceof Number && Number.isNaN(value.valueOf());\n};\n\nvar isNull = function isNull(value) {\n return value === null;\n};\n\nvar isObject = function isObject(value) {\n return value !== null && typeof value === 'object' && !Array.isArray(value) && !(value instanceof Number) && !(value instanceof String) && !(value instanceof Boolean) && !(value instanceof Date);\n};\n\nvar isSymbol = function isSymbol(value) {\n return typeof value === 'symbol';\n};\n\nvar isUndefined = function isUndefined(value) {\n return value === undefined;\n};\n\nvar parseDate = function parseDate(value) {\n try {\n var parsedDate = Date.parse(value);\n if (!Number.isNaN(parsedDate)) {\n if (RE_DATE.test(value)) {\n return parsedDate;\n }\n }\n return undefined;\n } catch (_unused) {\n return undefined;\n }\n};\n\nvar numberify = function numberify(value) {\n var parsedNumber = parseNumber(value);\n if (parsedNumber !== undefined) {\n return parsedNumber;\n }\n return parseDate(value);\n};\n\nvar stringify = function stringify(value) {\n if (typeof value === 'boolean' || value instanceof Boolean) {\n return Number(value).toString();\n }\n if (typeof value === 'number' || value instanceof Number) {\n return value.toString();\n }\n if (value instanceof Date) {\n return value.getTime().toString();\n }\n if (typeof value === 'string' || value instanceof String) {\n return value.toLowerCase().replace(RE_LEADING_OR_TRAILING_WHITESPACES, '');\n }\n return '';\n};\n\nvar getMappedValueRecord = function getMappedValueRecord(value) {\n if (typeof value === 'string' || value instanceof String || (typeof value === 'number' || value instanceof Number) && !isNaN(value) || typeof value === 'boolean' || value instanceof Boolean || value instanceof Date) {\n var stringValue = stringify(value);\n var parsedNumber = numberify(stringValue);\n var chunks = createChunkMaps(parsedNumber ? \"\" + parsedNumber : stringValue);\n return {\n parsedNumber: parsedNumber,\n chunks: chunks,\n value: value\n };\n }\n return {\n isArray: Array.isArray(value),\n isFunction: isFunction(value),\n isNaN: isNaN(value),\n isNull: isNull(value),\n isObject: isObject(value),\n isSymbol: isSymbol(value),\n isUndefined: isUndefined(value),\n value: value\n };\n};\n\nvar baseCompare = function baseCompare(options) {\n return function (valueA, valueB) {\n var a = getMappedValueRecord(valueA);\n var b = getMappedValueRecord(valueB);\n var result = compareValues(a, b);\n return result * (options.order === 'desc' ? -1 : 1);\n };\n};\n\nvar isValidOrder = function isValidOrder(value) {\n return typeof value === 'string' && (value === 'asc' || value === 'desc');\n};\nvar getOptions = function getOptions(customOptions) {\n var order = 'asc';\n if (typeof customOptions === 'string' && isValidOrder(customOptions)) {\n order = customOptions;\n } else if (customOptions && typeof customOptions === 'object' && customOptions.order && isValidOrder(customOptions.order)) {\n order = customOptions.order;\n }\n return {\n order: order\n };\n};\n\n/**\n * Creates a compare function that defines the natural sort order considering\n * the given `options` which may be passed to [`Array.prototype.sort()`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/sort).\n */\nfunction compare(options) {\n var validatedOptions = getOptions(options);\n return baseCompare(validatedOptions);\n}\n\nvar compareMultiple = function compareMultiple(recordA, recordB, orders) {\n var indexA = recordA.index,\n valuesA = recordA.values;\n var indexB = recordB.index,\n valuesB = recordB.values;\n var length = valuesA.length;\n var ordersLength = orders.length;\n for (var i = 0; i < length; i++) {\n var order = i < ordersLength ? orders[i] : null;\n if (order && typeof order === 'function') {\n var result = order(valuesA[i].value, valuesB[i].value);\n if (result) {\n return result;\n }\n } else {\n var _result = compareValues(valuesA[i], valuesB[i]);\n if (_result) {\n return _result * (order === 'desc' ? -1 : 1);\n }\n }\n }\n return indexA - indexB;\n};\n\nvar createIdentifierFn = function createIdentifierFn(identifier) {\n if (typeof identifier === 'function') {\n // identifier is already a lookup function\n return identifier;\n }\n return function (value) {\n if (Array.isArray(value)) {\n var index = Number(identifier);\n if (Number.isInteger(index)) {\n return value[index];\n }\n } else if (value && typeof value === 'object') {\n var result = Object.getOwnPropertyDescriptor(value, identifier);\n return result == null ? void 0 : result.value;\n }\n return value;\n };\n};\n\nvar getElementByIndex = function getElementByIndex(collection, index) {\n return collection[index];\n};\n\nvar getValueByIdentifier = function getValueByIdentifier(value, getValue) {\n return getValue(value);\n};\n\nvar baseOrderBy = function baseOrderBy(collection, identifiers, orders) {\n var identifierFns = identifiers.length ? identifiers.map(createIdentifierFn) : [function (value) {\n return value;\n }];\n\n // temporary array holds elements with position and sort-values\n var mappedCollection = collection.map(function (element, index) {\n var values = identifierFns.map(function (identifier) {\n return getValueByIdentifier(element, identifier);\n }).map(getMappedValueRecord);\n return {\n index: index,\n values: values\n };\n });\n\n // iterate over values and compare values until a != b or last value reached\n mappedCollection.sort(function (recordA, recordB) {\n return compareMultiple(recordA, recordB, orders);\n });\n return mappedCollection.map(function (element) {\n return getElementByIndex(collection, element.index);\n });\n};\n\nvar getIdentifiers = function getIdentifiers(identifiers) {\n if (!identifiers) {\n return [];\n }\n var identifierList = !Array.isArray(identifiers) ? [identifiers] : [].concat(identifiers);\n if (identifierList.some(function (identifier) {\n return typeof identifier !== 'string' && typeof identifier !== 'number' && typeof identifier !== 'function';\n })) {\n return [];\n }\n return identifierList;\n};\n\nvar getOrders = function getOrders(orders) {\n if (!orders) {\n return [];\n }\n var orderList = !Array.isArray(orders) ? [orders] : [].concat(orders);\n if (orderList.some(function (order) {\n return order !== 'asc' && order !== 'desc' && typeof order !== 'function';\n })) {\n return [];\n }\n return orderList;\n};\n\n/**\n * Creates an array of elements, natural sorted by specified identifiers and\n * the corresponding sort orders. This method implements a stable sort\n * algorithm, which means the original sort order of equal elements is\n * preserved.\n */\nfunction orderBy(collection, identifiers, orders) {\n if (!collection || !Array.isArray(collection)) {\n return [];\n }\n var validatedIdentifiers = getIdentifiers(identifiers);\n var validatedOrders = getOrders(orders);\n return baseOrderBy(collection, validatedIdentifiers, validatedOrders);\n}\n\nexport { compare, orderBy };\n","\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=03d22f04\"\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,\"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!./ShareVariant.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./ShareVariant.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ShareVariant.vue?vue&type=template&id=1f144a5c\"\nimport script from \"./ShareVariant.vue?vue&type=script&lang=js\"\nexport * from \"./ShareVariant.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 share-variant-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 24 24\"}},[_c('path',{attrs:{\"d\":\"M18,16.08C17.24,16.08 16.56,16.38 16.04,16.85L8.91,12.7C8.96,12.47 9,12.24 9,12C9,11.76 8.96,11.53 8.91,11.3L15.96,7.19C16.5,7.69 17.21,8 18,8A3,3 0 0,0 21,5A3,3 0 0,0 18,2A3,3 0 0,0 15,5C15,5.24 15.04,5.47 15.09,5.7L8.04,9.81C7.5,9.31 6.79,9 6,9A3,3 0 0,0 3,12A3,3 0 0,0 6,15C6.79,15 7.5,14.69 8.04,14.19L15.16,18.34C15.11,18.55 15.08,18.77 15.08,19C15.08,20.61 16.39,21.91 18,21.91C19.61,21.91 20.92,20.61 20.92,19A2.92,2.92 0 0,0 18,16.08Z\"}},[(_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=6ca550f9\"\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,\"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 * @copyright Copyright (c) 2022 John Molakvoæ \n *\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 */\nimport { getLoggerBuilder } from '@nextcloud/logger'\n\nexport default getLoggerBuilder()\n\t.setApp('files')\n\t.detectUser()\n\t.build()\n","/**\n * @copyright Copyright (c) 2023 John Molakvoæ \n *\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 */\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 }, { 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","import { defineStore } from 'pinia';\nimport { subscribe } from '@nextcloud/event-bus';\nimport logger from '../logger';\nimport Vue from 'vue';\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 id\n */\n getNode: (state) => (id) => state.files[id],\n /**\n * Get a list of files or folders by their IDs\n * Does not return undefined values\n */\n getNodes: (state) => (ids) => ids\n .map(id => state.files[id])\n .filter(Boolean),\n /**\n * Get a file or folder by id\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.fileid] = node;\n return acc;\n }, {});\n Vue.set(this, 'files', { ...this.files, ...files });\n },\n deleteNodes(nodes) {\n nodes.forEach(node => {\n if (node.fileid) {\n Vue.delete(this.files, node.fileid);\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 onUpdatedNode(node) {\n this.updateNodes([node]);\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();\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.fileid);\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 fileid: node.fileid,\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.fileid);\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 parentId = this.paths[service][node.dirname];\n const parentFolder = files.getNode(parentId);\n logger.debug('Path already exists, updating children', { parentFolder, node });\n if (!parentFolder) {\n logger.error('Parent folder not found', { parentId });\n return;\n }\n if (!parentFolder._children) {\n Vue.set(parentFolder, '_children', []);\n }\n parentFolder._children.push(node.fileid);\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","/**\n * @copyright Copyright (c) 2023 John Molakvoæ \n *\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 */\nimport { defineStore } from 'pinia';\nimport Vue from 'vue';\nimport { FileId, SelectionStore } from '../types';\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","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 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 * @copyright Copyright (c) 2023 John Molakvoæ \n *\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 */\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 \"-!../vue-loader/lib/index.js??vue-loader-options!./Home.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Home.vue?vue&type=script&lang=js\"","\n\n","import { render, staticRenderFns } from \"./Home.vue?vue&type=template&id=69a49b0f\"\nimport script from \"./Home.vue?vue&type=script&lang=js\"\nexport * from \"./Home.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 home-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 24 24\"}},[_c('path',{attrs:{\"d\":\"M10,20V14H14V20H19V12H22L12,3L2,12H5V20H10Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BreadCrumbs.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!./BreadCrumbs.vue?vue&type=script&lang=js\"","\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=c33b6662&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=c33b6662&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=c33b6662&scoped=true\"\nimport script from \"./BreadCrumbs.vue?vue&type=script&lang=js\"\nexport * from \"./BreadCrumbs.vue?vue&type=script&lang=js\"\nimport style0 from \"./BreadCrumbs.vue?vue&type=style&index=0&id=c33b6662&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 \"c33b6662\",\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('NcBreadcrumbs',{attrs:{\"data-cy-files-content-breadcrumbs\":\"\"},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:{\"aria-label\":_vm.ariaLabel(section),\"title\":_vm.ariaLabel(section)},nativeOn:{\"click\":function($event){return _vm.onClick(section.to)}},scopedSlots:_vm._u([(index === 0)?{key:\"icon\",fn:function(){return [_c('Home',{attrs:{\"size\":20}})]},proxy:true}:null],null,true)},'NcBreadcrumb',section,false))}),1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","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([{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:{\"files-list-width\":_vm.filesListWidth,\"is-mtime-available\":_vm.isMtimeAvailable,\"is-size-available\":_vm.isSizeAvailable,\"nodes\":_vm.nodes,\"summary\":_vm.summary}})]},proxy:true}])})\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\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=065722db\"\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,\"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 }","import { render, staticRenderFns } from \"./Folder.vue?vue&type=template&id=5c04f969\"\nimport script from \"./Folder.vue?vue&type=script&lang=js\"\nexport * from \"./Folder.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,_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 }","/**\n * @copyright Copyright (c) 2021 John Molakvoæ \n *\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 */\nimport { FileType } from '@nextcloud/files';\nimport { translate as t, translatePlural as n } from '@nextcloud/l10n';\nexport const encodeFilePath = function (path) {\n const pathSections = (path.startsWith('/') ? path : `/${path}`).split('/');\n let relativePath = '';\n pathSections.forEach((section) => {\n if (section !== '') {\n relativePath += '/' + encodeURIComponent(section);\n }\n });\n return relativePath;\n};\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","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=578d5cf6&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=578d5cf6&prod&lang=scss\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./DragAndDropPreview.vue?vue&type=template&id=578d5cf6\"\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=578d5cf6&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 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!./style.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!./style.css\";\n export default content && content.locals ? content.locals : undefined;\n","import axios from './lib/axios.js';\n\n// This module is intended to unwrap Axios default export as named.\n// Keep top-level export same with static properties\n// so that it can keep same with es module or cjs\nconst {\n Axios,\n AxiosError,\n CanceledError,\n isCancel,\n CancelToken,\n VERSION,\n all,\n Cancel,\n isAxiosError,\n spread,\n toFormData,\n AxiosHeaders,\n HttpStatusCode,\n formToJSON,\n getAdapter,\n mergeConfig\n} = axios;\n\nexport {\n axios as default,\n Axios,\n AxiosError,\n CanceledError,\n isCancel,\n CancelToken,\n VERSION,\n all,\n Cancel,\n isAxiosError,\n spread,\n toFormData,\n AxiosHeaders,\n HttpStatusCode,\n formToJSON,\n getAdapter,\n mergeConfig\n}\n","/**\n * @copyright Copyright (c) 2023 John Molakvoæ \n *\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 */\nimport '@nextcloud/dialogs/style.css';\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 // For now the only restriction is that a shared file\n // cannot be copied if the download is disabled\n return canDownload(nodes);\n};\n","/**\n * @copyright Copyright (c) 2023 John Molakvoæ \n *\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 */\nimport '@nextcloud/dialogs/style.css';\n// eslint-disable-next-line n/no-extraneous-import\nimport { AxiosError } from 'axios';\nimport { basename, join } from 'path';\nimport { emit } from '@nextcloud/event-bus';\nimport { generateRemoteUrl } from '@nextcloud/router';\nimport { getCurrentUser } from '@nextcloud/auth';\nimport { getFilePickerBuilder, showError } from '@nextcloud/dialogs';\nimport { Permission, FileAction, FileType, NodeStatus } from '@nextcloud/files';\nimport { translate as t } from '@nextcloud/l10n';\nimport axios from '@nextcloud/axios';\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 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 if (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\n * destination: /foo\n * Allow move of /foo does not start with /foo/bar so allow\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 const relativePath = join(destination.path, node.basename);\n const destinationUrl = generateRemoteUrl(`dav/files/${getCurrentUser()?.uid}${relativePath}`);\n logger.debug(`${method} ${node.basename} to ${destinationUrl}`);\n // Set loading state\n Vue.set(node, 'status', NodeStatus.LOADING);\n const queue = getQueue();\n return await queue.add(async () => {\n try {\n await axios({\n method: method === MoveCopyAction.COPY ? 'COPY' : 'MOVE',\n url: node.encodedSource,\n headers: {\n Destination: encodeURI(destinationUrl),\n Overwrite: overwrite ? undefined : 'F',\n },\n });\n // If we're moving, update the node\n // if we're copying, we don't need to update the node\n // the view will refresh itself\n if (method === MoveCopyAction.MOVE) {\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 (error instanceof AxiosError) {\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 is 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 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} node The node to move/copy\n * @return {Promise} A promise that resolves to true if the action was successful\n */\nconst openFilePickerForAction = async (action, dir = '/', node) => {\n const filePicker = getFilePickerBuilder(t('files', 'Chose destination'))\n .allowDirectories(true)\n .setFilter((n) => {\n // We only want to show folders that we can create nodes in\n return (n.permissions & Permission.CREATE) !== 0\n // We don't want to show the current node in the file picker\n && node.fileid !== n.fileid;\n })\n .setMimeTypeFilter([])\n .setMultiSelect(false)\n .startAt(dir);\n return new Promise((resolve, reject) => {\n filePicker.setButtonFactory((nodes, path) => {\n const buttons = [];\n const target = basename(path);\n if (node.dirname === path) {\n // This file/folder is already in that directory\n return buttons;\n }\n if (node.path === path) {\n // You cannot move a file/folder onto itself\n return buttons;\n }\n if (action === MoveCopyAction.COPY || action === MoveCopyAction.MOVE_OR_COPY) {\n buttons.push({\n label: target ? t('files', 'Copy to {target}', { target }) : t('files', 'Copy'),\n type: 'primary',\n icon: CopyIconSvg,\n async callback(destination) {\n try {\n await handleCopyMoveNodeTo(node, destination[0], MoveCopyAction.COPY);\n resolve(true);\n }\n catch (error) {\n reject(error);\n }\n },\n });\n }\n if (action === MoveCopyAction.MOVE || action === MoveCopyAction.MOVE_OR_COPY) {\n buttons.push({\n label: target ? t('files', 'Move to {target}', { target }) : t('files', 'Move'),\n type: action === MoveCopyAction.MOVE ? 'primary' : 'secondary',\n icon: FolderMoveSvg,\n async callback(destination) {\n try {\n await handleCopyMoveNodeTo(node, destination[0], MoveCopyAction.MOVE);\n resolve(true);\n }\n catch (error) {\n console.warn('got error', error);\n reject(error);\n }\n },\n });\n }\n return buttons;\n });\n const picker = filePicker.build();\n picker.pick().catch(() => {\n reject(new Error(t('files', 'Cancelled move or copy operation')));\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 try {\n await openFilePickerForAction(action, dir, node);\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 order: 15,\n});\n","/**\n * @copyright Copyright (c) 2023 John Molakvoæ \n *\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 */\nexport const hashCode = function (str) {\n return str.split('').reduce(function (a, b) {\n a = ((a << 5) - a) + b.charCodeAt(0);\n return a & a;\n }, 0);\n};\n","/**\n * @copyright Copyright (c) 2023 John Molakvoæ \n *\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 */\nimport { defineStore } from 'pinia';\nexport const useActionsMenuStore = defineStore('actionsmenu', {\n state: () => ({\n opened: null,\n }),\n});\n","/**\n * @copyright Copyright (c) 2023 John Molakvoæ \n *\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 */\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 * @copyright Copyright (c) 2023 John Molakvoæ \n *\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 */\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","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=08a118c6\"\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","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\"","\n\n","import { render, staticRenderFns } from \"./ArrowLeft.vue?vue&type=template&id=187c55d7\"\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,\"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 \"-!../vue-loader/lib/index.js??vue-loader-options!./ChevronRight.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./ChevronRight.vue?vue&type=script&lang=js\"","\n\n","import { render, staticRenderFns } from \"./ChevronRight.vue?vue&type=template&id=750bcc07\"\nimport script from \"./ChevronRight.vue?vue&type=script&lang=js\"\nexport * from \"./ChevronRight.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 chevron-right-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 24 24\"}},[_c('path',{attrs:{\"d\":\"M8.59,16.58L13.17,12L8.59,7.41L10,6L16,12L10,18L8.59,16.58Z\"}},[(_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('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,\"disabled\":_vm.isLoading || _vm.loading !== '',\"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,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){_vm.openedSubmenu = null}},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\":false /* never close submenu, just go back */,\"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 }","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=6dd8d639&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=0&id=6dd8d639&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=6dd8d639&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=6dd8d639&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 \"6dd8d639\",\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-checkbox\"},[(_vm.isLoading)?_c('NcLoadingIcon'):_c('NcCheckboxRadioSwitch',{attrs:{\"aria-label\":_vm.t('files', 'Select the row for {displayName}', { displayName: _vm.displayName }),\"checked\":_vm.isSelected},on:{\"update:checked\":_vm.onSelectionChange}})],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/**\n * @copyright Copyright (c) 2023 John Molakvoæ \n *\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 */\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 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\"","import { render, staticRenderFns } from \"./FileEntryCheckbox.vue?vue&type=template&id=f1e33696\"\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.stopRenaming),expression:\"stopRenaming\"}],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('a',_vm._b({ref:\"basename\",staticClass:\"files-list__row-name-link\",attrs:{\"aria-hidden\":_vm.isRenaming,\"data-cy-files-list-row-name-link\":\"\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'a',_vm.linkTo,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=3530412d\"\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\":function($event){_vm.backgroundFailed = true},\"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!./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=98f97aee\"\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,\"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!./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\"","\n\n","import { render, staticRenderFns } from \"./File.vue?vue&type=template&id=5c8d96c6\"\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,\"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=3b29b1d5\"\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,\"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=aa295eae\"\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,\"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=7c7d2907\"\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,\"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=4d7171be\"\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,\"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=34d1e782\"\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,\"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","import { render, staticRenderFns } from \"./CollectivesIcon.vue?vue&type=template&id=18541dcc\"\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=04e52abc&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=04e52abc&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=04e52abc&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=04e52abc&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 \"04e52abc\",\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 * @copyright Copyright (c) 2023 Louis Chmn \n *\n * @author Louis Chmn \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 */\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=3c23da48\"\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","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:{'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}},_vm.rowListeners),[(_vm.source.attributes.failed)?_c('span',{staticClass:\"files-list__row--failed\"}):_vm._e(),_vm._v(\" \"),_c('FileEntryCheckbox',{attrs:{\"display-name\":_vm.displayName,\"fileid\":_vm.fileid,\"is-loading\":_vm.isLoading,\"nodes\":_vm.nodes}}),_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:{\"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},on:{\"click\":_vm.execDefaultAction}})],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}},[_c('NcDateTime',{attrs:{\"timestamp\":_vm.source.mtime,\"ignore-seconds\":true}})],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 }","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=6c7baead\"\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","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.source.attributes.failed)?_c('span',{staticClass:\"files-list__row--failed\"}):_vm._e(),_vm._v(\" \"),_c('FileEntryCheckbox',{attrs:{\"display-name\":_vm.displayName,\"fileid\":_vm.fileid,\"is-loading\":_vm.isLoading,\"nodes\":_vm.nodes}}),_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:{\"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},on:{\"click\":_vm.execDefaultAction}})],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 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\"","import { render, staticRenderFns } from \"./FileEntryGrid.vue?vue&type=template&id=32093622\"\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=0434f153\"\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=58f7b64d&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=58f7b64d&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=58f7b64d&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=58f7b64d&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 \"58f7b64d\",\n null\n \n)\n\nexport default component.exports","/**\n * @copyright Copyright (c) 2023 John Molakvoæ \n *\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 */\nimport Vue from 'vue';\nexport default Vue.extend({\n data() {\n return {\n filesListWidth: null,\n };\n },\n mounted() {\n const fileListEl = document.querySelector('#app-content-vue');\n this.filesListWidth = fileListEl?.clientWidth ?? null;\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 this.$resizeObserver.observe(fileListEl);\n },\n beforeDestroy() {\n this.$resizeObserver.disconnect();\n },\n});\n","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('th',{staticClass:\"files-list__column files-list__row-actions-batch\",attrs:{\"colspan\":\"2\"}},[_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=72bacee0&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=72bacee0&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=72bacee0&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=72bacee0&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 \"72bacee0\",\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('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 * @copyright Copyright (c) 2023 John Molakvoæ \n *\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 */\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\"","\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=097f69d4&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=097f69d4&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=097f69d4&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=097f69d4&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 \"097f69d4\",\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\"","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\"},[_c('NcCheckboxRadioSwitch',_vm._b({on:{\"update:checked\":_vm.onToggleAll}},'NcCheckboxRadioSwitch',_vm.selectAllBind,false))],1),_vm._v(\" \"),(!_vm.isNoneSelected)?_c('FilesListTableHeaderActions',{attrs:{\"current-view\":_vm.currentView,\"selected-nodes\":_vm.selectedNodes}}):[_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\\t\"+_vm._s(column.title)+\"\\n\\t\\t\\t\")])],1)})]],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!./FilesListTableHeader.vue?vue&type=style&index=0&id=585fdb03&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=585fdb03&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=585fdb03&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=585fdb03&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 \"585fdb03\",\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(\" \"),_c('table',{staticClass:\"files-list__table\"},[(_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=201bd593\"\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","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\"","\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=1b17ff10&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=1b17ff10&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=1b17ff10&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=1b17ff10&prod&lang=scss\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./FilesListVirtual.vue?vue&type=template&id=1b17ff10&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=1b17ff10&prod&scoped=true&lang=scss\"\nimport style1 from \"./FilesListVirtual.vue?vue&type=style&index=1&id=1b17ff10&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 \"1b17ff10\",\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=547c388d\"\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,\"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 }","/**\n * @copyright Copyright (c) 2023 Ferdinand Thiessen \n *\n * @author Ferdinand Thiessen \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 */\nimport { showError } from '@nextcloud/dialogs';\nimport { emit } from '@nextcloud/event-bus';\nimport { davGetClient, davGetDefaultPropfind, davResultToNode, davRootPath } from '@nextcloud/files';\nimport { translate as t } from '@nextcloud/l10n';\nimport { getUploader } from '@nextcloud/upload';\nimport logger from '../logger.js';\nexport const handleDrop = async (data) => {\n // TODO: Maybe handle `getAsFileSystemHandle()` in the future\n const uploads = [];\n for (const item of data.items) {\n if (item.kind !== 'file') {\n logger.debug('Skipping dropped item', { kind: item.kind, type: item.type });\n continue;\n }\n // MDN recommends to try both, as it might be renamed in the future\n const entry = item?.getAsEntry?.() ?? item.webkitGetAsEntry();\n // Handle browser issues if Filesystem API is not available. Fallback to File API\n if (entry === null) {\n logger.debug('Could not get FilesystemEntry of item, falling back to file');\n const file = item.getAsFile();\n if (file === null) {\n logger.warn('Could not process DataTransferItem', { type: item.type, kind: item.kind });\n showError(t('files', 'One of the dropped files could not be processed'));\n }\n else {\n uploads.push(await handleFileUpload(file));\n }\n }\n else {\n logger.debug('Handle recursive upload', { entry: entry.name });\n // Use Filesystem API\n uploads.push(...await handleRecursiveUpload(entry));\n }\n }\n return uploads;\n};\nconst handleFileUpload = async (file, path = '') => {\n const uploader = getUploader();\n try {\n return await uploader.upload(`${path}${file.name}`, file);\n }\n catch (e) {\n showError(t('files', 'Uploading \"{filename}\" failed', { filename: file.name }));\n throw e;\n }\n};\nconst handleRecursiveUpload = async (entry, path = '') => {\n if (entry.isFile) {\n return [\n await new Promise((resolve, reject) => {\n entry.file(async (file) => resolve(await handleFileUpload(file, path)), (error) => reject(error));\n }),\n ];\n }\n else {\n const directory = entry;\n logger.debug('Handle directory recursivly', { name: directory.name });\n // TODO: Implement this on `@nextcloud/upload`\n const absolutPath = `${davRootPath}${getUploader().destination.path}${path}${directory.name}`;\n const davClient = davGetClient();\n const dirExists = await davClient.exists(absolutPath);\n if (!dirExists) {\n logger.debug('Directory does not exist, creating it', { absolutPath });\n await davClient.createDirectory(absolutPath, { recursive: true });\n const stat = await davClient.stat(absolutPath, { details: true, data: davGetDefaultPropfind() });\n emit('files:node:created', davResultToNode(stat.data));\n }\n const entries = await readDirectory(directory);\n // sorted so we upload files first before starting next level\n const promises = entries.sort((a) => a.isFile ? -1 : 1)\n .map((file) => handleRecursiveUpload(file, `${path}${directory.name}/`));\n return (await Promise.all(promises)).flat();\n }\n};\n/**\n * Read a directory using Filesystem API\n * @param directory the directory to read\n */\nfunction 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}\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!./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\",on:{\"drop\":_vm.onDrop}},[_c('div',{staticClass:\"files-list__drag-drop-notice-wrapper\"},[_c('TrayArrowDownIcon',{attrs:{\"size\":48}}),_vm._v(\" \"),_c('h3',{staticClass:\"files-list-drag-drop-notice__title\"},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('files', 'Drag and drop files here to upload'))+\"\\n\\t\\t\")])],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!./DragAndDropNotice.vue?vue&type=style&index=0&id=7e0e423e&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=7e0e423e&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=7e0e423e&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=7e0e423e&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 \"7e0e423e\",\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:{\"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('ShareVariantIcon',{attrs:{\"size\":20}})]},proxy:true}],null,false,2776780758)}):_vm._e(),_vm._v(\" \"),(_vm.currentFolder && _vm.canUpload)?_c('UploadPicker',{attrs:{\"content\":_vm.dirContents,\"destination\":_vm.currentFolder,\"multiple\":true},on:{\"uploaded\":_vm.onUpload}}):_vm._e()]},proxy:true}])}),_vm._v(\" \"),(_vm.filesListWidth >= 512)?_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([{key:\"action\",fn:function(){return [(_vm.dir !== '/')?_c('NcButton',{attrs:{\"aria-label\":_vm.t('files', 'Go to the previous folder'),\"type\":\"primary\",\"to\":_vm.toPreviousDir}},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('files', 'Go back'))+\"\\n\\t\\t\\t\")]):_vm._e()]},proxy:true},{key:\"icon\",fn:function(){return [_c('NcIconSvgWrapper',{attrs:{\"svg\":_vm.currentView.icon}})]},proxy: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 }","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=14acd289&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=14acd289&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=14acd289&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=14acd289&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 \"14acd289\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;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,\"icon\":view.iconClass,\"open\":_vm.isExpanded(view),\"pinned\":view.sticky,\"name\":view.name,\"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\":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('Cog',{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 }","import { render, staticRenderFns } from \"./Cog.vue?vue&type=template&id=bcf30078\"\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","/* 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=44de6464\"\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,\"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\n\n\n\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 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=2bae6012&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=2bae6012&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=2bae6012&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=2bae6012&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 \"2bae6012\",\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:{\"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:{\"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:{\"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(\" \"),_c('NcCheckboxRadioSwitch',{attrs:{\"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\")])],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\",\"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=0e008e34\"\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,\"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=61d69eae\"\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 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=011c3819&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=011c3819&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=011c3819&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=011c3819&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 \"011c3819\",\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!./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\"","/**\n * @copyright Copyright (c) 2022 Joas Schilling \n *\n * @author Joas Schilling \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 */\n\nimport { loadState } from '@nextcloud/initial-state'\n\n/**\n * Set the page heading\n *\n * @param {string} heading page title from the history api\n * @since 27.0.0\n */\nexport function setPageHeading(heading) {\n\tconst headingEl = document.getElementById('page-heading-level-1')\n\tif (headingEl) {\n\t\theadingEl.textContent = heading\n\t}\n}\nexport default {\n\t/**\n\t * @return {boolean} Whether the user opted-out of shortcuts so that they should not be registered\n\t */\n\tdisableKeyboardShortcuts() {\n\t\treturn loadState('theming', 'shortcutsDisabled', false)\n\t},\n\tsetPageHeading,\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!./Navigation.vue?vue&type=style&index=0&id=1a7f07dd&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=1a7f07dd&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=1a7f07dd&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=1a7f07dd&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 \"1a7f07dd\",\n null\n \n)\n\nexport default component.exports","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).replace(/[!'()*]/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 keyValueSep = 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), keyValueSep, 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.replace(/\\+/g, ' ') : 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\tif (Boolean(value) && typeof value === 'object' && !Array.isArray(value)) {\n\t\t\t// Sort object keys, not values\n\t\t\tresult[key] = keysSorter(value);\n\t\t} else {\n\t\t\tresult[key] = value;\n\t\t}\n\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 = {encode: true,\n\t\tstrict: true,\n\t\tarrayFormat: 'none',\n\t\tarrayFormatSeparator: ',', ...options};\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\tif (queryString) {\n\t\tqueryString = `?${queryString}`;\n\t}\n\n\tlet hash = getHash(object.url);\n\tif (object.fragmentIdentifier) {\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","/**\n * @copyright Copyright (c) 2022 John Molakvoæ \n *\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 */\nimport { generateUrl } from '@nextcloud/router';\nimport queryString from 'query-string';\nimport Router, { RawLocation, Route } from 'vue-router';\nimport Vue from 'vue';\nimport { ErrorHandler } from 'vue-router/types/router';\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' },\n },\n {\n path: '/:view/:fileid?',\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","import Vue from 'vue';\nimport { createPinia, PiniaVuePlugin } from 'pinia';\nimport { getNavigation } from '@nextcloud/files';\nimport { getRequestToken } from '@nextcloud/auth';\nimport FilesListView from './views/FilesList.vue';\nimport NavigationView from './views/Navigation.vue';\nimport router from './router/router';\nimport RouterService from './services/RouterService';\nimport SettingsModel from './models/Setting.js';\nimport SettingsService from './services/Settings.js';\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);\nconst pinia = createPinia();\n// Init Navigation Service\nconst Navigation = 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 });\n// Init Navigation View\nconst View = Vue.extend(NavigationView);\nconst FilesNavigationRoot = new View({\n name: 'FilesNavigationRoot',\n propsData: {\n Navigation,\n },\n router,\n pinia,\n});\nFilesNavigationRoot.$mount('#app-navigation-files');\n// Init content list view\nconst ListView = Vue.extend(FilesListView);\nconst FilesList = new ListView({\n name: 'FilesListRoot',\n router,\n pinia,\n});\nFilesList.$mount('#app-content-vue');\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 * @copyright Copyright (c) 2019 Gary Kim \n *\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 */\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 * @copyright Copyright (c) 2019 Gary Kim \n * @copyright Copyright (c) 2019 John Molakvoæ \n *\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 */\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\";\nimport ___CSS_LOADER_GET_URL_IMPORT___ from \"../../../css-loader/dist/runtime/getUrl.js\";\nvar ___CSS_LOADER_URL_IMPORT_0___ = new URL(\"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGhlaWdodD0iMTYiIHdpZHRoPSIxNiI+CiAgPHBhdGggZD0iTTE0IDEyLjNMMTIuMyAxNCA4IDkuNyAzLjcgMTQgMiAxMi4zIDYuMyA4IDIgMy43IDMuNyAyIDggNi4zIDEyLjMgMiAxNCAzLjcgOS43IDh6Ii8+Cjwvc3ZnPgo=\", import.meta.url);\nvar ___CSS_LOADER_URL_IMPORT_1___ = new URL(\"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGhlaWdodD0iMTYiIHdpZHRoPSIxNiI+CiAgPHBhdGggZD0iTTE0IDEyLjNMMTIuMyAxNCA4IDkuNyAzLjcgMTQgMiAxMi4zIDYuMyA4IDIgMy43IDMuNyAyIDggNi4zIDEyLjMgMiAxNCAzLjcgOS43IDh6IiBzdHlsZT0iZmlsbC1vcGFjaXR5OjE7ZmlsbDojZmZmZmZmIi8+Cjwvc3ZnPgo=\", import.meta.url);\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\nvar ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___);\nvar ___CSS_LOADER_URL_REPLACEMENT_1___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_1___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `@charset \"UTF-8\";\n/**\n * @copyright Copyright (c) 2019 Julius Härtl \n *\n * @author Julius Härtl \n * @author John Molakvoæ \n *\n * @license GNU AGPL version 3 or any later version\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.toastify.dialogs {\n min-width: 200px;\n background: none;\n background-color: var(--color-main-background);\n color: var(--color-main-text);\n box-shadow: 0 0 6px 0 var(--color-box-shadow);\n padding: 0 12px;\n margin-top: 45px;\n position: fixed;\n z-index: 10100;\n border-radius: var(--border-radius);\n display: flex;\n align-items: center;\n}\n.toastify.dialogs .toast-undo-container {\n display: flex;\n align-items: center;\n}\n.toastify.dialogs .toast-undo-button,\n.toastify.dialogs .toast-close {\n position: static;\n overflow: hidden;\n box-sizing: border-box;\n min-width: 44px;\n height: 100%;\n padding: 12px;\n white-space: nowrap;\n background-repeat: no-repeat;\n background-position: center;\n background-color: transparent;\n min-height: 0;\n}\n.toastify.dialogs .toast-undo-button.toast-close,\n.toastify.dialogs .toast-close.toast-close {\n text-indent: 0;\n opacity: .4;\n border: none;\n min-height: 44px;\n margin-left: 10px;\n font-size: 0;\n}\n.toastify.dialogs .toast-undo-button.toast-close:before,\n.toastify.dialogs .toast-close.toast-close:before {\n background-image: url(${___CSS_LOADER_URL_REPLACEMENT_0___});\n content: \" \";\n filter: var(--background-invert-if-dark);\n display: inline-block;\n width: 16px;\n height: 16px;\n}\n.toastify.dialogs .toast-undo-button.toast-undo-button,\n.toastify.dialogs .toast-close.toast-undo-button {\n height: calc(100% - 6px);\n margin: 3px 3px 3px 12px;\n}\n.toastify.dialogs .toast-undo-button:hover,\n.toastify.dialogs .toast-undo-button:focus,\n.toastify.dialogs .toast-undo-button:active,\n.toastify.dialogs .toast-close:hover,\n.toastify.dialogs .toast-close:focus,\n.toastify.dialogs .toast-close:active {\n cursor: pointer;\n opacity: 1;\n}\n.toastify.dialogs.toastify-top {\n right: 10px;\n}\n.toastify.dialogs.toast-with-click {\n cursor: pointer;\n}\n.toastify.dialogs.toast-error {\n border-left: 3px solid var(--color-error);\n}\n.toastify.dialogs.toast-info {\n border-left: 3px solid var(--color-primary);\n}\n.toastify.dialogs.toast-warning {\n border-left: 3px solid var(--color-warning);\n}\n.toastify.dialogs.toast-success,\n.toastify.dialogs.toast-undo {\n border-left: 3px solid var(--color-success);\n}\n.theme--dark .toastify.dialogs .toast-close.toast-close:before {\n background-image: url(${___CSS_LOADER_URL_REPLACEMENT_1___});\n}\n._file-picker__file-icon_1vgv4_5 {\n width: 32px;\n height: 32px;\n min-width: 32px;\n min-height: 32px;\n background-repeat: no-repeat;\n background-size: contain;\n display: flex;\n justify-content: center;\n}\ntr.file-picker__row[data-v-6aded0d9] {\n height: var(--row-height, 50px);\n}\ntr.file-picker__row td[data-v-6aded0d9] {\n cursor: pointer;\n overflow: hidden;\n text-overflow: ellipsis;\n border-bottom: none;\n}\ntr.file-picker__row td[data-v-6aded0d9]:not(.row-checkbox) {\n padding-inline: 14px 0;\n}\ntr.file-picker__row td.row-size[data-v-6aded0d9] {\n text-align: end;\n padding-inline: 0 14px;\n}\ntr.file-picker__row td.row-name[data-v-6aded0d9] {\n padding-inline: 2px 0;\n}\n@keyframes gradient-6aded0d9 {\n 0% {\n background-position: 0% 50%;\n }\n 50% {\n background-position: 100% 50%;\n }\n to {\n background-position: 0% 50%;\n }\n}\n.loading-row .row-checkbox[data-v-6aded0d9] {\n text-align: center !important;\n}\n.loading-row span[data-v-6aded0d9] {\n display: inline-block;\n height: 24px;\n background: linear-gradient(to right, var(--color-background-darker), var(--color-text-maxcontrast), var(--color-background-darker));\n background-size: 600px 100%;\n border-radius: var(--border-radius);\n animation: gradient-6aded0d9 12s ease infinite;\n}\n.loading-row .row-wrapper[data-v-6aded0d9] {\n display: inline-flex;\n align-items: center;\n}\n.loading-row .row-checkbox span[data-v-6aded0d9] {\n width: 24px;\n}\n.loading-row .row-name span[data-v-6aded0d9]:last-of-type {\n margin-inline-start: 6px;\n width: 130px;\n}\n.loading-row .row-size span[data-v-6aded0d9] {\n width: 80px;\n}\n.loading-row .row-modified span[data-v-6aded0d9] {\n width: 90px;\n}\ntr.file-picker__row[data-v-ee6f34b5] {\n height: var(--row-height, 50px);\n}\ntr.file-picker__row td[data-v-ee6f34b5] {\n cursor: pointer;\n overflow: hidden;\n text-overflow: ellipsis;\n border-bottom: none;\n}\ntr.file-picker__row td[data-v-ee6f34b5]:not(.row-checkbox) {\n padding-inline: 14px 0;\n}\ntr.file-picker__row td.row-size[data-v-ee6f34b5] {\n text-align: end;\n padding-inline: 0 14px;\n}\ntr.file-picker__row td.row-name[data-v-ee6f34b5] {\n padding-inline: 2px 0;\n}\n.file-picker__row--selected[data-v-ee6f34b5] {\n background-color: var(--color-background-dark);\n}\n.file-picker__row[data-v-ee6f34b5]:hover {\n background-color: var(--color-background-hover);\n}\n.file-picker__name-container[data-v-ee6f34b5] {\n display: flex;\n justify-content: start;\n align-items: center;\n height: 100%;\n}\n.file-picker__file-name[data-v-ee6f34b5] {\n padding-inline-start: 6px;\n min-width: 0;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n.file-picker__file-extension[data-v-ee6f34b5] {\n color: var(--color-text-maxcontrast);\n min-width: fit-content;\n}\n.file-picker__header-preview[data-v-4297db37] {\n width: 22px;\n height: 32px;\n flex: 0 0 auto;\n}\n.file-picker__files[data-v-4297db37] {\n margin: 2px;\n margin-inline-start: 12px;\n overflow: scroll auto;\n}\n.file-picker__files table[data-v-4297db37] {\n width: 100%;\n max-height: 100%;\n table-layout: fixed;\n}\n.file-picker__files th[data-v-4297db37] {\n position: -webkit-sticky;\n position: sticky;\n z-index: 1;\n top: 0;\n background-color: var(--color-main-background);\n padding: 2px;\n}\n.file-picker__files th .header-wrapper[data-v-4297db37] {\n display: flex;\n}\n.file-picker__files th.row-checkbox[data-v-4297db37] {\n width: 44px;\n}\n.file-picker__files th.row-name[data-v-4297db37] {\n width: 230px;\n}\n.file-picker__files th.row-size[data-v-4297db37] {\n width: 100px;\n}\n.file-picker__files th.row-modified[data-v-4297db37] {\n width: 120px;\n}\n.file-picker__files th[data-v-4297db37]:not(.row-size) .button-vue__wrapper {\n justify-content: start;\n flex-direction: row-reverse;\n}\n.file-picker__files th[data-v-4297db37]:not(.row-size) .button-vue {\n padding-inline: 16px 4px;\n}\n.file-picker__files th.row-size[data-v-4297db37] .button-vue__wrapper {\n justify-content: end;\n}\n.file-picker__files th[data-v-4297db37] .button-vue__wrapper {\n color: var(--color-text-maxcontrast);\n}\n.file-picker__files th[data-v-4297db37] .button-vue__wrapper .button-vue__text {\n font-weight: 400;\n}\n.file-picker__breadcrumbs[data-v-3bc9efa5] {\n flex-grow: 0 !important;\n}\n.file-picker__side[data-v-fcfd0f23] {\n display: flex;\n flex-direction: column;\n align-items: start;\n gap: .5rem;\n min-width: 200px;\n padding-block: 2px;\n overflow: auto;\n}\n.file-picker__side[data-v-fcfd0f23] .button-vue__wrapper {\n justify-content: start;\n}\n.file-picker__filter-input[data-v-fcfd0f23] {\n margin-block: 7px;\n max-width: 260px;\n}\n@media (max-width: 736px) {\n .file-picker__side[data-v-fcfd0f23] {\n flex-direction: row;\n min-width: unset;\n }\n}\n@media (max-width: 512px) {\n .file-picker__side[data-v-fcfd0f23] {\n flex-direction: row;\n min-width: unset;\n }\n .file-picker__filter-input[data-v-fcfd0f23] {\n max-width: unset;\n }\n}\n.file-picker__navigation {\n padding-inline: 2px;\n}\n.file-picker__navigation,\n.file-picker__navigation * {\n box-sizing: border-box;\n}\n.file-picker__navigation .v-select.select {\n min-width: 220px;\n}\n@media (min-width: 513px) and (max-width: 736px) {\n .file-picker__navigation {\n gap: 11px;\n }\n}\n@media (max-width: 512px) {\n .file-picker__navigation {\n flex-direction: column-reverse !important;\n }\n}\n.file-picker__view[data-v-86a13079] {\n height: 50px;\n display: flex;\n justify-content: start;\n align-items: center;\n}\n.file-picker__view h3[data-v-86a13079] {\n font-weight: 700;\n height: fit-content;\n margin: 0;\n}\n.file-picker__main[data-v-86a13079] {\n box-sizing: border-box;\n width: 100%;\n display: flex;\n flex-direction: column;\n min-height: 0;\n flex: 1;\n padding-inline: 2px;\n}\n.file-picker__main *[data-v-86a13079] {\n box-sizing: border-box;\n}\n[data-v-86a13079] .file-picker {\n height: min(80vh, 800px);\n}\n@media (max-width: 512px) {\n [data-v-86a13079] .file-picker {\n height: calc(100% - 16px - var(--default-clickable-area));\n }\n}\n[data-v-86a13079] .file-picker__content {\n display: flex;\n flex-direction: column;\n overflow: hidden;\n}\n`, \"\",{\"version\":3,\"sources\":[\"webpack://./node_modules/@nextcloud/dialogs/dist/style.css\"],\"names\":[],\"mappings\":\"AAAA,gBAAgB;AAChB;;;;;;;;;;;;;;;;;;;;EAoBE;AACF;EACE,gBAAgB;EAChB,gBAAgB;EAChB,8CAA8C;EAC9C,6BAA6B;EAC7B,6CAA6C;EAC7C,eAAe;EACf,gBAAgB;EAChB,eAAe;EACf,cAAc;EACd,mCAAmC;EACnC,aAAa;EACb,mBAAmB;AACrB;AACA;EACE,aAAa;EACb,mBAAmB;AACrB;AACA;;EAEE,gBAAgB;EAChB,gBAAgB;EAChB,sBAAsB;EACtB,eAAe;EACf,YAAY;EACZ,aAAa;EACb,mBAAmB;EACnB,4BAA4B;EAC5B,2BAA2B;EAC3B,6BAA6B;EAC7B,aAAa;AACf;AACA;;EAEE,cAAc;EACd,WAAW;EACX,YAAY;EACZ,gBAAgB;EAChB,iBAAiB;EACjB,YAAY;AACd;AACA;;EAEE,yDAAiR;EACjR,YAAY;EACZ,wCAAwC;EACxC,qBAAqB;EACrB,WAAW;EACX,YAAY;AACd;AACA;;EAEE,wBAAwB;EACxB,wBAAwB;AAC1B;AACA;;;;;;EAME,eAAe;EACf,UAAU;AACZ;AACA;EACE,WAAW;AACb;AACA;EACE,eAAe;AACjB;AACA;EACE,yCAAyC;AAC3C;AACA;EACE,2CAA2C;AAC7C;AACA;EACE,2CAA2C;AAC7C;AACA;;EAEE,2CAA2C;AAC7C;AACA;EACE,yDAAiU;AACnU;AACA;EACE,WAAW;EACX,YAAY;EACZ,eAAe;EACf,gBAAgB;EAChB,4BAA4B;EAC5B,wBAAwB;EACxB,aAAa;EACb,uBAAuB;AACzB;AACA;EACE,+BAA+B;AACjC;AACA;EACE,eAAe;EACf,gBAAgB;EAChB,uBAAuB;EACvB,mBAAmB;AACrB;AACA;EACE,sBAAsB;AACxB;AACA;EACE,eAAe;EACf,sBAAsB;AACxB;AACA;EACE,qBAAqB;AACvB;AACA;EACE;IACE,2BAA2B;EAC7B;EACA;IACE,6BAA6B;EAC/B;EACA;IACE,2BAA2B;EAC7B;AACF;AACA;EACE,6BAA6B;AAC/B;AACA;EACE,qBAAqB;EACrB,YAAY;EACZ,oIAAoI;EACpI,2BAA2B;EAC3B,mCAAmC;EACnC,8CAA8C;AAChD;AACA;EACE,oBAAoB;EACpB,mBAAmB;AACrB;AACA;EACE,WAAW;AACb;AACA;EACE,wBAAwB;EACxB,YAAY;AACd;AACA;EACE,WAAW;AACb;AACA;EACE,WAAW;AACb;AACA;EACE,+BAA+B;AACjC;AACA;EACE,eAAe;EACf,gBAAgB;EAChB,uBAAuB;EACvB,mBAAmB;AACrB;AACA;EACE,sBAAsB;AACxB;AACA;EACE,eAAe;EACf,sBAAsB;AACxB;AACA;EACE,qBAAqB;AACvB;AACA;EACE,8CAA8C;AAChD;AACA;EACE,+CAA+C;AACjD;AACA;EACE,aAAa;EACb,sBAAsB;EACtB,mBAAmB;EACnB,YAAY;AACd;AACA;EACE,yBAAyB;EACzB,YAAY;EACZ,gBAAgB;EAChB,uBAAuB;AACzB;AACA;EACE,oCAAoC;EACpC,sBAAsB;AACxB;AACA;EACE,WAAW;EACX,YAAY;EACZ,cAAc;AAChB;AACA;EACE,WAAW;EACX,yBAAyB;EACzB,qBAAqB;AACvB;AACA;EACE,WAAW;EACX,gBAAgB;EAChB,mBAAmB;AACrB;AACA;EACE,wBAAwB;EACxB,gBAAgB;EAChB,UAAU;EACV,MAAM;EACN,8CAA8C;EAC9C,YAAY;AACd;AACA;EACE,aAAa;AACf;AACA;EACE,WAAW;AACb;AACA;EACE,YAAY;AACd;AACA;EACE,YAAY;AACd;AACA;EACE,YAAY;AACd;AACA;EACE,sBAAsB;EACtB,2BAA2B;AAC7B;AACA;EACE,wBAAwB;AAC1B;AACA;EACE,oBAAoB;AACtB;AACA;EACE,oCAAoC;AACtC;AACA;EACE,gBAAgB;AAClB;AACA;EACE,uBAAuB;AACzB;AACA;EACE,aAAa;EACb,sBAAsB;EACtB,kBAAkB;EAClB,UAAU;EACV,gBAAgB;EAChB,kBAAkB;EAClB,cAAc;AAChB;AACA;EACE,sBAAsB;AACxB;AACA;EACE,iBAAiB;EACjB,gBAAgB;AAClB;AACA;EACE;IACE,mBAAmB;IACnB,gBAAgB;EAClB;AACF;AACA;EACE;IACE,mBAAmB;IACnB,gBAAgB;EAClB;EACA;IACE,gBAAgB;EAClB;AACF;AACA;EACE,mBAAmB;AACrB;AACA;;EAEE,sBAAsB;AACxB;AACA;EACE,gBAAgB;AAClB;AACA;EACE;IACE,SAAS;EACX;AACF;AACA;EACE;IACE,yCAAyC;EAC3C;AACF;AACA;EACE,YAAY;EACZ,aAAa;EACb,sBAAsB;EACtB,mBAAmB;AACrB;AACA;EACE,gBAAgB;EAChB,mBAAmB;EACnB,SAAS;AACX;AACA;EACE,sBAAsB;EACtB,WAAW;EACX,aAAa;EACb,sBAAsB;EACtB,aAAa;EACb,OAAO;EACP,mBAAmB;AACrB;AACA;EACE,sBAAsB;AACxB;AACA;EACE,wBAAwB;AAC1B;AACA;EACE;IACE,yDAAyD;EAC3D;AACF;AACA;EACE,aAAa;EACb,sBAAsB;EACtB,gBAAgB;AAClB\",\"sourcesContent\":[\"@charset \\\"UTF-8\\\";\\n/**\\n * @copyright Copyright (c) 2019 Julius Härtl \\n *\\n * @author Julius Härtl \\n * @author John Molakvoæ \\n *\\n * @license GNU AGPL version 3 or any later version\\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.toastify.dialogs {\\n min-width: 200px;\\n background: none;\\n background-color: var(--color-main-background);\\n color: var(--color-main-text);\\n box-shadow: 0 0 6px 0 var(--color-box-shadow);\\n padding: 0 12px;\\n margin-top: 45px;\\n position: fixed;\\n z-index: 10100;\\n border-radius: var(--border-radius);\\n display: flex;\\n align-items: center;\\n}\\n.toastify.dialogs .toast-undo-container {\\n display: flex;\\n align-items: center;\\n}\\n.toastify.dialogs .toast-undo-button,\\n.toastify.dialogs .toast-close {\\n position: static;\\n overflow: hidden;\\n box-sizing: border-box;\\n min-width: 44px;\\n height: 100%;\\n padding: 12px;\\n white-space: nowrap;\\n background-repeat: no-repeat;\\n background-position: center;\\n background-color: transparent;\\n min-height: 0;\\n}\\n.toastify.dialogs .toast-undo-button.toast-close,\\n.toastify.dialogs .toast-close.toast-close {\\n text-indent: 0;\\n opacity: .4;\\n border: none;\\n min-height: 44px;\\n margin-left: 10px;\\n font-size: 0;\\n}\\n.toastify.dialogs .toast-undo-button.toast-close:before,\\n.toastify.dialogs .toast-close.toast-close:before {\\n background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGhlaWdodD0iMTYiIHdpZHRoPSIxNiI+CiAgPHBhdGggZD0iTTE0IDEyLjNMMTIuMyAxNCA4IDkuNyAzLjcgMTQgMiAxMi4zIDYuMyA4IDIgMy43IDMuNyAyIDggNi4zIDEyLjMgMiAxNCAzLjcgOS43IDh6Ii8+Cjwvc3ZnPgo=);\\n content: \\\" \\\";\\n filter: var(--background-invert-if-dark);\\n display: inline-block;\\n width: 16px;\\n height: 16px;\\n}\\n.toastify.dialogs .toast-undo-button.toast-undo-button,\\n.toastify.dialogs .toast-close.toast-undo-button {\\n height: calc(100% - 6px);\\n margin: 3px 3px 3px 12px;\\n}\\n.toastify.dialogs .toast-undo-button:hover,\\n.toastify.dialogs .toast-undo-button:focus,\\n.toastify.dialogs .toast-undo-button:active,\\n.toastify.dialogs .toast-close:hover,\\n.toastify.dialogs .toast-close:focus,\\n.toastify.dialogs .toast-close:active {\\n cursor: pointer;\\n opacity: 1;\\n}\\n.toastify.dialogs.toastify-top {\\n right: 10px;\\n}\\n.toastify.dialogs.toast-with-click {\\n cursor: pointer;\\n}\\n.toastify.dialogs.toast-error {\\n border-left: 3px solid var(--color-error);\\n}\\n.toastify.dialogs.toast-info {\\n border-left: 3px solid var(--color-primary);\\n}\\n.toastify.dialogs.toast-warning {\\n border-left: 3px solid var(--color-warning);\\n}\\n.toastify.dialogs.toast-success,\\n.toastify.dialogs.toast-undo {\\n border-left: 3px solid var(--color-success);\\n}\\n.theme--dark .toastify.dialogs .toast-close.toast-close:before {\\n background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGhlaWdodD0iMTYiIHdpZHRoPSIxNiI+CiAgPHBhdGggZD0iTTE0IDEyLjNMMTIuMyAxNCA4IDkuNyAzLjcgMTQgMiAxMi4zIDYuMyA4IDIgMy43IDMuNyAyIDggNi4zIDEyLjMgMiAxNCAzLjcgOS43IDh6IiBzdHlsZT0iZmlsbC1vcGFjaXR5OjE7ZmlsbDojZmZmZmZmIi8+Cjwvc3ZnPgo=);\\n}\\n._file-picker__file-icon_1vgv4_5 {\\n width: 32px;\\n height: 32px;\\n min-width: 32px;\\n min-height: 32px;\\n background-repeat: no-repeat;\\n background-size: contain;\\n display: flex;\\n justify-content: center;\\n}\\ntr.file-picker__row[data-v-6aded0d9] {\\n height: var(--row-height, 50px);\\n}\\ntr.file-picker__row td[data-v-6aded0d9] {\\n cursor: pointer;\\n overflow: hidden;\\n text-overflow: ellipsis;\\n border-bottom: none;\\n}\\ntr.file-picker__row td[data-v-6aded0d9]:not(.row-checkbox) {\\n padding-inline: 14px 0;\\n}\\ntr.file-picker__row td.row-size[data-v-6aded0d9] {\\n text-align: end;\\n padding-inline: 0 14px;\\n}\\ntr.file-picker__row td.row-name[data-v-6aded0d9] {\\n padding-inline: 2px 0;\\n}\\n@keyframes gradient-6aded0d9 {\\n 0% {\\n background-position: 0% 50%;\\n }\\n 50% {\\n background-position: 100% 50%;\\n }\\n to {\\n background-position: 0% 50%;\\n }\\n}\\n.loading-row .row-checkbox[data-v-6aded0d9] {\\n text-align: center !important;\\n}\\n.loading-row span[data-v-6aded0d9] {\\n display: inline-block;\\n height: 24px;\\n background: linear-gradient(to right, var(--color-background-darker), var(--color-text-maxcontrast), var(--color-background-darker));\\n background-size: 600px 100%;\\n border-radius: var(--border-radius);\\n animation: gradient-6aded0d9 12s ease infinite;\\n}\\n.loading-row .row-wrapper[data-v-6aded0d9] {\\n display: inline-flex;\\n align-items: center;\\n}\\n.loading-row .row-checkbox span[data-v-6aded0d9] {\\n width: 24px;\\n}\\n.loading-row .row-name span[data-v-6aded0d9]:last-of-type {\\n margin-inline-start: 6px;\\n width: 130px;\\n}\\n.loading-row .row-size span[data-v-6aded0d9] {\\n width: 80px;\\n}\\n.loading-row .row-modified span[data-v-6aded0d9] {\\n width: 90px;\\n}\\ntr.file-picker__row[data-v-ee6f34b5] {\\n height: var(--row-height, 50px);\\n}\\ntr.file-picker__row td[data-v-ee6f34b5] {\\n cursor: pointer;\\n overflow: hidden;\\n text-overflow: ellipsis;\\n border-bottom: none;\\n}\\ntr.file-picker__row td[data-v-ee6f34b5]:not(.row-checkbox) {\\n padding-inline: 14px 0;\\n}\\ntr.file-picker__row td.row-size[data-v-ee6f34b5] {\\n text-align: end;\\n padding-inline: 0 14px;\\n}\\ntr.file-picker__row td.row-name[data-v-ee6f34b5] {\\n padding-inline: 2px 0;\\n}\\n.file-picker__row--selected[data-v-ee6f34b5] {\\n background-color: var(--color-background-dark);\\n}\\n.file-picker__row[data-v-ee6f34b5]:hover {\\n background-color: var(--color-background-hover);\\n}\\n.file-picker__name-container[data-v-ee6f34b5] {\\n display: flex;\\n justify-content: start;\\n align-items: center;\\n height: 100%;\\n}\\n.file-picker__file-name[data-v-ee6f34b5] {\\n padding-inline-start: 6px;\\n min-width: 0;\\n overflow: hidden;\\n text-overflow: ellipsis;\\n}\\n.file-picker__file-extension[data-v-ee6f34b5] {\\n color: var(--color-text-maxcontrast);\\n min-width: fit-content;\\n}\\n.file-picker__header-preview[data-v-4297db37] {\\n width: 22px;\\n height: 32px;\\n flex: 0 0 auto;\\n}\\n.file-picker__files[data-v-4297db37] {\\n margin: 2px;\\n margin-inline-start: 12px;\\n overflow: scroll auto;\\n}\\n.file-picker__files table[data-v-4297db37] {\\n width: 100%;\\n max-height: 100%;\\n table-layout: fixed;\\n}\\n.file-picker__files th[data-v-4297db37] {\\n position: -webkit-sticky;\\n position: sticky;\\n z-index: 1;\\n top: 0;\\n background-color: var(--color-main-background);\\n padding: 2px;\\n}\\n.file-picker__files th .header-wrapper[data-v-4297db37] {\\n display: flex;\\n}\\n.file-picker__files th.row-checkbox[data-v-4297db37] {\\n width: 44px;\\n}\\n.file-picker__files th.row-name[data-v-4297db37] {\\n width: 230px;\\n}\\n.file-picker__files th.row-size[data-v-4297db37] {\\n width: 100px;\\n}\\n.file-picker__files th.row-modified[data-v-4297db37] {\\n width: 120px;\\n}\\n.file-picker__files th[data-v-4297db37]:not(.row-size) .button-vue__wrapper {\\n justify-content: start;\\n flex-direction: row-reverse;\\n}\\n.file-picker__files th[data-v-4297db37]:not(.row-size) .button-vue {\\n padding-inline: 16px 4px;\\n}\\n.file-picker__files th.row-size[data-v-4297db37] .button-vue__wrapper {\\n justify-content: end;\\n}\\n.file-picker__files th[data-v-4297db37] .button-vue__wrapper {\\n color: var(--color-text-maxcontrast);\\n}\\n.file-picker__files th[data-v-4297db37] .button-vue__wrapper .button-vue__text {\\n font-weight: 400;\\n}\\n.file-picker__breadcrumbs[data-v-3bc9efa5] {\\n flex-grow: 0 !important;\\n}\\n.file-picker__side[data-v-fcfd0f23] {\\n display: flex;\\n flex-direction: column;\\n align-items: start;\\n gap: .5rem;\\n min-width: 200px;\\n padding-block: 2px;\\n overflow: auto;\\n}\\n.file-picker__side[data-v-fcfd0f23] .button-vue__wrapper {\\n justify-content: start;\\n}\\n.file-picker__filter-input[data-v-fcfd0f23] {\\n margin-block: 7px;\\n max-width: 260px;\\n}\\n@media (max-width: 736px) {\\n .file-picker__side[data-v-fcfd0f23] {\\n flex-direction: row;\\n min-width: unset;\\n }\\n}\\n@media (max-width: 512px) {\\n .file-picker__side[data-v-fcfd0f23] {\\n flex-direction: row;\\n min-width: unset;\\n }\\n .file-picker__filter-input[data-v-fcfd0f23] {\\n max-width: unset;\\n }\\n}\\n.file-picker__navigation {\\n padding-inline: 2px;\\n}\\n.file-picker__navigation,\\n.file-picker__navigation * {\\n box-sizing: border-box;\\n}\\n.file-picker__navigation .v-select.select {\\n min-width: 220px;\\n}\\n@media (min-width: 513px) and (max-width: 736px) {\\n .file-picker__navigation {\\n gap: 11px;\\n }\\n}\\n@media (max-width: 512px) {\\n .file-picker__navigation {\\n flex-direction: column-reverse !important;\\n }\\n}\\n.file-picker__view[data-v-86a13079] {\\n height: 50px;\\n display: flex;\\n justify-content: start;\\n align-items: center;\\n}\\n.file-picker__view h3[data-v-86a13079] {\\n font-weight: 700;\\n height: fit-content;\\n margin: 0;\\n}\\n.file-picker__main[data-v-86a13079] {\\n box-sizing: border-box;\\n width: 100%;\\n display: flex;\\n flex-direction: column;\\n min-height: 0;\\n flex: 1;\\n padding-inline: 2px;\\n}\\n.file-picker__main *[data-v-86a13079] {\\n box-sizing: border-box;\\n}\\n[data-v-86a13079] .file-picker {\\n height: min(80vh, 800px);\\n}\\n@media (max-width: 512px) {\\n [data-v-86a13079] .file-picker {\\n height: calc(100% - 16px - var(--default-clickable-area));\\n }\\n}\\n[data-v-86a13079] .file-picker__content {\\n display: flex;\\n flex-direction: column;\\n overflow: hidden;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\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-f09fb109] {\n display: inline-flex;\n align-items: center;\n height: 44px;\n}\n.upload-picker__progress[data-v-f09fb109] {\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-f09fb109] {\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n}\n.upload-picker--uploading .upload-picker__progress[data-v-f09fb109] {\n max-width: 200px;\n margin-right: 20px;\n margin-left: 8px;\n}\n.upload-picker--paused .upload-picker__progress[data-v-f09fb109] {\n animation: breathing-f09fb109 3s ease-out infinite normal;\n}\n@keyframes breathing-f09fb109 {\n 0% {\n opacity: .5;\n }\n 25% {\n opacity: 1;\n }\n 60% {\n opacity: .5;\n }\n to {\n opacity: .5;\n }\n}\n`, \"\",{\"version\":3,\"sources\":[\"webpack://./node_modules/@nextcloud/upload/dist/assets/index-f2495ce6.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;EACE;IACE,WAAW;EACb;EACA;IACE,UAAU;EACZ;EACA;IACE,WAAW;EACb;EACA;IACE,WAAW;EACb;AACF\",\"sourcesContent\":[\".upload-picker[data-v-f09fb109] {\\n display: inline-flex;\\n align-items: center;\\n height: 44px;\\n}\\n.upload-picker__progress[data-v-f09fb109] {\\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-f09fb109] {\\n overflow: hidden;\\n white-space: nowrap;\\n text-overflow: ellipsis;\\n}\\n.upload-picker--uploading .upload-picker__progress[data-v-f09fb109] {\\n max-width: 200px;\\n margin-right: 20px;\\n margin-left: 8px;\\n}\\n.upload-picker--paused .upload-picker__progress[data-v-f09fb109] {\\n animation: breathing-f09fb109 3s ease-out infinite normal;\\n}\\n@keyframes breathing-f09fb109 {\\n 0% {\\n opacity: .5;\\n }\\n 25% {\\n opacity: 1;\\n }\\n 60% {\\n opacity: .5;\\n }\\n to {\\n opacity: .5;\\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, `.breadcrumb[data-v-c33b6662]{flex:1 1 100% !important;width:100%}.breadcrumb[data-v-c33b6662] a{cursor:pointer !important}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/components/BreadCrumbs.vue\"],\"names\":[],\"mappings\":\"AACA,6BAEC,wBAAA,CACA,UAAA,CAEA,+BACC,yBAAA\",\"sourcesContent\":[\"\\n.breadcrumb {\\n\\t// Take as much space as possible\\n\\tflex: 1 1 100% !important;\\n\\twidth: 100%;\\n\\n\\t::v-deep a {\\n\\t\\tcursor: pointer !important;\\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-drop-notice[data-v-7e0e423e]{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-7e0e423e]{margin-left:16px;color:inherit}.files-list__drag-drop-notice-wrapper[data-v-7e0e423e]{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-04e52abc]{color:#a08b00;min-width:unset !important;min-height:unset !important}.favorite-marker-icon[data-v-04e52abc] svg{width:26px !important;height:26px !important;max-width:unset !important;max-height:unset !important}.favorite-marker-icon[data-v-04e52abc] 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,aAAA,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: #a08b00;\\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, `[data-v-6dd8d639] .button-vue--icon-and-text .button-vue__text{color:var(--color-primary-element)}[data-v-6dd8d639] .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\":\"AAGC,+DACC,kCAAA,CAED,+DACC,kCAAA\",\"sourcesContent\":[\"\\n\\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-58f7b64d]{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-58f7b64d]{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-585fdb03]{user-select:none;color:var(--color-text-maxcontrast) !important}.files-list__column--sortable[data-v-585fdb03]{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-72bacee0]{flex:1 1 100% !important}.files-list__row-actions-batch[data-v-72bacee0] .button-vue__wrapper{width:100%}.files-list__row-actions-batch[data-v-72bacee0] .button-vue__wrapper span.button-vue__text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/components/FilesListTableHeaderActions.vue\"],\"names\":[],\"mappings\":\"AACA,gDACC,wBAAA,CAGA,qEACC,UAAA,CACA,2FACC,eAAA,CACA,sBAAA,CACA,kBAAA\",\"sourcesContent\":[\"\\n.files-list__row-actions-batch {\\n\\tflex: 1 1 100% !important;\\n\\n\\t// Remove when https://github.com/nextcloud/nextcloud-vue/pull/3936 is merged\\n\\t::v-deep .button-vue__wrapper {\\n\\t\\twidth: 100%;\\n\\t\\tspan.button-vue__text {\\n\\t\\t\\toverflow: hidden;\\n\\t\\t\\ttext-overflow: ellipsis;\\n\\t\\t\\twhite-space: nowrap;\\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, `.files-list__column-sort-button[data-v-097f69d4]{margin:0 calc(var(--cell-margin)*-1);min-width:calc(100% - 3*var(--cell-margin)) !important}.files-list__column-sort-button-text[data-v-097f69d4]{color:var(--color-text-maxcontrast);font-weight:normal}.files-list__column-sort-button-icon[data-v-097f69d4]{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-097f69d4]{inset-inline-start:10px}.files-list__column-sort-button--active .files-list__column-sort-button-icon[data-v-097f69d4],.files-list__column-sort-button:hover .files-list__column-sort-button-icon[data-v-097f69d4],.files-list__column-sort-button:focus .files-list__column-sort-button-icon[data-v-097f69d4],.files-list__column-sort-button:active .files-list__column-sort-button-icon[data-v-097f69d4]{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-1b17ff10]{--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-1b17ff10] tbody{will-change:padding;contain:layout paint style;display:flex;flex-direction:column;width:100%;position:relative}.files-list[data-v-1b17ff10] tbody tr{contain:strict}.files-list[data-v-1b17ff10] tbody tr:hover,.files-list[data-v-1b17ff10] tbody tr:focus{background-color:var(--color-background-dark)}.files-list[data-v-1b17ff10] .files-list__before{display:flex;flex-direction:column}.files-list[data-v-1b17ff10] .files-list__table{display:block}.files-list[data-v-1b17ff10] .files-list__thead,.files-list[data-v-1b17ff10] .files-list__tfoot{display:flex;flex-direction:column;width:100%;background-color:var(--color-main-background)}.files-list[data-v-1b17ff10] .files-list__thead{position:sticky;z-index:10;top:0}.files-list[data-v-1b17ff10] .files-list__tfoot{min-height:300px}.files-list[data-v-1b17ff10] 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-1b17ff10] td,.files-list[data-v-1b17ff10] 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-1b17ff10] td span,.files-list[data-v-1b17ff10] th span{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.files-list[data-v-1b17ff10] .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-1b17ff10] .files-list__row-checkbox{justify-content:center}.files-list[data-v-1b17ff10] .files-list__row-checkbox .checkbox-radio-switch{display:flex;justify-content:center;--icon-size: var(--checkbox-size)}.files-list[data-v-1b17ff10] .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-1b17ff10] .files-list__row-checkbox .checkbox-radio-switch .checkbox-radio-switch__icon{margin:0 !important}.files-list[data-v-1b17ff10] .files-list__row:hover,.files-list[data-v-1b17ff10] .files-list__row:focus,.files-list[data-v-1b17ff10] .files-list__row:active,.files-list[data-v-1b17ff10] .files-list__row--active,.files-list[data-v-1b17ff10] .files-list__row--dragover{background-color:var(--color-background-hover);--color-text-maxcontrast: var(--color-main-text)}.files-list[data-v-1b17ff10] .files-list__row:hover>*,.files-list[data-v-1b17ff10] .files-list__row:focus>*,.files-list[data-v-1b17ff10] .files-list__row:active>*,.files-list[data-v-1b17ff10] .files-list__row--active>*,.files-list[data-v-1b17ff10] .files-list__row--dragover>*{--color-border: var(--color-border-dark)}.files-list[data-v-1b17ff10] .files-list__row:hover .favorite-marker-icon svg path,.files-list[data-v-1b17ff10] .files-list__row:focus .favorite-marker-icon svg path,.files-list[data-v-1b17ff10] .files-list__row:active .favorite-marker-icon svg path,.files-list[data-v-1b17ff10] .files-list__row--active .favorite-marker-icon svg path,.files-list[data-v-1b17ff10] .files-list__row--dragover .favorite-marker-icon svg path{stroke:var(--color-background-hover)}.files-list[data-v-1b17ff10] .files-list__row--dragover *{pointer-events:none}.files-list[data-v-1b17ff10] .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-1b17ff10] .files-list__row-icon *{cursor:pointer}.files-list[data-v-1b17ff10] .files-list__row-icon>span{justify-content:flex-start}.files-list[data-v-1b17ff10] .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-1b17ff10] .files-list__row-icon>span.folder-icon,.files-list[data-v-1b17ff10] .files-list__row-icon>span.folder-open-icon{margin:-3px}.files-list[data-v-1b17ff10] .files-list__row-icon>span.folder-icon svg,.files-list[data-v-1b17ff10] .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-1b17ff10] .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-1b17ff10] .files-list__row-icon-preview:not(.files-list__row-icon-preview--loaded){background:var(--color-loading-dark)}.files-list[data-v-1b17ff10] .files-list__row-icon-favorite{position:absolute;top:0px;right:-10px}.files-list[data-v-1b17ff10] .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-1b17ff10] .files-list__row-icon-overlay--file{color:var(--color-main-text);background:var(--color-main-background);border-radius:100%}.files-list[data-v-1b17ff10] .files-list__row-name{overflow:hidden;flex:1 1 auto}.files-list[data-v-1b17ff10] .files-list__row-name a{display:flex;align-items:center;width:100%;height:100%;min-width:0}.files-list[data-v-1b17ff10] .files-list__row-name a:focus-visible{outline:none}.files-list[data-v-1b17ff10] .files-list__row-name a:focus .files-list__row-name-text,.files-list[data-v-1b17ff10] .files-list__row-name a:focus-visible .files-list__row-name-text{outline:2px solid var(--color-main-text) !important;border-radius:20px}.files-list[data-v-1b17ff10] .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-1b17ff10] .files-list__row-name .files-list__row-name-ext{color:var(--color-text-maxcontrast);overflow:visible}.files-list[data-v-1b17ff10] .files-list__row-rename{width:100%;max-width:600px}.files-list[data-v-1b17ff10] .files-list__row-rename input{width:100%;margin-left:-8px;padding:2px 6px;border-width:2px}.files-list[data-v-1b17ff10] .files-list__row-rename input:invalid{border-color:var(--color-error);color:red}.files-list[data-v-1b17ff10] .files-list__row-actions{width:auto}.files-list[data-v-1b17ff10] .files-list__row-actions~td,.files-list[data-v-1b17ff10] .files-list__row-actions~th{margin:0 var(--cell-margin)}.files-list[data-v-1b17ff10] .files-list__row-actions button .button-vue__text{font-weight:normal}.files-list[data-v-1b17ff10] .files-list__row-action--inline{margin-right:7px}.files-list[data-v-1b17ff10] .files-list__row-mtime,.files-list[data-v-1b17ff10] .files-list__row-size{color:var(--color-text-maxcontrast)}.files-list[data-v-1b17ff10] .files-list__row-size{width:calc(var(--row-height)*1.5);justify-content:flex-end}.files-list[data-v-1b17ff10] .files-list__row-mtime{width:calc(var(--row-height)*2)}.files-list[data-v-1b17ff10] .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,iDACC,aAAA,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,sLAEC,mDAAA,CACA,kBAAA,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__table {\\n\\t\\t\\tdisplay: block;\\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&:focus-visible .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}\\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-2bae6012] .app-navigation-entry__name{margin-top:-6px}.app-navigation-entry__settings-quota progress[data-v-2bae6012]{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-14acd289]{display:flex;overflow:hidden;flex-direction:column;max-height:100%;position:relative}.files-list__header[data-v-14acd289]{display:flex;align-items:center;flex:0 0;margin:4px 4px 4px 50px;max-width:100%}.files-list__header>*[data-v-14acd289]{flex:0 0}.files-list__header-share-button[data-v-14acd289]{opacity:.3}.files-list__header-share-button--shared[data-v-14acd289]{opacity:1}.files-list__refresh-icon[data-v-14acd289]{flex:0 0 44px;width:44px;height:44px}.files-list__loading-icon[data-v-14acd289]{margin:auto}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/views/FilesList.vue\"],\"names\":[],\"mappings\":\"AACA,8BAEC,YAAA,CACA,eAAA,CACA,qBAAA,CACA,eAAA,CACA,iBAAA,CAOA,qCACC,YAAA,CACA,kBAAA,CAEA,QAAA,CAEA,uBAAA,CACA,cAAA,CACA,uCAGC,QAAA,CAGD,kDACC,UAAA,CACA,0DACC,SAAA,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;\\n}\\n\\n$margin: 4px;\\n$navigationToggleSize: 50px;\\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\\t// Align with the navigation toggle icon\\n\\t\\tmargin: $margin $margin $margin $navigationToggleSize;\\n\\t\\tmax-width: 100%;\\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\\topacity: .3;\\n\\t\\t\\t&--shared {\\n\\t\\t\\t\\topacity: 1;\\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\\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-1a7f07dd] .app-navigation-entry-icon{background-repeat:no-repeat;background-position:center}.app-navigation[data-v-1a7f07dd] .app-navigation-entry.active .button-vue.icon-collapse:not(:hover){color:var(--color-primary-element-text)}.app-navigation>ul.app-navigation__list[data-v-1a7f07dd]{padding-bottom:var(--default-grid-baseline, 4px)}.app-navigation-entry__settings[data-v-1a7f07dd]{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-011c3819]: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","var map = {\n\t\"./af\": 42786,\n\t\"./af.js\": 42786,\n\t\"./ar\": 30867,\n\t\"./ar-dz\": 14130,\n\t\"./ar-dz.js\": 14130,\n\t\"./ar-kw\": 96135,\n\t\"./ar-kw.js\": 96135,\n\t\"./ar-ly\": 56440,\n\t\"./ar-ly.js\": 56440,\n\t\"./ar-ma\": 47702,\n\t\"./ar-ma.js\": 47702,\n\t\"./ar-sa\": 16040,\n\t\"./ar-sa.js\": 16040,\n\t\"./ar-tn\": 37100,\n\t\"./ar-tn.js\": 37100,\n\t\"./ar.js\": 30867,\n\t\"./az\": 31083,\n\t\"./az.js\": 31083,\n\t\"./be\": 9808,\n\t\"./be.js\": 9808,\n\t\"./bg\": 68338,\n\t\"./bg.js\": 68338,\n\t\"./bm\": 67438,\n\t\"./bm.js\": 67438,\n\t\"./bn\": 8905,\n\t\"./bn-bd\": 76225,\n\t\"./bn-bd.js\": 76225,\n\t\"./bn.js\": 8905,\n\t\"./bo\": 11560,\n\t\"./bo.js\": 11560,\n\t\"./br\": 1278,\n\t\"./br.js\": 1278,\n\t\"./bs\": 80622,\n\t\"./bs.js\": 80622,\n\t\"./ca\": 2468,\n\t\"./ca.js\": 2468,\n\t\"./cs\": 5822,\n\t\"./cs.js\": 5822,\n\t\"./cv\": 50877,\n\t\"./cv.js\": 50877,\n\t\"./cy\": 47373,\n\t\"./cy.js\": 47373,\n\t\"./da\": 24780,\n\t\"./da.js\": 24780,\n\t\"./de\": 59740,\n\t\"./de-at\": 60217,\n\t\"./de-at.js\": 60217,\n\t\"./de-ch\": 60894,\n\t\"./de-ch.js\": 60894,\n\t\"./de.js\": 59740,\n\t\"./dv\": 5300,\n\t\"./dv.js\": 5300,\n\t\"./el\": 50837,\n\t\"./el.js\": 50837,\n\t\"./en-au\": 78348,\n\t\"./en-au.js\": 78348,\n\t\"./en-ca\": 77925,\n\t\"./en-ca.js\": 77925,\n\t\"./en-gb\": 22243,\n\t\"./en-gb.js\": 22243,\n\t\"./en-ie\": 46436,\n\t\"./en-ie.js\": 46436,\n\t\"./en-il\": 47207,\n\t\"./en-il.js\": 47207,\n\t\"./en-in\": 44175,\n\t\"./en-in.js\": 44175,\n\t\"./en-nz\": 76319,\n\t\"./en-nz.js\": 76319,\n\t\"./en-sg\": 31662,\n\t\"./en-sg.js\": 31662,\n\t\"./eo\": 92915,\n\t\"./eo.js\": 92915,\n\t\"./es\": 55655,\n\t\"./es-do\": 55251,\n\t\"./es-do.js\": 55251,\n\t\"./es-mx\": 96112,\n\t\"./es-mx.js\": 96112,\n\t\"./es-us\": 71146,\n\t\"./es-us.js\": 71146,\n\t\"./es.js\": 55655,\n\t\"./et\": 5603,\n\t\"./et.js\": 5603,\n\t\"./eu\": 77763,\n\t\"./eu.js\": 77763,\n\t\"./fa\": 76959,\n\t\"./fa.js\": 76959,\n\t\"./fi\": 11897,\n\t\"./fi.js\": 11897,\n\t\"./fil\": 42549,\n\t\"./fil.js\": 42549,\n\t\"./fo\": 94694,\n\t\"./fo.js\": 94694,\n\t\"./fr\": 94470,\n\t\"./fr-ca\": 63049,\n\t\"./fr-ca.js\": 63049,\n\t\"./fr-ch\": 52330,\n\t\"./fr-ch.js\": 52330,\n\t\"./fr.js\": 94470,\n\t\"./fy\": 5044,\n\t\"./fy.js\": 5044,\n\t\"./ga\": 29295,\n\t\"./ga.js\": 29295,\n\t\"./gd\": 2101,\n\t\"./gd.js\": 2101,\n\t\"./gl\": 38794,\n\t\"./gl.js\": 38794,\n\t\"./gom-deva\": 27884,\n\t\"./gom-deva.js\": 27884,\n\t\"./gom-latn\": 23168,\n\t\"./gom-latn.js\": 23168,\n\t\"./gu\": 95349,\n\t\"./gu.js\": 95349,\n\t\"./he\": 24206,\n\t\"./he.js\": 24206,\n\t\"./hi\": 30094,\n\t\"./hi.js\": 30094,\n\t\"./hr\": 30316,\n\t\"./hr.js\": 30316,\n\t\"./hu\": 22138,\n\t\"./hu.js\": 22138,\n\t\"./hy-am\": 11423,\n\t\"./hy-am.js\": 11423,\n\t\"./id\": 29218,\n\t\"./id.js\": 29218,\n\t\"./is\": 90135,\n\t\"./is.js\": 90135,\n\t\"./it\": 90626,\n\t\"./it-ch\": 10150,\n\t\"./it-ch.js\": 10150,\n\t\"./it.js\": 90626,\n\t\"./ja\": 39183,\n\t\"./ja.js\": 39183,\n\t\"./jv\": 24286,\n\t\"./jv.js\": 24286,\n\t\"./ka\": 12105,\n\t\"./ka.js\": 12105,\n\t\"./kk\": 47772,\n\t\"./kk.js\": 47772,\n\t\"./km\": 18758,\n\t\"./km.js\": 18758,\n\t\"./kn\": 79282,\n\t\"./kn.js\": 79282,\n\t\"./ko\": 33730,\n\t\"./ko.js\": 33730,\n\t\"./ku\": 1408,\n\t\"./ku.js\": 1408,\n\t\"./ky\": 33291,\n\t\"./ky.js\": 33291,\n\t\"./lb\": 36841,\n\t\"./lb.js\": 36841,\n\t\"./lo\": 55466,\n\t\"./lo.js\": 55466,\n\t\"./lt\": 57010,\n\t\"./lt.js\": 57010,\n\t\"./lv\": 37595,\n\t\"./lv.js\": 37595,\n\t\"./me\": 39861,\n\t\"./me.js\": 39861,\n\t\"./mi\": 35493,\n\t\"./mi.js\": 35493,\n\t\"./mk\": 95966,\n\t\"./mk.js\": 95966,\n\t\"./ml\": 87341,\n\t\"./ml.js\": 87341,\n\t\"./mn\": 5115,\n\t\"./mn.js\": 5115,\n\t\"./mr\": 10370,\n\t\"./mr.js\": 10370,\n\t\"./ms\": 9847,\n\t\"./ms-my\": 41237,\n\t\"./ms-my.js\": 41237,\n\t\"./ms.js\": 9847,\n\t\"./mt\": 72126,\n\t\"./mt.js\": 72126,\n\t\"./my\": 56165,\n\t\"./my.js\": 56165,\n\t\"./nb\": 64924,\n\t\"./nb.js\": 64924,\n\t\"./ne\": 16744,\n\t\"./ne.js\": 16744,\n\t\"./nl\": 93901,\n\t\"./nl-be\": 59814,\n\t\"./nl-be.js\": 59814,\n\t\"./nl.js\": 93901,\n\t\"./nn\": 83877,\n\t\"./nn.js\": 83877,\n\t\"./oc-lnc\": 92135,\n\t\"./oc-lnc.js\": 92135,\n\t\"./pa-in\": 15858,\n\t\"./pa-in.js\": 15858,\n\t\"./pl\": 64495,\n\t\"./pl.js\": 64495,\n\t\"./pt\": 89520,\n\t\"./pt-br\": 57971,\n\t\"./pt-br.js\": 57971,\n\t\"./pt.js\": 89520,\n\t\"./ro\": 96459,\n\t\"./ro.js\": 96459,\n\t\"./ru\": 21793,\n\t\"./ru.js\": 21793,\n\t\"./sd\": 40950,\n\t\"./sd.js\": 40950,\n\t\"./se\": 10490,\n\t\"./se.js\": 10490,\n\t\"./si\": 90124,\n\t\"./si.js\": 90124,\n\t\"./sk\": 64249,\n\t\"./sk.js\": 64249,\n\t\"./sl\": 14985,\n\t\"./sl.js\": 14985,\n\t\"./sq\": 51104,\n\t\"./sq.js\": 51104,\n\t\"./sr\": 49131,\n\t\"./sr-cyrl\": 79915,\n\t\"./sr-cyrl.js\": 79915,\n\t\"./sr.js\": 49131,\n\t\"./ss\": 85893,\n\t\"./ss.js\": 85893,\n\t\"./sv\": 98760,\n\t\"./sv.js\": 98760,\n\t\"./sw\": 91172,\n\t\"./sw.js\": 91172,\n\t\"./ta\": 27333,\n\t\"./ta.js\": 27333,\n\t\"./te\": 23110,\n\t\"./te.js\": 23110,\n\t\"./tet\": 52095,\n\t\"./tet.js\": 52095,\n\t\"./tg\": 27321,\n\t\"./tg.js\": 27321,\n\t\"./th\": 9041,\n\t\"./th.js\": 9041,\n\t\"./tk\": 19005,\n\t\"./tk.js\": 19005,\n\t\"./tl-ph\": 75768,\n\t\"./tl-ph.js\": 75768,\n\t\"./tlh\": 89444,\n\t\"./tlh.js\": 89444,\n\t\"./tr\": 72397,\n\t\"./tr.js\": 72397,\n\t\"./tzl\": 28254,\n\t\"./tzl.js\": 28254,\n\t\"./tzm\": 51106,\n\t\"./tzm-latn\": 30699,\n\t\"./tzm-latn.js\": 30699,\n\t\"./tzm.js\": 51106,\n\t\"./ug-cn\": 9288,\n\t\"./ug-cn.js\": 9288,\n\t\"./uk\": 67691,\n\t\"./uk.js\": 67691,\n\t\"./ur\": 13795,\n\t\"./ur.js\": 13795,\n\t\"./uz\": 6791,\n\t\"./uz-latn\": 60588,\n\t\"./uz-latn.js\": 60588,\n\t\"./uz.js\": 6791,\n\t\"./vi\": 65666,\n\t\"./vi.js\": 65666,\n\t\"./x-pseudo\": 14378,\n\t\"./x-pseudo.js\": 14378,\n\t\"./yo\": 75805,\n\t\"./yo.js\": 75805,\n\t\"./zh-cn\": 83839,\n\t\"./zh-cn.js\": 83839,\n\t\"./zh-hk\": 55726,\n\t\"./zh-hk.js\": 55726,\n\t\"./zh-mo\": 99807,\n\t\"./zh-mo.js\": 99807,\n\t\"./zh-tw\": 74152,\n\t\"./zh-tw.js\": 74152\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = 46700;","// @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","import { getCurrentUser as A, onRequestTokenUpdate as ue, getRequestToken as de } from \"@nextcloud/auth\";\nimport { getLoggerBuilder as q } from \"@nextcloud/logger\";\nimport { getCanonicalLocale as ae } from \"@nextcloud/l10n\";\nimport { join as le, basename as fe, extname as ce, dirname as I } from \"path\";\nimport { encodePath as he } from \"@nextcloud/paths\";\nimport { generateRemoteUrl as pe } from \"@nextcloud/router\";\nimport { createClient as ge, getPatcher as we } from \"webdav\";\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 me = (e) => e === null ? q().setApp(\"files\").build() : q().setApp(\"files\").setUid(e.uid).build(), m = me(A());\n/**\n * @copyright Copyright (c) 2021 John Molakvoæ \n *\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 */\nclass Ne {\n _entries = [];\n registerEntry(t) {\n this.validateEntry(t), this._entries.push(t);\n }\n unregisterEntry(t) {\n const r = typeof t == \"string\" ? this.getEntryIndex(t) : this.getEntryIndex(t.id);\n if (r === -1) {\n m.warn(\"Entry not found, nothing removed\", { entry: t, entries: this.getEntries() });\n return;\n }\n this._entries.splice(r, 1);\n }\n /**\n * Get the list of registered entries\n *\n * @param {Folder} context the creation context. Usually the current folder\n */\n getEntries(t) {\n return t ? this._entries.filter((r) => typeof r.enabled == \"function\" ? r.enabled(t) : !0) : this._entries;\n }\n getEntryIndex(t) {\n return this._entries.findIndex((r) => r.id === t);\n }\n validateEntry(t) {\n if (!t.id || !t.displayName || !(t.iconSvgInline || t.iconClass) || !t.handler)\n throw new Error(\"Invalid entry\");\n if (typeof t.id != \"string\" || typeof t.displayName != \"string\")\n throw new Error(\"Invalid id or displayName property\");\n if (t.iconClass && typeof t.iconClass != \"string\" || t.iconSvgInline && typeof t.iconSvgInline != \"string\")\n throw new Error(\"Invalid icon provided\");\n if (t.enabled !== void 0 && typeof t.enabled != \"function\")\n throw new Error(\"Invalid enabled property\");\n if (typeof t.handler != \"function\")\n throw new Error(\"Invalid handler property\");\n if (\"order\" in t && typeof t.order != \"number\")\n throw new Error(\"Invalid order property\");\n if (this.getEntryIndex(t.id) !== -1)\n throw new Error(\"Duplicate entry\");\n }\n}\nconst F = function() {\n return typeof window._nc_newfilemenu > \"u\" && (window._nc_newfilemenu = new Ne(), m.debug(\"NewFileMenu initialized\")), window._nc_newfilemenu;\n};\n/**\n * @copyright 2019 Christoph Wurst \n *\n * @author Christoph Wurst \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 C = [\"B\", \"KB\", \"MB\", \"GB\", \"TB\", \"PB\"], P = [\"B\", \"KiB\", \"MiB\", \"GiB\", \"TiB\", \"PiB\"];\nfunction Yt(e, t = !1, r = !1, s = !1) {\n r = r && !s, typeof e == \"string\" && (e = Number(e));\n let n = e > 0 ? Math.floor(Math.log(e) / Math.log(s ? 1e3 : 1024)) : 0;\n n = Math.min((r ? P.length : C.length) - 1, n);\n const i = r ? P[n] : C[n];\n let d = (e / Math.pow(s ? 1e3 : 1024, n)).toFixed(1);\n return t === !0 && n === 0 ? (d !== \"0.0\" ? \"< 1 \" : \"0 \") + (r ? P[1] : C[1]) : (n < 2 ? d = parseFloat(d).toFixed(0) : d = parseFloat(d).toLocaleString(ae()), d + \" \" + i);\n}\nfunction Jt(e, t = !1) {\n try {\n e = `${e}`.toLocaleLowerCase().replaceAll(/\\s+/g, \"\").replaceAll(\",\", \".\");\n } catch {\n return null;\n }\n const r = e.match(/^([0-9]*(\\.[0-9]*)?)([kmgtp]?)(i?)b?$/);\n if (r === null || r[1] === \".\" || r[1] === \"\")\n return null;\n const s = {\n \"\": 0,\n k: 1,\n m: 2,\n g: 3,\n t: 4,\n p: 5,\n e: 6\n }, n = `${r[1]}`, i = r[4] === \"i\" || t ? 1024 : 1e3;\n return Math.round(Number.parseFloat(n) * i ** s[r[3]]);\n}\n/**\n * @copyright Copyright (c) 2023 John Molakvoæ \n *\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 */\nvar Z = /* @__PURE__ */ ((e) => (e.DEFAULT = \"default\", e.HIDDEN = \"hidden\", e))(Z || {});\nclass Qt {\n _action;\n constructor(t) {\n this.validateAction(t), this._action = t;\n }\n get id() {\n return this._action.id;\n }\n get displayName() {\n return this._action.displayName;\n }\n get title() {\n return this._action.title;\n }\n get iconSvgInline() {\n return this._action.iconSvgInline;\n }\n get enabled() {\n return this._action.enabled;\n }\n get exec() {\n return this._action.exec;\n }\n get execBatch() {\n return this._action.execBatch;\n }\n get order() {\n return this._action.order;\n }\n get parent() {\n return this._action.parent;\n }\n get default() {\n return this._action.default;\n }\n get inline() {\n return this._action.inline;\n }\n get renderInline() {\n return this._action.renderInline;\n }\n validateAction(t) {\n if (!t.id || typeof t.id != \"string\")\n throw new Error(\"Invalid id\");\n if (!t.displayName || typeof t.displayName != \"function\")\n throw new Error(\"Invalid displayName function\");\n if (\"title\" in t && typeof t.title != \"function\")\n throw new Error(\"Invalid title function\");\n if (!t.iconSvgInline || typeof t.iconSvgInline != \"function\")\n throw new Error(\"Invalid iconSvgInline function\");\n if (!t.exec || typeof t.exec != \"function\")\n throw new Error(\"Invalid exec function\");\n if (\"enabled\" in t && typeof t.enabled != \"function\")\n throw new Error(\"Invalid enabled function\");\n if (\"execBatch\" in t && typeof t.execBatch != \"function\")\n throw new Error(\"Invalid execBatch function\");\n if (\"order\" in t && typeof t.order != \"number\")\n throw new Error(\"Invalid order\");\n if (\"parent\" in t && typeof t.parent != \"string\")\n throw new Error(\"Invalid parent\");\n if (t.default && !Object.values(Z).includes(t.default))\n throw new Error(\"Invalid default\");\n if (\"inline\" in t && typeof t.inline != \"function\")\n throw new Error(\"Invalid inline function\");\n if (\"renderInline\" in t && typeof t.renderInline != \"function\")\n throw new Error(\"Invalid renderInline function\");\n }\n}\nconst Dt = function(e) {\n if (typeof window._nc_fileactions > \"u\" && (window._nc_fileactions = [], m.debug(\"FileActions initialized\")), window._nc_fileactions.find((t) => t.id === e.id)) {\n m.error(`FileAction ${e.id} already registered`, { action: e });\n return;\n }\n window._nc_fileactions.push(e);\n}, er = function() {\n return typeof window._nc_fileactions > \"u\" && (window._nc_fileactions = [], m.debug(\"FileActions initialized\")), window._nc_fileactions;\n};\n/**\n * @copyright Copyright (c) 2023 John Molakvoæ \n *\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 */\nclass tr {\n _header;\n constructor(t) {\n this.validateHeader(t), this._header = t;\n }\n get id() {\n return this._header.id;\n }\n get order() {\n return this._header.order;\n }\n get enabled() {\n return this._header.enabled;\n }\n get render() {\n return this._header.render;\n }\n get updated() {\n return this._header.updated;\n }\n validateHeader(t) {\n if (!t.id || !t.render || !t.updated)\n throw new Error(\"Invalid header: id, render and updated are required\");\n if (typeof t.id != \"string\")\n throw new Error(\"Invalid id property\");\n if (t.enabled !== void 0 && typeof t.enabled != \"function\")\n throw new Error(\"Invalid enabled property\");\n if (t.render && typeof t.render != \"function\")\n throw new Error(\"Invalid render property\");\n if (t.updated && typeof t.updated != \"function\")\n throw new Error(\"Invalid updated property\");\n }\n}\nconst rr = function(e) {\n if (typeof window._nc_filelistheader > \"u\" && (window._nc_filelistheader = [], m.debug(\"FileListHeaders initialized\")), window._nc_filelistheader.find((t) => t.id === e.id)) {\n m.error(`Header ${e.id} already registered`, { header: e });\n return;\n }\n window._nc_filelistheader.push(e);\n}, nr = function() {\n return typeof window._nc_filelistheader > \"u\" && (window._nc_filelistheader = [], m.debug(\"FileListHeaders initialized\")), window._nc_filelistheader;\n};\n/**\n * @copyright Copyright (c) 2022 John Molakvoæ \n *\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 */\nvar N = /* @__PURE__ */ ((e) => (e[e.NONE = 0] = \"NONE\", e[e.CREATE = 4] = \"CREATE\", e[e.READ = 1] = \"READ\", e[e.UPDATE = 2] = \"UPDATE\", e[e.DELETE = 8] = \"DELETE\", e[e.SHARE = 16] = \"SHARE\", e[e.ALL = 31] = \"ALL\", e))(N || {});\n/**\n * @copyright Copyright (c) 2023 John Molakvoæ \n *\n * @author John Molakvoæ \n * @author Ferdinand Thiessen \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 j = [\n \"d:getcontentlength\",\n \"d:getcontenttype\",\n \"d:getetag\",\n \"d:getlastmodified\",\n \"d:quota-available-bytes\",\n \"d:resourcetype\",\n \"nc:has-preview\",\n \"nc:is-encrypted\",\n \"nc:mount-type\",\n \"nc:share-attributes\",\n \"oc:comments-unread\",\n \"oc:favorite\",\n \"oc:fileid\",\n \"oc:owner-display-name\",\n \"oc:owner-id\",\n \"oc:permissions\",\n \"oc:share-types\",\n \"oc:size\",\n \"ocs:share-permissions\"\n], Y = {\n d: \"DAV:\",\n nc: \"http://nextcloud.org/ns\",\n oc: \"http://owncloud.org/ns\",\n ocs: \"http://open-collaboration-services.org/ns\"\n}, ir = function(e, t = { nc: \"http://nextcloud.org/ns\" }) {\n typeof window._nc_dav_properties > \"u\" && (window._nc_dav_properties = [...j], window._nc_dav_namespaces = { ...Y });\n const r = { ...window._nc_dav_namespaces, ...t };\n if (window._nc_dav_properties.find((n) => n === e))\n return m.error(`${e} already registered`, { prop: e }), !1;\n if (e.startsWith(\"<\") || e.split(\":\").length !== 2)\n return m.error(`${e} is not valid. See example: 'oc:fileid'`, { prop: e }), !1;\n const s = e.split(\":\")[0];\n return r[s] ? (window._nc_dav_properties.push(e), window._nc_dav_namespaces = r, !0) : (m.error(`${e} namespace unknown`, { prop: e, namespaces: r }), !1);\n}, V = function() {\n return typeof window._nc_dav_properties > \"u\" && (window._nc_dav_properties = [...j]), window._nc_dav_properties.map((e) => `<${e} />`).join(\" \");\n}, L = function() {\n return typeof window._nc_dav_namespaces > \"u\" && (window._nc_dav_namespaces = { ...Y }), Object.keys(window._nc_dav_namespaces).map((e) => `xmlns:${e}=\"${window._nc_dav_namespaces?.[e]}\"`).join(\" \");\n}, sr = function() {\n return `\n\t\t\n\t\t\t\n\t\t\t\t${V()}\n\t\t\t\n\t\t`;\n}, Ee = function() {\n return `\n\t\t\n\t\t\t\n\t\t\t\t${V()}\n\t\t\t\n\t\t\t\n\t\t\t\t1\n\t\t\t\n\t\t`;\n}, or = function(e) {\n return `\n\n\t\n\t\t\n\t\t\t\n\t\t\t\t${V()}\n\t\t\t\n\t\t\n\t\t\n\t\t\t\n\t\t\t\t/files/${A()?.uid}/\n\t\t\t\tinfinity\n\t\t\t\n\t\t\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\thttpd/unix-directory\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t0\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t${e}\n\t\t\t\t\n\t\t\t\n\t\t\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\n\t\t\n\t\t\t100\n\t\t\t0\n\t\t\n\t\n`;\n};\n/**\n * @copyright Copyright (c) 2023 John Molakvoæ \n *\n * @author John Molakvoæ \n * @author Ferdinand Thiessen \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 be = function(e = \"\") {\n let t = N.NONE;\n return e && ((e.includes(\"C\") || e.includes(\"K\")) && (t |= N.CREATE), e.includes(\"G\") && (t |= N.READ), (e.includes(\"W\") || e.includes(\"N\") || e.includes(\"V\")) && (t |= N.UPDATE), e.includes(\"D\") && (t |= N.DELETE), e.includes(\"R\") && (t |= N.SHARE)), t;\n};\n/**\n * @copyright Copyright (c) 2022 John Molakvoæ \n *\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 */\nvar R = /* @__PURE__ */ ((e) => (e.Folder = \"folder\", e.File = \"file\", e))(R || {});\n/**\n * @copyright Copyright (c) 2022 John Molakvoæ \n *\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 J = function(e, t) {\n return e.match(t) !== null;\n}, X = (e, t) => {\n if (e.id && typeof e.id != \"number\")\n throw new Error(\"Invalid id type of value\");\n if (!e.source)\n throw new Error(\"Missing mandatory source\");\n try {\n new URL(e.source);\n } catch {\n throw new Error(\"Invalid source format, source must be a valid URL\");\n }\n if (!e.source.startsWith(\"http\"))\n throw new Error(\"Invalid source format, only http(s) is supported\");\n if (e.mtime && !(e.mtime instanceof Date))\n throw new Error(\"Invalid mtime type\");\n if (e.crtime && !(e.crtime instanceof Date))\n throw new Error(\"Invalid crtime type\");\n if (!e.mime || typeof e.mime != \"string\" || !e.mime.match(/^[-\\w.]+\\/[-+\\w.]+$/gi))\n throw new Error(\"Missing or invalid mandatory mime\");\n if (\"size\" in e && typeof e.size != \"number\" && e.size !== void 0)\n throw new Error(\"Invalid size type\");\n if (\"permissions\" in e && e.permissions !== void 0 && !(typeof e.permissions == \"number\" && e.permissions >= N.NONE && e.permissions <= N.ALL))\n throw new Error(\"Invalid permissions\");\n if (e.owner && e.owner !== null && typeof e.owner != \"string\")\n throw new Error(\"Invalid owner type\");\n if (e.attributes && typeof e.attributes != \"object\")\n throw new Error(\"Invalid attributes type\");\n if (e.root && typeof e.root != \"string\")\n throw new Error(\"Invalid root type\");\n if (e.root && !e.root.startsWith(\"/\"))\n throw new Error(\"Root must start with a leading slash\");\n if (e.root && !e.source.includes(e.root))\n throw new Error(\"Root must be part of the source\");\n if (e.root && J(e.source, t)) {\n const r = e.source.match(t)[0];\n if (!e.source.includes(le(r, e.root)))\n throw new Error(\"The root must be relative to the service. e.g /files/emma\");\n }\n if (e.status && !Object.values(Q).includes(e.status))\n throw new Error(\"Status must be a valid NodeStatus\");\n};\n/**\n * @copyright Copyright (c) 2022 John Molakvoæ \n *\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 */\nvar Q = /* @__PURE__ */ ((e) => (e.NEW = \"new\", e.FAILED = \"failed\", e.LOADING = \"loading\", e.LOCKED = \"locked\", e))(Q || {});\nclass D {\n _data;\n _attributes;\n _knownDavService = /(remote|public)\\.php\\/(web)?dav/i;\n constructor(t, r) {\n X(t, r || this._knownDavService), this._data = t;\n const s = {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n set: (n, i, d) => (this.updateMtime(), Reflect.set(n, i, d)),\n deleteProperty: (n, i) => (this.updateMtime(), Reflect.deleteProperty(n, i))\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n };\n this._attributes = new Proxy(t.attributes || {}, s), delete this._data.attributes, r && (this._knownDavService = r);\n }\n /**\n * Get the source url to this object\n */\n get source() {\n return this._data.source.replace(/\\/$/i, \"\");\n }\n /**\n * Get the encoded source url to this object for requests purposes\n */\n get encodedSource() {\n const { origin: t } = new URL(this.source);\n return t + he(this.source.slice(t.length));\n }\n /**\n * Get this object name\n */\n get basename() {\n return fe(this.source);\n }\n /**\n * Get this object's extension\n */\n get extension() {\n return ce(this.source);\n }\n /**\n * Get the directory path leading to this object\n * Will use the relative path to root if available\n */\n get dirname() {\n if (this.root) {\n const r = this.source.indexOf(this.root);\n return I(this.source.slice(r + this.root.length) || \"/\");\n }\n const t = new URL(this.source);\n return I(t.pathname);\n }\n /**\n * Get the file mime\n */\n get mime() {\n return this._data.mime;\n }\n /**\n * Get the file modification time\n */\n get mtime() {\n return this._data.mtime;\n }\n /**\n * Get the file creation time\n */\n get crtime() {\n return this._data.crtime;\n }\n /**\n * Get the file size\n */\n get size() {\n return this._data.size;\n }\n /**\n * Get the file attribute\n */\n get attributes() {\n return this._attributes;\n }\n /**\n * Get the file permissions\n */\n get permissions() {\n return this.owner === null && !this.isDavRessource ? N.READ : this._data.permissions !== void 0 ? this._data.permissions : N.NONE;\n }\n /**\n * Get the file owner\n */\n get owner() {\n return this.isDavRessource ? this._data.owner : null;\n }\n /**\n * Is this a dav-related ressource ?\n */\n get isDavRessource() {\n return J(this.source, this._knownDavService);\n }\n /**\n * Get the dav root of this object\n */\n get root() {\n return this._data.root ? this._data.root.replace(/^(.+)\\/$/, \"$1\") : this.isDavRessource && I(this.source).split(this._knownDavService).pop() || null;\n }\n /**\n * Get the absolute path of this object relative to the root\n */\n get path() {\n if (this.root) {\n const t = this.source.indexOf(this.root);\n return this.source.slice(t + this.root.length) || \"/\";\n }\n return (this.dirname + \"/\" + this.basename).replace(/\\/\\//g, \"/\");\n }\n /**\n * Get the node id if defined.\n * Will look for the fileid in attributes if undefined.\n */\n get fileid() {\n return this._data?.id || this.attributes?.fileid;\n }\n /**\n * Get the node status.\n */\n get status() {\n return this._data?.status;\n }\n /**\n * Set the node status.\n */\n set status(t) {\n this._data.status = t;\n }\n /**\n * Move the node to a new destination\n *\n * @param {string} destination the new source.\n * e.g. https://cloud.domain.com/remote.php/dav/files/emma/Photos/picture.jpg\n */\n move(t) {\n X({ ...this._data, source: t }, this._knownDavService), this._data.source = t, this.updateMtime();\n }\n /**\n * Rename the node\n * This aliases the move method for easier usage\n *\n * @param basename The new name of the node\n */\n rename(t) {\n if (t.includes(\"/\"))\n throw new Error(\"Invalid basename\");\n this.move(I(this.source) + \"/\" + t);\n }\n /**\n * Update the mtime if exists.\n */\n updateMtime() {\n this._data.mtime && (this._data.mtime = /* @__PURE__ */ new Date());\n }\n}\n/**\n * @copyright Copyright (c) 2022 John Molakvoæ \n *\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 */\nclass ye extends D {\n get type() {\n return R.File;\n }\n}\n/**\n * @copyright Copyright (c) 2022 John Molakvoæ \n *\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 */\nclass _e extends D {\n constructor(t) {\n super({\n ...t,\n mime: \"httpd/unix-directory\"\n });\n }\n get type() {\n return R.Folder;\n }\n get extension() {\n return null;\n }\n get mime() {\n return \"httpd/unix-directory\";\n }\n}\n/**\n * @copyright Copyright (c) 2023 John Molakvoæ \n *\n * @author John Molakvoæ \n * @author Ferdinand Thiessen \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 ee = `/files/${A()?.uid}`, te = pe(\"dav\"), ur = function(e = te) {\n const t = ge(e);\n function r(n) {\n t.setHeaders({\n // Add this so the server knows it is an request from the browser\n \"X-Requested-With\": \"XMLHttpRequest\",\n // Inject user auth\n requesttoken: n ?? \"\"\n });\n }\n return ue(r), r(de()), we().patch(\"fetch\", (n, i) => {\n const d = i.headers;\n return d?.method && (i.method = d.method, delete d.method), fetch(n, i);\n }), t;\n}, dr = async (e, t = \"/\", r = ee) => (await e.getDirectoryContents(`${r}${t}`, {\n details: !0,\n data: Ee(),\n headers: {\n // see davGetClient for patched webdav client\n method: \"REPORT\"\n },\n includeSelf: !0\n})).data.filter((n) => n.filename !== t).map((n) => ve(n, r)), ve = function(e, t = ee, r = te) {\n const s = e.props, n = be(s?.permissions), i = A()?.uid, d = {\n id: s?.fileid || 0,\n source: `${r}${e.filename}`,\n mtime: new Date(Date.parse(e.lastmod)),\n mime: e.mime,\n size: s?.size || Number.parseInt(s.getcontentlength || \"0\"),\n permissions: n,\n owner: i,\n root: t,\n attributes: {\n ...e,\n ...s,\n hasPreview: s?.[\"has-preview\"]\n }\n };\n return delete d.attributes?.props, e.type === \"file\" ? new ye(d) : new _e(d);\n};\n/**\n * @copyright Copyright (c) 2022 John Molakvoæ \n *\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 */\nclass Te {\n _views = [];\n _currentView = null;\n register(t) {\n if (this._views.find((r) => r.id === t.id))\n throw new Error(`View id ${t.id} is already registered`);\n this._views.push(t);\n }\n remove(t) {\n const r = this._views.findIndex((s) => s.id === t);\n r !== -1 && this._views.splice(r, 1);\n }\n get views() {\n return this._views;\n }\n setActive(t) {\n this._currentView = t;\n }\n get active() {\n return this._currentView;\n }\n}\nconst ar = function() {\n return typeof window._nc_navigation > \"u\" && (window._nc_navigation = new Te(), m.debug(\"Navigation service initialized\")), window._nc_navigation;\n};\n/**\n * @copyright Copyright (c) 2022 John Molakvoæ \n *\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 */\nclass Ie {\n _column;\n constructor(t) {\n Ae(t), this._column = t;\n }\n get id() {\n return this._column.id;\n }\n get title() {\n return this._column.title;\n }\n get render() {\n return this._column.render;\n }\n get sort() {\n return this._column.sort;\n }\n get summary() {\n return this._column.summary;\n }\n}\nconst Ae = function(e) {\n if (!e.id || typeof e.id != \"string\")\n throw new Error(\"A column id is required\");\n if (!e.title || typeof e.title != \"string\")\n throw new Error(\"A column title is required\");\n if (!e.render || typeof e.render != \"function\")\n throw new Error(\"A render function is required\");\n if (e.sort && typeof e.sort != \"function\")\n throw new Error(\"Column sortFunction must be a function\");\n if (e.summary && typeof e.summary != \"function\")\n throw new Error(\"Column summary must be a function\");\n return !0;\n};\nvar S = {}, O = {};\n(function(e) {\n const t = \":A-Za-z_\\\\u00C0-\\\\u00D6\\\\u00D8-\\\\u00F6\\\\u00F8-\\\\u02FF\\\\u0370-\\\\u037D\\\\u037F-\\\\u1FFF\\\\u200C-\\\\u200D\\\\u2070-\\\\u218F\\\\u2C00-\\\\u2FEF\\\\u3001-\\\\uD7FF\\\\uF900-\\\\uFDCF\\\\uFDF0-\\\\uFFFD\", r = t + \"\\\\-.\\\\d\\\\u00B7\\\\u0300-\\\\u036F\\\\u203F-\\\\u2040\", s = \"[\" + t + \"][\" + r + \"]*\", n = new RegExp(\"^\" + s + \"$\"), i = function(u, o) {\n const a = [];\n let l = o.exec(u);\n for (; l; ) {\n const f = [];\n f.startIndex = o.lastIndex - l[0].length;\n const c = l.length;\n for (let g = 0; g < c; g++)\n f.push(l[g]);\n a.push(f), l = o.exec(u);\n }\n return a;\n }, d = function(u) {\n const o = n.exec(u);\n return !(o === null || typeof o > \"u\");\n };\n e.isExist = function(u) {\n return typeof u < \"u\";\n }, e.isEmptyObject = function(u) {\n return Object.keys(u).length === 0;\n }, e.merge = function(u, o, a) {\n if (o) {\n const l = Object.keys(o), f = l.length;\n for (let c = 0; c < f; c++)\n a === \"strict\" ? u[l[c]] = [o[l[c]]] : u[l[c]] = o[l[c]];\n }\n }, e.getValue = function(u) {\n return e.isExist(u) ? u : \"\";\n }, e.isName = d, e.getAllMatches = i, e.nameRegexp = s;\n})(O);\nconst M = O, Oe = {\n allowBooleanAttributes: !1,\n //A tag can have attributes without any value\n unpairedTags: []\n};\nS.validate = function(e, t) {\n t = Object.assign({}, Oe, t);\n const r = [];\n let s = !1, n = !1;\n e[0] === \"\\uFEFF\" && (e = e.substr(1));\n for (let i = 0; i < e.length; i++)\n if (e[i] === \"<\" && e[i + 1] === \"?\") {\n if (i += 2, i = G(e, i), i.err)\n return i;\n } else if (e[i] === \"<\") {\n let d = i;\n if (i++, e[i] === \"!\") {\n i = z(e, i);\n continue;\n } else {\n let u = !1;\n e[i] === \"/\" && (u = !0, i++);\n let o = \"\";\n for (; i < e.length && e[i] !== \">\" && e[i] !== \" \" && e[i] !== \"\t\" && e[i] !== `\n` && e[i] !== \"\\r\"; i++)\n o += e[i];\n if (o = o.trim(), o[o.length - 1] === \"/\" && (o = o.substring(0, o.length - 1), i--), !Re(o)) {\n let f;\n return o.trim().length === 0 ? f = \"Invalid space after '<'.\" : f = \"Tag '\" + o + \"' is an invalid name.\", p(\"InvalidTag\", f, w(e, i));\n }\n const a = xe(e, i);\n if (a === !1)\n return p(\"InvalidAttr\", \"Attributes for '\" + o + \"' have open quote.\", w(e, i));\n let l = a.value;\n if (i = a.index, l[l.length - 1] === \"/\") {\n const f = i - l.length;\n l = l.substring(0, l.length - 1);\n const c = H(l, t);\n if (c === !0)\n s = !0;\n else\n return p(c.err.code, c.err.msg, w(e, f + c.err.line));\n } else if (u)\n if (a.tagClosed) {\n if (l.trim().length > 0)\n return p(\"InvalidTag\", \"Closing tag '\" + o + \"' can't have attributes or invalid starting.\", w(e, d));\n {\n const f = r.pop();\n if (o !== f.tagName) {\n let c = w(e, f.tagStartPos);\n return p(\n \"InvalidTag\",\n \"Expected closing tag '\" + f.tagName + \"' (opened in line \" + c.line + \", col \" + c.col + \") instead of closing tag '\" + o + \"'.\",\n w(e, d)\n );\n }\n r.length == 0 && (n = !0);\n }\n } else\n return p(\"InvalidTag\", \"Closing tag '\" + o + \"' doesn't have proper closing.\", w(e, i));\n else {\n const f = H(l, t);\n if (f !== !0)\n return p(f.err.code, f.err.msg, w(e, i - l.length + f.err.line));\n if (n === !0)\n return p(\"InvalidXml\", \"Multiple possible root nodes found.\", w(e, i));\n t.unpairedTags.indexOf(o) !== -1 || r.push({ tagName: o, tagStartPos: d }), s = !0;\n }\n for (i++; i < e.length; i++)\n if (e[i] === \"<\")\n if (e[i + 1] === \"!\") {\n i++, i = z(e, i);\n continue;\n } else if (e[i + 1] === \"?\") {\n if (i = G(e, ++i), i.err)\n return i;\n } else\n break;\n else if (e[i] === \"&\") {\n const f = Ve(e, i);\n if (f == -1)\n return p(\"InvalidChar\", \"char '&' is not expected.\", w(e, i));\n i = f;\n } else if (n === !0 && !U(e[i]))\n return p(\"InvalidXml\", \"Extra text at the end\", w(e, i));\n e[i] === \"<\" && i--;\n }\n } else {\n if (U(e[i]))\n continue;\n return p(\"InvalidChar\", \"char '\" + e[i] + \"' is not expected.\", w(e, i));\n }\n if (s) {\n if (r.length == 1)\n return p(\"InvalidTag\", \"Unclosed tag '\" + r[0].tagName + \"'.\", w(e, r[0].tagStartPos));\n if (r.length > 0)\n return p(\"InvalidXml\", \"Invalid '\" + JSON.stringify(r.map((i) => i.tagName), null, 4).replace(/\\r?\\n/g, \"\") + \"' found.\", { line: 1, col: 1 });\n } else\n return p(\"InvalidXml\", \"Start tag expected.\", 1);\n return !0;\n};\nfunction U(e) {\n return e === \" \" || e === \"\t\" || e === `\n` || e === \"\\r\";\n}\nfunction G(e, t) {\n const r = t;\n for (; t < e.length; t++)\n if (e[t] == \"?\" || e[t] == \" \") {\n const s = e.substr(r, t - r);\n if (t > 5 && s === \"xml\")\n return p(\"InvalidXml\", \"XML declaration allowed only at the start of the document.\", w(e, t));\n if (e[t] == \"?\" && e[t + 1] == \">\") {\n t++;\n break;\n } else\n continue;\n }\n return t;\n}\nfunction z(e, t) {\n if (e.length > t + 5 && e[t + 1] === \"-\" && e[t + 2] === \"-\") {\n for (t += 3; t < e.length; t++)\n if (e[t] === \"-\" && e[t + 1] === \"-\" && e[t + 2] === \">\") {\n t += 2;\n break;\n }\n } else if (e.length > t + 8 && e[t + 1] === \"D\" && e[t + 2] === \"O\" && e[t + 3] === \"C\" && e[t + 4] === \"T\" && e[t + 5] === \"Y\" && e[t + 6] === \"P\" && e[t + 7] === \"E\") {\n let r = 1;\n for (t += 8; t < e.length; t++)\n if (e[t] === \"<\")\n r++;\n else if (e[t] === \">\" && (r--, r === 0))\n break;\n } else if (e.length > t + 9 && e[t + 1] === \"[\" && e[t + 2] === \"C\" && e[t + 3] === \"D\" && e[t + 4] === \"A\" && e[t + 5] === \"T\" && e[t + 6] === \"A\" && e[t + 7] === \"[\") {\n for (t += 8; t < e.length; t++)\n if (e[t] === \"]\" && e[t + 1] === \"]\" && e[t + 2] === \">\") {\n t += 2;\n break;\n }\n }\n return t;\n}\nconst Ce = '\"', Pe = \"'\";\nfunction xe(e, t) {\n let r = \"\", s = \"\", n = !1;\n for (; t < e.length; t++) {\n if (e[t] === Ce || e[t] === Pe)\n s === \"\" ? s = e[t] : s !== e[t] || (s = \"\");\n else if (e[t] === \">\" && s === \"\") {\n n = !0;\n break;\n }\n r += e[t];\n }\n return s !== \"\" ? !1 : {\n value: r,\n index: t,\n tagClosed: n\n };\n}\nconst $e = new RegExp(`(\\\\s*)([^\\\\s=]+)(\\\\s*=)?(\\\\s*(['\"])(([\\\\s\\\\S])*?)\\\\5)?`, \"g\");\nfunction H(e, t) {\n const r = M.getAllMatches(e, $e), s = {};\n for (let n = 0; n < r.length; n++) {\n if (r[n][1].length === 0)\n return p(\"InvalidAttr\", \"Attribute '\" + r[n][2] + \"' has no space in starting.\", v(r[n]));\n if (r[n][3] !== void 0 && r[n][4] === void 0)\n return p(\"InvalidAttr\", \"Attribute '\" + r[n][2] + \"' is without value.\", v(r[n]));\n if (r[n][3] === void 0 && !t.allowBooleanAttributes)\n return p(\"InvalidAttr\", \"boolean attribute '\" + r[n][2] + \"' is not allowed.\", v(r[n]));\n const i = r[n][2];\n if (!Le(i))\n return p(\"InvalidAttr\", \"Attribute '\" + i + \"' is an invalid name.\", v(r[n]));\n if (!s.hasOwnProperty(i))\n s[i] = 1;\n else\n return p(\"InvalidAttr\", \"Attribute '\" + i + \"' is repeated.\", v(r[n]));\n }\n return !0;\n}\nfunction Fe(e, t) {\n let r = /\\d/;\n for (e[t] === \"x\" && (t++, r = /[\\da-fA-F]/); t < e.length; t++) {\n if (e[t] === \";\")\n return t;\n if (!e[t].match(r))\n break;\n }\n return -1;\n}\nfunction Ve(e, t) {\n if (t++, e[t] === \";\")\n return -1;\n if (e[t] === \"#\")\n return t++, Fe(e, t);\n let r = 0;\n for (; t < e.length; t++, r++)\n if (!(e[t].match(/\\w/) && r < 20)) {\n if (e[t] === \";\")\n break;\n return -1;\n }\n return t;\n}\nfunction p(e, t, r) {\n return {\n err: {\n code: e,\n msg: t,\n line: r.line || r,\n col: r.col\n }\n };\n}\nfunction Le(e) {\n return M.isName(e);\n}\nfunction Re(e) {\n return M.isName(e);\n}\nfunction w(e, t) {\n const r = e.substring(0, t).split(/\\r?\\n/);\n return {\n line: r.length,\n // column number is last line's length + 1, because column numbering starts at 1:\n col: r[r.length - 1].length + 1\n };\n}\nfunction v(e) {\n return e.startIndex + e[1].length;\n}\nvar B = {};\nconst re = {\n preserveOrder: !1,\n attributeNamePrefix: \"@_\",\n attributesGroupName: !1,\n textNodeName: \"#text\",\n ignoreAttributes: !0,\n removeNSPrefix: !1,\n // remove NS from tag name or attribute name if true\n allowBooleanAttributes: !1,\n //a tag can have attributes without any value\n //ignoreRootElement : false,\n parseTagValue: !0,\n parseAttributeValue: !1,\n trimValues: !0,\n //Trim string values of tag and attributes\n cdataPropName: !1,\n numberParseOptions: {\n hex: !0,\n leadingZeros: !0,\n eNotation: !0\n },\n tagValueProcessor: function(e, t) {\n return t;\n },\n attributeValueProcessor: function(e, t) {\n return t;\n },\n stopNodes: [],\n //nested tags will not be parsed even for errors\n alwaysCreateTextNode: !1,\n isArray: () => !1,\n commentPropName: !1,\n unpairedTags: [],\n processEntities: !0,\n htmlEntities: !1,\n ignoreDeclaration: !1,\n ignorePiTags: !1,\n transformTagName: !1,\n transformAttributeName: !1,\n updateTag: function(e, t, r) {\n return e;\n }\n // skipEmptyListItem: false\n}, Se = function(e) {\n return Object.assign({}, re, e);\n};\nB.buildOptions = Se;\nB.defaultOptions = re;\nclass Me {\n constructor(t) {\n this.tagname = t, this.child = [], this[\":@\"] = {};\n }\n add(t, r) {\n t === \"__proto__\" && (t = \"#__proto__\"), this.child.push({ [t]: r });\n }\n addChild(t) {\n t.tagname === \"__proto__\" && (t.tagname = \"#__proto__\"), t[\":@\"] && Object.keys(t[\":@\"]).length > 0 ? this.child.push({ [t.tagname]: t.child, \":@\": t[\":@\"] }) : this.child.push({ [t.tagname]: t.child });\n }\n}\nvar Be = Me;\nconst ke = O;\nfunction qe(e, t) {\n const r = {};\n if (e[t + 3] === \"O\" && e[t + 4] === \"C\" && e[t + 5] === \"T\" && e[t + 6] === \"Y\" && e[t + 7] === \"P\" && e[t + 8] === \"E\") {\n t = t + 9;\n let s = 1, n = !1, i = !1, d = \"\";\n for (; t < e.length; t++)\n if (e[t] === \"<\" && !i) {\n if (n && Ge(e, t))\n t += 7, [entityName, val, t] = Xe(e, t + 1), val.indexOf(\"&\") === -1 && (r[We(entityName)] = {\n regx: RegExp(`&${entityName};`, \"g\"),\n val\n });\n else if (n && ze(e, t))\n t += 8;\n else if (n && He(e, t))\n t += 8;\n else if (n && Ke(e, t))\n t += 9;\n else if (Ue)\n i = !0;\n else\n throw new Error(\"Invalid DOCTYPE\");\n s++, d = \"\";\n } else if (e[t] === \">\") {\n if (i ? e[t - 1] === \"-\" && e[t - 2] === \"-\" && (i = !1, s--) : s--, s === 0)\n break;\n } else\n e[t] === \"[\" ? n = !0 : d += e[t];\n if (s !== 0)\n throw new Error(\"Unclosed DOCTYPE\");\n } else\n throw new Error(\"Invalid Tag instead of DOCTYPE\");\n return { entities: r, i: t };\n}\nfunction Xe(e, t) {\n let r = \"\";\n for (; t < e.length && e[t] !== \"'\" && e[t] !== '\"'; t++)\n r += e[t];\n if (r = r.trim(), r.indexOf(\" \") !== -1)\n throw new Error(\"External entites are not supported\");\n const s = e[t++];\n let n = \"\";\n for (; t < e.length && e[t] !== s; t++)\n n += e[t];\n return [r, n, t];\n}\nfunction Ue(e, t) {\n return e[t + 1] === \"!\" && e[t + 2] === \"-\" && e[t + 3] === \"-\";\n}\nfunction Ge(e, t) {\n return e[t + 1] === \"!\" && e[t + 2] === \"E\" && e[t + 3] === \"N\" && e[t + 4] === \"T\" && e[t + 5] === \"I\" && e[t + 6] === \"T\" && e[t + 7] === \"Y\";\n}\nfunction ze(e, t) {\n return e[t + 1] === \"!\" && e[t + 2] === \"E\" && e[t + 3] === \"L\" && e[t + 4] === \"E\" && e[t + 5] === \"M\" && e[t + 6] === \"E\" && e[t + 7] === \"N\" && e[t + 8] === \"T\";\n}\nfunction He(e, t) {\n return e[t + 1] === \"!\" && e[t + 2] === \"A\" && e[t + 3] === \"T\" && e[t + 4] === \"T\" && e[t + 5] === \"L\" && e[t + 6] === \"I\" && e[t + 7] === \"S\" && e[t + 8] === \"T\";\n}\nfunction Ke(e, t) {\n return e[t + 1] === \"!\" && e[t + 2] === \"N\" && e[t + 3] === \"O\" && e[t + 4] === \"T\" && e[t + 5] === \"A\" && e[t + 6] === \"T\" && e[t + 7] === \"I\" && e[t + 8] === \"O\" && e[t + 9] === \"N\";\n}\nfunction We(e) {\n if (ke.isName(e))\n return e;\n throw new Error(`Invalid entity name ${e}`);\n}\nvar Ze = qe;\nconst je = /^[-+]?0x[a-fA-F0-9]+$/, Ye = /^([\\-\\+])?(0*)(\\.[0-9]+([eE]\\-?[0-9]+)?|[0-9]+(\\.[0-9]+([eE]\\-?[0-9]+)?)?)$/;\n!Number.parseInt && window.parseInt && (Number.parseInt = window.parseInt);\n!Number.parseFloat && window.parseFloat && (Number.parseFloat = window.parseFloat);\nconst Je = {\n hex: !0,\n leadingZeros: !0,\n decimalPoint: \".\",\n eNotation: !0\n //skipLike: /regex/\n};\nfunction Qe(e, t = {}) {\n if (t = Object.assign({}, Je, t), !e || typeof e != \"string\")\n return e;\n let r = e.trim();\n if (t.skipLike !== void 0 && t.skipLike.test(r))\n return e;\n if (t.hex && je.test(r))\n return Number.parseInt(r, 16);\n {\n const s = Ye.exec(r);\n if (s) {\n const n = s[1], i = s[2];\n let d = De(s[3]);\n const u = s[4] || s[6];\n if (!t.leadingZeros && i.length > 0 && n && r[2] !== \".\")\n return e;\n if (!t.leadingZeros && i.length > 0 && !n && r[1] !== \".\")\n return e;\n {\n const o = Number(r), a = \"\" + o;\n return a.search(/[eE]/) !== -1 || u ? t.eNotation ? o : e : r.indexOf(\".\") !== -1 ? a === \"0\" && d === \"\" || a === d || n && a === \"-\" + d ? o : e : i ? d === a || n + d === a ? o : e : r === a || r === n + a ? o : e;\n }\n } else\n return e;\n }\n}\nfunction De(e) {\n return e && e.indexOf(\".\") !== -1 && (e = e.replace(/0+$/, \"\"), e === \".\" ? e = \"0\" : e[0] === \".\" ? e = \"0\" + e : e[e.length - 1] === \".\" && (e = e.substr(0, e.length - 1))), e;\n}\nvar et = Qe;\nconst k = O, T = Be, tt = Ze, rt = et;\n\"<((!\\\\[CDATA\\\\[([\\\\s\\\\S]*?)(]]>))|((NAME:)?(NAME))([^>]*)>|((\\\\/)(NAME)\\\\s*>))([^<]*)\".replace(/NAME/g, k.nameRegexp);\nlet nt = class {\n constructor(t) {\n this.options = t, this.currentNode = null, this.tagsNodeStack = [], this.docTypeEntities = {}, this.lastEntities = {\n apos: { regex: /&(apos|#39|#x27);/g, val: \"'\" },\n gt: { regex: /&(gt|#62|#x3E);/g, val: \">\" },\n lt: { regex: /&(lt|#60|#x3C);/g, val: \"<\" },\n quot: { regex: /&(quot|#34|#x22);/g, val: '\"' }\n }, this.ampEntity = { regex: /&(amp|#38|#x26);/g, val: \"&\" }, this.htmlEntities = {\n space: { regex: /&(nbsp|#160);/g, val: \" \" },\n // \"lt\" : { regex: /&(lt|#60);/g, val: \"<\" },\n // \"gt\" : { regex: /&(gt|#62);/g, val: \">\" },\n // \"amp\" : { regex: /&(amp|#38);/g, val: \"&\" },\n // \"quot\" : { regex: /&(quot|#34);/g, val: \"\\\"\" },\n // \"apos\" : { regex: /&(apos|#39);/g, val: \"'\" },\n cent: { regex: /&(cent|#162);/g, val: \"¢\" },\n pound: { regex: /&(pound|#163);/g, val: \"£\" },\n yen: { regex: /&(yen|#165);/g, val: \"¥\" },\n euro: { regex: /&(euro|#8364);/g, val: \"€\" },\n copyright: { regex: /&(copy|#169);/g, val: \"©\" },\n reg: { regex: /&(reg|#174);/g, val: \"®\" },\n inr: { regex: /&(inr|#8377);/g, val: \"₹\" }\n }, this.addExternalEntities = it, this.parseXml = at, this.parseTextData = st, this.resolveNameSpace = ot, this.buildAttributesMap = dt, this.isItStopNode = ht, this.replaceEntitiesValue = ft, this.readStopNodeData = gt, this.saveTextToParentTag = ct, this.addChild = lt;\n }\n};\nfunction it(e) {\n const t = Object.keys(e);\n for (let r = 0; r < t.length; r++) {\n const s = t[r];\n this.lastEntities[s] = {\n regex: new RegExp(\"&\" + s + \";\", \"g\"),\n val: e[s]\n };\n }\n}\nfunction st(e, t, r, s, n, i, d) {\n if (e !== void 0 && (this.options.trimValues && !s && (e = e.trim()), e.length > 0)) {\n d || (e = this.replaceEntitiesValue(e));\n const u = this.options.tagValueProcessor(t, e, r, n, i);\n return u == null ? e : typeof u != typeof e || u !== e ? u : this.options.trimValues ? $(e, this.options.parseTagValue, this.options.numberParseOptions) : e.trim() === e ? $(e, this.options.parseTagValue, this.options.numberParseOptions) : e;\n }\n}\nfunction ot(e) {\n if (this.options.removeNSPrefix) {\n const t = e.split(\":\"), r = e.charAt(0) === \"/\" ? \"/\" : \"\";\n if (t[0] === \"xmlns\")\n return \"\";\n t.length === 2 && (e = r + t[1]);\n }\n return e;\n}\nconst ut = new RegExp(`([^\\\\s=]+)\\\\s*(=\\\\s*(['\"])([\\\\s\\\\S]*?)\\\\3)?`, \"gm\");\nfunction dt(e, t, r) {\n if (!this.options.ignoreAttributes && typeof e == \"string\") {\n const s = k.getAllMatches(e, ut), n = s.length, i = {};\n for (let d = 0; d < n; d++) {\n const u = this.resolveNameSpace(s[d][1]);\n let o = s[d][4], a = this.options.attributeNamePrefix + u;\n if (u.length)\n if (this.options.transformAttributeName && (a = this.options.transformAttributeName(a)), a === \"__proto__\" && (a = \"#__proto__\"), o !== void 0) {\n this.options.trimValues && (o = o.trim()), o = this.replaceEntitiesValue(o);\n const l = this.options.attributeValueProcessor(u, o, t);\n l == null ? i[a] = o : typeof l != typeof o || l !== o ? i[a] = l : i[a] = $(\n o,\n this.options.parseAttributeValue,\n this.options.numberParseOptions\n );\n } else\n this.options.allowBooleanAttributes && (i[a] = !0);\n }\n if (!Object.keys(i).length)\n return;\n if (this.options.attributesGroupName) {\n const d = {};\n return d[this.options.attributesGroupName] = i, d;\n }\n return i;\n }\n}\nconst at = function(e) {\n e = e.replace(/\\r\\n?/g, `\n`);\n const t = new T(\"!xml\");\n let r = t, s = \"\", n = \"\";\n for (let i = 0; i < e.length; i++)\n if (e[i] === \"<\")\n if (e[i + 1] === \"/\") {\n const u = y(e, \">\", i, \"Closing Tag is not closed.\");\n let o = e.substring(i + 2, u).trim();\n if (this.options.removeNSPrefix) {\n const f = o.indexOf(\":\");\n f !== -1 && (o = o.substr(f + 1));\n }\n this.options.transformTagName && (o = this.options.transformTagName(o)), r && (s = this.saveTextToParentTag(s, r, n));\n const a = n.substring(n.lastIndexOf(\".\") + 1);\n if (o && this.options.unpairedTags.indexOf(o) !== -1)\n throw new Error(`Unpaired tag can not be used as closing tag: `);\n let l = 0;\n a && this.options.unpairedTags.indexOf(a) !== -1 ? (l = n.lastIndexOf(\".\", n.lastIndexOf(\".\") - 1), this.tagsNodeStack.pop()) : l = n.lastIndexOf(\".\"), n = n.substring(0, l), r = this.tagsNodeStack.pop(), s = \"\", i = u;\n } else if (e[i + 1] === \"?\") {\n let u = x(e, i, !1, \"?>\");\n if (!u)\n throw new Error(\"Pi Tag is not closed.\");\n if (s = this.saveTextToParentTag(s, r, n), !(this.options.ignoreDeclaration && u.tagName === \"?xml\" || this.options.ignorePiTags)) {\n const o = new T(u.tagName);\n o.add(this.options.textNodeName, \"\"), u.tagName !== u.tagExp && u.attrExpPresent && (o[\":@\"] = this.buildAttributesMap(u.tagExp, n, u.tagName)), this.addChild(r, o, n);\n }\n i = u.closeIndex + 1;\n } else if (e.substr(i + 1, 3) === \"!--\") {\n const u = y(e, \"-->\", i + 4, \"Comment is not closed.\");\n if (this.options.commentPropName) {\n const o = e.substring(i + 4, u - 2);\n s = this.saveTextToParentTag(s, r, n), r.add(this.options.commentPropName, [{ [this.options.textNodeName]: o }]);\n }\n i = u;\n } else if (e.substr(i + 1, 2) === \"!D\") {\n const u = tt(e, i);\n this.docTypeEntities = u.entities, i = u.i;\n } else if (e.substr(i + 1, 2) === \"![\") {\n const u = y(e, \"]]>\", i, \"CDATA is not closed.\") - 2, o = e.substring(i + 9, u);\n if (s = this.saveTextToParentTag(s, r, n), this.options.cdataPropName)\n r.add(this.options.cdataPropName, [{ [this.options.textNodeName]: o }]);\n else {\n let a = this.parseTextData(o, r.tagname, n, !0, !1, !0);\n a == null && (a = \"\"), r.add(this.options.textNodeName, a);\n }\n i = u + 2;\n } else {\n let u = x(e, i, this.options.removeNSPrefix), o = u.tagName;\n const a = u.rawTagName;\n let l = u.tagExp, f = u.attrExpPresent, c = u.closeIndex;\n this.options.transformTagName && (o = this.options.transformTagName(o)), r && s && r.tagname !== \"!xml\" && (s = this.saveTextToParentTag(s, r, n, !1));\n const g = r;\n if (g && this.options.unpairedTags.indexOf(g.tagname) !== -1 && (r = this.tagsNodeStack.pop(), n = n.substring(0, n.lastIndexOf(\".\"))), o !== t.tagname && (n += n ? \".\" + o : o), this.isItStopNode(this.options.stopNodes, n, o)) {\n let h = \"\";\n if (l.length > 0 && l.lastIndexOf(\"/\") === l.length - 1)\n i = u.closeIndex;\n else if (this.options.unpairedTags.indexOf(o) !== -1)\n i = u.closeIndex;\n else {\n const E = this.readStopNodeData(e, a, c + 1);\n if (!E)\n throw new Error(`Unexpected end of ${a}`);\n i = E.i, h = E.tagContent;\n }\n const _ = new T(o);\n o !== l && f && (_[\":@\"] = this.buildAttributesMap(l, n, o)), h && (h = this.parseTextData(h, o, n, !0, f, !0, !0)), n = n.substr(0, n.lastIndexOf(\".\")), _.add(this.options.textNodeName, h), this.addChild(r, _, n);\n } else {\n if (l.length > 0 && l.lastIndexOf(\"/\") === l.length - 1) {\n o[o.length - 1] === \"/\" ? (o = o.substr(0, o.length - 1), n = n.substr(0, n.length - 1), l = o) : l = l.substr(0, l.length - 1), this.options.transformTagName && (o = this.options.transformTagName(o));\n const h = new T(o);\n o !== l && f && (h[\":@\"] = this.buildAttributesMap(l, n, o)), this.addChild(r, h, n), n = n.substr(0, n.lastIndexOf(\".\"));\n } else {\n const h = new T(o);\n this.tagsNodeStack.push(r), o !== l && f && (h[\":@\"] = this.buildAttributesMap(l, n, o)), this.addChild(r, h, n), r = h;\n }\n s = \"\", i = c;\n }\n }\n else\n s += e[i];\n return t.child;\n};\nfunction lt(e, t, r) {\n const s = this.options.updateTag(t.tagname, r, t[\":@\"]);\n s === !1 || (typeof s == \"string\" && (t.tagname = s), e.addChild(t));\n}\nconst ft = function(e) {\n if (this.options.processEntities) {\n for (let t in this.docTypeEntities) {\n const r = this.docTypeEntities[t];\n e = e.replace(r.regx, r.val);\n }\n for (let t in this.lastEntities) {\n const r = this.lastEntities[t];\n e = e.replace(r.regex, r.val);\n }\n if (this.options.htmlEntities)\n for (let t in this.htmlEntities) {\n const r = this.htmlEntities[t];\n e = e.replace(r.regex, r.val);\n }\n e = e.replace(this.ampEntity.regex, this.ampEntity.val);\n }\n return e;\n};\nfunction ct(e, t, r, s) {\n return e && (s === void 0 && (s = Object.keys(t.child).length === 0), e = this.parseTextData(\n e,\n t.tagname,\n r,\n !1,\n t[\":@\"] ? Object.keys(t[\":@\"]).length !== 0 : !1,\n s\n ), e !== void 0 && e !== \"\" && t.add(this.options.textNodeName, e), e = \"\"), e;\n}\nfunction ht(e, t, r) {\n const s = \"*.\" + r;\n for (const n in e) {\n const i = e[n];\n if (s === i || t === i)\n return !0;\n }\n return !1;\n}\nfunction pt(e, t, r = \">\") {\n let s, n = \"\";\n for (let i = t; i < e.length; i++) {\n let d = e[i];\n if (s)\n d === s && (s = \"\");\n else if (d === '\"' || d === \"'\")\n s = d;\n else if (d === r[0])\n if (r[1]) {\n if (e[i + 1] === r[1])\n return {\n data: n,\n index: i\n };\n } else\n return {\n data: n,\n index: i\n };\n else\n d === \"\t\" && (d = \" \");\n n += d;\n }\n}\nfunction y(e, t, r, s) {\n const n = e.indexOf(t, r);\n if (n === -1)\n throw new Error(s);\n return n + t.length - 1;\n}\nfunction x(e, t, r, s = \">\") {\n const n = pt(e, t + 1, s);\n if (!n)\n return;\n let i = n.data;\n const d = n.index, u = i.search(/\\s/);\n let o = i, a = !0;\n u !== -1 && (o = i.substr(0, u).replace(/\\s\\s*$/, \"\"), i = i.substr(u + 1));\n const l = o;\n if (r) {\n const f = o.indexOf(\":\");\n f !== -1 && (o = o.substr(f + 1), a = o !== n.data.substr(f + 1));\n }\n return {\n tagName: o,\n tagExp: i,\n closeIndex: d,\n attrExpPresent: a,\n rawTagName: l\n };\n}\nfunction gt(e, t, r) {\n const s = r;\n let n = 1;\n for (; r < e.length; r++)\n if (e[r] === \"<\")\n if (e[r + 1] === \"/\") {\n const i = y(e, \">\", r, `${t} is not closed`);\n if (e.substring(r + 2, i).trim() === t && (n--, n === 0))\n return {\n tagContent: e.substring(s, r),\n i\n };\n r = i;\n } else if (e[r + 1] === \"?\")\n r = y(e, \"?>\", r + 1, \"StopNode is not closed.\");\n else if (e.substr(r + 1, 3) === \"!--\")\n r = y(e, \"-->\", r + 3, \"StopNode is not closed.\");\n else if (e.substr(r + 1, 2) === \"![\")\n r = y(e, \"]]>\", r, \"StopNode is not closed.\") - 2;\n else {\n const i = x(e, r, \">\");\n i && ((i && i.tagName) === t && i.tagExp[i.tagExp.length - 1] !== \"/\" && n++, r = i.closeIndex);\n }\n}\nfunction $(e, t, r) {\n if (t && typeof e == \"string\") {\n const s = e.trim();\n return s === \"true\" ? !0 : s === \"false\" ? !1 : rt(e, r);\n } else\n return k.isExist(e) ? e : \"\";\n}\nvar wt = nt, ne = {};\nfunction mt(e, t) {\n return ie(e, t);\n}\nfunction ie(e, t, r) {\n let s;\n const n = {};\n for (let i = 0; i < e.length; i++) {\n const d = e[i], u = Nt(d);\n let o = \"\";\n if (r === void 0 ? o = u : o = r + \".\" + u, u === t.textNodeName)\n s === void 0 ? s = d[u] : s += \"\" + d[u];\n else {\n if (u === void 0)\n continue;\n if (d[u]) {\n let a = ie(d[u], t, o);\n const l = bt(a, t);\n d[\":@\"] ? Et(a, d[\":@\"], o, t) : Object.keys(a).length === 1 && a[t.textNodeName] !== void 0 && !t.alwaysCreateTextNode ? a = a[t.textNodeName] : Object.keys(a).length === 0 && (t.alwaysCreateTextNode ? a[t.textNodeName] = \"\" : a = \"\"), n[u] !== void 0 && n.hasOwnProperty(u) ? (Array.isArray(n[u]) || (n[u] = [n[u]]), n[u].push(a)) : t.isArray(u, o, l) ? n[u] = [a] : n[u] = a;\n }\n }\n }\n return typeof s == \"string\" ? s.length > 0 && (n[t.textNodeName] = s) : s !== void 0 && (n[t.textNodeName] = s), n;\n}\nfunction Nt(e) {\n const t = Object.keys(e);\n for (let r = 0; r < t.length; r++) {\n const s = t[r];\n if (s !== \":@\")\n return s;\n }\n}\nfunction Et(e, t, r, s) {\n if (t) {\n const n = Object.keys(t), i = n.length;\n for (let d = 0; d < i; d++) {\n const u = n[d];\n s.isArray(u, r + \".\" + u, !0, !0) ? e[u] = [t[u]] : e[u] = t[u];\n }\n }\n}\nfunction bt(e, t) {\n const { textNodeName: r } = t, s = Object.keys(e).length;\n return !!(s === 0 || s === 1 && (e[r] || typeof e[r] == \"boolean\" || e[r] === 0));\n}\nne.prettify = mt;\nconst { buildOptions: yt } = B, _t = wt, { prettify: vt } = ne, Tt = S;\nlet It = class {\n constructor(t) {\n this.externalEntities = {}, this.options = yt(t);\n }\n /**\n * Parse XML dats to JS object \n * @param {string|Buffer} xmlData \n * @param {boolean|Object} validationOption \n */\n parse(t, r) {\n if (typeof t != \"string\")\n if (t.toString)\n t = t.toString();\n else\n throw new Error(\"XML data is accepted in String or Bytes[] form.\");\n if (r) {\n r === !0 && (r = {});\n const i = Tt.validate(t, r);\n if (i !== !0)\n throw Error(`${i.err.msg}:${i.err.line}:${i.err.col}`);\n }\n const s = new _t(this.options);\n s.addExternalEntities(this.externalEntities);\n const n = s.parseXml(t);\n return this.options.preserveOrder || n === void 0 ? n : vt(n, this.options);\n }\n /**\n * Add Entity which is not by default supported by this library\n * @param {string} key \n * @param {string} value \n */\n addEntity(t, r) {\n if (r.indexOf(\"&\") !== -1)\n throw new Error(\"Entity value can't have '&'\");\n if (t.indexOf(\"&\") !== -1 || t.indexOf(\";\") !== -1)\n throw new Error(\"An entity must be set without '&' and ';'. Eg. use '#xD' for ' '\");\n if (r === \"&\")\n throw new Error(\"An entity with value '&' is not permitted\");\n this.externalEntities[t] = r;\n }\n};\nvar At = It;\nconst Ot = `\n`;\nfunction Ct(e, t) {\n let r = \"\";\n return t.format && t.indentBy.length > 0 && (r = Ot), se(e, t, \"\", r);\n}\nfunction se(e, t, r, s) {\n let n = \"\", i = !1;\n for (let d = 0; d < e.length; d++) {\n const u = e[d], o = Pt(u);\n if (o === void 0)\n continue;\n let a = \"\";\n if (r.length === 0 ? a = o : a = `${r}.${o}`, o === t.textNodeName) {\n let h = u[o];\n xt(a, t) || (h = t.tagValueProcessor(o, h), h = oe(h, t)), i && (n += s), n += h, i = !1;\n continue;\n } else if (o === t.cdataPropName) {\n i && (n += s), n += ``, i = !1;\n continue;\n } else if (o === t.commentPropName) {\n n += s + ``, i = !0;\n continue;\n } else if (o[0] === \"?\") {\n const h = K(u[\":@\"], t), _ = o === \"?xml\" ? \"\" : s;\n let E = u[o][0][t.textNodeName];\n E = E.length !== 0 ? \" \" + E : \"\", n += _ + `<${o}${E}${h}?>`, i = !0;\n continue;\n }\n let l = s;\n l !== \"\" && (l += t.indentBy);\n const f = K(u[\":@\"], t), c = s + `<${o}${f}`, g = se(u[o], t, a, l);\n t.unpairedTags.indexOf(o) !== -1 ? t.suppressUnpairedNode ? n += c + \">\" : n += c + \"/>\" : (!g || g.length === 0) && t.suppressEmptyNode ? n += c + \"/>\" : g && g.endsWith(\">\") ? n += c + `>${g}${s}` : (n += c + \">\", g && s !== \"\" && (g.includes(\"/>\") || g.includes(\"`), i = !0;\n }\n return n;\n}\nfunction Pt(e) {\n const t = Object.keys(e);\n for (let r = 0; r < t.length; r++) {\n const s = t[r];\n if (e.hasOwnProperty(s) && s !== \":@\")\n return s;\n }\n}\nfunction K(e, t) {\n let r = \"\";\n if (e && !t.ignoreAttributes)\n for (let s in e) {\n if (!e.hasOwnProperty(s))\n continue;\n let n = t.attributeValueProcessor(s, e[s]);\n n = oe(n, t), n === !0 && t.suppressBooleanAttributes ? r += ` ${s.substr(t.attributeNamePrefix.length)}` : r += ` ${s.substr(t.attributeNamePrefix.length)}=\"${n}\"`;\n }\n return r;\n}\nfunction xt(e, t) {\n e = e.substr(0, e.length - t.textNodeName.length - 1);\n let r = e.substr(e.lastIndexOf(\".\") + 1);\n for (let s in t.stopNodes)\n if (t.stopNodes[s] === e || t.stopNodes[s] === \"*.\" + r)\n return !0;\n return !1;\n}\nfunction oe(e, t) {\n if (e && e.length > 0 && t.processEntities)\n for (let r = 0; r < t.entities.length; r++) {\n const s = t.entities[r];\n e = e.replace(s.regex, s.val);\n }\n return e;\n}\nvar $t = Ct;\nconst Ft = $t, Vt = {\n attributeNamePrefix: \"@_\",\n attributesGroupName: !1,\n textNodeName: \"#text\",\n ignoreAttributes: !0,\n cdataPropName: !1,\n format: !1,\n indentBy: \" \",\n suppressEmptyNode: !1,\n suppressUnpairedNode: !0,\n suppressBooleanAttributes: !0,\n tagValueProcessor: function(e, t) {\n return t;\n },\n attributeValueProcessor: function(e, t) {\n return t;\n },\n preserveOrder: !1,\n commentPropName: !1,\n unpairedTags: [],\n entities: [\n { regex: new RegExp(\"&\", \"g\"), val: \"&\" },\n //it must be on top\n { regex: new RegExp(\">\", \"g\"), val: \">\" },\n { regex: new RegExp(\"<\", \"g\"), val: \"<\" },\n { regex: new RegExp(\"'\", \"g\"), val: \"'\" },\n { regex: new RegExp('\"', \"g\"), val: \""\" }\n ],\n processEntities: !0,\n stopNodes: [],\n // transformTagName: false,\n // transformAttributeName: false,\n oneListGroup: !1\n};\nfunction b(e) {\n this.options = Object.assign({}, Vt, e), this.options.ignoreAttributes || this.options.attributesGroupName ? this.isAttribute = function() {\n return !1;\n } : (this.attrPrefixLen = this.options.attributeNamePrefix.length, this.isAttribute = St), this.processTextOrObjNode = Lt, this.options.format ? (this.indentate = Rt, this.tagEndChar = `>\n`, this.newLine = `\n`) : (this.indentate = function() {\n return \"\";\n }, this.tagEndChar = \">\", this.newLine = \"\");\n}\nb.prototype.build = function(e) {\n return this.options.preserveOrder ? Ft(e, this.options) : (Array.isArray(e) && this.options.arrayNodeName && this.options.arrayNodeName.length > 1 && (e = {\n [this.options.arrayNodeName]: e\n }), this.j2x(e, 0).val);\n};\nb.prototype.j2x = function(e, t) {\n let r = \"\", s = \"\";\n for (let n in e)\n if (Object.prototype.hasOwnProperty.call(e, n))\n if (typeof e[n] > \"u\")\n this.isAttribute(n) && (s += \"\");\n else if (e[n] === null)\n this.isAttribute(n) ? s += \"\" : n[0] === \"?\" ? s += this.indentate(t) + \"<\" + n + \"?\" + this.tagEndChar : s += this.indentate(t) + \"<\" + n + \"/\" + this.tagEndChar;\n else if (e[n] instanceof Date)\n s += this.buildTextValNode(e[n], n, \"\", t);\n else if (typeof e[n] != \"object\") {\n const i = this.isAttribute(n);\n if (i)\n r += this.buildAttrPairStr(i, \"\" + e[n]);\n else if (n === this.options.textNodeName) {\n let d = this.options.tagValueProcessor(n, \"\" + e[n]);\n s += this.replaceEntitiesValue(d);\n } else\n s += this.buildTextValNode(e[n], n, \"\", t);\n } else if (Array.isArray(e[n])) {\n const i = e[n].length;\n let d = \"\";\n for (let u = 0; u < i; u++) {\n const o = e[n][u];\n typeof o > \"u\" || (o === null ? n[0] === \"?\" ? s += this.indentate(t) + \"<\" + n + \"?\" + this.tagEndChar : s += this.indentate(t) + \"<\" + n + \"/\" + this.tagEndChar : typeof o == \"object\" ? this.options.oneListGroup ? d += this.j2x(o, t + 1).val : d += this.processTextOrObjNode(o, n, t) : d += this.buildTextValNode(o, n, \"\", t));\n }\n this.options.oneListGroup && (d = this.buildObjectNode(d, n, \"\", t)), s += d;\n } else if (this.options.attributesGroupName && n === this.options.attributesGroupName) {\n const i = Object.keys(e[n]), d = i.length;\n for (let u = 0; u < d; u++)\n r += this.buildAttrPairStr(i[u], \"\" + e[n][i[u]]);\n } else\n s += this.processTextOrObjNode(e[n], n, t);\n return { attrStr: r, val: s };\n};\nb.prototype.buildAttrPairStr = function(e, t) {\n return t = this.options.attributeValueProcessor(e, \"\" + t), t = this.replaceEntitiesValue(t), this.options.suppressBooleanAttributes && t === \"true\" ? \" \" + e : \" \" + e + '=\"' + t + '\"';\n};\nfunction Lt(e, t, r) {\n const s = this.j2x(e, r + 1);\n return e[this.options.textNodeName] !== void 0 && Object.keys(e).length === 1 ? this.buildTextValNode(e[this.options.textNodeName], t, s.attrStr, r) : this.buildObjectNode(s.val, t, s.attrStr, r);\n}\nb.prototype.buildObjectNode = function(e, t, r, s) {\n if (e === \"\")\n return t[0] === \"?\" ? this.indentate(s) + \"<\" + t + r + \"?\" + this.tagEndChar : this.indentate(s) + \"<\" + t + r + this.closeTag(t) + this.tagEndChar;\n {\n let n = \"\" + e + n : this.options.commentPropName !== !1 && t === this.options.commentPropName && i.length === 0 ? this.indentate(s) + `` + this.newLine : this.indentate(s) + \"<\" + t + r + i + this.tagEndChar + e + this.indentate(s) + n;\n }\n};\nb.prototype.closeTag = function(e) {\n let t = \"\";\n return this.options.unpairedTags.indexOf(e) !== -1 ? this.options.suppressUnpairedNode || (t = \"/\") : this.options.suppressEmptyNode ? t = \"/\" : t = `>` + this.newLine;\n if (this.options.commentPropName !== !1 && t === this.options.commentPropName)\n return this.indentate(s) + `` + this.newLine;\n if (t[0] === \"?\")\n return this.indentate(s) + \"<\" + t + r + \"?\" + this.tagEndChar;\n {\n let n = this.options.tagValueProcessor(t, e);\n return n = this.replaceEntitiesValue(n), n === \"\" ? this.indentate(s) + \"<\" + t + r + this.closeTag(t) + this.tagEndChar : this.indentate(s) + \"<\" + t + r + \">\" + n + \" 0 && this.options.processEntities)\n for (let t = 0; t < this.options.entities.length; t++) {\n const r = this.options.entities[t];\n e = e.replace(r.regex, r.val);\n }\n return e;\n};\nfunction Rt(e) {\n return this.options.indentBy.repeat(e);\n}\nfunction St(e) {\n return e.startsWith(this.options.attributeNamePrefix) && e !== this.options.textNodeName ? e.substr(this.attrPrefixLen) : !1;\n}\nvar Mt = b;\nconst Bt = S, kt = At, qt = Mt;\nvar W = {\n XMLParser: kt,\n XMLValidator: Bt,\n XMLBuilder: qt\n};\nfunction Xt(e) {\n if (typeof e != \"string\")\n throw new TypeError(`Expected a \\`string\\`, got \\`${typeof e}\\``);\n if (e = e.trim(), e.length === 0 || W.XMLValidator.validate(e) !== !0)\n return !1;\n let t;\n const r = new W.XMLParser();\n try {\n t = r.parse(e);\n } catch {\n return !1;\n }\n return !(!t || !(\"svg\" in t));\n}\n/**\n * @copyright Copyright (c) 2022 John Molakvoæ \n *\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 */\nclass cr {\n _view;\n constructor(t) {\n Ut(t), this._view = t;\n }\n get id() {\n return this._view.id;\n }\n get name() {\n return this._view.name;\n }\n get caption() {\n return this._view.caption;\n }\n get emptyTitle() {\n return this._view.emptyTitle;\n }\n get emptyCaption() {\n return this._view.emptyCaption;\n }\n get getContents() {\n return this._view.getContents;\n }\n get icon() {\n return this._view.icon;\n }\n set icon(t) {\n this._view.icon = t;\n }\n get order() {\n return this._view.order;\n }\n set order(t) {\n this._view.order = t;\n }\n get params() {\n return this._view.params;\n }\n set params(t) {\n this._view.params = t;\n }\n get columns() {\n return this._view.columns;\n }\n get emptyView() {\n return this._view.emptyView;\n }\n get parent() {\n return this._view.parent;\n }\n get sticky() {\n return this._view.sticky;\n }\n get expanded() {\n return this._view.expanded;\n }\n set expanded(t) {\n this._view.expanded = t;\n }\n get defaultSortKey() {\n return this._view.defaultSortKey;\n }\n}\nconst Ut = function(e) {\n if (!e.id || typeof e.id != \"string\")\n throw new Error(\"View id is required and must be a string\");\n if (!e.name || typeof e.name != \"string\")\n throw new Error(\"View name is required and must be a string\");\n if (e.columns && e.columns.length > 0 && (!e.caption || typeof e.caption != \"string\"))\n throw new Error(\"View caption is required for top-level views and must be a string\");\n if (!e.getContents || typeof e.getContents != \"function\")\n throw new Error(\"View getContents is required and must be a function\");\n if (!e.icon || typeof e.icon != \"string\" || !Xt(e.icon))\n throw new Error(\"View icon is required and must be a valid svg string\");\n if (!(\"order\" in e) || typeof e.order != \"number\")\n throw new Error(\"View order is required and must be a number\");\n if (e.columns && e.columns.forEach((t) => {\n if (!(t instanceof Ie))\n throw new Error(\"View columns must be an array of Column. Invalid column found\");\n }), e.emptyView && typeof e.emptyView != \"function\")\n throw new Error(\"View emptyView must be a function\");\n if (e.parent && typeof e.parent != \"string\")\n throw new Error(\"View parent must be a string\");\n if (\"sticky\" in e && typeof e.sticky != \"boolean\")\n throw new Error(\"View sticky must be a boolean\");\n if (\"expanded\" in e && typeof e.expanded != \"boolean\")\n throw new Error(\"View expanded must be a boolean\");\n if (e.defaultSortKey && typeof e.defaultSortKey != \"string\")\n throw new Error(\"View defaultSortKey must be a string\");\n return !0;\n};\n/**\n * @copyright 2019 Christoph Wurst \n *\n * @author Christoph Wurst \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 hr = function(e) {\n return F().registerEntry(e);\n}, pr = function(e) {\n return F().unregisterEntry(e);\n}, gr = function(e) {\n return F().getEntries(e).sort((r, s) => r.order !== void 0 && s.order !== void 0 && r.order !== s.order ? r.order - s.order : r.displayName.localeCompare(s.displayName, void 0, { numeric: !0, sensitivity: \"base\" }));\n};\nexport {\n Ie as Column,\n Z as DefaultType,\n ye as File,\n Qt as FileAction,\n R as FileType,\n _e as Folder,\n tr as Header,\n Te as Navigation,\n D as Node,\n Q as NodeStatus,\n N as Permission,\n cr as View,\n hr as addNewFileMenuEntry,\n ur as davGetClient,\n sr as davGetDefaultPropfind,\n Ee as davGetFavoritesReport,\n or as davGetRecentSearch,\n be as davParsePermissions,\n te as davRemoteURL,\n ve as davResultToNode,\n ee as davRootPath,\n Y as defaultDavNamespaces,\n j as defaultDavProperties,\n Yt as formatFileSize,\n L as getDavNameSpaces,\n V as getDavProperties,\n dr as getFavoriteNodes,\n er as getFileActions,\n nr as getFileListHeaders,\n ar as getNavigation,\n gr as getNewFileMenuEntries,\n Jt as parseFileSize,\n ir as registerDavProperty,\n Dt as registerFileAction,\n rr as registerFileListHeaders,\n pr as removeNewFileMenuEntry\n};\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-f2495ce6.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-f2495ce6.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 const AsyncResource = {\n\tbind(fn, _type, thisArg) {\n\t\treturn fn.bind(thisArg);\n\t},\n};\n\nexport class AsyncLocalStorage {\n\tgetStore() {\n\t\treturn undefined;\n\t}\n\n\trun(_store, callback) {\n\t\treturn callback();\n\t}\n}\n","import \"../assets/index-f2495ce6.css\";\nimport { generateRemoteUrl as ni } from \"@nextcloud/router\";\nimport { getCurrentUser as dn } from \"@nextcloud/auth\";\nimport { Folder as ai, Permission as Pr, getNewFileMenuEntries as Ur } from \"@nextcloud/files\";\nimport es from \"@nextcloud/axios\";\nimport Or from \"p-cancelable\";\nimport Br from \"p-queue\";\nimport jr from \"p-limit\";\nimport { getLoggerBuilder as Hn } from \"@nextcloud/logger\";\nimport { showError as Dr } from \"@nextcloud/dialogs\";\nimport $r from \"simple-eta\";\nimport Rr from \"@nextcloud/vue/dist/Components/NcActionButton.js\";\nimport Ir from \"@nextcloud/vue/dist/Components/NcActions.js\";\nimport zr from \"@nextcloud/vue/dist/Components/NcButton.js\";\nimport Mr from \"@nextcloud/vue/dist/Components/NcIconSvgWrapper.js\";\nimport Hr from \"@nextcloud/vue/dist/Components/NcProgressBar.js\";\nimport { getGettextBuilder as Vr } from \"@nextcloud/l10n/gettext\";\nfunction ii(e, t) {\n return function() {\n return e.apply(t, arguments);\n };\n}\nconst { toString: Wr } = Object.prototype, { getPrototypeOf: fn } = Object, hs = ((e) => (t) => {\n const s = Wr.call(t);\n return e[s] || (e[s] = s.slice(8, -1).toLowerCase());\n})(/* @__PURE__ */ Object.create(null)), fe = (e) => (e = e.toLowerCase(), (t) => hs(t) === e), Ts = (e) => (t) => typeof t === e, { isArray: ot } = Array, xt = Ts(\"undefined\");\nfunction qr(e) {\n return e !== null && !xt(e) && e.constructor !== null && !xt(e.constructor) && se(e.constructor.isBuffer) && e.constructor.isBuffer(e);\n}\nconst ri = fe(\"ArrayBuffer\");\nfunction Gr(e) {\n let t;\n return typeof ArrayBuffer < \"u\" && ArrayBuffer.isView ? t = ArrayBuffer.isView(e) : t = e && e.buffer && ri(e.buffer), t;\n}\nconst Kr = Ts(\"string\"), se = Ts(\"function\"), oi = Ts(\"number\"), ws = (e) => e !== null && typeof e == \"object\", Jr = (e) => e === !0 || e === !1, qt = (e) => {\n if (hs(e) !== \"object\")\n return !1;\n const t = fn(e);\n return (t === null || t === Object.prototype || Object.getPrototypeOf(t) === null) && !(Symbol.toStringTag in e) && !(Symbol.iterator in e);\n}, Yr = fe(\"Date\"), Zr = fe(\"File\"), Xr = fe(\"Blob\"), Qr = fe(\"FileList\"), eo = (e) => ws(e) && se(e.pipe), to = (e) => {\n let t;\n return e && (typeof FormData == \"function\" && e instanceof FormData || se(e.append) && ((t = hs(e)) === \"formdata\" || // detect form-data instance\n t === \"object\" && se(e.toString) && e.toString() === \"[object FormData]\"));\n}, so = fe(\"URLSearchParams\"), no = (e) => e.trim ? e.trim() : e.replace(/^[\\s\\uFEFF\\xA0]+|[\\s\\uFEFF\\xA0]+$/g, \"\");\nfunction Ft(e, t, { allOwnKeys: s = !1 } = {}) {\n if (e === null || typeof e > \"u\")\n return;\n let n, a;\n if (typeof e != \"object\" && (e = [e]), ot(e))\n for (n = 0, a = e.length; n < a; n++)\n t.call(null, e[n], n, e);\n else {\n const i = s ? Object.getOwnPropertyNames(e) : Object.keys(e), r = i.length;\n let o;\n for (n = 0; n < r; n++)\n o = i[n], t.call(null, e[o], o, e);\n }\n}\nfunction li(e, t) {\n t = t.toLowerCase();\n const s = Object.keys(e);\n let n = s.length, a;\n for (; n-- > 0; )\n if (a = s[n], t === a.toLowerCase())\n return a;\n return null;\n}\nconst ui = (() => typeof globalThis < \"u\" ? globalThis : typeof self < \"u\" ? self : typeof window < \"u\" ? window : global)(), mi = (e) => !xt(e) && e !== ui;\nfunction Is() {\n const { caseless: e } = mi(this) && this || {}, t = {}, s = (n, a) => {\n const i = e && li(t, a) || a;\n qt(t[i]) && qt(n) ? t[i] = Is(t[i], n) : qt(n) ? t[i] = Is({}, n) : ot(n) ? t[i] = n.slice() : t[i] = n;\n };\n for (let n = 0, a = arguments.length; n < a; n++)\n arguments[n] && Ft(arguments[n], s);\n return t;\n}\nconst ao = (e, t, s, { allOwnKeys: n } = {}) => (Ft(t, (a, i) => {\n s && se(a) ? e[i] = ii(a, s) : e[i] = a;\n}, { allOwnKeys: n }), e), io = (e) => (e.charCodeAt(0) === 65279 && (e = e.slice(1)), e), ro = (e, t, s, n) => {\n e.prototype = Object.create(t.prototype, n), e.prototype.constructor = e, Object.defineProperty(e, \"super\", {\n value: t.prototype\n }), s && Object.assign(e.prototype, s);\n}, oo = (e, t, s, n) => {\n let a, i, r;\n const o = {};\n if (t = t || {}, e == null)\n return t;\n do {\n for (a = Object.getOwnPropertyNames(e), i = a.length; i-- > 0; )\n r = a[i], (!n || n(r, e, t)) && !o[r] && (t[r] = e[r], o[r] = !0);\n e = s !== !1 && fn(e);\n } while (e && (!s || s(e, t)) && e !== Object.prototype);\n return t;\n}, lo = (e, t, s) => {\n e = String(e), (s === void 0 || s > e.length) && (s = e.length), s -= t.length;\n const n = e.indexOf(t, s);\n return n !== -1 && n === s;\n}, uo = (e) => {\n if (!e)\n return null;\n if (ot(e))\n return e;\n let t = e.length;\n if (!oi(t))\n return null;\n const s = new Array(t);\n for (; t-- > 0; )\n s[t] = e[t];\n return s;\n}, mo = ((e) => (t) => e && t instanceof e)(typeof Uint8Array < \"u\" && fn(Uint8Array)), co = (e, t) => {\n const n = (e && e[Symbol.iterator]).call(e);\n let a;\n for (; (a = n.next()) && !a.done; ) {\n const i = a.value;\n t.call(e, i[0], i[1]);\n }\n}, fo = (e, t) => {\n let s;\n const n = [];\n for (; (s = e.exec(t)) !== null; )\n n.push(s);\n return n;\n}, go = fe(\"HTMLFormElement\"), po = (e) => e.toLowerCase().replace(\n /[-_\\s]([a-z\\d])(\\w*)/g,\n function(s, n, a) {\n return n.toUpperCase() + a;\n }\n), Vn = (({ hasOwnProperty: e }) => (t, s) => e.call(t, s))(Object.prototype), ho = fe(\"RegExp\"), ci = (e, t) => {\n const s = Object.getOwnPropertyDescriptors(e), n = {};\n Ft(s, (a, i) => {\n let r;\n (r = t(a, i, e)) !== !1 && (n[i] = r || a);\n }), Object.defineProperties(e, n);\n}, To = (e) => {\n ci(e, (t, s) => {\n if (se(e) && [\"arguments\", \"caller\", \"callee\"].indexOf(s) !== -1)\n return !1;\n const n = e[s];\n if (se(n)) {\n if (t.enumerable = !1, \"writable\" in t) {\n t.writable = !1;\n return;\n }\n t.set || (t.set = () => {\n throw Error(\"Can not rewrite read-only method '\" + s + \"'\");\n });\n }\n });\n}, wo = (e, t) => {\n const s = {}, n = (a) => {\n a.forEach((i) => {\n s[i] = !0;\n });\n };\n return ot(e) ? n(e) : n(String(e).split(t)), s;\n}, vo = () => {\n}, xo = (e, t) => (e = +e, Number.isFinite(e) ? e : t), bs = \"abcdefghijklmnopqrstuvwxyz\", Wn = \"0123456789\", di = {\n DIGIT: Wn,\n ALPHA: bs,\n ALPHA_DIGIT: bs + bs.toUpperCase() + Wn\n}, yo = (e = 16, t = di.ALPHA_DIGIT) => {\n let s = \"\";\n const { length: n } = t;\n for (; e--; )\n s += t[Math.random() * n | 0];\n return s;\n};\nfunction _o(e) {\n return !!(e && se(e.append) && e[Symbol.toStringTag] === \"FormData\" && e[Symbol.iterator]);\n}\nconst Co = (e) => {\n const t = new Array(10), s = (n, a) => {\n if (ws(n)) {\n if (t.indexOf(n) >= 0)\n return;\n if (!(\"toJSON\" in n)) {\n t[a] = n;\n const i = ot(n) ? [] : {};\n return Ft(n, (r, o) => {\n const l = s(r, a + 1);\n !xt(l) && (i[o] = l);\n }), t[a] = void 0, i;\n }\n }\n return n;\n };\n return s(e, 0);\n}, Lo = fe(\"AsyncFunction\"), bo = (e) => e && (ws(e) || se(e)) && se(e.then) && se(e.catch), h = {\n isArray: ot,\n isArrayBuffer: ri,\n isBuffer: qr,\n isFormData: to,\n isArrayBufferView: Gr,\n isString: Kr,\n isNumber: oi,\n isBoolean: Jr,\n isObject: ws,\n isPlainObject: qt,\n isUndefined: xt,\n isDate: Yr,\n isFile: Zr,\n isBlob: Xr,\n isRegExp: ho,\n isFunction: se,\n isStream: eo,\n isURLSearchParams: so,\n isTypedArray: mo,\n isFileList: Qr,\n forEach: Ft,\n merge: Is,\n extend: ao,\n trim: no,\n stripBOM: io,\n inherits: ro,\n toFlatObject: oo,\n kindOf: hs,\n kindOfTest: fe,\n endsWith: lo,\n toArray: uo,\n forEachEntry: co,\n matchAll: fo,\n isHTMLForm: go,\n hasOwnProperty: Vn,\n hasOwnProp: Vn,\n // an alias to avoid ESLint no-prototype-builtins detection\n reduceDescriptors: ci,\n freezeMethods: To,\n toObjectSet: wo,\n toCamelCase: po,\n noop: vo,\n toFiniteNumber: xo,\n findKey: li,\n global: ui,\n isContextDefined: mi,\n ALPHABET: di,\n generateString: yo,\n isSpecCompliantForm: _o,\n toJSONObject: Co,\n isAsyncFn: Lo,\n isThenable: bo\n};\nfunction E(e, t, s, n, a) {\n Error.call(this), Error.captureStackTrace ? Error.captureStackTrace(this, this.constructor) : this.stack = new Error().stack, this.message = e, this.name = \"AxiosError\", t && (this.code = t), s && (this.config = s), n && (this.request = n), a && (this.response = a);\n}\nh.inherits(E, Error, {\n toJSON: function() {\n return {\n // Standard\n message: this.message,\n name: this.name,\n // Microsoft\n description: this.description,\n number: this.number,\n // Mozilla\n fileName: this.fileName,\n lineNumber: this.lineNumber,\n columnNumber: this.columnNumber,\n stack: this.stack,\n // Axios\n config: h.toJSONObject(this.config),\n code: this.code,\n status: this.response && this.response.status ? this.response.status : null\n };\n }\n});\nconst fi = E.prototype, gi = {};\n[\n \"ERR_BAD_OPTION_VALUE\",\n \"ERR_BAD_OPTION\",\n \"ECONNABORTED\",\n \"ETIMEDOUT\",\n \"ERR_NETWORK\",\n \"ERR_FR_TOO_MANY_REDIRECTS\",\n \"ERR_DEPRECATED\",\n \"ERR_BAD_RESPONSE\",\n \"ERR_BAD_REQUEST\",\n \"ERR_CANCELED\",\n \"ERR_NOT_SUPPORT\",\n \"ERR_INVALID_URL\"\n // eslint-disable-next-line func-names\n].forEach((e) => {\n gi[e] = { value: e };\n});\nObject.defineProperties(E, gi);\nObject.defineProperty(fi, \"isAxiosError\", { value: !0 });\nE.from = (e, t, s, n, a, i) => {\n const r = Object.create(fi);\n return h.toFlatObject(e, r, function(l) {\n return l !== Error.prototype;\n }, (o) => o !== \"isAxiosError\"), E.call(r, e.message, t, s, n, a), r.cause = e, r.name = e.name, i && Object.assign(r, i), r;\n};\nconst ko = null;\nfunction zs(e) {\n return h.isPlainObject(e) || h.isArray(e);\n}\nfunction pi(e) {\n return h.endsWith(e, \"[]\") ? e.slice(0, -2) : e;\n}\nfunction qn(e, t, s) {\n return e ? e.concat(t).map(function(a, i) {\n return a = pi(a), !s && i ? \"[\" + a + \"]\" : a;\n }).join(s ? \".\" : \"\") : t;\n}\nfunction So(e) {\n return h.isArray(e) && !e.some(zs);\n}\nconst Eo = h.toFlatObject(h, {}, null, function(t) {\n return /^is[A-Z]/.test(t);\n});\nfunction vs(e, t, s) {\n if (!h.isObject(e))\n throw new TypeError(\"target must be an object\");\n t = t || new FormData(), s = h.toFlatObject(s, {\n metaTokens: !0,\n dots: !1,\n indexes: !1\n }, !1, function(_, O) {\n return !h.isUndefined(O[_]);\n });\n const n = s.metaTokens, a = s.visitor || u, i = s.dots, r = s.indexes, l = (s.Blob || typeof Blob < \"u\" && Blob) && h.isSpecCompliantForm(t);\n if (!h.isFunction(a))\n throw new TypeError(\"visitor must be a function\");\n function m(T) {\n if (T === null)\n return \"\";\n if (h.isDate(T))\n return T.toISOString();\n if (!l && h.isBlob(T))\n throw new E(\"Blob is not supported. Use a Buffer instead.\");\n return h.isArrayBuffer(T) || h.isTypedArray(T) ? l && typeof Blob == \"function\" ? new Blob([T]) : Buffer.from(T) : T;\n }\n function u(T, _, O) {\n let D = T;\n if (T && !O && typeof T == \"object\") {\n if (h.endsWith(_, \"{}\"))\n _ = n ? _ : _.slice(0, -2), T = JSON.stringify(T);\n else if (h.isArray(T) && So(T) || (h.isFileList(T) || h.endsWith(_, \"[]\")) && (D = h.toArray(T)))\n return _ = pi(_), D.forEach(function(Q, Ce) {\n !(h.isUndefined(Q) || Q === null) && t.append(\n // eslint-disable-next-line no-nested-ternary\n r === !0 ? qn([_], Ce, i) : r === null ? _ : _ + \"[]\",\n m(Q)\n );\n }), !1;\n }\n return zs(T) ? !0 : (t.append(qn(O, _, i), m(T)), !1);\n }\n const g = [], w = Object.assign(Eo, {\n defaultVisitor: u,\n convertValue: m,\n isVisitable: zs\n });\n function y(T, _) {\n if (!h.isUndefined(T)) {\n if (g.indexOf(T) !== -1)\n throw Error(\"Circular reference detected in \" + _.join(\".\"));\n g.push(T), h.forEach(T, function(D, B) {\n (!(h.isUndefined(D) || D === null) && a.call(\n t,\n D,\n h.isString(B) ? B.trim() : B,\n _,\n w\n )) === !0 && y(D, _ ? _.concat(B) : [B]);\n }), g.pop();\n }\n }\n if (!h.isObject(e))\n throw new TypeError(\"data must be an object\");\n return y(e), t;\n}\nfunction Gn(e) {\n const t = {\n \"!\": \"%21\",\n \"'\": \"%27\",\n \"(\": \"%28\",\n \")\": \"%29\",\n \"~\": \"%7E\",\n \"%20\": \"+\",\n \"%00\": \"\\0\"\n };\n return encodeURIComponent(e).replace(/[!'()~]|%20|%00/g, function(n) {\n return t[n];\n });\n}\nfunction gn(e, t) {\n this._pairs = [], e && vs(e, this, t);\n}\nconst hi = gn.prototype;\nhi.append = function(t, s) {\n this._pairs.push([t, s]);\n};\nhi.toString = function(t) {\n const s = t ? function(n) {\n return t.call(this, n, Gn);\n } : Gn;\n return this._pairs.map(function(a) {\n return s(a[0]) + \"=\" + s(a[1]);\n }, \"\").join(\"&\");\n};\nfunction Fo(e) {\n return encodeURIComponent(e).replace(/%3A/gi, \":\").replace(/%24/g, \"$\").replace(/%2C/gi, \",\").replace(/%20/g, \"+\").replace(/%5B/gi, \"[\").replace(/%5D/gi, \"]\");\n}\nfunction Ti(e, t, s) {\n if (!t)\n return e;\n const n = s && s.encode || Fo, a = s && s.serialize;\n let i;\n if (a ? i = a(t, s) : i = h.isURLSearchParams(t) ? t.toString() : new gn(t, s).toString(n), i) {\n const r = e.indexOf(\"#\");\n r !== -1 && (e = e.slice(0, r)), e += (e.indexOf(\"?\") === -1 ? \"?\" : \"&\") + i;\n }\n return e;\n}\nclass Ao {\n constructor() {\n this.handlers = [];\n }\n /**\n * Add a new interceptor to the stack\n *\n * @param {Function} fulfilled The function to handle `then` for a `Promise`\n * @param {Function} rejected The function to handle `reject` for a `Promise`\n *\n * @return {Number} An ID used to remove interceptor later\n */\n use(t, s, n) {\n return this.handlers.push({\n fulfilled: t,\n rejected: s,\n synchronous: n ? n.synchronous : !1,\n runWhen: n ? n.runWhen : null\n }), this.handlers.length - 1;\n }\n /**\n * Remove an interceptor from the stack\n *\n * @param {Number} id The ID that was returned by `use`\n *\n * @returns {Boolean} `true` if the interceptor was removed, `false` otherwise\n */\n eject(t) {\n this.handlers[t] && (this.handlers[t] = null);\n }\n /**\n * Clear all interceptors from the stack\n *\n * @returns {void}\n */\n clear() {\n this.handlers && (this.handlers = []);\n }\n /**\n * Iterate over all the registered interceptors\n *\n * This method is particularly useful for skipping over any\n * interceptors that may have become `null` calling `eject`.\n *\n * @param {Function} fn The function to call for each interceptor\n *\n * @returns {void}\n */\n forEach(t) {\n h.forEach(this.handlers, function(n) {\n n !== null && t(n);\n });\n }\n}\nconst Kn = Ao, wi = {\n silentJSONParsing: !0,\n forcedJSONParsing: !0,\n clarifyTimeoutError: !1\n}, No = typeof URLSearchParams < \"u\" ? URLSearchParams : gn, Po = typeof FormData < \"u\" ? FormData : null, Uo = typeof Blob < \"u\" ? Blob : null, Oo = {\n isBrowser: !0,\n classes: {\n URLSearchParams: No,\n FormData: Po,\n Blob: Uo\n },\n protocols: [\"http\", \"https\", \"file\", \"blob\", \"url\", \"data\"]\n}, vi = typeof window < \"u\" && typeof document < \"u\", Bo = ((e) => vi && [\"ReactNative\", \"NativeScript\", \"NS\"].indexOf(e) < 0)(typeof navigator < \"u\" && navigator.product), jo = (() => typeof WorkerGlobalScope < \"u\" && // eslint-disable-next-line no-undef\nself instanceof WorkerGlobalScope && typeof self.importScripts == \"function\")(), Do = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({\n __proto__: null,\n hasBrowserEnv: vi,\n hasStandardBrowserEnv: Bo,\n hasStandardBrowserWebWorkerEnv: jo\n}, Symbol.toStringTag, { value: \"Module\" })), ce = {\n ...Do,\n ...Oo\n};\nfunction $o(e, t) {\n return vs(e, new ce.classes.URLSearchParams(), Object.assign({\n visitor: function(s, n, a, i) {\n return ce.isNode && h.isBuffer(s) ? (this.append(n, s.toString(\"base64\")), !1) : i.defaultVisitor.apply(this, arguments);\n }\n }, t));\n}\nfunction Ro(e) {\n return h.matchAll(/\\w+|\\[(\\w*)]/g, e).map((t) => t[0] === \"[]\" ? \"\" : t[1] || t[0]);\n}\nfunction Io(e) {\n const t = {}, s = Object.keys(e);\n let n;\n const a = s.length;\n let i;\n for (n = 0; n < a; n++)\n i = s[n], t[i] = e[i];\n return t;\n}\nfunction xi(e) {\n function t(s, n, a, i) {\n let r = s[i++];\n const o = Number.isFinite(+r), l = i >= s.length;\n return r = !r && h.isArray(a) ? a.length : r, l ? (h.hasOwnProp(a, r) ? a[r] = [a[r], n] : a[r] = n, !o) : ((!a[r] || !h.isObject(a[r])) && (a[r] = []), t(s, n, a[r], i) && h.isArray(a[r]) && (a[r] = Io(a[r])), !o);\n }\n if (h.isFormData(e) && h.isFunction(e.entries)) {\n const s = {};\n return h.forEachEntry(e, (n, a) => {\n t(Ro(n), a, s, 0);\n }), s;\n }\n return null;\n}\nfunction zo(e, t, s) {\n if (h.isString(e))\n try {\n return (t || JSON.parse)(e), h.trim(e);\n } catch (n) {\n if (n.name !== \"SyntaxError\")\n throw n;\n }\n return (s || JSON.stringify)(e);\n}\nconst pn = {\n transitional: wi,\n adapter: [\"xhr\", \"http\"],\n transformRequest: [function(t, s) {\n const n = s.getContentType() || \"\", a = n.indexOf(\"application/json\") > -1, i = h.isObject(t);\n if (i && h.isHTMLForm(t) && (t = new FormData(t)), h.isFormData(t))\n return a && a ? JSON.stringify(xi(t)) : t;\n if (h.isArrayBuffer(t) || h.isBuffer(t) || h.isStream(t) || h.isFile(t) || h.isBlob(t))\n return t;\n if (h.isArrayBufferView(t))\n return t.buffer;\n if (h.isURLSearchParams(t))\n return s.setContentType(\"application/x-www-form-urlencoded;charset=utf-8\", !1), t.toString();\n let o;\n if (i) {\n if (n.indexOf(\"application/x-www-form-urlencoded\") > -1)\n return $o(t, this.formSerializer).toString();\n if ((o = h.isFileList(t)) || n.indexOf(\"multipart/form-data\") > -1) {\n const l = this.env && this.env.FormData;\n return vs(\n o ? { \"files[]\": t } : t,\n l && new l(),\n this.formSerializer\n );\n }\n }\n return i || a ? (s.setContentType(\"application/json\", !1), zo(t)) : t;\n }],\n transformResponse: [function(t) {\n const s = this.transitional || pn.transitional, n = s && s.forcedJSONParsing, a = this.responseType === \"json\";\n if (t && h.isString(t) && (n && !this.responseType || a)) {\n const r = !(s && s.silentJSONParsing) && a;\n try {\n return JSON.parse(t);\n } catch (o) {\n if (r)\n throw o.name === \"SyntaxError\" ? E.from(o, E.ERR_BAD_RESPONSE, this, null, this.response) : o;\n }\n }\n return t;\n }],\n /**\n * A timeout in milliseconds to abort a request. If set to 0 (default) a\n * timeout is not created.\n */\n timeout: 0,\n xsrfCookieName: \"XSRF-TOKEN\",\n xsrfHeaderName: \"X-XSRF-TOKEN\",\n maxContentLength: -1,\n maxBodyLength: -1,\n env: {\n FormData: ce.classes.FormData,\n Blob: ce.classes.Blob\n },\n validateStatus: function(t) {\n return t >= 200 && t < 300;\n },\n headers: {\n common: {\n Accept: \"application/json, text/plain, */*\",\n \"Content-Type\": void 0\n }\n }\n};\nh.forEach([\"delete\", \"get\", \"head\", \"post\", \"put\", \"patch\"], (e) => {\n pn.headers[e] = {};\n});\nconst hn = pn, Mo = h.toObjectSet([\n \"age\",\n \"authorization\",\n \"content-length\",\n \"content-type\",\n \"etag\",\n \"expires\",\n \"from\",\n \"host\",\n \"if-modified-since\",\n \"if-unmodified-since\",\n \"last-modified\",\n \"location\",\n \"max-forwards\",\n \"proxy-authorization\",\n \"referer\",\n \"retry-after\",\n \"user-agent\"\n]), Ho = (e) => {\n const t = {};\n let s, n, a;\n return e && e.split(`\n`).forEach(function(r) {\n a = r.indexOf(\":\"), s = r.substring(0, a).trim().toLowerCase(), n = r.substring(a + 1).trim(), !(!s || t[s] && Mo[s]) && (s === \"set-cookie\" ? t[s] ? t[s].push(n) : t[s] = [n] : t[s] = t[s] ? t[s] + \", \" + n : n);\n }), t;\n}, Jn = Symbol(\"internals\");\nfunction ft(e) {\n return e && String(e).trim().toLowerCase();\n}\nfunction Gt(e) {\n return e === !1 || e == null ? e : h.isArray(e) ? e.map(Gt) : String(e);\n}\nfunction Vo(e) {\n const t = /* @__PURE__ */ Object.create(null), s = /([^\\s,;=]+)\\s*(?:=\\s*([^,;]+))?/g;\n let n;\n for (; n = s.exec(e); )\n t[n[1]] = n[2];\n return t;\n}\nconst Wo = (e) => /^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(e.trim());\nfunction ks(e, t, s, n, a) {\n if (h.isFunction(n))\n return n.call(this, t, s);\n if (a && (t = s), !!h.isString(t)) {\n if (h.isString(n))\n return t.indexOf(n) !== -1;\n if (h.isRegExp(n))\n return n.test(t);\n }\n}\nfunction qo(e) {\n return e.trim().toLowerCase().replace(/([a-z\\d])(\\w*)/g, (t, s, n) => s.toUpperCase() + n);\n}\nfunction Go(e, t) {\n const s = h.toCamelCase(\" \" + t);\n [\"get\", \"set\", \"has\"].forEach((n) => {\n Object.defineProperty(e, n + s, {\n value: function(a, i, r) {\n return this[n].call(this, t, a, i, r);\n },\n configurable: !0\n });\n });\n}\nlet xs = class {\n constructor(t) {\n t && this.set(t);\n }\n set(t, s, n) {\n const a = this;\n function i(o, l, m) {\n const u = ft(l);\n if (!u)\n throw new Error(\"header name must be a non-empty string\");\n const g = h.findKey(a, u);\n (!g || a[g] === void 0 || m === !0 || m === void 0 && a[g] !== !1) && (a[g || l] = Gt(o));\n }\n const r = (o, l) => h.forEach(o, (m, u) => i(m, u, l));\n return h.isPlainObject(t) || t instanceof this.constructor ? r(t, s) : h.isString(t) && (t = t.trim()) && !Wo(t) ? r(Ho(t), s) : t != null && i(s, t, n), this;\n }\n get(t, s) {\n if (t = ft(t), t) {\n const n = h.findKey(this, t);\n if (n) {\n const a = this[n];\n if (!s)\n return a;\n if (s === !0)\n return Vo(a);\n if (h.isFunction(s))\n return s.call(this, a, n);\n if (h.isRegExp(s))\n return s.exec(a);\n throw new TypeError(\"parser must be boolean|regexp|function\");\n }\n }\n }\n has(t, s) {\n if (t = ft(t), t) {\n const n = h.findKey(this, t);\n return !!(n && this[n] !== void 0 && (!s || ks(this, this[n], n, s)));\n }\n return !1;\n }\n delete(t, s) {\n const n = this;\n let a = !1;\n function i(r) {\n if (r = ft(r), r) {\n const o = h.findKey(n, r);\n o && (!s || ks(n, n[o], o, s)) && (delete n[o], a = !0);\n }\n }\n return h.isArray(t) ? t.forEach(i) : i(t), a;\n }\n clear(t) {\n const s = Object.keys(this);\n let n = s.length, a = !1;\n for (; n--; ) {\n const i = s[n];\n (!t || ks(this, this[i], i, t, !0)) && (delete this[i], a = !0);\n }\n return a;\n }\n normalize(t) {\n const s = this, n = {};\n return h.forEach(this, (a, i) => {\n const r = h.findKey(n, i);\n if (r) {\n s[r] = Gt(a), delete s[i];\n return;\n }\n const o = t ? qo(i) : String(i).trim();\n o !== i && delete s[i], s[o] = Gt(a), n[o] = !0;\n }), this;\n }\n concat(...t) {\n return this.constructor.concat(this, ...t);\n }\n toJSON(t) {\n const s = /* @__PURE__ */ Object.create(null);\n return h.forEach(this, (n, a) => {\n n != null && n !== !1 && (s[a] = t && h.isArray(n) ? n.join(\", \") : n);\n }), s;\n }\n [Symbol.iterator]() {\n return Object.entries(this.toJSON())[Symbol.iterator]();\n }\n toString() {\n return Object.entries(this.toJSON()).map(([t, s]) => t + \": \" + s).join(`\n`);\n }\n get [Symbol.toStringTag]() {\n return \"AxiosHeaders\";\n }\n static from(t) {\n return t instanceof this ? t : new this(t);\n }\n static concat(t, ...s) {\n const n = new this(t);\n return s.forEach((a) => n.set(a)), n;\n }\n static accessor(t) {\n const n = (this[Jn] = this[Jn] = {\n accessors: {}\n }).accessors, a = this.prototype;\n function i(r) {\n const o = ft(r);\n n[o] || (Go(a, r), n[o] = !0);\n }\n return h.isArray(t) ? t.forEach(i) : i(t), this;\n }\n};\nxs.accessor([\"Content-Type\", \"Content-Length\", \"Accept\", \"Accept-Encoding\", \"User-Agent\", \"Authorization\"]);\nh.reduceDescriptors(xs.prototype, ({ value: e }, t) => {\n let s = t[0].toUpperCase() + t.slice(1);\n return {\n get: () => e,\n set(n) {\n this[s] = n;\n }\n };\n});\nh.freezeMethods(xs);\nconst xe = xs;\nfunction Ss(e, t) {\n const s = this || hn, n = t || s, a = xe.from(n.headers);\n let i = n.data;\n return h.forEach(e, function(o) {\n i = o.call(s, i, a.normalize(), t ? t.status : void 0);\n }), a.normalize(), i;\n}\nfunction yi(e) {\n return !!(e && e.__CANCEL__);\n}\nfunction At(e, t, s) {\n E.call(this, e ?? \"canceled\", E.ERR_CANCELED, t, s), this.name = \"CanceledError\";\n}\nh.inherits(At, E, {\n __CANCEL__: !0\n});\nfunction Ko(e, t, s) {\n const n = s.config.validateStatus;\n !s.status || !n || n(s.status) ? e(s) : t(new E(\n \"Request failed with status code \" + s.status,\n [E.ERR_BAD_REQUEST, E.ERR_BAD_RESPONSE][Math.floor(s.status / 100) - 4],\n s.config,\n s.request,\n s\n ));\n}\nconst Jo = ce.hasStandardBrowserEnv ? (\n // Standard browser envs support document.cookie\n function() {\n return {\n write: function(s, n, a, i, r, o) {\n const l = [];\n l.push(s + \"=\" + encodeURIComponent(n)), h.isNumber(a) && l.push(\"expires=\" + new Date(a).toGMTString()), h.isString(i) && l.push(\"path=\" + i), h.isString(r) && l.push(\"domain=\" + r), o === !0 && l.push(\"secure\"), document.cookie = l.join(\"; \");\n },\n read: function(s) {\n const n = document.cookie.match(new RegExp(\"(^|;\\\\s*)(\" + s + \")=([^;]*)\"));\n return n ? decodeURIComponent(n[3]) : null;\n },\n remove: function(s) {\n this.write(s, \"\", Date.now() - 864e5);\n }\n };\n }()\n) : (\n // Non standard browser env (web workers, react-native) lack needed support.\n function() {\n return {\n write: function() {\n },\n read: function() {\n return null;\n },\n remove: function() {\n }\n };\n }()\n);\nfunction Yo(e) {\n return /^([a-z][a-z\\d+\\-.]*:)?\\/\\//i.test(e);\n}\nfunction Zo(e, t) {\n return t ? e.replace(/\\/+$/, \"\") + \"/\" + t.replace(/^\\/+/, \"\") : e;\n}\nfunction _i(e, t) {\n return e && !Yo(t) ? Zo(e, t) : t;\n}\nconst Xo = ce.hasStandardBrowserEnv ? (\n // Standard browser envs have full support of the APIs needed to test\n // whether the request URL is of the same origin as current location.\n function() {\n const t = /(msie|trident)/i.test(navigator.userAgent), s = document.createElement(\"a\");\n let n;\n function a(i) {\n let r = i;\n return t && (s.setAttribute(\"href\", r), r = s.href), s.setAttribute(\"href\", r), {\n href: s.href,\n protocol: s.protocol ? s.protocol.replace(/:$/, \"\") : \"\",\n host: s.host,\n search: s.search ? s.search.replace(/^\\?/, \"\") : \"\",\n hash: s.hash ? s.hash.replace(/^#/, \"\") : \"\",\n hostname: s.hostname,\n port: s.port,\n pathname: s.pathname.charAt(0) === \"/\" ? s.pathname : \"/\" + s.pathname\n };\n }\n return n = a(window.location.href), function(r) {\n const o = h.isString(r) ? a(r) : r;\n return o.protocol === n.protocol && o.host === n.host;\n };\n }()\n) : (\n // Non standard browser envs (web workers, react-native) lack needed support.\n function() {\n return function() {\n return !0;\n };\n }()\n);\nfunction Qo(e) {\n const t = /^([-+\\w]{1,25})(:?\\/\\/|:)/.exec(e);\n return t && t[1] || \"\";\n}\nfunction el(e, t) {\n e = e || 10;\n const s = new Array(e), n = new Array(e);\n let a = 0, i = 0, r;\n return t = t !== void 0 ? t : 1e3, function(l) {\n const m = Date.now(), u = n[i];\n r || (r = m), s[a] = l, n[a] = m;\n let g = i, w = 0;\n for (; g !== a; )\n w += s[g++], g = g % e;\n if (a = (a + 1) % e, a === i && (i = (i + 1) % e), m - r < t)\n return;\n const y = u && m - u;\n return y ? Math.round(w * 1e3 / y) : void 0;\n };\n}\nfunction Yn(e, t) {\n let s = 0;\n const n = el(50, 250);\n return (a) => {\n const i = a.loaded, r = a.lengthComputable ? a.total : void 0, o = i - s, l = n(o), m = i <= r;\n s = i;\n const u = {\n loaded: i,\n total: r,\n progress: r ? i / r : void 0,\n bytes: o,\n rate: l || void 0,\n estimated: l && r && m ? (r - i) / l : void 0,\n event: a\n };\n u[t ? \"download\" : \"upload\"] = !0, e(u);\n };\n}\nconst tl = typeof XMLHttpRequest < \"u\", sl = tl && function(e) {\n return new Promise(function(s, n) {\n let a = e.data;\n const i = xe.from(e.headers).normalize(), r = e.responseType;\n let o;\n function l() {\n e.cancelToken && e.cancelToken.unsubscribe(o), e.signal && e.signal.removeEventListener(\"abort\", o);\n }\n let m;\n if (h.isFormData(a)) {\n if (ce.hasStandardBrowserEnv || ce.hasStandardBrowserWebWorkerEnv)\n i.setContentType(!1);\n else if ((m = i.getContentType()) !== !1) {\n const [T, ..._] = m ? m.split(\";\").map((O) => O.trim()).filter(Boolean) : [];\n i.setContentType([T || \"multipart/form-data\", ..._].join(\"; \"));\n }\n }\n let u = new XMLHttpRequest();\n if (e.auth) {\n const T = e.auth.username || \"\", _ = e.auth.password ? unescape(encodeURIComponent(e.auth.password)) : \"\";\n i.set(\"Authorization\", \"Basic \" + btoa(T + \":\" + _));\n }\n const g = _i(e.baseURL, e.url);\n u.open(e.method.toUpperCase(), Ti(g, e.params, e.paramsSerializer), !0), u.timeout = e.timeout;\n function w() {\n if (!u)\n return;\n const T = xe.from(\n \"getAllResponseHeaders\" in u && u.getAllResponseHeaders()\n ), O = {\n data: !r || r === \"text\" || r === \"json\" ? u.responseText : u.response,\n status: u.status,\n statusText: u.statusText,\n headers: T,\n config: e,\n request: u\n };\n Ko(function(B) {\n s(B), l();\n }, function(B) {\n n(B), l();\n }, O), u = null;\n }\n if (\"onloadend\" in u ? u.onloadend = w : u.onreadystatechange = function() {\n !u || u.readyState !== 4 || u.status === 0 && !(u.responseURL && u.responseURL.indexOf(\"file:\") === 0) || setTimeout(w);\n }, u.onabort = function() {\n u && (n(new E(\"Request aborted\", E.ECONNABORTED, e, u)), u = null);\n }, u.onerror = function() {\n n(new E(\"Network Error\", E.ERR_NETWORK, e, u)), u = null;\n }, u.ontimeout = function() {\n let _ = e.timeout ? \"timeout of \" + e.timeout + \"ms exceeded\" : \"timeout exceeded\";\n const O = e.transitional || wi;\n e.timeoutErrorMessage && (_ = e.timeoutErrorMessage), n(new E(\n _,\n O.clarifyTimeoutError ? E.ETIMEDOUT : E.ECONNABORTED,\n e,\n u\n )), u = null;\n }, ce.hasStandardBrowserEnv) {\n const T = Xo(g) && e.xsrfCookieName && Jo.read(e.xsrfCookieName);\n T && i.set(e.xsrfHeaderName, T);\n }\n a === void 0 && i.setContentType(null), \"setRequestHeader\" in u && h.forEach(i.toJSON(), function(_, O) {\n u.setRequestHeader(O, _);\n }), h.isUndefined(e.withCredentials) || (u.withCredentials = !!e.withCredentials), r && r !== \"json\" && (u.responseType = e.responseType), typeof e.onDownloadProgress == \"function\" && u.addEventListener(\"progress\", Yn(e.onDownloadProgress, !0)), typeof e.onUploadProgress == \"function\" && u.upload && u.upload.addEventListener(\"progress\", Yn(e.onUploadProgress)), (e.cancelToken || e.signal) && (o = (T) => {\n u && (n(!T || T.type ? new At(null, e, u) : T), u.abort(), u = null);\n }, e.cancelToken && e.cancelToken.subscribe(o), e.signal && (e.signal.aborted ? o() : e.signal.addEventListener(\"abort\", o)));\n const y = Qo(g);\n if (y && ce.protocols.indexOf(y) === -1) {\n n(new E(\"Unsupported protocol \" + y + \":\", E.ERR_BAD_REQUEST, e));\n return;\n }\n u.send(a || null);\n });\n}, Ms = {\n http: ko,\n xhr: sl\n};\nh.forEach(Ms, (e, t) => {\n if (e) {\n try {\n Object.defineProperty(e, \"name\", { value: t });\n } catch {\n }\n Object.defineProperty(e, \"adapterName\", { value: t });\n }\n});\nconst Zn = (e) => `- ${e}`, nl = (e) => h.isFunction(e) || e === null || e === !1, Ci = {\n getAdapter: (e) => {\n e = h.isArray(e) ? e : [e];\n const { length: t } = e;\n let s, n;\n const a = {};\n for (let i = 0; i < t; i++) {\n s = e[i];\n let r;\n if (n = s, !nl(s) && (n = Ms[(r = String(s)).toLowerCase()], n === void 0))\n throw new E(`Unknown adapter '${r}'`);\n if (n)\n break;\n a[r || \"#\" + i] = n;\n }\n if (!n) {\n const i = Object.entries(a).map(\n ([o, l]) => `adapter ${o} ` + (l === !1 ? \"is not supported by the environment\" : \"is not available in the build\")\n );\n let r = t ? i.length > 1 ? `since :\n` + i.map(Zn).join(`\n`) : \" \" + Zn(i[0]) : \"as no adapter specified\";\n throw new E(\n \"There is no suitable adapter to dispatch the request \" + r,\n \"ERR_NOT_SUPPORT\"\n );\n }\n return n;\n },\n adapters: Ms\n};\nfunction Es(e) {\n if (e.cancelToken && e.cancelToken.throwIfRequested(), e.signal && e.signal.aborted)\n throw new At(null, e);\n}\nfunction Xn(e) {\n return Es(e), e.headers = xe.from(e.headers), e.data = Ss.call(\n e,\n e.transformRequest\n ), [\"post\", \"put\", \"patch\"].indexOf(e.method) !== -1 && e.headers.setContentType(\"application/x-www-form-urlencoded\", !1), Ci.getAdapter(e.adapter || hn.adapter)(e).then(function(n) {\n return Es(e), n.data = Ss.call(\n e,\n e.transformResponse,\n n\n ), n.headers = xe.from(n.headers), n;\n }, function(n) {\n return yi(n) || (Es(e), n && n.response && (n.response.data = Ss.call(\n e,\n e.transformResponse,\n n.response\n ), n.response.headers = xe.from(n.response.headers))), Promise.reject(n);\n });\n}\nconst Qn = (e) => e instanceof xe ? e.toJSON() : e;\nfunction it(e, t) {\n t = t || {};\n const s = {};\n function n(m, u, g) {\n return h.isPlainObject(m) && h.isPlainObject(u) ? h.merge.call({ caseless: g }, m, u) : h.isPlainObject(u) ? h.merge({}, u) : h.isArray(u) ? u.slice() : u;\n }\n function a(m, u, g) {\n if (h.isUndefined(u)) {\n if (!h.isUndefined(m))\n return n(void 0, m, g);\n } else\n return n(m, u, g);\n }\n function i(m, u) {\n if (!h.isUndefined(u))\n return n(void 0, u);\n }\n function r(m, u) {\n if (h.isUndefined(u)) {\n if (!h.isUndefined(m))\n return n(void 0, m);\n } else\n return n(void 0, u);\n }\n function o(m, u, g) {\n if (g in t)\n return n(m, u);\n if (g in e)\n return n(void 0, m);\n }\n const l = {\n url: i,\n method: i,\n data: i,\n baseURL: r,\n transformRequest: r,\n transformResponse: r,\n paramsSerializer: r,\n timeout: r,\n timeoutMessage: r,\n withCredentials: r,\n adapter: r,\n responseType: r,\n xsrfCookieName: r,\n xsrfHeaderName: r,\n onUploadProgress: r,\n onDownloadProgress: r,\n decompress: r,\n maxContentLength: r,\n maxBodyLength: r,\n beforeRedirect: r,\n transport: r,\n httpAgent: r,\n httpsAgent: r,\n cancelToken: r,\n socketPath: r,\n responseEncoding: r,\n validateStatus: o,\n headers: (m, u) => a(Qn(m), Qn(u), !0)\n };\n return h.forEach(Object.keys(Object.assign({}, e, t)), function(u) {\n const g = l[u] || a, w = g(e[u], t[u], u);\n h.isUndefined(w) && g !== o || (s[u] = w);\n }), s;\n}\nconst Li = \"1.6.1\", Tn = {};\n[\"object\", \"boolean\", \"number\", \"function\", \"string\", \"symbol\"].forEach((e, t) => {\n Tn[e] = function(n) {\n return typeof n === e || \"a\" + (t < 1 ? \"n \" : \" \") + e;\n };\n});\nconst ea = {};\nTn.transitional = function(t, s, n) {\n function a(i, r) {\n return \"[Axios v\" + Li + \"] Transitional option '\" + i + \"'\" + r + (n ? \". \" + n : \"\");\n }\n return (i, r, o) => {\n if (t === !1)\n throw new E(\n a(r, \" has been removed\" + (s ? \" in \" + s : \"\")),\n E.ERR_DEPRECATED\n );\n return s && !ea[r] && (ea[r] = !0, console.warn(\n a(\n r,\n \" has been deprecated since v\" + s + \" and will be removed in the near future\"\n )\n )), t ? t(i, r, o) : !0;\n };\n};\nfunction al(e, t, s) {\n if (typeof e != \"object\")\n throw new E(\"options must be an object\", E.ERR_BAD_OPTION_VALUE);\n const n = Object.keys(e);\n let a = n.length;\n for (; a-- > 0; ) {\n const i = n[a], r = t[i];\n if (r) {\n const o = e[i], l = o === void 0 || r(o, i, e);\n if (l !== !0)\n throw new E(\"option \" + i + \" must be \" + l, E.ERR_BAD_OPTION_VALUE);\n continue;\n }\n if (s !== !0)\n throw new E(\"Unknown option \" + i, E.ERR_BAD_OPTION);\n }\n}\nconst Hs = {\n assertOptions: al,\n validators: Tn\n}, ke = Hs.validators;\nlet ts = class {\n constructor(t) {\n this.defaults = t, this.interceptors = {\n request: new Kn(),\n response: new Kn()\n };\n }\n /**\n * Dispatch a request\n *\n * @param {String|Object} configOrUrl The config specific for this request (merged with this.defaults)\n * @param {?Object} config\n *\n * @returns {Promise} The Promise to be fulfilled\n */\n request(t, s) {\n typeof t == \"string\" ? (s = s || {}, s.url = t) : s = t || {}, s = it(this.defaults, s);\n const { transitional: n, paramsSerializer: a, headers: i } = s;\n n !== void 0 && Hs.assertOptions(n, {\n silentJSONParsing: ke.transitional(ke.boolean),\n forcedJSONParsing: ke.transitional(ke.boolean),\n clarifyTimeoutError: ke.transitional(ke.boolean)\n }, !1), a != null && (h.isFunction(a) ? s.paramsSerializer = {\n serialize: a\n } : Hs.assertOptions(a, {\n encode: ke.function,\n serialize: ke.function\n }, !0)), s.method = (s.method || this.defaults.method || \"get\").toLowerCase();\n let r = i && h.merge(\n i.common,\n i[s.method]\n );\n i && h.forEach(\n [\"delete\", \"get\", \"head\", \"post\", \"put\", \"patch\", \"common\"],\n (T) => {\n delete i[T];\n }\n ), s.headers = xe.concat(r, i);\n const o = [];\n let l = !0;\n this.interceptors.request.forEach(function(_) {\n typeof _.runWhen == \"function\" && _.runWhen(s) === !1 || (l = l && _.synchronous, o.unshift(_.fulfilled, _.rejected));\n });\n const m = [];\n this.interceptors.response.forEach(function(_) {\n m.push(_.fulfilled, _.rejected);\n });\n let u, g = 0, w;\n if (!l) {\n const T = [Xn.bind(this), void 0];\n for (T.unshift.apply(T, o), T.push.apply(T, m), w = T.length, u = Promise.resolve(s); g < w; )\n u = u.then(T[g++], T[g++]);\n return u;\n }\n w = o.length;\n let y = s;\n for (g = 0; g < w; ) {\n const T = o[g++], _ = o[g++];\n try {\n y = T(y);\n } catch (O) {\n _.call(this, O);\n break;\n }\n }\n try {\n u = Xn.call(this, y);\n } catch (T) {\n return Promise.reject(T);\n }\n for (g = 0, w = m.length; g < w; )\n u = u.then(m[g++], m[g++]);\n return u;\n }\n getUri(t) {\n t = it(this.defaults, t);\n const s = _i(t.baseURL, t.url);\n return Ti(s, t.params, t.paramsSerializer);\n }\n};\nh.forEach([\"delete\", \"get\", \"head\", \"options\"], function(t) {\n ts.prototype[t] = function(s, n) {\n return this.request(it(n || {}, {\n method: t,\n url: s,\n data: (n || {}).data\n }));\n };\n});\nh.forEach([\"post\", \"put\", \"patch\"], function(t) {\n function s(n) {\n return function(i, r, o) {\n return this.request(it(o || {}, {\n method: t,\n headers: n ? {\n \"Content-Type\": \"multipart/form-data\"\n } : {},\n url: i,\n data: r\n }));\n };\n }\n ts.prototype[t] = s(), ts.prototype[t + \"Form\"] = s(!0);\n});\nconst Kt = ts;\nlet il = class bi {\n constructor(t) {\n if (typeof t != \"function\")\n throw new TypeError(\"executor must be a function.\");\n let s;\n this.promise = new Promise(function(i) {\n s = i;\n });\n const n = this;\n this.promise.then((a) => {\n if (!n._listeners)\n return;\n let i = n._listeners.length;\n for (; i-- > 0; )\n n._listeners[i](a);\n n._listeners = null;\n }), this.promise.then = (a) => {\n let i;\n const r = new Promise((o) => {\n n.subscribe(o), i = o;\n }).then(a);\n return r.cancel = function() {\n n.unsubscribe(i);\n }, r;\n }, t(function(i, r, o) {\n n.reason || (n.reason = new At(i, r, o), s(n.reason));\n });\n }\n /**\n * Throws a `CanceledError` if cancellation has been requested.\n */\n throwIfRequested() {\n if (this.reason)\n throw this.reason;\n }\n /**\n * Subscribe to the cancel signal\n */\n subscribe(t) {\n if (this.reason) {\n t(this.reason);\n return;\n }\n this._listeners ? this._listeners.push(t) : this._listeners = [t];\n }\n /**\n * Unsubscribe from the cancel signal\n */\n unsubscribe(t) {\n if (!this._listeners)\n return;\n const s = this._listeners.indexOf(t);\n s !== -1 && this._listeners.splice(s, 1);\n }\n /**\n * Returns an object that contains a new `CancelToken` and a function that, when called,\n * cancels the `CancelToken`.\n */\n static source() {\n let t;\n return {\n token: new bi(function(a) {\n t = a;\n }),\n cancel: t\n };\n }\n};\nconst rl = il;\nfunction ol(e) {\n return function(s) {\n return e.apply(null, s);\n };\n}\nfunction ll(e) {\n return h.isObject(e) && e.isAxiosError === !0;\n}\nconst Vs = {\n Continue: 100,\n SwitchingProtocols: 101,\n Processing: 102,\n EarlyHints: 103,\n Ok: 200,\n Created: 201,\n Accepted: 202,\n NonAuthoritativeInformation: 203,\n NoContent: 204,\n ResetContent: 205,\n PartialContent: 206,\n MultiStatus: 207,\n AlreadyReported: 208,\n ImUsed: 226,\n MultipleChoices: 300,\n MovedPermanently: 301,\n Found: 302,\n SeeOther: 303,\n NotModified: 304,\n UseProxy: 305,\n Unused: 306,\n TemporaryRedirect: 307,\n PermanentRedirect: 308,\n BadRequest: 400,\n Unauthorized: 401,\n PaymentRequired: 402,\n Forbidden: 403,\n NotFound: 404,\n MethodNotAllowed: 405,\n NotAcceptable: 406,\n ProxyAuthenticationRequired: 407,\n RequestTimeout: 408,\n Conflict: 409,\n Gone: 410,\n LengthRequired: 411,\n PreconditionFailed: 412,\n PayloadTooLarge: 413,\n UriTooLong: 414,\n UnsupportedMediaType: 415,\n RangeNotSatisfiable: 416,\n ExpectationFailed: 417,\n ImATeapot: 418,\n MisdirectedRequest: 421,\n UnprocessableEntity: 422,\n Locked: 423,\n FailedDependency: 424,\n TooEarly: 425,\n UpgradeRequired: 426,\n PreconditionRequired: 428,\n TooManyRequests: 429,\n RequestHeaderFieldsTooLarge: 431,\n UnavailableForLegalReasons: 451,\n InternalServerError: 500,\n NotImplemented: 501,\n BadGateway: 502,\n ServiceUnavailable: 503,\n GatewayTimeout: 504,\n HttpVersionNotSupported: 505,\n VariantAlsoNegotiates: 506,\n InsufficientStorage: 507,\n LoopDetected: 508,\n NotExtended: 510,\n NetworkAuthenticationRequired: 511\n};\nObject.entries(Vs).forEach(([e, t]) => {\n Vs[t] = e;\n});\nconst ul = Vs;\nfunction ki(e) {\n const t = new Kt(e), s = ii(Kt.prototype.request, t);\n return h.extend(s, Kt.prototype, t, { allOwnKeys: !0 }), h.extend(s, t, null, { allOwnKeys: !0 }), s.create = function(a) {\n return ki(it(e, a));\n }, s;\n}\nconst M = ki(hn);\nM.Axios = Kt;\nM.CanceledError = At;\nM.CancelToken = rl;\nM.isCancel = yi;\nM.VERSION = Li;\nM.toFormData = vs;\nM.AxiosError = E;\nM.Cancel = M.CanceledError;\nM.all = function(t) {\n return Promise.all(t);\n};\nM.spread = ol;\nM.isAxiosError = ll;\nM.mergeConfig = it;\nM.AxiosHeaders = xe;\nM.formToJSON = (e) => xi(h.isHTMLForm(e) ? new FormData(e) : e);\nM.getAdapter = Ci.getAdapter;\nM.HttpStatusCode = ul;\nM.default = M;\nconst ml = M, {\n Axios: Ad,\n AxiosError: Nd,\n CanceledError: Fs,\n isCancel: Pd,\n CancelToken: Ud,\n VERSION: Od,\n all: Bd,\n Cancel: jd,\n isAxiosError: Dd,\n spread: $d,\n toFormData: Rd,\n AxiosHeaders: Id,\n HttpStatusCode: zd,\n formToJSON: Md,\n getAdapter: Hd,\n mergeConfig: Vd\n} = ml, cl = jr(1), jt = new FileReader(), ta = async function(e, t, s, n = () => {\n}, a = void 0, i = void 0) {\n let r;\n return t instanceof Blob ? r = t : r = await t(), a && (i ??= {}, i.Destination = a), await es.request({\n method: \"PUT\",\n url: e,\n data: r,\n signal: s,\n onUploadProgress: n,\n headers: i\n });\n}, sa = function(e, t, s) {\n return cl(() => new Promise((n, a) => {\n jt.onload = () => {\n jt.result !== null && n(new Blob([jt.result], {\n type: \"application/octet-stream\"\n })), a(new Error(\"Error while reading the file\"));\n }, jt.readAsArrayBuffer(e.slice(t, t + s));\n }));\n}, dl = async function(e = void 0) {\n const t = ni(`dav/uploads/${dn()?.uid}`), n = `web-file-upload-${[...Array(16)].map(() => Math.floor(Math.random() * 16).toString(16)).join(\"\")}`, a = `${t}/${n}`, i = e ? { Destination: e } : void 0;\n return await es.request({\n method: \"MKCOL\",\n url: a,\n headers: i\n }), a;\n}, wt = function(e = void 0) {\n const t = window.OC?.appConfig?.files?.max_chunk_size;\n if (t <= 0)\n return 0;\n if (!Number(t))\n return 10 * 1024 * 1024;\n const s = Math.max(Number(t), 5 * 1024 * 1024);\n return e === void 0 ? s : Math.max(s, Math.ceil(e / 1e4));\n};\nvar ue = /* @__PURE__ */ ((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 || {});\nlet fl = class {\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(t, s = !1, n, a) {\n const i = Math.min(wt() > 0 ? Math.ceil(n / wt()) : 1, 1e4);\n this._source = t, this._isChunked = s && wt() > 0 && i > 1, this._chunks = this._isChunked ? i : 1, this._size = n, this._file = a, 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(t) {\n this._response = t;\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(t) {\n if (t >= this._size) {\n this._status = this._isChunked ? 2 : 3, this._uploaded = this._size;\n return;\n }\n this._status = 1, this._uploaded = t, this._startTime === 0 && (this._startTime = (/* @__PURE__ */ new Date()).getTime());\n }\n get status() {\n return this._status;\n }\n /**\n * Update this upload status\n */\n set status(t) {\n this._status = t;\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(), this._status = 4;\n }\n};\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 gl = (e) => e === null ? Hn().setApp(\"uploader\").build() : Hn().setApp(\"uploader\").setUid(e.uid).build(), ie = gl(dn());\nvar Si = /* @__PURE__ */ ((e) => (e[e.IDLE = 0] = \"IDLE\", e[e.UPLOADING = 1] = \"UPLOADING\", e[e.PAUSED = 2] = \"PAUSED\", e))(Si || {});\nclass na {\n // Initialized via setter in the constructor\n _destinationFolder;\n _isPublic;\n // Global upload queue\n _uploadQueue = [];\n _jobQueue = new Br({ 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(t = !1, s) {\n if (this._isPublic = t, !s) {\n const n = dn()?.uid, a = ni(`dav/files/${n}`);\n if (!n)\n throw new Error(\"User is not logged in\");\n s = new ai({\n id: 0,\n owner: n,\n permissions: Pr.ALL,\n root: `/files/${n}`,\n source: a\n });\n }\n this.destination = s, ie.debug(\"Upload workspace initialized\", {\n destination: this.destination,\n root: this.root,\n isPublic: t,\n maxChunksSize: wt()\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(t) {\n if (!t)\n throw new Error(\"Invalid destination folder\");\n this._destinationFolder = t;\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), this._jobQueue.clear(), this._queueSize = 0, this._queueProgress = 0, this._queueStatus = 0;\n }\n /**\n * Pause any ongoing upload(s)\n */\n pause() {\n this._jobQueue.pause(), this._queueStatus = 2;\n }\n /**\n * Resume any pending upload(s)\n */\n start() {\n this._jobQueue.start(), this._queueStatus = 1, 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 t = this._uploadQueue.map((n) => n.size).reduce((n, a) => n + a, 0), s = this._uploadQueue.map((n) => n.uploaded).reduce((n, a) => n + a, 0);\n this._queueSize = t, this._queueProgress = s, this._queueStatus !== 2 && (this._queueStatus = this._jobQueue.size > 0 ? 1 : 0);\n }\n addNotifier(t) {\n this._notifiers.push(t);\n }\n /**\n * Upload a file to the given path\n * @param {string} destinationPath the destination path relative to the root folder. e.g. /foo/bar.txt\n * @param {File} file the file to upload\n */\n upload(t, s) {\n const n = `${this.root}/${t.replace(/^\\//, \"\")}`;\n ie.debug(`Uploading ${s.name} to ${n}`);\n const a = wt(s.size), i = a === 0 || s.size < a || this._isPublic, r = new fl(n, !i, s.size, s);\n return this._uploadQueue.push(r), this.updateStats(), new Or(async (l, m, u) => {\n if (u(r.cancel), i) {\n ie.debug(\"Initializing regular upload\", { file: s, upload: r });\n const g = await sa(s, 0, r.size), w = async () => {\n try {\n r.response = await ta(\n n,\n g,\n r.signal,\n () => this.updateStats(),\n void 0,\n {\n \"X-OC-Mtime\": s.lastModified / 1e3\n }\n ), r.uploaded = r.size, this.updateStats(), ie.debug(`Successfully uploaded ${s.name}`, { file: s, upload: r }), l(r);\n } catch (y) {\n if (y instanceof Fs) {\n r.status = ue.FAILED, m(\"Upload has been cancelled\");\n return;\n }\n y?.response && (r.response = y.response), r.status = ue.FAILED, ie.error(`Failed uploading ${s.name}`, { error: y, file: s, upload: r }), m(\"Failed uploading the file\");\n }\n this._notifiers.forEach((y) => {\n try {\n y(r);\n } catch {\n }\n });\n };\n this._jobQueue.add(w), this.updateStats();\n } else {\n ie.debug(\"Initializing chunked upload\", { file: s, upload: r });\n const g = await dl(n), w = [];\n for (let y = 0; y < r.chunks; y++) {\n const T = y * a, _ = Math.min(T + a, r.size), O = () => sa(s, T, a), D = () => ta(\n `${g}/${y + 1}`,\n O,\n r.signal,\n () => this.updateStats(),\n n,\n {\n \"X-OC-Mtime\": s.lastModified / 1e3,\n \"OC-Total-Length\": s.size\n }\n ).then(() => {\n r.uploaded = r.uploaded + a;\n }).catch((B) => {\n throw B instanceof Fs || (ie.error(`Chunk ${y + 1} ${T} - ${_} uploading failed`), r.status = ue.FAILED), B;\n });\n w.push(this._jobQueue.add(D));\n }\n try {\n await Promise.all(w), this.updateStats(), r.response = await es.request({\n method: \"MOVE\",\n url: `${g}/.file`,\n headers: {\n Destination: n\n }\n }), this.updateStats(), r.status = ue.FINISHED, ie.debug(`Successfully uploaded ${s.name}`, { file: s, upload: r }), l(r);\n } catch (y) {\n y instanceof Fs ? (r.status = ue.FAILED, m(\"Upload has been cancelled\")) : (r.status = ue.FAILED, m(\"Failed assembling the chunks together\")), es.request({\n method: \"DELETE\",\n url: `${g}`\n });\n }\n this._notifiers.forEach((y) => {\n try {\n y(r);\n } catch {\n }\n });\n }\n return this._jobQueue.onIdle().then(() => this.reset()), r;\n });\n }\n}\n/*!\n * Vue.js v2.7.15\n * (c) 2014-2023 Evan You\n * Released under the MIT License.\n */\nvar q = Object.freeze({}), b = Array.isArray;\nfunction L(e) {\n return e == null;\n}\nfunction f(e) {\n return e != null;\n}\nfunction R(e) {\n return e === !0;\n}\nfunction pl(e) {\n return e === !1;\n}\nfunction _e(e) {\n return typeof e == \"string\" || typeof e == \"number\" || // $flow-disable-line\n typeof e == \"symbol\" || typeof e == \"boolean\";\n}\nfunction $(e) {\n return typeof e == \"function\";\n}\nfunction W(e) {\n return e !== null && typeof e == \"object\";\n}\nvar ys = Object.prototype.toString;\nfunction Nt(e) {\n return ys.call(e).slice(8, -1);\n}\nfunction G(e) {\n return ys.call(e) === \"[object Object]\";\n}\nfunction Ei(e) {\n return ys.call(e) === \"[object RegExp]\";\n}\nfunction Fi(e) {\n var t = parseFloat(String(e));\n return t >= 0 && Math.floor(t) === t && isFinite(e);\n}\nfunction Ws(e) {\n return f(e) && typeof e.then == \"function\" && typeof e.catch == \"function\";\n}\nfunction hl(e) {\n return e == null ? \"\" : Array.isArray(e) || G(e) && e.toString === ys ? JSON.stringify(e, null, 2) : String(e);\n}\nfunction yt(e) {\n var t = parseFloat(e);\n return isNaN(t) ? e : t;\n}\nfunction X(e, t) {\n for (var s = /* @__PURE__ */ Object.create(null), n = e.split(\",\"), a = 0; a < n.length; a++)\n s[n[a]] = !0;\n return t ? function(i) {\n return s[i.toLowerCase()];\n } : function(i) {\n return s[i];\n };\n}\nvar Tl = X(\"slot,component\", !0), Ai = X(\"key,ref,slot,slot-scope,is\");\nfunction Oe(e, t) {\n var s = e.length;\n if (s) {\n if (t === e[s - 1]) {\n e.length = s - 1;\n return;\n }\n var n = e.indexOf(t);\n if (n > -1)\n return e.splice(n, 1);\n }\n}\nvar wl = Object.prototype.hasOwnProperty;\nfunction V(e, t) {\n return wl.call(e, t);\n}\nfunction Je(e) {\n var t = /* @__PURE__ */ Object.create(null);\n return function(n) {\n var a = t[n];\n return a || (t[n] = e(n));\n };\n}\nvar vl = /-(\\w)/g, qe = Je(function(e) {\n return e.replace(vl, function(t, s) {\n return s ? s.toUpperCase() : \"\";\n });\n}), Ni = Je(function(e) {\n return e.charAt(0).toUpperCase() + e.slice(1);\n}), xl = /\\B([A-Z])/g, Ye = Je(function(e) {\n return e.replace(xl, \"-$1\").toLowerCase();\n});\nfunction yl(e, t) {\n function s(n) {\n var a = arguments.length;\n return a ? a > 1 ? e.apply(t, arguments) : e.call(t, n) : e.call(t);\n }\n return s._length = e.length, s;\n}\nfunction _l(e, t) {\n return e.bind(t);\n}\nvar Pi = Function.prototype.bind ? _l : yl;\nfunction qs(e, t) {\n t = t || 0;\n for (var s = e.length - t, n = new Array(s); s--; )\n n[s] = e[s + t];\n return n;\n}\nfunction j(e, t) {\n for (var s in t)\n e[s] = t[s];\n return e;\n}\nfunction Ui(e) {\n for (var t = {}, s = 0; s < e.length; s++)\n e[s] && j(t, e[s]);\n return t;\n}\nfunction z(e, t, s) {\n}\nvar Dt = function(e, t, s) {\n return !1;\n}, Oi = function(e) {\n return e;\n};\nfunction Ge(e, t) {\n if (e === t)\n return !0;\n var s = W(e), n = W(t);\n if (s && n)\n try {\n var a = Array.isArray(e), i = Array.isArray(t);\n if (a && i)\n return e.length === t.length && e.every(function(l, m) {\n return Ge(l, t[m]);\n });\n if (e instanceof Date && t instanceof Date)\n return e.getTime() === t.getTime();\n if (!a && !i) {\n var r = Object.keys(e), o = Object.keys(t);\n return r.length === o.length && r.every(function(l) {\n return Ge(e[l], t[l]);\n });\n } else\n return !1;\n } catch {\n return !1;\n }\n else\n return !s && !n ? String(e) === String(t) : !1;\n}\nfunction Bi(e, t) {\n for (var s = 0; s < e.length; s++)\n if (Ge(e[s], t))\n return s;\n return -1;\n}\nfunction ss(e) {\n var t = !1;\n return function() {\n t || (t = !0, e.apply(this, arguments));\n };\n}\nfunction Cl(e, t) {\n return e === t ? e === 0 && 1 / e !== 1 / t : e === e || t === t;\n}\nvar aa = \"data-server-rendered\", _s = [\"component\", \"directive\", \"filter\"], ji = [\n \"beforeCreate\",\n \"created\",\n \"beforeMount\",\n \"mounted\",\n \"beforeUpdate\",\n \"updated\",\n \"beforeDestroy\",\n \"destroyed\",\n \"activated\",\n \"deactivated\",\n \"errorCaptured\",\n \"serverPrefetch\",\n \"renderTracked\",\n \"renderTriggered\"\n], U = {\n /**\n * Option merge strategies (used in core/util/options)\n */\n // $flow-disable-line\n optionMergeStrategies: /* @__PURE__ */ Object.create(null),\n /**\n * Whether to suppress warnings.\n */\n silent: !1,\n /**\n * Show production mode tip message on boot?\n */\n productionTip: process.env.NODE_ENV !== \"production\",\n /**\n * Whether to enable devtools\n */\n devtools: process.env.NODE_ENV !== \"production\",\n /**\n * Whether to record perf\n */\n performance: !1,\n /**\n * Error handler for watcher errors\n */\n errorHandler: null,\n /**\n * Warn handler for watcher warns\n */\n warnHandler: null,\n /**\n * Ignore certain custom elements\n */\n ignoredElements: [],\n /**\n * Custom user key aliases for v-on\n */\n // $flow-disable-line\n keyCodes: /* @__PURE__ */ Object.create(null),\n /**\n * Check if a tag is reserved so that it cannot be registered as a\n * component. This is platform-dependent and may be overwritten.\n */\n isReservedTag: Dt,\n /**\n * Check if an attribute is reserved so that it cannot be used as a component\n * prop. This is platform-dependent and may be overwritten.\n */\n isReservedAttr: Dt,\n /**\n * Check if a tag is an unknown element.\n * Platform-dependent.\n */\n isUnknownElement: Dt,\n /**\n * Get the namespace of an element\n */\n getTagNamespace: z,\n /**\n * Parse the real tag name for the specific platform.\n */\n parsePlatformTagName: Oi,\n /**\n * Check if an attribute must be bound using property, e.g. value\n * Platform-dependent.\n */\n mustUseProp: Dt,\n /**\n * Perform updates asynchronously. Intended to be used by Vue Test Utils\n * This will significantly reduce performance if set to false.\n */\n async: !0,\n /**\n * Exposed for legacy reasons\n */\n _lifecycleHooks: ji\n}, Di = /a-zA-Z\\u00B7\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u203F-\\u2040\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD/;\nfunction wn(e) {\n var t = (e + \"\").charCodeAt(0);\n return t === 36 || t === 95;\n}\nfunction Fe(e, t, s, n) {\n Object.defineProperty(e, t, {\n value: s,\n enumerable: !!n,\n writable: !0,\n configurable: !0\n });\n}\nvar Ll = new RegExp(\"[^\".concat(Di.source, \".$_\\\\d]\"));\nfunction bl(e) {\n if (!Ll.test(e)) {\n var t = e.split(\".\");\n return function(s) {\n for (var n = 0; n < t.length; n++) {\n if (!s)\n return;\n s = s[t[n]];\n }\n return s;\n };\n }\n}\nvar kl = \"__proto__\" in {}, Y = typeof window < \"u\", ne = Y && window.navigator.userAgent.toLowerCase(), lt = ne && /msie|trident/.test(ne), ut = ne && ne.indexOf(\"msie 9.0\") > 0, $i = ne && ne.indexOf(\"edge/\") > 0;\nne && ne.indexOf(\"android\") > 0;\nvar Sl = ne && /iphone|ipad|ipod|ios/.test(ne), ia = ne && ne.match(/firefox\\/(\\d+)/), Gs = {}.watch, Ri = !1;\nif (Y)\n try {\n var ra = {};\n Object.defineProperty(ra, \"passive\", {\n get: function() {\n Ri = !0;\n }\n }), window.addEventListener(\"test-passive\", null, ra);\n } catch {\n }\nvar $t, Pt = function() {\n return $t === void 0 && (!Y && typeof global < \"u\" ? $t = global.process && global.process.env.VUE_ENV === \"server\" : $t = !1), $t;\n}, ns = Y && window.__VUE_DEVTOOLS_GLOBAL_HOOK__;\nfunction Me(e) {\n return typeof e == \"function\" && /native code/.test(e.toString());\n}\nvar Ut = typeof Symbol < \"u\" && Me(Symbol) && typeof Reflect < \"u\" && Me(Reflect.ownKeys), _t;\ntypeof Set < \"u\" && Me(Set) ? _t = Set : _t = /** @class */\nfunction() {\n function e() {\n this.set = /* @__PURE__ */ Object.create(null);\n }\n return e.prototype.has = function(t) {\n return this.set[t] === !0;\n }, e.prototype.add = function(t) {\n this.set[t] = !0;\n }, e.prototype.clear = function() {\n this.set = /* @__PURE__ */ Object.create(null);\n }, e;\n}();\nvar at = null;\nfunction Ae(e) {\n e === void 0 && (e = null), e || at && at._scope.off(), at = e, e && e._scope.on();\n}\nvar J = (\n /** @class */\n function() {\n function e(t, s, n, a, i, r, o, l) {\n this.tag = t, this.data = s, this.children = n, this.text = a, this.elm = i, this.ns = void 0, this.context = r, this.fnContext = void 0, this.fnOptions = void 0, this.fnScopeId = void 0, this.key = s && s.key, this.componentOptions = o, this.componentInstance = void 0, this.parent = void 0, this.raw = !1, this.isStatic = !1, this.isRootInsert = !0, this.isComment = !1, this.isCloned = !1, this.isOnce = !1, this.asyncFactory = l, this.asyncMeta = void 0, this.isAsyncPlaceholder = !1;\n }\n return Object.defineProperty(e.prototype, \"child\", {\n // DEPRECATED: alias for componentInstance for backwards compat.\n /* istanbul ignore next */\n get: function() {\n return this.componentInstance;\n },\n enumerable: !1,\n configurable: !0\n }), e;\n }()\n), He = function(e) {\n e === void 0 && (e = \"\");\n var t = new J();\n return t.text = e, t.isComment = !0, t;\n};\nfunction tt(e) {\n return new J(void 0, void 0, void 0, String(e));\n}\nfunction Ks(e) {\n var t = new J(\n e.tag,\n e.data,\n // #7975\n // clone children array to avoid mutating original in case of cloning\n // a child.\n e.children && e.children.slice(),\n e.text,\n e.elm,\n e.context,\n e.componentOptions,\n e.asyncFactory\n );\n return t.ns = e.ns, t.isStatic = e.isStatic, t.key = e.key, t.isComment = e.isComment, t.fnContext = e.fnContext, t.fnOptions = e.fnOptions, t.fnScopeId = e.fnScopeId, t.asyncMeta = e.asyncMeta, t.isCloned = !0, t;\n}\nvar as = function() {\n return as = Object.assign || function(t) {\n for (var s, n = 1, a = arguments.length; n < a; n++) {\n s = arguments[n];\n for (var i in s)\n Object.prototype.hasOwnProperty.call(s, i) && (t[i] = s[i]);\n }\n return t;\n }, as.apply(this, arguments);\n}, El = 0, Jt = [], Fl = function() {\n for (var e = 0; e < Jt.length; e++) {\n var t = Jt[e];\n t.subs = t.subs.filter(function(s) {\n return s;\n }), t._pending = !1;\n }\n Jt.length = 0;\n}, re = (\n /** @class */\n function() {\n function e() {\n this._pending = !1, this.id = El++, this.subs = [];\n }\n return e.prototype.addSub = function(t) {\n this.subs.push(t);\n }, e.prototype.removeSub = function(t) {\n this.subs[this.subs.indexOf(t)] = null, this._pending || (this._pending = !0, Jt.push(this));\n }, e.prototype.depend = function(t) {\n e.target && (e.target.addDep(this), process.env.NODE_ENV !== \"production\" && t && e.target.onTrack && e.target.onTrack(as({ effect: e.target }, t)));\n }, e.prototype.notify = function(t) {\n var s = this.subs.filter(function(r) {\n return r;\n });\n process.env.NODE_ENV !== \"production\" && !U.async && s.sort(function(r, o) {\n return r.id - o.id;\n });\n for (var n = 0, a = s.length; n < a; n++) {\n var i = s[n];\n process.env.NODE_ENV !== \"production\" && t && i.onTrigger && i.onTrigger(as({ effect: s[n] }, t)), i.update();\n }\n }, e;\n }()\n);\nre.target = null;\nvar Yt = [];\nfunction mt(e) {\n Yt.push(e), re.target = e;\n}\nfunction ct() {\n Yt.pop(), re.target = Yt[Yt.length - 1];\n}\nvar Ii = Array.prototype, is = Object.create(Ii), Al = [\n \"push\",\n \"pop\",\n \"shift\",\n \"unshift\",\n \"splice\",\n \"sort\",\n \"reverse\"\n];\nAl.forEach(function(e) {\n var t = Ii[e];\n Fe(is, e, function() {\n for (var n = [], a = 0; a < arguments.length; a++)\n n[a] = arguments[a];\n var i = t.apply(this, n), r = this.__ob__, o;\n switch (e) {\n case \"push\":\n case \"unshift\":\n o = n;\n break;\n case \"splice\":\n o = n.slice(2);\n break;\n }\n return o && r.observeArray(o), process.env.NODE_ENV !== \"production\" ? r.dep.notify({\n type: \"array mutation\",\n target: this,\n key: e\n }) : r.dep.notify(), i;\n });\n});\nvar oa = Object.getOwnPropertyNames(is), zi = {}, vn = !0;\nfunction Ne(e) {\n vn = e;\n}\nvar Nl = {\n notify: z,\n depend: z,\n addSub: z,\n removeSub: z\n}, la = (\n /** @class */\n function() {\n function e(t, s, n) {\n if (s === void 0 && (s = !1), n === void 0 && (n = !1), this.value = t, this.shallow = s, this.mock = n, this.dep = n ? Nl : new re(), this.vmCount = 0, Fe(t, \"__ob__\", this), b(t)) {\n if (!n)\n if (kl)\n t.__proto__ = is;\n else\n for (var a = 0, i = oa.length; a < i; a++) {\n var r = oa[a];\n Fe(t, r, is[r]);\n }\n s || this.observeArray(t);\n } else\n for (var o = Object.keys(t), a = 0; a < o.length; a++) {\n var r = o[a];\n oe(t, r, zi, void 0, s, n);\n }\n }\n return e.prototype.observeArray = function(t) {\n for (var s = 0, n = t.length; s < n; s++)\n ye(t[s], !1, this.mock);\n }, e;\n }()\n);\nfunction ye(e, t, s) {\n if (e && V(e, \"__ob__\") && e.__ob__ instanceof la)\n return e.__ob__;\n if (vn && (s || !Pt()) && (b(e) || G(e)) && Object.isExtensible(e) && !e.__v_skip && !de(e) && !(e instanceof J))\n return new la(e, t, s);\n}\nfunction oe(e, t, s, n, a, i) {\n var r = new re(), o = Object.getOwnPropertyDescriptor(e, t);\n if (!(o && o.configurable === !1)) {\n var l = o && o.get, m = o && o.set;\n (!l || m) && (s === zi || arguments.length === 2) && (s = e[t]);\n var u = !a && ye(s, !1, i);\n return Object.defineProperty(e, t, {\n enumerable: !0,\n configurable: !0,\n get: function() {\n var w = l ? l.call(e) : s;\n return re.target && (process.env.NODE_ENV !== \"production\" ? r.depend({\n target: e,\n type: \"get\",\n key: t\n }) : r.depend(), u && (u.dep.depend(), b(w) && Hi(w))), de(w) && !a ? w.value : w;\n },\n set: function(w) {\n var y = l ? l.call(e) : s;\n if (Cl(y, w)) {\n if (process.env.NODE_ENV !== \"production\" && n && n(), m)\n m.call(e, w);\n else {\n if (l)\n return;\n if (!a && de(y) && !de(w)) {\n y.value = w;\n return;\n } else\n s = w;\n }\n u = !a && ye(w, !1, i), process.env.NODE_ENV !== \"production\" ? r.notify({\n type: \"set\",\n target: e,\n key: t,\n newValue: w,\n oldValue: y\n }) : r.notify();\n }\n }\n }), r;\n }\n}\nfunction xn(e, t, s) {\n if (process.env.NODE_ENV !== \"production\" && (L(e) || _e(e)) && v(\"Cannot set reactive property on undefined, null, or primitive value: \".concat(e)), yn(e)) {\n process.env.NODE_ENV !== \"production\" && v('Set operation on key \"'.concat(t, '\" failed: target is readonly.'));\n return;\n }\n var n = e.__ob__;\n return b(e) && Fi(t) ? (e.length = Math.max(e.length, t), e.splice(t, 1, s), n && !n.shallow && n.mock && ye(s, !1, !0), s) : t in e && !(t in Object.prototype) ? (e[t] = s, s) : e._isVue || n && n.vmCount ? (process.env.NODE_ENV !== \"production\" && v(\"Avoid adding reactive properties to a Vue instance or its root $data at runtime - declare it upfront in the data option.\"), s) : n ? (oe(n.value, t, s, void 0, n.shallow, n.mock), process.env.NODE_ENV !== \"production\" ? n.dep.notify({\n type: \"add\",\n target: e,\n key: t,\n newValue: s,\n oldValue: void 0\n }) : n.dep.notify(), s) : (e[t] = s, s);\n}\nfunction Mi(e, t) {\n if (process.env.NODE_ENV !== \"production\" && (L(e) || _e(e)) && v(\"Cannot delete reactive property on undefined, null, or primitive value: \".concat(e)), b(e) && Fi(t)) {\n e.splice(t, 1);\n return;\n }\n var s = e.__ob__;\n if (e._isVue || s && s.vmCount) {\n process.env.NODE_ENV !== \"production\" && v(\"Avoid deleting properties on a Vue instance or its root $data - just set it to null.\");\n return;\n }\n if (yn(e)) {\n process.env.NODE_ENV !== \"production\" && v('Delete operation on key \"'.concat(t, '\" failed: target is readonly.'));\n return;\n }\n V(e, t) && (delete e[t], s && (process.env.NODE_ENV !== \"production\" ? s.dep.notify({\n type: \"delete\",\n target: e,\n key: t\n }) : s.dep.notify()));\n}\nfunction Hi(e) {\n for (var t = void 0, s = 0, n = e.length; s < n; s++)\n t = e[s], t && t.__ob__ && t.__ob__.dep.depend(), b(t) && Hi(t);\n}\nfunction Vi(e) {\n return Pl(e, !0), Fe(e, \"__v_isShallow\", !0), e;\n}\nfunction Pl(e, t) {\n if (!yn(e)) {\n if (process.env.NODE_ENV !== \"production\") {\n b(e) && v(\"Avoid using Array as root value for \".concat(t ? \"shallowReactive()\" : \"reactive()\", \" as it cannot be tracked in watch() or watchEffect(). Use \").concat(t ? \"shallowRef()\" : \"ref()\", \" instead. This is a Vue-2-only limitation.\"));\n var s = e && e.__ob__;\n s && s.shallow !== t && v(\"Target is already a \".concat(s.shallow ? \"\" : \"non-\", \"shallow reactive object, and cannot be converted to \").concat(t ? \"\" : \"non-\", \"shallow.\"));\n }\n var n = ye(\n e,\n t,\n Pt()\n /* ssr mock reactivity */\n );\n process.env.NODE_ENV !== \"production\" && !n && ((e == null || _e(e)) && v(\"value cannot be made reactive: \".concat(String(e))), Ul(e) && v(\"Vue 2 does not support reactive collection types such as Map or Set.\"));\n }\n}\nfunction yn(e) {\n return !!(e && e.__v_isReadonly);\n}\nfunction Ul(e) {\n var t = Nt(e);\n return t === \"Map\" || t === \"WeakMap\" || t === \"Set\" || t === \"WeakSet\";\n}\nfunction de(e) {\n return !!(e && e.__v_isRef === !0);\n}\nfunction Js(e, t, s) {\n Object.defineProperty(e, s, {\n enumerable: !0,\n configurable: !0,\n get: function() {\n var n = t[s];\n if (de(n))\n return n.value;\n var a = n && n.__ob__;\n return a && a.dep.depend(), n;\n },\n set: function(n) {\n var a = t[s];\n de(a) && !de(n) ? a.value = n : t[s] = n;\n }\n });\n}\nvar K, Ol = (\n /** @class */\n function() {\n function e(t) {\n t === void 0 && (t = !1), this.detached = t, this.active = !0, this.effects = [], this.cleanups = [], this.parent = K, !t && K && (this.index = (K.scopes || (K.scopes = [])).push(this) - 1);\n }\n return e.prototype.run = function(t) {\n if (this.active) {\n var s = K;\n try {\n return K = this, t();\n } finally {\n K = s;\n }\n } else\n process.env.NODE_ENV !== \"production\" && v(\"cannot run an inactive effect scope.\");\n }, e.prototype.on = function() {\n K = this;\n }, e.prototype.off = function() {\n K = this.parent;\n }, e.prototype.stop = function(t) {\n if (this.active) {\n var s = void 0, n = void 0;\n for (s = 0, n = this.effects.length; s < n; s++)\n this.effects[s].teardown();\n for (s = 0, n = this.cleanups.length; s < n; s++)\n this.cleanups[s]();\n if (this.scopes)\n for (s = 0, n = this.scopes.length; s < n; s++)\n this.scopes[s].stop(!0);\n if (!this.detached && this.parent && !t) {\n var a = this.parent.scopes.pop();\n a && a !== this && (this.parent.scopes[this.index] = a, a.index = this.index);\n }\n this.parent = void 0, this.active = !1;\n }\n }, e;\n }()\n);\nfunction Bl(e, t) {\n t === void 0 && (t = K), t && t.active && t.effects.push(e);\n}\nfunction jl() {\n return K;\n}\nfunction Dl(e) {\n var t = e._provided, s = e.$parent && e.$parent._provided;\n return s === t ? e._provided = Object.create(s) : t;\n}\nvar ua = Je(function(e) {\n var t = e.charAt(0) === \"&\";\n e = t ? e.slice(1) : e;\n var s = e.charAt(0) === \"~\";\n e = s ? e.slice(1) : e;\n var n = e.charAt(0) === \"!\";\n return e = n ? e.slice(1) : e, {\n name: e,\n once: s,\n capture: n,\n passive: t\n };\n});\nfunction Ys(e, t) {\n function s() {\n var n = s.fns;\n if (b(n))\n for (var a = n.slice(), i = 0; i < a.length; i++)\n Ue(a[i], null, arguments, t, \"v-on handler\");\n else\n return Ue(n, null, arguments, t, \"v-on handler\");\n }\n return s.fns = e, s;\n}\nfunction Wi(e, t, s, n, a, i) {\n var r, o, l, m;\n for (r in e)\n o = e[r], l = t[r], m = ua(r), L(o) ? process.env.NODE_ENV !== \"production\" && v('Invalid handler for event \"'.concat(m.name, '\": got ') + String(o), i) : L(l) ? (L(o.fns) && (o = e[r] = Ys(o, i)), R(m.once) && (o = e[r] = a(m.name, o, m.capture)), s(m.name, o, m.capture, m.passive, m.params)) : o !== l && (l.fns = o, e[r] = l);\n for (r in t)\n L(e[r]) && (m = ua(r), n(m.name, t[r], m.capture));\n}\nfunction Se(e, t, s) {\n e instanceof J && (e = e.data.hook || (e.data.hook = {}));\n var n, a = e[t];\n function i() {\n s.apply(this, arguments), Oe(n.fns, i);\n }\n L(a) ? n = Ys([i]) : f(a.fns) && R(a.merged) ? (n = a, n.fns.push(i)) : n = Ys([a, i]), n.merged = !0, e[t] = n;\n}\nfunction $l(e, t, s) {\n var n = t.options.props;\n if (!L(n)) {\n var a = {}, i = e.attrs, r = e.props;\n if (f(i) || f(r))\n for (var o in n) {\n var l = Ye(o);\n if (process.env.NODE_ENV !== \"production\") {\n var m = o.toLowerCase();\n o !== m && i && V(i, m) && Nn('Prop \"'.concat(m, '\" is passed to component ') + \"\".concat(ze(\n // @ts-expect-error tag is string\n s || t\n ), \", but the declared prop name is\") + ' \"'.concat(o, '\". ') + \"Note that HTML attributes are case-insensitive and camelCased props need to use their kebab-case equivalents when using in-DOM \" + 'templates. You should probably use \"'.concat(l, '\" instead of \"').concat(o, '\".'));\n }\n ma(a, r, o, l, !0) || ma(a, i, o, l, !1);\n }\n return a;\n }\n}\nfunction ma(e, t, s, n, a) {\n if (f(t)) {\n if (V(t, s))\n return e[s] = t[s], a || delete t[s], !0;\n if (V(t, n))\n return e[s] = t[n], a || delete t[n], !0;\n }\n return !1;\n}\nfunction Rl(e) {\n for (var t = 0; t < e.length; t++)\n if (b(e[t]))\n return Array.prototype.concat.apply([], e);\n return e;\n}\nfunction _n(e) {\n return _e(e) ? [tt(e)] : b(e) ? qi(e) : void 0;\n}\nfunction gt(e) {\n return f(e) && f(e.text) && pl(e.isComment);\n}\nfunction qi(e, t) {\n var s = [], n, a, i, r;\n for (n = 0; n < e.length; n++)\n a = e[n], !(L(a) || typeof a == \"boolean\") && (i = s.length - 1, r = s[i], b(a) ? a.length > 0 && (a = qi(a, \"\".concat(t || \"\", \"_\").concat(n)), gt(a[0]) && gt(r) && (s[i] = tt(r.text + a[0].text), a.shift()), s.push.apply(s, a)) : _e(a) ? gt(r) ? s[i] = tt(r.text + a) : a !== \"\" && s.push(tt(a)) : gt(a) && gt(r) ? s[i] = tt(r.text + a.text) : (R(e._isVList) && f(a.tag) && L(a.key) && f(t) && (a.key = \"__vlist\".concat(t, \"_\").concat(n, \"__\")), s.push(a)));\n return s;\n}\nfunction Il(e, t) {\n var s = null, n, a, i, r;\n if (b(e) || typeof e == \"string\")\n for (s = new Array(e.length), n = 0, a = e.length; n < a; n++)\n s[n] = t(e[n], n);\n else if (typeof e == \"number\")\n for (s = new Array(e), n = 0; n < e; n++)\n s[n] = t(n + 1, n);\n else if (W(e))\n if (Ut && e[Symbol.iterator]) {\n s = [];\n for (var o = e[Symbol.iterator](), l = o.next(); !l.done; )\n s.push(t(l.value, s.length)), l = o.next();\n } else\n for (i = Object.keys(e), s = new Array(i.length), n = 0, a = i.length; n < a; n++)\n r = i[n], s[n] = t(e[r], r, n);\n return f(s) || (s = []), s._isVList = !0, s;\n}\nfunction zl(e, t, s, n) {\n var a = this.$scopedSlots[e], i;\n a ? (s = s || {}, n && (process.env.NODE_ENV !== \"production\" && !W(n) && v(\"slot v-bind without argument expects an Object\", this), s = j(j({}, n), s)), i = a(s) || ($(t) ? t() : t)) : i = this.$slots[e] || ($(t) ? t() : t);\n var r = s && s.slot;\n return r ? this.$createElement(\"template\", { slot: r }, i) : i;\n}\nfunction Ml(e) {\n return ms(this.$options, \"filters\", e, !0) || Oi;\n}\nfunction ca(e, t) {\n return b(e) ? e.indexOf(t) === -1 : e !== t;\n}\nfunction Hl(e, t, s, n, a) {\n var i = U.keyCodes[t] || s;\n return a && n && !U.keyCodes[t] ? ca(a, n) : i ? ca(i, e) : n ? Ye(n) !== t : e === void 0;\n}\nfunction Vl(e, t, s, n, a) {\n if (s)\n if (!W(s))\n process.env.NODE_ENV !== \"production\" && v(\"v-bind without argument expects an Object or Array value\", this);\n else {\n b(s) && (s = Ui(s));\n var i = void 0, r = function(l) {\n if (l === \"class\" || l === \"style\" || Ai(l))\n i = e;\n else {\n var m = e.attrs && e.attrs.type;\n i = n || U.mustUseProp(t, m, l) ? e.domProps || (e.domProps = {}) : e.attrs || (e.attrs = {});\n }\n var u = qe(l), g = Ye(l);\n if (!(u in i) && !(g in i) && (i[l] = s[l], a)) {\n var w = e.on || (e.on = {});\n w[\"update:\".concat(l)] = function(y) {\n s[l] = y;\n };\n }\n };\n for (var o in s)\n r(o);\n }\n return e;\n}\nfunction Wl(e, t) {\n var s = this._staticTrees || (this._staticTrees = []), n = s[e];\n return n && !t || (n = s[e] = this.$options.staticRenderFns[e].call(\n this._renderProxy,\n this._c,\n this\n // for render fns generated for functional component templates\n ), Gi(n, \"__static__\".concat(e), !1)), n;\n}\nfunction ql(e, t, s) {\n return Gi(e, \"__once__\".concat(t).concat(s ? \"_\".concat(s) : \"\"), !0), e;\n}\nfunction Gi(e, t, s) {\n if (b(e))\n for (var n = 0; n < e.length; n++)\n e[n] && typeof e[n] != \"string\" && da(e[n], \"\".concat(t, \"_\").concat(n), s);\n else\n da(e, t, s);\n}\nfunction da(e, t, s) {\n e.isStatic = !0, e.key = t, e.isOnce = s;\n}\nfunction Gl(e, t) {\n if (t)\n if (!G(t))\n process.env.NODE_ENV !== \"production\" && v(\"v-on without argument expects an Object value\", this);\n else {\n var s = e.on = e.on ? j({}, e.on) : {};\n for (var n in t) {\n var a = s[n], i = t[n];\n s[n] = a ? [].concat(a, i) : i;\n }\n }\n return e;\n}\nfunction Ki(e, t, s, n) {\n t = t || { $stable: !s };\n for (var a = 0; a < e.length; a++) {\n var i = e[a];\n b(i) ? Ki(i, t, s) : i && (i.proxy && (i.fn.proxy = !0), t[i.key] = i.fn);\n }\n return n && (t.$key = n), t;\n}\nfunction Kl(e, t) {\n for (var s = 0; s < t.length; s += 2) {\n var n = t[s];\n typeof n == \"string\" && n ? e[t[s]] = t[s + 1] : process.env.NODE_ENV !== \"production\" && n !== \"\" && n !== null && v(\"Invalid value for dynamic directive argument (expected string or null): \".concat(n), this);\n }\n return e;\n}\nfunction Jl(e, t) {\n return typeof e == \"string\" ? t + e : e;\n}\nfunction Ji(e) {\n e._o = ql, e._n = yt, e._s = hl, e._l = Il, e._t = zl, e._q = Ge, e._i = Bi, e._m = Wl, e._f = Ml, e._k = Hl, e._b = Vl, e._v = tt, e._e = He, e._u = Ki, e._g = Gl, e._d = Kl, e._p = Jl;\n}\nfunction Cn(e, t) {\n if (!e || !e.length)\n return {};\n for (var s = {}, n = 0, a = e.length; n < a; n++) {\n var i = e[n], r = i.data;\n if (r && r.attrs && r.attrs.slot && delete r.attrs.slot, (i.context === t || i.fnContext === t) && r && r.slot != null) {\n var o = r.slot, l = s[o] || (s[o] = []);\n i.tag === \"template\" ? l.push.apply(l, i.children || []) : l.push(i);\n } else\n (s.default || (s.default = [])).push(i);\n }\n for (var m in s)\n s[m].every(Yl) && delete s[m];\n return s;\n}\nfunction Yl(e) {\n return e.isComment && !e.asyncFactory || e.text === \" \";\n}\nfunction Ct(e) {\n return e.isComment && e.asyncFactory;\n}\nfunction vt(e, t, s, n) {\n var a, i = Object.keys(s).length > 0, r = t ? !!t.$stable : !i, o = t && t.$key;\n if (!t)\n a = {};\n else {\n if (t._normalized)\n return t._normalized;\n if (r && n && n !== q && o === n.$key && !i && !n.$hasNormal)\n return n;\n a = {};\n for (var l in t)\n t[l] && l[0] !== \"$\" && (a[l] = Zl(e, s, l, t[l]));\n }\n for (var m in s)\n m in a || (a[m] = Xl(s, m));\n return t && Object.isExtensible(t) && (t._normalized = a), Fe(a, \"$stable\", r), Fe(a, \"$key\", o), Fe(a, \"$hasNormal\", i), a;\n}\nfunction Zl(e, t, s, n) {\n var a = function() {\n var i = at;\n Ae(e);\n var r = arguments.length ? n.apply(null, arguments) : n({});\n r = r && typeof r == \"object\" && !b(r) ? [r] : _n(r);\n var o = r && r[0];\n return Ae(i), r && (!o || r.length === 1 && o.isComment && !Ct(o)) ? void 0 : r;\n };\n return n.proxy && Object.defineProperty(t, s, {\n get: a,\n enumerable: !0,\n configurable: !0\n }), a;\n}\nfunction Xl(e, t) {\n return function() {\n return e[t];\n };\n}\nfunction Ql(e) {\n var t = e.$options, s = t.setup;\n if (s) {\n var n = e._setupContext = eu(e);\n Ae(e), mt();\n var a = Ue(s, null, [e._props || Vi({}), n], e, \"setup\");\n if (ct(), Ae(), $(a))\n t.render = a;\n else if (W(a))\n if (process.env.NODE_ENV !== \"production\" && a instanceof J && v(\"setup() should not return VNodes directly - return a render function instead.\"), e._setupState = a, a.__sfc) {\n var r = e._setupProxy = {};\n for (var i in a)\n i !== \"__sfc\" && Js(r, a, i);\n } else\n for (var i in a)\n wn(i) ? process.env.NODE_ENV !== \"production\" && v(\"Avoid using variables that start with _ or $ in setup().\") : Js(e, a, i);\n else\n process.env.NODE_ENV !== \"production\" && a !== void 0 && v(\"setup() should return an object. Received: \".concat(a === null ? \"null\" : typeof a));\n }\n}\nfunction eu(e) {\n var t = !1;\n return {\n get attrs() {\n if (!e._attrsProxy) {\n var s = e._attrsProxy = {};\n Fe(s, \"_v_attr_proxy\", !0), rs(s, e.$attrs, q, e, \"$attrs\");\n }\n return e._attrsProxy;\n },\n get listeners() {\n if (!e._listenersProxy) {\n var s = e._listenersProxy = {};\n rs(s, e.$listeners, q, e, \"$listeners\");\n }\n return e._listenersProxy;\n },\n get slots() {\n return su(e);\n },\n emit: Pi(e.$emit, e),\n expose: function(s) {\n process.env.NODE_ENV !== \"production\" && (t && v(\"expose() should be called only once per setup().\", e), t = !0), s && Object.keys(s).forEach(function(n) {\n return Js(e, s, n);\n });\n }\n };\n}\nfunction rs(e, t, s, n, a) {\n var i = !1;\n for (var r in t)\n r in e ? t[r] !== s[r] && (i = !0) : (i = !0, tu(e, r, n, a));\n for (var r in e)\n r in t || (i = !0, delete e[r]);\n return i;\n}\nfunction tu(e, t, s, n) {\n Object.defineProperty(e, t, {\n enumerable: !0,\n configurable: !0,\n get: function() {\n return s[n][t];\n }\n });\n}\nfunction su(e) {\n return e._slotsProxy || Yi(e._slotsProxy = {}, e.$scopedSlots), e._slotsProxy;\n}\nfunction Yi(e, t) {\n for (var s in t)\n e[s] = t[s];\n for (var s in e)\n s in t || delete e[s];\n}\nfunction nu(e) {\n e._vnode = null, e._staticTrees = null;\n var t = e.$options, s = e.$vnode = t._parentVnode, n = s && s.context;\n e.$slots = Cn(t._renderChildren, n), e.$scopedSlots = s ? vt(e.$parent, s.data.scopedSlots, e.$slots) : q, e._c = function(i, r, o, l) {\n return os(e, i, r, o, l, !1);\n }, e.$createElement = function(i, r, o, l) {\n return os(e, i, r, o, l, !0);\n };\n var a = s && s.data;\n process.env.NODE_ENV !== \"production\" ? (oe(e, \"$attrs\", a && a.attrs || q, function() {\n !bt && v(\"$attrs is readonly.\", e);\n }, !0), oe(e, \"$listeners\", t._parentListeners || q, function() {\n !bt && v(\"$listeners is readonly.\", e);\n }, !0)) : (oe(e, \"$attrs\", a && a.attrs || q, null, !0), oe(e, \"$listeners\", t._parentListeners || q, null, !0));\n}\nvar Zs = null;\nfunction au(e) {\n Ji(e.prototype), e.prototype.$nextTick = function(t) {\n return Ln(t, this);\n }, e.prototype._render = function() {\n var t = this, s = t.$options, n = s.render, a = s._parentVnode;\n a && t._isMounted && (t.$scopedSlots = vt(t.$parent, a.data.scopedSlots, t.$slots, t.$scopedSlots), t._slotsProxy && Yi(t._slotsProxy, t.$scopedSlots)), t.$vnode = a;\n var i;\n try {\n Ae(t), Zs = t, i = n.call(t._renderProxy, t.$createElement);\n } catch (r) {\n if (Pe(r, t, \"render\"), process.env.NODE_ENV !== \"production\" && t.$options.renderError)\n try {\n i = t.$options.renderError.call(t._renderProxy, t.$createElement, r);\n } catch (o) {\n Pe(o, t, \"renderError\"), i = t._vnode;\n }\n else\n i = t._vnode;\n } finally {\n Zs = null, Ae();\n }\n return b(i) && i.length === 1 && (i = i[0]), i instanceof J || (process.env.NODE_ENV !== \"production\" && b(i) && v(\"Multiple root nodes returned from render function. Render function should return a single root node.\", t), i = He()), i.parent = a, i;\n };\n}\nfunction As(e, t) {\n return (e.__esModule || Ut && e[Symbol.toStringTag] === \"Module\") && (e = e.default), W(e) ? t.extend(e) : e;\n}\nfunction iu(e, t, s, n, a) {\n var i = He();\n return i.asyncFactory = e, i.asyncMeta = { data: t, context: s, children: n, tag: a }, i;\n}\nfunction ru(e, t) {\n if (R(e.error) && f(e.errorComp))\n return e.errorComp;\n if (f(e.resolved))\n return e.resolved;\n var s = Zs;\n if (s && f(e.owners) && e.owners.indexOf(s) === -1 && e.owners.push(s), R(e.loading) && f(e.loadingComp))\n return e.loadingComp;\n if (s && !f(e.owners)) {\n var n = e.owners = [s], a = !0, i = null, r = null;\n s.$on(\"hook:destroyed\", function() {\n return Oe(n, s);\n });\n var o = function(g) {\n for (var w = 0, y = n.length; w < y; w++)\n n[w].$forceUpdate();\n g && (n.length = 0, i !== null && (clearTimeout(i), i = null), r !== null && (clearTimeout(r), r = null));\n }, l = ss(function(g) {\n e.resolved = As(g, t), a ? n.length = 0 : o(!0);\n }), m = ss(function(g) {\n process.env.NODE_ENV !== \"production\" && v(\"Failed to resolve async component: \".concat(String(e)) + (g ? `\nReason: `.concat(g) : \"\")), f(e.errorComp) && (e.error = !0, o(!0));\n }), u = e(l, m);\n return W(u) && (Ws(u) ? L(e.resolved) && u.then(l, m) : Ws(u.component) && (u.component.then(l, m), f(u.error) && (e.errorComp = As(u.error, t)), f(u.loading) && (e.loadingComp = As(u.loading, t), u.delay === 0 ? e.loading = !0 : i = setTimeout(function() {\n i = null, L(e.resolved) && L(e.error) && (e.loading = !0, o(!1));\n }, u.delay || 200)), f(u.timeout) && (r = setTimeout(function() {\n r = null, L(e.resolved) && m(process.env.NODE_ENV !== \"production\" ? \"timeout (\".concat(u.timeout, \"ms)\") : null);\n }, u.timeout)))), a = !1, e.loading ? e.loadingComp : e.resolved;\n }\n}\nfunction Zi(e) {\n if (b(e))\n for (var t = 0; t < e.length; t++) {\n var s = e[t];\n if (f(s) && (f(s.componentOptions) || Ct(s)))\n return s;\n }\n}\nvar ou = 1, Xi = 2;\nfunction os(e, t, s, n, a, i) {\n return (b(s) || _e(s)) && (a = n, n = s, s = void 0), R(i) && (a = Xi), lu(e, t, s, n, a);\n}\nfunction lu(e, t, s, n, a) {\n if (f(s) && f(s.__ob__))\n return process.env.NODE_ENV !== \"production\" && v(\"Avoid using observed data object as vnode data: \".concat(JSON.stringify(s), `\n`) + \"Always create fresh vnode data objects in each render!\", e), He();\n if (f(s) && f(s.is) && (t = s.is), !t)\n return He();\n process.env.NODE_ENV !== \"production\" && f(s) && f(s.key) && !_e(s.key) && v(\"Avoid using non-primitive value as key, use string/number value instead.\", e), b(n) && $(n[0]) && (s = s || {}, s.scopedSlots = { default: n[0] }, n.length = 0), a === Xi ? n = _n(n) : a === ou && (n = Rl(n));\n var i, r;\n if (typeof t == \"string\") {\n var o = void 0;\n r = e.$vnode && e.$vnode.ns || U.getTagNamespace(t), U.isReservedTag(t) ? (process.env.NODE_ENV !== \"production\" && f(s) && f(s.nativeOn) && s.tag !== \"component\" && v(\"The .native modifier for v-on is only valid on components but it was used on <\".concat(t, \">.\"), e), i = new J(U.parsePlatformTagName(t), s, n, void 0, void 0, e)) : (!s || !s.pre) && f(o = ms(e.$options, \"components\", t)) ? i = ya(o, s, e, n, t) : i = new J(t, s, n, void 0, void 0, e);\n } else\n i = ya(t, s, e, n);\n return b(i) ? i : f(i) ? (f(r) && Qi(i, r), f(s) && uu(s), i) : He();\n}\nfunction Qi(e, t, s) {\n if (e.ns = t, e.tag === \"foreignObject\" && (t = void 0, s = !0), f(e.children))\n for (var n = 0, a = e.children.length; n < a; n++) {\n var i = e.children[n];\n f(i.tag) && (L(i.ns) || R(s) && i.tag !== \"svg\") && Qi(i, t, s);\n }\n}\nfunction uu(e) {\n W(e.style) && ls(e.style), W(e.class) && ls(e.class);\n}\nfunction Pe(e, t, s) {\n mt();\n try {\n if (t)\n for (var n = t; n = n.$parent; ) {\n var a = n.$options.errorCaptured;\n if (a)\n for (var i = 0; i < a.length; i++)\n try {\n var r = a[i].call(n, e, t, s) === !1;\n if (r)\n return;\n } catch (o) {\n fa(o, n, \"errorCaptured hook\");\n }\n }\n fa(e, t, s);\n } finally {\n ct();\n }\n}\nfunction Ue(e, t, s, n, a) {\n var i;\n try {\n i = s ? e.apply(t, s) : e.call(t), i && !i._isVue && Ws(i) && !i._handled && (i.catch(function(r) {\n return Pe(r, n, a + \" (Promise/async)\");\n }), i._handled = !0);\n } catch (r) {\n Pe(r, n, a);\n }\n return i;\n}\nfunction fa(e, t, s) {\n if (U.errorHandler)\n try {\n return U.errorHandler.call(null, e, t, s);\n } catch (n) {\n n !== e && ga(n, null, \"config.errorHandler\");\n }\n ga(e, t, s);\n}\nfunction ga(e, t, s) {\n if (process.env.NODE_ENV !== \"production\" && v(\"Error in \".concat(s, ': \"').concat(e.toString(), '\"'), t), Y && typeof console < \"u\")\n console.error(e);\n else\n throw e;\n}\nvar Xs = !1, Qs = [], en = !1;\nfunction Rt() {\n en = !1;\n var e = Qs.slice(0);\n Qs.length = 0;\n for (var t = 0; t < e.length; t++)\n e[t]();\n}\nvar Tt;\nif (typeof Promise < \"u\" && Me(Promise)) {\n var mu = Promise.resolve();\n Tt = function() {\n mu.then(Rt), Sl && setTimeout(z);\n }, Xs = !0;\n} else if (!lt && typeof MutationObserver < \"u\" && (Me(MutationObserver) || // PhantomJS and iOS 7.x\nMutationObserver.toString() === \"[object MutationObserverConstructor]\")) {\n var It = 1, cu = new MutationObserver(Rt), pa = document.createTextNode(String(It));\n cu.observe(pa, {\n characterData: !0\n }), Tt = function() {\n It = (It + 1) % 2, pa.data = String(It);\n }, Xs = !0;\n} else\n typeof setImmediate < \"u\" && Me(setImmediate) ? Tt = function() {\n setImmediate(Rt);\n } : Tt = function() {\n setTimeout(Rt, 0);\n };\nfunction Ln(e, t) {\n var s;\n if (Qs.push(function() {\n if (e)\n try {\n e.call(t);\n } catch (n) {\n Pe(n, t, \"nextTick\");\n }\n else\n s && s(t);\n }), en || (en = !0, Tt()), !e && typeof Promise < \"u\")\n return new Promise(function(n) {\n s = n;\n });\n}\nvar du = \"2.7.15\", ha = new _t();\nfunction ls(e) {\n return Zt(e, ha), ha.clear(), e;\n}\nfunction Zt(e, t) {\n var s, n, a = b(e);\n if (!(!a && !W(e) || e.__v_skip || Object.isFrozen(e) || e instanceof J)) {\n if (e.__ob__) {\n var i = e.__ob__.dep.id;\n if (t.has(i))\n return;\n t.add(i);\n }\n if (a)\n for (s = e.length; s--; )\n Zt(e[s], t);\n else if (de(e))\n Zt(e.value, t);\n else\n for (n = Object.keys(e), s = n.length; s--; )\n Zt(e[n[s]], t);\n }\n}\nvar fu = 0, bn = (\n /** @class */\n function() {\n function e(t, s, n, a, i) {\n Bl(\n this,\n // if the active effect scope is manually created (not a component scope),\n // prioritize it\n K && !K._vm ? K : t ? t._scope : void 0\n ), (this.vm = t) && i && (t._watcher = this), a ? (this.deep = !!a.deep, this.user = !!a.user, this.lazy = !!a.lazy, this.sync = !!a.sync, this.before = a.before, process.env.NODE_ENV !== \"production\" && (this.onTrack = a.onTrack, this.onTrigger = a.onTrigger)) : this.deep = this.user = this.lazy = this.sync = !1, this.cb = n, this.id = ++fu, this.active = !0, this.post = !1, this.dirty = this.lazy, this.deps = [], this.newDeps = [], this.depIds = new _t(), this.newDepIds = new _t(), this.expression = process.env.NODE_ENV !== \"production\" ? s.toString() : \"\", $(s) ? this.getter = s : (this.getter = bl(s), this.getter || (this.getter = z, process.env.NODE_ENV !== \"production\" && v('Failed watching path: \"'.concat(s, '\" ') + \"Watcher only accepts simple dot-delimited paths. For full control, use a function instead.\", t))), this.value = this.lazy ? void 0 : this.get();\n }\n return e.prototype.get = function() {\n mt(this);\n var t, s = this.vm;\n try {\n t = this.getter.call(s, s);\n } catch (n) {\n if (this.user)\n Pe(n, s, 'getter for watcher \"'.concat(this.expression, '\"'));\n else\n throw n;\n } finally {\n this.deep && ls(t), ct(), this.cleanupDeps();\n }\n return t;\n }, e.prototype.addDep = function(t) {\n var s = t.id;\n this.newDepIds.has(s) || (this.newDepIds.add(s), this.newDeps.push(t), this.depIds.has(s) || t.addSub(this));\n }, e.prototype.cleanupDeps = function() {\n for (var t = this.deps.length; t--; ) {\n var s = this.deps[t];\n this.newDepIds.has(s.id) || s.removeSub(this);\n }\n var n = this.depIds;\n this.depIds = this.newDepIds, this.newDepIds = n, this.newDepIds.clear(), n = this.deps, this.deps = this.newDeps, this.newDeps = n, this.newDeps.length = 0;\n }, e.prototype.update = function() {\n this.lazy ? this.dirty = !0 : this.sync ? this.run() : Fu(this);\n }, e.prototype.run = function() {\n if (this.active) {\n var t = this.get();\n if (t !== this.value || // Deep watchers and watchers on Object/Arrays should fire even\n // when the value is the same, because the value may\n // have mutated.\n W(t) || this.deep) {\n var s = this.value;\n if (this.value = t, this.user) {\n var n = 'callback for watcher \"'.concat(this.expression, '\"');\n Ue(this.cb, this.vm, [t, s], this.vm, n);\n } else\n this.cb.call(this.vm, t, s);\n }\n }\n }, e.prototype.evaluate = function() {\n this.value = this.get(), this.dirty = !1;\n }, e.prototype.depend = function() {\n for (var t = this.deps.length; t--; )\n this.deps[t].depend();\n }, e.prototype.teardown = function() {\n if (this.vm && !this.vm._isBeingDestroyed && Oe(this.vm._scope.effects, this), this.active) {\n for (var t = this.deps.length; t--; )\n this.deps[t].removeSub(this);\n this.active = !1, this.onStop && this.onStop();\n }\n }, e;\n }()\n), me, us;\nif (process.env.NODE_ENV !== \"production\") {\n var he = Y && window.performance;\n he && // @ts-ignore\n he.mark && // @ts-ignore\n he.measure && // @ts-ignore\n he.clearMarks && // @ts-ignore\n he.clearMeasures && (me = function(e) {\n return he.mark(e);\n }, us = function(e, t, s) {\n he.measure(e, t, s), he.clearMarks(t), he.clearMarks(s);\n });\n}\nfunction gu(e) {\n e._events = /* @__PURE__ */ Object.create(null), e._hasHookEvent = !1;\n var t = e.$options._parentListeners;\n t && er(e, t);\n}\nvar Lt;\nfunction pu(e, t) {\n Lt.$on(e, t);\n}\nfunction hu(e, t) {\n Lt.$off(e, t);\n}\nfunction Tu(e, t) {\n var s = Lt;\n return function n() {\n var a = t.apply(null, arguments);\n a !== null && s.$off(e, n);\n };\n}\nfunction er(e, t, s) {\n Lt = e, Wi(t, s || {}, pu, hu, Tu, e), Lt = void 0;\n}\nfunction wu(e) {\n var t = /^hook:/;\n e.prototype.$on = function(s, n) {\n var a = this;\n if (b(s))\n for (var i = 0, r = s.length; i < r; i++)\n a.$on(s[i], n);\n else\n (a._events[s] || (a._events[s] = [])).push(n), t.test(s) && (a._hasHookEvent = !0);\n return a;\n }, e.prototype.$once = function(s, n) {\n var a = this;\n function i() {\n a.$off(s, i), n.apply(a, arguments);\n }\n return i.fn = n, a.$on(s, i), a;\n }, e.prototype.$off = function(s, n) {\n var a = this;\n if (!arguments.length)\n return a._events = /* @__PURE__ */ Object.create(null), a;\n if (b(s)) {\n for (var i = 0, r = s.length; i < r; i++)\n a.$off(s[i], n);\n return a;\n }\n var o = a._events[s];\n if (!o)\n return a;\n if (!n)\n return a._events[s] = null, a;\n for (var l, m = o.length; m--; )\n if (l = o[m], l === n || l.fn === n) {\n o.splice(m, 1);\n break;\n }\n return a;\n }, e.prototype.$emit = function(s) {\n var n = this;\n if (process.env.NODE_ENV !== \"production\") {\n var a = s.toLowerCase();\n a !== s && n._events[a] && Nn('Event \"'.concat(a, '\" is emitted in component ') + \"\".concat(ze(n), ' but the handler is registered for \"').concat(s, '\". ') + \"Note that HTML attributes are case-insensitive and you cannot use v-on to listen to camelCase events when using in-DOM templates. \" + 'You should probably use \"'.concat(Ye(s), '\" instead of \"').concat(s, '\".'));\n }\n var i = n._events[s];\n if (i) {\n i = i.length > 1 ? qs(i) : i;\n for (var r = qs(arguments, 1), o = 'event handler for \"'.concat(s, '\"'), l = 0, m = i.length; l < m; l++)\n Ue(i[l], n, r, n, o);\n }\n return n;\n };\n}\nvar Ve = null, bt = !1;\nfunction tr(e) {\n var t = Ve;\n return Ve = e, function() {\n Ve = t;\n };\n}\nfunction vu(e) {\n var t = e.$options, s = t.parent;\n if (s && !t.abstract) {\n for (; s.$options.abstract && s.$parent; )\n s = s.$parent;\n s.$children.push(e);\n }\n e.$parent = s, e.$root = s ? s.$root : e, e.$children = [], e.$refs = {}, e._provided = s ? s._provided : /* @__PURE__ */ Object.create(null), e._watcher = null, e._inactive = null, e._directInactive = !1, e._isMounted = !1, e._isDestroyed = !1, e._isBeingDestroyed = !1;\n}\nfunction xu(e) {\n e.prototype._update = function(t, s) {\n var n = this, a = n.$el, i = n._vnode, r = tr(n);\n n._vnode = t, i ? n.$el = n.__patch__(i, t) : n.$el = n.__patch__(\n n.$el,\n t,\n s,\n !1\n /* removeOnly */\n ), r(), a && (a.__vue__ = null), n.$el && (n.$el.__vue__ = n);\n for (var o = n; o && o.$vnode && o.$parent && o.$vnode === o.$parent._vnode; )\n o.$parent.$el = o.$el, o = o.$parent;\n }, e.prototype.$forceUpdate = function() {\n var t = this;\n t._watcher && t._watcher.update();\n }, e.prototype.$destroy = function() {\n var t = this;\n if (!t._isBeingDestroyed) {\n Z(t, \"beforeDestroy\"), t._isBeingDestroyed = !0;\n var s = t.$parent;\n s && !s._isBeingDestroyed && !t.$options.abstract && Oe(s.$children, t), t._scope.stop(), t._data.__ob__ && t._data.__ob__.vmCount--, t._isDestroyed = !0, t.__patch__(t._vnode, null), Z(t, \"destroyed\"), t.$off(), t.$el && (t.$el.__vue__ = null), t.$vnode && (t.$vnode.parent = null);\n }\n };\n}\nfunction yu(e, t, s) {\n e.$el = t, e.$options.render || (e.$options.render = He, process.env.NODE_ENV !== \"production\" && (e.$options.template && e.$options.template.charAt(0) !== \"#\" || e.$options.el || t ? v(\"You are using the runtime-only build of Vue where the template compiler is not available. Either pre-compile the templates into render functions, or use the compiler-included build.\", e) : v(\"Failed to mount component: template or render function not defined.\", e))), Z(e, \"beforeMount\");\n var n;\n process.env.NODE_ENV !== \"production\" && U.performance && me ? n = function() {\n var o = e._name, l = e._uid, m = \"vue-perf-start:\".concat(l), u = \"vue-perf-end:\".concat(l);\n me(m);\n var g = e._render();\n me(u), us(\"vue \".concat(o, \" render\"), m, u), me(m), e._update(g, s), me(u), us(\"vue \".concat(o, \" patch\"), m, u);\n } : n = function() {\n e._update(e._render(), s);\n };\n var a = {\n before: function() {\n e._isMounted && !e._isDestroyed && Z(e, \"beforeUpdate\");\n }\n };\n process.env.NODE_ENV !== \"production\" && (a.onTrack = function(o) {\n return Z(e, \"renderTracked\", [o]);\n }, a.onTrigger = function(o) {\n return Z(e, \"renderTriggered\", [o]);\n }), new bn(\n e,\n n,\n z,\n a,\n !0\n /* isRenderWatcher */\n ), s = !1;\n var i = e._preWatchers;\n if (i)\n for (var r = 0; r < i.length; r++)\n i[r].run();\n return e.$vnode == null && (e._isMounted = !0, Z(e, \"mounted\")), e;\n}\nfunction _u(e, t, s, n, a) {\n process.env.NODE_ENV !== \"production\" && (bt = !0);\n var i = n.data.scopedSlots, r = e.$scopedSlots, o = !!(i && !i.$stable || r !== q && !r.$stable || i && e.$scopedSlots.$key !== i.$key || !i && e.$scopedSlots.$key), l = !!(a || // has new static slots\n e.$options._renderChildren || // has old static slots\n o), m = e.$vnode;\n e.$options._parentVnode = n, e.$vnode = n, e._vnode && (e._vnode.parent = n), e.$options._renderChildren = a;\n var u = n.data.attrs || q;\n e._attrsProxy && rs(e._attrsProxy, u, m.data && m.data.attrs || q, e, \"$attrs\") && (l = !0), e.$attrs = u, s = s || q;\n var g = e.$options._parentListeners;\n if (e._listenersProxy && rs(e._listenersProxy, s, g || q, e, \"$listeners\"), e.$listeners = e.$options._parentListeners = s, er(e, s, g), t && e.$options.props) {\n Ne(!1);\n for (var w = e._props, y = e.$options._propKeys || [], T = 0; T < y.length; T++) {\n var _ = y[T], O = e.$options.props;\n w[_] = On(_, O, t, e);\n }\n Ne(!0), e.$options.propsData = t;\n }\n l && (e.$slots = Cn(a, n.context), e.$forceUpdate()), process.env.NODE_ENV !== \"production\" && (bt = !1);\n}\nfunction sr(e) {\n for (; e && (e = e.$parent); )\n if (e._inactive)\n return !0;\n return !1;\n}\nfunction kn(e, t) {\n if (t) {\n if (e._directInactive = !1, sr(e))\n return;\n } else if (e._directInactive)\n return;\n if (e._inactive || e._inactive === null) {\n e._inactive = !1;\n for (var s = 0; s < e.$children.length; s++)\n kn(e.$children[s]);\n Z(e, \"activated\");\n }\n}\nfunction nr(e, t) {\n if (!(t && (e._directInactive = !0, sr(e))) && !e._inactive) {\n e._inactive = !0;\n for (var s = 0; s < e.$children.length; s++)\n nr(e.$children[s]);\n Z(e, \"deactivated\");\n }\n}\nfunction Z(e, t, s, n) {\n n === void 0 && (n = !0), mt();\n var a = at, i = jl();\n n && Ae(e);\n var r = e.$options[t], o = \"\".concat(t, \" hook\");\n if (r)\n for (var l = 0, m = r.length; l < m; l++)\n Ue(r[l], e, s || null, e, o);\n e._hasHookEvent && e.$emit(\"hook:\" + t), n && (Ae(a), i && i.on()), ct();\n}\nvar Cu = 100, we = [], Sn = [], kt = {}, Xt = {}, tn = !1, En = !1, st = 0;\nfunction Lu() {\n st = we.length = Sn.length = 0, kt = {}, process.env.NODE_ENV !== \"production\" && (Xt = {}), tn = En = !1;\n}\nvar ar = 0, sn = Date.now;\nif (Y && !lt) {\n var Ns = window.performance;\n Ns && typeof Ns.now == \"function\" && sn() > document.createEvent(\"Event\").timeStamp && (sn = function() {\n return Ns.now();\n });\n}\nvar bu = function(e, t) {\n if (e.post) {\n if (!t.post)\n return 1;\n } else if (t.post)\n return -1;\n return e.id - t.id;\n};\nfunction Ta() {\n ar = sn(), En = !0;\n var e, t;\n for (we.sort(bu), st = 0; st < we.length; st++)\n if (e = we[st], e.before && e.before(), t = e.id, kt[t] = null, e.run(), process.env.NODE_ENV !== \"production\" && kt[t] != null && (Xt[t] = (Xt[t] || 0) + 1, Xt[t] > Cu)) {\n v(\"You may have an infinite update loop \" + (e.user ? 'in watcher with expression \"'.concat(e.expression, '\"') : \"in a component render function.\"), e.vm);\n break;\n }\n var s = Sn.slice(), n = we.slice();\n Lu(), Eu(s), ku(n), Fl(), ns && U.devtools && ns.emit(\"flush\");\n}\nfunction ku(e) {\n for (var t = e.length; t--; ) {\n var s = e[t], n = s.vm;\n n && n._watcher === s && n._isMounted && !n._isDestroyed && Z(n, \"updated\");\n }\n}\nfunction Su(e) {\n e._inactive = !1, Sn.push(e);\n}\nfunction Eu(e) {\n for (var t = 0; t < e.length; t++)\n e[t]._inactive = !0, kn(\n e[t],\n !0\n /* true */\n );\n}\nfunction Fu(e) {\n var t = e.id;\n if (kt[t] == null && !(e === re.target && e.noRecurse)) {\n if (kt[t] = !0, !En)\n we.push(e);\n else {\n for (var s = we.length - 1; s > st && we[s].id > e.id; )\n s--;\n we.splice(s + 1, 0, e);\n }\n if (!tn) {\n if (tn = !0, process.env.NODE_ENV !== \"production\" && !U.async) {\n Ta();\n return;\n }\n Ln(Ta);\n }\n }\n}\nfunction Au(e) {\n var t = e.$options.provide;\n if (t) {\n var s = $(t) ? t.call(e) : t;\n if (!W(s))\n return;\n for (var n = Dl(e), a = Ut ? Reflect.ownKeys(s) : Object.keys(s), i = 0; i < a.length; i++) {\n var r = a[i];\n Object.defineProperty(n, r, Object.getOwnPropertyDescriptor(s, r));\n }\n }\n}\nfunction Nu(e) {\n var t = ir(e.$options.inject, e);\n t && (Ne(!1), Object.keys(t).forEach(function(s) {\n process.env.NODE_ENV !== \"production\" ? oe(e, s, t[s], function() {\n v(\"Avoid mutating an injected value directly since the changes will be overwritten whenever the provided component re-renders. \" + 'injection being mutated: \"'.concat(s, '\"'), e);\n }) : oe(e, s, t[s]);\n }), Ne(!0));\n}\nfunction ir(e, t) {\n if (e) {\n for (var s = /* @__PURE__ */ Object.create(null), n = Ut ? Reflect.ownKeys(e) : Object.keys(e), a = 0; a < n.length; a++) {\n var i = n[a];\n if (i !== \"__ob__\") {\n var r = e[i].from;\n if (r in t._provided)\n s[i] = t._provided[r];\n else if (\"default\" in e[i]) {\n var o = e[i].default;\n s[i] = $(o) ? o.call(t) : o;\n } else\n process.env.NODE_ENV !== \"production\" && v('Injection \"'.concat(i, '\" not found'), t);\n }\n }\n return s;\n }\n}\nfunction Fn(e, t, s, n, a) {\n var i = this, r = a.options, o;\n V(n, \"_uid\") ? (o = Object.create(n), o._original = n) : (o = n, n = n._original);\n var l = R(r._compiled), m = !l;\n this.data = e, this.props = t, this.children = s, this.parent = n, this.listeners = e.on || q, this.injections = ir(r.inject, n), this.slots = function() {\n return i.$slots || vt(n, e.scopedSlots, i.$slots = Cn(s, n)), i.$slots;\n }, Object.defineProperty(this, \"scopedSlots\", {\n enumerable: !0,\n get: function() {\n return vt(n, e.scopedSlots, this.slots());\n }\n }), l && (this.$options = r, this.$slots = this.slots(), this.$scopedSlots = vt(n, e.scopedSlots, this.$slots)), r._scopeId ? this._c = function(u, g, w, y) {\n var T = os(o, u, g, w, y, m);\n return T && !b(T) && (T.fnScopeId = r._scopeId, T.fnContext = n), T;\n } : this._c = function(u, g, w, y) {\n return os(o, u, g, w, y, m);\n };\n}\nJi(Fn.prototype);\nfunction Pu(e, t, s, n, a) {\n var i = e.options, r = {}, o = i.props;\n if (f(o))\n for (var l in o)\n r[l] = On(l, o, t || q);\n else\n f(s.attrs) && va(r, s.attrs), f(s.props) && va(r, s.props);\n var m = new Fn(s, r, a, n, e), u = i.render.call(null, m._c, m);\n if (u instanceof J)\n return wa(u, s, m.parent, i, m);\n if (b(u)) {\n for (var g = _n(u) || [], w = new Array(g.length), y = 0; y < g.length; y++)\n w[y] = wa(g[y], s, m.parent, i, m);\n return w;\n }\n}\nfunction wa(e, t, s, n, a) {\n var i = Ks(e);\n return i.fnContext = s, i.fnOptions = n, process.env.NODE_ENV !== \"production\" && ((i.devtoolsMeta = i.devtoolsMeta || {}).renderContext = a), t.slot && ((i.data || (i.data = {})).slot = t.slot), i;\n}\nfunction va(e, t) {\n for (var s in t)\n e[qe(s)] = t[s];\n}\nfunction rt(e) {\n return e.name || e.__name || e._componentTag;\n}\nvar An = {\n init: function(e, t) {\n if (e.componentInstance && !e.componentInstance._isDestroyed && e.data.keepAlive) {\n var s = e;\n An.prepatch(s, s);\n } else {\n var n = e.componentInstance = Uu(e, Ve);\n n.$mount(t ? e.elm : void 0, t);\n }\n },\n prepatch: function(e, t) {\n var s = t.componentOptions, n = t.componentInstance = e.componentInstance;\n _u(\n n,\n s.propsData,\n // updated props\n s.listeners,\n // updated listeners\n t,\n // new parent vnode\n s.children\n // new children\n );\n },\n insert: function(e) {\n var t = e.context, s = e.componentInstance;\n s._isMounted || (s._isMounted = !0, Z(s, \"mounted\")), e.data.keepAlive && (t._isMounted ? Su(s) : kn(\n s,\n !0\n /* direct */\n ));\n },\n destroy: function(e) {\n var t = e.componentInstance;\n t._isDestroyed || (e.data.keepAlive ? nr(\n t,\n !0\n /* direct */\n ) : t.$destroy());\n }\n}, xa = Object.keys(An);\nfunction ya(e, t, s, n, a) {\n if (!L(e)) {\n var i = s.$options._base;\n if (W(e) && (e = i.extend(e)), typeof e != \"function\") {\n process.env.NODE_ENV !== \"production\" && v(\"Invalid Component definition: \".concat(String(e)), s);\n return;\n }\n var r;\n if (L(e.cid) && (r = e, e = ru(r, i), e === void 0))\n return iu(r, t, s, n, a);\n t = t || {}, jn(e), f(t.model) && ju(e.options, t);\n var o = $l(t, e, a);\n if (R(e.options.functional))\n return Pu(e, o, t, s, n);\n var l = t.on;\n if (t.on = t.nativeOn, R(e.options.abstract)) {\n var m = t.slot;\n t = {}, m && (t.slot = m);\n }\n Ou(t);\n var u = rt(e.options) || a, g = new J(\n // @ts-expect-error\n \"vue-component-\".concat(e.cid).concat(u ? \"-\".concat(u) : \"\"),\n t,\n void 0,\n void 0,\n void 0,\n s,\n // @ts-expect-error\n { Ctor: e, propsData: o, listeners: l, tag: a, children: n },\n r\n );\n return g;\n }\n}\nfunction Uu(e, t) {\n var s = {\n _isComponent: !0,\n _parentVnode: e,\n parent: t\n }, n = e.data.inlineTemplate;\n return f(n) && (s.render = n.render, s.staticRenderFns = n.staticRenderFns), new e.componentOptions.Ctor(s);\n}\nfunction Ou(e) {\n for (var t = e.hook || (e.hook = {}), s = 0; s < xa.length; s++) {\n var n = xa[s], a = t[n], i = An[n];\n a !== i && !(a && a._merged) && (t[n] = a ? Bu(i, a) : i);\n }\n}\nfunction Bu(e, t) {\n var s = function(n, a) {\n e(n, a), t(n, a);\n };\n return s._merged = !0, s;\n}\nfunction ju(e, t) {\n var s = e.model && e.model.prop || \"value\", n = e.model && e.model.event || \"input\";\n (t.attrs || (t.attrs = {}))[s] = t.model.value;\n var a = t.on || (t.on = {}), i = a[n], r = t.model.callback;\n f(i) ? (b(i) ? i.indexOf(r) === -1 : i !== r) && (a[n] = [r].concat(i)) : a[n] = r;\n}\nvar v = z, Nn = z, Ps, ze;\nif (process.env.NODE_ENV !== \"production\") {\n var _a = typeof console < \"u\", Du = /(?:^|[-_])(\\w)/g, $u = function(e) {\n return e.replace(Du, function(t) {\n return t.toUpperCase();\n }).replace(/[-_]/g, \"\");\n };\n v = function(e, t) {\n t === void 0 && (t = at);\n var s = t ? Ps(t) : \"\";\n U.warnHandler ? U.warnHandler.call(null, e, t, s) : _a && !U.silent && console.error(\"[Vue warn]: \".concat(e).concat(s));\n }, Nn = function(e, t) {\n _a && !U.silent && console.warn(\"[Vue tip]: \".concat(e) + (t ? Ps(t) : \"\"));\n }, ze = function(e, t) {\n if (e.$root === e)\n return \"\";\n var s = $(e) && e.cid != null ? e.options : e._isVue ? e.$options || e.constructor.options : e, n = rt(s), a = s.__file;\n if (!n && a) {\n var i = a.match(/([^/\\\\]+)\\.vue$/);\n n = i && i[1];\n }\n return (n ? \"<\".concat($u(n), \">\") : \"\") + (a && t !== !1 ? \" at \".concat(a) : \"\");\n };\n var Ru = function(e, t) {\n for (var s = \"\"; t; )\n t % 2 === 1 && (s += e), t > 1 && (e += e), t >>= 1;\n return s;\n };\n Ps = function(e) {\n if (e._isVue && e.$parent) {\n for (var t = [], s = 0; e; ) {\n if (t.length > 0) {\n var n = t[t.length - 1];\n if (n.constructor === e.constructor) {\n s++, e = e.$parent;\n continue;\n } else\n s > 0 && (t[t.length - 1] = [n, s], s = 0);\n }\n t.push(e), e = e.$parent;\n }\n return `\n\nfound in\n\n` + t.map(function(a, i) {\n return \"\".concat(i === 0 ? \"---> \" : Ru(\" \", 5 + i * 2)).concat(b(a) ? \"\".concat(ze(a[0]), \"... (\").concat(a[1], \" recursive calls)\") : ze(a));\n }).join(`\n`);\n } else\n return `\n\n(found in `.concat(ze(e), \")\");\n };\n}\nvar te = U.optionMergeStrategies;\nprocess.env.NODE_ENV !== \"production\" && (te.el = te.propsData = function(e, t, s, n) {\n return s || v('option \"'.concat(n, '\" can only be used during instance ') + \"creation with the `new` keyword.\"), rr(e, t);\n});\nfunction St(e, t, s) {\n if (s === void 0 && (s = !0), !t)\n return e;\n for (var n, a, i, r = Ut ? Reflect.ownKeys(t) : Object.keys(t), o = 0; o < r.length; o++)\n n = r[o], n !== \"__ob__\" && (a = e[n], i = t[n], !s || !V(e, n) ? xn(e, n, i) : a !== i && G(a) && G(i) && St(a, i));\n return e;\n}\nfunction Ca(e, t, s) {\n return s ? function() {\n var a = $(t) ? t.call(s, s) : t, i = $(e) ? e.call(s, s) : e;\n return a ? St(a, i) : i;\n } : t ? e ? function() {\n return St($(t) ? t.call(this, this) : t, $(e) ? e.call(this, this) : e);\n } : t : e;\n}\nte.data = function(e, t, s) {\n return s ? Ca(e, t, s) : t && typeof t != \"function\" ? (process.env.NODE_ENV !== \"production\" && v('The \"data\" option should be a function that returns a per-instance value in component definitions.', s), e) : Ca(e, t);\n};\nfunction Iu(e, t) {\n var s = t ? e ? e.concat(t) : b(t) ? t : [t] : e;\n return s && zu(s);\n}\nfunction zu(e) {\n for (var t = [], s = 0; s < e.length; s++)\n t.indexOf(e[s]) === -1 && t.push(e[s]);\n return t;\n}\nji.forEach(function(e) {\n te[e] = Iu;\n});\nfunction Mu(e, t, s, n) {\n var a = Object.create(e || null);\n return t ? (process.env.NODE_ENV !== \"production\" && Un(n, t, s), j(a, t)) : a;\n}\n_s.forEach(function(e) {\n te[e + \"s\"] = Mu;\n});\nte.watch = function(e, t, s, n) {\n if (e === Gs && (e = void 0), t === Gs && (t = void 0), !t)\n return Object.create(e || null);\n if (process.env.NODE_ENV !== \"production\" && Un(n, t, s), !e)\n return t;\n var a = {};\n j(a, e);\n for (var i in t) {\n var r = a[i], o = t[i];\n r && !b(r) && (r = [r]), a[i] = r ? r.concat(o) : b(o) ? o : [o];\n }\n return a;\n};\nte.props = te.methods = te.inject = te.computed = function(e, t, s, n) {\n if (t && process.env.NODE_ENV !== \"production\" && Un(n, t, s), !e)\n return t;\n var a = /* @__PURE__ */ Object.create(null);\n return j(a, e), t && j(a, t), a;\n};\nte.provide = function(e, t) {\n return e ? function() {\n var s = /* @__PURE__ */ Object.create(null);\n return St(s, $(e) ? e.call(this) : e), t && St(\n s,\n $(t) ? t.call(this) : t,\n !1\n // non-recursive\n ), s;\n } : t;\n};\nvar rr = function(e, t) {\n return t === void 0 ? e : t;\n};\nfunction Hu(e) {\n for (var t in e.components)\n Pn(t);\n}\nfunction Pn(e) {\n new RegExp(\"^[a-zA-Z][\\\\-\\\\.0-9_\".concat(Di.source, \"]*$\")).test(e) || v('Invalid component name: \"' + e + '\". Component names should conform to valid custom element name in html5 specification.'), (Tl(e) || U.isReservedTag(e)) && v(\"Do not use built-in or reserved HTML elements as component id: \" + e);\n}\nfunction Vu(e, t) {\n var s = e.props;\n if (s) {\n var n = {}, a, i, r;\n if (b(s))\n for (a = s.length; a--; )\n i = s[a], typeof i == \"string\" ? (r = qe(i), n[r] = { type: null }) : process.env.NODE_ENV !== \"production\" && v(\"props must be strings when using array syntax.\");\n else if (G(s))\n for (var o in s)\n i = s[o], r = qe(o), n[r] = G(i) ? i : { type: i };\n else\n process.env.NODE_ENV !== \"production\" && v('Invalid value for option \"props\": expected an Array or an Object, ' + \"but got \".concat(Nt(s), \".\"), t);\n e.props = n;\n }\n}\nfunction Wu(e, t) {\n var s = e.inject;\n if (s) {\n var n = e.inject = {};\n if (b(s))\n for (var a = 0; a < s.length; a++)\n n[s[a]] = { from: s[a] };\n else if (G(s))\n for (var i in s) {\n var r = s[i];\n n[i] = G(r) ? j({ from: i }, r) : { from: r };\n }\n else\n process.env.NODE_ENV !== \"production\" && v('Invalid value for option \"inject\": expected an Array or an Object, ' + \"but got \".concat(Nt(s), \".\"), t);\n }\n}\nfunction qu(e) {\n var t = e.directives;\n if (t)\n for (var s in t) {\n var n = t[s];\n $(n) && (t[s] = { bind: n, update: n });\n }\n}\nfunction Un(e, t, s) {\n G(t) || v('Invalid value for option \"'.concat(e, '\": expected an Object, ') + \"but got \".concat(Nt(t), \".\"), s);\n}\nfunction Ke(e, t, s) {\n if (process.env.NODE_ENV !== \"production\" && Hu(t), $(t) && (t = t.options), Vu(t, s), Wu(t, s), qu(t), !t._base && (t.extends && (e = Ke(e, t.extends, s)), t.mixins))\n for (var n = 0, a = t.mixins.length; n < a; n++)\n e = Ke(e, t.mixins[n], s);\n var i = {}, r;\n for (r in e)\n o(r);\n for (r in t)\n V(e, r) || o(r);\n function o(l) {\n var m = te[l] || rr;\n i[l] = m(e[l], t[l], s, l);\n }\n return i;\n}\nfunction ms(e, t, s, n) {\n if (typeof s == \"string\") {\n var a = e[t];\n if (V(a, s))\n return a[s];\n var i = qe(s);\n if (V(a, i))\n return a[i];\n var r = Ni(i);\n if (V(a, r))\n return a[r];\n var o = a[s] || a[i] || a[r];\n return process.env.NODE_ENV !== \"production\" && n && !o && v(\"Failed to resolve \" + t.slice(0, -1) + \": \" + s), o;\n }\n}\nfunction On(e, t, s, n) {\n var a = t[e], i = !V(s, e), r = s[e], o = ba(Boolean, a.type);\n if (o > -1) {\n if (i && !V(a, \"default\"))\n r = !1;\n else if (r === \"\" || r === Ye(e)) {\n var l = ba(String, a.type);\n (l < 0 || o < l) && (r = !0);\n }\n }\n if (r === void 0) {\n r = Gu(n, a, e);\n var m = vn;\n Ne(!0), ye(r), Ne(m);\n }\n return process.env.NODE_ENV !== \"production\" && Ku(a, e, r, n, i), r;\n}\nfunction Gu(e, t, s) {\n if (V(t, \"default\")) {\n var n = t.default;\n return process.env.NODE_ENV !== \"production\" && W(n) && v('Invalid default value for prop \"' + s + '\": Props with type Object/Array must use a factory function to return the default value.', e), e && e.$options.propsData && e.$options.propsData[s] === void 0 && e._props[s] !== void 0 ? e._props[s] : $(n) && cs(t.type) !== \"Function\" ? n.call(e) : n;\n }\n}\nfunction Ku(e, t, s, n, a) {\n if (e.required && a) {\n v('Missing required prop: \"' + t + '\"', n);\n return;\n }\n if (!(s == null && !e.required)) {\n var i = e.type, r = !i || i === !0, o = [];\n if (i) {\n b(i) || (i = [i]);\n for (var l = 0; l < i.length && !r; l++) {\n var m = Yu(s, i[l], n);\n o.push(m.expectedType || \"\"), r = m.valid;\n }\n }\n var u = o.some(function(w) {\n return w;\n });\n if (!r && u) {\n v(Xu(t, s, o), n);\n return;\n }\n var g = e.validator;\n g && (g(s) || v('Invalid prop: custom validator check failed for prop \"' + t + '\".', n));\n }\n}\nvar Ju = /^(String|Number|Boolean|Function|Symbol|BigInt)$/;\nfunction Yu(e, t, s) {\n var n, a = cs(t);\n if (Ju.test(a)) {\n var i = typeof e;\n n = i === a.toLowerCase(), !n && i === \"object\" && (n = e instanceof t);\n } else if (a === \"Object\")\n n = G(e);\n else if (a === \"Array\")\n n = b(e);\n else\n try {\n n = e instanceof t;\n } catch {\n v('Invalid prop type: \"' + String(t) + '\" is not a constructor', s), n = !1;\n }\n return {\n valid: n,\n expectedType: a\n };\n}\nvar Zu = /^\\s*function (\\w+)/;\nfunction cs(e) {\n var t = e && e.toString().match(Zu);\n return t ? t[1] : \"\";\n}\nfunction La(e, t) {\n return cs(e) === cs(t);\n}\nfunction ba(e, t) {\n if (!b(t))\n return La(t, e) ? 0 : -1;\n for (var s = 0, n = t.length; s < n; s++)\n if (La(t[s], e))\n return s;\n return -1;\n}\nfunction Xu(e, t, s) {\n var n = 'Invalid prop: type check failed for prop \"'.concat(e, '\".') + \" Expected \".concat(s.map(Ni).join(\", \")), a = s[0], i = Nt(t);\n return s.length === 1 && Us(a) && Us(typeof t) && !em(a, i) && (n += \" with value \".concat(ka(t, a))), n += \", got \".concat(i, \" \"), Us(i) && (n += \"with value \".concat(ka(t, i), \".\")), n;\n}\nfunction ka(e, t) {\n return t === \"String\" ? '\"'.concat(e, '\"') : t === \"Number\" ? \"\".concat(Number(e)) : \"\".concat(e);\n}\nvar Qu = [\"string\", \"number\", \"boolean\"];\nfunction Us(e) {\n return Qu.some(function(t) {\n return e.toLowerCase() === t;\n });\n}\nfunction em() {\n for (var e = [], t = 0; t < arguments.length; t++)\n e[t] = arguments[t];\n return e.some(function(s) {\n return s.toLowerCase() === \"boolean\";\n });\n}\nvar or;\nif (process.env.NODE_ENV !== \"production\") {\n var tm = X(\n \"Infinity,undefined,NaN,isFinite,isNaN,parseFloat,parseInt,decodeURI,decodeURIComponent,encodeURI,encodeURIComponent,Math,Number,Date,Array,Object,Boolean,String,RegExp,Map,Set,JSON,Intl,BigInt,require\"\n // for Webpack/Browserify\n ), Sa = function(e, t) {\n v('Property or method \"'.concat(t, '\" is not defined on the instance but ') + \"referenced during render. Make sure that this property is reactive, either in the data option, or for class-based components, by initializing the property. See: https://v2.vuejs.org/v2/guide/reactivity.html#Declaring-Reactive-Properties.\", e);\n }, Ea = function(e, t) {\n v('Property \"'.concat(t, '\" must be accessed with \"$data.').concat(t, '\" because ') + 'properties starting with \"$\" or \"_\" are not proxied in the Vue instance to prevent conflicts with Vue internals. See: https://v2.vuejs.org/v2/api/#data', e);\n }, Fa = typeof Proxy < \"u\" && Me(Proxy);\n if (Fa) {\n var sm = X(\"stop,prevent,self,ctrl,shift,alt,meta,exact\");\n U.keyCodes = new Proxy(U.keyCodes, {\n set: function(e, t, s) {\n return sm(t) ? (v(\"Avoid overwriting built-in modifier in config.keyCodes: .\".concat(t)), !1) : (e[t] = s, !0);\n }\n });\n }\n var nm = {\n has: function(e, t) {\n var s = t in e, n = tm(t) || typeof t == \"string\" && t.charAt(0) === \"_\" && !(t in e.$data);\n return !s && !n && (t in e.$data ? Ea(e, t) : Sa(e, t)), s || !n;\n }\n }, am = {\n get: function(e, t) {\n return typeof t == \"string\" && !(t in e) && (t in e.$data ? Ea(e, t) : Sa(e, t)), e[t];\n }\n };\n or = function(t) {\n if (Fa) {\n var s = t.$options, n = s.render && s.render._withStripped ? am : nm;\n t._renderProxy = new Proxy(t, n);\n } else\n t._renderProxy = t;\n };\n}\nvar le = {\n enumerable: !0,\n configurable: !0,\n get: z,\n set: z\n};\nfunction Bn(e, t, s) {\n le.get = function() {\n return this[t][s];\n }, le.set = function(a) {\n this[t][s] = a;\n }, Object.defineProperty(e, s, le);\n}\nfunction im(e) {\n var t = e.$options;\n if (t.props && rm(e, t.props), Ql(e), t.methods && cm(e, t.methods), t.data)\n om(e);\n else {\n var s = ye(e._data = {});\n s && s.vmCount++;\n }\n t.computed && mm(e, t.computed), t.watch && t.watch !== Gs && dm(e, t.watch);\n}\nfunction rm(e, t) {\n var s = e.$options.propsData || {}, n = e._props = Vi({}), a = e.$options._propKeys = [], i = !e.$parent;\n i || Ne(!1);\n var r = function(l) {\n a.push(l);\n var m = On(l, t, s, e);\n if (process.env.NODE_ENV !== \"production\") {\n var u = Ye(l);\n (Ai(u) || U.isReservedAttr(u)) && v('\"'.concat(u, '\" is a reserved attribute and cannot be used as component prop.'), e), oe(n, l, m, function() {\n !i && !bt && v(\"Avoid mutating a prop directly since the value will be overwritten whenever the parent component re-renders. Instead, use a data or computed property based on the prop's \" + 'value. Prop being mutated: \"'.concat(l, '\"'), e);\n });\n } else\n oe(n, l, m);\n l in e || Bn(e, \"_props\", l);\n };\n for (var o in t)\n r(o);\n Ne(!0);\n}\nfunction om(e) {\n var t = e.$options.data;\n t = e._data = $(t) ? lm(t, e) : t || {}, G(t) || (t = {}, process.env.NODE_ENV !== \"production\" && v(`data functions should return an object:\nhttps://v2.vuejs.org/v2/guide/components.html#data-Must-Be-a-Function`, e));\n for (var s = Object.keys(t), n = e.$options.props, a = e.$options.methods, i = s.length; i--; ) {\n var r = s[i];\n process.env.NODE_ENV !== \"production\" && a && V(a, r) && v('Method \"'.concat(r, '\" has already been defined as a data property.'), e), n && V(n, r) ? process.env.NODE_ENV !== \"production\" && v('The data property \"'.concat(r, '\" is already declared as a prop. ') + \"Use prop default value instead.\", e) : wn(r) || Bn(e, \"_data\", r);\n }\n var o = ye(t);\n o && o.vmCount++;\n}\nfunction lm(e, t) {\n mt();\n try {\n return e.call(t, t);\n } catch (s) {\n return Pe(s, t, \"data()\"), {};\n } finally {\n ct();\n }\n}\nvar um = { lazy: !0 };\nfunction mm(e, t) {\n var s = e._computedWatchers = /* @__PURE__ */ Object.create(null), n = Pt();\n for (var a in t) {\n var i = t[a], r = $(i) ? i : i.get;\n process.env.NODE_ENV !== \"production\" && r == null && v('Getter is missing for computed property \"'.concat(a, '\".'), e), n || (s[a] = new bn(e, r || z, z, um)), a in e ? process.env.NODE_ENV !== \"production\" && (a in e.$data ? v('The computed property \"'.concat(a, '\" is already defined in data.'), e) : e.$options.props && a in e.$options.props ? v('The computed property \"'.concat(a, '\" is already defined as a prop.'), e) : e.$options.methods && a in e.$options.methods && v('The computed property \"'.concat(a, '\" is already defined as a method.'), e)) : lr(e, a, i);\n }\n}\nfunction lr(e, t, s) {\n var n = !Pt();\n $(s) ? (le.get = n ? Aa(t) : Na(s), le.set = z) : (le.get = s.get ? n && s.cache !== !1 ? Aa(t) : Na(s.get) : z, le.set = s.set || z), process.env.NODE_ENV !== \"production\" && le.set === z && (le.set = function() {\n v('Computed property \"'.concat(t, '\" was assigned to but it has no setter.'), this);\n }), Object.defineProperty(e, t, le);\n}\nfunction Aa(e) {\n return function() {\n var s = this._computedWatchers && this._computedWatchers[e];\n if (s)\n return s.dirty && s.evaluate(), re.target && (process.env.NODE_ENV !== \"production\" && re.target.onTrack && re.target.onTrack({\n effect: re.target,\n target: this,\n type: \"get\",\n key: e\n }), s.depend()), s.value;\n };\n}\nfunction Na(e) {\n return function() {\n return e.call(this, this);\n };\n}\nfunction cm(e, t) {\n var s = e.$options.props;\n for (var n in t)\n process.env.NODE_ENV !== \"production\" && (typeof t[n] != \"function\" && v('Method \"'.concat(n, '\" has type \"').concat(typeof t[n], '\" in the component definition. ') + \"Did you reference the function correctly?\", e), s && V(s, n) && v('Method \"'.concat(n, '\" has already been defined as a prop.'), e), n in e && wn(n) && v('Method \"'.concat(n, '\" conflicts with an existing Vue instance method. ') + \"Avoid defining component methods that start with _ or $.\")), e[n] = typeof t[n] != \"function\" ? z : Pi(t[n], e);\n}\nfunction dm(e, t) {\n for (var s in t) {\n var n = t[s];\n if (b(n))\n for (var a = 0; a < n.length; a++)\n nn(e, s, n[a]);\n else\n nn(e, s, n);\n }\n}\nfunction nn(e, t, s, n) {\n return G(s) && (n = s, s = s.handler), typeof s == \"string\" && (s = e[s]), e.$watch(t, s, n);\n}\nfunction fm(e) {\n var t = {};\n t.get = function() {\n return this._data;\n };\n var s = {};\n s.get = function() {\n return this._props;\n }, process.env.NODE_ENV !== \"production\" && (t.set = function() {\n v(\"Avoid replacing instance root $data. Use nested data properties instead.\", this);\n }, s.set = function() {\n v(\"$props is readonly.\", this);\n }), Object.defineProperty(e.prototype, \"$data\", t), Object.defineProperty(e.prototype, \"$props\", s), e.prototype.$set = xn, e.prototype.$delete = Mi, e.prototype.$watch = function(n, a, i) {\n var r = this;\n if (G(a))\n return nn(r, n, a, i);\n i = i || {}, i.user = !0;\n var o = new bn(r, n, a, i);\n if (i.immediate) {\n var l = 'callback for immediate watcher \"'.concat(o.expression, '\"');\n mt(), Ue(a, r, [o.value], r, l), ct();\n }\n return function() {\n o.teardown();\n };\n };\n}\nvar gm = 0;\nfunction pm(e) {\n e.prototype._init = function(t) {\n var s = this;\n s._uid = gm++;\n var n, a;\n process.env.NODE_ENV !== \"production\" && U.performance && me && (n = \"vue-perf-start:\".concat(s._uid), a = \"vue-perf-end:\".concat(s._uid), me(n)), s._isVue = !0, s.__v_skip = !0, s._scope = new Ol(\n !0\n /* detached */\n ), s._scope._vm = !0, t && t._isComponent ? hm(s, t) : s.$options = Ke(jn(s.constructor), t || {}, s), process.env.NODE_ENV !== \"production\" ? or(s) : s._renderProxy = s, s._self = s, vu(s), gu(s), nu(s), Z(\n s,\n \"beforeCreate\",\n void 0,\n !1\n /* setContext */\n ), Nu(s), im(s), Au(s), Z(s, \"created\"), process.env.NODE_ENV !== \"production\" && U.performance && me && (s._name = ze(s, !1), me(a), us(\"vue \".concat(s._name, \" init\"), n, a)), s.$options.el && s.$mount(s.$options.el);\n };\n}\nfunction hm(e, t) {\n var s = e.$options = Object.create(e.constructor.options), n = t._parentVnode;\n s.parent = t.parent, s._parentVnode = n;\n var a = n.componentOptions;\n s.propsData = a.propsData, s._parentListeners = a.listeners, s._renderChildren = a.children, s._componentTag = a.tag, t.render && (s.render = t.render, s.staticRenderFns = t.staticRenderFns);\n}\nfunction jn(e) {\n var t = e.options;\n if (e.super) {\n var s = jn(e.super), n = e.superOptions;\n if (s !== n) {\n e.superOptions = s;\n var a = Tm(e);\n a && j(e.extendOptions, a), t = e.options = Ke(s, e.extendOptions), t.name && (t.components[t.name] = e);\n }\n }\n return t;\n}\nfunction Tm(e) {\n var t, s = e.options, n = e.sealedOptions;\n for (var a in s)\n s[a] !== n[a] && (t || (t = {}), t[a] = s[a]);\n return t;\n}\nfunction I(e) {\n process.env.NODE_ENV !== \"production\" && !(this instanceof I) && v(\"Vue is a constructor and should be called with the `new` keyword\"), this._init(e);\n}\npm(I);\nfm(I);\nwu(I);\nxu(I);\nau(I);\nfunction wm(e) {\n e.use = function(t) {\n var s = this._installedPlugins || (this._installedPlugins = []);\n if (s.indexOf(t) > -1)\n return this;\n var n = qs(arguments, 1);\n return n.unshift(this), $(t.install) ? t.install.apply(t, n) : $(t) && t.apply(null, n), s.push(t), this;\n };\n}\nfunction vm(e) {\n e.mixin = function(t) {\n return this.options = Ke(this.options, t), this;\n };\n}\nfunction xm(e) {\n e.cid = 0;\n var t = 1;\n e.extend = function(s) {\n s = s || {};\n var n = this, a = n.cid, i = s._Ctor || (s._Ctor = {});\n if (i[a])\n return i[a];\n var r = rt(s) || rt(n.options);\n process.env.NODE_ENV !== \"production\" && r && Pn(r);\n var o = function(m) {\n this._init(m);\n };\n return o.prototype = Object.create(n.prototype), o.prototype.constructor = o, o.cid = t++, o.options = Ke(n.options, s), o.super = n, o.options.props && ym(o), o.options.computed && _m(o), o.extend = n.extend, o.mixin = n.mixin, o.use = n.use, _s.forEach(function(l) {\n o[l] = n[l];\n }), r && (o.options.components[r] = o), o.superOptions = n.options, o.extendOptions = s, o.sealedOptions = j({}, o.options), i[a] = o, o;\n };\n}\nfunction ym(e) {\n var t = e.options.props;\n for (var s in t)\n Bn(e.prototype, \"_props\", s);\n}\nfunction _m(e) {\n var t = e.options.computed;\n for (var s in t)\n lr(e.prototype, s, t[s]);\n}\nfunction Cm(e) {\n _s.forEach(function(t) {\n e[t] = function(s, n) {\n return n ? (process.env.NODE_ENV !== \"production\" && t === \"component\" && Pn(s), t === \"component\" && G(n) && (n.name = n.name || s, n = this.options._base.extend(n)), t === \"directive\" && $(n) && (n = { bind: n, update: n }), this.options[t + \"s\"][s] = n, n) : this.options[t + \"s\"][s];\n };\n });\n}\nfunction Pa(e) {\n return e && (rt(e.Ctor.options) || e.tag);\n}\nfunction zt(e, t) {\n return b(e) ? e.indexOf(t) > -1 : typeof e == \"string\" ? e.split(\",\").indexOf(t) > -1 : Ei(e) ? e.test(t) : !1;\n}\nfunction Ua(e, t) {\n var s = e.cache, n = e.keys, a = e._vnode;\n for (var i in s) {\n var r = s[i];\n if (r) {\n var o = r.name;\n o && !t(o) && an(s, i, n, a);\n }\n }\n}\nfunction an(e, t, s, n) {\n var a = e[t];\n a && (!n || a.tag !== n.tag) && a.componentInstance.$destroy(), e[t] = null, Oe(s, t);\n}\nvar Oa = [String, RegExp, Array], Lm = {\n name: \"keep-alive\",\n abstract: !0,\n props: {\n include: Oa,\n exclude: Oa,\n max: [String, Number]\n },\n methods: {\n cacheVNode: function() {\n var e = this, t = e.cache, s = e.keys, n = e.vnodeToCache, a = e.keyToCache;\n if (n) {\n var i = n.tag, r = n.componentInstance, o = n.componentOptions;\n t[a] = {\n name: Pa(o),\n tag: i,\n componentInstance: r\n }, s.push(a), this.max && s.length > parseInt(this.max) && an(t, s[0], s, this._vnode), this.vnodeToCache = null;\n }\n }\n },\n created: function() {\n this.cache = /* @__PURE__ */ Object.create(null), this.keys = [];\n },\n destroyed: function() {\n for (var e in this.cache)\n an(this.cache, e, this.keys);\n },\n mounted: function() {\n var e = this;\n this.cacheVNode(), this.$watch(\"include\", function(t) {\n Ua(e, function(s) {\n return zt(t, s);\n });\n }), this.$watch(\"exclude\", function(t) {\n Ua(e, function(s) {\n return !zt(t, s);\n });\n });\n },\n updated: function() {\n this.cacheVNode();\n },\n render: function() {\n var e = this.$slots.default, t = Zi(e), s = t && t.componentOptions;\n if (s) {\n var n = Pa(s), a = this, i = a.include, r = a.exclude;\n if (\n // not included\n i && (!n || !zt(i, n)) || // excluded\n r && n && zt(r, n)\n )\n return t;\n var o = this, l = o.cache, m = o.keys, u = t.key == null ? (\n // same constructor may get registered as different local components\n // so cid alone is not enough (#3269)\n s.Ctor.cid + (s.tag ? \"::\".concat(s.tag) : \"\")\n ) : t.key;\n l[u] ? (t.componentInstance = l[u].componentInstance, Oe(m, u), m.push(u)) : (this.vnodeToCache = t, this.keyToCache = u), t.data.keepAlive = !0;\n }\n return t || e && e[0];\n }\n}, bm = {\n KeepAlive: Lm\n};\nfunction km(e) {\n var t = {};\n t.get = function() {\n return U;\n }, process.env.NODE_ENV !== \"production\" && (t.set = function() {\n v(\"Do not replace the Vue.config object, set individual fields instead.\");\n }), Object.defineProperty(e, \"config\", t), e.util = {\n warn: v,\n extend: j,\n mergeOptions: Ke,\n defineReactive: oe\n }, e.set = xn, e.delete = Mi, e.nextTick = Ln, e.observable = function(s) {\n return ye(s), s;\n }, e.options = /* @__PURE__ */ Object.create(null), _s.forEach(function(s) {\n e.options[s + \"s\"] = /* @__PURE__ */ Object.create(null);\n }), e.options._base = e, j(e.options.components, bm), wm(e), vm(e), xm(e), Cm(e);\n}\nkm(I);\nObject.defineProperty(I.prototype, \"$isServer\", {\n get: Pt\n});\nObject.defineProperty(I.prototype, \"$ssrContext\", {\n get: function() {\n return this.$vnode && this.$vnode.ssrContext;\n }\n});\nObject.defineProperty(I, \"FunctionalRenderContext\", {\n value: Fn\n});\nI.version = du;\nvar Sm = X(\"style,class\"), Em = X(\"input,textarea,option,select,progress\"), Fm = function(e, t, s) {\n return s === \"value\" && Em(e) && t !== \"button\" || s === \"selected\" && e === \"option\" || s === \"checked\" && e === \"input\" || s === \"muted\" && e === \"video\";\n}, ur = X(\"contenteditable,draggable,spellcheck\"), Am = X(\"events,caret,typing,plaintext-only\"), Nm = function(e, t) {\n return ds(t) || t === \"false\" ? \"false\" : (\n // allow arbitrary string value for contenteditable\n e === \"contenteditable\" && Am(t) ? t : \"true\"\n );\n}, Pm = X(\"allowfullscreen,async,autofocus,autoplay,checked,compact,controls,declare,default,defaultchecked,defaultmuted,defaultselected,defer,disabled,enabled,formnovalidate,hidden,indeterminate,inert,ismap,itemscope,loop,multiple,muted,nohref,noresize,noshade,novalidate,nowrap,open,pauseonexit,readonly,required,reversed,scoped,seamless,selected,sortable,truespeed,typemustmatch,visible\"), rn = \"http://www.w3.org/1999/xlink\", Dn = function(e) {\n return e.charAt(5) === \":\" && e.slice(0, 5) === \"xlink\";\n}, mr = function(e) {\n return Dn(e) ? e.slice(6, e.length) : \"\";\n}, ds = function(e) {\n return e == null || e === !1;\n};\nfunction Um(e) {\n for (var t = e.data, s = e, n = e; f(n.componentInstance); )\n n = n.componentInstance._vnode, n && n.data && (t = Ba(n.data, t));\n for (; f(s = s.parent); )\n s && s.data && (t = Ba(t, s.data));\n return Om(t.staticClass, t.class);\n}\nfunction Ba(e, t) {\n return {\n staticClass: $n(e.staticClass, t.staticClass),\n class: f(e.class) ? [e.class, t.class] : t.class\n };\n}\nfunction Om(e, t) {\n return f(e) || f(t) ? $n(e, Rn(t)) : \"\";\n}\nfunction $n(e, t) {\n return e ? t ? e + \" \" + t : e : t || \"\";\n}\nfunction Rn(e) {\n return Array.isArray(e) ? Bm(e) : W(e) ? jm(e) : typeof e == \"string\" ? e : \"\";\n}\nfunction Bm(e) {\n for (var t = \"\", s, n = 0, a = e.length; n < a; n++)\n f(s = Rn(e[n])) && s !== \"\" && (t && (t += \" \"), t += s);\n return t;\n}\nfunction jm(e) {\n var t = \"\";\n for (var s in e)\n e[s] && (t && (t += \" \"), t += s);\n return t;\n}\nvar Dm = {\n svg: \"http://www.w3.org/2000/svg\",\n math: \"http://www.w3.org/1998/Math/MathML\"\n}, $m = X(\"html,body,base,head,link,meta,style,title,address,article,aside,footer,header,h1,h2,h3,h4,h5,h6,hgroup,nav,section,div,dd,dl,dt,figcaption,figure,picture,hr,img,li,main,ol,p,pre,ul,a,b,abbr,bdi,bdo,br,cite,code,data,dfn,em,i,kbd,mark,q,rp,rt,rtc,ruby,s,samp,small,span,strong,sub,sup,time,u,var,wbr,area,audio,map,track,video,embed,object,param,source,canvas,script,noscript,del,ins,caption,col,colgroup,table,thead,tbody,td,th,tr,button,datalist,fieldset,form,input,label,legend,meter,optgroup,option,output,progress,select,textarea,details,dialog,menu,menuitem,summary,content,element,shadow,template,blockquote,iframe,tfoot\"), In = X(\"svg,animate,circle,clippath,cursor,defs,desc,ellipse,filter,font-face,foreignobject,g,glyph,image,line,marker,mask,missing-glyph,path,pattern,polygon,polyline,rect,switch,symbol,text,textpath,tspan,use,view\", !0), cr = function(e) {\n return $m(e) || In(e);\n};\nfunction Rm(e) {\n if (In(e))\n return \"svg\";\n if (e === \"math\")\n return \"math\";\n}\nvar Mt = /* @__PURE__ */ Object.create(null);\nfunction Im(e) {\n if (!Y)\n return !0;\n if (cr(e))\n return !1;\n if (e = e.toLowerCase(), Mt[e] != null)\n return Mt[e];\n var t = document.createElement(e);\n return e.indexOf(\"-\") > -1 ? Mt[e] = t.constructor === window.HTMLUnknownElement || t.constructor === window.HTMLElement : Mt[e] = /HTMLUnknownElement/.test(t.toString());\n}\nvar on = X(\"text,number,password,search,email,tel,url\");\nfunction zm(e) {\n if (typeof e == \"string\") {\n var t = document.querySelector(e);\n return t || (process.env.NODE_ENV !== \"production\" && v(\"Cannot find element: \" + e), document.createElement(\"div\"));\n } else\n return e;\n}\nfunction Mm(e, t) {\n var s = document.createElement(e);\n return e !== \"select\" || t.data && t.data.attrs && t.data.attrs.multiple !== void 0 && s.setAttribute(\"multiple\", \"multiple\"), s;\n}\nfunction Hm(e, t) {\n return document.createElementNS(Dm[e], t);\n}\nfunction Vm(e) {\n return document.createTextNode(e);\n}\nfunction Wm(e) {\n return document.createComment(e);\n}\nfunction qm(e, t, s) {\n e.insertBefore(t, s);\n}\nfunction Gm(e, t) {\n e.removeChild(t);\n}\nfunction Km(e, t) {\n e.appendChild(t);\n}\nfunction Jm(e) {\n return e.parentNode;\n}\nfunction Ym(e) {\n return e.nextSibling;\n}\nfunction Zm(e) {\n return e.tagName;\n}\nfunction Xm(e, t) {\n e.textContent = t;\n}\nfunction Qm(e, t) {\n e.setAttribute(t, \"\");\n}\nvar ec = /* @__PURE__ */ Object.freeze({\n __proto__: null,\n createElement: Mm,\n createElementNS: Hm,\n createTextNode: Vm,\n createComment: Wm,\n insertBefore: qm,\n removeChild: Gm,\n appendChild: Km,\n parentNode: Jm,\n nextSibling: Ym,\n tagName: Zm,\n setTextContent: Xm,\n setStyleScope: Qm\n}), tc = {\n create: function(e, t) {\n nt(t);\n },\n update: function(e, t) {\n e.data.ref !== t.data.ref && (nt(e, !0), nt(t));\n },\n destroy: function(e) {\n nt(e, !0);\n }\n};\nfunction nt(e, t) {\n var s = e.data.ref;\n if (f(s)) {\n var n = e.context, a = e.componentInstance || e.elm, i = t ? null : a, r = t ? void 0 : a;\n if ($(s)) {\n Ue(s, n, [i], n, \"template ref function\");\n return;\n }\n var o = e.data.refInFor, l = typeof s == \"string\" || typeof s == \"number\", m = de(s), u = n.$refs;\n if (l || m)\n if (o) {\n var g = l ? u[s] : s.value;\n t ? b(g) && Oe(g, a) : b(g) ? g.includes(a) || g.push(a) : l ? (u[s] = [a], ja(n, s, u[s])) : s.value = [a];\n } else if (l) {\n if (t && u[s] !== a)\n return;\n u[s] = r, ja(n, s, i);\n } else if (m) {\n if (t && s.value !== a)\n return;\n s.value = i;\n } else\n process.env.NODE_ENV !== \"production\" && v(\"Invalid template ref type: \".concat(typeof s));\n }\n}\nfunction ja(e, t, s) {\n var n = e._setupState;\n n && V(n, t) && (de(n[t]) ? n[t].value = s : n[t] = s);\n}\nvar Ee = new J(\"\", {}, []), pt = [\"create\", \"activate\", \"update\", \"remove\", \"destroy\"];\nfunction Ie(e, t) {\n return e.key === t.key && e.asyncFactory === t.asyncFactory && (e.tag === t.tag && e.isComment === t.isComment && f(e.data) === f(t.data) && sc(e, t) || R(e.isAsyncPlaceholder) && L(t.asyncFactory.error));\n}\nfunction sc(e, t) {\n if (e.tag !== \"input\")\n return !0;\n var s, n = f(s = e.data) && f(s = s.attrs) && s.type, a = f(s = t.data) && f(s = s.attrs) && s.type;\n return n === a || on(n) && on(a);\n}\nfunction nc(e, t, s) {\n var n, a, i = {};\n for (n = t; n <= s; ++n)\n a = e[n].key, f(a) && (i[a] = n);\n return i;\n}\nfunction ac(e) {\n var t, s, n = {}, a = e.modules, i = e.nodeOps;\n for (t = 0; t < pt.length; ++t)\n for (n[pt[t]] = [], s = 0; s < a.length; ++s)\n f(a[s][pt[t]]) && n[pt[t]].push(a[s][pt[t]]);\n function r(d) {\n return new J(i.tagName(d).toLowerCase(), {}, [], void 0, d);\n }\n function o(d, c) {\n function p() {\n --p.listeners === 0 && l(d);\n }\n return p.listeners = c, p;\n }\n function l(d) {\n var c = i.parentNode(d);\n f(c) && i.removeChild(c, d);\n }\n function m(d, c) {\n return !c && !d.ns && !(U.ignoredElements.length && U.ignoredElements.some(function(p) {\n return Ei(p) ? p.test(d.tag) : p === d.tag;\n })) && U.isUnknownElement(d.tag);\n }\n var u = 0;\n function g(d, c, p, x, C, F, S) {\n if (f(d.elm) && f(F) && (d = F[S] = Ks(d)), d.isRootInsert = !C, !w(d, c, p, x)) {\n var k = d.data, P = d.children, A = d.tag;\n f(A) ? (process.env.NODE_ENV !== \"production\" && (k && k.pre && u++, m(d, u) && v(\"Unknown custom element: <\" + A + '> - did you register the component correctly? For recursive components, make sure to provide the \"name\" option.', d.context)), d.elm = d.ns ? i.createElementNS(d.ns, A) : i.createElement(A, d), Q(d), O(d, P, c), f(k) && B(d, c), _(p, d.elm, x), process.env.NODE_ENV !== \"production\" && k && k.pre && u--) : R(d.isComment) ? (d.elm = i.createComment(d.text), _(p, d.elm, x)) : (d.elm = i.createTextNode(d.text), _(p, d.elm, x));\n }\n }\n function w(d, c, p, x) {\n var C = d.data;\n if (f(C)) {\n var F = f(d.componentInstance) && C.keepAlive;\n if (f(C = C.hook) && f(C = C.init) && C(\n d,\n !1\n /* hydrating */\n ), f(d.componentInstance))\n return y(d, c), _(p, d.elm, x), R(F) && T(d, c, p, x), !0;\n }\n }\n function y(d, c) {\n f(d.data.pendingInsert) && (c.push.apply(c, d.data.pendingInsert), d.data.pendingInsert = null), d.elm = d.componentInstance.$el, D(d) ? (B(d, c), Q(d)) : (nt(d), c.push(d));\n }\n function T(d, c, p, x) {\n for (var C, F = d; F.componentInstance; )\n if (F = F.componentInstance._vnode, f(C = F.data) && f(C = C.transition)) {\n for (C = 0; C < n.activate.length; ++C)\n n.activate[C](Ee, F);\n c.push(F);\n break;\n }\n _(p, d.elm, x);\n }\n function _(d, c, p) {\n f(d) && (f(p) ? i.parentNode(p) === d && i.insertBefore(d, c, p) : i.appendChild(d, c));\n }\n function O(d, c, p) {\n if (b(c)) {\n process.env.NODE_ENV !== \"production\" && Ze(c);\n for (var x = 0; x < c.length; ++x)\n g(c[x], p, d.elm, null, !0, c, x);\n } else\n _e(d.text) && i.appendChild(d.elm, i.createTextNode(String(d.text)));\n }\n function D(d) {\n for (; d.componentInstance; )\n d = d.componentInstance._vnode;\n return f(d.tag);\n }\n function B(d, c) {\n for (var p = 0; p < n.create.length; ++p)\n n.create[p](Ee, d);\n t = d.data.hook, f(t) && (f(t.create) && t.create(Ee, d), f(t.insert) && c.push(d));\n }\n function Q(d) {\n var c;\n if (f(c = d.fnScopeId))\n i.setStyleScope(d.elm, c);\n else\n for (var p = d; p; )\n f(c = p.context) && f(c = c.$options._scopeId) && i.setStyleScope(d.elm, c), p = p.parent;\n f(c = Ve) && c !== d.context && c !== d.fnContext && f(c = c.$options._scopeId) && i.setStyleScope(d.elm, c);\n }\n function Ce(d, c, p, x, C, F) {\n for (; x <= C; ++x)\n g(p[x], F, d, c, !1, p, x);\n }\n function Be(d) {\n var c, p, x = d.data;\n if (f(x))\n for (f(c = x.hook) && f(c = c.destroy) && c(d), c = 0; c < n.destroy.length; ++c)\n n.destroy[c](d);\n if (f(c = d.children))\n for (p = 0; p < d.children.length; ++p)\n Be(d.children[p]);\n }\n function ge(d, c, p) {\n for (; c <= p; ++c) {\n var x = d[c];\n f(x) && (f(x.tag) ? (ae(x), Be(x)) : l(x.elm));\n }\n }\n function ae(d, c) {\n if (f(c) || f(d.data)) {\n var p, x = n.remove.length + 1;\n for (f(c) ? c.listeners += x : c = o(d.elm, x), f(p = d.componentInstance) && f(p = p._vnode) && f(p.data) && ae(p, c), p = 0; p < n.remove.length; ++p)\n n.remove[p](d, c);\n f(p = d.data.hook) && f(p = p.remove) ? p(d, c) : c();\n } else\n l(d.elm);\n }\n function dt(d, c, p, x, C) {\n var F = 0, S = 0, k = c.length - 1, P = c[0], A = c[k], N = p.length - 1, H = p[0], ee = p[N], De, $e, Re, Qe, Ls = !C;\n for (process.env.NODE_ENV !== \"production\" && Ze(p); F <= k && S <= N; )\n L(P) ? P = c[++F] : L(A) ? A = c[--k] : Ie(P, H) ? (pe(P, H, x, p, S), P = c[++F], H = p[++S]) : Ie(A, ee) ? (pe(A, ee, x, p, N), A = c[--k], ee = p[--N]) : Ie(P, ee) ? (pe(P, ee, x, p, N), Ls && i.insertBefore(d, P.elm, i.nextSibling(A.elm)), P = c[++F], ee = p[--N]) : Ie(A, H) ? (pe(A, H, x, p, S), Ls && i.insertBefore(d, A.elm, P.elm), A = c[--k], H = p[++S]) : (L(De) && (De = nc(c, F, k)), $e = f(H.key) ? De[H.key] : Ot(H, c, F, k), L($e) ? g(H, x, d, P.elm, !1, p, S) : (Re = c[$e], Ie(Re, H) ? (pe(Re, H, x, p, S), c[$e] = void 0, Ls && i.insertBefore(d, Re.elm, P.elm)) : g(H, x, d, P.elm, !1, p, S)), H = p[++S]);\n F > k ? (Qe = L(p[N + 1]) ? null : p[N + 1].elm, Ce(d, Qe, p, S, N, x)) : S > N && ge(c, F, k);\n }\n function Ze(d) {\n for (var c = {}, p = 0; p < d.length; p++) {\n var x = d[p], C = x.key;\n f(C) && (c[C] ? v(\"Duplicate keys detected: '\".concat(C, \"'. This may cause an update error.\"), x.context) : c[C] = !0);\n }\n }\n function Ot(d, c, p, x) {\n for (var C = p; C < x; C++) {\n var F = c[C];\n if (f(F) && Ie(d, F))\n return C;\n }\n }\n function pe(d, c, p, x, C, F) {\n if (d !== c) {\n f(c.elm) && f(x) && (c = x[C] = Ks(c));\n var S = c.elm = d.elm;\n if (R(d.isAsyncPlaceholder)) {\n f(c.asyncFactory.resolved) ? be(d.elm, c, p) : c.isAsyncPlaceholder = !0;\n return;\n }\n if (R(c.isStatic) && R(d.isStatic) && c.key === d.key && (R(c.isCloned) || R(c.isOnce))) {\n c.componentInstance = d.componentInstance;\n return;\n }\n var k, P = c.data;\n f(P) && f(k = P.hook) && f(k = k.prepatch) && k(d, c);\n var A = d.children, N = c.children;\n if (f(P) && D(c)) {\n for (k = 0; k < n.update.length; ++k)\n n.update[k](d, c);\n f(k = P.hook) && f(k = k.update) && k(d, c);\n }\n L(c.text) ? f(A) && f(N) ? A !== N && dt(S, A, N, p, F) : f(N) ? (process.env.NODE_ENV !== \"production\" && Ze(N), f(d.text) && i.setTextContent(S, \"\"), Ce(S, null, N, 0, N.length - 1, p)) : f(A) ? ge(A, 0, A.length - 1) : f(d.text) && i.setTextContent(S, \"\") : d.text !== c.text && i.setTextContent(S, c.text), f(P) && f(k = P.hook) && f(k = k.postpatch) && k(d, c);\n }\n }\n function Le(d, c, p) {\n if (R(p) && f(d.parent))\n d.parent.data.pendingInsert = c;\n else\n for (var x = 0; x < c.length; ++x)\n c[x].data.hook.insert(c[x]);\n }\n var je = !1, Bt = X(\"attrs,class,staticClass,staticStyle,key\");\n function be(d, c, p, x) {\n var C, F = c.tag, S = c.data, k = c.children;\n if (x = x || S && S.pre, c.elm = d, R(c.isComment) && f(c.asyncFactory))\n return c.isAsyncPlaceholder = !0, !0;\n if (process.env.NODE_ENV !== \"production\" && !Xe(d, c, x))\n return !1;\n if (f(S) && (f(C = S.hook) && f(C = C.init) && C(\n c,\n !0\n /* hydrating */\n ), f(C = c.componentInstance)))\n return y(c, p), !0;\n if (f(F)) {\n if (f(k))\n if (!d.hasChildNodes())\n O(c, k, p);\n else if (f(C = S) && f(C = C.domProps) && f(C = C.innerHTML)) {\n if (C !== d.innerHTML)\n return process.env.NODE_ENV !== \"production\" && typeof console < \"u\" && !je && (je = !0, console.warn(\"Parent: \", d), console.warn(\"server innerHTML: \", C), console.warn(\"client innerHTML: \", d.innerHTML)), !1;\n } else {\n for (var P = !0, A = d.firstChild, N = 0; N < k.length; N++) {\n if (!A || !be(A, k[N], p, x)) {\n P = !1;\n break;\n }\n A = A.nextSibling;\n }\n if (!P || A)\n return process.env.NODE_ENV !== \"production\" && typeof console < \"u\" && !je && (je = !0, console.warn(\"Parent: \", d), console.warn(\"Mismatching childNodes vs. VNodes: \", d.childNodes, k)), !1;\n }\n if (f(S)) {\n var H = !1;\n for (var ee in S)\n if (!Bt(ee)) {\n H = !0, B(c, p);\n break;\n }\n !H && S.class && ls(S.class);\n }\n } else\n d.data !== c.text && (d.data = c.text);\n return !0;\n }\n function Xe(d, c, p) {\n return f(c.tag) ? c.tag.indexOf(\"vue-component\") === 0 || !m(c, p) && c.tag.toLowerCase() === (d.tagName && d.tagName.toLowerCase()) : d.nodeType === (c.isComment ? 8 : 3);\n }\n return function(c, p, x, C) {\n if (L(p)) {\n f(c) && Be(c);\n return;\n }\n var F = !1, S = [];\n if (L(c))\n F = !0, g(p, S);\n else {\n var k = f(c.nodeType);\n if (!k && Ie(c, p))\n pe(c, p, S, null, null, C);\n else {\n if (k) {\n if (c.nodeType === 1 && c.hasAttribute(aa) && (c.removeAttribute(aa), x = !0), R(x)) {\n if (be(c, p, S))\n return Le(p, S, !0), c;\n process.env.NODE_ENV !== \"production\" && v(\"The client-side rendered virtual DOM tree is not matching server-rendered content. This is likely caused by incorrect HTML markup, for example nesting block-level elements inside

, or missing . Bailing hydration and performing full client-side render.\");\n }\n c = r(c);\n }\n var P = c.elm, A = i.parentNode(P);\n if (g(\n p,\n S,\n // extremely rare edge case: do not insert if old element is in a\n // leaving transition. Only happens when combining transition +\n // keep-alive + HOCs. (#4590)\n P._leaveCb ? null : A,\n i.nextSibling(P)\n ), f(p.parent))\n for (var N = p.parent, H = D(p); N; ) {\n for (var ee = 0; ee < n.destroy.length; ++ee)\n n.destroy[ee](N);\n if (N.elm = p.elm, H) {\n for (var De = 0; De < n.create.length; ++De)\n n.create[De](Ee, N);\n var $e = N.data.hook.insert;\n if ($e.merged)\n for (var Re = $e.fns.slice(1), Qe = 0; Qe < Re.length; Qe++)\n Re[Qe]();\n } else\n nt(N);\n N = N.parent;\n }\n f(A) ? ge([c], 0, 0) : f(c.tag) && Be(c);\n }\n }\n return Le(p, S, F), p.elm;\n };\n}\nvar ic = {\n create: Os,\n update: Os,\n destroy: function(t) {\n Os(t, Ee);\n }\n};\nfunction Os(e, t) {\n (e.data.directives || t.data.directives) && rc(e, t);\n}\nfunction rc(e, t) {\n var s = e === Ee, n = t === Ee, a = Da(e.data.directives, e.context), i = Da(t.data.directives, t.context), r = [], o = [], l, m, u;\n for (l in i)\n m = a[l], u = i[l], m ? (u.oldValue = m.value, u.oldArg = m.arg, ht(u, \"update\", t, e), u.def && u.def.componentUpdated && o.push(u)) : (ht(u, \"bind\", t, e), u.def && u.def.inserted && r.push(u));\n if (r.length) {\n var g = function() {\n for (var w = 0; w < r.length; w++)\n ht(r[w], \"inserted\", t, e);\n };\n s ? Se(t, \"insert\", g) : g();\n }\n if (o.length && Se(t, \"postpatch\", function() {\n for (var w = 0; w < o.length; w++)\n ht(o[w], \"componentUpdated\", t, e);\n }), !s)\n for (l in a)\n i[l] || ht(a[l], \"unbind\", e, e, n);\n}\nvar oc = /* @__PURE__ */ Object.create(null);\nfunction Da(e, t) {\n var s = /* @__PURE__ */ Object.create(null);\n if (!e)\n return s;\n var n, a;\n for (n = 0; n < e.length; n++) {\n if (a = e[n], a.modifiers || (a.modifiers = oc), s[lc(a)] = a, t._setupState && t._setupState.__sfc) {\n var i = a.def || ms(t, \"_setupState\", \"v-\" + a.name);\n typeof i == \"function\" ? a.def = {\n bind: i,\n update: i\n } : a.def = i;\n }\n a.def = a.def || ms(t.$options, \"directives\", a.name, !0);\n }\n return s;\n}\nfunction lc(e) {\n return e.rawName || \"\".concat(e.name, \".\").concat(Object.keys(e.modifiers || {}).join(\".\"));\n}\nfunction ht(e, t, s, n, a) {\n var i = e.def && e.def[t];\n if (i)\n try {\n i(s.elm, e, s, n, a);\n } catch (r) {\n Pe(r, s.context, \"directive \".concat(e.name, \" \").concat(t, \" hook\"));\n }\n}\nvar uc = [tc, ic];\nfunction $a(e, t) {\n var s = t.componentOptions;\n if (!(f(s) && s.Ctor.options.inheritAttrs === !1) && !(L(e.data.attrs) && L(t.data.attrs))) {\n var n, a, i, r = t.elm, o = e.data.attrs || {}, l = t.data.attrs || {};\n (f(l.__ob__) || R(l._v_attr_proxy)) && (l = t.data.attrs = j({}, l));\n for (n in l)\n a = l[n], i = o[n], i !== a && Ra(r, n, a, t.data.pre);\n (lt || $i) && l.value !== o.value && Ra(r, \"value\", l.value);\n for (n in o)\n L(l[n]) && (Dn(n) ? r.removeAttributeNS(rn, mr(n)) : ur(n) || r.removeAttribute(n));\n }\n}\nfunction Ra(e, t, s, n) {\n n || e.tagName.indexOf(\"-\") > -1 ? Ia(e, t, s) : Pm(t) ? ds(s) ? e.removeAttribute(t) : (s = t === \"allowfullscreen\" && e.tagName === \"EMBED\" ? \"true\" : t, e.setAttribute(t, s)) : ur(t) ? e.setAttribute(t, Nm(t, s)) : Dn(t) ? ds(s) ? e.removeAttributeNS(rn, mr(t)) : e.setAttributeNS(rn, t, s) : Ia(e, t, s);\n}\nfunction Ia(e, t, s) {\n if (ds(s))\n e.removeAttribute(t);\n else {\n if (lt && !ut && e.tagName === \"TEXTAREA\" && t === \"placeholder\" && s !== \"\" && !e.__ieph) {\n var n = function(a) {\n a.stopImmediatePropagation(), e.removeEventListener(\"input\", n);\n };\n e.addEventListener(\"input\", n), e.__ieph = !0;\n }\n e.setAttribute(t, s);\n }\n}\nvar mc = {\n create: $a,\n update: $a\n};\nfunction za(e, t) {\n var s = t.elm, n = t.data, a = e.data;\n if (!(L(n.staticClass) && L(n.class) && (L(a) || L(a.staticClass) && L(a.class)))) {\n var i = Um(t), r = s._transitionClasses;\n f(r) && (i = $n(i, Rn(r))), i !== s._prevClass && (s.setAttribute(\"class\", i), s._prevClass = i);\n }\n}\nvar cc = {\n create: za,\n update: za\n}, Bs = \"__r\", js = \"__c\";\nfunction dc(e) {\n if (f(e[Bs])) {\n var t = lt ? \"change\" : \"input\";\n e[t] = [].concat(e[Bs], e[t] || []), delete e[Bs];\n }\n f(e[js]) && (e.change = [].concat(e[js], e.change || []), delete e[js]);\n}\nvar Et;\nfunction fc(e, t, s) {\n var n = Et;\n return function a() {\n var i = t.apply(null, arguments);\n i !== null && dr(e, a, s, n);\n };\n}\nvar gc = Xs && !(ia && Number(ia[1]) <= 53);\nfunction pc(e, t, s, n) {\n if (gc) {\n var a = ar, i = t;\n t = i._wrapper = function(r) {\n if (\n // no bubbling, should always fire.\n // this is just a safety net in case event.timeStamp is unreliable in\n // certain weird environments...\n r.target === r.currentTarget || // event is fired after handler attachment\n r.timeStamp >= a || // bail for environments that have buggy event.timeStamp implementations\n // #9462 iOS 9 bug: event.timeStamp is 0 after history.pushState\n // #9681 QtWebEngine event.timeStamp is negative value\n r.timeStamp <= 0 || // #9448 bail if event is fired in another document in a multi-page\n // electron/nw.js app, since event.timeStamp will be using a different\n // starting reference\n r.target.ownerDocument !== document\n )\n return i.apply(this, arguments);\n };\n }\n Et.addEventListener(e, t, Ri ? { capture: s, passive: n } : s);\n}\nfunction dr(e, t, s, n) {\n (n || Et).removeEventListener(\n e,\n //@ts-expect-error\n t._wrapper || t,\n s\n );\n}\nfunction Ds(e, t) {\n if (!(L(e.data.on) && L(t.data.on))) {\n var s = t.data.on || {}, n = e.data.on || {};\n Et = t.elm || e.elm, dc(s), Wi(s, n, pc, dr, fc, t.context), Et = void 0;\n }\n}\nvar hc = {\n create: Ds,\n update: Ds,\n // @ts-expect-error emptyNode has actually data\n destroy: function(e) {\n return Ds(e, Ee);\n }\n}, Ht;\nfunction Ma(e, t) {\n if (!(L(e.data.domProps) && L(t.data.domProps))) {\n var s, n, a = t.elm, i = e.data.domProps || {}, r = t.data.domProps || {};\n (f(r.__ob__) || R(r._v_attr_proxy)) && (r = t.data.domProps = j({}, r));\n for (s in i)\n s in r || (a[s] = \"\");\n for (s in r) {\n if (n = r[s], s === \"textContent\" || s === \"innerHTML\") {\n if (t.children && (t.children.length = 0), n === i[s])\n continue;\n a.childNodes.length === 1 && a.removeChild(a.childNodes[0]);\n }\n if (s === \"value\" && a.tagName !== \"PROGRESS\") {\n a._value = n;\n var o = L(n) ? \"\" : String(n);\n Tc(a, o) && (a.value = o);\n } else if (s === \"innerHTML\" && In(a.tagName) && L(a.innerHTML)) {\n Ht = Ht || document.createElement(\"div\"), Ht.innerHTML = \"\".concat(n, \"\");\n for (var l = Ht.firstChild; a.firstChild; )\n a.removeChild(a.firstChild);\n for (; l.firstChild; )\n a.appendChild(l.firstChild);\n } else if (\n // skip the update if old and new VDOM state is the same.\n // `value` is handled separately because the DOM value may be temporarily\n // out of sync with VDOM state due to focus, composition and modifiers.\n // This #4521 by skipping the unnecessary `checked` update.\n n !== i[s]\n )\n try {\n a[s] = n;\n } catch {\n }\n }\n }\n}\nfunction Tc(e, t) {\n return (\n //@ts-expect-error\n !e.composing && (e.tagName === \"OPTION\" || wc(e, t) || vc(e, t))\n );\n}\nfunction wc(e, t) {\n var s = !0;\n try {\n s = document.activeElement !== e;\n } catch {\n }\n return s && e.value !== t;\n}\nfunction vc(e, t) {\n var s = e.value, n = e._vModifiers;\n if (f(n)) {\n if (n.number)\n return yt(s) !== yt(t);\n if (n.trim)\n return s.trim() !== t.trim();\n }\n return s !== t;\n}\nvar xc = {\n create: Ma,\n update: Ma\n}, yc = Je(function(e) {\n var t = {}, s = /;(?![^(]*\\))/g, n = /:(.+)/;\n return e.split(s).forEach(function(a) {\n if (a) {\n var i = a.split(n);\n i.length > 1 && (t[i[0].trim()] = i[1].trim());\n }\n }), t;\n});\nfunction $s(e) {\n var t = fr(e.style);\n return e.staticStyle ? j(e.staticStyle, t) : t;\n}\nfunction fr(e) {\n return Array.isArray(e) ? Ui(e) : typeof e == \"string\" ? yc(e) : e;\n}\nfunction _c(e, t) {\n var s = {}, n;\n if (t)\n for (var a = e; a.componentInstance; )\n a = a.componentInstance._vnode, a && a.data && (n = $s(a.data)) && j(s, n);\n (n = $s(e.data)) && j(s, n);\n for (var i = e; i = i.parent; )\n i.data && (n = $s(i.data)) && j(s, n);\n return s;\n}\nvar Cc = /^--/, Ha = /\\s*!important$/, Va = function(e, t, s) {\n if (Cc.test(t))\n e.style.setProperty(t, s);\n else if (Ha.test(s))\n e.style.setProperty(Ye(t), s.replace(Ha, \"\"), \"important\");\n else {\n var n = Lc(t);\n if (Array.isArray(s))\n for (var a = 0, i = s.length; a < i; a++)\n e.style[n] = s[a];\n else\n e.style[n] = s;\n }\n}, Wa = [\"Webkit\", \"Moz\", \"ms\"], Vt, Lc = Je(function(e) {\n if (Vt = Vt || document.createElement(\"div\").style, e = qe(e), e !== \"filter\" && e in Vt)\n return e;\n for (var t = e.charAt(0).toUpperCase() + e.slice(1), s = 0; s < Wa.length; s++) {\n var n = Wa[s] + t;\n if (n in Vt)\n return n;\n }\n});\nfunction qa(e, t) {\n var s = t.data, n = e.data;\n if (!(L(s.staticStyle) && L(s.style) && L(n.staticStyle) && L(n.style))) {\n var a, i, r = t.elm, o = n.staticStyle, l = n.normalizedStyle || n.style || {}, m = o || l, u = fr(t.data.style) || {};\n t.data.normalizedStyle = f(u.__ob__) ? j({}, u) : u;\n var g = _c(t, !0);\n for (i in m)\n L(g[i]) && Va(r, i, \"\");\n for (i in g)\n a = g[i], a !== m[i] && Va(r, i, a ?? \"\");\n }\n}\nvar bc = {\n create: qa,\n update: qa\n}, gr = /\\s+/;\nfunction pr(e, t) {\n if (!(!t || !(t = t.trim())))\n if (e.classList)\n t.indexOf(\" \") > -1 ? t.split(gr).forEach(function(n) {\n return e.classList.add(n);\n }) : e.classList.add(t);\n else {\n var s = \" \".concat(e.getAttribute(\"class\") || \"\", \" \");\n s.indexOf(\" \" + t + \" \") < 0 && e.setAttribute(\"class\", (s + t).trim());\n }\n}\nfunction hr(e, t) {\n if (!(!t || !(t = t.trim())))\n if (e.classList)\n t.indexOf(\" \") > -1 ? t.split(gr).forEach(function(a) {\n return e.classList.remove(a);\n }) : e.classList.remove(t), e.classList.length || e.removeAttribute(\"class\");\n else {\n for (var s = \" \".concat(e.getAttribute(\"class\") || \"\", \" \"), n = \" \" + t + \" \"; s.indexOf(n) >= 0; )\n s = s.replace(n, \" \");\n s = s.trim(), s ? e.setAttribute(\"class\", s) : e.removeAttribute(\"class\");\n }\n}\nfunction Tr(e) {\n if (e) {\n if (typeof e == \"object\") {\n var t = {};\n return e.css !== !1 && j(t, Ga(e.name || \"v\")), j(t, e), t;\n } else if (typeof e == \"string\")\n return Ga(e);\n }\n}\nvar Ga = Je(function(e) {\n return {\n enterClass: \"\".concat(e, \"-enter\"),\n enterToClass: \"\".concat(e, \"-enter-to\"),\n enterActiveClass: \"\".concat(e, \"-enter-active\"),\n leaveClass: \"\".concat(e, \"-leave\"),\n leaveToClass: \"\".concat(e, \"-leave-to\"),\n leaveActiveClass: \"\".concat(e, \"-leave-active\")\n };\n}), wr = Y && !ut, et = \"transition\", Rs = \"animation\", Qt = \"transition\", fs = \"transitionend\", ln = \"animation\", vr = \"animationend\";\nwr && (window.ontransitionend === void 0 && window.onwebkittransitionend !== void 0 && (Qt = \"WebkitTransition\", fs = \"webkitTransitionEnd\"), window.onanimationend === void 0 && window.onwebkitanimationend !== void 0 && (ln = \"WebkitAnimation\", vr = \"webkitAnimationEnd\"));\nvar Ka = Y ? window.requestAnimationFrame ? window.requestAnimationFrame.bind(window) : setTimeout : (\n /* istanbul ignore next */\n function(e) {\n return e();\n }\n);\nfunction xr(e) {\n Ka(function() {\n Ka(e);\n });\n}\nfunction We(e, t) {\n var s = e._transitionClasses || (e._transitionClasses = []);\n s.indexOf(t) < 0 && (s.push(t), pr(e, t));\n}\nfunction ve(e, t) {\n e._transitionClasses && Oe(e._transitionClasses, t), hr(e, t);\n}\nfunction yr(e, t, s) {\n var n = _r(e, t), a = n.type, i = n.timeout, r = n.propCount;\n if (!a)\n return s();\n var o = a === et ? fs : vr, l = 0, m = function() {\n e.removeEventListener(o, u), s();\n }, u = function(g) {\n g.target === e && ++l >= r && m();\n };\n setTimeout(function() {\n l < r && m();\n }, i + 1), e.addEventListener(o, u);\n}\nvar kc = /\\b(transform|all)(,|$)/;\nfunction _r(e, t) {\n var s = window.getComputedStyle(e), n = (s[Qt + \"Delay\"] || \"\").split(\", \"), a = (s[Qt + \"Duration\"] || \"\").split(\", \"), i = Ja(n, a), r = (s[ln + \"Delay\"] || \"\").split(\", \"), o = (s[ln + \"Duration\"] || \"\").split(\", \"), l = Ja(r, o), m, u = 0, g = 0;\n t === et ? i > 0 && (m = et, u = i, g = a.length) : t === Rs ? l > 0 && (m = Rs, u = l, g = o.length) : (u = Math.max(i, l), m = u > 0 ? i > l ? et : Rs : null, g = m ? m === et ? a.length : o.length : 0);\n var w = m === et && kc.test(s[Qt + \"Property\"]);\n return {\n type: m,\n timeout: u,\n propCount: g,\n hasTransform: w\n };\n}\nfunction Ja(e, t) {\n for (; e.length < t.length; )\n e = e.concat(e);\n return Math.max.apply(null, t.map(function(s, n) {\n return Ya(s) + Ya(e[n]);\n }));\n}\nfunction Ya(e) {\n return Number(e.slice(0, -1).replace(\",\", \".\")) * 1e3;\n}\nfunction un(e, t) {\n var s = e.elm;\n f(s._leaveCb) && (s._leaveCb.cancelled = !0, s._leaveCb());\n var n = Tr(e.data.transition);\n if (!L(n) && !(f(s._enterCb) || s.nodeType !== 1)) {\n for (var a = n.css, i = n.type, r = n.enterClass, o = n.enterToClass, l = n.enterActiveClass, m = n.appearClass, u = n.appearToClass, g = n.appearActiveClass, w = n.beforeEnter, y = n.enter, T = n.afterEnter, _ = n.enterCancelled, O = n.beforeAppear, D = n.appear, B = n.afterAppear, Q = n.appearCancelled, Ce = n.duration, Be = Ve, ge = Ve.$vnode; ge && ge.parent; )\n Be = ge.context, ge = ge.parent;\n var ae = !Be._isMounted || !e.isRootInsert;\n if (!(ae && !D && D !== \"\")) {\n var dt = ae && m ? m : r, Ze = ae && g ? g : l, Ot = ae && u ? u : o, pe = ae && O || w, Le = ae && $(D) ? D : y, je = ae && B || T, Bt = ae && Q || _, be = yt(W(Ce) ? Ce.enter : Ce);\n process.env.NODE_ENV !== \"production\" && be != null && Lr(be, \"enter\", e);\n var Xe = a !== !1 && !ut, d = zn(Le), c = s._enterCb = ss(function() {\n Xe && (ve(s, Ot), ve(s, Ze)), c.cancelled ? (Xe && ve(s, dt), Bt && Bt(s)) : je && je(s), s._enterCb = null;\n });\n e.data.show || Se(e, \"insert\", function() {\n var p = s.parentNode, x = p && p._pending && p._pending[e.key];\n x && x.tag === e.tag && x.elm._leaveCb && x.elm._leaveCb(), Le && Le(s, c);\n }), pe && pe(s), Xe && (We(s, dt), We(s, Ze), xr(function() {\n ve(s, dt), c.cancelled || (We(s, Ot), d || (br(be) ? setTimeout(c, be) : yr(s, i, c)));\n })), e.data.show && (t && t(), Le && Le(s, c)), !Xe && !d && c();\n }\n }\n}\nfunction Cr(e, t) {\n var s = e.elm;\n f(s._enterCb) && (s._enterCb.cancelled = !0, s._enterCb());\n var n = Tr(e.data.transition);\n if (L(n) || s.nodeType !== 1)\n return t();\n if (f(s._leaveCb))\n return;\n var a = n.css, i = n.type, r = n.leaveClass, o = n.leaveToClass, l = n.leaveActiveClass, m = n.beforeLeave, u = n.leave, g = n.afterLeave, w = n.leaveCancelled, y = n.delayLeave, T = n.duration, _ = a !== !1 && !ut, O = zn(u), D = yt(W(T) ? T.leave : T);\n process.env.NODE_ENV !== \"production\" && f(D) && Lr(D, \"leave\", e);\n var B = s._leaveCb = ss(function() {\n s.parentNode && s.parentNode._pending && (s.parentNode._pending[e.key] = null), _ && (ve(s, o), ve(s, l)), B.cancelled ? (_ && ve(s, r), w && w(s)) : (t(), g && g(s)), s._leaveCb = null;\n });\n y ? y(Q) : Q();\n function Q() {\n B.cancelled || (!e.data.show && s.parentNode && ((s.parentNode._pending || (s.parentNode._pending = {}))[e.key] = e), m && m(s), _ && (We(s, r), We(s, l), xr(function() {\n ve(s, r), B.cancelled || (We(s, o), O || (br(D) ? setTimeout(B, D) : yr(s, i, B)));\n })), u && u(s, B), !_ && !O && B());\n }\n}\nfunction Lr(e, t, s) {\n typeof e != \"number\" ? v(\" explicit \".concat(t, \" duration is not a valid number - \") + \"got \".concat(JSON.stringify(e), \".\"), s.context) : isNaN(e) && v(\" explicit \".concat(t, \" duration is NaN - \") + \"the duration expression might be incorrect.\", s.context);\n}\nfunction br(e) {\n return typeof e == \"number\" && !isNaN(e);\n}\nfunction zn(e) {\n if (L(e))\n return !1;\n var t = e.fns;\n return f(t) ? zn(Array.isArray(t) ? t[0] : t) : (e._length || e.length) > 1;\n}\nfunction Za(e, t) {\n t.data.show !== !0 && un(t);\n}\nvar Sc = Y ? {\n create: Za,\n activate: Za,\n remove: function(e, t) {\n e.data.show !== !0 ? Cr(e, t) : t();\n }\n} : {}, Ec = [mc, cc, hc, xc, bc, Sc], Fc = Ec.concat(uc), Ac = ac({ nodeOps: ec, modules: Fc });\nut && document.addEventListener(\"selectionchange\", function() {\n var e = document.activeElement;\n e && e.vmodel && Mn(e, \"input\");\n});\nvar kr = {\n inserted: function(e, t, s, n) {\n s.tag === \"select\" ? (n.elm && !n.elm._vOptions ? Se(s, \"postpatch\", function() {\n kr.componentUpdated(e, t, s);\n }) : Xa(e, t, s.context), e._vOptions = [].map.call(e.options, gs)) : (s.tag === \"textarea\" || on(e.type)) && (e._vModifiers = t.modifiers, t.modifiers.lazy || (e.addEventListener(\"compositionstart\", Nc), e.addEventListener(\"compositionend\", ti), e.addEventListener(\"change\", ti), ut && (e.vmodel = !0)));\n },\n componentUpdated: function(e, t, s) {\n if (s.tag === \"select\") {\n Xa(e, t, s.context);\n var n = e._vOptions, a = e._vOptions = [].map.call(e.options, gs);\n if (a.some(function(r, o) {\n return !Ge(r, n[o]);\n })) {\n var i = e.multiple ? t.value.some(function(r) {\n return ei(r, a);\n }) : t.value !== t.oldValue && ei(t.value, a);\n i && Mn(e, \"change\");\n }\n }\n }\n};\nfunction Xa(e, t, s) {\n Qa(e, t, s), (lt || $i) && setTimeout(function() {\n Qa(e, t, s);\n }, 0);\n}\nfunction Qa(e, t, s) {\n var n = t.value, a = e.multiple;\n if (a && !Array.isArray(n)) {\n process.env.NODE_ENV !== \"production\" && v(' ') + \"expects an Array value for its binding, but got \".concat(Object.prototype.toString.call(n).slice(8, -1)), s);\n return;\n }\n for (var i, r, o = 0, l = e.options.length; o < l; o++)\n if (r = e.options[o], a)\n i = Bi(n, gs(r)) > -1, r.selected !== i && (r.selected = i);\n else if (Ge(gs(r), n)) {\n e.selectedIndex !== o && (e.selectedIndex = o);\n return;\n }\n a || (e.selectedIndex = -1);\n}\nfunction ei(e, t) {\n return t.every(function(s) {\n return !Ge(s, e);\n });\n}\nfunction gs(e) {\n return \"_value\" in e ? e._value : e.value;\n}\nfunction Nc(e) {\n e.target.composing = !0;\n}\nfunction ti(e) {\n e.target.composing && (e.target.composing = !1, Mn(e.target, \"input\"));\n}\nfunction Mn(e, t) {\n var s = document.createEvent(\"HTMLEvents\");\n s.initEvent(t, !0, !0), e.dispatchEvent(s);\n}\nfunction mn(e) {\n return e.componentInstance && (!e.data || !e.data.transition) ? mn(e.componentInstance._vnode) : e;\n}\nvar Pc = {\n bind: function(e, t, s) {\n var n = t.value;\n s = mn(s);\n var a = s.data && s.data.transition, i = e.__vOriginalDisplay = e.style.display === \"none\" ? \"\" : e.style.display;\n n && a ? (s.data.show = !0, un(s, function() {\n e.style.display = i;\n })) : e.style.display = n ? i : \"none\";\n },\n update: function(e, t, s) {\n var n = t.value, a = t.oldValue;\n if (!n != !a) {\n s = mn(s);\n var i = s.data && s.data.transition;\n i ? (s.data.show = !0, n ? un(s, function() {\n e.style.display = e.__vOriginalDisplay;\n }) : Cr(s, function() {\n e.style.display = \"none\";\n })) : e.style.display = n ? e.__vOriginalDisplay : \"none\";\n }\n },\n unbind: function(e, t, s, n, a) {\n a || (e.style.display = e.__vOriginalDisplay);\n }\n}, Uc = {\n model: kr,\n show: Pc\n}, Sr = {\n name: String,\n appear: Boolean,\n css: Boolean,\n mode: String,\n type: String,\n enterClass: String,\n leaveClass: String,\n enterToClass: String,\n leaveToClass: String,\n enterActiveClass: String,\n leaveActiveClass: String,\n appearClass: String,\n appearActiveClass: String,\n appearToClass: String,\n duration: [Number, String, Object]\n};\nfunction cn(e) {\n var t = e && e.componentOptions;\n return t && t.Ctor.options.abstract ? cn(Zi(t.children)) : e;\n}\nfunction Er(e) {\n var t = {}, s = e.$options;\n for (var n in s.propsData)\n t[n] = e[n];\n var a = s._parentListeners;\n for (var n in a)\n t[qe(n)] = a[n];\n return t;\n}\nfunction si(e, t) {\n if (/\\d-keep-alive$/.test(t.tag))\n return e(\"keep-alive\", {\n props: t.componentOptions.propsData\n });\n}\nfunction Oc(e) {\n for (; e = e.parent; )\n if (e.data.transition)\n return !0;\n}\nfunction Bc(e, t) {\n return t.key === e.key && t.tag === e.tag;\n}\nvar jc = function(e) {\n return e.tag || Ct(e);\n}, Dc = function(e) {\n return e.name === \"show\";\n}, $c = {\n name: \"transition\",\n props: Sr,\n abstract: !0,\n render: function(e) {\n var t = this, s = this.$slots.default;\n if (s && (s = s.filter(jc), !!s.length)) {\n process.env.NODE_ENV !== \"production\" && s.length > 1 && v(\" can only be used on a single element. Use for lists.\", this.$parent);\n var n = this.mode;\n process.env.NODE_ENV !== \"production\" && n && n !== \"in-out\" && n !== \"out-in\" && v(\"invalid mode: \" + n, this.$parent);\n var a = s[0];\n if (Oc(this.$vnode))\n return a;\n var i = cn(a);\n if (!i)\n return a;\n if (this._leaving)\n return si(e, a);\n var r = \"__transition-\".concat(this._uid, \"-\");\n i.key = i.key == null ? i.isComment ? r + \"comment\" : r + i.tag : _e(i.key) ? String(i.key).indexOf(r) === 0 ? i.key : r + i.key : i.key;\n var o = (i.data || (i.data = {})).transition = Er(this), l = this._vnode, m = cn(l);\n if (i.data.directives && i.data.directives.some(Dc) && (i.data.show = !0), m && m.data && !Bc(i, m) && !Ct(m) && // #6687 component root is a comment node\n !(m.componentInstance && m.componentInstance._vnode.isComment)) {\n var u = m.data.transition = j({}, o);\n if (n === \"out-in\")\n return this._leaving = !0, Se(u, \"afterLeave\", function() {\n t._leaving = !1, t.$forceUpdate();\n }), si(e, a);\n if (n === \"in-out\") {\n if (Ct(i))\n return l;\n var g, w = function() {\n g();\n };\n Se(o, \"afterEnter\", w), Se(o, \"enterCancelled\", w), Se(u, \"delayLeave\", function(y) {\n g = y;\n });\n }\n }\n return a;\n }\n }\n}, Fr = j({\n tag: String,\n moveClass: String\n}, Sr);\ndelete Fr.mode;\nvar Rc = {\n props: Fr,\n beforeMount: function() {\n var e = this, t = this._update;\n this._update = function(s, n) {\n var a = tr(e);\n e.__patch__(\n e._vnode,\n e.kept,\n !1,\n // hydrating\n !0\n // removeOnly (!important, avoids unnecessary moves)\n ), e._vnode = e.kept, a(), t.call(e, s, n);\n };\n },\n render: function(e) {\n for (var t = this.tag || this.$vnode.data.tag || \"span\", s = /* @__PURE__ */ Object.create(null), n = this.prevChildren = this.children, a = this.$slots.default || [], i = this.children = [], r = Er(this), o = 0; o < a.length; o++) {\n var l = a[o];\n if (l.tag) {\n if (l.key != null && String(l.key).indexOf(\"__vlist\") !== 0)\n i.push(l), s[l.key] = l, (l.data || (l.data = {})).transition = r;\n else if (process.env.NODE_ENV !== \"production\") {\n var m = l.componentOptions, u = m ? rt(m.Ctor.options) || m.tag || \"\" : l.tag;\n v(\" children must be keyed: <\".concat(u, \">\"));\n }\n }\n }\n if (n) {\n for (var g = [], w = [], o = 0; o < n.length; o++) {\n var l = n[o];\n l.data.transition = r, l.data.pos = l.elm.getBoundingClientRect(), s[l.key] ? g.push(l) : w.push(l);\n }\n this.kept = e(t, null, g), this.removed = w;\n }\n return e(t, null, i);\n },\n updated: function() {\n var e = this.prevChildren, t = this.moveClass || (this.name || \"v\") + \"-move\";\n !e.length || !this.hasMove(e[0].elm, t) || (e.forEach(Ic), e.forEach(zc), e.forEach(Mc), this._reflow = document.body.offsetHeight, e.forEach(function(s) {\n if (s.data.moved) {\n var n = s.elm, a = n.style;\n We(n, t), a.transform = a.WebkitTransform = a.transitionDuration = \"\", n.addEventListener(fs, n._moveCb = function i(r) {\n r && r.target !== n || (!r || /transform$/.test(r.propertyName)) && (n.removeEventListener(fs, i), n._moveCb = null, ve(n, t));\n });\n }\n }));\n },\n methods: {\n hasMove: function(e, t) {\n if (!wr)\n return !1;\n if (this._hasMove)\n return this._hasMove;\n var s = e.cloneNode();\n e._transitionClasses && e._transitionClasses.forEach(function(a) {\n hr(s, a);\n }), pr(s, t), s.style.display = \"none\", this.$el.appendChild(s);\n var n = _r(s);\n return this.$el.removeChild(s), this._hasMove = n.hasTransform;\n }\n }\n};\nfunction Ic(e) {\n e.elm._moveCb && e.elm._moveCb(), e.elm._enterCb && e.elm._enterCb();\n}\nfunction zc(e) {\n e.data.newPos = e.elm.getBoundingClientRect();\n}\nfunction Mc(e) {\n var t = e.data.pos, s = e.data.newPos, n = t.left - s.left, a = t.top - s.top;\n if (n || a) {\n e.data.moved = !0;\n var i = e.elm.style;\n i.transform = i.WebkitTransform = \"translate(\".concat(n, \"px,\").concat(a, \"px)\"), i.transitionDuration = \"0s\";\n }\n}\nvar Hc = {\n Transition: $c,\n TransitionGroup: Rc\n};\nI.config.mustUseProp = Fm;\nI.config.isReservedTag = cr;\nI.config.isReservedAttr = Sm;\nI.config.getTagNamespace = Rm;\nI.config.isUnknownElement = Im;\nj(I.options.directives, Uc);\nj(I.options.components, Hc);\nI.prototype.__patch__ = Y ? Ac : z;\nI.prototype.$mount = function(e, t) {\n return e = e && Y ? zm(e) : void 0, yu(this, e, t);\n};\nY && setTimeout(function() {\n U.devtools && (ns ? ns.emit(\"init\", I) : process.env.NODE_ENV !== \"production\" && process.env.NODE_ENV !== \"test\" && console[console.info ? \"info\" : \"log\"](`Download the Vue Devtools extension for a better development experience:\nhttps://github.com/vuejs/vue-devtools`)), process.env.NODE_ENV !== \"production\" && process.env.NODE_ENV !== \"test\" && U.productionTip !== !1 && typeof console < \"u\" && console[console.info ? \"info\" : \"log\"](`You are running Vue in development mode.\nMake sure to turn on production mode when deploying for production.\nSee more tips at https://vuejs.org/guide/deployment.html`);\n}, 0);\nfunction Cs(e, t, s, n, a, i, r, o) {\n var l = typeof e == \"function\" ? e.options : e;\n t && (l.render = t, l.staticRenderFns = s, l._compiled = !0), n && (l.functional = !0), i && (l._scopeId = \"data-v-\" + i);\n var m;\n if (r ? (m = function(w) {\n w = w || // cached call\n this.$vnode && this.$vnode.ssrContext || // stateful\n this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext, !w && typeof __VUE_SSR_CONTEXT__ < \"u\" && (w = __VUE_SSR_CONTEXT__), a && a.call(this, w), w && w._registeredComponents && w._registeredComponents.add(r);\n }, l._ssrRegister = m) : a && (m = o ? function() {\n a.call(\n this,\n (l.functional ? this.parent : this).$root.$options.shadowRoot\n );\n } : a), m)\n if (l.functional) {\n l._injectStyles = m;\n var u = l.render;\n l.render = function(y, T) {\n return m.call(T), u(y, T);\n };\n } else {\n var g = l.beforeCreate;\n l.beforeCreate = g ? [].concat(g, m) : [m];\n }\n return {\n exports: e,\n options: l\n };\n}\nconst Vc = {\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 Wc = function() {\n var t = this, s = t._self._c;\n return s(\"span\", t._b({ staticClass: \"material-design-icon cancel-icon\", attrs: { \"aria-hidden\": !t.title, \"aria-label\": t.title, role: \"img\" }, on: { click: function(n) {\n return t.$emit(\"click\", n);\n } } }, \"span\", t.$attrs, !1), [s(\"svg\", { staticClass: \"material-design-icon__svg\", attrs: { fill: t.fillColor, width: t.size, height: t.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\" } }, [t.title ? s(\"title\", [t._v(t._s(t.title))]) : t._e()])])]);\n}, qc = [], Gc = /* @__PURE__ */ Cs(\n Vc,\n Wc,\n qc,\n !1,\n null,\n null,\n null,\n null\n);\nconst Kc = Gc.exports, Jc = {\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 Yc = function() {\n var t = this, s = t._self._c;\n return s(\"span\", t._b({ staticClass: \"material-design-icon plus-icon\", attrs: { \"aria-hidden\": !t.title, \"aria-label\": t.title, role: \"img\" }, on: { click: function(n) {\n return t.$emit(\"click\", n);\n } } }, \"span\", t.$attrs, !1), [s(\"svg\", { staticClass: \"material-design-icon__svg\", attrs: { fill: t.fillColor, width: t.size, height: t.size, viewBox: \"0 0 24 24\" } }, [s(\"path\", { attrs: { d: \"M19,13H13V19H11V13H5V11H11V5H13V11H19V13Z\" } }, [t.title ? s(\"title\", [t._v(t._s(t.title))]) : t._e()])])]);\n}, Zc = [], Xc = /* @__PURE__ */ Cs(\n Jc,\n Yc,\n Zc,\n !1,\n null,\n null,\n null,\n null\n);\nconst Qc = Xc.exports, ed = {\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 td = function() {\n var t = this, s = t._self._c;\n return s(\"span\", t._b({ staticClass: \"material-design-icon upload-icon\", attrs: { \"aria-hidden\": !t.title, \"aria-label\": t.title, role: \"img\" }, on: { click: function(n) {\n return t.$emit(\"click\", n);\n } } }, \"span\", t.$attrs, !1), [s(\"svg\", { staticClass: \"material-design-icon__svg\", attrs: { fill: t.fillColor, width: t.size, height: t.size, viewBox: \"0 0 24 24\" } }, [s(\"path\", { attrs: { d: \"M9,16V10H5L12,3L19,10H15V16H9M5,20V18H19V20H5Z\" } }, [t.title ? s(\"title\", [t._v(t._s(t.title))]) : t._e()])])]);\n}, sd = [], nd = /* @__PURE__ */ Cs(\n ed,\n td,\n sd,\n !1,\n null,\n null,\n null,\n null\n);\nconst ad = nd.exports;\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 Ar = Vr().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 , 2023\", \"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:\nJohn Molakvoæ , 2023\nAli , 2023\n` }, msgstr: [`Last-Translator: Ali , 2023\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`] }, \"{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 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} ملف\", \"تخطَّ {count} ملف\", \"تخطَّ {count} ملف\", \"تخطَّ {count} ملف\", \"تخطَّ {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: \"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\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Asturian (https://www.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:\nTransifex Bot <>, 2022\n` }, msgstr: [`Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Asturian (https://www.transifex.com/nextcloud/teams/64236/ast/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ast\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: \"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\": \"Pavel Borecki , 2023\", \"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:\nJohn Molakvoæ , 2023\nPavel Borecki , 2023\n` }, msgstr: [`Last-Translator: Pavel Borecki , 2023\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 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\"] }, \"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\": \"Simon T, 2023\", \"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:\nJohn Molakvoæ , 2023\nSimon T, 2023\n` }, msgstr: [`Last-Translator: Simon T, 2023\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\"] }, Add: { msgid: \"Add\", msgstr: [\"Tilføj\"] }, \"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 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\"] }, \"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 , 2023\", \"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:\nJohn Molakvoæ , 2023\nMarkus Eckstein, 2023\nMario Siegmann , 2023\n` }, msgstr: [`Last-Translator: Mario Siegmann , 2023\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 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 ist 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\"] }, \"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 , 2023\", \"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:\nJohn Molakvoæ , 2023\nMark Ziegler , 2023\nMario Siegmann , 2023\n` }, msgstr: [`Last-Translator: Mario Siegmann , 2023\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`] }, \"{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 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 Sie beide Versionen auswählen, 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: [\"{count} 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\"] }, \"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 , 2023\", \"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:\nJohn Molakvoæ , 2023\nAndi Chandler , 2023\n` }, msgstr: [`Last-Translator: Andi Chandler , 2023\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\"] }, Add: { msgid: \"Add\", msgstr: [\"Add\"] }, \"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 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: [\"If you select both versions, the copied file will have a number added to its name.\"] }, \"Last modified date unknown\": { msgid: \"Last modified date unknown\", msgstr: [\"Last modified date unknown\"] }, \"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\"] }, \"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\": \"Next Cloud , 2023\", \"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:\nJohn Molakvoæ , 2023\nFranciscoFJ , 2023\nNext Cloud , 2023\n` }, msgstr: [`Last-Translator: Next Cloud , 2023\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`] }, \"{count} file conflict\": { msgid: \"{count} file conflict\", msgid_plural: \"{count} files conflict\", msgstr: [\"{count} archivo en conflicto\", \"{count} archivos en conflicto\", \"{count} archivos en conflicto\"] }, \"{count} file conflict in {dirname}\": { msgid: \"{count} file conflict in {dirname}\", msgid_plural: \"{count} file conflicts in {dirname}\", msgstr: [\"{count} archivo en conflicto en {dirname}\", \"{count} archivos en conflicto en {dirname}\", \"{count} archivos en conflicto 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 uploads\": { msgid: \"Cancel uploads\", msgstr: [\"Cancelar subidas\"] }, Continue: { msgid: \"Continue\", msgstr: [\"Continuar\"] }, \"estimating time left\": { msgid: \"estimating time left\", msgstr: [\"estimación del tiempo restante\"] }, \"Existing version\": { msgid: \"Existing version\", msgstr: [\"Versión 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: [\"Si selecciona ambas versiones, al archivo copiado se le añadirá un número en el nombre.\"] }, \"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\"] }, \"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 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 cancelled\": { msgid: \"Upload cancelled\", msgstr: [\"Subida cancelada\"] }, \"Upload files\": { msgid: \"Upload files\", msgstr: [\"Subir archivos\"] }, \"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\": \"Liviu Milies, 2023\", \"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:\nJohn Molakvoæ , 2023\nJean-Claude Richard , 2023\nClément Saccoccio, 2023\nLiviu Milies, 2023\n` }, msgstr: [`Last-Translator: Liviu Milies, 2023\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 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, un nombre sera postfixé au nom du fichier.\"] }, \"Last modified date unknown\": { msgid: \"Last modified date unknown\", msgstr: [\"Date de dernière modification inconnue\"] }, New: { msgid: \"New\", msgstr: [\"Nou\"] }, \"New version\": { msgid: \"New version\", msgstr: [\"Nouvelle version\"] }, paused: { msgid: \"paused\", msgstr: [\"en pause\"] }, \"Preview image\": { msgid: \"Preview image\", msgstr: [\"Image d'aperçu\"] }, \"Select all checkboxes\": { msgid: \"Select all checkboxes\", msgstr: [\"Sélectionner toutes les cases\"] }, \"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: [\"Envoi annulé\"] }, \"Upload files\": { msgid: \"Upload files\", msgstr: [\"Téléverser des fichiers\"] }, \"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: \"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 , 2023\", \"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:\nJohn Molakvoæ , 2023\nNacho , 2023\nMiguel Anxo Bouzada , 2023\n` }, msgstr: [`Last-Translator: Miguel Anxo Bouzada , 2023\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`] }, \"{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 uploads\": { msgid: \"Cancel uploads\", msgstr: [\"Cancelar envíos\"] }, Continue: { msgid: \"Continue\", msgstr: [\"Continuar\"] }, \"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 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 selecciona ambas as versións, o ficheiro copiado terá un número engadido ao seu nome.\"] }, \"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\"] }, \"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 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 cancelled\": { msgid: \"Upload cancelled\", msgstr: [\"Envío cancelado\"] }, \"Upload files\": { msgid: \"Upload files\", msgstr: [\"Enviar ficheiros\"] }, \"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\": \"Lep Lep, 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\n` }, msgstr: [`Last-Translator: Lep Lep, 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\"] }, Add: { msgid: \"Add\", msgstr: [\"Aggiungi\"] }, \"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 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\": \"Brandon Han, 2022\", \"Language-Team\": \"Korean (https://www.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:\nBrandon Han, 2022\n` }, msgstr: [`Last-Translator: Brandon Han, 2022\nLanguage-Team: Korean (https://www.transifex.com/nextcloud/teams/64236/ko/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ko\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: \"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\": \"Ari Selseng , 2022\", \"Language-Team\": \"Norwegian Bokmål (Norway) (https://www.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:\nAri Selseng , 2022\n` }, msgstr: [`Last-Translator: Ari Selseng , 2022\nLanguage-Team: Norwegian Bokmål (Norway) (https://www.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`] }, \"{seconds} seconds left\": { msgid: \"{seconds} seconds left\", msgstr: [\"{seconds} sekunder igjen\"] }, \"{time} left\": { msgid: \"{time} left\", comments: { extracted: \"time has the format 00:00:00\" }, msgstr: [\"{time} igjen\"] }, \"a few seconds left\": { msgid: \"a few seconds left\", msgstr: [\"noen få sekunder igjen\"] }, Add: { msgid: \"Add\", msgstr: [\"Legg til\"] }, \"Cancel uploads\": { msgid: \"Cancel uploads\", msgstr: [\"Avbryt opplastninger\"] }, \"estimating time left\": { msgid: \"estimating time left\", msgstr: [\"Estimerer tid igjen\"] }, paused: { msgid: \"paused\", msgstr: [\"pauset\"] }, \"Upload files\": { msgid: \"Upload files\", msgstr: [\"Last opp filer\"] } } } } }, { 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\": \"M H , 2023\", \"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:\nJohn Molakvoæ , 2023\nM H , 2023\n` }, msgstr: [`Last-Translator: M H , 2023\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 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 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: [\"Jeżeli wybierzesz obie wersje to do nazw skopiowanych plików 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\"] }, \"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\": \"Flávio Veras , 2022\", \"Language-Team\": \"Portuguese (Brazil) (https://www.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:\nLeonardo Colman , 2022\nJeann Cavalcante , 2022\nFlávio Veras , 2022\n` }, msgstr: [`Last-Translator: Flávio Veras , 2022\nLanguage-Team: Portuguese (Brazil) (https://www.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`] }, \"{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: [\"alguns segundos restantes\"] }, Add: { msgid: \"Add\", msgstr: [\"Adicionar\"] }, \"Cancel uploads\": { msgid: \"Cancel uploads\", msgstr: [\"Cancelar uploads\"] }, \"estimating time left\": { msgid: \"estimating time left\", msgstr: [\"estimando tempo restante\"] }, paused: { msgid: \"paused\", msgstr: [\"pausado\"] }, \"Upload files\": { msgid: \"Upload files\", msgstr: [\"Enviar arquivos\"] } } } } }, { 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\": \"Александр, 2023\", \"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:\nJohn Molakvoæ , 2023\nMax Smith , 2023\nАлександр, 2023\n` }, msgstr: [`Last-Translator: Александр, 2023\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`] }, \"{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: [\"осталось несколько секунд\"] }, 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} файла\", \"Пропустить {count} файлов\", \"Пропустить {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: \"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: [\"Отпреми фајлове\"] }, \"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, 2023\", \"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:\nJohn Molakvoæ , 2023\nMagnus Höglund, 2023\n` }, msgstr: [`Last-Translator: Magnus Höglund, 2023\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`] }, \"{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 uploads\": { msgid: \"Cancel uploads\", msgstr: [\"Avbryt uppladdningar\"] }, Continue: { msgid: \"Continue\", msgstr: [\"Fortsätt\"] }, \"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 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: [\"Om du väljer båda versionerna kommer den kopierade filen att få ett nummer tillagt i namnet.\"] }, \"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\"] }, \"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 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 cancelled\": { msgid: \"Upload cancelled\", msgstr: [\"Uppladdningen avbröts\"] }, \"Upload files\": { msgid: \"Upload files\", msgstr: [\"Ladda upp filer\"] }, \"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 , 2023\", \"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:\nJohn Molakvoæ , 2023\nKaya Zeren , 2023\n` }, msgstr: [`Last-Translator: Kaya Zeren , 2023\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`] }, \"{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 uploads\": { msgid: \"Cancel uploads\", msgstr: [\"Yüklemeleri iptal et\"] }, Continue: { msgid: \"Continue\", msgstr: [\"İlerle\"] }, \"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 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: [\"İki sürümü de seçerseniz, kopyalanan dosyanın adına bir sayı eklenir.\"] }, \"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\"] }, \"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 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 cancelled\": { msgid: \"Upload cancelled\", msgstr: [\"Yükleme iptal edildi\"] }, \"Upload files\": { msgid: \"Upload files\", msgstr: [\"Dosyaları yükle\"] }, \"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 , 2023\", \"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:\nJohn Molakvoæ , 2023\nMehi Loki, 2023\nO St , 2023\n` }, msgstr: [`Last-Translator: O St , 2023\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 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} файлів\", \"Пропустити {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: \"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\": \"blakduk, 2023\", \"Language-Team\": \"Vietnamese (https://www.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:\nblakduk, 2023\n` }, msgstr: [`Last-Translator: blakduk, 2023\nLanguage-Team: Vietnamese (https://www.transifex.com/nextcloud/teams/64236/vi/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: vi\nPlural-Forms: nplurals=1; plural=0;\n`] }, \"{seconds} seconds left\": { msgid: \"{seconds} seconds left\", msgstr: [\"Còn {second} giây\"] }, \"{time} left\": { msgid: \"{time} left\", comments: { extracted: \"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\"] }, Add: { msgid: \"Add\", msgstr: [\"Thêm\"] }, \"Cancel uploads\": { msgid: \"Cancel uploads\", msgstr: [\"Huỷ tải lên\"] }, \"estimating time left\": { msgid: \"estimating time left\", msgstr: [\"Thời gian còn lại dự kiến\"] }, paused: { msgid: \"paused\", msgstr: [\"đã tạm dừng\"] }, \"Upload files\": { msgid: \"Upload files\", msgstr: [\"Tập tin tải lên\"] } } } } }, { 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, 2023\", \"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:\nJohn Molakvoæ , 2023\nCafé Tango, 2023\n` }, msgstr: [`Last-Translator: Café Tango, 2023\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: [\"還剩幾秒\"] }, 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_TW\", json: { charset: \"utf-8\", headers: { \"Last-Translator\": \"黃柏諺 , 2023\", \"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:\nJohn Molakvoæ , 2023\n黃柏諺 , 2023\n` }, msgstr: [`Last-Translator: 黃柏諺 , 2023\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: [\"還剩幾秒\"] }, 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: [\"您必須為每個檔案都至少選取一個版本以繼續。\"] } } } } }].map((e) => Ar.addTranslation(e.locale, e.json));\nconst ps = Ar.build(), qd = ps.ngettext.bind(ps), Te = ps.gettext.bind(ps), id = I.extend({\n name: \"UploadPicker\",\n components: {\n Cancel: Kc,\n NcActionButton: Rr,\n NcActions: Ir,\n NcButton: zr,\n NcIconSvgWrapper: Mr,\n NcProgressBar: Hr,\n Plus: Qc,\n Upload: ad\n },\n props: {\n accept: {\n type: Array,\n default: null\n },\n disabled: {\n type: Boolean,\n default: !1\n },\n multiple: {\n type: Boolean,\n default: !1\n },\n destination: {\n type: ai,\n default: void 0\n },\n /**\n * List of file present in the destination folder\n */\n content: {\n type: Array,\n default: () => []\n }\n },\n data() {\n return {\n addLabel: Te(\"New\"),\n cancelLabel: Te(\"Cancel uploads\"),\n uploadLabel: Te(\"Upload files\"),\n eta: null,\n timeLeft: \"\",\n newFileMenuEntries: [],\n uploadManager: Nr()\n };\n },\n computed: {\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((e) => e.status === ue.FAILED).length !== 0;\n },\n isUploading() {\n return this.queue?.length > 0;\n },\n isAssembling() {\n return this.queue?.filter((e) => e.status === ue.ASSEMBLING).length !== 0;\n },\n isPaused() {\n return this.uploadManager.info?.status === Si.PAUSED;\n },\n // Hide the button text if we're uploading\n buttonName() {\n if (!this.isUploading)\n return this.addLabel;\n }\n },\n watch: {\n destination(e) {\n this.setDestination(e);\n },\n totalQueueSize(e) {\n this.eta = $r({ min: 0, max: e }), this.updateStatus();\n },\n uploadedQueueSize(e) {\n this.eta?.report?.(e), this.updateStatus();\n },\n isPaused(e) {\n e ? this.$emit(\"paused\", this.queue) : this.$emit(\"resumed\", this.queue);\n }\n },\n beforeMount() {\n this.destination && this.setDestination(this.destination), this.uploadManager.addNotifier(this.onUploadCompletion), ie.debug(\"UploadPicker initialised\");\n },\n methods: {\n /**\n * Trigger file picker\n */\n onClick() {\n this.$refs.input.click();\n },\n /**\n * Start uploading\n */\n async onPick() {\n let e = [...this.$refs.input.files];\n if (md(e, this.content)) {\n const t = e.filter((n) => this.content.find((a) => a.basename === n.name)).filter(Boolean), s = e.filter((n) => !t.includes(n));\n try {\n const { selected: n, renamed: a } = await ud(this.destination.basename, t, this.content);\n e = [...s, ...n, ...a];\n } catch {\n Dr(Te(\"Upload cancelled\"));\n return;\n }\n }\n e.forEach((t) => {\n this.uploadManager.upload(t.name, t).catch(() => {\n });\n }), this.$refs.form.reset();\n },\n /**\n * Cancel ongoing queue\n */\n onCancel() {\n this.uploadManager.queue.forEach((e) => {\n e.cancel();\n }), this.$refs.form.reset();\n },\n updateStatus() {\n if (this.isPaused) {\n this.timeLeft = Te(\"paused\");\n return;\n }\n const e = Math.round(this.eta.estimate());\n if (e === 1 / 0) {\n this.timeLeft = Te(\"estimating time left\");\n return;\n }\n if (e < 10) {\n this.timeLeft = Te(\"a few seconds left\");\n return;\n }\n if (e > 60) {\n const t = /* @__PURE__ */ new Date(0);\n t.setSeconds(e);\n const s = t.toISOString().slice(11, 11 + 8);\n this.timeLeft = Te(\"{time} left\", { time: s });\n return;\n }\n this.timeLeft = Te(\"{seconds} seconds left\", { seconds: e });\n },\n setDestination(e) {\n if (!this.destination) {\n ie.debug(\"Invalid destination\");\n return;\n }\n ie.debug(\"Destination set\", { destination: e }), this.uploadManager.destination = e, this.newFileMenuEntries = Ur(e);\n },\n onUploadCompletion(e) {\n e.status === ue.FAILED ? this.$emit(\"failed\", e) : this.$emit(\"uploaded\", e);\n }\n }\n});\nvar rd = function() {\n var t = this, s = t._self._c;\n return t._self._setupProxy, t.destination ? s(\"form\", { ref: \"form\", staticClass: \"upload-picker\", class: { \"upload-picker--uploading\": t.isUploading, \"upload-picker--paused\": t.isPaused }, attrs: { \"data-cy-upload-picker\": \"\" } }, [t.newFileMenuEntries && t.newFileMenuEntries.length === 0 ? s(\"NcButton\", { attrs: { disabled: t.disabled, \"data-cy-upload-picker-add\": \"\", type: \"secondary\" }, on: { click: t.onClick }, scopedSlots: t._u([{ key: \"icon\", fn: function() {\n return [s(\"Plus\", { attrs: { title: \"\", size: 20, decorative: \"\" } })];\n }, proxy: !0 }], null, !1, 2954875042) }, [t._v(\" \" + t._s(t.buttonName) + \" \")]) : s(\"NcActions\", { attrs: { \"menu-name\": t.buttonName, \"menu-title\": t.addLabel, type: \"secondary\" }, scopedSlots: t._u([{ key: \"icon\", fn: function() {\n return [s(\"Plus\", { attrs: { title: \"\", size: 20, decorative: \"\" } })];\n }, proxy: !0 }], null, !1, 2954875042) }, [s(\"NcActionButton\", { attrs: { \"data-cy-upload-picker-add\": \"\", \"close-after-click\": !0 }, on: { click: t.onClick }, scopedSlots: t._u([{ key: \"icon\", fn: function() {\n return [s(\"Upload\", { attrs: { title: \"\", size: 20, decorative: \"\" } })];\n }, proxy: !0 }], null, !1, 3606034491) }, [t._v(\" \" + t._s(t.uploadLabel) + \" \")]), t._l(t.newFileMenuEntries, function(n) {\n return s(\"NcActionButton\", { key: n.id, staticClass: \"upload-picker__menu-entry\", attrs: { icon: n.iconClass, \"close-after-click\": !0 }, on: { click: function(a) {\n return n.handler(t.destination, t.content);\n } }, scopedSlots: t._u([n.iconSvgInline ? { key: \"icon\", fn: function() {\n return [s(\"NcIconSvgWrapper\", { attrs: { svg: n.iconSvgInline } })];\n }, proxy: !0 } : null], null, !0) }, [t._v(\" \" + t._s(n.displayName) + \" \")]);\n })], 2), s(\"div\", { staticClass: \"upload-picker__progress\" }, [s(\"NcProgressBar\", { attrs: { error: t.hasFailure, value: t.progress, size: \"medium\" } }), s(\"p\", [t._v(t._s(t.timeLeft))])], 1), t.isUploading ? s(\"NcButton\", { staticClass: \"upload-picker__cancel\", attrs: { type: \"tertiary\", \"aria-label\": t.cancelLabel, \"data-cy-upload-picker-cancel\": \"\" }, on: { click: t.onCancel }, scopedSlots: t._u([{ key: \"icon\", fn: function() {\n return [s(\"Cancel\", { attrs: { title: \"\", size: 20 } })];\n }, proxy: !0 }], null, !1, 4076886712) }) : t._e(), s(\"input\", { directives: [{ name: \"show\", rawName: \"v-show\", value: !1, expression: \"false\" }], ref: \"input\", attrs: { type: \"file\", accept: t.accept?.join?.(\", \"), multiple: t.multiple, \"data-cy-upload-picker-input\": \"\" }, on: { change: t.onPick } })], 1) : t._e();\n}, od = [], ld = /* @__PURE__ */ Cs(\n id,\n rd,\n od,\n !1,\n null,\n \"f09fb109\",\n null,\n null\n);\nconst Gd = ld.exports;\nlet Wt = null;\nfunction Nr() {\n const e = document.querySelector('input[name=\"isPublic\"][value=\"1\"]') !== null;\n return Wt instanceof na || (Wt = new na(e)), Wt;\n}\nfunction Kd(e, t) {\n const s = Nr();\n return s.upload(e, t), s;\n}\nasync function ud(e, t, s) {\n const { default: n } = await import(\"./ConflictPicker-325ea274.mjs\");\n return new Promise((a, i) => {\n const r = new n({\n propsData: {\n dirname: e,\n conflicts: t,\n content: s\n }\n });\n r.$on(\"submit\", (o) => {\n a(o), r.$destroy(), r.$el?.parentNode?.removeChild(r.$el);\n }), r.$on(\"cancel\", (o) => {\n i(o ?? new Error(\"Canceled\")), r.$destroy(), r.$el?.parentNode?.removeChild(r.$el);\n }), r.$mount(), document.body.appendChild(r.$el);\n });\n}\nfunction md(e, t) {\n const s = t.map((a) => a.basename);\n return e.filter((a) => {\n const i = a instanceof File ? a.name : a.basename;\n return s.indexOf(i) !== -1;\n }).length > 0;\n}\nexport {\n Si as S,\n Gd as U,\n I as V,\n qd as a,\n fl as b,\n ue as c,\n Nr as g,\n md as h,\n ie as l,\n Cs as n,\n ud as o,\n Te as t,\n Kd as u\n};\n","import Queue from 'yocto-queue';\nimport {AsyncResource} from '#async_hooks';\n\nexport default function pLimit(concurrency) {\n\tif (!((Number.isInteger(concurrency) || concurrency === Number.POSITIVE_INFINITY) && concurrency > 0)) {\n\t\tthrow new TypeError('Expected `concurrency` to be a number from 1 and up');\n\t}\n\n\tconst queue = new Queue();\n\tlet activeCount = 0;\n\n\tconst next = () => {\n\t\tactiveCount--;\n\n\t\tif (queue.size > 0) {\n\t\t\tqueue.dequeue()();\n\t\t}\n\t};\n\n\tconst run = async (function_, resolve, arguments_) => {\n\t\tactiveCount++;\n\n\t\tconst result = (async () => function_(...arguments_))();\n\n\t\tresolve(result);\n\n\t\ttry {\n\t\t\tawait result;\n\t\t} catch {}\n\n\t\tnext();\n\t};\n\n\tconst enqueue = (function_, resolve, arguments_) => {\n\t\tqueue.enqueue(\n\t\t\tAsyncResource.bind(run.bind(undefined, function_, resolve, arguments_)),\n\t\t);\n\n\t\t(async () => {\n\t\t\t// This function needs to wait until the next microtask before comparing\n\t\t\t// `activeCount` to `concurrency`, because `activeCount` is updated asynchronously\n\t\t\t// when the run function is dequeued and called. The comparison in the if-statement\n\t\t\t// needs to happen asynchronously as well to get an up-to-date value for `activeCount`.\n\t\t\tawait Promise.resolve();\n\n\t\t\tif (activeCount < concurrency && queue.size > 0) {\n\t\t\t\tqueue.dequeue()();\n\t\t\t}\n\t\t})();\n\t};\n\n\tconst generator = (function_, ...arguments_) => new Promise(resolve => {\n\t\tenqueue(function_, resolve, arguments_);\n\t});\n\n\tObject.defineProperties(generator, {\n\t\tactiveCount: {\n\t\t\tget: () => activeCount,\n\t\t},\n\t\tpendingCount: {\n\t\t\tget: () => queue.size,\n\t\t},\n\t\tclearQueue: {\n\t\t\tvalue() {\n\t\t\t\tqueue.clear();\n\t\t\t},\n\t\t},\n\t});\n\n\treturn generator;\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=\" + {\"923\":\"2686613ba9d88601b889\",\"4454\":\"01ee6c5df96bab2df261\",\"8321\":\"8442e3d18a58ee1f612a\"}[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 = 2181;","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) 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\t2181: 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, [7874], () => (__webpack_require__(75634)))\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["deferred","inProgress","dataWebpackPrefix","getTarget","navigator","window","g","util","warn","isProxyAvailable","Proxy","HOOK_SETUP","supported","perf","ApiProxy","constructor","plugin","hook","this","target","targetQueue","onQueue","defaultSettings","settings","id","item","defaultValue","localSettingsSaveId","currentSettings","Object","assign","raw","localStorage","getItem","data","JSON","parse","e","fallbacks","getSettings","setSettings","value","setItem","stringify","now","undefined","performance","_a","perf_hooks","Date","on","pluginId","proxiedOn","get","_target","prop","args","push","method","proxiedTarget","keys","includes","resolve","Promise","setRealTarget","setupDevtoolsPlugin","pluginDescriptor","setupFn","descriptor","__VUE_DEVTOOLS_GLOBAL_HOOK__","enableProxy","enableEarlyProxy","__VUE_DEVTOOLS_PLUGIN_API_AVAILABLE__","proxy","__VUE_DEVTOOLS_PLUGINS__","emit","activePinia","setActivePinia","pinia","piniaSymbol","Symbol","isPlainObject","o","prototype","toString","call","toJSON","MutationType","IS_CLIENT","USE_DEVTOOLS","__VUE_PROD_DEVTOOLS__","_global","self","global","globalThis","HTMLElement","download","url","name","opts","xhr","XMLHttpRequest","open","responseType","onload","saveAs","response","onerror","console","error","send","corsEnabled","status","click","node","dispatchEvent","MouseEvent","evt","document","createEvent","initMouseEvent","_navigator","userAgent","isMacOSWebView","test","HTMLAnchorElement","blob","a","createElement","rel","href","origin","location","URL","createObjectURL","setTimeout","revokeObjectURL","msSaveOrOpenBlob","autoBom","type","Blob","String","fromCharCode","bom","popup","title","body","innerText","force","isSafari","isChromeIOS","FileReader","reader","onloadend","result","Error","replace","readAsDataURL","toastMessage","message","piniaMessage","__VUE_DEVTOOLS_TOAST__","log","isPinia","checkClipboardAccess","checkNotFocusedError","toLowerCase","fileInput","loadStoresState","state","key","storeState","formatDisplay","display","_custom","PINIA_ROOT_LABEL","PINIA_ROOT_ID","formatStoreForInspectorTree","store","label","$id","formatEventData","events","Array","isArray","reduce","event","operations","oldValue","newValue","operation","formatMutationType","direct","patchFunction","patchObject","isTimelineActive","componentStateTypes","MUTATIONS_LAYER_ID","INSPECTOR_ID","assign$1","getStoreType","registerPiniaDevtools","app","logo","packageName","homepage","api","addTimelineLayer","color","addInspector","icon","treeFilterPlaceholder","actions","action","async","clipboard","writeText","actionGlobalCopyState","tooltip","readText","actionGlobalPasteState","sendInspectorTree","sendInspectorState","actionGlobalSaveState","accept","reject","onchange","files","file","text","oncancel","actionGlobalOpenStateFile","nodeActions","nodeId","_s","$reset","inspectComponent","payload","ctx","componentInstance","_pStores","piniaStores","values","forEach","instanceData","editable","_isOptionsAPI","toRaw","$state","_getters","length","getters","getInspectorTree","inspectorId","stores","concat","from","rootNodes","filter","map","getInspectorState","inspectedStore","storeNames","storeMap","storeId","getterName","_customProperties","size","customProperties","formatStoreForInspectorState","editInspectorState","path","unshift","has","set","editComponentState","startsWith","activeAction","runningActionId","patchActionForGrouping","actionNames","wrapWithProxy","storeActions","actionName","_actionId","trackedStore","Reflect","retValue","apply","arguments","devtoolsPlugin","options","originalHotUpdate","_hotUpdate","newStore","_hmrPayload","logStoreChanges","bind","$onAction","after","onError","groupId","addTimelineEvent","layerId","time","subtitle","logType","watch","unref","notifyComponentUpdate","deep","$subscribe","eventData","detached","flush","hotUpdate","markRaw","info","$dispose","addStoreToDevtools","noop","addSubscription","subscriptions","callback","onCleanup","removeSubscription","idx","indexOf","splice","getCurrentScope","onScopeDispose","triggerSubscriptions","slice","fallbackRunWithContext","fn","mergeReactiveObjects","patchToApply","Map","Set","add","hasOwnProperty","subPatch","targetValue","isRef","isReactive","skipHydrateSymbol","skipHydrateMap","WeakMap","createSetupStore","setup","hot","isOptionsStore","scope","optionsForPlugin","$subscribeOptions","isListening","isSyncListening","debuggerEvents","actionSubscriptions","initialState","hotState","ref","activeListener","$patch","partialStateOrMutator","subscriptionMutation","myListenerId","nextTick","then","newState","wrapAction","afterCallbackList","onErrorCallbackList","ret","catch","partialStore","_p","stopWatcher","run","stop","delete","_r","reactive","setupStore","runWithContext","_e","effectScope","effect","obj","actionValue","defineProperty","nonEnumerable","writable","configurable","enumerable","p","extender","extensions","hydrate","defineStore","idOrOptions","setupOptions","isSetupStore","useStore","hasContext","getCurrentInstance","inject","localState","toRefs","computedGetters","computed","createOptionsStore","compareNumbers","numberA","numberB","compareUnicode","stringA","stringB","localeCompare","Math","abs","RE_NUMBERS","RE_LEADING_OR_TRAILING_WHITESPACES","RE_WHITESPACES","RE_INT_OR_FLOAT","RE_DATE","RE_LEADING_ZERO","RE_UNICODE_CHARACTERS","stringCompare","normalizeAlphaChunk","chunk","parseNumber","parsedNumber","Number","isNaN","normalizeNumericChunk","index","chunks","createChunkMap","normalizedString","createChunkMaps","chunksMaps","split","createChunks","isFunction","valueOf","isNull","isObject","Boolean","isSymbol","isUndefined","getMappedValueRecord","stringValue","getTime","parsedDate","_unused","parseDate","numberify","createIdentifierFn","identifier","isInteger","getOwnPropertyDescriptor","orderBy","collection","identifiers","orders","validatedIdentifiers","identifierList","some","getIdentifiers","validatedOrders","orderList","order","getOrders","identifierFns","mappedCollection","element","sort","recordA","recordB","indexA","valuesA","indexB","valuesB","ordersLength","i","_result","valueA","valueB","chunksA","chunksB","lengthA","lengthB","min","chunkA","chunkB","compareChunks","compareOtherTypes","compareMultiple","getElementByIndex","baseOrderBy","emits","props","fillColor","default","_vm","_c","_self","_b","staticClass","attrs","$event","$emit","$attrs","_v","getLoggerBuilder","setApp","detectUser","build","FileAction","displayName","t","iconSvgInline","InformationSvg","enabled","nodes","OCA","Files","Sidebar","root","permissions","Permission","NONE","exec","view","dir","OCP","Router","goToRoute","fileid","logger","useFilesStore","fileStore","roots","getNode","getNodes","ids","getRoot","service","updateNodes","acc","Vue","deleteNodes","setRoot","_ref","onDeletedNode","onCreatedNode","onUpdatedNode","_initialized","subscribe","usePathsStore","pathsStore","paths","getPath","addPath","getNavigation","active","FileType","Folder","dirname","_children","parentId","parentFolder","debug","useSelectionStore","selected","lastSelection","lastSelectedIndex","selection","setLastIndex","reset","uploader","userConfig","loadState","show_hidden","crop_image_previews","sort_favorites_first","grid_view","useUserConfigStore","userConfigStore","onUpdate","update","axios","put","generateUrl","viewConfig","useViewConfigStore","getConfig","setSortingBy","toggleSortingDirection","newDirection","sorting_direction","viewConfigStore","extend","components","Home","NcBreadcrumbs","NcBreadcrumb","filesStore","currentView","$navigation","dirs","sections","getFileIdFromPath","to","$route","params","query","exact","getDirDisplayName","methods","getNodeFromId","fileId","attributes","basename","onClick","ariaLabel","section","styleTagTransform","setAttributes","insert","domAPI","insertStyleElement","locals","_setupProxy","scopedSlots","_u","_t","_l","nativeOn","FileMultipleIcon","FolderIcon","isSingleNode","isSingleFolder","summary","totalSize","total","parseInt","formatFileSize","fileCount","File","folderCount","n","getSummaryFor","$refs","previewImg","replaceChildren","preview","querySelector","appendChild","parentNode","cloneNode","$nextTick","$el","Preview","DragAndDropPreview","getDragAndDropPreview","$mount","$on","$off","Axios","AxiosError","CanceledError","isCancel","CancelToken","VERSION","all","Cancel","isAxiosError","spread","toFormData","AxiosHeaders","HttpStatusCode","formToJSON","getAdapter","mergeConfig","queue","getQueue","PQueue","concurrency","MoveCopyAction","canMove","ALL","UPDATE","canCopy","every","attribute","canDownload","getActionForNodes","MOVE_OR_COPY","MOVE","COPY","handleCopyMoveNodeTo","destination","overwrite","relativePath","join","destinationUrl","generateRemoteUrl","getCurrentUser","uid","NodeStatus","LOADING","encodedSource","headers","Destination","encodeURI","Overwrite","openFilePickerForAction","fileIDs","filePicker","getFilePickerBuilder","allowDirectories","setFilter","CREATE","setMimeTypeFilter","setMultiSelect","startAt","setButtonFactory","_selection","buttons","dirnames","CopyIconSvg","FolderMoveSvg","pick","hashCode","showError","execBatch","promises","str","b","charCodeAt","useActionsMenuStore","opened","useDragAndDropStore","dragging","useRenamingStore","renamingStore","renamingNode","newName","source","required","render","Function","updateRootElement","mounted","getFileActions","ArrowLeftIcon","ChevronRightIcon","CustomElementRender","NcActionButton","NcActions","NcActionSeparator","NcIconSvgWrapper","NcLoadingIcon","filesListWidth","loading","gridMode","openedSubmenu","currentDir","isLoading","enabledActions","failed","enabledInlineActions","inline","enabledRenderActions","renderInline","enabledDefaultActions","enabledMenuActions","DefaultType","HIDDEN","findIndex","topActionsIds","parent","enabledSubmenuActions","arr","openedMenu","getBoundariesElement","mountType","_attributes","actionDisplayName","onActionClick","isSubmenu","success","showSuccess","execDefaultAction","preventDefault","stopPropagation","isMenu","class","NcCheckboxRadioSwitch","selectionStore","keyboardStore","altKey","ctrlKey","metaKey","shiftKey","onEvent","addEventListener","useKeyboardStore","selectedFiles","isSelected","onSelectionChange","newSelectedIndex","isAlreadySelected","start","end","max","filesToSelect","forbiddenCharacters","NcTextField","extension","isRenaming","isRenamingSmallScreen","renameLabel","linkTo","is","$parent","role","READ","renaming","startRenaming","checkInputValidity","input","trim","isFileNameValid","setCustomValidity","reportValidity","trimmedName","match","OC","config","blacklist_files_regex","checkIfNodeExists","char","find","extLength","renameInput","inputField","setSelectionRange","focus","Event","stopRenaming","onRename","oldName","oldEncodedSource","rename","directives","rawName","expression","_k","keyCode","domProps","defineComponent","StarSvg","el","setAttribute","AccountGroupIcon","AccountPlusIcon","CollectivesIcon","FavoriteIcon","FileIcon","FolderOpenIcon","KeyIcon","LinkIcon","NetworkIcon","TagIcon","dragover","backgroundFailed","isFavorite","favorite","cropPreviews","previewUrl","searchParams","fileOverlay","PlayCircleIcon","folderOverlay","shareTypes","flat","ShareType","SHARE_TYPE_LINK","SHARE_TYPE_EMAIL","src","_m","tag","directive","vOnClickOutside","FileEntryActions","FileEntryCheckbox","FileEntryName","FileEntryPreview","NcDateTime","isMtimeAvailable","isSizeAvailable","NcFile","Node","compact","actionsMenuStore","draggingStore","rowListeners","dragstart","onDragStart","onDragOver","contextmenu","onRightClick","dragleave","onDragLeave","dragend","onDragEnd","drop","onDrop","columns","currentFileId","uniqueId","extname","ext","sizeOpacity","round","pow","mtimeOpacity","maxOpacityTime","mtime","ratio","mtimeTitle","moment","format","draggingFiles","isActive","canDrag","canDrop","resetState","beforeDestroy","isMoreThanOneSelected","openDetailsIfAvailable","sidebarAction","dataTransfer","dropEffect","currentTarget","contains","relatedTarget","image","setDragImage","button","isCopy","getUploader","upload","_g","style","column","inheritAttrs","header","currentFolder","updated","mount","classForColumn","translate","fileListEl","clientWidth","$resizeObserver","ResizeObserver","entries","contentRect","width","observe","disconnect","mixins","filesListWidthMixin","selectedNodes","areSomeNodesLoading","inlineActions","selectionIds","results","failedIds","keysOrMapper","reduced","$pinia","storeKey","sortingMode","sorting_mode","defaultSortKey","isAscSorting","sortingDirection","toggleSortBy","MenuDown","MenuUp","NcButton","filesSortingMixin","mode","FilesListTableHeaderButton","FilesListTableHeaderActions","selectAllBind","isNoneSelected","isSomeSelected","checked","isAllSelected","indeterminate","ariaSortForMode","onToggleAll","dataComponent","dataKey","dataSources","extraProps","scrollToIndex","caption","beforeHeight","headerHeight","tableHeight","resizeObserver","isReady","bufferItems","columnCount","itemHeight","itemWidth","rowCount","ceil","floor","startIndex","shownItems","renderedItems","items","oldItemsKeys","$_recycledPool","unusedKeys","pop","random","substr","tbodyStyle","isOverScrolled","lastIndex","hiddenAfterItems","paddingTop","paddingBottom","scrollTo","oldColumnCount","before","thead","debounce","clientHeight","onScroll","passive","scrollTop","_onScrollHandle","requestAnimationFrame","topScroll","FilesListHeader","FilesListTableFooter","FilesListTableHeader","VirtualList","View","FileEntry","FileEntryGrid","getFileListHeaders","dndNoticeHeight","summaryFile","count","summaryFolder","sortedHeaders","defaultCaption","scrollToFile","openSidebarForFile","handleOpenFile","removeEventListener","documentElement","openFileInfo","getFileId","isForeignFile","types","tableTop","table","getBoundingClientRect","top","tableBottom","height","clientY","handleFileUpload","filename","handleRecursiveUpload","entry","isFile","directory","absolutPath","davRootPath","davClient","davGetClient","exists","createDirectory","recursive","stat","details","davGetDefaultPropfind","davResultToNode","dirReader","createReader","getEntries","readEntries","readDirectory","TrayArrowDownIcon","mainContent","uploads","kind","getAsEntry","webkitGetAsEntry","getAsFile","handleDrop","lastUpload","findLast","webkitRelativePath","$router","isSharingEnabled","getCapabilities","files_sharing","BreadCrumbs","DragAndDropNotice","FilesListVirtual","ListViewIcon","NcAppContent","NcEmptyContent","ShareVariantIcon","UploadPicker","ViewGridIcon","uploaderStore","useUploaderStore","promise","Type","views","sortingParameters","v","dirContentsSorted","customColumn","dirContents","reverse","showHidden","hidden","isEmptyDir","isRefreshing","toPreviousDir","shareAttributes","shareButtonLabel","shareButtonType","SHARE_TYPE_USER","gridViewButtonLabel","canUpload","canShare","SHARE","newView","oldView","fetchContent","newDir","oldDir","filesListVirtual","contents","folder","cancel","getContents","$set","onUpload","openSharingSidebar","setActiveTab","toggleGridView","translatePlural","emptyTitle","emptyCaption","throttle","delay","timeoutID","_ref$noTrailing","noTrailing","_ref$noLeading","noLeading","_ref$debounceMode","debounceMode","cancelled","lastExec","clearExistingTimeout","clearTimeout","wrapper","_len","arguments_","_key","elapsed","clear","_ref2$upcomingOnly","upcomingOnly","ChartPie","NcAppNavigationItem","NcProgressBar","loadingStorageStats","storageStats","storageStatsTitle","usedQuotaByte","used","quotaByte","quota","storageStatsTooltip","relative","beforeMount","setInterval","throttleUpdateStorageStats","debounceUpdateStorageStats","_ref$atBegin","atBegin","updateStorageStats","slot","Clipboard","NcAppSettingsDialog","NcAppSettingsSection","NcInputField","Setting","Settings","webdavUrl","encodeURIComponent","webdavDocs","appPasswordUrl","webdavUrlCopied","setting","close","onClose","setConfig","copyCloudId","select","Cog","NavigationQuota","NcAppNavigation","SettingsModal","Navigation","settingsOpened","currentViewId","parentViews","childViews","list","setActive","showView","heading","headingEl","getElementById","textContent","setPageHeading","onToggleExpand","isExpanded","expanded","generateToNavigation","openSettings","onSettingsClose","iconClass","sticky","child","token","singleMatcher","RegExp","multiMatcher","decodeComponents","decodeURIComponent","left","right","decode","tokens","splitOnFirst","string","separator","TypeError","separatorIndex","includeKeys","object","predicate","ownKeys","isNullOrUndefined","strictUriEncode","x","toUpperCase","encodeFragmentIdentifier","validateArrayFormatSeparator","encode","strict","encodedURI","replaceMap","customDecodeURIComponent","keysSorter","removeHash","hashStart","parseValue","parseNumbers","parseBooleans","extract","queryStart","arrayFormat","arrayFormatSeparator","formatter","accumulator","isEncodedArray","arrayValue","parserForArrayFormat","returnValue","create","parameter","parameter_","key2","value2","shouldFilter","skipNull","skipEmptyString","keyValueSep","encoderForArrayFormat","objectCopy","parseUrl","url_","hash","parseFragmentIdentifier","fragmentIdentifier","stringifyUrl","queryString","getHash","urlObjectForFragmentEncode","exclude","encodeReserveRE","encodeReserveReplacer","c","commaRE","err","castQueryParamValue","parseQuery","res","param","parts","shift","val","stringifyQuery","val2","trailingSlashRE","createRoute","record","redirectedFrom","router","clone","route","meta","fullPath","getFullPath","matched","formatMatch","freeze","START","_stringifyQuery","isSameRoute","onlyPath","isObjectEqual","aKeys","bKeys","aVal","bVal","handleRouteEntered","instances","instance","cbs","enteredCbs","i$1","_isBeingDestroyed","functional","_","children","routerView","h","$createElement","cache","_routerViewCache","depth","inactive","_routerRoot","vnodeData","$vnode","keepAlive","_directInactive","_inactive","routerViewDepth","cachedData","cachedComponent","component","configProps","fillPropsinData","registerRouteInstance","vm","current","prepatch","vnode","init","propsToPass","resolveProps","resolvePath","base","append","firstChar","charAt","stack","segments","segment","cleanPath","isarray","pathToRegexp_1","pathToRegexp","groups","prefix","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","encodeURIComponentPretty","matches","pretty","j","re","sensitive","endsWithDelimiter","compile","regexpCompileCache","fillParams","routeMsg","filler","pathMatch","normalizeLocation","_normalized","params$1","rawPath","parsedPath","hashIndex","queryIndex","parsePath","basePath","extraQuery","_parseQuery","parsedQuery","resolveQuery","_Vue","custom","exactPath","activeClass","exactActiveClass","ariaCurrentValue","this$1$1","classes","globalActiveClass","linkActiveClass","globalExactActiveClass","linkExactActiveClass","activeClassFallback","exactActiveClassFallback","compareTarget","queryIncludes","isIncludedRoute","handler","guardEvent","scopedSlot","$scopedSlots","$hasNormal","navigate","isExactActive","findAnchor","$slots","isStatic","aData","handler$1","event$1","aAttrs","defaultPrevented","getAttribute","inBrowser","createRouteMap","routes","oldPathList","oldPathMap","oldNameMap","parentRoute","pathList","pathMap","nameMap","addRouteRecord","l","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","len","Time","genStateKey","toFixed","getStateKey","setStateKey","positionStore","setupScroll","history","scrollRestoration","protocolAndPath","protocol","host","absolutePath","stateCopy","replaceState","handlePopState","handleScroll","isPop","behavior","scrollBehavior","position","getScrollPosition","shouldScroll","scrollToPosition","saveScrollPosition","pageXOffset","y","pageYOffset","isValidPosition","isNumber","normalizePosition","hashStartsWithNumberRE","selector","docRect","elRect","getElementPosition","ua","supportsPushState","pushState","NavigationFailureType","redirected","aborted","duplicated","createNavigationCancelledError","createRouterError","_isRouter","propertiesToLog","isError","isNavigationFailure","errorType","runQueue","cb","step","flatMapComponents","flatten","hasSymbol","toStringTag","once","called","History","baseEl","normalizeBase","pending","ready","readyCbs","readyErrorCbs","errorCbs","listeners","extractGuards","records","guards","def","guard","extractGuard","bindGuard","listen","onReady","errorCb","transitionTo","onComplete","onAbort","prev","confirmTransition","updateRoute","ensureURL","afterHooks","abort","lastRouteIndex","lastCurrentIndex","activated","deactivated","resolveQueue","extractLeaveGuards","beforeHooks","extractUpdateHooks","hasAsync","cid","resolvedDef","__esModule","resolved","reason","msg","comp","iterator","createNavigationAbortedError","createNavigationRedirectedError","enterGuards","bindEnterGuard","extractEnterGuards","resolveHooks","setupListeners","teardown","cleanupListener","HTML5History","_startLocation","getLocation","__proto__","expectScroll","supportsScroll","handleRoutingEvent","go","fromRoute","getCurrentLocation","pathname","pathLowerCase","baseLowerCase","search","HashHistory","fallback","checkFallback","ensureSlash","replaceHash","eventType","pushHash","getUrl","AbstractHistory","targetIndex","VueRouter","apps","matcher","prototypeAccessors","$once","routeOrError","handleInitialScroll","_route","beforeEach","registerHook","beforeResolve","afterEach","back","forward","getMatchedComponents","createHref","normalizedTo","defineProperties","VueRouter$1","install","installed","isDef","registerInstance","callVal","$options","_parentVnode","mixin","beforeCreate","_router","defineReactive","destroyed","strats","optionMergeStrategies","beforeRouteEnter","beforeRouteLeave","beforeRouteUpdate","created","version","START_LOCATION","use","originalPush","__webpack_nonce__","btoa","getRequestToken","goTo","_provided","provideCache","toBeInstalled","provide","globalProperties","createPinia","_settings","register","_defineProperty","_name","_el","_open","_close","NavigationView","propsData","FilesListView","___CSS_LOADER_URL_IMPORT_0___","___CSS_LOADER_URL_IMPORT_1___","___CSS_LOADER_EXPORT___","___CSS_LOADER_URL_REPLACEMENT_0___","___CSS_LOADER_URL_REPLACEMENT_1___","module","webpackContext","req","webpackContextResolve","__webpack_require__","code","exports","d","RC","autostart","ignoreSameProgress","rate","lastTimestamp","lastProgress","historyTimeConstant","previousOutput","dt","report","progress","timestamp","deltaTimestamp","currentRate","estimate","Infinity","estimatedTime","setUid","Ne","_entries","registerEntry","validateEntry","unregisterEntry","r","getEntryIndex","C","P","Yt","s","parseFloat","toLocaleString","Z","DEFAULT","Qt","_action","validateAction","er","_nc_fileactions","nr","_nc_filelistheader","N","DELETE","Y","nc","oc","ocs","V","_nc_dav_properties","L","_nc_dav_namespaces","sr","or","R","J","X","crtime","mime","owner","Q","NEW","FAILED","LOCKED","D","_data","_knownDavService","updateMtime","deleteProperty","isDavRessource","move","ye","super","ee","te","ur","setHeaders","requesttoken","patch","fetch","dr","getDirectoryContents","includeSelf","ve","be","lastmod","getcontentlength","hasPreview","Te","_views","_currentView","remove","ar","_nc_navigation","Ie","_column","Ae","S","O","isExist","u","isEmptyObject","merge","f","getValue","isName","getAllMatches","nameRegexp","M","Oe","allowBooleanAttributes","unpairedTags","U","G","w","z","validate","substring","Re","xe","H","line","tagClosed","tagName","tagStartPos","col","Ve","Ce","Pe","$e","Le","Fe","B","preserveOrder","attributeNamePrefix","attributesGroupName","textNodeName","ignoreAttributes","removeNSPrefix","parseTagValue","parseAttributeValue","trimValues","cdataPropName","numberParseOptions","hex","leadingZeros","eNotation","tagValueProcessor","attributeValueProcessor","stopNodes","alwaysCreateTextNode","commentPropName","processEntities","htmlEntities","ignoreDeclaration","ignorePiTags","transformTagName","transformAttributeName","updateTag","buildOptions","defaultOptions","ke","Xe","Ue","Ge","ze","He","Ke","We","je","Ye","Je","decimalPoint","k","T","tagname","addChild","tt","entityName","regx","entities","rt","skipLike","De","it","lastEntities","st","replaceEntitiesValue","$","ot","ut","resolveNameSpace","at","saveTextToParentTag","lastIndexOf","tagsNodeStack","tagExp","attrExpPresent","buildAttributesMap","closeIndex","docTypeEntities","parseTextData","rawTagName","isItStopNode","E","readStopNodeData","tagContent","lt","ft","ampEntity","ct","ht","pt","gt","ne","ie","Nt","bt","Et","prettify","yt","currentNode","apos","quot","space","cent","pound","yen","euro","copyright","reg","inr","addExternalEntities","parseXml","vt","Tt","se","Pt","xt","oe","K","indentBy","suppressUnpairedNode","suppressEmptyNode","endsWith","suppressBooleanAttributes","Ft","Vt","oneListGroup","isAttribute","attrPrefixLen","St","processTextOrObjNode","Lt","indentate","Rt","tagEndChar","newLine","j2x","buildTextValNode","attrStr","buildObjectNode","arrayNodeName","buildAttrPairStr","closeTag","W","XMLParser","externalEntities","addEntity","XMLValidator","XMLBuilder","cr","_view","Ut","emptyView","Xt","gr","_nc_newfilemenu","numeric","sensitivity","CancelError","isCanceled","promiseState","canceled","rejected","PCancelable","userFunction","onCancel","executor","description","shouldReject","boolean","onFulfilled","onRejected","onFinally","finally","setPrototypeOf","AsyncResource","_type","thisArg","ii","Wr","getPrototypeOf","hs","fe","Ts","ri","Kr","oi","ws","qt","Yr","Zr","Xr","Qr","so","allOwnKeys","getOwnPropertyNames","li","ui","mi","mo","Uint8Array","Vn","ho","ci","getOwnPropertyDescriptors","bs","Wn","di","DIGIT","ALPHA","ALPHA_DIGIT","Lo","isArrayBuffer","isBuffer","isFormData","FormData","isArrayBufferView","ArrayBuffer","isView","buffer","isString","isBoolean","isDate","isBlob","isRegExp","isStream","pipe","isURLSearchParams","isTypedArray","isFileList","Is","caseless","stripBOM","inherits","toFlatObject","kindOf","kindOfTest","toArray","forEachEntry","done","matchAll","isHTMLForm","hasOwnProp","reduceDescriptors","freezeMethods","toObjectSet","toCamelCase","toFiniteNumber","isFinite","findKey","isContextDefined","ALPHABET","generateString","isSpecCompliantForm","toJSONObject","isAsyncFn","isThenable","captureStackTrace","request","number","fileName","lineNumber","columnNumber","fi","gi","zs","pi","qn","cause","Eo","vs","metaTokens","dots","indexes","visitor","toISOString","Buffer","So","defaultVisitor","convertValue","isVisitable","Gn","gn","_pairs","hi","Fo","Ti","serialize","Kn","handlers","fulfilled","synchronous","runWhen","eject","wi","silentJSONParsing","forcedJSONParsing","clarifyTimeoutError","Oo","isBrowser","URLSearchParams","protocols","vi","Bo","product","jo","WorkerGlobalScope","importScripts","ce","hasBrowserEnv","hasStandardBrowserEnv","hasStandardBrowserWebWorkerEnv","xi","Io","Ro","pn","transitional","adapter","transformRequest","getContentType","setContentType","isNode","$o","formSerializer","env","zo","transformResponse","ERR_BAD_RESPONSE","timeout","xsrfCookieName","xsrfHeaderName","maxContentLength","maxBodyLength","validateStatus","common","Accept","hn","Mo","Jn","Gt","ks","xs","Wo","Ho","Vo","normalize","qo","accessor","accessors","Go","Ss","yi","__CANCEL__","At","ERR_CANCELED","Jo","write","toGMTString","cookie","read","_i","Yo","Zo","Xo","hostname","port","Yn","loaded","lengthComputable","bytes","estimated","sl","cancelToken","unsubscribe","signal","auth","username","password","unescape","baseURL","getAllResponseHeaders","ERR_BAD_REQUEST","Ko","responseText","statusText","paramsSerializer","onreadystatechange","readyState","responseURL","onabort","ECONNABORTED","ERR_NETWORK","ontimeout","timeoutErrorMessage","ETIMEDOUT","setRequestHeader","withCredentials","onDownloadProgress","onUploadProgress","Qo","Ms","http","Zn","nl","Ci","Es","throwIfRequested","Xn","Qn","timeoutMessage","decompress","beforeRedirect","transport","httpAgent","httpsAgent","socketPath","responseEncoding","Tn","ea","ERR_DEPRECATED","Hs","assertOptions","ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","validators","ts","defaults","interceptors","function","getUri","Kt","Vs","Continue","SwitchingProtocols","Processing","EarlyHints","Ok","Created","Accepted","NonAuthoritativeInformation","NoContent","ResetContent","PartialContent","MultiStatus","AlreadyReported","ImUsed","MultipleChoices","MovedPermanently","Found","SeeOther","NotModified","UseProxy","Unused","TemporaryRedirect","PermanentRedirect","BadRequest","Unauthorized","PaymentRequired","Forbidden","NotFound","MethodNotAllowed","NotAcceptable","ProxyAuthenticationRequired","RequestTimeout","Conflict","Gone","LengthRequired","PreconditionFailed","PayloadTooLarge","UriTooLong","UnsupportedMediaType","RangeNotSatisfiable","ExpectationFailed","ImATeapot","MisdirectedRequest","UnprocessableEntity","Locked","FailedDependency","TooEarly","UpgradeRequired","PreconditionRequired","TooManyRequests","RequestHeaderFieldsTooLarge","UnavailableForLegalReasons","InternalServerError","NotImplemented","BadGateway","ServiceUnavailable","GatewayTimeout","HttpVersionNotSupported","VariantAlsoNegotiates","InsufficientStorage","LoopDetected","NotExtended","NetworkAuthenticationRequired","ul","ki","bi","_listeners","ml","Ad","Nd","Fs","Pd","Ud","Od","Bd","jd","Dd","$d","Rd","Id","zd","Md","Hd","Vd","cl","POSITIVE_INFINITY","activeCount","function_","dequeue","generator","enqueue","pendingCount","clearQueue","jt","ta","sa","readAsArrayBuffer","wt","appConfig","max_chunk_size","ue","INITIALIZED","UPLOADING","ASSEMBLING","FINISHED","CANCELLED","fl","_source","_file","_isChunked","_chunks","_size","_uploaded","_startTime","_status","_controller","_response","AbortController","isChunked","startTime","uploaded","gl","Si","IDLE","PAUSED","na","_destinationFolder","_isPublic","_uploadQueue","_jobQueue","_queueSize","_queueProgress","_queueStatus","_notifiers","isPublic","maxChunksSize","pause","updateStats","addNotifier","lastModified","dl","onIdle","q","ys","Fi","Ws","hl","Ai","wl","vl","qe","Ni","xl","Pi","_length","qs","Ui","Dt","Oi","Bi","ss","aa","ji","silent","productionTip","devtools","errorHandler","warnHandler","ignoredElements","keyCodes","isReservedTag","isReservedAttr","isUnknownElement","getTagNamespace","parsePlatformTagName","mustUseProp","_lifecycleHooks","wn","Ll","kl","$i","Sl","ia","Gs","Ri","ra","$t","process","VUE_ENV","ns","Me","_scope","off","elm","context","fnContext","fnOptions","fnScopeId","componentOptions","isRootInsert","isComment","isCloned","isOnce","asyncFactory","asyncMeta","isAsyncPlaceholder","Ks","El","Jt","_pending","subs","addSub","removeSub","depend","addDep","notify","mt","Ii","__ob__","observeArray","dep","oa","zi","vn","Nl","la","shallow","mock","vmCount","isExtensible","__v_skip","de","Hi","Cl","xn","yn","_isVue","Mi","Vi","Pl","__v_isReadonly","__v_isRef","Js","Ol","effects","cleanups","scopes","Ys","fns","Wi","Se","merged","ma","_n","qi","pl","_isVList","Il","zl","Ml","ms","ca","Hl","Vl","Wl","_staticTrees","Gi","staticRenderFns","_renderProxy","ql","da","Gl","Ki","$stable","$key","Kl","Jl","Ji","_o","_q","_f","_d","Cn","Yl","Ct","Zl","Xl","rs","tu","Yi","Zs","As","Zi","ou","Xi","os","Rl","pre","ya","Qi","ls","uu","lu","errorCaptured","fa","_handled","ga","Xs","Qs","en","mu","MutationObserver","It","cu","pa","createTextNode","characterData","setImmediate","Ln","ha","Zt","isFrozen","fu","bn","Bl","_watcher","user","lazy","sync","post","dirty","deps","newDeps","depIds","newDepIds","getter","bl","cleanupDeps","kt","noRecurse","En","we","tn","Ta","Fu","evaluate","onStop","pu","hu","Tu","tr","kn","$children","_hasHookEvent","Sn","sn","Ns","timeStamp","bu","Eu","_isMounted","_isDestroyed","ku","Fl","ir","Fn","_original","_compiled","injections","slots","_scopeId","wa","va","__name","_componentTag","An","_isComponent","inlineTemplate","Ctor","Uu","_renderChildren","_vnode","_attrsProxy","_parentListeners","_listenersProxy","$listeners","_props","_propKeys","On","$forceUpdate","Su","destroy","$destroy","xa","_base","errorComp","owners","loadingComp","ru","iu","jn","model","ju","$l","Pu","abstract","_merged","Bu","Ou","Ca","Iu","zu","Mu","rr","Vu","Wu","qu","extends","ba","cs","Gu","Zu","La","le","Bn","im","rm","_setupContext","_slotsProxy","su","expose","eu","_setupState","__sfc","Ql","cm","lm","om","_computedWatchers","um","lr","mm","nn","dm","Aa","Na","$watch","gm","superOptions","sealedOptions","Tm","extendOptions","I","_init","Pa","zt","Ei","Ua","an","_uid","hm","$root","vu","_events","gu","nu","Nu","Dl","Au","pm","$delete","immediate","fm","wu","_update","__patch__","__vue__","xu","_render","au","Oa","Lm","include","cacheVNode","vnodeToCache","keyToCache","bm","KeepAlive","mergeOptions","observable","_installedPlugins","wm","_Ctor","ym","xm","Cm","km","ssrContext","Sm","Em","Am","Nm","ds","Pm","rn","Dn","mr","Ba","$n","Rn","Bm","jm","Dm","svg","math","$m","In","Mt","ec","multiple","createElementNS","createComment","insertBefore","removeChild","nextSibling","setTextContent","setStyleScope","tc","nt","refInFor","ja","Ee","sc","ic","Os","Da","oldArg","arg","componentUpdated","inserted","rc","modifiers","lc","uc","$a","_v_attr_proxy","Ra","removeAttributeNS","removeAttribute","Ia","setAttributeNS","__ieph","stopImmediatePropagation","mc","za","Om","Um","_transitionClasses","_prevClass","cc","Bs","js","fc","gc","pc","_wrapper","ownerDocument","Ds","change","dc","Ht","hc","Ma","childNodes","_value","Tc","innerHTML","firstChild","composing","activeElement","wc","_vModifiers","vc","xc","yc","$s","fr","staticStyle","Cc","Ha","Va","setProperty","Lc","Wa","qa","normalizedStyle","bc","pr","classList","hr","Tr","css","Ga","enterClass","enterToClass","enterActiveClass","leaveClass","leaveToClass","leaveActiveClass","wr","et","Rs","fs","ln","vr","ontransitionend","onwebkittransitionend","onanimationend","onwebkitanimationend","Ka","xr","yr","propCount","kc","getComputedStyle","Ja","hasTransform","Ya","un","_leaveCb","transition","_enterCb","nodeType","appearClass","appearToClass","appearActiveClass","enter","afterEnter","enterCancelled","beforeAppear","appear","afterAppear","appearCancelled","duration","Be","ge","ae","Ze","Ot","pe","Bt","zn","show","br","Cr","beforeLeave","leave","afterLeave","leaveCancelled","delayLeave","Za","Sc","activate","Ac","modules","nodeOps","F","A","pendingInsert","Ls","postpatch","hasChildNodes","hasAttribute","Qe","ac","vmodel","Mn","kr","_vOptions","Xa","gs","Nc","ti","ei","Qa","selectedIndex","initEvent","mn","Pc","__vOriginalDisplay","unbind","Uc","Sr","cn","Er","si","jc","Dc","$c","Oc","_leaving","Bc","Fr","moveClass","Rc","kept","prevChildren","pos","removed","hasMove","Ic","zc","Mc","_reflow","offsetHeight","moved","transform","WebkitTransform","transitionDuration","_moveCb","propertyName","_hasMove","newPos","Hc","Transition","TransitionGroup","Cs","__VUE_SSR_CONTEXT__","_registeredComponents","_ssrRegister","shadowRoot","_injectStyles","HTMLUnknownElement","_preWatchers","yu","zm","Kc","fill","viewBox","Qc","ad","Ar","detectLocale","locale","json","charset","Language","translations","msgid","comments","translator","msgstr","Add","paused","msgid_plural","extracted","New","addTranslation","ps","qd","ngettext","gettext","Plus","Upload","disabled","content","addLabel","cancelLabel","uploadLabel","eta","timeLeft","newFileMenuEntries","uploadManager","Nr","totalQueueSize","uploadedQueueSize","hasFailure","isUploading","isAssembling","isPaused","buttonName","setDestination","updateStatus","onUploadCompletion","onPick","md","renamed","conflicts","ud","form","setSeconds","seconds","Gd","decorative","Wt","__webpack_module_cache__","moduleId","cachedModule","__webpack_modules__","chunkIds","priority","notFulfilled","definition","chunkId","script","needAttach","scripts","getElementsByTagName","onScriptComplete","doneFns","head","nmd","scriptUrl","currentScript","baseURI","installedChunks","installedChunkData","realSrc","webpackJsonpCallback","parentChunkLoadingFunction","moreModules","runtime","chunkLoadingGlobal","__webpack_exports__"],"sourceRoot":""} \ No newline at end of file