{"version":3,"file":"files-main.js?v=1b52064ba81a5af93876","mappings":"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","sources":["webpack:///nextcloud/webpack/runtime/chunk loaded","webpack:///nextcloud/webpack/runtime/load script","webpack:///nextcloud/apps/files/src/utils/davUtils.js","webpack:///nextcloud/apps/files/src/utils/fileUtils.js","webpack:///nextcloud/apps/files/src/components/TemplatePreview.vue","webpack:///nextcloud/apps/files/src/components/TemplatePreview.vue?vue&type=script&lang=js&","webpack://nextcloud/./apps/files/src/components/TemplatePreview.vue?9ec4","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","webpack:///nextcloud/apps/files/src/views/TemplatePicker.vue?vue&type=script&lang=js&","webpack:///nextcloud/apps/files/src/services/Templates.js","webpack://nextcloud/./apps/files/src/views/TemplatePicker.vue?9ada","webpack://nextcloud/./apps/files/src/views/TemplatePicker.vue?afd8","webpack://nextcloud/./apps/files/src/views/TemplatePicker.vue?1f7b","webpack:///nextcloud/apps/files/src/templates.js","webpack:///nextcloud/apps/files/src/legacy/filelistSearch.js","webpack:///nextcloud/apps/files/src/logger.js","webpack:///nextcloud/apps/files/src/services/FileAction.ts","webpack:///nextcloud/apps/files/src/actions/deleteAction.ts","webpack:///nextcloud/apps/files/src/actions/openFolderAction.ts","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/viewConfig.ts","webpack://nextcloud/./apps/files/src/components/BreadCrumbs.vue?e906","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?e59f","webpack://nextcloud/./apps/files/src/components/BreadCrumbs.vue?d357","webpack:///nextcloud/apps/files/src/components/FilesListVirtual.vue","webpack:///nextcloud/apps/files/src/utils/hashUtils.ts","webpack:///nextcloud/apps/files/src/store/actionsmenu.ts","webpack:///nextcloud/apps/files/src/store/userconfig.ts","webpack:///nextcloud/apps/files/src/components/CustomElementRender.vue?vue&type=script&lang=js&","webpack:///nextcloud/apps/files/src/components/CustomElementRender.vue","webpack://nextcloud/./apps/files/src/components/CustomElementRender.vue?5f5c","webpack://nextcloud/./apps/files/src/components/CustomElementRender.vue?4ee7","webpack://nextcloud/./apps/files/src/components/CustomSvgIconRender.vue?2c34","webpack:///nextcloud/apps/files/src/components/CustomSvgIconRender.vue","webpack:///nextcloud/apps/files/src/components/CustomSvgIconRender.vue?vue&type=script&lang=js&","webpack://nextcloud/./apps/files/src/components/CustomSvgIconRender.vue?6bea","webpack://nextcloud/./apps/files/src/components/CustomSvgIconRender.vue?5641","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/store/keyboard.ts","webpack:///nextcloud/apps/files/src/services/PreviewService.ts","webpack://nextcloud/./apps/files/src/components/FileEntry.vue?600a","webpack://nextcloud/./apps/files/src/components/FileEntry.vue?ef8e","webpack://nextcloud/./apps/files/src/components/FileEntry.vue?da7c","webpack:///nextcloud/apps/files/src/components/FilesListFooter.vue?vue&type=script&lang=ts&","webpack:///nextcloud/apps/files/src/components/FilesListFooter.vue","webpack://nextcloud/./apps/files/src/components/FilesListFooter.vue?14b9","webpack://nextcloud/./apps/files/src/components/FilesListFooter.vue?80db","webpack:///nextcloud/apps/files/src/mixins/filesListWidth.ts","webpack:///nextcloud/apps/files/src/components/FilesListHeaderActions.vue","webpack:///nextcloud/apps/files/src/components/FilesListHeaderActions.vue?vue&type=script&lang=ts&","webpack://nextcloud/./apps/files/src/components/FilesListHeaderActions.vue?993d","webpack://nextcloud/./apps/files/src/components/FilesListHeaderActions.vue?9823","webpack:///nextcloud/apps/files/src/components/FilesListHeaderButton.vue","webpack:///nextcloud/apps/files/src/mixins/filesSorting.ts","webpack:///nextcloud/apps/files/src/components/FilesListHeaderButton.vue?vue&type=script&lang=ts&","webpack://nextcloud/./apps/files/src/components/FilesListHeaderButton.vue?d900","webpack://nextcloud/./apps/files/src/components/FilesListHeaderButton.vue?5686","webpack:///nextcloud/apps/files/src/components/FilesListHeader.vue?vue&type=script&lang=ts&","webpack:///nextcloud/apps/files/src/components/FilesListHeader.vue","webpack://nextcloud/./apps/files/src/components/FilesListHeader.vue?c7b4","webpack://nextcloud/./apps/files/src/components/FilesListHeader.vue?349b","webpack:///nextcloud/apps/files/src/components/FilesListVirtual.vue?vue&type=script&lang=ts&","webpack://nextcloud/./apps/files/src/components/FilesListVirtual.vue?4fce","webpack://nextcloud/./apps/files/src/components/FilesListVirtual.vue?3555","webpack:///nextcloud/apps/files/src/services/Navigation.ts","webpack:///nextcloud/apps/files/src/views/FilesList.vue?vue&type=script&lang=ts&","webpack:///nextcloud/apps/files/src/views/FilesList.vue","webpack://nextcloud/./apps/files/src/views/FilesList.vue?b2cc","webpack://nextcloud/./apps/files/src/views/FilesList.vue?1e5b","webpack://nextcloud/./apps/files/src/views/Navigation.vue?8122","webpack://nextcloud/./apps/files/src/components/NavigationQuota.vue?08cb","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?ff39","webpack://nextcloud/./apps/files/src/components/NavigationQuota.vue?2966","webpack://nextcloud/./apps/files/src/views/Settings.vue?84f7","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","webpack:///nextcloud/apps/files/src/views/Settings.vue?vue&type=script&lang=js&","webpack://nextcloud/./apps/files/src/views/Settings.vue?7e31","webpack://nextcloud/./apps/files/src/views/Settings.vue?b81b","webpack:///nextcloud/apps/files/src/views/Navigation.vue","webpack:///nextcloud/core/src/OCP/accessibility.js","webpack:///nextcloud/apps/files/src/views/Navigation.vue?vue&type=script&lang=js&","webpack://nextcloud/./apps/files/src/views/Navigation.vue?e9dc","webpack://nextcloud/./apps/files/src/views/Navigation.vue?74b9","webpack:///nextcloud/apps/files/src/legacy/navigationMapper.js","webpack:///nextcloud/apps/files/src/router/router.js","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/apps/files/src/services/ServiceWorker.js","webpack:///nextcloud/apps/files/src/components/BreadCrumbs.vue?vue&type=style&index=0&id=68b3b20b&prod&lang=scss&scoped=true&","webpack:///nextcloud/apps/files/src/components/CustomSvgIconRender.vue?vue&type=style&index=0&id=93e9b2f4&prod&lang=scss&scoped=true&","webpack:///nextcloud/apps/files/src/components/FileEntry.vue?vue&type=style&index=0&id=5656d8c6&prod&scoped=true&lang=scss&","webpack:///nextcloud/apps/files/src/components/FilesListFooter.vue?vue&type=style&index=0&id=e6a083be&prod&scoped=true&lang=scss&","webpack:///nextcloud/apps/files/src/components/FilesListHeader.vue?vue&type=style&index=0&id=76b6186a&prod&scoped=true&lang=scss&","webpack:///nextcloud/apps/files/src/components/FilesListHeaderActions.vue?vue&type=style&index=0&id=03e57b1e&prod&scoped=true&lang=scss&","webpack:///nextcloud/apps/files/src/components/FilesListHeaderButton.vue?vue&type=style&index=0&id=e85a09d2&prod&lang=scss&","webpack:///nextcloud/apps/files/src/components/FilesListVirtual.vue?vue&type=style&index=0&id=7be0268a&prod&scoped=true&lang=scss&","webpack:///nextcloud/apps/files/src/components/NavigationQuota.vue?vue&type=style&index=0&id=918797b2&prod&lang=scss&scoped=true&","webpack:///nextcloud/apps/files/src/components/TemplatePreview.vue?vue&type=style&index=0&id=5b09ec60&prod&lang=scss&scoped=true&","webpack:///nextcloud/apps/files/src/views/FilesList.vue?vue&type=style&index=0&id=66068cbb&prod&scoped=true&lang=scss&","webpack:///nextcloud/apps/files/src/views/Navigation.vue?vue&type=style&index=0&id=657a978e&prod&scoped=true&lang=scss&","webpack:///nextcloud/apps/files/src/views/Settings.vue?vue&type=style&index=0&id=76ca5d1f&prod&lang=scss&scoped=true&","webpack:///nextcloud/apps/files/src/views/TemplatePicker.vue?vue&type=style&index=0&id=d46f1dc6&prod&lang=scss&scoped=true&","webpack:///nextcloud/apps/files/src/components/FileEntry.vue?vue&type=style&index=1&id=5656d8c6&prod&lang=css&","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\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) 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/**\n * Return the current directory, fallback to root\n *\n * @return {string}\n */\nexport const getCurrentDirectory = function() {\n\tconst currentDirInfo = OCA?.Files?.App?.currentFileList?.dirInfo\n\t\t|| { path: '/', name: '' }\n\n\t// Make sure we don't have double slashes\n\treturn `${currentDirInfo.path}/${currentDirInfo.name}`.replace(/\\/\\//gi, '/')\n}\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 */\n\nconst encodeFilePath = function(path) {\n\tconst pathSections = (path.startsWith('/') ? path : `/${path}`).split('/')\n\tlet relativePath = ''\n\tpathSections.forEach((section) => {\n\t\tif (section !== '') {\n\t\t\trelativePath += '/' + encodeURIComponent(section)\n\t\t}\n\t})\n\treturn relativePath\n}\n\n/**\n * Extract dir and name from file path\n *\n * @param {string} path the full path\n * @return {string[]} [dirPath, fileName]\n */\nconst extractFilePaths = function(path) {\n\tconst pathSections = path.split('/')\n\tconst fileName = pathSections[pathSections.length - 1]\n\tconst dirPath = pathSections.slice(0, pathSections.length - 1).join('/')\n\treturn [dirPath, fileName]\n}\n\nexport { encodeFilePath, extractFilePaths }\n","\n\n\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!./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 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=5b09ec60&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=5b09ec60&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=5b09ec60&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=5b09ec60&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 \"5b09ec60\",\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 }","\n\n\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!./TemplatePicker.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!./TemplatePicker.vue?vue&type=script&lang=js&\"","/**\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=d46f1dc6&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=d46f1dc6&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=d46f1dc6&scoped=true&\"\nimport script from \"./TemplatePicker.vue?vue&type=script&lang=js&\"\nexport * from \"./TemplatePicker.vue?vue&type=script&lang=js&\"\nimport style0 from \"./TemplatePicker.vue?vue&type=style&index=0&id=d46f1dc6&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 \"d46f1dc6\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;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) 2020 John Molakvoæ \n *\n * @author John Molakvoæ \n * @author Julius Härtl \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 { getLoggerBuilder } from '@nextcloud/logger'\nimport { loadState } from '@nextcloud/initial-state'\nimport { translate as t, translatePlural as n } from '@nextcloud/l10n'\nimport { generateOcsUrl } from '@nextcloud/router'\nimport { getCurrentDirectory } from './utils/davUtils.js'\nimport axios from '@nextcloud/axios'\nimport Vue from 'vue'\n\nimport TemplatePickerView from './views/TemplatePicker.vue'\nimport { showError } from '@nextcloud/dialogs'\n\n// Set up logger\nconst logger = getLoggerBuilder()\n\t.setApp('files')\n\t.detectUser()\n\t.build()\n\n// Add translates functions\nVue.mixin({\n\tmethods: {\n\t\tt,\n\t\tn,\n\t},\n})\n\n// Create document root\nconst TemplatePickerRoot = document.createElement('div')\nTemplatePickerRoot.id = 'template-picker'\ndocument.body.appendChild(TemplatePickerRoot)\n\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\n// Init vue app\nconst View = Vue.extend(TemplatePickerView)\nconst TemplatePicker = new View({\n\tname: 'TemplatePicker',\n\tpropsData: {\n\t\tlogger,\n\t},\n})\nTemplatePicker.$mount('#template-picker')\n\n// Init template engine after load to make sure it's the last injected entry\nwindow.addEventListener('DOMContentLoaded', function() {\n\tif (!templatesPath) {\n\t\tlogger.debug('Templates folder not initialized')\n\t\tconst initTemplatesPlugin = {\n\t\t\tattach(menu) {\n\t\t\t\t// register the new menu entry\n\t\t\t\tmenu.addMenuEntry({\n\t\t\t\t\tid: 'template-init',\n\t\t\t\t\tdisplayName: t('files', 'Set up templates folder'),\n\t\t\t\t\ttemplateName: t('files', 'Templates'),\n\t\t\t\t\ticonClass: 'icon-template-add',\n\t\t\t\t\tfileType: 'file',\n\t\t\t\t\tactionLabel: t('files', 'Create new templates folder'),\n\t\t\t\t\tactionHandler(name) {\n\t\t\t\t\t\tinitTemplatesFolder(name)\n\t\t\t\t\t\tmenu.removeMenuEntry('template-init')\n\t\t\t\t\t},\n\t\t\t\t})\n\t\t\t},\n\t\t}\n\t\tOC.Plugins.register('OCA.Files.NewFileMenu', initTemplatesPlugin)\n\t}\n})\n\n// Init template files menu\ntemplates.forEach((provider, index) => {\n\tconst newTemplatePlugin = {\n\t\tattach(menu) {\n\t\t\tconst fileList = menu.fileList\n\n\t\t\t// only attach to main file list, public view is not supported yet\n\t\t\tif (fileList.id !== 'files' && fileList.id !== 'files.public') {\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\t// register the new menu entry\n\t\t\tmenu.addMenuEntry({\n\t\t\t\tid: `template-new-${provider.app}-${index}`,\n\t\t\t\tdisplayName: provider.label,\n\t\t\t\ttemplateName: provider.label + provider.extension,\n\t\t\t\ticonClass: provider.iconClass || 'icon-file',\n\t\t\t\tfileType: 'file',\n\t\t\t\tactionLabel: provider.actionLabel,\n\t\t\t\tactionHandler(name) {\n\t\t\t\t\tTemplatePicker.open(name, provider)\n\t\t\t\t},\n\t\t\t})\n\t\t},\n\t}\n\tOC.Plugins.register('OCA.Files.NewFileMenu', newTemplatePlugin)\n})\n\n/**\n * Init the template directory\n *\n * @param {string} name the templates folder name\n */\nconst initTemplatesFolder = async function(name) {\n\tconst templatePath = (getCurrentDirectory() + `/${name}`).replace('//', '/')\n\ttry {\n\t\tlogger.debug('Initializing the templates directory', { templatePath })\n\t\tconst response = await axios.post(generateOcsUrl('apps/files/api/v1/templates/path'), {\n\t\t\ttemplatePath,\n\t\t\tcopySystemTemplates: true,\n\t\t})\n\n\t\t// Go to template directory\n\t\tOCA.Files.App.currentFileList.changeDirectory(templatePath, true, true)\n\n\t\ttemplates = response.data.ocs.data.templates\n\t\ttemplatesPath = response.data.ocs.data.template_path\n\t} catch (error) {\n\t\tlogger.error('Unable to initialize the templates directory')\n\t\tshowError(t('files', 'Unable to initialize the templates directory'))\n\t}\n}\n","/*\n * @copyright Copyright (c) 2021 Julius Härtl \n *\n * @author Julius Härtl \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 { subscribe } from '@nextcloud/event-bus'\n\n(function() {\n\n\tconst FilesPlugin = {\n\t\tattach(fileList) {\n\t\t\tsubscribe('nextcloud:unified-search.search', ({ query }) => {\n\t\t\t\tfileList.setFilter(query)\n\t\t\t})\n\t\t\tsubscribe('nextcloud:unified-search.reset', () => {\n\t\t\t\tthis.query = null\n\t\t\t\tfileList.setFilter('')\n\t\t\t})\n\n\t\t},\n\t}\n\n\twindow.OC.Plugins.register('OCA.Files.FileList', FilesPlugin)\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 */\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 logger from '../logger';\nexport class FileAction {\n _action;\n constructor(action) {\n this.validateAction(action);\n this._action = action;\n }\n get id() {\n return this._action.id;\n }\n get displayName() {\n return this._action.displayName;\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 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(action) {\n if (!action.id || typeof action.id !== 'string') {\n throw new Error('Invalid id');\n }\n if (!action.displayName || typeof action.displayName !== 'function') {\n throw new Error('Invalid displayName function');\n }\n if (!action.iconSvgInline || typeof action.iconSvgInline !== 'function') {\n throw new Error('Invalid iconSvgInline function');\n }\n if (!action.exec || typeof action.exec !== 'function') {\n throw new Error('Invalid exec function');\n }\n // Optional properties --------------------------------------------\n if ('enabled' in action && typeof action.enabled !== 'function') {\n throw new Error('Invalid enabled function');\n }\n if ('execBatch' in action && typeof action.execBatch !== 'function') {\n throw new Error('Invalid execBatch function');\n }\n if ('order' in action && typeof action.order !== 'number') {\n throw new Error('Invalid order');\n }\n if ('default' in action && typeof action.default !== 'boolean') {\n throw new Error('Invalid default');\n }\n if ('inline' in action && typeof action.inline !== 'function') {\n throw new Error('Invalid inline function');\n }\n if ('renderInline' in action && typeof action.renderInline !== 'function') {\n throw new Error('Invalid renderInline function');\n }\n }\n}\nexport const registerFileAction = function (action) {\n if (typeof window._nc_fileactions === 'undefined') {\n window._nc_fileactions = [];\n logger.debug('FileActions initialized');\n }\n // Check duplicates\n if (window._nc_fileactions.find(search => search.id === action.id)) {\n logger.error(`FileAction ${action.id} already registered`, { action });\n return;\n }\n window._nc_fileactions.push(action);\n};\nexport const getFileActions = function () {\n return 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 */\nimport { emit } from '@nextcloud/event-bus';\nimport { Permission, Node } from '@nextcloud/files';\nimport { translate as t } from '@nextcloud/l10n';\nimport axios from '@nextcloud/axios';\nimport TrashCan from '@mdi/svg/svg/trash-can.svg?raw';\nimport { registerFileAction, FileAction } from '../services/FileAction.ts';\nimport logger from '../logger.js';\nregisterFileAction(new FileAction({\n id: 'delete',\n displayName(nodes, view) {\n return view.id === 'trashbin'\n ? t('files_trashbin', 'Delete permanently')\n : t('files', 'Delete');\n },\n iconSvgInline: () => TrashCan,\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.source);\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 { Permission, Node, FileType } from '@nextcloud/files';\nimport { translate as t } from '@nextcloud/l10n';\nimport Folder from '@mdi/svg/svg/folder.svg?raw';\nimport { join } from 'path';\nimport { registerFileAction, FileAction } from '../services/FileAction';\nregisterFileAction(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: () => Folder,\n enabled(nodes) {\n // Only works on single node\n if (nodes.length !== 1) {\n return false;\n }\n const node = nodes[0];\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, null, { dir: join(dir, node.basename) });\n return null;\n },\n async execBatch(nodes, view, dir) {\n return Promise.all(nodes.map(node => this.exec(node, view, dir)));\n },\n // Main action if enabled, meaning folders only\n order: -100,\n default: true,\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 InformationSvg from '@mdi/svg/svg/information-variant.svg?raw';\nimport { registerFileAction, FileAction } from '../services/FileAction.ts';\nimport logger from '../logger.js';\nexport const ACTION_DETAILS = 'details';\nregisterFileAction(new FileAction({\n id: ACTION_DETAILS,\n displayName: () => t('files', 'Details'),\n iconSvgInline: () => InformationSvg,\n // Sidebar currently supports user folder only, /files/USER\n enabled: (files) => !!window?.OCA?.Files?.Sidebar\n && files.some(node => node.root?.startsWith('/files/')),\n async exec(node) {\n try {\n // TODO: migrate Sidebar to use a Node instead\n window?.OCA?.Files?.Sidebar?.open?.(node.path);\n return null;\n }\n catch (error) {\n logger.error('Error while opening sidebar', { error });\n return false;\n }\n },\n default: true,\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 () {\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.warn('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 }\n });\n const fileStore = store(...arguments);\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:moved', fileStore.onMovedNode)\n // subscribe('files:node:updated', fileStore.onUpdatedNode)\n fileStore._initialized = true;\n }\n return fileStore;\n};\n","import { defineStore } from 'pinia';\nimport { subscribe } from '@nextcloud/event-bus';\nimport Vue from 'vue';\nexport const usePathsStore = function () {\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 }\n });\n const pathsStore = store(...arguments);\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 */\n/* eslint-disable */\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', 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","/**\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 */\n/* eslint-disable */\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 () {\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(...arguments);\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","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('NcBreadcrumbs',{attrs:{\"data-cy-files-content-breadcrumbs\":\"\"}},_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 }","\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=68b3b20b&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=68b3b20b&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=68b3b20b&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=68b3b20b&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 \"68b3b20b\",\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('RecycleScroller',{ref:\"recycleScroller\",staticClass:\"files-list\",attrs:{\"key-field\":\"source\",\"items\":_vm.nodes,\"item-size\":55,\"table-mode\":true,\"item-class\":\"files-list__row\",\"item-tag\":\"tr\",\"list-class\":\"files-list__body\",\"list-tag\":\"tbody\",\"role\":\"table\"},scopedSlots:_vm._u([{key:\"default\",fn:function({ item, active, index }){return [_c('FileEntry',{attrs:{\"active\":active,\"index\":index,\"is-size-available\":_vm.isSizeAvailable,\"files-list-width\":_vm.filesListWidth,\"nodes\":_vm.nodes,\"source\":item}})]}},{key:\"before\",fn:function(){return [_c('caption',{staticClass:\"hidden-visually\"},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.currentView.caption || '')+\"\\n\\t\\t\\t\"+_vm._s(_vm.t('files', 'This list is not fully rendered for performances reasons. The files will be rendered as you navigate through the list.'))+\"\\n\\t\\t\")]),_vm._v(\" \"),_c('FilesListHeader',{attrs:{\"files-list-width\":_vm.filesListWidth,\"is-size-available\":_vm.isSizeAvailable,\"nodes\":_vm.nodes}})]},proxy:true},{key:\"after\",fn:function(){return [_c('FilesListFooter',{attrs:{\"files-list-width\":_vm.filesListWidth,\"is-size-available\":_vm.isSizeAvailable,\"nodes\":_vm.nodes,\"summary\":_vm.summary}})]},proxy:true}])})\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 */\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 */\n/* eslint-disable */\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 */\n/* eslint-disable */\nimport { loadState } from '@nextcloud/initial-state';\nimport { generateUrl } from '@nextcloud/router';\nimport { defineStore } from 'pinia';\nimport Vue from 'vue';\nimport axios from '@nextcloud/axios';\nimport { emit, subscribe } from '@nextcloud/event-bus';\nconst userConfig = loadState('files', 'config', {\n show_hidden: false,\n crop_image_previews: true,\n});\nexport const useUserConfigStore = function () {\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(...arguments);\n // Make sure we only register the listeners once\n if (!userConfigStore._initialized) {\n subscribe('files:config:updated', function ({ key, value }) {\n userConfigStore.onUpdate(key, value);\n });\n userConfigStore._initialized = true;\n }\n return userConfigStore;\n};\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CustomElementRender.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!./CustomElementRender.vue?vue&type=script&lang=js&\"","\n\n\n\n","import { render, staticRenderFns } from \"./CustomElementRender.vue?vue&type=template&id=a261c93e&\"\nimport script from \"./CustomElementRender.vue?vue&type=script&lang=js&\"\nexport * from \"./CustomElementRender.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')\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',{staticClass:\"custom-svg-icon\"})\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!./CustomSvgIconRender.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!./CustomSvgIconRender.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!./CustomSvgIconRender.vue?vue&type=style&index=0&id=93e9b2f4&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!./CustomSvgIconRender.vue?vue&type=style&index=0&id=93e9b2f4&prod&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./CustomSvgIconRender.vue?vue&type=template&id=93e9b2f4&scoped=true&\"\nimport script from \"./CustomSvgIconRender.vue?vue&type=script&lang=js&\"\nexport * from \"./CustomSvgIconRender.vue?vue&type=script&lang=js&\"\nimport style0 from \"./CustomSvgIconRender.vue?vue&type=style&index=0&id=93e9b2f4&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 \"93e9b2f4\",\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('Fragment',[_c('td',{staticClass:\"files-list__row-checkbox\"},[(_vm.active)?_c('NcCheckboxRadioSwitch',{attrs:{\"aria-label\":_vm.t('files', 'Select the row for {displayName}', { displayName: _vm.displayName }),\"checked\":_vm.selectedFiles,\"value\":_vm.fileid,\"name\":\"selectedFiles\"},on:{\"update:checked\":_vm.onSelectionChange}}):_vm._e()],1),_vm._v(\" \"),_c('td',{staticClass:\"files-list__row-name\"},[_c('a',_vm._b({ref:\"name\",on:{\"click\":_vm.execDefaultAction}},'a',_vm.linkAttrs,false),[_c('span',{staticClass:\"files-list__row-icon\"},[(_vm.source.type === 'folder')?_c('FolderIcon'):(_vm.previewUrl && !_vm.backgroundFailed)?_c('span',{ref:\"previewImg\",staticClass:\"files-list__row-icon-preview\",style:({ backgroundImage: _vm.backgroundImage })}):(_vm.mimeIconUrl)?_c('span',{staticClass:\"files-list__row-icon-preview files-list__row-icon-preview--mime\",style:({ backgroundImage: _vm.mimeIconUrl })}):_c('FileIcon'),_vm._v(\" \"),(_vm.isFavorite)?_c('span',{staticClass:\"files-list__row-icon-favorite\",attrs:{\"aria-label\":_vm.t('files', 'Favorite')}},[_c('StarIcon',{attrs:{\"aria-hidden\":\"true\",\"size\":20}})],1):_vm._e()],1),_vm._v(\" \"),_c('span',{staticClass:\"files-list__row-name-text\"},[_c('span',{staticClass:\"files-list__row-name-name\",domProps:{\"textContent\":_vm._s(_vm.displayName)}}),_vm._v(\" \"),_c('span',{staticClass:\"files-list__row-name-ext\",domProps:{\"textContent\":_vm._s(_vm.extension)}})])])]),_vm._v(\" \"),_c('td',{staticClass:\"files-list__row-actions\",class:`files-list__row-actions-${_vm.uniqueId}`},[(_vm.active)?_c('NcActions',{ref:\"actionsMenu\",attrs:{\"boundaries-element\":_vm.boundariesElement,\"container\":_vm.boundariesElement,\"disabled\":_vm.source._loading,\"force-title\":true,\"force-menu\":true,\"inline\":_vm.enabledInlineActions.length,\"open\":_vm.openedMenu},on:{\"update:open\":function($event){_vm.openedMenu=$event}}},_vm._l((_vm.enabledMenuActions),function(action){return _c('NcActionButton',{key:action.id,class:'files-list__row-action-' + 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('CustomSvgIconRender',{attrs:{\"svg\":action.iconSvgInline([_vm.source], _vm.currentView)}})]},proxy:true}],null,true)},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(action.displayName([_vm.source], _vm.currentView))+\"\\n\\t\\t\\t\")])}),1):_vm._e()],1),_vm._v(\" \"),(_vm.isSizeAvailable)?_c('td',{staticClass:\"files-list__row-size\",style:({ opacity: _vm.sizeOpacity }),on:{\"click\":_vm.openDetailsIfAvailable}},[_c('span',[_vm._v(_vm._s(_vm.size))])]):_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}`,on:{\"click\":_vm.openDetailsIfAvailable}},[(_vm.active)?_c('CustomElementRender',{attrs:{\"current-view\":_vm.currentView,\"render\":column.render,\"source\":_vm.source}}):_vm._e()],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&\"","/**\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 */\n/* eslint-disable */\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 () {\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(...arguments);\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","/**\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 */\n// The preview service worker cache name (see webpack config)\nconst SWCacheName = 'previews';\n/**\n * Check if the preview is already cached by the service worker\n */\nexport const isCachedPreview = function (previewUrl) {\n return caches.open(SWCacheName)\n .then(function (cache) {\n return cache.match(previewUrl)\n .then(function (response) {\n return !!response;\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!./FileEntry.vue?vue&type=style&index=0&id=5656d8c6&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!./FileEntry.vue?vue&type=style&index=0&id=5656d8c6&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/vue-loader/lib/index.js??vue-loader-options!./FileEntry.vue?vue&type=style&index=1&id=5656d8c6&prod&lang=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 \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileEntry.vue?vue&type=style&index=1&id=5656d8c6&prod&lang=css&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./FileEntry.vue?vue&type=template&id=5656d8c6&scoped=true&\"\nimport script from \"./FileEntry.vue?vue&type=script&lang=ts&\"\nexport * from \"./FileEntry.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./FileEntry.vue?vue&type=style&index=0&id=5656d8c6&prod&scoped=true&lang=scss&\"\nimport style1 from \"./FileEntry.vue?vue&type=style&index=1&id=5656d8c6&prod&lang=css&\"\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 \"5656d8c6\",\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!./FilesListFooter.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!./FilesListFooter.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._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!./FilesListFooter.vue?vue&type=style&index=0&id=e6a083be&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!./FilesListFooter.vue?vue&type=style&index=0&id=e6a083be&prod&scoped=true&lang=scss&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./FilesListFooter.vue?vue&type=template&id=e6a083be&scoped=true&\"\nimport script from \"./FilesListFooter.vue?vue&type=script&lang=ts&\"\nexport * from \"./FilesListFooter.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./FilesListFooter.vue?vue&type=style&index=0&id=e6a083be&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 \"e6a083be\",\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 created() {\n const fileListEl = document.querySelector('#app-content-vue');\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-title\":true,\"inline\":_vm.inlineActions,\"menu-title\":_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('CustomSvgIconRender',{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!./FilesListHeaderActions.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!./FilesListHeaderActions.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!./FilesListHeaderActions.vue?vue&type=style&index=0&id=03e57b1e&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!./FilesListHeaderActions.vue?vue&type=style&index=0&id=03e57b1e&prod&scoped=true&lang=scss&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./FilesListHeaderActions.vue?vue&type=template&id=03e57b1e&scoped=true&\"\nimport script from \"./FilesListHeaderActions.vue?vue&type=script&lang=ts&\"\nexport * from \"./FilesListHeaderActions.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./FilesListHeaderActions.vue?vue&type=style&index=0&id=03e57b1e&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 \"03e57b1e\",\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',{staticClass:\"files-list__column-sort-button\",class:{'files-list__column-sort-button--active': _vm.sortingMode === _vm.mode},attrs:{\"aria-label\":_vm.sortAriaLabel(_vm.name),\"type\":\"tertiary\"},on:{\"click\":function($event){$event.stopPropagation();$event.preventDefault();return _vm.toggleSortBy(_vm.mode)}}},[(_vm.sortingMode !== _vm.mode || _vm.isAscSorting)?_c('MenuUp',{attrs:{\"slot\":\"icon\"},slot:\"icon\"}):_c('MenuDown',{attrs:{\"slot\":\"icon\"},slot:\"icon\"}),_vm._v(\"\\n\\t\"+_vm._s(_vm.name)+\"\\n\")],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 Vue from 'vue';\nimport { mapState } from 'pinia';\nimport { useViewConfigStore } from '../store/viewConfig';\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 === 'asc';\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!./FilesListHeaderButton.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!./FilesListHeaderButton.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!./FilesListHeaderButton.vue?vue&type=style&index=0&id=e85a09d2&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!./FilesListHeaderButton.vue?vue&type=style&index=0&id=e85a09d2&prod&lang=scss&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./FilesListHeaderButton.vue?vue&type=template&id=e85a09d2&\"\nimport script from \"./FilesListHeaderButton.vue?vue&type=script&lang=ts&\"\nexport * from \"./FilesListHeaderButton.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./FilesListHeaderButton.vue?vue&type=style&index=0&id=e85a09d2&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 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&\"","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('tr',[_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('FilesListHeaderActions',{attrs:{\"current-view\":_vm.currentView,\"selected-nodes\":_vm.selectedNodes}}):[_c('th',{staticClass:\"files-list__column files-list__row-name files-list__column--sortable\",on:{\"click\":function($event){$event.stopPropagation();$event.preventDefault();return _vm.toggleSortBy('basename')}}},[_c('span',{staticClass:\"files-list__row-icon\"}),_vm._v(\" \"),_c('FilesListHeaderButton',{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}},[_c('FilesListHeaderButton',{attrs:{\"name\":_vm.t('files', 'Size'),\"mode\":\"size\"}})],1):_vm._e(),_vm._v(\" \"),_vm._l((_vm.columns),function(column){return _c('th',{key:column.id,class:_vm.classForColumn(column)},[(!!column.sort)?_c('FilesListHeaderButton',{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!./FilesListHeader.vue?vue&type=style&index=0&id=76b6186a&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!./FilesListHeader.vue?vue&type=style&index=0&id=76b6186a&prod&scoped=true&lang=scss&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./FilesListHeader.vue?vue&type=template&id=76b6186a&scoped=true&\"\nimport script from \"./FilesListHeader.vue?vue&type=script&lang=ts&\"\nexport * from \"./FilesListHeader.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./FilesListHeader.vue?vue&type=style&index=0&id=76b6186a&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 \"76b6186a\",\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=7be0268a&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=7be0268a&prod&scoped=true&lang=scss&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./FilesListVirtual.vue?vue&type=template&id=7be0268a&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=7be0268a&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 \"7be0268a\",\n null\n \n)\n\nexport default component.exports","import isSvg from 'is-svg';\nimport logger from '../logger.js';\nexport default class {\n _views = [];\n _currentView = null;\n constructor() {\n logger.debug('Navigation service initialized');\n }\n register(view) {\n try {\n isValidNavigation(view);\n isUniqueNavigation(view, this._views);\n }\n catch (e) {\n if (e instanceof Error) {\n logger.error(e.message, { view });\n }\n throw e;\n }\n if (view.legacy) {\n logger.warn('Legacy view detected, please migrate to Vue');\n }\n if (view.iconClass) {\n view.legacy = true;\n }\n this._views.push(view);\n }\n remove(id) {\n const index = this._views.findIndex(view => view.id === id);\n if (index !== -1) {\n this._views.splice(index, 1);\n }\n }\n get views() {\n return this._views;\n }\n setActive(view) {\n this._currentView = view;\n }\n get active() {\n return this._currentView;\n }\n}\n/**\n * Make sure the given view is unique\n * and not already registered.\n */\nconst isUniqueNavigation = function (view, views) {\n if (views.find(search => search.id === view.id)) {\n throw new Error(`Navigation id ${view.id} is already registered`);\n }\n return true;\n};\n/**\n * Typescript cannot validate an interface.\n * Please keep in sync with the Navigation interface requirements.\n */\nconst isValidNavigation = function (view) {\n if (!view.id || typeof view.id !== 'string') {\n throw new Error('Navigation id is required and must be a string');\n }\n if (!view.name || typeof view.name !== 'string') {\n throw new Error('Navigation name is required and must be a string');\n }\n /**\n * Legacy handle their content and icon differently\n * TODO: remove when support for legacy views is removed\n */\n if (!view.legacy) {\n if (!view.getContents || typeof view.getContents !== 'function') {\n throw new Error('Navigation getContents is required and must be a function');\n }\n if (!view.icon || typeof view.icon !== 'string' || !isSvg(view.icon)) {\n throw new Error('Navigation icon is required and must be a valid svg string');\n }\n }\n if (!('order' in view) || typeof view.order !== 'number') {\n throw new Error('Navigation order is required and must be a number');\n }\n // Optional properties\n if (view.columns) {\n view.columns.forEach(isValidColumn);\n }\n if (view.emptyView && typeof view.emptyView !== 'function') {\n throw new Error('Navigation emptyView must be a function');\n }\n if (view.parent && typeof view.parent !== 'string') {\n throw new Error('Navigation parent must be a string');\n }\n if ('sticky' in view && typeof view.sticky !== 'boolean') {\n throw new Error('Navigation sticky must be a boolean');\n }\n if ('expanded' in view && typeof view.expanded !== 'boolean') {\n throw new Error('Navigation expanded must be a boolean');\n }\n if (view.defaultSortKey && typeof view.defaultSortKey !== 'string') {\n throw new Error('Navigation defaultSortKey must be a string');\n }\n return true;\n};\n/**\n * Typescript cannot validate an interface.\n * Please keep in sync with the Column interface requirements.\n */\nconst isValidColumn = function (column) {\n if (!column.id || typeof column.id !== 'string') {\n throw new Error('A column id is required');\n }\n if (!column.title || typeof column.title !== 'string') {\n throw new Error('A column title is required');\n }\n if (!column.render || typeof column.render !== 'function') {\n throw new Error('A render function is required');\n }\n // Optional properties\n if (column.sort && typeof column.sort !== 'function') {\n throw new Error('Column sortFunction must be a function');\n }\n if (column.summary && typeof column.summary !== 'function') {\n throw new Error('Column summary must be a function');\n }\n return true;\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!./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&\"","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('NcAppContent',{directives:[{name:\"show\",rawName:\"v-show\",value:(!_vm.currentView?.legacy),expression:\"!currentView?.legacy\"}],class:{'app-content--hidden': _vm.currentView?.legacy},attrs:{\"data-cy-files-content\":\"\"}},[_c('div',{staticClass:\"files-list__header\"},[_c('BreadCrumbs',{attrs:{\"path\":_vm.dir},on:{\"reload\":_vm.fetchContent}}),_vm._v(\" \"),(_vm.isRefreshing)?_c('NcLoadingIcon',{staticClass:\"files-list__refresh-icon\"}):_vm._e()],1),_vm._v(\" \"),(_vm.loading && !_vm.isRefreshing)?_c('NcLoadingIcon',{staticClass:\"files-list__loading-icon\",attrs:{\"size\":38,\"title\":_vm.t('files', 'Loading current folder')}}):(!_vm.loading && _vm.isEmptyDir)?_c('NcEmptyContent',{attrs:{\"title\":_vm.t('files', 'No files in here'),\"description\":_vm.t('files', 'No files or folders have been deleted yet'),\"data-cy-files-content-empty\":\"\"},scopedSlots:_vm._u([{key:\"action\",fn:function(){return [(_vm.dir !== '/')?_c('NcButton',{attrs:{\"aria-label\":\"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('TrashCan')]},proxy:true}])}):_c('FilesListVirtual',{ref:\"filesListVirtual\",attrs:{\"current-view\":_vm.currentView,\"nodes\":_vm.dirContents}})],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!./FilesList.vue?vue&type=style&index=0&id=66068cbb&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=66068cbb&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=66068cbb&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=66068cbb&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 \"66068cbb\",\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\":\"\"},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,\"title\":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,\"title\":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'),\"title\":_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 }","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 }","\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=918797b2&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=918797b2&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=918797b2&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=918797b2&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 \"918797b2\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('NcAppSettingsDialog',{attrs:{\"open\":_vm.open,\"show-navigation\":true,\"title\":_vm.t('files', 'Files settings')},on:{\"update:open\":_vm.onClose}},[_c('NcAppSettingsSection',{attrs:{\"id\":\"settings\",\"title\":_vm.t('files', 'Files settings')}},[_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\")])],1),_vm._v(\" \"),(_vm.settings.length !== 0)?_c('NcAppSettingsSection',{attrs:{\"id\":\"more-settings\",\"title\":_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\",\"title\":_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\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 }","\n\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!./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 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=76ca5d1f&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=76ca5d1f&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=76ca5d1f&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=76ca5d1f&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 \"76ca5d1f\",\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n\n","/**\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","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Navigation.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!./Navigation.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!./Navigation.vue?vue&type=style&index=0&id=657a978e&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=657a978e&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=657a978e&scoped=true&\"\nimport script from \"./Navigation.vue?vue&type=script&lang=js&\"\nexport * from \"./Navigation.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Navigation.vue?vue&type=style&index=0&id=657a978e&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 \"657a978e\",\n null\n \n)\n\nexport default component.exports","/**\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 */\n\nimport { loadState } from '@nextcloud/initial-state'\nimport logger from '../logger.js'\n\n/**\n * Fetch and register the legacy files views\n */\nexport default function() {\n\tconst legacyViews = Object.values(loadState('files', 'navigation', {}))\n\n\tif (legacyViews.length > 0) {\n\t\tlogger.debug('Legacy files views detected. Processing...', legacyViews)\n\t\tlegacyViews.forEach(view => {\n\t\t\tregisterLegacyView(view)\n\t\t\tif (view.sublist) {\n\t\t\t\tview.sublist.forEach(subview => registerLegacyView({ ...subview, parent: view.id }))\n\t\t\t}\n\t\t})\n\t}\n}\n\nconst registerLegacyView = function({ id, name, order, icon, parent, classes = '', expanded, params }) {\n\tOCP.Files.Navigation.register({\n\t\tid,\n\t\tname,\n\t\torder,\n\t\tparams,\n\t\tparent,\n\t\texpanded: expanded === true,\n\t\ticonClass: icon ? `icon-${icon}` : 'nav-icon-' + id,\n\t\tlegacy: true,\n\t\tsticky: classes.includes('pinned'),\n\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 */\nimport Vue from 'vue'\nimport Router from 'vue-router'\nimport { generateUrl } from '@nextcloud/router'\nimport queryString from 'query-string'\n\nVue.use(Router)\n\nconst router = new Router({\n\tmode: 'history',\n\n\t// if index.php is in the url AND we got this far, then it's working:\n\t// let's keep using index.php in the url\n\tbase: generateUrl('/apps/files', ''),\n\tlinkActiveClass: 'active',\n\n\troutes: [\n\t\t{\n\t\t\tpath: '/',\n\t\t\t// Pretending we're using the default view\n\t\t\talias: '/files',\n\t\t},\n\t\t{\n\t\t\tpath: '/:view/:fileid?',\n\t\t\tname: 'filelist',\n\t\t\tprops: true,\n\t\t},\n\t],\n\n\t// Custom stringifyQuery to prevent encoding of slashes in the url\n\tstringifyQuery(query) {\n\t\tconst result = queryString.stringify(query).replace(/%2F/gmi, '/')\n\t\treturn result ? ('?' + result) : ''\n\t},\n})\n\nrouter.beforeEach((to, from, next) => {\n\t// TODO: Remove this when the legacy files list is removed\n\ttry {\n\t\tconst views = window.OCP.Files?.Navigation?.views || []\n\t\tconst isLegacy = views.find(view => view?.id === to?.params?.view)?.legacy === true\n\t\tif (isLegacy && to?.query?.dir !== from?.query?.dir) {\n\t\t\t// https://github.com/nextcloud/server/blob/1b422df12ac8eb26514849fb117e0dcf58623b88/apps/files/js/filelist.js#L2052-L2076\n\t\t\twindow.OCA.Files.App.fileList.changeDirectory(to?.query?.dir || '/', false, false, to?.query?.fileid, true)\n\t\t}\n\t} catch (error) {}\n\tnext()\n})\n\nexport default router\n","import './templates.js';\nimport './legacy/filelistSearch.js';\nimport './actions/deleteAction';\nimport './actions/openFolderAction';\nimport './actions/sidebarAction';\nimport Vue from 'vue';\nimport { createPinia, PiniaVuePlugin } from 'pinia';\nimport FilesListView from './views/FilesList.vue';\nimport NavigationService from './services/Navigation';\nimport NavigationView from './views/Navigation.vue';\nimport processLegacyFilesViews from './legacy/navigationMapper.js';\nimport registerPreviewServiceWorker from './services/ServiceWorker.js';\nimport router from './router/router.js';\nimport RouterService from './services/RouterService';\nimport SettingsModel from './models/Setting.js';\nimport SettingsService from './services/Settings.js';\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 = new NavigationService();\nObject.assign(window.OCP.Files, { Navigation });\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// Init legacy and new files views\nprocessLegacyFilesViews();\n// Register preview service worker\nregisterPreviewServiceWorker();\n","export default class RouterService {\n _router;\n constructor(router) {\n this._router = router;\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","/**\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","// 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-68b3b20b]{flex:1 1 100% !important;width:100%}.breadcrumb[data-v-68b3b20b] 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, \".custom-svg-icon[data-v-93e9b2f4]{display:flex;align-items:center;align-self:center;justify-content:center;justify-self:center;width:44px;height:44px;opacity:1}.custom-svg-icon[data-v-93e9b2f4] svg{height:22px;width:22px;fill:currentColor}\", \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/components/CustomSvgIconRender.vue\"],\"names\":[],\"mappings\":\"AACA,kCACC,YAAA,CACA,kBAAA,CACA,iBAAA,CACA,sBAAA,CACA,mBAAA,CACA,UAAA,CACA,WAAA,CACA,SAAA,CAEA,sCAGC,WAAA,CACA,UAAA,CACA,iBAAA\",\"sourcesContent\":[\"\\n.custom-svg-icon {\\n\\tdisplay: flex;\\n\\talign-items: center;\\n\\talign-self: center;\\n\\tjustify-content: center;\\n\\tjustify-self: center;\\n\\twidth: 44px;\\n\\theight: 44px;\\n\\topacity: 1;\\n\\n\\t::v-deep svg {\\n\\t\\t// mdi icons have a size of 24px\\n\\t\\t// 22px results in roughly 16px inner size\\n\\t\\theight: 22px;\\n\\t\\twidth: 22px;\\n\\t\\tfill: currentColor;\\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, \"tr[data-v-5656d8c6]:hover,tr[data-v-5656d8c6]:focus,tr[data-v-5656d8c6]:active{background-color:var(--color-background-dark)}.files-list__row-icon-preview[data-v-5656d8c6]:not([style*=background]){background:var(--color-loading-dark)}\", \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/components/FileEntry.vue\"],\"names\":[],\"mappings\":\"AAGC,+EAGC,6CAAA,CAKF,wEACI,oCAAA\",\"sourcesContent\":[\"\\n/* Hover effect on tbody lines only */\\ntr {\\n\\t&:hover,\\n\\t&:focus,\\n\\t&:active {\\n\\t\\tbackground-color: var(--color-background-dark);\\n\\t}\\n}\\n\\n/* Preview not loaded animation effect */\\n.files-list__row-icon-preview:not([style*='background']) {\\n background: var(--color-loading-dark);\\n\\t// animation: preview-gradient-fade 1.2s ease-in-out infinite;\\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-e6a083be]{padding-bottom:300px;border-top:1px solid var(--color-border);background-color:rgba(0,0,0,0) !important;border-bottom:none !important}td[data-v-e6a083be]{user-select:none;color:var(--color-text-maxcontrast) !important}\", \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/components/FilesListFooter.vue\"],\"names\":[],\"mappings\":\"AAEA,oBACC,oBAAA,CACA,wCAAA,CAEA,yCAAA,CACA,6BAAA,CAGD,oBACC,gBAAA,CAEA,8CAAA\",\"sourcesContent\":[\"\\n// Scoped row\\ntr {\\n\\tpadding-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\\ntd {\\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\\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-76b6186a]{user-select:none;color:var(--color-text-maxcontrast) !important}.files-list__column--sortable[data-v-76b6186a]{cursor:pointer}\", \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/components/FilesListHeader.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-03e57b1e]{flex:1 1 100% !important}.files-list__row-actions-batch[data-v-03e57b1e] .button-vue__wrapper{width:100%}.files-list__row-actions-batch[data-v-03e57b1e] .button-vue__wrapper span.button-vue__text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}\", \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/components/FilesListHeaderActions.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{margin:0 calc(var(--cell-margin)*-1);padding:0 4px 0 16px !important}.files-list__column-sort-button .button-vue__wrapper{flex-direction:row-reverse;width:100%}.files-list__column-sort-button .button-vue__icon{transition-timing-function:linear;transition-duration:.1s;transition-property:opacity;opacity:0}.files-list__column-sort-button .button-vue__text{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.files-list__column-sort-button--active .button-vue__icon,.files-list__column-sort-button:hover .button-vue__icon,.files-list__column-sort-button:focus .button-vue__icon,.files-list__column-sort-button:active .button-vue__icon{opacity:1 !important}\", \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/components/FilesListHeaderButton.vue\"],\"names\":[],\"mappings\":\"AACA,gCAEC,oCAAA,CAEA,+BAAA,CAGA,qDACC,0BAAA,CAGA,UAAA,CAGD,kDACC,iCAAA,CACA,uBAAA,CACA,2BAAA,CACA,SAAA,CAID,kDACC,eAAA,CACA,kBAAA,CACA,sBAAA,CAOA,mOACC,oBAAA\",\"sourcesContent\":[\"\\n.files-list__column-sort-button {\\n\\t// Compensate for cells margin\\n\\tmargin: 0 calc(var(--cell-margin) * -1);\\n\\t// Reverse padding\\n\\tpadding: 0 4px 0 16px !important;\\n\\n\\t// Icon after text\\n\\t.button-vue__wrapper {\\n\\t\\tflex-direction: row-reverse;\\n\\t\\t// Take max inner width for text overflow ellipsis\\n\\t\\t// Remove when https://github.com/nextcloud/nextcloud-vue/pull/3936 is merged\\n\\t\\twidth: 100%;\\n\\t}\\n\\n\\t.button-vue__icon {\\n\\t\\ttransition-timing-function: linear;\\n\\t\\ttransition-duration: .1s;\\n\\t\\ttransition-property: opacity;\\n\\t\\topacity: 0;\\n\\t}\\n\\n\\t// Remove when https://github.com/nextcloud/nextcloud-vue/pull/3936 is merged\\n\\t.button-vue__text {\\n\\t\\toverflow: hidden;\\n\\t\\twhite-space: nowrap;\\n\\t\\ttext-overflow: ellipsis;\\n\\t}\\n\\n\\t&--active,\\n\\t&:hover,\\n\\t&:focus,\\n\\t&:active {\\n\\t\\t.button-vue__icon {\\n\\t\\t\\topacity: 1 !important;\\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[data-v-7be0268a]{--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;display:block;overflow:auto;height:100%}.files-list[data-v-7be0268a] tbody,.files-list[data-v-7be0268a] .vue-recycle-scroller__slot{display:flex;flex-direction:column;width:100%;position:relative}.files-list[data-v-7be0268a] .vue-recycle-scroller__slot[role=thead]{position:sticky;z-index:10;top:0;height:var(--row-height);background-color:var(--color-main-background)}.files-list[data-v-7be0268a] tr{position:absolute;display:flex;align-items:center;width:100%;border-bottom:1px solid var(--color-border)}.files-list[data-v-7be0268a] td,.files-list[data-v-7be0268a] 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-7be0268a] td span,.files-list[data-v-7be0268a] th span{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.files-list[data-v-7be0268a] .files-list__row-checkbox{justify-content:center}.files-list[data-v-7be0268a] .files-list__row-checkbox .checkbox-radio-switch{display:flex;justify-content:center;--icon-size: var(--checkbox-size)}.files-list[data-v-7be0268a] .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-7be0268a] .files-list__row-checkbox .checkbox-radio-switch .checkbox-radio-switch__icon{margin:0 !important}.files-list[data-v-7be0268a] .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-7be0268a] .files-list__row-icon>span{justify-content:flex-start}.files-list[data-v-7be0268a] .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-7be0268a] .files-list__row-icon-preview{overflow:hidden;width:var(--icon-preview-size);height:var(--icon-preview-size);border-radius:var(--border-radius);background-repeat:no-repeat;background-position:center;background-size:contain}.files-list[data-v-7be0268a] .files-list__row-icon-favorite{position:absolute;top:4px;right:-8px;color:#fc0}.files-list[data-v-7be0268a] .files-list__row-name{overflow:hidden;flex:1 1 auto}.files-list[data-v-7be0268a] .files-list__row-name a{display:flex;align-items:center;width:100%;height:100%}.files-list[data-v-7be0268a] .files-list__row-name a:focus .files-list__row-name-text,.files-list[data-v-7be0268a] .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-7be0268a] .files-list__row-name .files-list__row-name-text{padding:5px 10px;margin-left:-10px;display:inline-flex}.files-list[data-v-7be0268a] .files-list__row-name .files-list__row-name-ext{color:var(--color-text-maxcontrast)}.files-list[data-v-7be0268a] .files-list__row-actions{width:auto}.files-list[data-v-7be0268a] .files-list__row-actions~td,.files-list[data-v-7be0268a] .files-list__row-actions~th{margin:0 var(--cell-margin)}.files-list[data-v-7be0268a] .files-list__row-actions button .button-vue__text{font-weight:normal}.files-list[data-v-7be0268a] .files-list__row-actions button:not(:hover,:focus,:active) .button-vue__wrapper{color:var(--color-text-maxcontrast)}.files-list[data-v-7be0268a] .files-list__row-size{justify-content:flex-end;width:calc(var(--row-height)*1.5);color:var(--color-main-text)}.files-list[data-v-7be0268a] .files-list__row-size .files-list__column-sort-button{padding:0 16px 0 4px !important}.files-list[data-v-7be0268a] .files-list__row-size .files-list__column-sort-button .button-vue__wrapper{flex-direction:row}.files-list[data-v-7be0268a] .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,aAAA,CACA,WAAA,CAIC,4FACC,YAAA,CACA,qBAAA,CACA,UAAA,CAEA,iBAAA,CAID,qEAEC,eAAA,CACA,UAAA,CACA,KAAA,CACA,wBAAA,CACA,6CAAA,CAGD,gCACC,iBAAA,CACA,YAAA,CACA,kBAAA,CACA,UAAA,CACA,2CAAA,CAGD,gEACC,YAAA,CACA,kBAAA,CACA,aAAA,CACA,oBAAA,CACA,uBAAA,CACA,wBAAA,CACA,QAAA,CACA,SAAA,CACA,mCAAA,CACA,WAAA,CAKA,0EACC,eAAA,CACA,kBAAA,CACA,sBAAA,CAIF,uDACC,sBAAA,CACA,8EACC,YAAA,CACA,sBAAA,CAEA,iCAAA,CAEA,iHACC,2BAAA,CACA,4BAAA,CACA,QAAA,CACA,8DAAA,CAGD,2GACC,mBAAA,CAKH,mDACC,iBAAA,CACA,YAAA,CACA,gBAAA,CACA,kBAAA,CAEA,iCAAA,CACA,sBAAA,CACA,8BAAA,CACA,WAAA,CAEA,oCAAA,CACA,kCAAA,CAEA,wDACC,0BAAA,CAGD,gGACC,8BAAA,CACA,+BAAA,CAGD,2DACC,eAAA,CACA,8BAAA,CACA,+BAAA,CACA,kCAAA,CACA,2BAAA,CAEA,0BAAA,CACA,uBAAA,CAGD,4DACC,iBAAA,CACA,OAAA,CACA,UAAA,CACA,UAAA,CAIF,mDAEC,eAAA,CAEA,aAAA,CAEA,qDACC,YAAA,CACA,kBAAA,CAEA,UAAA,CACA,WAAA,CAGA,oLAEC,mDAAA,CACA,kBAAA,CAIF,8EAEC,gBAAA,CACA,iBAAA,CAEA,mBAAA,CAGD,6EACC,mCAAA,CAIF,sDACC,UAAA,CAGA,kHAEC,2BAAA,CAIA,+EAEC,kBAAA,CAED,6GAEC,mCAAA,CAKH,mDAEC,wBAAA,CACA,iCAAA,CAEA,4BAAA,CAGA,mFACC,+BAAA,CACA,wGACC,kBAAA,CAKH,4DACC,+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\\tdisplay: block;\\n\\toverflow: auto;\\n\\theight: 100%;\\n\\n\\t&::v-deep {\\n\\t\\t// Table head, body and footer\\n\\t\\ttbody, .vue-recycle-scroller__slot {\\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\\t\\t}\\n\\n\\t\\t// Table header\\n\\t\\t.vue-recycle-scroller__slot[role='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\\theight: var(--row-height);\\n\\t\\t\\tbackground-color: var(--color-main-background);\\n\\t\\t}\\n\\n\\t\\ttr {\\n\\t\\t\\tposition: absolute;\\n\\t\\t\\tdisplay: flex;\\n\\t\\t\\talign-items: center;\\n\\t\\t\\twidth: 100%;\\n\\t\\t\\tborder-bottom: 1px solid var(--color-border);\\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-checkbox {\\n\\t\\t\\tjustify-content: center;\\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-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& > span {\\n\\t\\t\\t\\tjustify-content: flex-start;\\n\\t\\t\\t}\\n\\n\\t\\t\\t&> span:not(.files-list__row-icon-favorite) svg {\\n\\t\\t\\t\\twidth: var(--icon-preview-size);\\n\\t\\t\\t\\theight: var(--icon-preview-size);\\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\\tbackground-repeat: no-repeat;\\n\\t\\t\\t\\t// Center and contain the preview\\n\\t\\t\\t\\tbackground-position: center;\\n\\t\\t\\t\\tbackground-size: contain;\\n\\t\\t\\t}\\n\\n\\t\\t\\t&-favorite {\\n\\t\\t\\t\\tposition: absolute;\\n\\t\\t\\t\\ttop: 4px;\\n\\t\\t\\t\\tright: -8px;\\n\\t\\t\\t\\tcolor: #ffcc00;\\n\\t\\t\\t}\\n\\t\\t}\\n\\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\\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\\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}\\n\\t\\t}\\n\\n\\t\\t.files-list__row-actions {\\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\\t&:not(:hover, :focus, :active) .button-vue__wrapper {\\n\\t\\t\\t\\t\\t// Also apply color-text-maxcontrast to non-active button\\n\\t\\t\\t\\t\\tcolor: var(--color-text-maxcontrast);\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t.files-list__row-size {\\n\\t\\t\\t// Right align text\\n\\t\\t\\tjustify-content: flex-end;\\n\\t\\t\\twidth: calc(var(--row-height) * 1.5);\\n\\t\\t\\t// opacity varies with the size\\n\\t\\t\\tcolor: var(--color-main-text);\\n\\n\\t\\t\\t// Icon is before text since size is right aligned\\n\\t\\t\\t.files-list__column-sort-button {\\n\\t\\t\\t\\tpadding: 0 16px 0 4px !important;\\n\\t\\t\\t\\t.button-vue__wrapper {\\n\\t\\t\\t\\t\\tflex-direction: row;\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\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, \".app-navigation-entry__settings-quota--not-unlimited[data-v-918797b2] .app-navigation-entry__title{margin-top:-4px}.app-navigation-entry__settings-quota progress[data-v-918797b2]{position:absolute;bottom:10px;margin-left:44px;width:calc(100% - 44px - 22px)}\", \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/components/NavigationQuota.vue\"],\"names\":[],\"mappings\":\"AAIC,mGACC,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__title {\\n\\t\\tmargin-top: -4px;\\n\\t}\\n\\n\\tprogress {\\n\\t\\tposition: absolute;\\n\\t\\tbottom: 10px;\\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, \".template-picker__item[data-v-5b09ec60]{display:flex}.template-picker__label[data-v-5b09ec60]{display:flex;align-items:center;flex:1 1;flex-direction:column}.template-picker__label[data-v-5b09ec60],.template-picker__label *[data-v-5b09ec60]{cursor:pointer;user-select:none}.template-picker__label[data-v-5b09ec60]::before{display:none !important}.template-picker__preview[data-v-5b09ec60]{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-5b09ec60]{border-color:var(--color-primary-element)}.template-picker__preview--failed[data-v-5b09ec60]{display:flex}.template-picker__image[data-v-5b09ec60]{max-width:100%;background-color:var(--color-main-background);object-fit:cover}.template-picker__preview--failed .template-picker__image[data-v-5b09ec60]{width:calc(var(--margin)*8);margin:auto;background-color:rgba(0,0,0,0) !important;object-fit:initial}.template-picker__title[data-v-5b09ec60]{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, \".app-content[data-v-66068cbb]{display:flex;overflow:hidden;flex-direction:column;max-height:100%}.app-content[data-v-66068cbb]:not(.app-content--hidden)+#app-content{display:none}.files-list__header[data-v-66068cbb]{display:flex;align-content:center;flex:0 0;margin:4px 4px 4px 50px}.files-list__header>*[data-v-66068cbb]{flex:0 0}.files-list__refresh-icon[data-v-66068cbb]{flex:0 0 44px;width:44px;height:44px}.files-list__loading-icon[data-v-66068cbb]{margin:auto}\", \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/views/FilesList.vue\"],\"names\":[],\"mappings\":\"AACA,8BAEC,YAAA,CACA,eAAA,CACA,qBAAA,CACA,eAAA,CAIA,qEACC,YAAA,CAQD,qCACC,YAAA,CACA,oBAAA,CAEA,QAAA,CAEA,uBAAA,CACA,uCAGC,QAAA,CAGF,2CACC,aAAA,CACA,UAAA,CACA,WAAA,CAED,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\\n\\t// TODO: remove after all legacy views are migrated\\n\\t// Hides the legacy app-content if shown view is not legacy\\n\\t&:not(&--hidden)::v-deep + #app-content {\\n\\t\\tdisplay: none;\\n\\t}\\n}\\n\\n$margin: 4px;\\n$navigationToggleSize: 50px;\\n\\n.files-list {\\n\\t&__header {\\n\\t\\tdisplay: flex;\\n\\t\\talign-content: 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\\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\\t}\\n\\t&__refresh-icon {\\n\\t\\tflex: 0 0 44px;\\n\\t\\twidth: 44px;\\n\\t\\theight: 44px;\\n\\t}\\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-657a978e] .app-navigation-entry-icon{background-repeat:no-repeat;background-position:center}.app-navigation>ul.app-navigation__list[data-v-657a978e]{padding-bottom:var(--default-grid-baseline, 4px)}.app-navigation-entry__settings[data-v-657a978e]{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,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 > 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-76ca5d1f]: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","// 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-d46f1dc6]{padding:calc(var(--margin)*2);padding-bottom:0}.templates-picker__form h2[data-v-d46f1dc6]{text-align:center;font-weight:bold;margin:var(--margin) 0 calc(var(--margin)*2)}.templates-picker__list[data-v-d46f1dc6]{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-d46f1dc6]{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-d46f1dc6],.templates-picker__buttons input[type=submit][data-v-d46f1dc6]{height:44px}.templates-picker[data-v-d46f1dc6] .modal-container{position:relative}.templates-picker__loading[data-v-d46f1dc6]{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","// 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, \"\\n/* @keyframes preview-gradient-fade {\\n 0% {\\n opacity: 1;\\n }\\n 50% {\\n opacity: 0.5;\\n }\\n 100% {\\n opacity: 1;\\n }\\n} */\\n\", \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/components/FileEntry.vue\"],\"names\":[],\"mappings\":\";AA6nBA;;;;;;;;;;GAUA\",\"sourcesContent\":[\"\\n\\n\\n\\n\\n\\n\\n\\n\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\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=\" + \"00434e4baa0d8e7b79f1\" + \"\";\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) scriptUrl = scripts[scripts.length - 1].src\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} else installedChunks[chunkId] = 0;\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__(35766)))\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["deferred","inProgress","dataWebpackPrefix","getCurrentDirectory","_OCA","_OCA$Files","_OCA$Files$App","_OCA$Files$App$curren","currentDirInfo","OCA","Files","App","currentFileList","dirInfo","path","name","concat","replace","previewWidth","inheritAttrs","props","basename","type","String","required","checked","Boolean","default","fileid","Number","filename","previewUrl","hasPreview","mime","ratio","data","failedPreview","computed","nameWithoutExt","indexOf","split","slice","join","id","realPreviewUrl","mimeIcon","getCurrentUser","generateUrl","document","getElementById","value","pathSections","startsWith","relativePath","forEach","section","encodeURIComponent","encodeFilePath","OC","MimeType","getIconUrl","methods","onCheck","$emit","onFailure","options","styleTagTransform","setAttributes","insert","domAPI","insertStyleElement","_vm","this","_c","_self","staticClass","attrs","domProps","on","_v","class","_s","components","NcEmptyContent","NcModal","TemplatePreview","logger","Object","loading","opened","provider","emptyTemplate","_this$provider","_this$provider2","t","mimetypes","selectedTemplate","templates","find","template","style","width","margin","border","Math","round","fetchedProvider","async","axios","generateOcsUrl","ocs","getTemplates","app","label","Error","length","onSubmit","close","currentDirectory","fileList","_this$provider3","_this$provider4","debug","extension","_this$selectedTemplat","_this$selectedTemplat2","fileInfo","filePath","templatePath","templateType","createFromTemplate","normalize","addAndFetchFileInfo","then","status","model","FileInfoModel","filesClient","fileAction","fileActions","getDefaultFileAction","PERMISSION_ALL","action","$file","findFileEl","dir","fileInfoModel","error","console","showError","$event","preventDefault","stopPropagation","apply","arguments","_b","_l","key","_e","getLoggerBuilder","setApp","detectUser","build","Vue","n","TemplatePickerRoot","createElement","body","appendChild","loadState","templatesPath","TemplatePicker","TemplatePickerView","propsData","$mount","window","addEventListener","initTemplatesPlugin","attach","menu","addMenuEntry","displayName","templateName","iconClass","fileType","actionLabel","actionHandler","initTemplatesFolder","removeMenuEntry","Plugins","register","index","newTemplatePlugin","open","response","copySystemTemplates","changeDirectory","template_path","FilesPlugin","subscribe","_ref","query","setFilter","FileAction","constructor","validateAction","_action","iconSvgInline","enabled","exec","execBatch","order","inline","renderInline","registerFileAction","_nc_fileactions","search","push","getFileActions","nodes","view","TrashCan","map","node","permissions","every","permission","Permission","source","emit","Promise","all","files","attributes","Folder","FileType","OCP","Router","goToRoute","ACTION_DETAILS","InformationSvg","_window","_window$OCA","_window$OCA$Files","Sidebar","some","_node$root","root","_window2","_window2$OCA","_window2$OCA$Files","_window2$OCA$Files$Si","_window2$OCA$Files$Si2","call","useFilesStore","fileStore","defineStore","state","roots","getters","getNode","getNodes","ids","filter","getRoot","service","actions","updateNodes","reduce","acc","deleteNodes","setRoot","onDeletedNode","store","_initialized","usePathsStore","pathsStore","paths","getPath","addPath","payload","useSelectionStore","selected","lastSelection","lastSelectedIndex","set","selection","undefined","setLastIndex","reset","viewConfig","useViewConfigStore","getConfig","onUpdate","setSortingBy","update","toggleSortingDirection","newDirection","sorting_direction","viewConfigStore","Home","NcBreadcrumbs","NcBreadcrumb","setup","filesStore","currentView","$navigation","active","dirs","sections","to","$route","exact","getDirDisplayName","getNodeFromId","getFileIdFromPath","_this$currentView","_node$attributes","fileId","onClick","_to$query","ariaLabel","_section$to","_section$to$query","_setupProxy","nativeOn","scopedSlots","_u","fn","proxy","useActionsMenuStore","userConfig","show_hidden","crop_image_previews","useUserConfigStore","userConfigStore","render","Function","element","watch","$el","replaceWith","mounted","svg","innerHTML","sanitize","CustomElementRender","CustomSvgIconRender","FileIcon","FolderIcon","Fragment","NcActionButton","NcActions","NcCheckboxRadioSwitch","NcLoadingIcon","StarIcon","isSizeAvailable","Array","filesListWidth","actionsMenuStore","keyboardStore","altKey","ctrlKey","metaKey","shiftKey","onEvent","event","useKeyboardStore","selectionStore","backgroundFailed","backgroundImage","boundariesElement","querySelector","columns","_this$$route","_this$$route$query","_this$source","_this$source$fileid","_this$source$fileid$t","toString","_this$source$attribut","extname","ext","size","parseInt","formatFileSize","sizeOpacity","pow","linkAttrs","enabledDefaultActions","role","title","is","href","selectedFiles","isSelected","_this$source2","_this$source2$fileid","_this$source2$fileid$","includes","cropPreviews","url","URL","location","origin","searchParams","e","mimeIconUrl","_window$OC","_window$OC$MimeType","_window$OC$MimeType$g","mimeType","enabledActions","sort","a","b","enabledInlineActions","_action$inline","enabledMenuActions","openedMenu","get","uniqueId","charCodeAt","isFavorite","favorite","before","resetState","parentNode","display","clearImg","debounceIfNotCached","_this$$el$parentNode","_this$$el$parentNode$","debounceGetPreview","debounce","fetchAndApplyPreview","onRightClick","beforeDestroy","caches","cache","match","previewPromise","CancelablePromise","resolve","reject","onCancel","img","Image","fetchpriority","onload","onerror","src","cancel","success","showSuccess","execDefaultAction","openDetailsIfAvailable","detailsAction","onSelectionChange","_this$keyboardStore","newSelectedIndex","isAlreadySelected","start","min","end","max","filesToSelect","file","_file$fileid","_file$fileid$toString","isMoreThanOneSelected","translate","ref","_loading","onActionClick","opacity","column","_vm$currentView","summary","currentFolder","_this$currentView2","totalSize","_this$currentFolder","total","classForColumn","_column$summary","created","fileListEl","$resizeObserver","ResizeObserver","entries","target","contentRect","observe","disconnect","mixins","filesListWidthMixin","selectedNodes","areSomeNodesLoading","inlineActions","selectionIds","results","result","failedIds","mapState","sortingMode","_this$getConfig","sorting_mode","defaultSortKey","isAscSorting","_this$getConfig2","toggleSortBy","MenuDown","MenuUp","NcButton","filesSortingMixin","mode","sortAriaLabel","direction","slot","FilesListHeaderButton","FilesListHeaderActions","selectAllBind","isNoneSelected","isSomeSelected","isAllSelected","indeterminate","onToggleAll","RecycleScroller","FileEntry","FilesListHeader","FilesListFooter","summaryFile","count","translatePlural","summaryFolder","slots","querySelectorAll","setAttribute","getFileId","item","caption","_defineProperty","isValidNavigation","isUniqueNavigation","_views","message","legacy","remove","findIndex","splice","views","setActive","_currentView","getContents","icon","isSvg","isValidColumn","emptyView","parent","sticky","expanded","BreadCrumbs","FilesListVirtual","NcAppContent","promise","dirContents","_this$currentFolder2","customColumn","_children","reverse","orderBy","v","isEmptyDir","isRefreshing","toPreviousDir","newView","oldView","fetchContent","newDir","oldDir","_this$$refs","_this$$refs$filesList","$refs","filesListVirtual","scrollTop","_this$currentView3","_this$promise","folder","contents","_vm$currentView2","directives","rawName","expression","ChartPie","NcAppNavigationItem","NcProgressBar","loadingStorageStats","storageStats","storageStatsTitle","_this$storageStats","_this$storageStats2","_this$storageStats3","usedQuotaByte","used","quotaByte","quota","storageStatsTooltip","relative","beforeMount","setInterval","throttleUpdateStorageStats","debounceUpdateStorageStats","updateStorageStats","throttle","_response$data","el","Clipboard","NcAppSettingsDialog","NcAppSettingsSection","NcInputField","Setting","_window$OCA$Files$Set","_getCurrentUser","settings","Settings","webdavUrl","generateRemoteUrl","uid","webdavDocs","appPasswordUrl","webdavUrlCopied","setting","onClose","setConfig","select","navigator","clipboard","writeText","setTimeout","copyCloudId","Cog","NavigationQuota","NcAppNavigation","NcIconSvgWrapper","SettingsModal","Navigation","settingsOpened","currentViewId","_this$$route$params","params","parentViews","childViews","list","showView","onLegacyNavigationChanged","_window$OCA$Files$Sid","_window$OCA$Files$Sid2","newAppContent","classList","add","Util","History","parseUrlQuery","itemId","jQuery","trigger","Event","heading","headingEl","textContent","setPageHeading","$router","onToggleExpand","isExpanded","_this$viewConfigStore","generateToNavigation","openSettings","onSettingsClose","child","registerLegacyView","classes","router","base","linkActiveClass","routes","alias","stringifyQuery","queryString","beforeEach","from","next","_window$OCP$Files","_window$OCP$Files$Nav","_views$find","_from$query","_to$query2","_to$query3","_to$params","_router","goTo","assign","PiniaVuePlugin","pinia","createPinia","NavigationService","_settings","_name","_el","_open","_close","NavigationView","FilesListView","legacyViews","values","sublist","subview","processLegacyFilesViews","noRewrite","registration","serviceWorker","scope","___CSS_LOADER_EXPORT___","module","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","exports","loaded","__webpack_modules__","m","O","chunkIds","priority","notFulfilled","Infinity","i","fulfilled","j","keys","r","getter","__esModule","d","definition","o","defineProperty","enumerable","f","chunkId","promises","u","g","globalThis","obj","prop","prototype","hasOwnProperty","l","done","script","needAttach","scripts","getElementsByTagName","s","getAttribute","charset","timeout","nc","onScriptComplete","prev","clearTimeout","doneFns","removeChild","bind","head","Symbol","toStringTag","nmd","children","scriptUrl","importScripts","currentScript","p","baseURI","self","installedChunks","installedChunkData","errorType","realSrc","request","webpackJsonpCallback","parentChunkLoadingFunction","moreModules","runtime","chunkLoadingGlobal","__webpack_exports__"],"sourceRoot":""}