aboutsummaryrefslogtreecommitdiffstats
path: root/dist/files-main.js.map
blob: 67171b7de7a0c810aa6168f6acb53f1308c9d774 (plain)
1
{"version":3,"file":"files-main.js?v=41e7f5b59cde3fe5da56","mappings":"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","sources":["webpack:///nextcloud/webpack/runtime/chunk loaded","webpack:///nextcloud/webpack/runtime/load script","webpack:///nextcloud/node_modules/@nextcloud/upload/node_modules/eventemitter3/index.js","webpack:///nextcloud/apps/files/src/store/index.ts","webpack:///nextcloud/node_modules/decode-uri-component/index.js","webpack:///nextcloud/node_modules/split-on-first/index.js","webpack:///nextcloud/node_modules/query-string/node_modules/filter-obj/index.js","webpack:///nextcloud/node_modules/query-string/base.js","webpack:///nextcloud/node_modules/query-string/index.js","webpack:///nextcloud/apps/files/src/router/router.ts","webpack:///nextcloud/apps/files/src/FilesApp.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/Cog.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/Cog.vue?vue&type=script&lang=js","webpack://nextcloud/./node_modules/vue-material-design-icons/Cog.vue?4d6d","webpack:///nextcloud/node_modules/vue-material-design-icons/Cog.vue?vue&type=template&id=89df8f2e","webpack:///nextcloud/node_modules/throttle-debounce/esm/index.js","webpack:///nextcloud/node_modules/vue-material-design-icons/ChartPie.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/ChartPie.vue?vue&type=script&lang=js","webpack://nextcloud/./node_modules/vue-material-design-icons/ChartPie.vue?421f","webpack:///nextcloud/node_modules/vue-material-design-icons/ChartPie.vue?vue&type=template&id=b117066e","webpack:///nextcloud/apps/files/src/logger.js","webpack:///nextcloud/apps/files/src/components/NavigationQuota.vue?vue&type=script&lang=js","webpack:///nextcloud/apps/files/src/components/NavigationQuota.vue","webpack://nextcloud/./apps/files/src/components/NavigationQuota.vue?9719","webpack://nextcloud/./apps/files/src/components/NavigationQuota.vue?2966","webpack://nextcloud/./apps/files/src/components/NavigationQuota.vue?08cb","webpack://nextcloud/./apps/files/src/views/Settings.vue?84f7","webpack:///nextcloud/apps/files/src/components/Setting.vue","webpack:///nextcloud/apps/files/src/components/Setting.vue?vue&type=script&lang=js","webpack://nextcloud/./apps/files/src/components/Setting.vue?98ea","webpack://nextcloud/./apps/files/src/components/Setting.vue?8d57","webpack:///nextcloud/apps/files/src/store/userconfig.ts","webpack:///nextcloud/apps/files/src/views/Settings.vue?vue&type=script&lang=js","webpack:///nextcloud/apps/files/src/views/Settings.vue","webpack://nextcloud/./apps/files/src/views/Settings.vue?6fb1","webpack://nextcloud/./apps/files/src/views/Settings.vue?b81b","webpack:///nextcloud/apps/files/src/composables/useNavigation.ts","webpack:///nextcloud/apps/files/src/store/viewConfig.ts","webpack:///nextcloud/apps/files/src/views/Navigation.vue?vue&type=script&lang=ts","webpack:///nextcloud/apps/files/src/views/Navigation.vue","webpack://nextcloud/./apps/files/src/views/Navigation.vue?d877","webpack://nextcloud/./apps/files/src/views/Navigation.vue?74b9","webpack:///nextcloud/apps/files/src/views/FilesList.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/FormatListBulletedSquare.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/FormatListBulletedSquare.vue?vue&type=script&lang=js","webpack://nextcloud/./node_modules/vue-material-design-icons/FormatListBulletedSquare.vue?5dae","webpack:///nextcloud/node_modules/vue-material-design-icons/FormatListBulletedSquare.vue?vue&type=template&id=00aea13f","webpack:///nextcloud/node_modules/vue-material-design-icons/AccountPlus.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/AccountPlus.vue?vue&type=script&lang=js","webpack://nextcloud/./node_modules/vue-material-design-icons/AccountPlus.vue?2818","webpack:///nextcloud/node_modules/vue-material-design-icons/AccountPlus.vue?vue&type=template&id=a16afc28","webpack:///nextcloud/node_modules/vue-material-design-icons/ViewGrid.vue?vue&type=script&lang=js","webpack:///nextcloud/node_modules/vue-material-design-icons/ViewGrid.vue","webpack://nextcloud/./node_modules/vue-material-design-icons/ViewGrid.vue?4e55","webpack:///nextcloud/node_modules/vue-material-design-icons/ViewGrid.vue?vue&type=template&id=7b96a104","webpack:///nextcloud/apps/files/src/actions/sidebarAction.ts","webpack:///nextcloud/apps/files/src/services/WebdavClient.ts","webpack:///nextcloud/apps/files/src/store/files.ts","webpack:///nextcloud/apps/files/src/store/paths.ts","webpack:///nextcloud/apps/files/src/store/selection.ts","webpack:///nextcloud/apps/files/src/store/uploader.ts","webpack:///nextcloud/apps/files/src/services/DropServiceUtils.ts","webpack:///nextcloud/apps/files/src/actions/moveOrCopyActionUtils.ts","webpack:///nextcloud/apps/files/src/services/Files.ts","webpack:///nextcloud/apps/files/src/actions/moveOrCopyAction.ts","webpack:///nextcloud/apps/files/src/services/DropService.ts","webpack:///nextcloud/apps/files/src/store/dragging.ts","webpack:///nextcloud/apps/files/src/mixins/filesListWidth.ts","webpack:///nextcloud/apps/files/src/components/BreadCrumbs.vue?vue&type=script&lang=ts","webpack:///nextcloud/apps/files/src/components/BreadCrumbs.vue","webpack://nextcloud/./apps/files/src/components/BreadCrumbs.vue?2a1f","webpack://nextcloud/./apps/files/src/components/BreadCrumbs.vue?d357","webpack:///nextcloud/apps/files/src/utils/fileUtils.ts","webpack:///nextcloud/apps/files/src/components/FileEntry.vue","webpack:///nextcloud/apps/files/src/store/actionsmenu.ts","webpack:///nextcloud/apps/files/src/store/renaming.ts","webpack:///nextcloud/node_modules/vue-material-design-icons/FileMultiple.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/FileMultiple.vue?vue&type=script&lang=js","webpack://nextcloud/./node_modules/vue-material-design-icons/FileMultiple.vue?6e9d","webpack:///nextcloud/node_modules/vue-material-design-icons/FileMultiple.vue?vue&type=template&id=27b46e04","webpack:///nextcloud/apps/files/src/components/DragAndDropPreview.vue","webpack:///nextcloud/apps/files/src/components/DragAndDropPreview.vue?vue&type=script&lang=ts","webpack://nextcloud/./apps/files/src/components/DragAndDropPreview.vue?07ad","webpack://nextcloud/./apps/files/src/components/DragAndDropPreview.vue?36f6","webpack:///nextcloud/apps/files/src/utils/dragUtils.ts","webpack:///nextcloud/apps/files/src/components/FileEntryMixin.ts","webpack:///nextcloud/apps/files/src/utils/hashUtils.ts","webpack:///nextcloud/apps/files/src/components/CustomElementRender.vue","webpack:///nextcloud/apps/files/src/components/CustomElementRender.vue?vue&type=script&lang=ts","webpack://nextcloud/./apps/files/src/components/CustomElementRender.vue?5f5c","webpack:///nextcloud/apps/files/src/components/FileEntry/FileEntryActions.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/ArrowLeft.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/ArrowLeft.vue?vue&type=script&lang=js","webpack://nextcloud/./node_modules/vue-material-design-icons/ArrowLeft.vue?f857","webpack:///nextcloud/node_modules/vue-material-design-icons/ArrowLeft.vue?vue&type=template&id=214c9a86","webpack:///nextcloud/apps/files/src/components/FileEntry/FileEntryActions.vue?vue&type=script&lang=ts","webpack://nextcloud/./apps/files/src/components/FileEntry/FileEntryActions.vue?9869","webpack://nextcloud/./apps/files/src/components/FileEntry/FileEntryActions.vue?bea6","webpack://nextcloud/./apps/files/src/components/FileEntry/FileEntryActions.vue?7b52","webpack:///nextcloud/apps/files/src/components/FileEntry/FileEntryCheckbox.vue?vue&type=script&lang=ts","webpack:///nextcloud/apps/files/src/components/FileEntry/FileEntryCheckbox.vue","webpack:///nextcloud/apps/files/src/store/keyboard.ts","webpack://nextcloud/./apps/files/src/components/FileEntry/FileEntryCheckbox.vue?a18b","webpack:///nextcloud/apps/files/src/components/FileEntry/FileEntryName.vue","webpack:///nextcloud/apps/files/src/utils/filenameValidity.ts","webpack:///nextcloud/apps/files/src/components/FileEntry/FileEntryName.vue?vue&type=script&lang=ts","webpack://nextcloud/./apps/files/src/components/FileEntry/FileEntryName.vue?98a4","webpack:///nextcloud/apps/files/src/components/FileEntry/FileEntryPreview.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/File.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/File.vue?vue&type=script&lang=js","webpack://nextcloud/./node_modules/vue-material-design-icons/File.vue?245d","webpack:///nextcloud/node_modules/vue-material-design-icons/File.vue?vue&type=template&id=e3c8d598","webpack:///nextcloud/node_modules/vue-material-design-icons/FolderOpen.vue?vue&type=script&lang=js","webpack:///nextcloud/node_modules/vue-material-design-icons/FolderOpen.vue","webpack://nextcloud/./node_modules/vue-material-design-icons/FolderOpen.vue?6818","webpack:///nextcloud/node_modules/vue-material-design-icons/FolderOpen.vue?vue&type=template&id=79cee0a4","webpack:///nextcloud/node_modules/vue-material-design-icons/Key.vue?vue&type=script&lang=js","webpack:///nextcloud/node_modules/vue-material-design-icons/Key.vue","webpack://nextcloud/./node_modules/vue-material-design-icons/Key.vue?157c","webpack:///nextcloud/node_modules/vue-material-design-icons/Key.vue?vue&type=template&id=01a06d54","webpack:///nextcloud/node_modules/vue-material-design-icons/Network.vue?vue&type=script&lang=js","webpack:///nextcloud/node_modules/vue-material-design-icons/Network.vue","webpack://nextcloud/./node_modules/vue-material-design-icons/Network.vue?11eb","webpack:///nextcloud/node_modules/vue-material-design-icons/Network.vue?vue&type=template&id=29f8873c","webpack:///nextcloud/node_modules/vue-material-design-icons/Tag.vue?vue&type=script&lang=js","webpack:///nextcloud/node_modules/vue-material-design-icons/Tag.vue","webpack://nextcloud/./node_modules/vue-material-design-icons/Tag.vue?6116","webpack:///nextcloud/node_modules/vue-material-design-icons/Tag.vue?vue&type=template&id=75dd05e4","webpack:///nextcloud/node_modules/vue-material-design-icons/PlayCircle.vue?vue&type=script&lang=js","webpack:///nextcloud/node_modules/vue-material-design-icons/PlayCircle.vue","webpack://nextcloud/./node_modules/vue-material-design-icons/PlayCircle.vue?0c26","webpack:///nextcloud/node_modules/vue-material-design-icons/PlayCircle.vue?vue&type=template&id=6901b3e6","webpack:///nextcloud/apps/files/src/components/FileEntry/CollectivesIcon.vue?vue&type=script&lang=js","webpack:///nextcloud/apps/files/src/components/FileEntry/CollectivesIcon.vue","webpack://nextcloud/./apps/files/src/components/FileEntry/CollectivesIcon.vue?1937","webpack://nextcloud/./apps/files/src/components/FileEntry/CollectivesIcon.vue?949d","webpack:///nextcloud/apps/files/src/components/FileEntry/FavoriteIcon.vue?vue&type=script&lang=ts","webpack:///nextcloud/apps/files/src/components/FileEntry/FavoriteIcon.vue","webpack://nextcloud/./apps/files/src/components/FileEntry/FavoriteIcon.vue?f7c8","webpack://nextcloud/./apps/files/src/components/FileEntry/FavoriteIcon.vue?62c6","webpack:///nextcloud/apps/files/src/components/FileEntry/FileEntryPreview.vue?vue&type=script&lang=ts","webpack:///nextcloud/apps/files/src/services/LivePhotos.ts","webpack://nextcloud/./apps/files/src/components/FileEntry/FileEntryPreview.vue?8c1f","webpack:///nextcloud/apps/files/src/components/FileEntry.vue?vue&type=script&lang=ts","webpack://nextcloud/./apps/files/src/components/FileEntry.vue?da7c","webpack:///nextcloud/apps/files/src/components/FileEntryGrid.vue?vue&type=script&lang=ts","webpack:///nextcloud/apps/files/src/components/FileEntryGrid.vue","webpack://nextcloud/./apps/files/src/components/FileEntryGrid.vue?bb8e","webpack:///nextcloud/apps/files/src/components/FilesListHeader.vue","webpack:///nextcloud/apps/files/src/components/FilesListHeader.vue?vue&type=script&lang=ts","webpack://nextcloud/./apps/files/src/components/FilesListHeader.vue?349b","webpack:///nextcloud/apps/files/src/components/FilesListTableFooter.vue?vue&type=script&lang=ts","webpack:///nextcloud/apps/files/src/components/FilesListTableFooter.vue","webpack://nextcloud/./apps/files/src/components/FilesListTableFooter.vue?284f","webpack://nextcloud/./apps/files/src/components/FilesListTableFooter.vue?fa4c","webpack:///nextcloud/apps/files/src/components/FilesListTableHeader.vue","webpack:///nextcloud/apps/files/src/mixins/filesSorting.ts","webpack:///nextcloud/apps/files/src/components/FilesListTableHeaderButton.vue?vue&type=script&lang=ts","webpack:///nextcloud/apps/files/src/components/FilesListTableHeaderButton.vue","webpack://nextcloud/./apps/files/src/components/FilesListTableHeaderButton.vue?6c33","webpack://nextcloud/./apps/files/src/components/FilesListTableHeaderButton.vue?e364","webpack:///nextcloud/apps/files/src/components/FilesListTableHeader.vue?vue&type=script&lang=ts","webpack://nextcloud/./apps/files/src/components/FilesListTableHeader.vue?7d8d","webpack://nextcloud/./apps/files/src/components/FilesListTableHeader.vue?b1c9","webpack:///nextcloud/apps/files/src/components/VirtualList.vue","webpack:///nextcloud/apps/files/src/components/VirtualList.vue?vue&type=script&lang=ts","webpack://nextcloud/./apps/files/src/components/VirtualList.vue?37fa","webpack:///nextcloud/apps/files/src/components/FilesListTableHeaderActions.vue","webpack:///nextcloud/apps/files/src/components/FilesListTableHeaderActions.vue?vue&type=script&lang=ts","webpack://nextcloud/./apps/files/src/components/FilesListTableHeaderActions.vue?8cd0","webpack://nextcloud/./apps/files/src/components/FilesListTableHeaderActions.vue?9494","webpack:///nextcloud/apps/files/src/components/FilesListVirtual.vue?vue&type=script&lang=ts","webpack:///nextcloud/apps/files/src/components/FilesListVirtual.vue","webpack://nextcloud/./apps/files/src/components/FilesListVirtual.vue?8efb","webpack://nextcloud/./apps/files/src/components/FilesListVirtual.vue?ac21","webpack://nextcloud/./apps/files/src/components/FilesListVirtual.vue?3555","webpack:///nextcloud/node_modules/vue-material-design-icons/TrayArrowDown.vue?vue&type=script&lang=js","webpack:///nextcloud/node_modules/vue-material-design-icons/TrayArrowDown.vue","webpack://nextcloud/./node_modules/vue-material-design-icons/TrayArrowDown.vue?a897","webpack:///nextcloud/node_modules/vue-material-design-icons/TrayArrowDown.vue?vue&type=template&id=447c2cd4","webpack:///nextcloud/apps/files/src/components/DragAndDropNotice.vue?vue&type=script&lang=ts","webpack:///nextcloud/apps/files/src/components/DragAndDropNotice.vue","webpack://nextcloud/./apps/files/src/components/DragAndDropNotice.vue?7a27","webpack://nextcloud/./apps/files/src/components/DragAndDropNotice.vue?a2e0","webpack:///nextcloud/apps/files/src/views/FilesList.vue?vue&type=script&lang=ts","webpack://nextcloud/./apps/files/src/views/FilesList.vue?aae9","webpack://nextcloud/./apps/files/src/views/FilesList.vue?1e5b","webpack:///nextcloud/apps/files/src/FilesApp.vue?vue&type=script&lang=ts","webpack://nextcloud/./apps/files/src/FilesApp.vue?597e","webpack:///nextcloud/apps/files/src/main.ts","webpack:///nextcloud/apps/files/src/services/RouterService.ts","webpack:///nextcloud/apps/files/src/services/Settings.js","webpack:///nextcloud/apps/files/src/models/Setting.js","webpack:///nextcloud/node_modules/@nextcloud/upload/dist/assets/index-DiWRcN3o.css","webpack:///nextcloud/apps/files/src/components/BreadCrumbs.vue?vue&type=style&index=0&id=2711da2a&prod&lang=scss&scoped=true","webpack:///nextcloud/apps/files/src/components/DragAndDropNotice.vue?vue&type=style&index=0&id=7f8a4132&prod&lang=scss&scoped=true","webpack:///nextcloud/apps/files/src/components/DragAndDropPreview.vue?vue&type=style&index=0&id=775162a4&prod&lang=scss","webpack:///nextcloud/apps/files/src/components/FileEntry/FavoriteIcon.vue?vue&type=style&index=0&id=f2d0cf6e&prod&lang=scss&scoped=true","webpack:///nextcloud/apps/files/src/components/FileEntry/FileEntryActions.vue?vue&type=style&index=0&id=801e4784&prod&lang=scss","webpack:///nextcloud/apps/files/src/components/FileEntry/FileEntryActions.vue?vue&type=style&index=1&id=801e4784&prod&lang=scss&scoped=true","webpack:///nextcloud/apps/files/src/components/FilesListTableFooter.vue?vue&type=style&index=0&id=130ade4f&prod&scoped=true&lang=scss","webpack:///nextcloud/apps/files/src/components/FilesListTableHeader.vue?vue&type=style&index=0&id=6eaeabb8&prod&scoped=true&lang=scss","webpack:///nextcloud/apps/files/src/components/FilesListTableHeaderActions.vue?vue&type=style&index=0&id=1284c4be&prod&scoped=true&lang=scss","webpack:///nextcloud/apps/files/src/components/FilesListTableHeaderButton.vue?vue&type=style&index=0&id=4e97a5c6&prod&scoped=true&lang=scss","webpack:///nextcloud/apps/files/src/components/FilesListVirtual.vue?vue&type=style&index=0&id=88130a00&prod&scoped=true&lang=scss","webpack:///nextcloud/apps/files/src/components/FilesListVirtual.vue?vue&type=style&index=1&id=88130a00&prod&lang=scss","webpack:///nextcloud/apps/files/src/components/NavigationQuota.vue?vue&type=style&index=0&id=e6f06e0e&prod&lang=scss&scoped=true","webpack:///nextcloud/apps/files/src/views/FilesList.vue?vue&type=style&index=0&id=6adc9ce9&prod&scoped=true&lang=scss","webpack:///nextcloud/apps/files/src/views/Navigation.vue?vue&type=style&index=0&id=66457116&prod&scoped=true&lang=scss","webpack:///nextcloud/apps/files/src/views/Settings.vue?vue&type=style&index=0&id=d0d365f6&prod&lang=scss&scoped=true","webpack:///nextcloud/node_modules/is-retry-allowed/index.js","webpack:///nextcloud/node_modules/simple-eta/index.js","webpack://nextcloud/./node_modules/@nextcloud/upload/dist/assets/index-DiWRcN3o.css?9af4","webpack:///nextcloud/node_modules/p-cancelable/index.js","webpack:///nextcloud/node_modules/@nextcloud/upload/node_modules/p-timeout/index.js","webpack:///nextcloud/node_modules/@nextcloud/upload/node_modules/p-queue/dist/priority-queue.js","webpack:///nextcloud/node_modules/@nextcloud/upload/node_modules/p-queue/dist/lower-bound.js","webpack:///nextcloud/node_modules/@nextcloud/upload/node_modules/p-queue/dist/index.js","webpack:///nextcloud/node_modules/axios-retry/dist/esm/index.js","webpack:///nextcloud/node_modules/@nextcloud/upload/dist/chunks/index-ifErGYeJ.mjs","webpack:///nextcloud/webpack/bootstrap","webpack:///nextcloud/webpack/runtime/compat get default export","webpack:///nextcloud/webpack/runtime/define property getters","webpack:///nextcloud/webpack/runtime/ensure chunk","webpack:///nextcloud/webpack/runtime/get javascript chunk filename","webpack:///nextcloud/webpack/runtime/global","webpack:///nextcloud/webpack/runtime/hasOwnProperty shorthand","webpack:///nextcloud/webpack/runtime/make namespace object","webpack:///nextcloud/webpack/runtime/node module decorator","webpack:///nextcloud/webpack/runtime/runtimeId","webpack:///nextcloud/webpack/runtime/publicPath","webpack:///nextcloud/webpack/runtime/jsonp chunk loading","webpack:///nextcloud/webpack/runtime/nonce","webpack:///nextcloud/webpack/startup"],"sourcesContent":["var deferred = [];\n__webpack_require__.O = (result, chunkIds, fn, priority) => {\n\tif(chunkIds) {\n\t\tpriority = priority || 0;\n\t\tfor(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];\n\t\tdeferred[i] = [chunkIds, fn, priority];\n\t\treturn;\n\t}\n\tvar notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tvar chunkIds = deferred[i][0];\n\t\tvar fn = deferred[i][1];\n\t\tvar priority = deferred[i][2];\n\t\tvar fulfilled = true;\n\t\tfor (var j = 0; j < chunkIds.length; j++) {\n\t\t\tif ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every((key) => (__webpack_require__.O[key](chunkIds[j])))) {\n\t\t\t\tchunkIds.splice(j--, 1);\n\t\t\t} else {\n\t\t\t\tfulfilled = false;\n\t\t\t\tif(priority < notFulfilled) notFulfilled = priority;\n\t\t\t}\n\t\t}\n\t\tif(fulfilled) {\n\t\t\tdeferred.splice(i--, 1)\n\t\t\tvar r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","var inProgress = {};\nvar dataWebpackPrefix = \"nextcloud:\";\n// loadScript function to load a script via script tag\n__webpack_require__.l = (url, done, key, chunkId) => {\n\tif(inProgress[url]) { inProgress[url].push(done); return; }\n\tvar script, needAttach;\n\tif(key !== undefined) {\n\t\tvar scripts = document.getElementsByTagName(\"script\");\n\t\tfor(var i = 0; i < scripts.length; i++) {\n\t\t\tvar s = scripts[i];\n\t\t\tif(s.getAttribute(\"src\") == url || s.getAttribute(\"data-webpack\") == dataWebpackPrefix + key) { script = s; break; }\n\t\t}\n\t}\n\tif(!script) {\n\t\tneedAttach = true;\n\t\tscript = document.createElement('script');\n\n\t\tscript.charset = 'utf-8';\n\t\tscript.timeout = 120;\n\t\tif (__webpack_require__.nc) {\n\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n\t\t}\n\t\tscript.setAttribute(\"data-webpack\", dataWebpackPrefix + key);\n\n\t\tscript.src = url;\n\t}\n\tinProgress[url] = [done];\n\tvar onScriptComplete = (prev, event) => {\n\t\t// avoid mem leaks in IE.\n\t\tscript.onerror = script.onload = null;\n\t\tclearTimeout(timeout);\n\t\tvar doneFns = inProgress[url];\n\t\tdelete inProgress[url];\n\t\tscript.parentNode && script.parentNode.removeChild(script);\n\t\tdoneFns && doneFns.forEach((fn) => (fn(event)));\n\t\tif(prev) return prev(event);\n\t}\n\tvar timeout = setTimeout(onScriptComplete.bind(null, undefined, { type: 'timeout', target: script }), 120000);\n\tscript.onerror = onScriptComplete.bind(null, script.onerror);\n\tscript.onload = onScriptComplete.bind(null, script.onload);\n\tneedAttach && document.head.appendChild(script);\n};","'use strict';\n\nvar has = Object.prototype.hasOwnProperty\n  , prefix = '~';\n\n/**\n * Constructor to create a storage for our `EE` objects.\n * An `Events` instance is a plain object whose properties are event names.\n *\n * @constructor\n * @private\n */\nfunction Events() {}\n\n//\n// We try to not inherit from `Object.prototype`. In some engines creating an\n// instance in this way is faster than calling `Object.create(null)` directly.\n// If `Object.create(null)` is not supported we prefix the event names with a\n// character to make sure that the built-in object properties are not\n// overridden or used as an attack vector.\n//\nif (Object.create) {\n  Events.prototype = Object.create(null);\n\n  //\n  // This hack is needed because the `__proto__` property is still inherited in\n  // some old browsers like Android 4, iPhone 5.1, Opera 11 and Safari 5.\n  //\n  if (!new Events().__proto__) prefix = false;\n}\n\n/**\n * Representation of a single event listener.\n *\n * @param {Function} fn The listener function.\n * @param {*} context The context to invoke the listener with.\n * @param {Boolean} [once=false] Specify if the listener is a one-time listener.\n * @constructor\n * @private\n */\nfunction EE(fn, context, once) {\n  this.fn = fn;\n  this.context = context;\n  this.once = once || false;\n}\n\n/**\n * Add a listener for a given event.\n *\n * @param {EventEmitter} emitter Reference to the `EventEmitter` instance.\n * @param {(String|Symbol)} event The event name.\n * @param {Function} fn The listener function.\n * @param {*} context The context to invoke the listener with.\n * @param {Boolean} once Specify if the listener is a one-time listener.\n * @returns {EventEmitter}\n * @private\n */\nfunction addListener(emitter, event, fn, context, once) {\n  if (typeof fn !== 'function') {\n    throw new TypeError('The listener must be a function');\n  }\n\n  var listener = new EE(fn, context || emitter, once)\n    , evt = prefix ? prefix + event : event;\n\n  if (!emitter._events[evt]) emitter._events[evt] = listener, emitter._eventsCount++;\n  else if (!emitter._events[evt].fn) emitter._events[evt].push(listener);\n  else emitter._events[evt] = [emitter._events[evt], listener];\n\n  return emitter;\n}\n\n/**\n * Clear event by name.\n *\n * @param {EventEmitter} emitter Reference to the `EventEmitter` instance.\n * @param {(String|Symbol)} evt The Event name.\n * @private\n */\nfunction clearEvent(emitter, evt) {\n  if (--emitter._eventsCount === 0) emitter._events = new Events();\n  else delete emitter._events[evt];\n}\n\n/**\n * Minimal `EventEmitter` interface that is molded against the Node.js\n * `EventEmitter` interface.\n *\n * @constructor\n * @public\n */\nfunction EventEmitter() {\n  this._events = new Events();\n  this._eventsCount = 0;\n}\n\n/**\n * Return an array listing the events for which the emitter has registered\n * listeners.\n *\n * @returns {Array}\n * @public\n */\nEventEmitter.prototype.eventNames = function eventNames() {\n  var names = []\n    , events\n    , name;\n\n  if (this._eventsCount === 0) return names;\n\n  for (name in (events = this._events)) {\n    if (has.call(events, name)) names.push(prefix ? name.slice(1) : name);\n  }\n\n  if (Object.getOwnPropertySymbols) {\n    return names.concat(Object.getOwnPropertySymbols(events));\n  }\n\n  return names;\n};\n\n/**\n * Return the listeners registered for a given event.\n *\n * @param {(String|Symbol)} event The event name.\n * @returns {Array} The registered listeners.\n * @public\n */\nEventEmitter.prototype.listeners = function listeners(event) {\n  var evt = prefix ? prefix + event : event\n    , handlers = this._events[evt];\n\n  if (!handlers) return [];\n  if (handlers.fn) return [handlers.fn];\n\n  for (var i = 0, l = handlers.length, ee = new Array(l); i < l; i++) {\n    ee[i] = handlers[i].fn;\n  }\n\n  return ee;\n};\n\n/**\n * Return the number of listeners listening to a given event.\n *\n * @param {(String|Symbol)} event The event name.\n * @returns {Number} The number of listeners.\n * @public\n */\nEventEmitter.prototype.listenerCount = function listenerCount(event) {\n  var evt = prefix ? prefix + event : event\n    , listeners = this._events[evt];\n\n  if (!listeners) return 0;\n  if (listeners.fn) return 1;\n  return listeners.length;\n};\n\n/**\n * Calls each of the listeners registered for a given event.\n *\n * @param {(String|Symbol)} event The event name.\n * @returns {Boolean} `true` if the event had listeners, else `false`.\n * @public\n */\nEventEmitter.prototype.emit = function emit(event, a1, a2, a3, a4, a5) {\n  var evt = prefix ? prefix + event : event;\n\n  if (!this._events[evt]) return false;\n\n  var listeners = this._events[evt]\n    , len = arguments.length\n    , args\n    , i;\n\n  if (listeners.fn) {\n    if (listeners.once) this.removeListener(event, listeners.fn, undefined, true);\n\n    switch (len) {\n      case 1: return listeners.fn.call(listeners.context), true;\n      case 2: return listeners.fn.call(listeners.context, a1), true;\n      case 3: return listeners.fn.call(listeners.context, a1, a2), true;\n      case 4: return listeners.fn.call(listeners.context, a1, a2, a3), true;\n      case 5: return listeners.fn.call(listeners.context, a1, a2, a3, a4), true;\n      case 6: return listeners.fn.call(listeners.context, a1, a2, a3, a4, a5), true;\n    }\n\n    for (i = 1, args = new Array(len -1); i < len; i++) {\n      args[i - 1] = arguments[i];\n    }\n\n    listeners.fn.apply(listeners.context, args);\n  } else {\n    var length = listeners.length\n      , j;\n\n    for (i = 0; i < length; i++) {\n      if (listeners[i].once) this.removeListener(event, listeners[i].fn, undefined, true);\n\n      switch (len) {\n        case 1: listeners[i].fn.call(listeners[i].context); break;\n        case 2: listeners[i].fn.call(listeners[i].context, a1); break;\n        case 3: listeners[i].fn.call(listeners[i].context, a1, a2); break;\n        case 4: listeners[i].fn.call(listeners[i].context, a1, a2, a3); break;\n        default:\n          if (!args) for (j = 1, args = new Array(len -1); j < len; j++) {\n            args[j - 1] = arguments[j];\n          }\n\n          listeners[i].fn.apply(listeners[i].context, args);\n      }\n    }\n  }\n\n  return true;\n};\n\n/**\n * Add a listener for a given event.\n *\n * @param {(String|Symbol)} event The event name.\n * @param {Function} fn The listener function.\n * @param {*} [context=this] The context to invoke the listener with.\n * @returns {EventEmitter} `this`.\n * @public\n */\nEventEmitter.prototype.on = function on(event, fn, context) {\n  return addListener(this, event, fn, context, false);\n};\n\n/**\n * Add a one-time listener for a given event.\n *\n * @param {(String|Symbol)} event The event name.\n * @param {Function} fn The listener function.\n * @param {*} [context=this] The context to invoke the listener with.\n * @returns {EventEmitter} `this`.\n * @public\n */\nEventEmitter.prototype.once = function once(event, fn, context) {\n  return addListener(this, event, fn, context, true);\n};\n\n/**\n * Remove the listeners of a given event.\n *\n * @param {(String|Symbol)} event The event name.\n * @param {Function} fn Only remove the listeners that match this function.\n * @param {*} context Only remove the listeners that have this context.\n * @param {Boolean} once Only remove one-time listeners.\n * @returns {EventEmitter} `this`.\n * @public\n */\nEventEmitter.prototype.removeListener = function removeListener(event, fn, context, once) {\n  var evt = prefix ? prefix + event : event;\n\n  if (!this._events[evt]) return this;\n  if (!fn) {\n    clearEvent(this, evt);\n    return this;\n  }\n\n  var listeners = this._events[evt];\n\n  if (listeners.fn) {\n    if (\n      listeners.fn === fn &&\n      (!once || listeners.once) &&\n      (!context || listeners.context === context)\n    ) {\n      clearEvent(this, evt);\n    }\n  } else {\n    for (var i = 0, events = [], length = listeners.length; i < length; i++) {\n      if (\n        listeners[i].fn !== fn ||\n        (once && !listeners[i].once) ||\n        (context && listeners[i].context !== context)\n      ) {\n        events.push(listeners[i]);\n      }\n    }\n\n    //\n    // Reset the array, or remove it completely if we have no more listeners.\n    //\n    if (events.length) this._events[evt] = events.length === 1 ? events[0] : events;\n    else clearEvent(this, evt);\n  }\n\n  return this;\n};\n\n/**\n * Remove all listeners, or those of the specified event.\n *\n * @param {(String|Symbol)} [event] The event name.\n * @returns {EventEmitter} `this`.\n * @public\n */\nEventEmitter.prototype.removeAllListeners = function removeAllListeners(event) {\n  var evt;\n\n  if (event) {\n    evt = prefix ? prefix + event : event;\n    if (this._events[evt]) clearEvent(this, evt);\n  } else {\n    this._events = new Events();\n    this._eventsCount = 0;\n  }\n\n  return this;\n};\n\n//\n// Alias methods names because people roll like that.\n//\nEventEmitter.prototype.off = EventEmitter.prototype.removeListener;\nEventEmitter.prototype.addListener = EventEmitter.prototype.on;\n\n//\n// Expose the prefix.\n//\nEventEmitter.prefixed = prefix;\n\n//\n// Allow `EventEmitter` to be imported as module namespace.\n//\nEventEmitter.EventEmitter = EventEmitter;\n\n//\n// Expose the module.\n//\nif ('undefined' !== typeof module) {\n  module.exports = EventEmitter;\n}\n","/**\n * SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { createPinia } from 'pinia';\nexport const pinia = createPinia();\n","const token = '%[a-f0-9]{2}';\nconst singleMatcher = new RegExp('(' + token + ')|([^%]+?)', 'gi');\nconst multiMatcher = new RegExp('(' + token + ')+', 'gi');\n\nfunction decodeComponents(components, split) {\n\ttry {\n\t\t// Try to decode the entire string first\n\t\treturn [decodeURIComponent(components.join(''))];\n\t} catch {\n\t\t// Do nothing\n\t}\n\n\tif (components.length === 1) {\n\t\treturn components;\n\t}\n\n\tsplit = split || 1;\n\n\t// Split the array in 2 parts\n\tconst left = components.slice(0, split);\n\tconst right = components.slice(split);\n\n\treturn Array.prototype.concat.call([], decodeComponents(left), decodeComponents(right));\n}\n\nfunction decode(input) {\n\ttry {\n\t\treturn decodeURIComponent(input);\n\t} catch {\n\t\tlet tokens = input.match(singleMatcher) || [];\n\n\t\tfor (let i = 1; i < tokens.length; i++) {\n\t\t\tinput = decodeComponents(tokens, i).join('');\n\n\t\t\ttokens = input.match(singleMatcher) || [];\n\t\t}\n\n\t\treturn input;\n\t}\n}\n\nfunction customDecodeURIComponent(input) {\n\t// Keep track of all the replacements and prefill the map with the `BOM`\n\tconst replaceMap = {\n\t\t'%FE%FF': '\\uFFFD\\uFFFD',\n\t\t'%FF%FE': '\\uFFFD\\uFFFD',\n\t};\n\n\tlet match = multiMatcher.exec(input);\n\twhile (match) {\n\t\ttry {\n\t\t\t// Decode as big chunks as possible\n\t\t\treplaceMap[match[0]] = decodeURIComponent(match[0]);\n\t\t} catch {\n\t\t\tconst result = decode(match[0]);\n\n\t\t\tif (result !== match[0]) {\n\t\t\t\treplaceMap[match[0]] = result;\n\t\t\t}\n\t\t}\n\n\t\tmatch = multiMatcher.exec(input);\n\t}\n\n\t// Add `%C2` at the end of the map to make sure it does not replace the combinator before everything else\n\treplaceMap['%C2'] = '\\uFFFD';\n\n\tconst entries = Object.keys(replaceMap);\n\n\tfor (const key of entries) {\n\t\t// Replace all decoded components\n\t\tinput = input.replace(new RegExp(key, 'g'), replaceMap[key]);\n\t}\n\n\treturn input;\n}\n\nexport default function decodeUriComponent(encodedURI) {\n\tif (typeof encodedURI !== 'string') {\n\t\tthrow new TypeError('Expected `encodedURI` to be of type `string`, got `' + typeof encodedURI + '`');\n\t}\n\n\ttry {\n\t\t// Try the built in decoder first\n\t\treturn decodeURIComponent(encodedURI);\n\t} catch {\n\t\t// Fallback to a more advanced decoder\n\t\treturn customDecodeURIComponent(encodedURI);\n\t}\n}\n","export default function splitOnFirst(string, separator) {\n\tif (!(typeof string === 'string' && typeof separator === 'string')) {\n\t\tthrow new TypeError('Expected the arguments to be of type `string`');\n\t}\n\n\tif (string === '' || separator === '') {\n\t\treturn [];\n\t}\n\n\tconst separatorIndex = string.indexOf(separator);\n\n\tif (separatorIndex === -1) {\n\t\treturn [];\n\t}\n\n\treturn [\n\t\tstring.slice(0, separatorIndex),\n\t\tstring.slice(separatorIndex + separator.length)\n\t];\n}\n","export function includeKeys(object, predicate) {\n\tconst result = {};\n\n\tif (Array.isArray(predicate)) {\n\t\tfor (const key of predicate) {\n\t\t\tconst descriptor = Object.getOwnPropertyDescriptor(object, key);\n\t\t\tif (descriptor?.enumerable) {\n\t\t\t\tObject.defineProperty(result, key, descriptor);\n\t\t\t}\n\t\t}\n\t} else {\n\t\t// `Reflect.ownKeys()` is required to retrieve symbol properties\n\t\tfor (const key of Reflect.ownKeys(object)) {\n\t\t\tconst descriptor = Object.getOwnPropertyDescriptor(object, key);\n\t\t\tif (descriptor.enumerable) {\n\t\t\t\tconst value = object[key];\n\t\t\t\tif (predicate(key, value, object)) {\n\t\t\t\t\tObject.defineProperty(result, key, descriptor);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\treturn result;\n}\n\nexport function excludeKeys(object, predicate) {\n\tif (Array.isArray(predicate)) {\n\t\tconst set = new Set(predicate);\n\t\treturn includeKeys(object, key => !set.has(key));\n\t}\n\n\treturn includeKeys(object, (key, value, object) => !predicate(key, value, object));\n}\n","import decodeComponent from 'decode-uri-component';\nimport splitOnFirst from 'split-on-first';\nimport {includeKeys} from 'filter-obj';\n\nconst isNullOrUndefined = value => value === null || value === undefined;\n\n// eslint-disable-next-line unicorn/prefer-code-point\nconst strictUriEncode = string => encodeURIComponent(string).replaceAll(/[!'()*]/g, x => `%${x.charCodeAt(0).toString(16).toUpperCase()}`);\n\nconst encodeFragmentIdentifier = Symbol('encodeFragmentIdentifier');\n\nfunction encoderForArrayFormat(options) {\n\tswitch (options.arrayFormat) {\n\t\tcase 'index': {\n\t\t\treturn key => (result, value) => {\n\t\t\t\tconst index = result.length;\n\n\t\t\t\tif (\n\t\t\t\t\tvalue === undefined\n\t\t\t\t\t|| (options.skipNull && value === null)\n\t\t\t\t\t|| (options.skipEmptyString && value === '')\n\t\t\t\t) {\n\t\t\t\t\treturn result;\n\t\t\t\t}\n\n\t\t\t\tif (value === null) {\n\t\t\t\t\treturn [\n\t\t\t\t\t\t...result, [encode(key, options), '[', index, ']'].join(''),\n\t\t\t\t\t];\n\t\t\t\t}\n\n\t\t\t\treturn [\n\t\t\t\t\t...result,\n\t\t\t\t\t[encode(key, options), '[', encode(index, options), ']=', encode(value, options)].join(''),\n\t\t\t\t];\n\t\t\t};\n\t\t}\n\n\t\tcase 'bracket': {\n\t\t\treturn key => (result, value) => {\n\t\t\t\tif (\n\t\t\t\t\tvalue === undefined\n\t\t\t\t\t|| (options.skipNull && value === null)\n\t\t\t\t\t|| (options.skipEmptyString && value === '')\n\t\t\t\t) {\n\t\t\t\t\treturn result;\n\t\t\t\t}\n\n\t\t\t\tif (value === null) {\n\t\t\t\t\treturn [\n\t\t\t\t\t\t...result,\n\t\t\t\t\t\t[encode(key, options), '[]'].join(''),\n\t\t\t\t\t];\n\t\t\t\t}\n\n\t\t\t\treturn [\n\t\t\t\t\t...result,\n\t\t\t\t\t[encode(key, options), '[]=', encode(value, options)].join(''),\n\t\t\t\t];\n\t\t\t};\n\t\t}\n\n\t\tcase 'colon-list-separator': {\n\t\t\treturn key => (result, value) => {\n\t\t\t\tif (\n\t\t\t\t\tvalue === undefined\n\t\t\t\t\t|| (options.skipNull && value === null)\n\t\t\t\t\t|| (options.skipEmptyString && value === '')\n\t\t\t\t) {\n\t\t\t\t\treturn result;\n\t\t\t\t}\n\n\t\t\t\tif (value === null) {\n\t\t\t\t\treturn [\n\t\t\t\t\t\t...result,\n\t\t\t\t\t\t[encode(key, options), ':list='].join(''),\n\t\t\t\t\t];\n\t\t\t\t}\n\n\t\t\t\treturn [\n\t\t\t\t\t...result,\n\t\t\t\t\t[encode(key, options), ':list=', encode(value, options)].join(''),\n\t\t\t\t];\n\t\t\t};\n\t\t}\n\n\t\tcase 'comma':\n\t\tcase 'separator':\n\t\tcase 'bracket-separator': {\n\t\t\tconst keyValueSeparator = options.arrayFormat === 'bracket-separator'\n\t\t\t\t? '[]='\n\t\t\t\t: '=';\n\n\t\t\treturn key => (result, value) => {\n\t\t\t\tif (\n\t\t\t\t\tvalue === undefined\n\t\t\t\t\t|| (options.skipNull && value === null)\n\t\t\t\t\t|| (options.skipEmptyString && value === '')\n\t\t\t\t) {\n\t\t\t\t\treturn result;\n\t\t\t\t}\n\n\t\t\t\t// Translate null to an empty string so that it doesn't serialize as 'null'\n\t\t\t\tvalue = value === null ? '' : value;\n\n\t\t\t\tif (result.length === 0) {\n\t\t\t\t\treturn [[encode(key, options), keyValueSeparator, encode(value, options)].join('')];\n\t\t\t\t}\n\n\t\t\t\treturn [[result, encode(value, options)].join(options.arrayFormatSeparator)];\n\t\t\t};\n\t\t}\n\n\t\tdefault: {\n\t\t\treturn key => (result, value) => {\n\t\t\t\tif (\n\t\t\t\t\tvalue === undefined\n\t\t\t\t\t|| (options.skipNull && value === null)\n\t\t\t\t\t|| (options.skipEmptyString && value === '')\n\t\t\t\t) {\n\t\t\t\t\treturn result;\n\t\t\t\t}\n\n\t\t\t\tif (value === null) {\n\t\t\t\t\treturn [\n\t\t\t\t\t\t...result,\n\t\t\t\t\t\tencode(key, options),\n\t\t\t\t\t];\n\t\t\t\t}\n\n\t\t\t\treturn [\n\t\t\t\t\t...result,\n\t\t\t\t\t[encode(key, options), '=', encode(value, options)].join(''),\n\t\t\t\t];\n\t\t\t};\n\t\t}\n\t}\n}\n\nfunction parserForArrayFormat(options) {\n\tlet result;\n\n\tswitch (options.arrayFormat) {\n\t\tcase 'index': {\n\t\t\treturn (key, value, accumulator) => {\n\t\t\t\tresult = /\\[(\\d*)]$/.exec(key);\n\n\t\t\t\tkey = key.replace(/\\[\\d*]$/, '');\n\n\t\t\t\tif (!result) {\n\t\t\t\t\taccumulator[key] = value;\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tif (accumulator[key] === undefined) {\n\t\t\t\t\taccumulator[key] = {};\n\t\t\t\t}\n\n\t\t\t\taccumulator[key][result[1]] = value;\n\t\t\t};\n\t\t}\n\n\t\tcase 'bracket': {\n\t\t\treturn (key, value, accumulator) => {\n\t\t\t\tresult = /(\\[])$/.exec(key);\n\t\t\t\tkey = key.replace(/\\[]$/, '');\n\n\t\t\t\tif (!result) {\n\t\t\t\t\taccumulator[key] = value;\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tif (accumulator[key] === undefined) {\n\t\t\t\t\taccumulator[key] = [value];\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\taccumulator[key] = [...accumulator[key], value];\n\t\t\t};\n\t\t}\n\n\t\tcase 'colon-list-separator': {\n\t\t\treturn (key, value, accumulator) => {\n\t\t\t\tresult = /(:list)$/.exec(key);\n\t\t\t\tkey = key.replace(/:list$/, '');\n\n\t\t\t\tif (!result) {\n\t\t\t\t\taccumulator[key] = value;\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tif (accumulator[key] === undefined) {\n\t\t\t\t\taccumulator[key] = [value];\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\taccumulator[key] = [...accumulator[key], value];\n\t\t\t};\n\t\t}\n\n\t\tcase 'comma':\n\t\tcase 'separator': {\n\t\t\treturn (key, value, accumulator) => {\n\t\t\t\tconst isArray = typeof value === 'string' && value.includes(options.arrayFormatSeparator);\n\t\t\t\tconst isEncodedArray = (typeof value === 'string' && !isArray && decode(value, options).includes(options.arrayFormatSeparator));\n\t\t\t\tvalue = isEncodedArray ? decode(value, options) : value;\n\t\t\t\tconst newValue = isArray || isEncodedArray ? value.split(options.arrayFormatSeparator).map(item => decode(item, options)) : (value === null ? value : decode(value, options));\n\t\t\t\taccumulator[key] = newValue;\n\t\t\t};\n\t\t}\n\n\t\tcase 'bracket-separator': {\n\t\t\treturn (key, value, accumulator) => {\n\t\t\t\tconst isArray = /(\\[])$/.test(key);\n\t\t\t\tkey = key.replace(/\\[]$/, '');\n\n\t\t\t\tif (!isArray) {\n\t\t\t\t\taccumulator[key] = value ? decode(value, options) : value;\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tconst arrayValue = value === null\n\t\t\t\t\t? []\n\t\t\t\t\t: value.split(options.arrayFormatSeparator).map(item => decode(item, options));\n\n\t\t\t\tif (accumulator[key] === undefined) {\n\t\t\t\t\taccumulator[key] = arrayValue;\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\taccumulator[key] = [...accumulator[key], ...arrayValue];\n\t\t\t};\n\t\t}\n\n\t\tdefault: {\n\t\t\treturn (key, value, accumulator) => {\n\t\t\t\tif (accumulator[key] === undefined) {\n\t\t\t\t\taccumulator[key] = value;\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\taccumulator[key] = [...[accumulator[key]].flat(), value];\n\t\t\t};\n\t\t}\n\t}\n}\n\nfunction validateArrayFormatSeparator(value) {\n\tif (typeof value !== 'string' || value.length !== 1) {\n\t\tthrow new TypeError('arrayFormatSeparator must be single character string');\n\t}\n}\n\nfunction encode(value, options) {\n\tif (options.encode) {\n\t\treturn options.strict ? strictUriEncode(value) : encodeURIComponent(value);\n\t}\n\n\treturn value;\n}\n\nfunction decode(value, options) {\n\tif (options.decode) {\n\t\treturn decodeComponent(value);\n\t}\n\n\treturn value;\n}\n\nfunction keysSorter(input) {\n\tif (Array.isArray(input)) {\n\t\treturn input.sort();\n\t}\n\n\tif (typeof input === 'object') {\n\t\treturn keysSorter(Object.keys(input))\n\t\t\t.sort((a, b) => Number(a) - Number(b))\n\t\t\t.map(key => input[key]);\n\t}\n\n\treturn input;\n}\n\nfunction removeHash(input) {\n\tconst hashStart = input.indexOf('#');\n\tif (hashStart !== -1) {\n\t\tinput = input.slice(0, hashStart);\n\t}\n\n\treturn input;\n}\n\nfunction getHash(url) {\n\tlet hash = '';\n\tconst hashStart = url.indexOf('#');\n\tif (hashStart !== -1) {\n\t\thash = url.slice(hashStart);\n\t}\n\n\treturn hash;\n}\n\nfunction parseValue(value, options) {\n\tif (options.parseNumbers && !Number.isNaN(Number(value)) && (typeof value === 'string' && value.trim() !== '')) {\n\t\tvalue = Number(value);\n\t} else if (options.parseBooleans && value !== null && (value.toLowerCase() === 'true' || value.toLowerCase() === 'false')) {\n\t\tvalue = value.toLowerCase() === 'true';\n\t}\n\n\treturn value;\n}\n\nexport function extract(input) {\n\tinput = removeHash(input);\n\tconst queryStart = input.indexOf('?');\n\tif (queryStart === -1) {\n\t\treturn '';\n\t}\n\n\treturn input.slice(queryStart + 1);\n}\n\nexport function parse(query, options) {\n\toptions = {\n\t\tdecode: true,\n\t\tsort: true,\n\t\tarrayFormat: 'none',\n\t\tarrayFormatSeparator: ',',\n\t\tparseNumbers: false,\n\t\tparseBooleans: false,\n\t\t...options,\n\t};\n\n\tvalidateArrayFormatSeparator(options.arrayFormatSeparator);\n\n\tconst formatter = parserForArrayFormat(options);\n\n\t// Create an object with no prototype\n\tconst returnValue = Object.create(null);\n\n\tif (typeof query !== 'string') {\n\t\treturn returnValue;\n\t}\n\n\tquery = query.trim().replace(/^[?#&]/, '');\n\n\tif (!query) {\n\t\treturn returnValue;\n\t}\n\n\tfor (const parameter of query.split('&')) {\n\t\tif (parameter === '') {\n\t\t\tcontinue;\n\t\t}\n\n\t\tconst parameter_ = options.decode ? parameter.replaceAll('+', ' ') : parameter;\n\n\t\tlet [key, value] = splitOnFirst(parameter_, '=');\n\n\t\tif (key === undefined) {\n\t\t\tkey = parameter_;\n\t\t}\n\n\t\t// Missing `=` should be `null`:\n\t\t// http://w3.org/TR/2012/WD-url-20120524/#collect-url-parameters\n\t\tvalue = value === undefined ? null : (['comma', 'separator', 'bracket-separator'].includes(options.arrayFormat) ? value : decode(value, options));\n\t\tformatter(decode(key, options), value, returnValue);\n\t}\n\n\tfor (const [key, value] of Object.entries(returnValue)) {\n\t\tif (typeof value === 'object' && value !== null) {\n\t\t\tfor (const [key2, value2] of Object.entries(value)) {\n\t\t\t\tvalue[key2] = parseValue(value2, options);\n\t\t\t}\n\t\t} else {\n\t\t\treturnValue[key] = parseValue(value, options);\n\t\t}\n\t}\n\n\tif (options.sort === false) {\n\t\treturn returnValue;\n\t}\n\n\t// TODO: Remove the use of `reduce`.\n\t// eslint-disable-next-line unicorn/no-array-reduce\n\treturn (options.sort === true ? Object.keys(returnValue).sort() : Object.keys(returnValue).sort(options.sort)).reduce((result, key) => {\n\t\tconst value = returnValue[key];\n\t\tresult[key] = Boolean(value) && typeof value === 'object' && !Array.isArray(value) ? keysSorter(value) : value;\n\t\treturn result;\n\t}, Object.create(null));\n}\n\nexport function stringify(object, options) {\n\tif (!object) {\n\t\treturn '';\n\t}\n\n\toptions = {\n\t\tencode: true,\n\t\tstrict: true,\n\t\tarrayFormat: 'none',\n\t\tarrayFormatSeparator: ',',\n\t\t...options,\n\t};\n\n\tvalidateArrayFormatSeparator(options.arrayFormatSeparator);\n\n\tconst shouldFilter = key => (\n\t\t(options.skipNull && isNullOrUndefined(object[key]))\n\t\t|| (options.skipEmptyString && object[key] === '')\n\t);\n\n\tconst formatter = encoderForArrayFormat(options);\n\n\tconst objectCopy = {};\n\n\tfor (const [key, value] of Object.entries(object)) {\n\t\tif (!shouldFilter(key)) {\n\t\t\tobjectCopy[key] = value;\n\t\t}\n\t}\n\n\tconst keys = Object.keys(objectCopy);\n\n\tif (options.sort !== false) {\n\t\tkeys.sort(options.sort);\n\t}\n\n\treturn keys.map(key => {\n\t\tconst value = object[key];\n\n\t\tif (value === undefined) {\n\t\t\treturn '';\n\t\t}\n\n\t\tif (value === null) {\n\t\t\treturn encode(key, options);\n\t\t}\n\n\t\tif (Array.isArray(value)) {\n\t\t\tif (value.length === 0 && options.arrayFormat === 'bracket-separator') {\n\t\t\t\treturn encode(key, options) + '[]';\n\t\t\t}\n\n\t\t\treturn value\n\t\t\t\t.reduce(formatter(key), [])\n\t\t\t\t.join('&');\n\t\t}\n\n\t\treturn encode(key, options) + '=' + encode(value, options);\n\t}).filter(x => x.length > 0).join('&');\n}\n\nexport function parseUrl(url, options) {\n\toptions = {\n\t\tdecode: true,\n\t\t...options,\n\t};\n\n\tlet [url_, hash] = splitOnFirst(url, '#');\n\n\tif (url_ === undefined) {\n\t\turl_ = url;\n\t}\n\n\treturn {\n\t\turl: url_?.split('?')?.[0] ?? '',\n\t\tquery: parse(extract(url), options),\n\t\t...(options && options.parseFragmentIdentifier && hash ? {fragmentIdentifier: decode(hash, options)} : {}),\n\t};\n}\n\nexport function stringifyUrl(object, options) {\n\toptions = {\n\t\tencode: true,\n\t\tstrict: true,\n\t\t[encodeFragmentIdentifier]: true,\n\t\t...options,\n\t};\n\n\tconst url = removeHash(object.url).split('?')[0] || '';\n\tconst queryFromUrl = extract(object.url);\n\n\tconst query = {\n\t\t...parse(queryFromUrl, {sort: false}),\n\t\t...object.query,\n\t};\n\n\tlet queryString = stringify(query, options);\n\tqueryString &&= `?${queryString}`;\n\n\tlet hash = getHash(object.url);\n\tif (typeof object.fragmentIdentifier === 'string') {\n\t\tconst urlObjectForFragmentEncode = new URL(url);\n\t\turlObjectForFragmentEncode.hash = object.fragmentIdentifier;\n\t\thash = options[encodeFragmentIdentifier] ? urlObjectForFragmentEncode.hash : `#${object.fragmentIdentifier}`;\n\t}\n\n\treturn `${url}${queryString}${hash}`;\n}\n\nexport function pick(input, filter, options) {\n\toptions = {\n\t\tparseFragmentIdentifier: true,\n\t\t[encodeFragmentIdentifier]: false,\n\t\t...options,\n\t};\n\n\tconst {url, query, fragmentIdentifier} = parseUrl(input, options);\n\n\treturn stringifyUrl({\n\t\turl,\n\t\tquery: includeKeys(query, filter),\n\t\tfragmentIdentifier,\n\t}, options);\n}\n\nexport function exclude(input, filter, options) {\n\tconst exclusionFilter = Array.isArray(filter) ? key => !filter.includes(key) : (key, value) => !filter(key, value);\n\n\treturn pick(input, exclusionFilter, options);\n}\n","import * as queryString from './base.js';\n\nexport default queryString;\n","import { generateUrl } from '@nextcloud/router';\nimport queryString from 'query-string';\nimport Router from 'vue-router';\nimport Vue from 'vue';\nVue.use(Router);\n// Prevent router from throwing errors when we're already on the page we're trying to go to\nconst originalPush = Router.prototype.push;\nRouter.prototype.push = function push(to, onComplete, onAbort) {\n    if (onComplete || onAbort)\n        return originalPush.call(this, to, onComplete, onAbort);\n    return originalPush.call(this, to).catch(err => err);\n};\nconst router = new Router({\n    mode: 'history',\n    // if index.php is in the url AND we got this far, then it's working:\n    // let's keep using index.php in the url\n    base: generateUrl('/apps/files'),\n    linkActiveClass: 'active',\n    routes: [\n        {\n            path: '/',\n            // Pretending we're using the default view\n            redirect: { name: 'filelist', params: { view: 'files' } },\n        },\n        {\n            path: '/:view/:fileid(\\\\d+)?',\n            name: 'filelist',\n            props: true,\n        },\n    ],\n    // Custom stringifyQuery to prevent encoding of slashes in the url\n    stringifyQuery(query) {\n        const result = queryString.stringify(query).replace(/%2F/gmi, '/');\n        return result ? ('?' + result) : '';\n    },\n});\nexport default router;\n","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('NcContent',{attrs:{\"app-name\":\"files\"}},[_c('Navigation'),_vm._v(\" \"),_c('FilesList')],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <span v-bind=\"$attrs\"\n        :aria-hidden=\"title ? null : true\"\n        :aria-label=\"title\"\n        class=\"material-design-icon cog-icon\"\n        role=\"img\"\n        @click=\"$emit('click', $event)\">\n    <svg :fill=\"fillColor\"\n         class=\"material-design-icon__svg\"\n         :width=\"size\"\n         :height=\"size\"\n         viewBox=\"0 0 24 24\">\n      <path d=\"M12,15.5A3.5,3.5 0 0,1 8.5,12A3.5,3.5 0 0,1 12,8.5A3.5,3.5 0 0,1 15.5,12A3.5,3.5 0 0,1 12,15.5M19.43,12.97C19.47,12.65 19.5,12.33 19.5,12C19.5,11.67 19.47,11.34 19.43,11L21.54,9.37C21.73,9.22 21.78,8.95 21.66,8.73L19.66,5.27C19.54,5.05 19.27,4.96 19.05,5.05L16.56,6.05C16.04,5.66 15.5,5.32 14.87,5.07L14.5,2.42C14.46,2.18 14.25,2 14,2H10C9.75,2 9.54,2.18 9.5,2.42L9.13,5.07C8.5,5.32 7.96,5.66 7.44,6.05L4.95,5.05C4.73,4.96 4.46,5.05 4.34,5.27L2.34,8.73C2.21,8.95 2.27,9.22 2.46,9.37L4.57,11C4.53,11.34 4.5,11.67 4.5,12C4.5,12.33 4.53,12.65 4.57,12.97L2.46,14.63C2.27,14.78 2.21,15.05 2.34,15.27L4.34,18.73C4.46,18.95 4.73,19.03 4.95,18.95L7.44,17.94C7.96,18.34 8.5,18.68 9.13,18.93L9.5,21.58C9.54,21.82 9.75,22 10,22H14C14.25,22 14.46,21.82 14.5,21.58L14.87,18.93C15.5,18.67 16.04,18.34 16.56,17.94L19.05,18.95C19.27,19.03 19.54,18.95 19.66,18.73L21.66,15.27C21.78,15.05 21.73,14.78 21.54,14.63L19.43,12.97Z\">\n        <title v-if=\"title\">{{ title }}</title>\n      </path>\n    </svg>\n  </span>\n</template>\n\n<script>\nexport default {\n  name: \"CogIcon\",\n  emits: ['click'],\n  props: {\n    title: {\n      type: String,\n    },\n    fillColor: {\n      type: String,\n      default: \"currentColor\"\n    },\n    size: {\n      type: Number,\n      default: 24\n    }\n  }\n}\n</script>","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./Cog.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Cog.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./Cog.vue?vue&type=template&id=89df8f2e\"\nimport script from \"./Cog.vue?vue&type=script&lang=js\"\nexport * from \"./Cog.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon cog-icon\",attrs:{\"aria-hidden\":_vm.title ? null : true,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M12,15.5A3.5,3.5 0 0,1 8.5,12A3.5,3.5 0 0,1 12,8.5A3.5,3.5 0 0,1 15.5,12A3.5,3.5 0 0,1 12,15.5M19.43,12.97C19.47,12.65 19.5,12.33 19.5,12C19.5,11.67 19.47,11.34 19.43,11L21.54,9.37C21.73,9.22 21.78,8.95 21.66,8.73L19.66,5.27C19.54,5.05 19.27,4.96 19.05,5.05L16.56,6.05C16.04,5.66 15.5,5.32 14.87,5.07L14.5,2.42C14.46,2.18 14.25,2 14,2H10C9.75,2 9.54,2.18 9.5,2.42L9.13,5.07C8.5,5.32 7.96,5.66 7.44,6.05L4.95,5.05C4.73,4.96 4.46,5.05 4.34,5.27L2.34,8.73C2.21,8.95 2.27,9.22 2.46,9.37L4.57,11C4.53,11.34 4.5,11.67 4.5,12C4.5,12.33 4.53,12.65 4.57,12.97L2.46,14.63C2.27,14.78 2.21,15.05 2.34,15.27L4.34,18.73C4.46,18.95 4.73,19.03 4.95,18.95L7.44,17.94C7.96,18.34 8.5,18.68 9.13,18.93L9.5,21.58C9.54,21.82 9.75,22 10,22H14C14.25,22 14.46,21.82 14.5,21.58L14.87,18.93C15.5,18.67 16.04,18.34 16.56,17.94L19.05,18.95C19.27,19.03 19.54,18.95 19.66,18.73L21.66,15.27C21.78,15.05 21.73,14.78 21.54,14.63L19.43,12.97Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/* eslint-disable no-undefined,no-param-reassign,no-shadow */\n\n/**\n * Throttle execution of a function. Especially useful for rate limiting\n * execution of handlers on events like resize and scroll.\n *\n * @param {number} delay -                  A zero-or-greater delay in milliseconds. For event callbacks, values around 100 or 250 (or even higher)\n *                                            are most useful.\n * @param {Function} callback -               A function to be executed after delay milliseconds. The `this` context and all arguments are passed through,\n *                                            as-is, to `callback` when the throttled-function is executed.\n * @param {object} [options] -              An object to configure options.\n * @param {boolean} [options.noTrailing] -   Optional, defaults to false. If noTrailing is true, callback will only execute every `delay` milliseconds\n *                                            while the throttled-function is being called. If noTrailing is false or unspecified, callback will be executed\n *                                            one final time after the last throttled-function call. (After the throttled-function has not been called for\n *                                            `delay` milliseconds, the internal counter is reset).\n * @param {boolean} [options.noLeading] -   Optional, defaults to false. If noLeading is false, the first throttled-function call will execute callback\n *                                            immediately. If noLeading is true, the first the callback execution will be skipped. It should be noted that\n *                                            callback will never executed if both noLeading = true and noTrailing = true.\n * @param {boolean} [options.debounceMode] - If `debounceMode` is true (at begin), schedule `clear` to execute after `delay` ms. If `debounceMode` is\n *                                            false (at end), schedule `callback` to execute after `delay` ms.\n *\n * @returns {Function} A new, throttled, function.\n */\nfunction throttle (delay, callback, options) {\n  var _ref = options || {},\n    _ref$noTrailing = _ref.noTrailing,\n    noTrailing = _ref$noTrailing === void 0 ? false : _ref$noTrailing,\n    _ref$noLeading = _ref.noLeading,\n    noLeading = _ref$noLeading === void 0 ? false : _ref$noLeading,\n    _ref$debounceMode = _ref.debounceMode,\n    debounceMode = _ref$debounceMode === void 0 ? undefined : _ref$debounceMode;\n  /*\n   * After wrapper has stopped being called, this timeout ensures that\n   * `callback` is executed at the proper times in `throttle` and `end`\n   * debounce modes.\n   */\n  var timeoutID;\n  var cancelled = false;\n\n  // Keep track of the last time `callback` was executed.\n  var lastExec = 0;\n\n  // Function to clear existing timeout\n  function clearExistingTimeout() {\n    if (timeoutID) {\n      clearTimeout(timeoutID);\n    }\n  }\n\n  // Function to cancel next exec\n  function cancel(options) {\n    var _ref2 = options || {},\n      _ref2$upcomingOnly = _ref2.upcomingOnly,\n      upcomingOnly = _ref2$upcomingOnly === void 0 ? false : _ref2$upcomingOnly;\n    clearExistingTimeout();\n    cancelled = !upcomingOnly;\n  }\n\n  /*\n   * The `wrapper` function encapsulates all of the throttling / debouncing\n   * functionality and when executed will limit the rate at which `callback`\n   * is executed.\n   */\n  function wrapper() {\n    for (var _len = arguments.length, arguments_ = new Array(_len), _key = 0; _key < _len; _key++) {\n      arguments_[_key] = arguments[_key];\n    }\n    var self = this;\n    var elapsed = Date.now() - lastExec;\n    if (cancelled) {\n      return;\n    }\n\n    // Execute `callback` and update the `lastExec` timestamp.\n    function exec() {\n      lastExec = Date.now();\n      callback.apply(self, arguments_);\n    }\n\n    /*\n     * If `debounceMode` is true (at begin) this is used to clear the flag\n     * to allow future `callback` executions.\n     */\n    function clear() {\n      timeoutID = undefined;\n    }\n    if (!noLeading && debounceMode && !timeoutID) {\n      /*\n       * Since `wrapper` is being called for the first time and\n       * `debounceMode` is true (at begin), execute `callback`\n       * and noLeading != true.\n       */\n      exec();\n    }\n    clearExistingTimeout();\n    if (debounceMode === undefined && elapsed > delay) {\n      if (noLeading) {\n        /*\n         * In throttle mode with noLeading, if `delay` time has\n         * been exceeded, update `lastExec` and schedule `callback`\n         * to execute after `delay` ms.\n         */\n        lastExec = Date.now();\n        if (!noTrailing) {\n          timeoutID = setTimeout(debounceMode ? clear : exec, delay);\n        }\n      } else {\n        /*\n         * In throttle mode without noLeading, if `delay` time has been exceeded, execute\n         * `callback`.\n         */\n        exec();\n      }\n    } else if (noTrailing !== true) {\n      /*\n       * In trailing throttle mode, since `delay` time has not been\n       * exceeded, schedule `callback` to execute `delay` ms after most\n       * recent execution.\n       *\n       * If `debounceMode` is true (at begin), schedule `clear` to execute\n       * after `delay` ms.\n       *\n       * If `debounceMode` is false (at end), schedule `callback` to\n       * execute after `delay` ms.\n       */\n      timeoutID = setTimeout(debounceMode ? clear : exec, debounceMode === undefined ? delay - elapsed : delay);\n    }\n  }\n  wrapper.cancel = cancel;\n\n  // Return the wrapper function.\n  return wrapper;\n}\n\n/* eslint-disable no-undefined */\n\n/**\n * Debounce execution of a function. Debouncing, unlike throttling,\n * guarantees that a function is only executed a single time, either at the\n * very beginning of a series of calls, or at the very end.\n *\n * @param {number} delay -               A zero-or-greater delay in milliseconds. For event callbacks, values around 100 or 250 (or even higher) are most useful.\n * @param {Function} callback -          A function to be executed after delay milliseconds. The `this` context and all arguments are passed through, as-is,\n *                                        to `callback` when the debounced-function is executed.\n * @param {object} [options] -           An object to configure options.\n * @param {boolean} [options.atBegin] -  Optional, defaults to false. If atBegin is false or unspecified, callback will only be executed `delay` milliseconds\n *                                        after the last debounced-function call. If atBegin is true, callback will be executed only at the first debounced-function call.\n *                                        (After the throttled-function has not been called for `delay` milliseconds, the internal counter is reset).\n *\n * @returns {Function} A new, debounced function.\n */\nfunction debounce (delay, callback, options) {\n  var _ref = options || {},\n    _ref$atBegin = _ref.atBegin,\n    atBegin = _ref$atBegin === void 0 ? false : _ref$atBegin;\n  return throttle(delay, callback, {\n    debounceMode: atBegin !== false\n  });\n}\n\nexport { debounce, throttle };\n//# sourceMappingURL=index.js.map\n","<template>\n  <span v-bind=\"$attrs\"\n        :aria-hidden=\"title ? null : true\"\n        :aria-label=\"title\"\n        class=\"material-design-icon chart-pie-icon\"\n        role=\"img\"\n        @click=\"$emit('click', $event)\">\n    <svg :fill=\"fillColor\"\n         class=\"material-design-icon__svg\"\n         :width=\"size\"\n         :height=\"size\"\n         viewBox=\"0 0 24 24\">\n      <path d=\"M11,2V22C5.9,21.5 2,17.2 2,12C2,6.8 5.9,2.5 11,2M13,2V11H22C21.5,6.2 17.8,2.5 13,2M13,13V22C17.7,21.5 21.5,17.8 22,13H13Z\">\n        <title v-if=\"title\">{{ title }}</title>\n      </path>\n    </svg>\n  </span>\n</template>\n\n<script>\nexport default {\n  name: \"ChartPieIcon\",\n  emits: ['click'],\n  props: {\n    title: {\n      type: String,\n    },\n    fillColor: {\n      type: String,\n      default: \"currentColor\"\n    },\n    size: {\n      type: Number,\n      default: 24\n    }\n  }\n}\n</script>","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./ChartPie.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./ChartPie.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ChartPie.vue?vue&type=template&id=b117066e\"\nimport script from \"./ChartPie.vue?vue&type=script&lang=js\"\nexport * from \"./ChartPie.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon chart-pie-icon\",attrs:{\"aria-hidden\":_vm.title ? null : true,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M11,2V22C5.9,21.5 2,17.2 2,12C2,6.8 5.9,2.5 11,2M13,2V11H22C21.5,6.2 17.8,2.5 13,2M13,13V22C17.7,21.5 21.5,17.8 22,13H13Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/**\n * SPDX-FileCopyrightText: 2022 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { getLoggerBuilder } from '@nextcloud/logger'\n\nexport default getLoggerBuilder()\n\t.setApp('files')\n\t.detectUser()\n\t.build()\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NavigationQuota.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NavigationQuota.vue?vue&type=script&lang=js\"","<!--\n - SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n - SPDX-License-Identifier: AGPL-3.0-or-later\n -->\n<template>\n\t<NcAppNavigationItem v-if=\"storageStats\"\n\t\t:aria-label=\"t('files', 'Storage informations')\"\n\t\t:class=\"{ 'app-navigation-entry__settings-quota--not-unlimited': storageStats.quota >= 0}\"\n\t\t:loading=\"loadingStorageStats\"\n\t\t:name=\"storageStatsTitle\"\n\t\t:title=\"storageStatsTooltip\"\n\t\tclass=\"app-navigation-entry__settings-quota\"\n\t\tdata-cy-files-navigation-settings-quota\n\t\t@click.stop.prevent=\"debounceUpdateStorageStats\">\n\t\t<ChartPie slot=\"icon\" :size=\"20\" />\n\n\t\t<!-- Progress bar -->\n\t\t<NcProgressBar v-if=\"storageStats.quota >= 0\"\n\t\t\tslot=\"extra\"\n\t\t\t:error=\"storageStats.relative > 80\"\n\t\t\t:value=\"Math.min(storageStats.relative, 100)\" />\n\t</NcAppNavigationItem>\n</template>\n\n<script>\nimport { debounce, throttle } from 'throttle-debounce'\nimport { formatFileSize } from '@nextcloud/files'\nimport { generateUrl } from '@nextcloud/router'\nimport { loadState } from '@nextcloud/initial-state'\nimport { showError } from '@nextcloud/dialogs'\nimport { subscribe } from '@nextcloud/event-bus'\nimport { translate } from '@nextcloud/l10n'\nimport axios from '@nextcloud/axios'\n\nimport ChartPie from 'vue-material-design-icons/ChartPie.vue'\nimport NcAppNavigationItem from '@nextcloud/vue/dist/Components/NcAppNavigationItem.js'\nimport NcProgressBar from '@nextcloud/vue/dist/Components/NcProgressBar.js'\n\nimport logger from '../logger.js'\n\nexport default {\n\tname: 'NavigationQuota',\n\n\tcomponents: {\n\t\tChartPie,\n\t\tNcAppNavigationItem,\n\t\tNcProgressBar,\n\t},\n\n\tdata() {\n\t\treturn {\n\t\t\tloadingStorageStats: false,\n\t\t\tstorageStats: loadState('files', 'storageStats', null),\n\t\t}\n\t},\n\n\tcomputed: {\n\t\tstorageStatsTitle() {\n\t\t\tconst usedQuotaByte = formatFileSize(this.storageStats?.used, false, false)\n\t\t\tconst quotaByte = formatFileSize(this.storageStats?.quota, false, false)\n\n\t\t\t// If no quota set\n\t\t\tif (this.storageStats?.quota < 0) {\n\t\t\t\treturn this.t('files', '{usedQuotaByte} used', { usedQuotaByte })\n\t\t\t}\n\n\t\t\treturn this.t('files', '{used} of {quota} used', {\n\t\t\t\tused: usedQuotaByte,\n\t\t\t\tquota: quotaByte,\n\t\t\t})\n\t\t},\n\t\tstorageStatsTooltip() {\n\t\t\tif (!this.storageStats.relative) {\n\t\t\t\treturn ''\n\t\t\t}\n\n\t\t\treturn this.t('files', '{relative}% used', this.storageStats)\n\t\t},\n\t},\n\n\tbeforeMount() {\n\t\t/**\n\t\t * Update storage stats every minute\n\t\t * TODO: remove when all views are migrated to Vue\n\t\t */\n\t\tsetInterval(this.throttleUpdateStorageStats, 60 * 1000)\n\n\t\tsubscribe('files:node:created', this.throttleUpdateStorageStats)\n\t\tsubscribe('files:node:deleted', this.throttleUpdateStorageStats)\n\t\tsubscribe('files:node:moved', this.throttleUpdateStorageStats)\n\t\tsubscribe('files:node:updated', this.throttleUpdateStorageStats)\n\t},\n\n\tmounted() {\n\t\t// If the user has a quota set, warn if the available account storage is <=0\n\t\t//\n\t\t// NOTE: This doesn't catch situations where actual *server*\n\t\t// disk (non-quota) space is low, but those should probably\n\t\t// be handled differently anyway since a regular user can't\n\t\t// can't do much about them (If we did want to indicate server disk\n\t\t// space matters to users, we'd probably want to use a warning\n\t\t// specific to that situation anyhow. So this covers warning covers\n\t\t// our primary day-to-day concern (individual account quota usage).\n\t\t//\n\t\tif (this.storageStats?.quota > 0 && this.storageStats?.free <= 0) {\n\t\t\tthis.showStorageFullWarning()\n\t\t}\n\t},\n\n\tmethods: {\n\t\t// From user input\n\t\tdebounceUpdateStorageStats: debounce(200, function(event) {\n\t\t\tthis.updateStorageStats(event)\n\t\t}),\n\t\t// From interval or event bus\n\t\tthrottleUpdateStorageStats: throttle(1000, function(event) {\n\t\t\tthis.updateStorageStats(event)\n\t\t}),\n\n\t\t/**\n\t\t * Update the storage stats\n\t\t * Throttled at max 1 refresh per minute\n\t\t *\n\t\t * @param {Event} [event] if user interaction\n\t\t */\n\t\tasync updateStorageStats(event = null) {\n\t\t\tif (this.loadingStorageStats) {\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\tthis.loadingStorageStats = true\n\t\t\ttry {\n\t\t\t\tconst response = await axios.get(generateUrl('/apps/files/api/v1/stats'))\n\t\t\t\tif (!response?.data?.data) {\n\t\t\t\t\tthrow new Error('Invalid storage stats')\n\t\t\t\t}\n\n\t\t\t\t// Warn the user if the available account storage changed from > 0 to 0\n\t\t\t\t// (unless only because quota was intentionally set to 0 by admin in the interim)\n\t\t\t\tif (this.storageStats?.free > 0 && response.data.data?.free <= 0 && response.data.data?.quota > 0) {\n\t\t\t\t\tthis.showStorageFullWarning()\n\t\t\t\t}\n\n\t\t\t\tthis.storageStats = response.data.data\n\t\t\t} catch (error) {\n\t\t\t\tlogger.error('Could not refresh storage stats', { error })\n\t\t\t\t// Only show to the user if it was manually triggered\n\t\t\t\tif (event) {\n\t\t\t\t\tshowError(t('files', 'Could not refresh storage stats'))\n\t\t\t\t}\n\t\t\t} finally {\n\t\t\t\tthis.loadingStorageStats = false\n\t\t\t}\n\t\t},\n\n\t\tshowStorageFullWarning() {\n\t\t\tshowError(this.t('files', 'Your storage is full, files can not be updated or synced anymore!'))\n\t\t},\n\n\t\tt: translate,\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n// User storage stats display\n.app-navigation-entry__settings-quota {\n\t// Align title with progress and icon\n\t&--not-unlimited::v-deep .app-navigation-entry__name {\n\t\tmargin-top: -6px;\n\t}\n\n\tprogress {\n\t\tposition: absolute;\n\t\tbottom: 12px;\n\t\tmargin-left: 44px;\n\t\twidth: calc(100% - 44px - 22px);\n\t}\n}\n</style>\n","\n      import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n      import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n      import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n      import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n      import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n      import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n      import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NavigationQuota.vue?vue&type=style&index=0&id=e6f06e0e&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=e6f06e0e&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=e6f06e0e&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=e6f06e0e&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  \"e6f06e0e\",\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return (_vm.storageStats)?_c('NcAppNavigationItem',{staticClass:\"app-navigation-entry__settings-quota\",class:{ 'app-navigation-entry__settings-quota--not-unlimited': _vm.storageStats.quota >= 0},attrs:{\"aria-label\":_vm.t('files', 'Storage informations'),\"loading\":_vm.loadingStorageStats,\"name\":_vm.storageStatsTitle,\"title\":_vm.storageStatsTooltip,\"data-cy-files-navigation-settings-quota\":\"\"},on:{\"click\":function($event){$event.stopPropagation();$event.preventDefault();return _vm.debounceUpdateStorageStats.apply(null, arguments)}}},[_c('ChartPie',{attrs:{\"slot\":\"icon\",\"size\":20},slot:\"icon\"}),_vm._v(\" \"),(_vm.storageStats.quota >= 0)?_c('NcProgressBar',{attrs:{\"slot\":\"extra\",\"error\":_vm.storageStats.relative > 80,\"value\":Math.min(_vm.storageStats.relative, 100)},slot:\"extra\"}):_vm._e()],1):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('NcAppSettingsDialog',{attrs:{\"open\":_vm.open,\"show-navigation\":true,\"name\":_vm.t('files', 'Files settings')},on:{\"update:open\":_vm.onClose}},[_c('NcAppSettingsSection',{attrs:{\"id\":\"settings\",\"name\":_vm.t('files', 'Files settings')}},[_c('NcCheckboxRadioSwitch',{attrs:{\"data-cy-files-settings-setting\":\"sort_favorites_first\",\"checked\":_vm.userConfig.sort_favorites_first},on:{\"update:checked\":function($event){return _vm.setConfig('sort_favorites_first', $event)}}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('files', 'Sort favorites first'))+\"\\n\\t\\t\")]),_vm._v(\" \"),_c('NcCheckboxRadioSwitch',{attrs:{\"data-cy-files-settings-setting\":\"sort_folders_first\",\"checked\":_vm.userConfig.sort_folders_first},on:{\"update:checked\":function($event){return _vm.setConfig('sort_folders_first', $event)}}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('files', 'Sort folders before files'))+\"\\n\\t\\t\")]),_vm._v(\" \"),_c('NcCheckboxRadioSwitch',{attrs:{\"data-cy-files-settings-setting\":\"show_hidden\",\"checked\":_vm.userConfig.show_hidden},on:{\"update:checked\":function($event){return _vm.setConfig('show_hidden', $event)}}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('files', 'Show hidden files'))+\"\\n\\t\\t\")]),_vm._v(\" \"),_c('NcCheckboxRadioSwitch',{attrs:{\"data-cy-files-settings-setting\":\"crop_image_previews\",\"checked\":_vm.userConfig.crop_image_previews},on:{\"update:checked\":function($event){return _vm.setConfig('crop_image_previews', $event)}}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('files', 'Crop image previews'))+\"\\n\\t\\t\")]),_vm._v(\" \"),(_vm.enableGridView)?_c('NcCheckboxRadioSwitch',{attrs:{\"data-cy-files-settings-setting\":\"grid_view\",\"checked\":_vm.userConfig.grid_view},on:{\"update:checked\":function($event){return _vm.setConfig('grid_view', $event)}}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('files', 'Enable the grid view'))+\"\\n\\t\\t\")]):_vm._e()],1),_vm._v(\" \"),(_vm.settings.length !== 0)?_c('NcAppSettingsSection',{attrs:{\"id\":\"more-settings\",\"name\":_vm.t('files', 'Additional settings')}},[_vm._l((_vm.settings),function(setting){return [_c('Setting',{key:setting.name,attrs:{\"el\":setting.el}})]})],2):_vm._e(),_vm._v(\" \"),_c('NcAppSettingsSection',{attrs:{\"id\":\"webdav\",\"name\":_vm.t('files', 'WebDAV')}},[_c('NcInputField',{attrs:{\"id\":\"webdav-url-input\",\"label\":_vm.t('files', 'WebDAV URL'),\"show-trailing-button\":true,\"success\":_vm.webdavUrlCopied,\"trailing-button-label\":_vm.t('files', 'Copy to clipboard'),\"value\":_vm.webdavUrl,\"readonly\":\"readonly\",\"type\":\"url\"},on:{\"focus\":function($event){return $event.target.select()},\"trailing-button-click\":_vm.copyCloudId},scopedSlots:_vm._u([{key:\"trailing-button-icon\",fn:function(){return [_c('Clipboard',{attrs:{\"size\":20}})]},proxy:true}])}),_vm._v(\" \"),_c('em',[_c('a',{staticClass:\"setting-link\",attrs:{\"href\":_vm.webdavDocs,\"target\":\"_blank\",\"rel\":\"noreferrer noopener\"}},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('files', 'Use this address to access your Files via WebDAV'))+\" ↗\\n\\t\\t\\t\")])]),_vm._v(\" \"),_c('br'),_vm._v(\" \"),_c('em',[_c('a',{staticClass:\"setting-link\",attrs:{\"href\":_vm.appPasswordUrl}},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('files', 'If you have enabled 2FA, you must create and use a new app password by clicking here.'))+\" ↗\\n\\t\\t\\t\")])])],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<!--\n  - SPDX-FileCopyrightText: 2020 Nextcloud GmbH and Nextcloud contributors\n  - SPDX-License-Identifier: AGPL-3.0-or-later\n-->\n\n<template>\n\t<div />\n</template>\n<script>\nexport default {\n\tname: 'Setting',\n\tprops: {\n\t\tel: {\n\t\t\ttype: Function,\n\t\t\trequired: true,\n\t\t},\n\t},\n\tmounted() {\n\t\tthis.$el.appendChild(this.el())\n\t},\n}\n</script>\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Setting.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Setting.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./Setting.vue?vue&type=template&id=315a4ce8\"\nimport script from \"./Setting.vue?vue&type=script&lang=js\"\nexport * from \"./Setting.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div')\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { defineStore } from 'pinia';\nimport { emit, subscribe } from '@nextcloud/event-bus';\nimport { generateUrl } from '@nextcloud/router';\nimport { loadState } from '@nextcloud/initial-state';\nimport axios from '@nextcloud/axios';\nimport Vue from 'vue';\nconst userConfig = loadState('files', 'config', {\n    show_hidden: false,\n    crop_image_previews: true,\n    sort_favorites_first: true,\n    sort_folders_first: true,\n    grid_view: false,\n});\nexport const useUserConfigStore = function (...args) {\n    const store = defineStore('userconfig', {\n        state: () => ({\n            userConfig,\n        }),\n        actions: {\n            /**\n             * Update the user config local store\n             * @param key\n             * @param value\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             * @param key\n             * @param value\n             */\n            async update(key, value) {\n                await axios.put(generateUrl('/apps/files/api/v1/config/' + key), {\n                    value,\n                });\n                emit('files:config:updated', { key, value });\n            },\n        },\n    });\n    const userConfigStore = store(...args);\n    // Make sure we only register the listeners once\n    if (!userConfigStore._initialized) {\n        subscribe('files:config:updated', function ({ key, value }) {\n            userConfigStore.onUpdate(key, value);\n        });\n        userConfigStore._initialized = true;\n    }\n    return userConfigStore;\n};\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Settings.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Settings.vue?vue&type=script&lang=js\"","<!--\n  - SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n  - SPDX-License-Identifier: AGPL-3.0-or-later\n-->\n<template>\n\t<NcAppSettingsDialog :open=\"open\"\n\t\t:show-navigation=\"true\"\n\t\t:name=\"t('files', 'Files settings')\"\n\t\t@update:open=\"onClose\">\n\t\t<!-- Settings API-->\n\t\t<NcAppSettingsSection id=\"settings\" :name=\"t('files', 'Files settings')\">\n\t\t\t<NcCheckboxRadioSwitch data-cy-files-settings-setting=\"sort_favorites_first\"\n\t\t\t\t:checked=\"userConfig.sort_favorites_first\"\n\t\t\t\t@update:checked=\"setConfig('sort_favorites_first', $event)\">\n\t\t\t\t{{ t('files', 'Sort favorites first') }}\n\t\t\t</NcCheckboxRadioSwitch>\n\t\t\t<NcCheckboxRadioSwitch data-cy-files-settings-setting=\"sort_folders_first\"\n\t\t\t\t:checked=\"userConfig.sort_folders_first\"\n\t\t\t\t@update:checked=\"setConfig('sort_folders_first', $event)\">\n\t\t\t\t{{ t('files', 'Sort folders before files') }}\n\t\t\t</NcCheckboxRadioSwitch>\n\t\t\t<NcCheckboxRadioSwitch data-cy-files-settings-setting=\"show_hidden\"\n\t\t\t\t:checked=\"userConfig.show_hidden\"\n\t\t\t\t@update:checked=\"setConfig('show_hidden', $event)\">\n\t\t\t\t{{ t('files', 'Show hidden files') }}\n\t\t\t</NcCheckboxRadioSwitch>\n\t\t\t<NcCheckboxRadioSwitch data-cy-files-settings-setting=\"crop_image_previews\"\n\t\t\t\t:checked=\"userConfig.crop_image_previews\"\n\t\t\t\t@update:checked=\"setConfig('crop_image_previews', $event)\">\n\t\t\t\t{{ t('files', 'Crop image previews') }}\n\t\t\t</NcCheckboxRadioSwitch>\n\t\t\t<NcCheckboxRadioSwitch v-if=\"enableGridView\"\n\t\t\t\tdata-cy-files-settings-setting=\"grid_view\"\n\t\t\t\t:checked=\"userConfig.grid_view\"\n\t\t\t\t@update:checked=\"setConfig('grid_view', $event)\">\n\t\t\t\t{{ t('files', 'Enable the grid view') }}\n\t\t\t</NcCheckboxRadioSwitch>\n\t\t</NcAppSettingsSection>\n\n\t\t<!-- Settings API-->\n\t\t<NcAppSettingsSection v-if=\"settings.length !== 0\"\n\t\t\tid=\"more-settings\"\n\t\t\t:name=\"t('files', 'Additional settings')\">\n\t\t\t<template v-for=\"setting in settings\">\n\t\t\t\t<Setting :key=\"setting.name\" :el=\"setting.el\" />\n\t\t\t</template>\n\t\t</NcAppSettingsSection>\n\n\t\t<!-- Webdav URL-->\n\t\t<NcAppSettingsSection id=\"webdav\" :name=\"t('files', 'WebDAV')\">\n\t\t\t<NcInputField id=\"webdav-url-input\"\n\t\t\t\t:label=\"t('files', 'WebDAV URL')\"\n\t\t\t\t:show-trailing-button=\"true\"\n\t\t\t\t:success=\"webdavUrlCopied\"\n\t\t\t\t:trailing-button-label=\"t('files', 'Copy to clipboard')\"\n\t\t\t\t:value=\"webdavUrl\"\n\t\t\t\treadonly=\"readonly\"\n\t\t\t\ttype=\"url\"\n\t\t\t\t@focus=\"$event.target.select()\"\n\t\t\t\t@trailing-button-click=\"copyCloudId\">\n\t\t\t\t<template #trailing-button-icon>\n\t\t\t\t\t<Clipboard :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t</NcInputField>\n\t\t\t<em>\n\t\t\t\t<a class=\"setting-link\"\n\t\t\t\t\t:href=\"webdavDocs\"\n\t\t\t\t\ttarget=\"_blank\"\n\t\t\t\t\trel=\"noreferrer noopener\">\n\t\t\t\t\t{{ t('files', 'Use this address to access your Files via WebDAV') }} ↗\n\t\t\t\t</a>\n\t\t\t</em>\n\t\t\t<br>\n\t\t\t<em>\n\t\t\t\t<a class=\"setting-link\" :href=\"appPasswordUrl\">\n\t\t\t\t\t{{ t('files', 'If you have enabled 2FA, you must create and use a new app password by clicking here.') }} ↗\n\t\t\t\t</a>\n\t\t\t</em>\n\t\t</NcAppSettingsSection>\n\t</NcAppSettingsDialog>\n</template>\n\n<script>\nimport NcAppSettingsDialog from '@nextcloud/vue/dist/Components/NcAppSettingsDialog.js'\nimport NcAppSettingsSection from '@nextcloud/vue/dist/Components/NcAppSettingsSection.js'\nimport NcCheckboxRadioSwitch from '@nextcloud/vue/dist/Components/NcCheckboxRadioSwitch.js'\nimport Clipboard from 'vue-material-design-icons/ContentCopy.vue'\nimport NcInputField from '@nextcloud/vue/dist/Components/NcInputField.js'\nimport Setting from '../components/Setting.vue'\n\nimport { generateRemoteUrl, generateUrl } from '@nextcloud/router'\nimport { getCurrentUser } from '@nextcloud/auth'\nimport { showError, showSuccess } from '@nextcloud/dialogs'\nimport { translate } from '@nextcloud/l10n'\nimport { loadState } from '@nextcloud/initial-state'\nimport { useUserConfigStore } from '../store/userconfig.ts'\n\nexport default {\n\tname: 'Settings',\n\tcomponents: {\n\t\tClipboard,\n\t\tNcAppSettingsDialog,\n\t\tNcAppSettingsSection,\n\t\tNcCheckboxRadioSwitch,\n\t\tNcInputField,\n\t\tSetting,\n\t},\n\n\tprops: {\n\t\topen: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\t},\n\n\tsetup() {\n\t\tconst userConfigStore = useUserConfigStore()\n\t\treturn {\n\t\t\tuserConfigStore,\n\t\t}\n\t},\n\n\tdata() {\n\t\treturn {\n\t\t\t// Settings API\n\t\t\tsettings: window.OCA?.Files?.Settings?.settings || [],\n\n\t\t\t// Webdav infos\n\t\t\twebdavUrl: generateRemoteUrl('dav/files/' + encodeURIComponent(getCurrentUser()?.uid)),\n\t\t\twebdavDocs: 'https://docs.nextcloud.com/server/stable/go.php?to=user-webdav',\n\t\t\tappPasswordUrl: generateUrl('/settings/user/security#generate-app-token-section'),\n\t\t\twebdavUrlCopied: false,\n\t\t\tenableGridView: (loadState('core', 'config', [])['enable_non-accessible_features'] ?? true),\n\t\t}\n\t},\n\n\tcomputed: {\n\t\tuserConfig() {\n\t\t\treturn this.userConfigStore.userConfig\n\t\t},\n\t},\n\n\tbeforeMount() {\n\t\t// Update the settings API entries state\n\t\tthis.settings.forEach(setting => setting.open())\n\t},\n\n\tbeforeDestroy() {\n\t\t// Update the settings API entries state\n\t\tthis.settings.forEach(setting => setting.close())\n\t},\n\n\tmethods: {\n\t\tonClose() {\n\t\t\tthis.$emit('close')\n\t\t},\n\n\t\tsetConfig(key, value) {\n\t\t\tthis.userConfigStore.update(key, value)\n\t\t},\n\n\t\tasync copyCloudId() {\n\t\t\tdocument.querySelector('input#webdav-url-input').select()\n\n\t\t\tif (!navigator.clipboard) {\n\t\t\t\t// Clipboard API not available\n\t\t\t\tshowError(t('files', 'Clipboard is not available'))\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\tawait navigator.clipboard.writeText(this.webdavUrl)\n\t\t\tthis.webdavUrlCopied = true\n\t\t\tshowSuccess(t('files', 'WebDAV URL copied to clipboard'))\n\t\t\tsetTimeout(() => {\n\t\t\t\tthis.webdavUrlCopied = false\n\t\t\t}, 5000)\n\t\t},\n\n\t\tt: translate,\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.setting-link:hover {\n\ttext-decoration: underline;\n}\n</style>\n","\n      import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n      import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n      import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n      import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n      import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n      import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n      import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Settings.vue?vue&type=style&index=0&id=d0d365f6&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=d0d365f6&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=d0d365f6&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=d0d365f6&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  \"d0d365f6\",\n  null\n  \n)\n\nexport default component.exports","import { getNavigation } from '@nextcloud/files';\nimport { onMounted, onUnmounted, shallowRef } from 'vue';\n/**\n * Composable to get the currently active files view from the files navigation\n */\nexport function useNavigation() {\n    const navigation = getNavigation();\n    const views = shallowRef(navigation.views);\n    const currentView = shallowRef(navigation.active);\n    /**\n     * Event listener to update the `currentView`\n     * @param event The update event\n     */\n    function onUpdateActive(event) {\n        currentView.value = event.detail;\n    }\n    /**\n     * Event listener to update all registered views\n     */\n    function onUpdateViews() {\n        views.value = navigation.views;\n    }\n    onMounted(() => {\n        navigation.addEventListener('update', onUpdateViews);\n        navigation.addEventListener('updateActive', onUpdateActive);\n    });\n    onUnmounted(() => {\n        navigation.removeEventListener('update', onUpdateViews);\n        navigation.removeEventListener('updateActive', onUpdateActive);\n    });\n    return {\n        currentView,\n        views,\n    };\n}\n","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { defineStore } from 'pinia';\nimport { emit, subscribe } from '@nextcloud/event-bus';\nimport { generateUrl } from '@nextcloud/router';\nimport { loadState } from '@nextcloud/initial-state';\nimport axios from '@nextcloud/axios';\nimport Vue from 'vue';\nconst viewConfig = loadState('files', 'viewConfigs', {});\nexport const useViewConfigStore = function (...args) {\n    const store = defineStore('viewconfig', {\n        state: () => ({\n            viewConfig,\n        }),\n        getters: {\n            getConfig: (state) => (view) => state.viewConfig[view] || {},\n        },\n        actions: {\n            /**\n             * Update the view config local store\n             * @param view\n             * @param key\n             * @param value\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             * @param view\n             * @param key\n             * @param value\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             * @param key\n             * @param view\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             * @param view\n             */\n            toggleSortingDirection(view = 'files') {\n                const config = this.getConfig(view) || { sorting_direction: 'asc' };\n                const newDirection = config.sorting_direction === 'asc' ? 'desc' : 'asc';\n                // Save new config\n                this.update(view, 'sorting_direction', newDirection);\n            },\n        },\n    });\n    const viewConfigStore = store(...args);\n    // Make sure we only register the listeners once\n    if (!viewConfigStore._initialized) {\n        subscribe('files:viewconfig:updated', function ({ view, key, value }) {\n            viewConfigStore.onUpdate(view, key, value);\n        });\n        viewConfigStore._initialized = true;\n    }\n    return viewConfigStore;\n};\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Navigation.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Navigation.vue?vue&type=script&lang=ts\"","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('NcAppNavigation',{attrs:{\"data-cy-files-navigation\":\"\",\"aria-label\":_vm.t('files', 'Files')},scopedSlots:_vm._u([{key:\"list\",fn:function(){return _vm._l((_vm.parentViews),function(view){return _c('NcAppNavigationItem',{key:view.id,attrs:{\"allow-collapse\":true,\"data-cy-files-navigation-item\":view.id,\"exact\":_vm.useExactRouteMatching(view),\"icon\":view.iconClass,\"name\":view.name,\"open\":_vm.isExpanded(view),\"pinned\":view.sticky,\"to\":_vm.generateToNavigation(view)},on:{\"update:open\":function($event){return _vm.onToggleExpand(view)}}},[(view.icon)?_c('NcIconSvgWrapper',{attrs:{\"slot\":\"icon\",\"svg\":view.icon},slot:\"icon\"}):_vm._e(),_vm._v(\" \"),_vm._l((_vm.childViews[view.id]),function(child){return _c('NcAppNavigationItem',{key:child.id,attrs:{\"data-cy-files-navigation-item\":child.id,\"exact-path\":true,\"icon\":child.iconClass,\"name\":child.name,\"to\":_vm.generateToNavigation(child)}},[(child.icon)?_c('NcIconSvgWrapper',{attrs:{\"slot\":\"icon\",\"svg\":child.icon},slot:\"icon\"}):_vm._e()],1)})],2)})},proxy:true},{key:\"footer\",fn:function(){return [_c('ul',{staticClass:\"app-navigation-entry__settings\"},[_c('NavigationQuota'),_vm._v(\" \"),_c('NcAppNavigationItem',{attrs:{\"aria-label\":_vm.t('files', 'Open the files app settings'),\"name\":_vm.t('files', 'Files settings'),\"data-cy-files-navigation-settings-button\":\"\"},on:{\"click\":function($event){$event.preventDefault();$event.stopPropagation();return _vm.openSettings.apply(null, arguments)}}},[_c('IconCog',{attrs:{\"slot\":\"icon\",\"size\":20},slot:\"icon\"})],1)],1)]},proxy:true}])},[_vm._v(\" \"),_vm._v(\" \"),_c('SettingsModal',{attrs:{\"open\":_vm.settingsOpened,\"data-cy-files-navigation-settings\":\"\"},on:{\"close\":_vm.onSettingsClose}})],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n      import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n      import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n      import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n      import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n      import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n      import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n      import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Navigation.vue?vue&type=style&index=0&id=66457116&prod&scoped=true&lang=scss\";\n      \n      \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n      options.insert = insertFn.bind(null, \"head\");\n    \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Navigation.vue?vue&type=style&index=0&id=66457116&prod&scoped=true&lang=scss\";\n       export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./Navigation.vue?vue&type=template&id=66457116&scoped=true\"\nimport script from \"./Navigation.vue?vue&type=script&lang=ts\"\nexport * from \"./Navigation.vue?vue&type=script&lang=ts\"\nimport style0 from \"./Navigation.vue?vue&type=style&index=0&id=66457116&prod&scoped=true&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"66457116\",\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('NcAppContent',{attrs:{\"page-heading\":_vm.pageHeading,\"data-cy-files-content\":\"\"}},[_c('div',{staticClass:\"files-list__header\"},[_c('BreadCrumbs',{attrs:{\"path\":_vm.dir},on:{\"reload\":_vm.fetchContent},scopedSlots:_vm._u([{key:\"actions\",fn:function(){return [(_vm.canShare && _vm.filesListWidth >= 512)?_c('NcButton',{staticClass:\"files-list__header-share-button\",class:{ 'files-list__header-share-button--shared': _vm.shareButtonType },attrs:{\"aria-label\":_vm.shareButtonLabel,\"title\":_vm.shareButtonLabel,\"type\":\"tertiary\"},on:{\"click\":_vm.openSharingSidebar},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [(_vm.shareButtonType === _vm.Type.SHARE_TYPE_LINK)?_c('LinkIcon'):_c('AccountPlusIcon',{attrs:{\"size\":20}})]},proxy:true}],null,false,2969853559)}):_vm._e(),_vm._v(\" \"),(!_vm.canUpload || _vm.isQuotaExceeded)?_c('NcButton',{staticClass:\"files-list__header-upload-button--disabled\",attrs:{\"aria-label\":_vm.cantUploadLabel,\"title\":_vm.cantUploadLabel,\"disabled\":true,\"type\":\"secondary\"},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('PlusIcon',{attrs:{\"size\":20}})]},proxy:true}],null,false,2953566425)},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('files', 'New'))+\"\\n\\t\\t\\t\\t\")]):(_vm.currentFolder)?_c('UploadPicker',{staticClass:\"files-list__header-upload-button\",attrs:{\"allow-folders\":\"\",\"content\":_vm.getContent,\"destination\":_vm.currentFolder,\"forbidden-characters\":_vm.forbiddenCharacters,\"multiple\":\"\"},on:{\"failed\":_vm.onUploadFail,\"uploaded\":_vm.onUpload}}):_vm._e()]},proxy:true}])}),_vm._v(\" \"),(_vm.filesListWidth >= 512 && _vm.enableGridView)?_c('NcButton',{staticClass:\"files-list__header-grid-button\",attrs:{\"aria-label\":_vm.gridViewButtonLabel,\"title\":_vm.gridViewButtonLabel,\"type\":\"tertiary\"},on:{\"click\":_vm.toggleGridView},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [(_vm.userConfig.grid_view)?_c('ListViewIcon'):_c('ViewGridIcon')]},proxy:true}],null,false,1682960703)}):_vm._e(),_vm._v(\" \"),(_vm.isRefreshing)?_c('NcLoadingIcon',{staticClass:\"files-list__refresh-icon\"}):_vm._e()],1),_vm._v(\" \"),(!_vm.loading && _vm.canUpload)?_c('DragAndDropNotice',{attrs:{\"current-folder\":_vm.currentFolder}}):_vm._e(),_vm._v(\" \"),(_vm.loading && !_vm.isRefreshing)?_c('NcLoadingIcon',{staticClass:\"files-list__loading-icon\",attrs:{\"size\":38,\"name\":_vm.t('files', 'Loading current folder')}}):(!_vm.loading && _vm.isEmptyDir)?_c('NcEmptyContent',{attrs:{\"name\":_vm.currentView?.emptyTitle || _vm.t('files', 'No files in here'),\"description\":_vm.currentView?.emptyCaption || _vm.t('files', 'Upload some content or sync with your devices!'),\"data-cy-files-content-empty\":\"\"},scopedSlots:_vm._u([(_vm.dir !== '/')?{key:\"action\",fn:function(){return [(_vm.currentFolder && _vm.canUpload && !_vm.isQuotaExceeded)?_c('UploadPicker',{staticClass:\"files-list__header-upload-button\",attrs:{\"allow-folders\":\"\",\"content\":_vm.getContent,\"destination\":_vm.currentFolder,\"forbidden-characters\":_vm.forbiddenCharacters,\"multiple\":\"\"},on:{\"failed\":_vm.onUploadFail,\"uploaded\":_vm.onUpload}}):_c('NcButton',{attrs:{\"aria-label\":_vm.t('files', 'Go to the previous folder'),\"to\":_vm.toPreviousDir,\"type\":\"primary\"}},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('files', 'Go back'))+\"\\n\\t\\t\\t\")])]},proxy:true}:null,{key:\"icon\",fn:function(){return [_c('NcIconSvgWrapper',{attrs:{\"svg\":_vm.currentView.icon}})]},proxy:true}],null,true)}):_c('FilesListVirtual',{ref:\"filesListVirtual\",attrs:{\"current-folder\":_vm.currentFolder,\"current-view\":_vm.currentView,\"nodes\":_vm.dirContentsSorted}})],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <span v-bind=\"$attrs\"\n        :aria-hidden=\"title ? null : true\"\n        :aria-label=\"title\"\n        class=\"material-design-icon format-list-bulleted-square-icon\"\n        role=\"img\"\n        @click=\"$emit('click', $event)\">\n    <svg :fill=\"fillColor\"\n         class=\"material-design-icon__svg\"\n         :width=\"size\"\n         :height=\"size\"\n         viewBox=\"0 0 24 24\">\n      <path d=\"M3,4H7V8H3V4M9,5V7H21V5H9M3,10H7V14H3V10M9,11V13H21V11H9M3,16H7V20H3V16M9,17V19H21V17H9\">\n        <title v-if=\"title\">{{ title }}</title>\n      </path>\n    </svg>\n  </span>\n</template>\n\n<script>\nexport default {\n  name: \"FormatListBulletedSquareIcon\",\n  emits: ['click'],\n  props: {\n    title: {\n      type: String,\n    },\n    fillColor: {\n      type: String,\n      default: \"currentColor\"\n    },\n    size: {\n      type: Number,\n      default: 24\n    }\n  }\n}\n</script>","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./FormatListBulletedSquare.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./FormatListBulletedSquare.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./FormatListBulletedSquare.vue?vue&type=template&id=00aea13f\"\nimport script from \"./FormatListBulletedSquare.vue?vue&type=script&lang=js\"\nexport * from \"./FormatListBulletedSquare.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon format-list-bulleted-square-icon\",attrs:{\"aria-hidden\":_vm.title ? null : true,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M3,4H7V8H3V4M9,5V7H21V5H9M3,10H7V14H3V10M9,11V13H21V11H9M3,16H7V20H3V16M9,17V19H21V17H9\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <span v-bind=\"$attrs\"\n        :aria-hidden=\"title ? null : true\"\n        :aria-label=\"title\"\n        class=\"material-design-icon account-plus-icon\"\n        role=\"img\"\n        @click=\"$emit('click', $event)\">\n    <svg :fill=\"fillColor\"\n         class=\"material-design-icon__svg\"\n         :width=\"size\"\n         :height=\"size\"\n         viewBox=\"0 0 24 24\">\n      <path d=\"M15,14C12.33,14 7,15.33 7,18V20H23V18C23,15.33 17.67,14 15,14M6,10V7H4V10H1V12H4V15H6V12H9V10M15,12A4,4 0 0,0 19,8A4,4 0 0,0 15,4A4,4 0 0,0 11,8A4,4 0 0,0 15,12Z\">\n        <title v-if=\"title\">{{ title }}</title>\n      </path>\n    </svg>\n  </span>\n</template>\n\n<script>\nexport default {\n  name: \"AccountPlusIcon\",\n  emits: ['click'],\n  props: {\n    title: {\n      type: String,\n    },\n    fillColor: {\n      type: String,\n      default: \"currentColor\"\n    },\n    size: {\n      type: Number,\n      default: 24\n    }\n  }\n}\n</script>","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./AccountPlus.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./AccountPlus.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./AccountPlus.vue?vue&type=template&id=a16afc28\"\nimport script from \"./AccountPlus.vue?vue&type=script&lang=js\"\nexport * from \"./AccountPlus.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon account-plus-icon\",attrs:{\"aria-hidden\":_vm.title ? null : true,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M15,14C12.33,14 7,15.33 7,18V20H23V18C23,15.33 17.67,14 15,14M6,10V7H4V10H1V12H4V15H6V12H9V10M15,12A4,4 0 0,0 19,8A4,4 0 0,0 15,4A4,4 0 0,0 11,8A4,4 0 0,0 15,12Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./ViewGrid.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./ViewGrid.vue?vue&type=script&lang=js\"","<template>\n  <span v-bind=\"$attrs\"\n        :aria-hidden=\"title ? null : true\"\n        :aria-label=\"title\"\n        class=\"material-design-icon view-grid-icon\"\n        role=\"img\"\n        @click=\"$emit('click', $event)\">\n    <svg :fill=\"fillColor\"\n         class=\"material-design-icon__svg\"\n         :width=\"size\"\n         :height=\"size\"\n         viewBox=\"0 0 24 24\">\n      <path d=\"M3,11H11V3H3M3,21H11V13H3M13,21H21V13H13M13,3V11H21V3\">\n        <title v-if=\"title\">{{ title }}</title>\n      </path>\n    </svg>\n  </span>\n</template>\n\n<script>\nexport default {\n  name: \"ViewGridIcon\",\n  emits: ['click'],\n  props: {\n    title: {\n      type: String,\n    },\n    fillColor: {\n      type: String,\n      default: \"currentColor\"\n    },\n    size: {\n      type: Number,\n      default: 24\n    }\n  }\n}\n</script>","import { render, staticRenderFns } from \"./ViewGrid.vue?vue&type=template&id=7b96a104\"\nimport script from \"./ViewGrid.vue?vue&type=script&lang=js\"\nexport * from \"./ViewGrid.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon view-grid-icon\",attrs:{\"aria-hidden\":_vm.title ? null : true,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M3,11H11V3H3M3,21H11V13H3M13,21H21V13H13M13,3V11H21V3\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { Permission, View, FileAction } from '@nextcloud/files';\nimport { translate as t } from '@nextcloud/l10n';\nimport InformationSvg from '@mdi/svg/svg/information-variant.svg?raw';\nimport logger from '../logger.js';\nexport const ACTION_DETAILS = 'details';\nexport const action = new FileAction({\n    id: ACTION_DETAILS,\n    displayName: () => t('files', 'Open details'),\n    iconSvgInline: () => InformationSvg,\n    // Sidebar currently supports user folder only, /files/USER\n    enabled: (nodes) => {\n        // Only works on single node\n        if (nodes.length !== 1) {\n            return false;\n        }\n        if (!nodes[0]) {\n            return false;\n        }\n        // Only work if the sidebar is available\n        if (!window?.OCA?.Files?.Sidebar) {\n            return false;\n        }\n        return (nodes[0].root?.startsWith('/files/') && nodes[0].permissions !== Permission.NONE) ?? false;\n    },\n    async exec(node, view, dir) {\n        try {\n            // TODO: migrate Sidebar to use a Node instead\n            await window.OCA.Files.Sidebar.open(node.path);\n            // Silently update current fileid\n            window.OCP.Files.Router.goToRoute(null, { view: view.id, fileid: String(node.fileid) }, { ...window.OCP.Files.Router.query, dir }, true);\n            return null;\n        }\n        catch (error) {\n            logger.error('Error while opening sidebar', { error });\n            return false;\n        }\n    },\n    order: -50,\n});\n","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { davGetClient } from '@nextcloud/files';\nexport const client = davGetClient();\n","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { davGetDefaultPropfind, davResultToNode, davRootPath } from '@nextcloud/files';\nimport { defineStore } from 'pinia';\nimport { subscribe } from '@nextcloud/event-bus';\nimport logger from '../logger';\nimport Vue from 'vue';\nimport { client } from '../services/WebdavClient.ts';\nconst fetchNode = async (node) => {\n    const propfindPayload = davGetDefaultPropfind();\n    const result = await client.stat(`${davRootPath}${node.path}`, {\n        details: true,\n        data: propfindPayload,\n    });\n    return davResultToNode(result.data);\n};\nexport const useFilesStore = function (...args) {\n    const store = defineStore('files', {\n        state: () => ({\n            files: {},\n            roots: {},\n        }),\n        getters: {\n            /**\n             * Get a file or folder by its source\n             * @param state\n             */\n            getNode: (state) => (source) => state.files[source],\n            /**\n             * Get a list of files or folders by their IDs\n             * Note: does not return undefined values\n             * @param state\n             */\n            getNodes: (state) => (sources) => sources\n                .map(source => state.files[source])\n                .filter(Boolean),\n            /**\n             * Get files or folders by their file ID\n             * Multiple nodes can have the same file ID but different sources\n             * (e.g. in a shared context)\n             * @param state\n             */\n            getNodesById: (state) => (fileId) => Object.values(state.files).filter(node => node.fileid === fileId),\n            /**\n             * Get the root folder of a service\n             * @param state\n             */\n            getRoot: (state) => (service) => state.roots[service],\n        },\n        actions: {\n            updateNodes(nodes) {\n                // Update the store all at once\n                const files = nodes.reduce((acc, node) => {\n                    if (!node.fileid) {\n                        logger.error('Trying to update/set a node without fileid', { node });\n                        return acc;\n                    }\n                    acc[node.source] = node;\n                    return acc;\n                }, {});\n                Vue.set(this, 'files', { ...this.files, ...files });\n            },\n            deleteNodes(nodes) {\n                nodes.forEach(node => {\n                    if (node.source) {\n                        Vue.delete(this.files, node.source);\n                    }\n                });\n            },\n            setRoot({ service, root }) {\n                Vue.set(this.roots, service, root);\n            },\n            onDeletedNode(node) {\n                this.deleteNodes([node]);\n            },\n            onCreatedNode(node) {\n                this.updateNodes([node]);\n            },\n            async onUpdatedNode(node) {\n                if (!node.fileid) {\n                    logger.error('Trying to update/set a node without fileid', { node });\n                    return;\n                }\n                // If we have multiple nodes with the same file ID, we need to update all of them\n                const nodes = this.getNodesById(node.fileid);\n                if (nodes.length > 1) {\n                    await Promise.all(nodes.map(fetchNode)).then(this.updateNodes);\n                    logger.debug(nodes.length + ' nodes updated in store', { fileid: node.fileid });\n                    return;\n                }\n                // If we have only one node with the file ID, we can update it directly\n                if (node.source === nodes[0].source) {\n                    this.updateNodes([node]);\n                    return;\n                }\n                // Otherwise, it means we receive an event for a node that is not in the store\n                fetchNode(node).then(n => this.updateNodes([n]));\n            },\n        },\n    });\n    const fileStore = store(...args);\n    // Make sure we only register the listeners once\n    if (!fileStore._initialized) {\n        subscribe('files:node:created', fileStore.onCreatedNode);\n        subscribe('files:node:deleted', fileStore.onDeletedNode);\n        subscribe('files:node:updated', fileStore.onUpdatedNode);\n        fileStore._initialized = true;\n    }\n    return fileStore;\n};\n","import { defineStore } from 'pinia';\nimport { FileType, Folder, Node, getNavigation } from '@nextcloud/files';\nimport { subscribe } from '@nextcloud/event-bus';\nimport Vue from 'vue';\nimport logger from '../logger';\nimport { useFilesStore } from './files';\nexport const usePathsStore = function (...args) {\n    const files = useFilesStore(...args);\n    const store = defineStore('paths', {\n        state: () => ({\n            paths: {},\n        }),\n        getters: {\n            getPath: (state) => {\n                return (service, path) => {\n                    if (!state.paths[service]) {\n                        return undefined;\n                    }\n                    return state.paths[service][path];\n                };\n            },\n        },\n        actions: {\n            addPath(payload) {\n                // If it doesn't exists, init the service state\n                if (!this.paths[payload.service]) {\n                    Vue.set(this.paths, payload.service, {});\n                }\n                // Now we can set the provided path\n                Vue.set(this.paths[payload.service], payload.path, payload.source);\n            },\n            onCreatedNode(node) {\n                const service = getNavigation()?.active?.id || 'files';\n                if (!node.fileid) {\n                    logger.error('Node has no fileid', { node });\n                    return;\n                }\n                // Only add path if it's a folder\n                if (node.type === FileType.Folder) {\n                    this.addPath({\n                        service,\n                        path: node.path,\n                        source: node.source,\n                    });\n                }\n                // Update parent folder children if exists\n                // If the folder is the root, get it and update it\n                if (node.dirname === '/') {\n                    const root = files.getRoot(service);\n                    if (!root._children) {\n                        Vue.set(root, '_children', []);\n                    }\n                    root._children.push(node.source);\n                    return;\n                }\n                // If the folder doesn't exists yet, it will be\n                // fetched later and its children updated anyway.\n                if (this.paths[service][node.dirname]) {\n                    const parentSource = this.paths[service][node.dirname];\n                    const parentFolder = files.getNode(parentSource);\n                    logger.debug('Path already exists, updating children', { parentFolder, node });\n                    if (!parentFolder) {\n                        logger.error('Parent folder not found', { parentSource });\n                        return;\n                    }\n                    if (!parentFolder._children) {\n                        Vue.set(parentFolder, '_children', []);\n                    }\n                    parentFolder._children.push(node.source);\n                    return;\n                }\n                logger.debug('Parent path does not exists, skipping children update', { node });\n            },\n        },\n    });\n    const pathsStore = store(...args);\n    // Make sure we only register the listeners once\n    if (!pathsStore._initialized) {\n        // TODO: watch folders to update paths?\n        subscribe('files:node:created', pathsStore.onCreatedNode);\n        // subscribe('files:node:deleted', pathsStore.onDeletedNode)\n        // subscribe('files:node:moved', pathsStore.onMovedNode)\n        pathsStore._initialized = true;\n    }\n    return pathsStore;\n};\n","import { defineStore } from 'pinia';\nimport Vue from 'vue';\nexport const useSelectionStore = defineStore('selection', {\n    state: () => ({\n        selected: [],\n        lastSelection: [],\n        lastSelectedIndex: null,\n    }),\n    actions: {\n        /**\n         * Set the selection of fileIds\n         * @param selection\n         */\n        set(selection = []) {\n            Vue.set(this, 'selected', [...new Set(selection)]);\n        },\n        /**\n         * Set the last selected index\n         * @param lastSelectedIndex\n         */\n        setLastIndex(lastSelectedIndex = null) {\n            // Update the last selection if we provided a new selection starting point\n            Vue.set(this, 'lastSelection', lastSelectedIndex ? this.selected : []);\n            Vue.set(this, 'lastSelectedIndex', lastSelectedIndex);\n        },\n        /**\n         * Reset the selection\n         */\n        reset() {\n            Vue.set(this, 'selected', []);\n            Vue.set(this, 'lastSelection', []);\n            Vue.set(this, 'lastSelectedIndex', null);\n        },\n    },\n});\n","import { defineStore } from 'pinia';\nimport { getUploader } from '@nextcloud/upload';\nlet uploader;\nexport const useUploaderStore = function (...args) {\n    // Only init on runtime\n    uploader = getUploader();\n    const store = defineStore('uploader', {\n        state: () => ({\n            queue: uploader.queue,\n        }),\n    });\n    return store(...args);\n};\n","import { emit } from '@nextcloud/event-bus';\nimport { Folder, Node, davGetClient, davGetDefaultPropfind, davResultToNode } from '@nextcloud/files';\nimport { openConflictPicker } from '@nextcloud/upload';\nimport { showError, showInfo } from '@nextcloud/dialogs';\nimport { translate as t } from '@nextcloud/l10n';\nimport logger from '../logger.js';\n/**\n * This represents a Directory in the file tree\n * We extend the File class to better handling uploading\n * and stay as close as possible as the Filesystem API.\n * This also allow us to hijack the size or lastModified\n * properties to compute them dynamically.\n */\nexport class Directory extends File {\n    /* eslint-disable no-use-before-define */\n    _contents;\n    constructor(name, contents = []) {\n        super([], name, { type: 'httpd/unix-directory' });\n        this._contents = contents;\n    }\n    set contents(contents) {\n        this._contents = contents;\n    }\n    get contents() {\n        return this._contents;\n    }\n    get size() {\n        return this._computeDirectorySize(this);\n    }\n    get lastModified() {\n        if (this._contents.length === 0) {\n            return Date.now();\n        }\n        return this._computeDirectoryMtime(this);\n    }\n    /**\n     * Get the last modification time of a file tree\n     * This is not perfect, but will get us a pretty good approximation\n     * @param directory the directory to traverse\n     */\n    _computeDirectoryMtime(directory) {\n        return directory.contents.reduce((acc, file) => {\n            return file.lastModified > acc\n                // If the file is a directory, the lastModified will\n                // also return the results of its _computeDirectoryMtime method\n                // Fancy recursion, huh?\n                ? file.lastModified\n                : acc;\n        }, 0);\n    }\n    /**\n     * Get the size of a file tree\n     * @param directory the directory to traverse\n     */\n    _computeDirectorySize(directory) {\n        return directory.contents.reduce((acc, entry) => {\n            // If the file is a directory, the size will\n            // also return the results of its _computeDirectorySize method\n            // Fancy recursion, huh?\n            return acc + entry.size;\n        }, 0);\n    }\n}\n/**\n * Traverse a file tree using the Filesystem API\n * @param entry the entry to traverse\n */\nexport const traverseTree = async (entry) => {\n    // Handle file\n    if (entry.isFile) {\n        return new Promise((resolve, reject) => {\n            entry.file(resolve, reject);\n        });\n    }\n    // Handle directory\n    logger.debug('Handling recursive file tree', { entry: entry.name });\n    const directory = entry;\n    const entries = await readDirectory(directory);\n    const contents = (await Promise.all(entries.map(traverseTree))).flat();\n    return new Directory(directory.name, contents);\n};\n/**\n * Read a directory using Filesystem API\n * @param directory the directory to read\n */\nconst readDirectory = (directory) => {\n    const dirReader = directory.createReader();\n    return new Promise((resolve, reject) => {\n        const entries = [];\n        const getEntries = () => {\n            dirReader.readEntries((results) => {\n                if (results.length) {\n                    entries.push(...results);\n                    getEntries();\n                }\n                else {\n                    resolve(entries);\n                }\n            }, (error) => {\n                reject(error);\n            });\n        };\n        getEntries();\n    });\n};\nexport const createDirectoryIfNotExists = async (absolutePath) => {\n    const davClient = davGetClient();\n    const dirExists = await davClient.exists(absolutePath);\n    if (!dirExists) {\n        logger.debug('Directory does not exist, creating it', { absolutePath });\n        await davClient.createDirectory(absolutePath, { recursive: true });\n        const stat = await davClient.stat(absolutePath, { details: true, data: davGetDefaultPropfind() });\n        emit('files:node:created', davResultToNode(stat.data));\n    }\n};\nexport const resolveConflict = async (files, destination, contents) => {\n    try {\n        // List all conflicting files\n        const conflicts = files.filter((file) => {\n            return contents.find((node) => node.basename === (file instanceof File ? file.name : file.basename));\n        }).filter(Boolean);\n        // List of incoming files that are NOT in conflict\n        const uploads = files.filter((file) => {\n            return !conflicts.includes(file);\n        });\n        // Let the user choose what to do with the conflicting files\n        const { selected, renamed } = await openConflictPicker(destination.path, conflicts, contents);\n        logger.debug('Conflict resolution', { uploads, selected, renamed });\n        // If the user selected nothing, we cancel the upload\n        if (selected.length === 0 && renamed.length === 0) {\n            // User skipped\n            showInfo(t('files', 'Conflicts resolution skipped'));\n            logger.info('User skipped the conflict resolution');\n            return [];\n        }\n        // Update the list of files to upload\n        return [...uploads, ...selected, ...renamed];\n    }\n    catch (error) {\n        console.error(error);\n        // User cancelled\n        showError(t('files', 'Upload cancelled'));\n        logger.error('User cancelled the upload');\n    }\n    return [];\n};\n","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { Permission } from '@nextcloud/files';\nimport PQueue from 'p-queue';\n// This is the processing queue. We only want to allow 3 concurrent requests\nlet queue;\n// Maximum number of concurrent operations\nconst MAX_CONCURRENCY = 5;\n/**\n * Get the processing queue\n */\nexport const getQueue = () => {\n    if (!queue) {\n        queue = new PQueue({ concurrency: MAX_CONCURRENCY });\n    }\n    return queue;\n};\nexport var MoveCopyAction;\n(function (MoveCopyAction) {\n    MoveCopyAction[\"MOVE\"] = \"Move\";\n    MoveCopyAction[\"COPY\"] = \"Copy\";\n    MoveCopyAction[\"MOVE_OR_COPY\"] = \"move-or-copy\";\n})(MoveCopyAction || (MoveCopyAction = {}));\nexport const canMove = (nodes) => {\n    const minPermission = nodes.reduce((min, node) => Math.min(min, node.permissions), Permission.ALL);\n    return (minPermission & Permission.UPDATE) !== 0;\n};\nexport const canDownload = (nodes) => {\n    return nodes.every(node => {\n        const shareAttributes = JSON.parse(node.attributes?.['share-attributes'] ?? '[]');\n        return !shareAttributes.some(attribute => attribute.scope === 'permissions' && attribute.value === false && attribute.key === 'download');\n    });\n};\nexport const canCopy = (nodes) => {\n    // a shared file cannot be copied if the download is disabled\n    // it can be copied if the user has at least read permissions\n    return canDownload(nodes)\n        && !nodes.some(node => node.permissions === Permission.NONE);\n};\n","import { CancelablePromise } from 'cancelable-promise';\nimport { File, Folder, davGetDefaultPropfind, davResultToNode, davRootPath } from '@nextcloud/files';\nimport { client } from './WebdavClient.ts';\nimport logger from '../logger.js';\n/**\n * Slim wrapper over `@nextcloud/files` `davResultToNode` to allow using the function with `Array.map`\n * @param node The node returned by the webdav library\n */\nexport const resultToNode = (node) => {\n    // TODO remove this hack with nextcloud-files v3.7\n    // just needed because of a bug in the webdav client\n    if (node.props?.displayname !== undefined) {\n        node.props.displayname = String(node.props.displayname);\n    }\n    return davResultToNode(node);\n};\nexport const getContents = (path = '/') => {\n    const controller = new AbortController();\n    const propfindPayload = davGetDefaultPropfind();\n    path = `${davRootPath}${path}`;\n    return new CancelablePromise(async (resolve, reject, onCancel) => {\n        onCancel(() => controller.abort());\n        try {\n            const contentsResponse = await client.getDirectoryContents(path, {\n                details: true,\n                data: propfindPayload,\n                includeSelf: true,\n                signal: controller.signal,\n            });\n            const root = contentsResponse.data[0];\n            const contents = contentsResponse.data.slice(1);\n            if (root.filename !== path && `${root.filename}/` !== path) {\n                logger.debug(`Exepected \"${path}\" but got filename \"${root.filename}\" instead.`);\n                throw new Error('Root node does not match requested path');\n            }\n            resolve({\n                folder: resultToNode(root),\n                contents: contents.map((result) => {\n                    try {\n                        return resultToNode(result);\n                    }\n                    catch (error) {\n                        logger.error(`Invalid node detected '${result.basename}'`, { error });\n                        return null;\n                    }\n                }).filter(Boolean),\n            });\n        }\n        catch (error) {\n            reject(error);\n        }\n    });\n};\n","import { isAxiosError } from '@nextcloud/axios';\nimport { FilePickerClosed, getFilePickerBuilder, showError } from '@nextcloud/dialogs';\nimport { emit } from '@nextcloud/event-bus';\nimport { FileAction, FileType, NodeStatus, davGetClient, davRootPath, davResultToNode, davGetDefaultPropfind, getUniqueName, Permission } from '@nextcloud/files';\nimport { translate as t } from '@nextcloud/l10n';\nimport { openConflictPicker, hasConflict } from '@nextcloud/upload';\nimport { basename, join } from 'path';\nimport Vue from 'vue';\nimport CopyIconSvg from '@mdi/svg/svg/folder-multiple.svg?raw';\nimport FolderMoveSvg from '@mdi/svg/svg/folder-move.svg?raw';\nimport { MoveCopyAction, canCopy, canMove, getQueue } from './moveOrCopyActionUtils';\nimport { getContents } from '../services/Files';\nimport logger from '../logger';\n/**\n * Return the action that is possible for the given nodes\n * @param {Node[]} nodes The nodes to check against\n * @return {MoveCopyAction} The action that is possible for the given nodes\n */\nconst getActionForNodes = (nodes) => {\n    if (canMove(nodes)) {\n        if (canCopy(nodes)) {\n            return MoveCopyAction.MOVE_OR_COPY;\n        }\n        return MoveCopyAction.MOVE;\n    }\n    // Assuming we can copy as the enabled checks for copy permissions\n    return MoveCopyAction.COPY;\n};\n/**\n * Handle the copy/move of a node to a destination\n * This can be imported and used by other scripts/components on server\n * @param {Node} node The node to copy/move\n * @param {Folder} destination The destination to copy/move the node to\n * @param {MoveCopyAction} method The method to use for the copy/move\n * @param {boolean} overwrite Whether to overwrite the destination if it exists\n * @return {Promise<void>} A promise that resolves when the copy/move is done\n */\nexport const handleCopyMoveNodeTo = async (node, destination, method, overwrite = false) => {\n    if (!destination) {\n        return;\n    }\n    if (destination.type !== FileType.Folder) {\n        throw new Error(t('files', 'Destination is not a folder'));\n    }\n    // Do not allow to MOVE a node to the same folder it is already located\n    if (method === MoveCopyAction.MOVE && node.dirname === destination.path) {\n        throw new Error(t('files', 'This file/folder is already in that directory'));\n    }\n    /**\n     * Example:\n     * - node: /foo/bar/file.txt -> path = /foo/bar/file.txt, destination: /foo\n     *   Allow move of /foo does not start with /foo/bar/file.txt so allow\n     * - node: /foo , destination: /foo/bar\n     *   Do not allow as it would copy foo within itself\n     * - node: /foo/bar.txt, destination: /foo\n     *   Allow copy a file to the same directory\n     * - node: \"/foo/bar\", destination: \"/foo/bar 1\"\n     *   Allow to move or copy but we need to check with trailing / otherwise it would report false positive\n     */\n    if (`${destination.path}/`.startsWith(`${node.path}/`)) {\n        throw new Error(t('files', 'You cannot move a file/folder onto itself or into a subfolder of itself'));\n    }\n    // Set loading state\n    Vue.set(node, 'status', NodeStatus.LOADING);\n    const queue = getQueue();\n    return await queue.add(async () => {\n        const copySuffix = (index) => {\n            if (index === 1) {\n                return t('files', '(copy)'); // TRANSLATORS: Mark a file as a copy of another file\n            }\n            return t('files', '(copy %n)', undefined, index); // TRANSLATORS: Meaning it is the n'th copy of a file\n        };\n        try {\n            const client = davGetClient();\n            const currentPath = join(davRootPath, node.path);\n            const destinationPath = join(davRootPath, destination.path);\n            if (method === MoveCopyAction.COPY) {\n                let target = node.basename;\n                // If we do not allow overwriting then find an unique name\n                if (!overwrite) {\n                    const otherNodes = await client.getDirectoryContents(destinationPath);\n                    target = getUniqueName(node.basename, otherNodes.map((n) => n.basename), {\n                        suffix: copySuffix,\n                        ignoreFileExtension: node.type === FileType.Folder,\n                    });\n                }\n                await client.copyFile(currentPath, join(destinationPath, target));\n                // If the node is copied into current directory the view needs to be updated\n                if (node.dirname === destination.path) {\n                    const { data } = await client.stat(join(destinationPath, target), {\n                        details: true,\n                        data: davGetDefaultPropfind(),\n                    });\n                    emit('files:node:created', davResultToNode(data));\n                }\n            }\n            else {\n                // show conflict file popup if we do not allow overwriting\n                const otherNodes = await getContents(destination.path);\n                if (hasConflict([node], otherNodes.contents)) {\n                    try {\n                        // Let the user choose what to do with the conflicting files\n                        const { selected, renamed } = await openConflictPicker(destination.path, [node], otherNodes.contents);\n                        // two empty arrays: either only old files or conflict skipped -> no action required\n                        if (!selected.length && !renamed.length) {\n                            return;\n                        }\n                    }\n                    catch (error) {\n                        // User cancelled\n                        showError(t('files', 'Move cancelled'));\n                        return;\n                    }\n                }\n                // getting here means either no conflict, file was renamed to keep both files\n                // in a conflict, or the selected file was chosen to be kept during the conflict\n                await client.moveFile(currentPath, join(destinationPath, node.basename));\n                // Delete the node as it will be fetched again\n                // when navigating to the destination folder\n                emit('files:node:deleted', node);\n            }\n        }\n        catch (error) {\n            if (isAxiosError(error)) {\n                if (error.response?.status === 412) {\n                    throw new Error(t('files', 'A file or folder with that name already exists in this folder'));\n                }\n                else if (error.response?.status === 423) {\n                    throw new Error(t('files', 'The files are locked'));\n                }\n                else if (error.response?.status === 404) {\n                    throw new Error(t('files', 'The file does not exist anymore'));\n                }\n                else if (error.message) {\n                    throw new Error(error.message);\n                }\n            }\n            logger.debug(error);\n            throw new Error();\n        }\n        finally {\n            Vue.set(node, 'status', undefined);\n        }\n    });\n};\n/**\n * Open a file picker for the given action\n * @param {MoveCopyAction} action The action to open the file picker for\n * @param {string} dir The directory to start the file picker in\n * @param {Node[]} nodes The nodes to move/copy\n * @return {Promise<MoveCopyResult>} The picked destination\n */\nconst openFilePickerForAction = async (action, dir = '/', nodes) => {\n    const fileIDs = nodes.map(node => node.fileid).filter(Boolean);\n    const filePicker = getFilePickerBuilder(t('files', 'Choose destination'))\n        .allowDirectories(true)\n        .setFilter((n) => {\n        // We don't want to show the current nodes in the file picker\n        return !fileIDs.includes(n.fileid);\n    })\n        .setMimeTypeFilter([])\n        .setMultiSelect(false)\n        .startAt(dir);\n    return new Promise((resolve, reject) => {\n        filePicker.setButtonFactory((selection, path) => {\n            const buttons = [];\n            const target = basename(path);\n            const dirnames = nodes.map(node => node.dirname);\n            const paths = nodes.map(node => node.path);\n            if (action === MoveCopyAction.COPY || action === MoveCopyAction.MOVE_OR_COPY) {\n                buttons.push({\n                    label: target ? t('files', 'Copy to {target}', { target }, undefined, { escape: false, sanitize: false }) : t('files', 'Copy'),\n                    type: 'primary',\n                    icon: CopyIconSvg,\n                    disabled: selection.some((node) => (node.permissions & Permission.CREATE) === 0),\n                    async callback(destination) {\n                        resolve({\n                            destination: destination[0],\n                            action: MoveCopyAction.COPY,\n                        });\n                    },\n                });\n            }\n            // Invalid MOVE targets (but valid copy targets)\n            if (dirnames.includes(path)) {\n                // This file/folder is already in that directory\n                return buttons;\n            }\n            if (paths.includes(path)) {\n                // You cannot move a file/folder onto itself\n                return buttons;\n            }\n            if (action === MoveCopyAction.MOVE || action === MoveCopyAction.MOVE_OR_COPY) {\n                buttons.push({\n                    label: target ? t('files', 'Move to {target}', { target }, undefined, { escape: false, sanitize: false }) : t('files', 'Move'),\n                    type: action === MoveCopyAction.MOVE ? 'primary' : 'secondary',\n                    icon: FolderMoveSvg,\n                    async callback(destination) {\n                        resolve({\n                            destination: destination[0],\n                            action: MoveCopyAction.MOVE,\n                        });\n                    },\n                });\n            }\n            return buttons;\n        });\n        const picker = filePicker.build();\n        picker.pick().catch((error) => {\n            logger.debug(error);\n            if (error instanceof FilePickerClosed) {\n                reject(new Error(t('files', 'Cancelled move or copy operation')));\n            }\n            else {\n                reject(new Error(t('files', 'Move or copy operation failed')));\n            }\n        });\n    });\n};\nexport const action = new FileAction({\n    id: 'move-copy',\n    displayName(nodes) {\n        switch (getActionForNodes(nodes)) {\n            case MoveCopyAction.MOVE:\n                return t('files', 'Move');\n            case MoveCopyAction.COPY:\n                return t('files', 'Copy');\n            case MoveCopyAction.MOVE_OR_COPY:\n                return t('files', 'Move or copy');\n        }\n    },\n    iconSvgInline: () => FolderMoveSvg,\n    enabled(nodes) {\n        // We only support moving/copying files within the user folder\n        if (!nodes.every(node => node.root?.startsWith('/files/'))) {\n            return false;\n        }\n        return nodes.length > 0 && (canMove(nodes) || canCopy(nodes));\n    },\n    async exec(node, view, dir) {\n        const action = getActionForNodes([node]);\n        let result;\n        try {\n            result = await openFilePickerForAction(action, dir, [node]);\n        }\n        catch (e) {\n            logger.error(e);\n            return false;\n        }\n        try {\n            await handleCopyMoveNodeTo(node, result.destination, result.action);\n            return true;\n        }\n        catch (error) {\n            if (error instanceof Error && !!error.message) {\n                showError(error.message);\n                // Silent action as we handle the toast\n                return null;\n            }\n            return false;\n        }\n    },\n    async execBatch(nodes, view, dir) {\n        const action = getActionForNodes(nodes);\n        const result = await openFilePickerForAction(action, dir, nodes);\n        const promises = nodes.map(async (node) => {\n            try {\n                await handleCopyMoveNodeTo(node, result.destination, result.action);\n                return true;\n            }\n            catch (error) {\n                logger.error(`Failed to ${result.action} node`, { node, error });\n                return false;\n            }\n        });\n        // We need to keep the selection on error!\n        // So we do not return null, and for batch action\n        // we let the front handle the error.\n        return await Promise.all(promises);\n    },\n    order: 15,\n});\n","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { Folder, Node, NodeStatus, davRootPath } from '@nextcloud/files';\nimport { getUploader, hasConflict } from '@nextcloud/upload';\nimport { join } from 'path';\nimport { joinPaths } from '@nextcloud/paths';\nimport { showError, showInfo, showSuccess, showWarning } from '@nextcloud/dialogs';\nimport { translate as t } from '@nextcloud/l10n';\nimport Vue from 'vue';\nimport { Directory, traverseTree, resolveConflict, createDirectoryIfNotExists } from './DropServiceUtils';\nimport { handleCopyMoveNodeTo } from '../actions/moveOrCopyAction';\nimport { MoveCopyAction } from '../actions/moveOrCopyActionUtils';\nimport logger from '../logger.js';\n/**\n * This function converts a list of DataTransferItems to a file tree.\n * It uses the Filesystem API if available, otherwise it falls back to the File API.\n * The File API will NOT be available if the browser is not in a secure context (e.g. HTTP).\n * ⚠️ When using this method, you need to use it as fast as possible, as the DataTransferItems\n * will be cleared after the first access to the props of one of the entries.\n *\n * @param items the list of DataTransferItems\n */\nexport const dataTransferToFileTree = async (items) => {\n    // Check if the browser supports the Filesystem API\n    // We need to cache the entries to prevent Blink engine bug that clears\n    // the list (`data.items`) after first access props of one of the entries\n    const entries = items\n        .filter((item) => {\n        if (item.kind !== 'file') {\n            logger.debug('Skipping dropped item', { kind: item.kind, type: item.type });\n            return false;\n        }\n        return true;\n    }).map((item) => {\n        // MDN recommends to try both, as it might be renamed in the future\n        return item?.getAsEntry?.()\n            ?? item?.webkitGetAsEntry?.()\n            ?? item;\n    });\n    let warned = false;\n    const fileTree = new Directory('root');\n    // Traverse the file tree\n    for (const entry of entries) {\n        // Handle browser issues if Filesystem API is not available. Fallback to File API\n        if (entry instanceof DataTransferItem) {\n            logger.warn('Could not get FilesystemEntry of item, falling back to file');\n            const file = entry.getAsFile();\n            if (file === null) {\n                logger.warn('Could not process DataTransferItem', { type: entry.type, kind: entry.kind });\n                showError(t('files', 'One of the dropped files could not be processed'));\n                continue;\n            }\n            // Warn the user that the browser does not support the Filesystem API\n            // we therefore cannot upload directories recursively.\n            if (file.type === 'httpd/unix-directory' || !file.type) {\n                if (!warned) {\n                    logger.warn('Browser does not support Filesystem API. Directories will not be uploaded');\n                    showWarning(t('files', 'Your browser does not support the Filesystem API. Directories will not be uploaded'));\n                    warned = true;\n                }\n                continue;\n            }\n            fileTree.contents.push(file);\n            continue;\n        }\n        // Use Filesystem API\n        try {\n            fileTree.contents.push(await traverseTree(entry));\n        }\n        catch (error) {\n            // Do not throw, as we want to continue with the other files\n            logger.error('Error while traversing file tree', { error });\n        }\n    }\n    return fileTree;\n};\nexport const onDropExternalFiles = async (root, destination, contents) => {\n    const uploader = getUploader();\n    // Check for conflicts on root elements\n    if (await hasConflict(root.contents, contents)) {\n        root.contents = await resolveConflict(root.contents, destination, contents);\n    }\n    if (root.contents.length === 0) {\n        logger.info('No files to upload', { root });\n        showInfo(t('files', 'No files to upload'));\n        return [];\n    }\n    // Let's process the files\n    logger.debug(`Uploading files to ${destination.path}`, { root, contents: root.contents });\n    const queue = [];\n    const uploadDirectoryContents = async (directory, path) => {\n        for (const file of directory.contents) {\n            // This is the relative path to the resource\n            // from the current uploader destination\n            const relativePath = join(path, file.name);\n            // If the file is a directory, we need to create it first\n            // then browse its tree and upload its contents.\n            if (file instanceof Directory) {\n                const absolutePath = joinPaths(davRootPath, destination.path, relativePath);\n                try {\n                    console.debug('Processing directory', { relativePath });\n                    await createDirectoryIfNotExists(absolutePath);\n                    await uploadDirectoryContents(file, relativePath);\n                }\n                catch (error) {\n                    showError(t('files', 'Unable to create the directory {directory}', { directory: file.name }));\n                    logger.error('', { error, absolutePath, directory: file });\n                }\n                continue;\n            }\n            // If we've reached a file, we can upload it\n            logger.debug('Uploading file to ' + join(destination.path, relativePath), { file });\n            // Overriding the root to avoid changing the current uploader context\n            queue.push(uploader.upload(relativePath, file, destination.source));\n        }\n    };\n    // Pause the uploader to prevent it from starting\n    // while we compute the queue\n    uploader.pause();\n    // Upload the files. Using '/' as the starting point\n    // as we already adjusted the uploader destination\n    await uploadDirectoryContents(root, '/');\n    uploader.start();\n    // Wait for all promises to settle\n    const results = await Promise.allSettled(queue);\n    // Check for errors\n    const errors = results.filter(result => result.status === 'rejected');\n    if (errors.length > 0) {\n        logger.error('Error while uploading files', { errors });\n        showError(t('files', 'Some files could not be uploaded'));\n        return [];\n    }\n    logger.debug('Files uploaded successfully');\n    showSuccess(t('files', 'Files uploaded successfully'));\n    return Promise.all(queue);\n};\nexport const onDropInternalFiles = async (nodes, destination, contents, isCopy = false) => {\n    const queue = [];\n    // Check for conflicts on root elements\n    if (await hasConflict(nodes, contents)) {\n        nodes = await resolveConflict(nodes, destination, contents);\n    }\n    if (nodes.length === 0) {\n        logger.info('No files to process', { nodes });\n        showInfo(t('files', 'No files to process'));\n        return;\n    }\n    for (const node of nodes) {\n        Vue.set(node, 'status', NodeStatus.LOADING);\n        // TODO: resolve potential conflicts prior and force overwrite\n        queue.push(handleCopyMoveNodeTo(node, destination, isCopy ? MoveCopyAction.COPY : MoveCopyAction.MOVE));\n    }\n    // Wait for all promises to settle\n    const results = await Promise.allSettled(queue);\n    nodes.forEach(node => Vue.set(node, 'status', undefined));\n    // Check for errors\n    const errors = results.filter(result => result.status === 'rejected');\n    if (errors.length > 0) {\n        logger.error('Error while copying or moving files', { errors });\n        showError(isCopy ? t('files', 'Some files could not be copied') : t('files', 'Some files could not be moved'));\n        return;\n    }\n    logger.debug('Files copy/move successful');\n    showSuccess(isCopy ? t('files', 'Files copied successfully') : t('files', 'Files moved successfully'));\n};\n","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { defineStore } from 'pinia';\nimport Vue from 'vue';\nexport const useDragAndDropStore = defineStore('dragging', {\n    state: () => ({\n        dragging: [],\n    }),\n    actions: {\n        /**\n         * Set the selection of fileIds\n         * @param selection\n         */\n        set(selection = []) {\n            Vue.set(this, 'dragging', selection);\n        },\n        /**\n         * Reset the selection\n         */\n        reset() {\n            Vue.set(this, 'dragging', []);\n        },\n    },\n});\n","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { defineComponent } from 'vue';\nexport default defineComponent({\n    data() {\n        return {\n            filesListWidth: 0,\n        };\n    },\n    mounted() {\n        const fileListEl = document.querySelector('#app-content-vue');\n        this.filesListWidth = fileListEl?.clientWidth ?? 0;\n        // @ts-expect-error The resize observer is just now attached to the object\n        this.$resizeObserver = new ResizeObserver((entries) => {\n            if (entries.length > 0 && entries[0].target === fileListEl) {\n                this.filesListWidth = entries[0].contentRect.width;\n            }\n        });\n        // @ts-expect-error The resize observer was attached right before to the this object\n        this.$resizeObserver.observe(fileListEl);\n    },\n    beforeDestroy() {\n        // @ts-expect-error mounted must have been called before the destroy, so the resize\n        this.$resizeObserver.disconnect();\n    },\n});\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BreadCrumbs.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BreadCrumbs.vue?vue&type=script&lang=ts\"","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('NcBreadcrumbs',{staticClass:\"files-list__breadcrumbs\",class:{ 'files-list__breadcrumbs--with-progress': _vm.wrapUploadProgressBar },attrs:{\"data-cy-files-content-breadcrumbs\":\"\",\"aria-label\":_vm.t('files', 'Current directory path')},scopedSlots:_vm._u([{key:\"actions\",fn:function(){return [_vm._t(\"actions\")]},proxy:true}],null,true)},_vm._l((_vm.sections),function(section,index){return _c('NcBreadcrumb',_vm._b({key:section.dir,attrs:{\"dir\":\"auto\",\"to\":section.to,\"force-icon-text\":index === 0 && _vm.filesListWidth >= 486,\"title\":_vm.titleForSection(index, section),\"aria-description\":_vm.ariaForSection(section)},on:{\"drop\":function($event){return _vm.onDrop($event, section.dir)}},nativeOn:{\"click\":function($event){return _vm.onClick(section.to)},\"dragover\":function($event){return _vm.onDragOver($event, section.dir)}},scopedSlots:_vm._u([(index === 0)?{key:\"icon\",fn:function(){return [_c('NcIconSvgWrapper',{attrs:{\"size\":20,\"svg\":_vm.viewIcon}})]},proxy:true}:null],null,true)},'NcBreadcrumb',section,false))}),1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n      import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n      import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n      import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n      import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n      import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n      import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n      import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BreadCrumbs.vue?vue&type=style&index=0&id=2711da2a&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=2711da2a&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=2711da2a&scoped=true\"\nimport script from \"./BreadCrumbs.vue?vue&type=script&lang=ts\"\nexport * from \"./BreadCrumbs.vue?vue&type=script&lang=ts\"\nimport style0 from \"./BreadCrumbs.vue?vue&type=style&index=0&id=2711da2a&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  \"2711da2a\",\n  null\n  \n)\n\nexport default component.exports","/**\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { FileType } from '@nextcloud/files';\nimport { translate as t, translatePlural as n } from '@nextcloud/l10n';\n/**\n * Extract dir and name from file path\n *\n * @param {string} path the full path\n * @return {string[]} [dirPath, fileName]\n */\nexport const extractFilePaths = function (path) {\n    const pathSections = path.split('/');\n    const fileName = pathSections[pathSections.length - 1];\n    const dirPath = pathSections.slice(0, pathSections.length - 1).join('/');\n    return [dirPath, fileName];\n};\n/**\n * Generate a translated summary of an array of nodes\n * @param {Node[]} nodes the nodes to summarize\n * @return {string}\n */\nexport const getSummaryFor = (nodes) => {\n    const fileCount = nodes.filter(node => node.type === FileType.File).length;\n    const folderCount = nodes.filter(node => node.type === FileType.Folder).length;\n    if (fileCount === 0) {\n        return n('files', '{folderCount} folder', '{folderCount} folders', folderCount, { folderCount });\n    }\n    else if (folderCount === 0) {\n        return n('files', '{fileCount} file', '{fileCount} files', fileCount, { fileCount });\n    }\n    if (fileCount === 1) {\n        return n('files', '1 file and {folderCount} folder', '1 file and {folderCount} folders', folderCount, { folderCount });\n    }\n    if (folderCount === 1) {\n        return n('files', '{fileCount} file and 1 folder', '{fileCount} files and 1 folder', fileCount, { fileCount });\n    }\n    return t('files', '{fileCount} files and {folderCount} folders', { fileCount, folderCount });\n};\n","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('tr',_vm._g({staticClass:\"files-list__row\",class:{\n\t\t'files-list__row--dragover': _vm.dragover,\n\t\t'files-list__row--loading': _vm.isLoading,\n\t\t'files-list__row--active': _vm.isActive,\n\t},attrs:{\"data-cy-files-list-row\":\"\",\"data-cy-files-list-row-fileid\":_vm.fileid,\"data-cy-files-list-row-name\":_vm.source.basename,\"draggable\":_vm.canDrag}},_vm.rowListeners),[(_vm.isFailedSource)?_c('span',{staticClass:\"files-list__row--failed\"}):_vm._e(),_vm._v(\" \"),_c('FileEntryCheckbox',{attrs:{\"fileid\":_vm.fileid,\"is-loading\":_vm.isLoading,\"nodes\":_vm.nodes,\"source\":_vm.source}}),_vm._v(\" \"),_c('td',{staticClass:\"files-list__row-name\",attrs:{\"data-cy-files-list-row-name\":\"\"}},[_c('FileEntryPreview',{ref:\"preview\",attrs:{\"source\":_vm.source,\"dragover\":_vm.dragover},nativeOn:{\"auxclick\":function($event){return _vm.execDefaultAction.apply(null, arguments)},\"click\":function($event){return _vm.execDefaultAction.apply(null, arguments)}}}),_vm._v(\" \"),_c('FileEntryName',{ref:\"name\",attrs:{\"basename\":_vm.basename,\"extension\":_vm.extension,\"files-list-width\":_vm.filesListWidth,\"nodes\":_vm.nodes,\"source\":_vm.source},nativeOn:{\"auxclick\":function($event){return _vm.execDefaultAction.apply(null, arguments)},\"click\":function($event){return _vm.execDefaultAction.apply(null, arguments)}}})],1),_vm._v(\" \"),_c('FileEntryActions',{directives:[{name:\"show\",rawName:\"v-show\",value:(!_vm.isRenamingSmallScreen),expression:\"!isRenamingSmallScreen\"}],ref:\"actions\",class:`files-list__row-actions-${_vm.uniqueId}`,attrs:{\"files-list-width\":_vm.filesListWidth,\"loading\":_vm.loading,\"opened\":_vm.openedMenu,\"source\":_vm.source},on:{\"update:loading\":function($event){_vm.loading=$event},\"update:opened\":function($event){_vm.openedMenu=$event}}}),_vm._v(\" \"),(!_vm.compact && _vm.isSizeAvailable)?_c('td',{staticClass:\"files-list__row-size\",style:(_vm.sizeOpacity),attrs:{\"data-cy-files-list-row-size\":\"\"},on:{\"click\":_vm.openDetailsIfAvailable}},[_c('span',[_vm._v(_vm._s(_vm.size))])]):_vm._e(),_vm._v(\" \"),(!_vm.compact && _vm.isMtimeAvailable)?_c('td',{staticClass:\"files-list__row-mtime\",style:(_vm.mtimeOpacity),attrs:{\"data-cy-files-list-row-mtime\":\"\"},on:{\"click\":_vm.openDetailsIfAvailable}},[(_vm.source.mtime)?_c('NcDateTime',{attrs:{\"timestamp\":_vm.source.mtime,\"ignore-seconds\":true}}):_vm._e()],1):_vm._e(),_vm._v(\" \"),_vm._l((_vm.columns),function(column){return _c('td',{key:column.id,staticClass:\"files-list__row-column-custom\",class:`files-list__row-${_vm.currentView?.id}-${column.id}`,attrs:{\"data-cy-files-list-row-column-custom\":column.id},on:{\"click\":_vm.openDetailsIfAvailable}},[_c('CustomElementRender',{attrs:{\"current-view\":_vm.currentView,\"render\":column.render,\"source\":_vm.source}})],1)})],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { defineStore } from 'pinia';\nexport const useActionsMenuStore = defineStore('actionsmenu', {\n    state: () => ({\n        opened: null,\n    }),\n});\n","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { defineStore } from 'pinia';\nimport { subscribe } from '@nextcloud/event-bus';\nexport const useRenamingStore = function (...args) {\n    const store = defineStore('renaming', {\n        state: () => ({\n            renamingNode: undefined,\n            newName: '',\n        }),\n    });\n    const renamingStore = store(...args);\n    // Make sure we only register the listeners once\n    if (!renamingStore._initialized) {\n        subscribe('files:node:rename', function (node) {\n            renamingStore.renamingNode = node;\n            renamingStore.newName = node.basename;\n        });\n        renamingStore._initialized = true;\n    }\n    return renamingStore;\n};\n","<template>\n  <span v-bind=\"$attrs\"\n        :aria-hidden=\"title ? null : true\"\n        :aria-label=\"title\"\n        class=\"material-design-icon file-multiple-icon\"\n        role=\"img\"\n        @click=\"$emit('click', $event)\">\n    <svg :fill=\"fillColor\"\n         class=\"material-design-icon__svg\"\n         :width=\"size\"\n         :height=\"size\"\n         viewBox=\"0 0 24 24\">\n      <path d=\"M15,7H20.5L15,1.5V7M8,0H16L22,6V18A2,2 0 0,1 20,20H8C6.89,20 6,19.1 6,18V2A2,2 0 0,1 8,0M4,4V22H20V24H4A2,2 0 0,1 2,22V4H4Z\">\n        <title v-if=\"title\">{{ title }}</title>\n      </path>\n    </svg>\n  </span>\n</template>\n\n<script>\nexport default {\n  name: \"FileMultipleIcon\",\n  emits: ['click'],\n  props: {\n    title: {\n      type: String,\n    },\n    fillColor: {\n      type: String,\n      default: \"currentColor\"\n    },\n    size: {\n      type: Number,\n      default: 24\n    }\n  }\n}\n</script>","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./FileMultiple.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./FileMultiple.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./FileMultiple.vue?vue&type=template&id=27b46e04\"\nimport script from \"./FileMultiple.vue?vue&type=script&lang=js\"\nexport * from \"./FileMultiple.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon file-multiple-icon\",attrs:{\"aria-hidden\":_vm.title ? null : true,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M15,7H20.5L15,1.5V7M8,0H16L22,6V18A2,2 0 0,1 20,20H8C6.89,20 6,19.1 6,18V2A2,2 0 0,1 8,0M4,4V22H20V24H4A2,2 0 0,1 2,22V4H4Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',{staticClass:\"files-list-drag-image\"},[_c('span',{staticClass:\"files-list-drag-image__icon\"},[_c('span',{ref:\"previewImg\"}),_vm._v(\" \"),(_vm.isSingleFolder)?_c('FolderIcon'):_c('FileMultipleIcon')],1),_vm._v(\" \"),_c('span',{staticClass:\"files-list-drag-image__name\"},[_vm._v(_vm._s(_vm.name))])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DragAndDropPreview.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DragAndDropPreview.vue?vue&type=script&lang=ts\"","\n      import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n      import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n      import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n      import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n      import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n      import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n      import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DragAndDropPreview.vue?vue&type=style&index=0&id=775162a4&prod&lang=scss\";\n      \n      \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n      options.insert = insertFn.bind(null, \"head\");\n    \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DragAndDropPreview.vue?vue&type=style&index=0&id=775162a4&prod&lang=scss\";\n       export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./DragAndDropPreview.vue?vue&type=template&id=775162a4\"\nimport script from \"./DragAndDropPreview.vue?vue&type=script&lang=ts\"\nexport * from \"./DragAndDropPreview.vue?vue&type=script&lang=ts\"\nimport style0 from \"./DragAndDropPreview.vue?vue&type=style&index=0&id=775162a4&prod&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","import DragAndDropPreview from '../components/DragAndDropPreview.vue';\nimport Vue from 'vue';\nconst Preview = Vue.extend(DragAndDropPreview);\nlet preview;\nexport const getDragAndDropPreview = async (nodes) => {\n    return new Promise((resolve) => {\n        if (!preview) {\n            preview = new Preview().$mount();\n            document.body.appendChild(preview.$el);\n        }\n        preview.update(nodes);\n        preview.$on('loaded', () => {\n            resolve(preview.$el);\n            preview.$off('loaded');\n        });\n    });\n};\n","/**\n * SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { showError } from '@nextcloud/dialogs';\nimport { FileType, Permission, Folder, File as NcFile, NodeStatus, Node } from '@nextcloud/files';\nimport { translate as t } from '@nextcloud/l10n';\nimport { generateUrl } from '@nextcloud/router';\nimport { vOnClickOutside } from '@vueuse/components';\nimport { extname } from 'path';\nimport Vue, { defineComponent } from 'vue';\nimport { action as sidebarAction } from '../actions/sidebarAction.ts';\nimport { getDragAndDropPreview } from '../utils/dragUtils.ts';\nimport { hashCode } from '../utils/hashUtils.ts';\nimport { dataTransferToFileTree, onDropExternalFiles, onDropInternalFiles } from '../services/DropService.ts';\nimport logger from '../logger.js';\nimport FileEntryActions from '../components/FileEntry/FileEntryActions.vue';\nVue.directive('onClickOutside', vOnClickOutside);\nexport default defineComponent({\n    props: {\n        source: {\n            type: [Folder, NcFile, Node],\n            required: true,\n        },\n        nodes: {\n            type: Array,\n            required: true,\n        },\n        filesListWidth: {\n            type: Number,\n            default: 0,\n        },\n        isMtimeAvailable: {\n            type: Boolean,\n            default: false,\n        },\n        compact: {\n            type: Boolean,\n            default: false,\n        },\n    },\n    data() {\n        return {\n            loading: '',\n            dragover: false,\n            gridMode: false,\n        };\n    },\n    computed: {\n        currentDir() {\n            // Remove any trailing slash but leave root slash\n            return (this.$route.query?.dir?.toString() || '/').replace(/^(.+)\\/$/, '$1');\n        },\n        currentFileId() {\n            return this.$route.params?.fileid || this.$route.query?.fileid || null;\n        },\n        fileid() {\n            return this.source.fileid ?? 0;\n        },\n        uniqueId() {\n            return hashCode(this.source.source);\n        },\n        isLoading() {\n            return this.source.status === NodeStatus.LOADING;\n        },\n        /**\n         * The display name of the current node\n         * Either the nodes filename or a custom display name (e.g. for shares)\n         */\n        displayName() {\n            return this.source.displayname;\n        },\n        /**\n         * The display name without extension\n         */\n        basename() {\n            if (this.extension === '') {\n                return this.displayName;\n            }\n            return this.displayName.slice(0, 0 - this.extension.length);\n        },\n        /**\n         * The extension of the file\n         */\n        extension() {\n            if (this.source.type === FileType.Folder) {\n                return '';\n            }\n            return extname(this.displayName);\n        },\n        draggingFiles() {\n            return this.draggingStore.dragging;\n        },\n        selectedFiles() {\n            return this.selectionStore.selected;\n        },\n        isSelected() {\n            return this.selectedFiles.includes(this.source.source);\n        },\n        isRenaming() {\n            return this.renamingStore.renamingNode === this.source;\n        },\n        isRenamingSmallScreen() {\n            return this.isRenaming && this.filesListWidth < 512;\n        },\n        isActive() {\n            return String(this.fileid) === String(this.currentFileId);\n        },\n        /**\n         * Check if the source is in a failed state after an API request\n         */\n        isFailedSource() {\n            return this.source.status === NodeStatus.FAILED;\n        },\n        canDrag() {\n            if (this.isRenaming) {\n                return false;\n            }\n            const canDrag = (node) => {\n                return (node?.permissions & Permission.UPDATE) !== 0;\n            };\n            // If we're dragging a selection, we need to check all files\n            if (this.selectedFiles.length > 0) {\n                const nodes = this.selectedFiles.map(source => this.filesStore.getNode(source));\n                return nodes.every(canDrag);\n            }\n            return canDrag(this.source);\n        },\n        canDrop() {\n            if (this.source.type !== FileType.Folder) {\n                return false;\n            }\n            // If the current folder is also being dragged, we can't drop it on itself\n            if (this.draggingFiles.includes(this.source.source)) {\n                return false;\n            }\n            return (this.source.permissions & Permission.CREATE) !== 0;\n        },\n        openedMenu: {\n            get() {\n                return this.actionsMenuStore.opened === this.uniqueId.toString();\n            },\n            set(opened) {\n                this.actionsMenuStore.opened = opened ? this.uniqueId.toString() : null;\n            },\n        },\n        mtimeOpacity() {\n            const maxOpacityTime = 31 * 24 * 60 * 60 * 1000; // 31 days\n            const mtime = this.source.mtime?.getTime?.();\n            if (!mtime) {\n                return {};\n            }\n            // 1 = today, 0 = 31 days ago\n            const ratio = Math.round(Math.min(100, 100 * (maxOpacityTime - (Date.now() - mtime)) / maxOpacityTime));\n            if (ratio < 0) {\n                return {};\n            }\n            return {\n                color: `color-mix(in srgb, var(--color-main-text) ${ratio}%, var(--color-text-maxcontrast))`,\n            };\n        },\n    },\n    watch: {\n        /**\n         * When the source changes, reset the preview\n         * and fetch the new one.\n         * @param a\n         * @param b\n         */\n        source(a, b) {\n            if (a.source !== b.source) {\n                this.resetState();\n            }\n        },\n    },\n    beforeDestroy() {\n        this.resetState();\n    },\n    methods: {\n        resetState() {\n            // Reset loading state\n            this.loading = '';\n            // Reset the preview state\n            this.$refs?.preview?.reset?.();\n            // Close menu\n            this.openedMenu = false;\n        },\n        // Open the actions menu on right click\n        onRightClick(event) {\n            // If already opened, fallback to default browser\n            if (this.openedMenu) {\n                return;\n            }\n            // The grid mode is compact enough to not care about\n            // the actions menu mouse position\n            if (!this.gridMode) {\n                // Actions menu is contained within the app content\n                const root = this.$el?.closest('main.app-content');\n                const contentRect = root.getBoundingClientRect();\n                // Using Math.min/max to prevent the menu from going out of the AppContent\n                // 200 = max width of the menu\n                root.style.setProperty('--mouse-pos-x', Math.max(0, event.clientX - contentRect.left - 200) + 'px');\n                root.style.setProperty('--mouse-pos-y', Math.max(0, event.clientY - contentRect.top) + 'px');\n            }\n            else {\n                // Reset any right menu position potentially set\n                const root = this.$el?.closest('main.app-content');\n                root.style.removeProperty('--mouse-pos-x');\n                root.style.removeProperty('--mouse-pos-y');\n            }\n            // If the clicked row is in the selection, open global menu\n            const isMoreThanOneSelected = this.selectedFiles.length > 1;\n            this.actionsMenuStore.opened = this.isSelected && isMoreThanOneSelected ? 'global' : this.uniqueId.toString();\n            // Prevent any browser defaults\n            event.preventDefault();\n            event.stopPropagation();\n        },\n        execDefaultAction(event) {\n            // Ignore click if we are renaming\n            if (this.isRenaming) {\n                return;\n            }\n            // Ignore right click.\n            if (event.button > 1) {\n                return;\n            }\n            // if ctrl+click or middle mouse button, open in new tab\n            if (event.ctrlKey || event.metaKey || event.button === 1) {\n                event.preventDefault();\n                window.open(generateUrl('/f/{fileId}', { fileId: this.fileid }));\n                return false;\n            }\n            const actions = this.$refs.actions;\n            actions.execDefaultAction(event);\n        },\n        openDetailsIfAvailable(event) {\n            event.preventDefault();\n            event.stopPropagation();\n            if (sidebarAction?.enabled?.([this.source], this.currentView)) {\n                sidebarAction.exec(this.source, this.currentView, this.currentDir);\n            }\n        },\n        onDragOver(event) {\n            this.dragover = this.canDrop;\n            if (!this.canDrop) {\n                event.dataTransfer.dropEffect = 'none';\n                return;\n            }\n            // Handle copy/move drag and drop\n            if (event.ctrlKey) {\n                event.dataTransfer.dropEffect = 'copy';\n            }\n            else {\n                event.dataTransfer.dropEffect = 'move';\n            }\n        },\n        onDragLeave(event) {\n            // Counter bubbling, make sure we're ending the drag\n            // only when we're leaving the current element\n            const currentTarget = event.currentTarget;\n            if (currentTarget?.contains(event.relatedTarget)) {\n                return;\n            }\n            this.dragover = false;\n        },\n        async onDragStart(event) {\n            event.stopPropagation();\n            if (!this.canDrag || !this.fileid) {\n                event.preventDefault();\n                event.stopPropagation();\n                return;\n            }\n            logger.debug('Drag started', { event });\n            // Make sure that we're not dragging a file like the preview\n            event.dataTransfer?.clearData?.();\n            // Reset any renaming\n            this.renamingStore.$reset();\n            // Dragging set of files, if we're dragging a file\n            // that is already selected, we use the entire selection\n            if (this.selectedFiles.includes(this.source.source)) {\n                this.draggingStore.set(this.selectedFiles);\n            }\n            else {\n                this.draggingStore.set([this.source.source]);\n            }\n            const nodes = this.draggingStore.dragging\n                .map(source => this.filesStore.getNode(source));\n            const image = await getDragAndDropPreview(nodes);\n            event.dataTransfer?.setDragImage(image, -10, -10);\n        },\n        onDragEnd() {\n            this.draggingStore.reset();\n            this.dragover = false;\n            logger.debug('Drag ended');\n        },\n        async onDrop(event) {\n            // skip if native drop like text drag and drop from files names\n            if (!this.draggingFiles && !event.dataTransfer?.items?.length) {\n                return;\n            }\n            event.preventDefault();\n            event.stopPropagation();\n            // Caching the selection\n            const selection = this.draggingFiles;\n            const items = [...event.dataTransfer?.items || []];\n            // We need to process the dataTransfer ASAP before the\n            // browser clears it. This is why we cache the items too.\n            const fileTree = await dataTransferToFileTree(items);\n            // We might not have the target directory fetched yet\n            const contents = await this.currentView?.getContents(this.source.path);\n            const folder = contents?.folder;\n            if (!folder) {\n                showError(this.t('files', 'Target folder does not exist any more'));\n                return;\n            }\n            // If another button is pressed, cancel it. This\n            // allows cancelling the drag with the right click.\n            if (!this.canDrop || event.button) {\n                return;\n            }\n            const isCopy = event.ctrlKey;\n            this.dragover = false;\n            logger.debug('Dropped', { event, folder, selection, fileTree });\n            // Check whether we're uploading files\n            if (fileTree.contents.length > 0) {\n                await onDropExternalFiles(fileTree, folder, contents.contents);\n                return;\n            }\n            // Else we're moving/copying files\n            const nodes = selection.map(source => this.filesStore.getNode(source));\n            await onDropInternalFiles(nodes, folder, contents.contents, isCopy);\n            // Reset selection after we dropped the files\n            // if the dropped files are within the selection\n            if (selection.some(source => this.selectedFiles.includes(source))) {\n                logger.debug('Dropped selection, resetting select store...');\n                this.selectionStore.reset();\n            }\n        },\n        t,\n    },\n});\n","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/**\n * Simple non-secure hashing function similar to Java's `hashCode`\n * @param str The string to hash\n * @return {number} a non secure hash of the string\n */\nexport const hashCode = function (str) {\n    let hash = 0;\n    for (let i = 0; i < str.length; i++) {\n        hash = ((hash << 5) - hash + str.charCodeAt(i)) | 0;\n    }\n    return (hash >>> 0);\n};\n","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span')\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CustomElementRender.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CustomElementRender.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./CustomElementRender.vue?vue&type=template&id=7b30c709\"\nimport script from \"./CustomElementRender.vue?vue&type=script&lang=ts\"\nexport * from \"./CustomElementRender.vue?vue&type=script&lang=ts\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('td',{staticClass:\"files-list__row-actions\",attrs:{\"data-cy-files-list-row-actions\":\"\"}},[_vm._l((_vm.enabledRenderActions),function(action){return _c('CustomElementRender',{key:action.id,staticClass:\"files-list__row-action--inline\",class:'files-list__row-action-' + action.id,attrs:{\"current-view\":_vm.currentView,\"render\":action.renderInline,\"source\":_vm.source}})}),_vm._v(\" \"),_c('NcActions',{ref:\"actionsMenu\",attrs:{\"boundaries-element\":_vm.getBoundariesElement,\"container\":_vm.getBoundariesElement,\"force-name\":true,\"type\":\"tertiary\",\"force-menu\":_vm.enabledInlineActions.length === 0 /* forceMenu only if no inline actions */,\"inline\":_vm.enabledInlineActions.length,\"open\":_vm.openedMenu},on:{\"update:open\":function($event){_vm.openedMenu=$event},\"close\":function($event){_vm.openedSubmenu = null}}},[_vm._l((_vm.enabledMenuActions),function(action){return _c('NcActionButton',{key:action.id,ref:`action-${action.id}`,refInFor:true,class:{\n\t\t\t\t[`files-list__row-action-${action.id}`]: true,\n\t\t\t\t[`files-list__row-action--menu`]: _vm.isMenu(action.id)\n\t\t\t},attrs:{\"close-after-click\":!_vm.isMenu(action.id),\"data-cy-files-list-row-action\":action.id,\"is-menu\":_vm.isMenu(action.id),\"title\":action.title?.([_vm.source], _vm.currentView)},on:{\"click\":function($event){return _vm.onActionClick(action)}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [(_vm.loading === action.id)?_c('NcLoadingIcon',{attrs:{\"size\":18}}):_c('NcIconSvgWrapper',{attrs:{\"svg\":action.iconSvgInline([_vm.source], _vm.currentView)}})]},proxy:true}],null,true)},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.mountType === 'shared' && action.id === 'sharing-status' ? '' : _vm.actionDisplayName(action))+\"\\n\\t\\t\")])}),_vm._v(\" \"),(_vm.openedSubmenu && _vm.enabledSubmenuActions[_vm.openedSubmenu?.id])?[_c('NcActionButton',{staticClass:\"files-list__row-action-back\",on:{\"click\":function($event){return _vm.onBackToMenuClick(_vm.openedSubmenu)}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('ArrowLeftIcon')]},proxy:true}],null,false,3001860362)},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.actionDisplayName(_vm.openedSubmenu))+\"\\n\\t\\t\\t\")]),_vm._v(\" \"),_c('NcActionSeparator'),_vm._v(\" \"),_vm._l((_vm.enabledSubmenuActions[_vm.openedSubmenu?.id]),function(action){return _c('NcActionButton',{key:action.id,staticClass:\"files-list__row-action--submenu\",class:`files-list__row-action-${action.id}`,attrs:{\"close-after-click\":\"\",\"data-cy-files-list-row-action\":action.id,\"title\":action.title?.([_vm.source], _vm.currentView)},on:{\"click\":function($event){return _vm.onActionClick(action)}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [(_vm.loading === action.id)?_c('NcLoadingIcon',{attrs:{\"size\":18}}):_c('NcIconSvgWrapper',{attrs:{\"svg\":action.iconSvgInline([_vm.source], _vm.currentView)}})]},proxy:true}],null,true)},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.actionDisplayName(action))+\"\\n\\t\\t\\t\")])})]:_vm._e()],2)],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <span v-bind=\"$attrs\"\n        :aria-hidden=\"title ? null : true\"\n        :aria-label=\"title\"\n        class=\"material-design-icon arrow-left-icon\"\n        role=\"img\"\n        @click=\"$emit('click', $event)\">\n    <svg :fill=\"fillColor\"\n         class=\"material-design-icon__svg\"\n         :width=\"size\"\n         :height=\"size\"\n         viewBox=\"0 0 24 24\">\n      <path d=\"M20,11V13H8L13.5,18.5L12.08,19.92L4.16,12L12.08,4.08L13.5,5.5L8,11H20Z\">\n        <title v-if=\"title\">{{ title }}</title>\n      </path>\n    </svg>\n  </span>\n</template>\n\n<script>\nexport default {\n  name: \"ArrowLeftIcon\",\n  emits: ['click'],\n  props: {\n    title: {\n      type: String,\n    },\n    fillColor: {\n      type: String,\n      default: \"currentColor\"\n    },\n    size: {\n      type: Number,\n      default: 24\n    }\n  }\n}\n</script>","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./ArrowLeft.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./ArrowLeft.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ArrowLeft.vue?vue&type=template&id=214c9a86\"\nimport script from \"./ArrowLeft.vue?vue&type=script&lang=js\"\nexport * from \"./ArrowLeft.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon arrow-left-icon\",attrs:{\"aria-hidden\":_vm.title ? null : true,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M20,11V13H8L13.5,18.5L12.08,19.92L4.16,12L12.08,4.08L13.5,5.5L8,11H20Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileEntryActions.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileEntryActions.vue?vue&type=script&lang=ts\"","\n      import API from \"!../../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n      import domAPI from \"!../../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n      import insertFn from \"!../../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n      import setAttributes from \"!../../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n      import insertStyleElement from \"!../../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n      import styleTagTransformFn from \"!../../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n      import content, * as namedExport from \"!!../../../../../node_modules/css-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileEntryActions.vue?vue&type=style&index=0&id=801e4784&prod&lang=scss\";\n      \n      \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n      options.insert = insertFn.bind(null, \"head\");\n    \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../../node_modules/css-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileEntryActions.vue?vue&type=style&index=0&id=801e4784&prod&lang=scss\";\n       export default content && content.locals ? content.locals : undefined;\n","\n      import API from \"!../../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n      import domAPI from \"!../../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n      import insertFn from \"!../../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n      import setAttributes from \"!../../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n      import insertStyleElement from \"!../../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n      import styleTagTransformFn from \"!../../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n      import content, * as namedExport from \"!!../../../../../node_modules/css-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileEntryActions.vue?vue&type=style&index=1&id=801e4784&prod&lang=scss&scoped=true\";\n      \n      \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n      options.insert = insertFn.bind(null, \"head\");\n    \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../../node_modules/css-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileEntryActions.vue?vue&type=style&index=1&id=801e4784&prod&lang=scss&scoped=true\";\n       export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./FileEntryActions.vue?vue&type=template&id=801e4784&scoped=true\"\nimport script from \"./FileEntryActions.vue?vue&type=script&lang=ts\"\nexport * from \"./FileEntryActions.vue?vue&type=script&lang=ts\"\nimport style0 from \"./FileEntryActions.vue?vue&type=style&index=0&id=801e4784&prod&lang=scss\"\nimport style1 from \"./FileEntryActions.vue?vue&type=style&index=1&id=801e4784&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"801e4784\",\n  null\n  \n)\n\nexport default component.exports","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileEntryCheckbox.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileEntryCheckbox.vue?vue&type=script&lang=ts\"","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('td',{staticClass:\"files-list__row-checkbox\",on:{\"keyup\":function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"esc\",27,$event.key,[\"Esc\",\"Escape\"]))return null;if($event.ctrlKey||$event.shiftKey||$event.altKey||$event.metaKey)return null;return _vm.resetSelection.apply(null, arguments)}}},[(_vm.isLoading)?_c('NcLoadingIcon'):_c('NcCheckboxRadioSwitch',{attrs:{\"aria-label\":_vm.ariaLabel,\"checked\":_vm.isSelected},on:{\"update:checked\":_vm.onSelectionChange}})],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { defineStore } from 'pinia';\nimport Vue from 'vue';\n/**\n * Observe various events and save the current\n * special keys states. Useful for checking the\n * current status of a key when executing a method.\n * @param {...any} args\n */\nexport const useKeyboardStore = function (...args) {\n    const store = defineStore('keyboard', {\n        state: () => ({\n            altKey: false,\n            ctrlKey: false,\n            metaKey: false,\n            shiftKey: false,\n        }),\n        actions: {\n            onEvent(event) {\n                if (!event) {\n                    event = window.event;\n                }\n                Vue.set(this, 'altKey', !!event.altKey);\n                Vue.set(this, 'ctrlKey', !!event.ctrlKey);\n                Vue.set(this, 'metaKey', !!event.metaKey);\n                Vue.set(this, 'shiftKey', !!event.shiftKey);\n            },\n        },\n    });\n    const keyboardStore = store(...args);\n    // Make sure we only register the listeners once\n    if (!keyboardStore._initialized) {\n        window.addEventListener('keydown', keyboardStore.onEvent);\n        window.addEventListener('keyup', keyboardStore.onEvent);\n        window.addEventListener('mousemove', keyboardStore.onEvent);\n        keyboardStore._initialized = true;\n    }\n    return keyboardStore;\n};\n","import { render, staticRenderFns } from \"./FileEntryCheckbox.vue?vue&type=template&id=20c5f7c8\"\nimport script from \"./FileEntryCheckbox.vue?vue&type=script&lang=ts\"\nexport * from \"./FileEntryCheckbox.vue?vue&type=script&lang=ts\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return (_vm.isRenaming)?_c('form',{directives:[{name:\"on-click-outside\",rawName:\"v-on-click-outside\",value:(_vm.onRename),expression:\"onRename\"}],ref:\"renameForm\",staticClass:\"files-list__row-rename\",attrs:{\"aria-label\":_vm.t('files', 'Rename file')},on:{\"submit\":function($event){$event.preventDefault();$event.stopPropagation();return _vm.onRename.apply(null, arguments)}}},[_c('NcTextField',{ref:\"renameInput\",attrs:{\"label\":_vm.renameLabel,\"autofocus\":true,\"minlength\":1,\"required\":true,\"value\":_vm.newName,\"enterkeyhint\":\"done\"},on:{\"update:value\":function($event){_vm.newName=$event},\"keyup\":function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"esc\",27,$event.key,[\"Esc\",\"Escape\"]))return null;return _vm.stopRenaming.apply(null, arguments)}}})],1):_c(_vm.linkTo.is,_vm._b({ref:\"basename\",tag:\"component\",staticClass:\"files-list__row-name-link\",attrs:{\"aria-hidden\":_vm.isRenaming,\"data-cy-files-list-row-name-link\":\"\"}},'component',_vm.linkTo.params,false),[_c('span',{staticClass:\"files-list__row-name-text\"},[_c('span',{staticClass:\"files-list__row-name-\",domProps:{\"textContent\":_vm._s(_vm.basename)}}),_vm._v(\" \"),_c('span',{staticClass:\"files-list__row-name-ext\",domProps:{\"textContent\":_vm._s(_vm.extension)}})])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/*!\n * SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { InvalidFilenameError, InvalidFilenameErrorReason, validateFilename } from '@nextcloud/files';\nimport { t } from '@nextcloud/l10n';\n/**\n * Get the validity of a filename (empty if valid).\n * This can be used for `setCustomValidity` on input elements\n * @param name The filename\n * @param escape Escape the matched string in the error (only set when used in HTML)\n */\nexport function getFilenameValidity(name, escape = false) {\n    if (name.trim() === '') {\n        return t('files', 'Filename must not be empty.');\n    }\n    try {\n        validateFilename(name);\n        return '';\n    }\n    catch (error) {\n        if (!(error instanceof InvalidFilenameError)) {\n            throw error;\n        }\n        switch (error.reason) {\n            case InvalidFilenameErrorReason.Character:\n                return t('files', '\"{char}\" is not allowed inside a filename.', { char: error.segment }, undefined, { escape });\n            case InvalidFilenameErrorReason.ReservedName:\n                return t('files', '\"{segment}\" is a reserved name and not allowed for filenames.', { segment: error.segment }, undefined, { escape: false });\n            case InvalidFilenameErrorReason.Extension:\n                if (error.segment.match(/\\.[a-z]/i)) {\n                    return t('files', '\"{extension}\" is not an allowed filetype.', { extension: error.segment }, undefined, { escape: false });\n                }\n                return t('files', 'Filenames must not end with \"{extension}\".', { extension: error.segment }, undefined, { escape: false });\n            default:\n                return t('files', 'Invalid filename.');\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!./FileEntryName.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileEntryName.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./FileEntryName.vue?vue&type=template&id=6d582a79\"\nimport script from \"./FileEntryName.vue?vue&type=script&lang=ts\"\nexport * from \"./FileEntryName.vue?vue&type=script&lang=ts\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('span',{staticClass:\"files-list__row-icon\"},[(_vm.source.type === 'folder')?[(_vm.dragover)?_vm._m(0):[_vm._m(1),_vm._v(\" \"),(_vm.folderOverlay)?_c(_vm.folderOverlay,{tag:\"OverlayIcon\",staticClass:\"files-list__row-icon-overlay\"}):_vm._e()]]:(_vm.previewUrl && _vm.backgroundFailed !== true)?_c('img',{ref:\"previewImg\",staticClass:\"files-list__row-icon-preview\",class:{'files-list__row-icon-preview--loaded': _vm.backgroundFailed === false},attrs:{\"alt\":\"\",\"loading\":\"lazy\",\"src\":_vm.previewUrl},on:{\"error\":_vm.onBackgroundError,\"load\":function($event){_vm.backgroundFailed = false}}}):_vm._m(2),_vm._v(\" \"),(_vm.isFavorite)?_c('span',{staticClass:\"files-list__row-icon-favorite\"},[_vm._m(3)],1):_vm._e(),_vm._v(\" \"),(_vm.fileOverlay)?_c(_vm.fileOverlay,{tag:\"OverlayIcon\",staticClass:\"files-list__row-icon-overlay files-list__row-icon-overlay--file\"}):_vm._e()],2)\n}\nvar staticRenderFns = [function (){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('FolderOpenIcon')\n},function (){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('FolderIcon')\n},function (){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('FileIcon')\n},function (){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('FavoriteIcon')\n}]\n\nexport { render, staticRenderFns }","<template>\n  <span v-bind=\"$attrs\"\n        :aria-hidden=\"title ? null : true\"\n        :aria-label=\"title\"\n        class=\"material-design-icon file-icon\"\n        role=\"img\"\n        @click=\"$emit('click', $event)\">\n    <svg :fill=\"fillColor\"\n         class=\"material-design-icon__svg\"\n         :width=\"size\"\n         :height=\"size\"\n         viewBox=\"0 0 24 24\">\n      <path d=\"M13,9V3.5L18.5,9M6,2C4.89,2 4,2.89 4,4V20A2,2 0 0,0 6,22H18A2,2 0 0,0 20,20V8L14,2H6Z\">\n        <title v-if=\"title\">{{ title }}</title>\n      </path>\n    </svg>\n  </span>\n</template>\n\n<script>\nexport default {\n  name: \"FileIcon\",\n  emits: ['click'],\n  props: {\n    title: {\n      type: String,\n    },\n    fillColor: {\n      type: String,\n      default: \"currentColor\"\n    },\n    size: {\n      type: Number,\n      default: 24\n    }\n  }\n}\n</script>","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./File.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./File.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./File.vue?vue&type=template&id=e3c8d598\"\nimport script from \"./File.vue?vue&type=script&lang=js\"\nexport * from \"./File.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon file-icon\",attrs:{\"aria-hidden\":_vm.title ? null : true,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M13,9V3.5L18.5,9M6,2C4.89,2 4,2.89 4,4V20A2,2 0 0,0 6,22H18A2,2 0 0,0 20,20V8L14,2H6Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./FolderOpen.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./FolderOpen.vue?vue&type=script&lang=js\"","<template>\n  <span v-bind=\"$attrs\"\n        :aria-hidden=\"title ? null : true\"\n        :aria-label=\"title\"\n        class=\"material-design-icon folder-open-icon\"\n        role=\"img\"\n        @click=\"$emit('click', $event)\">\n    <svg :fill=\"fillColor\"\n         class=\"material-design-icon__svg\"\n         :width=\"size\"\n         :height=\"size\"\n         viewBox=\"0 0 24 24\">\n      <path d=\"M19,20H4C2.89,20 2,19.1 2,18V6C2,4.89 2.89,4 4,4H10L12,6H19A2,2 0 0,1 21,8H21L4,8V18L6.14,10H23.21L20.93,18.5C20.7,19.37 19.92,20 19,20Z\">\n        <title v-if=\"title\">{{ title }}</title>\n      </path>\n    </svg>\n  </span>\n</template>\n\n<script>\nexport default {\n  name: \"FolderOpenIcon\",\n  emits: ['click'],\n  props: {\n    title: {\n      type: String,\n    },\n    fillColor: {\n      type: String,\n      default: \"currentColor\"\n    },\n    size: {\n      type: Number,\n      default: 24\n    }\n  }\n}\n</script>","import { render, staticRenderFns } from \"./FolderOpen.vue?vue&type=template&id=79cee0a4\"\nimport script from \"./FolderOpen.vue?vue&type=script&lang=js\"\nexport * from \"./FolderOpen.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon folder-open-icon\",attrs:{\"aria-hidden\":_vm.title ? null : true,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M19,20H4C2.89,20 2,19.1 2,18V6C2,4.89 2.89,4 4,4H10L12,6H19A2,2 0 0,1 21,8H21L4,8V18L6.14,10H23.21L20.93,18.5C20.7,19.37 19.92,20 19,20Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./Key.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Key.vue?vue&type=script&lang=js\"","<template>\n  <span v-bind=\"$attrs\"\n        :aria-hidden=\"title ? null : true\"\n        :aria-label=\"title\"\n        class=\"material-design-icon key-icon\"\n        role=\"img\"\n        @click=\"$emit('click', $event)\">\n    <svg :fill=\"fillColor\"\n         class=\"material-design-icon__svg\"\n         :width=\"size\"\n         :height=\"size\"\n         viewBox=\"0 0 24 24\">\n      <path d=\"M7 14C5.9 14 5 13.1 5 12S5.9 10 7 10 9 10.9 9 12 8.1 14 7 14M12.6 10C11.8 7.7 9.6 6 7 6C3.7 6 1 8.7 1 12S3.7 18 7 18C9.6 18 11.8 16.3 12.6 14H16V18H20V14H23V10H12.6Z\">\n        <title v-if=\"title\">{{ title }}</title>\n      </path>\n    </svg>\n  </span>\n</template>\n\n<script>\nexport default {\n  name: \"KeyIcon\",\n  emits: ['click'],\n  props: {\n    title: {\n      type: String,\n    },\n    fillColor: {\n      type: String,\n      default: \"currentColor\"\n    },\n    size: {\n      type: Number,\n      default: 24\n    }\n  }\n}\n</script>","import { render, staticRenderFns } from \"./Key.vue?vue&type=template&id=01a06d54\"\nimport script from \"./Key.vue?vue&type=script&lang=js\"\nexport * from \"./Key.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon key-icon\",attrs:{\"aria-hidden\":_vm.title ? null : true,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M7 14C5.9 14 5 13.1 5 12S5.9 10 7 10 9 10.9 9 12 8.1 14 7 14M12.6 10C11.8 7.7 9.6 6 7 6C3.7 6 1 8.7 1 12S3.7 18 7 18C9.6 18 11.8 16.3 12.6 14H16V18H20V14H23V10H12.6Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./Network.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Network.vue?vue&type=script&lang=js\"","<template>\n  <span v-bind=\"$attrs\"\n        :aria-hidden=\"title ? null : true\"\n        :aria-label=\"title\"\n        class=\"material-design-icon network-icon\"\n        role=\"img\"\n        @click=\"$emit('click', $event)\">\n    <svg :fill=\"fillColor\"\n         class=\"material-design-icon__svg\"\n         :width=\"size\"\n         :height=\"size\"\n         viewBox=\"0 0 24 24\">\n      <path d=\"M17,3A2,2 0 0,1 19,5V15A2,2 0 0,1 17,17H13V19H14A1,1 0 0,1 15,20H22V22H15A1,1 0 0,1 14,23H10A1,1 0 0,1 9,22H2V20H9A1,1 0 0,1 10,19H11V17H7C5.89,17 5,16.1 5,15V5A2,2 0 0,1 7,3H17Z\">\n        <title v-if=\"title\">{{ title }}</title>\n      </path>\n    </svg>\n  </span>\n</template>\n\n<script>\nexport default {\n  name: \"NetworkIcon\",\n  emits: ['click'],\n  props: {\n    title: {\n      type: String,\n    },\n    fillColor: {\n      type: String,\n      default: \"currentColor\"\n    },\n    size: {\n      type: Number,\n      default: 24\n    }\n  }\n}\n</script>","import { render, staticRenderFns } from \"./Network.vue?vue&type=template&id=29f8873c\"\nimport script from \"./Network.vue?vue&type=script&lang=js\"\nexport * from \"./Network.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon network-icon\",attrs:{\"aria-hidden\":_vm.title ? null : true,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M17,3A2,2 0 0,1 19,5V15A2,2 0 0,1 17,17H13V19H14A1,1 0 0,1 15,20H22V22H15A1,1 0 0,1 14,23H10A1,1 0 0,1 9,22H2V20H9A1,1 0 0,1 10,19H11V17H7C5.89,17 5,16.1 5,15V5A2,2 0 0,1 7,3H17Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./Tag.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Tag.vue?vue&type=script&lang=js\"","<template>\n  <span v-bind=\"$attrs\"\n        :aria-hidden=\"title ? null : true\"\n        :aria-label=\"title\"\n        class=\"material-design-icon tag-icon\"\n        role=\"img\"\n        @click=\"$emit('click', $event)\">\n    <svg :fill=\"fillColor\"\n         class=\"material-design-icon__svg\"\n         :width=\"size\"\n         :height=\"size\"\n         viewBox=\"0 0 24 24\">\n      <path d=\"M5.5,7A1.5,1.5 0 0,1 4,5.5A1.5,1.5 0 0,1 5.5,4A1.5,1.5 0 0,1 7,5.5A1.5,1.5 0 0,1 5.5,7M21.41,11.58L12.41,2.58C12.05,2.22 11.55,2 11,2H4C2.89,2 2,2.89 2,4V11C2,11.55 2.22,12.05 2.59,12.41L11.58,21.41C11.95,21.77 12.45,22 13,22C13.55,22 14.05,21.77 14.41,21.41L21.41,14.41C21.78,14.05 22,13.55 22,13C22,12.44 21.77,11.94 21.41,11.58Z\">\n        <title v-if=\"title\">{{ title }}</title>\n      </path>\n    </svg>\n  </span>\n</template>\n\n<script>\nexport default {\n  name: \"TagIcon\",\n  emits: ['click'],\n  props: {\n    title: {\n      type: String,\n    },\n    fillColor: {\n      type: String,\n      default: \"currentColor\"\n    },\n    size: {\n      type: Number,\n      default: 24\n    }\n  }\n}\n</script>","import { render, staticRenderFns } from \"./Tag.vue?vue&type=template&id=75dd05e4\"\nimport script from \"./Tag.vue?vue&type=script&lang=js\"\nexport * from \"./Tag.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon tag-icon\",attrs:{\"aria-hidden\":_vm.title ? null : true,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M5.5,7A1.5,1.5 0 0,1 4,5.5A1.5,1.5 0 0,1 5.5,4A1.5,1.5 0 0,1 7,5.5A1.5,1.5 0 0,1 5.5,7M21.41,11.58L12.41,2.58C12.05,2.22 11.55,2 11,2H4C2.89,2 2,2.89 2,4V11C2,11.55 2.22,12.05 2.59,12.41L11.58,21.41C11.95,21.77 12.45,22 13,22C13.55,22 14.05,21.77 14.41,21.41L21.41,14.41C21.78,14.05 22,13.55 22,13C22,12.44 21.77,11.94 21.41,11.58Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./PlayCircle.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./PlayCircle.vue?vue&type=script&lang=js\"","<template>\n  <span v-bind=\"$attrs\"\n        :aria-hidden=\"title ? null : true\"\n        :aria-label=\"title\"\n        class=\"material-design-icon play-circle-icon\"\n        role=\"img\"\n        @click=\"$emit('click', $event)\">\n    <svg :fill=\"fillColor\"\n         class=\"material-design-icon__svg\"\n         :width=\"size\"\n         :height=\"size\"\n         viewBox=\"0 0 24 24\">\n      <path d=\"M10,16.5V7.5L16,12M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2Z\">\n        <title v-if=\"title\">{{ title }}</title>\n      </path>\n    </svg>\n  </span>\n</template>\n\n<script>\nexport default {\n  name: \"PlayCircleIcon\",\n  emits: ['click'],\n  props: {\n    title: {\n      type: String,\n    },\n    fillColor: {\n      type: String,\n      default: \"currentColor\"\n    },\n    size: {\n      type: Number,\n      default: 24\n    }\n  }\n}\n</script>","import { render, staticRenderFns } from \"./PlayCircle.vue?vue&type=template&id=6901b3e6\"\nimport script from \"./PlayCircle.vue?vue&type=script&lang=js\"\nexport * from \"./PlayCircle.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon play-circle-icon\",attrs:{\"aria-hidden\":_vm.title ? null : true,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M10,16.5V7.5L16,12M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CollectivesIcon.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CollectivesIcon.vue?vue&type=script&lang=js\"","<!--\n - SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors\n - SPDX-License-Identifier: AGPL-3.0-or-later\n -->\n<template>\n\t<span :aria-hidden=\"!title\"\n\t\t:aria-label=\"title\"\n\t\tclass=\"material-design-icon collectives-icon\"\n\t\trole=\"img\"\n\t\tv-bind=\"$attrs\"\n\t\t@click=\"$emit('click', $event)\">\n\t\t<svg :fill=\"fillColor\"\n\t\t\tclass=\"material-design-icon__svg\"\n\t\t\t:width=\"size\"\n\t\t\t:height=\"size\"\n\t\t\tviewBox=\"0 0 16 16\">\n\t\t\t<path d=\"M2.9,8.8c0-1.2,0.4-2.4,1.2-3.3L0.3,6c-0.2,0-0.3,0.3-0.1,0.4l2.7,2.6C2.9,9,2.9,8.9,2.9,8.8z\" />\n\t\t\t<path d=\"M8,3.7c0.7,0,1.3,0.1,1.9,0.4L8.2,0.6c-0.1-0.2-0.3-0.2-0.4,0L6.1,4C6.7,3.8,7.3,3.7,8,3.7z\" />\n\t\t\t<path d=\"M3.7,11.5L3,15.2c0,0.2,0.2,0.4,0.4,0.3l3.3-1.7C5.4,13.4,4.4,12.6,3.7,11.5z\" />\n\t\t\t<path d=\"M15.7,6l-3.7-0.5c0.7,0.9,1.2,2,1.2,3.3c0,0.1,0,0.2,0,0.3l2.7-2.6C15.9,6.3,15.9,6.1,15.7,6z\" />\n\t\t\t<path d=\"M12.3,11.5c-0.7,1.1-1.8,1.9-3,2.2l3.3,1.7c0.2,0.1,0.4-0.1,0.4-0.3L12.3,11.5z\" />\n\t\t\t<path d=\"M9.6,10.1c-0.4,0.5-1,0.8-1.6,0.8c-1.1,0-2-0.9-2.1-2C5.9,7.7,6.8,6.7,8,6.7c0.6,0,1.1,0.3,1.5,0.7 c0.1,0.1,0.1,0.1,0.2,0.1h1.4c0.2,0,0.4-0.2,0.3-0.5c-0.7-1.3-2.1-2.2-3.8-2.1C5.8,5,4.3,6.6,4.1,8.5C4,10.8,5.8,12.7,8,12.7 c1.6,0,2.9-0.9,3.5-2.3c0.1-0.2-0.1-0.4-0.3-0.4H9.9C9.8,10,9.7,10,9.6,10.1z\" />\n\t\t</svg>\n\t</span>\n</template>\n\n<script>\nexport default {\n\tname: 'CollectivesIcon',\n\tprops: {\n\t\ttitle: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t},\n\t\tfillColor: {\n\t\t\ttype: String,\n\t\t\tdefault: 'currentColor',\n\t\t},\n\t\tsize: {\n\t\t\ttype: Number,\n\t\t\tdefault: 24,\n\t\t},\n\t},\n}\n</script>\n","import { render, staticRenderFns } from \"./CollectivesIcon.vue?vue&type=template&id=43528c7c\"\nimport script from \"./CollectivesIcon.vue?vue&type=script&lang=js\"\nexport * from \"./CollectivesIcon.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon collectives-icon\",attrs:{\"aria-hidden\":!_vm.title,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 16 16\"}},[_c('path',{attrs:{\"d\":\"M2.9,8.8c0-1.2,0.4-2.4,1.2-3.3L0.3,6c-0.2,0-0.3,0.3-0.1,0.4l2.7,2.6C2.9,9,2.9,8.9,2.9,8.8z\"}}),_vm._v(\" \"),_c('path',{attrs:{\"d\":\"M8,3.7c0.7,0,1.3,0.1,1.9,0.4L8.2,0.6c-0.1-0.2-0.3-0.2-0.4,0L6.1,4C6.7,3.8,7.3,3.7,8,3.7z\"}}),_vm._v(\" \"),_c('path',{attrs:{\"d\":\"M3.7,11.5L3,15.2c0,0.2,0.2,0.4,0.4,0.3l3.3-1.7C5.4,13.4,4.4,12.6,3.7,11.5z\"}}),_vm._v(\" \"),_c('path',{attrs:{\"d\":\"M15.7,6l-3.7-0.5c0.7,0.9,1.2,2,1.2,3.3c0,0.1,0,0.2,0,0.3l2.7-2.6C15.9,6.3,15.9,6.1,15.7,6z\"}}),_vm._v(\" \"),_c('path',{attrs:{\"d\":\"M12.3,11.5c-0.7,1.1-1.8,1.9-3,2.2l3.3,1.7c0.2,0.1,0.4-0.1,0.4-0.3L12.3,11.5z\"}}),_vm._v(\" \"),_c('path',{attrs:{\"d\":\"M9.6,10.1c-0.4,0.5-1,0.8-1.6,0.8c-1.1,0-2-0.9-2.1-2C5.9,7.7,6.8,6.7,8,6.7c0.6,0,1.1,0.3,1.5,0.7 c0.1,0.1,0.1,0.1,0.2,0.1h1.4c0.2,0,0.4-0.2,0.3-0.5c-0.7-1.3-2.1-2.2-3.8-2.1C5.8,5,4.3,6.6,4.1,8.5C4,10.8,5.8,12.7,8,12.7 c1.6,0,2.9-0.9,3.5-2.3c0.1-0.2-0.1-0.4-0.3-0.4H9.9C9.8,10,9.7,10,9.6,10.1z\"}})])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FavoriteIcon.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FavoriteIcon.vue?vue&type=script&lang=ts\"","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('NcIconSvgWrapper',{staticClass:\"favorite-marker-icon\",attrs:{\"name\":_vm.t('files', 'Favorite'),\"svg\":_vm.StarSvg}})\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n      import API from \"!../../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n      import domAPI from \"!../../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n      import insertFn from \"!../../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n      import setAttributes from \"!../../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n      import insertStyleElement from \"!../../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n      import styleTagTransformFn from \"!../../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n      import content, * as namedExport from \"!!../../../../../node_modules/css-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FavoriteIcon.vue?vue&type=style&index=0&id=f2d0cf6e&prod&lang=scss&scoped=true\";\n      \n      \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n      options.insert = insertFn.bind(null, \"head\");\n    \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../../node_modules/css-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FavoriteIcon.vue?vue&type=style&index=0&id=f2d0cf6e&prod&lang=scss&scoped=true\";\n       export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./FavoriteIcon.vue?vue&type=template&id=f2d0cf6e&scoped=true\"\nimport script from \"./FavoriteIcon.vue?vue&type=script&lang=ts\"\nexport * from \"./FavoriteIcon.vue?vue&type=script&lang=ts\"\nimport style0 from \"./FavoriteIcon.vue?vue&type=style&index=0&id=f2d0cf6e&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"f2d0cf6e\",\n  null\n  \n)\n\nexport default component.exports","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileEntryPreview.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileEntryPreview.vue?vue&type=script&lang=ts\"","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { Node, registerDavProperty } from '@nextcloud/files';\n/**\n *\n */\nexport function initLivePhotos() {\n    registerDavProperty('nc:metadata-files-live-photo', { nc: 'http://nextcloud.org/ns' });\n}\n/**\n * @param {Node} node - The node\n */\nexport function isLivePhoto(node) {\n    return node.attributes['metadata-files-live-photo'] !== undefined;\n}\n","import { render, staticRenderFns } from \"./FileEntryPreview.vue?vue&type=template&id=fef56bd8\"\nimport script from \"./FileEntryPreview.vue?vue&type=script&lang=ts\"\nexport * from \"./FileEntryPreview.vue?vue&type=script&lang=ts\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileEntry.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileEntry.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./FileEntry.vue?vue&type=template&id=5d4786d1\"\nimport script from \"./FileEntry.vue?vue&type=script&lang=ts\"\nexport * from \"./FileEntry.vue?vue&type=script&lang=ts\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileEntryGrid.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileEntryGrid.vue?vue&type=script&lang=ts\"","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('tr',{staticClass:\"files-list__row\",class:{'files-list__row--active': _vm.isActive, 'files-list__row--dragover': _vm.dragover, 'files-list__row--loading': _vm.isLoading},attrs:{\"data-cy-files-list-row\":\"\",\"data-cy-files-list-row-fileid\":_vm.fileid,\"data-cy-files-list-row-name\":_vm.source.basename,\"draggable\":_vm.canDrag},on:{\"contextmenu\":_vm.onRightClick,\"dragover\":_vm.onDragOver,\"dragleave\":_vm.onDragLeave,\"dragstart\":_vm.onDragStart,\"dragend\":_vm.onDragEnd,\"drop\":_vm.onDrop}},[(_vm.isFailedSource)?_c('span',{staticClass:\"files-list__row--failed\"}):_vm._e(),_vm._v(\" \"),_c('FileEntryCheckbox',{attrs:{\"fileid\":_vm.fileid,\"is-loading\":_vm.isLoading,\"nodes\":_vm.nodes,\"source\":_vm.source}}),_vm._v(\" \"),_c('td',{staticClass:\"files-list__row-name\",attrs:{\"data-cy-files-list-row-name\":\"\"}},[_c('FileEntryPreview',{ref:\"preview\",attrs:{\"dragover\":_vm.dragover,\"grid-mode\":true,\"source\":_vm.source},nativeOn:{\"auxclick\":function($event){return _vm.execDefaultAction.apply(null, arguments)},\"click\":function($event){return _vm.execDefaultAction.apply(null, arguments)}}}),_vm._v(\" \"),_c('FileEntryName',{ref:\"name\",attrs:{\"basename\":_vm.basename,\"extension\":_vm.extension,\"files-list-width\":_vm.filesListWidth,\"grid-mode\":true,\"nodes\":_vm.nodes,\"source\":_vm.source},nativeOn:{\"auxclick\":function($event){return _vm.execDefaultAction.apply(null, arguments)},\"click\":function($event){return _vm.execDefaultAction.apply(null, arguments)}}})],1),_vm._v(\" \"),(!_vm.compact && _vm.isMtimeAvailable)?_c('td',{staticClass:\"files-list__row-mtime\",style:(_vm.mtimeOpacity),attrs:{\"data-cy-files-list-row-mtime\":\"\"},on:{\"click\":_vm.openDetailsIfAvailable}},[(_vm.source.mtime)?_c('NcDateTime',{attrs:{\"timestamp\":_vm.source.mtime,\"ignore-seconds\":true}}):_vm._e()],1):_vm._e(),_vm._v(\" \"),_c('FileEntryActions',{ref:\"actions\",class:`files-list__row-actions-${_vm.uniqueId}`,attrs:{\"files-list-width\":_vm.filesListWidth,\"grid-mode\":true,\"loading\":_vm.loading,\"opened\":_vm.openedMenu,\"source\":_vm.source},on:{\"update:loading\":function($event){_vm.loading=$event},\"update:opened\":function($event){_vm.openedMenu=$event}}})],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./FileEntryGrid.vue?vue&type=template&id=0f984d9e\"\nimport script from \"./FileEntryGrid.vue?vue&type=script&lang=ts\"\nexport * from \"./FileEntryGrid.vue?vue&type=script&lang=ts\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.enabled),expression:\"enabled\"}],class:`files-list__header-${_vm.header.id}`},[_c('span',{ref:\"mount\"})])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListHeader.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListHeader.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./FilesListHeader.vue?vue&type=template&id=33e2173e\"\nimport script from \"./FilesListHeader.vue?vue&type=script&lang=ts\"\nexport * from \"./FilesListHeader.vue?vue&type=script&lang=ts\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListTableFooter.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListTableFooter.vue?vue&type=script&lang=ts\"","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('tr',[_c('th',{staticClass:\"files-list__row-checkbox\"},[_c('span',{staticClass:\"hidden-visually\"},[_vm._v(_vm._s(_vm.t('files', 'Total rows summary')))])]),_vm._v(\" \"),_c('td',{staticClass:\"files-list__row-name\"},[_c('span',{staticClass:\"files-list__row-icon\"}),_vm._v(\" \"),_c('span',[_vm._v(_vm._s(_vm.summary))])]),_vm._v(\" \"),_c('td',{staticClass:\"files-list__row-actions\"}),_vm._v(\" \"),(_vm.isSizeAvailable)?_c('td',{staticClass:\"files-list__column files-list__row-size\"},[_c('span',[_vm._v(_vm._s(_vm.totalSize))])]):_vm._e(),_vm._v(\" \"),(_vm.isMtimeAvailable)?_c('td',{staticClass:\"files-list__column files-list__row-mtime\"}):_vm._e(),_vm._v(\" \"),_vm._l((_vm.columns),function(column){return _c('th',{key:column.id,class:_vm.classForColumn(column)},[_c('span',[_vm._v(_vm._s(column.summary?.(_vm.nodes, _vm.currentView)))])])})],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n      import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n      import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n      import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n      import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n      import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n      import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n      import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListTableFooter.vue?vue&type=style&index=0&id=130ade4f&prod&scoped=true&lang=scss\";\n      \n      \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n      options.insert = insertFn.bind(null, \"head\");\n    \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListTableFooter.vue?vue&type=style&index=0&id=130ade4f&prod&scoped=true&lang=scss\";\n       export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./FilesListTableFooter.vue?vue&type=template&id=130ade4f&scoped=true\"\nimport script from \"./FilesListTableFooter.vue?vue&type=script&lang=ts\"\nexport * from \"./FilesListTableFooter.vue?vue&type=script&lang=ts\"\nimport style0 from \"./FilesListTableFooter.vue?vue&type=style&index=0&id=130ade4f&prod&scoped=true&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"130ade4f\",\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('tr',{staticClass:\"files-list__row-head\"},[_c('th',{staticClass:\"files-list__column files-list__row-checkbox\",on:{\"keyup\":function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"esc\",27,$event.key,[\"Esc\",\"Escape\"]))return null;if($event.ctrlKey||$event.shiftKey||$event.altKey||$event.metaKey)return null;return _vm.resetSelection.apply(null, arguments)}}},[_c('NcCheckboxRadioSwitch',_vm._b({on:{\"update:checked\":_vm.onToggleAll}},'NcCheckboxRadioSwitch',_vm.selectAllBind,false))],1),_vm._v(\" \"),_c('th',{staticClass:\"files-list__column files-list__row-name files-list__column--sortable\",attrs:{\"aria-sort\":_vm.ariaSortForMode('basename')}},[_c('span',{staticClass:\"files-list__row-icon\"}),_vm._v(\" \"),_c('FilesListTableHeaderButton',{attrs:{\"name\":_vm.t('files', 'Name'),\"mode\":\"basename\"}})],1),_vm._v(\" \"),_c('th',{staticClass:\"files-list__row-actions\"}),_vm._v(\" \"),(_vm.isSizeAvailable)?_c('th',{staticClass:\"files-list__column files-list__row-size\",class:{ 'files-list__column--sortable': _vm.isSizeAvailable },attrs:{\"aria-sort\":_vm.ariaSortForMode('size')}},[_c('FilesListTableHeaderButton',{attrs:{\"name\":_vm.t('files', 'Size'),\"mode\":\"size\"}})],1):_vm._e(),_vm._v(\" \"),(_vm.isMtimeAvailable)?_c('th',{staticClass:\"files-list__column files-list__row-mtime\",class:{ 'files-list__column--sortable': _vm.isMtimeAvailable },attrs:{\"aria-sort\":_vm.ariaSortForMode('mtime')}},[_c('FilesListTableHeaderButton',{attrs:{\"name\":_vm.t('files', 'Modified'),\"mode\":\"mtime\"}})],1):_vm._e(),_vm._v(\" \"),_vm._l((_vm.columns),function(column){return _c('th',{key:column.id,class:_vm.classForColumn(column),attrs:{\"aria-sort\":_vm.ariaSortForMode(column.id)}},[(!!column.sort)?_c('FilesListTableHeaderButton',{attrs:{\"name\":column.title,\"mode\":column.id}}):_c('span',[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(column.title)+\"\\n\\t\\t\")])],1)})],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport Vue from 'vue';\nimport { mapState } from 'pinia';\nimport { useViewConfigStore } from '../store/viewConfig';\nimport { Navigation, View } from '@nextcloud/files';\nexport default Vue.extend({\n    computed: {\n        ...mapState(useViewConfigStore, ['getConfig', 'setSortingBy', 'toggleSortingDirection']),\n        currentView() {\n            return this.$navigation.active;\n        },\n        /**\n         * Get the sorting mode for the current view\n         */\n        sortingMode() {\n            return this.getConfig(this.currentView.id)?.sorting_mode\n                || this.currentView?.defaultSortKey\n                || 'basename';\n        },\n        /**\n         * Get the sorting direction for the current view\n         */\n        isAscSorting() {\n            const sortingDirection = this.getConfig(this.currentView.id)?.sorting_direction;\n            return sortingDirection !== 'desc';\n        },\n    },\n    methods: {\n        toggleSortBy(key) {\n            // If we're already sorting by this key, flip the direction\n            if (this.sortingMode === key) {\n                this.toggleSortingDirection(this.currentView.id);\n                return;\n            }\n            // else sort ASC by this new key\n            this.setSortingBy(key, this.currentView.id);\n        },\n    },\n});\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListTableHeaderButton.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListTableHeaderButton.vue?vue&type=script&lang=ts\"","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('NcButton',{class:['files-list__column-sort-button', {\n\t\t'files-list__column-sort-button--active': _vm.sortingMode === _vm.mode,\n\t\t'files-list__column-sort-button--size': _vm.sortingMode === 'size',\n\t}],attrs:{\"alignment\":_vm.mode === 'size' ? 'end' : 'start-reverse',\"type\":\"tertiary\"},on:{\"click\":function($event){return _vm.toggleSortBy(_vm.mode)}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [(_vm.sortingMode !== _vm.mode || _vm.isAscSorting)?_c('MenuUp',{staticClass:\"files-list__column-sort-button-icon\"}):_c('MenuDown',{staticClass:\"files-list__column-sort-button-icon\"})]},proxy:true}])},[_vm._v(\" \"),_c('span',{staticClass:\"files-list__column-sort-button-text\"},[_vm._v(_vm._s(_vm.name))])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n      import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n      import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n      import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n      import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n      import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n      import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n      import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListTableHeaderButton.vue?vue&type=style&index=0&id=4e97a5c6&prod&scoped=true&lang=scss\";\n      \n      \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n      options.insert = insertFn.bind(null, \"head\");\n    \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListTableHeaderButton.vue?vue&type=style&index=0&id=4e97a5c6&prod&scoped=true&lang=scss\";\n       export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./FilesListTableHeaderButton.vue?vue&type=template&id=4e97a5c6&scoped=true\"\nimport script from \"./FilesListTableHeaderButton.vue?vue&type=script&lang=ts\"\nexport * from \"./FilesListTableHeaderButton.vue?vue&type=script&lang=ts\"\nimport style0 from \"./FilesListTableHeaderButton.vue?vue&type=style&index=0&id=4e97a5c6&prod&scoped=true&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"4e97a5c6\",\n  null\n  \n)\n\nexport default component.exports","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListTableHeader.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListTableHeader.vue?vue&type=script&lang=ts\"","\n      import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n      import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n      import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n      import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n      import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n      import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n      import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListTableHeader.vue?vue&type=style&index=0&id=6eaeabb8&prod&scoped=true&lang=scss\";\n      \n      \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n      options.insert = insertFn.bind(null, \"head\");\n    \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListTableHeader.vue?vue&type=style&index=0&id=6eaeabb8&prod&scoped=true&lang=scss\";\n       export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./FilesListTableHeader.vue?vue&type=template&id=6eaeabb8&scoped=true\"\nimport script from \"./FilesListTableHeader.vue?vue&type=script&lang=ts\"\nexport * from \"./FilesListTableHeader.vue?vue&type=script&lang=ts\"\nimport style0 from \"./FilesListTableHeader.vue?vue&type=style&index=0&id=6eaeabb8&prod&scoped=true&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"6eaeabb8\",\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',{staticClass:\"files-list\",attrs:{\"data-cy-files-list\":\"\"}},[_c('div',{ref:\"before\",staticClass:\"files-list__before\"},[_vm._t(\"before\")],2),_vm._v(\" \"),(!!_vm.$scopedSlots['header-overlay'])?_c('div',{staticClass:\"files-list__thead-overlay\"},[_vm._t(\"header-overlay\")],2):_vm._e(),_vm._v(\" \"),_c('table',{staticClass:\"files-list__table\",class:{ 'files-list__table--with-thead-overlay': !!_vm.$scopedSlots['header-overlay'] }},[(_vm.caption)?_c('caption',{staticClass:\"hidden-visually\"},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.caption)+\"\\n\\t\\t\")]):_vm._e(),_vm._v(\" \"),_c('thead',{ref:\"thead\",staticClass:\"files-list__thead\",attrs:{\"data-cy-files-list-thead\":\"\"}},[_vm._t(\"header\")],2),_vm._v(\" \"),_c('tbody',{staticClass:\"files-list__tbody\",class:_vm.gridMode ? 'files-list__tbody--grid' : 'files-list__tbody--list',style:(_vm.tbodyStyle),attrs:{\"data-cy-files-list-tbody\":\"\"}},_vm._l((_vm.renderedItems),function({key, item},i){return _c(_vm.dataComponent,_vm._b({key:key,tag:\"component\",attrs:{\"source\":item,\"index\":i}},'component',_vm.extraProps,false))}),1),_vm._v(\" \"),_c('tfoot',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.isReady),expression:\"isReady\"}],staticClass:\"files-list__tfoot\",attrs:{\"data-cy-files-list-tfoot\":\"\"}},[_vm._t(\"footer\")],2)])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./VirtualList.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./VirtualList.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./VirtualList.vue?vue&type=template&id=77409320\"\nimport script from \"./VirtualList.vue?vue&type=script&lang=ts\"\nexport * from \"./VirtualList.vue?vue&type=script&lang=ts\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',{staticClass:\"files-list__column files-list__row-actions-batch\"},[_c('NcActions',{ref:\"actionsMenu\",attrs:{\"disabled\":!!_vm.loading || _vm.areSomeNodesLoading,\"force-name\":true,\"inline\":_vm.inlineActions,\"menu-name\":_vm.inlineActions <= 1 ? _vm.t('files', 'Actions') : null,\"open\":_vm.openedMenu},on:{\"update:open\":function($event){_vm.openedMenu=$event}}},_vm._l((_vm.enabledActions),function(action){return _c('NcActionButton',{key:action.id,class:'files-list__row-actions-batch-' + action.id,on:{\"click\":function($event){return _vm.onActionClick(action)}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [(_vm.loading === action.id)?_c('NcLoadingIcon',{attrs:{\"size\":18}}):_c('NcIconSvgWrapper',{attrs:{\"svg\":action.iconSvgInline(_vm.nodes, _vm.currentView)}})]},proxy:true}],null,true)},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(action.displayName(_vm.nodes, _vm.currentView))+\"\\n\\t\\t\")])}),1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListTableHeaderActions.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListTableHeaderActions.vue?vue&type=script&lang=ts\"","\n      import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n      import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n      import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n      import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n      import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n      import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n      import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListTableHeaderActions.vue?vue&type=style&index=0&id=1284c4be&prod&scoped=true&lang=scss\";\n      \n      \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n      options.insert = insertFn.bind(null, \"head\");\n    \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListTableHeaderActions.vue?vue&type=style&index=0&id=1284c4be&prod&scoped=true&lang=scss\";\n       export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./FilesListTableHeaderActions.vue?vue&type=template&id=1284c4be&scoped=true\"\nimport script from \"./FilesListTableHeaderActions.vue?vue&type=script&lang=ts\"\nexport * from \"./FilesListTableHeaderActions.vue?vue&type=script&lang=ts\"\nimport style0 from \"./FilesListTableHeaderActions.vue?vue&type=style&index=0&id=1284c4be&prod&scoped=true&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"1284c4be\",\n  null\n  \n)\n\nexport default component.exports","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListVirtual.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListVirtual.vue?vue&type=script&lang=ts\"","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('VirtualList',{ref:\"table\",attrs:{\"data-component\":_vm.userConfig.grid_view ? _vm.FileEntryGrid : _vm.FileEntry,\"data-key\":'source',\"data-sources\":_vm.nodes,\"grid-mode\":_vm.userConfig.grid_view,\"extra-props\":{\n\t\tisMtimeAvailable: _vm.isMtimeAvailable,\n\t\tisSizeAvailable: _vm.isSizeAvailable,\n\t\tnodes: _vm.nodes,\n\t\tfilesListWidth: _vm.filesListWidth,\n\t},\"scroll-to-index\":_vm.scrollToIndex,\"caption\":_vm.caption},scopedSlots:_vm._u([(!_vm.isNoneSelected)?{key:\"header-overlay\",fn:function(){return [_c('span',{staticClass:\"files-list__selected\"},[_vm._v(_vm._s(_vm.t('files', '{count} selected', { count: _vm.selectedNodes.length })))]),_vm._v(\" \"),_c('FilesListTableHeaderActions',{attrs:{\"current-view\":_vm.currentView,\"selected-nodes\":_vm.selectedNodes}})]},proxy:true}:null,{key:\"before\",fn:function(){return _vm._l((_vm.sortedHeaders),function(header){return _c('FilesListHeader',{key:header.id,attrs:{\"current-folder\":_vm.currentFolder,\"current-view\":_vm.currentView,\"header\":header}})})},proxy:true},{key:\"header\",fn:function(){return [_c('FilesListTableHeader',{ref:\"thead\",attrs:{\"files-list-width\":_vm.filesListWidth,\"is-mtime-available\":_vm.isMtimeAvailable,\"is-size-available\":_vm.isSizeAvailable,\"nodes\":_vm.nodes}})]},proxy:true},{key:\"footer\",fn:function(){return [_c('FilesListTableFooter',{attrs:{\"current-view\":_vm.currentView,\"files-list-width\":_vm.filesListWidth,\"is-mtime-available\":_vm.isMtimeAvailable,\"is-size-available\":_vm.isSizeAvailable,\"nodes\":_vm.nodes,\"summary\":_vm.summary}})]},proxy:true}],null,true)})\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n      import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n      import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n      import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n      import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n      import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n      import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n      import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListVirtual.vue?vue&type=style&index=0&id=88130a00&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=88130a00&prod&scoped=true&lang=scss\";\n       export default content && content.locals ? content.locals : undefined;\n","\n      import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n      import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n      import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n      import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n      import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n      import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n      import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListVirtual.vue?vue&type=style&index=1&id=88130a00&prod&lang=scss\";\n      \n      \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n      options.insert = insertFn.bind(null, \"head\");\n    \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListVirtual.vue?vue&type=style&index=1&id=88130a00&prod&lang=scss\";\n       export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./FilesListVirtual.vue?vue&type=template&id=88130a00&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=88130a00&prod&scoped=true&lang=scss\"\nimport style1 from \"./FilesListVirtual.vue?vue&type=style&index=1&id=88130a00&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  \"88130a00\",\n  null\n  \n)\n\nexport default component.exports","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./TrayArrowDown.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./TrayArrowDown.vue?vue&type=script&lang=js\"","<template>\n  <span v-bind=\"$attrs\"\n        :aria-hidden=\"title ? null : true\"\n        :aria-label=\"title\"\n        class=\"material-design-icon tray-arrow-down-icon\"\n        role=\"img\"\n        @click=\"$emit('click', $event)\">\n    <svg :fill=\"fillColor\"\n         class=\"material-design-icon__svg\"\n         :width=\"size\"\n         :height=\"size\"\n         viewBox=\"0 0 24 24\">\n      <path d=\"M2 12H4V17H20V12H22V17C22 18.11 21.11 19 20 19H4C2.9 19 2 18.11 2 17V12M12 15L17.55 9.54L16.13 8.13L13 11.25V2H11V11.25L7.88 8.13L6.46 9.55L12 15Z\">\n        <title v-if=\"title\">{{ title }}</title>\n      </path>\n    </svg>\n  </span>\n</template>\n\n<script>\nexport default {\n  name: \"TrayArrowDownIcon\",\n  emits: ['click'],\n  props: {\n    title: {\n      type: String,\n    },\n    fillColor: {\n      type: String,\n      default: \"currentColor\"\n    },\n    size: {\n      type: Number,\n      default: 24\n    }\n  }\n}\n</script>","import { render, staticRenderFns } from \"./TrayArrowDown.vue?vue&type=template&id=447c2cd4\"\nimport script from \"./TrayArrowDown.vue?vue&type=script&lang=js\"\nexport * from \"./TrayArrowDown.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon tray-arrow-down-icon\",attrs:{\"aria-hidden\":_vm.title ? null : true,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M2 12H4V17H20V12H22V17C22 18.11 21.11 19 20 19H4C2.9 19 2 18.11 2 17V12M12 15L17.55 9.54L16.13 8.13L13 11.25V2H11V11.25L7.88 8.13L6.46 9.55L12 15Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DragAndDropNotice.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DragAndDropNotice.vue?vue&type=script&lang=ts\"","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.dragover),expression:\"dragover\"}],staticClass:\"files-list__drag-drop-notice\",attrs:{\"data-cy-files-drag-drop-area\":\"\"},on:{\"drop\":_vm.onDrop}},[_c('div',{staticClass:\"files-list__drag-drop-notice-wrapper\"},[(_vm.canUpload && !_vm.isQuotaExceeded)?[_c('TrayArrowDownIcon',{attrs:{\"size\":48}}),_vm._v(\" \"),_c('h3',{staticClass:\"files-list-drag-drop-notice__title\"},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('files', 'Drag and drop files here to upload'))+\"\\n\\t\\t\\t\")])]:[_c('h3',{staticClass:\"files-list-drag-drop-notice__title\"},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.cantUploadLabel)+\"\\n\\t\\t\\t\")])]],2)])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n      import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n      import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n      import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n      import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n      import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n      import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n      import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DragAndDropNotice.vue?vue&type=style&index=0&id=7f8a4132&prod&lang=scss&scoped=true\";\n      \n      \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n      options.insert = insertFn.bind(null, \"head\");\n    \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DragAndDropNotice.vue?vue&type=style&index=0&id=7f8a4132&prod&lang=scss&scoped=true\";\n       export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./DragAndDropNotice.vue?vue&type=template&id=7f8a4132&scoped=true\"\nimport script from \"./DragAndDropNotice.vue?vue&type=script&lang=ts\"\nexport * from \"./DragAndDropNotice.vue?vue&type=script&lang=ts\"\nimport style0 from \"./DragAndDropNotice.vue?vue&type=style&index=0&id=7f8a4132&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"7f8a4132\",\n  null\n  \n)\n\nexport default component.exports","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesList.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesList.vue?vue&type=script&lang=ts\"","\n      import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n      import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n      import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n      import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n      import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n      import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n      import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesList.vue?vue&type=style&index=0&id=6adc9ce9&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=6adc9ce9&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=6adc9ce9&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=6adc9ce9&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  \"6adc9ce9\",\n  null\n  \n)\n\nexport default component.exports","import mod from \"-!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesApp.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesApp.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./FilesApp.vue?vue&type=template&id=d3308b8a\"\nimport script from \"./FilesApp.vue?vue&type=script&lang=ts\"\nexport * from \"./FilesApp.vue?vue&type=script&lang=ts\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { PiniaVuePlugin } from 'pinia';\nimport { getNavigation } from '@nextcloud/files';\nimport { getRequestToken } from '@nextcloud/auth';\nimport Vue from 'vue';\nimport { pinia } from './store/index.ts';\nimport router from './router/router';\nimport RouterService from './services/RouterService';\nimport SettingsModel from './models/Setting.js';\nimport SettingsService from './services/Settings.js';\nimport FilesApp from './FilesApp.vue';\n// @ts-expect-error __webpack_nonce__ is injected by webpack\n__webpack_nonce__ = btoa(getRequestToken());\n// Init private and public Files namespace\nwindow.OCA.Files = window.OCA.Files ?? {};\nwindow.OCP.Files = window.OCP.Files ?? {};\n// Expose router\nconst Router = new RouterService(router);\nObject.assign(window.OCP.Files, { Router });\n// Init Pinia store\nVue.use(PiniaVuePlugin);\n// Init Navigation Service\n// This only works with Vue 2 - with Vue 3 this will not modify the source but return just a oberserver\nconst Navigation = Vue.observable(getNavigation());\nVue.prototype.$navigation = Navigation;\n// Init Files App Settings Service\nconst Settings = new SettingsService();\nObject.assign(window.OCA.Files, { Settings });\nObject.assign(window.OCA.Files.Settings, { Setting: SettingsModel });\nconst FilesAppVue = Vue.extend(FilesApp);\nnew FilesAppVue({\n    router,\n    pinia,\n}).$mount('#content');\n","export default class RouterService {\n    _router;\n    constructor(router) {\n        this._router = router;\n    }\n    get name() {\n        return this._router.currentRoute.name;\n    }\n    get query() {\n        return this._router.currentRoute.query || {};\n    }\n    get params() {\n        return this._router.currentRoute.params || {};\n    }\n    /**\n     * Trigger a route change on the files app\n     *\n     * @param path the url path, eg: '/trashbin?dir=/Deleted'\n     * @param replace replace the current history\n     * @see https://router.vuejs.org/guide/essentials/navigation.html#navigate-to-a-different-location\n     */\n    goTo(path, replace = false) {\n        return this._router.push({\n            path,\n            replace,\n        });\n    }\n    /**\n     * Trigger a route change on the files App\n     *\n     * @param name the route name\n     * @param params the route parameters\n     * @param query the url query parameters\n     * @param replace replace the current history\n     * @see https://router.vuejs.org/guide/essentials/navigation.html#navigate-to-a-different-location\n     */\n    goToRoute(name, params, query, replace) {\n        return this._router.push({\n            name,\n            query,\n            params,\n            replace,\n        });\n    }\n}\n","/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nexport default class Settings {\n\n\t_settings\n\n\tconstructor() {\n\t\tthis._settings = []\n\t\tconsole.debug('OCA.Files.Settings initialized')\n\t}\n\n\t/**\n\t * Register a new setting\n\t *\n\t * @since 19.0.0\n\t * @param {OCA.Files.Settings.Setting} view element to add to settings\n\t * @return {boolean} whether registering was successful\n\t */\n\tregister(view) {\n\t\tif (this._settings.filter(e => e.name === view.name).length > 0) {\n\t\t\tconsole.error('A setting with the same name is already registered')\n\t\t\treturn false\n\t\t}\n\t\tthis._settings.push(view)\n\t\treturn true\n\t}\n\n\t/**\n\t * All settings elements\n\t *\n\t * @return {OCA.Files.Settings.Setting[]} All currently registered settings\n\t */\n\tget settings() {\n\t\treturn this._settings\n\t}\n\n}\n","/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nexport default class Setting {\n\n\t_close\n\t_el\n\t_name\n\t_open\n\n\t/**\n\t * Create a new files app setting\n\t *\n\t * @since 19.0.0\n\t * @param {string} name the name of this setting\n\t * @param {object} component the component\n\t * @param {Function} component.el function that returns an unmounted dom element to be added\n\t * @param {Function} [component.open] callback for when setting is added\n\t * @param {Function} [component.close] callback for when setting is closed\n\t */\n\tconstructor(name, { el, open, close }) {\n\t\tthis._name = name\n\t\tthis._el = el\n\t\tthis._open = open\n\t\tthis._close = close\n\n\t\tif (typeof this._open !== 'function') {\n\t\t\tthis._open = () => {}\n\t\t}\n\n\t\tif (typeof this._close !== 'function') {\n\t\t\tthis._close = () => {}\n\t\t}\n\t}\n\n\tget name() {\n\t\treturn this._name\n\t}\n\n\tget el() {\n\t\treturn this._el\n\t}\n\n\tget open() {\n\t\treturn this._open\n\t}\n\n\tget close() {\n\t\treturn this._close\n\t}\n\n}\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.upload-picker[data-v-1f097873] {\n  display: inline-flex;\n  align-items: center;\n  height: 44px;\n}\n.upload-picker__progress[data-v-1f097873] {\n  width: 200px;\n  max-width: 0;\n  transition: max-width var(--animation-quick) ease-in-out;\n  margin-top: 8px;\n}\n.upload-picker__progress p[data-v-1f097873] {\n  overflow: hidden;\n  white-space: nowrap;\n  text-overflow: ellipsis;\n}\n.upload-picker--uploading .upload-picker__progress[data-v-1f097873] {\n  max-width: 200px;\n  margin-right: 20px;\n  margin-left: 8px;\n}\n.upload-picker--paused .upload-picker__progress[data-v-1f097873] {\n  animation: breathing-1f097873 3s ease-out infinite normal;\n}\n@keyframes breathing-1f097873 {\n0% {\n    opacity: 0.5;\n}\n25% {\n    opacity: 1;\n}\n60% {\n    opacity: 0.5;\n}\n100% {\n    opacity: 0.5;\n}\n}`, \"\",{\"version\":3,\"sources\":[\"webpack://./node_modules/@nextcloud/upload/dist/assets/index-DiWRcN3o.css\"],\"names\":[],\"mappings\":\"AAAA;EACE,oBAAoB;EACpB,mBAAmB;EACnB,YAAY;AACd;AACA;EACE,YAAY;EACZ,YAAY;EACZ,wDAAwD;EACxD,eAAe;AACjB;AACA;EACE,gBAAgB;EAChB,mBAAmB;EACnB,uBAAuB;AACzB;AACA;EACE,gBAAgB;EAChB,kBAAkB;EAClB,gBAAgB;AAClB;AACA;EACE,yDAAyD;AAC3D;AACA;AACA;IACI,YAAY;AAChB;AACA;IACI,UAAU;AACd;AACA;IACI,YAAY;AAChB;AACA;IACI,YAAY;AAChB;AACA\",\"sourcesContent\":[\".upload-picker[data-v-1f097873] {\\n  display: inline-flex;\\n  align-items: center;\\n  height: 44px;\\n}\\n.upload-picker__progress[data-v-1f097873] {\\n  width: 200px;\\n  max-width: 0;\\n  transition: max-width var(--animation-quick) ease-in-out;\\n  margin-top: 8px;\\n}\\n.upload-picker__progress p[data-v-1f097873] {\\n  overflow: hidden;\\n  white-space: nowrap;\\n  text-overflow: ellipsis;\\n}\\n.upload-picker--uploading .upload-picker__progress[data-v-1f097873] {\\n  max-width: 200px;\\n  margin-right: 20px;\\n  margin-left: 8px;\\n}\\n.upload-picker--paused .upload-picker__progress[data-v-1f097873] {\\n  animation: breathing-1f097873 3s ease-out infinite normal;\\n}\\n@keyframes breathing-1f097873 {\\n0% {\\n    opacity: 0.5;\\n}\\n25% {\\n    opacity: 1;\\n}\\n60% {\\n    opacity: 0.5;\\n}\\n100% {\\n    opacity: 0.5;\\n}\\n}\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.files-list__breadcrumbs[data-v-2711da2a]{flex:1 1 100% !important;width:100%;height:100%;margin-block:0;margin-inline:10px}.files-list__breadcrumbs[data-v-2711da2a]  a{cursor:pointer !important}.files-list__breadcrumbs--with-progress[data-v-2711da2a]{flex-direction:column !important;align-items:flex-start !important}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/components/BreadCrumbs.vue\"],\"names\":[],\"mappings\":\"AACA,0CAEC,wBAAA,CACA,UAAA,CACA,WAAA,CACA,cAAA,CACA,kBAAA,CAGC,6CACC,yBAAA,CAIF,yDACC,gCAAA,CACA,iCAAA\",\"sourcesContent\":[\"\\n.files-list__breadcrumbs {\\n\\t// Take as much space as possible\\n\\tflex: 1 1 100% !important;\\n\\twidth: 100%;\\n\\theight: 100%;\\n\\tmargin-block: 0;\\n\\tmargin-inline: 10px;\\n\\n\\t:deep() {\\n\\t\\ta {\\n\\t\\t\\tcursor: pointer !important;\\n\\t\\t}\\n\\t}\\n\\n\\t&--with-progress {\\n\\t\\tflex-direction: column !important;\\n\\t\\talign-items: flex-start !important;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.files-list__drag-drop-notice[data-v-7f8a4132]{display:flex;align-items:center;justify-content:center;width:100%;min-height:113px;margin:0;user-select:none;color:var(--color-text-maxcontrast);background-color:var(--color-main-background);border-color:#000}.files-list__drag-drop-notice h3[data-v-7f8a4132]{margin-left:16px;color:inherit}.files-list__drag-drop-notice-wrapper[data-v-7f8a4132]{display:flex;align-items:center;justify-content:center;height:15vh;max-height:70%;padding:0 5vw;border:2px var(--color-border-dark) dashed;border-radius:var(--border-radius-large)}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/components/DragAndDropNotice.vue\"],\"names\":[],\"mappings\":\"AACA,+CACC,YAAA,CACA,kBAAA,CACA,sBAAA,CACA,UAAA,CAEA,gBAAA,CACA,QAAA,CACA,gBAAA,CACA,mCAAA,CACA,6CAAA,CACA,iBAAA,CAEA,kDACC,gBAAA,CACA,aAAA,CAGD,uDACC,YAAA,CACA,kBAAA,CACA,sBAAA,CACA,WAAA,CACA,cAAA,CACA,aAAA,CACA,0CAAA,CACA,wCAAA\",\"sourcesContent\":[\"\\n.files-list__drag-drop-notice {\\n\\tdisplay: flex;\\n\\talign-items: center;\\n\\tjustify-content: center;\\n\\twidth: 100%;\\n\\t// Breadcrumbs height + row thead height\\n\\tmin-height: calc(58px + 55px);\\n\\tmargin: 0;\\n\\tuser-select: none;\\n\\tcolor: var(--color-text-maxcontrast);\\n\\tbackground-color: var(--color-main-background);\\n\\tborder-color: black;\\n\\n\\th3 {\\n\\t\\tmargin-left: 16px;\\n\\t\\tcolor: inherit;\\n\\t}\\n\\n\\t&-wrapper {\\n\\t\\tdisplay: flex;\\n\\t\\talign-items: center;\\n\\t\\tjustify-content: center;\\n\\t\\theight: 15vh;\\n\\t\\tmax-height: 70%;\\n\\t\\tpadding: 0 5vw;\\n\\t\\tborder: 2px var(--color-border-dark) dashed;\\n\\t\\tborder-radius: var(--border-radius-large);\\n\\t}\\n}\\n\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.files-list-drag-image{position:absolute;top:-9999px;left:-9999px;display:flex;overflow:hidden;align-items:center;height:44px;padding:6px 12px;background:var(--color-main-background)}.files-list-drag-image__icon,.files-list-drag-image .files-list__row-icon{display:flex;overflow:hidden;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--border-radius)}.files-list-drag-image__icon{overflow:visible;margin-right:12px}.files-list-drag-image__icon img{max-width:100%;max-height:100%}.files-list-drag-image__icon .material-design-icon{color:var(--color-text-maxcontrast)}.files-list-drag-image__icon .material-design-icon.folder-icon{color:var(--color-primary-element)}.files-list-drag-image__icon>span{display:flex}.files-list-drag-image__icon>span .files-list__row-icon+.files-list__row-icon{margin-top:6px;margin-left:-26px}.files-list-drag-image__icon>span .files-list__row-icon+.files-list__row-icon+.files-list__row-icon{margin-top:12px}.files-list-drag-image__icon>span:not(:empty)+*{display:none}.files-list-drag-image__name{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/components/DragAndDropPreview.vue\"],\"names\":[],\"mappings\":\"AAIA,uBACC,iBAAA,CACA,WAAA,CACA,YAAA,CACA,YAAA,CACA,eAAA,CACA,kBAAA,CACA,WAAA,CACA,gBAAA,CACA,uCAAA,CAEA,0EAEC,YAAA,CACA,eAAA,CACA,kBAAA,CACA,sBAAA,CACA,UAAA,CACA,WAAA,CACA,kCAAA,CAGD,6BACC,gBAAA,CACA,iBAAA,CAEA,iCACC,cAAA,CACA,eAAA,CAGD,mDACC,mCAAA,CACA,+DACC,kCAAA,CAKF,kCACC,YAAA,CAGA,8EACC,cA9CU,CA+CV,iBAAA,CACA,oGACC,eAAA,CAKF,gDACC,YAAA,CAKH,6BACC,eAAA,CACA,kBAAA,CACA,sBAAA\",\"sourcesContent\":[\"\\n$size: 32px;\\n$stack-shift: 6px;\\n\\n.files-list-drag-image {\\n\\tposition: absolute;\\n\\ttop: -9999px;\\n\\tleft: -9999px;\\n\\tdisplay: flex;\\n\\toverflow: hidden;\\n\\talign-items: center;\\n\\theight: 44px;\\n\\tpadding: 6px 12px;\\n\\tbackground: var(--color-main-background);\\n\\n\\t&__icon,\\n\\t.files-list__row-icon {\\n\\t\\tdisplay: flex;\\n\\t\\toverflow: hidden;\\n\\t\\talign-items: center;\\n\\t\\tjustify-content: center;\\n\\t\\twidth: 32px;\\n\\t\\theight: 32px;\\n\\t\\tborder-radius: var(--border-radius);\\n\\t}\\n\\n\\t&__icon {\\n\\t\\toverflow: visible;\\n\\t\\tmargin-right: 12px;\\n\\n\\t\\timg {\\n\\t\\t\\tmax-width: 100%;\\n\\t\\t\\tmax-height: 100%;\\n\\t\\t}\\n\\n\\t\\t.material-design-icon {\\n\\t\\t\\tcolor: var(--color-text-maxcontrast);\\n\\t\\t\\t&.folder-icon {\\n\\t\\t\\t\\tcolor: var(--color-primary-element);\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t// Previews container\\n\\t\\t> span {\\n\\t\\t\\tdisplay: flex;\\n\\n\\t\\t\\t// Stack effect if more than one element\\n\\t\\t\\t.files-list__row-icon + .files-list__row-icon {\\n\\t\\t\\t\\tmargin-top: $stack-shift;\\n\\t\\t\\t\\tmargin-left: $stack-shift - $size;\\n\\t\\t\\t\\t& + .files-list__row-icon {\\n\\t\\t\\t\\t\\tmargin-top: $stack-shift * 2;\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\t\\t\\t// If we have manually clone the preview,\\n\\t\\t\\t// let's hide any fallback icons\\n\\t\\t\\t&:not(:empty) + * {\\n\\t\\t\\t\\tdisplay: none;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n\\n\\t&__name {\\n\\t\\toverflow: hidden;\\n\\t\\twhite-space: nowrap;\\n\\t\\ttext-overflow: ellipsis;\\n\\t}\\n}\\n\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.favorite-marker-icon[data-v-f2d0cf6e]{color:var(--color-favorite);min-width:unset !important;min-height:unset !important}.favorite-marker-icon[data-v-f2d0cf6e]  svg{width:26px !important;height:26px !important;max-width:unset !important;max-height:unset !important}.favorite-marker-icon[data-v-f2d0cf6e]  svg path{stroke:var(--color-main-background);stroke-width:8px;stroke-linejoin:round;paint-order:stroke}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/components/FileEntry/FavoriteIcon.vue\"],\"names\":[],\"mappings\":\"AACA,uCACC,2BAAA,CAEA,0BAAA,CACG,2BAAA,CAGF,4CAEC,qBAAA,CACA,sBAAA,CAGA,0BAAA,CACA,2BAAA,CAGA,iDACC,mCAAA,CACA,gBAAA,CACA,qBAAA,CACA,kBAAA\",\"sourcesContent\":[\"\\n.favorite-marker-icon {\\n\\tcolor: var(--color-favorite);\\n\\t// Override NcIconSvgWrapper defaults (clickable area)\\n\\tmin-width: unset !important;\\n    min-height: unset !important;\\n\\n\\t:deep() {\\n\\t\\tsvg {\\n\\t\\t\\t// We added a stroke for a11y so we must increase the size to include the stroke\\n\\t\\t\\twidth: 26px !important;\\n\\t\\t\\theight: 26px !important;\\n\\n\\t\\t\\t// Override NcIconSvgWrapper defaults of 20px\\n\\t\\t\\tmax-width: unset !important;\\n\\t\\t\\tmax-height: unset !important;\\n\\n\\t\\t\\t// Sow a border around the icon for better contrast\\n\\t\\t\\tpath {\\n\\t\\t\\t\\tstroke: var(--color-main-background);\\n\\t\\t\\t\\tstroke-width: 8px;\\n\\t\\t\\t\\tstroke-linejoin: round;\\n\\t\\t\\t\\tpaint-order: stroke;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `main.app-content[style*=mouse-pos-x] .v-popper__popper{transform:translate3d(var(--mouse-pos-x), var(--mouse-pos-y), 0px) !important}main.app-content[style*=mouse-pos-x] .v-popper__popper[data-popper-placement=top]{transform:translate3d(var(--mouse-pos-x), calc(var(--mouse-pos-y) - 50vh + 34px), 0px) !important}main.app-content[style*=mouse-pos-x] .v-popper__popper .v-popper__arrow-container{display:none}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/components/FileEntry/FileEntryActions.vue\"],\"names\":[],\"mappings\":\"AAGA,uDACC,6EAAA,CAGA,kFAEC,iGAAA,CAGD,kFACC,YAAA\",\"sourcesContent\":[\"\\n// Allow right click to define the position of the menu\\n// only if defined\\nmain.app-content[style*=\\\"mouse-pos-x\\\"] .v-popper__popper {\\n\\ttransform: translate3d(var(--mouse-pos-x), var(--mouse-pos-y), 0px) !important;\\n\\n\\t// If the menu is too close to the bottom, we move it up\\n\\t&[data-popper-placement=\\\"top\\\"] {\\n\\t\\t// 34px added to align with the top of the cursor\\n\\t\\ttransform: translate3d(var(--mouse-pos-x), calc(var(--mouse-pos-y) - 50vh + 34px), 0px) !important;\\n\\t}\\n\\t// Hide arrow if floating\\n\\t.v-popper__arrow-container {\\n\\t\\tdisplay: none;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `[data-v-801e4784] .button-vue--icon-and-text .button-vue__text{color:var(--color-primary-element)}[data-v-801e4784] .button-vue--icon-and-text .button-vue__icon{color:var(--color-primary-element)}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/components/FileEntry/FileEntryActions.vue\"],\"names\":[],\"mappings\":\"AAEC,+DACC,kCAAA,CAED,+DACC,kCAAA\",\"sourcesContent\":[\"\\n:deep(.button-vue--icon-and-text, .files-list__row-action-sharing-status) {\\n\\t.button-vue__text {\\n\\t\\tcolor: var(--color-primary-element);\\n\\t}\\n\\t.button-vue__icon {\\n\\t\\tcolor: var(--color-primary-element);\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `tr[data-v-130ade4f]{margin-bottom:300px;border-top:1px solid var(--color-border);background-color:rgba(0,0,0,0) !important;border-bottom:none !important}tr td[data-v-130ade4f]{user-select:none;color:var(--color-text-maxcontrast) !important}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/components/FilesListTableFooter.vue\"],\"names\":[],\"mappings\":\"AAEA,oBACC,mBAAA,CACA,wCAAA,CAEA,yCAAA,CACA,6BAAA,CAEA,uBACC,gBAAA,CAEA,8CAAA\",\"sourcesContent\":[\"\\n// Scoped row\\ntr {\\n\\tmargin-bottom: 300px;\\n\\tborder-top: 1px solid var(--color-border);\\n\\t// Prevent hover effect on the whole row\\n\\tbackground-color: transparent !important;\\n\\tborder-bottom: none !important;\\n\\n\\ttd {\\n\\t\\tuser-select: none;\\n\\t\\t// Make sure the cell colors don't apply to column headers\\n\\t\\tcolor: var(--color-text-maxcontrast) !important;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.files-list__column[data-v-6eaeabb8]{user-select:none;color:var(--color-text-maxcontrast) !important}.files-list__column--sortable[data-v-6eaeabb8]{cursor:pointer}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/components/FilesListTableHeader.vue\"],\"names\":[],\"mappings\":\"AACA,qCACC,gBAAA,CAEA,8CAAA,CAEA,+CACC,cAAA\",\"sourcesContent\":[\"\\n.files-list__column {\\n\\tuser-select: none;\\n\\t// Make sure the cell colors don't apply to column headers\\n\\tcolor: var(--color-text-maxcontrast) !important;\\n\\n\\t&--sortable {\\n\\t\\tcursor: pointer;\\n\\t}\\n}\\n\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.files-list__row-actions-batch[data-v-1284c4be]{flex:1 1 100% !important;max-width:100%}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/components/FilesListTableHeaderActions.vue\"],\"names\":[],\"mappings\":\"AACA,gDACC,wBAAA,CACA,cAAA\",\"sourcesContent\":[\"\\n.files-list__row-actions-batch {\\n\\tflex: 1 1 100% !important;\\n\\tmax-width: 100%;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.files-list__column-sort-button[data-v-4e97a5c6]{margin:0 calc(var(--cell-margin)*-1);min-width:calc(100% - 3*var(--cell-margin)) !important}.files-list__column-sort-button-text[data-v-4e97a5c6]{color:var(--color-text-maxcontrast);font-weight:normal}.files-list__column-sort-button-icon[data-v-4e97a5c6]{color:var(--color-text-maxcontrast);opacity:0;transition:opacity var(--animation-quick);inset-inline-start:-10px}.files-list__column-sort-button--size .files-list__column-sort-button-icon[data-v-4e97a5c6]{inset-inline-start:10px}.files-list__column-sort-button--active .files-list__column-sort-button-icon[data-v-4e97a5c6],.files-list__column-sort-button:hover .files-list__column-sort-button-icon[data-v-4e97a5c6],.files-list__column-sort-button:focus .files-list__column-sort-button-icon[data-v-4e97a5c6],.files-list__column-sort-button:active .files-list__column-sort-button-icon[data-v-4e97a5c6]{opacity:1}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/components/FilesListTableHeaderButton.vue\"],\"names\":[],\"mappings\":\"AACA,iDAEC,oCAAA,CACA,sDAAA,CAEA,sDACC,mCAAA,CACA,kBAAA,CAGD,sDACC,mCAAA,CACA,SAAA,CACA,yCAAA,CACA,wBAAA,CAGD,4FACC,uBAAA,CAGD,mXAIC,SAAA\",\"sourcesContent\":[\"\\n.files-list__column-sort-button {\\n\\t// Compensate for cells margin\\n\\tmargin: 0 calc(var(--cell-margin) * -1);\\n\\tmin-width: calc(100% - 3 * var(--cell-margin))!important;\\n\\n\\t&-text {\\n\\t\\tcolor: var(--color-text-maxcontrast);\\n\\t\\tfont-weight: normal;\\n\\t}\\n\\n\\t&-icon {\\n\\t\\tcolor: var(--color-text-maxcontrast);\\n\\t\\topacity: 0;\\n\\t\\ttransition: opacity var(--animation-quick);\\n\\t\\tinset-inline-start: -10px;\\n\\t}\\n\\n\\t&--size &-icon {\\n\\t\\tinset-inline-start: 10px;\\n\\t}\\n\\n\\t&--active &-icon,\\n\\t&:hover &-icon,\\n\\t&:focus &-icon,\\n\\t&:active &-icon {\\n\\t\\topacity: 1;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.files-list[data-v-88130a00]{--row-height: 55px;--cell-margin: 14px;--checkbox-padding: calc((var(--row-height) - var(--checkbox-size)) / 2);--checkbox-size: 24px;--clickable-area: var(--default-clickable-area);--icon-preview-size: 32px;overflow:auto;height:100%;will-change:scroll-position}.files-list[data-v-88130a00]  tbody{will-change:padding;contain:layout paint style;display:flex;flex-direction:column;width:100%;position:relative}.files-list[data-v-88130a00]  tbody tr{contain:strict}.files-list[data-v-88130a00]  tbody tr:hover,.files-list[data-v-88130a00]  tbody tr:focus{background-color:var(--color-background-dark)}.files-list[data-v-88130a00]  .files-list__before{display:flex;flex-direction:column}.files-list[data-v-88130a00]  .files-list__selected{padding-right:12px;white-space:nowrap}.files-list[data-v-88130a00]  .files-list__table{display:block}.files-list[data-v-88130a00]  .files-list__table.files-list__table--with-thead-overlay{margin-top:calc(-1*var(--row-height))}.files-list[data-v-88130a00]  .files-list__thead-overlay{position:sticky;top:0;margin-left:var(--row-height);z-index:20;display:flex;align-items:center;background-color:var(--color-main-background);border-bottom:1px solid var(--color-border);height:var(--row-height)}.files-list[data-v-88130a00]  .files-list__thead,.files-list[data-v-88130a00]  .files-list__tfoot{display:flex;flex-direction:column;width:100%;background-color:var(--color-main-background)}.files-list[data-v-88130a00]  .files-list__thead{position:sticky;z-index:10;top:0}.files-list[data-v-88130a00]  .files-list__tfoot{min-height:300px}.files-list[data-v-88130a00]  tr{position:relative;display:flex;align-items:center;width:100%;user-select:none;border-bottom:1px solid var(--color-border);box-sizing:border-box;user-select:none;height:var(--row-height)}.files-list[data-v-88130a00]  td,.files-list[data-v-88130a00]  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-88130a00]  td span,.files-list[data-v-88130a00]  th span{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.files-list[data-v-88130a00]  .files-list__row--failed{position:absolute;display:block;top:0;left:0;right:0;bottom:0;opacity:.1;z-index:-1;background:var(--color-error)}.files-list[data-v-88130a00]  .files-list__row-checkbox{justify-content:center}.files-list[data-v-88130a00]  .files-list__row-checkbox .checkbox-radio-switch{display:flex;justify-content:center;--icon-size: var(--checkbox-size)}.files-list[data-v-88130a00]  .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-88130a00]  .files-list__row-checkbox .checkbox-radio-switch .checkbox-radio-switch__icon{margin:0 !important}.files-list[data-v-88130a00]  .files-list__row:hover,.files-list[data-v-88130a00]  .files-list__row:focus,.files-list[data-v-88130a00]  .files-list__row:active,.files-list[data-v-88130a00]  .files-list__row--active,.files-list[data-v-88130a00]  .files-list__row--dragover{background-color:var(--color-background-hover);--color-text-maxcontrast: var(--color-main-text)}.files-list[data-v-88130a00]  .files-list__row:hover>*,.files-list[data-v-88130a00]  .files-list__row:focus>*,.files-list[data-v-88130a00]  .files-list__row:active>*,.files-list[data-v-88130a00]  .files-list__row--active>*,.files-list[data-v-88130a00]  .files-list__row--dragover>*{--color-border: var(--color-border-dark)}.files-list[data-v-88130a00]  .files-list__row:hover .favorite-marker-icon svg path,.files-list[data-v-88130a00]  .files-list__row:focus .favorite-marker-icon svg path,.files-list[data-v-88130a00]  .files-list__row:active .favorite-marker-icon svg path,.files-list[data-v-88130a00]  .files-list__row--active .favorite-marker-icon svg path,.files-list[data-v-88130a00]  .files-list__row--dragover .favorite-marker-icon svg path{stroke:var(--color-background-hover)}.files-list[data-v-88130a00]  .files-list__row--dragover *{pointer-events:none}.files-list[data-v-88130a00]  .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-88130a00]  .files-list__row-icon *{cursor:pointer}.files-list[data-v-88130a00]  .files-list__row-icon>span{justify-content:flex-start}.files-list[data-v-88130a00]  .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-88130a00]  .files-list__row-icon>span.folder-icon,.files-list[data-v-88130a00]  .files-list__row-icon>span.folder-open-icon{margin:-3px}.files-list[data-v-88130a00]  .files-list__row-icon>span.folder-icon svg,.files-list[data-v-88130a00]  .files-list__row-icon>span.folder-open-icon svg{width:calc(var(--icon-preview-size) + 6px);height:calc(var(--icon-preview-size) + 6px)}.files-list[data-v-88130a00]  .files-list__row-icon-preview{overflow:hidden;width:var(--icon-preview-size);height:var(--icon-preview-size);border-radius:var(--border-radius);object-fit:contain;object-position:center}.files-list[data-v-88130a00]  .files-list__row-icon-preview:not(.files-list__row-icon-preview--loaded){background:var(--color-loading-dark)}.files-list[data-v-88130a00]  .files-list__row-icon-favorite{position:absolute;top:0px;right:-10px}.files-list[data-v-88130a00]  .files-list__row-icon-overlay{position:absolute;max-height:calc(var(--icon-preview-size)*.5);max-width:calc(var(--icon-preview-size)*.5);color:var(--color-primary-element-text);margin-top:2px}.files-list[data-v-88130a00]  .files-list__row-icon-overlay--file{color:var(--color-main-text);background:var(--color-main-background);border-radius:100%}.files-list[data-v-88130a00]  .files-list__row-name{overflow:hidden;flex:1 1 auto}.files-list[data-v-88130a00]  .files-list__row-name a{display:flex;align-items:center;width:100%;height:100%;min-width:0}.files-list[data-v-88130a00]  .files-list__row-name a:focus-visible{outline:none}.files-list[data-v-88130a00]  .files-list__row-name a:focus .files-list__row-name-text{outline:2px solid var(--color-main-text) !important;border-radius:20px}.files-list[data-v-88130a00]  .files-list__row-name a:focus:not(:focus-visible) .files-list__row-name-text{outline:none !important}.files-list[data-v-88130a00]  .files-list__row-name .files-list__row-name-text{color:var(--color-main-text);padding:5px 10px;margin-left:-10px;display:inline-flex}.files-list[data-v-88130a00]  .files-list__row-name .files-list__row-name-ext{color:var(--color-text-maxcontrast);overflow:visible}.files-list[data-v-88130a00]  .files-list__row-rename{width:100%;max-width:600px}.files-list[data-v-88130a00]  .files-list__row-rename input{width:100%;margin-left:-8px;padding:2px 6px;border-width:2px}.files-list[data-v-88130a00]  .files-list__row-rename input:invalid{border-color:var(--color-error);color:red}.files-list[data-v-88130a00]  .files-list__row-actions{width:auto}.files-list[data-v-88130a00]  .files-list__row-actions~td,.files-list[data-v-88130a00]  .files-list__row-actions~th{margin:0 var(--cell-margin)}.files-list[data-v-88130a00]  .files-list__row-actions button .button-vue__text{font-weight:normal}.files-list[data-v-88130a00]  .files-list__row-action--inline{margin-right:7px}.files-list[data-v-88130a00]  .files-list__row-mtime,.files-list[data-v-88130a00]  .files-list__row-size{color:var(--color-text-maxcontrast)}.files-list[data-v-88130a00]  .files-list__row-size{width:calc(var(--row-height)*1.5);justify-content:flex-end}.files-list[data-v-88130a00]  .files-list__row-mtime{width:calc(var(--row-height)*2)}.files-list[data-v-88130a00]  .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,+CAAA,CACA,yBAAA,CAEA,aAAA,CACA,WAAA,CACA,2BAAA,CAIC,oCACC,mBAAA,CACA,0BAAA,CACA,YAAA,CACA,qBAAA,CACA,UAAA,CAEA,iBAAA,CAGA,uCACC,cAAA,CACA,0FAEC,6CAAA,CAMH,kDACC,YAAA,CACA,qBAAA,CAGD,oDACC,kBAAA,CACA,kBAAA,CAGD,iDACC,aAAA,CAEA,uFAEC,qCAAA,CAIF,yDAEC,eAAA,CACA,KAAA,CAEA,6BAAA,CAEA,UAAA,CAEA,YAAA,CACA,kBAAA,CAGA,6CAAA,CACA,2CAAA,CACA,wBAAA,CAGD,kGAEC,YAAA,CACA,qBAAA,CACA,UAAA,CACA,6CAAA,CAKD,iDAEC,eAAA,CACA,UAAA,CACA,KAAA,CAID,iDACC,gBAAA,CAGD,iCACC,iBAAA,CACA,YAAA,CACA,kBAAA,CACA,UAAA,CACA,gBAAA,CACA,2CAAA,CACA,qBAAA,CACA,gBAAA,CACA,wBAAA,CAGD,kEACC,YAAA,CACA,kBAAA,CACA,aAAA,CACA,oBAAA,CACA,uBAAA,CACA,wBAAA,CACA,QAAA,CACA,SAAA,CACA,mCAAA,CACA,WAAA,CAKA,4EACC,eAAA,CACA,kBAAA,CACA,sBAAA,CAIF,uDACC,iBAAA,CACA,aAAA,CACA,KAAA,CACA,MAAA,CACA,OAAA,CACA,QAAA,CACA,UAAA,CACA,UAAA,CACA,6BAAA,CAGD,wDACC,sBAAA,CAEA,+EACC,YAAA,CACA,sBAAA,CAEA,iCAAA,CAEA,kHACC,2BAAA,CACA,4BAAA,CACA,QAAA,CACA,8DAAA,CAGD,4GACC,mBAAA,CAMF,gRAEC,8CAAA,CAGA,gDAAA,CACA,0RACC,wCAAA,CAID,2aACC,oCAAA,CAIF,2DAEC,mBAAA,CAKF,oDACC,iBAAA,CACA,YAAA,CACA,gBAAA,CACA,kBAAA,CAEA,iCAAA,CACA,sBAAA,CACA,8BAAA,CACA,WAAA,CAEA,oCAAA,CACA,kCAAA,CAGA,sDACC,cAAA,CAGD,yDACC,0BAAA,CAEA,iGACC,8BAAA,CACA,+BAAA,CAID,+IAEC,WAAA,CACA,uJACC,0CAAA,CACA,2CAAA,CAKH,4DACC,eAAA,CACA,8BAAA,CACA,+BAAA,CACA,kCAAA,CAEA,kBAAA,CACA,sBAAA,CAGA,uGACC,oCAAA,CAKF,6DACC,iBAAA,CACA,OAAA,CACA,WAAA,CAID,4DACC,iBAAA,CACA,4CAAA,CACA,2CAAA,CACA,uCAAA,CAEA,cAAA,CAGA,kEACC,4BAAA,CACA,uCAAA,CACA,kBAAA,CAMH,oDAEC,eAAA,CAEA,aAAA,CAEA,sDACC,YAAA,CACA,kBAAA,CAEA,UAAA,CACA,WAAA,CAEA,WAAA,CAGA,oEACC,YAAA,CAID,uFACC,mDAAA,CACA,kBAAA,CAED,2GACC,uBAAA,CAIF,+EACC,4BAAA,CAEA,gBAAA,CACA,iBAAA,CAEA,mBAAA,CAGD,8EACC,mCAAA,CAEA,gBAAA,CAKF,sDACC,UAAA,CACA,eAAA,CACA,4DACC,UAAA,CAEA,gBAAA,CACA,eAAA,CACA,gBAAA,CAEA,oEAEC,+BAAA,CACA,SAAA,CAKH,uDAEC,UAAA,CAGA,oHAEC,2BAAA,CAIA,gFAEC,kBAAA,CAKH,8DACC,gBAAA,CAGD,yGAEC,mCAAA,CAED,oDACC,iCAAA,CAEA,wBAAA,CAGD,qDACC,+BAAA,CAGD,6DACC,+BAAA\",\"sourcesContent\":[\"\\n.files-list {\\n\\t--row-height: 55px;\\n\\t--cell-margin: 14px;\\n\\n\\t--checkbox-padding: calc((var(--row-height) - var(--checkbox-size)) / 2);\\n\\t--checkbox-size: 24px;\\n\\t--clickable-area: var(--default-clickable-area);\\n\\t--icon-preview-size: 32px;\\n\\n\\toverflow: auto;\\n\\theight: 100%;\\n\\twill-change: scroll-position;\\n\\n\\t& :deep() {\\n\\t\\t// Table head, body and footer\\n\\t\\ttbody {\\n\\t\\t\\twill-change: padding;\\n\\t\\t\\tcontain: layout paint style;\\n\\t\\t\\tdisplay: flex;\\n\\t\\t\\tflex-direction: column;\\n\\t\\t\\twidth: 100%;\\n\\t\\t\\t// Necessary for virtual scrolling absolute\\n\\t\\t\\tposition: relative;\\n\\n\\t\\t\\t/* Hover effect on tbody lines only */\\n\\t\\t\\ttr {\\n\\t\\t\\t\\tcontain: strict;\\n\\t\\t\\t\\t&:hover,\\n\\t\\t\\t\\t&:focus {\\n\\t\\t\\t\\t\\tbackground-color: var(--color-background-dark);\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t// Before table and thead\\n\\t\\t.files-list__before {\\n\\t\\t\\tdisplay: flex;\\n\\t\\t\\tflex-direction: column;\\n\\t\\t}\\n\\n\\t\\t.files-list__selected {\\n\\t\\t\\tpadding-right: 12px;\\n\\t\\t\\twhite-space: nowrap;\\n\\t\\t}\\n\\n\\t\\t.files-list__table {\\n\\t\\t\\tdisplay: block;\\n\\n\\t\\t\\t&.files-list__table--with-thead-overlay {\\n\\t\\t\\t\\t// Hide the table header below the overlay\\n\\t\\t\\t\\tmargin-top: calc(-1 * var(--row-height));\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t.files-list__thead-overlay {\\n\\t\\t\\t// Pinned on top when scrolling\\n\\t\\t\\tposition: sticky;\\n\\t\\t\\ttop: 0;\\n\\t\\t\\t// Save space for a row checkbox\\n\\t\\t\\tmargin-left: var(--row-height);\\n\\t\\t\\t// More than .files-list__thead\\n\\t\\t\\tz-index: 20;\\n\\n\\t\\t\\tdisplay: flex;\\n\\t\\t\\talign-items: center;\\n\\n\\t\\t\\t// Reuse row styles\\n\\t\\t\\tbackground-color: var(--color-main-background);\\n\\t\\t\\tborder-bottom: 1px solid var(--color-border);\\n\\t\\t\\theight: var(--row-height);\\n\\t\\t}\\n\\n\\t\\t.files-list__thead,\\n\\t\\t.files-list__tfoot {\\n\\t\\t\\tdisplay: flex;\\n\\t\\t\\tflex-direction: column;\\n\\t\\t\\twidth: 100%;\\n\\t\\t\\tbackground-color: var(--color-main-background);\\n\\n\\t\\t}\\n\\n\\t\\t// Table header\\n\\t\\t.files-list__thead {\\n\\t\\t\\t// Pinned on top when scrolling\\n\\t\\t\\tposition: sticky;\\n\\t\\t\\tz-index: 10;\\n\\t\\t\\ttop: 0;\\n\\t\\t}\\n\\n\\t\\t// Table footer\\n\\t\\t.files-list__tfoot {\\n\\t\\t\\tmin-height: 300px;\\n\\t\\t}\\n\\n\\t\\ttr {\\n\\t\\t\\tposition: relative;\\n\\t\\t\\tdisplay: flex;\\n\\t\\t\\talign-items: center;\\n\\t\\t\\twidth: 100%;\\n\\t\\t\\tuser-select: none;\\n\\t\\t\\tborder-bottom: 1px solid var(--color-border);\\n\\t\\t\\tbox-sizing: border-box;\\n\\t\\t\\tuser-select: none;\\n\\t\\t\\theight: var(--row-height);\\n\\t\\t}\\n\\n\\t\\ttd, th {\\n\\t\\t\\tdisplay: flex;\\n\\t\\t\\talign-items: center;\\n\\t\\t\\tflex: 0 0 auto;\\n\\t\\t\\tjustify-content: left;\\n\\t\\t\\twidth: var(--row-height);\\n\\t\\t\\theight: var(--row-height);\\n\\t\\t\\tmargin: 0;\\n\\t\\t\\tpadding: 0;\\n\\t\\t\\tcolor: var(--color-text-maxcontrast);\\n\\t\\t\\tborder: none;\\n\\n\\t\\t\\t// Columns should try to add any text\\n\\t\\t\\t// node wrapped in a span. That should help\\n\\t\\t\\t// with the ellipsis on overflow.\\n\\t\\t\\tspan {\\n\\t\\t\\t\\toverflow: hidden;\\n\\t\\t\\t\\twhite-space: nowrap;\\n\\t\\t\\t\\ttext-overflow: ellipsis;\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t.files-list__row--failed {\\n\\t\\t\\tposition: absolute;\\n\\t\\t\\tdisplay: block;\\n\\t\\t\\ttop: 0;\\n\\t\\t\\tleft: 0;\\n\\t\\t\\tright: 0;\\n\\t\\t\\tbottom: 0;\\n\\t\\t\\topacity: .1;\\n\\t\\t\\tz-index: -1;\\n\\t\\t\\tbackground: var(--color-error);\\n\\t\\t}\\n\\n\\t\\t.files-list__row-checkbox {\\n\\t\\t\\tjustify-content: center;\\n\\n\\t\\t\\t.checkbox-radio-switch {\\n\\t\\t\\t\\tdisplay: flex;\\n\\t\\t\\t\\tjustify-content: center;\\n\\n\\t\\t\\t\\t--icon-size: var(--checkbox-size);\\n\\n\\t\\t\\t\\tlabel.checkbox-radio-switch__label {\\n\\t\\t\\t\\t\\twidth: var(--clickable-area);\\n\\t\\t\\t\\t\\theight: var(--clickable-area);\\n\\t\\t\\t\\t\\tmargin: 0;\\n\\t\\t\\t\\t\\tpadding: calc((var(--clickable-area) - var(--checkbox-size)) / 2);\\n\\t\\t\\t\\t}\\n\\n\\t\\t\\t\\t.checkbox-radio-switch__icon {\\n\\t\\t\\t\\t\\tmargin: 0 !important;\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t.files-list__row {\\n\\t\\t\\t&:hover, &:focus, &:active, &--active, &--dragover {\\n\\t\\t\\t\\t// WCAG AA compliant\\n\\t\\t\\t\\tbackground-color: var(--color-background-hover);\\n\\t\\t\\t\\t// text-maxcontrast have been designed to pass WCAG AA over\\n\\t\\t\\t\\t// a white background, we need to adjust then.\\n\\t\\t\\t\\t--color-text-maxcontrast: var(--color-main-text);\\n\\t\\t\\t\\t> * {\\n\\t\\t\\t\\t\\t--color-border: var(--color-border-dark);\\n\\t\\t\\t\\t}\\n\\n\\t\\t\\t\\t// Hover state of the row should also change the favorite markers background\\n\\t\\t\\t\\t.favorite-marker-icon svg path {\\n\\t\\t\\t\\t\\tstroke: var(--color-background-hover);\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\n\\t\\t\\t&--dragover * {\\n\\t\\t\\t\\t// Prevent dropping on row children\\n\\t\\t\\t\\tpointer-events: none;\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t// Entry preview or mime icon\\n\\t\\t.files-list__row-icon {\\n\\t\\t\\tposition: relative;\\n\\t\\t\\tdisplay: flex;\\n\\t\\t\\toverflow: visible;\\n\\t\\t\\talign-items: center;\\n\\t\\t\\t// No shrinking or growing allowed\\n\\t\\t\\tflex: 0 0 var(--icon-preview-size);\\n\\t\\t\\tjustify-content: center;\\n\\t\\t\\twidth: var(--icon-preview-size);\\n\\t\\t\\theight: 100%;\\n\\t\\t\\t// Show same padding as the checkbox right padding for visual balance\\n\\t\\t\\tmargin-right: var(--checkbox-padding);\\n\\t\\t\\tcolor: var(--color-primary-element);\\n\\n\\t\\t\\t// Icon is also clickable\\n\\t\\t\\t* {\\n\\t\\t\\t\\tcursor: pointer;\\n\\t\\t\\t}\\n\\n\\t\\t\\t& > span {\\n\\t\\t\\t\\tjustify-content: flex-start;\\n\\n\\t\\t\\t\\t&:not(.files-list__row-icon-favorite) svg {\\n\\t\\t\\t\\t\\twidth: var(--icon-preview-size);\\n\\t\\t\\t\\t\\theight: var(--icon-preview-size);\\n\\t\\t\\t\\t}\\n\\n\\t\\t\\t\\t// Slightly increase the size of the folder icon\\n\\t\\t\\t\\t&.folder-icon,\\n\\t\\t\\t\\t&.folder-open-icon {\\n\\t\\t\\t\\t\\tmargin: -3px;\\n\\t\\t\\t\\t\\tsvg {\\n\\t\\t\\t\\t\\t\\twidth: calc(var(--icon-preview-size) + 6px);\\n\\t\\t\\t\\t\\t\\theight: calc(var(--icon-preview-size) + 6px);\\n\\t\\t\\t\\t\\t}\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\n\\t\\t\\t&-preview {\\n\\t\\t\\t\\toverflow: hidden;\\n\\t\\t\\t\\twidth: var(--icon-preview-size);\\n\\t\\t\\t\\theight: var(--icon-preview-size);\\n\\t\\t\\t\\tborder-radius: var(--border-radius);\\n\\t\\t\\t\\t// Center and contain the preview\\n\\t\\t\\t\\tobject-fit: contain;\\n\\t\\t\\t\\tobject-position: center;\\n\\n\\t\\t\\t\\t/* Preview not loaded animation effect */\\n\\t\\t\\t\\t&:not(.files-list__row-icon-preview--loaded) {\\n\\t\\t\\t\\t\\tbackground: var(--color-loading-dark);\\n\\t\\t\\t\\t\\t// animation: preview-gradient-fade 1.2s ease-in-out infinite;\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\n\\t\\t\\t&-favorite {\\n\\t\\t\\t\\tposition: absolute;\\n\\t\\t\\t\\ttop: 0px;\\n\\t\\t\\t\\tright: -10px;\\n\\t\\t\\t}\\n\\n\\t\\t\\t// File and folder overlay\\n\\t\\t\\t&-overlay {\\n\\t\\t\\t\\tposition: absolute;\\n\\t\\t\\t\\tmax-height: calc(var(--icon-preview-size) * 0.5);\\n\\t\\t\\t\\tmax-width: calc(var(--icon-preview-size) * 0.5);\\n\\t\\t\\t\\tcolor: var(--color-primary-element-text);\\n\\t\\t\\t\\t// better alignment with the folder icon\\n\\t\\t\\t\\tmargin-top: 2px;\\n\\n\\t\\t\\t\\t// Improve icon contrast with a background for files\\n\\t\\t\\t\\t&--file {\\n\\t\\t\\t\\t\\tcolor: var(--color-main-text);\\n\\t\\t\\t\\t\\tbackground: var(--color-main-background);\\n\\t\\t\\t\\t\\tborder-radius: 100%;\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t// Entry link\\n\\t\\t.files-list__row-name {\\n\\t\\t\\t// Prevent link from overflowing\\n\\t\\t\\toverflow: hidden;\\n\\t\\t\\t// Take as much space as possible\\n\\t\\t\\tflex: 1 1 auto;\\n\\n\\t\\t\\ta {\\n\\t\\t\\t\\tdisplay: flex;\\n\\t\\t\\t\\talign-items: center;\\n\\t\\t\\t\\t// Fill cell height and width\\n\\t\\t\\t\\twidth: 100%;\\n\\t\\t\\t\\theight: 100%;\\n\\t\\t\\t\\t// Necessary for flex grow to work\\n\\t\\t\\t\\tmin-width: 0;\\n\\n\\t\\t\\t\\t// Already added to the inner text, see rule below\\n\\t\\t\\t\\t&:focus-visible {\\n\\t\\t\\t\\t\\toutline: none;\\n\\t\\t\\t\\t}\\n\\n\\t\\t\\t\\t// Keyboard indicator a11y\\n\\t\\t\\t\\t&:focus .files-list__row-name-text {\\n\\t\\t\\t\\t\\toutline: 2px solid var(--color-main-text) !important;\\n\\t\\t\\t\\t\\tborder-radius: 20px;\\n\\t\\t\\t\\t}\\n\\t\\t\\t\\t&:focus:not(:focus-visible) .files-list__row-name-text {\\n\\t\\t\\t\\t\\toutline: none !important;\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\n\\t\\t\\t.files-list__row-name-text {\\n\\t\\t\\t\\tcolor: var(--color-main-text);\\n\\t\\t\\t\\t// Make some space for the outline\\n\\t\\t\\t\\tpadding: 5px 10px;\\n\\t\\t\\t\\tmargin-left: -10px;\\n\\t\\t\\t\\t// Align two name and ext\\n\\t\\t\\t\\tdisplay: inline-flex;\\n\\t\\t\\t}\\n\\n\\t\\t\\t.files-list__row-name-ext {\\n\\t\\t\\t\\tcolor: var(--color-text-maxcontrast);\\n\\t\\t\\t\\t// always show the extension\\n\\t\\t\\t\\toverflow: visible;\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t// Rename form\\n\\t\\t.files-list__row-rename {\\n\\t\\t\\twidth: 100%;\\n\\t\\t\\tmax-width: 600px;\\n\\t\\t\\tinput {\\n\\t\\t\\t\\twidth: 100%;\\n\\t\\t\\t\\t// Align with text, 0 - padding - border\\n\\t\\t\\t\\tmargin-left: -8px;\\n\\t\\t\\t\\tpadding: 2px 6px;\\n\\t\\t\\t\\tborder-width: 2px;\\n\\n\\t\\t\\t\\t&:invalid {\\n\\t\\t\\t\\t\\t// Show red border on invalid input\\n\\t\\t\\t\\t\\tborder-color: var(--color-error);\\n\\t\\t\\t\\t\\tcolor: red;\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t.files-list__row-actions {\\n\\t\\t\\t// take as much space as necessary\\n\\t\\t\\twidth: auto;\\n\\n\\t\\t\\t// Add margin to all cells after the actions\\n\\t\\t\\t& ~ td,\\n\\t\\t\\t& ~ th {\\n\\t\\t\\t\\tmargin: 0 var(--cell-margin);\\n\\t\\t\\t}\\n\\n\\t\\t\\tbutton {\\n\\t\\t\\t\\t.button-vue__text {\\n\\t\\t\\t\\t\\t// Remove bold from default button styling\\n\\t\\t\\t\\t\\tfont-weight: normal;\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t.files-list__row-action--inline {\\n\\t\\t\\tmargin-right: 7px;\\n\\t\\t}\\n\\n\\t\\t.files-list__row-mtime,\\n\\t\\t.files-list__row-size {\\n\\t\\t\\tcolor: var(--color-text-maxcontrast);\\n\\t\\t}\\n\\t\\t.files-list__row-size {\\n\\t\\t\\twidth: calc(var(--row-height) * 1.5);\\n\\t\\t\\t// Right align content/text\\n\\t\\t\\tjustify-content: flex-end;\\n\\t\\t}\\n\\n\\t\\t.files-list__row-mtime {\\n\\t\\t\\twidth: calc(var(--row-height) * 2);\\n\\t\\t}\\n\\n\\t\\t.files-list__row-column-custom {\\n\\t\\t\\twidth: calc(var(--row-height) * 2);\\n\\t\\t}\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `tbody.files-list__tbody.files-list__tbody--grid{--half-clickable-area: calc(var(--clickable-area) / 2);--item-padding: 16px;--icon-preview-size: 166px;--name-height: 32px;--mtime-height: 16px;--row-width: calc(var(--icon-preview-size) + var(--item-padding) * 2);--row-height: calc(var(--icon-preview-size) + var(--name-height) + var(--mtime-height) + var(--item-padding) * 2);--checkbox-padding: 0px;display:grid;grid-template-columns:repeat(auto-fill, var(--row-width));align-content:center;align-items:center;justify-content:space-around;justify-items:center;margin:16px;width:calc(100% - 32px)}tbody.files-list__tbody.files-list__tbody--grid tr{display:flex;flex-direction:column;width:var(--row-width);height:var(--row-height);border:none;border-radius:var(--border-radius-large);padding:var(--item-padding)}tbody.files-list__tbody.files-list__tbody--grid .files-list__row-checkbox{position:absolute;z-index:9;top:calc(var(--item-padding)/2);left:calc(var(--item-padding)/2);overflow:hidden;--checkbox-container-size: 44px;width:var(--checkbox-container-size);height:var(--checkbox-container-size)}tbody.files-list__tbody.files-list__tbody--grid .files-list__row-checkbox .checkbox-radio-switch__content::after{content:\"\";width:16px;height:16px;position:absolute;left:50%;margin-left:-8px;z-index:-1;background:var(--color-main-background)}tbody.files-list__tbody.files-list__tbody--grid .files-list__row-icon-favorite{position:absolute;top:0;right:0;display:flex;align-items:center;justify-content:center;width:var(--clickable-area);height:var(--clickable-area)}tbody.files-list__tbody.files-list__tbody--grid .files-list__row-name{display:flex;flex-direction:column;width:var(--icon-preview-size);height:calc(var(--icon-preview-size) + var(--name-height));overflow:visible}tbody.files-list__tbody.files-list__tbody--grid .files-list__row-name span.files-list__row-icon{width:var(--icon-preview-size);height:var(--icon-preview-size)}tbody.files-list__tbody.files-list__tbody--grid .files-list__row-name a.files-list__row-name-link{height:var(--name-height)}tbody.files-list__tbody.files-list__tbody--grid .files-list__row-name .files-list__row-name-text{margin:0;margin-left:-4px;padding:0px 4px}tbody.files-list__tbody.files-list__tbody--grid .files-list__row-mtime{width:var(--icon-preview-size);height:var(--mtime-height);font-size:calc(var(--default-font-size) - 4px)}tbody.files-list__tbody.files-list__tbody--grid .files-list__row-actions{position:absolute;right:calc(var(--half-clickable-area)/2);bottom:calc(var(--mtime-height)/2);width:var(--clickable-area);height:var(--clickable-area)}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/components/FilesListVirtual.vue\"],\"names\":[],\"mappings\":\"AAEA,gDACC,sDAAA,CACA,oBAAA,CACA,0BAAA,CACA,mBAAA,CACA,oBAAA,CACA,qEAAA,CACA,iHAAA,CACA,uBAAA,CAEA,YAAA,CACA,yDAAA,CAEA,oBAAA,CACA,kBAAA,CACA,4BAAA,CACA,oBAAA,CACA,WAAA,CACA,uBAAA,CAEA,mDACC,YAAA,CACA,qBAAA,CACA,sBAAA,CACA,wBAAA,CACA,WAAA,CACA,wCAAA,CACA,2BAAA,CAID,0EACC,iBAAA,CACA,SAAA,CACA,+BAAA,CACA,gCAAA,CACA,eAAA,CACA,+BAAA,CACA,oCAAA,CACA,qCAAA,CAGA,iHACC,UAAA,CACA,UAAA,CACA,WAAA,CACA,iBAAA,CACA,QAAA,CACA,gBAAA,CACA,UAAA,CACA,uCAAA,CAKF,+EACC,iBAAA,CACA,KAAA,CACA,OAAA,CACA,YAAA,CACA,kBAAA,CACA,sBAAA,CACA,2BAAA,CACA,4BAAA,CAGD,sEACC,YAAA,CACA,qBAAA,CACA,8BAAA,CACA,0DAAA,CAEA,gBAAA,CAEA,gGACC,8BAAA,CACA,+BAAA,CAGD,kGACC,yBAAA,CAGD,iGACC,QAAA,CAEA,gBAAA,CACA,eAAA,CAIF,uEACC,8BAAA,CACA,0BAAA,CACA,8CAAA,CAGD,yEACC,iBAAA,CACA,wCAAA,CACA,kCAAA,CACA,2BAAA,CACA,4BAAA\",\"sourcesContent\":[\"\\n// Grid mode\\ntbody.files-list__tbody.files-list__tbody--grid {\\n\\t--half-clickable-area: calc(var(--clickable-area) / 2);\\n\\t--item-padding: 16px;\\n\\t--icon-preview-size: 166px;\\n\\t--name-height: 32px;\\n\\t--mtime-height: 16px;\\n\\t--row-width: calc(var(--icon-preview-size) + var(--item-padding) * 2);\\n\\t--row-height: calc(var(--icon-preview-size) + var(--name-height) + var(--mtime-height) + var(--item-padding) * 2);\\n\\t--checkbox-padding: 0px;\\n\\n\\tdisplay: grid;\\n\\tgrid-template-columns: repeat(auto-fill, var(--row-width));\\n\\n\\talign-content: center;\\n\\talign-items: center;\\n\\tjustify-content: space-around;\\n\\tjustify-items: center;\\n\\tmargin: 16px;\\n\\twidth: calc(100% - 32px);\\n\\n\\ttr {\\n\\t\\tdisplay: flex;\\n\\t\\tflex-direction: column;\\n\\t\\twidth: var(--row-width);\\n\\t\\theight: var(--row-height);\\n\\t\\tborder: none;\\n\\t\\tborder-radius: var(--border-radius-large);\\n\\t\\tpadding: var(--item-padding);\\n\\t}\\n\\n\\t// Checkbox in the top left\\n\\t.files-list__row-checkbox {\\n\\t\\tposition: absolute;\\n\\t\\tz-index: 9;\\n\\t\\ttop: calc(var(--item-padding)/2);\\n\\t\\tleft: calc(var(--item-padding)/2);\\n\\t\\toverflow: hidden;\\n\\t\\t--checkbox-container-size: 44px;\\n\\t\\twidth: var(--checkbox-container-size);\\n\\t\\theight: var(--checkbox-container-size);\\n\\n\\t\\t// Add a background to the checkbox so we do not see the image through it.\\n\\t\\t.checkbox-radio-switch__content::after {\\n\\t\\t\\tcontent: '';\\n\\t\\t\\twidth: 16px;\\n\\t\\t\\theight: 16px;\\n\\t\\t\\tposition: absolute;\\n\\t\\t\\tleft: 50%;\\n\\t\\t\\tmargin-left: -8px;\\n\\t\\t\\tz-index: -1;\\n\\t\\t\\tbackground: var(--color-main-background);\\n\\t\\t}\\n\\t}\\n\\n\\t// Star icon in the top right\\n\\t.files-list__row-icon-favorite {\\n\\t\\tposition: absolute;\\n\\t\\ttop: 0;\\n\\t\\tright: 0;\\n\\t\\tdisplay: flex;\\n\\t\\talign-items: center;\\n\\t\\tjustify-content: center;\\n\\t\\twidth: var(--clickable-area);\\n\\t\\theight: var(--clickable-area);\\n\\t}\\n\\n\\t.files-list__row-name {\\n\\t\\tdisplay: flex;\\n\\t\\tflex-direction: column;\\n\\t\\twidth: var(--icon-preview-size);\\n\\t\\theight: calc(var(--icon-preview-size) + var(--name-height));\\n\\t\\t// Ensure that the name outline is visible.\\n\\t\\toverflow: visible;\\n\\n\\t\\tspan.files-list__row-icon {\\n\\t\\t\\twidth: var(--icon-preview-size);\\n\\t\\t\\theight: var(--icon-preview-size);\\n\\t\\t}\\n\\n\\t\\ta.files-list__row-name-link {\\n\\t\\t\\theight: var(--name-height);\\n\\t\\t}\\n\\n\\t\\t.files-list__row-name-text {\\n\\t\\t\\tmargin: 0;\\n\\t\\t\\t// Ensure that the outline is not too close to the text.\\n\\t\\t\\tmargin-left: -4px;\\n\\t\\t\\tpadding: 0px 4px;\\n\\t\\t}\\n\\t}\\n\\n\\t.files-list__row-mtime {\\n\\t\\twidth: var(--icon-preview-size);\\n\\t\\theight: var(--mtime-height);\\n\\t\\tfont-size: calc(var(--default-font-size) - 4px);\\n\\t}\\n\\n\\t.files-list__row-actions {\\n\\t\\tposition: absolute;\\n\\t\\tright: calc(var(--half-clickable-area) / 2);\\n\\t\\tbottom: calc(var(--mtime-height) / 2);\\n\\t\\twidth: var(--clickable-area);\\n\\t\\theight: var(--clickable-area);\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.app-navigation-entry__settings-quota--not-unlimited[data-v-e6f06e0e] .app-navigation-entry__name{margin-top:-6px}.app-navigation-entry__settings-quota progress[data-v-e6f06e0e]{position:absolute;bottom:12px;margin-left:44px;width:calc(100% - 44px - 22px)}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/components/NavigationQuota.vue\"],\"names\":[],\"mappings\":\"AAIC,kGACC,eAAA,CAGD,gEACC,iBAAA,CACA,WAAA,CACA,gBAAA,CACA,8BAAA\",\"sourcesContent\":[\"\\n// User storage stats display\\n.app-navigation-entry__settings-quota {\\n\\t// Align title with progress and icon\\n\\t&--not-unlimited::v-deep .app-navigation-entry__name {\\n\\t\\tmargin-top: -6px;\\n\\t}\\n\\n\\tprogress {\\n\\t\\tposition: absolute;\\n\\t\\tbottom: 12px;\\n\\t\\tmargin-left: 44px;\\n\\t\\twidth: calc(100% - 44px - 22px);\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.app-content[data-v-6adc9ce9]{display:flex;overflow:hidden;flex-direction:column;max-height:100%;position:relative !important}.files-list__header[data-v-6adc9ce9]{display:flex;align-items:center;flex:0 0;max-width:100%;margin-block:var(--app-navigation-padding, 4px);margin-inline:calc(var(--default-clickable-area, 44px) + 2*var(--app-navigation-padding, 4px)) var(--app-navigation-padding, 4px)}.files-list__header>*[data-v-6adc9ce9]{flex:0 0}.files-list__header-share-button[data-v-6adc9ce9]{color:var(--color-text-maxcontrast) !important}.files-list__header-share-button--shared[data-v-6adc9ce9]{color:var(--color-main-text) !important}.files-list__refresh-icon[data-v-6adc9ce9]{flex:0 0 44px;width:44px;height:44px}.files-list__loading-icon[data-v-6adc9ce9]{margin:auto}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/views/FilesList.vue\"],\"names\":[],\"mappings\":\"AACA,8BAEC,YAAA,CACA,eAAA,CACA,qBAAA,CACA,eAAA,CACA,4BAAA,CAIA,qCACC,YAAA,CACA,kBAAA,CAEA,QAAA,CACA,cAAA,CAEA,+CAAA,CACA,iIAAA,CAEA,uCAGC,QAAA,CAGD,kDACC,8CAAA,CAEA,0DACC,uCAAA,CAKH,2CACC,aAAA,CACA,UAAA,CACA,WAAA,CAGD,2CACC,WAAA\",\"sourcesContent\":[\"\\n.app-content {\\n\\t// Virtual list needs to be full height and is scrollable\\n\\tdisplay: flex;\\n\\toverflow: hidden;\\n\\tflex-direction: column;\\n\\tmax-height: 100%;\\n\\tposition: relative !important;\\n}\\n\\n.files-list {\\n\\t&__header {\\n\\t\\tdisplay: flex;\\n\\t\\talign-items: center;\\n\\t\\t// Do not grow or shrink (vertically)\\n\\t\\tflex: 0 0;\\n\\t\\tmax-width: 100%;\\n\\t\\t// Align with the navigation toggle icon\\n\\t\\tmargin-block: var(--app-navigation-padding, 4px);\\n\\t\\tmargin-inline: calc(var(--default-clickable-area, 44px) + 2 * var(--app-navigation-padding, 4px)) var(--app-navigation-padding, 4px);\\n\\n\\t\\t>* {\\n\\t\\t\\t// Do not grow or shrink (horizontally)\\n\\t\\t\\t// Only the breadcrumbs shrinks\\n\\t\\t\\tflex: 0 0;\\n\\t\\t}\\n\\n\\t\\t&-share-button {\\n\\t\\t\\tcolor: var(--color-text-maxcontrast) !important;\\n\\n\\t\\t\\t&--shared {\\n\\t\\t\\t\\tcolor: var(--color-main-text) !important;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n\\n\\t&__refresh-icon {\\n\\t\\tflex: 0 0 44px;\\n\\t\\twidth: 44px;\\n\\t\\theight: 44px;\\n\\t}\\n\\n\\t&__loading-icon {\\n\\t\\tmargin: auto;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.app-navigation[data-v-66457116] .app-navigation-entry-icon{background-repeat:no-repeat;background-position:center}.app-navigation[data-v-66457116] .app-navigation-entry.active .button-vue.icon-collapse:not(:hover){color:var(--color-primary-element-text)}.app-navigation>ul.app-navigation__list[data-v-66457116]{padding-bottom:var(--default-grid-baseline, 4px)}.app-navigation-entry__settings[data-v-66457116]{height:auto !important;overflow:hidden !important;padding-top:0 !important;flex:0 0 auto}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/views/Navigation.vue\"],\"names\":[],\"mappings\":\"AAEA,4DACC,2BAAA,CACA,0BAAA,CAGD,oGACC,uCAAA,CAGD,yDAEC,gDAAA,CAGD,iDACC,sBAAA,CACA,0BAAA,CACA,wBAAA,CAEA,aAAA\",\"sourcesContent\":[\"\\n// TODO: remove when https://github.com/nextcloud/nextcloud-vue/pull/3539 is in\\n.app-navigation::v-deep .app-navigation-entry-icon {\\n\\tbackground-repeat: no-repeat;\\n\\tbackground-position: center;\\n}\\n\\n.app-navigation::v-deep .app-navigation-entry.active .button-vue.icon-collapse:not(:hover) {\\n\\tcolor: var(--color-primary-element-text);\\n}\\n\\n.app-navigation > ul.app-navigation__list {\\n\\t// Use flex gap value for more elegant spacing\\n\\tpadding-bottom: var(--default-grid-baseline, 4px);\\n}\\n\\n.app-navigation-entry__settings {\\n\\theight: auto !important;\\n\\toverflow: hidden !important;\\n\\tpadding-top: 0 !important;\\n\\t// Prevent shrinking or growing\\n\\tflex: 0 0 auto;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.setting-link[data-v-d0d365f6]:hover{text-decoration:underline}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/views/Settings.vue\"],\"names\":[],\"mappings\":\"AACA,qCACC,yBAAA\",\"sourcesContent\":[\"\\n.setting-link:hover {\\n\\ttext-decoration: underline;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","'use strict';\n\nconst denyList = new Set([\n\t'ENOTFOUND',\n\t'ENETUNREACH',\n\n\t// SSL errors from https://github.com/nodejs/node/blob/fc8e3e2cdc521978351de257030db0076d79e0ab/src/crypto/crypto_common.cc#L301-L328\n\t'UNABLE_TO_GET_ISSUER_CERT',\n\t'UNABLE_TO_GET_CRL',\n\t'UNABLE_TO_DECRYPT_CERT_SIGNATURE',\n\t'UNABLE_TO_DECRYPT_CRL_SIGNATURE',\n\t'UNABLE_TO_DECODE_ISSUER_PUBLIC_KEY',\n\t'CERT_SIGNATURE_FAILURE',\n\t'CRL_SIGNATURE_FAILURE',\n\t'CERT_NOT_YET_VALID',\n\t'CERT_HAS_EXPIRED',\n\t'CRL_NOT_YET_VALID',\n\t'CRL_HAS_EXPIRED',\n\t'ERROR_IN_CERT_NOT_BEFORE_FIELD',\n\t'ERROR_IN_CERT_NOT_AFTER_FIELD',\n\t'ERROR_IN_CRL_LAST_UPDATE_FIELD',\n\t'ERROR_IN_CRL_NEXT_UPDATE_FIELD',\n\t'OUT_OF_MEM',\n\t'DEPTH_ZERO_SELF_SIGNED_CERT',\n\t'SELF_SIGNED_CERT_IN_CHAIN',\n\t'UNABLE_TO_GET_ISSUER_CERT_LOCALLY',\n\t'UNABLE_TO_VERIFY_LEAF_SIGNATURE',\n\t'CERT_CHAIN_TOO_LONG',\n\t'CERT_REVOKED',\n\t'INVALID_CA',\n\t'PATH_LENGTH_EXCEEDED',\n\t'INVALID_PURPOSE',\n\t'CERT_UNTRUSTED',\n\t'CERT_REJECTED',\n\t'HOSTNAME_MISMATCH'\n]);\n\n// TODO: Use `error?.code` when targeting Node.js 14\nmodule.exports = error => !denyList.has(error && error.code);\n","// @flow\n\n/*::\ntype Options = {\n  max?: number,\n  min?: number,\n  historyTimeConstant?: number,\n  autostart?: boolean,\n  ignoreSameProgress?: boolean,\n}\n*/\n\nfunction makeLowPassFilter(RC/*: number*/) {\n  return function (previousOutput, input, dt) {\n    const alpha = dt / (dt + RC);\n    return previousOutput + alpha * (input - previousOutput);\n  }\n}\n\nfunction def/*:: <T>*/(x/*: ?T*/, d/*: T*/)/*: T*/ {\n  return (x === undefined || x === null) ? d : x;\n}\n\nfunction makeEta(options/*::?: Options */) {\n  options = options || {};\n  var max = def(options.max, 1);\n  var min = def(options.min, 0);\n  var autostart = def(options.autostart, true);\n  var ignoreSameProgress = def(options.ignoreSameProgress, false);\n\n  var rate/*: number | null */ = null;\n  var lastTimestamp/*: number | null */ = null;\n  var lastProgress/*: number | null */ = null;\n\n  var filter = makeLowPassFilter(def(options.historyTimeConstant, 2.5));\n\n  function start() {\n    report(min);\n  }\n\n  function reset() {\n    rate = null;\n    lastTimestamp = null;\n    lastProgress = null;\n    if (autostart) {\n      start();\n    }\n  }\n\n  function report(progress /*: number */, timestamp/*::?: number */) {\n    if (typeof timestamp !== 'number') {\n      timestamp = Date.now();\n    }\n\n    if (lastTimestamp === timestamp) { return; }\n    if (ignoreSameProgress && lastProgress === progress) { return; }\n\n    if (lastTimestamp === null || lastProgress === null) {\n      lastProgress = progress;\n      lastTimestamp = timestamp;\n      return;\n    }\n\n    var deltaProgress = progress - lastProgress;\n    var deltaTimestamp = 0.001 * (timestamp - lastTimestamp);\n    var currentRate = deltaProgress / deltaTimestamp;\n\n    rate = rate === null\n      ? currentRate\n      : filter(rate, currentRate, deltaTimestamp);\n    lastProgress = progress;\n    lastTimestamp = timestamp;\n  }\n\n  function estimate(timestamp/*::?: number*/) {\n    if (lastProgress === null) { return Infinity; }\n    if (lastProgress >= max) { return 0; }\n    if (rate === null) { return Infinity; }\n\n    var estimatedTime = (max - lastProgress) / rate;\n    if (typeof timestamp === 'number' && typeof lastTimestamp === 'number') {\n      estimatedTime -= (timestamp - lastTimestamp) * 0.001;\n    }\n    return Math.max(0, estimatedTime);\n  }\n\n  function getRate() {\n    return rate === null ? 0 : rate;\n  }\n\n  return {\n    start: start,\n    reset: reset,\n    report: report,\n    estimate: estimate,\n    rate: getRate,\n  }\n}\n\nmodule.exports = makeEta;\n","\n      import API from \"!../../../../style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n      import domAPI from \"!../../../../style-loader/dist/runtime/styleDomAPI.js\";\n      import insertFn from \"!../../../../style-loader/dist/runtime/insertBySelector.js\";\n      import setAttributes from \"!../../../../style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n      import insertStyleElement from \"!../../../../style-loader/dist/runtime/insertStyleElement.js\";\n      import styleTagTransformFn from \"!../../../../style-loader/dist/runtime/styleTagTransform.js\";\n      import content, * as namedExport from \"!!../../../../css-loader/dist/cjs.js!./index-DiWRcN3o.css\";\n      \n      \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n      options.insert = insertFn.bind(null, \"head\");\n    \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../css-loader/dist/cjs.js!./index-DiWRcN3o.css\";\n       export default content && content.locals ? content.locals : undefined;\n","export class CancelError extends Error {\n\tconstructor(reason) {\n\t\tsuper(reason || 'Promise was canceled');\n\t\tthis.name = 'CancelError';\n\t}\n\n\tget isCanceled() {\n\t\treturn true;\n\t}\n}\n\nconst promiseState = Object.freeze({\n\tpending: Symbol('pending'),\n\tcanceled: Symbol('canceled'),\n\tresolved: Symbol('resolved'),\n\trejected: Symbol('rejected'),\n});\n\nexport default class PCancelable {\n\tstatic fn(userFunction) {\n\t\treturn (...arguments_) => new PCancelable((resolve, reject, onCancel) => {\n\t\t\targuments_.push(onCancel);\n\t\t\tuserFunction(...arguments_).then(resolve, reject);\n\t\t});\n\t}\n\n\t#cancelHandlers = [];\n\t#rejectOnCancel = true;\n\t#state = promiseState.pending;\n\t#promise;\n\t#reject;\n\n\tconstructor(executor) {\n\t\tthis.#promise = new Promise((resolve, reject) => {\n\t\t\tthis.#reject = reject;\n\n\t\t\tconst onResolve = value => {\n\t\t\t\tif (this.#state !== promiseState.canceled || !onCancel.shouldReject) {\n\t\t\t\t\tresolve(value);\n\t\t\t\t\tthis.#setState(promiseState.resolved);\n\t\t\t\t}\n\t\t\t};\n\n\t\t\tconst onReject = error => {\n\t\t\t\tif (this.#state !== promiseState.canceled || !onCancel.shouldReject) {\n\t\t\t\t\treject(error);\n\t\t\t\t\tthis.#setState(promiseState.rejected);\n\t\t\t\t}\n\t\t\t};\n\n\t\t\tconst onCancel = handler => {\n\t\t\t\tif (this.#state !== promiseState.pending) {\n\t\t\t\t\tthrow new Error(`The \\`onCancel\\` handler was attached after the promise ${this.#state.description}.`);\n\t\t\t\t}\n\n\t\t\t\tthis.#cancelHandlers.push(handler);\n\t\t\t};\n\n\t\t\tObject.defineProperties(onCancel, {\n\t\t\t\tshouldReject: {\n\t\t\t\t\tget: () => this.#rejectOnCancel,\n\t\t\t\t\tset: boolean => {\n\t\t\t\t\t\tthis.#rejectOnCancel = boolean;\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t});\n\n\t\t\texecutor(onResolve, onReject, onCancel);\n\t\t});\n\t}\n\n\t// eslint-disable-next-line unicorn/no-thenable\n\tthen(onFulfilled, onRejected) {\n\t\treturn this.#promise.then(onFulfilled, onRejected);\n\t}\n\n\tcatch(onRejected) {\n\t\treturn this.#promise.catch(onRejected);\n\t}\n\n\tfinally(onFinally) {\n\t\treturn this.#promise.finally(onFinally);\n\t}\n\n\tcancel(reason) {\n\t\tif (this.#state !== promiseState.pending) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.#setState(promiseState.canceled);\n\n\t\tif (this.#cancelHandlers.length > 0) {\n\t\t\ttry {\n\t\t\t\tfor (const handler of this.#cancelHandlers) {\n\t\t\t\t\thandler();\n\t\t\t\t}\n\t\t\t} catch (error) {\n\t\t\t\tthis.#reject(error);\n\t\t\t\treturn;\n\t\t\t}\n\t\t}\n\n\t\tif (this.#rejectOnCancel) {\n\t\t\tthis.#reject(new CancelError(reason));\n\t\t}\n\t}\n\n\tget isCanceled() {\n\t\treturn this.#state === promiseState.canceled;\n\t}\n\n\t#setState(state) {\n\t\tif (this.#state === promiseState.pending) {\n\t\t\tthis.#state = state;\n\t\t}\n\t}\n}\n\nObject.setPrototypeOf(PCancelable.prototype, Promise.prototype);\n","export class TimeoutError extends Error {\n\tconstructor(message) {\n\t\tsuper(message);\n\t\tthis.name = 'TimeoutError';\n\t}\n}\n\n/**\nAn error to be thrown when the request is aborted by AbortController.\nDOMException is thrown instead of this Error when DOMException is available.\n*/\nexport class AbortError extends Error {\n\tconstructor(message) {\n\t\tsuper();\n\t\tthis.name = 'AbortError';\n\t\tthis.message = message;\n\t}\n}\n\n/**\nTODO: Remove AbortError and just throw DOMException when targeting Node 18.\n*/\nconst getDOMException = errorMessage => globalThis.DOMException === undefined\n\t? new AbortError(errorMessage)\n\t: new DOMException(errorMessage);\n\n/**\nTODO: Remove below function and just 'reject(signal.reason)' when targeting Node 18.\n*/\nconst getAbortedReason = signal => {\n\tconst reason = signal.reason === undefined\n\t\t? getDOMException('This operation was aborted.')\n\t\t: signal.reason;\n\n\treturn reason instanceof Error ? reason : getDOMException(reason);\n};\n\nexport default function pTimeout(promise, options) {\n\tconst {\n\t\tmilliseconds,\n\t\tfallback,\n\t\tmessage,\n\t\tcustomTimers = {setTimeout, clearTimeout},\n\t} = options;\n\n\tlet timer;\n\n\tconst wrappedPromise = new Promise((resolve, reject) => {\n\t\tif (typeof milliseconds !== 'number' || Math.sign(milliseconds) !== 1) {\n\t\t\tthrow new TypeError(`Expected \\`milliseconds\\` to be a positive number, got \\`${milliseconds}\\``);\n\t\t}\n\n\t\tif (options.signal) {\n\t\t\tconst {signal} = options;\n\t\t\tif (signal.aborted) {\n\t\t\t\treject(getAbortedReason(signal));\n\t\t\t}\n\n\t\t\tsignal.addEventListener('abort', () => {\n\t\t\t\treject(getAbortedReason(signal));\n\t\t\t});\n\t\t}\n\n\t\tif (milliseconds === Number.POSITIVE_INFINITY) {\n\t\t\tpromise.then(resolve, reject);\n\t\t\treturn;\n\t\t}\n\n\t\t// We create the error outside of `setTimeout` to preserve the stack trace.\n\t\tconst timeoutError = new TimeoutError();\n\n\t\ttimer = customTimers.setTimeout.call(undefined, () => {\n\t\t\tif (fallback) {\n\t\t\t\ttry {\n\t\t\t\t\tresolve(fallback());\n\t\t\t\t} catch (error) {\n\t\t\t\t\treject(error);\n\t\t\t\t}\n\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif (typeof promise.cancel === 'function') {\n\t\t\t\tpromise.cancel();\n\t\t\t}\n\n\t\t\tif (message === false) {\n\t\t\t\tresolve();\n\t\t\t} else if (message instanceof Error) {\n\t\t\t\treject(message);\n\t\t\t} else {\n\t\t\t\ttimeoutError.message = message ?? `Promise timed out after ${milliseconds} milliseconds`;\n\t\t\t\treject(timeoutError);\n\t\t\t}\n\t\t}, milliseconds);\n\n\t\t(async () => {\n\t\t\ttry {\n\t\t\t\tresolve(await promise);\n\t\t\t} catch (error) {\n\t\t\t\treject(error);\n\t\t\t}\n\t\t})();\n\t});\n\n\tconst cancelablePromise = wrappedPromise.finally(() => {\n\t\tcancelablePromise.clear();\n\t});\n\n\tcancelablePromise.clear = () => {\n\t\tcustomTimers.clearTimeout.call(undefined, timer);\n\t\ttimer = undefined;\n\t};\n\n\treturn cancelablePromise;\n}\n","import lowerBound from './lower-bound.js';\nexport default class PriorityQueue {\n    #queue = [];\n    enqueue(run, options) {\n        options = {\n            priority: 0,\n            ...options,\n        };\n        const element = {\n            priority: options.priority,\n            run,\n        };\n        if (this.size && this.#queue[this.size - 1].priority >= options.priority) {\n            this.#queue.push(element);\n            return;\n        }\n        const index = lowerBound(this.#queue, element, (a, b) => b.priority - a.priority);\n        this.#queue.splice(index, 0, element);\n    }\n    dequeue() {\n        const item = this.#queue.shift();\n        return item?.run;\n    }\n    filter(options) {\n        return this.#queue.filter((element) => element.priority === options.priority).map((element) => element.run);\n    }\n    get size() {\n        return this.#queue.length;\n    }\n}\n","// Port of lower_bound from https://en.cppreference.com/w/cpp/algorithm/lower_bound\n// Used to compute insertion index to keep queue sorted after insertion\nexport default function lowerBound(array, value, comparator) {\n    let first = 0;\n    let count = array.length;\n    while (count > 0) {\n        const step = Math.trunc(count / 2);\n        let it = first + step;\n        if (comparator(array[it], value) <= 0) {\n            first = ++it;\n            count -= step + 1;\n        }\n        else {\n            count = step;\n        }\n    }\n    return first;\n}\n","import { EventEmitter } from 'eventemitter3';\nimport pTimeout, { TimeoutError } from 'p-timeout';\nimport PriorityQueue from './priority-queue.js';\n/**\nPromise queue with concurrency control.\n*/\nexport default class PQueue extends EventEmitter {\n    #carryoverConcurrencyCount;\n    #isIntervalIgnored;\n    #intervalCount = 0;\n    #intervalCap;\n    #interval;\n    #intervalEnd = 0;\n    #intervalId;\n    #timeoutId;\n    #queue;\n    #queueClass;\n    #pending = 0;\n    // The `!` is needed because of https://github.com/microsoft/TypeScript/issues/32194\n    #concurrency;\n    #isPaused;\n    #throwOnTimeout;\n    /**\n    Per-operation timeout in milliseconds. Operations fulfill once `timeout` elapses if they haven't already.\n\n    Applies to each future operation.\n    */\n    timeout;\n    // TODO: The `throwOnTimeout` option should affect the return types of `add()` and `addAll()`\n    constructor(options) {\n        super();\n        // eslint-disable-next-line @typescript-eslint/consistent-type-assertions\n        options = {\n            carryoverConcurrencyCount: false,\n            intervalCap: Number.POSITIVE_INFINITY,\n            interval: 0,\n            concurrency: Number.POSITIVE_INFINITY,\n            autoStart: true,\n            queueClass: PriorityQueue,\n            ...options,\n        };\n        if (!(typeof options.intervalCap === 'number' && options.intervalCap >= 1)) {\n            throw new TypeError(`Expected \\`intervalCap\\` to be a number from 1 and up, got \\`${options.intervalCap?.toString() ?? ''}\\` (${typeof options.intervalCap})`);\n        }\n        if (options.interval === undefined || !(Number.isFinite(options.interval) && options.interval >= 0)) {\n            throw new TypeError(`Expected \\`interval\\` to be a finite number >= 0, got \\`${options.interval?.toString() ?? ''}\\` (${typeof options.interval})`);\n        }\n        this.#carryoverConcurrencyCount = options.carryoverConcurrencyCount;\n        this.#isIntervalIgnored = options.intervalCap === Number.POSITIVE_INFINITY || options.interval === 0;\n        this.#intervalCap = options.intervalCap;\n        this.#interval = options.interval;\n        this.#queue = new options.queueClass();\n        this.#queueClass = options.queueClass;\n        this.concurrency = options.concurrency;\n        this.timeout = options.timeout;\n        this.#throwOnTimeout = options.throwOnTimeout === true;\n        this.#isPaused = options.autoStart === false;\n    }\n    get #doesIntervalAllowAnother() {\n        return this.#isIntervalIgnored || this.#intervalCount < this.#intervalCap;\n    }\n    get #doesConcurrentAllowAnother() {\n        return this.#pending < this.#concurrency;\n    }\n    #next() {\n        this.#pending--;\n        this.#tryToStartAnother();\n        this.emit('next');\n    }\n    #onResumeInterval() {\n        this.#onInterval();\n        this.#initializeIntervalIfNeeded();\n        this.#timeoutId = undefined;\n    }\n    get #isIntervalPaused() {\n        const now = Date.now();\n        if (this.#intervalId === undefined) {\n            const delay = this.#intervalEnd - now;\n            if (delay < 0) {\n                // Act as the interval was done\n                // We don't need to resume it here because it will be resumed on line 160\n                this.#intervalCount = (this.#carryoverConcurrencyCount) ? this.#pending : 0;\n            }\n            else {\n                // Act as the interval is pending\n                if (this.#timeoutId === undefined) {\n                    this.#timeoutId = setTimeout(() => {\n                        this.#onResumeInterval();\n                    }, delay);\n                }\n                return true;\n            }\n        }\n        return false;\n    }\n    #tryToStartAnother() {\n        if (this.#queue.size === 0) {\n            // We can clear the interval (\"pause\")\n            // Because we can redo it later (\"resume\")\n            if (this.#intervalId) {\n                clearInterval(this.#intervalId);\n            }\n            this.#intervalId = undefined;\n            this.emit('empty');\n            if (this.#pending === 0) {\n                this.emit('idle');\n            }\n            return false;\n        }\n        if (!this.#isPaused) {\n            const canInitializeInterval = !this.#isIntervalPaused;\n            if (this.#doesIntervalAllowAnother && this.#doesConcurrentAllowAnother) {\n                const job = this.#queue.dequeue();\n                if (!job) {\n                    return false;\n                }\n                this.emit('active');\n                job();\n                if (canInitializeInterval) {\n                    this.#initializeIntervalIfNeeded();\n                }\n                return true;\n            }\n        }\n        return false;\n    }\n    #initializeIntervalIfNeeded() {\n        if (this.#isIntervalIgnored || this.#intervalId !== undefined) {\n            return;\n        }\n        this.#intervalId = setInterval(() => {\n            this.#onInterval();\n        }, this.#interval);\n        this.#intervalEnd = Date.now() + this.#interval;\n    }\n    #onInterval() {\n        if (this.#intervalCount === 0 && this.#pending === 0 && this.#intervalId) {\n            clearInterval(this.#intervalId);\n            this.#intervalId = undefined;\n        }\n        this.#intervalCount = this.#carryoverConcurrencyCount ? this.#pending : 0;\n        this.#processQueue();\n    }\n    /**\n    Executes all queued functions until it reaches the limit.\n    */\n    #processQueue() {\n        // eslint-disable-next-line no-empty\n        while (this.#tryToStartAnother()) { }\n    }\n    get concurrency() {\n        return this.#concurrency;\n    }\n    set concurrency(newConcurrency) {\n        if (!(typeof newConcurrency === 'number' && newConcurrency >= 1)) {\n            throw new TypeError(`Expected \\`concurrency\\` to be a number from 1 and up, got \\`${newConcurrency}\\` (${typeof newConcurrency})`);\n        }\n        this.#concurrency = newConcurrency;\n        this.#processQueue();\n    }\n    async #throwOnAbort(signal) {\n        return new Promise((_resolve, reject) => {\n            signal.addEventListener('abort', () => {\n                reject(signal.reason);\n            }, { once: true });\n        });\n    }\n    async add(function_, options = {}) {\n        options = {\n            timeout: this.timeout,\n            throwOnTimeout: this.#throwOnTimeout,\n            ...options,\n        };\n        return new Promise((resolve, reject) => {\n            this.#queue.enqueue(async () => {\n                this.#pending++;\n                this.#intervalCount++;\n                try {\n                    options.signal?.throwIfAborted();\n                    let operation = function_({ signal: options.signal });\n                    if (options.timeout) {\n                        operation = pTimeout(Promise.resolve(operation), { milliseconds: options.timeout });\n                    }\n                    if (options.signal) {\n                        operation = Promise.race([operation, this.#throwOnAbort(options.signal)]);\n                    }\n                    const result = await operation;\n                    resolve(result);\n                    this.emit('completed', result);\n                }\n                catch (error) {\n                    if (error instanceof TimeoutError && !options.throwOnTimeout) {\n                        resolve();\n                        return;\n                    }\n                    reject(error);\n                    this.emit('error', error);\n                }\n                finally {\n                    this.#next();\n                }\n            }, options);\n            this.emit('add');\n            this.#tryToStartAnother();\n        });\n    }\n    async addAll(functions, options) {\n        return Promise.all(functions.map(async (function_) => this.add(function_, options)));\n    }\n    /**\n    Start (or resume) executing enqueued tasks within concurrency limit. No need to call this if queue is not paused (via `options.autoStart = false` or by `.pause()` method.)\n    */\n    start() {\n        if (!this.#isPaused) {\n            return this;\n        }\n        this.#isPaused = false;\n        this.#processQueue();\n        return this;\n    }\n    /**\n    Put queue execution on hold.\n    */\n    pause() {\n        this.#isPaused = true;\n    }\n    /**\n    Clear the queue.\n    */\n    clear() {\n        this.#queue = new this.#queueClass();\n    }\n    /**\n    Can be called multiple times. Useful if you for example add additional items at a later time.\n\n    @returns A promise that settles when the queue becomes empty.\n    */\n    async onEmpty() {\n        // Instantly resolve if the queue is empty\n        if (this.#queue.size === 0) {\n            return;\n        }\n        await this.#onEvent('empty');\n    }\n    /**\n    @returns A promise that settles when the queue size is less than the given limit: `queue.size < limit`.\n\n    If you want to avoid having the queue grow beyond a certain size you can `await queue.onSizeLessThan()` before adding a new item.\n\n    Note that this only limits the number of items waiting to start. There could still be up to `concurrency` jobs already running that this call does not include in its calculation.\n    */\n    async onSizeLessThan(limit) {\n        // Instantly resolve if the queue is empty.\n        if (this.#queue.size < limit) {\n            return;\n        }\n        await this.#onEvent('next', () => this.#queue.size < limit);\n    }\n    /**\n    The difference with `.onEmpty` is that `.onIdle` guarantees that all work from the queue has finished. `.onEmpty` merely signals that the queue is empty, but it could mean that some promises haven't completed yet.\n\n    @returns A promise that settles when the queue becomes empty, and all promises have completed; `queue.size === 0 && queue.pending === 0`.\n    */\n    async onIdle() {\n        // Instantly resolve if none pending and if nothing else is queued\n        if (this.#pending === 0 && this.#queue.size === 0) {\n            return;\n        }\n        await this.#onEvent('idle');\n    }\n    async #onEvent(event, filter) {\n        return new Promise(resolve => {\n            const listener = () => {\n                if (filter && !filter()) {\n                    return;\n                }\n                this.off(event, listener);\n                resolve();\n            };\n            this.on(event, listener);\n        });\n    }\n    /**\n    Size of the queue, the number of queued items waiting to run.\n    */\n    get size() {\n        return this.#queue.size;\n    }\n    /**\n    Size of the queue, filtered by the given options.\n\n    For example, this can be used to find the number of items remaining in the queue with a specific priority level.\n    */\n    sizeBy(options) {\n        // eslint-disable-next-line unicorn/no-array-callback-reference\n        return this.#queue.filter(options).length;\n    }\n    /**\n    Number of running items (no longer in the queue).\n    */\n    get pending() {\n        return this.#pending;\n    }\n    /**\n    Whether the queue is currently paused.\n    */\n    get isPaused() {\n        return this.#isPaused;\n    }\n}\n","import isRetryAllowed from 'is-retry-allowed';\nexport const namespace = 'axios-retry';\nexport function isNetworkError(error) {\n    const CODE_EXCLUDE_LIST = ['ERR_CANCELED', 'ECONNABORTED'];\n    if (error.response) {\n        return false;\n    }\n    if (!error.code) {\n        return false;\n    }\n    // Prevents retrying timed out & cancelled requests\n    if (CODE_EXCLUDE_LIST.includes(error.code)) {\n        return false;\n    }\n    // Prevents retrying unsafe errors\n    return isRetryAllowed(error);\n}\nconst SAFE_HTTP_METHODS = ['get', 'head', 'options'];\nconst IDEMPOTENT_HTTP_METHODS = SAFE_HTTP_METHODS.concat(['put', 'delete']);\nexport function isRetryableError(error) {\n    return (error.code !== 'ECONNABORTED' &&\n        (!error.response ||\n            error.response.status === 429 ||\n            (error.response.status >= 500 && error.response.status <= 599)));\n}\nexport function isSafeRequestError(error) {\n    if (!error.config?.method) {\n        // Cannot determine if the request can be retried\n        return false;\n    }\n    return isRetryableError(error) && SAFE_HTTP_METHODS.indexOf(error.config.method) !== -1;\n}\nexport function isIdempotentRequestError(error) {\n    if (!error.config?.method) {\n        // Cannot determine if the request can be retried\n        return false;\n    }\n    return isRetryableError(error) && IDEMPOTENT_HTTP_METHODS.indexOf(error.config.method) !== -1;\n}\nexport function isNetworkOrIdempotentRequestError(error) {\n    return isNetworkError(error) || isIdempotentRequestError(error);\n}\nexport function retryAfter(error = undefined) {\n    const retryAfterHeader = error?.response?.headers['retry-after'];\n    if (!retryAfterHeader) {\n        return 0;\n    }\n    // if the retry after header is a number, convert it to milliseconds\n    let retryAfterMs = (Number(retryAfterHeader) || 0) * 1000;\n    // If the retry after header is a date, get the number of milliseconds until that date\n    if (retryAfterMs === 0) {\n        retryAfterMs = (new Date(retryAfterHeader).valueOf() || 0) - Date.now();\n    }\n    return Math.max(0, retryAfterMs);\n}\nfunction noDelay(_retryNumber = 0, error = undefined) {\n    return Math.max(0, retryAfter(error));\n}\nexport function exponentialDelay(retryNumber = 0, error = undefined, delayFactor = 100) {\n    const calculatedDelay = 2 ** retryNumber * delayFactor;\n    const delay = Math.max(calculatedDelay, retryAfter(error));\n    const randomSum = delay * 0.2 * Math.random(); // 0-20% of the delay\n    return delay + randomSum;\n}\nexport const DEFAULT_OPTIONS = {\n    retries: 3,\n    retryCondition: isNetworkOrIdempotentRequestError,\n    retryDelay: noDelay,\n    shouldResetTimeout: false,\n    onRetry: () => { },\n    onMaxRetryTimesExceeded: () => { },\n    validateResponse: null\n};\nfunction getRequestOptions(config, defaultOptions) {\n    return { ...DEFAULT_OPTIONS, ...defaultOptions, ...config[namespace] };\n}\nfunction setCurrentState(config, defaultOptions) {\n    const currentState = getRequestOptions(config, defaultOptions || {});\n    currentState.retryCount = currentState.retryCount || 0;\n    currentState.lastRequestTime = currentState.lastRequestTime || Date.now();\n    config[namespace] = currentState;\n    return currentState;\n}\nfunction fixConfig(axiosInstance, config) {\n    // @ts-ignore\n    if (axiosInstance.defaults.agent === config.agent) {\n        // @ts-ignore\n        delete config.agent;\n    }\n    if (axiosInstance.defaults.httpAgent === config.httpAgent) {\n        delete config.httpAgent;\n    }\n    if (axiosInstance.defaults.httpsAgent === config.httpsAgent) {\n        delete config.httpsAgent;\n    }\n}\nasync function shouldRetry(currentState, error) {\n    const { retries, retryCondition } = currentState;\n    const shouldRetryOrPromise = (currentState.retryCount || 0) < retries && retryCondition(error);\n    // This could be a promise\n    if (typeof shouldRetryOrPromise === 'object') {\n        try {\n            const shouldRetryPromiseResult = await shouldRetryOrPromise;\n            // keep return true unless shouldRetryPromiseResult return false for compatibility\n            return shouldRetryPromiseResult !== false;\n        }\n        catch (_err) {\n            return false;\n        }\n    }\n    return shouldRetryOrPromise;\n}\nasync function handleRetry(axiosInstance, currentState, error, config) {\n    currentState.retryCount += 1;\n    const { retryDelay, shouldResetTimeout, onRetry } = currentState;\n    const delay = retryDelay(currentState.retryCount, error);\n    // Axios fails merging this configuration to the default configuration because it has an issue\n    // with circular structures: https://github.com/mzabriskie/axios/issues/370\n    fixConfig(axiosInstance, config);\n    if (!shouldResetTimeout && config.timeout && currentState.lastRequestTime) {\n        const lastRequestDuration = Date.now() - currentState.lastRequestTime;\n        const timeout = config.timeout - lastRequestDuration - delay;\n        if (timeout <= 0) {\n            return Promise.reject(error);\n        }\n        config.timeout = timeout;\n    }\n    config.transformRequest = [(data) => data];\n    await onRetry(currentState.retryCount, error, config);\n    if (config.signal?.aborted) {\n        return Promise.resolve(axiosInstance(config));\n    }\n    return new Promise((resolve) => {\n        const abortListener = () => {\n            clearTimeout(timeout);\n            resolve(axiosInstance(config));\n        };\n        const timeout = setTimeout(() => {\n            resolve(axiosInstance(config));\n            if (config.signal?.removeEventListener) {\n                config.signal.removeEventListener('abort', abortListener);\n            }\n        }, delay);\n        if (config.signal?.addEventListener) {\n            config.signal.addEventListener('abort', abortListener, { once: true });\n        }\n    });\n}\nasync function handleMaxRetryTimesExceeded(currentState, error) {\n    if (currentState.retryCount >= currentState.retries)\n        await currentState.onMaxRetryTimesExceeded(error, currentState.retryCount);\n}\nconst axiosRetry = (axiosInstance, defaultOptions) => {\n    const requestInterceptorId = axiosInstance.interceptors.request.use((config) => {\n        setCurrentState(config, defaultOptions);\n        if (config[namespace]?.validateResponse) {\n            // by setting this, all HTTP responses will be go through the error interceptor first\n            config.validateStatus = () => false;\n        }\n        return config;\n    });\n    const responseInterceptorId = axiosInstance.interceptors.response.use(null, async (error) => {\n        const { config } = error;\n        // If we have no information to retry the request\n        if (!config) {\n            return Promise.reject(error);\n        }\n        const currentState = setCurrentState(config, defaultOptions);\n        if (error.response && currentState.validateResponse?.(error.response)) {\n            // no issue with response\n            return error.response;\n        }\n        if (await shouldRetry(currentState, error)) {\n            return handleRetry(axiosInstance, currentState, error, config);\n        }\n        await handleMaxRetryTimesExceeded(currentState, error);\n        return Promise.reject(error);\n    });\n    return { requestInterceptorId, responseInterceptorId };\n};\n// Compatibility with CommonJS\naxiosRetry.isNetworkError = isNetworkError;\naxiosRetry.isSafeRequestError = isSafeRequestError;\naxiosRetry.isIdempotentRequestError = isIdempotentRequestError;\naxiosRetry.isNetworkOrIdempotentRequestError = isNetworkOrIdempotentRequestError;\naxiosRetry.exponentialDelay = exponentialDelay;\naxiosRetry.isRetryableError = isRetryableError;\nexport default axiosRetry;\n","import '../assets/index-DiWRcN3o.css';\nimport { isPublicShare } from \"@nextcloud/sharing/public\";\nimport Vue, { defineAsyncComponent } from \"vue\";\nimport { getCurrentUser } from \"@nextcloud/auth\";\nimport { davRemoteURL, davRootPath, Folder, Permission, davGetClient, NewMenuEntryCategory, getUniqueName, getNewFileMenuEntries } from \"@nextcloud/files\";\nimport { basename, encodePath } from \"@nextcloud/paths\";\nimport { join, normalize } from \"path\";\nimport axios, { isCancel } from \"@nextcloud/axios\";\nimport PCancelable from \"p-cancelable\";\nimport PQueue from \"p-queue\";\nimport { generateRemoteUrl } from \"@nextcloud/router\";\nimport axiosRetry from \"axios-retry\";\nimport { getGettextBuilder } from \"@nextcloud/l10n/gettext\";\nimport { getLoggerBuilder } from \"@nextcloud/logger\";\nimport { DialogBuilder, showWarning } from \"@nextcloud/dialogs\";\nimport makeEta from \"simple-eta\";\nimport NcActionButton from \"@nextcloud/vue/dist/Components/NcActionButton.js\";\nimport NcActionCaption from \"@nextcloud/vue/dist/Components/NcActionCaption.js\";\nimport NcActionSeparator from \"@nextcloud/vue/dist/Components/NcActionSeparator.js\";\nimport NcActions from \"@nextcloud/vue/dist/Components/NcActions.js\";\nimport NcButton from \"@nextcloud/vue/dist/Components/NcButton.js\";\nimport NcIconSvgWrapper from \"@nextcloud/vue/dist/Components/NcIconSvgWrapper.js\";\nimport NcProgressBar from \"@nextcloud/vue/dist/Components/NcProgressBar.js\";\nconst isFileSystemDirectoryEntry = (o) => \"FileSystemDirectoryEntry\" in window && o instanceof FileSystemDirectoryEntry;\nconst isFileSystemFileEntry = (o) => \"FileSystemFileEntry\" in window && o instanceof FileSystemFileEntry;\nconst isFileSystemEntry = (o) => \"FileSystemEntry\" in window && o instanceof FileSystemEntry;\naxiosRetry(axios, { retries: 0 });\nconst uploadData = async function(url, uploadData2, signal, onUploadProgress = () => {\n}, destinationFile = void 0, headers = {}, retries = 5) {\n  let data;\n  if (uploadData2 instanceof Blob) {\n    data = uploadData2;\n  } else {\n    data = await uploadData2();\n  }\n  if (destinationFile) {\n    headers.Destination = destinationFile;\n  }\n  if (!headers[\"Content-Type\"]) {\n    headers[\"Content-Type\"] = \"application/octet-stream\";\n  }\n  return await axios.request({\n    method: \"PUT\",\n    url,\n    data,\n    signal,\n    onUploadProgress,\n    headers,\n    \"axios-retry\": {\n      retries,\n      retryDelay: (retryCount, error) => axiosRetry.exponentialDelay(retryCount, error, 1e3)\n    }\n  });\n};\nconst getChunk = function(file, start, length) {\n  if (start === 0 && file.size <= length) {\n    return Promise.resolve(new Blob([file], { type: file.type || \"application/octet-stream\" }));\n  }\n  return Promise.resolve(new Blob([file.slice(start, start + length)], { type: \"application/octet-stream\" }));\n};\nconst initChunkWorkspace = async function(destinationFile = void 0, retries = 5) {\n  const chunksWorkspace = generateRemoteUrl(`dav/uploads/${getCurrentUser()?.uid}`);\n  const hash = [...Array(16)].map(() => Math.floor(Math.random() * 16).toString(16)).join(\"\");\n  const tempWorkspace = `web-file-upload-${hash}`;\n  const url = `${chunksWorkspace}/${tempWorkspace}`;\n  const headers = destinationFile ? { Destination: destinationFile } : void 0;\n  await axios.request({\n    method: \"MKCOL\",\n    url,\n    headers,\n    \"axios-retry\": {\n      retries,\n      retryDelay: (retryCount, error) => axiosRetry.exponentialDelay(retryCount, error, 1e3)\n    }\n  });\n  return url;\n};\nconst getMaxChunksSize = function(fileSize = void 0) {\n  const maxChunkSize = window.OC?.appConfig?.files?.max_chunk_size;\n  if (maxChunkSize <= 0) {\n    return 0;\n  }\n  if (!Number(maxChunkSize)) {\n    return 10 * 1024 * 1024;\n  }\n  const minimumChunkSize = Math.max(Number(maxChunkSize), 5 * 1024 * 1024);\n  if (fileSize === void 0) {\n    return minimumChunkSize;\n  }\n  return Math.max(minimumChunkSize, Math.ceil(fileSize / 1e4));\n};\nvar Status$1 = /* @__PURE__ */ ((Status2) => {\n  Status2[Status2[\"INITIALIZED\"] = 0] = \"INITIALIZED\";\n  Status2[Status2[\"UPLOADING\"] = 1] = \"UPLOADING\";\n  Status2[Status2[\"ASSEMBLING\"] = 2] = \"ASSEMBLING\";\n  Status2[Status2[\"FINISHED\"] = 3] = \"FINISHED\";\n  Status2[Status2[\"CANCELLED\"] = 4] = \"CANCELLED\";\n  Status2[Status2[\"FAILED\"] = 5] = \"FAILED\";\n  return Status2;\n})(Status$1 || {});\nclass Upload {\n  _source;\n  _file;\n  _isChunked;\n  _chunks;\n  _size;\n  _uploaded = 0;\n  _startTime = 0;\n  _status = 0;\n  _controller;\n  _response = null;\n  constructor(source, chunked = false, size, file) {\n    const chunks = Math.min(getMaxChunksSize() > 0 ? Math.ceil(size / getMaxChunksSize()) : 1, 1e4);\n    this._source = source;\n    this._isChunked = chunked && getMaxChunksSize() > 0 && chunks > 1;\n    this._chunks = this._isChunked ? chunks : 1;\n    this._size = size;\n    this._file = file;\n    this._controller = new AbortController();\n  }\n  get source() {\n    return this._source;\n  }\n  get file() {\n    return this._file;\n  }\n  get isChunked() {\n    return this._isChunked;\n  }\n  get chunks() {\n    return this._chunks;\n  }\n  get size() {\n    return this._size;\n  }\n  get startTime() {\n    return this._startTime;\n  }\n  set response(response) {\n    this._response = response;\n  }\n  get response() {\n    return this._response;\n  }\n  get uploaded() {\n    return this._uploaded;\n  }\n  /**\n   * Update the uploaded bytes of this upload\n   */\n  set uploaded(length) {\n    if (length >= this._size) {\n      this._status = this._isChunked ? 2 : 3;\n      this._uploaded = this._size;\n      return;\n    }\n    this._status = 1;\n    this._uploaded = length;\n    if (this._startTime === 0) {\n      this._startTime = (/* @__PURE__ */ new Date()).getTime();\n    }\n  }\n  get status() {\n    return this._status;\n  }\n  /**\n   * Update this upload status\n   */\n  set status(status) {\n    this._status = status;\n  }\n  /**\n   * Returns the axios cancel token source\n   */\n  get signal() {\n    return this._controller.signal;\n  }\n  /**\n   * Cancel any ongoing requests linked to this upload\n   */\n  cancel() {\n    this._controller.abort();\n    this._status = 4;\n  }\n}\nclass Directory extends File {\n  _originalName;\n  _path;\n  _children;\n  constructor(path, children) {\n    super([], basename(path), { type: \"httpd/unix-directory\", lastModified: 0 });\n    this._children = /* @__PURE__ */ new Map();\n    this._originalName = basename(path);\n    this._path = path;\n    if (children) {\n      children.forEach((c) => this.addChild(c));\n    }\n  }\n  get size() {\n    return this.children.reduce((sum, file) => sum + file.size, 0);\n  }\n  get lastModified() {\n    return this.children.reduce((latest, file) => Math.max(latest, file.lastModified), 0);\n  }\n  // We need this to keep track of renamed files\n  get originalName() {\n    return this._originalName;\n  }\n  get children() {\n    return Array.from(this._children.values());\n  }\n  get webkitRelativePath() {\n    return this._path;\n  }\n  getChild(name) {\n    return this._children.get(name) ?? null;\n  }\n  async addChild(file) {\n    const rootPath = this._path && `${this._path}/`;\n    if (isFileSystemFileEntry(file)) {\n      file = await new Promise((resolve, reject) => file.file(resolve, reject));\n    } else if (isFileSystemDirectoryEntry(file)) {\n      const reader = file.createReader();\n      const entries = await new Promise((resolve, reject) => reader.readEntries(resolve, reject));\n      this._children.set(file.name, new Directory(`${rootPath}${file.name}`, entries));\n      return;\n    }\n    file = file;\n    const filePath = file.webkitRelativePath ?? file.name;\n    if (!filePath.includes(\"/\")) {\n      this._children.set(file.name, file);\n    } else {\n      if (!filePath.startsWith(this._path)) {\n        throw new Error(`File ${filePath} is not a child of ${this._path}`);\n      }\n      const relPath = filePath.slice(rootPath.length);\n      const name = basename(relPath);\n      if (name === relPath) {\n        this._children.set(name, file);\n      } else {\n        const base = relPath.slice(0, relPath.indexOf(\"/\"));\n        if (this._children.has(base)) {\n          this._children.get(base).addChild(file);\n        } else {\n          this._children.set(base, new Directory(`${rootPath}${base}`, [file]));\n        }\n      }\n    }\n  }\n}\n/**\n * @copyright Copyright (c) 2023 Ferdinand Thiessen <opensource@fthiessen.de>\n *\n * @author Ferdinand Thiessen <opensource@fthiessen.de>\n * @author John Molakvoæ <skjnldsv@protonmail.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\nconst gtBuilder = getGettextBuilder().detectLocale();\n[{ \"locale\": \"af\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Afrikaans (https://www.transifex.com/nextcloud/teams/64236/af/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"af\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Afrikaans (https://www.transifex.com/nextcloud/teams/64236/af/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: af\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ar\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Ali <alimahwer@yahoo.com>, 2024\", \"Language-Team\": \"Arabic (https://app.transifex.com/nextcloud/teams/64236/ar/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ar\", \"Plural-Forms\": \"nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nAli <alimahwer@yahoo.com>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Ali <alimahwer@yahoo.com>, 2024\\nLanguage-Team: Arabic (https://app.transifex.com/nextcloud/teams/64236/ar/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ar\\nPlural-Forms: nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;\\n\"] }, '\"{filename}\" contains invalid characters, how do you want to continue?': { \"msgid\": '\"{filename}\" contains invalid characters, how do you want to continue?', \"msgstr\": ['\"{filename}\" يحتوي على حروف غير مقبولة. كيف ترغب في الاستمرار؟'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} ملف متعارض\", \"{count} ملف متعارض\", \"{count} ملفان متعارضان\", \"{count} ملف متعارض\", \"{count} ملفات متعارضة\", \"{count} ملفات متعارضة\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} ملف متعارض في n {dirname}\", \"{count} ملف متعارض في n {dirname}\", \"{count} ملفان متعارضان في n {dirname}\", \"{count} ملف متعارض في n {dirname}\", \"{count} ملفات متعارضة في n {dirname}\", \"{count} ملفات متعارضة في n {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} ثانية متبقية\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} متبقية\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"باقٍ بضعُ ثوانٍ\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"إلغاء\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"إلغِ العملية بالكامل\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"إلغاء عمليات رفع الملفات\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"إستمر\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"إنشاء جديد\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"تقدير الوقت المتبقي\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"الإصدار الحالي\"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"إذا اخترت الاحتفاظ بالنسختين فسيتم إلحاق رقم عداد آخر اسم الملف الوارد.\"] }, \"Invalid file name\": { \"msgid\": \"Invalid file name\", \"msgstr\": [\"اسم الملف غير صحيح\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"تاريخ آخر تعديل غير معلوم\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"جديد\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"نسخة جديدة\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"مُجمَّد\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"معاينة الصورة\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"تغيير التسمية\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"حدِّد كل صناديق الخيارات\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"حدِّد كل الملفات الموجودة\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"حدِّد كل الملفات الجديدة\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"تخطِّي\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"تخطَّ {count} ملف\", \"تخطَّ {count} ملف\", \"تخطَّ {count} ملف\", \"تخطَّ {count} ملف\", \"تخطَّ {count} ملف\", \"تخطَّ {count} ملف\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"حجم غير معلوم\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"رفع ملفات\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"رفع مجلدات\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"الرفع من جهاز \"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"تمّ إلغاء عملية رفع الملفات\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"تقدُّم الرفع \"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"عند تحديد مجلد وارد، أي ملفات متعارضة بداخله ستتم الكتابة فوقها.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"عند تحديد مجلد وارد، ستتم كتابة المحتوى في المجلد الموجود و سيتم تنفيذ حل التعارض بشكل تعاوُدي.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"أيُّ الملفات ترغب في الإبقاء عليها؟\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"يجب أن تختار نسخة واحدة على الأقل من كل ملف للاستمرار.\"] } } } } }, { \"locale\": \"ar_SA\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Arabic (Saudi Arabia) (https://www.transifex.com/nextcloud/teams/64236/ar_SA/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ar_SA\", \"Plural-Forms\": \"nplurals=6; plural=(n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Arabic (Saudi Arabia) (https://www.transifex.com/nextcloud/teams/64236/ar_SA/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ar_SA\\nPlural-Forms: nplurals=6; plural=(n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ast\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"enolp <enolp@softastur.org>, 2023\", \"Language-Team\": \"Asturian (https://app.transifex.com/nextcloud/teams/64236/ast/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ast\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nenolp <enolp@softastur.org>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: enolp <enolp@softastur.org>, 2023\\nLanguage-Team: Asturian (https://app.transifex.com/nextcloud/teams/64236/ast/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ast\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} ficheru en coflictu\", \"{count} ficheros en coflictu\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} ficheru en coflictu en {dirname}\", \"{count} ficheros en coflictu en {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"Queden {seconds} segundos\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"Tiempu que queda: {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"queden unos segundos\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Encaboxar les xubes\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Siguir\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimando'l tiempu que falta\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Versión esistente\"] }, \"If you select both versions, the copied file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the copied file will have a number added to its name.\", \"msgstr\": [\"Si seleiciones dambes versiones, el ficheru copiáu va tener un númberu amestáu al so nome.\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"La data de la última modificación ye desconocida\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nuevu\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Versión nueva\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"en posa\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Previsualizar la imaxe\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Marcar toles caxelles\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Seleicionar tolos ficheros esistentes\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Seleicionar tolos ficheros nuevos\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Saltar esti ficheru\", \"Saltar {count} ficheros\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Tamañu desconocíu\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"Encaboxóse la xuba\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Xubir ficheros\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Xuba en cursu\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"¿Qué ficheros quies caltener?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Tienes de seleicionar polo menos una versión de cada ficheru pa siguir.\"] } } } } }, { \"locale\": \"az\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Rashad Aliyev <microphprashad@gmail.com>, 2023\", \"Language-Team\": \"Azerbaijani (https://app.transifex.com/nextcloud/teams/64236/az/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"az\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nRashad Aliyev <microphprashad@gmail.com>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Rashad Aliyev <microphprashad@gmail.com>, 2023\\nLanguage-Team: Azerbaijani (https://app.transifex.com/nextcloud/teams/64236/az/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: az\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} saniyə qalıb\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"{time} qalıb\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"bir neçə saniyə qalıb\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Əlavə et\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Yükləməni imtina et\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"Təxmini qalan vaxt\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pauzadadır\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Faylları yüklə\"] } } } } }, { \"locale\": \"be\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Belarusian (https://www.transifex.com/nextcloud/teams/64236/be/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"be\", \"Plural-Forms\": \"nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Belarusian (https://www.transifex.com/nextcloud/teams/64236/be/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: be\\nPlural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"bg_BG\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Bulgarian (Bulgaria) (https://www.transifex.com/nextcloud/teams/64236/bg_BG/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"bg_BG\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Bulgarian (Bulgaria) (https://www.transifex.com/nextcloud/teams/64236/bg_BG/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: bg_BG\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"bn_BD\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Bengali (Bangladesh) (https://www.transifex.com/nextcloud/teams/64236/bn_BD/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"bn_BD\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Bengali (Bangladesh) (https://www.transifex.com/nextcloud/teams/64236/bn_BD/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: bn_BD\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"br\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Breton (https://www.transifex.com/nextcloud/teams/64236/br/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"br\", \"Plural-Forms\": \"nplurals=5; plural=((n%10 == 1) && (n%100 != 11) && (n%100 !=71) && (n%100 !=91) ? 0 :(n%10 == 2) && (n%100 != 12) && (n%100 !=72) && (n%100 !=92) ? 1 :(n%10 ==3 || n%10==4 || n%10==9) && (n%100 < 10 || n% 100 > 19) && (n%100 < 70 || n%100 > 79) && (n%100 < 90 || n%100 > 99) ? 2 :(n != 0 && n % 1000000 == 0) ? 3 : 4);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Breton (https://www.transifex.com/nextcloud/teams/64236/br/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: br\\nPlural-Forms: nplurals=5; plural=((n%10 == 1) && (n%100 != 11) && (n%100 !=71) && (n%100 !=91) ? 0 :(n%10 == 2) && (n%100 != 12) && (n%100 !=72) && (n%100 !=92) ? 1 :(n%10 ==3 || n%10==4 || n%10==9) && (n%100 < 10 || n% 100 > 19) && (n%100 < 70 || n%100 > 79) && (n%100 < 90 || n%100 > 99) ? 2 :(n != 0 && n % 1000000 == 0) ? 3 : 4);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"bs\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Bosnian (https://www.transifex.com/nextcloud/teams/64236/bs/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"bs\", \"Plural-Forms\": \"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Bosnian (https://www.transifex.com/nextcloud/teams/64236/bs/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: bs\\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ca\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Toni Hermoso Pulido <toniher@softcatala.cat>, 2022\", \"Language-Team\": \"Catalan (https://www.transifex.com/nextcloud/teams/64236/ca/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ca\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nMarc Riera <marcriera@softcatala.org>, 2022\\nToni Hermoso Pulido <toniher@softcatala.cat>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Toni Hermoso Pulido <toniher@softcatala.cat>, 2022\\nLanguage-Team: Catalan (https://www.transifex.com/nextcloud/teams/64236/ca/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ca\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"Queden {seconds} segons\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"Queden {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"Queden uns segons\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Afegeix\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Cancel·la les pujades\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"S'està estimant el temps restant\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"En pausa\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Puja els fitxers\"] } } } } }, { \"locale\": \"cs\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Pavel Borecki <pavel.borecki@gmail.com>, 2022\", \"Language-Team\": \"Czech (https://www.transifex.com/nextcloud/teams/64236/cs/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"cs\", \"Plural-Forms\": \"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nPavel Borecki <pavel.borecki@gmail.com>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Pavel Borecki <pavel.borecki@gmail.com>, 2022\\nLanguage-Team: Czech (https://www.transifex.com/nextcloud/teams/64236/cs/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: cs\\nPlural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"zbývá {seconds}\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"zbývá {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"zbývá několik sekund\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Přidat\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Zrušit nahrávání\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"odhadovaný zbývající čas\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pozastaveno\"] } } } } }, { \"locale\": \"cs_CZ\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Michal Šmahel <ceskyDJ@seznam.cz>, 2024\", \"Language-Team\": \"Czech (Czech Republic) (https://app.transifex.com/nextcloud/teams/64236/cs_CZ/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"cs_CZ\", \"Plural-Forms\": \"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nMichal Šmahel <ceskyDJ@seznam.cz>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Michal Šmahel <ceskyDJ@seznam.cz>, 2024\\nLanguage-Team: Czech (Czech Republic) (https://app.transifex.com/nextcloud/teams/64236/cs_CZ/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: cs_CZ\\nPlural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} kolize souborů\", \"{count} kolize souborů\", \"{count} kolizí souborů\", \"{count} kolize souborů\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} kolize souboru v {dirname}\", \"{count} kolize souboru v {dirname}\", \"{count} kolizí souborů v {dirname}\", \"{count} kolize souboru v {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"zbývá {seconds}\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"zbývá {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"zbývá několik sekund\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Zrušit\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Zrušit celou operaci\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Zrušit nahrávání\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Pokračovat\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"odhaduje se zbývající čas\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Existující verze\"] }, \"If you select both versions, the copied file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the copied file will have a number added to its name.\", \"msgstr\": [\"Pokud vyberete obě verze, zkopírovaný soubor bude mít k názvu přidáno číslo.\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Neznámé datum poslední úpravy\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nové\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Nová verze\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pozastaveno\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Náhled obrázku\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Označit všechny zaškrtávací kolonky\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Vybrat veškeré stávající soubory\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Vybrat veškeré nové soubory\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Přeskočit tento soubor\", \"Přeskočit {count} soubory\", \"Přeskočit {count} souborů\", \"Přeskočit {count} soubory\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Neznámá velikost\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"Nahrávání zrušeno\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Nahrát soubory\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Postup v nahrávání\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Po výběru příchozí složky budou rovněž přepsány všechny v ní obsažené konfliktní soubory\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Které soubory si přejete ponechat?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Aby bylo možné pokračovat, je třeba vybrat alespoň jednu verzi od každého souboru.\"] } } } } }, { \"locale\": \"cy_GB\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Welsh (United Kingdom) (https://www.transifex.com/nextcloud/teams/64236/cy_GB/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"cy_GB\", \"Plural-Forms\": \"nplurals=4; plural=(n==1) ? 0 : (n==2) ? 1 : (n != 8 && n != 11) ? 2 : 3;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Welsh (United Kingdom) (https://www.transifex.com/nextcloud/teams/64236/cy_GB/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: cy_GB\\nPlural-Forms: nplurals=4; plural=(n==1) ? 0 : (n==2) ? 1 : (n != 8 && n != 11) ? 2 : 3;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"da\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Martin Bonde <Martin@maboni.dk>, 2024\", \"Language-Team\": \"Danish (https://app.transifex.com/nextcloud/teams/64236/da/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"da\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nMartin Bonde <Martin@maboni.dk>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Martin Bonde <Martin@maboni.dk>, 2024\\nLanguage-Team: Danish (https://app.transifex.com/nextcloud/teams/64236/da/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: da\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} fil konflikt\", \"{count} filer i konflikt\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} fil konflikt i {dirname}\", \"{count} filer i konflikt i {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{sekunder} sekunder tilbage\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{tid} tilbage\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"et par sekunder tilbage\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Annuller\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Annuller hele handlingen\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Annuller uploads\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Fortsæt\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimering af resterende tid\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Eksisterende version\"] }, \"If you select both versions, the copied file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the copied file will have a number added to its name.\", \"msgstr\": [\"Hvis du vælger begge versioner vil den kopierede fil få et nummer tilføjet til sit navn.\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Sidste modifikationsdato ukendt\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Ny\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Ny version\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pauset\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Forhåndsvisning af billede\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Vælg alle felter\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Vælg alle eksisterende filer\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Vælg alle nye filer\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Spring denne fil over\", \"Spring {count} filer over\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Ukendt størrelse\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"Upload annulleret\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Upload filer\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Upload fremskridt\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Når en indgående mappe er valgt, vil alle modstridende filer i den også blive overskrevet.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Hvilke filer ønsker du at beholde?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Du skal vælge mindst én version af hver fil for at fortsætte.\"] } } } } }, { \"locale\": \"de\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Mario Siegmann <mario_siegmann@web.de>, 2024\", \"Language-Team\": \"German (https://app.transifex.com/nextcloud/teams/64236/de/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"de\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nMario Siegmann <mario_siegmann@web.de>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Mario Siegmann <mario_siegmann@web.de>, 2024\\nLanguage-Team: German (https://app.transifex.com/nextcloud/teams/64236/de/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: de\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} Datei-Konflikt\", \"{count} Datei-Konflikte\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} Datei-Konflikt in {dirname}\", \"{count} Datei-Konflikte in {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} Sekunden verbleibend\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} verbleibend\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"noch ein paar Sekunden\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Abbrechen\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Den gesamten Vorgang abbrechen\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Hochladen abbrechen\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Fortsetzen\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"Geschätzte verbleibende Zeit\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Vorhandene Version\"] }, \"If you select both versions, the copied file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the copied file will have a number added to its name.\", \"msgstr\": [\"Wenn du beide Versionen auswählst, wird der kopierten Datei eine Nummer zum Namen hinzugefügt.\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Datum der letzten Änderung unbekannt\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Neu\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Neue Version\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"Pausiert\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Vorschaubild\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Alle Kontrollkästchen aktivieren\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Alle vorhandenen Dateien auswählen\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Alle neuen Dateien auswählen\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Diese Datei überspringen\", \"{count} Dateien überspringen\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Unbekannte Größe\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"Hochladen abgebrochen\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Dateien hochladen\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Fortschritt beim Hochladen\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Wenn ein eingehender Ordner ausgewählt wird, werden alle darin enthaltenen Konfliktdateien ebenfalls überschrieben.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Welche Dateien möchtest du behalten?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Du musst mindestens eine Version jeder Datei auswählen, um fortzufahren.\"] } } } } }, { \"locale\": \"de_DE\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Mario Siegmann <mario_siegmann@web.de>, 2024\", \"Language-Team\": \"German (Germany) (https://app.transifex.com/nextcloud/teams/64236/de_DE/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"de_DE\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nMario Siegmann <mario_siegmann@web.de>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Mario Siegmann <mario_siegmann@web.de>, 2024\\nLanguage-Team: German (Germany) (https://app.transifex.com/nextcloud/teams/64236/de_DE/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: de_DE\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{filename}\" contains invalid characters, how do you want to continue?': { \"msgid\": '\"{filename}\" contains invalid characters, how do you want to continue?', \"msgstr\": ['\"{filename}\" enthält ungültige Zeichen. Wie möchten Sie fortfahren?'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} Datei-Konflikt\", \"{count} Datei-Konflikte\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} Datei-Konflikt in {dirname}\", \"{count} Datei-Konflikte in {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} Sekunden verbleiben\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} verbleibend\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"ein paar Sekunden verbleiben\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Abbrechen\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Den gesamten Vorgang abbrechen\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Hochladen abbrechen\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Fortsetzen\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Neu erstellen\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"Geschätzte verbleibende Zeit\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Vorhandene Version\"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Wenn Sie beide Versionen auswählen, wird der eingehenden Datei eine Nummer zum Namen hinzugefügt.\"] }, \"Invalid file name\": { \"msgid\": \"Invalid file name\", \"msgstr\": [\"Ungültiger Dateiname\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Datum der letzten Änderung unbekannt\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Neu\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Neue Version\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"Pausiert\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Vorschaubild\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Umbenennen\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Alle Kontrollkästchen aktivieren\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Alle vorhandenen Dateien auswählen\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Alle neuen Dateien auswählen\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Überspringen\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"{count} Datei überspringen\", \"{count} Dateien überspringen\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Unbekannte Größe\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Dateien hochladen\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Ordner hochladen\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Vom Gerät hochladen\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Das Hochladen wurde abgebrochen\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Fortschritt beim Hochladen\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Wenn ein eingehender Ordner ausgewählt wird, werden alle darin enthaltenen Konfliktdateien ebenfalls überschrieben.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Bei Auswahl eines eingehenden Ordners wird der Inhalt in den vorhandenen Ordner geschrieben und eine rekursive Konfliktlösung durchgeführt.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Welche Dateien möchten Sie behalten?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Sie müssen mindestens eine Version jeder Datei auswählen, um fortzufahren.\"] } } } } }, { \"locale\": \"el\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Nik Pap, 2022\", \"Language-Team\": \"Greek (https://www.transifex.com/nextcloud/teams/64236/el/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"el\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nNik Pap, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Nik Pap, 2022\\nLanguage-Team: Greek (https://www.transifex.com/nextcloud/teams/64236/el/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: el\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"απομένουν {seconds} δευτερόλεπτα\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"απομένουν {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"απομένουν λίγα δευτερόλεπτα\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Προσθήκη\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Ακύρωση μεταφορτώσεων\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"εκτίμηση του χρόνου που απομένει\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"σε παύση\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Μεταφόρτωση αρχείων\"] } } } } }, { \"locale\": \"el_GR\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Greek (Greece) (https://www.transifex.com/nextcloud/teams/64236/el_GR/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"el_GR\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Greek (Greece) (https://www.transifex.com/nextcloud/teams/64236/el_GR/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: el_GR\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"en_GB\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Andi Chandler <andi@gowling.com>, 2024\", \"Language-Team\": \"English (United Kingdom) (https://app.transifex.com/nextcloud/teams/64236/en_GB/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"en_GB\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nAndi Chandler <andi@gowling.com>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Andi Chandler <andi@gowling.com>, 2024\\nLanguage-Team: English (United Kingdom) (https://app.transifex.com/nextcloud/teams/64236/en_GB/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: en_GB\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} file conflict\", \"{count} files conflict\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} file conflict in {dirname}\", \"{count} file conflicts in {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} seconds left\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} left\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"a few seconds left\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Cancel\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Cancel the entire operation\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Cancel uploads\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Continue\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimating time left\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Existing version\"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"If you select both versions, the incoming file will have a number added to its name.\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Last modified date unknown\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"New\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"New version\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"paused\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Preview image\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Select all checkboxes\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Select all existing files\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Select all new files\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Skip this file\", \"Skip {count} files\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Unknown size\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"Upload cancelled\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Upload files\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Upload progress\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"When an incoming folder is selected, any conflicting files within it will also be overwritten.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Which files do you want to keep?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"You need to select at least one version of each file to continue.\"] } } } } }, { \"locale\": \"eo\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Esperanto (https://www.transifex.com/nextcloud/teams/64236/eo/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"eo\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Esperanto (https://www.transifex.com/nextcloud/teams/64236/eo/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: eo\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Julio C. Ortega, 2024\", \"Language-Team\": \"Spanish (https://app.transifex.com/nextcloud/teams/64236/es/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nFranciscoFJ <dev-ooo@satel-sa.com>, 2024\\nJulio C. Ortega, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Julio C. Ortega, 2024\\nLanguage-Team: Spanish (https://app.transifex.com/nextcloud/teams/64236/es/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, '\"{filename}\" contains invalid characters, how do you want to continue?': { \"msgid\": '\"{filename}\" contains invalid characters, how do you want to continue?', \"msgstr\": ['\"{filename}\" contiene caracteres inválidos, ¿cómo desea continuar?'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} conflicto de archivo\", \"{count} conflictos de archivo\", \"{count} conflictos de archivo\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} conflicto de archivo en {dirname}\", \"{count} conflictos de archivo en {dirname}\", \"{count} conflictos de archivo en {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} segundos restantes\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} restante\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"quedan unos segundos\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Cancelar\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Cancelar toda la operación\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Cancelar subidas\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Continuar\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Crear nuevo\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimando tiempo restante\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Versión existente\"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Si selecciona ambas versionas, el archivo entrante le será agregado un número a su nombre.\"] }, \"Invalid file name\": { \"msgid\": \"Invalid file name\", \"msgstr\": [\"Nombre de archivo inválido\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Última fecha de modificación desconocida\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nuevo\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Nueva versión\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pausado\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Previsualizar imagen\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Renombrar\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Seleccionar todas las casillas de verificación\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Seleccionar todos los archivos existentes\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Seleccionar todos los archivos nuevos\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Saltar\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Saltar este archivo\", \"Saltar {count} archivos\", \"Saltar {count} archivos\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Tamaño desconocido\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Subir archivos\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Subir carpetas\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Subir desde dispositivo\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"La subida ha sido cancelada\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Progreso de la subida\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Cuando una carpeta entrante es seleccionada, cualquier de los archivos en conflictos también serán sobre-escritos.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Cuando una carpeta entrante es seleccionada, el contenido es escrito en la carpeta existente y se realizará una resolución de conflictos recursiva.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"¿Qué archivos desea conservar?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Debe seleccionar al menos una versión de cada archivo para continuar.\"] } } } } }, { \"locale\": \"es_419\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"ALEJANDRO CASTRO, 2022\", \"Language-Team\": \"Spanish (Latin America) (https://www.transifex.com/nextcloud/teams/64236/es_419/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_419\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nALEJANDRO CASTRO, 2022\\n\" }, \"msgstr\": [\"Last-Translator: ALEJANDRO CASTRO, 2022\\nLanguage-Team: Spanish (Latin America) (https://www.transifex.com/nextcloud/teams/64236/es_419/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_419\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} segundos restantes\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"{tiempo} restante\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"quedan pocos segundos\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"agregar\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Cancelar subidas\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimando tiempo restante\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pausado\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Subir archivos\"] } } } } }, { \"locale\": \"es_AR\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Matias Iglesias, 2022\", \"Language-Team\": \"Spanish (Argentina) (https://www.transifex.com/nextcloud/teams/64236/es_AR/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_AR\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nMatias Iglesias, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Matias Iglesias, 2022\\nLanguage-Team: Spanish (Argentina) (https://www.transifex.com/nextcloud/teams/64236/es_AR/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_AR\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} segundos restantes\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"{time} restante\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"quedan unos segundos\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Añadir\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Cancelar subidas\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimando tiempo restante\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pausado\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Subir archivos\"] } } } } }, { \"locale\": \"es_CL\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Chile) (https://www.transifex.com/nextcloud/teams/64236/es_CL/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_CL\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Chile) (https://www.transifex.com/nextcloud/teams/64236/es_CL/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_CL\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_CO\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Colombia) (https://www.transifex.com/nextcloud/teams/64236/es_CO/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_CO\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Colombia) (https://www.transifex.com/nextcloud/teams/64236/es_CO/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_CO\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_CR\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Costa Rica) (https://www.transifex.com/nextcloud/teams/64236/es_CR/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_CR\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Costa Rica) (https://www.transifex.com/nextcloud/teams/64236/es_CR/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_CR\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_DO\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Dominican Republic) (https://www.transifex.com/nextcloud/teams/64236/es_DO/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_DO\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Dominican Republic) (https://www.transifex.com/nextcloud/teams/64236/es_DO/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_DO\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_EC\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Ecuador) (https://www.transifex.com/nextcloud/teams/64236/es_EC/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_EC\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Ecuador) (https://www.transifex.com/nextcloud/teams/64236/es_EC/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_EC\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_GT\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Guatemala) (https://www.transifex.com/nextcloud/teams/64236/es_GT/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_GT\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Guatemala) (https://www.transifex.com/nextcloud/teams/64236/es_GT/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_GT\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_HN\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Honduras) (https://www.transifex.com/nextcloud/teams/64236/es_HN/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_HN\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Honduras) (https://www.transifex.com/nextcloud/teams/64236/es_HN/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_HN\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_MX\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"ALEJANDRO CASTRO, 2022\", \"Language-Team\": \"Spanish (Mexico) (https://www.transifex.com/nextcloud/teams/64236/es_MX/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_MX\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nLuis Francisco Castro, 2022\\nALEJANDRO CASTRO, 2022\\n\" }, \"msgstr\": [\"Last-Translator: ALEJANDRO CASTRO, 2022\\nLanguage-Team: Spanish (Mexico) (https://www.transifex.com/nextcloud/teams/64236/es_MX/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_MX\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} segundos restantes\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"{tiempo} restante\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"quedan pocos segundos\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"agregar\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"cancelar las cargas\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimando tiempo restante\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"en pausa\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"cargar archivos\"] } } } } }, { \"locale\": \"es_NI\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Nicaragua) (https://www.transifex.com/nextcloud/teams/64236/es_NI/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_NI\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Nicaragua) (https://www.transifex.com/nextcloud/teams/64236/es_NI/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_NI\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_PA\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Panama) (https://www.transifex.com/nextcloud/teams/64236/es_PA/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_PA\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Panama) (https://www.transifex.com/nextcloud/teams/64236/es_PA/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_PA\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_PE\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Peru) (https://www.transifex.com/nextcloud/teams/64236/es_PE/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_PE\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Peru) (https://www.transifex.com/nextcloud/teams/64236/es_PE/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_PE\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_PR\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Puerto Rico) (https://www.transifex.com/nextcloud/teams/64236/es_PR/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_PR\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Puerto Rico) (https://www.transifex.com/nextcloud/teams/64236/es_PR/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_PR\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_PY\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Paraguay) (https://www.transifex.com/nextcloud/teams/64236/es_PY/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_PY\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Paraguay) (https://www.transifex.com/nextcloud/teams/64236/es_PY/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_PY\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_SV\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (El Salvador) (https://www.transifex.com/nextcloud/teams/64236/es_SV/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_SV\", \"Plural-Forms\": \"nplurals=2; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (El Salvador) (https://www.transifex.com/nextcloud/teams/64236/es_SV/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_SV\\nPlural-Forms: nplurals=2; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_UY\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Uruguay) (https://www.transifex.com/nextcloud/teams/64236/es_UY/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_UY\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Uruguay) (https://www.transifex.com/nextcloud/teams/64236/es_UY/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_UY\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"et_EE\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Taavo Roos, 2023\", \"Language-Team\": \"Estonian (Estonia) (https://app.transifex.com/nextcloud/teams/64236/et_EE/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"et_EE\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nMait R, 2022\\nTaavo Roos, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Taavo Roos, 2023\\nLanguage-Team: Estonian (Estonia) (https://app.transifex.com/nextcloud/teams/64236/et_EE/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: et_EE\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} jäänud sekundid\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"{time} aega jäänud\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"jäänud mõni sekund\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Lisa\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Tühista üleslaadimine\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"hinnanguline järelejäänud aeg\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pausil\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Lae failid üles\"] } } } } }, { \"locale\": \"eu\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Unai Tolosa Pontesta <utolosa002@gmail.com>, 2022\", \"Language-Team\": \"Basque (https://www.transifex.com/nextcloud/teams/64236/eu/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"eu\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nUnai Tolosa Pontesta <utolosa002@gmail.com>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Unai Tolosa Pontesta <utolosa002@gmail.com>, 2022\\nLanguage-Team: Basque (https://www.transifex.com/nextcloud/teams/64236/eu/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: eu\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} segundo geratzen dira\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"{time} geratzen da\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"segundo batzuk geratzen dira\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Gehitu\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Ezeztatu igoerak\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"kalkulatutako geratzen den denbora\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"geldituta\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Igo fitxategiak\"] } } } } }, { \"locale\": \"fa\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Fatemeh Komeily, 2023\", \"Language-Team\": \"Persian (https://app.transifex.com/nextcloud/teams/64236/fa/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"fa\", \"Plural-Forms\": \"nplurals=2; plural=(n > 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nFatemeh Komeily, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Fatemeh Komeily, 2023\\nLanguage-Team: Persian (https://app.transifex.com/nextcloud/teams/64236/fa/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: fa\\nPlural-Forms: nplurals=2; plural=(n > 1);\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"ثانیه های باقی مانده\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"باقی مانده\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"چند ثانیه مانده\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"اضافه کردن\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"کنسل کردن فایل های اپلود شده\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"تخمین زمان باقی مانده\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"مکث کردن\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"بارگذاری فایل ها\"] } } } } }, { \"locale\": \"fi_FI\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Jiri Grönroos <jiri.gronroos@iki.fi>, 2022\", \"Language-Team\": \"Finnish (Finland) (https://www.transifex.com/nextcloud/teams/64236/fi_FI/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"fi_FI\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJiri Grönroos <jiri.gronroos@iki.fi>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Jiri Grönroos <jiri.gronroos@iki.fi>, 2022\\nLanguage-Team: Finnish (Finland) (https://www.transifex.com/nextcloud/teams/64236/fi_FI/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: fi_FI\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} sekuntia jäljellä\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"{time} jäljellä\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"muutama sekunti jäljellä\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Lisää\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Peruuta lähetykset\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"arvioidaan jäljellä olevaa aikaa\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"keskeytetty\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Lähetä tiedostoja\"] } } } } }, { \"locale\": \"fo\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Faroese (https://www.transifex.com/nextcloud/teams/64236/fo/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"fo\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Faroese (https://www.transifex.com/nextcloud/teams/64236/fo/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: fo\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"fr\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"jed boulahya, 2024\", \"Language-Team\": \"French (https://app.transifex.com/nextcloud/teams/64236/fr/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"fr\", \"Plural-Forms\": \"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nBenoit Pruneau, 2024\\njed boulahya, 2024\\n\" }, \"msgstr\": [\"Last-Translator: jed boulahya, 2024\\nLanguage-Team: French (https://app.transifex.com/nextcloud/teams/64236/fr/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: fr\\nPlural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} fichier en conflit\", \"{count} fichiers en conflit\", \"{count} fichiers en conflit\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} fichier en conflit dans {dirname}\", \"{count} fichiers en conflit dans {dirname}\", \"{count} fichiers en conflit dans {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} secondes restantes\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} restant\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"quelques secondes restantes\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Annuler\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Annuler l'opération entière\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Annuler les envois\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Continuer\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimation du temps restant\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Version existante\"] }, \"If you select both versions, the copied file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the copied file will have a number added to its name.\", \"msgstr\": [\"Si vous sélectionnez les deux versions, le fichier copié aura un numéro ajouté àname.\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Date de la dernière modification est inconnue\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nouveau\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Nouvelle version\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"en pause\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Aperçu de l'image\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Sélectionner toutes les cases à cocher\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Sélectionner tous les fichiers existants\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Sélectionner tous les nouveaux fichiers\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Ignorer ce fichier\", \"Ignorer {count} fichiers\", \"Ignorer {count} fichiers\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Taille inconnue\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\" annulé\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Téléchargement des fichiers\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Progression du téléchargement\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Lorsqu'un dossier entrant est sélectionné, tous les fichiers en conflit qu'il contient seront également écrasés.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Quels fichiers souhaitez-vous conserver ?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Vous devez sélectionner au moins une version de chaque fichier pour continuer.\"] } } } } }, { \"locale\": \"ga\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Aindriú Mac Giolla Eoin, 2024\", \"Language-Team\": \"Irish (https://app.transifex.com/nextcloud/teams/64236/ga/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ga\", \"Plural-Forms\": \"nplurals=5; plural=(n==1 ? 0 : n==2 ? 1 : n<7 ? 2 : n<11 ? 3 : 4);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nAindriú Mac Giolla Eoin, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Aindriú Mac Giolla Eoin, 2024\\nLanguage-Team: Irish (https://app.transifex.com/nextcloud/teams/64236/ga/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ga\\nPlural-Forms: nplurals=5; plural=(n==1 ? 0 : n==2 ? 1 : n<7 ? 2 : n<11 ? 3 : 4);\\n\"] }, '\"{filename}\" contains invalid characters, how do you want to continue?': { \"msgid\": '\"{filename}\" contains invalid characters, how do you want to continue?', \"msgstr\": ['Tá carachtair neamhbhailí in \"{filename}\", conas ba mhaith leat leanúint ar aghaidh?'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} coimhlint comhaid\", \"coimhlint comhaid {count}\", \"coimhlint comhaid {count}\", \"coimhlint comhaid {count}\", \"coimhlint comhaid {count}\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} coimhlint comhaid i {dirname}\", \"{count} coimhlint comhaid i {dirname}\", \"{count} coimhlint comhaid i {dirname}\", \"{count} coimhlint comhaid i {dirname}\", \"{count} coimhlint comhaid i {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{soicind} fágtha\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{am} fágtha\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"cúpla soicind fágtha\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Cealaigh\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Cealaigh an oibríocht iomlán\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Cealaigh uaslódálacha\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Leanúint ar aghaidh\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Cruthaigh nua\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"ag déanamh meastachán ar an am atá fágtha\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Leagan láithreach \"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Má roghnaíonn tú an dá leagan, cuirfear uimhir leis an ainm a thagann isteach.\"] }, \"Invalid file name\": { \"msgid\": \"Invalid file name\", \"msgstr\": [\"Ainm comhaid neamhbhailí\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Dáta modhnaithe is déanaí anaithnid\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nua\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Leagan nua\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"sos\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Íomhá réamhamharc\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Athainmnigh\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Roghnaigh gach ticbhosca\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Roghnaigh gach comhad atá ann cheana féin\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Roghnaigh gach comhad nua\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Scipeáil\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Léim an comhad seo\", \"Léim ar {count} comhad\", \"Léim ar {count} comhad\", \"Léim ar {count} comhad\", \"Léim ar {count} comhad\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Méid anaithnid\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Uaslódáil comhaid\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Uaslódáil fillteáin\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Íosluchtaigh ó gléas\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Cuireadh an t-uaslódáil ar ceal\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Uaslódáil dul chun cinn\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Nuair a roghnaítear fillteán isteach, déanfar aon chomhad contrártha laistigh de a fhorscríobh freisin.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Nuair a roghnaítear fillteán isteach, scríobhtar an t-ábhar isteach san fhillteán atá ann cheana agus déantar réiteach coinbhleachta athchúrsach.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Cé na comhaid ar mhaith leat a choinneáil?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Ní mór duit leagan amháin ar a laghad de gach comhad a roghnú chun leanúint ar aghaidh.\"] } } } } }, { \"locale\": \"gd\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Gaelic, Scottish (https://www.transifex.com/nextcloud/teams/64236/gd/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"gd\", \"Plural-Forms\": \"nplurals=4; plural=(n==1 || n==11) ? 0 : (n==2 || n==12) ? 1 : (n > 2 && n < 20) ? 2 : 3;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Gaelic, Scottish (https://www.transifex.com/nextcloud/teams/64236/gd/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: gd\\nPlural-Forms: nplurals=4; plural=(n==1 || n==11) ? 0 : (n==2 || n==12) ? 1 : (n > 2 && n < 20) ? 2 : 3;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"gl\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Miguel Anxo Bouzada <mbouzada@gmail.com>, 2024\", \"Language-Team\": \"Galician (https://app.transifex.com/nextcloud/teams/64236/gl/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"gl\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nMiguel Anxo Bouzada <mbouzada@gmail.com>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Miguel Anxo Bouzada <mbouzada@gmail.com>, 2024\\nLanguage-Team: Galician (https://app.transifex.com/nextcloud/teams/64236/gl/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: gl\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{filename}\" contains invalid characters, how do you want to continue?': { \"msgid\": '\"{filename}\" contains invalid characters, how do you want to continue?', \"msgstr\": [\"«{filename}» contén caracteres non válidos, como quere continuar?\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} conflito de ficheiros\", \"{count} conflitos de ficheiros\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} conflito de ficheiros en {dirname}\", \"{count} conflitos de ficheiros en {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"faltan {seconds} segundos\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"falta {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"faltan uns segundos\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Cancelar\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Cancela toda a operación\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Cancelar envíos\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Continuar\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Crear un novo\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"calculando canto tempo falta\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Versión existente\"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Se selecciona ambas as versións, o ficheiro entrante terá un número engadido ao seu nome.\"] }, \"Invalid file name\": { \"msgid\": \"Invalid file name\", \"msgstr\": [\"O nome de ficheiro non é válido\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Data da última modificación descoñecida\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nova\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Nova versión\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"detido\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Vista previa da imaxe\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Renomear\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Marcar todas as caixas de selección\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Seleccionar todos os ficheiros existentes\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Seleccionar todos os ficheiros novos\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Omitir\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Omita este ficheiro\", \"Omitir {count} ficheiros\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Tamaño descoñecido\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Enviar ficheiros\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Enviar cartafoles\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Enviar dende o dispositivo\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"O envío foi cancelado\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Progreso do envío\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Cando se selecciona un cartafol entrante, tamén se sobrescribirán os ficheiros en conflito dentro del.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Cando se selecciona un cartafol entrante, o contido escríbese no cartafol existente e lévase a cabo unha resolución recursiva de conflitos.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Que ficheiros quere conservar?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Debe seleccionar polo menos unha versión de cada ficheiro para continuar.\"] } } } } }, { \"locale\": \"he\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Hebrew (https://www.transifex.com/nextcloud/teams/64236/he/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"he\", \"Plural-Forms\": \"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n == 2 && n % 1 == 0) ? 1: (n % 10 == 0 && n % 1 == 0 && n > 10) ? 2 : 3;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Hebrew (https://www.transifex.com/nextcloud/teams/64236/he/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: he\\nPlural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n == 2 && n % 1 == 0) ? 1: (n % 10 == 0 && n % 1 == 0 && n > 10) ? 2 : 3;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"hi_IN\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Hindi (India) (https://www.transifex.com/nextcloud/teams/64236/hi_IN/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"hi_IN\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Hindi (India) (https://www.transifex.com/nextcloud/teams/64236/hi_IN/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: hi_IN\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"hr\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Croatian (https://www.transifex.com/nextcloud/teams/64236/hr/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"hr\", \"Plural-Forms\": \"nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Croatian (https://www.transifex.com/nextcloud/teams/64236/hr/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: hr\\nPlural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"hsb\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Upper Sorbian (https://www.transifex.com/nextcloud/teams/64236/hsb/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"hsb\", \"Plural-Forms\": \"nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Upper Sorbian (https://www.transifex.com/nextcloud/teams/64236/hsb/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: hsb\\nPlural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"hu\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Hungarian (https://www.transifex.com/nextcloud/teams/64236/hu/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"hu\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Hungarian (https://www.transifex.com/nextcloud/teams/64236/hu/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: hu\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"hu_HU\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Balázs Úr, 2022\", \"Language-Team\": \"Hungarian (Hungary) (https://www.transifex.com/nextcloud/teams/64236/hu_HU/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"hu_HU\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nBalázs Meskó <meskobalazs@mailbox.org>, 2022\\nBalázs Úr, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Balázs Úr, 2022\\nLanguage-Team: Hungarian (Hungary) (https://www.transifex.com/nextcloud/teams/64236/hu_HU/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: hu_HU\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{} másodperc van hátra\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"{time} van hátra\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"pár másodperc van hátra\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Hozzáadás\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Feltöltések megszakítása\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"hátralévő idő becslése\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"szüneteltetve\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Fájlok feltöltése\"] } } } } }, { \"locale\": \"hy\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Armenian (https://www.transifex.com/nextcloud/teams/64236/hy/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"hy\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Armenian (https://www.transifex.com/nextcloud/teams/64236/hy/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: hy\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ia\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Interlingua (https://www.transifex.com/nextcloud/teams/64236/ia/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ia\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Interlingua (https://www.transifex.com/nextcloud/teams/64236/ia/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ia\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"id\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Linerly <linerly@proton.me>, 2023\", \"Language-Team\": \"Indonesian (https://app.transifex.com/nextcloud/teams/64236/id/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"id\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nEmpty Slot Filler, 2023\\nLinerly <linerly@proton.me>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Linerly <linerly@proton.me>, 2023\\nLanguage-Team: Indonesian (https://app.transifex.com/nextcloud/teams/64236/id/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: id\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} berkas berkonflik\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} berkas berkonflik dalam {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} detik tersisa\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} tersisa\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"tinggal sebentar lagi\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Batalkan unggahan\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Lanjutkan\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"memperkirakan waktu yang tersisa\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Versi yang ada\"] }, \"If you select both versions, the copied file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the copied file will have a number added to its name.\", \"msgstr\": [\"Jika Anda memilih kedua versi, nama berkas yang disalin akan ditambahi angka.\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Tanggal perubahan terakhir tidak diketahui\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Baru\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Versi baru\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"dijeda\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Gambar pratinjau\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Pilih semua kotak centang\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Pilih semua berkas yang ada\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Pilih semua berkas baru\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Lewati {count} berkas\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Ukuran tidak diketahui\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"Unggahan dibatalkan\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Unggah berkas\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Berkas mana yang Anda ingin tetap simpan?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Anda harus memilih setidaknya satu versi dari masing-masing berkas untuk melanjutkan.\"] } } } } }, { \"locale\": \"ig\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Igbo (https://www.transifex.com/nextcloud/teams/64236/ig/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ig\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Igbo (https://www.transifex.com/nextcloud/teams/64236/ig/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ig\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"is\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Sveinn í Felli <sv1@fellsnet.is>, 2023\", \"Language-Team\": \"Icelandic (https://app.transifex.com/nextcloud/teams/64236/is/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"is\", \"Plural-Forms\": \"nplurals=2; plural=(n % 10 != 1 || n % 100 == 11);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nSveinn í Felli <sv1@fellsnet.is>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Sveinn í Felli <sv1@fellsnet.is>, 2023\\nLanguage-Team: Icelandic (https://app.transifex.com/nextcloud/teams/64236/is/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: is\\nPlural-Forms: nplurals=2; plural=(n % 10 != 1 || n % 100 == 11);\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} árekstur skráa\", \"{count} árekstrar skráa\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} árekstur skráa í {dirname}\", \"{count} árekstrar skráa í {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} sekúndur eftir\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} eftir\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"nokkrar sekúndur eftir\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Hætta við innsendingar\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Halda áfram\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"áætla tíma sem eftir er\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Fyrirliggjandi útgáfa\"] }, \"If you select both versions, the copied file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the copied file will have a number added to its name.\", \"msgstr\": [\"Ef þú velur báðar útgáfur, þá mun verða bætt tölustaf aftan við heiti afrituðu skrárinnar.\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Síðasta breytingadagsetning er óþekkt\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nýtt\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Ný útgáfa\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"í bið\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Forskoðun myndar\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Velja gátreiti\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Velja allar fyrirliggjandi skrár\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Velja allar nýjar skrár\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Sleppa þessari skrá\", \"Sleppa {count} skrám\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Óþekkt stærð\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"Hætt við innsendingu\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Senda inn skrár\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Hvaða skrám vilt þú vilt halda eftir?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Þú verður að velja að minnsta kosti eina útgáfu af hverri skrá til að halda áfram.\"] } } } } }, { \"locale\": \"it\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Random_R, 2023\", \"Language-Team\": \"Italian (https://app.transifex.com/nextcloud/teams/64236/it/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"it\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nLep Lep, 2023\\nRandom_R, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Random_R, 2023\\nLanguage-Team: Italian (https://app.transifex.com/nextcloud/teams/64236/it/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: it\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} file in conflitto\", \"{count} file in conflitto\", \"{count} file in conflitto\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} file in conflitto in {dirname}\", \"{count} file in conflitto in {dirname}\", \"{count} file in conflitto in {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} secondi rimanenti \"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} rimanente\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"alcuni secondi rimanenti\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Annulla i caricamenti\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Continua\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"calcolo il tempo rimanente\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Versione esistente\"] }, \"If you select both versions, the copied file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the copied file will have a number added to its name.\", \"msgstr\": [\"Se selezioni entrambe le versioni, nel nome del file copiato verrà aggiunto un numero \"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Ultima modifica sconosciuta\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nuovo\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Nuova versione\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pausa\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Anteprima immagine\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Seleziona tutte le caselle\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Seleziona tutti i file esistenti\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Seleziona tutti i nuovi file\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Salta questo file\", \"Salta {count} file\", \"Salta {count} file\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Dimensione sconosciuta\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"Caricamento cancellato\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Carica i file\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Quali file vuoi mantenere?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Devi selezionare almeno una versione di ogni file per continuare\"] } } } } }, { \"locale\": \"it_IT\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Italian (Italy) (https://www.transifex.com/nextcloud/teams/64236/it_IT/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"it_IT\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Italian (Italy) (https://www.transifex.com/nextcloud/teams/64236/it_IT/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: it_IT\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ja_JP\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"かたかめ, 2022\", \"Language-Team\": \"Japanese (Japan) (https://www.transifex.com/nextcloud/teams/64236/ja_JP/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ja_JP\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nT.S, 2022\\nかたかめ, 2022\\n\" }, \"msgstr\": [\"Last-Translator: かたかめ, 2022\\nLanguage-Team: Japanese (Japan) (https://www.transifex.com/nextcloud/teams/64236/ja_JP/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ja_JP\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"残り {seconds} 秒\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"残り {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"残り数秒\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"追加\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"アップロードをキャンセル\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"概算残り時間\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"一時停止中\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"ファイルをアップデート\"] } } } } }, { \"locale\": \"ka\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Georgian (https://www.transifex.com/nextcloud/teams/64236/ka/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ka\", \"Plural-Forms\": \"nplurals=2; plural=(n!=1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Georgian (https://www.transifex.com/nextcloud/teams/64236/ka/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ka\\nPlural-Forms: nplurals=2; plural=(n!=1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ka_GE\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Georgian (Georgia) (https://www.transifex.com/nextcloud/teams/64236/ka_GE/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ka_GE\", \"Plural-Forms\": \"nplurals=2; plural=(n!=1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Georgian (Georgia) (https://www.transifex.com/nextcloud/teams/64236/ka_GE/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ka_GE\\nPlural-Forms: nplurals=2; plural=(n!=1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"kab\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"ZiriSut, 2023\", \"Language-Team\": \"Kabyle (https://app.transifex.com/nextcloud/teams/64236/kab/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"kab\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nZiriSut, 2023\\n\" }, \"msgstr\": [\"Last-Translator: ZiriSut, 2023\\nLanguage-Team: Kabyle (https://app.transifex.com/nextcloud/teams/64236/kab/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: kab\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} tesdatin i d-yeqqimen\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"{time} i d-yeqqimen\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"qqiment-d kra n tesdatin kan\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Rnu\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Sefsex asali\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"asizel n wakud i d-yeqqimen\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"yeḥbes\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Sali-d ifuyla\"] } } } } }, { \"locale\": \"kk\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Kazakh (https://www.transifex.com/nextcloud/teams/64236/kk/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"kk\", \"Plural-Forms\": \"nplurals=2; plural=(n!=1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Kazakh (https://www.transifex.com/nextcloud/teams/64236/kk/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: kk\\nPlural-Forms: nplurals=2; plural=(n!=1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"km\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Khmer (https://www.transifex.com/nextcloud/teams/64236/km/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"km\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Khmer (https://www.transifex.com/nextcloud/teams/64236/km/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: km\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"kn\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Kannada (https://www.transifex.com/nextcloud/teams/64236/kn/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"kn\", \"Plural-Forms\": \"nplurals=2; plural=(n > 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Kannada (https://www.transifex.com/nextcloud/teams/64236/kn/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: kn\\nPlural-Forms: nplurals=2; plural=(n > 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ko\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"이상오, 2024\", \"Language-Team\": \"Korean (https://app.transifex.com/nextcloud/teams/64236/ko/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ko\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\n이상오, 2024\\n\" }, \"msgstr\": [\"Last-Translator: 이상오, 2024\\nLanguage-Team: Korean (https://app.transifex.com/nextcloud/teams/64236/ko/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ko\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, '\"{filename}\" contains invalid characters, how do you want to continue?': { \"msgid\": '\"{filename}\" contains invalid characters, how do you want to continue?', \"msgstr\": ['\"{filename}\"에 유효하지 않은 문자가 있습니다, 계속하시겠습니까?'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count}개의 파일이 충돌함\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{dirname}에서 {count}개의 파일이 충돌함\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds}초 남음\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} 남음\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"곧 완료\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"취소\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"전체 작업을 취소\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"업로드 취소\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"확인\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"새로 만들기\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"남은 시간 계산\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"현재 버전\"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"두 파일을 모두 선택하면, 들어오는 파일의 이름에 번호가 추가됩니다.\"] }, \"Invalid file name\": { \"msgid\": \"Invalid file name\", \"msgstr\": [\"잘못된 파일 이름\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"최근 수정일 알 수 없음\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"새로 만들기\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"새 버전\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"일시정지됨\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"미리보기 이미지\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"이름 바꾸기\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"모든 체크박스 선택\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"기존 파일을 모두 선택\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"새로운 파일을 모두 선택\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"건너뛰기\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"{count}개의 파일 넘기기\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"크기를 알 수 없음\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"파일 업로드\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"폴더 업로드\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"장치에서 업로드\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"업로드가 취소되었습니다.\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"업로드 진행도\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"들어오는 폴더를 선택했다면, 충돌하는 내부 파일들은 덮어쓰기 됩니다.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"들어오는 폴더를 선택했다면 내용물이 그 기존 폴더 안에 작성되고, 전체적으로 충돌 해결을 수행합니다.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"어떤 파일을 보존하시겠습니까?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"계속하기 위해서는 한 파일에 최소 하나의 버전을 선택해야 합니다.\"] } } } } }, { \"locale\": \"la\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Latin (https://www.transifex.com/nextcloud/teams/64236/la/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"la\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Latin (https://www.transifex.com/nextcloud/teams/64236/la/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: la\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"lb\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Luxembourgish (https://www.transifex.com/nextcloud/teams/64236/lb/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"lb\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Luxembourgish (https://www.transifex.com/nextcloud/teams/64236/lb/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: lb\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"lo\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Lao (https://www.transifex.com/nextcloud/teams/64236/lo/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"lo\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Lao (https://www.transifex.com/nextcloud/teams/64236/lo/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: lo\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"lt_LT\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Lithuanian (Lithuania) (https://www.transifex.com/nextcloud/teams/64236/lt_LT/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"lt_LT\", \"Plural-Forms\": \"nplurals=4; plural=(n % 10 == 1 && (n % 100 > 19 || n % 100 < 11) ? 0 : (n % 10 >= 2 && n % 10 <=9) && (n % 100 > 19 || n % 100 < 11) ? 1 : n % 1 != 0 ? 2: 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Lithuanian (Lithuania) (https://www.transifex.com/nextcloud/teams/64236/lt_LT/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: lt_LT\\nPlural-Forms: nplurals=4; plural=(n % 10 == 1 && (n % 100 > 19 || n % 100 < 11) ? 0 : (n % 10 >= 2 && n % 10 <=9) && (n % 100 > 19 || n % 100 < 11) ? 1 : n % 1 != 0 ? 2: 3);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"lv\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Latvian (https://www.transifex.com/nextcloud/teams/64236/lv/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"lv\", \"Plural-Forms\": \"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Latvian (https://www.transifex.com/nextcloud/teams/64236/lv/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: lv\\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"mk\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Сашко Тодоров <sasetodorov@gmail.com>, 2022\", \"Language-Team\": \"Macedonian (https://www.transifex.com/nextcloud/teams/64236/mk/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"mk\", \"Plural-Forms\": \"nplurals=2; plural=(n % 10 == 1 && n % 100 != 11) ? 0 : 1;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nСашко Тодоров <sasetodorov@gmail.com>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Сашко Тодоров <sasetodorov@gmail.com>, 2022\\nLanguage-Team: Macedonian (https://www.transifex.com/nextcloud/teams/64236/mk/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: mk\\nPlural-Forms: nplurals=2; plural=(n % 10 == 1 && n % 100 != 11) ? 0 : 1;\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"преостануваат {seconds} секунди\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"преостанува {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"уште неколку секунди\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Додади\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Прекини прикачување\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"приближно преостанато време\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"паузирано\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Прикачување датотеки\"] } } } } }, { \"locale\": \"mn\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"BATKHUYAG Ganbold, 2023\", \"Language-Team\": \"Mongolian (https://app.transifex.com/nextcloud/teams/64236/mn/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"mn\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nBATKHUYAG Ganbold, 2023\\n\" }, \"msgstr\": [\"Last-Translator: BATKHUYAG Ganbold, 2023\\nLanguage-Team: Mongolian (https://app.transifex.com/nextcloud/teams/64236/mn/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: mn\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} секунд үлдсэн\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"{time} үлдсэн\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"хэдхэн секунд үлдсэн\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Нэмэх\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Илгээлтийг цуцлах\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"Үлдсэн хугацааг тооцоолж байна\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"түр зогсоосон\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Файл илгээх\"] } } } } }, { \"locale\": \"mr\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Marathi (https://www.transifex.com/nextcloud/teams/64236/mr/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"mr\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Marathi (https://www.transifex.com/nextcloud/teams/64236/mr/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: mr\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ms_MY\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Malay (Malaysia) (https://www.transifex.com/nextcloud/teams/64236/ms_MY/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ms_MY\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Malay (Malaysia) (https://www.transifex.com/nextcloud/teams/64236/ms_MY/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ms_MY\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"my\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Burmese (https://www.transifex.com/nextcloud/teams/64236/my/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"my\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Burmese (https://www.transifex.com/nextcloud/teams/64236/my/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: my\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"nb_NO\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Syvert Fossdal, 2024\", \"Language-Team\": \"Norwegian Bokmål (Norway) (https://app.transifex.com/nextcloud/teams/64236/nb_NO/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"nb_NO\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nSyvert Fossdal, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Syvert Fossdal, 2024\\nLanguage-Team: Norwegian Bokmål (Norway) (https://app.transifex.com/nextcloud/teams/64236/nb_NO/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: nb_NO\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} file conflict\", \"{count} filkonflikter\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} file conflict in {dirname}\", \"{count} filkonflikter i {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} sekunder igjen\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} igjen\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"noen få sekunder igjen\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Avbryt opplastninger\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Fortsett\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"Estimerer tid igjen\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Gjeldende versjon\"] }, \"If you select both versions, the copied file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the copied file will have a number added to its name.\", \"msgstr\": [\"Hvis du velger begge versjoner, vil den kopierte filen få et tall lagt til navnet.\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Siste gang redigert ukjent\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Ny\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Ny versjon\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pauset\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Forhåndsvis bilde\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Velg alle\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Velg alle eksisterende filer\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Velg alle nye filer\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Skip this file\", \"Hopp over {count} filer\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Ukjent størrelse\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"Opplasting avbrutt\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Last opp filer\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Fremdrift, opplasting\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Hvilke filer vil du beholde?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Du må velge minst en versjon av hver fil for å fortsette.\"] } } } } }, { \"locale\": \"ne\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Nepali (https://www.transifex.com/nextcloud/teams/64236/ne/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ne\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Nepali (https://www.transifex.com/nextcloud/teams/64236/ne/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ne\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"nl\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Rico <rico-schwab@hotmail.com>, 2023\", \"Language-Team\": \"Dutch (https://app.transifex.com/nextcloud/teams/64236/nl/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"nl\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nRico <rico-schwab@hotmail.com>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Rico <rico-schwab@hotmail.com>, 2023\\nLanguage-Team: Dutch (https://app.transifex.com/nextcloud/teams/64236/nl/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: nl\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"Nog {seconds} seconden\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"{seconds} over\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"Nog een paar seconden\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Voeg toe\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Uploads annuleren\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"Schatting van de resterende tijd\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"Gepauzeerd\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Upload bestanden\"] } } } } }, { \"locale\": \"nn\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Norwegian Nynorsk (https://www.transifex.com/nextcloud/teams/64236/nn/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"nn\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Norwegian Nynorsk (https://www.transifex.com/nextcloud/teams/64236/nn/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: nn\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"nn_NO\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Norwegian Nynorsk (Norway) (https://www.transifex.com/nextcloud/teams/64236/nn_NO/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"nn_NO\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Norwegian Nynorsk (Norway) (https://www.transifex.com/nextcloud/teams/64236/nn_NO/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: nn_NO\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"oc\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Occitan (post 1500) (https://www.transifex.com/nextcloud/teams/64236/oc/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"oc\", \"Plural-Forms\": \"nplurals=2; plural=(n > 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Occitan (post 1500) (https://www.transifex.com/nextcloud/teams/64236/oc/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: oc\\nPlural-Forms: nplurals=2; plural=(n > 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"pl\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Piotr Strębski <strebski@gmail.com>, 2024\", \"Language-Team\": \"Polish (https://app.transifex.com/nextcloud/teams/64236/pl/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"pl\", \"Plural-Forms\": \"nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nPiotr Strębski <strebski@gmail.com>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Piotr Strębski <strebski@gmail.com>, 2024\\nLanguage-Team: Polish (https://app.transifex.com/nextcloud/teams/64236/pl/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: pl\\nPlural-Forms: nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"konflikt 1 pliku\", \"{count} konfliktów plików\", \"{count} konfliktów plików\", \"{count} konfliktów plików\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} konfliktowy plik w {dirname}\", \"{count} konfliktowych plików w {dirname}\", \"{count} konfliktowych plików w {dirname}\", \"{count} konfliktowych plików w {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"Pozostało {seconds} sekund\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"Pozostało {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"Pozostało kilka sekund\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Anuluj\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Anuluj całą operację\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Anuluj wysyłanie\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Kontynuuj\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"Szacowanie pozostałego czasu\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Istniejąca wersja\"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Jeśli wybierzesz obie wersje, do nazwy pliku przychodzącego zostanie dodany numer.\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Nieznana data ostatniej modyfikacji\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nowy\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Nowa wersja\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"Wstrzymane\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Podgląd obrazu\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Zaznacz wszystkie boxy\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Zaznacz wszystkie istniejące pliki\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Zaznacz wszystkie nowe pliki\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Pomiń 1 plik\", \"Pomiń {count} plików\", \"Pomiń {count} plików\", \"Pomiń {count} plików\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Nieznany rozmiar\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"Anulowano wysyłanie\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Wyślij pliki\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Postęp wysyłania\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Po wybraniu folderu przychodzącego wszelkie znajdujące się w nim pliki powodujące konflikt również zostaną nadpisane.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Po wybraniu folderu przychodzącego zawartość jest zapisywana w istniejącym folderze i przeprowadzane jest rekursywne rozwiązywanie konfliktów.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Które pliki chcesz zachować?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Aby kontynuować, musisz wybrać co najmniej jedną wersję każdego pliku.\"] } } } } }, { \"locale\": \"ps\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Pashto (https://www.transifex.com/nextcloud/teams/64236/ps/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ps\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Pashto (https://www.transifex.com/nextcloud/teams/64236/ps/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ps\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"pt_BR\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Leonardo Colman Lopes <leonardo.dev@colman.com.br>, 2024\", \"Language-Team\": \"Portuguese (Brazil) (https://app.transifex.com/nextcloud/teams/64236/pt_BR/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"pt_BR\", \"Plural-Forms\": \"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nLeonardo Colman Lopes <leonardo.dev@colman.com.br>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Leonardo Colman Lopes <leonardo.dev@colman.com.br>, 2024\\nLanguage-Team: Portuguese (Brazil) (https://app.transifex.com/nextcloud/teams/64236/pt_BR/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: pt_BR\\nPlural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} arquivos em conflito\", \"{count} arquivos em conflito\", \"{count} arquivos em conflito\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} conflitos de arquivo em {dirname}\", \"{count} conflitos de arquivo em {dirname}\", \"{count} conflitos de arquivo em {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} segundos restantes\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} restante\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"alguns segundos restantes\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Cancelar\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Cancelar a operação inteira\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Cancelar uploads\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Continuar\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimando tempo restante\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Versão existente\"] }, \"If you select both versions, the copied file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the copied file will have a number added to its name.\", \"msgstr\": [\"Se você selecionar ambas as versões, o arquivo copiado terá um número adicionado ao seu nome.\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Data da última modificação desconhecida\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Novo\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Nova versão\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pausado\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Visualizar imagem\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Marque todas as caixas de seleção\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Selecione todos os arquivos existentes\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Selecione todos os novos arquivos\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Ignorar {count} arquivos\", \"Ignorar {count} arquivos\", \"Ignorar {count} arquivos\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Tamanho desconhecido\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"Envio cancelado\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Enviar arquivos\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Envio em progresso\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Quando uma pasta é selecionada, quaisquer arquivos dentro dela também serão sobrescritos.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Quais arquivos você deseja manter?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Você precisa selecionar pelo menos uma versão de cada arquivo para continuar.\"] } } } } }, { \"locale\": \"pt_PT\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Manuela Silva <mmsrs@sky.com>, 2022\", \"Language-Team\": \"Portuguese (Portugal) (https://www.transifex.com/nextcloud/teams/64236/pt_PT/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"pt_PT\", \"Plural-Forms\": \"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nManuela Silva <mmsrs@sky.com>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Manuela Silva <mmsrs@sky.com>, 2022\\nLanguage-Team: Portuguese (Portugal) (https://www.transifex.com/nextcloud/teams/64236/pt_PT/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: pt_PT\\nPlural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"faltam {seconds} segundo(s)\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"faltam {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"faltam uns segundos\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Adicionar\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Cancelar envios\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"tempo em falta estimado\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pausado\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Enviar ficheiros\"] } } } } }, { \"locale\": \"ro\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Mădălin Vasiliu <contact@madalinvasiliu.com>, 2022\", \"Language-Team\": \"Romanian (https://www.transifex.com/nextcloud/teams/64236/ro/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ro\", \"Plural-Forms\": \"nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?2:1));\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nMădălin Vasiliu <contact@madalinvasiliu.com>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Mădălin Vasiliu <contact@madalinvasiliu.com>, 2022\\nLanguage-Team: Romanian (https://www.transifex.com/nextcloud/teams/64236/ro/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ro\\nPlural-Forms: nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?2:1));\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} secunde rămase\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"{time} rămas\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"câteva secunde rămase\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Adaugă\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Anulați încărcările\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimarea timpului rămas\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pus pe pauză\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Încarcă fișiere\"] } } } } }, { \"locale\": \"ru\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Влад, 2024\", \"Language-Team\": \"Russian (https://app.transifex.com/nextcloud/teams/64236/ru/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ru\", \"Plural-Forms\": \"nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nAlex <kekcuha@gmail.com>, 2024\\nВлад, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Влад, 2024\\nLanguage-Team: Russian (https://app.transifex.com/nextcloud/teams/64236/ru/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ru\\nPlural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\\n\"] }, '\"{filename}\" contains invalid characters, how do you want to continue?': { \"msgid\": '\"{filename}\" contains invalid characters, how do you want to continue?', \"msgstr\": ['\"{filename}\" содержит недопустимые символы, хотите продолжить?'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"конфликт {count} файла\", \"конфликт {count} файлов\", \"конфликт {count} файлов\", \"конфликт {count} файлов\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"конфликт {count} файла в {dirname}\", \"конфликт {count} файлов в {dirname}\", \"конфликт {count} файлов в {dirname}\", \"конфликт {count} файлов в {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"осталось {seconds} секунд\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"осталось {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"осталось несколько секунд\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Отмена\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Отменить всю операцию целиком\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Отменить загрузки\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Продолжить\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Создать новое\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"оценка оставшегося времени\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Текущая версия\"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Если вы выберете обе версии, к имени входящего файла будет добавлен номер.\"] }, \"Invalid file name\": { \"msgid\": \"Invalid file name\", \"msgstr\": [\"Имя файла недопустимо\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Дата последнего изменения неизвестна\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Новый\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Новая версия\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"приостановлено\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Предварительный просмотр\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Переименовать\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Установить все флажки\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Выбрать все существующие файлы\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Выбрать все новые файлы\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Пропуск\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Пропустить файл\", \"Пропустить {count} файла\", \"Пропустить {count} файлов\", \"Пропустить {count} файлов\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Неизвестный размер\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Загрузка файлов\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Загрузка папок\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Загрузка с устройства\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Загрузка была отменена\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Состояние передачи на сервер\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Когда выбрана входящая папка, все конфликтующие файлы в ней также будут перезаписаны.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Когда выбрана входящая папка, содержимое записывается в существующую папку и выполняется рекурсивное разрешение конфликтов.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Какие файлы вы хотите сохранить?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Для продолжения вам нужно выбрать по крайней мере одну версию каждого файла.\"] } } } } }, { \"locale\": \"ru_RU\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Russian (Russia) (https://www.transifex.com/nextcloud/teams/64236/ru_RU/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ru_RU\", \"Plural-Forms\": \"nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Russian (Russia) (https://www.transifex.com/nextcloud/teams/64236/ru_RU/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ru_RU\\nPlural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"sc\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Sardinian (https://www.transifex.com/nextcloud/teams/64236/sc/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sc\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Sardinian (https://www.transifex.com/nextcloud/teams/64236/sc/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sc\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"si\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Sinhala (https://www.transifex.com/nextcloud/teams/64236/si/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"si\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Sinhala (https://www.transifex.com/nextcloud/teams/64236/si/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: si\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"si_LK\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Sinhala (Sri Lanka) (https://www.transifex.com/nextcloud/teams/64236/si_LK/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"si_LK\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Sinhala (Sri Lanka) (https://www.transifex.com/nextcloud/teams/64236/si_LK/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: si_LK\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"sk_SK\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Slovak (Slovakia) (https://www.transifex.com/nextcloud/teams/64236/sk_SK/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sk_SK\", \"Plural-Forms\": \"nplurals=4; plural=(n % 1 == 0 && n == 1 ? 0 : n % 1 == 0 && n >= 2 && n <= 4 ? 1 : n % 1 != 0 ? 2: 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Slovak (Slovakia) (https://www.transifex.com/nextcloud/teams/64236/sk_SK/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sk_SK\\nPlural-Forms: nplurals=4; plural=(n % 1 == 0 && n == 1 ? 0 : n % 1 == 0 && n >= 2 && n <= 4 ? 1 : n % 1 != 0 ? 2: 3);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"sl\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Matej Urbančič <>, 2022\", \"Language-Team\": \"Slovenian (https://www.transifex.com/nextcloud/teams/64236/sl/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sl\", \"Plural-Forms\": \"nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nMatej Urbančič <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Matej Urbančič <>, 2022\\nLanguage-Team: Slovenian (https://www.transifex.com/nextcloud/teams/64236/sl/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sl\\nPlural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"še {seconds} sekund\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"še {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"še nekaj sekund\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Dodaj\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Prekliči pošiljanje\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"ocenjen čas do konca\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"v premoru\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Pošlji datoteke\"] } } } } }, { \"locale\": \"sl_SI\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Slovenian (Slovenia) (https://www.transifex.com/nextcloud/teams/64236/sl_SI/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sl_SI\", \"Plural-Forms\": \"nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Slovenian (Slovenia) (https://www.transifex.com/nextcloud/teams/64236/sl_SI/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sl_SI\\nPlural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"sq\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Albanian (https://www.transifex.com/nextcloud/teams/64236/sq/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sq\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Albanian (https://www.transifex.com/nextcloud/teams/64236/sq/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sq\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"sr\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Иван Пешић, 2023\", \"Language-Team\": \"Serbian (https://app.transifex.com/nextcloud/teams/64236/sr/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sr\", \"Plural-Forms\": \"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nИван Пешић, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Иван Пешић, 2023\\nLanguage-Team: Serbian (https://app.transifex.com/nextcloud/teams/64236/sr/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sr\\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} фајл конфликт\", \"{count} фајл конфликта\", \"{count} фајл конфликта\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} фајл конфликт у {dirname}\", \"{count} фајл конфликта у {dirname}\", \"{count} фајл конфликта у {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"преостало је {seconds} секунди\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} преостало\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"преостало је неколико секунди\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Обустави отпремања\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Настави\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"процена преосталог времена\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Постојећа верзија\"] }, \"If you select both versions, the copied file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the copied file will have a number added to its name.\", \"msgstr\": [\"Ако изаберете обе верзије, на име копираног фајла ће се додати број.\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Није познат датум последње измене\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Ново\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Нова верзија\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"паузирано\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Слика прегледа\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Штиклирај сва поља за штиклирање\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Изабери све постојеће фајлове\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Изабери све нове фајлове\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Прескочи овај фајл\", \"Прескочи {count} фајла\", \"Прескочи {count} фајлова\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Непозната величина\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"Отпремање је отказано\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Отпреми фајлове\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Напредак отпремања\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Које фајлове желите да задржите?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Морате да изаберете барем једну верзију сваког фајла да наставите.\"] } } } } }, { \"locale\": \"sr@latin\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Serbian (Latin) (https://www.transifex.com/nextcloud/teams/64236/sr@latin/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sr@latin\", \"Plural-Forms\": \"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Serbian (Latin) (https://www.transifex.com/nextcloud/teams/64236/sr@latin/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sr@latin\\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"sv\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Magnus Höglund, 2024\", \"Language-Team\": \"Swedish (https://app.transifex.com/nextcloud/teams/64236/sv/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sv\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nMagnus Höglund, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Magnus Höglund, 2024\\nLanguage-Team: Swedish (https://app.transifex.com/nextcloud/teams/64236/sv/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sv\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{filename}\" contains invalid characters, how do you want to continue?': { \"msgid\": '\"{filename}\" contains invalid characters, how do you want to continue?', \"msgstr\": ['\"{filename}\" innehåller ogiltiga tecken, hur vill du fortsätta?'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} filkonflikt\", \"{count} filkonflikter\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} filkonflikt i {dirname}\", \"{count} filkonflikter i {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} sekunder kvarstår\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} kvarstår\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"några sekunder kvar\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Avbryt\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Avbryt hela operationen\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Avbryt uppladdningar\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Fortsätt\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Skapa ny\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"uppskattar kvarstående tid\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Nuvarande version\"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Om du väljer båda versionerna kommer den inkommande filen att läggas till ett nummer i namnet.\"] }, \"Invalid file name\": { \"msgid\": \"Invalid file name\", \"msgstr\": [\"Ogiltigt filnamn\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Senaste ändringsdatum okänt\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Ny\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Ny version\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pausad\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Förhandsgranska bild\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Byt namn\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Markera alla kryssrutor\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Välj alla befintliga filer\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Välj alla nya filer\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Hoppa över\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Hoppa över denna fil\", \"Hoppa över {count} filer\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Okänd storlek\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Ladda upp filer\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Ladda upp mappar\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Ladda upp från enhet\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Uppladdningen har avbrutits\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Uppladdningsförlopp\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"När en inkommande mapp väljs skrivs även alla konfliktande filer i den över.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"När en inkommande mapp väljs skrivs innehållet in i den befintliga mappen och en rekursiv konfliktlösning utförs.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Vilka filer vill du behålla?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Du måste välja minst en version av varje fil för att fortsätta.\"] } } } } }, { \"locale\": \"sw\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Swahili (https://www.transifex.com/nextcloud/teams/64236/sw/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sw\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Swahili (https://www.transifex.com/nextcloud/teams/64236/sw/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sw\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ta\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Tamil (https://www.transifex.com/nextcloud/teams/64236/ta/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ta\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Tamil (https://www.transifex.com/nextcloud/teams/64236/ta/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ta\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ta_LK\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Tamil (Sri-Lanka) (https://www.transifex.com/nextcloud/teams/64236/ta_LK/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ta_LK\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Tamil (Sri-Lanka) (https://www.transifex.com/nextcloud/teams/64236/ta_LK/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ta_LK\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"th\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Thai (https://www.transifex.com/nextcloud/teams/64236/th/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"th\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Thai (https://www.transifex.com/nextcloud/teams/64236/th/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: th\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"th_TH\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Phongpanot Phairat <ppnplus@protonmail.com>, 2022\", \"Language-Team\": \"Thai (Thailand) (https://www.transifex.com/nextcloud/teams/64236/th_TH/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"th_TH\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nPhongpanot Phairat <ppnplus@protonmail.com>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Phongpanot Phairat <ppnplus@protonmail.com>, 2022\\nLanguage-Team: Thai (Thailand) (https://www.transifex.com/nextcloud/teams/64236/th_TH/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: th_TH\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"เหลืออีก {seconds} วินาที\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"เหลืออีก {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"เหลืออีกไม่กี่วินาที\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"เพิ่ม\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"ยกเลิกการอัปโหลด\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"กำลังคำนวณเวลาที่เหลือ\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"หยุดชั่วคราว\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"อัปโหลดไฟล์\"] } } } } }, { \"locale\": \"tk\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Turkmen (https://www.transifex.com/nextcloud/teams/64236/tk/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"tk\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Turkmen (https://www.transifex.com/nextcloud/teams/64236/tk/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: tk\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"tr\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Kaya Zeren <kayazeren@gmail.com>, 2024\", \"Language-Team\": \"Turkish (https://app.transifex.com/nextcloud/teams/64236/tr/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"tr\", \"Plural-Forms\": \"nplurals=2; plural=(n > 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nKaya Zeren <kayazeren@gmail.com>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Kaya Zeren <kayazeren@gmail.com>, 2024\\nLanguage-Team: Turkish (https://app.transifex.com/nextcloud/teams/64236/tr/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: tr\\nPlural-Forms: nplurals=2; plural=(n > 1);\\n\"] }, '\"{filename}\" contains invalid characters, how do you want to continue?': { \"msgid\": '\"{filename}\" contains invalid characters, how do you want to continue?', \"msgstr\": ['\"{filename}\" içinde geçersiz karakterler var. Nasıl ilerlemek istersiniz?'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} dosya çakışması var\", \"{count} dosya çakışması var\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{dirname} klasöründe {count} dosya çakışması var\", \"{dirname} klasöründe {count} dosya çakışması var\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} saniye kaldı\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} kaldı\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"bir kaç saniye kaldı\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"İptal\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Tüm işlemi iptal et\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Yüklemeleri iptal et\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"İlerle\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Yeni ekle\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"öngörülen kalan süre\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Var olan sürüm\"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"İki sürümü de seçerseniz, gelen dosyanın adına bir sayı eklenir.\"] }, \"Invalid file name\": { \"msgid\": \"Invalid file name\", \"msgstr\": [\"Dosya adı geçersiz\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Son değiştirilme tarihi bilinmiyor\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Yeni\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Yeni sürüm\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"duraklatıldı\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Görsel ön izlemesi\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Yeniden adlandır\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Tüm kutuları işaretle\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Tüm var olan dosyaları seç\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Tüm yeni dosyaları seç\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Atla\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Bu dosyayı atla\", \"{count} dosyayı atla\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Boyut bilinmiyor\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Dosyaları yükle\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Klasörleri yükle\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Aygıttan yükle\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Yükleme iptal edildi\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Yükleme ilerlemesi\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Bir gelen klasör seçildiğinde, içindeki çakışan dosyaların da üzerine yazılır.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Bir gelen klasörü seçildiğinde içerik var olan klasöre yazılır ve yinelemeli bir çakışma çözümü uygulanır.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Hangi dosyaları tutmak istiyorsunuz?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"İlerlemek için her dosyanın en az bir sürümünü seçmelisiniz.\"] } } } } }, { \"locale\": \"ug\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Uyghur (https://www.transifex.com/nextcloud/teams/64236/ug/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ug\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Uyghur (https://www.transifex.com/nextcloud/teams/64236/ug/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ug\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"uk\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"O St <oleksiy.stasevych@gmail.com>, 2024\", \"Language-Team\": \"Ukrainian (https://app.transifex.com/nextcloud/teams/64236/uk/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"uk\", \"Plural-Forms\": \"nplurals=4; plural=(n % 1 == 0 && n % 10 == 1 && n % 100 != 11 ? 0 : n % 1 == 0 && n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 12 || n % 100 > 14) ? 1 : n % 1 == 0 && (n % 10 ==0 || (n % 10 >=5 && n % 10 <=9) || (n % 100 >=11 && n % 100 <=14 )) ? 2: 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nO St <oleksiy.stasevych@gmail.com>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: O St <oleksiy.stasevych@gmail.com>, 2024\\nLanguage-Team: Ukrainian (https://app.transifex.com/nextcloud/teams/64236/uk/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: uk\\nPlural-Forms: nplurals=4; plural=(n % 1 == 0 && n % 10 == 1 && n % 100 != 11 ? 0 : n % 1 == 0 && n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 12 || n % 100 > 14) ? 1 : n % 1 == 0 && (n % 10 ==0 || (n % 10 >=5 && n % 10 <=9) || (n % 100 >=11 && n % 100 <=14 )) ? 2: 3);\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} конфліктний файл\", \"{count} конфліктних файли\", \"{count} конфліктних файлів\", \"{count} конфліктних файлів\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} конфліктний файл у каталозі {dirname}\", \"{count} конфліктних файли у каталозі {dirname}\", \"{count} конфліктних файлів у каталозі {dirname}\", \"{count} конфліктних файлів у каталозі {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"Залишилося {seconds} секунд\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"Залишилося {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"залишилося кілька секунд\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Скасувати\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Скасувати операцію повністю\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Скасувати завантаження\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Продовжити\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"оцінка часу, що залишився\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Присутня версія\"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Якщо буде вибрано обидві версії, до імени вхідного файлу було додано цифру.\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Дата останньої зміни невідома\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Нове\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Нова версія\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"призупинено\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Попередній перегляд\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Вибрати все\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Вибрати усі присутні файли\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Вибрати усі нові файли\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Пропустити файл\", \"Пропустити {count} файли\", \"Пропустити {count} файлів\", \"Пропустити {count} файлів\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Невідомий розмір\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"Завантаження скасовано\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Завантажити файли\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Поступ завантаження\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Усі конфліктні файли у вибраному каталозі призначення буде перезаписано поверх.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Якщо буде вибрано вхідний каталог, вміст буде записано до наявного каталогу та вирішено конфлікти у відповідних файлах каталогу та підкаталогів.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Які файли залишити?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Для продовження потрібно вибрати принаймні одну версію для кожного файлу.\"] } } } } }, { \"locale\": \"ur_PK\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Urdu (Pakistan) (https://www.transifex.com/nextcloud/teams/64236/ur_PK/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ur_PK\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Urdu (Pakistan) (https://www.transifex.com/nextcloud/teams/64236/ur_PK/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ur_PK\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"uz\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Uzbek (https://www.transifex.com/nextcloud/teams/64236/uz/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"uz\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Uzbek (https://www.transifex.com/nextcloud/teams/64236/uz/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: uz\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"vi\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Tung DangQuang, 2023\", \"Language-Team\": \"Vietnamese (https://app.transifex.com/nextcloud/teams/64236/vi/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"vi\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nTung DangQuang, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Tung DangQuang, 2023\\nLanguage-Team: Vietnamese (https://app.transifex.com/nextcloud/teams/64236/vi/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: vi\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} Tập tin xung đột\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} tập tin lỗi trong {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"Còn {second} giây\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"Còn lại {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"Còn lại một vài giây\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Huỷ tải lên\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Tiếp Tục\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"Thời gian còn lại dự kiến\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Phiên Bản Hiện Tại\"] }, \"If you select both versions, the copied file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the copied file will have a number added to its name.\", \"msgstr\": [\"Nếu bạn chọn cả hai phiên bản, tệp được sao chép sẽ có thêm một số vào tên của nó.\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Ngày sửa dổi lần cuối không xác định\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Tạo Mới\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Phiên Bản Mới\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"đã tạm dừng\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Xem Trước Ảnh\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Chọn tất cả hộp checkbox\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Chọn tất cả các tập tin có sẵn\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Chọn tất cả các tập tin mới\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Bỏ Qua {count} tập tin\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Không rõ dung lượng\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"Dừng Tải Lên\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Tập tin tải lên\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Đang Tải Lên\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Bạn muốn giữ tập tin nào?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Bạn cần chọn ít nhất một phiên bản tập tin mới có thể tiếp tục\"] } } } } }, { \"locale\": \"zh_CN\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Hongbo Chen, 2023\", \"Language-Team\": \"Chinese (China) (https://app.transifex.com/nextcloud/teams/64236/zh_CN/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"zh_CN\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nHongbo Chen, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Hongbo Chen, 2023\\nLanguage-Team: Chinese (China) (https://app.transifex.com/nextcloud/teams/64236/zh_CN/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: zh_CN\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count}文件冲突\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"在{dirname}目录下有{count}个文件冲突\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"剩余 {seconds} 秒\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"剩余 {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"还剩几秒\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"添加\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"取消上传\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"继续\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"估计剩余时间\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"版本已存在\"] }, \"If you select both versions, the copied file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the copied file will have a number added to its name.\", \"msgstr\": [\"如果选择所有的版本,新增版本的文件名为原文件名加数字\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"文件最后修改日期未知\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"新版本\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"已暂停\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"图片预览\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"选择所有的选择框\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"选择所有存在的文件\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"选择所有的新文件\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"跳过{count}个文件\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"文件大小未知\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"取消上传\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"上传文件\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"你要保留哪些文件?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"每个文件至少选择一个版本\"] } } } } }, { \"locale\": \"zh_HK\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Café Tango, 2024\", \"Language-Team\": \"Chinese (Hong Kong) (https://app.transifex.com/nextcloud/teams/64236/zh_HK/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"zh_HK\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nCafé Tango, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Café Tango, 2024\\nLanguage-Team: Chinese (Hong Kong) (https://app.transifex.com/nextcloud/teams/64236/zh_HK/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: zh_HK\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} 個檔案衝突\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{dirname} 中有 {count} 個檔案衝突\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"剩餘 {seconds} 秒\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"剩餘 {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"還剩幾秒\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"取消\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"取消整個操作\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"取消上傳\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"繼續\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"估計剩餘時間\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"既有版本\"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"若您選取兩個版本,傳入檔案的名稱將會新增編號。\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"最後修改日期不詳\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"新增\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"新版本 \"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"已暫停\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"預覽圖片\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"選取所有核取方塊\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"選取所有既有檔案\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"選取所有新檔案\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"略過 {count} 個檔案\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"大小不詳\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"已取消上傳\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"上傳檔案\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"上傳進度\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"選取傳入資料夾後,其中任何的衝突檔案都會被覆寫。\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"選擇傳入資料夾後,內容將寫入現有資料夾並執行遞歸衝突解決。\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"您想保留哪些檔案?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"您必須為每個檔案都至少選取一個版本以繼續。\"] } } } } }, { \"locale\": \"zh_TW\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"黃柏諺 <s8321414@gmail.com>, 2024\", \"Language-Team\": \"Chinese (Taiwan) (https://app.transifex.com/nextcloud/teams/64236/zh_TW/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"zh_TW\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\n黃柏諺 <s8321414@gmail.com>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: 黃柏諺 <s8321414@gmail.com>, 2024\\nLanguage-Team: Chinese (Taiwan) (https://app.transifex.com/nextcloud/teams/64236/zh_TW/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: zh_TW\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} 個檔案衝突\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{dirname} 中有 {count} 個檔案衝突\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"剩餘 {seconds} 秒\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"剩餘 {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"還剩幾秒\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"取消\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"取消整個操作\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"取消上傳\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"繼續\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"估計剩餘時間\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"既有版本\"] }, \"If you select both versions, the copied file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the copied file will have a number added to its name.\", \"msgstr\": [\"若您選取兩個版本,複製的檔案的名稱將會新增編號。\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"最後修改日期未知\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"新增\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"新版本\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"已暫停\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"預覽圖片\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"選取所有核取方塊\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"選取所有既有檔案\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"選取所有新檔案\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"略過 {count} 檔案\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"未知大小\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"已取消上傳\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"上傳檔案\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"上傳進度\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"選取傳入資料夾後,其中任何的衝突檔案都會被覆寫。\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"您想保留哪些檔案?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"您必須為每個檔案都至少選取一個版本以繼續。\"] } } } } }].map((data) => gtBuilder.addTranslation(data.locale, data.json));\nconst gt = gtBuilder.build();\nconst n = gt.ngettext.bind(gt);\nconst t = gt.gettext.bind(gt);\n/**\n * @copyright 2019 Christoph Wurst <christoph@winzerhof-wurst.at>\n *\n * @author Christoph Wurst <christoph@winzerhof-wurst.at>\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 <http://www.gnu.org/licenses/>.\n *\n */\nconst logger = getLoggerBuilder().setApp(\"@nextcloud/upload\").detectUser().build();\nvar Status = /* @__PURE__ */ ((Status2) => {\n  Status2[Status2[\"IDLE\"] = 0] = \"IDLE\";\n  Status2[Status2[\"UPLOADING\"] = 1] = \"UPLOADING\";\n  Status2[Status2[\"PAUSED\"] = 2] = \"PAUSED\";\n  return Status2;\n})(Status || {});\nclass Uploader {\n  // Initialized via setter in the constructor\n  _destinationFolder;\n  _isPublic;\n  // Global upload queue\n  _uploadQueue = [];\n  _jobQueue = new PQueue({ concurrency: 3 });\n  _queueSize = 0;\n  _queueProgress = 0;\n  _queueStatus = 0;\n  _notifiers = [];\n  /**\n   * Initialize uploader\n   *\n   * @param {boolean} isPublic are we in public mode ?\n   * @param {Folder} destinationFolder the context folder to operate, relative to the root folder\n   */\n  constructor(isPublic = false, destinationFolder) {\n    this._isPublic = isPublic;\n    if (!destinationFolder) {\n      const source = join(davRemoteURL, davRootPath);\n      let owner;\n      if (isPublic) {\n        owner = \"anonymous\";\n      } else {\n        const user = getCurrentUser()?.uid;\n        if (!user) {\n          throw new Error(\"User is not logged in\");\n        }\n        owner = user;\n      }\n      destinationFolder = new Folder({\n        id: 0,\n        owner,\n        permissions: Permission.ALL,\n        root: davRootPath,\n        source\n      });\n    }\n    this.destination = destinationFolder;\n    this._jobQueue.addListener(\"idle\", () => this.reset());\n    logger.debug(\"Upload workspace initialized\", {\n      destination: this.destination,\n      root: this.root,\n      isPublic,\n      maxChunksSize: getMaxChunksSize()\n    });\n  }\n  /**\n   * Get the upload destination path relative to the root folder\n   */\n  get destination() {\n    return this._destinationFolder;\n  }\n  /**\n   * Set the upload destination path relative to the root folder\n   */\n  set destination(folder) {\n    if (!folder) {\n      throw new Error(\"Invalid destination folder\");\n    }\n    logger.debug(\"Destination set\", { folder });\n    this._destinationFolder = folder;\n  }\n  /**\n   * Get the root folder\n   */\n  get root() {\n    return this._destinationFolder.source;\n  }\n  /**\n   * Get the upload queue\n   */\n  get queue() {\n    return this._uploadQueue;\n  }\n  reset() {\n    this._uploadQueue.splice(0, this._uploadQueue.length);\n    this._jobQueue.clear();\n    this._queueSize = 0;\n    this._queueProgress = 0;\n    this._queueStatus = 0;\n  }\n  /**\n   * Pause any ongoing upload(s)\n   */\n  pause() {\n    this._jobQueue.pause();\n    this._queueStatus = 2;\n  }\n  /**\n   * Resume any pending upload(s)\n   */\n  start() {\n    this._jobQueue.start();\n    this._queueStatus = 1;\n    this.updateStats();\n  }\n  /**\n   * Get the upload queue stats\n   */\n  get info() {\n    return {\n      size: this._queueSize,\n      progress: this._queueProgress,\n      status: this._queueStatus\n    };\n  }\n  updateStats() {\n    const size = this._uploadQueue.map((upload2) => upload2.size).reduce((partialSum, a) => partialSum + a, 0);\n    const uploaded = this._uploadQueue.map((upload2) => upload2.uploaded).reduce((partialSum, a) => partialSum + a, 0);\n    this._queueSize = size;\n    this._queueProgress = uploaded;\n    if (this._queueStatus === 2) {\n      return;\n    }\n    this._queueStatus = this._jobQueue.size > 0 ? 1 : 0;\n  }\n  addNotifier(notifier) {\n    this._notifiers.push(notifier);\n  }\n  /**\n   * Notify listeners of the upload completion\n   * @param upload The upload that finished\n   */\n  _notifyAll(upload2) {\n    for (const notifier of this._notifiers) {\n      try {\n        notifier(upload2);\n      } catch (error) {\n        logger.warn(\"Error in upload notifier\", { error, source: upload2.source });\n      }\n    }\n  }\n  /**\n   * Uploads multiple files or folders while preserving the relative path (if available)\n   * @param {string} destination The destination path relative to the root folder. e.g. /foo/bar (a file \"a.txt\" will be uploaded then to \"/foo/bar/a.txt\")\n   * @param {Array<File|FileSystemEntry>} files The files and/or folders to upload\n   * @param {Function} callback Callback that receives the nodes in the current folder and the current path to allow resolving conflicts, all nodes that are returned will be uploaded (if a folder does not exist it will be created)\n   * @return Cancelable promise that resolves to an array of uploads\n   *\n   * @example\n   * ```ts\n   * // For example this is from handling the onchange event of an input[type=file]\n   * async handleFiles(files: File[]) {\n   *   this.uploads = await this.uploader.batchUpload('uploads', files, this.handleConflicts)\n   * }\n   *\n   * async handleConflicts(nodes: File[], currentPath: string) {\n   *   const conflicts = getConflicts(nodes, this.fetchContent(currentPath))\n   *   if (conficts.length === 0) {\n   *     // No conflicts so upload all\n   *     return nodes\n   *   } else {\n   *     // Open the conflict picker to resolve conflicts\n   *     try {\n   *       const { selected, renamed } = await openConflictPicker(currentPath, conflicts, this.fetchContent(currentPath), { recursive: true })\n   *       return [...selected, ...renamed]\n   *     } catch (e) {\n   *       return false\n   *     }\n   *   }\n   * }\n   * ```\n   */\n  batchUpload(destination, files, callback) {\n    const rootFolder = new Directory(\"\", files);\n    if (!callback) {\n      callback = async (files2) => files2;\n    }\n    try {\n      this._jobQueue.concurrency += 1;\n      return new PCancelable(async (resolve, reject, onCancel) => {\n        try {\n          const value = await this._jobQueue.add(() => {\n            const promise = this.uploadDirectory(destination, rootFolder, callback, davGetClient(this.root));\n            onCancel(() => promise.cancel());\n            return promise;\n          });\n          if (value) {\n            resolve(value);\n          }\n        } catch (error) {\n          logger.error(\"Error in batch upload\", { error });\n        }\n        reject(t(\"Upload has been cancelled\"));\n      });\n    } finally {\n      this._jobQueue.concurrency -= 1;\n    }\n  }\n  // Helper for uploading directories (recursivly)\n  uploadDirectory(destination, directory, callback, client) {\n    const folderPath = normalize(`${destination}/${directory.name}`).replace(/\\/$/, \"\");\n    const rootPath = `${this.root.replace(/\\/$/, \"\")}/${folderPath.replace(/^\\//, \"\")}`;\n    return new PCancelable(async (resolve, reject, onCancel) => {\n      const abort = new AbortController();\n      onCancel(() => abort.abort());\n      const selectedForUpload = await callback(directory.children, folderPath);\n      if (selectedForUpload === false) {\n        reject(t(\"Upload has been cancelled\"));\n        return;\n      }\n      const directories = [];\n      const uploads = [];\n      const currentUpload = new Upload(rootPath, false, 0, directory);\n      currentUpload.signal.addEventListener(\"abort\", () => reject(t(\"Upload has been cancelled\")));\n      currentUpload.status = Status$1.UPLOADING;\n      try {\n        if (directory.name) {\n          try {\n            await client.createDirectory(folderPath, { signal: abort.signal });\n            uploads.push(new PCancelable((resolve2) => resolve2(currentUpload)));\n            this._uploadQueue.push(currentUpload);\n          } catch (error) {\n            if (error && typeof error === \"object\" && \"status\" in error && error.status === 405) {\n              logger.debug(\"Directory already exists, writing into it\", { directory: directory.name });\n            } else {\n              throw error;\n            }\n          }\n        }\n        for (const node of selectedForUpload) {\n          if (node instanceof Directory) {\n            directories.push(this.uploadDirectory(folderPath, node, callback, client));\n          } else {\n            uploads.push(this.upload(`${folderPath}/${node.name}`, node));\n          }\n        }\n        abort.signal.addEventListener(\"abort\", () => {\n          uploads.forEach((upload2) => upload2.cancel());\n          directories.forEach((upload2) => upload2.cancel());\n        });\n        const resolvedUploads = await Promise.all(uploads);\n        const resolvedDirectoryUploads = await Promise.all(directories);\n        currentUpload.status = Status$1.FINISHED;\n        resolve([resolvedUploads, ...resolvedDirectoryUploads].flat());\n      } catch (e) {\n        abort.abort(e);\n        currentUpload.status = Status$1.FAILED;\n        reject(e);\n      } finally {\n        if (directory.name) {\n          this._notifyAll(currentUpload);\n          this.updateStats();\n        }\n      }\n    });\n  }\n  /**\n   * Upload a file to the given path\n   * @param {string} destination the destination path relative to the root folder. e.g. /foo/bar.txt\n   * @param {File|FileSystemFileEntry} fileHandle the file to upload\n   * @param {string} root the root folder to upload to\n   * @param retries number of retries\n   */\n  upload(destination, fileHandle, root, retries = 5) {\n    root = root || this.root;\n    const destinationPath = `${root.replace(/\\/$/, \"\")}/${destination.replace(/^\\//, \"\")}`;\n    const { origin } = new URL(destinationPath);\n    const encodedDestinationFile = origin + encodePath(destinationPath.slice(origin.length));\n    logger.debug(`Uploading ${fileHandle.name} to ${encodedDestinationFile}`);\n    const promise = new PCancelable(async (resolve, reject, onCancel) => {\n      if (isFileSystemFileEntry(fileHandle)) {\n        fileHandle = await new Promise((resolve2) => fileHandle.file(resolve2, reject));\n      }\n      const file = fileHandle;\n      const maxChunkSize = getMaxChunksSize(\"size\" in file ? file.size : void 0);\n      const disabledChunkUpload = this._isPublic || maxChunkSize === 0 || \"size\" in file && file.size < maxChunkSize;\n      const upload2 = new Upload(destinationPath, !disabledChunkUpload, file.size, file);\n      this._uploadQueue.push(upload2);\n      this.updateStats();\n      onCancel(upload2.cancel);\n      if (!disabledChunkUpload) {\n        logger.debug(\"Initializing chunked upload\", { file, upload: upload2 });\n        const tempUrl = await initChunkWorkspace(encodedDestinationFile, retries);\n        const chunksQueue = [];\n        for (let chunk = 0; chunk < upload2.chunks; chunk++) {\n          const bufferStart = chunk * maxChunkSize;\n          const bufferEnd = Math.min(bufferStart + maxChunkSize, upload2.size);\n          const blob = () => getChunk(file, bufferStart, maxChunkSize);\n          const request = () => {\n            return uploadData(\n              `${tempUrl}/${chunk + 1}`,\n              blob,\n              upload2.signal,\n              () => this.updateStats(),\n              encodedDestinationFile,\n              {\n                \"X-OC-Mtime\": file.lastModified / 1e3,\n                \"OC-Total-Length\": file.size,\n                \"Content-Type\": \"application/octet-stream\"\n              },\n              retries\n            ).then(() => {\n              upload2.uploaded = upload2.uploaded + maxChunkSize;\n            }).catch((error) => {\n              if (error?.response?.status === 507) {\n                logger.error(\"Upload failed, not enough space on the server or quota exceeded. Cancelling the remaining chunks\", { error, upload: upload2 });\n                upload2.cancel();\n                upload2.status = Status$1.FAILED;\n                throw error;\n              }\n              if (!isCancel(error)) {\n                logger.error(`Chunk ${chunk + 1} ${bufferStart} - ${bufferEnd} uploading failed`, { error, upload: upload2 });\n                upload2.cancel();\n                upload2.status = Status$1.FAILED;\n              }\n              throw error;\n            });\n          };\n          chunksQueue.push(this._jobQueue.add(request));\n        }\n        try {\n          await Promise.all(chunksQueue);\n          this.updateStats();\n          upload2.response = await axios.request({\n            method: \"MOVE\",\n            url: `${tempUrl}/.file`,\n            headers: {\n              \"X-OC-Mtime\": file.lastModified / 1e3,\n              \"OC-Total-Length\": file.size,\n              Destination: encodedDestinationFile\n            }\n          });\n          this.updateStats();\n          upload2.status = Status$1.FINISHED;\n          logger.debug(`Successfully uploaded ${file.name}`, { file, upload: upload2 });\n          resolve(upload2);\n        } catch (error) {\n          if (!isCancel(error)) {\n            upload2.status = Status$1.FAILED;\n            reject(\"Failed assembling the chunks together\");\n          } else {\n            upload2.status = Status$1.FAILED;\n            reject(t(\"Upload has been cancelled\"));\n          }\n          axios.request({\n            method: \"DELETE\",\n            url: `${tempUrl}`\n          });\n        }\n        this._notifyAll(upload2);\n      } else {\n        logger.debug(\"Initializing regular upload\", { file, upload: upload2 });\n        const blob = await getChunk(file, 0, upload2.size);\n        const request = async () => {\n          try {\n            upload2.response = await uploadData(\n              encodedDestinationFile,\n              blob,\n              upload2.signal,\n              (event) => {\n                upload2.uploaded = upload2.uploaded + event.bytes;\n                this.updateStats();\n              },\n              void 0,\n              {\n                \"X-OC-Mtime\": file.lastModified / 1e3,\n                \"Content-Type\": file.type\n              }\n            );\n            upload2.uploaded = upload2.size;\n            this.updateStats();\n            logger.debug(`Successfully uploaded ${file.name}`, { file, upload: upload2 });\n            resolve(upload2);\n          } catch (error) {\n            if (isCancel(error)) {\n              upload2.status = Status$1.FAILED;\n              reject(t(\"Upload has been cancelled\"));\n              return;\n            }\n            if (error?.response) {\n              upload2.response = error.response;\n            }\n            upload2.status = Status$1.FAILED;\n            logger.error(`Failed uploading ${file.name}`, { error, file, upload: upload2 });\n            reject(\"Failed uploading the file\");\n          }\n          this._notifyAll(upload2);\n        };\n        this._jobQueue.add(request);\n        this.updateStats();\n      }\n      return upload2;\n    });\n    return promise;\n  }\n}\nfunction normalizeComponent(scriptExports, render6, staticRenderFns, functionalTemplate, injectStyles, scopeId, moduleIdentifier, shadowMode) {\n  var options = typeof scriptExports === \"function\" ? scriptExports.options : scriptExports;\n  if (render6) {\n    options.render = render6;\n    options.staticRenderFns = staticRenderFns;\n    options._compiled = true;\n  }\n  if (functionalTemplate) {\n    options.functional = true;\n  }\n  if (scopeId) {\n    options._scopeId = \"data-v-\" + scopeId;\n  }\n  var hook;\n  if (moduleIdentifier) {\n    hook = function(context) {\n      context = context || // cached call\n      this.$vnode && this.$vnode.ssrContext || // stateful\n      this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext;\n      if (!context && typeof __VUE_SSR_CONTEXT__ !== \"undefined\") {\n        context = __VUE_SSR_CONTEXT__;\n      }\n      if (injectStyles) {\n        injectStyles.call(this, context);\n      }\n      if (context && context._registeredComponents) {\n        context._registeredComponents.add(moduleIdentifier);\n      }\n    };\n    options._ssrRegister = hook;\n  } else if (injectStyles) {\n    hook = shadowMode ? function() {\n      injectStyles.call(\n        this,\n        (options.functional ? this.parent : this).$root.$options.shadowRoot\n      );\n    } : injectStyles;\n  }\n  if (hook) {\n    if (options.functional) {\n      options._injectStyles = hook;\n      var originalRender = options.render;\n      options.render = function renderWithStyleInjection(h, context) {\n        hook.call(context);\n        return originalRender(h, context);\n      };\n    } else {\n      var existing = options.beforeCreate;\n      options.beforeCreate = existing ? [].concat(existing, hook) : [hook];\n    }\n  }\n  return {\n    exports: scriptExports,\n    options\n  };\n}\nconst _sfc_main$4 = {\n  name: \"CancelIcon\",\n  emits: [\"click\"],\n  props: {\n    title: {\n      type: String\n    },\n    fillColor: {\n      type: String,\n      default: \"currentColor\"\n    },\n    size: {\n      type: Number,\n      default: 24\n    }\n  }\n};\nvar _sfc_render$4 = function render() {\n  var _vm = this, _c = _vm._self._c;\n  return _c(\"span\", _vm._b({ staticClass: \"material-design-icon cancel-icon\", attrs: { \"aria-hidden\": _vm.title ? null : true, \"aria-label\": _vm.title, \"role\": \"img\" }, on: { \"click\": function($event) {\n    return _vm.$emit(\"click\", $event);\n  } } }, \"span\", _vm.$attrs, false), [_c(\"svg\", { staticClass: \"material-design-icon__svg\", attrs: { \"fill\": _vm.fillColor, \"width\": _vm.size, \"height\": _vm.size, \"viewBox\": \"0 0 24 24\" } }, [_c(\"path\", { attrs: { \"d\": \"M12 2C17.5 2 22 6.5 22 12S17.5 22 12 22 2 17.5 2 12 6.5 2 12 2M12 4C10.1 4 8.4 4.6 7.1 5.7L18.3 16.9C19.3 15.5 20 13.8 20 12C20 7.6 16.4 4 12 4M16.9 18.3L5.7 7.1C4.6 8.4 4 10.1 4 12C4 16.4 7.6 20 12 20C13.9 20 15.6 19.4 16.9 18.3Z\" } }, [_vm.title ? _c(\"title\", [_vm._v(_vm._s(_vm.title))]) : _vm._e()])])]);\n};\nvar _sfc_staticRenderFns$4 = [];\nvar __component__$4 = /* @__PURE__ */ normalizeComponent(\n  _sfc_main$4,\n  _sfc_render$4,\n  _sfc_staticRenderFns$4,\n  false,\n  null,\n  null,\n  null,\n  null\n);\nconst IconCancel = __component__$4.exports;\nconst _sfc_main$3 = {\n  name: \"FolderUploadIcon\",\n  emits: [\"click\"],\n  props: {\n    title: {\n      type: String\n    },\n    fillColor: {\n      type: String,\n      default: \"currentColor\"\n    },\n    size: {\n      type: Number,\n      default: 24\n    }\n  }\n};\nvar _sfc_render$3 = function render2() {\n  var _vm = this, _c = _vm._self._c;\n  return _c(\"span\", _vm._b({ staticClass: \"material-design-icon folder-upload-icon\", attrs: { \"aria-hidden\": _vm.title ? null : true, \"aria-label\": _vm.title, \"role\": \"img\" }, on: { \"click\": function($event) {\n    return _vm.$emit(\"click\", $event);\n  } } }, \"span\", _vm.$attrs, false), [_c(\"svg\", { staticClass: \"material-design-icon__svg\", attrs: { \"fill\": _vm.fillColor, \"width\": _vm.size, \"height\": _vm.size, \"viewBox\": \"0 0 24 24\" } }, [_c(\"path\", { attrs: { \"d\": \"M20,6A2,2 0 0,1 22,8V18A2,2 0 0,1 20,20H4A2,2 0 0,1 2,18V6A2,2 0 0,1 4,4H10L12,6H20M10.75,13H14V17H16V13H19.25L15,8.75\" } }, [_vm.title ? _c(\"title\", [_vm._v(_vm._s(_vm.title))]) : _vm._e()])])]);\n};\nvar _sfc_staticRenderFns$3 = [];\nvar __component__$3 = /* @__PURE__ */ normalizeComponent(\n  _sfc_main$3,\n  _sfc_render$3,\n  _sfc_staticRenderFns$3,\n  false,\n  null,\n  null,\n  null,\n  null\n);\nconst IconFolderUpload = __component__$3.exports;\nconst _sfc_main$2 = {\n  name: \"PlusIcon\",\n  emits: [\"click\"],\n  props: {\n    title: {\n      type: String\n    },\n    fillColor: {\n      type: String,\n      default: \"currentColor\"\n    },\n    size: {\n      type: Number,\n      default: 24\n    }\n  }\n};\nvar _sfc_render$2 = function render3() {\n  var _vm = this, _c = _vm._self._c;\n  return _c(\"span\", _vm._b({ staticClass: \"material-design-icon plus-icon\", attrs: { \"aria-hidden\": _vm.title ? null : true, \"aria-label\": _vm.title, \"role\": \"img\" }, on: { \"click\": function($event) {\n    return _vm.$emit(\"click\", $event);\n  } } }, \"span\", _vm.$attrs, false), [_c(\"svg\", { staticClass: \"material-design-icon__svg\", attrs: { \"fill\": _vm.fillColor, \"width\": _vm.size, \"height\": _vm.size, \"viewBox\": \"0 0 24 24\" } }, [_c(\"path\", { attrs: { \"d\": \"M19,13H13V19H11V13H5V11H11V5H13V11H19V13Z\" } }, [_vm.title ? _c(\"title\", [_vm._v(_vm._s(_vm.title))]) : _vm._e()])])]);\n};\nvar _sfc_staticRenderFns$2 = [];\nvar __component__$2 = /* @__PURE__ */ normalizeComponent(\n  _sfc_main$2,\n  _sfc_render$2,\n  _sfc_staticRenderFns$2,\n  false,\n  null,\n  null,\n  null,\n  null\n);\nconst IconPlus = __component__$2.exports;\nconst _sfc_main$1 = {\n  name: \"UploadIcon\",\n  emits: [\"click\"],\n  props: {\n    title: {\n      type: String\n    },\n    fillColor: {\n      type: String,\n      default: \"currentColor\"\n    },\n    size: {\n      type: Number,\n      default: 24\n    }\n  }\n};\nvar _sfc_render$1 = function render4() {\n  var _vm = this, _c = _vm._self._c;\n  return _c(\"span\", _vm._b({ staticClass: \"material-design-icon upload-icon\", attrs: { \"aria-hidden\": _vm.title ? null : true, \"aria-label\": _vm.title, \"role\": \"img\" }, on: { \"click\": function($event) {\n    return _vm.$emit(\"click\", $event);\n  } } }, \"span\", _vm.$attrs, false), [_c(\"svg\", { staticClass: \"material-design-icon__svg\", attrs: { \"fill\": _vm.fillColor, \"width\": _vm.size, \"height\": _vm.size, \"viewBox\": \"0 0 24 24\" } }, [_c(\"path\", { attrs: { \"d\": \"M9,16V10H5L12,3L19,10H15V16H9M5,20V18H19V20H5Z\" } }, [_vm.title ? _c(\"title\", [_vm._v(_vm._s(_vm.title))]) : _vm._e()])])]);\n};\nvar _sfc_staticRenderFns$1 = [];\nvar __component__$1 = /* @__PURE__ */ normalizeComponent(\n  _sfc_main$1,\n  _sfc_render$1,\n  _sfc_staticRenderFns$1,\n  false,\n  null,\n  null,\n  null,\n  null\n);\nconst IconUpload = __component__$1.exports;\nconst _sfc_main = Vue.extend({\n  name: \"UploadPicker\",\n  components: {\n    IconCancel,\n    IconFolderUpload,\n    IconPlus,\n    IconUpload,\n    NcActionButton,\n    NcActionCaption,\n    NcActionSeparator,\n    NcActions,\n    NcButton,\n    NcIconSvgWrapper,\n    NcProgressBar\n  },\n  props: {\n    accept: {\n      type: Array,\n      default: null\n    },\n    disabled: {\n      type: Boolean,\n      default: false\n    },\n    multiple: {\n      type: Boolean,\n      default: false\n    },\n    destination: {\n      type: Folder,\n      default: void 0\n    },\n    allowFolders: {\n      type: Boolean,\n      default: false\n    },\n    /**\n     * List of file present in the destination folder\n     * It is also possible to provide a function that takes a relative path to the current directory and returns the content of it\n     * Note: If a function is passed it should return the current base directory when no path or an empty is passed\n     */\n    content: {\n      type: [Array, Function],\n      default: () => []\n    },\n    forbiddenCharacters: {\n      type: Array,\n      default: () => []\n    }\n  },\n  setup() {\n    return {\n      t,\n      // non reactive data / properties\n      progressTimeId: `nc-uploader-progress-${Math.random().toString(36).slice(7)}`\n    };\n  },\n  data() {\n    return {\n      eta: null,\n      timeLeft: \"\",\n      currentContent: [],\n      newFileMenuEntries: [],\n      uploadManager: getUploader()\n    };\n  },\n  computed: {\n    menuEntriesUpload() {\n      return this.newFileMenuEntries.filter((entry) => entry.category === NewMenuEntryCategory.UploadFromDevice);\n    },\n    menuEntriesNew() {\n      return this.newFileMenuEntries.filter((entry) => entry.category === NewMenuEntryCategory.CreateNew);\n    },\n    menuEntriesOther() {\n      return this.newFileMenuEntries.filter((entry) => entry.category === NewMenuEntryCategory.Other);\n    },\n    /**\n     * Check whether the current browser supports uploading directories\n     * Hint: This does not check if the current connection supports this, as some browsers require a secure context!\n     */\n    canUploadFolders() {\n      return this.allowFolders && \"webkitdirectory\" in document.createElement(\"input\");\n    },\n    totalQueueSize() {\n      return this.uploadManager.info?.size || 0;\n    },\n    uploadedQueueSize() {\n      return this.uploadManager.info?.progress || 0;\n    },\n    progress() {\n      return Math.round(this.uploadedQueueSize / this.totalQueueSize * 100) || 0;\n    },\n    queue() {\n      return this.uploadManager.queue;\n    },\n    hasFailure() {\n      return this.queue?.filter((upload2) => upload2.status === Status$1.FAILED).length !== 0;\n    },\n    isUploading() {\n      return this.queue?.length > 0;\n    },\n    isAssembling() {\n      return this.queue?.filter((upload2) => upload2.status === Status$1.ASSEMBLING).length !== 0;\n    },\n    isPaused() {\n      return this.uploadManager.info?.status === Status.PAUSED;\n    },\n    // Hide the button text if we're uploading\n    buttonName() {\n      if (this.isUploading) {\n        return void 0;\n      }\n      return t(\"New\");\n    }\n  },\n  watch: {\n    allowFolders: {\n      immediate: true,\n      handler() {\n        if (typeof this.content !== \"function\" && this.allowFolders) {\n          logger.error(\"[UploadPicker] Setting `allowFolders` is only allowed if `content` is a function\");\n        }\n      }\n    },\n    content: {\n      immediate: true,\n      async handler() {\n        this.currentContent = await this.getContent();\n      }\n    },\n    destination(destination) {\n      this.setDestination(destination);\n    },\n    totalQueueSize(size) {\n      this.eta = makeEta({ min: 0, max: size });\n      this.updateStatus();\n    },\n    uploadedQueueSize(size) {\n      this.eta?.report?.(size);\n      this.updateStatus();\n    },\n    isPaused(isPaused) {\n      if (isPaused) {\n        this.$emit(\"paused\", this.queue);\n      } else {\n        this.$emit(\"resumed\", this.queue);\n      }\n    }\n  },\n  beforeMount() {\n    if (this.destination) {\n      this.setDestination(this.destination);\n    }\n    this.uploadManager.addNotifier(this.onUploadCompletion);\n    logger.debug(\"UploadPicker initialised\");\n  },\n  methods: {\n    /**\n     * Trigger file picker\n     * @param uploadFolders Upload folders\n     */\n    onTriggerPick(uploadFolders = false) {\n      const input = this.$refs.input;\n      if (this.canUploadFolders) {\n        input.webkitdirectory = uploadFolders;\n      }\n      this.$nextTick(() => input.click());\n    },\n    /**\n     * Helper for backwards compatibility that queries the content of the current directory\n     * @param path The current path\n     */\n    async getContent(path) {\n      return Array.isArray(this.content) ? this.content : await this.content(path);\n    },\n    /**\n     * Show a dialog to let the user decide how to proceed with invalid filenames.\n     * The returned promise resolves to true if the file should be renamed and resolves to false to skip it the file.\n     * The promise rejects when the user want to abort the operation.\n     *\n     * @param filename The invalid file name\n     */\n    async showInvalidFileNameDialog(filename) {\n      return new PCancelable(async (resolve, reject) => {\n        await new DialogBuilder().setName(t(\"Invalid file name\")).setSeverity(\"error\").setText(t('\"{filename}\" contains invalid characters, how do you want to continue?', { filename })).setButtons([\n          {\n            label: t(\"Cancel\"),\n            type: \"error\",\n            callback: reject\n          },\n          {\n            label: t(\"Skip\"),\n            callback: () => resolve(false)\n          },\n          {\n            label: t(\"Rename\"),\n            type: \"primary\",\n            callback: () => resolve(true)\n          }\n        ]).build().show();\n      });\n    },\n    async handleConflicts(nodes, path) {\n      try {\n        const content = path === \"\" ? this.currentContent : await this.getContent(path).catch(() => []);\n        const conflicts = getConflicts(nodes, content);\n        if (conflicts.length > 0) {\n          const { selected, renamed } = await openConflictPicker(path, conflicts, content, { recursive: true });\n          nodes = [...selected, ...renamed];\n        }\n        const filesToUpload = [];\n        for (const file of nodes) {\n          const invalid = this.forbiddenCharacters.some((c) => file.name.includes(c));\n          if (!invalid) {\n            filesToUpload.push(file);\n            continue;\n          }\n          if (await this.showInvalidFileNameDialog(file.name)) {\n            let newName = this.replaceInvalidCharacters(file.name);\n            newName = getUniqueName(newName, nodes.map((node) => node.name));\n            Object.defineProperty(file, \"name\", { value: newName });\n            filesToUpload.push(file);\n          }\n        }\n        return filesToUpload;\n      } catch (error) {\n        logger.debug(\"Upload has been cancelled\", { error });\n        showWarning(t(\"Upload has been cancelled\"));\n        return false;\n      }\n    },\n    /**\n     * Helper function to replace invalid characters in text\n     * @param text Text to replace invalid character\n     */\n    replaceInvalidCharacters(text) {\n      const invalidReplacement = [\"-\", \"_\", \" \"].filter((c) => !this.forbiddenCharacters.includes(c))[0] ?? \"x\";\n      this.forbiddenCharacters.forEach((c) => {\n        text = text.replaceAll(c, invalidReplacement);\n      });\n      return text;\n    },\n    /**\n     * Start uploading\n     */\n    onPick() {\n      const input = this.$refs.input;\n      const files = input.files ? Array.from(input.files) : [];\n      this.uploadManager.batchUpload(\"\", files, this.handleConflicts).catch((error) => logger.debug(\"Error while uploading\", { error })).finally(() => this.resetForm());\n    },\n    resetForm() {\n      const form = this.$refs.form;\n      form?.reset();\n    },\n    /**\n     * Cancel ongoing queue\n     */\n    onCancel() {\n      this.uploadManager.queue.forEach((upload2) => {\n        upload2.cancel();\n      });\n      this.resetForm();\n    },\n    updateStatus() {\n      if (this.isPaused) {\n        this.timeLeft = t(\"paused\");\n        return;\n      }\n      const estimate = Math.round(this.eta.estimate());\n      if (estimate === Infinity) {\n        this.timeLeft = t(\"estimating time left\");\n        return;\n      }\n      if (estimate < 10) {\n        this.timeLeft = t(\"a few seconds left\");\n        return;\n      }\n      if (estimate > 60) {\n        const date = /* @__PURE__ */ new Date(0);\n        date.setSeconds(estimate);\n        const time = date.toISOString().slice(11, 11 + 8);\n        this.timeLeft = t(\"{time} left\", { time });\n        return;\n      }\n      this.timeLeft = t(\"{seconds} seconds left\", { seconds: estimate });\n    },\n    setDestination(destination) {\n      if (!this.destination) {\n        logger.debug(\"Invalid destination\");\n        return;\n      }\n      this.uploadManager.destination = destination;\n      this.newFileMenuEntries = getNewFileMenuEntries(destination);\n    },\n    onUploadCompletion(upload2) {\n      if (upload2.status === Status$1.FAILED) {\n        this.$emit(\"failed\", upload2);\n      } else {\n        this.$emit(\"uploaded\", upload2);\n      }\n    }\n  }\n});\nvar _sfc_render = function render5() {\n  var _vm = this, _c = _vm._self._c;\n  _vm._self._setupProxy;\n  return _vm.destination ? _c(\"form\", { ref: \"form\", staticClass: \"upload-picker\", class: { \"upload-picker--uploading\": _vm.isUploading, \"upload-picker--paused\": _vm.isPaused }, attrs: { \"data-cy-upload-picker\": \"\" } }, [_vm.newFileMenuEntries && _vm.newFileMenuEntries.length === 0 ? _c(\"NcButton\", { attrs: { \"disabled\": _vm.disabled, \"data-cy-upload-picker-add\": \"\", \"type\": \"secondary\" }, on: { \"click\": function($event) {\n    return _vm.onTriggerPick();\n  } }, scopedSlots: _vm._u([{ key: \"icon\", fn: function() {\n    return [_c(\"IconPlus\", { attrs: { \"size\": 20 } })];\n  }, proxy: true }], null, false, 1991456921) }, [_vm._v(\" \" + _vm._s(_vm.buttonName) + \" \")]) : _c(\"NcActions\", { attrs: { \"menu-name\": _vm.buttonName, \"menu-title\": _vm.t(\"New\"), \"type\": \"secondary\" }, scopedSlots: _vm._u([{ key: \"icon\", fn: function() {\n    return [_c(\"IconPlus\", { attrs: { \"size\": 20 } })];\n  }, proxy: true }], null, false, 1991456921) }, [_c(\"NcActionCaption\", { attrs: { \"name\": _vm.t(\"Upload from device\") } }), _c(\"NcActionButton\", { attrs: { \"data-cy-upload-picker-add\": \"\", \"close-after-click\": true }, on: { \"click\": function($event) {\n    return _vm.onTriggerPick();\n  } }, scopedSlots: _vm._u([{ key: \"icon\", fn: function() {\n    return [_c(\"IconUpload\", { attrs: { \"size\": 20 } })];\n  }, proxy: true }], null, false, 337456192) }, [_vm._v(\" \" + _vm._s(_vm.t(\"Upload files\")) + \" \")]), _vm.canUploadFolders ? _c(\"NcActionButton\", { attrs: { \"close-after-click\": \"\", \"data-cy-upload-picker-add-folders\": \"\" }, on: { \"click\": function($event) {\n    return _vm.onTriggerPick(true);\n  } }, scopedSlots: _vm._u([{ key: \"icon\", fn: function() {\n    return [_c(\"IconFolderUpload\", { staticStyle: { \"color\": \"var(--color-primary-element)\" }, attrs: { \"size\": 20 } })];\n  }, proxy: true }], null, false, 1037549157) }, [_vm._v(\" \" + _vm._s(_vm.t(\"Upload folders\")) + \" \")]) : _vm._e(), _vm._l(_vm.menuEntriesUpload, function(entry) {\n    return _c(\"NcActionButton\", { key: entry.id, staticClass: \"upload-picker__menu-entry\", attrs: { \"icon\": entry.iconClass, \"close-after-click\": true }, on: { \"click\": function($event) {\n      return entry.handler(_vm.destination, _vm.currentContent);\n    } }, scopedSlots: _vm._u([entry.iconSvgInline ? { key: \"icon\", fn: function() {\n      return [_c(\"NcIconSvgWrapper\", { attrs: { \"svg\": entry.iconSvgInline } })];\n    }, proxy: true } : null], null, true) }, [_vm._v(\" \" + _vm._s(entry.displayName) + \" \")]);\n  }), _vm.menuEntriesNew.length > 0 ? [_c(\"NcActionSeparator\"), _c(\"NcActionCaption\", { attrs: { \"name\": _vm.t(\"Create new\") } }), _vm._l(_vm.menuEntriesNew, function(entry) {\n    return _c(\"NcActionButton\", { key: entry.id, staticClass: \"upload-picker__menu-entry\", attrs: { \"icon\": entry.iconClass, \"close-after-click\": true }, on: { \"click\": function($event) {\n      return entry.handler(_vm.destination, _vm.currentContent);\n    } }, scopedSlots: _vm._u([entry.iconSvgInline ? { key: \"icon\", fn: function() {\n      return [_c(\"NcIconSvgWrapper\", { attrs: { \"svg\": entry.iconSvgInline } })];\n    }, proxy: true } : null], null, true) }, [_vm._v(\" \" + _vm._s(entry.displayName) + \" \")]);\n  })] : _vm._e(), _vm.menuEntriesOther.length > 0 ? [_c(\"NcActionSeparator\"), _vm._l(_vm.menuEntriesNew, function(entry) {\n    return _c(\"NcActionButton\", { key: entry.id, staticClass: \"upload-picker__menu-entry\", attrs: { \"icon\": entry.iconClass, \"close-after-click\": true }, on: { \"click\": function($event) {\n      return entry.handler(_vm.destination, _vm.currentContent);\n    } }, scopedSlots: _vm._u([entry.iconSvgInline ? { key: \"icon\", fn: function() {\n      return [_c(\"NcIconSvgWrapper\", { attrs: { \"svg\": entry.iconSvgInline } })];\n    }, proxy: true } : null], null, true) }, [_vm._v(\" \" + _vm._s(entry.displayName) + \" \")]);\n  })] : _vm._e()], 2), _c(\"div\", { directives: [{ name: \"show\", rawName: \"v-show\", value: _vm.isUploading, expression: \"isUploading\" }], staticClass: \"upload-picker__progress\" }, [_c(\"NcProgressBar\", { attrs: { \"aria-label\": _vm.t(\"Upload progress\"), \"aria-describedby\": _vm.progressTimeId, \"error\": _vm.hasFailure, \"value\": _vm.progress, \"size\": \"medium\" } }), _c(\"p\", { attrs: { \"id\": _vm.progressTimeId } }, [_vm._v(\" \" + _vm._s(_vm.timeLeft) + \" \")])], 1), _vm.isUploading ? _c(\"NcButton\", { staticClass: \"upload-picker__cancel\", attrs: { \"type\": \"tertiary\", \"aria-label\": _vm.t(\"Cancel uploads\"), \"data-cy-upload-picker-cancel\": \"\" }, on: { \"click\": _vm.onCancel }, scopedSlots: _vm._u([{ key: \"icon\", fn: function() {\n    return [_c(\"IconCancel\", { attrs: { \"size\": 20 } })];\n  }, proxy: true }], null, false, 3076329829) }) : _vm._e(), _c(\"input\", { ref: \"input\", staticClass: \"hidden-visually\", attrs: { \"accept\": _vm.accept?.join?.(\", \"), \"multiple\": _vm.multiple, \"data-cy-upload-picker-input\": \"\", \"type\": \"file\" }, on: { \"change\": _vm.onPick } })], 1) : _vm._e();\n};\nvar _sfc_staticRenderFns = [];\nvar __component__ = /* @__PURE__ */ normalizeComponent(\n  _sfc_main,\n  _sfc_render,\n  _sfc_staticRenderFns,\n  false,\n  null,\n  \"1f097873\",\n  null,\n  null\n);\nconst UploadPicker = __component__.exports;\nlet _uploader = null;\nfunction getUploader(isPublic = isPublicShare(), forceRecreate = false) {\n  if (_uploader instanceof Uploader && !forceRecreate) {\n    return _uploader;\n  }\n  _uploader = new Uploader(isPublic);\n  return _uploader;\n}\nfunction upload(destinationPath, file) {\n  const uploader = getUploader();\n  uploader.upload(destinationPath, file);\n  return uploader;\n}\nasync function openConflictPicker(dirname, conflicts, content, options) {\n  const ConflictPicker = defineAsyncComponent(() => import(\"./ConflictPicker-CLXOphvC.mjs\"));\n  return new Promise((resolve, reject) => {\n    const picker = new Vue({\n      name: \"ConflictPickerRoot\",\n      render: (h) => h(ConflictPicker, {\n        props: {\n          dirname,\n          conflicts,\n          content,\n          recursiveUpload: options?.recursive === true\n        },\n        on: {\n          submit(results) {\n            resolve(results);\n            picker.$destroy();\n            picker.$el?.parentNode?.removeChild(picker.$el);\n          },\n          cancel(error) {\n            reject(error ?? new Error(\"Canceled\"));\n            picker.$destroy();\n            picker.$el?.parentNode?.removeChild(picker.$el);\n          }\n        }\n      })\n    });\n    picker.$mount();\n    document.body.appendChild(picker.$el);\n  });\n}\nfunction hasConflict(files, content) {\n  return getConflicts(files, content).length > 0;\n}\nfunction getConflicts(files, content) {\n  const contentNames = content.map((node) => node.basename);\n  const conflicts = files.filter((node) => {\n    const name = \"basename\" in node ? node.basename : node.name;\n    return contentNames.indexOf(name) !== -1;\n  });\n  return conflicts;\n}\nexport {\n  Status as S,\n  UploadPicker as U,\n  n as a,\n  getConflicts as b,\n  Upload as c,\n  Status$1 as d,\n  getUploader as g,\n  hasConflict as h,\n  isFileSystemEntry as i,\n  logger as l,\n  normalizeComponent as n,\n  openConflictPicker as o,\n  t,\n  upload as u\n};\n","// 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=\" + {\"4254\":\"5c2324570f66dff0c8a1\",\"6778\":\"e46e9338863dda041028\",\"9480\":\"b0012270c3997bb4738b\"}[chunkId] + \"\";\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.nmd = (module) => {\n\tmodule.paths = [];\n\tif (!module.children) module.children = [];\n\treturn module;\n};","__webpack_require__.j = 2882;","var scriptUrl;\nif (__webpack_require__.g.importScripts) scriptUrl = __webpack_require__.g.location + \"\";\nvar document = __webpack_require__.g.document;\nif (!scriptUrl && document) {\n\tif (document.currentScript)\n\t\tscriptUrl = document.currentScript.src;\n\tif (!scriptUrl) {\n\t\tvar scripts = document.getElementsByTagName(\"script\");\n\t\tif(scripts.length) {\n\t\t\tvar i = scripts.length - 1;\n\t\t\twhile (i > -1 && (!scriptUrl || !/^http(s?):/.test(scriptUrl))) scriptUrl = scripts[i--].src;\n\t\t}\n\t}\n}\n// When supporting browsers where an automatic publicPath is not supported you must specify an output.publicPath manually via configuration\n// or pass an empty string (\"\") and set the __webpack_public_path__ variable from your code to use your own logic.\nif (!scriptUrl) throw new Error(\"Automatic publicPath is not supported in this browser\");\nscriptUrl = scriptUrl.replace(/#.*$/, \"\").replace(/\\?.*$/, \"\").replace(/\\/[^\\/]+$/, \"/\");\n__webpack_require__.p = scriptUrl;","__webpack_require__.b = document.baseURI || self.location.href;\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t2882: 0\n};\n\n__webpack_require__.f.j = (chunkId, promises) => {\n\t\t// JSONP chunk loading for javascript\n\t\tvar installedChunkData = __webpack_require__.o(installedChunks, chunkId) ? installedChunks[chunkId] : undefined;\n\t\tif(installedChunkData !== 0) { // 0 means \"already installed\".\n\n\t\t\t// a Promise means \"currently loading\".\n\t\t\tif(installedChunkData) {\n\t\t\t\tpromises.push(installedChunkData[2]);\n\t\t\t} else {\n\t\t\t\tif(true) { // all chunks have JS\n\t\t\t\t\t// setup Promise in chunk cache\n\t\t\t\t\tvar promise = new Promise((resolve, reject) => (installedChunkData = installedChunks[chunkId] = [resolve, reject]));\n\t\t\t\t\tpromises.push(installedChunkData[2] = promise);\n\n\t\t\t\t\t// start chunk loading\n\t\t\t\t\tvar url = __webpack_require__.p + __webpack_require__.u(chunkId);\n\t\t\t\t\t// create error before stack unwound to get useful stacktrace later\n\t\t\t\t\tvar error = new Error();\n\t\t\t\t\tvar loadingEnded = (event) => {\n\t\t\t\t\t\tif(__webpack_require__.o(installedChunks, chunkId)) {\n\t\t\t\t\t\t\tinstalledChunkData = installedChunks[chunkId];\n\t\t\t\t\t\t\tif(installedChunkData !== 0) installedChunks[chunkId] = undefined;\n\t\t\t\t\t\t\tif(installedChunkData) {\n\t\t\t\t\t\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n\t\t\t\t\t\t\t\tvar realSrc = event && event.target && event.target.src;\n\t\t\t\t\t\t\t\terror.message = 'Loading chunk ' + chunkId + ' failed.\\n(' + errorType + ': ' + realSrc + ')';\n\t\t\t\t\t\t\t\terror.name = 'ChunkLoadError';\n\t\t\t\t\t\t\t\terror.type = errorType;\n\t\t\t\t\t\t\t\terror.request = realSrc;\n\t\t\t\t\t\t\t\tinstalledChunkData[1](error);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t};\n\t\t\t\t\t__webpack_require__.l(url, loadingEnded, \"chunk-\" + chunkId, chunkId);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n};\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n__webpack_require__.O.j = (chunkId) => (installedChunks[chunkId] === 0);\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = (parentChunkLoadingFunction, data) => {\n\tvar chunkIds = data[0];\n\tvar moreModules = data[1];\n\tvar runtime = data[2];\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some((id) => (installedChunks[id] !== 0))) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\treturn __webpack_require__.O(result);\n}\n\nvar chunkLoadingGlobal = self[\"webpackChunknextcloud\"] = self[\"webpackChunknextcloud\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","__webpack_require__.nc = undefined;","// startup\n// Load entry module and return exports\n// This entry module depends on other loaded chunks and execution need to be delayed\nvar __webpack_exports__ = __webpack_require__.O(undefined, [4208], () => (__webpack_require__(80195)))\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["deferred","inProgress","dataWebpackPrefix","has","Object","prototype","hasOwnProperty","prefix","Events","EE","fn","context","once","this","addListener","emitter","event","TypeError","listener","evt","_events","push","_eventsCount","clearEvent","EventEmitter","create","__proto__","eventNames","events","name","names","call","slice","getOwnPropertySymbols","concat","listeners","handlers","i","l","length","ee","Array","listenerCount","emit","a1","a2","a3","a4","a5","args","len","arguments","removeListener","undefined","apply","j","on","removeAllListeners","off","prefixed","module","exports","pinia","createPinia","token","singleMatcher","RegExp","multiMatcher","decodeComponents","components","split","decodeURIComponent","join","left","right","decode","input","tokens","match","splitOnFirst","string","separator","separatorIndex","indexOf","includeKeys","object","predicate","result","isArray","key","descriptor","getOwnPropertyDescriptor","enumerable","defineProperty","Reflect","ownKeys","isNullOrUndefined","value","strictUriEncode","encodeURIComponent","replaceAll","x","charCodeAt","toString","toUpperCase","encodeFragmentIdentifier","Symbol","validateArrayFormatSeparator","encode","options","strict","encodedURI","replaceMap","exec","entries","keys","replace","customDecodeURIComponent","keysSorter","sort","a","b","Number","map","removeHash","hashStart","parseValue","parseNumbers","isNaN","trim","parseBooleans","toLowerCase","extract","queryStart","parse","query","arrayFormat","arrayFormatSeparator","formatter","accumulator","includes","isEncodedArray","newValue","item","test","arrayValue","flat","parserForArrayFormat","returnValue","parameter","parameter_","key2","value2","reduce","Boolean","stringify","shouldFilter","skipNull","skipEmptyString","index","keyValueSeparator","encoderForArrayFormat","objectCopy","filter","parseUrl","url","url_","hash","parseFragmentIdentifier","fragmentIdentifier","stringifyUrl","queryString","getHash","urlObjectForFragmentEncode","URL","pick","exclude","Vue","use","Router","originalPush","to","onComplete","onAbort","catch","err","mode","base","generateUrl","linkActiveClass","routes","path","redirect","params","view","props","stringifyQuery","emits","title","type","String","fillColor","default","size","_vm","_c","_self","_b","staticClass","attrs","$event","$emit","$attrs","_v","_s","_e","throttle","delay","callback","timeoutID","_ref","_ref$noTrailing","noTrailing","_ref$noLeading","noLeading","_ref$debounceMode","debounceMode","cancelled","lastExec","clearExistingTimeout","clearTimeout","wrapper","_len","arguments_","_key","self","elapsed","Date","now","clear","setTimeout","cancel","_ref2$upcomingOnly","upcomingOnly","getLoggerBuilder","setApp","detectUser","build","ChartPie","NcAppNavigationItem","NcProgressBar","data","loadingStorageStats","storageStats","loadState","computed","storageStatsTitle","_this$storageStats","_this$storageStats2","_this$storageStats3","usedQuotaByte","formatFileSize","used","quotaByte","quota","t","storageStatsTooltip","relative","beforeMount","setInterval","throttleUpdateStorageStats","subscribe","mounted","_this$storageStats4","_this$storageStats5","free","showStorageFullWarning","methods","debounceUpdateStorageStats","_ref$atBegin","atBegin","updateStorageStats","_response$data","_this$storageStats6","_response$data$data","_response$data$data2","response","axios","get","Error","error","logger","showError","translate","styleTagTransform","setAttributes","insert","domAPI","insertStyleElement","locals","class","stopPropagation","preventDefault","slot","Math","min","el","Function","required","$el","appendChild","userConfig","show_hidden","crop_image_previews","sort_favorites_first","sort_folders_first","grid_view","useUserConfigStore","userConfigStore","defineStore","state","actions","onUpdate","update","put","store","_initialized","Clipboard","NcAppSettingsDialog","NcAppSettingsSection","NcCheckboxRadioSwitch","NcInputField","Setting","open","setup","_window$OCA","_getCurrentUser","_loadState$enable_non","settings","window","OCA","Files","Settings","webdavUrl","generateRemoteUrl","getCurrentUser","uid","webdavDocs","appPasswordUrl","webdavUrlCopied","enableGridView","forEach","setting","beforeDestroy","close","onClose","setConfig","copyCloudId","document","querySelector","select","navigator","clipboard","writeText","showSuccess","_l","target","scopedSlots","_u","proxy","useNavigation","navigation","getNavigation","views","shallowRef","currentView","active","onUpdateActive","detail","onUpdateViews","onMounted","addEventListener","onUnmounted","removeEventListener","viewConfig","useViewConfigStore","getters","getConfig","setSortingBy","toggleSortingDirection","newDirection","sorting_direction","viewConfigStore","defineComponent","IconCog","NavigationQuota","NcAppNavigation","NcIconSvgWrapper","SettingsModal","settingsOpened","currentViewId","_this$$route","$route","parentViews","parent","order","childViews","list","watch","newView","oldView","_this$currentView","id","find","showView","debug","_ref2","useExactRouteMatching","_this$childViews$view","_window$OCA$close","Sidebar","$navigation","setActive","onToggleExpand","isExpanded","expanded","_this$viewConfigStore","generateToNavigation","dir","openSettings","onSettingsClose","_setupProxy","iconClass","sticky","icon","child","action","FileAction","displayName","iconSvgInline","InformationSvg","enabled","nodes","_window","_nodes$0$root","root","startsWith","permissions","Permission","NONE","node","OCP","goToRoute","fileid","client","davGetClient","fetchNode","async","propfindPayload","davGetDefaultPropfind","stat","davRootPath","details","davResultToNode","useFilesStore","fileStore","files","roots","getNode","source","getNodes","sources","getNodesById","fileId","values","getRoot","service","updateNodes","acc","deleteNodes","delete","setRoot","onDeletedNode","onCreatedNode","onUpdatedNode","Promise","all","then","n","usePathsStore","pathsStore","paths","getPath","addPath","payload","_getNavigation","FileType","Folder","dirname","_children","parentSource","parentFolder","useSelectionStore","selected","lastSelection","lastSelectedIndex","set","selection","Set","setLastIndex","reset","uploader","useUploaderStore","getUploader","queue","Directory","File","constructor","contents","super","_defineProperty","_contents","_computeDirectorySize","lastModified","_computeDirectoryMtime","directory","file","entry","traverseTree","isFile","resolve","reject","readDirectory","dirReader","createReader","getEntries","readEntries","results","createDirectoryIfNotExists","davClient","exists","absolutePath","createDirectory","recursive","resolveConflict","destination","conflicts","basename","uploads","renamed","openConflictPicker","showInfo","info","console","getQueue","PQueue","concurrency","MoveCopyAction","canMove","ALL","UPDATE","canCopy","every","_node$attributes$shar","_node$attributes","JSON","attributes","some","attribute","scope","canDownload","resultToNode","_node$props","displayname","getContents","controller","AbortController","CancelablePromise","onCancel","abort","contentsResponse","getDirectoryContents","includeSelf","signal","filename","folder","getActionForNodes","MOVE_OR_COPY","MOVE","COPY","handleCopyMoveNodeTo","method","overwrite","NodeStatus","LOADING","add","copySuffix","currentPath","destinationPath","otherNodes","getUniqueName","suffix","ignoreFileExtension","copyFile","hasConflict","moveFile","isAxiosError","_error$response","_error$response2","_error$response3","status","message","openFilePickerForAction","fileIDs","filePicker","getFilePickerBuilder","allowDirectories","setFilter","setMimeTypeFilter","setMultiSelect","startAt","setButtonFactory","buttons","dirnames","label","escape","sanitize","CopyIconSvg","disabled","CREATE","FolderMoveSvg","FilePickerClosed","_node$root","e","execBatch","promises","dataTransferToFileTree","items","kind","_item$getAsEntry","_item$getAsEntry2","_item$webkitGetAsEntr","getAsEntry","webkitGetAsEntry","warned","fileTree","DataTransferItem","warn","getAsFile","showWarning","onDropExternalFiles","uploadDirectoryContents","relativePath","joinPaths","upload","pause","start","errors","allSettled","onDropInternalFiles","isCopy","useDragAndDropStore","dragging","filesListWidth","_fileListEl$clientWid","fileListEl","clientWidth","$resizeObserver","ResizeObserver","contentRect","width","observe","disconnect","NcBreadcrumbs","NcBreadcrumb","mixins","filesListWidthMixin","draggingStore","filesStore","selectionStore","uploaderStore","dirs","sections","getFileSourceFromPath","getNodeFromSource","exact","getDirDisplayName","disableDrop","isUploadInProgress","wrapUploadProgressBar","viewIcon","_this$currentView$ico","selectedFiles","draggingFiles","_this$$navigation","onClick","_to$query","onDragOver","dataTransfer","ctrlKey","dropEffect","onDrop","_event$dataTransfer","_event$dataTransfer2","_this$currentView2","canDrop","button","titleForSection","section","_section$to","ariaForSection","_section$to2","_t","nativeOn","getSummaryFor","fileCount","folderCount","useActionsMenuStore","opened","useRenamingStore","renamingStore","renamingNode","newName","extend","FileMultipleIcon","FolderIcon","isSingleNode","isSingleFolder","summary","totalSize","total","parseInt","$refs","previewImg","replaceChildren","preview","parentNode","cloneNode","$nextTick","ref","Preview","DragAndDropPreview","directive","vOnClickOutside","NcFile","Node","isMtimeAvailable","compact","loading","dragover","gridMode","currentDir","_this$$route$query","currentFileId","_this$$route$params","_this$$route$query2","_this$source$fileid","uniqueId","str","hashCode","isLoading","extension","extname","isSelected","isRenaming","isRenamingSmallScreen","isActive","isFailedSource","FAILED","canDrag","openedMenu","actionsMenuStore","mtimeOpacity","_this$source$mtime","_this$source$mtime$ge","maxOpacityTime","mtime","getTime","ratio","round","color","resetState","_this$$refs","_this$$refs$reset","onRightClick","_this$$el2","closest","style","removeProperty","_this$$el","getBoundingClientRect","setProperty","max","clientX","clientY","top","isMoreThanOneSelected","execDefaultAction","metaKey","openDetailsIfAvailable","_sidebarAction$enable","sidebarAction","onDragLeave","currentTarget","contains","relatedTarget","onDragStart","_event$dataTransfer$c","clearData","$reset","image","$mount","body","$on","$off","getDragAndDropPreview","setDragImage","onDragEnd","_event$dataTransfer3","_event$dataTransfer4","render","updateRootElement","element","getFileActions","ArrowLeftIcon","CustomElementRender","NcActionButton","NcActions","NcActionSeparator","NcLoadingIcon","openedSubmenu","enabledActions","enabledInlineActions","_action$inline","inline","enabledRenderActions","renderInline","enabledDefaultActions","enabledMenuActions","DefaultType","HIDDEN","findIndex","topActionsIds","enabledSubmenuActions","arr","getBoundariesElement","mountType","actionDisplayName","onActionClick","isSubmenu","$set","success","isMenu","_this$enabledSubmenuA","onBackToMenuClick","menuAction","_menuAction$$el$query","focus","_vm$openedSubmenu","_vm$openedSubmenu2","_action$title","refInFor","_action$title2","keyboardStore","altKey","shiftKey","onEvent","useKeyboardStore","ariaLabel","onSelectionChange","_this$keyboardStore","newSelectedIndex","isAlreadySelected","end","filesToSelect","resetSelection","_k","keyCode","getFilenameValidity","validateFilename","InvalidFilenameError","reason","InvalidFilenameErrorReason","Character","char","segment","ReservedName","Extension","NcTextField","renameLabel","linkTo","_this$$parent","_this$source","is","$parent","role","tabindex","READ","download","href","immediate","handler","renaming","startRenaming","_this$newName$trim","_this$newName","_this$$refs$renameInp","renameInput","validity","checkIfNodeExists","setCustomValidity","reportValidity","_this$$refs$renameInp2","_this$source$extensio","setSelectionRange","dispatchEvent","Event","stopRenaming","onRename","_this$newName$trim2","_this$newName2","renameForm","checkValidity","oldName","oldEncodedSource","encodedSource","rename","headers","Destination","Overwrite","_this$$refs$basename","_this$$refs$renameInp3","directives","rawName","expression","tag","domProps","StarSvg","_el$setAttribute","setAttribute","AccountGroupIcon","AccountPlusIcon","CollectivesIcon","FavoriteIcon","FileIcon","FolderOpenIcon","KeyIcon","LinkIcon","NetworkIcon","TagIcon","backgroundFailed","_this$source$toString","isFavorite","favorite","cropPreviews","previewUrl","_this$source2","location","origin","searchParams","etag","fileOverlay","PlayCircleIcon","folderOverlay","_this$source3","_this$source4","_this$source5","_this$source6","shareTypes","ShareType","SHARE_TYPE_LINK","SHARE_TYPE_EMAIL","src","onBackgroundError","_event$target","_m","FileEntryActions","FileEntryCheckbox","FileEntryName","FileEntryPreview","NcDateTime","FileEntryMixin","isSizeAvailable","rowListeners","dragstart","contextmenu","dragleave","dragend","drop","columns","sizeOpacity","pow","mtimeTitle","moment","format","_g","column","_vm$currentView","inheritAttrs","header","currentFolder","updated","mount","View","_this$currentFolder","_node$size","classForColumn","_column$summary","mapState","sortingMode","_this$getConfig","sorting_mode","defaultSortKey","isAscSorting","_this$getConfig2","toggleSortBy","MenuDown","MenuUp","NcButton","filesSortingMixin","FilesListTableHeaderButton","selectAllBind","checked","isAllSelected","indeterminate","isSomeSelected","selectedNodes","isNoneSelected","ariaSortForMode","onToggleAll","dataComponent","dataKey","dataSources","extraProps","scrollToIndex","caption","beforeHeight","headerHeight","tableHeight","resizeObserver","isReady","bufferItems","columnCount","itemHeight","itemWidth","rowCount","ceil","floor","startIndex","shownItems","renderedItems","oldItemsKeys","$_recycledPool","unusedKeys","pop","random","substr","totalRowCount","tbodyStyle","isOverScrolled","lastIndex","hiddenAfterItems","paddingTop","paddingBottom","minHeight","scrollTo","oldColumnCount","_this$$refs2","before","thead","debounce","_before$clientHeight","_thead$clientHeight","_root$clientHeight","clientHeight","onScroll","passive","targetRow","scrollTop","_this$_onScrollHandle","_onScrollHandle","requestAnimationFrame","topScroll","$scopedSlots","areSomeNodesLoading","inlineActions","selectionSources","failedSources","FilesListHeader","FilesListTableFooter","FilesListTableHeader","VirtualList","FilesListTableHeaderActions","FileEntry","FileEntryGrid","getFileListHeaders","openFileId","_this$$route$params$f","openFile","openfile","sortedHeaders","defaultCaption","viewCaption","sortableCaption","virtualListNote","scrollToFile","handleOpenFile","openSidebarForFile","documentElement","defaultAction","at","types","tableElement","table","tableTop","tableBottom","height","count","TrayArrowDownIcon","canUpload","isQuotaExceeded","cantUploadLabel","mainContent","onContentDrop","_event$relatedTarget","_this$$el$querySelect","lastUpload","findLast","_upload$response","UploadStatus","webkitRelativePath","_this$$route$params$v","$router","isSharingEnabled","_getCapabilities","getCapabilities","files_sharing","BreadCrumbs","DragAndDropNotice","FilesListVirtual","ListViewIcon","NcAppContent","NcEmptyContent","PlusIcon","UploadPicker","ViewGridIcon","forbiddenCharacters","Type","filterText","promise","unsubscribeStoreCallback","onSearch","searchEvent","getContent","_this$currentFolder$p","normalizedPath","normalize","pageHeading","_this$currentView$nam","_this$$route2","number","dirContentsSorted","_this$currentView3","filteredDirContent","dirContents","customColumn","reverse","sortNodes","sortFavoritesFirst","sortFoldersFirst","sortingOrder","_this$userConfigStore","_this$currentFolder2","showHidden","_file$attributes","hidden","isEmptyDir","isRefreshing","toPreviousDir","shareTypesAttributes","_this$currentFolder3","_this$currentFolder4","shareButtonLabel","shareButtonType","SHARE_TYPE_USER","gridViewButtonLabel","_this$currentFolder5","canShare","SHARE","triggerResetSearch","fetchContent","newDir","oldDir","_window$OCA$Files$Sid","filesListVirtual","onNodeDeleted","onResetSearch","$subscribe","deep","unmounted","unsubscribe","fatal","_this$currentFolder6","_this$currentFolder$d","_this$currentFolder7","onUpload","onUploadFail","_upload$response2","CANCELLED","_doc$getElementsByTag","_doc$getElementsByTag2","DOMParser","parseFromString","getElementsByTagName","textContent","_this$currentFolder8","openSharingSidebar","setActiveTab","toggleGridView","_vm$currentView2","emptyTitle","emptyCaption","NcContent","FilesList","Navigation","__webpack_nonce__","btoa","getRequestToken","_window$OCA$Files","_window$OCP$Files","router","_router","currentRoute","goTo","assign","PiniaVuePlugin","observable","_settings","register","_name","_el","_open","_close","FilesApp","___CSS_LOADER_EXPORT___","denyList","code","def","d","RC","autostart","ignoreSameProgress","rate","lastTimestamp","lastProgress","historyTimeConstant","previousOutput","dt","report","progress","timestamp","deltaTimestamp","currentRate","estimate","Infinity","estimatedTime","CancelError","isCanceled","promiseState","freeze","pending","canceled","resolved","rejected","PCancelable","userFunction","executor","description","defineProperties","shouldReject","boolean","onFulfilled","onRejected","onFinally","finally","setPrototypeOf","TimeoutError","AbortError","getDOMException","errorMessage","globalThis","DOMException","getAbortedReason","PriorityQueue","enqueue","run","priority","array","comparator","first","step","trunc","it","lowerBound","splice","dequeue","shift","timeout","carryoverConcurrencyCount","intervalCap","POSITIVE_INFINITY","interval","autoStart","queueClass","isFinite","throwOnTimeout","clearInterval","canInitializeInterval","job","newConcurrency","_resolve","function_","throwIfAborted","operation","milliseconds","fallback","customTimers","timer","cancelablePromise","sign","aborted","timeoutError","pTimeout","race","addAll","functions","onEmpty","onSizeLessThan","limit","onIdle","sizeBy","isPaused","namespace","isNetworkError","SAFE_HTTP_METHODS","IDEMPOTENT_HTTP_METHODS","isRetryableError","isIdempotentRequestError","config","isNetworkOrIdempotentRequestError","retryAfter","retryAfterHeader","retryAfterMs","valueOf","DEFAULT_OPTIONS","retries","retryCondition","retryDelay","_retryNumber","shouldResetTimeout","onRetry","onMaxRetryTimesExceeded","validateResponse","setCurrentState","defaultOptions","currentState","getRequestOptions","retryCount","lastRequestTime","axiosRetry","axiosInstance","requestInterceptorId","interceptors","request","validateStatus","responseInterceptorId","shouldRetryOrPromise","_err","shouldRetry","defaults","agent","httpAgent","httpsAgent","fixConfig","lastRequestDuration","transformRequest","abortListener","handleRetry","handleMaxRetryTimesExceeded","isSafeRequestError","exponentialDelay","retryNumber","delayFactor","calculatedDelay","isFileSystemFileEntry","o","FileSystemFileEntry","isFileSystemEntry","FileSystemEntry","uploadData","uploadData2","onUploadProgress","destinationFile","Blob","getChunk","getMaxChunksSize","fileSize","maxChunkSize","OC","appConfig","max_chunk_size","minimumChunkSize","Status$1","Status2","Upload","_source","_file","_isChunked","_chunks","_size","_uploaded","_startTime","_status","_controller","_response","chunked","chunks","isChunked","startTime","uploaded","_originalName","_path","children","Map","c","addChild","sum","latest","originalName","from","getChild","rootPath","FileSystemDirectoryEntry","reader","filePath","relPath","gtBuilder","detectLocale","addTranslation","locale","json","gt","ngettext","bind","gettext","Status","Uploader","_destinationFolder","_isPublic","_uploadQueue","_jobQueue","_queueSize","_queueProgress","_queueStatus","_notifiers","isPublic","destinationFolder","owner","user","maxChunksSize","updateStats","upload2","partialSum","addNotifier","notifier","_notifyAll","batchUpload","rootFolder","files2","uploadDirectory","folderPath","selectedForUpload","directories","currentUpload","UPLOADING","resolve2","resolvedUploads","resolvedDirectoryUploads","FINISHED","fileHandle","encodedDestinationFile","disabledChunkUpload","blob","bytes","tempUrl","initChunkWorkspace","chunksQueue","chunk","bufferStart","bufferEnd","normalizeComponent","scriptExports","render6","staticRenderFns","functionalTemplate","injectStyles","scopeId","moduleIdentifier","shadowMode","hook","_compiled","functional","_scopeId","$vnode","ssrContext","__VUE_SSR_CONTEXT__","_registeredComponents","_ssrRegister","$root","$options","shadowRoot","_injectStyles","originalRender","h","existing","beforeCreate","IconCancel","IconFolderUpload","IconPlus","IconUpload","_sfc_main","NcActionCaption","accept","multiple","allowFolders","content","progressTimeId","eta","timeLeft","currentContent","newFileMenuEntries","uploadManager","menuEntriesUpload","category","UploadFromDevice","menuEntriesNew","CreateNew","menuEntriesOther","Other","canUploadFolders","createElement","totalQueueSize","uploadedQueueSize","hasFailure","isUploading","isAssembling","ASSEMBLING","PAUSED","buttonName","setDestination","updateStatus","onUploadCompletion","onTriggerPick","uploadFolders","webkitdirectory","click","setName","setSeverity","setText","setButtons","show","handleConflicts","getConflicts","filesToUpload","showInvalidFileNameDialog","replaceInvalidCharacters","text","invalidReplacement","onPick","resetForm","form","date","setSeconds","time","toISOString","seconds","staticStyle","_uploader","forceRecreate","ConflictPicker","picker","recursiveUpload","submit","$destroy","removeChild","contentNames","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","loaded","__webpack_modules__","m","O","chunkIds","notFulfilled","fulfilled","r","getter","__esModule","definition","f","chunkId","u","g","obj","prop","done","script","needAttach","scripts","s","getAttribute","charset","nc","onScriptComplete","prev","onerror","onload","doneFns","head","toStringTag","nmd","scriptUrl","importScripts","currentScript","p","baseURI","installedChunks","installedChunkData","errorType","realSrc","webpackJsonpCallback","parentChunkLoadingFunction","moreModules","runtime","chunkLoadingGlobal","__webpack_exports__"],"sourceRoot":""}